Add support for USB3-specific Hub Class Feature Selectors

Add Hub Class Feature Selectors (defined in USB3.1 spec, table 10-9) to USBHUB dissector.

Change-Id: I53f73b5d689b8921907514e0fcd74a152abc2b49
Signed-off-by: Sean O. Stalley <sean.stalley@intel.com>
Reviewed-on: https://code.wireshark.org/review/16593
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
This commit is contained in:
Sean O. Stalley 2016-07-22 13:30:52 -07:00 committed by Michael Mann
parent c07bf81082
commit baf8f9c7d0
1 changed files with 31 additions and 14 deletions

View File

@ -121,6 +121,15 @@ static const value_string setup_request_names_vals[] = {
#define USB_HUB_FEATURE_C_PORT_RESET 20
#define USB_HUB_FEATURE_PORT_TEST 21
#define USB_HUB_FEATURE_PORT_INDICATOR 22
/* Table 10-9 Hub Class Feature Selectors (USB3) */
#define USB_HUB_FEATURE_PORT_U1_TIMEOUT 23
#define USB_HUB_FEATURE_PORT_U2_TIMEOUT 24
#define USB_HUB_FEATURE_C_PORT_LINK_STATE 25
#define USB_HUB_FEATURE_C_PORT_CONFIG_ERROR 26
#define USB_HUB_FEATURE_PORT_REMOTE_WAKE_MASK 27
#define USB_HUB_FEATURE_BH_PORT_RESET 28
#define USB_HUB_FEATURE_C_BH_PORT_RESET 29
#define USB_HUB_FEATURE_FORCE_LINKPM_ACCEPT 30
static const value_string hub_class_feature_selectors_recipient_hub_vals[] = {
{ USB_HUB_FEATURE_C_HUB_LOCAL_POWER, "C_HUB_LOCAL_POWER" },
@ -129,20 +138,28 @@ static const value_string hub_class_feature_selectors_recipient_hub_vals[] = {
};
static const value_string hub_class_feature_selectors_recipient_port_vals[] = {
{ USB_HUB_FEATURE_PORT_CONNECTION, "PORT_CONNECTION" },
{ USB_HUB_FEATURE_PORT_ENABLE, "PORT_ENABLE" },
{ USB_HUB_FEATURE_PORT_SUSPEND, "PORT_SUSPEND" },
{ USB_HUB_FEATURE_PORT_OVER_CURRENT, "PORT_OVER_CURRENT" },
{ USB_HUB_FEATURE_PORT_RESET, "PORT_RESET" },
{ USB_HUB_FEATURE_PORT_POWER, "PORT_POWER" },
{ USB_HUB_FEATURE_PORT_LOW_SPEED, "PORT_LOW_SPEED" },
{ USB_HUB_FEATURE_C_PORT_CONNECTION, "C_PORT_CONNECTION" },
{ USB_HUB_FEATURE_C_PORT_ENABLE, "C_PORT_ENABLE" },
{ USB_HUB_FEATURE_C_PORT_SUSPEND, "C_PORT_SUSPEND" },
{ USB_HUB_FEATURE_C_PORT_OVER_CURRENT, "C_PORT_OVER_CURRENT" },
{ USB_HUB_FEATURE_C_PORT_RESET, "C_PORT_RESET" },
{ USB_HUB_FEATURE_PORT_TEST, "PORT_TEST" },
{ USB_HUB_FEATURE_PORT_INDICATOR, "PORT_INDICATOR" },
{ USB_HUB_FEATURE_PORT_CONNECTION, "PORT_CONNECTION" },
{ USB_HUB_FEATURE_PORT_ENABLE, "PORT_ENABLE" },
{ USB_HUB_FEATURE_PORT_SUSPEND, "PORT_SUSPEND" },
{ USB_HUB_FEATURE_PORT_OVER_CURRENT, "PORT_OVER_CURRENT" },
{ USB_HUB_FEATURE_PORT_RESET, "PORT_RESET" },
{ USB_HUB_FEATURE_PORT_POWER, "PORT_POWER" },
{ USB_HUB_FEATURE_PORT_LOW_SPEED, "PORT_LOW_SPEED" },
{ USB_HUB_FEATURE_C_PORT_CONNECTION, "C_PORT_CONNECTION" },
{ USB_HUB_FEATURE_C_PORT_ENABLE, "C_PORT_ENABLE" },
{ USB_HUB_FEATURE_C_PORT_SUSPEND, "C_PORT_SUSPEND" },
{ USB_HUB_FEATURE_C_PORT_OVER_CURRENT, "C_PORT_OVER_CURRENT" },
{ USB_HUB_FEATURE_C_PORT_RESET, "C_PORT_RESET" },
{ USB_HUB_FEATURE_PORT_TEST, "PORT_TEST" },
{ USB_HUB_FEATURE_PORT_INDICATOR, "PORT_INDICATOR" },
{ USB_HUB_FEATURE_PORT_U1_TIMEOUT, "PORT_U1_TIMEOUT" },
{ USB_HUB_FEATURE_PORT_U2_TIMEOUT, "PORT_U2_TIMEOUT" },
{ USB_HUB_FEATURE_C_PORT_LINK_STATE, "C_PORT_LINK_STATE" },
{ USB_HUB_FEATURE_C_PORT_CONFIG_ERROR, "C_PORT_CONFIG_ERROR" },
{ USB_HUB_FEATURE_PORT_REMOTE_WAKE_MASK,"PORT_REMOTE_WAKE_MASK" },
{ USB_HUB_FEATURE_BH_PORT_RESET, "BH_PORT_RESET" },
{ USB_HUB_FEATURE_C_BH_PORT_RESET, "C_BH_PORT_RESET" },
{ USB_HUB_FEATURE_FORCE_LINKPM_ACCEPT, "FORCE_LINKPM_ACCEPT" },
{ 0, NULL }
};