MassStorageHost demo now retrieves Inquiry data from the device during enumeration...
[pub/USBasp.git] / Demos / Host / LowLevel / MassStorageHost / MassStorageHost.c
index 905077e..79a5592 100644 (file)
@@ -191,7 +191,7 @@ void MassStorage_Task(void)
                        }\r
                        \r
                        /* Print number of LUNs detected in the attached device */\r
-                       printf_P(PSTR("Total LUNs: %d.\r\n"), (MassStore_MaxLUNIndex + 1));\r
+                       printf_P(PSTR("Total LUNs: %d - Using first LUN in device.\r\n"), (MassStore_MaxLUNIndex + 1));\r
                        \r
                        /* Reset the Mass Storage device interface, ready for use */\r
                        if ((ErrorCode = MassStore_MassStorageReset()) != HOST_SENDCONTROL_Successful)\r
@@ -216,9 +216,20 @@ void MassStorage_Task(void)
                                break;\r
                        }\r
 \r
-                       puts_P(PSTR("Waiting until ready.."));\r
+                       /* Get inquiry data from the device */\r
+                       SCSI_Inquiry_Response_t InquiryData;\r
+                       if (((ErrorCode = MassStore_Inquiry(0, &InquiryData)) != 0) || (SCSICommandStatus.Status != Command_Pass))\r
+                       {\r
+                               ShowDiskReadError(PSTR("Inquiry"), (SCSICommandStatus.Status != Command_Pass), ErrorCode);\r
+                               break;\r
+                       }\r
                        \r
+                       /* Print vendor and product names of attached device */\r
+                       printf_P(PSTR("Vendor: %s, Product: %s\r\n"), InquiryData.VendorID, InquiryData.ProductID);\r
+                                               \r
                        /* Wait until disk ready */\r
+                       puts_P(PSTR("Waiting until ready.."));\r
+\r
                        do\r
                        {\r
                                Serial_TxByte('.');\r