Re: [PATCH v7 3/3] gpio: pca953x: fix address calculation for pcal6524

From: Linus Walleij
Date: Wed May 23 2018 - 06:55:19 EST


On Thu, May 17, 2018 at 6:59 AM, H. Nikolaus Schaller <hns@xxxxxxxxxxxxx> wrote:

> The register constants are so far defined in a way that they fit
> for the pcal9555a when shifted by the number of banks, i.e. are
> multiplied by 2 in the accessor function.
>
> Now, the pcal6524 has 3 banks which means the relative offset
> is multiplied by 4 for the standard registers.
>
> Simply applying the bit shift to the extended registers gives
> a wrong result, since the base offset is already included in
> the offset.
>
> Therefore, we have to add code to the 24 bit accessor functions
> that adjusts the register number for these exended registers.
>
> The formula finally used was developed and proposed by
> Andy Shevchenko <andy.shevchenko@xxxxxxxxx>.
>
> Suggested-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
> Signed-off-by: H. Nikolaus Schaller <hns@xxxxxxxxxxxxx>

Patch applied.

Yours,
Linus Walleij