Looks pretty nice. Some more comments: - no need for the BLK_DEV_SR dependency, it should depend on SCSI instead (which might be implied by beeing in the scsi menu, don't remember that detail) - ps3rom_priv should probably be an inline - the cmd field in struct ps3rom_private should probably be renamed to curr_cmd or something along the line to make sure this is the current command we deal with and the driver can only deal with one command at a time. - The comment in ps3rom_queuecommand should explain why we prefer lv1_storage_{read,write} over just sending down the scsi cdb, not just that we prefer it. - I don't think you need to decode the 6 byte commands at all, ATAPI only has the 10 byte variants and you can tell the scsi layer not to ever send the 6 byte ones by setting the use_10_for_rw flag in ->slave_configure - same comment about the free_irq/request_irq pair as in the disk driver. - please use the new shost_priv helper in scsi-misc for accessing the hostdata file in struct Scsi_Host so that the ugly casts can go away. - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html