lkml.org 
[lkml]   [2007]   [Dec]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
DateSat, 15 Dec 2007 15:40:24 -0800
FromDavid Brownell <>
SubjectRe: [PATCH 2.6.24-rc5-mm 1/3] gpiolib: basic support for 16-bit PCA9539 GPIO expander
> +	/* initialize cached registers from their original values */
> + pca9539_read_reg(chip, PCA9539_OUTPUT, &chip->reg_output);
> + pca9539_read_reg(chip, PCA9539_DIRECTION, &chip->reg_direction);
> +
> + /* set platform specific polarity inversion */
> + pca9539_write_reg(chip, PCA9539_INVERT, pdata->invert);
> +
> + ret = pca9539_init_gpio(chip);
> + if (ret)
> + goto out_failed;

I'm glad to see this patch no longer trashes previous chip state,
but there's still an issue in that area. Surely the code should

ret = pca9539_read_reg(...)
if (ret)
goto out_failed;
and likewise for the write? If the chip isn't present (and thus
an I/O error is reported), its probe() should fail.

- Dave



\
 
 \ /
  Last update: 2007-12-16 00:53    [from the cache]
©2003-2010