]> git.baikalelectronics.ru Git - kernel.git/commit
i2c: designware: call i2c_dw_read_clear_intrbits_slave() once
authorMichael Wu <michael.wu@vatics.com>
Fri, 30 Oct 2020 08:04:19 +0000 (16:04 +0800)
committerWolfram Sang <wsa@kernel.org>
Fri, 6 Nov 2020 15:01:48 +0000 (16:01 +0100)
commita6b895bedb0a1d69cb0cd650d47bce0e2b990cff
tree02fba180ec7ad409a3e11f0222b578de23bc90f8
parent40d836575071418775cdb03892b212867b4453fe
i2c: designware: call i2c_dw_read_clear_intrbits_slave() once

If some bits were cleared by i2c_dw_read_clear_intrbits_slave() in
i2c_dw_isr_slave() and not handled immediately, those cleared bits would
not be shown again by later i2c_dw_read_clear_intrbits_slave(). They
therefore were forgotten to be handled.

i2c_dw_read_clear_intrbits_slave() should be called once in an ISR and take
its returned state for all later handlings.

Signed-off-by: Michael Wu <michael.wu@vatics.com>
Acked-by: Jarkko Nikula <jarkko.nikula@linux.intel.com>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
drivers/i2c/busses/i2c-designware-slave.c