]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
[Keyboard] Backport two fixes from TMK: usb-usb converter (#6383)
authorMichael Pishchagin <mblsha@gmail.com>
Mon, 22 Jul 2019 09:07:28 +0000 (12:07 +0300)
committerDrashna Jaelre <drashna@live.com>
Mon, 22 Jul 2019 09:07:28 +0000 (02:07 -0700)
* usb_usb: Order of init prevents uneeded bus reset
https://github.com/tmk/tmk_keyboard/commit/7c228967a405b04d58bb06e619de8d1d7bb3c15b#diff-deed77fb597e3a0019ce59fc1d09e260

* usb_usb: Fix startup block bug
https://github.com/tmk/tmk_keyboard/commit/c2ce617a363f3b9d43aa81f98e70d58f928931f4#diff-deed77fb597e3a0019ce59fc1d09e260

keyboards/converter/usb_usb/custom_matrix.cpp

index 6f381aabf405cffedeeb3d16df21df290b99891a..296f7fcd026b928e1b9f658392709299a58a2d58 100644 (file)
@@ -74,8 +74,6 @@ static bool matrix_is_mod = false;
  * This supports two cascaded hubs and four keyboards
  */
 USB usb_host;
-USBHub hub1(&usb_host);
-USBHub hub2(&usb_host);
 HIDBoot<HID_PROTOCOL_KEYBOARD>    kbd1(&usb_host);
 HIDBoot<HID_PROTOCOL_KEYBOARD>    kbd2(&usb_host);
 HIDBoot<HID_PROTOCOL_KEYBOARD>    kbd3(&usb_host);
@@ -84,6 +82,8 @@ KBDReportParser kbd_parser1;
 KBDReportParser kbd_parser2;
 KBDReportParser kbd_parser3;
 KBDReportParser kbd_parser4;
+USBHub hub1(&usb_host);
+USBHub hub2(&usb_host);
 
 
 extern "C"
@@ -252,10 +252,10 @@ extern "C"
 
     void led_set(uint8_t usb_led)
     {
-        kbd1.SetReport(0, 0, 2, 0, 1, &usb_led);
-        kbd2.SetReport(0, 0, 2, 0, 1, &usb_led);
-        kbd3.SetReport(0, 0, 2, 0, 1, &usb_led);
-        kbd4.SetReport(0, 0, 2, 0, 1, &usb_led);
+        if (kbd1.isReady()) kbd1.SetReport(0, 0, 2, 0, 1, &usb_led);
+        if (kbd2.isReady()) kbd2.SetReport(0, 0, 2, 0, 1, &usb_led);
+        if (kbd3.isReady()) kbd3.SetReport(0, 0, 2, 0, 1, &usb_led);
+        if (kbd4.isReady()) kbd4.SetReport(0, 0, 2, 0, 1, &usb_led);
         led_set_kb(usb_led);
     }