add tud_msc_inquiry2_cb() for full inquiry response
This commit is contained in:
		| @@ -188,16 +188,20 @@ static void io_task(void *params) { | ||||
| void msc_disk_init() {} | ||||
| #endif | ||||
|  | ||||
| // Invoked when received SCSI_CMD_INQUIRY | ||||
| // Application fill vendor id, product id and revision with string up to 8, 16, 4 characters respectively | ||||
| void tud_msc_inquiry_cb(uint8_t lun, uint8_t vendor_id[8], uint8_t product_id[16], uint8_t product_rev[4]) { | ||||
| // Invoked when received SCSI_CMD_INQUIRY, v2 with full inquiry response | ||||
| // Some inquiry_resp's fields are already filled with default values, application can update them | ||||
| // Return length of inquiry response, typically sizeof(scsi_inquiry_resp_t) (36 bytes), can be longer if included vendor data. | ||||
| uint32_t tud_msc_inquiry2_cb(uint8_t lun, scsi_inquiry_resp_t* inquiry_resp) { | ||||
|   (void) lun; | ||||
|   const char vid[] = "TinyUSB"; | ||||
|   const char pid[] = "Mass Storage"; | ||||
|   const char rev[] = "1.0"; | ||||
|   memcpy(vendor_id  , vid, strlen(vid)); | ||||
|   memcpy(product_id , pid, strlen(pid)); | ||||
|   memcpy(product_rev, rev, strlen(rev)); | ||||
|  | ||||
|   memcpy(inquiry_resp->vendor_id, vid, strlen(vid)); | ||||
|   memcpy(inquiry_resp->product_id, pid, strlen(pid)); | ||||
|   memcpy(inquiry_resp->product_rev, rev, strlen(rev)); | ||||
|  | ||||
|   return sizeof(scsi_inquiry_resp_t); // 36 bytes | ||||
| } | ||||
|  | ||||
| // Invoked when received Test Unit Ready command. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 hathach
					hathach