[openwrt/openwrt] kernel/mediatek: 6.12: adapt for changed MMC card binding

LEDE Commits lede-commits at lists.infradead.org
Mon May 26 08:58:51 PDT 2025


dangole pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/25bb907937c9e0359bb9980ef99a2c9c1dbb5466

commit 25bb907937c9e0359bb9980ef99a2c9c1dbb5466
Author: Daniel Golle <daniel at makrotopia.org>
AuthorDate: Sat May 17 14:03:10 2025 +0100

    kernel/mediatek: 6.12: adapt for changed MMC card binding
    
    Adapt patches adding NVMEM or fitblk rootdisk references to MMC
    partitions for the changed MMC card binding.
    
    Note that boards in 'dts' folder can only be converted once Linux 6.6,
    which still depends on the old binding, has been dropped.
    
    Signed-off-by: Daniel Golle <daniel at makrotopia.org>
---
 ...164-dts-mt7623-bpi-r2-rootdisk-for-fitblk.patch |  24 ++-
 ...6a-bpi-r3-leds-port-names-and-wifi-eeprom.patch |  16 +-
 ...ts-mt7986a-bpi-r3-use-all-ubi-nand-layout.patch | 180 +++++++++------------
 3 files changed, 98 insertions(+), 122 deletions(-)

diff --git a/target/linux/mediatek/patches-6.12/164-dts-mt7623-bpi-r2-rootdisk-for-fitblk.patch b/target/linux/mediatek/patches-6.12/164-dts-mt7623-bpi-r2-rootdisk-for-fitblk.patch
index 603cafc85e..be1e130905 100644
--- a/target/linux/mediatek/patches-6.12/164-dts-mt7623-bpi-r2-rootdisk-for-fitblk.patch
+++ b/target/linux/mediatek/patches-6.12/164-dts-mt7623-bpi-r2-rootdisk-for-fitblk.patch
@@ -11,7 +11,7 @@
  	};
  
  	connector {
-@@ -338,6 +340,22 @@
+@@ -338,6 +340,20 @@
  	vmmc-supply = <&reg_3p3v>;
  	vqmmc-supply = <&reg_1p8v>;
  	non-removable;
@@ -22,19 +22,17 @@
 +		compatible = "mmc-card";
 +		reg = <0>;
 +
-+		block {
-+			compatible = "block-device";
-+			partitions {
-+				emmc_rootdisk: block-partition-fit {
-+					partno = <3>;
-+				};
++		partitions {
++			compatible = "msdos-partitions";
++			emmc_rootdisk: block-partition-fit {
++				partno = <3>;
 +			};
 +		};
 +	};
  };
  
  &mmc1 {
-@@ -351,6 +369,22 @@
+@@ -351,6 +367,20 @@
  	cd-gpios = <&pio 261 GPIO_ACTIVE_LOW>;
  	vmmc-supply = <&reg_3p3v>;
  	vqmmc-supply = <&reg_3p3v>;
@@ -45,12 +43,10 @@
 +		compatible = "mmc-card";
 +		reg = <0>;
 +
-+		block {
-+			compatible = "block-device";
-+			partitions {
-+				sd_rootdisk: block-partition-fit {
-+					partno = <3>;
-+				};
++		partitions {
++			compatible = "msdos-partitions";
++			sd_rootdisk: block-partition-fit {
++				partno = <3>;
 +			};
 +		};
 +	};
diff --git a/target/linux/mediatek/patches-6.12/195-dts-mt7986a-bpi-r3-leds-port-names-and-wifi-eeprom.patch b/target/linux/mediatek/patches-6.12/195-dts-mt7986a-bpi-r3-leds-port-names-and-wifi-eeprom.patch
index 336920bafe..8423278033 100644
--- a/target/linux/mediatek/patches-6.12/195-dts-mt7986a-bpi-r3-leds-port-names-and-wifi-eeprom.patch
+++ b/target/linux/mediatek/patches-6.12/195-dts-mt7986a-bpi-r3-leds-port-names-and-wifi-eeprom.patch
@@ -11,7 +11,7 @@
  	};
  
  	chosen {
-@@ -419,27 +423,27 @@
+@@ -418,27 +422,27 @@
  
  		port at 1 {
  			reg = <1>;
@@ -44,7 +44,7 @@
  			phy-mode = "2500base-x";
  			sfp = <&sfp2>;
  			managed = "in-band-status";
-@@ -490,9 +494,137 @@
+@@ -489,9 +493,137 @@
  
  &wifi {
  	status = "okay";
@@ -187,10 +187,10 @@
 --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nor.dtso
 +++ b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nor.dtso
 @@ -55,6 +55,7 @@
- 					partition at c00000 {
- 						label = "fit";
- 						reg = <0xc00000 0x1400000>;
-+						compatible = "denx,fit";
- 					};
- 				};
+ 			partition at c00000 {
+ 				label = "fit";
+ 				reg = <0xc00000 0x1400000>;
++				compatible = "denx,fit";
  			};
+ 		};
+ 	};
diff --git a/target/linux/mediatek/patches-6.12/196-dts-mt7986a-bpi-r3-use-all-ubi-nand-layout.patch b/target/linux/mediatek/patches-6.12/196-dts-mt7986a-bpi-r3-use-all-ubi-nand-layout.patch
index 076d598495..f2b9a7093a 100644
--- a/target/linux/mediatek/patches-6.12/196-dts-mt7986a-bpi-r3-use-all-ubi-nand-layout.patch
+++ b/target/linux/mediatek/patches-6.12/196-dts-mt7986a-bpi-r3-use-all-ubi-nand-layout.patch
@@ -1,135 +1,115 @@
 --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-emmc.dtso
 +++ b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-emmc.dtso
-@@ -23,7 +23,29 @@
- 			no-sd;
- 			no-sdio;
- 			status = "okay";
-+			#address-cells = <1>;
-+			#size-cells = <0>;
+@@ -21,5 +21,24 @@
+ 	non-removable;
+ 	no-sd;
+ 	no-sdio;
++	#address-cells = <1>;
++	#size-cells = <0>;
+ 	status = "okay";
 +
-+			card at 0 {
-+				compatible = "mmc-card";
-+				reg = <0>;
++	card at 0 {
++		compatible = "mmc-card";
++		reg = <0>;
 +
-+				block {
-+					compatible = "block-device";
-+					partitions {
-+						emmc_rootdisk: block-partition-production {
-+							partname = "production";
-+						};
-+					};
-+				};
++		partitions {
++			compatible = "gpt-partitions";
++
++			emmc_rootdisk: block-partition-production {
++				partname = "production";
 +			};
- 		};
- 	};
--};
- 
-+	fragment at 1 {
-+		target-path = "/chosen";
-+		__overlay__ {
-+			rootdisk-emmc = <&emmc_rootdisk>;
 +		};
 +	};
 +};
++
++&{/chosen} {
++	rootdisk-emmc = <&emmc_rootdisk>;
+ };
 --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nand.dtso
 +++ b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nand.dtso
-@@ -29,27 +29,30 @@
+@@ -29,25 +29,24 @@
  
- 					partition at 0 {
- 						label = "bl2";
--						reg = <0x0 0x100000>;
-+						reg = <0x0 0x200000>;
- 						read-only;
- 					};
+ 			partition at 0 {
+ 				label = "bl2";
+-				reg = <0x0 0x100000>;
+-				read-only;
++				reg = <0x0 0x200000>;
+ 			};
  
--					partition at 100000 {
--						label = "reserved";
--						reg = <0x100000 0x280000>;
--					};
+-			partition at 100000 {
+-				label = "reserved";
+-				reg = <0x100000 0x280000>;
+-			};
 -
--					partition at 380000 {
--						label = "fip";
--						reg = <0x380000 0x200000>;
--						read-only;
--					};
+-			partition at 380000 {
+-				label = "fip";
+-				reg = <0x380000 0x200000>;
+-				read-only;
+-			};
 -
--					partition at 580000 {
-+					partition at 200000 {
- 						label = "ubi";
--						reg = <0x580000 0x7a80000>;
-+						reg = <0x200000 0x7e00000>;
-+						compatible = "linux,ubi";
+-			partition at 580000 {
++			partition at 200000 {
+ 				label = "ubi";
+-				reg = <0x580000 0x7a80000>;
++				reg = <0x200000 0x7e00000>;
++				compatible = "linux,ubi";
 +
-+						volumes {
-+							nand_rootdisk: ubi-volume-fit {
-+								volname = "fit";
-+							};
-+						};
- 					};
- 				};
++				volumes {
++					nand_rootdisk: ubi-volume-fit {
++						volname = "fit";
++					};
++				};
  			};
  		};
  	};
-+
-+	fragment at 1 {
-+		target-path = "/chosen";
-+		__overlay__ {
-+			rootdisk-spim-nand = <&nand_rootdisk>;
-+		};
-+	};
  };
++
++&{/chosen} {
++	rootdisk-spim-nand = <&nand_rootdisk>;
++};
 --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nor.dtso
 +++ b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nor.dtso
 @@ -52,7 +52,7 @@
- 						reg = <0x180000 0xa80000>;
- 					};
- 
--					partition at c00000 {
-+					nor_rootdisk: partition at c00000 {
- 						label = "fit";
- 						reg = <0xc00000 0x1400000>;
- 						compatible = "denx,fit";
-@@ -61,4 +61,11 @@
+ 				reg = <0x180000 0xa80000>;
  			};
+ 
+-			partition at c00000 {
++			nor_rootdisk: partition at c00000 {
+ 				label = "fit";
+ 				reg = <0xc00000 0x1400000>;
+ 				compatible = "denx,fit";
+@@ -60,3 +60,7 @@
  		};
  	};
-+
-+	fragment at 1 {
-+		target-path = "/chosen";
-+		__overlay__ {
-+			rootdisk-nor = <&nor_rootdisk>;
-+		};
-+	};
  };
++
++&{/chosen} {
++	rootdisk-nor = <&nor_rootdisk>;
++};
 --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-sd.dtso
 +++ b/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-sd.dtso
-@@ -17,6 +17,29 @@
- 			max-frequency = <52000000>;
- 			cap-sd-highspeed;
- 			status = "okay";
-+			#address-cells = <1>;
-+			#size-cells = <0>;
+@@ -15,5 +15,24 @@
+ 	bus-width = <4>;
+ 	max-frequency = <52000000>;
+ 	cap-sd-highspeed;
++	#address-cells = <1>;
++	#size-cells = <0>;
+ 	status = "okay";
 +
-+			card at 0 {
-+				compatible = "mmc-card";
-+				reg = <0>;
++	card at 0 {
++		compatible = "mmc-card";
++		reg = <0>;
 +
-+				block {
-+					compatible = "block-device";
-+					partitions {
-+						sd_rootdisk: block-partition-production {
-+							partname = "production";
-+						};
-+					};
-+				};
++		partitions {
++			compatible = "gpt-partitions";
++
++			sd_rootdisk: block-partition-production {
++				partname = "production";
 +			};
 +		};
 +	};
++};
 +
-+	fragment at 1 {
-+		target-path = "/chosen";
-+		__overlay__ {
-+			rootdisk-sd = <&sd_rootdisk>;
- 		};
- 	};
++&{/chosen} {
++	rootdisk-sd = <&sd_rootdisk>;
  };




More information about the lede-commits mailing list