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@makrotopia.org>
This commit is contained in:
Daniel Golle 2025-05-17 14:03:10 +01:00
parent b09c0d2680
commit 25bb907937
3 changed files with 98 additions and 122 deletions

View File

@ -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>;
+ };
+ };
+ };

View File

@ -11,7 +11,7 @@
};
chosen {
@@ -419,27 +423,27 @@
@@ -418,27 +422,27 @@
port@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@c00000 {
label = "fit";
reg = <0xc00000 0x1400000>;
+ compatible = "denx,fit";
};
};
partition@c00000 {
label = "fit";
reg = <0xc00000 0x1400000>;
+ compatible = "denx,fit";
};
};
};

View File

@ -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@0 {
+ compatible = "mmc-card";
+ reg = <0>;
+ card@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@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@0 {
label = "bl2";
- reg = <0x0 0x100000>;
+ reg = <0x0 0x200000>;
read-only;
};
partition@0 {
label = "bl2";
- reg = <0x0 0x100000>;
- read-only;
+ reg = <0x0 0x200000>;
};
- partition@100000 {
- label = "reserved";
- reg = <0x100000 0x280000>;
- };
- partition@100000 {
- label = "reserved";
- reg = <0x100000 0x280000>;
- };
-
- partition@380000 {
- label = "fip";
- reg = <0x380000 0x200000>;
- read-only;
- };
- partition@380000 {
- label = "fip";
- reg = <0x380000 0x200000>;
- read-only;
- };
-
- partition@580000 {
+ partition@200000 {
label = "ubi";
- reg = <0x580000 0x7a80000>;
+ reg = <0x200000 0x7e00000>;
+ compatible = "linux,ubi";
- partition@580000 {
+ partition@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@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@c00000 {
+ nor_rootdisk: partition@c00000 {
label = "fit";
reg = <0xc00000 0x1400000>;
compatible = "denx,fit";
@@ -61,4 +61,11 @@
reg = <0x180000 0xa80000>;
};
- partition@c00000 {
+ nor_rootdisk: partition@c00000 {
label = "fit";
reg = <0xc00000 0x1400000>;
compatible = "denx,fit";
@@ -60,3 +60,7 @@
};
};
+
+ fragment@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@0 {
+ compatible = "mmc-card";
+ reg = <0>;
+ card@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@1 {
+ target-path = "/chosen";
+ __overlay__ {
+ rootdisk-sd = <&sd_rootdisk>;
};
};
+&{/chosen} {
+ rootdisk-sd = <&sd_rootdisk>;
};