USB: Move USB Storage definitions to their own header file
authorMatthew Wilcox <matthew.r.wilcox@intel.com>
Thu, 7 Oct 2010 11:05:22 +0000 (13:05 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 22 Oct 2010 17:21:50 +0000 (10:21 -0700)
The libusual header file is hard to use from code that isn't part
of libusual.  As the comment suggests, these definitions are moved to
their own header file, paralleling other USB classes.

Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Cc: Alan Stern <stern@rowland.harvard.edu>
[mina86@mina86.com: updated to use USB_ prefix and added #include guard]
Signed-off-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
index 0000000..d7fc910

include/linux/usb/storage.h [new file with mode: 0644]
include/linux/usb_usual.h

diff --git a/include/linux/usb/storage.h b/include/linux/usb/storage.h
new file mode 100644 (file)
index 0000000..d7fc910
--- /dev/null
@@ -0,0 +1,48 @@
+#ifndef __LINUX_USB_STORAGE_H
+#define __LINUX_USB_STORAGE_H
+
+/*
+ * linux/usb/storage.h
+ *
+ * Copyright Matthew Wilcox for Intel Corp, 2010
+ *
+ * This file contains definitions taken from the
+ * USB Mass Storage Class Specification Overview
+ *
+ * Distributed under the terms of the GNU GPL, version two.
+ */
+
+/* Storage subclass codes */
+
+#define USB_SC_RBC     0x01            /* Typically, flash devices */
+#define USB_SC_8020    0x02            /* CD-ROM */
+#define USB_SC_QIC     0x03            /* QIC-157 Tapes */
+#define USB_SC_UFI     0x04            /* Floppy */
+#define USB_SC_8070    0x05            /* Removable media */
+#define USB_SC_SCSI    0x06            /* Transparent */
+#define USB_SC_LOCKABLE        0x07            /* Password-protected */
+
+#define USB_SC_ISD200  0xf0            /* ISD200 ATA */
+#define USB_SC_CYP_ATACB       0xf1    /* Cypress ATACB */
+#define USB_SC_DEVICE  0xff            /* Use device's value */
+
+/* Storage protocol codes */
+
+#define USB_PR_CBI     0x00            /* Control/Bulk/Interrupt */
+#define USB_PR_CB      0x01            /* Control/Bulk w/o interrupt */
+#define USB_PR_BULK    0x50            /* bulk only */
+#define USB_PR_UAS     0x62            /* USB Attached SCSI */
+
+#define USB_PR_USBAT   0x80            /* SCM-ATAPI bridge */
+#define USB_PR_EUSB_SDDR09     0x81    /* SCM-SCSI bridge for SDDR-09 */
+#define USB_PR_SDDR55  0x82            /* SDDR-55 (made up) */
+#define USB_PR_DPCM_USB        0xf0            /* Combination CB/SDDR09 */
+#define USB_PR_FREECOM 0xf1            /* Freecom */
+#define USB_PR_DATAFAB 0xf2            /* Datafab chipsets */
+#define USB_PR_JUMPSHOT        0xf3            /* Lexar Jumpshot */
+#define USB_PR_ALAUDA  0xf4            /* Alauda chipsets */
+#define USB_PR_KARMA   0xf5            /* Rio Karma */
+
+#define USB_PR_DEVICE  0xff            /* Use device's value */
+
+#endif
index f387c436042efce22b59bbd5a4ec9f0015095531..f091dc6e5a007b4559e677208125b14dd7abf07f 100644 (file)
@@ -74,43 +74,7 @@ enum { US_DO_ALL_FLAGS };
 #define USB_US_TYPE(flags)             (((flags) >> 24) & 0xFF)
 #define USB_US_ORIG_FLAGS(flags)       ((flags) & 0x00FFFFFF)
 
-/*
- * This is probably not the best place to keep these constants, conceptually.
- * But it's the only header included into all places which need them.
- */
-
-/* Sub Classes */
-
-#define USB_SC_RBC     0x01            /* Typically, flash devices */
-#define USB_SC_8020    0x02            /* CD-ROM */
-#define USB_SC_QIC     0x03            /* QIC-157 Tapes */
-#define USB_SC_UFI     0x04            /* Floppy */
-#define USB_SC_8070    0x05            /* Removable media */
-#define USB_SC_SCSI    0x06            /* Transparent */
-#define USB_SC_LOCKABLE        0x07            /* Password-protected */
-
-#define USB_SC_ISD200  0xf0            /* ISD200 ATA */
-#define USB_SC_CYP_ATACB       0xf1    /* Cypress ATACB */
-#define USB_SC_DEVICE  0xff            /* Use device's value */
-
-/* Storage protocol codes */
-
-#define USB_PR_CBI     0x00            /* Control/Bulk/Interrupt */
-#define USB_PR_CB      0x01            /* Control/Bulk w/o interrupt */
-#define USB_PR_BULK    0x50            /* bulk only */
-#define USB_PR_UAS     0x62            /* USB Attached SCSI */
-
-#define USB_PR_USBAT   0x80            /* SCM-ATAPI bridge */
-#define USB_PR_EUSB_SDDR09     0x81    /* SCM-SCSI bridge for SDDR-09 */
-#define USB_PR_SDDR55  0x82            /* SDDR-55 (made up) */
-#define USB_PR_DPCM_USB        0xf0            /* Combination CB/SDDR09 */
-#define USB_PR_FREECOM 0xf1            /* Freecom */
-#define USB_PR_DATAFAB 0xf2            /* Datafab chipsets */
-#define USB_PR_JUMPSHOT        0xf3            /* Lexar Jumpshot */
-#define USB_PR_ALAUDA  0xf4            /* Alauda chipsets */
-#define USB_PR_KARMA   0xf5            /* Rio Karma */
-
-#define USB_PR_DEVICE  0xff            /* Use device's value */
+#include <linux/usb/storage.h>
 
 /*
  */