android_kernel_oneplus_msm8998/drivers/i2c
Wolfram Sang ea37818a54 i2c: rcar: revoke START request early
commit 52df445f29b79006d8b2dcd129152987c0d3bd64 upstream.

If we don't clear START generation as soon as possible, it may cause
another message to be generated, e.g. when receiving NACK in address
phase. To keep the race window as small as possible, we clear it right
at the beginning of the interrupt. We don't need any checks since we
always want to stop START and STOP generation on the next occasion after
we started it.

This patch improves the situation but sadly does not completely fix it.
It is still to be researched if we can do better given this HW design.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Signed-off-by: Fabrizio Castro <fabrizio.castro@bp.renesas.com>
Reviewed-by: Biju Das <biju.das@bp.renesas.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2018-06-06 16:46:22 +02:00
..
algos
busses i2c: rcar: revoke START request early 2018-06-06 16:46:22 +02:00
muxes i2c: mux: fix up dependencies 2016-11-26 09:54:52 +01:00
i2c-boardinfo.c i2c: remove __init from i2c_register_board_info() 2018-02-25 11:03:48 +01:00
i2c-core.c i2c: print correct device invalid address 2017-01-19 20:17:20 +01:00
i2c-core.h
i2c-dev.c i2c: fix kernel memory disclosure in dev interface 2017-01-19 20:17:20 +01:00
i2c-mux.c
i2c-slave-eeprom.c
i2c-smbus.c
i2c-stub.c
Kconfig i2c: mux: fix up dependencies 2016-11-26 09:54:52 +01:00
Makefile