RE: [PATCH 5/6] arm64: dts: fsd: Add I2S DAI node for Tesla FSD

Padmanabhan Rajanbabu
2022-10-21T08:21:01Z

> -----Original Message-----
> From: Alim Akhtar [mailto:alim.akhtar@samsung.com]
> Sent: 14 October 2022 06:54 PM
> To: 'Padmanabhan Rajanbabu' <p.rajanbabu@samsung.com>;
> lgirdwood@gmail.com; broonie@kernel.org; robh+dt@kernel.org;
> krzysztof.kozlowski+dt@linaro.org; s.nawrocki@samsung.com;
> perex@perex.cz; tiwai@suse.com; pankaj.dubey@samsung.com;
> rcsekar@samsung.com; aswani.reddy@samsung.com
> Cc: alsa-devel@alsa-project.org; devicetree@vger.kernel.org; linux-
> kernel@vger.kernel.org; linux-samsung-soc@vger.kernel.org
> Subject: RE: [PATCH 5/6] arm64: dts: fsd: Add I2S DAI node for Tesla FSD
>
>
>
> >-----Original Message-----
> >From: Padmanabhan Rajanbabu [mailto:p.rajanbabu@samsung.com]
> >Sent: Friday, October 14, 2022 3:52 PM
> >To: lgirdwood@gmail.com; broonie@kernel.org; robh+dt@kernel.org;
> >krzysztof.kozlowski+dt@linaro.org; s.nawrocki@samsung.com;
> >perex@perex.cz; tiwai@suse.com; pankaj.dubey@samsung.com;
> >alim.akhtar@samsung.com; rcsekar@samsung.com;
> aswani.reddy@samsung.com
> >Cc: alsa-devel@alsa-project.org; devicetree@vger.kernel.org; linux-
> >kernel@vger.kernel.org; linux-samsung-soc@vger.kernel.org;
> Padmanabhan
> >Rajanbabu <p.rajanbabu@samsung.com>
> >Subject: [PATCH 5/6] arm64: dts: fsd: Add I2S DAI node for Tesla FSD
> >
> >Add device tree node for I2S0 and I2S1 CPU DAI instances for Tesla FSD
> >board
> >
> >Signed-off-by: Padmanabhan Rajanbabu <p.rajanbabu@samsung.com>
> >---
> > arch/arm64/boot/dts/tesla/fsd-evb.dts | 8 +++++
> > arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi | 14 ++++++++
> > arch/arm64/boot/dts/tesla/fsd.dtsi | 38 ++++++++++++++++++++++
> > 3 files changed, 60 insertions(+)
> >
> >diff --git a/arch/arm64/boot/dts/tesla/fsd-evb.dts
> >b/arch/arm64/boot/dts/tesla/fsd-evb.dts
> >index 1db6ddf03f01..c0a4509499ab 100644
> >--- a/arch/arm64/boot/dts/tesla/fsd-evb.dts
> >+++ b/arch/arm64/boot/dts/tesla/fsd-evb.dts
> >@@ -41,3 +41,11 @@
> > &ufs {
> > status = "okay";
> > };
> >+
> >+&tdm_0 {
> >+ status = "okay";
> >+};
> >+
> >+&tdm_1 {
> >+ status = "okay";
> >+};
> >diff --git a/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
> >b/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
> >index e3852c946352..ff6f5d4b16dd 100644
> >--- a/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
> >+++ b/arch/arm64/boot/dts/tesla/fsd-pinctrl.dtsi
> >@@ -339,6 +339,20 @@
> > samsung,pin-pud = <FSD_PIN_PULL_UP>;
> > samsung,pin-drv = <FSD_PIN_DRV_LV4>;
> > };
> >+
> >+ i2s0_bus: i2s0-bus {
> >+ samsung,pins = "gpd1-0", "gpd1-1", "gpd1-2", "gpd1-3",
> >"gpd1-4";
> >+ samsung,pin-function = <FSD_PIN_FUNC_2>;
> >+ samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
> >+ samsung,pin-drv = <FSD_PIN_DRV_LV4>;
> >+ };
> >+
> >+ i2s1_bus: i2s1-bus {
> >+ samsung,pins = "gpd2-0", "gpd2-1", "gpd2-2", "gpd2-3",
> >"gpd2-4";
> >+ samsung,pin-function = <FSD_PIN_FUNC_2>;
> >+ samsung,pin-pud = <FSD_PIN_PULL_DOWN>;
> >+ samsung,pin-drv = <FSD_PIN_DRV_LV4>;
> >+ };
> > };
> >
> > &pinctrl_pmu {
> >diff --git a/arch/arm64/boot/dts/tesla/fsd.dtsi
> >b/arch/arm64/boot/dts/tesla/fsd.dtsi
> >index f35bc5a288c2..5decad45a1b6 100644
> >--- a/arch/arm64/boot/dts/tesla/fsd.dtsi
> >+++ b/arch/arm64/boot/dts/tesla/fsd.dtsi
> >@@ -32,6 +32,8 @@
> > spi0 = &spi_0;
> > spi1 = &spi_1;
> > spi2 = &spi_2;
> >+ tdm0 = &tdm_0;
> >+ tdm1 = &tdm_1;
> > };
> >
> > cpus {
> >@@ -809,6 +811,42 @@
> > status = "disabled";
> > };
> >
> >+ tdm_0: tdm@140e0000 {
> >+ compatible = "samsung,exynos7-i2s";
> >+ reg = <0x0 0x140E0000 0x0 0x100>;
> Address should be all in small caps
> Make sure you have run 'make dtbs_check'
Okay
>
> >+ interrupts = <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>;
> >+ dmas = <&pdma1 14>, <&pdma1 13>, <&pdma1 12>;
> >+ dma-names = "tx", "rx", "tx-sec";
> >+ #clock-cells = <1>;
> >+ #sound-dai-cells = <1>;
> >+ clocks = <&clock_peric PERIC_HCLK_TDM0>,
> >+ <&clock_peric PERIC_HCLK_TDM0>,
> >+ <&clock_peric PERIC_PCLK_TDM0>;
> >+ clock-names = "i2s_opclk0", "i2s_opclk1", "iis";
> >+ pinctrl-names = "default";
> >+ pinctrl-0 = <&i2s0_bus>;
> >+ samsung,sec-dai-id = <0>;
> >+ status = "disabled";
> >+ };
> >+
> >+ tdm_1: tdm@140f0000 {
> >+ compatible = "samsung,exynos7-i2s";
> >+ reg = <0x0 0x140F0000 0x0 0x100>;
> Same as above
Okay
>
> >+ interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>;
> >+ dmas = <&pdma1 17>, <&pdma1 16>, <&pdma1 15>;
> >+ dma-names = "tx", "rx", "tx-sec";
> >+ #clock-cells = <1>;
> >+ #sound-dai-cells = <1>;
> >+ clocks = <&clock_peric PERIC_HCLK_TDM1>,
> >+ <&clock_peric PERIC_HCLK_TDM1>,
> >+ <&clock_peric PERIC_PCLK_TDM1>;
> >+ clock-names = "i2s_opclk0", "i2s_opclk1", "iis";
> >+ pinctrl-names = "default";
> >+ pinctrl-0 = <&i2s1_bus>;
> >+ samsung,sec-dai-id = <1>;
> >+ status = "disabled";
> >+ };
> >+
> > timer@10040000 {
> > compatible = "tesla,fsd-mct", "samsung,exynos4210-
> mct";
> > reg = <0x0 0x10040000 0x0 0x800>;
> >--
> >2.17.1
>