Re: [PATCH v9 3/4] clk: meson: add DT documentation for emmc clock controller

From: Liang Yang
Date: Mon Jan 17 2022 - 02:03:55 EST


Hi Martin,

On 2022/1/15 8:09, Martin Blumenstingl wrote:
[ EXTERNAL EMAIL ]

Hi Liang,

On Fri, Jan 14, 2022 at 4:06 AM Liang Yang <liang.yang@xxxxxxxxxxx> wrote:
[...]
+properties:
+ compatible:
+ enum:
+ - "amlogic,axg-mmc-clkc", "syscon"

Why is it a syscon?

The register documented by reg is shared with SD/eMMC controller port C,
and it need to be ops on NFC driver.
Can you please share an example how the .dts would look like in the
end for two example cases:
1) using the sd_emmc_c MMC interface > 2) not using the MMC interface of sd_emmc_c but only using it's clocks
for the NFC
I think both EMMC(although it is not implemented by 'axg-mmc-clkc' yet) and NAND clock have the same way in dts:
......
clocks = <&clkc CLKID_SD_EMMC_C>,
<&sd_emmc_c_clkc CLKID_MMC_DIV>,
<&sd_emmc_c_clkc CLKID_MMC_PHASE_RX>,
<&sd_emmc_c_clkc CLKID_MMC_PHASE_TX>;
clock-names = "core", "device", "rx", "tx";
amlogic,mmc-syscon = <&sd_emmc_c_clkc>;
......


Initially I wanted to suggest the usage of a sub-node with compatible
= "mmc-slot" (see
Documentation/devicetree/bindings/mmc/amlogic,meson-mx-sdio.txt for an
example) to decide whether the MMC controller is registered or whether
just the clock controller is registered.
However, the mmc-slot compatible string is not documented in
Documentation/devicetree/bindings/mmc/mmc-controller.yaml currently.
Maybe the MMC maintainers have any suggestions if other IPs have
similar requirements (for IPs with shared parts).


Best regards,
Martin

.