build/patch/kernel/meson64-dev/0347-arm64-dts-meson-gx-add-playback-audio-devices.patch
Igor Pečovnik cc7ab6a6b1
Move meson64 to mainline + patches (#1748)
* Attach Meson64 to mainline with a bunch of patches. Tested, but need further work.
* Enable DVFS on N2 which sometimes works, sometime doesn't, cleanup
* Enable beta targets for Meson64 kernel family
* Bump with version
2020-01-18 19:05:55 +01:00

124 lines
3.2 KiB
Diff

From 085e7bc3e2cd68543bc9a1cf032e5912aafb51df Mon Sep 17 00:00:00 2001
From: Jerome Brunet <jbrunet@baylibre.com>
Date: Tue, 22 Oct 2019 18:15:43 +0200
Subject: [PATCH 56/94] WIP: arm64: dts: meson-gx: add playback audio devices
FIXME: Missing gxbb ATM
Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
---
arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 35 ++++++++++++++++++++++++++++++
arch/arm64/boot/dts/amlogic/meson-gxl.dtsi | 30 +++++++++++++++++++++++++
2 files changed, 65 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
index 40db06e..0860239 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
@@ -226,6 +226,40 @@
#reset-cells = <1>;
};
+ aiu: bus@5400 {
+ compatible = "amlogic,aiu-bus", "syscon";
+ reg = <0x0 0x5400 0x0 0x2ac>;
+ status = "disabled";
+
+ i2s_fifo: audio-controller-0 {
+ compatible = "amlogic,aiu-i2s-fifo",
+ "amlogic,aiu-fifo";
+ sound-name-prefix = "I2S FIFO";
+ interrupts = <GIC_SPI 48 IRQ_TYPE_EDGE_RISING>;
+ #sound-dai-cells = <0>;
+ };
+
+ spdif_fifo: audio-controller-1 {
+ compatible = "amlogic,aiu-spdif-fifo",
+ "amlogic,aiu-fifo";
+ sound-name-prefix = "SPDIF FIFO";
+ interrupts = <GIC_SPI 50 IRQ_TYPE_EDGE_RISING>;
+ #sound-dai-cells = <0>;
+ };
+
+ i2s_encoder: audio-controller-2 {
+ compatible = "amlogic,aiu-i2s-encode";
+ sound-name-prefix = "I2S ENCODER";
+ #sound-dai-cells = <0>;
+ };
+
+ spdif_encoder: audio-controller-3 {
+ compatible = "amlogic,aiu-spdif-encode";
+ sound-name-prefix = "SPDIF ENCODER";
+ #sound-dai-cells = <0>;
+ };
+ };
+
uart_A: serial@84c0 {
compatible = "amlogic,meson-gx-uart";
reg = <0x0 0x84c0 0x0 0x18>;
@@ -574,6 +608,7 @@
interrupts = <GIC_SPI 57 IRQ_TYPE_EDGE_RISING>;
#address-cells = <1>;
#size-cells = <0>;
+ #sound-dai-cells = <0>;
status = "disabled";
/* VPU VENC Input */
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
index 259d863..7e1720e 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl.dtsi
@@ -49,6 +49,13 @@
};
};
+&aiu {
+ clocks = <&clkc CLKID_AIU>,
+ <&clkc CLKID_AIU_GLUE>;
+ clock-names = "top", "glue";
+ resets = <&reset RESET_AIU>;
+};
+
&apb {
usb2_phy0: phy@78000 {
compatible = "amlogic,meson-gxl-usb2-phy";
@@ -314,6 +321,17 @@
clocks = <&clkc CLKID_I2C>;
};
+&i2s_fifo {
+ clocks = <&clkc CLKID_I2S_OUT>;
+};
+
+&i2s_encoder {
+ clocks = <&clkc CLKID_MIXER_IFACE>,
+ <&clkc CLKID_AOCLK_GATE>,
+ <&clkc CLKID_CTS_AMCLK>;
+ clock-names = "pclk", "aoclk", "mclk";
+};
+
&periphs {
pinctrl_periphs: pinctrl@4b0 {
compatible = "amlogic,meson-gxl-periphs-pinctrl";
@@ -824,6 +842,18 @@
<&clkc CLKID_GCLK_VENCI_INT0>;
};
+&spdif_fifo {
+ clocks = <&clkc CLKID_IEC958>;
+};
+
+&spdif_encoder {
+ clocks = <&clkc CLKID_IEC958_GATE>,
+ <&clkc CLKID_CTS_MCLK_I958>,
+ <&clkc CLKID_CTS_AMCLK>,
+ <&clkc CLKID_CTS_I958>;
+ clock-names = "pclk", "mclk_i958", "mclk_i2s", "mclk";
+};
+
&spicc {
clocks = <&clkc CLKID_SPICC>;
clock-names = "core";
--
2.7.1