summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Pishchagin <mblsha@gmail.com>2019-07-22 12:07:28 +0300
committerDrashna Jaelre <drashna@live.com>2019-07-22 02:07:28 -0700
commit28f53462d03124305cdca7810300c6861b0fac83 (patch)
treee5fa2e51454b5fda1c16204d48d69b98bbd51411
parent4532caf5f2781f7fc3b28ab847e06a147c091e60 (diff)
[Keyboard] Backport two fixes from TMK: usb-usb converter (#6383)
* 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
-rw-r--r--keyboards/converter/usb_usb/custom_matrix.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/keyboards/converter/usb_usb/custom_matrix.cpp b/keyboards/converter/usb_usb/custom_matrix.cpp
index 6f381aabf4..296f7fcd02 100644
--- a/keyboards/converter/usb_usb/custom_matrix.cpp
+++ b/keyboards/converter/usb_usb/custom_matrix.cpp
@@ -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);
}