>>>>> "Linus" == Linus Walleij <[email protected]> writes:

 > Daniel, Lars, Peter: can either of you have a look at this patch
 > and ACK/NACK it?

Sorry, it seems like I wasn't CC'ed on this patch (or the one adding the
DT bindings). The patch looks good to me:

Acked-by: Peter Korsgaard <[email protected]>


 > On Thu, Apr 17, 2014 at 3:00 AM, Michael Welling <[email protected]> wrote:
 >> The chips variable needs to be incremented for each chip that is found in 
 >> the
 >> spi_present_mask when register via device tree. Without this and the 
 >> checking

s/register/registrering/


 >> a negative index is passed to the data->chip array in a subsequent loop.
 >> 
 >> Signed-off-by: Michael Welling <[email protected]>
 >> ---
 >> drivers/gpio/gpio-mcp23s08.c |   12 +++++++-----
 >> 1 file changed, 7 insertions(+), 5 deletions(-)
 >> 
 >> diff --git a/drivers/gpio/gpio-mcp23s08.c b/drivers/gpio/gpio-mcp23s08.c
 >> index 99a6831..3d53fd6 100644
 >> --- a/drivers/gpio/gpio-mcp23s08.c
 >> +++ b/drivers/gpio/gpio-mcp23s08.c
 >> @@ -894,9 +894,11 @@ static int mcp23s08_probe(struct spi_device *spi)
 >> dev_err(&spi->dev, "invalid spi-present-mask\n");
 >> return -ENODEV;
 >> }
 >> -
 >> -               for (addr = 0; addr < ARRAY_SIZE(pdata->chip); addr++)
 >> +               for (addr = 0; addr < ARRAY_SIZE(pdata->chip); addr++) {
 >> +                       if ((spi_present_mask & (1 << addr)))
 >> +                               chips++;
 >> pullups[addr] = 0;
 >> +               }
 >> } else {
 >> type = spi_get_device_id(spi)->driver_data;
 >> pdata = dev_get_platdata(&spi->dev);
 >> @@ -919,12 +921,12 @@ static int mcp23s08_probe(struct spi_device *spi)
 >> pullups[addr] = pdata->chip[addr].pullups;
 >> }
 >> 
 >> -               if (!chips)
 >> -                       return -ENODEV;
 >> -
 >> base = pdata->base;
 >> }
 >> 
 >> +       if (!chips)
 >> +               return -ENODEV;
 >> +
 >> data = kzalloc(sizeof(*data) + chips * sizeof(struct mcp23s08),
 >> GFP_KERNEL);
 >> if (!data)
 >> --
 >> 1.7.9.5
 >> 


-- 
Bye, Peter Korsgaard
--
To unsubscribe from this list: send the line "unsubscribe linux-gpio" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to