lkml.org 
[lkml]   [2019]   [Feb]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.20 136/352] arm64: dts: meson: Fix IRQ trigger type for macirq
    Date
    4.20-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    [ Upstream commit 8b3e6f8999f8d704fccce225b9455b3fa639d1c9 ]

    A long running stress test on a custom board shipping an AXG SoCs and a
    Realtek RTL8211F PHY revealed that after a few hours the connection
    speed would drop drastically, from ~1000Mbps to ~3Mbps. At the same time
    the 'macirq' (eth0) IRQ would stop being triggered at all and as
    consequence the GMAC IRQs never ACKed.

    After a painful investigation the problem seemed to be due to a wrong
    defined IRQ type for the GMAC IRQ that should be LEVEL_HIGH instead of
    EDGE_RISING.

    The change in the macirq IRQ type also solved another long standing
    issue affecting this SoC/PHY where EEE was causing the network
    connection to die after stressing it with iperf3 (even though much
    sooner). It's now possible to remove the 'eee-broken-1000t' quirk as
    well.

    Fixes: feb3cbea0946 ("ARM64: dts: meson-gxbb-odroidc2: fix GbE tx link breakage")
    Fixes: 6d28d577510f ("ARM64: dts: meson-axg: fix ethernet stability issue")
    Reviewed-by: Jerome Brunet <jbrunet@baylibre.com>
    Tested-by: Jerome Brunet <jbrunet@baylibre.com>
    Acked-by: Neil Armstrong <narmstrong@baylibre.com>
    Signed-off-by: Carlo Caione <ccaione@baylibre.com>
    Signed-off-by: Kevin Hilman <khilman@baylibre.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 2 +-
    arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 2 +-
    arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts | 1 -
    arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi | 1 -
    4 files changed, 2 insertions(+), 4 deletions(-)

    diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
    index df017dbd2e57..b1a42e99cb67 100644
    --- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
    +++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
    @@ -143,7 +143,7 @@
    compatible = "amlogic,meson-axg-dwmac", "snps,dwmac";
    reg = <0x0 0xff3f0000 0x0 0x10000
    0x0 0xff634540 0x0 0x8>;
    - interrupts = <GIC_SPI 8 IRQ_TYPE_EDGE_RISING>;
    + interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
    interrupt-names = "macirq";
    clocks = <&clkc CLKID_ETH>,
    <&clkc CLKID_FCLK_DIV2>,
    diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
    index f1e5cdbade5e..58e6bcaac1d8 100644
    --- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
    +++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
    @@ -462,7 +462,7 @@
    compatible = "amlogic,meson-gx-dwmac", "amlogic,meson-gxbb-dwmac", "snps,dwmac";
    reg = <0x0 0xc9410000 0x0 0x10000
    0x0 0xc8834540 0x0 0x4>;
    - interrupts = <GIC_SPI 8 IRQ_TYPE_EDGE_RISING>;
    + interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>;
    interrupt-names = "macirq";
    status = "disabled";
    };
    diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
    index 54954b314a45..f8d1cedbe600 100644
    --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
    +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
    @@ -143,7 +143,6 @@
    interrupt-parent = <&gpio_intc>;
    /* MAC_INTR on GPIOZ_15 */
    interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
    - eee-broken-1000t;
    };
    };
    };
    diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
    index 70325b273bd2..ec09bb5792b7 100644
    --- a/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
    +++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-wetek.dtsi
    @@ -142,7 +142,6 @@
    eth_phy0: ethernet-phy@0 {
    /* Realtek RTL8211F (0x001cc916) */
    reg = <0>;
    - eee-broken-1000t;
    };
    };
    };
    --
    2.19.1


    \
     
     \ /
      Last update: 2019-02-11 17:07    [W:4.033 / U:0.244 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site