]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
usb: f_mass_storage: set removable flag in do_inquiry based on LUN
authorEric Nelson <eric.nelson@boundarydevices.com>
Sat, 20 Sep 2014 00:06:46 +0000 (17:06 -0700)
committerMarek Vasut <marex@denx.de>
Mon, 6 Oct 2014 12:50:43 +0000 (14:50 +0200)
Without this flag, tools like Alex Page's USB Image Tool
won't see drives exposed over USB Gadget as removable,
and won't allow access to them.
http://www.alexpage.de/usb-image-tool/

The code was pulled from the main-line kernel:
drivers/usb/gadget/function/f_mass_storage.c

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
drivers/usb/gadget/f_mass_storage.c

index f274d9679fb95747988accf9b75e8d0c110270c9..e045957d07238862f23c80cd7e90845ae14e8447 100644 (file)
@@ -1110,6 +1110,7 @@ static int do_inquiry(struct fsg_common *common, struct fsg_buffhd *bh)
 
        memset(buf, 0, 8);
        buf[0] = TYPE_DISK;
+       buf[1] = curlun->removable ? 0x80 : 0;
        buf[2] = 2;             /* ANSI SCSI level 2 */
        buf[3] = 2;             /* SCSI-2 INQUIRY data format */
        buf[4] = 31;            /* Additional length */