arm64: dts: imx8qxp-sof-cs42888: Remove FSL DAI generic node
authorDaniel Baluta <daniel.baluta@nxp.com>
Wed, 1 Jul 2020 16:03:44 +0000 (19:03 +0300)
committerDong Aisheng <aisheng.dong@nxp.com>
Mon, 14 Dec 2020 03:22:46 +0000 (11:22 +0800)
This removes FSL DAI generic node as suggested by upstream
community review and move resources handling for DAIs under
DSP platform node.

So, pinctrl, power domains and clocks are now under dsp node.

Notice that, now DAI links looks like this:
cpu {
sound-dai = <&dsp 0>;
};
codec {
sound-dai = <&cs42888>;
};

See how CPU sound-dai gets an additional CELL for DAI index as
defined by the array imx8_dai from sound/soc/sof/imx/imx8.c

Here we need ESAI0 index which is 0.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
arch/arm64/boot/dts/freescale/imx8qxp-mek-sof-cs42888.dts

index aa9b53c..0a87aa7 100644 (file)
                status = "disabled";
        };
 
-       esai0_port: esai-port {
-               #sound-dai-cells = <0>;
-               compatible = "fsl,esai-dai";
-
-               pinctrl-names = "default";
-               pinctrl-0 = <&pinctrl_esai0>;
-
-               power-domains = <&pd IMX_SC_R_ESAI_0>,
-                       <&pd IMX_SC_R_DMA_0_CH6>,
-                       <&pd IMX_SC_R_DMA_0_CH7>,
-                       <&pd IMX_SC_R_AUDIO_CLK_0>,
-                       <&pd IMX_SC_R_AUDIO_CLK_1>,
-                       <&pd IMX_SC_R_AUDIO_PLL_0>,
-                       <&pd IMX_SC_R_AUDIO_PLL_1>;
-
-               clocks = <&esai0_lpcg 1>, <&esai0_lpcg 0>,  <&esai0_lpcg 1>,
-                       <&clk_dummy>;
-               clock-names = "core", "extal", "fsys", "spba";
-               assigned-clocks = <&acm IMX_ADMA_ACM_ESAI0_MCLK_SEL>,
-                       <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
-                       <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MISC0>,
-                       <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MISC1>,
-                       <&esai0_lpcg 0>;
-               assigned-clock-parents = <&aud_pll_div0_lpcg 0>;
-               assigned-clock-rates = <0>, <786432000>, <49152000>, <12288000>, <49152000>;
-               status="okay";
-       };
-
        sof-audio-cs42888 {
                compatible = "simple-audio-card";
                label = "imx-cs42888";
                simple-audio-card,dai-link {
                        format = "i2s";
                        cpu {
-                               sound-dai = <&esai0_port>;
-                       };
-                       plat {
-                               sound-dai = <&dsp>;
+                               sound-dai = <&dsp 0>;
                        };
                        codec {
                                sound-dai = <&cs42888>;
 };
 
 &dsp {
-       #sound-dai-cells = <0>;
+       #sound-dai-cells = <1>;
        compatible = "fsl,imx8qxp-dsp";
+       pinctrl-names = "default";
+       pinctrl-0 = <&pinctrl_esai0>;
+
+       power-domains = <&pd IMX_SC_R_MU_13A>,
+                       <&pd IMX_SC_R_MU_13B>,
+                       <&pd IMX_SC_R_DSP>,
+                       <&pd IMX_SC_R_DSP_RAM>,
+                       <&pd IMX_SC_R_IRQSTR_DSP>,
+                       <&pd IMX_SC_R_ESAI_0>,
+                       <&pd IMX_SC_R_DMA_0_CH6>,
+                       <&pd IMX_SC_R_DMA_0_CH7>,
+                       <&pd IMX_SC_R_AUDIO_CLK_0>,
+                       <&pd IMX_SC_R_AUDIO_CLK_1>,
+                       <&pd IMX_SC_R_AUDIO_PLL_0>,
+                       <&pd IMX_SC_R_AUDIO_PLL_1>;
+
+               clocks = <&dsp_lpcg 1>, <&dsp_ram_lpcg 0>, <&dsp_lpcg 2>, <&esai0_lpcg 1>, <&esai0_lpcg 0>,  <&esai0_lpcg 1>,
+                       <&clk_dummy>;
+               clock-names = "ipg", "ocram", "core", "esai0_core", "esai0_extal", "esai0_fsys", "esai0_spba";
+               assigned-clocks = <&acm IMX_ADMA_ACM_ESAI0_MCLK_SEL>,
+                       <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
+                       <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MISC0>,
+                       <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MISC1>,
+                       <&esai0_lpcg 0>;
+               assigned-clock-parents = <&aud_pll_div0_lpcg 0>;
+               assigned-clock-rates = <0>, <786432000>, <49152000>, <12288000>, <49152000>;
+
        reg = <0x596e8000 0x88000>;
        tplg-name = "sof-imx8qxp-cs42888.tplg";
        machine-drv-name = "asoc-simple-card";