/** * @brief This method will translate the SCSI mode sense 6 byte command * into corresponding ATA commands. If the command is well-formed, * then the translation will result in an ATA IDENTIFY DEVICE * command. * For more information on the parameters passed to this method, * please reference sati_translate_command(). * * @return Indicate if the command translation succeeded. * @retval SCI_SUCCESS This is returned if the command translation was * successful. * @retval SATI_FAILURE_CHECK_RESPONSE_DATA This value is returned if * sense data has been created as a result of something specified * in the CDB. */ SATI_STATUS sati_mode_sense_6_translate_command( SATI_TRANSLATOR_SEQUENCE_T * sequence, void * scsi_io, void * ata_io ) { U8 * cdb = sati_cb_get_cdb_address(scsi_io); // Set the data length based on the allocation length field in the CDB. sequence->allocation_length = sati_get_cdb_byte(cdb, 4); return sati_mode_sense_translate_command(sequence, scsi_io, ata_io, 6); }
/** * @brief This method will translate the SCSI mode sense 6 byte command * into corresponding ATA commands. If the command is well-formed, * then the translation will result in an ATA IDENTIFY DEVICE * command. * For more information on the parameters passed to this method, * please reference sati_translate_command(). * * @return Indicate if the command translation succeeded. * @retval SCI_SUCCESS This is returned if the command translation was * successful. * @retval SATI_FAILURE_CHECK_RESPONSE_DATA This value is returned if * sense data has been created as a result of something specified * in the CDB. */ SATI_STATUS sati_mode_sense_10_translate_command( SATI_TRANSLATOR_SEQUENCE_T * sequence, void * scsi_io, void * ata_io ) { U8 * cdb = sati_cb_get_cdb_address(scsi_io); sequence->command_specific_data.scratch = 0; // Set the data length based on the allocation length field in the CDB. sequence->allocation_length = (sati_get_cdb_byte(cdb, 7) << 8) | (sati_get_cdb_byte(cdb, 8)); return sati_mode_sense_translate_command(sequence, scsi_io, ata_io, 10); }