summaryrefslogtreecommitdiffstats
path: root/mm/Kconfig.debug
diff options
context:
space:
mode:
authorMatti Vaittinen <mazziesaccount@gmail.com>2023-05-08 13:01:25 +0200
committerJonathan Cameron <Jonathan.Cameron@huawei.com>2023-05-13 20:22:01 +0200
commitd049151adde4ec17392592d145e94f0086f8ee80 (patch)
treef36ad79489cf23135483e408c812e79825ff130b /mm/Kconfig.debug
parentiio: dac: build ad5758 driver when AD5758 is selected (diff)
downloadlinux-d049151adde4ec17392592d145e94f0086f8ee80.tar.xz
linux-d049151adde4ec17392592d145e94f0086f8ee80.zip
iio: bu27034: Ensure reset is written
The reset bit must be always written to the hardware no matter what value is in a cache or register. Ensure this by using regmap_write_bits() instead of the regmap_update_bits(). Furthermore, the SWRESET bit may be self-clearing, so mark the SYSTEM_CONTROL register volatile to guarantee we do also read the right state - should we ever need to read it. Finally, writing the SWRESET bit will restore the default register values. This can cause register cache to be outdated if there are any register values cached. Rebuild register cache after SWRESET and use regmap_update_bits() when performing the reset. Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com> Fixes: e52afbd61039 ("iio: light: ROHM BU27034 Ambient Light Sensor") Link: https://lore.kernel.org/r/ZFjWhbfuN5XcKty+@fedora Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Diffstat (limited to 'mm/Kconfig.debug')
0 files changed, 0 insertions, 0 deletions