summaryrefslogtreecommitdiffstats
path: root/keyboards/jian/rev1/rev1.c
diff options
context:
space:
mode:
authorKgOfHedgehogs <kgofhedgehogs@gmail.com>2020-06-18 04:17:30 +0200
committerGitHub <noreply@github.com>2020-06-17 19:17:30 -0700
commit157319fbd03e6f7a6618111fd03ab3e53317893e (patch)
tree93ca9aab1d065325d22b939f4814eeda4544fc25 /keyboards/jian/rev1/rev1.c
parent39ff121d7389fd6575e65ecb54b11bb87777ca38 (diff)
[Keyboard] Jian keyboard (#8914)
Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: Ryan <fauxpark@gmail.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
Diffstat (limited to 'keyboards/jian/rev1/rev1.c')
-rw-r--r--keyboards/jian/rev1/rev1.c74
1 files changed, 74 insertions, 0 deletions
diff --git a/keyboards/jian/rev1/rev1.c b/keyboards/jian/rev1/rev1.c
new file mode 100644
index 0000000000..f1cfe99180
--- /dev/null
+++ b/keyboards/jian/rev1/rev1.c
@@ -0,0 +1,74 @@
+#include "rev1.h"
+
+#ifdef SWAP_HANDS_ENABLE
+__attribute__ ((weak))
+const keypos_t hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
+ {{0, 4}, {1, 4}, {2, 4}, {3, 4}, {4, 4}, {5, 4}, {6, 4}},
+ {{0, 5}, {1, 5}, {2, 5}, {3, 5}, {4, 5}, {5, 5}, {6, 5}},
+ {{0, 6}, {1, 6}, {2, 6}, {3, 6}, {4, 6}, {5, 6}, {6, 6}},
+ {{0, 7}, {1, 7}, {2, 7}, {3, 7}, {4, 7}, {5, 7}, {6, 7}},
+ {{0, 0}, {1, 0}, {2, 0}, {3, 0}, {4, 0}, {5, 0}, {6, 0}},
+ {{0, 1}, {1, 1}, {2, 1}, {3, 1}, {4, 1}, {5, 1}, {6, 1}},
+ {{0, 2}, {1, 2}, {2, 2}, {3, 2}, {4, 2}, {5, 2}, {6, 2}},
+ {{0, 3}, {1, 3}, {2, 3}, {3, 3}, {4, 3}, {5, 3}, {6, 3}},
+};
+#endif
+
+static bool backlight_was_toggled = false;
+
+void suspend_power_down_kb(void) {
+ if (is_backlight_enabled()) {
+ backlight_disable();
+ backlight_was_toggled = true;
+ }
+}
+
+void suspend_wakeup_init_kb(void) {
+ if (backlight_was_toggled) {
+ backlight_enable();
+ backlight_was_toggled = false;
+ }
+}
+
+#ifdef PHYSICAL_LEDS_ENABLE
+void led_init_kb(void)
+{
+#ifdef NUM_LOCK_LED_PIN
+ setPinOutput(NUM_LOCK_LED_PIN);
+ RESET_NUM_LOCK_LED();
+#endif // NUM_LOCK_LED_PIN
+#ifdef CAPS_LOCK_LED_PIN
+ setPinOutput(CAPS_LOCK_LED_PIN);
+ RESET_CAPS_LOCK_LED();
+#endif // CAPS_LOCK_LED_PIN
+#ifdef SCROLL_LOCK_LED_PIN
+ setPinOutput(SCROLL_LOCK_LED_PIN);
+ RESET_SCROLL_LOCK_LED();
+#endif // SCROLL_LOCK_LED_PIN
+}
+#endif // PHYSICAL_LEDS_ENABLE
+
+void matrix_init_kb(void) {
+#ifdef PHYSICAL_LEDS_ENABLE
+ led_init_kb();
+#endif // PHYSICAL_LEDS_ENABLE
+ matrix_init_user();
+};
+
+#ifdef PHYSICAL_LEDS_ENABLE
+bool led_update_kb(led_t led_state) {
+ bool res = led_update_user(led_state);
+ if(res) {
+#ifdef NUM_LOCK_LED_PIN
+ UPDATE_NUM_LOCK_LED();
+#endif // NUM_LOCK_LED_PIN
+#ifdef CAPS_LOCK_LED_PIN
+ UPDATE_CAPS_LOCK_LED();
+#endif // CAPS_LOCK_LED_PIN
+#ifdef SCROLL_LOCK_LED_PIN
+ UPDATE_SCROLL_LOCK_LED();
+#endif // SCROLL_LOCK_LED_PIN
+ }
+ return res;
+}
+#endif // PHYSICAL_LEDS_ENABLE