Hi Marek, > Use the `marvell,reg-init` DT property to configure the LED[2]/INTn pin > of the Marvell 88E1514 ethernet PHY on Turris Omnia into interrupt mode. > > Without this the pin is by default in LED[2] mode, and the Marvell PHY > driver configures LED[2] into "On - Link, Blink - Activity" mode. > > This fixes the issue where the pca9538 GPIO/interrupt controller (which > can't mask interrupts in HW) received too many interrupts and after a > time started ignoring the interrupt with error message: > IRQ 71: nobody cared > > There is a work in progress to have the Marvell PHY driver support > parsing PHY LED nodes from OF and registering the LEDs as Linux LED > class devices. Once this is done the PHY driver can also automatically > set the pin into INTn mode if it does not find LED[2] in OF. > > Until then, though, we fix this via `marvell,reg-init` DT property. > > Signed-off-by: Marek Behún <kabel@xxxxxxxxxx> > Reported-by: Rui Salvaterra <rsalvaterra@xxxxxxxxx> > Fixes: 26ca8b52d6e1 ("ARM: dts: add support for Turris Omnia") > Cc: Uwe Kleine-König <uwe@xxxxxxxxxxxxxxxxx> > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > Cc: Andrew Lunn <andrew@xxxxxxx> > Cc: Gregory CLEMENT <gregory.clement@xxxxxxxxxxx> > Cc: <stable@xxxxxxxxxxxxxxx> Applied on mvebu/fixes Thanks, Gregory > > --- > > This patch fixes bug introduced with the commit that added Turris > Omnia's DTS (26ca8b52d6e1), but will not apply cleanly because there is > commit 8ee4a5f4f40d which changed node name and node compatible > property and this commit did not go into stable. > > So either commit 8ee4a5f4f40d has also to go into stable before this, or > this patch has to be fixed a little in order to apply to 4.14+. > > Please let me know how should I handle this. > > --- > arch/arm/boot/dts/armada-385-turris-omnia.dts | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/arch/arm/boot/dts/armada-385-turris-omnia.dts b/arch/arm/boot/dts/armada-385-turris-omnia.dts > index 646a06420c77..b0f3fd8e1429 100644 > --- a/arch/arm/boot/dts/armada-385-turris-omnia.dts > +++ b/arch/arm/boot/dts/armada-385-turris-omnia.dts > @@ -389,6 +389,7 @@ &mdio { > phy1: ethernet-phy@1 { > compatible = "ethernet-phy-ieee802.3-c22"; > reg = <1>; > + marvell,reg-init = <3 18 0 0x4985>; > > /* irq is connected to &pcawan pin 7 */ > }; > -- > 2.26.2 > -- Gregory Clement, Bootlin Embedded Linux and Kernel engineering http://bootlin.com