Commit 54f1840
i2c: aspeed: Fix i2c bus hang in slave read
When the `CONFIG_I2C_SLAVE` option is enabled and the device operates
as a slave, a situation arises where the master sends a START signal
without the accompanying STOP signal. This action results in a
persistent I2C bus timeout. The core issue stems from the fact that
the i2c controller remains in a slave read state without a timeout
mechanism. As a consequence, the bus perpetually experiences timeouts.
In this case, the i2c bus will be reset, but the slave_state reset is
missing.
Fixes: fee4651 ("i2c: aspeed: Reset the i2c controller when timeout occurs")
Signed-off-by: Jian Zhang <[email protected]>
Acked-by: Andi Shyti <[email protected]>
Tested-by: Andrew Jeffery <[email protected]>
Reviewed-by: Andrew Jeffery <[email protected]>
Signed-off-by: Wolfram Sang <[email protected]>1 parent 94f6f05 commit 54f1840
1 file changed
+2
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
749 | 749 | | |
750 | 750 | | |
751 | 751 | | |
| 752 | + | |
| 753 | + | |
752 | 754 | | |
753 | 755 | | |
754 | 756 | | |
| |||
765 | 767 | | |
766 | 768 | | |
767 | 769 | | |
768 | | - | |
769 | 770 | | |
770 | 771 | | |
771 | 772 | | |
| |||
0 commit comments