usb: Add extended port status struct

Extended Port Status reports the speed and lane count of SS and SSP
links.

Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D57200
This commit is contained in:
ShengYi Hung committed 2026-11-02 14:02:11 +11:00
1 parent ab18352d8f
commit 1fe552b036
1 file changed
+10
+10
View File
@@ -752,6 +752,16 @@ struct usb_port_status {
} __packed;
typedef struct usb_port_status usb_port_status_t;
struct usb_ext_status {
struct usb_port_status ps;
uDWord dwExtPortStatus;
#define UDS_RX_SUBLINK_SPEED_ID_BITS(x) ((x) & 0xF)
#define UDS_TX_SUBLINK_SPEED_ID_BITS(x) (((x) >> 4) & 0xF)
#define UDS_RX_SUBLINK_LANE_COUNT_BITS(x) (((x) >> 8) & 0xF)
#define UDS_TX_SUBLINK_LANE_COUNT_BITS(x) (((x) >> 12) & 0xF)
} __packed;
typedef struct usb_ext_status usb_ext_status_t;
/*
* The "USB_SPEED" macros defines all the supported USB speeds.
*/