Commit 5d74242e authored by John Garry's avatar John Garry Committed by Martin K. Petersen

hisi_sas: Add phy SAS ADDR initialization

The SAS address for the HBA comes from the device tree.
Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
Reviewed-by: default avatarArnd Bergmann <arnd@arndb.de>
Reviewed-by: default avatarHannes Reinecke <hare@suse.de>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 9101a079
......@@ -39,6 +39,7 @@
struct hisi_sas_phy {
struct asd_sas_phy sas_phy;
u64 dev_sas_addr;
};
struct hisi_sas_port {
......
......@@ -281,6 +281,16 @@ static struct Scsi_Host *hisi_sas_shost_alloc(struct platform_device *pdev,
return NULL;
}
static void hisi_sas_init_add(struct hisi_hba *hisi_hba)
{
int i;
for (i = 0; i < hisi_hba->n_phy; i++)
memcpy(&hisi_hba->phy[i].dev_sas_addr,
hisi_hba->sas_addr,
SAS_ADDR_SIZE);
}
int hisi_sas_probe(struct platform_device *pdev,
const struct hisi_sas_hw *hw)
{
......@@ -334,6 +344,8 @@ int hisi_sas_probe(struct platform_device *pdev,
sha->sas_port[i] = &hisi_hba->port[i].sas_port;
}
hisi_sas_init_add(hisi_hba);
rc = scsi_add_host(shost, &pdev->dev);
if (rc)
goto err_out_ha;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment