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 { connector {
@@ -338,6 +340,22 @@ @@ -338,6 +340,20 @@
vmmc-supply = <&reg_3p3v>; vmmc-supply = <&reg_3p3v>;
vqmmc-supply = <&reg_1p8v>; vqmmc-supply = <&reg_1p8v>;
non-removable; non-removable;
@ -22,19 +22,17 @@
+ compatible = "mmc-card"; + compatible = "mmc-card";
+ reg = <0>; + reg = <0>;
+ +
+ block {
+ compatible = "block-device";
+ partitions { + partitions {
+ compatible = "msdos-partitions";
+ emmc_rootdisk: block-partition-fit { + emmc_rootdisk: block-partition-fit {
+ partno = <3>; + partno = <3>;
+ }; + };
+ }; + };
+ };
+ }; + };
}; };
&mmc1 { &mmc1 {
@@ -351,6 +369,22 @@ @@ -351,6 +367,20 @@
cd-gpios = <&pio 261 GPIO_ACTIVE_LOW>; cd-gpios = <&pio 261 GPIO_ACTIVE_LOW>;
vmmc-supply = <&reg_3p3v>; vmmc-supply = <&reg_3p3v>;
vqmmc-supply = <&reg_3p3v>; vqmmc-supply = <&reg_3p3v>;
@ -45,14 +43,12 @@
+ compatible = "mmc-card"; + compatible = "mmc-card";
+ reg = <0>; + reg = <0>;
+ +
+ block {
+ compatible = "block-device";
+ partitions { + partitions {
+ compatible = "msdos-partitions";
+ sd_rootdisk: block-partition-fit { + sd_rootdisk: block-partition-fit {
+ partno = <3>; + partno = <3>;
+ }; + };
+ }; + };
+ };
+ }; + };
}; };

View file

@ -11,7 +11,7 @@
}; };
chosen { chosen {
@@ -419,27 +423,27 @@ @@ -418,27 +422,27 @@
port@1 { port@1 {
reg = <1>; reg = <1>;
@ -44,7 +44,7 @@
phy-mode = "2500base-x"; phy-mode = "2500base-x";
sfp = <&sfp2>; sfp = <&sfp2>;
managed = "in-band-status"; managed = "in-band-status";
@@ -490,9 +494,137 @@ @@ -489,9 +493,137 @@
&wifi { &wifi {
status = "okay"; status = "okay";

View file

@ -1,45 +1,39 @@
--- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-emmc.dtso --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-emmc.dtso
+++ b/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 @@ @@ -21,5 +21,24 @@
non-removable;
no-sd; no-sd;
no-sdio; no-sdio;
status = "okay";
+ #address-cells = <1>; + #address-cells = <1>;
+ #size-cells = <0>; + #size-cells = <0>;
status = "okay";
+ +
+ card@0 { + card@0 {
+ compatible = "mmc-card"; + compatible = "mmc-card";
+ reg = <0>; + reg = <0>;
+ +
+ block {
+ compatible = "block-device";
+ partitions { + partitions {
+ compatible = "gpt-partitions";
+
+ emmc_rootdisk: block-partition-production { + emmc_rootdisk: block-partition-production {
+ partname = "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 --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nand.dtso
+++ b/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 { partition@0 {
label = "bl2"; label = "bl2";
- reg = <0x0 0x100000>; - reg = <0x0 0x100000>;
- read-only;
+ reg = <0x0 0x200000>; + reg = <0x0 0x200000>;
read-only;
}; };
- partition@100000 { - partition@100000 {
@ -69,15 +63,10 @@
}; };
}; };
}; };
};
+ +
+ fragment@1 { +&{/chosen} {
+ target-path = "/chosen";
+ __overlay__ {
+ rootdisk-spim-nand = <&nand_rootdisk>; + rootdisk-spim-nand = <&nand_rootdisk>;
+ }; +};
+ };
};
--- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nor.dtso --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-nor.dtso
+++ b/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 @@ @@ -52,7 +52,7 @@
@ -89,47 +78,38 @@
label = "fit"; label = "fit";
reg = <0xc00000 0x1400000>; reg = <0xc00000 0x1400000>;
compatible = "denx,fit"; compatible = "denx,fit";
@@ -61,4 +61,11 @@ @@ -60,3 +60,7 @@
}; };
}; };
}; };
+ +
+ fragment@1 { +&{/chosen} {
+ target-path = "/chosen";
+ __overlay__ {
+ rootdisk-nor = <&nor_rootdisk>; + rootdisk-nor = <&nor_rootdisk>;
+ }; +};
+ };
};
--- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-sd.dtso --- a/arch/arm64/boot/dts/mediatek/mt7986a-bananapi-bpi-r3-sd.dtso
+++ b/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 @@ @@ -15,5 +15,24 @@
bus-width = <4>;
max-frequency = <52000000>; max-frequency = <52000000>;
cap-sd-highspeed; cap-sd-highspeed;
status = "okay";
+ #address-cells = <1>; + #address-cells = <1>;
+ #size-cells = <0>; + #size-cells = <0>;
status = "okay";
+ +
+ card@0 { + card@0 {
+ compatible = "mmc-card"; + compatible = "mmc-card";
+ reg = <0>; + reg = <0>;
+ +
+ block {
+ compatible = "block-device";
+ partitions { + partitions {
+ compatible = "gpt-partitions";
+
+ sd_rootdisk: block-partition-production { + sd_rootdisk: block-partition-production {
+ partname = "production"; + partname = "production";
+ }; + };
+ }; + };
+ }; + };
+ }; +};
+ };
+ };
+ +
+ fragment@1 { +&{/chosen} {
+ target-path = "/chosen";
+ __overlay__ {
+ rootdisk-sd = <&sd_rootdisk>; + rootdisk-sd = <&sd_rootdisk>;
}; };
};
};