summaryrefslogtreecommitdiff
path: root/include/usb_defs.h
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2015-03-25 12:22:11 -0600
committerSimon Glass <sjg@chromium.org>2015-04-18 11:11:22 -0600
commit2e17c87ebb4cb46c51e7d893705b69b95ee05cab (patch)
treef92367af4a07cec444179477b494aa06fc8f5b75 /include/usb_defs.h
parent054fe48eb2c968e163e35156fac4c04a320c3744 (diff)
dm: usb: Move USB storage definitions to usb_defs.h
These are better off in a header file so they can be used by other code (e.g. the sandbox USB storage emulator). Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Marek Vasut <marex@denx.de>
Diffstat (limited to 'include/usb_defs.h')
-rw-r--r--include/usb_defs.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/include/usb_defs.h b/include/usb_defs.h
index 236a5ecdf6f..d7f7465fe55 100644
--- a/include/usb_defs.h
+++ b/include/usb_defs.h
@@ -286,4 +286,46 @@
#define HUB_CHANGE_LOCAL_POWER 0x0001
#define HUB_CHANGE_OVERCURRENT 0x0002
+/*
+ * CBI style
+ */
+
+#define US_CBI_ADSC 0
+
+/* Command Block Wrapper */
+struct umass_bbb_cbw {
+ __u32 dCBWSignature;
+# define CBWSIGNATURE 0x43425355
+ __u32 dCBWTag;
+ __u32 dCBWDataTransferLength;
+ __u8 bCBWFlags;
+# define CBWFLAGS_OUT 0x00
+# define CBWFLAGS_IN 0x80
+# define CBWFLAGS_SBZ 0x7f
+ __u8 bCBWLUN;
+ __u8 bCDBLength;
+# define CBWCDBLENGTH 16
+ __u8 CBWCDB[CBWCDBLENGTH];
+};
+#define UMASS_BBB_CBW_SIZE 31
+
+/* Command Status Wrapper */
+struct umass_bbb_csw {
+ __u32 dCSWSignature;
+# define CSWSIGNATURE 0x53425355
+ __u32 dCSWTag;
+ __u32 dCSWDataResidue;
+ __u8 bCSWStatus;
+# define CSWSTATUS_GOOD 0x0
+# define CSWSTATUS_FAILED 0x1
+# define CSWSTATUS_PHASE 0x2
+};
+#define UMASS_BBB_CSW_SIZE 13
+
+/*
+ * BULK only
+ */
+#define US_BBB_RESET 0xff
+#define US_BBB_GET_MAX_LUN 0xfe
+
#endif /*_USB_DEFS_H_ */