Hi there, Here are some questions about SCSI HBA driver. Hopefully some experts can answer that since
I've got stuck for a week without any progress This SCSI HBA driver is for IOP based HBA. The driver will just pass SCSI command to IOP and then get status back from interrupt when it is done. During debugging I found Several issues (1) Will DDI_ATTACH get timeout? I found DDI_ATTACH keep coming when my current DDI_ATTACH is still running initialization. How to prevent that? And if I have multiple HBAs at the same time, what will be the behavior? (2) During ddi_tran_tgt_init(), I saw a sequence of calling target_id=0 .. 15 then again Target_id=0 ..15, then target_id=0..7 then target_id=0..7. Is it correct? (3) Since our IOP will handle all commands physically, the HBA just programs DMA handle for every command. In ddi_tran_init_pkt(), HBA does ddi_dma_alloc_handle(),and ddi_dma_buf_bind_handle() to get DMA physical address, dma size. Hence in ddi_tran_start(), will fill in this dma_cookie pointer content to mailbox. Do I process it correctly? Later the command is done and return "good" status on SCSI Identify command. But I keep seeing kernel send SCSI identify for this target again. This confuses me and it seems the kernel is not receiving the data. Can any expert help? Thanks Steve Chang HighPoint Technologies, Inc. 408-240-6115
_______________________________________________ driver-discuss mailing list driver-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/driver-discuss