diff options
| author | Martin Blumenstingl <martin.blumenstingl@googlemail.com> | 2018-11-19 00:23:58 +0300 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2018-11-19 03:16:20 +0300 |
| commit | f7e290fbeb336421ba6237548b693c9afb4d75fa (patch) | |
| tree | 18ad7ffc5439aaaa0cc9e92f8ec633c3716ca81d /tools/perf/scripts/python/export-to-sqlite.py | |
| parent | a872c388f9d9e515d9c4102110d0bf0fd7a9778a (diff) | |
| download | linux-f7e290fbeb336421ba6237548b693c9afb4d75fa.tar.xz | |
net: phy: icplus: implement .did_interrupt for IP101A/G
The IP101A_G_IRQ_CONF_STATUS register has bits to detect which
interrupts have fired. Implement the .did_interrupt callback to let the
PHY core know whether the interrupt was for this specific PHY.
This is useful for debugging interrupt problems with 32-pin IP101GR PHYs
where the interrupt line is shared with the RX_ERR (receive error
status) signal. The default values are:
- RX_ERR is enabled by default (LOW means that there is no receive
error)
- the PHY's interrupt line is configured "active low" by default
Without any additional changes there is a flood of interrupts if the
RX_ERR/INTR32 signal is configured in RX_ERR mode (which is the
default). Having a did_interrupt ensures that the PHY core returns
IRQ_NONE instead of endlessly triggering the PHY state machine.
Additionally the kernel will report this after a while:
irq 28: nobody cared (try booting with the "irqpoll" option)
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'tools/perf/scripts/python/export-to-sqlite.py')
0 files changed, 0 insertions, 0 deletions
