On Thu, 28 May 2020 at 08:31, Stephen Rothwell <[email protected]> wrote:
>
> Hi Joel,
>
> On Thu, 28 May 2020 16:50:37 +0930 Joel Stanley <[email protected]> wrote:
> >
> >
> >  #define I2C_OWN_SLAVE_ADDRESS        (1 << 30)
> > +#define I2C_TEN_BIT_ADDRESS  (1 << 31)
> >
> >  static void check_i2c_bus_reg(struct check *c, struct dt_info *dti, struct 
> > node *node)
> >  {
> > @@ -1057,10 +1058,13 @@ static void check_i2c_bus_reg(struct check *c, 
> > struct dt_info *dti, struct node
> >               reg = fdt32_to_cpu(*(cells++));
> >               /* Ignore I2C_OWN_SLAVE_ADDRESS */
> >               reg &= ~I2C_OWN_SLAVE_ADDRESS;
> > -             if (reg > 0x3ff)
> > +
> > +             if ((reg & I2C_TEN_BIT_ADDRESS) && reg > 0x3ff)
>
> Shouldn't this be
>
>                 if ((reg & I2C_TEN_BIT_ADDRESS) && ((reg & 
> ~I2C_TEN_BIT_ADDRESS) > 0x3ff))

Yes, good catch.

There are no device trees that set the I2C_TEN_BIT_ADDRESS flag in the
kernel, so it is untested.

Reply via email to