mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: ti: k3-am654: Add overlay for audio support
@ 2023-03-24 12:24 Jayesh Choudhary
  2023-03-24 14:15 ` Jayesh Choudhary
  0 siblings, 1 reply; 2+ messages in thread
From: Jayesh Choudhary @ 2023-03-24 12:24 UTC (permalink / raw)
  To: nm, vigneshr
  Cc: afd, kristo, robh+dt, krzysztof.kozlowski+dt, linux-arm-kernel,
	devicetree, linux-kernel, j-luthra, j-choudhary

From: Peter Ujfalusi <peter.ujfalusi@ti.com>

The GP application board has:
ICSSG I2C0..3 connected to I2C EEPROMs
ICSSG UART0..3 headers with level shifters
ICSSG SPI0..3 connected to SPI Flash
McASP0 connected to tlv320aic3106 codec with Headset out and Line In jack

This patch adds support for the audio on the GP application board.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
[j-choudhary@ti.com: Makefile fixups, dtso file cleanups]
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
---

Changes are made considering Andrew's comment on another overlay patch[1]
related to Makefile and styling comments on the overlay file.

[1]:
<https://lore.kernel.org/all/8e6442c8-e4ef-705d-1378-7d1f8b74e84d@ti.com/>

 arch/arm64/boot/dts/ti/Makefile         |   3 +-
 arch/arm64/boot/dts/ti/k3-am654-gp.dtso | 124 ++++++++++++++++++++++++
 2 files changed, 126 insertions(+), 1 deletion(-)
 create mode 100644 arch/arm64/boot/dts/ti/k3-am654-gp.dtso

diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
index 541970a8ed0a..9b70a85fbc96 100644
--- a/arch/arm64/boot/dts/ti/Makefile
+++ b/arch/arm64/boot/dts/ti/Makefile
@@ -21,12 +21,13 @@ dtb-$(CONFIG_ARCH_K3) += k3-am642-phyboard-electra-rdk.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
 
 # Boards with AM65x SoC
+k3-am654-evm-dtbs := k3-am654-base-board.dtb k3-am654-gp.dtbo
 dtb-$(CONFIG_ARCH_K3) += k3-am6528-iot2050-basic.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am6528-iot2050-basic-pg2.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced-m2.dtb
 dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced-pg2.dtb
-dtb-$(CONFIG_ARCH_K3) += k3-am654-base-board.dtb
+dtb-$(CONFIG_ARCH_K3) += k3-am654-evm.dtb
 
 # Boards with J7200 SoC
 k3-j7200-evm-dtbs := k3-j7200-common-proc-board.dtb k3-j7200-evm-quad-port-eth-exp.dtbo
diff --git a/arch/arm64/boot/dts/ti/k3-am654-gp.dtso b/arch/arm64/boot/dts/ti/k3-am654-gp.dtso
new file mode 100644
index 000000000000..14ceb2714677
--- /dev/null
+++ b/arch/arm64/boot/dts/ti/k3-am654-gp.dtso
@@ -0,0 +1,124 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * DT overlay for GP application board on AM654 EVM
+ *
+ * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+
+#include "k3-pinctrl.h"
+
+&{/} {
+	gp_vcc_5v0: fixedregulator-gp-vcc-5v0 {
+		compatible = "regulator-fixed";
+		regulator-name = "gp_vcc_5v0";
+		regulator-min-microvolt = <5000000>;
+		regulator-max-microvolt = <5000000>;
+		regulator-always-on;
+		regulator-boot-on;
+	};
+
+	codec_vcc_3v3: fixedregulator-codec-vcc-3v3 {
+		/* LP5912-3.3DRVT */
+		compatible = "regulator-fixed";
+		regulator-name = "codec_vcc_3v3";
+		regulator-min-microvolt = <3300000>;
+		regulator-max-microvolt = <3300000>;
+		vin-supply = <&gp_vcc_5v0>;
+		regulator-always-on;
+		regulator-boot-on;
+	};
+
+	gp_vcc_1v8: fixedregulator-gp-vcc-1v8 {
+		compatible = "regulator-fixed";
+		regulator-name = "gp_vcc_1v8";
+		regulator-min-microvolt = <1800000>;
+		regulator-max-microvolt = <1800000>;
+		regulator-always-on;
+		regulator-boot-on;
+	};
+
+	sound {
+		compatible = "simple-audio-card";
+		simple-audio-card,name = "AM65x-GPEVM";
+		simple-audio-card,widgets =
+			"Headphone", "Headphone Jack",
+			"Line", "Line In";
+		simple-audio-card,routing =
+			"Headphone Jack",	"HPLOUT",
+			"Headphone Jack",	"HPROUT",
+			"LINE1L",		"Line In",
+			"LINE1R",		"Line In";
+		simple-audio-card,format = "dsp_b";
+		simple-audio-card,bitclock-master = <&sound_master>;
+		simple-audio-card,frame-master = <&sound_master>;
+		simple-audio-card,bitclock-inversion;
+
+		simple-audio-card,cpu {
+			sound-dai = <&mcasp0>;
+		};
+
+		sound_master: simple-audio-card,codec {
+			sound-dai = <&tlv320aic3106>;
+			system-clock-frequency = <12000000>;
+		};
+	};
+};
+
+&main_pmx0 {
+	mcasp0_pins: mcasp0-pins {
+		pinctrl-single,pins = <
+			AM65X_IOPAD(0x01f4, PIN_INPUT, 5) /* (V24) PRG0_PRU0_GPO0.MCASP0_ACLKX */
+			AM65X_IOPAD(0x01f8, PIN_INPUT, 5) /* (W25) PRG0_PRU0_GPO1.MCASP0_AFSX */
+			AM65X_IOPAD(0x0204, PIN_OUTPUT, 5) /* (Y24) PRG0_PRU0_GPO4.MCASP0_AXR0 */
+			AM65X_IOPAD(0x0208, PIN_INPUT, 5) /* (V28) PRG0_PRU0_GPO5.MCASP0_AXR1 */
+		>;
+	};
+
+	aic3106_pins: aic3106-pins {
+		pinctrl-single,pins = <
+			AM65X_IOPAD(0x011c, PIN_OUTPUT, 7) /* (AD19) PRG1_PRU0_GPO15.GPIO0_71 */
+		>;
+	};
+};
+
+&main_i2c0 {
+	#address-cells = <1>;
+	#size-cells = <0>;
+
+	tlv320aic3106: tlv320aic3106@1b {
+		#sound-dai-cells = <0>;
+		compatible = "ti,tlv320aic3106";
+		reg = <0x1b>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&aic3106_pins>;
+		gpio-reset = <&main_gpio0 71 GPIO_ACTIVE_LOW>; /* gpio0_71 */
+		/* Regulators */
+		AVDD-supply = <&codec_vcc_3v3>;
+		IOVDD-supply = <&gp_vcc_1v8>;
+		DRVDD-supply = <&codec_vcc_3v3>;
+		DVDD-supply = <&gp_vcc_1v8>;
+	};
+};
+
+&mcasp0 {
+	status = "okay";
+	#sound-dai-cells = <0>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&mcasp0_pins>;
+	op-mode = <0>;          /* MCASP_IIS_MODE */
+	tdm-slots = <2>;
+	/* 16 serializers */
+	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
+		1 2 0 0
+		0 0 0 0
+		0 0 0 0
+		0 0 0 0
+	>;
+	tx-num-evt = <32>;
+	rx-num-evt = <32>;
+};
-- 
2.25.1


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] arm64: dts: ti: k3-am654: Add overlay for audio support
  2023-03-24 12:24 [PATCH] arm64: dts: ti: k3-am654: Add overlay for audio support Jayesh Choudhary
@ 2023-03-24 14:15 ` Jayesh Choudhary
  0 siblings, 0 replies; 2+ messages in thread
From: Jayesh Choudhary @ 2023-03-24 14:15 UTC (permalink / raw)
  To: nm, vigneshr
  Cc: afd, kristo, robh+dt, krzysztof.kozlowski+dt, linux-arm-kernel,
	devicetree, linux-kernel, j-luthra



On 24/03/23 17:54, Jayesh Choudhary wrote:
> From: Peter Ujfalusi <peter.ujfalusi@ti.com>
> 
> The GP application board has:
> ICSSG I2C0..3 connected to I2C EEPROMs
> ICSSG UART0..3 headers with level shifters
> ICSSG SPI0..3 connected to SPI Flash
> McASP0 connected to tlv320aic3106 codec with Headset out and Line In jack
> 
> This patch adds support for the audio on the GP application board.
> 
> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
> [j-choudhary@ti.com: Makefile fixups, dtso file cleanups]
> Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
> ---

Please drop the patch as this board is no longer in production/supported
actively.

I am extremely sorry for the noise.

Warm Regards,
-Jayesh


> 
> Changes are made considering Andrew's comment on another overlay patch[1]
> related to Makefile and styling comments on the overlay file.
> 
> [1]:
> <https://lore.kernel.org/all/8e6442c8-e4ef-705d-1378-7d1f8b74e84d@ti.com/>
> 
>   arch/arm64/boot/dts/ti/Makefile         |   3 +-
>   arch/arm64/boot/dts/ti/k3-am654-gp.dtso | 124 ++++++++++++++++++++++++
>   2 files changed, 126 insertions(+), 1 deletion(-)
>   create mode 100644 arch/arm64/boot/dts/ti/k3-am654-gp.dtso
> 
> diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile
> index 541970a8ed0a..9b70a85fbc96 100644
> --- a/arch/arm64/boot/dts/ti/Makefile
> +++ b/arch/arm64/boot/dts/ti/Makefile
> @@ -21,12 +21,13 @@ dtb-$(CONFIG_ARCH_K3) += k3-am642-phyboard-electra-rdk.dtb
>   dtb-$(CONFIG_ARCH_K3) += k3-am642-sk.dtb
>   
>   # Boards with AM65x SoC
> +k3-am654-evm-dtbs := k3-am654-base-board.dtb k3-am654-gp.dtbo
>   dtb-$(CONFIG_ARCH_K3) += k3-am6528-iot2050-basic.dtb
>   dtb-$(CONFIG_ARCH_K3) += k3-am6528-iot2050-basic-pg2.dtb
>   dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced.dtb
>   dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced-m2.dtb
>   dtb-$(CONFIG_ARCH_K3) += k3-am6548-iot2050-advanced-pg2.dtb
> -dtb-$(CONFIG_ARCH_K3) += k3-am654-base-board.dtb
> +dtb-$(CONFIG_ARCH_K3) += k3-am654-evm.dtb
>   
>   # Boards with J7200 SoC
>   k3-j7200-evm-dtbs := k3-j7200-common-proc-board.dtb k3-j7200-evm-quad-port-eth-exp.dtbo
> diff --git a/arch/arm64/boot/dts/ti/k3-am654-gp.dtso b/arch/arm64/boot/dts/ti/k3-am654-gp.dtso
> new file mode 100644
> index 000000000000..14ceb2714677
> --- /dev/null
> +++ b/arch/arm64/boot/dts/ti/k3-am654-gp.dtso
> @@ -0,0 +1,124 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * DT overlay for GP application board on AM654 EVM
> + *
> + * Copyright (C) 2023 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +/dts-v1/;
> +/plugin/;
> +
> +#include <dt-bindings/gpio/gpio.h>
> +
> +#include "k3-pinctrl.h"
> +
> +&{/} {
> +	gp_vcc_5v0: fixedregulator-gp-vcc-5v0 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "gp_vcc_5v0";
> +		regulator-min-microvolt = <5000000>;
> +		regulator-max-microvolt = <5000000>;
> +		regulator-always-on;
> +		regulator-boot-on;
> +	};
> +
> +	codec_vcc_3v3: fixedregulator-codec-vcc-3v3 {
> +		/* LP5912-3.3DRVT */
> +		compatible = "regulator-fixed";
> +		regulator-name = "codec_vcc_3v3";
> +		regulator-min-microvolt = <3300000>;
> +		regulator-max-microvolt = <3300000>;
> +		vin-supply = <&gp_vcc_5v0>;
> +		regulator-always-on;
> +		regulator-boot-on;
> +	};
> +
> +	gp_vcc_1v8: fixedregulator-gp-vcc-1v8 {
> +		compatible = "regulator-fixed";
> +		regulator-name = "gp_vcc_1v8";
> +		regulator-min-microvolt = <1800000>;
> +		regulator-max-microvolt = <1800000>;
> +		regulator-always-on;
> +		regulator-boot-on;
> +	};
> +
> +	sound {
> +		compatible = "simple-audio-card";
> +		simple-audio-card,name = "AM65x-GPEVM";
> +		simple-audio-card,widgets =
> +			"Headphone", "Headphone Jack",
> +			"Line", "Line In";
> +		simple-audio-card,routing =
> +			"Headphone Jack",	"HPLOUT",
> +			"Headphone Jack",	"HPROUT",
> +			"LINE1L",		"Line In",
> +			"LINE1R",		"Line In";
> +		simple-audio-card,format = "dsp_b";
> +		simple-audio-card,bitclock-master = <&sound_master>;
> +		simple-audio-card,frame-master = <&sound_master>;
> +		simple-audio-card,bitclock-inversion;
> +
> +		simple-audio-card,cpu {
> +			sound-dai = <&mcasp0>;
> +		};
> +
> +		sound_master: simple-audio-card,codec {
> +			sound-dai = <&tlv320aic3106>;
> +			system-clock-frequency = <12000000>;
> +		};
> +	};
> +};
> +
> +&main_pmx0 {
> +	mcasp0_pins: mcasp0-pins {
> +		pinctrl-single,pins = <
> +			AM65X_IOPAD(0x01f4, PIN_INPUT, 5) /* (V24) PRG0_PRU0_GPO0.MCASP0_ACLKX */
> +			AM65X_IOPAD(0x01f8, PIN_INPUT, 5) /* (W25) PRG0_PRU0_GPO1.MCASP0_AFSX */
> +			AM65X_IOPAD(0x0204, PIN_OUTPUT, 5) /* (Y24) PRG0_PRU0_GPO4.MCASP0_AXR0 */
> +			AM65X_IOPAD(0x0208, PIN_INPUT, 5) /* (V28) PRG0_PRU0_GPO5.MCASP0_AXR1 */
> +		>;
> +	};
> +
> +	aic3106_pins: aic3106-pins {
> +		pinctrl-single,pins = <
> +			AM65X_IOPAD(0x011c, PIN_OUTPUT, 7) /* (AD19) PRG1_PRU0_GPO15.GPIO0_71 */
> +		>;
> +	};
> +};
> +
> +&main_i2c0 {
> +	#address-cells = <1>;
> +	#size-cells = <0>;
> +
> +	tlv320aic3106: tlv320aic3106@1b {
> +		#sound-dai-cells = <0>;
> +		compatible = "ti,tlv320aic3106";
> +		reg = <0x1b>;
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&aic3106_pins>;
> +		gpio-reset = <&main_gpio0 71 GPIO_ACTIVE_LOW>; /* gpio0_71 */
> +		/* Regulators */
> +		AVDD-supply = <&codec_vcc_3v3>;
> +		IOVDD-supply = <&gp_vcc_1v8>;
> +		DRVDD-supply = <&codec_vcc_3v3>;
> +		DVDD-supply = <&gp_vcc_1v8>;
> +	};
> +};
> +
> +&mcasp0 {
> +	status = "okay";
> +	#sound-dai-cells = <0>;
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&mcasp0_pins>;
> +	op-mode = <0>;          /* MCASP_IIS_MODE */
> +	tdm-slots = <2>;
> +	/* 16 serializers */
> +	serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
> +		1 2 0 0
> +		0 0 0 0
> +		0 0 0 0
> +		0 0 0 0
> +	>;
> +	tx-num-evt = <32>;
> +	rx-num-evt = <32>;
> +};

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-03-24 14:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-03-24 12:24 [PATCH] arm64: dts: ti: k3-am654: Add overlay for audio support Jayesh Choudhary
2023-03-24 14:15 ` Jayesh Choudhary

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®