Commit 6f44a22b authored by Raghava Aditya Renukunta's avatar Raghava Aditya Renukunta Committed by Martin K. Petersen

scsi: aacraid: Merge adapter setup with resolve luns

The device hotplug events are processed only after retrieving the updated
lun information from the fw. Does not make sense to keep them separate.

Merge both the hotplug handling and safw adapter setup code into single
function.
Signed-off-by: default avatarRaghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 3031c656
...@@ -1934,11 +1934,18 @@ static int aac_is_safw_device_exposed(struct aac_dev *dev, int bus, int target) ...@@ -1934,11 +1934,18 @@ static int aac_is_safw_device_exposed(struct aac_dev *dev, int bus, int target)
return is_exposed; return is_exposed;
} }
static void aac_resolve_luns(struct aac_dev *dev) static int aac_update_safw_host_devices(struct aac_dev *dev, int rescan)
{ {
int i; int i;
int bus, target; int bus;
int target;
int is_exposed = 0; int is_exposed = 0;
int rcode = 0;
rcode = aac_setup_safw_adapter(dev, rescan);
if (unlikely(rcode < 0)) {
goto out;
}
for (i = 0; i < AAC_BUS_TARGET_LOOP; i++) { for (i = 0; i < AAC_BUS_TARGET_LOOP; i++) {
...@@ -1953,6 +1960,8 @@ static void aac_resolve_luns(struct aac_dev *dev) ...@@ -1953,6 +1960,8 @@ static void aac_resolve_luns(struct aac_dev *dev)
is_exposed) is_exposed)
aac_remove_safw_device(dev, bus, target); aac_remove_safw_device(dev, bus, target);
} }
out:
return rcode;
} }
/** /**
...@@ -1988,9 +1997,7 @@ static void aac_handle_sa_aif(struct aac_dev *dev, struct fib *fibptr) ...@@ -1988,9 +1997,7 @@ static void aac_handle_sa_aif(struct aac_dev *dev, struct fib *fibptr)
case SA_AIF_LDEV_CHANGE: case SA_AIF_LDEV_CHANGE:
case SA_AIF_BPCFG_CHANGE: case SA_AIF_BPCFG_CHANGE:
aac_setup_safw_adapter(dev, AAC_RESCAN); aac_update_safw_host_devices(dev, AAC_RESCAN);
aac_resolve_luns(dev);
break; break;
case SA_AIF_BPSTAT_CHANGE: case SA_AIF_BPSTAT_CHANGE:
......
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