On Tue, 2010-10-05 at 15:42 -0700, [email protected] wrote:
> From: Rhyland Klein <[email protected]>

Hi again.

> diff --git a/drivers/staging/iio/light/isl29018.c 
> b/drivers/staging/iio/light/isl29018.c
[]
> +#define ISL29018_REG_ADD_DATA_LSB    0x02
> +#define ISL29018_REG_ADD_DATA_MSB    0x03
> +#define ISL29018_MAX_REGS            ISL29018_REG_ADD_DATA_MSB
> +
> +struct isl29018_chip {
> +     struct iio_dev          *indio_dev;
> +     struct i2c_client       *client;
> +     struct mutex            lock;
> +     unsigned int            range;
> +     unsigned int            adc_bit;
> +     int                     prox_scheme;
> +     u8                      reg_cache[ISL29018_MAX_REGS];
> +};
[]
> +static int isl29018_chip_init(struct i2c_client *client)
> +{
> +     struct isl29018_chip *chip = i2c_get_clientdata(client);
[]
> +     memset((void *)chip->reg_cache, 0, ARRAY_SIZE(chip->reg_cache));

Turns out there's only 3 of these registers.
Earlier, I believe you said 32 bytes. 

I think the normal kernel style is:

        memset(chip->reg_cache, 0, sizeof(chip->reg_cache));

ARRAY_SIZE works, but only because reg_cache is u8.

cheers, Joe

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

Reply via email to