diff options
author | Raul E Rangel <rrangel@chromium.org> | 2018-07-16 09:21:10 -0600 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2018-07-17 15:23:36 +0000 |
commit | c534a066d8808e97eee9ccd2ac2bc936961a129b (patch) | |
tree | 0a7fda176c889e92a5923ca148c8b95d01d2a367 /payloads/libpayload | |
parent | e73e81d02928a9b369861e996eaf4c5c64d76cc2 (diff) | |
download | coreboot-c534a066d8808e97eee9ccd2ac2bc936961a129b.tar.xz |
libpayload: Add UNKNOWN_SPEED to usb_speed enum
xhci_rh_port_speed return -1 if the port is disabled. The usb_speed enum
is unsigned so this results in a positive value which implies success.
Adding a -1 to the enum will make it signed so the >= 0 check will work
correctly.
BUG=b:76831439
TEST=verified on grunt that -1 is returned when port is disabled.
Change-Id: I98a373717d52dfb6ca4dcc53a00dc1b4c240a919
Signed-off-by: Raul E Rangel <rrangel@chromium.org>
Reviewed-on: https://review.coreboot.org/27476
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
Diffstat (limited to 'payloads/libpayload')
-rw-r--r-- | payloads/libpayload/drivers/usb/xhci_rh.c | 2 | ||||
-rw-r--r-- | payloads/libpayload/include/usb/usb.h | 6 |
2 files changed, 6 insertions, 2 deletions
diff --git a/payloads/libpayload/drivers/usb/xhci_rh.c b/payloads/libpayload/drivers/usb/xhci_rh.c index d7ba82c56a..ddf6ce80a4 100644 --- a/payloads/libpayload/drivers/usb/xhci_rh.c +++ b/payloads/libpayload/drivers/usb/xhci_rh.c @@ -95,7 +95,7 @@ xhci_rh_port_speed(usbdev_t *const dev, const int port) >> PORTSC_PORT_SPEED_START) - 1; } else { - return -1; + return UNKNOWN_SPEED; } } diff --git a/payloads/libpayload/include/usb/usb.h b/payloads/libpayload/include/usb/usb.h index ef1892661c..79c4586c4a 100644 --- a/payloads/libpayload/include/usb/usb.h +++ b/payloads/libpayload/include/usb/usb.h @@ -187,7 +187,11 @@ typedef struct { } endpoint_t; typedef enum { - FULL_SPEED = 0, LOW_SPEED = 1, HIGH_SPEED = 2, SUPER_SPEED = 3, + UNKNOWN_SPEED = -1, + FULL_SPEED = 0, + LOW_SPEED = 1, + HIGH_SPEED = 2, + SUPER_SPEED = 3, } usb_speed; struct usbdev { |