diff options
| author | Louis Burda <quent.burda@gmail.com> | 2022-12-19 00:33:54 +0100 |
|---|---|---|
| committer | Louis Burda <quent.burda@gmail.com> | 2022-12-19 00:41:30 +0100 |
| commit | e4783bbcc4214416befceb53f6af9ebdfb35ba86 (patch) | |
| tree | 71ae9268017cb3f0b7dabe1e9016970fb137872c /src/split.c | |
| parent | 8e60c68eac5dbe749c80d1b42160ad1f7de42200 (diff) | |
| download | sxkbd-e4783bbcc4214416befceb53f6af9ebdfb35ba86.tar.gz sxkbd-e4783bbcc4214416befceb53f6af9ebdfb35ba86.zip | |
Add more keys to keymap and add split role detection
Diffstat (limited to 'src/split.c')
| -rw-r--r-- | src/split.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/split.c b/src/split.c index 1a0c803..52c53d8 100644 --- a/src/split.c +++ b/src/split.c @@ -64,6 +64,8 @@ static uint uart_rx_sm_offset; static uint32_t halfmat; static bool scan_pending = false; +int split_role; + void uart_tx_sm_init(void) { @@ -218,14 +220,14 @@ handle_cmd(uint8_t cmd) switch (cmd) { case CMD_SCAN_KEYMAT_REQ: - if (SPLIT_ROLE != SLAVE) { + if (split_role != SLAVE) { WARN("Got SCAN_KEYMAT_REQ as master"); break; } scan_pending = true; return; case CMD_SCAN_KEYMAT_RESP: - if (SPLIT_ROLE != MASTER) { + if (split_role != MASTER) { WARN("Got SCAN_KEYMAT_RESP as slave"); break; } @@ -234,7 +236,7 @@ handle_cmd(uint8_t cmd) scan_pending = false; return; case CMD_STDIO_PUTS: - if (SPLIT_ROLE != MASTER) { + if (split_role != MASTER) { WARN("Got STDIO_PUTS as slave"); break; } @@ -260,6 +262,11 @@ void split_init(void) { uart_full_init(); +#ifdef SPLIT_ROLE + split_role = SPLIT_ROLE; +#else + split_role = SLAVE; +#endif } void @@ -268,7 +275,7 @@ split_task(void) uint32_t start_ms; uint8_t cmd; - if (SPLIT_ROLE == MASTER) { + if (split_role == MASTER) { scan_pending = true; cmd = CMD_SCAN_KEYMAT_REQ; ASSERT(uart_send(&cmd, 1) == 1); |
