Merge pull request #1208 from paolosabatino/xt-q8l-v10

RK I2S HDMI audio fix and other fixes for xt-q8l-v10 to work with kernel 4.19
This commit is contained in:
Igor Pečovnik 2019-01-03 23:34:23 +01:00 committed by GitHub
commit 7edf9033d1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 88 additions and 33 deletions

View file

@ -1,4 +1,4 @@
--- /dev/null 2018-11-29 17:19:47.960000000 +0000
--- /dev/null
+++ b/arch/arm/boot/dts/rk3288-xt-q8l-v10.dts 2018-09-23 13:07:34.000000000 +0000
@@ -0,0 +1,1120 @@
+/*

View file

@ -0,0 +1,37 @@
From 24d6638302b48328a58c13439276d4531af4ca7d Mon Sep 17 00:00:00 2001
From: Katsuhiro Suzuki <katsuhiro@katsuster.net>
Date: Tue, 11 Sep 2018 01:39:32 +0900
Subject: ASoC: rockchip: add missing INTERLEAVED PCM attribute
This patch adds SNDRV_PCM_INFO_INTERLEAVED into PCM hardware info.
Signed-off-by: Katsuhiro Suzuki <katsuhiro@katsuster.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
---
sound/soc/rockchip/rockchip_pcm.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
(limited to 'sound/soc/rockchip')
Armbian Note: this patch has been backported from 4.20 to 4.19 due to break in rockchip HDMI/I2S audio. This
can be safely removed once there is a new kernel bump.
Origin: <https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/sound/soc/rockchip?h=linux-4.20.y&id=24d6638302b48328a58c13439276d4531af4ca7d>
diff --git a/sound/soc/rockchip/rockchip_pcm.c b/sound/soc/rockchip/rockchip_pcm.c
index f77538319221..9e7b5fa4cf59 100644
--- a/sound/soc/rockchip/rockchip_pcm.c
+++ b/sound/soc/rockchip/rockchip_pcm.c
@@ -21,7 +21,8 @@ static const struct snd_pcm_hardware snd_rockchip_hardware = {
.info = SNDRV_PCM_INFO_MMAP |
SNDRV_PCM_INFO_MMAP_VALID |
SNDRV_PCM_INFO_PAUSE |
- SNDRV_PCM_INFO_RESUME,
+ SNDRV_PCM_INFO_RESUME |
+ SNDRV_PCM_INFO_INTERLEAVED,
.period_bytes_min = 32,
.period_bytes_max = 8192,
.periods_min = 1,
--
cgit 1.2-0.3.lf.el7

View file

@ -1,6 +1,6 @@
--- /dev/null 2018-11-29 17:19:47.960000000 +0000
+++ b/arch/arm/boot/dts/rk3288-xt-q8l-v10.dts 2018-11-29 21:12:34.069256135 +0000
@@ -0,0 +1,951 @@
--- /dev/null
+++ b/arch/arm/boot/dts/rk3288-xt-q8l-v10.dts 2018-12-06 21:46:51.493688015 +0000
@@ -0,0 +1,969 @@
+/*
+ * Copyright (c) 2014, 2015 FUKAUMI Naoki <naobsd@gmail.com>
+ * 2018 Paolo Sabatino <paolo.sabatino@gm**l.com>
@ -313,6 +313,21 @@
+ /delete-node/operating-points;
+};
+
+&cpu1 {
+ operating-points-v2 = <&cpu0_opp_table>;
+ /delete-node/operating-points;
+};
+
+&cpu2 {
+ operating-points-v2 = <&cpu0_opp_table>;
+ /delete-node/operating-points;
+};
+
+&cpu3 {
+ operating-points-v2 = <&cpu0_opp_table>;
+ /delete-node/operating-points;
+};
+
+&gmac {
+ assigned-clocks = <&cru SCLK_MAC>;
+ assigned-clock-parents = <&ext_gmac>;
@ -331,7 +346,6 @@
+
+&hdmi {
+ ddc-i2c-bus = <&i2c5>;
+ #sound-dai-cells = <0>;
+ status = "okay";
+};
+
@ -395,6 +409,7 @@
+ inl1-supply = <&vcc_sys>;
+ inl2-supply = <&vcc_sys>;
+ inl3-supply = <&vcc_20>;
+ wakeup-source;
+
+ regulators {
+
@ -549,6 +564,7 @@
+ * Here should go the RK1000 audio codec parts, but seems that
+ * there is no driver in linux kernel at the moment, so we can't
+ * describe it.
+ * Also, most important, there is no RK1000 on our board :)
+ * Datasheet is available here:
+ * http://dl.radxa.com/rock/docs/hw/ds/RK1000-S%20DATASHEET%20V14.pdf
+ */
@ -831,41 +847,44 @@
+ * - uart0 is the serial port connected to the bluetooth module
+ * - uart2 is the onboard serial port
+ *
+ * As ok kernel 4.19 DMA for serial ports is disabled because it makes
+ * the ports unusable
+ *
+ */
+&uart0 {
+ pinctrl-names = "default";
+ pinctrl-0 = <&uart0_xfer>, <&uart0_cts>, <&uart0_rts>;
+ dmas = <&dmac_peri 1 &dmac_peri 2>;
+ dma-names = "tx", "rx";
+ //dmas = <&dmac_peri 1 &dmac_peri 2>;
+ //dma-names = "tx", "rx";
+ status = "okay";
+// uart-has-rtscts;
+};
+
+&uart1 {
+ dmas = <&dmac_peri 3 &dmac_peri 4>;
+ dma-names = "tx", "rx";
+ //dmas = <&dmac_peri 3 &dmac_peri 4>;
+ //dma-names = "tx", "rx";
+ status = "okay";
+};
+
+&uart2 {
+ dmas = <&dmac_bus_s 4 &dmac_bus_s 5>;
+ dma-names = "tx", "rx";
+ //dmas = <&dmac_bus_s 4 &dmac_bus_s 5>;
+ //dma-names = "tx", "rx";
+ status = "okay";
+};
+
+&uart3 {
+ dmas = <&dmac_peri 7 &dmac_peri 8>;
+ dma-names = "tx", "rx";
+ //dmas = <&dmac_peri 7 &dmac_peri 8>;
+ //dma-names = "tx", "rx";
+ status = "okay";
+};
+
+&uart4 {
+ dmas = <&dmac_peri 9 &dmac_peri 10>;
+ dma-names = "tx", "rx";
+ //dmas = <&dmac_peri 9 &dmac_peri 10>;
+ //dma-names = "tx", "rx";
+ status = "disabled";
+};
+
+/*
+ * Here usbphy* should have their proper reset lines described in rk3288.dtsi
+ * Describing resets for usb phy is important because otherwise the USB
+ * port gets stuck in case it goes into autosuspend: plugging any device
+ * when the port is autosuspended will actually kill the port itself and
@ -874,6 +893,7 @@
+ * specify the proper resources for all the phys though.
+ * The reference patch which works in conjuction with the reset lines:
+ * https://patchwork.kernel.org/patch/9469811/
+ *
+ */
+&usbphy {
+ status = "okay";
@ -902,30 +922,20 @@
+};
+
+/*
+ * Enalbe VPU services and complete the relative IOMMU configurations
+ * including the clocks which are currently missing (kernel 4.17.2) from
+ * the current base definitions from rk3288.dtsi include file
+ * Enable VPU services and complete the relative IOMMU configurations
+ */
+&vopb {
+ status = "okay";
+};
+
+&vopl {
+ status = "okay";
+};
+
+&vpu_service {
+ status = "okay";
+};
+
+&hevc_service {
+ status = "okay";
+};
+
+&vopb_mmu {
+ status = "okay";
+};
+
+&vopl {
+ status = "okay";
+};
+
+&vopl_mmu {
+ status = "okay";
+};
@ -934,10 +944,18 @@
+ status = "okay";
+};
+
+&vpu_service {
+ status = "okay";
+};
+
+&hevc_mmu {
+ status = "okay";
+};
+
+&hevc_service {
+ status = "okay";
+};
+
+&wdt {
+ status = "okay";
+};

View file

@ -1,4 +1,4 @@
--- /dev/null 2018-11-29 17:19:47.960000000 +0000
--- /dev/null
+++ b/arch/arm/boot/dts/rk3288-xt-q8l-v10.dts 2018-11-29 21:02:56.636665164 +0000
@@ -0,0 +1,951 @@
+/*

View file

@ -1,4 +1,4 @@
--- /dev/null 2018-11-29 17:19:47.960000000 +0000
--- /dev/null
+++ b/arch/arm/dts/rk3288-xt-q8l-v10.dts 2018-09-23 12:59:27.000000000 +0000
@@ -0,0 +1,740 @@
+/*