Most of your understand is correct. Just a minor clarification. there is no interface called ddi_tran_init_pkt. Only tran_init_pkt(9E) exist. You should bind dma buffer and setup SG list in your tran_init_pkt(), and fill it in your message frame in your tran_start(9E) routine. From the information you provided, the good news is your RAID controller accept CDB directly, so it simplify your implementation. As what I said, you should pay attention to task management like target/lun reset to implement your tran_reset(9E) so that you can save coredump on the logic volume exposed by your RAID controller. This message posted from opensolaris.org _______________________________________________ opensolaris-discuss mailing list opensolaris-discuss@opensolaris.org