regmap: fix page selection for noinc reads
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Thu, 17 Sep 2020 15:34:04 +0000 (18:34 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 1 Oct 2020 11:14:53 +0000 (13:14 +0200)
commit7b038e4deb458b977a15ab68923e0483778ebcb8
treec358f7b1c620abfd49c2f9e2290e722c154b6f73
parentf37ace9a29866ead7785f2c75f70f3840e774540
regmap: fix page selection for noinc reads

[ Upstream commit 4003324856311faebb46cbd56a1616bd3f3b67c2 ]

Non-incrementing reads can fail if register + length crosses page
border. However for non-incrementing reads we should not check for page
border crossing. Fix this by passing additional flag to _regmap_raw_read
and passing length to _regmap_select_page basing on the flag.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Fixes: 74fe7b551f33 ("regmap: Add regmap_noinc_read API")
Link: https://lore.kernel.org/r/20200917153405.3139200-1-dmitry.baryshkov@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/base/regmap/regmap.c