Bläddra i källkod

Begin to carve out platform/protocol API - Migrate keyboard_* calls (#14888)

Joel Challis 3 år sedan
förälder
incheckning
2ec268bd21

+ 6 - 0
quantum/keyboard.c

@@ -335,6 +335,12 @@ void keyboard_init(void) {
 #ifdef DIP_SWITCH_ENABLE
     dip_switch_init();
 #endif
+#ifdef SLEEP_LED_ENABLE
+    sleep_led_init();
+#endif
+#ifdef VIRTSER_ENABLE
+    virtser_init();
+#endif
 
 #if defined(DEBUG_MATRIX_SCAN_RATE) && defined(CONSOLE_ENABLE)
     debug_enable = true;

+ 14 - 1
quantum/main.c

@@ -20,7 +20,18 @@ void platform_setup(void);
 
 void protocol_setup(void);
 void protocol_init(void);
-void protocol_task(void);
+void protocol_pre_task(void);
+void protocol_post_task(void);
+
+// Bodge as refactoring vusb sucks....
+void protocol_task(void) __attribute__((weak));
+void protocol_task(void) {
+    protocol_pre_task();
+
+    keyboard_task();
+
+    protocol_post_task();
+}
 
 /** \brief Main
  *
@@ -30,8 +41,10 @@ int main(void) __attribute__((weak));
 int main(void) {
     platform_setup();
     protocol_setup();
+    keyboard_setup();
 
     protocol_init();
+    keyboard_init();
 
     /* Main loop */
     while (true) {

+ 3 - 12
tmk_core/protocol/chibios/chibios.c

@@ -138,8 +138,6 @@ void protocol_setup(void) {
 
     // TESTING
     // chThdCreateStatic(waThread1, sizeof(waThread1), NORMALPRIO, Thread1, NULL);
-
-    keyboard_setup();
 }
 
 void protocol_init(void) {
@@ -176,18 +174,10 @@ void protocol_init(void) {
 
     print("USB configured.\n");
 
-    /* init TMK modules */
-    keyboard_init();
     host_set_driver(driver);
-
-#ifdef SLEEP_LED_ENABLE
-    sleep_led_init();
-#endif
-
-    print("Keyboard start.\n");
 }
 
-void protocol_task(void) {
+void protocol_pre_task(void) {
     usb_event_queue_task();
 
 #if !defined(NO_USB_STARTUP_CHECK)
@@ -210,8 +200,9 @@ void protocol_task(void) {
 #    endif /* MOUSEKEY_ENABLE */
     }
 #endif
+}
 
-    keyboard_task();
+void protocol_post_task(void) {
 #ifdef CONSOLE_ENABLE
     console_task();
 #endif

+ 4 - 15
tmk_core/protocol/lufa/lufa.c

@@ -1070,7 +1070,6 @@ void protocol_setup(void) {
 
     setup_mcu();
     usb_device_state_init();
-    keyboard_setup();
 }
 
 void protocol_init(void) {
@@ -1095,21 +1094,11 @@ void protocol_init(void) {
 #else
     USB_USBTask();
 #endif
-    /* init modules */
-    keyboard_init();
-    host_set_driver(&lufa_driver);
-#ifdef SLEEP_LED_ENABLE
-    sleep_led_init();
-#endif
 
-#ifdef VIRTSER_ENABLE
-    virtser_init();
-#endif
-
-    print("Keyboard start.\n");
+    host_set_driver(&lufa_driver);
 }
 
-void protocol_task(void) {
+void protocol_pre_task(void) {
 #if !defined(NO_USB_STARTUP_CHECK)
     if (USB_DeviceState == DEVICE_STATE_Suspended) {
         print("[s]");
@@ -1133,9 +1122,9 @@ void protocol_task(void) {
         suspend_wakeup_init();
     }
 #endif
+}
 
-    keyboard_task();
-
+void protocol_post_task(void) {
 #ifdef MIDI_ENABLE
     MIDI_Device_USBTask(&USB_MIDI_Interface);
 #endif

+ 0 - 7
tmk_core/protocol/vusb/protocol.c

@@ -111,22 +111,15 @@ void protocol_setup(void) {
     // clock prescaler
     clock_prescale_set(clock_div_1);
 #endif
-    keyboard_setup();
 }
 
 void protocol_init(void) {
     setup_usb();
     sei();
 
-    keyboard_init();
-
     host_set_driver(vusb_driver());
 
     wait_ms(50);
-
-#ifdef SLEEP_LED_ENABLE
-    sleep_led_init();
-#endif
 }
 
 void protocol_task(void) {