scsi_add_device

Name

scsi_add_device --  creates new scsi device (lu) instance

Synopsis

struct scsi_device * scsi_add_device (struct Scsi_Host * shost, unsigned int channel, unsigned int id, unsigned int lun);

Arguments

shost

pointer to scsi host instance

channel

channel number (rarely other than 0)

id

target id number

lun

logical unit number

Description

Returns pointer to new struct scsi_device instance or ERR_PTR(-ENODEV) (or some other bent pointer) if something is wrong (e.g. no lu responds at given address)

Might block

yes

Notes

This call is usually performed internally during a scsi bus scan when an HBA is added (i.e. scsi_add_host). So it should only be called if the HBA becomes aware of a new scsi device (lu) after scsi_add_host has completed. If successful this call we lead to slave_alloc and slave_configure callbacks into the LLD.

Defined in

drivers/scsi/scsi_scan.c