diff options
author | Bin Meng <bmeng.cn@gmail.com> | 2017-07-19 13:51:13 (GMT) |
---|---|---|
committer | Marek Vasut <marex@denx.de> | 2017-07-28 21:34:32 (GMT) |
commit | bbc6f06c0031249bf1983b875e54cb7549bafe60 (patch) | |
tree | 7f830c8505ce674333df40e3b03203339a644ac4 /include | |
parent | 74ffc7cbb1d2d1f218b1bd67d1bd3cc1cba8aa79 (diff) | |
download | u-boot-bbc6f06c0031249bf1983b875e54cb7549bafe60.tar.xz |
usb: hub: Support 'set hub depth' request for USB 3.0 hubs
USB 3.0 hub uses a hub depth value multiplied by four as an offset
into the 'route string' to locate the bits it uses to determine the
downstream port number. We shall set the hub depth value of a USB
3.0 hub after it is configured.
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/usb.h | 1 | ||||
-rw-r--r-- | include/usb_defs.h | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/include/usb.h b/include/usb.h index 64dfa84..f71da52 100644 --- a/include/usb.h +++ b/include/usb.h @@ -570,6 +570,7 @@ struct usb_hub_device { ulong connect_timeout; /* Device connection timeout in ms */ ulong query_delay; /* Device query delay in ms */ int overcurrent_count[USB_MAXCHILDREN]; /* Over-current counter */ + int hub_depth; /* USB 3.0 hub depth */ }; #ifdef CONFIG_DM_USB diff --git a/include/usb_defs.h b/include/usb_defs.h index 6b4385a..273337f 100644 --- a/include/usb_defs.h +++ b/include/usb_defs.h @@ -306,6 +306,9 @@ /* Mask for wIndex in get/set port feature */ #define USB_HUB_PORT_MASK 0xf +/* Hub class request codes */ +#define USB_REQ_SET_HUB_DEPTH 0x0c + /* * CBI style */ |