Skip to contentSkip to conversation

arm64: dts: mediatek: mt8183: Fix out of range pull values

PATCH Applied Rob Herring (Arm) 4 participants 6 messages Jul 22, 2025 – Sep 9, 2025

Subsystems (2)
lore
Share & tools
lore

Rob Herring (Arm)

author maintainer
#0 lore raw

PATCH 1/1 arm64: dts: mediatek: mt8183: Fix out of range pull values

A value of 10 is not valid for "mediatek,pull-down-adv" and "mediatek,pull-up-adv" properties which have defined values of 0-3. It appears the "10" was written as a binary value. The driver only looks at the lowest 2 bits, so the value "10" decimal works out the same as if "2" was used.

Fixes cd894e274b74 ("arm64: dts: mt8183: Add krane-sku176 board")
Fixes 19b6403f1e2a ("arm64: dts: mt8183: add mt8183 pumpkin board")

---
This is just a few of the warnings related to mt8183-pinctrl... Mediatek is #1 for DT warnings on arm64. And by #1, I mean worst. :( It would be nice to see some progress on fixing them. Otherwise, seeing new Mediatek bindings rather than fixing the existing stuff makes me grumpy.

 arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi  | 14 +++++++-------
 arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts | 14 +++++++-------
 2 files changed, 14 insertions(+), 14 deletions(-)
arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi +7 -7
index 400c61d11035..fff93e26eb76 100644
@@ -580,7 +580,7 @@ pins-cmd-dat {
 		pins-clk {
 			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
 			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 		};
 
 		pins-rst {
@@ -609,13 +609,13 @@ pins-cmd-dat {
 		pins-clk {
 			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
 			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 		};
 
 		pins-ds {
 			pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
 			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 		};
 
 		pins-rst {
@@ -633,13 +633,13 @@ pins-cmd-dat {
 				 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
 				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
 			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
 		};
 
 		pins-clk {
 			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
 			input-enable;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 		};
 	};
 
@@ -652,13 +652,13 @@ pins-cmd-dat {
 				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
 			drive-strength = <6>;
 			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
 		};
 
 		pins-clk {
 			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
 			drive-strength = <8>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 			input-enable;
 		};
 	};
arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts +7 -7
index dbdee604edab..7c3010889ae7 100644
@@ -324,7 +324,7 @@ pins_cmd_dat {
 		pins_clk {
 			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
 			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 		};
 
 		pins_rst {
@@ -353,13 +353,13 @@ pins_cmd_dat {
 		pins_clk {
 			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
 			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 		};
 
 		pins_ds {
 			pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
 			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 		};
 
 		pins_rst {
@@ -377,13 +377,13 @@ pins_cmd_dat {
 				 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
 				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
 			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
 		};
 
 		pins_clk {
 			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
 			input-enable;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 		};
 
 		pins_pmu {
@@ -401,13 +401,13 @@ pins_cmd_dat {
 				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
 			drive-strength = <6>;
 			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
 		};
 
 		pins_clk {
 			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
 			drive-strength = <8>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
 			input-enable;
 		};
 	};
Signature · 1 line
2.47.2
maintainer Reviewed-by on v1 1/1
#1 lore raw

Il 22/07/25 19:11, Rob Herring (Arm) ha scritto:

Quoted 6 lines

A value of 10 is not valid for "mediatek,pull-down-adv" and "mediatek,pull-up-adv" properties which have defined values of 0-3. It appears the "10" was written as a binary value. The driver only looks at the lowest 2 bits, so the value "10" decimal works out the same as if "2" was used.

Quoted 9 lines
Fixes cd894e274b74 ("arm64: dts: mt8183: Add krane-sku176 board")
Fixes 19b6403f1e2a ("arm64: dts: mt8183: add mt8183 pumpkin board")

---
This is just a few of the warnings related to mt8183-pinctrl... Mediatek is #1 for DT warnings on arm64. And by #1, I mean worst. :( It would be nice to see some progress on fixing them. Otherwise, seeing new Mediatek bindings rather than fixing the existing stuff makes me grumpy.

Thanks for this fix.

You're absolutely right about this, let me check what I can do (and if I can get some colleague(s) of mine to look at that while I'm away in August).

author maintainer
#2 lore raw
Quoted 18 lines · AngeloGioacchino Del Regno

Il 22/07/25 19:11, Rob Herring (Arm) ha scritto:

Quoted 6 lines

A value of 10 is not valid for "mediatek,pull-down-adv" and "mediatek,pull-up-adv" properties which have defined values of 0-3. It appears the "10" was written as a binary value. The driver only looks at the lowest 2 bits, so the value "10" decimal works out the same as if "2" was used.

Quoted 9 lines
Fixes cd894e274b74 ("arm64: dts: mt8183: Add krane-sku176 board")
Fixes 19b6403f1e2a ("arm64: dts: mt8183: add mt8183 pumpkin board")

---
This is just a few of the warnings related to mt8183-pinctrl... Mediatek is #1 for DT warnings on arm64. And by #1, I mean worst. :( It would be nice to see some progress on fixing them. Otherwise, seeing new Mediatek bindings rather than fixing the existing stuff makes me grumpy.

Quoted 6 lines

Thanks for this fix.

You're absolutely right about this, let me check what I can do (and if I can get some colleague(s) of mine to look at that while I'm away in August).

Is this going to get applied and into linux-next sometime soon? Only been like 6 weeks...

Rob

#3 lore raw
Quoted 23 lines · Rob Herring
Quoted 20 lines · AngeloGioacchino Del Regno

Il 22/07/25 19:11, Rob Herring (Arm) ha scritto:

Quoted 6 lines

A value of 10 is not valid for "mediatek,pull-down-adv" and "mediatek,pull-up-adv" properties which have defined values of 0-3. It appears the "10" was written as a binary value. The driver only looks at the lowest 2 bits, so the value "10" decimal works out the same as if "2" was used.

Quoted 9 lines
Fixes cd894e274b74 ("arm64: dts: mt8183: Add krane-sku176 board")
Fixes 19b6403f1e2a ("arm64: dts: mt8183: add mt8183 pumpkin board")

---
This is just a few of the warnings related to mt8183-pinctrl... Mediatek is #1 for DT warnings on arm64. And by #1, I mean worst. :( It would be nice to see some progress on fixing them. Otherwise, seeing new Mediatek bindings rather than fixing the existing stuff makes me grumpy.

Thanks for this fix.

Quoted 7 lines
Quoted 4 lines

You're absolutely right about this, let me check what I can do (and if I can get some colleague(s) of mine to look at that while I'm away in August).

Is this going to get applied and into linux-next sometime soon? Only been like 6 weeks...

AFAIK Angelo is on vacation but should be back shortly in September.

maintainer Applied
#4 lore raw
In reply to Rob Herring (Arm)
Quoted 9 lines · Rob Herring (Arm)

A value of 10 is not valid for "mediatek,pull-down-adv" and "mediatek,pull-up-adv" properties which have defined values of 0-3. It appears the "10" was written as a binary value. The driver only looks at the lowest 2 bits, so the value "10" decimal works out the same as if "2" was used.

Fixes cd894e274b74 ("arm64: dts: mt8183: Add krane-sku176 board")
Fixes 19b6403f1e2a ("arm64: dts: mt8183: add mt8183 pumpkin board")

Queued, thanks

Matthias

Quoted 132 lines

---
This is just a few of the warnings related to mt8183-pinctrl... Mediatek is #1 for DT warnings on arm64. And by #1, I mean worst. :( It would be nice to see some progress on fixing them. Otherwise, seeing new Mediatek bindings rather than fixing the existing stuff makes me grumpy.

  arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi  | 14 +++++++-------
  arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts | 14 +++++++-------
  2 files changed, 14 insertions(+), 14 deletions(-)
arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi +7 -7
index 400c61d11035..fff93e26eb76 100644
@@ -580,7 +580,7 @@ pins-cmd-dat {
  		pins-clk {
  			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins-rst {
@@ -609,13 +609,13 @@ pins-cmd-dat {
  		pins-clk {
  			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins-ds {
  			pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins-rst {
@@ -633,13 +633,13 @@ pins-cmd-dat {
  				 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
  				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
  			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
  		};
 
  		pins-clk {
  			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
  			input-enable;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
  	};
 
@@ -652,13 +652,13 @@ pins-cmd-dat {
  				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
  			drive-strength = <6>;
  			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
  		};
 
  		pins-clk {
  			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
  			drive-strength = <8>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  			input-enable;
  		};
  	};
arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts +7 -7
index dbdee604edab..7c3010889ae7 100644
@@ -324,7 +324,7 @@ pins_cmd_dat {
  		pins_clk {
  			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins_rst {
@@ -353,13 +353,13 @@ pins_cmd_dat {
  		pins_clk {
  			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins_ds {
  			pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins_rst {
@@ -377,13 +377,13 @@ pins_cmd_dat {
  				 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
  				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
  			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
  		};
 
  		pins_clk {
  			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
  			input-enable;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins_pmu {
@@ -401,13 +401,13 @@ pins_cmd_dat {
  				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
  			drive-strength = <6>;
  			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
  		};
 
  		pins_clk {
  			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
  			drive-strength = <8>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  			input-enable;
  		};
  	};
maintainer Applied
#5 lore raw
In reply to Rob Herring (Arm)
Quoted 9 lines · Rob Herring (Arm)

A value of 10 is not valid for "mediatek,pull-down-adv" and "mediatek,pull-up-adv" properties which have defined values of 0-3. It appears the "10" was written as a binary value. The driver only looks at the lowest 2 bits, so the value "10" decimal works out the same as if "2" was used.

Fixes cd894e274b74 ("arm64: dts: mt8183: Add krane-sku176 board")
Fixes 19b6403f1e2a ("arm64: dts: mt8183: add mt8183 pumpkin board")

Queued, thanks

Matthias

Quoted 132 lines

---
This is just a few of the warnings related to mt8183-pinctrl... Mediatek is #1 for DT warnings on arm64. And by #1, I mean worst. :( It would be nice to see some progress on fixing them. Otherwise, seeing new Mediatek bindings rather than fixing the existing stuff makes me grumpy.

  arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi  | 14 +++++++-------
  arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts | 14 +++++++-------
  2 files changed, 14 insertions(+), 14 deletions(-)
arch/arm64/boot/dts/mediatek/mt8183-kukui.dtsi +7 -7
index 400c61d11035..fff93e26eb76 100644
@@ -580,7 +580,7 @@ pins-cmd-dat {
  		pins-clk {
  			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins-rst {
@@ -609,13 +609,13 @@ pins-cmd-dat {
  		pins-clk {
  			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins-ds {
  			pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins-rst {
@@ -633,13 +633,13 @@ pins-cmd-dat {
  				 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
  				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
  			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
  		};
 
  		pins-clk {
  			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
  			input-enable;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
  	};
 
@@ -652,13 +652,13 @@ pins-cmd-dat {
  				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
  			drive-strength = <6>;
  			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
  		};
 
  		pins-clk {
  			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
  			drive-strength = <8>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  			input-enable;
  		};
  	};
arch/arm64/boot/dts/mediatek/mt8183-pumpkin.dts +7 -7
index dbdee604edab..7c3010889ae7 100644
@@ -324,7 +324,7 @@ pins_cmd_dat {
  		pins_clk {
  			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins_rst {
@@ -353,13 +353,13 @@ pins_cmd_dat {
  		pins_clk {
  			pinmux = <PINMUX_GPIO124__FUNC_MSDC0_CLK>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins_ds {
  			pinmux = <PINMUX_GPIO131__FUNC_MSDC0_DSL>;
  			drive-strength = <MTK_DRIVE_14mA>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins_rst {
@@ -377,13 +377,13 @@ pins_cmd_dat {
  				 <PINMUX_GPIO33__FUNC_MSDC1_DAT2>,
  				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
  			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
  		};
 
  		pins_clk {
  			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
  			input-enable;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  		};
 
  		pins_pmu {
@@ -401,13 +401,13 @@ pins_cmd_dat {
  				 <PINMUX_GPIO30__FUNC_MSDC1_DAT3>;
  			drive-strength = <6>;
  			input-enable;
-			mediatek,pull-up-adv = <10>;
+			mediatek,pull-up-adv = <2>;
  		};
 
  		pins_clk {
  			pinmux = <PINMUX_GPIO29__FUNC_MSDC1_CLK>;
  			drive-strength = <8>;
-			mediatek,pull-down-adv = <10>;
+			mediatek,pull-down-adv = <2>;
  			input-enable;
  		};
  	};