forked from kofal.net/zmk
refactor: Move away from deprecated label usages.
* Move away from DT_LABEL. * Move to DEVICE_DT_GET for non-behavior device access. * Move various drivers to `gpio_spec_dt` and `DT` related macros. * Remove mcp23017 while at it, since better upstream driver is available.
This commit is contained in:
committed by
Pete Johanson
parent
062f94d014
commit
09ed79a867
@@ -7,7 +7,7 @@
|
||||
#define DT_DRV_COMPAT zmk_kscan_composite
|
||||
|
||||
#include <zephyr/device.h>
|
||||
#include <drivers/kscan.h>
|
||||
#include <zephyr/drivers/kscan.h>
|
||||
#include <zephyr/logging/log.h>
|
||||
LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||
|
||||
@@ -16,13 +16,13 @@ LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL);
|
||||
#define MATRIX_COLS DT_PROP(MATRIX_NODE_ID, columns)
|
||||
|
||||
struct kscan_composite_child_config {
|
||||
char *label;
|
||||
const struct device *child;
|
||||
uint8_t row_offset;
|
||||
uint8_t column_offset;
|
||||
};
|
||||
|
||||
#define CHILD_CONFIG(inst) \
|
||||
{.label = DT_LABEL(DT_PHANDLE(inst, kscan)), \
|
||||
{.child = DEVICE_DT_GET(DT_PHANDLE(inst, kscan)), \
|
||||
.row_offset = DT_PROP(inst, row_offset), \
|
||||
.column_offset = DT_PROP(inst, column_offset)},
|
||||
|
||||
@@ -41,12 +41,7 @@ static int kscan_composite_enable_callback(const struct device *dev) {
|
||||
for (int i = 0; i < ARRAY_SIZE(kscan_composite_children); i++) {
|
||||
const struct kscan_composite_child_config *cfg = &kscan_composite_children[i];
|
||||
|
||||
const struct device *dev = device_get_binding(cfg->label);
|
||||
if (!dev) {
|
||||
LOG_WRN("Failed to load child kscan device %s", cfg->label);
|
||||
continue;
|
||||
}
|
||||
kscan_enable_callback(dev);
|
||||
kscan_enable_callback(cfg->child);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -55,12 +50,7 @@ static int kscan_composite_disable_callback(const struct device *dev) {
|
||||
for (int i = 0; i < ARRAY_SIZE(kscan_composite_children); i++) {
|
||||
const struct kscan_composite_child_config *cfg = &kscan_composite_children[i];
|
||||
|
||||
const struct device *dev = device_get_binding(cfg->label);
|
||||
if (!dev) {
|
||||
LOG_WRN("Failed to load child kscan device %s", cfg->label);
|
||||
continue;
|
||||
}
|
||||
kscan_disable_callback(dev);
|
||||
kscan_disable_callback(cfg->child);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -68,13 +58,13 @@ static int kscan_composite_disable_callback(const struct device *dev) {
|
||||
static void kscan_composite_child_callback(const struct device *child_dev, uint32_t row,
|
||||
uint32_t column, bool pressed) {
|
||||
// TODO: Ideally we can get this passed into our callback!
|
||||
const struct device *dev = device_get_binding(DT_INST_LABEL(0));
|
||||
const struct device *dev = DEVICE_DT_GET(DT_DRV_INST(0));
|
||||
struct kscan_composite_data *data = dev->data;
|
||||
|
||||
for (int i = 0; i < ARRAY_SIZE(kscan_composite_children); i++) {
|
||||
const struct kscan_composite_child_config *cfg = &kscan_composite_children[i];
|
||||
|
||||
if (device_get_binding(cfg->label) != child_dev) {
|
||||
if (cfg->child != child_dev) {
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -92,7 +82,7 @@ static int kscan_composite_configure(const struct device *dev, kscan_callback_t
|
||||
for (int i = 0; i < ARRAY_SIZE(kscan_composite_children); i++) {
|
||||
const struct kscan_composite_child_config *cfg = &kscan_composite_children[i];
|
||||
|
||||
kscan_config(device_get_binding(cfg->label), &kscan_composite_child_callback);
|
||||
kscan_config(cfg->child, &kscan_composite_child_callback);
|
||||
}
|
||||
|
||||
data->callback = callback;
|
||||
|
||||
Reference in New Issue
Block a user