linux: bump Amlogic to Linux 5.16.y

This commit is contained in:
Christian Hewitt 2021-12-20 04:56:36 +00:00
parent 23b837e379
commit 856281a374
82 changed files with 858 additions and 732 deletions

View File

@ -16,8 +16,8 @@ PKG_PATCH_DIRS="${LINUX}"
case "${LINUX}" in
amlogic)
PKG_VERSION="2585cf9dfaaddf00b069673f27bb3f8530e2039c" # 5.16-rc5
PKG_SHA256="07df650e8d06ac5cd0fed6b0d3b6e17e8f8a8caa8403d43ee069ad5655b998e3"
PKG_VERSION="c9e6606c7fe92b50a02ce51dda82586ebdf99b48" # 5.16-rc8
PKG_SHA256="72516fe4902b04d168e14f9554ac1846cec8464e8912723720e7b22250a73cae"
PKG_URL="https://github.com/torvalds/linux/archive/${PKG_VERSION}.tar.gz"
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
;;

View File

@ -1,7 +1,7 @@
From f7ccc39d5ee3dddc37497b9dea516cd421e807c5 Mon Sep 17 00:00:00 2001
From 76ca7f910cab27aeda64cae32141191c4f059aeb Mon Sep 17 00:00:00 2001
From: chewitt <github@chrishewitt.net>
Date: Sat, 13 Apr 2019 05:41:51 +0000
Subject: [PATCH 01/71] HACK: set meson-gx cma pool to 896MB
Subject: [PATCH 01/77] HACK: set meson-gx cma pool to 896MB
This change sets the CMA pool to a larger 896MB! value for vdec use

View File

@ -1,7 +1,7 @@
From ad1c014ceb8cfe665df0739d1a7b38a5740db964 Mon Sep 17 00:00:00 2001
From ccc85d2bf9045df53e4a091882c5afb317419b5c Mon Sep 17 00:00:00 2001
From: chewitt <github@chrishewitt.net>
Date: Wed, 14 Aug 2019 19:58:14 +0000
Subject: [PATCH 02/71] HACK: set meson-g12 cma pool to 896MB
Subject: [PATCH 02/77] HACK: set meson-g12 cma pool to 896MB
This change sets the CMA pool to a larger 896MB! value for vdec use

View File

@ -1,7 +1,7 @@
From 5a3bd9e778637bd48aaabdf4f976879aba2c7e95 Mon Sep 17 00:00:00 2001
From b802e78a49c769397ebdd9f8eef65bbaf4282309 Mon Sep 17 00:00:00 2001
From: chewitt <github@chrishewitt.net>
Date: Sat, 13 Apr 2019 05:45:18 +0000
Subject: [PATCH 03/71] HACK: arm64: fix Kodi sysinfo CPU information
Subject: [PATCH 03/77] HACK: arm64: fix Kodi sysinfo CPU information
This allows the CPU information to show in the Kodi sysinfo screen, e.g.

View File

@ -1,7 +1,7 @@
From 2c40387638d3c79e0d48d8bb169e8b147a0d9b76 Mon Sep 17 00:00:00 2001
From 934e244d719f8e8d0b5859ed84bc29c8da18e876 Mon Sep 17 00:00:00 2001
From: kszaq <kszaquitto@gmail.com>
Date: Sat, 6 Jul 2019 07:54:44 +0000
Subject: [PATCH 04/71] HACK: arm64: dts: meson-gx: add ATF BL32 reserved
Subject: [PATCH 04/77] HACK: arm64: dts: meson-gx: add ATF BL32 reserved
memory region
Vendor firmware/uboot has an additional reserved region for BL32 trusted

View File

@ -1,7 +1,7 @@
From 0a8ff502eb685541fbadfd80a1a3e0736f668257 Mon Sep 17 00:00:00 2001
From 490e5d60e6d9858945b12a7322047fda9d9c6be7 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Thu, 3 Nov 2016 15:29:23 +0100
Subject: [PATCH 05/71] HACK: arm64: meson: add Amlogic Meson GX PM Suspend
Subject: [PATCH 05/77] HACK: arm64: meson: add Amlogic Meson GX PM Suspend
The Amlogic Meson GX SoCs uses a non-standard argument to the
PSCI CPU_SUSPEND call to enter system suspend.

View File

@ -1,7 +1,7 @@
From 75d4afb43eb64994d9d1855a5d716a392626d36f Mon Sep 17 00:00:00 2001
From 7c70dc4b79bd08feab85fa63cac12a7c9be6031c Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Thu, 3 Nov 2016 15:29:25 +0100
Subject: [PATCH 06/71] HACK: arm64: dts: meson: add support for GX PM and
Subject: [PATCH 06/77] HACK: arm64: dts: meson: add support for GX PM and
Virtual RTC
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>

View File

@ -1,7 +1,7 @@
From fb9688326b950679aff07eb1b056e25be47dd792 Mon Sep 17 00:00:00 2001
From 3a7306768be08b7937f92f8a8ae01c7a434e3737 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Thu, 21 Jan 2021 01:35:36 +0000
Subject: [PATCH 07/71] HACK: arm64: dts: meson: add rtc/vrtc aliases to Khadas
Subject: [PATCH 07/77] HACK: arm64: dts: meson: add rtc/vrtc aliases to Khadas
VIM
Add aliases to ensure the vrtc time (which normally proves first) is /dev/rtc1

View File

@ -1,7 +1,7 @@
From 0b718ec6c8dd53a26708ad6c4a3032343c0880b1 Mon Sep 17 00:00:00 2001
From 575fb68f646d379035e4db262882604d22a07e73 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sat, 6 Nov 2021 13:01:08 +0000
Subject: [PATCH 08/71] HACK: arm64: dts: meson: add rtc/vrtc aliases to Khadas
Subject: [PATCH 08/77] HACK: arm64: dts: meson: add rtc/vrtc aliases to Khadas
VIM2
Add aliases to ensure the vrtc time (which normally proves first) is /dev/rtc1

View File

@ -1,7 +1,7 @@
From 04c6b6fff46ad34e580157a93bb062fad03fb75b Mon Sep 17 00:00:00 2001
From 0bdd3dcb47d5c082effd34d7acd1af6a48e67c0d Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 1 Feb 2021 19:27:40 +0000
Subject: [PATCH 09/71] HACK: arm64: dts: meson: add rtc/vrtc aliases to Minix
Subject: [PATCH 09/77] HACK: arm64: dts: meson: add rtc/vrtc aliases to Minix
NEO U9-H
Add node aliases to prevent meson-vrtc from claiming /dev/rtc0

View File

@ -1,7 +1,7 @@
From 1fdc01532d51293d191d698a0c96313b0c1036d8 Mon Sep 17 00:00:00 2001
From 61d899af6ec218c1602d3939dd7c0363d0211e6a Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Thu, 25 Nov 2021 11:31:43 +0000
Subject: [PATCH 10/71] HACK: arm64: dts: meson: remove opps below 1GHz for
Subject: [PATCH 10/77] HACK: arm64: dts: meson: remove opps below 1GHz for
g12/sm1
This seems to workaround or hide occurrences of CPU stalls and other

View File

@ -0,0 +1,34 @@
From e8ac70f7a4b9a42a8f9333129f6eb7da78be28c4 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 3 Jan 2022 10:44:17 +0000
Subject: [PATCH 11/77] HACK: usb: hub: disable autosuspend for Genesys Logic
Hubs
Disable autosuspend in Genesys Logic hubs to allow USB devices on the
Odroid C2 board to be used. The alternative to this patch is setting
usbcore.autosuspend=-1 in boot params.
This patch only impacts GXBB devices as GXL/GXM onwards use the newer
dwc3 core which does not have the problem.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
drivers/usb/core/hub.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index 00070a8a6507..63eea83b9308 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -5787,7 +5787,7 @@ static const struct usb_device_id hub_id_table[] = {
| USB_DEVICE_ID_MATCH_INT_CLASS,
.idVendor = USB_VENDOR_GENESYS_LOGIC,
.bInterfaceClass = USB_CLASS_HUB,
- .driver_info = HUB_QUIRK_CHECK_PORT_AUTOSUSPEND},
+ .driver_info = HUB_QUIRK_DISABLE_AUTOSUSPEND},
{ .match_flags = USB_DEVICE_ID_MATCH_DEV_CLASS,
.bDeviceClass = USB_CLASS_HUB},
{ .match_flags = USB_DEVICE_ID_MATCH_INT_CLASS,
--
2.17.1

View File

@ -1,7 +1,7 @@
From eb5b75515a748fe33d7bfaff278c43c6fee4f3b9 Mon Sep 17 00:00:00 2001
From bb46339e1b7ec0abde700718e9e98c8d704a6053 Mon Sep 17 00:00:00 2001
From: Stefan Agner <stefan@agner.ch>
Date: Wed, 15 Sep 2021 05:00:45 +0000
Subject: [PATCH 11/71] HACK: of: partial revert of fdt.c changes
Subject: [PATCH 12/77] HACK: of: partial revert of fdt.c changes
This resolves reports similar to the below which are present in dmesg
since Linux 5.10; which are also causing crashes in some distros:

View File

@ -1,7 +1,7 @@
From b0374f9e8fd2adbe151cbfcf7344177b0f933a1f Mon Sep 17 00:00:00 2001
From fab7806fef1456ca9a4f1a5c3ea66c671a6e41fd Mon Sep 17 00:00:00 2001
From: Dmitry Shmidt <dimitrysh@google.com>
Date: Fri, 8 Oct 2021 03:54:31 +0000
Subject: [PATCH 12/71] FROMGIT: arm64: dts: meson-sm1-odroid: add cec nodes
Subject: [PATCH 13/77] FROMGIT: arm64: dts: meson-sm1-odroid: add cec nodes
Enable CEC in same way it is done for other meson odroid devices

View File

@ -1,7 +1,7 @@
From 2fe5f23b604ad1e33f6d3d81e0cb43b600864694 Mon Sep 17 00:00:00 2001
From ce8cbd1c596495e56bcd69a86cf1f4522c9a22dd Mon Sep 17 00:00:00 2001
From: Alexander Stein <alexander.stein@mailbox.org>
Date: Fri, 26 Nov 2021 15:46:30 +0000
Subject: [PATCH 13/71] FROMGIT: arm64: dts: amlogic: meson-g12: Fix
Subject: [PATCH 14/77] FROMGIT: arm64: dts: amlogic: meson-g12: Fix
thermal-zones indent
This node is currently at /soc/thermal-zones, but the later introduced

View File

@ -1,7 +1,7 @@
From 94bb0ba0af551c23c20896d7f37f96b2c8419f19 Mon Sep 17 00:00:00 2001
From 6a81fd7c45272dde4320b4fa53902d5cec116707 Mon Sep 17 00:00:00 2001
From: Alexander Stein <alexander.stein@mailbox.org>
Date: Fri, 26 Nov 2021 15:47:31 +0000
Subject: [PATCH 14/71] FROMGIT: arm64: dts: amlogic: meson-g12: Fix GPU
Subject: [PATCH 15/77] FROMGIT: arm64: dts: amlogic: meson-g12: Fix GPU
operating point table node name
Starting with commit 94274f20f6bf ("dt-bindings: opp: Convert to DT

View File

@ -1,7 +1,7 @@
From 5370462c68a417ae491feca72209682932cbe319 Mon Sep 17 00:00:00 2001
From 61ff6449eafaa0eb2e7a72dc72e0682e9c9ed917 Mon Sep 17 00:00:00 2001
From: Alexander Stein <alexander.stein@mailbox.org>
Date: Fri, 26 Nov 2021 15:48:22 +0000
Subject: [PATCH 15/71] FROMGIT: arm64: dts: amlogic: Fix SPI NOR flash node
Subject: [PATCH 16/77] FROMGIT: arm64: dts: amlogic: Fix SPI NOR flash node
name for ODROID N2/N2+
Fix the schema warning: "spi-flash@0: $nodename:0: 'spi-flash@0' does

View File

@ -1,7 +1,7 @@
From d8199982b9d87e42a00a67fbff827087047b0e5d Mon Sep 17 00:00:00 2001
From 9468f1f04fd70e97f9f1a19d2c22f71ca581988b Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Oct 2021 04:47:14 +0000
Subject: [PATCH 16/71] FROMGIT: arm64: dts: meson-gxbb-wetek: fix HDMI in
Subject: [PATCH 17/77] FROMGIT: arm64: dts: meson-gxbb-wetek: fix HDMI in
early boot
Mark the VDDIO_AO18 regulator always-on and set hdmi-supply for the hdmi_tx

View File

@ -1,7 +1,7 @@
From cd6b35fda299a2983153cd8758af452765e7be66 Mon Sep 17 00:00:00 2001
From 6eda35778a5046fa9856a352babb6bfaf1426d7b Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Oct 2021 05:13:06 +0000
Subject: [PATCH 17/71] FROMGIT: arm64: dts: meson-gxbb-wetek: fix missing GPIO
Subject: [PATCH 18/77] FROMGIT: arm64: dts: meson-gxbb-wetek: fix missing GPIO
binding
The absence of this binding appears to be harmless in Linux but it breaks

View File

@ -1,7 +1,7 @@
From 774d975dac28f9b83ef449f82eabd91fca862240 Mon Sep 17 00:00:00 2001
From a476bd966a3dca186dfb5bee729fe1473592ee8c Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Oct 2021 04:58:38 +0000
Subject: [PATCH 18/71] FROMGIT: arm64: dts: meson-gxbb-wetek: use updated LED
Subject: [PATCH 19/77] FROMGIT: arm64: dts: meson-gxbb-wetek: use updated LED
bindings
Update the dts to use the newer style of LED bindings.

View File

@ -1,7 +1,7 @@
From 5772ac3d4d2eb52cd9051d3a79f36ec587d08a91 Mon Sep 17 00:00:00 2001
From d1c81fcbe514b49aad19f46b2a2932960d836f4d Mon Sep 17 00:00:00 2001
From: Jerome Brunet <jbrunet@baylibre.com>
Date: Tue, 30 Nov 2021 14:08:06 +0000
Subject: [PATCH 19/71] FROMGIT: arm64: dts: meson: p241: add vcc_5v regulator
Subject: [PATCH 20/77] FROMGIT: arm64: dts: meson: p241: add vcc_5v regulator
Add the VCC_5V regulator, which feeds the HDMI, USB and audio amplifier.

View File

@ -1,7 +1,7 @@
From 7421ba1c742ed81077d147b65995b4c3c0c06ea9 Mon Sep 17 00:00:00 2001
From fa624e21950258dae0b32e1b46969bf4e97a38bc Mon Sep 17 00:00:00 2001
From: Jerome Brunet <jbrunet@baylibre.com>
Date: Tue, 30 Nov 2021 14:08:53 +0000
Subject: [PATCH 20/71] FROMGIT: arm64: dts: meson: p241: add sound support
Subject: [PATCH 21/77] FROMGIT: arm64: dts: meson: p241: add sound support
Add the p241 sound card support. This board can play audio through HDMI
and the internal DAC.

View File

@ -1,7 +1,7 @@
From 879077d4975581151203ff7be708243fa80e6c73 Mon Sep 17 00:00:00 2001
From b16c6a76ebdc94714027ebd61080dfbcb610e72c Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sat, 16 Oct 2021 13:45:35 +0000
Subject: [PATCH 21/71] FROMGIT: clk: meson: gxbb: Fix the SDM_EN bit for MPLL0
Subject: [PATCH 22/77] FROMGIT: clk: meson: gxbb: Fix the SDM_EN bit for MPLL0
on GXBB
There are reports that 48kHz audio does not work on his WeTek Play 2

View File

@ -1,7 +1,7 @@
From 9a0730311c90afef97e77a5f71d335db2c6d563a Mon Sep 17 00:00:00 2001
From 1591b6a07532e9d29dc7c5365bf75b75a68bdc5b Mon Sep 17 00:00:00 2001
From: Fabio Estevam <festevam@denx.de>
Date: Wed, 24 Nov 2021 13:20:05 +0000
Subject: [PATCH 22/71] FROMGIT: ath10k: Fix the MTU size on QCA9377 SDIO
Subject: [PATCH 23/77] FROMGIT: ath10k: Fix the MTU size on QCA9377 SDIO
On an imx6dl-pico-pi board with a QCA9377 SDIO chip, simply trying to
connect via ssh to another machine causes:

View File

@ -1,7 +1,7 @@
From 2aff51a9d669d46e2d440953cce4716bd3ec07ac Mon Sep 17 00:00:00 2001
From 6ff9d87764a157a052306cd1923ff6bed96a0590 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sun, 3 Oct 2021 05:35:48 +0000
Subject: [PATCH 23/71] FROMLIST(v1): ASoC: meson: aiu: Fix HDMI codec control
Subject: [PATCH 24/77] FROMLIST(v1): ASoC: meson: aiu: Fix HDMI codec control
selection
The HDMI controllers on Amlogic Meson SoCs which use the AIU
@ -205,10 +205,10 @@ index c3ea733fce91..2b8575491aeb 100644
static const struct snd_soc_dapm_widget aiu_hdmi_ctrl_widgets[] = {
diff --git a/sound/soc/meson/aiu-encoder-i2s.c b/sound/soc/meson/aiu-encoder-i2s.c
index 932224552146..f8378066d448 100644
index 67729de41a73..88637deb2d7a 100644
--- a/sound/soc/meson/aiu-encoder-i2s.c
+++ b/sound/soc/meson/aiu-encoder-i2s.c
@@ -24,7 +24,6 @@
@@ -23,7 +23,6 @@
#define AIU_CLK_CTRL_AOCLK_INVERT BIT(6)
#define AIU_CLK_CTRL_LRCLK_INVERT BIT(7)
#define AIU_CLK_CTRL_LRCLK_SKEW GENMASK(9, 8)
@ -216,7 +216,7 @@ index 932224552146..f8378066d448 100644
#define AIU_CLK_CTRL_MORE_I2S_DIV GENMASK(5, 0)
#define AIU_CODEC_DAC_LRCLK_CTRL_DIV GENMASK(11, 0)
@@ -208,11 +207,6 @@ static int aiu_encoder_i2s_set_clocks(struct snd_soc_component *component,
@@ -176,11 +175,6 @@ static int aiu_encoder_i2s_set_clocks(struct snd_soc_component *component,
if (ret)
return ret;

View File

@ -1,43 +0,0 @@
From ef16ab5f71fa35fc0ccbc1d866d456300b5b1092 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sun, 5 Dec 2021 19:34:24 +0000
Subject: [PATCH 24/71] FROMLIST(v1): ASoC: meson: aiu: fifo: Add missing
dma_coerce_mask_and_coherent()
The FIFO registers which take an DMA-able address are only 32-bit wide
on AIU. Add dma_coerce_mask_and_coherent() to make the DMA core aware of
this limitation.
Fixes: 6ae9ca9ce986bf ("ASoC: meson: aiu: add i2s and spdif support")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
sound/soc/meson/aiu-fifo.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/sound/soc/meson/aiu-fifo.c b/sound/soc/meson/aiu-fifo.c
index 4ad23267cace..d67ff4cdabd5 100644
--- a/sound/soc/meson/aiu-fifo.c
+++ b/sound/soc/meson/aiu-fifo.c
@@ -5,6 +5,7 @@
#include <linux/bitfield.h>
#include <linux/clk.h>
+#include <linux/dma-mapping.h>
#include <sound/pcm_params.h>
#include <sound/soc.h>
#include <sound/soc-dai.h>
@@ -179,6 +180,11 @@ int aiu_fifo_pcm_new(struct snd_soc_pcm_runtime *rtd,
struct snd_card *card = rtd->card->snd_card;
struct aiu_fifo *fifo = dai->playback_dma_data;
size_t size = fifo->pcm->buffer_bytes_max;
+ int ret;
+
+ ret = dma_coerce_mask_and_coherent(card->dev, DMA_BIT_MASK(32));
+ if (ret)
+ return ret;
snd_pcm_set_managed_buffer_all(rtd->pcm, SNDRV_DMA_TYPE_DEV,
card->dev, size, size);
--
2.17.1

View File

@ -1,139 +0,0 @@
From 9d074170f9183c0d56a6f165d06b98cc6a1a6400 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sun, 5 Dec 2021 02:33:33 +0000
Subject: [PATCH 25/71] FROMLIST(v1): ASoC: meson: aiu: Move AIU_I2S_MISC hold
setting to aiu-fifo-i2s
The out-of-tree vendor driver uses the following approach to set the
AIU_I2S_MISC register:
1) write AIU_MEM_I2S_START_PTR and AIU_MEM_I2S_RD_PTR
2) configure AIU_I2S_MUTE_SWAP[15:0]
3) write AIU_MEM_I2S_END_PTR
4) set AIU_I2S_MISC[2] to 1 (documented as: "put I2S interface in hold
mode")
5) set AIU_I2S_MISC[4] to 1 (depending on the driver revision it always
stays at 1 while for older drivers this bit is unset in step 4)
6) set AIU_I2S_MISC[2] to 0
7) write AIU_MEM_I2S_MASKS
8) toggle AIU_MEM_I2S_CONTROL[0]
9) toggle AIU_MEM_I2S_BUF_CNTL[0]
Additional testing shows that when AIU_I2S_MISC[2] is set to 1 then no
interrupts are generated anymore. The way this bit is managed by the
vendor driver as well as not getting any interrupts can mean that it's
related to the FIFO and not the encoder.
Move setting the AIU_I2S_MISC[2] bit to aiu_fifo_i2s_hw_params() so it
closer resembles the flow in the vendor kernel. While here also
configure AIU_I2S_MISC[4] (documented as: "force each audio data to
left or right according to the bit attached with the audio data")
similar to how the vendor driver does this. This fixes the infamous and
long-standing "machine gun noise" issue (a buffer underrun issue).
Fixes: 6ae9ca9ce986bf ("ASoC: meson: aiu: add i2s and spdif support")
Reported-by: Christian Hewitt <christianshewitt@gmail.com>
Reported-by: Geraldo Nascimento <geraldogabriel@gmail.com>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
sound/soc/meson/aiu-encoder-i2s.c | 33 -------------------------------
sound/soc/meson/aiu-fifo-i2s.c | 12 +++++++++++
2 files changed, 12 insertions(+), 33 deletions(-)
diff --git a/sound/soc/meson/aiu-encoder-i2s.c b/sound/soc/meson/aiu-encoder-i2s.c
index f8378066d448..88637deb2d7a 100644
--- a/sound/soc/meson/aiu-encoder-i2s.c
+++ b/sound/soc/meson/aiu-encoder-i2s.c
@@ -18,7 +18,6 @@
#define AIU_RST_SOFT_I2S_FAST BIT(0)
#define AIU_I2S_DAC_CFG_MSB_FIRST BIT(2)
-#define AIU_I2S_MISC_HOLD_EN BIT(2)
#define AIU_CLK_CTRL_I2S_DIV_EN BIT(0)
#define AIU_CLK_CTRL_I2S_DIV GENMASK(3, 2)
#define AIU_CLK_CTRL_AOCLK_INVERT BIT(6)
@@ -35,37 +34,6 @@ static void aiu_encoder_i2s_divider_enable(struct snd_soc_component *component,
enable ? AIU_CLK_CTRL_I2S_DIV_EN : 0);
}
-static void aiu_encoder_i2s_hold(struct snd_soc_component *component,
- bool enable)
-{
- snd_soc_component_update_bits(component, AIU_I2S_MISC,
- AIU_I2S_MISC_HOLD_EN,
- enable ? AIU_I2S_MISC_HOLD_EN : 0);
-}
-
-static int aiu_encoder_i2s_trigger(struct snd_pcm_substream *substream, int cmd,
- struct snd_soc_dai *dai)
-{
- struct snd_soc_component *component = dai->component;
-
- switch (cmd) {
- case SNDRV_PCM_TRIGGER_START:
- case SNDRV_PCM_TRIGGER_RESUME:
- case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
- aiu_encoder_i2s_hold(component, false);
- return 0;
-
- case SNDRV_PCM_TRIGGER_STOP:
- case SNDRV_PCM_TRIGGER_SUSPEND:
- case SNDRV_PCM_TRIGGER_PAUSE_PUSH:
- aiu_encoder_i2s_hold(component, true);
- return 0;
-
- default:
- return -EINVAL;
- }
-}
-
static int aiu_encoder_i2s_setup_desc(struct snd_soc_component *component,
struct snd_pcm_hw_params *params)
{
@@ -347,7 +315,6 @@ static void aiu_encoder_i2s_shutdown(struct snd_pcm_substream *substream,
}
const struct snd_soc_dai_ops aiu_encoder_i2s_dai_ops = {
- .trigger = aiu_encoder_i2s_trigger,
.hw_params = aiu_encoder_i2s_hw_params,
.hw_free = aiu_encoder_i2s_hw_free,
.set_fmt = aiu_encoder_i2s_set_fmt,
diff --git a/sound/soc/meson/aiu-fifo-i2s.c b/sound/soc/meson/aiu-fifo-i2s.c
index 2388a2d0b3a6..d0a1090d6465 100644
--- a/sound/soc/meson/aiu-fifo-i2s.c
+++ b/sound/soc/meson/aiu-fifo-i2s.c
@@ -20,6 +20,8 @@
#define AIU_MEM_I2S_CONTROL_MODE_16BIT BIT(6)
#define AIU_MEM_I2S_BUF_CNTL_INIT BIT(0)
#define AIU_RST_SOFT_I2S_FAST BIT(0)
+#define AIU_I2S_MISC_HOLD_EN BIT(2)
+#define AIU_I2S_MISC_FORCE_LEFT_RIGHT BIT(4)
#define AIU_FIFO_I2S_BLOCK 256
@@ -90,6 +92,10 @@ static int aiu_fifo_i2s_hw_params(struct snd_pcm_substream *substream,
unsigned int val;
int ret;
+ snd_soc_component_update_bits(component, AIU_I2S_MISC,
+ AIU_I2S_MISC_HOLD_EN,
+ AIU_I2S_MISC_HOLD_EN);
+
ret = aiu_fifo_hw_params(substream, params, dai);
if (ret)
return ret;
@@ -117,6 +123,12 @@ static int aiu_fifo_i2s_hw_params(struct snd_pcm_substream *substream,
snd_soc_component_update_bits(component, AIU_MEM_I2S_MASKS,
AIU_MEM_I2S_MASKS_IRQ_BLOCK, val);
+ snd_soc_component_update_bits(component, AIU_I2S_MISC,
+ AIU_I2S_MISC_FORCE_LEFT_RIGHT,
+ AIU_I2S_MISC_FORCE_LEFT_RIGHT);
+ snd_soc_component_update_bits(component, AIU_I2S_MISC,
+ AIU_I2S_MISC_HOLD_EN, 0);
+
return 0;
}
--
2.17.1

View File

@ -1,7 +1,7 @@
From d814ae9808603b9f9c336c87e0df45f8570f2d3d Mon Sep 17 00:00:00 2001
From 979ac1b2b611891a431f3e7fc9ec4b567fa72d19 Mon Sep 17 00:00:00 2001
From: David Heidelberg <david@ixit.cz>
Date: Sat, 27 Nov 2021 07:23:35 +0000
Subject: [PATCH 26/71] FROMLIST(v1): arm64: dts: meson: make dts use gpio-fan
Subject: [PATCH 25/77] FROMLIST(v1): arm64: dts: meson: make dts use gpio-fan
matrix instead of array
No functional changes.

View File

@ -1,7 +1,7 @@
From 6a53f5161b04f4079faafe3e2c7f07a5e806a743 Mon Sep 17 00:00:00 2001
From e1bb4fdd674b734f1531d5d3c52c995e1792bd62 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <u.kleine-koenig@pengutronix.de>
Date: Sat, 27 Nov 2021 07:29:18 +0000
Subject: [PATCH 27/71] FROMLIST(v1): pwm: meson: Drop always false check from
Subject: [PATCH 26/77] FROMLIST(v1): pwm: meson: Drop always false check from
.request()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8

View File

@ -1,7 +1,7 @@
From 3264849b3829771aa04104a99e6cf901a4ee8053 Mon Sep 17 00:00:00 2001
From 0d0284e7873685033141a3fbc283654340d49e8d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <u.kleine-koenig@pengutronix.de>
Date: Sat, 27 Nov 2021 07:30:03 +0000
Subject: [PATCH 28/71] FROMLIST(v1): pwm: meson: Drop useless check for
Subject: [PATCH 27/77] FROMLIST(v1): pwm: meson: Drop useless check for
channel data being NULL
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8

View File

@ -1,7 +1,7 @@
From c796aad314bc6363997e02e15c3430e5f586d4bf Mon Sep 17 00:00:00 2001
From 878ec28790cb46fd41083798ae6a28dd00f68cef Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <u.kleine-koenig@pengutronix.de>
Date: Sat, 27 Nov 2021 07:31:03 +0000
Subject: [PATCH 29/71] FROMLIST(v1): pwm: meson: Simplify duplicated
Subject: [PATCH 28/77] FROMLIST(v1): pwm: meson: Simplify duplicated
per-channel tracking
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8

View File

@ -1,7 +1,7 @@
From 84006909a914eb189bcff27e5566f78affd7da46 Mon Sep 17 00:00:00 2001
From 7aeac8e806324bf23b3f4f28821673bca186e043 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <u.kleine-koenig@pengutronix.de>
Date: Sat, 27 Nov 2021 07:32:18 +0000
Subject: [PATCH 30/71] FROMLIST(v1): pwm: meson: Drop always false check from
Subject: [PATCH 29/77] FROMLIST(v1): pwm: meson: Drop always false check from
.apply()
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8

View File

@ -1,7 +1,7 @@
From b44918f1bf3acbd64c4a25f033350a17740551e1 Mon Sep 17 00:00:00 2001
From c61f764c0e59d27112ddb650edbb6bd2ed32fad7 Mon Sep 17 00:00:00 2001
From: Maxime Ripard <maxime@cerno.tech>
Date: Sat, 27 Nov 2021 07:26:47 +0000
Subject: [PATCH 31/71] FROMLIST(v1): drm/connector: Add define for HDMI 1.4
Subject: [PATCH 30/77] FROMLIST(v1): drm/connector: Add define for HDMI 1.4
Maximum Pixel Rate
A lot of drivers open-code the HDMI 1.4 maximum pixel rate in their

View File

@ -1,7 +1,7 @@
From cf3c77bd72ec22e3aff26d3ee8e8ad52ba54e733 Mon Sep 17 00:00:00 2001
From 0d06804adcf6abe25eaf1127d4c7d68da7599372 Mon Sep 17 00:00:00 2001
From: Artem Lapkin <art@khadas.com>
Date: Sat, 27 Nov 2021 07:36:59 +0000
Subject: [PATCH 32/71] FROMLIST(v1): watchdog: meson_gxbb_wdt: remove
Subject: [PATCH 31/77] FROMLIST(v1): watchdog: meson_gxbb_wdt: remove
watchdog_stop_on_reboot()
The Meson platform still has some hardware drivers problems for some

View File

@ -1,7 +1,7 @@
From 1a2bf7ec89e3bdd444dabdb2a0ad95deeed0dae4 Mon Sep 17 00:00:00 2001
From 1721a9c2fa9cad3274356eb6791e34c2b60a00f3 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Jan 2021 17:26:42 +0000
Subject: [PATCH 41/71] FROMLIST(v1): arm64: dts: meson: add initial
Subject: [PATCH 32/77] FROMLIST(v2): arm64: dts: meson: add initial
device-tree for H96-Max
The Haochuangyi H96-Max is based on the Amlogic S905X3 reference
@ -30,12 +30,12 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-h96-max.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index e198d17f2ea8..2d7cbebba35a 100644
index 5148cd9e5146..22ca6fd379b0 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -54,6 +54,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-wetek-core2.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-a95xf3-air-100.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-a95xf3-air-1000.dtb
@@ -52,6 +52,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-s912-libretech-pc.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-vega-s96.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-wetek-core2.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-bananapi-m5.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-h96-max.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-khadas-vim3l.dtb

View File

@ -1,22 +1,23 @@
From ba5fc3ea8be0a54ec98766dd0f0a073d0c5eea8a Mon Sep 17 00:00:00 2001
From d0ef069f7fa87675066cb6705873e19c4fb3069f Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Jan 2021 17:25:33 +0000
Subject: [PATCH 40/71] FROMLIST(v1): dt-bindings: arm: amlogic: add H96-Max
Subject: [PATCH 33/77] FROMLIST(v2): dt-bindings: arm: amlogic: add H96-Max
bindings
Add the board binding for the Haochuangyi H96-Max STB device.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Acked-by: Rob Herring <robh@kernel.org>
---
Documentation/devicetree/bindings/arm/amlogic.yaml | 1 +
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
index 1dc793eb35f4..1e792feecc69 100644
index 36081734f720..294c1948c25a 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -177,6 +177,7 @@ properties:
- cyx,a95xf3-air-1000
@@ -173,6 +173,7 @@ properties:
- bananapi,bpi-m5
- hardkernel,odroid-c4
- hardkernel,odroid-hc4
+ - haochuangyi,h96-max

View File

@ -1,22 +1,23 @@
From 7a4bea19df5da8fe19a7e6c09f8480325399dc81 Mon Sep 17 00:00:00 2001
From ad548e7196f1a1ba97e11d7341c56baae9791dcf Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Jan 2021 17:24:07 +0000
Subject: [PATCH 39/71] FROMLIST(v1): dt-bindings: vendor-prefixes: add
Subject: [PATCH 34/77] FROMLIST(v2): dt-bindings: vendor-prefixes: add
haochuangyi prefix
Shenzhen Haochuangyi Technology Co.,Ltd are a manufcaturer of Android
Shenzhen Haochuangyi Technology Co.,Ltd are a manufacturer of Android
Set-Top Box devices.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Acked-by: Rob Herring <robh@kernel.org>
---
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index f1b4afb2876a..52ff63248892 100644
index 66d6432fd781..eddc8a3a07c2 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -483,6 +483,8 @@ patternProperties:
@@ -481,6 +481,8 @@ patternProperties:
deprecated: true
"^hannstar,.*":
description: HannStar Display Corporation

View File

@ -1,7 +1,7 @@
From 5a8f5aa9f84d506c7b4174bc606c6ca4ee3a6904 Mon Sep 17 00:00:00 2001
From a37b3ada3694065ef59bfe390c8d8d899f3dc649 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 3 Jun 2020 18:03:22 +0000
Subject: [PATCH 38/71] FROMLIST(v1): arm64: dts: meson: add initial
Subject: [PATCH 35/77] FROMLIST(v2): arm64: dts: meson: add initial
device-trees for A95XF3-AIR
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@ -25,150 +25,37 @@ designs and ships in multiple configurations:
- 7-segment VFD
- Multicolour case LED 'arc'
The device-tree with -100 suffix supports models with 10/100 Ethernet
and with -1000 suffix supports models with Gigabit Ethernet.
The device-tree with -gbit suffix supports models with Gigabit
Ethernet, and the device-tree with no suffix supports models
with 10/100 Ethernet.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm64/boot/dts/amlogic/Makefile | 2 +
.../dts/amlogic/meson-sm1-a95xf3-air-100.dts | 108 +++++++++++++++
.../dts/amlogic/meson-sm1-a95xf3-air-1000.dts | 129 ++++++++++++++++++
.../dts/amlogic/meson-sm1-a95xf3-air-gbit.dts | 129 ++++++++++++++++++
.../boot/dts/amlogic/meson-sm1-a95xf3-air.dts | 108 +++++++++++++++
3 files changed, 239 insertions(+)
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-100.dts
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-1000.dts
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index a0c1a7fbae57..e198d17f2ea8 100644
index 22ca6fd379b0..14b4c2111f55 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -51,6 +51,8 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-rbox-pro.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-s912-libretech-pc.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-vega-s96.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-wetek-core2.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-a95xf3-air-100.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-a95xf3-air-1000.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-a95xf3-air.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-a95xf3-air-gbit.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-bananapi-m5.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-h96-max.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-khadas-vim3l.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-odroid-c4.dtb
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-100.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-100.dts
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
new file mode 100644
index 000000000000..5158cc40485e
index 000000000000..d1debccdc1c2
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-100.dts
@@ -0,0 +1,108 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 BayLibre SAS. All rights reserved.
+ * Copyright (c) 2020 Christian Hewitt <christianshewitt@gmail.com>
+ */
+
+/dts-v1/;
+
+#include "meson-sm1-ac2xx.dtsi"
+#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
+
+/ {
+ compatible = "cyx,a95xf3-air-100", "amlogic,sm1";
+ model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
+
+ sound {
+ compatible = "amlogic,axg-sound-card";
+ model = "A95XF3-AIR";
+ audio-aux-devs = <&tdmout_b>;
+ audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
+ "TDMOUT_B IN 1", "FRDDR_B OUT 1",
+ "TDMOUT_B IN 2", "FRDDR_C OUT 1",
+ "TDM_B Playback", "TDMOUT_B OUT";
+
+ assigned-clocks = <&clkc CLKID_MPLL2>,
+ <&clkc CLKID_MPLL0>,
+ <&clkc CLKID_MPLL1>;
+ assigned-clock-parents = <0>, <0>, <0>;
+ assigned-clock-rates = <294912000>,
+ <270950400>,
+ <393216000>;
+ status = "okay";
+
+ dai-link-0 {
+ sound-dai = <&frddr_a>;
+ };
+
+ dai-link-1 {
+ sound-dai = <&frddr_b>;
+ };
+
+ dai-link-2 {
+ sound-dai = <&frddr_c>;
+ };
+
+ /* 8ch hdmi interface */
+ dai-link-3 {
+ sound-dai = <&tdmif_b>;
+ dai-format = "i2s";
+ dai-tdm-slot-tx-mask-0 = <1 1>;
+ dai-tdm-slot-tx-mask-1 = <1 1>;
+ dai-tdm-slot-tx-mask-2 = <1 1>;
+ dai-tdm-slot-tx-mask-3 = <1 1>;
+ mclk-fs = <256>;
+
+ codec {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
+ };
+ };
+
+ /* hdmi glue */
+ dai-link-4 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
+
+ codec {
+ sound-dai = <&hdmi_tx>;
+ };
+ };
+ };
+};
+
+&arb {
+ status = "okay";
+};
+
+&clkc_audio {
+ status = "okay";
+};
+
+&ethmac {
+ status = "okay";
+ phy-handle = <&internal_ephy>;
+ phy-mode = "rmii";
+};
+
+&frddr_a {
+ status = "okay";
+};
+
+&frddr_b {
+ status = "okay";
+};
+
+&frddr_c {
+ status = "okay";
+};
+
+&tdmif_b {
+ status = "okay";
+};
+
+&tdmout_b {
+ status = "okay";
+};
+
+&tohdmitx {
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-1000.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-1000.dts
new file mode 100644
index 000000000000..c87d948fa3e6
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-1000.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air-gbit.dts
@@ -0,0 +1,129 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
@ -182,7 +69,7 @@ index 000000000000..c87d948fa3e6
+#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
+
+/ {
+ compatible = "cyx,a95xf3-air-1000", "amlogic,sm1";
+ compatible = "cyx,a95xf3-air-gbit", "amlogic,sm1";
+ model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
+
+ sound {
@ -299,6 +186,120 @@ index 000000000000..c87d948fa3e6
+&tohdmitx {
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
new file mode 100644
index 000000000000..c94f2870b78b
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-a95xf3-air.dts
@@ -0,0 +1,108 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 BayLibre SAS. All rights reserved.
+ * Copyright (c) 2020 Christian Hewitt <christianshewitt@gmail.com>
+ */
+
+/dts-v1/;
+
+#include "meson-sm1-ac2xx.dtsi"
+#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
+
+/ {
+ compatible = "cyx,a95xf3-air", "amlogic,sm1";
+ model = "Shenzhen CYX Industrial Co., Ltd A95XF3-AIR";
+
+ sound {
+ compatible = "amlogic,axg-sound-card";
+ model = "A95XF3-AIR";
+ audio-aux-devs = <&tdmout_b>;
+ audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
+ "TDMOUT_B IN 1", "FRDDR_B OUT 1",
+ "TDMOUT_B IN 2", "FRDDR_C OUT 1",
+ "TDM_B Playback", "TDMOUT_B OUT";
+
+ assigned-clocks = <&clkc CLKID_MPLL2>,
+ <&clkc CLKID_MPLL0>,
+ <&clkc CLKID_MPLL1>;
+ assigned-clock-parents = <0>, <0>, <0>;
+ assigned-clock-rates = <294912000>,
+ <270950400>,
+ <393216000>;
+ status = "okay";
+
+ dai-link-0 {
+ sound-dai = <&frddr_a>;
+ };
+
+ dai-link-1 {
+ sound-dai = <&frddr_b>;
+ };
+
+ dai-link-2 {
+ sound-dai = <&frddr_c>;
+ };
+
+ /* 8ch hdmi interface */
+ dai-link-3 {
+ sound-dai = <&tdmif_b>;
+ dai-format = "i2s";
+ dai-tdm-slot-tx-mask-0 = <1 1>;
+ dai-tdm-slot-tx-mask-1 = <1 1>;
+ dai-tdm-slot-tx-mask-2 = <1 1>;
+ dai-tdm-slot-tx-mask-3 = <1 1>;
+ mclk-fs = <256>;
+
+ codec {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
+ };
+ };
+
+ /* hdmi glue */
+ dai-link-4 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
+
+ codec {
+ sound-dai = <&hdmi_tx>;
+ };
+ };
+ };
+};
+
+&arb {
+ status = "okay";
+};
+
+&clkc_audio {
+ status = "okay";
+};
+
+&ethmac {
+ status = "okay";
+ phy-handle = <&internal_ephy>;
+ phy-mode = "rmii";
+};
+
+&frddr_a {
+ status = "okay";
+};
+
+&frddr_b {
+ status = "okay";
+};
+
+&frddr_c {
+ status = "okay";
+};
+
+&tdmif_b {
+ status = "okay";
+};
+
+&tdmout_b {
+ status = "okay";
+};
+
+&tohdmitx {
+ status = "okay";
+};
--
2.17.1

View File

@ -1,13 +1,13 @@
From 281384b1d2535b236a093d115bdf8361a419880f Mon Sep 17 00:00:00 2001
From b5f8b1bae8606ca9a93b9298c27f3bdbd471502e Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 29 Jun 2020 15:54:45 +0000
Subject: [PATCH 37/71] FROMLIST(v1): dt-bindings: arm: amlogic: add A95XF3-AIR
Subject: [PATCH 36/77] FROMLIST(v2): dt-bindings: arm: amlogic: add A95XF3-AIR
bindings
Add board bindings for the CYX A95XF3-AIR set-top box which ships
with model variants distiguished by Ethernet configuration: models
using internal 10/100 PHY have a -100 suffix, while models using
external Gigabit PHY have a -1000 suffix.
using external Gigabit PHY have a -gbit suffix, while models using
an internal 10/100 PHY have no suffix.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
@ -15,18 +15,18 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
index e9ab0ffe8be7..1dc793eb35f4 100644
index 294c1948c25a..9176ba3eebab 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -173,6 +173,8 @@ properties:
- amediatech,x96-air-100
- amediatech,x96-air-1000
@@ -171,6 +171,8 @@ properties:
items:
- enum:
- bananapi,bpi-m5
+ - cyx,a95xf3-air-100
+ - cyx,a95xf3-air-1000
+ - cyx,a95xf3-air
+ - cyx,a95xf3-air-gbit
- hardkernel,odroid-c4
- hardkernel,odroid-hc4
- khadas,vim3l
- haochuangyi,h96-max
--
2.17.1

View File

@ -1,19 +1,20 @@
From 2ca8292f3d20489223bed83d3bc16b5e76cfd9cd Mon Sep 17 00:00:00 2001
From a3abb4c8fb31e5a329fd56355a197dcf401747b0 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 30 Nov 2021 05:00:45 +0000
Subject: [PATCH 36/71] FROMLIST(v1): dt-bindings: vendor-prefixes: add cyx
Subject: [PATCH 37/77] FROMLIST(v2): dt-bindings: vendor-prefixes: add cyx
prefix
Shenzhen CYX Industrial Co., Ltd are a manufacturer of Android
Set-Top Box devices.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
Acked-by: Rob Herring <robh@kernel.org>
---
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 66d6432fd781..f1b4afb2876a 100644
index eddc8a3a07c2..52ff63248892 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -279,6 +279,8 @@ patternProperties:

View File

@ -1,7 +1,7 @@
From 8fd19097221a773829b88f77ed1a9b0c3ee15cbb Mon Sep 17 00:00:00 2001
From 3107f97d3b7f7dede835313313d5f91fa141ade2 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 24 Jun 2020 15:04:10 +0000
Subject: [PATCH 35/71] FROMLIST(v1): arm64: dts: meson: add initial
Subject: [PATCH 38/77] FROMLIST(v2): arm64: dts: meson: add initial
device-trees for X96-AIR
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@ -25,152 +25,35 @@ designs and ships in multiple configurations:
- 1x Reset/Update button (in AV jack)
- 7-segment VFD
The device-tree with -100 suffix supports models with 10/100 Ethernet
and with -1000 suffix supports models with Gigabit Ethernet.
The device-tree with -gbit suffix supports models with Gigabit
Ethernet, and the device-tree with no suffix supports models
with 10/100 Ethernet.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm64/boot/dts/amlogic/Makefile | 2 +
.../dts/amlogic/meson-sm1-x96-air-100.dts | 112 +++++++++++++++
.../dts/amlogic/meson-sm1-x96-air-1000.dts | 133 ++++++++++++++++++
.../dts/amlogic/meson-sm1-x96-air-gbit.dts | 133 ++++++++++++++++++
.../boot/dts/amlogic/meson-sm1-x96-air.dts | 112 +++++++++++++++
3 files changed, 247 insertions(+)
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-100.dts
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-1000.dts
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 5148cd9e5146..a0c1a7fbae57 100644
index 14b4c2111f55..868d74044072 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -56,4 +56,6 @@ dtb-$(CONFIG_ARCH_MESON) += meson-sm1-khadas-vim3l.dtb
@@ -59,4 +59,6 @@ dtb-$(CONFIG_ARCH_MESON) += meson-sm1-khadas-vim3l.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-odroid-c4.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-odroid-hc4.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-sm1-sei610.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-x96-air-100.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-x96-air-1000.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-x96-air.dtb
+dtb-$(CONFIG_ARCH_MESON) += meson-sm1-x96-air-gbit.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-a1-ad401.dtb
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-100.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-100.dts
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
new file mode 100644
index 000000000000..d9e5bc98a46a
index 000000000000..7e1a74046ba5
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-100.dts
@@ -0,0 +1,112 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 BayLibre SAS. All rights reserved.
+ * Copyright (c) 2020 Christian Hewitt <christianshewitt@gmail.com>
+ */
+
+/dts-v1/;
+
+#include "meson-sm1-ac2xx.dtsi"
+#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
+
+/ {
+ compatible = "amediatech,x96-air-100", "amlogic,sm1";
+ model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
+
+ sound {
+ compatible = "amlogic,axg-sound-card";
+ model = "X96-AIR";
+ audio-aux-devs = <&tdmout_b>;
+ audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
+ "TDMOUT_B IN 1", "FRDDR_B OUT 1",
+ "TDMOUT_B IN 2", "FRDDR_C OUT 1",
+ "TDM_B Playback", "TDMOUT_B OUT";
+
+ assigned-clocks = <&clkc CLKID_MPLL2>,
+ <&clkc CLKID_MPLL0>,
+ <&clkc CLKID_MPLL1>;
+ assigned-clock-parents = <0>, <0>, <0>;
+ assigned-clock-rates = <294912000>,
+ <270950400>,
+ <393216000>;
+ status = "okay";
+
+ dai-link-0 {
+ sound-dai = <&frddr_a>;
+ };
+
+ dai-link-1 {
+ sound-dai = <&frddr_b>;
+ };
+
+ dai-link-2 {
+ sound-dai = <&frddr_c>;
+ };
+
+ /* 8ch hdmi interface */
+ dai-link-3 {
+ sound-dai = <&tdmif_b>;
+ dai-format = "i2s";
+ dai-tdm-slot-tx-mask-0 = <1 1>;
+ dai-tdm-slot-tx-mask-1 = <1 1>;
+ dai-tdm-slot-tx-mask-2 = <1 1>;
+ dai-tdm-slot-tx-mask-3 = <1 1>;
+ mclk-fs = <256>;
+
+ codec {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
+ };
+ };
+
+ /* hdmi glue */
+ dai-link-4 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
+
+ codec {
+ sound-dai = <&hdmi_tx>;
+ };
+ };
+ };
+};
+
+&arb {
+ status = "okay";
+};
+
+&clkc_audio {
+ status = "okay";
+};
+
+&ethmac {
+ status = "okay";
+ phy-handle = <&internal_ephy>;
+ phy-mode = "rmii";
+};
+
+&frddr_a {
+ status = "okay";
+};
+
+&frddr_b {
+ status = "okay";
+};
+
+&frddr_c {
+ status = "okay";
+};
+
+&ir {
+ linux,rc-map-name = "rc-beelink-gs1";
+};
+
+&tdmif_b {
+ status = "okay";
+};
+
+&tdmout_b {
+ status = "okay";
+};
+
+&tohdmitx {
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-1000.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-1000.dts
new file mode 100644
index 000000000000..8047c6b116fe
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-1000.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air-gbit.dts
@@ -0,0 +1,133 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
@ -184,7 +67,7 @@ index 000000000000..8047c6b116fe
+#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
+
+/ {
+ compatible = "amediatech,x96-air-1000", "amlogic,sm1";
+ compatible = "amediatech,x96-air-gbit", "amlogic,sm1";
+ model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
+
+ sound {
@ -305,6 +188,124 @@ index 000000000000..8047c6b116fe
+&tohdmitx {
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
new file mode 100644
index 000000000000..cd93d798f2a3
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-x96-air.dts
@@ -0,0 +1,112 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 BayLibre SAS. All rights reserved.
+ * Copyright (c) 2020 Christian Hewitt <christianshewitt@gmail.com>
+ */
+
+/dts-v1/;
+
+#include "meson-sm1-ac2xx.dtsi"
+#include <dt-bindings/sound/meson-g12a-tohdmitx.h>
+
+/ {
+ compatible = "amediatech,x96-air", "amlogic,sm1";
+ model = "Shenzhen Amediatech Technology Co., Ltd X96 Air";
+
+ sound {
+ compatible = "amlogic,axg-sound-card";
+ model = "X96-AIR";
+ audio-aux-devs = <&tdmout_b>;
+ audio-routing = "TDMOUT_B IN 0", "FRDDR_A OUT 1",
+ "TDMOUT_B IN 1", "FRDDR_B OUT 1",
+ "TDMOUT_B IN 2", "FRDDR_C OUT 1",
+ "TDM_B Playback", "TDMOUT_B OUT";
+
+ assigned-clocks = <&clkc CLKID_MPLL2>,
+ <&clkc CLKID_MPLL0>,
+ <&clkc CLKID_MPLL1>;
+ assigned-clock-parents = <0>, <0>, <0>;
+ assigned-clock-rates = <294912000>,
+ <270950400>,
+ <393216000>;
+ status = "okay";
+
+ dai-link-0 {
+ sound-dai = <&frddr_a>;
+ };
+
+ dai-link-1 {
+ sound-dai = <&frddr_b>;
+ };
+
+ dai-link-2 {
+ sound-dai = <&frddr_c>;
+ };
+
+ /* 8ch hdmi interface */
+ dai-link-3 {
+ sound-dai = <&tdmif_b>;
+ dai-format = "i2s";
+ dai-tdm-slot-tx-mask-0 = <1 1>;
+ dai-tdm-slot-tx-mask-1 = <1 1>;
+ dai-tdm-slot-tx-mask-2 = <1 1>;
+ dai-tdm-slot-tx-mask-3 = <1 1>;
+ mclk-fs = <256>;
+
+ codec {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
+ };
+ };
+
+ /* hdmi glue */
+ dai-link-4 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
+
+ codec {
+ sound-dai = <&hdmi_tx>;
+ };
+ };
+ };
+};
+
+&arb {
+ status = "okay";
+};
+
+&clkc_audio {
+ status = "okay";
+};
+
+&ethmac {
+ status = "okay";
+ phy-handle = <&internal_ephy>;
+ phy-mode = "rmii";
+};
+
+&frddr_a {
+ status = "okay";
+};
+
+&frddr_b {
+ status = "okay";
+};
+
+&frddr_c {
+ status = "okay";
+};
+
+&ir {
+ linux,rc-map-name = "rc-beelink-gs1";
+};
+
+&tdmif_b {
+ status = "okay";
+};
+
+&tdmout_b {
+ status = "okay";
+};
+
+&tohdmitx {
+ status = "okay";
+};
--
2.17.1

View File

@ -1,13 +1,13 @@
From 70f1885edac68b9b87c7a84939d55736f97d630d Mon Sep 17 00:00:00 2001
From 75e9d624bd689cdfaa92f33c61bcc6c20aa55909 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 18 May 2020 23:23:40 +0000
Subject: [PATCH 34/71] FROMLIST(v1): dt-bindings: arm: amlogic: add X96-AIR
Subject: [PATCH 39/77] FROMLIST(v2): dt-bindings: arm: amlogic: add X96-AIR
bindings
Add board bindings for the Amediatech X96-AIR STB which ships with
model variants distiguished by Ethernet configuration: models using
internal 10/100 PHY have a -100 suffix, while models using external
Gigabit PHY have a -1000 suffix.
an external Gigabit PHY have a -gbit suffix, while models using an
internal 10/100 PHY have no suffix.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
@ -15,18 +15,18 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
1 file changed, 2 insertions(+)
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
index 36081734f720..e9ab0ffe8be7 100644
index 9176ba3eebab..7c3627d9c773 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -170,6 +170,8 @@ properties:
- description: Boards with the Amlogic Meson SM1 S905X3/D3/Y3 SoC
items:
- enum:
+ - amediatech,x96-air-100
+ - amediatech,x96-air-1000
+ - amediatech,x96-air
+ - amediatech,x96-air-gbit
- bananapi,bpi-m5
- hardkernel,odroid-c4
- hardkernel,odroid-hc4
- cyx,a95xf3-air
- cyx,a95xf3-air-gbit
--
2.17.1

View File

@ -1,7 +1,7 @@
From 53e48359e0382879afa5c4b0d63e389779e12e83 Mon Sep 17 00:00:00 2001
From 872e2377de142dde5671f6e58996dae52efa5a87 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 24 Jun 2020 12:41:46 +0000
Subject: [PATCH 33/71] FROMLIST(v1): arm64: dts: meson: add common SM1 ac2xx
Subject: [PATCH 40/77] FROMLIST(v2): arm64: dts: meson: add common SM1 ac2xx
dtsi
Add a common dtsi for Android STB devices based on the Amlogic S905X3

View File

@ -1,7 +1,7 @@
From 99dd1222b8bff38d88de9b98264292aa65c43753 Mon Sep 17 00:00:00 2001
From 56fb5117d3774b64232e1dc6f7fdcf05e23785a9 Mon Sep 17 00:00:00 2001
From: Amjad Ouled-Ameur <aouledameur@baylibre.com>
Date: Mon, 6 Dec 2021 04:25:36 +0000
Subject: [PATCH 42/71] FROMLIST(v4): phy: amlogic: phy-meson-gxl-usb2: fix
Subject: [PATCH 41/77] FROMLIST(v4): phy: amlogic: phy-meson-gxl-usb2: fix
shared reset controller use
Use reset_control_rearm() call if an error occurs in case

View File

@ -1,7 +1,7 @@
From 3ef02f4bce0f0035941d37005cc3a8a57e36c217 Mon Sep 17 00:00:00 2001
From 2759c4bfa7020679addde5aa2514381ba6efd0f5 Mon Sep 17 00:00:00 2001
From: Amjad Ouled-Ameur <aouledameur@baylibre.com>
Date: Mon, 6 Dec 2021 04:26:22 +0000
Subject: [PATCH 43/71] FROMLIST(v4): phy: amlogic: meson8b-usb2: Use
Subject: [PATCH 42/77] FROMLIST(v4): phy: amlogic: meson8b-usb2: Use
dev_err_probe()
Use the existing dev_err_probe() helper instead of open-coding the same

View File

@ -1,7 +1,7 @@
From b0a1060c2eb88bd8f4b3958193658024b01fedb7 Mon Sep 17 00:00:00 2001
From 0d3402f4682cb54b535e853c147f1929574e5388 Mon Sep 17 00:00:00 2001
From: Amjad Ouled-Ameur <aouledameur@baylibre.com>
Date: Mon, 6 Dec 2021 04:27:13 +0000
Subject: [PATCH 44/71] FROMLIST(v4): phy: amlogic: meson8b-usb2: fix shared
Subject: [PATCH 43/77] FROMLIST(v4): phy: amlogic: meson8b-usb2: fix shared
reset control use
Use reset_control_rearm() call if an error occurs in case

View File

@ -1,7 +1,7 @@
From 3162a580bd5c99642c29b3050705cf5c6b4e48b4 Mon Sep 17 00:00:00 2001
From aa552d0bcc52ddc278d194a5a9e00ca5108c7013 Mon Sep 17 00:00:00 2001
From: Chen-Yu Tsai <wenst@chromium.org>
Date: Wed, 15 Dec 2021 03:51:07 +0000
Subject: [PATCH 46/71] FROMLIST(v2): media: v4l2-mem2mem: Apply
Subject: [PATCH 44/77] FROMLIST(v2): media: v4l2-mem2mem: Apply
DST_QUEUE_OFF_BASE on MMAP buffers across ioctls
DST_QUEUE_OFF_BASE is applied to offset/mem_offset on MMAP capture buffers

View File

@ -1,7 +1,7 @@
From 764514f817de4e7b5053cea6b17983ed37cc7989 Mon Sep 17 00:00:00 2001
From 7c4247b930cf455d939a5d7f86851a43552fa978 Mon Sep 17 00:00:00 2001
From: Artem Lapkin <art@khadas.com>
Date: Thu, 16 Dec 2021 16:10:58 +0000
Subject: [PATCH 47/71] FROMLIST(v1): arm64: dts: meson-sm1: add spdifin
Subject: [PATCH 45/77] FROMLIST(v1): arm64: dts: meson-sm1: add spdifin
spdifout nodes
Add spdifin spdifout nodes for Amlogic SM1 SoCs.

View File

@ -1,95 +0,0 @@
From ae8697e818bc8d9c3fcb73270f063cad77c9d18f Mon Sep 17 00:00:00 2001
From: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Date: Wed, 15 Dec 2021 03:49:15 +0000
Subject: [PATCH 45/71] FROMLIST(v3): media: meson: vdec: potential dereference
of null pointer
In amvdec_add_ts(), there is a dereference of kzalloc(), which could lead
to a NULL pointer dereference on failure of kzalloc().
Fix this bug by adding a NULL check of new_ts.
This bug was found by a static analyzer[1].
Builds with CONFIG_VIDEO_MESON_VDEC=m show no new warnings,
and our static analyzer no longer warns about this code.
Fixes: 876f123b8956 ("media: meson: vdec: bring up to compliance")
Signed-off-by: Zhou Qingyang <zhou1615@umn.edu>
---
drivers/staging/media/meson/vdec/esparser.c | 11 ++++++++++-
drivers/staging/media/meson/vdec/vdec_helpers.c | 8 ++++++--
drivers/staging/media/meson/vdec/vdec_helpers.h | 2 +-
3 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/drivers/staging/media/meson/vdec/esparser.c b/drivers/staging/media/meson/vdec/esparser.c
index db7022707ff8..819fb937d1a8 100644
--- a/drivers/staging/media/meson/vdec/esparser.c
+++ b/drivers/staging/media/meson/vdec/esparser.c
@@ -328,9 +328,18 @@ esparser_queue(struct amvdec_session *sess, struct vb2_v4l2_buffer *vbuf)
offset = esparser_get_offset(sess);
- amvdec_add_ts(sess, vb->timestamp, vbuf->timecode, offset, vbuf->flags);
+ ret = amvdec_add_ts(sess, vb->timestamp, vbuf->timecode, offset, vbuf->flags);
+ if (!ret) {
+ v4l2_m2m_buf_done(vbuf, VB2_BUF_STATE_ERROR);
+ return ret;
+ }
+
dev_dbg(core->dev, "esparser: ts = %llu pld_size = %u offset = %08X flags = %08X\n",
vb->timestamp, payload_size, offset, vbuf->flags);
+ if (ret) {
+ v4l2_m2m_buf_done(vbuf, VB2_BUF_STATE_ERROR);
+ return ret;
+ }
vbuf->flags = 0;
vbuf->field = V4L2_FIELD_NONE;
diff --git a/drivers/staging/media/meson/vdec/vdec_helpers.c b/drivers/staging/media/meson/vdec/vdec_helpers.c
index b9125c295d1d..06fd66539797 100644
--- a/drivers/staging/media/meson/vdec/vdec_helpers.c
+++ b/drivers/staging/media/meson/vdec/vdec_helpers.c
@@ -227,13 +227,16 @@ int amvdec_set_canvases(struct amvdec_session *sess,
}
EXPORT_SYMBOL_GPL(amvdec_set_canvases);
-void amvdec_add_ts(struct amvdec_session *sess, u64 ts,
- struct v4l2_timecode tc, u32 offset, u32 vbuf_flags)
+int amvdec_add_ts(struct amvdec_session *sess, u64 ts,
+ struct v4l2_timecode tc, u32 offset, u32 vbuf_flags)
{
struct amvdec_timestamp *new_ts;
unsigned long flags;
new_ts = kzalloc(sizeof(*new_ts), GFP_KERNEL);
+ if (!new_ts)
+ return -ENOMEM;
+
new_ts->ts = ts;
new_ts->tc = tc;
new_ts->offset = offset;
@@ -242,6 +245,7 @@ void amvdec_add_ts(struct amvdec_session *sess, u64 ts,
spin_lock_irqsave(&sess->ts_spinlock, flags);
list_add_tail(&new_ts->list, &sess->timestamps);
spin_unlock_irqrestore(&sess->ts_spinlock, flags);
+ return 0;
}
EXPORT_SYMBOL_GPL(amvdec_add_ts);
diff --git a/drivers/staging/media/meson/vdec/vdec_helpers.h b/drivers/staging/media/meson/vdec/vdec_helpers.h
index 88137d15aa3a..2c569cf62b7b 100644
--- a/drivers/staging/media/meson/vdec/vdec_helpers.h
+++ b/drivers/staging/media/meson/vdec/vdec_helpers.h
@@ -56,7 +56,7 @@ void amvdec_dst_buf_done_offset(struct amvdec_session *sess,
* @offset: offset in the VIFIFO where the associated packet was written
* @flags: the vb2_v4l2_buffer flags
*/
-void amvdec_add_ts(struct amvdec_session *sess, u64 ts,
+int amvdec_add_ts(struct amvdec_session *sess, u64 ts,
struct v4l2_timecode tc, u32 offset, u32 flags);
void amvdec_remove_ts(struct amvdec_session *sess, u64 ts);
--
2.17.1

View File

@ -0,0 +1,54 @@
From 457c8c47a346376eb7be94b0da1fd20c488e04fa Mon Sep 17 00:00:00 2001
From: Gary Bisson <gary.bisson@boundarydevices.com>
Date: Mon, 3 Jan 2022 16:49:28 +0000
Subject: [PATCH 46/77] FROMLIST(v1): pinctrl: meson-g12a: add more pwm_f
options
Add missing PWM_F pin muxing for GPIOA_11 and GPIOZ_12.
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
drivers/pinctrl/meson/pinctrl-meson-g12a.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/pinctrl/meson/pinctrl-meson-g12a.c b/drivers/pinctrl/meson/pinctrl-meson-g12a.c
index cd9656b13836..d182a575981e 100644
--- a/drivers/pinctrl/meson/pinctrl-meson-g12a.c
+++ b/drivers/pinctrl/meson/pinctrl-meson-g12a.c
@@ -283,6 +283,8 @@ static const unsigned int pwm_d_x6_pins[] = { GPIOX_6 };
static const unsigned int pwm_e_pins[] = { GPIOX_16 };
/* pwm_f */
+static const unsigned int pwm_f_z_pins[] = { GPIOZ_12 };
+static const unsigned int pwm_f_a_pins[] = { GPIOA_11 };
static const unsigned int pwm_f_x_pins[] = { GPIOX_7 };
static const unsigned int pwm_f_h_pins[] = { GPIOH_5 };
@@ -618,6 +620,7 @@ static struct meson_pmx_group meson_g12a_periphs_groups[] = {
GROUP(tdm_c_dout2_z, 4),
GROUP(tdm_c_dout3_z, 4),
GROUP(mclk1_z, 4),
+ GROUP(pwm_f_z, 5),
/* bank GPIOX */
GROUP(sdio_d0, 1),
@@ -768,6 +771,7 @@ static struct meson_pmx_group meson_g12a_periphs_groups[] = {
GROUP(tdm_c_dout3_a, 2),
GROUP(mclk0_a, 1),
GROUP(mclk1_a, 2),
+ GROUP(pwm_f_a, 3),
};
/* uart_ao_a */
@@ -1069,7 +1073,7 @@ static const char * const pwm_e_groups[] = {
};
static const char * const pwm_f_groups[] = {
- "pwm_f_x", "pwm_f_h",
+ "pwm_f_z", "pwm_f_a", "pwm_f_x", "pwm_f_h",
};
static const char * const cec_ao_a_h_groups[] = {
--
2.17.1

View File

@ -0,0 +1,43 @@
From c65de8bbd88a7b70c2ef63310627d14f3ca3847f Mon Sep 17 00:00:00 2001
From: Gary Bisson <gary.bisson@boundarydevices.com>
Date: Mon, 3 Jan 2022 16:51:30 +0000
Subject: [PATCH 47/77] FROMLIST(v1): arm64: dts: meson-g12-common: add more
pwm_f options
Add missing PWM_F pin muxing for GPIOA_11 and GPIOZ_12.
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
.../arm64/boot/dts/amlogic/meson-g12-common.dtsi | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
index 4f4c8e7d79d2..8fdf6890b370 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
@@ -839,6 +839,22 @@
};
};
+ pwm_f_z_pins: pwm-f-z {
+ mux {
+ groups = "pwm_f_z";
+ function = "pwm_f";
+ bias-disable;
+ };
+ };
+
+ pwm_f_a_pins: pwm-f-a {
+ mux {
+ groups = "pwm_f_a";
+ function = "pwm_f";
+ bias-disable;
+ };
+ };
+
pwm_f_x_pins: pwm-f-x {
mux {
groups = "pwm_f_x";
--
2.17.1

View File

@ -0,0 +1,56 @@
From 9b50ef3109f67f36a30f394124f2b68ba0736b07 Mon Sep 17 00:00:00 2001
From: Gary Bisson <gary.bisson@boundarydevices.com>
Date: Mon, 3 Jan 2022 16:52:18 +0000
Subject: [PATCH 48/77] FROMLIST(v1): arm64: dts: meson-g12-common: add
uart_ao_b pins muxing
- RX/TX signals can be mapped on 2 different pairs of pins so supporting
both options
- RTS/CTS signals however only have 1 option available
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
---
.../boot/dts/amlogic/meson-g12-common.dtsi | 27 +++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
index 8fdf6890b370..282962e856aa 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
@@ -1897,6 +1897,33 @@
};
};
+ uart_ao_b_1_pins: uart-ao-b-1 {
+ mux {
+ groups = "uart_ao_b_tx_2",
+ "uart_ao_b_rx_3";
+ function = "uart_ao_b";
+ bias-disable;
+ };
+ };
+
+ uart_ao_b_2_pins: uart-ao-b-2 {
+ mux {
+ groups = "uart_ao_b_tx_8",
+ "uart_ao_b_rx_9";
+ function = "uart_ao_b";
+ bias-disable;
+ };
+ };
+
+ uart_ao_b_cts_rts_pins: uart-ao-b-cts-rts {
+ mux {
+ groups = "uart_ao_b_cts",
+ "uart_ao_b_rts";
+ function = "uart_ao_b";
+ bias-disable;
+ };
+ };
+
pwm_a_e_pins: pwm-a-e {
mux {
groups = "pwm_a_e";
--
2.17.1

View File

@ -0,0 +1,35 @@
From c1ef125f704c554038b80f5c915a1b409885881b Mon Sep 17 00:00:00 2001
From: Sergey Shtylyov <s.shtylyov@omp.ru>
Date: Fri, 24 Dec 2021 06:09:57 +0000
Subject: [PATCH 49/77] FROMLIST(v1): mmc: meson-gx: fix deferred probing
The driver overrides the error codes and IRQ0 returned by platform_get_irq()
to -EINVAL, so if it returns -EPROBE_DEFER, the driver will fail the probe
permanently instead of the deferred probing. Switch to propagating the error
codes upstream. IRQ0 is no longer returned by platform_get_irq(), so we now
can safely ignore it...
Fixes: cbcaac6d7dd2 ("mmc: meson-gx-mmc: Fix platform_get_irq's error checking")
Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>
---
drivers/mmc/host/meson-gx-mmc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c
index 8f36536cb1b6..c765653ee4d0 100644
--- a/drivers/mmc/host/meson-gx-mmc.c
+++ b/drivers/mmc/host/meson-gx-mmc.c
@@ -1182,8 +1182,8 @@ static int meson_mmc_probe(struct platform_device *pdev)
}
host->irq = platform_get_irq(pdev, 0);
- if (host->irq <= 0) {
- ret = -EINVAL;
+ if (host->irq < 0) {
+ ret = host->irq;
goto free_host;
}
--
2.17.1

View File

@ -1,7 +1,7 @@
From 0ef0caa00235a6236a4ee1cd064fca9ba229d915 Mon Sep 17 00:00:00 2001
From 8875c4889e6e176637eaeee77901271900713a51 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Thu, 14 Jan 2021 17:43:02 +0100
Subject: [PATCH 48/71] WIP: mmc: meson-gx-mmc: set core clock phase to 270
Subject: [PATCH 50/77] WIP: mmc: meson-gx-mmc: set core clock phase to 270
degrees for AXG compatible controllers
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
@ -10,7 +10,7 @@ Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/mmc/host/meson-gx-mmc.c b/drivers/mmc/host/meson-gx-mmc.c
index 8f36536cb1b6..a7cd96aefa8c 100644
index c765653ee4d0..b3ffde4ce348 100644
--- a/drivers/mmc/host/meson-gx-mmc.c
+++ b/drivers/mmc/host/meson-gx-mmc.c
@@ -38,6 +38,7 @@

View File

@ -1,7 +1,7 @@
From b612444848dc9b27d7d5711f2119b20012369993 Mon Sep 17 00:00:00 2001
From 4357bfd48fa6dee1f4747fd900419ae8edd81cea Mon Sep 17 00:00:00 2001
From: benjamin545 <benjamin545@gmail.com>
Date: Thu, 15 Jul 2021 14:32:33 -0400
Subject: [PATCH 49/71] WIP: drivers: meson: vdec: remove redundant if
Subject: [PATCH 51/77] WIP: drivers: meson: vdec: remove redundant if
statement
checking if sess->fmt_out->pixfmt is V4L2_PIX_FMT_VP9 was already done
@ -11,7 +11,7 @@ as a condition to enter the if statement where this additional check is performe
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/staging/media/meson/vdec/esparser.c b/drivers/staging/media/meson/vdec/esparser.c
index 819fb937d1a8..c3ac015a5d01 100644
index db7022707ff8..e18334e57fc0 100644
--- a/drivers/staging/media/meson/vdec/esparser.c
+++ b/drivers/staging/media/meson/vdec/esparser.c
@@ -314,8 +314,7 @@ esparser_queue(struct amvdec_session *sess, struct vb2_v4l2_buffer *vbuf)

View File

@ -1,7 +1,7 @@
From 9aadefbc5dbb36f611bb762d5cab862a96ee769a Mon Sep 17 00:00:00 2001
From 1a44e07b3f07640e1046294fb3d1f85a5e2dddd5 Mon Sep 17 00:00:00 2001
From: benjamin545 <benjamin545@gmail.com>
Date: Thu, 15 Jul 2021 16:32:39 -0400
Subject: [PATCH 50/71] WIP: drivers: meson: vdec: improve mmu and fbc handling
Subject: [PATCH 52/77] WIP: drivers: meson: vdec: improve mmu and fbc handling
and add 10 bit handling
---
@ -429,7 +429,7 @@ index 897f5d7a6aad..bfc312ec2a56 100644
/* No frame is actually processed */
vp9->cur_frame = NULL;
diff --git a/drivers/staging/media/meson/vdec/esparser.c b/drivers/staging/media/meson/vdec/esparser.c
index c3ac015a5d01..8275ef5c6e4b 100644
index e18334e57fc0..610a92b9f6f2 100644
--- a/drivers/staging/media/meson/vdec/esparser.c
+++ b/drivers/staging/media/meson/vdec/esparser.c
@@ -319,6 +319,7 @@ esparser_queue(struct amvdec_session *sess, struct vb2_v4l2_buffer *vbuf)
@ -453,7 +453,7 @@ index 0906b8fb5cc6..a48170fe4cff 100644
u8 quantization;
u8 xfer_func;
diff --git a/drivers/staging/media/meson/vdec/vdec_helpers.c b/drivers/staging/media/meson/vdec/vdec_helpers.c
index 06fd66539797..6a889915d5da 100644
index b9125c295d1d..bae69b55baf3 100644
--- a/drivers/staging/media/meson/vdec/vdec_helpers.c
+++ b/drivers/staging/media/meson/vdec/vdec_helpers.c
@@ -50,32 +50,40 @@ void amvdec_write_parser(struct amvdec_core *core, u32 reg, u32 val)
@ -507,7 +507,7 @@ index 06fd66539797..6a889915d5da 100644
static int canvas_alloc(struct amvdec_session *sess, u8 *canvas_id)
{
@@ -440,7 +448,7 @@ void amvdec_set_par_from_dar(struct amvdec_session *sess,
@@ -436,7 +444,7 @@ void amvdec_set_par_from_dar(struct amvdec_session *sess,
EXPORT_SYMBOL_GPL(amvdec_set_par_from_dar);
void amvdec_src_change(struct amvdec_session *sess, u32 width,
@ -516,7 +516,7 @@ index 06fd66539797..6a889915d5da 100644
{
static const struct v4l2_event ev = {
.type = V4L2_EVENT_SOURCE_CHANGE,
@@ -448,25 +456,27 @@ void amvdec_src_change(struct amvdec_session *sess, u32 width,
@@ -444,25 +452,27 @@ void amvdec_src_change(struct amvdec_session *sess, u32 width,
v4l2_ctrl_s_ctrl(sess->ctrl_min_buf_capture, dpb_size);
@ -552,7 +552,7 @@ index 06fd66539797..6a889915d5da 100644
}
EXPORT_SYMBOL_GPL(amvdec_src_change);
diff --git a/drivers/staging/media/meson/vdec/vdec_helpers.h b/drivers/staging/media/meson/vdec/vdec_helpers.h
index 2c569cf62b7b..74cc47ad2045 100644
index 88137d15aa3a..fca4251f7599 100644
--- a/drivers/staging/media/meson/vdec/vdec_helpers.h
+++ b/drivers/staging/media/meson/vdec/vdec_helpers.h
@@ -27,9 +27,10 @@ void amvdec_clear_dos_bits(struct amvdec_core *core, u32 reg, u32 val);

View File

@ -1,7 +1,7 @@
From 9e20aa5ee7c5007812da1d09d67b99405b62b40e Mon Sep 17 00:00:00 2001
From 3801cb5201f829d68a8b8a8882c7602d9be4df12 Mon Sep 17 00:00:00 2001
From: benjamin545 <benjamin545@gmail.com>
Date: Thu, 15 Jul 2021 17:08:42 -0400
Subject: [PATCH 51/71] WIP: drivers: meson: vdec: add HEVC decode codec
Subject: [PATCH 53/77] WIP: drivers: meson: vdec: add HEVC decode codec
---
drivers/staging/media/meson/vdec/Makefile | 2 +-
@ -1492,7 +1492,7 @@ index 000000000000..f2f9b2464df1
+
+#endif
diff --git a/drivers/staging/media/meson/vdec/esparser.c b/drivers/staging/media/meson/vdec/esparser.c
index 8275ef5c6e4b..b62918529717 100644
index 610a92b9f6f2..9b6034936d32 100644
--- a/drivers/staging/media/meson/vdec/esparser.c
+++ b/drivers/staging/media/meson/vdec/esparser.c
@@ -309,7 +309,7 @@ esparser_queue(struct amvdec_session *sess, struct vb2_v4l2_buffer *vbuf)

View File

@ -1,7 +1,7 @@
From f4c37db01b342c684de191a20e1c8afa3266d751 Mon Sep 17 00:00:00 2001
From 7009f33996b882612667fcc001896fd983db375c Mon Sep 17 00:00:00 2001
From: benjamin545 <benjamin545@gmail.com>
Date: Mon, 2 Aug 2021 15:18:40 -0400
Subject: [PATCH 52/71] WIP: drivers: meson: vdec: add handling to HEVC decoder
Subject: [PATCH 54/77] WIP: drivers: meson: vdec: add handling to HEVC decoder
to show frames when ready
..rather than when no longer referenced

View File

@ -1,7 +1,7 @@
From d915bafab29f182dfe9fe45ca5ffaaddc5dbedfa Mon Sep 17 00:00:00 2001
From 8d8d582ad809c65f448dabb1e4f8fa952b7c880c Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 21 Nov 2021 19:12:07 +0000
Subject: [PATCH 53/71] WIP: drivers: meson: vdec: add HEVC support to GXBB
Subject: [PATCH 55/77] WIP: drivers: meson: vdec: add HEVC support to GXBB
It's not clear whether the GXL firmware is the same one used with GXBB
but let's try it and see!

View File

@ -1,7 +1,7 @@
From 08f6973cd4a767180f630d93553983eacfd8b09c Mon Sep 17 00:00:00 2001
From b46807930cdb2475e8ca914e623def500a6f88d7 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Mon, 22 Nov 2021 09:15:21 +0000
Subject: [PATCH 54/71] WIP: drivers: meson: vdec: check if parser has really
Subject: [PATCH 56/77] WIP: drivers: meson: vdec: check if parser has really
parser before marking input buffer as error
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
@ -10,7 +10,7 @@ Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
1 file changed, 10 insertions(+), 4 deletions(-)
diff --git a/drivers/staging/media/meson/vdec/esparser.c b/drivers/staging/media/meson/vdec/esparser.c
index b62918529717..a689ccebc1b5 100644
index 9b6034936d32..bb9480f0a70c 100644
--- a/drivers/staging/media/meson/vdec/esparser.c
+++ b/drivers/staging/media/meson/vdec/esparser.c
@@ -300,6 +300,7 @@ esparser_queue(struct amvdec_session *sess, struct vb2_v4l2_buffer *vbuf)
@ -21,7 +21,7 @@ index b62918529717..a689ccebc1b5 100644
/*
* When max ref frame is held by VP9, this should be -= 3 to prevent a
@@ -358,15 +359,20 @@ esparser_queue(struct amvdec_session *sess, struct vb2_v4l2_buffer *vbuf)
@@ -349,15 +350,20 @@ esparser_queue(struct amvdec_session *sess, struct vb2_v4l2_buffer *vbuf)
}
pad_size = esparser_pad_start_code(core, vb, payload_size);

View File

@ -1,8 +1,8 @@
From 4a092331686e14cae768b6082bfa63a7e54c0063 Mon Sep 17 00:00:00 2001
From ed46953e9b43b9eddf5b1308a52ee09e0b01ea7e Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 17 Aug 2021 16:16:43 +0000
Subject: [PATCH 55/71] WIP: arm64: dts: amlogic: radxa-zero: add support for
the usb type-c controller
Subject: [PATCH 57/77] WIP: arm64: dts: meson: radxa-zero: add support for the
usb type-c controller
Radxa Zero uses an FUSB302 type-c controller, so lets enable it.

View File

@ -1,7 +1,7 @@
From ef98e21cc6c14bf89d277a67fa9f64b212fbe0f8 Mon Sep 17 00:00:00 2001
From fba8ff883471cf297fb861dcb214eb3fb3f9557f Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 15 May 2020 07:52:47 +0000
Subject: [PATCH 56/71] WIP: arm64: dts: meson: add audio playback to p201
Subject: [PATCH 58/77] WIP: arm64: dts: meson: add audio playback to p201
Add initial audio support limited to HDMI i2s.

View File

@ -1,7 +1,7 @@
From e44724a5c9a208771e719437055dd378f0d74cd6 Mon Sep 17 00:00:00 2001
From f812c85cca37cb05bcc2a640708e745ec2f22af7 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 15 May 2020 07:56:15 +0000
Subject: [PATCH 57/71] WIP: arm64: dts: meson: add audio playback to p200
Subject: [PATCH 59/77] WIP: arm64: dts: meson: add audio playback to p200
Add initial support limited to HDMI i2s and SPDIF (LPCM).

View File

@ -1,7 +1,7 @@
From 0fcf079352469bd1a2e9cd2479206cc8745965fc Mon Sep 17 00:00:00 2001
From 4c2e029d359d90b047f71d80739130f243f31f00 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 15 May 2020 08:02:54 +0000
Subject: [PATCH 58/71] WIP: arm64: dts: meson: add audio playback to
Subject: [PATCH 60/77] WIP: arm64: dts: meson: add audio playback to
p212-s905x dtsi
Add initial audio support limited to HDMI i2s.

View File

@ -1,7 +1,7 @@
From c487ac38a4b048fff11eafeff2fe8a0f70d21c2a Mon Sep 17 00:00:00 2001
From f9afea8e1ce73cf871443f2e8d811642df3dd691 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 17 May 2020 05:00:55 +0000
Subject: [PATCH 59/71] WIP: arm64: dts: meson: add audio playback to u200
Subject: [PATCH 61/77] WIP: arm64: dts: meson: add audio playback to u200
Add initial support limited to HDMI i2s and SPDIF (LPCM).

View File

@ -1,7 +1,7 @@
From 16039c4b37059281a40066a0d07a6553b53bb28b Mon Sep 17 00:00:00 2001
From afb1954727c88a5622739f5d1a02e3c9c8d09c74 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sat, 27 Nov 2021 13:50:06 +0000
Subject: [PATCH 60/71] WIP: arm64: dts: meson: add Headphone output to Beelink
Subject: [PATCH 62/77] WIP: arm64: dts: meson: add Headphone output to Beelink
GT-King
Add support for the Headphone audio DAC built-in to the S922X chip.

View File

@ -1,7 +1,7 @@
From 3a8ae6a8dcc4b3f1aa5329f45b476012ff61f19b Mon Sep 17 00:00:00 2001
From 2fe5382174df76711923e735cd76de37fc06b033 Mon Sep 17 00:00:00 2001
From: Jonas Karlman <jonas@kwiboo.se>
Date: Sun, 23 Dec 2018 02:24:38 +0100
Subject: [PATCH 61/71] WIP: ASoC: hdmi-codec: reorder channel allocation list
Subject: [PATCH 63/77] WIP: ASoC: hdmi-codec: reorder channel allocation list
Wrong channel allocation is selected by hdmi_codec_get_ch_alloc_table_idx().

View File

@ -1,7 +1,7 @@
From 991a35ebc7670e8b11b52508a5743b832a9cfcad Mon Sep 17 00:00:00 2001
From 9df99b41a4e13595281f36bfd709155af66caa5b Mon Sep 17 00:00:00 2001
From: Matthias Reichl <hias@horus.com>
Date: Fri, 19 Mar 2021 12:14:17 +0100
Subject: [PATCH 62/71] WIP: ALSA: pcm: fix ELD constraints for some compressed
Subject: [PATCH 64/77] WIP: ALSA: pcm: fix ELD constraints for some compressed
audio formats
The SADs of compressed formats like AC3 and DTS contain the channel

View File

@ -1,7 +1,7 @@
From f52930b6f738455393e027f217721f62bf76883d Mon Sep 17 00:00:00 2001
From b136d886edc99a43cea47c4633bf1fa3aca2bb8d Mon Sep 17 00:00:00 2001
From: Matthias Reichl <hias@horus.com>
Date: Sat, 20 Mar 2021 10:48:54 +0100
Subject: [PATCH 63/71] WIP: ALSA: pcm: ignore formats not supported by kodi in
Subject: [PATCH 65/77] WIP: ALSA: pcm: ignore formats not supported by kodi in
ELD constraints
Only parse channel info and rates from the PCM SAD. All other SAD

View File

@ -0,0 +1,27 @@
From f2b8a504a64516dc8d40403bec9eb46f61f043c3 Mon Sep 17 00:00:00 2001
From: Troy Kisky <troy.kisky@boundarydevices.com>
Date: Mon, 6 Dec 2021 14:39:56 -0800
Subject: [PATCH 66/77] WIP: gpu: drm: meson: meson_viu: change
VIU_OSD_HOLD_FIFO_LINES to stop the shakes
Signed-off-by: Troy Kisky <troy.kisky@boundarydevices.com>
---
drivers/gpu/drm/meson/meson_viu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/meson/meson_viu.c b/drivers/gpu/drm/meson/meson_viu.c
index 259f3e6bec90..e4b567ca18bb 100644
--- a/drivers/gpu/drm/meson/meson_viu.c
+++ b/drivers/gpu/drm/meson/meson_viu.c
@@ -436,7 +436,7 @@ void meson_viu_init(struct meson_drm *priv)
/* Initialize OSD1 fifo control register */
reg = VIU_OSD_DDR_PRIORITY_URGENT |
- VIU_OSD_HOLD_FIFO_LINES(31) |
+ VIU_OSD_HOLD_FIFO_LINES(24) |
VIU_OSD_FIFO_DEPTH_VAL(32) | /* fifo_depth_val: 32*8=256 */
VIU_OSD_WORDS_PER_BURST(4) | /* 4 words in 1 burst */
VIU_OSD_FIFO_LIMITS(2); /* fifo_lim: 2*16=32 */
--
2.17.1

View File

@ -1,8 +1,8 @@
From 6c3ce1b8e6d549b025db0f4bd85469a61f076c39 Mon Sep 17 00:00:00 2001
From c991d688ad774dcc31bdf9109fa1ab0d7a9cb474 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sat, 29 Feb 2020 15:13:02 +0000
Subject: [PATCH 64/71] dt-bindings: arm: amlogic: add support for the Tanix
TX5 Max
Subject: [PATCH 67/77] WIP: dt-bindings: arm: amlogic: add support for the
Tanix TX5 Max
The Oranth (Tanix) TX5 Max is based on the Amlogic U200 reference
board with an S905X2 chip.
@ -13,7 +13,7 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
index 1e792feecc69..a950b66ed9a2 100644
index 7c3627d9c773..6f3c43ae92c2 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -143,6 +143,7 @@ properties:

View File

@ -1,7 +1,8 @@
From dc529eb2c131c57255a8cf67485379bce225bb07 Mon Sep 17 00:00:00 2001
From 96224bbd1aad109d87337301eb4fbc8d11a2e4d0 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 20 Oct 2019 04:06:59 +0000
Subject: [PATCH 65/71] arm64: dts: meson: add support for the Tanix TX5 Max
Subject: [PATCH 68/77] WIP: arm64: dts: meson: add support for the Tanix TX5
Max
The Tanix TX5 Max is based on the Amlogic U200 reference design
using the S905X2 chipset. Hardware specification:
@ -25,7 +26,7 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
create mode 100644 arch/arm64/boot/dts/amlogic/meson-g12a-tanix-tx5max.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 2d7cbebba35a..2bc0ae29937a 100644
index 868d74044072..1fd4267f06c3 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -3,6 +3,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-axg-s400.dtb

View File

@ -1,7 +1,8 @@
From 32cd01e73f058eeee72638fd3451cb130811c240 Mon Sep 17 00:00:00 2001
From e9dfe5e26af35653e64be9d32fa90e69af6d1846 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 21 Oct 2019 03:58:06 +0000
Subject: [PATCH 66/71] arm64: dts: meson: add multiple MeCool device trees
Subject: [PATCH 69/77] WIP: arm64: dts: meson: add multiple MeCool device
trees
This adds initial device trees for a range of MeCool devices based on various
Amlogic GXBB, GXL and GXM reference designs. The current purpose is to allow
@ -24,7 +25,7 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxl-s905d-mecool-m8s-plus.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 2bc0ae29937a..6cc035471832 100644
index 1fd4267f06c3..34c4a25e6fe1 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -15,6 +15,8 @@ dtb-$(CONFIG_ARCH_MESON) += meson-g12b-odroid-n2.dtb

View File

@ -1,7 +1,8 @@
From cb41f5c89ebafba2f269df02cbf2827b99c8c51c Mon Sep 17 00:00:00 2001
From c1fcc79f2274a4425fd0af07548d204afb058034 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 11 Apr 2021 05:50:13 +0000
Subject: [PATCH 67/71] dt-bindings: arm: amlogic: add support for Minix NEO-U1
Subject: [PATCH 70/77] WIP: dt-bindings: arm: amlogic: add support for Minix
NEO-U1
The Minix NEO-U1 is an Android STB based on the Amlogic P200 (GXBB)
reference design with an S905 chip.
@ -12,7 +13,7 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
index a950b66ed9a2..db0d62d5d37d 100644
index 6f3c43ae92c2..851aff819051 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -58,6 +58,7 @@ properties:

View File

@ -1,8 +1,8 @@
From 0711b3e9f67f2a091d493d27a7857cd857c9ef9e Mon Sep 17 00:00:00 2001
From 9fd1f8f8d206f844a69ac5b795b9de719f45e73c Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 11 Apr 2021 05:52:14 +0000
Subject: [PATCH 68/71] arm64: dts: meson: add initial device-tree for Minix
NEO-U1
Subject: [PATCH 71/77] WIP: arm64: dts: meson: add initial device-tree for
Minix NEO-U1
The Minix NEO-U1 is an Android STB based on the Amlogic P200 (GXBB)
reference design with an S905-H chip and the following specs:
@ -30,7 +30,7 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxbb-minix-neo-u1.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 6cc035471832..8f364a784d30 100644
index 34c4a25e6fe1..c12b7c59b58c 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -17,6 +17,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-g12b-ugoos-am6.dtb

View File

@ -1,7 +1,7 @@
From 80a1bccaa6581b5bbed3b0727e23faf5c5e992f5 Mon Sep 17 00:00:00 2001
From 52ebc47e5e3e068bf8baf92c4e29869d6cf8a88d Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 8 Dec 2021 15:33:47 +0000
Subject: [PATCH 69/71] WIP: media: rc: add keymap for Beelink Mini MXIII
Subject: [PATCH 72/77] WIP: media: rc: add keymap for Beelink Mini MXIII
remote
Add a keymap and bindings for the simple IR (NEC) remote used with

View File

@ -1,7 +1,7 @@
From 25359abc217efcb420a12487525731b17f01cae9 Mon Sep 17 00:00:00 2001
From bd659bd72c8aba972d5a87cd719822ee162419df Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 8 Dec 2021 15:28:50 +0000
Subject: [PATCH 70/71] WIP: dt-bindings: arm: amlogic: add support for Beelink
Subject: [PATCH 73/77] WIP: dt-bindings: arm: amlogic: add support for Beelink
Mini MXIII
The Beelink Mini MXIII is an Android STB based on the Amlogic P200
@ -13,7 +13,7 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/arm/amlogic.yaml b/Documentation/devicetree/bindings/arm/amlogic.yaml
index db0d62d5d37d..f57fdb322d92 100644
index 851aff819051..cf430e4d77ea 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -56,6 +56,7 @@ properties:

View File

@ -1,7 +1,7 @@
From e2356dcc2c32e2a33cc5c83a57d5c9169f8d002f Mon Sep 17 00:00:00 2001
From da6f5130bd1ac1cd126f2192a26020b070e2d1fa Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 8 Dec 2021 15:26:00 +0000
Subject: [PATCH 71/71] WIP: arm64: dts: meson: add support for Beelink Mini
Subject: [PATCH 74/77] WIP: arm64: dts: meson: add support for Beelink Mini
MXIII
This is a GXBB board that ships in two variants, one with
@ -15,7 +15,7 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxbb-beelink-mini-mxiii.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 8f364a784d30..2ae6aaa419ab 100644
index c12b7c59b58c..48b9bea5f713 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -15,6 +15,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-g12b-odroid-n2.dtb

View File

@ -0,0 +1,26 @@
From 1c40f6db4e26e8ec2746295408e74c017e25c8e1 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 21 Dec 2021 07:02:37 +0000
Subject: [PATCH 75/77] TEST: BT enable for Mini MXIII
---
arch/arm64/boot/dts/amlogic/meson-gxbb-beelink-mini-mxiii.dts | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-beelink-mini-mxiii.dts b/arch/arm64/boot/dts/amlogic/meson-gxbb-beelink-mini-mxiii.dts
index 53b1b825421b..3d99ca93e1d5 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-beelink-mini-mxiii.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-beelink-mini-mxiii.dts
@@ -167,8 +167,6 @@
bluetooth {
compatible = "realtek,rtl8723bs-bt";
enable-gpios = <&gpio GPIOX_20 GPIO_ACTIVE_HIGH>;
- max-speed = <2000000>;
- clocks = <&wifi32k>;
- clock-names = "lpo";
+ host-wake-gpios = <&gpio GPIOX_21 GPIO_ACTIVE_HIGH>;
};
};
--
2.17.1

View File

@ -0,0 +1,73 @@
From ae3bdc2a7b4127cd690feb8f9608dc539777881f Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 4 Jan 2022 04:09:19 +0000
Subject: [PATCH 76/77] WIP: arm64: dts: meson: add Broadcom WiFi to P212 dtsi
The P212 has a combined WiFi/BT module. The BT side is already enabled
in the dtsi but the WiFi side is not. Let's tweak SDIO speed (in-line
with other GXL/GXM devices) and enable the WiFi module. While we are
here, move (alpha-sort) the pwm_ef node.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
.../dts/amlogic/meson-gxl-s905x-p212.dtsi | 23 +++++++++++--------
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi
index 5d41d93bd008..e06ce00bfb07 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtsi
@@ -137,6 +137,14 @@
pinctrl-names = "default";
};
+&pwm_ef {
+ status = "okay";
+ pinctrl-0 = <&pwm_e_pins>;
+ pinctrl-names = "default";
+ clocks = <&clkc CLKID_FCLK_DIV4>;
+ clock-names = "clkin0";
+};
+
&saradc {
status = "okay";
vref-supply = <&vddio_ao18>;
@@ -153,7 +161,7 @@
bus-width = <4>;
cap-sd-highspeed;
- max-frequency = <50000000>;
+ max-frequency = <100000000>;
non-removable;
disable-wp;
@@ -165,6 +173,11 @@
vmmc-supply = <&vddao_3v3>;
vqmmc-supply = <&vddio_boot>;
+
+ brcmf: wifi@1 {
+ reg = <1>;
+ compatible = "brcm,bcm4329-fmac";
+ };
};
/* SD card */
@@ -205,14 +218,6 @@
vqmmc-supply = <&vddio_boot>;
};
-&pwm_ef {
- status = "okay";
- pinctrl-0 = <&pwm_e_pins>;
- pinctrl-names = "default";
- clocks = <&clkc CLKID_FCLK_DIV4>;
- clock-names = "clkin0";
-};
-
/* This is connected to the Bluetooth module: */
&uart_A {
status = "okay";
--
2.17.1

View File

@ -0,0 +1,47 @@
From 70ee128fcd4825e844b4fb7f9634349b68e2c2f0 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 4 Jan 2022 04:36:12 +0000
Subject: [PATCH 77/77] WIP: arm64: dts: meson: remove Broadcom WiFi/BT nodes
from Khadas VIM1
The Broadcom WiFi/BT SDIO nodes are now inherited from the P212 common dtsi
so we can remove them from the VIM1 board dts.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
.../amlogic/meson-gxl-s905x-khadas-vim.dts | 19 -------------------
1 file changed, 19 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
index 24af15e18026..fb0dd920882f 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxl-s905x-khadas-vim.dts
@@ -219,25 +219,6 @@
pinctrl-0 = <&pwm_e_pins>, <&pwm_f_clk_pins>;
};
-&sd_emmc_a {
- max-frequency = <100000000>;
-
- brcmf: wifi@1 {
- reg = <1>;
- compatible = "brcm,bcm4329-fmac";
- };
-};
-
-&uart_A {
- bluetooth {
- compatible = "brcm,bcm43438-bt";
- shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
- max-speed = <2000000>;
- clocks = <&wifi32k>;
- clock-names = "lpo";
- };
-};
-
/* This is brought out on the Linux_RX (18) and Linux_TX (19) pins: */
&uart_AO {
status = "okay";
--
2.17.1

View File

@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 5.16.0-rc4 Kernel Configuration
# Linux/arm64 5.16.0-rc8 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="aarch64-none-linux-gnu-gcc.real (GNU Toolchain for the A-profile Architecture 10.3-2021.07 (arm-10.29)) 10.3.1 20210621"
CONFIG_CC_IS_GCC=y
@ -3491,7 +3491,7 @@ CONFIG_VIDEO_V4L2_SUBDEV_API=y
# CONFIG_VIDEO_ADV_DEBUG is not set
# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
CONFIG_VIDEO_TUNER=m
CONFIG_V4L2_MEM2MEM_DEV=y
CONFIG_V4L2_MEM2MEM_DEV=m
CONFIG_VIDEOBUF_GEN=m
CONFIG_VIDEOBUF_VMALLOC=m
# end of Video4Linux options
@ -3635,10 +3635,10 @@ CONFIG_VIDEO_CX2341X=m
CONFIG_VIDEO_TVEEPROM=m
CONFIG_TTPCI_EEPROM=m
CONFIG_CYPRESS_FIRMWARE=m
CONFIG_VIDEOBUF2_CORE=y
CONFIG_VIDEOBUF2_V4L2=y
CONFIG_VIDEOBUF2_MEMOPS=y
CONFIG_VIDEOBUF2_DMA_CONTIG=y
CONFIG_VIDEOBUF2_CORE=m
CONFIG_VIDEOBUF2_V4L2=m
CONFIG_VIDEOBUF2_MEMOPS=m
CONFIG_VIDEOBUF2_DMA_CONTIG=m
CONFIG_VIDEOBUF2_VMALLOC=m
CONFIG_DVB_B2C2_FLEXCOP=m
CONFIG_SMS_SIANO_MDTV=m
@ -5365,7 +5365,7 @@ CONFIG_R8188EU=m
# CONFIG_FB_SM750 is not set
CONFIG_STAGING_MEDIA=y
CONFIG_VIDEO_MESON_VDEC=y
CONFIG_VIDEO_MESON_VDEC=m
# CONFIG_VIDEO_ZORAN is not set
# CONFIG_DVB_AV7110 is not set