diff options
Diffstat (limited to 'drivers/scsi/libsas/sas_discover.c')
-rw-r--r-- | drivers/scsi/libsas/sas_discover.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/drivers/scsi/libsas/sas_discover.c b/drivers/scsi/libsas/sas_discover.c index a65598b1e536..5252143b6297 100644 --- a/drivers/scsi/libsas/sas_discover.c +++ b/drivers/scsi/libsas/sas_discover.c | |||
@@ -255,6 +255,7 @@ static int sas_get_port_device(struct asd_sas_port *port) | |||
255 | 255 | ||
256 | switch (dev->dev_type) { | 256 | switch (dev->dev_type) { |
257 | case SAS_END_DEV: | 257 | case SAS_END_DEV: |
258 | case SATA_DEV: | ||
258 | rphy = sas_end_device_alloc(port->port); | 259 | rphy = sas_end_device_alloc(port->port); |
259 | break; | 260 | break; |
260 | case EDGE_DEV: | 261 | case EDGE_DEV: |
@@ -265,7 +266,6 @@ static int sas_get_port_device(struct asd_sas_port *port) | |||
265 | rphy = sas_expander_alloc(port->port, | 266 | rphy = sas_expander_alloc(port->port, |
266 | SAS_FANOUT_EXPANDER_DEVICE); | 267 | SAS_FANOUT_EXPANDER_DEVICE); |
267 | break; | 268 | break; |
268 | case SATA_DEV: | ||
269 | default: | 269 | default: |
270 | printk("ERROR: Unidentified device type %d\n", dev->dev_type); | 270 | printk("ERROR: Unidentified device type %d\n", dev->dev_type); |
271 | rphy = NULL; | 271 | rphy = NULL; |
@@ -480,7 +480,14 @@ cont1: | |||
480 | present. | 480 | present. |
481 | sas_satl_register_dev(dev); | 481 | sas_satl_register_dev(dev); |
482 | */ | 482 | */ |
483 | return 0; | 483 | |
484 | sas_fill_in_rphy(dev, dev->rphy); | ||
485 | |||
486 | res = sas_rphy_add(dev->rphy); | ||
487 | if (res) | ||
488 | goto out_err; | ||
489 | |||
490 | return res; | ||
484 | out_err: | 491 | out_err: |
485 | dev->sata_dev.identify_packet_device = NULL; | 492 | dev->sata_dev.identify_packet_device = NULL; |
486 | dev->sata_dev.identify_device = NULL; | 493 | dev->sata_dev.identify_device = NULL; |