Hi, On 17.02.25 20:25, Marco Felsch wrote: > Hi Ahmad, > > thanks for working on this! > > On 25-02-17, Ahmad Fatoum wrote: >> barebox has for many years supported a superset of the upstream OF >> partitions binding by parsing partitions out of SD/eMMC and EEPROM >> in addition to MTD. >> >> Unfortunately, we didn't upstream our binding and a different binding >> went upstream into Linux v6.13-rc1 along with Linux commit >> 2e3a191e89f9 ("block: add support for partition table defined in OF"). >> >> Since then, if CONFIG_OF_PARTITION, which is disabled by default, is >> enabled, Linux will ignore any GPT/MBR if an SD/eMMC node has a >> fixed-partitions compatible subnode. >> >> This is different from the barebox behavior, which allows both OF >> partitions and GPT/MBR to co-exist as long as they don't conflict. >> >> As many barebox boards: >> >> - Place the environment in non-partitioned space prior to the first >> partition >> >> - Fixup all fixed-partitions into the kernel device tree by default > > Could we add a warning/notice that the board should be converted to make > use of the barebox GPT parttype-uuid? It's 2025 and IMHO there is no > reason for not using the GPT with the barebox state part-type UUID in > place. This is of course not related to this patchset. There's no partition type UUID solution for barebox on EFI systems yet and for many systems in the field, switching to partition type UUID would mean a migration step, where a rollback to a system with an old barebox-state version is not possible... Cheers, Ahmad > > Regards, > Marco > >> this can result in breakage if a newer kernel is booted with >> CONFIG_OF_PARTITION enabled. >> >> To resolve this, this series introduces the barebox,fixed-partitions >> compatible and uses that in Linux device tree fixups for SD/eMMC >> by default. >> >> Ahmad Fatoum (6): >> of: factor out of_node_is_fixed_partitions check >> of: of_path: support barebox,fixed-partitions >> ARM: IMX8MP: var-dart-dt8mcustomboard.dts: use new-style partition >> binding >> ARM: dts: prefix all non-MTD fixed-partitions with barebox, >> of: partition: refactor of_partition_binding checks into switch >> of: partition: add Linux CONFIG_OF_PARTITION-compatible adaptive fixup >> mode >> >> .../devicetree/bindings/mtd/partition.rst | 27 +++++++- >> Documentation/user/state.rst | 4 +- >> arch/arm/dts/am335x-phytec-state.dtsi | 2 +- >> .../dts/fsl-ls1046a-tqmls1046a-mbls10xxa.dts | 2 +- >> arch/arm/dts/imx50-kindle-common.dtsi | 2 +- >> arch/arm/dts/imx51-zii-rdu1.dts | 2 +- >> arch/arm/dts/imx6dl-colibri-iris.dts | 2 +- >> arch/arm/dts/imx6qdl-phytec-mira.dtsi | 2 +- >> arch/arm/dts/imx6qdl-phytec-phycard-som.dtsi | 2 +- >> arch/arm/dts/imx6qdl-phytec-phycore-som.dtsi | 2 +- >> arch/arm/dts/imx6qdl-phytec-state.dtsi | 2 +- >> arch/arm/dts/imx6qdl-zii-rdu2.dtsi | 2 +- >> arch/arm/dts/imx6ul-liteboard.dts | 4 +- >> arch/arm/dts/imx6ul-phytec-state.dtsi | 2 +- >> arch/arm/dts/imx6ul-tqma6ul-common.dtsi | 4 +- >> arch/arm/dts/imx6ul-webasto-ccbv2.dts | 2 +- >> arch/arm/dts/imx6ul-webasto-marvel.dts | 2 +- >> arch/arm/dts/imx7d-ac-sxb.dtsi | 4 +- >> arch/arm/dts/imx7d-flex-concentrator-mfg.dts | 2 +- >> arch/arm/dts/imx7d-gome-e143_01.dts | 2 +- >> arch/arm/dts/imx7d-phyboard-zeta.dts | 2 +- >> arch/arm/dts/imx7s-warp.dts | 2 +- >> arch/arm/dts/imx8mm-innocomm-wb15-evk.dts | 4 +- >> arch/arm/dts/imx8mm-phyboard-polis-rdk.dts | 4 +- >> arch/arm/dts/imx8mp-debix-model-a.dts | 4 +- >> arch/arm/dts/imx8mp-debix-som-a-bmb-08.dts | 4 +- >> arch/arm/dts/imx8mp-karo-qsxp-ml81.dtsi | 2 +- >> .../dts/imx8mp-var-dart-dt8mcustomboard.dts | 25 ++++---- >> arch/arm/dts/rk3566-cm3-io.dts | 4 +- >> arch/arm/dts/rk3566-pinetab2.dtsi | 4 +- >> arch/arm/dts/rk3568-bpi-r2-pro.dts | 4 +- >> arch/arm/dts/rk3568-evb1-v10.dts | 4 +- >> arch/arm/dts/rk3568-mecsbc.dts | 4 +- >> arch/arm/dts/rk3568-rock-3a.dts | 4 +- >> arch/arm/dts/rk3568-wolfvision-pf5.dts | 2 +- >> arch/arm/dts/rk3588-orangepi-5-plus.dts | 4 +- >> arch/arm/dts/rk3588-rock-5b.dts | 4 +- >> arch/arm/dts/socfpga_arria10_achilles.dts | 2 +- >> arch/arm/dts/socfpga_arria10_mercury_aa1.dts | 2 +- >> arch/arm/dts/state-example.dtsi | 4 +- >> drivers/of/base.c | 6 +- >> drivers/of/of_path.c | 9 ++- >> drivers/of/partition.c | 62 ++++++++++++------- >> include/of.h | 6 ++ >> 44 files changed, 149 insertions(+), 96 deletions(-) >> >> -- >> 2.39.5 >> >> >> > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |