]> git.baikalelectronics.ru Git - kernel.git/commitdiff
leds: pca955x: Allow zero LEDs to be specified
authorAndrew Jeffery <andrew@aj.id.au>
Tue, 21 Sep 2021 04:39:36 +0000 (14:09 +0930)
committerPavel Machek <pavel@ucw.cz>
Wed, 2 Mar 2022 08:51:40 +0000 (09:51 +0100)
It's valid to use the PCA955x devices just for GPIOs and not for LEDs.
In this case, as PCA955X_TYPE_GPIO is now equivalent to
PCA955X_TYPE_NONE, remove the test for whether we have any child nodes
specified in the devicetree.

A consequence of this is it's now possible to bind the driver to a
PCA955x device when dynamically instantiated through the I2C subsystem's
`new_device` interface.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Joel Stanley <joel@jms.id.au>
Reviewed-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: Pavel Machek <pavel@ucw.cz>
drivers/leds/leds-pca955x.c

index 77c0f461ab957f3c9d2885958e70b564d6edaade..81aaf21212d7d6545aeade47ae651ce2a91214d8 100644 (file)
@@ -429,7 +429,7 @@ pca955x_get_pdata(struct i2c_client *client, struct pca955x_chipdef *chip)
        int count;
 
        count = device_get_child_node_count(&client->dev);
-       if (!count || count > chip->bits)
+       if (count > chip->bits)
                return ERR_PTR(-ENODEV);
 
        pdata = devm_kzalloc(&client->dev, sizeof(*pdata), GFP_KERNEL);