i2c: meson: implement the master_xfer_atomic callback
authorMartin Blumenstingl <martin.blumenstingl@googlemail.com>
Tue, 7 Jan 2020 23:29:01 +0000 (00:29 +0100)
committerWolfram Sang <wsa@the-dreams.de>
Mon, 13 Jan 2020 22:13:03 +0000 (23:13 +0100)
commitfe402bd0904979ca4417c0d499b471484e588a9e
treee344d925a8991e5d5057d7d360ea59e8b96521db
parent21575a7a8d4c2593ca8d77b3793b35ab3464d99f
i2c: meson: implement the master_xfer_atomic callback

Boards with some of the 32-bit SoCs (mostly Meson8 and Meson8m2) use a
Ricoh RN5T618 PMU which acts as system power controller. The driver for
the system power controller may need to the I2C bus just before shutting
down or rebooting the system. At this stage the interrupts may be
disabled already.

Implement the master_xfer_atomic callback so the driver for the RN5T618
PMU can communicate properly with the PMU when shutting down or
rebooting the board. The CTRL register has a status bit which can be
polled to determine when processing has completed. According to the
public S805 datasheet the value 0 means "idle" and 1 means "running".

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
[wsa: converted some whitespace alignment]
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-meson.c