]> git.baikalelectronics.ru Git - kernel.git/commit
i2c: mlxcpld: Fix wrong initialization order in probe
authorVadim Pasternak <vadimp@mellanox.com>
Thu, 16 May 2019 17:15:41 +0000 (17:15 +0000)
committerWolfram Sang <wsa@the-dreams.de>
Mon, 27 May 2019 19:24:58 +0000 (21:24 +0200)
commit94000524289093e2f12dd37540eceb1aa3562ec4
treede1cba3da186121bccf50b402c3840e784a50dbd
parent081c5175be47a53278c6997765fa9953c1334b49
i2c: mlxcpld: Fix wrong initialization order in probe

Fix wrong order in probing routine initialization - field `base_addr'
is used before it's initialized. Move assignment of 'priv->base_addr`
to the beginning, prior the call to mlxcpld_i2c_read_comm().
Wrong order caused the first read of capability register to be executed
at wrong offset 0x0 instead of 0x2000. By chance it was a "good
garbage" at 0x0 offset.

Fixes: be2a230df919 ("i2c: mlxcpld: Add support for extended transaction length for i2c-mlxcpld")
Signed-off-by: Vadim Pasternak <vadimp@mellanox.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Cc: stable@kernel.org
drivers/i2c/busses/i2c-mlxcpld.c