ast2600 i2c irq error
Quan Nguyen
quan at os.amperecomputing.com
Mon Oct 24 17:48:56 AEDT 2022
Hi Joel,
Can you try the patchset [1] to see if any improvement ?
We tested with these patches and they look good. Graeme has also tried
them as in [2].
[1]
https://lore.kernel.org/all/20210616031046.2317-1-quan@os.amperecomputing.com/
[2]
https://lore.kernel.org/all/72c8a5bc-830d-25a9-0528-5d428dd9f163@quicinc.com/
Thanks
- Quan
On 24/10/2022 11:02, Joel Stanley wrote:
> With the 6.0 kernel I saw this on hardware:
>
> [ 205.644781] aspeed-i2c-bus 1e78a800.i2c-bus: irq handled != irq.
> expected 0x00000021, but was 0x00000020
> [ 205.669842] aspeed-i2c-bus 1e78a800.i2c-bus: irq handled != irq.
> expected 0x00000021, but was 0x00000020
> [ 205.694814] aspeed-i2c-bus 1e78a800.i2c-bus: irq handled != irq.
> expected 0x00000021, but was 0x00000020
> [ 205.719805] aspeed-i2c-bus 1e78a800.i2c-bus: irq handled != irq.
> expected 0x00000021, but was 0x00000020
>
> $ bitfield G6I2CD10 0x00000021
> decoding as AST2600 I2C interrupt status register
> 0x00000021 [33]
> Slave Address Received Pending: 0x0
> Slave mode inactive timeout: 0x0
> SDA data-low timeout: 0x0
> Bus recover done: 0x0
> SMBus device alert: 0x0
> Reserved: 0x0
> Reserved: 0x0
> Reserved: 0x0
> Reserved: 0x0
> Slave address received match: 0x0
> SCL clock-low timeout: 0x0
> Abnormal start/stop: 0x1
> Normal stop: 0x0
> Master arbitration loss: 0x0
> Receive done: 0x0
> Transmit done with NACK: 0x0
> Transmit done with ACK: 0x1
>
> I think it was happening at host boot time:
>
> Oct 21 03:03:20 ever9bmc kernel: aspeed-i2c-bus 1e78a800.i2c-bus: irq
> handled != irq. expected 0x00000021, but was 0x00000020
> Oct 21 03:03:20 ever9bmc platform-fru-detect[587]: Failed to read
> block data from device 0x6a on /dev/i2c-40: Protocol error
> Oct 21 03:03:20 ever9bmc platform-fru-detect[587]: Unhandled error
> condition in notifier callback, disabling sink: 71
>
> There were no i2c patches in dev-5.15. Since v5.15, the following
> patches have gone in:
>
> $ git log --oneline v5.15..dev-6.0 -- drivers/i2c/busses/i2c-aspeed.c
> drivers/irqchip/irq-aspeed-i2c-ic.c
> 5bd733a9928e i2c: aspeed: Assert NAK when slave is busy
> ea1558ce149d i2c: move drivers from strlcpy to strscpy
> 50f0f26e7c86 irqchip/aspeed-i2c-ic: Fix irq_of_parse_and_map() return value
> 653becec6d56 i2c: aspeed: Remove unused includes
>
> The only one of these that had signficiant changes is
> https://github.com/torvalds/linux/commit/5bd733a9928e.
More information about the openbmc
mailing list