summaryrefslogtreecommitdiff
path: root/app/src/kscan_composite.c
diff options
context:
space:
mode:
authorNick <nick.win999@gmail.com>2020-09-15 14:41:59 -0500
committerNick <nick.win999@gmail.com>2020-09-15 14:41:59 -0500
commit18d21b0362c5c09902836ed4791bd13e1efd9a9a (patch)
tree3f78a0ef43fc23e93195e1205a31f77154af7e76 /app/src/kscan_composite.c
parent81bc157f539235ad032fde78b6f6cec7a16d2c39 (diff)
parentc0806d27f1d048db335ecc854eab61b59e23ea7a (diff)
Merge remote-tracking branch 'upstream/main' into underglow/state-persistence
Diffstat (limited to 'app/src/kscan_composite.c')
-rw-r--r--app/src/kscan_composite.c65
1 files changed, 26 insertions, 39 deletions
diff --git a/app/src/kscan_composite.c b/app/src/kscan_composite.c
index d46484b..0249140 100644
--- a/app/src/kscan_composite.c
+++ b/app/src/kscan_composite.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2020 Peter Johanson <peter@peterjohanson.com>
+ * Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
@@ -15,37 +15,31 @@ LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
#define MATRIX_ROWS DT_PROP(MATRIX_NODE_ID, rows)
#define MATRIX_COLS DT_PROP(MATRIX_NODE_ID, columns)
-struct kscan_composite_child_config
-{
+struct kscan_composite_child_config {
char *label;
u8_t row_offset;
u8_t column_offset;
};
-#define CHILD_CONFIG(inst) \
- { \
- .label = DT_LABEL(DT_PHANDLE(inst, kscan)), \
- .row_offset = DT_PROP(inst, row_offset), \
- .column_offset = DT_PROP(inst, column_offset)},
+#define CHILD_CONFIG(inst) \
+ {.label = DT_LABEL(DT_PHANDLE(inst, kscan)), \
+ .row_offset = DT_PROP(inst, row_offset), \
+ .column_offset = DT_PROP(inst, column_offset)},
const struct kscan_composite_child_config kscan_composite_children[] = {
DT_FOREACH_CHILD(MATRIX_NODE_ID, CHILD_CONFIG)};
-struct kscan_composite_config
-{
-};
+struct kscan_composite_config {};
-struct kscan_composite_data
-{
+struct kscan_composite_data {
kscan_callback_t callback;
struct device *dev;
};
-static int kscan_composite_enable_callback(struct device *dev)
-{
- for (int i = 0; i < sizeof(kscan_composite_children) / sizeof(kscan_composite_children[0]); i++)
- {
+static int kscan_composite_enable_callback(struct device *dev) {
+ for (int i = 0; i < sizeof(kscan_composite_children) / sizeof(kscan_composite_children[0]);
+ i++) {
const struct kscan_composite_child_config *cfg = &kscan_composite_children[i];
kscan_enable_callback(device_get_binding(cfg->label));
@@ -53,10 +47,9 @@ static int kscan_composite_enable_callback(struct device *dev)
return 0;
}
-static int kscan_composite_disable_callback(struct device *dev)
-{
- for (int i = 0; i < sizeof(kscan_composite_children) / sizeof(kscan_composite_children[0]); i++)
- {
+static int kscan_composite_disable_callback(struct device *dev) {
+ for (int i = 0; i < sizeof(kscan_composite_children) / sizeof(kscan_composite_children[0]);
+ i++) {
const struct kscan_composite_child_config *cfg = &kscan_composite_children[i];
kscan_disable_callback(device_get_binding(cfg->label));
@@ -64,18 +57,17 @@ static int kscan_composite_disable_callback(struct device *dev)
return 0;
}
-static void kscan_composite_child_callback(struct device *child_dev, u32_t row, u32_t column, bool pressed)
-{
+static void kscan_composite_child_callback(struct device *child_dev, u32_t row, u32_t column,
+ bool pressed) {
// TODO: Ideally we can get this passed into our callback!
struct device *dev = device_get_binding(DT_INST_LABEL(0));
struct kscan_composite_data *data = dev->driver_data;
- for (int i = 0; i < sizeof(kscan_composite_children) / sizeof(kscan_composite_children[0]); i++)
- {
+ for (int i = 0; i < sizeof(kscan_composite_children) / sizeof(kscan_composite_children[0]);
+ i++) {
const struct kscan_composite_child_config *cfg = &kscan_composite_children[i];
- if (device_get_binding(cfg->label) != child_dev)
- {
+ if (device_get_binding(cfg->label) != child_dev) {
continue;
}
@@ -83,17 +75,15 @@ static void kscan_composite_child_callback(struct device *child_dev, u32_t row,
}
}
-static int kscan_composite_configure(struct device *dev, kscan_callback_t callback)
-{
+static int kscan_composite_configure(struct device *dev, kscan_callback_t callback) {
struct kscan_composite_data *data = dev->driver_data;
- if (!callback)
- {
+ if (!callback) {
return -EINVAL;
}
- for (int i = 0; i < sizeof(kscan_composite_children) / sizeof(kscan_composite_children[0]); i++)
- {
+ for (int i = 0; i < sizeof(kscan_composite_children) / sizeof(kscan_composite_children[0]);
+ i++) {
const struct kscan_composite_child_config *cfg = &kscan_composite_children[i];
kscan_config(device_get_binding(cfg->label), &kscan_composite_child_callback);
@@ -104,8 +94,7 @@ static int kscan_composite_configure(struct device *dev, kscan_callback_t callba
return 0;
}
-static int kscan_composite_init(struct device *dev)
-{
+static int kscan_composite_init(struct device *dev) {
struct kscan_composite_data *data = dev->driver_data;
data->dev = dev;
@@ -123,8 +112,6 @@ static const struct kscan_composite_config kscan_composite_config = {};
static struct kscan_composite_data kscan_composite_data;
-DEVICE_AND_API_INIT(kscan_composite, DT_INST_LABEL(0), kscan_composite_init,
- &kscan_composite_data,
- &kscan_composite_config,
- APPLICATION, CONFIG_KERNEL_INIT_PRIORITY_DEFAULT,
+DEVICE_AND_API_INIT(kscan_composite, DT_INST_LABEL(0), kscan_composite_init, &kscan_composite_data,
+ &kscan_composite_config, APPLICATION, CONFIG_KERNEL_INIT_PRIORITY_DEFAULT,
&mock_driver_api);