From 31aaa670d4749920b0a473bd0303be108cfdc5d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Date: Mon, 9 Apr 2018 07:44:55 +0200 Subject: [PATCH] ipq806x: replace linux,part-probe with a proper partitions subnode MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This solution is more upstream compatible as it only requires specifying of_match_table in the parser code and doesn't depend on linux,part-probe which is solution made generic by a LEDE downstream patch that can't be upstreamed. Signed-off-by: Rafał Miłecki Tested-by: Stefan Lippers-Hollmann Acked-by: John Crispin --- .../files-4.9/arch/arm/boot/dts/qcom-ipq8064-ap148.dts | 8 ++++++-- .../files-4.9/arch/arm/boot/dts/qcom-ipq8065-nbg6817.dts | 4 +++- .../files-4.9/arch/arm/boot/dts/qcom-ipq8065-r7800.dts | 4 +++- .../0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch | 9 ++++++++- 4 files changed, 20 insertions(+), 5 deletions(-) diff --git a/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8064-ap148.dts b/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8064-ap148.dts index 39a0d96563..a3df82909e 100644 --- a/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8064-ap148.dts +++ b/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8064-ap148.dts @@ -122,7 +122,9 @@ spi-max-frequency = <50000000>; reg = <0>; - linux,part-probe = "qcom-smem"; + partitions { + compatible = "qcom,smem"; + }; }; }; }; @@ -182,7 +184,9 @@ nand-bus-width = <8>; nand-ecc-step-size = <512>; - linux,part-probe = "qcom-smem"; + partitions { + compatible = "qcom,smem"; + }; }; }; diff --git a/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8065-nbg6817.dts b/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8065-nbg6817.dts index 987ee852cc..2f829795bc 100644 --- a/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8065-nbg6817.dts +++ b/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8065-nbg6817.dts @@ -182,7 +182,9 @@ spi-max-frequency = <51200000>; reg = <0>; - linux,part-probe = "qcom-smem"; + partitions { + compatible = "qcom,smem"; + }; }; }; }; diff --git a/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8065-r7800.dts b/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8065-r7800.dts index 4c89dcf76f..63cb42a3e2 100644 --- a/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8065-r7800.dts +++ b/target/linux/ipq806x/files-4.9/arch/arm/boot/dts/qcom-ipq8065-r7800.dts @@ -234,7 +234,9 @@ spi-max-frequency = <50000000>; reg = <0>; - linux,part-probe = "qcom-smem"; + partitions { + compatible = "qcom,smem"; + }; }; }; }; diff --git a/target/linux/ipq806x/patches-4.9/0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch b/target/linux/ipq806x/patches-4.9/0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch index ad0b09b115..a888b063a1 100644 --- a/target/linux/ipq806x/patches-4.9/0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch +++ b/target/linux/ipq806x/patches-4.9/0031-mtd-add-SMEM-parser-for-QCOM-platforms.patch @@ -34,7 +34,7 @@ Signed-off-by: Ram Chandra Jangir # --- /dev/null +++ b/drivers/mtd/qcom_smem_part.c -@@ -0,0 +1,228 @@ +@@ -0,0 +1,235 @@ +/* + * Copyright (c) 2015, The Linux Foundation. All rights reserved. + * @@ -240,10 +240,17 @@ Signed-off-by: Ram Chandra Jangir + return smem_parts->len; +} + ++static const struct of_device_id qcom_smem_of_match_table[] = { ++ { .compatible = "qcom,smem" }, ++ {}, ++}; ++MODULE_DEVICE_TABLE(of, qcom_smem_of_match_table); ++ +static struct mtd_part_parser qcom_smem_parser = { + .owner = THIS_MODULE, + .parse_fn = parse_qcom_smem_partitions, + .name = "qcom-smem", ++ .of_match_table = qcom_smem_of_match_table, +}; + +static int __init qcom_smem_parser_init(void)