lkml.org 
[lkml]   [2022]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 42/87] gpio: pca953x: only use single read/write for No AI mode
    Date
    From: Haibo Chen <haibo.chen@nxp.com>

    [ Upstream commit db8edaa09d7461ec08672a92a2eef63d5882bb79 ]

    For the device use NO AI mode(not support auto address increment),
    only use the single read/write when config the regmap.

    We meet issue on PCA9557PW on i.MX8QXP/DXL evk board, this device
    do not support AI mode, but when do the regmap sync, regmap will
    sync 3 byte data to register 1, logically this means write first
    data to register 1, write second data to register 2, write third data
    to register 3. But this device do not support AI mode, finally, these
    three data write only into register 1 one by one. the reault is the
    value of register 1 alway equal to the latest data, here is the third
    data, no operation happened on register 2 and register 3. This is
    not what we expect.

    Fixes: 49427232764d ("gpio: pca953x: Perform basic regmap conversion")
    Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
    Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
    Signed-off-by: Bartosz Golaszewski <brgl@bgdev.pl>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/gpio/gpio-pca953x.c | 3 +++
    1 file changed, 3 insertions(+)

    diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c
    index 54da66d02b0e..317f54f19477 100644
    --- a/drivers/gpio/gpio-pca953x.c
    +++ b/drivers/gpio/gpio-pca953x.c
    @@ -379,6 +379,9 @@ static const struct regmap_config pca953x_i2c_regmap = {
    .reg_bits = 8,
    .val_bits = 8,

    + .use_single_read = true,
    + .use_single_write = true,
    +
    .readable_reg = pca953x_readable_register,
    .writeable_reg = pca953x_writeable_register,
    .volatile_reg = pca953x_volatile_register,
    --
    2.35.1


    \
     
     \ /
      Last update: 2022-07-27 18:42    [W:4.248 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site