diff --git a/target/linux/realtek/files-6.12/drivers/i2c/busses/i2c-gpio-shared.c b/target/linux/realtek/files-6.12/drivers/i2c/busses/i2c-gpio-shared.c index e7f817abd7..37930af726 100644 --- a/target/linux/realtek/files-6.12/drivers/i2c/busses/i2c-gpio-shared.c +++ b/target/linux/realtek/files-6.12/drivers/i2c/busses/i2c-gpio-shared.c @@ -10,6 +10,8 @@ #include #include +#define GPIO_SHARED_MAX_BUS 4 + struct gpio_shared_ctx; struct gpio_shared_bus { @@ -20,8 +22,6 @@ struct gpio_shared_bus { struct gpio_shared_ctx *ctx; }; -#define GPIO_SHARED_MAX_BUS 4 - struct gpio_shared_ctx { struct device *dev; struct gpio_desc *scl; @@ -97,7 +97,7 @@ static int gpio_shared_probe(struct platform_device *pdev) if (IS_ERR(ctx->scl)) return dev_err_probe(dev, PTR_ERR(ctx->scl), "shared SCL node not found\n"); - if (device_get_child_node_count(dev) >= GPIO_SHARED_MAX_BUS) + if (device_get_child_node_count(dev) > GPIO_SHARED_MAX_BUS) return dev_err_probe(dev, -EINVAL, "Too many channels\n"); device_for_each_child_node(dev, child) {