<p>Raul Rangel has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/27476">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">libpayload: Add UNKNOWN_SPEED to usb_speed enum<br><br>xhci_rh_port_speed return -1 if the port is disabled. The usb_speed enum<br>is unsigned so this results in a positive value which implies success.<br><br>Adding a -1 to the enum will make it signed so the >= 0 check will work<br>correctly.<br><br>BUG=b:76831439<br>TEST=verified on grunt that -1 is returned when port is disabled.<br><br>Change-Id: I98a373717d52dfb6ca4dcc53a00dc1b4c240a919<br>Signed-off-by: Raul E Rangel <rrangel@chromium.org><br>---<br>M payloads/libpayload/drivers/usb/generic_hub.c<br>M payloads/libpayload/drivers/usb/xhci_rh.c<br>M payloads/libpayload/include/usb/usb.h<br>3 files changed, 8 insertions(+), 3 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/76/27476/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/payloads/libpayload/drivers/usb/generic_hub.c b/payloads/libpayload/drivers/usb/generic_hub.c</span><br><span>index 9f86705..89da934 100644</span><br><span>--- a/payloads/libpayload/drivers/usb/generic_hub.c</span><br><span>+++ b/payloads/libpayload/drivers/usb/generic_hub.c</span><br><span>@@ -170,7 +170,8 @@</span><br><span> </span><br><span>   const usb_speed speed = hub->ops->port_speed(dev, port);</span><br><span>       if (speed >= 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-            usb_debug("generic_hub: Success at port %d\n", port);</span><br><span style="color: hsl(120, 100%, 40%);">+               usb_debug("generic_hub: Success at port %d, speed: %d\n", port,</span><br><span style="color: hsl(120, 100%, 40%);">+                       speed);</span><br><span>            if (hub->ops->reset_port)</span><br><span>                      mdelay(10); /* Reset recovery time</span><br><span>                                  (usb20 spec 7.1.7.5) */</span><br><span>diff --git a/payloads/libpayload/drivers/usb/xhci_rh.c b/payloads/libpayload/drivers/usb/xhci_rh.c</span><br><span>index d7ba82c..ddf6ce8 100644</span><br><span>--- a/payloads/libpayload/drivers/usb/xhci_rh.c</span><br><span>+++ b/payloads/libpayload/drivers/usb/xhci_rh.c</span><br><span>@@ -95,7 +95,7 @@</span><br><span>                          >> PORTSC_PORT_SPEED_START)</span><br><span>                    - 1;</span><br><span>         } else {</span><br><span style="color: hsl(0, 100%, 40%);">-                return -1;</span><br><span style="color: hsl(120, 100%, 40%);">+            return UNKNOWN_SPEED;</span><br><span>        }</span><br><span> }</span><br><span> </span><br><span>diff --git a/payloads/libpayload/include/usb/usb.h b/payloads/libpayload/include/usb/usb.h</span><br><span>index ef18926..79c4586 100644</span><br><span>--- a/payloads/libpayload/include/usb/usb.h</span><br><span>+++ b/payloads/libpayload/include/usb/usb.h</span><br><span>@@ -187,7 +187,11 @@</span><br><span> } endpoint_t;</span><br><span> </span><br><span> typedef enum {</span><br><span style="color: hsl(0, 100%, 40%);">-       FULL_SPEED = 0, LOW_SPEED = 1, HIGH_SPEED = 2, SUPER_SPEED = 3,</span><br><span style="color: hsl(120, 100%, 40%);">+       UNKNOWN_SPEED = -1,</span><br><span style="color: hsl(120, 100%, 40%);">+   FULL_SPEED = 0,</span><br><span style="color: hsl(120, 100%, 40%);">+       LOW_SPEED = 1,</span><br><span style="color: hsl(120, 100%, 40%);">+        HIGH_SPEED = 2,</span><br><span style="color: hsl(120, 100%, 40%);">+       SUPER_SPEED = 3,</span><br><span> } usb_speed;</span><br><span> </span><br><span> struct usbdev {</span><br><span></span><br></pre><p>To view, visit <a href="https://review.coreboot.org/27476">change 27476</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/27476"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: coreboot </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I98a373717d52dfb6ca4dcc53a00dc1b4c240a919 </div>
<div style="display:none"> Gerrit-Change-Number: 27476 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Raul Rangel <rrangel@chromium.org> </div>