summaryrefslogtreecommitdiff
path: root/arch/arm64/boot/dts/freescale/fsl-imx8qxp.dtsi
diff options
context:
space:
mode:
authorShengjiu Wang <shengjiu.wang@nxp.com>2018-03-14 15:47:12 +0800
committerJason Liu <jason.hui.liu@nxp.com>2019-02-12 10:30:58 +0800
commit7db47a77d0a91a84570a9bbd00a14ce23a445b1f (patch)
tree7577cd3bf565ad876701a30fc0ea3cd18f4164e3 /arch/arm64/boot/dts/freescale/fsl-imx8qxp.dtsi
parent65d73403cd99835a8c8e98ee4c509710347508a6 (diff)
MLK-17799: ARM64: dts: restruct audio power domain tree
There is dedicate resource id for audio clocks (PLL_0, PLL_1, AUDIO_CLK_0, AUDIO_CLK_1), the scfw need user to enable the power of resource before using it. The audio clock may used by all audio devices, but the kernel only allow register one power-domains for each device note. So the solution is to add parent-child relationship for them Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com> Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Reviewed-by: Daniel Baluta <daniel.baluta@nxp.com>
Diffstat (limited to 'arch/arm64/boot/dts/freescale/fsl-imx8qxp.dtsi')
-rw-r--r--arch/arm64/boot/dts/freescale/fsl-imx8qxp.dtsi247
1 files changed, 130 insertions, 117 deletions
diff --git a/arch/arm64/boot/dts/freescale/fsl-imx8qxp.dtsi b/arch/arm64/boot/dts/freescale/fsl-imx8qxp.dtsi
index f7dde183f5b1..2d47413118a7 100644
--- a/arch/arm64/boot/dts/freescale/fsl-imx8qxp.dtsi
+++ b/arch/arm64/boot/dts/freescale/fsl-imx8qxp.dtsi
@@ -378,96 +378,139 @@
#address-cells = <1>;
#size-cells = <0>;
- pd_asrc0:PD_AUD_ASRC_0 {
- reg = <SC_R_ASRC_0>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_asrc1: PD_AUD_ASRC_1 {
- reg = <SC_R_ASRC_1>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_esai0: PD_AUD_ESAI_0 {
- reg = <SC_R_ESAI_0>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_spdif0: PD_AUD_SPDIF_0 {
- reg = <SC_R_SPDIF_0>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_sai0:PD_AUD_SAI_0 {
- reg = <SC_R_SAI_0>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_sai1: PD_AUD_SAI_1 {
- reg = <SC_R_SAI_1>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_sai2: PD_AUD_SAI_2 {
- reg = <SC_R_SAI_2>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_sai3: PD_AUD_SAI_3 {
- reg = <SC_R_SAI_3>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_sai4: PD_AUD_SAI_4 {
- reg = <SC_R_SAI_4>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_sai5: PD_AUD_SAI_5 {
- reg = <SC_R_SAI_5>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_gpt5: PD_AUD_GPT_5 {
- reg = <SC_R_GPT_5>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_gpt6: PD_AUD_GPT_6 {
- reg = <SC_R_GPT_6>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_gpt7: PD_AUD_GPT_7 {
- reg = <SC_R_GPT_7>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_gpt8: PD_AUD_GPT_8 {
- reg = <SC_R_GPT_8>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_gpt9: PD_AUD_GPT_9 {
- reg = <SC_R_GPT_9>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_gpt10: PD_AUD_GPT_10 {
- reg = <SC_R_GPT_10>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_amix: PD_AUD_AMIX {
- reg = <SC_R_AMIX>;
- #power-domain-cells = <0>;
+ pd_audio_pll0: PD_AUD_AUDIO_PLL_0 {
+ reg = <SC_R_AUDIO_PLL_0>;
power-domains =<&pd_audio>;
- };
- pd_mqs0: PD_AUD_MQS_0 {
- reg = <SC_R_MQS_0>;
#power-domain-cells = <0>;
- power-domains =<&pd_audio>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pd_audio_pll1: PD_AUD_AUDIO_PLL_1 {
+ reg = <SC_R_AUDIO_PLL_1>;
+ power-domains =<&pd_audio_pll0>;
+ #power-domain-cells = <0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pd_audio_clk0: PD_AUD_AUDIO_CLK_0 {
+ reg = <SC_R_AUDIO_CLK_0>;
+ power-domains =<&pd_audio_pll1>;
+ #power-domain-cells = <0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pd_audio_clk1: PD_AUD_AUDIO_CLK_1 {
+ reg = <SC_R_AUDIO_CLK_1>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pd_asrc0:PD_AUD_ASRC_0 {
+ reg = <SC_R_ASRC_0>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_asrc1: PD_AUD_ASRC_1 {
+ reg = <SC_R_ASRC_1>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_esai0: PD_AUD_ESAI_0 {
+ reg = <SC_R_ESAI_0>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_spdif0: PD_AUD_SPDIF_0 {
+ reg = <SC_R_SPDIF_0>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_sai0:PD_AUD_SAI_0 {
+ reg = <SC_R_SAI_0>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_sai1: PD_AUD_SAI_1 {
+ reg = <SC_R_SAI_1>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_sai2: PD_AUD_SAI_2 {
+ reg = <SC_R_SAI_2>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_sai3: PD_AUD_SAI_3 {
+ reg = <SC_R_SAI_3>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_sai4: PD_AUD_SAI_4 {
+ reg = <SC_R_SAI_4>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_sai5: PD_AUD_SAI_5 {
+ reg = <SC_R_SAI_5>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_gpt5: PD_AUD_GPT_5 {
+ reg = <SC_R_GPT_5>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_gpt6: PD_AUD_GPT_6 {
+ reg = <SC_R_GPT_6>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_gpt7: PD_AUD_GPT_7 {
+ reg = <SC_R_GPT_7>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_gpt8: PD_AUD_GPT_8 {
+ reg = <SC_R_GPT_8>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_gpt9: PD_AUD_GPT_9 {
+ reg = <SC_R_GPT_9>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_gpt10: PD_AUD_GPT_10 {
+ reg = <SC_R_GPT_10>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_amix: PD_AUD_AMIX {
+ reg = <SC_R_AMIX>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_mqs0: PD_AUD_MQS_0 {
+ reg = <SC_R_MQS_0>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_mclk_out0: PD_AUD_MCLK_OUT_0 {
+ reg = <SC_R_MCLK_OUT_0>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ pd_mclk_out1: PD_AUD_MCLK_OUT_1 {
+ reg = <SC_R_MCLK_OUT_1>;
+ #power-domain-cells = <0>;
+ power-domains =<&pd_audio_clk1>;
+ };
+ };
+ };
+ };
};
+
pd_hifi: PD_AUD_HIFI {
reg = <SC_R_DSP>;
#power-domain-cells = <0>;
@@ -478,36 +521,6 @@
#power-domain-cells = <0>;
power-domains =<&pd_audio>;
};
- pd_mclk_out0: PD_AUD_MCLK_OUT_0 {
- reg = <SC_R_MCLK_OUT_0>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_mclk_out1: PD_AUD_MCLK_OUT_1 {
- reg = <SC_R_MCLK_OUT_1>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_audio_pll0: PD_AUD_AUDIO_PLL_0 {
- reg = <SC_R_AUDIO_PLL_0>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_audio_pll1: PD_AUD_AUDIO_PLL_1 {
- reg = <SC_R_AUDIO_PLL_1>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_audio_clk0: PD_AUD_AUDIO_CLK_0 {
- reg = <SC_R_AUDIO_CLK_0>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
- pd_audio_clk1: PD_AUD_AUDIO_CLK_1 {
- reg = <SC_R_AUDIO_CLK_1>;
- #power-domain-cells = <0>;
- power-domains =<&pd_audio>;
- };
};
pd_dma: PD_DMA {