diff mbox series

[v2] arm64: dts: amlogic: Make mmc host controller interrupts level-sensitive

Message ID d9721029-780e-09f1-0207-72d3897032a4@gmail.com (mailing list archive)
State New, archived
Headers show
Series [v2] arm64: dts: amlogic: Make mmc host controller interrupts level-sensitive | expand

Commit Message

Heiner Kallweit Jan. 26, 2023, 2:03 p.m. UTC
The usage of edge-triggered interrupts lead to lost interrupts under load,
see [0]. This was confirmed to be fixed by using level-triggered
interrupts.
The report was about SDIO. However, as the host controller is the same
for SD and MMC, apply the change to all mmc controller instances.

[0] https://www.spinics.net/lists/linux-mmc/msg73991.html

Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
Reported-by: Peter Suti <peter.suti@streamunlimited.com>
Tested-by: Peter Suti <peter.suti@streamunlimited.com>
Cc: stable@vger.kernel.org
Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
v2:
- apply the fix also to meson-axg
- apply the fix to all host controller instances
---
 arch/arm64/boot/dts/amlogic/meson-axg.dtsi        | 4 ++--
 arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 6 +++---
 arch/arm64/boot/dts/amlogic/meson-gx.dtsi         | 6 +++---
 3 files changed, 8 insertions(+), 8 deletions(-)

Comments

Viacheslav Jan. 26, 2023, 3:06 p.m. UTC | #1
Tested 6.1/6.2rc3 on axg (JetHub D1/D1+).



On 26/01/2023 17.03, Heiner Kallweit wrote:
> The usage of edge-triggered interrupts lead to lost interrupts under load,
> see [0]. This was confirmed to be fixed by using level-triggered
> interrupts.
> The report was about SDIO. However, as the host controller is the same
> for SD and MMC, apply the change to all mmc controller instances.
> 
> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
> 
> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
> Reported-by: Peter Suti <peter.suti@streamunlimited.com>
> Tested-by: Peter Suti <peter.suti@streamunlimited.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
> ---
> v2:
> - apply the fix also to meson-axg
> - apply the fix to all host controller instances
> ---
>   arch/arm64/boot/dts/amlogic/meson-axg.dtsi        | 4 ++--
>   arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 6 +++---
>   arch/arm64/boot/dts/amlogic/meson-gx.dtsi         | 6 +++---
>   3 files changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> index ed895fb32..a6a3095de 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> @@ -1886,7 +1886,7 @@ apb: bus@ffe00000 {
>   			sd_emmc_b: mmc@5000 {
>   				compatible = "amlogic,meson-axg-mmc";
>   				reg = <0x0 0x5000 0x0 0x800>;
> -				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   				clocks = <&clkc CLKID_SD_EMMC_B>,
>   					<&clkc CLKID_SD_EMMC_B_CLK0>,
> @@ -1898,7 +1898,7 @@ sd_emmc_b: mmc@5000 {
>   			sd_emmc_c: mmc@7000 {
>   				compatible = "amlogic,meson-axg-mmc";
>   				reg = <0x0 0x7000 0x0 0x800>;
> -				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   				clocks = <&clkc CLKID_SD_EMMC_C>,
>   					<&clkc CLKID_SD_EMMC_C_CLK0>,
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> index 6d7272b2c..13fdaba21 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> @@ -2324,7 +2324,7 @@ uart_A: serial@24000 {
>   		sd_emmc_a: mmc@ffe03000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe03000 0x0 0x800>;
> -			interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_A>,
>   				 <&clkc CLKID_SD_EMMC_A_CLK0>,
> @@ -2336,7 +2336,7 @@ sd_emmc_a: mmc@ffe03000 {
>   		sd_emmc_b: mmc@ffe05000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe05000 0x0 0x800>;
> -			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_B>,
>   				 <&clkc CLKID_SD_EMMC_B_CLK0>,
> @@ -2348,7 +2348,7 @@ sd_emmc_b: mmc@ffe05000 {
>   		sd_emmc_c: mmc@ffe07000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe07000 0x0 0x800>;
> -			interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_C>,
>   				 <&clkc CLKID_SD_EMMC_C_CLK0>,
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> index e3c12e0be..5eed15035 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> @@ -603,21 +603,21 @@ apb: apb@d0000000 {
>   			sd_emmc_a: mmc@70000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x70000 0x0 0x800>;
> -				interrupts = <GIC_SPI 216 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   
>   			sd_emmc_b: mmc@72000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x72000 0x0 0x800>;
> -				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   
>   			sd_emmc_c: mmc@74000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x74000 0x0 0x800>;
> -				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   		};
Neil Armstrong Jan. 27, 2023, 7:59 a.m. UTC | #2
Hi,

On 26/01/2023 15:03, Heiner Kallweit wrote:
> The usage of edge-triggered interrupts lead to lost interrupts under load,
> see [0]. This was confirmed to be fixed by using level-triggered
> interrupts.
> The report was about SDIO. However, as the host controller is the same
> for SD and MMC, apply the change to all mmc controller instances.

Thanks, I applied it in for-next so it runs on the CI tests.

> 
> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
> 
> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")

I think we should find a better Fixes or perhaps split in 3 so it targets the
right commit adding the nodes for each family.

If the test doesn't report any breakage, I'll probably ask you that.

Neil


> Reported-by: Peter Suti <peter.suti@streamunlimited.com>
> Tested-by: Peter Suti <peter.suti@streamunlimited.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
> ---
> v2:
> - apply the fix also to meson-axg
> - apply the fix to all host controller instances
> ---
>   arch/arm64/boot/dts/amlogic/meson-axg.dtsi        | 4 ++--
>   arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 6 +++---
>   arch/arm64/boot/dts/amlogic/meson-gx.dtsi         | 6 +++---
>   3 files changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> index ed895fb32..a6a3095de 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> @@ -1886,7 +1886,7 @@ apb: bus@ffe00000 {
>   			sd_emmc_b: mmc@5000 {
>   				compatible = "amlogic,meson-axg-mmc";
>   				reg = <0x0 0x5000 0x0 0x800>;
> -				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   				clocks = <&clkc CLKID_SD_EMMC_B>,
>   					<&clkc CLKID_SD_EMMC_B_CLK0>,
> @@ -1898,7 +1898,7 @@ sd_emmc_b: mmc@5000 {
>   			sd_emmc_c: mmc@7000 {
>   				compatible = "amlogic,meson-axg-mmc";
>   				reg = <0x0 0x7000 0x0 0x800>;
> -				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   				clocks = <&clkc CLKID_SD_EMMC_C>,
>   					<&clkc CLKID_SD_EMMC_C_CLK0>,
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> index 6d7272b2c..13fdaba21 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> @@ -2324,7 +2324,7 @@ uart_A: serial@24000 {
>   		sd_emmc_a: mmc@ffe03000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe03000 0x0 0x800>;
> -			interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_A>,
>   				 <&clkc CLKID_SD_EMMC_A_CLK0>,
> @@ -2336,7 +2336,7 @@ sd_emmc_a: mmc@ffe03000 {
>   		sd_emmc_b: mmc@ffe05000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe05000 0x0 0x800>;
> -			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_B>,
>   				 <&clkc CLKID_SD_EMMC_B_CLK0>,
> @@ -2348,7 +2348,7 @@ sd_emmc_b: mmc@ffe05000 {
>   		sd_emmc_c: mmc@ffe07000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe07000 0x0 0x800>;
> -			interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_C>,
>   				 <&clkc CLKID_SD_EMMC_C_CLK0>,
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> index e3c12e0be..5eed15035 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> @@ -603,21 +603,21 @@ apb: apb@d0000000 {
>   			sd_emmc_a: mmc@70000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x70000 0x0 0x800>;
> -				interrupts = <GIC_SPI 216 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   
>   			sd_emmc_b: mmc@72000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x72000 0x0 0x800>;
> -				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   
>   			sd_emmc_c: mmc@74000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x74000 0x0 0x800>;
> -				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   		};
Jerome Brunet Jan. 27, 2023, 8:52 a.m. UTC | #3
On Thu 26 Jan 2023 at 15:03, Heiner Kallweit <hkallweit1@gmail.com> wrote:

> The usage of edge-triggered interrupts lead to lost interrupts under load,
> see [0]. This was confirmed to be fixed by using level-triggered
> interrupts.
> The report was about SDIO. However, as the host controller is the same
> for SD and MMC, apply the change to all mmc controller instances.
>
> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>
> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
> Reported-by: Peter Suti <peter.suti@streamunlimited.com>
> Tested-by: Peter Suti <peter.suti@streamunlimited.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>

On the vim3:
Tested-by: Jerome Brunet <jbrunet@baylibre.com>

Thanks a lot for this !

> ---
> v2:
> - apply the fix also to meson-axg
> - apply the fix to all host controller instances
> ---
>  arch/arm64/boot/dts/amlogic/meson-axg.dtsi        | 4 ++--
>  arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 6 +++---
>  arch/arm64/boot/dts/amlogic/meson-gx.dtsi         | 6 +++---
>  3 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> index ed895fb32..a6a3095de 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> @@ -1886,7 +1886,7 @@ apb: bus@ffe00000 {
>  			sd_emmc_b: mmc@5000 {
>  				compatible = "amlogic,meson-axg-mmc";
>  				reg = <0x0 0x5000 0x0 0x800>;
> -				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
>  				status = "disabled";
>  				clocks = <&clkc CLKID_SD_EMMC_B>,
>  					<&clkc CLKID_SD_EMMC_B_CLK0>,
> @@ -1898,7 +1898,7 @@ sd_emmc_b: mmc@5000 {
>  			sd_emmc_c: mmc@7000 {
>  				compatible = "amlogic,meson-axg-mmc";
>  				reg = <0x0 0x7000 0x0 0x800>;
> -				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
>  				status = "disabled";
>  				clocks = <&clkc CLKID_SD_EMMC_C>,
>  					<&clkc CLKID_SD_EMMC_C_CLK0>,
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> index 6d7272b2c..13fdaba21 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> @@ -2324,7 +2324,7 @@ uart_A: serial@24000 {
>  		sd_emmc_a: mmc@ffe03000 {
>  			compatible = "amlogic,meson-axg-mmc";
>  			reg = <0x0 0xffe03000 0x0 0x800>;
> -			interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
>  			status = "disabled";
>  			clocks = <&clkc CLKID_SD_EMMC_A>,
>  				 <&clkc CLKID_SD_EMMC_A_CLK0>,
> @@ -2336,7 +2336,7 @@ sd_emmc_a: mmc@ffe03000 {
>  		sd_emmc_b: mmc@ffe05000 {
>  			compatible = "amlogic,meson-axg-mmc";
>  			reg = <0x0 0xffe05000 0x0 0x800>;
> -			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
>  			status = "disabled";
>  			clocks = <&clkc CLKID_SD_EMMC_B>,
>  				 <&clkc CLKID_SD_EMMC_B_CLK0>,
> @@ -2348,7 +2348,7 @@ sd_emmc_b: mmc@ffe05000 {
>  		sd_emmc_c: mmc@ffe07000 {
>  			compatible = "amlogic,meson-axg-mmc";
>  			reg = <0x0 0xffe07000 0x0 0x800>;
> -			interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
>  			status = "disabled";
>  			clocks = <&clkc CLKID_SD_EMMC_C>,
>  				 <&clkc CLKID_SD_EMMC_C_CLK0>,
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> index e3c12e0be..5eed15035 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> @@ -603,21 +603,21 @@ apb: apb@d0000000 {
>  			sd_emmc_a: mmc@70000 {
>  				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>  				reg = <0x0 0x70000 0x0 0x800>;
> -				interrupts = <GIC_SPI 216 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>;
>  				status = "disabled";
>  			};
>  
>  			sd_emmc_b: mmc@72000 {
>  				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>  				reg = <0x0 0x72000 0x0 0x800>;
> -				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
>  				status = "disabled";
>  			};
>  
>  			sd_emmc_c: mmc@74000 {
>  				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>  				reg = <0x0 0x74000 0x0 0x800>;
> -				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
>  				status = "disabled";
>  			};
>  		};
Heiner Kallweit Jan. 27, 2023, 1:02 p.m. UTC | #4
On 27.01.2023 08:59, Neil Armstrong wrote:
> Hi,
> 
> On 26/01/2023 15:03, Heiner Kallweit wrote:
>> The usage of edge-triggered interrupts lead to lost interrupts under load,
>> see [0]. This was confirmed to be fixed by using level-triggered
>> interrupts.
>> The report was about SDIO. However, as the host controller is the same
>> for SD and MMC, apply the change to all mmc controller instances.
> 
> Thanks, I applied it in for-next so it runs on the CI tests.
> 
>>
>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>>
>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
> 
> I think we should find a better Fixes or perhaps split in 3 so it targets the
> right commit adding the nodes for each family.
> 
This would be the cleanest option, right. Practically it shouldn't make
much of a difference. The chosen commit is from 2019, SDIO interrupt
support has been added just recently, and regarding MMC/SD it seems no
problems caused by edge-triggered interrupts are known.

> If the test doesn't report any breakage, I'll probably ask you that.
> 
Sure.

> Neil
> 
Heiner
Jerome Brunet Jan. 27, 2023, 3:04 p.m. UTC | #5
On Fri 27 Jan 2023 at 14:02, Heiner Kallweit <hkallweit1@gmail.com> wrote:

> On 27.01.2023 08:59, Neil Armstrong wrote:
>> Hi,
>> 
>> On 26/01/2023 15:03, Heiner Kallweit wrote:
>>> The usage of edge-triggered interrupts lead to lost interrupts under load,
>>> see [0]. This was confirmed to be fixed by using level-triggered
>>> interrupts.
>>> The report was about SDIO. However, as the host controller is the same
>>> for SD and MMC, apply the change to all mmc controller instances.
>> 
>> Thanks, I applied it in for-next so it runs on the CI tests.
>> 
>>>
>>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>>>
>>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
>> 
>> I think we should find a better Fixes or perhaps split in 3 so it targets the
>> right commit adding the nodes for each family.
>> 
> This would be the cleanest option, right. Practically it shouldn't make
> much of a difference. The chosen commit is from 2019, SDIO interrupt
> support has been added just recently, and regarding MMC/SD it seems no
> problems caused by edge-triggered interrupts are known.

... Well, I wonder is this might be linked to instabilities seen with
very high speed mode (such as SDR104) and DDR modes. We have seen quite
a lot of those over the years. In any case, if it helps stabilize the
MMC on amlogic, it would be great if it can be picked up by stable.

>
>> If the test doesn't report any breakage, I'll probably ask you that.
>> 
> Sure.
>
>> Neil
>> 
> Heiner
Da Xue Feb. 3, 2023, 8:03 a.m. UTC | #6
On Fri, Jan 27, 2023 at 10:10 AM Jerome Brunet <jbrunet@baylibre.com> wrote:
>
>
> On Fri 27 Jan 2023 at 14:02, Heiner Kallweit <hkallweit1@gmail.com> wrote:
>
> > On 27.01.2023 08:59, Neil Armstrong wrote:
> >> Hi,
> >>
> >> On 26/01/2023 15:03, Heiner Kallweit wrote:
> >>> The usage of edge-triggered interrupts lead to lost interrupts under load,
> >>> see [0]. This was confirmed to be fixed by using level-triggered
> >>> interrupts.
> >>> The report was about SDIO. However, as the host controller is the same
> >>> for SD and MMC, apply the change to all mmc controller instances.
> >>
> >> Thanks, I applied it in for-next so it runs on the CI tests.
> >>
> >>>
> >>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
> >>>
> >>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
> >>
> >> I think we should find a better Fixes or perhaps split in 3 so it targets the
> >> right commit adding the nodes for each family.
> >>
> > This would be the cleanest option, right. Practically it shouldn't make
> > much of a difference. The chosen commit is from 2019, SDIO interrupt
> > support has been added just recently, and regarding MMC/SD it seems no
> > problems caused by edge-triggered interrupts are known.
>
> ... Well, I wonder is this might be linked to instabilities seen with
> very high speed mode (such as SDR104) and DDR modes. We have seen quite
> a lot of those over the years. In any case, if it helps stabilize the
> MMC on amlogic, it would be great if it can be picked up by stable.

On S905X, I'm still getting SDR104 failures with this change at both
208MHz and 150MHz so maybe not completely.

[    9.071641] mmc1: tuning execution failed: -5
[    9.579765] mmc1: tuning execution failed: -5
[    9.761580] mmc1: tuning execution failed: -5
[    9.871836] mmc1: tuning execution failed: -5

>
> >
> >> If the test doesn't report any breakage, I'll probably ask you that.
> >>
> > Sure.
> >
> >> Neil
> >>
> > Heiner
>
>
> _______________________________________________
> linux-amlogic mailing list
> linux-amlogic@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-amlogic
Martin Blumenstingl Feb. 4, 2023, 10:17 p.m. UTC | #7
On Thu, Jan 26, 2023 at 3:03 PM Heiner Kallweit <hkallweit1@gmail.com> wrote:
>
> The usage of edge-triggered interrupts lead to lost interrupts under load,
> see [0]. This was confirmed to be fixed by using level-triggered
> interrupts.
> The report was about SDIO. However, as the host controller is the same
> for SD and MMC, apply the change to all mmc controller instances.
>
> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>
> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
> Reported-by: Peter Suti <peter.suti@streamunlimited.com>
> Tested-by: Peter Suti <peter.suti@streamunlimited.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>

Thanks Heiner!
This fixes the rtw88 SDIO wifi card for me on my SM1 SoC based X96 Air
(Gbit variant) after commit 066ecde6d826 ("mmc: meson-gx: add SDIO
interrupt support")


Best regards,
Martin
FUKAUMI Naoki Feb. 7, 2023, 8:16 a.m. UTC | #8
hi,

On 1/26/23 23:03, Heiner Kallweit wrote:
> The usage of edge-triggered interrupts lead to lost interrupts under load,
> see [0]. This was confirmed to be fixed by using level-triggered
> interrupts.
> The report was about SDIO. However, as the host controller is the same
> for SD and MMC, apply the change to all mmc controller instances.
> 
> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
> 
> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
> Reported-by: Peter Suti <peter.suti@streamunlimited.com>
> Tested-by: Peter Suti <peter.suti@streamunlimited.com>
> Cc: stable@vger.kernel.org
> Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>

this fixes wifi issue on Radxa Zero/Zero2. thank you so much!

Tested-by: FUKAUMI Naoki <naoki@radxa.com>

--
FUKAUMI Naoki

> ---
> v2:
> - apply the fix also to meson-axg
> - apply the fix to all host controller instances
> ---
>   arch/arm64/boot/dts/amlogic/meson-axg.dtsi        | 4 ++--
>   arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 6 +++---
>   arch/arm64/boot/dts/amlogic/meson-gx.dtsi         | 6 +++---
>   3 files changed, 8 insertions(+), 8 deletions(-)
> 
> diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> index ed895fb32..a6a3095de 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
> @@ -1886,7 +1886,7 @@ apb: bus@ffe00000 {
>   			sd_emmc_b: mmc@5000 {
>   				compatible = "amlogic,meson-axg-mmc";
>   				reg = <0x0 0x5000 0x0 0x800>;
> -				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   				clocks = <&clkc CLKID_SD_EMMC_B>,
>   					<&clkc CLKID_SD_EMMC_B_CLK0>,
> @@ -1898,7 +1898,7 @@ sd_emmc_b: mmc@5000 {
>   			sd_emmc_c: mmc@7000 {
>   				compatible = "amlogic,meson-axg-mmc";
>   				reg = <0x0 0x7000 0x0 0x800>;
> -				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   				clocks = <&clkc CLKID_SD_EMMC_C>,
>   					<&clkc CLKID_SD_EMMC_C_CLK0>,
> diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> index 6d7272b2c..13fdaba21 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
> @@ -2324,7 +2324,7 @@ uart_A: serial@24000 {
>   		sd_emmc_a: mmc@ffe03000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe03000 0x0 0x800>;
> -			interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_A>,
>   				 <&clkc CLKID_SD_EMMC_A_CLK0>,
> @@ -2336,7 +2336,7 @@ sd_emmc_a: mmc@ffe03000 {
>   		sd_emmc_b: mmc@ffe05000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe05000 0x0 0x800>;
> -			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_B>,
>   				 <&clkc CLKID_SD_EMMC_B_CLK0>,
> @@ -2348,7 +2348,7 @@ sd_emmc_b: mmc@ffe05000 {
>   		sd_emmc_c: mmc@ffe07000 {
>   			compatible = "amlogic,meson-axg-mmc";
>   			reg = <0x0 0xffe07000 0x0 0x800>;
> -			interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
> +			interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
>   			status = "disabled";
>   			clocks = <&clkc CLKID_SD_EMMC_C>,
>   				 <&clkc CLKID_SD_EMMC_C_CLK0>,
> diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> index e3c12e0be..5eed15035 100644
> --- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> +++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
> @@ -603,21 +603,21 @@ apb: apb@d0000000 {
>   			sd_emmc_a: mmc@70000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x70000 0x0 0x800>;
> -				interrupts = <GIC_SPI 216 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   
>   			sd_emmc_b: mmc@72000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x72000 0x0 0x800>;
> -				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   
>   			sd_emmc_c: mmc@74000 {
>   				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
>   				reg = <0x0 0x74000 0x0 0x800>;
> -				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
> +				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
>   				status = "disabled";
>   			};
>   		};
Neil Armstrong Feb. 7, 2023, 8:22 a.m. UTC | #9
On 03/02/2023 09:03, Da Xue wrote:
> On Fri, Jan 27, 2023 at 10:10 AM Jerome Brunet <jbrunet@baylibre.com> wrote:
>>
>>
>> On Fri 27 Jan 2023 at 14:02, Heiner Kallweit <hkallweit1@gmail.com> wrote:
>>
>>> On 27.01.2023 08:59, Neil Armstrong wrote:
>>>> Hi,
>>>>
>>>> On 26/01/2023 15:03, Heiner Kallweit wrote:
>>>>> The usage of edge-triggered interrupts lead to lost interrupts under load,
>>>>> see [0]. This was confirmed to be fixed by using level-triggered
>>>>> interrupts.
>>>>> The report was about SDIO. However, as the host controller is the same
>>>>> for SD and MMC, apply the change to all mmc controller instances.
>>>>
>>>> Thanks, I applied it in for-next so it runs on the CI tests.
>>>>
>>>>>
>>>>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>>>>>
>>>>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
>>>>
>>>> I think we should find a better Fixes or perhaps split in 3 so it targets the
>>>> right commit adding the nodes for each family.
>>>>
>>> This would be the cleanest option, right. Practically it shouldn't make
>>> much of a difference. The chosen commit is from 2019, SDIO interrupt
>>> support has been added just recently, and regarding MMC/SD it seems no
>>> problems caused by edge-triggered interrupts are known.
>>
>> ... Well, I wonder is this might be linked to instabilities seen with
>> very high speed mode (such as SDR104) and DDR modes. We have seen quite
>> a lot of those over the years. In any case, if it helps stabilize the
>> MMC on amlogic, it would be great if it can be picked up by stable.
> 
> On S905X, I'm still getting SDR104 failures with this change at both
> 208MHz and 150MHz so maybe not completely.
> 
> [    9.071641] mmc1: tuning execution failed: -5
> [    9.579765] mmc1: tuning execution failed: -5
> [    9.761580] mmc1: tuning execution failed: -5
> [    9.871836] mmc1: tuning execution failed: -5

Are these the same before the change ? or did those appear with the change ?

> 
>>
>>>
>>>> If the test doesn't report any breakage, I'll probably ask you that.
>>>>
>>> Sure.
>>>
>>>> Neil
>>>>
>>> Heiner
>>
>>
>> _______________________________________________
>> linux-amlogic mailing list
>> linux-amlogic@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-amlogic
Jerome Brunet Feb. 7, 2023, 9:18 a.m. UTC | #10
On Tue 07 Feb 2023 at 09:22, neil.armstrong@linaro.org wrote:

> On 03/02/2023 09:03, Da Xue wrote:
>> On Fri, Jan 27, 2023 at 10:10 AM Jerome Brunet <jbrunet@baylibre.com> wrote:
>>>
>>>
>>> On Fri 27 Jan 2023 at 14:02, Heiner Kallweit <hkallweit1@gmail.com> wrote:
>>>
>>>> On 27.01.2023 08:59, Neil Armstrong wrote:
>>>>> Hi,
>>>>>
>>>>> On 26/01/2023 15:03, Heiner Kallweit wrote:
>>>>>> The usage of edge-triggered interrupts lead to lost interrupts under load,
>>>>>> see [0]. This was confirmed to be fixed by using level-triggered
>>>>>> interrupts.
>>>>>> The report was about SDIO. However, as the host controller is the same
>>>>>> for SD and MMC, apply the change to all mmc controller instances.
>>>>>
>>>>> Thanks, I applied it in for-next so it runs on the CI tests.
>>>>>
>>>>>>
>>>>>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>>>>>>
>>>>>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
>>>>>
>>>>> I think we should find a better Fixes or perhaps split in 3 so it targets the
>>>>> right commit adding the nodes for each family.
>>>>>
>>>> This would be the cleanest option, right. Practically it shouldn't make
>>>> much of a difference. The chosen commit is from 2019, SDIO interrupt
>>>> support has been added just recently, and regarding MMC/SD it seems no
>>>> problems caused by edge-triggered interrupts are known.
>>>
>>> ... Well, I wonder is this might be linked to instabilities seen with
>>> very high speed mode (such as SDR104) and DDR modes. We have seen quite
>>> a lot of those over the years. In any case, if it helps stabilize the
>>> MMC on amlogic, it would be great if it can be picked up by stable.
>> On S905X, I'm still getting SDR104 failures with this change at both
>> 208MHz and 150MHz so maybe not completely.
>> [    9.071641] mmc1: tuning execution failed: -5
>> [    9.579765] mmc1: tuning execution failed: -5
>> [    9.761580] mmc1: tuning execution failed: -5
>> [    9.871836] mmc1: tuning execution failed: -5
>
> Are these the same before the change ? or did those appear with the change ?

This is a change Da is carrying in his tree.
LePotato is limited to high speed mode @50Mhz in upstream due to
previous instabilities with the SDR modes

The error above shows a systematic failure to find a valid SDR tuning.
It is actually a lot better than an unstable success.

IMO, It's another hint that we need to look at high speed modes again with
this change.

>
>> 
>>>
>>>>
>>>>> If the test doesn't report any breakage, I'll probably ask you that.
>>>>>
>>>> Sure.
>>>>
>>>>> Neil
>>>>>
>>>> Heiner
>>>
>>>
>>> _______________________________________________
>>> linux-amlogic mailing list
>>> linux-amlogic@lists.infradead.org
>>> http://lists.infradead.org/mailman/listinfo/linux-amlogic
Neil Armstrong Feb. 8, 2023, 12:40 p.m. UTC | #11
Le 27/01/2023 à 14:02, Heiner Kallweit a écrit :
> On 27.01.2023 08:59, Neil Armstrong wrote:
>> Hi,
>>
>> On 26/01/2023 15:03, Heiner Kallweit wrote:
>>> The usage of edge-triggered interrupts lead to lost interrupts under load,
>>> see [0]. This was confirmed to be fixed by using level-triggered
>>> interrupts.
>>> The report was about SDIO. However, as the host controller is the same
>>> for SD and MMC, apply the change to all mmc controller instances.
>>
>> Thanks, I applied it in for-next so it runs on the CI tests.
>>
>>>
>>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>>>
>>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
>>
>> I think we should find a better Fixes or perhaps split in 3 so it targets the
>> right commit adding the nodes for each family.
>>
> This would be the cleanest option, right. Practically it shouldn't make
> much of a difference. The chosen commit is from 2019, SDIO interrupt
> support has been added just recently, and regarding MMC/SD it seems no
> problems caused by edge-triggered interrupts are known.

I understand, but the Fixes tag must reflect what commit introduced the breakage,
so either keep a single patch but list all commits introducing the MMC, SD & SDIO nodes
on the 3 families, or split in 3 and specify the commit introducing the MMC, SD & SDIO
node on each family.

I'll prefer the later.

If the patch isn't applicable for older kernels, it doesn't matter as the stable team
will only apply the fix on a tree if it applies and builds.
If you target an older release you can submit them a patch reworked to apply
correctly if the original patch is already only Linus master tree.

And don't forget adding the Tested-by tags.

Thanks,
Neil

> 
>> If the test doesn't report any breakage, I'll probably ask you that.
>>
> Sure.
> 
>> Neil
>>
> Heiner
>
Heiner Kallweit Feb. 9, 2023, 6:44 a.m. UTC | #12
On 08.02.2023 13:40, Neil Armstrong wrote:
> Le 27/01/2023 à 14:02, Heiner Kallweit a écrit :
>> On 27.01.2023 08:59, Neil Armstrong wrote:
>>> Hi,
>>>
>>> On 26/01/2023 15:03, Heiner Kallweit wrote:
>>>> The usage of edge-triggered interrupts lead to lost interrupts under load,
>>>> see [0]. This was confirmed to be fixed by using level-triggered
>>>> interrupts.
>>>> The report was about SDIO. However, as the host controller is the same
>>>> for SD and MMC, apply the change to all mmc controller instances.
>>>
>>> Thanks, I applied it in for-next so it runs on the CI tests.
>>>
>>>>
>>>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>>>>
>>>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
>>>
>>> I think we should find a better Fixes or perhaps split in 3 so it targets the
>>> right commit adding the nodes for each family.
>>>
>> This would be the cleanest option, right. Practically it shouldn't make
>> much of a difference. The chosen commit is from 2019, SDIO interrupt
>> support has been added just recently, and regarding MMC/SD it seems no
>> problems caused by edge-triggered interrupts are known.
> 
> I understand, but the Fixes tag must reflect what commit introduced the breakage,
> so either keep a single patch but list all commits introducing the MMC, SD & SDIO nodes
> on the 3 families, or split in 3 and specify the commit introducing the MMC, SD & SDIO
> node on each family.
> 
> I'll prefer the later.
> 
> If the patch isn't applicable for older kernels, it doesn't matter as the stable team
> will only apply the fix on a tree if it applies and builds.
> If you target an older release you can submit them a patch reworked to apply
> correctly if the original patch is already only Linus master tree.
> 
Do you need a revert for the current "TEST"-annotated commit in linux-next
as part of the series?

> And don't forget adding the Tested-by tags.
> 
> Thanks,
> Neil
> 
>>
>>> If the test doesn't report any breakage, I'll probably ask you that.
>>>
>> Sure.
>>
>>> Neil
>>>
>> Heiner
>>
> 
Heiner
Neil Armstrong Feb. 9, 2023, 8:25 a.m. UTC | #13
On 09/02/2023 07:44, Heiner Kallweit wrote:
> On 08.02.2023 13:40, Neil Armstrong wrote:
>> Le 27/01/2023 à 14:02, Heiner Kallweit a écrit :
>>> On 27.01.2023 08:59, Neil Armstrong wrote:
>>>> Hi,
>>>>
>>>> On 26/01/2023 15:03, Heiner Kallweit wrote:
>>>>> The usage of edge-triggered interrupts lead to lost interrupts under load,
>>>>> see [0]. This was confirmed to be fixed by using level-triggered
>>>>> interrupts.
>>>>> The report was about SDIO. However, as the host controller is the same
>>>>> for SD and MMC, apply the change to all mmc controller instances.
>>>>
>>>> Thanks, I applied it in for-next so it runs on the CI tests.
>>>>
>>>>>
>>>>> [0] https://www.spinics.net/lists/linux-mmc/msg73991.html
>>>>>
>>>>> Fixes: 1499218c80c9 ("arm64: dts: move common G12A & G12B modes to meson-g12-common.dtsi")
>>>>
>>>> I think we should find a better Fixes or perhaps split in 3 so it targets the
>>>> right commit adding the nodes for each family.
>>>>
>>> This would be the cleanest option, right. Practically it shouldn't make
>>> much of a difference. The chosen commit is from 2019, SDIO interrupt
>>> support has been added just recently, and regarding MMC/SD it seems no
>>> problems caused by edge-triggered interrupts are known.
>>
>> I understand, but the Fixes tag must reflect what commit introduced the breakage,
>> so either keep a single patch but list all commits introducing the MMC, SD & SDIO nodes
>> on the 3 families, or split in 3 and specify the commit introducing the MMC, SD & SDIO
>> node on each family.
>>
>> I'll prefer the later.
>>
>> If the patch isn't applicable for older kernels, it doesn't matter as the stable team
>> will only apply the fix on a tree if it applies and builds.
>> If you target an older release you can submit them a patch reworked to apply
>> correctly if the original patch is already only Linus master tree.
>>
> Do you need a revert for the current "TEST"-annotated commit in linux-next
> as part of the series?

No need, I'll remove it from for-next.

Neil

> 
>> And don't forget adding the Tested-by tags.
>>
>> Thanks,
>> Neil
>>
>>>
>>>> If the test doesn't report any breakage, I'll probably ask you that.
>>>>
>>> Sure.
>>>
>>>> Neil
>>>>
>>> Heiner
>>>
>>
> Heiner
>
diff mbox series

Patch

diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
index ed895fb32..a6a3095de 100644
--- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
@@ -1886,7 +1886,7 @@  apb: bus@ffe00000 {
 			sd_emmc_b: mmc@5000 {
 				compatible = "amlogic,meson-axg-mmc";
 				reg = <0x0 0x5000 0x0 0x800>;
-				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
+				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
 				status = "disabled";
 				clocks = <&clkc CLKID_SD_EMMC_B>,
 					<&clkc CLKID_SD_EMMC_B_CLK0>,
@@ -1898,7 +1898,7 @@  sd_emmc_b: mmc@5000 {
 			sd_emmc_c: mmc@7000 {
 				compatible = "amlogic,meson-axg-mmc";
 				reg = <0x0 0x7000 0x0 0x800>;
-				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
+				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
 				status = "disabled";
 				clocks = <&clkc CLKID_SD_EMMC_C>,
 					<&clkc CLKID_SD_EMMC_C_CLK0>,
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
index 6d7272b2c..13fdaba21 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
@@ -2324,7 +2324,7 @@  uart_A: serial@24000 {
 		sd_emmc_a: mmc@ffe03000 {
 			compatible = "amlogic,meson-axg-mmc";
 			reg = <0x0 0xffe03000 0x0 0x800>;
-			interrupts = <GIC_SPI 189 IRQ_TYPE_EDGE_RISING>;
+			interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>;
 			status = "disabled";
 			clocks = <&clkc CLKID_SD_EMMC_A>,
 				 <&clkc CLKID_SD_EMMC_A_CLK0>,
@@ -2336,7 +2336,7 @@  sd_emmc_a: mmc@ffe03000 {
 		sd_emmc_b: mmc@ffe05000 {
 			compatible = "amlogic,meson-axg-mmc";
 			reg = <0x0 0xffe05000 0x0 0x800>;
-			interrupts = <GIC_SPI 190 IRQ_TYPE_EDGE_RISING>;
+			interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>;
 			status = "disabled";
 			clocks = <&clkc CLKID_SD_EMMC_B>,
 				 <&clkc CLKID_SD_EMMC_B_CLK0>,
@@ -2348,7 +2348,7 @@  sd_emmc_b: mmc@ffe05000 {
 		sd_emmc_c: mmc@ffe07000 {
 			compatible = "amlogic,meson-axg-mmc";
 			reg = <0x0 0xffe07000 0x0 0x800>;
-			interrupts = <GIC_SPI 191 IRQ_TYPE_EDGE_RISING>;
+			interrupts = <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>;
 			status = "disabled";
 			clocks = <&clkc CLKID_SD_EMMC_C>,
 				 <&clkc CLKID_SD_EMMC_C_CLK0>,
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
index e3c12e0be..5eed15035 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
@@ -603,21 +603,21 @@  apb: apb@d0000000 {
 			sd_emmc_a: mmc@70000 {
 				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
 				reg = <0x0 0x70000 0x0 0x800>;
-				interrupts = <GIC_SPI 216 IRQ_TYPE_EDGE_RISING>;
+				interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>;
 				status = "disabled";
 			};
 
 			sd_emmc_b: mmc@72000 {
 				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
 				reg = <0x0 0x72000 0x0 0x800>;
-				interrupts = <GIC_SPI 217 IRQ_TYPE_EDGE_RISING>;
+				interrupts = <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>;
 				status = "disabled";
 			};
 
 			sd_emmc_c: mmc@74000 {
 				compatible = "amlogic,meson-gx-mmc", "amlogic,meson-gxbb-mmc";
 				reg = <0x0 0x74000 0x0 0x800>;
-				interrupts = <GIC_SPI 218 IRQ_TYPE_EDGE_RISING>;
+				interrupts = <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>;
 				status = "disabled";
 			};
 		};