[PATCH 1/2] gpio: mcp23s08: Allow -1 as a legal value for global gpio base
Lars Poeschel
larsi at wh2.tu-dresden.de
Thu Feb 7 04:01:57 EST 2013
From: Lars Poeschel <poeschel at lemonage.de>
Explicitly allow -1 as a legal value for the
mcp23s08_platform_data->base. This is the special value lets the
kernel choose a valid global gpio base number.
Signed-off-by: Lars Poeschel <poeschel at lemonage.de>
---
drivers/gpio/gpio-mcp23s08.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpio/gpio-mcp23s08.c b/drivers/gpio/gpio-mcp23s08.c
index 3cea0ea..2afb828 100644
--- a/drivers/gpio/gpio-mcp23s08.c
+++ b/drivers/gpio/gpio-mcp23s08.c
@@ -483,7 +483,7 @@ static int mcp230xx_probe(struct i2c_client *client,
int status;
pdata = client->dev.platform_data;
- if (!pdata || !gpio_is_valid(pdata->base)) {
+ if ((!pdata || !gpio_is_valid(pdata->base)) && pdata->base != -1) {
dev_dbg(&client->dev, "invalid or missing platform data\n");
return -EINVAL;
}
@@ -570,7 +570,7 @@ static int mcp23s08_probe(struct spi_device *spi)
type = spi_get_device_id(spi)->driver_data;
pdata = spi->dev.platform_data;
- if (!pdata || !gpio_is_valid(pdata->base)) {
+ if ((!pdata || !gpio_is_valid(pdata->base)) && pdata->base != -1) {
dev_dbg(&spi->dev, "invalid or missing platform data\n");
return -EINVAL;
}
--
1.7.10.4
More information about the devicetree-discuss
mailing list