diff options
author | Andrew Jeffery <andrew@aj.id.au> | 2021-09-21 14:09:36 +0930 |
---|---|---|
committer | Pavel Machek <pavel@ucw.cz> | 2022-03-02 09:51:40 +0100 |
commit | e26557a0aa68acfb705b51947b7c756401a1ab71 (patch) | |
tree | 8850c49800938518769ed25c54126f81938ac2e5 /drivers/leds | |
parent | ca386253ff6fb86128a7c61e1c38ca91de38048d (diff) | |
download | linux-stable-e26557a0aa68acfb705b51947b7c756401a1ab71.tar.gz linux-stable-e26557a0aa68acfb705b51947b7c756401a1ab71.tar.bz2 linux-stable-e26557a0aa68acfb705b51947b7c756401a1ab71.zip |
leds: pca955x: Allow zero LEDs to be specified
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>
Diffstat (limited to 'drivers/leds')
-rw-r--r-- | drivers/leds/leds-pca955x.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c index 77c0f461ab95..81aaf21212d7 100644 --- a/drivers/leds/leds-pca955x.c +++ b/drivers/leds/leds-pca955x.c @@ -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); |