fix(usb): Correctly detect USB connection status.

* Fix detection of USB power vs. configuration, to ensure endpoint
  selection works properly with power-only USB attached.
This commit is contained in:
Peter Johanson 2021-11-11 18:36:29 +00:00 committed by Pete Johanson
parent db43757461
commit d7bd81e5c4

View file

@ -31,16 +31,16 @@ enum usb_dc_status_code zmk_usb_get_status() { return usb_status; }
enum zmk_usb_conn_state zmk_usb_get_conn_state() { enum zmk_usb_conn_state zmk_usb_get_conn_state() {
LOG_DBG("state: %d", usb_status); LOG_DBG("state: %d", usb_status);
switch (usb_status) { switch (usb_status) {
case USB_DC_SUSPEND:
case USB_DC_CONFIGURED:
return ZMK_USB_CONN_HID;
case USB_DC_DISCONNECTED: case USB_DC_DISCONNECTED:
case USB_DC_UNKNOWN: case USB_DC_UNKNOWN:
return ZMK_USB_CONN_NONE; return ZMK_USB_CONN_NONE;
case USB_DC_ERROR:
case USB_DC_RESET:
return ZMK_USB_CONN_POWERED;
default: default:
return ZMK_USB_CONN_HID; return ZMK_USB_CONN_POWERED;
} }
} }