EMMC and NAND have the same clock control register named 'SD_EMMC_CLOCK' which is defined in EMMC port internally. bit0~5 of 'SD_EMMC_CLOCK' is the divider and bit6~7 is the mux for fix pll and xtal. At the beginning, a common MMC and NAND sub-clock was discussed and planed to be implemented as NFC clock provider, but now this series of patches of a common MMC and NAND sub-clock are never being accepted and the current binding was never valid. the reasons are: 1. EMMC and NAND, which are mutually exclusive anyway 2. coupling the EMMC and NAND. 3. it seems that a common MMC and NAND sub-clock is over engineered. and let us see the link for more information: https://lore.kernel.org/all/20220121074508.42168-5-liang.yang@xxxxxxxxxxx so The meson nfc can't work now, let us rework the clock. Changes since v8 [9] - add reg-names on properties in yaml - delete the uncessary quotes in yaml Changes since v7 [8] - use COMMON_CLK && (ARCH_MESON || COMPILE_TEST) instead of ARCH_MESON || COMPILE_TEST || COMMON_CLK. - collect the review and ack Changes since v6 [7] - use COMMON_CLK instead of !HAVE_LEGACY_CLK Changes since v5 [6] - add change log for patch 3/5 - add patch 5/5 to fix the reporting error of test robot Changes since v4 [5] - split the dt binding patch into two patches, one for fixing, clock, the other for coverting to yaml - split the nfc driver patch into two patches, one for fixing clock, the other for refining the get nfc resource. Changes since v3 [4] - use devm_platform_ioremap_resource_byname - dt_binding_check for mtd/amlogic,meson-nand.yaml Changes since v2 [3] - use fw_name from dts, instead the wrong way using __clk_get_name - reg resource size change to 0x800 - use reg-names Changes since v1 [2] - use clk_parent_data instead of parent_names - define a reg resource instead of sd_emmc_c_clkc [1] https://lore.kernel.org/r/20220106033130.37623-1-liang.yang@xxxxxxxxxxx https://lore.kernel.org/r/20220106032504.23310-1-liang.yang@xxxxxxxxxxx [2] https://lore.kernel.org/all/20220217063346.21691-1-liang.yang@xxxxxxxxxxx [3] https://lore.kernel.org/all/20220318124121.26117-1-liang.yang@xxxxxxxxxxx [4] https://lore.kernel.org/all/20220402074921.13316-1-liang.yang@xxxxxxxxxxx/ [5] https://lore.kernel.org/all/20220513123404.48513-1-liang.yang@xxxxxxxxxxx/ [6] https://lore.kernel.org/all/20220607064731.13367-1-liang.yang@xxxxxxxxxxx/ [7] https://lore.kernel.org/all/20220624131257.29906-1-liang.yang@xxxxxxxxxxx/ [8] https://lore.kernel.org/all/20220906060034.2528-1-liang.yang@xxxxxxxxxxx/ Liang Yang (5): dt-bindings: nand: meson: fix meson nfc clock mtd: rawnand: meson: fix the clock mtd: rawnand: meson: refine resource getting in probe dt-bindings: nand: meson: convert txt to yaml mtd: rawnand: meson: not support legacy clock .../bindings/mtd/amlogic,meson-nand.txt | 60 ------------ .../bindings/mtd/amlogic,meson-nand.yaml | 93 +++++++++++++++++++ drivers/mtd/nand/raw/Kconfig | 2 +- drivers/mtd/nand/raw/meson_nand.c | 86 +++++++++-------- 4 files changed, 136 insertions(+), 105 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mtd/amlogic,meson-nand.txt create mode 100644 Documentation/devicetree/bindings/mtd/amlogic,meson-nand.yaml -- 2.37.1