Merge pull request #5212 from chewitt/amlogic-upstream

amlogic: bump kernel to 5.11.3 and u-boot to 2021.04-rc2
This commit is contained in:
CvH 2021-03-04 23:09:12 +01:00 committed by GitHub
commit d86c890fbe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
112 changed files with 870 additions and 6154 deletions

View File

@ -16,8 +16,8 @@ PKG_PATCH_DIRS="${LINUX}"
case "${LINUX}" in
amlogic)
PKG_VERSION="6ee1d745b7c9fd573fba142a2efdad76a9f1cb04" # 5.11-rc5
PKG_SHA256="56d3dddbd4d8dcca641683262bfe2dba5049b296abca9f1fc882e156cd206d4e"
PKG_VERSION="e073346387ab794b06409f0708bbc0aa6b99a4fb" # 5.11.3
PKG_SHA256="f60126313507c672d0d8b10064aa07f31d3bb358e1ee28ba1117451c79349f36"
PKG_URL="https://github.com/torvalds/linux/archive/${PKG_VERSION}.tar.gz"
PKG_SOURCE_NAME="linux-${LINUX}-${PKG_VERSION}.tar.gz"
;;

View File

@ -22,6 +22,12 @@ PKG_NEED_UNPACK="${PROJECT_DIR}/${PROJECT}/bootloader"
[ -n "${DEVICE}" ] && PKG_NEED_UNPACK+=" ${PROJECT_DIR}/${PROJECT}/devices/${DEVICE}/bootloader"
case "${PROJECT}" in
Amlogic)
PKG_VERSION="807482107a6d426dbcd6457d9ccf8b3ce6ca887b" # 2021.04-rc2 custodians/u-boot-amlogic-test
PKG_SHA256="a10430d2c1a1d9e83e66bed342433ddfe4f3d6f16d9fa8b4d4c034b600baffd3"
PKG_URL="https://github.com/chewitt/u-boot/archive/${PKG_VERSION}.tar.gz"
PKG_PATCH_DIRS="amlogic"
;;
Rockchip)
PKG_VERSION="8659d08d2b589693d121c1298484e861b7dafc4f"
PKG_SHA256="3f9f2bbd0c28be6d7d6eb909823fee5728da023aca0ce37aef3c8f67d1179ec1"

View File

@ -13,7 +13,7 @@
arm)
TARGET_KERNEL_ARCH="arm64"
TARGET_PATCH_ARCH="aarch64"
TARGET_FLOAT=hard
TARGET_FLOAT="hard"
TARGET_CPU="cortex-a53"
TARGET_CPU_FLAGS="+crc"
TARGET_FPU="neon-fp-armv8"

View File

@ -1,11 +1,11 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 5.11.0-rc5 Kernel Configuration
# Linux/arm64 5.11.3 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="aarch64-none-linux-gnu-gcc.real (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10)) 9.2.1 20191025"
CONFIG_CC_VERSION_TEXT="aarch64-none-linux-gnu-gcc.real (GNU Toolchain for the A-profile Architecture 10.2-2020.11 (arm-10.16)) 10.2.1 20201103"
CONFIG_CC_IS_GCC=y
CONFIG_GCC_VERSION=90201
CONFIG_LD_VERSION=233010000
CONFIG_GCC_VERSION=100201
CONFIG_LD_VERSION=235010000
CONFIG_CLANG_VERSION=0
CONFIG_LLD_VERSION=0
CONFIG_CC_CAN_LINK=y
@ -212,6 +212,7 @@ CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
# CONFIG_BPF_PRELOAD is not set
# CONFIG_USERFAULTFD is not set
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
CONFIG_KCMP=y
CONFIG_RSEQ=y
# CONFIG_DEBUG_RSEQ is not set
CONFIG_EMBEDDED=y
@ -4953,6 +4954,10 @@ CONFIG_LEDS_SYSCON=y
# CONFIG_LEDS_SPI_BYTE is not set
# CONFIG_LEDS_TI_LMU_COMMON is not set
#
# Flash and Torch LED drivers
#
#
# LED Triggers
#
@ -5901,7 +5906,6 @@ CONFIG_RESET_MESON_AUDIO_ARB=y
CONFIG_GENERIC_PHY=y
CONFIG_GENERIC_PHY_MIPI_DPHY=y
# CONFIG_PHY_XGENE is not set
# CONFIG_USB_LGM_PHY is not set
CONFIG_PHY_MESON8B_USB2=y
CONFIG_PHY_MESON_GXL_USB2=y
CONFIG_PHY_MESON_G12A_USB2=y

View File

@ -1,7 +1,7 @@
From ad278b0b4de9ef9e8ef1b06db91caeafe158df75 Mon Sep 17 00:00:00 2001
From 8cb76f1b0c1d4bf9e314f7039086676397fdd6ae Mon Sep 17 00:00:00 2001
From: chewitt <github@chrishewitt.net>
Date: Sat, 13 Apr 2019 05:41:51 +0000
Subject: [PATCH 01/76] HACK: set meson-gx cma pool to 896MB
Subject: [PATCH 01/78] HACK: set meson-gx cma pool to 896MB
This change sets the CMA pool to a larger 896MB! value for vdec use
@ -11,10 +11,10 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
index 726b91d3a905..d90a7e376a62 100644
index 0edd137151f8..797e193af8e3 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
@@ -47,7 +47,7 @@
@@ -46,7 +46,7 @@
linux,cma {
compatible = "shared-dma-pool";
reusable;

View File

@ -1,7 +1,7 @@
From b915964814b1b467787627dc8e622bf7db63a730 Mon Sep 17 00:00:00 2001
From 177719611a14c837af8d04c772ed218c766d708d Mon Sep 17 00:00:00 2001
From: chewitt <github@chrishewitt.net>
Date: Wed, 14 Aug 2019 19:58:14 +0000
Subject: [PATCH 02/76] HACK: set meson-g12 cma pool to 896MB
Subject: [PATCH 02/78] HACK: set meson-g12 cma pool to 896MB
This change sets the CMA pool to a larger 896MB! value for vdec use
@ -11,7 +11,7 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
index 9c90d562ada1..9f79f594c6a7 100644
index b858c5e43cc8..3a4f20506a61 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
@@ -104,7 +104,7 @@

View File

@ -1,7 +1,7 @@
From c8825237212d95c846d956c42aca4b6a7b525be8 Mon Sep 17 00:00:00 2001
From 715aab31d33489dd6de9ebe6f2ccd3daef5a4512 Mon Sep 17 00:00:00 2001
From: chewitt <github@chrishewitt.net>
Date: Sat, 13 Apr 2019 05:45:18 +0000
Subject: [PATCH 03/76] HACK: arm64: fix Kodi sysinfo CPU information
Subject: [PATCH 03/78] 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 00500ea062d07a5340d72063061e0109d488c0d9 Mon Sep 17 00:00:00 2001
From 647a540eba9a95e654f7c11c430cca9aa651bd01 Mon Sep 17 00:00:00 2001
From: kszaq <kszaquitto@gmail.com>
Date: Sat, 6 Jul 2019 07:54:44 +0000
Subject: [PATCH 04/76] HACK: arm64: dts: meson-gx: add ATF BL32 reserved
Subject: [PATCH 04/78] HACK: arm64: dts: meson-gx: add ATF BL32 reserved
memory region
Vendor firmware/uboot has an additional reserved region for BL32 trusted
@ -16,10 +16,10 @@ Signed-off-by: kszaq <kszaquitto@gmail.com>
1 file changed, 6 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
index d90a7e376a62..ac6e99a9c95f 100644
index 797e193af8e3..cf9eb7c8a6f0 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
@@ -44,6 +44,12 @@
@@ -43,6 +43,12 @@
no-map;
};

View File

@ -1,7 +1,7 @@
From d2794dfd488506e16dff8be3bbb8b4274f90f4a6 Mon Sep 17 00:00:00 2001
From d4bd6f62601948e7814cb60b1505f80c4fdbe317 Mon Sep 17 00:00:00 2001
From: Dongjin Kim <tobetter@gmail.com>
Date: Wed, 29 Jul 2020 04:05:03 +0900
Subject: [PATCH 05/76] HACK: drm/meson: add YUV422 output support
Subject: [PATCH 05/78] HACK: drm/meson: add YUV422 output support
Support YUV422 output from the Amlogic Meson SoC VPU to the HDMI
controller. This incorrectly fixes the green-line on GX devices.

View File

@ -1,7 +1,7 @@
From 915da94d239f404300ad4f0039852193a5570eee Mon Sep 17 00:00:00 2001
From eabdf5af33387cd914e396e735cd53ef8fdf7216 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Thu, 16 Apr 2020 08:31:55 +0000
Subject: [PATCH 06/76] HACK: mmc: core: always re-init sdcards to set default
Subject: [PATCH 06/78] HACK: mmc: core: always re-init sdcards to set default
3.3v regulator ios
sd-uhs-** in device-tree changes the voltage to 1.8v, so we need to ensure

View File

@ -1,37 +0,0 @@
From 7cfddbebb68fb53de5e3ccb8dac8c53669bb9714 Mon Sep 17 00:00:00 2001
From: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Date: Mon, 11 Jan 2021 14:45:19 +0000
Subject: [PATCH 07/76] FROMGIT: arm64: dts: amlogic: meson-g12: Set FL-adj
property value
In accordance with the DWC USB3 bindings the property is supposed to have
uint32 type. It's erroneous from the DT schema and driver points of view
to declare it as boolean. As Neil suggested set it to 0x20 so not break
the platform and to make the dtbs checker happy.
Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Reviewed-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Neil Armstrong <narmstrong@baylibre.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Fixes: 9baf7d6be730 ("arm64: dts: meson: g12a: Add G12A USB nodes")
Signed-off-by: Kevin Hilman <khilman@baylibre.com>
---
arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
index 9f79f594c6a7..85def57463db 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
@@ -2390,7 +2390,7 @@
interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>;
dr_mode = "host";
snps,dis_u2_susphy_quirk;
- snps,quirk-frame-length-adjustment;
+ snps,quirk-frame-length-adjustment = <0x20>;
snps,parkmode-disable-ss-quirk;
};
};
--
2.17.1

View File

@ -1,7 +1,7 @@
From 05e349e62469e956929ea6e9592d523059047e04 Mon Sep 17 00:00:00 2001
From 59b3820d37354b31cb4a6812b1c176e25dfaa0e6 Mon Sep 17 00:00:00 2001
From: Alexander Dahl <post@lespocky.de>
Date: Mon, 11 Jan 2021 14:47:38 +0000
Subject: [PATCH 08/76] FROMGIT: arm64: dts: meson: Fix schema warnings for
Subject: [PATCH 07/78] FROMGIT: arm64: dts: meson: Fix schema warnings for
pwm-leds
The node names for devices using the pwm-leds driver follow a certain

View File

@ -1,7 +1,7 @@
From 7b979e7ad05c410c0b2b4d44c24f32c669379426 Mon Sep 17 00:00:00 2001
From f2ff04f09dd15b2243128c17f1192384cb5d6a83 Mon Sep 17 00:00:00 2001
From: Jerome Brunet <jbrunet@baylibre.com>
Date: Fri, 4 Dec 2020 14:48:41 +0100
Subject: [PATCH 09/76] FROMGIT: arm64: dts: meson: vim3: whitespace fixups
Subject: [PATCH 08/78] FROMGIT: arm64: dts: meson: vim3: whitespace fixups
Spaces have been used to indent 2 nodes.
Replace those with tabs and remove one extra newline

View File

@ -1,7 +1,7 @@
From 23493d56b60796f18114ef6934d391bf22ceb3bb Mon Sep 17 00:00:00 2001
From fdf605998fa39038f483af016c08d2fcca0f27b8 Mon Sep 17 00:00:00 2001
From: Jerome Brunet <jbrunet@baylibre.com>
Date: Fri, 4 Dec 2020 16:23:55 +0100
Subject: [PATCH 10/76] FROMGIT: arm64: dts: meson: vim3: enable hdmi audio
Subject: [PATCH 09/78] FROMGIT: arm64: dts: meson: vim3: enable hdmi audio
loopback
Enable audio capture frontends and a tdm decoder.

View File

@ -1,7 +1,7 @@
From 95798563aae9367daf1ac6658b87cb4ff76d2dae Mon Sep 17 00:00:00 2001
From 3a17391487bab3d68738bf9077537a3f8d2c7f47 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 21 Dec 2020 12:06:25 +0000
Subject: [PATCH 12/76] FROMGIT: arm64: dts: meson: add i2c3/rtc nodes and rtc
Subject: [PATCH 10/78] FROMGIT: arm64: dts: meson: add i2c3/rtc nodes and rtc
aliases to ODROID-N2 dtsi
Enable the onboard pcf8563 rtc hardware on ODROID N2/N2+ boards via the

View File

@ -1,7 +1,7 @@
From 4cbd3774b438c750f637db262531424906aafa3f Mon Sep 17 00:00:00 2001
From 8b54edde0a895a619f8295f1dc5dd7ce01b5aa79 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 12 Jun 2020 08:05:20 +0000
Subject: [PATCH 13/76] FROMGIT: arm64: dts: meson: add initial Beelink
Subject: [PATCH 11/78] FROMGIT: arm64: dts: meson: add initial Beelink
GS-King-X device-tree
The Shenzen AZW (Beelink) GS-King-X is based on the Amlogic W400 reference

View File

@ -1,37 +0,0 @@
From d861eb5fa0d8ea16e9b40a8d24a72eebf5719f53 Mon Sep 17 00:00:00 2001
From: Marek Szyprowski <m.szyprowski@samsung.com>
Date: Sun, 27 Dec 2020 14:42:02 +0000
Subject: [PATCH 11/76] FROMGIT: arm64: dts: meson: switch TFLASH_VDD_EN pin to
open drain on Odroid-C4
For the proper reboot Odroid-C4 board requires to switch TFLASH_VDD_EN
pin to the high impedance mode, otherwise the board is stuck in the
middle of loading early stages of the bootloader from SD card.
This can be achieved by using the OPEN_DRAIN flag instead if the
ACTIVE_HIGH, what will leave the pin in input to achieve high state (pin
has the pull-up) and solve the issue.
Suggested-by: Neil Armstrong <narmstrong@baylibre.com>
Fixes: 326e57518b0d ("arm64: dts: meson-sm1: add support for Hardkernel ODROID-C4")
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
---
arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
index cf5a98f0e47c..a712273c905a 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-odroid-c4.dts
@@ -52,7 +52,7 @@
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
- gpio = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>;
+ gpio = <&gpio_ao GPIOAO_3 GPIO_OPEN_DRAIN>;
enable-active-high;
regulator-always-on;
};
--
2.17.1

View File

@ -1,7 +1,7 @@
From fb5e6b0507011d8bd5a06c04905318d38ed0672d Mon Sep 17 00:00:00 2001
From bd15aa7673def445d35620db5b0516d4693c1519 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Thu, 31 Dec 2020 15:54:34 +0000
Subject: [PATCH 14/76] FROMGIT: arm64: dts: meson: shorten audio card names
Subject: [PATCH 12/78] FROMGIT: arm64: dts: meson: shorten audio card names
for alsa compatibility
This patch shortens all audio card model names by dropping the SoC prefix

View File

@ -1,8 +1,7 @@
From 5c639a0f1b68fd54a88043d83f201359b3c3a79a Mon Sep 17 00:00:00 2001
From 7b6782b8bccfed066c2b55871f0276dd4e2ebc2a Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 19 Jan 2021 15:34:53 +0000
Subject: [PATCH 38/76] FROMLIST(v2): arm64: dts: meson: sort Amlogic dtb
Makefile
Subject: [PATCH 13/78] FROMGIT: arm64: dts: meson: sort Amlogic dtb Makefile
Sort the Makefile before adding new SM1 devices.

View File

@ -1,8 +1,8 @@
From 2daf69b2b9acb20568d4fe3b0dbc92fa3569129a Mon Sep 17 00:00:00 2001
From 5169e50955183bef65a3d2ad8331a7fae342a72b Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 29 Jan 2021 02:10:14 +0000
Subject: [PATCH 39/76] FROMLIST(v2): arm64: dts: meson: convert
meson-sm1-odroid-c4 to dtsi
Subject: [PATCH 14/78] FROMGIT: arm64: dts: meson: convert meson-sm1-odroid-c4
to dtsi
Convert the ODRIOD-C4 dts to meson-sm1-odroid.dtsi and C4 board dts in
preparation for adding additional C4 family boards.

View File

@ -1,8 +1,8 @@
From b83915242632804d629acaa105dde6c79ea1361b Mon Sep 17 00:00:00 2001
From 4840ef5d5e91f556c3a0894b09f5799195cb4c14 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 29 Jan 2021 02:12:43 +0000
Subject: [PATCH 41/76] FROMLIST(v2): arm64: dts: meson: add initial
device-tree for ODROID-HC4
Subject: [PATCH 15/78] FROMGIT: arm64: dts: meson: add initial device-tree for
ODROID-HC4
ODROID-HC4 is a derivative of the C4 with minor differences:

View File

@ -1,32 +0,0 @@
From 463f2093969a0abc701a738153860987011f07fd Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sat, 26 Dec 2020 23:34:18 +0000
Subject: [PATCH 15/76] FROMGIT: clk: meson: clk-pll: fix initializing the old
rate (fallback) for a PLL
The "rate" parameter in meson_clk_pll_set_rate() contains the new rate.
Retrieve the old rate with clk_hw_get_rate() so we don't inifinitely try
to switch from the new rate to the same ratte again.
Fixes: 7a29a869434e8b ("clk: meson: Add support for Meson clock controller")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
drivers/clk/meson/clk-pll.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/clk/meson/clk-pll.c b/drivers/clk/meson/clk-pll.c
index b17a13e9337c..9404609b5ebf 100644
--- a/drivers/clk/meson/clk-pll.c
+++ b/drivers/clk/meson/clk-pll.c
@@ -371,7 +371,7 @@ static int meson_clk_pll_set_rate(struct clk_hw *hw, unsigned long rate,
if (parent_rate == 0 || rate == 0)
return -EINVAL;
- old_rate = rate;
+ old_rate = clk_hw_get_rate(hw);
ret = meson_clk_get_pll_settings(rate, parent_rate, &m, &n, pll);
if (ret)
--
2.17.1

View File

@ -1,35 +0,0 @@
From 6b5221da35a0987a9851fa227cd3fede38f684f0 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sat, 26 Dec 2020 23:35:18 +0000
Subject: [PATCH 16/76] FROMGIT: clk: meson: clk-pll: make "ret" a signed
integer
The error codes returned by meson_clk_get_pll_settings() are all
negative. Make "ret" a signed integer in meson_clk_pll_set_rate() to
make it match with the clk_ops.set_rate API as well as the data type
returned by meson_clk_get_pll_settings().
Fixes: 8eed1db1adec6a ("clk: meson: pll: update driver for the g12a")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
drivers/clk/meson/clk-pll.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/clk/meson/clk-pll.c b/drivers/clk/meson/clk-pll.c
index 9404609b5ebf..5b932976483f 100644
--- a/drivers/clk/meson/clk-pll.c
+++ b/drivers/clk/meson/clk-pll.c
@@ -365,8 +365,9 @@ static int meson_clk_pll_set_rate(struct clk_hw *hw, unsigned long rate,
{
struct clk_regmap *clk = to_clk_regmap(hw);
struct meson_clk_pll_data *pll = meson_clk_pll_data(clk);
- unsigned int enabled, m, n, frac = 0, ret;
+ unsigned int enabled, m, n, frac = 0;
unsigned long old_rate;
+ int ret;
if (parent_rate == 0 || rate == 0)
return -EINVAL;
--
2.17.1

View File

@ -1,7 +1,7 @@
From e7984e0fc2132ce18aba0577a5d0c51ea9af1969 Mon Sep 17 00:00:00 2001
From df8a56723a276060ed9fac39b15a3091470e80fe Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sat, 14 Nov 2020 17:37:09 +0100
Subject: [PATCH 18/76] FROMGIT: dt-bindings: net: dwmac-meson: use picoseconds
Subject: [PATCH 16/78] FROMGIT: dt-bindings: net: dwmac-meson: use picoseconds
for the RGMII RX delay
Amlogic Meson G12A, G12B and SM1 SoCs have a more advanced RGMII RX

View File

@ -1,41 +0,0 @@
From 79f397fdecc45a1776ba8b35d7507bbc12afc837 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sat, 26 Dec 2020 23:36:09 +0000
Subject: [PATCH 17/76] FROMGIT: clk: meson: clk-pll: propagate the error from
meson_clk_pll_set_rate()
Popagate the error code from meson_clk_pll_set_rate() when the PLL does
not lock with the new settings.
Fixes: 722825dcd54b2e ("clk: meson: migrate plls clocks to clk_regmap")
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
drivers/clk/meson/clk-pll.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/drivers/clk/meson/clk-pll.c b/drivers/clk/meson/clk-pll.c
index 5b932976483f..49f27fe53213 100644
--- a/drivers/clk/meson/clk-pll.c
+++ b/drivers/clk/meson/clk-pll.c
@@ -394,7 +394,8 @@ static int meson_clk_pll_set_rate(struct clk_hw *hw, unsigned long rate,
if (!enabled)
return 0;
- if (meson_clk_pll_enable(hw)) {
+ ret = meson_clk_pll_enable(hw);
+ if (ret) {
pr_warn("%s: pll did not lock, trying to restore old rate %lu\n",
__func__, old_rate);
/*
@@ -406,7 +407,7 @@ static int meson_clk_pll_set_rate(struct clk_hw *hw, unsigned long rate,
meson_clk_pll_set_rate(hw, old_rate, parent_rate);
}
- return 0;
+ return ret;
}
/*
--
2.17.1

View File

@ -1,7 +1,7 @@
From 5083ba789a08c6afcc104cb8876350ce8e427fe3 Mon Sep 17 00:00:00 2001
From c5217e5933cc3042bcd3d55c5c36bdc1d792278c Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 12 Jun 2020 08:04:00 +0000
Subject: [PATCH 19/76] FROMGIT: dt-bindings: arm: amlogic: add support for the
Subject: [PATCH 17/78] FROMGIT: dt-bindings: arm: amlogic: add support for the
Beelink GS-King-X
The Shenzen AZW (Beelink) GS-King-X is based on the Amlogic W400 reference

View File

@ -1,8 +1,7 @@
From 5f0307eb4cff55da386853518a0c893ce3a25e5a Mon Sep 17 00:00:00 2001
From 14d9192e589d991dbf8812d97cc0cdc889b1bc4b Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 19 Jan 2021 15:32:38 +0000
Subject: [PATCH 37/76] FROMLIST(v2): dt-bindings: arm: amlogic: sort SM1
bindings
Subject: [PATCH 18/78] FROMGIT: dt-bindings: arm: amlogic: sort SM1 bindings
Sort the bindings before adding new SM1 devices.

View File

@ -1,7 +1,7 @@
From 46f0433454813a71768d4cf75c5a8c9aa812ab18 Mon Sep 17 00:00:00 2001
From cb50d337170dd7e0101c7b25752ea0346128f9a9 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sat, 12 Dec 2020 05:44:14 +0000
Subject: [PATCH 40/76] FROMLIST(v2): dt-bindings: arm: amlogic: add ODROID-HC4
Subject: [PATCH 19/78] FROMGIT: dt-bindings: arm: amlogic: add ODROID-HC4
bindings
Add the board bindings for the ODROID-HC4 device.

View File

@ -1,7 +1,7 @@
From bdc03bebf7cf17e35091d69a058814b880afde63 Mon Sep 17 00:00:00 2001
From 6a741a15e6aae96d67e2699e6ae405a1f590a080 Mon Sep 17 00:00:00 2001
From: Lukasz Luba <lukasz.luba@arm.com>
Date: Sun, 24 Jan 2021 03:57:47 +0000
Subject: [PATCH 20/76] FROMGIT: drm/panfrost: add governor data with
Subject: [PATCH 20/78] FROMGIT: drm/panfrost: add governor data with
pre-defined thresholds
The simple_ondemand devfreq governor uses two thresholds to decide about

View File

@ -1,39 +0,0 @@
From bb16b76d0b69d83a7182226eede633a89cd85abd Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sun, 15 Nov 2020 10:23:02 +0100
Subject: [PATCH 21/76] FROMGIT: net: stmmac: dwmac-meson8b: fix enabling the
timing-adjustment clock
The timing-adjustment clock only has to be enabled when a) there is a
2ns RX delay configured using device-tree and b) the phy-mode indicates
that the RX delay should be enabled.
Only enable the RX delay if both are true, instead of (by accident) also
enabling it when there's the 2ns RX delay configured but the phy-mode
incicates that the RX delay is not used.
Fixes: 9308c47640d515 ("net: stmmac: dwmac-meson8b: add support for the RX delay configuration")
Reported-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
---
drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c
index f184b00f5116..5f500141567d 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-meson8b.c
@@ -301,7 +301,7 @@ static int meson8b_init_prg_eth(struct meson8b_dwmac *dwmac)
return -EINVAL;
}
- if (rx_dly_config & PRG_ETH0_ADJ_ENABLE) {
+ if (delay_config & PRG_ETH0_ADJ_ENABLE) {
if (!dwmac->timing_adj_clk) {
dev_err(dwmac->dev,
"The timing-adjustment clock is mandatory for the RX delay re-timing\n");
--
2.17.1

View File

@ -1,7 +1,7 @@
From 8faf06430d019588bfaa2fa1a0bc16c09d9bbc0f Mon Sep 17 00:00:00 2001
From 4405cbfa9694d95695f310db55a67e09c3f60da9 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sat, 14 Nov 2020 17:41:04 +0100
Subject: [PATCH 22/76] FROMGIT: net: stmmac: dwmac-meson8b: use picoseconds
Subject: [PATCH 21/78] FROMGIT: net: stmmac: dwmac-meson8b: use picoseconds
for the RGMII RX delay
Amlogic Meson G12A, G12B and SM1 SoCs have a more advanced RGMII RX

View File

@ -1,7 +1,7 @@
From db40c5ed1fec54ab7d970a6337fe7521ca78736c Mon Sep 17 00:00:00 2001
From 781820af4b5ead6360c0c1963ad29777b7a6f269 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sat, 14 Nov 2020 18:02:03 +0100
Subject: [PATCH 23/76] FROMGIT: net: stmmac: dwmac-meson8b: move RGMII delays
Subject: [PATCH 22/78] FROMGIT: net: stmmac: dwmac-meson8b: move RGMII delays
into a separate function
Newer SoCs starting with the Amlogic Meson G12A have more a precise

View File

@ -1,7 +1,7 @@
From 181ceef264421a7979830dcd2222574d20e7723a Mon Sep 17 00:00:00 2001
From 8b9f0f9e6820ed2a945ec86eb9d26313dd0b7fe1 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Sat, 14 Nov 2020 19:41:11 +0100
Subject: [PATCH 24/76] FROMGIT: net: stmmac: dwmac-meson8b: add support for
Subject: [PATCH 23/78] FROMGIT: net: stmmac: dwmac-meson8b: add support for
the RGMII RX delay on G12A
Amlogic Meson G12A (and newer: G12B, SM1) SoCs have a more advanced RX

View File

@ -1,7 +1,7 @@
From fe4f17b6f58e8e0d9cd55a07a6dcd84cba027541 Mon Sep 17 00:00:00 2001
From fc3b4a9e8327f66560a43c3f1e1e9de2ad4e57b4 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Wed, 20 Jan 2021 02:57:45 +0000
Subject: [PATCH 25/76] FROMGIT: net: stmmac: dwmac-meson8b: fix the RX delay
Subject: [PATCH 24/78] FROMGIT: net: stmmac: dwmac-meson8b: fix the RX delay
validation
When has_prg_eth1_rgmii_rx_delay is true then we support RX delays

View File

@ -1,7 +1,7 @@
From 1dbe2c1c81ce9fd782151c0498862fdeb3a2066b Mon Sep 17 00:00:00 2001
From 67de7e49a6fd09c8173d0f645d584b797f057e0f Mon Sep 17 00:00:00 2001
From: Qinglang Miao <miaoqinglang@huawei.com>
Date: Sat, 28 Nov 2020 16:10:04 +0000
Subject: [PATCH 27/76] FROMLIST(v1): drm/panfrost: fix reference leak in
Subject: [PATCH 25/78] FROMLIST(v1): drm/panfrost: fix reference leak in
panfrost_job_hw_submit
pm_runtime_get_sync will increment pm usage counter even it

View File

@ -1,77 +0,0 @@
From 4e95f9964cb26f12a79b569a527b9ebefd500899 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Tue, 26 Jan 2021 13:04:46 +0000
Subject: [PATCH 26/76] FROMLIST(v1): Revert "arm64: dts: amlogic: add missing
ethernet reset ID"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
It has been reported on IRC and in KernelCI boot tests, this change breaks
internal PHY support on the Amlogic G12A/SM1 Based boards.
We suspect the added signal to reset more than the Ethernet MAC but also
the MDIO/(RG)MII mux used to redirect the MAC signals to the internal PHY.
This reverts commit f3362f0c18174a1f334a419ab7d567a36bd1b3f3 while we find
and acceptable solution to cleanly reset the Ethernet MAC.
Reported-by: Corentin Labbe <clabbe@baylibre.com>
Acked-by: Jérôme Brunet <jbrunet@baylibre.com>
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
---
arch/arm64/boot/dts/amlogic/meson-axg.dtsi | 2 --
arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 2 --
arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 3 ---
3 files changed, 7 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
index ba1c6dfdc4b6..d945c84ab697 100644
--- a/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-axg.dtsi
@@ -280,8 +280,6 @@
"timing-adjustment";
rx-fifo-depth = <4096>;
tx-fifo-depth = <2048>;
- resets = <&reset RESET_ETHERNET>;
- reset-names = "stmmaceth";
power-domains = <&pwrc PWRC_AXG_ETHERNET_MEM_ID>;
status = "disabled";
};
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
index 85def57463db..3a4f20506a61 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
@@ -224,8 +224,6 @@
"timing-adjustment";
rx-fifo-depth = <4096>;
tx-fifo-depth = <2048>;
- resets = <&reset RESET_ETHERNET>;
- reset-names = "stmmaceth";
status = "disabled";
mdio0: mdio {
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
index ac6e99a9c95f..cf9eb7c8a6f0 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
@@ -13,7 +13,6 @@
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/power/meson-gxbb-power.h>
-#include <dt-bindings/reset/amlogic,meson-gxbb-reset.h>
#include <dt-bindings/thermal/thermal.h>
/ {
@@ -582,8 +581,6 @@
interrupt-names = "macirq";
rx-fifo-depth = <4096>;
tx-fifo-depth = <2048>;
- resets = <&reset RESET_ETHERNET>;
- reset-names = "stmmaceth";
power-domains = <&pwrc PWRC_GXBB_ETHERNET_MEM_ID>;
status = "disabled";
};
--
2.17.1

View File

@ -1,7 +1,7 @@
From 0e6e551be4fc9518b60f05a76f6b9a1360ab69b7 Mon Sep 17 00:00:00 2001
From 7e18480984ed499afc05e6e259d9c2208f337c44 Mon Sep 17 00:00:00 2001
From: Lukasz Luba <lukasz.luba@arm.com>
Date: Tue, 12 Jan 2021 02:49:18 +0000
Subject: [PATCH 28/76] FROMLIST(v1): drm/panfrost: Use delayed timer as
Subject: [PATCH 26/78] FROMLIST(v1): drm/panfrost: Use delayed timer as
default in devfreq profile
Devfreq framework supports 2 modes for monitoring devices.

View File

@ -0,0 +1,44 @@
From 1b3af6a91da8a8a77afb4048831d8b7b1eea07ba Mon Sep 17 00:00:00 2001
From: Boris Brezillon <boris.brezillon@collabora.com>
Date: Thu, 4 Feb 2021 07:34:34 +0000
Subject: [PATCH 27/78] FROMLIST(v2): drm/panfrost: Clear MMU irqs before
handling the fault
When a fault is handled it will unblock the GPU which will continue
executing its shader and might fault almost immediately on a different
page. If we clear interrupts after handling the fault we might miss new
faults, so clear them before.
Cc: <stable@vger.kernel.org>
Fixes: 187d2929206e ("drm/panfrost: Add support for GPU heap allocations")
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Steven Price <steven.price@arm.com>
---
drivers/gpu/drm/panfrost/panfrost_mmu.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/panfrost/panfrost_mmu.c b/drivers/gpu/drm/panfrost/panfrost_mmu.c
index 7c1b3481b785..904d63450862 100644
--- a/drivers/gpu/drm/panfrost/panfrost_mmu.c
+++ b/drivers/gpu/drm/panfrost/panfrost_mmu.c
@@ -593,6 +593,8 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data)
access_type = (fault_status >> 8) & 0x3;
source_id = (fault_status >> 16);
+ mmu_write(pfdev, MMU_INT_CLEAR, mask);
+
/* Page fault only */
ret = -1;
if ((status & mask) == BIT(i) && (exception_type & 0xF8) == 0xC0)
@@ -616,8 +618,6 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data)
access_type, access_type_name(pfdev, fault_status),
source_id);
- mmu_write(pfdev, MMU_INT_CLEAR, mask);
-
status &= ~mask;
}
--
2.17.1

View File

@ -0,0 +1,50 @@
From 54bd9334981810e828a3b21bd3dd3f043497c3c2 Mon Sep 17 00:00:00 2001
From: Boris Brezillon <boris.brezillon@collabora.com>
Date: Thu, 4 Feb 2021 07:35:52 +0000
Subject: [PATCH 28/78] FROMLIST(v2): drm/panfrost: Don't try to map pages that
are already mapped
We allocate 2MB chunks at a time, so it might appear that a page fault
has already been handled by a previous page fault when we reach
panfrost_mmu_map_fault_addr(). Bail out in that case to avoid mapping the
same area twice.
Cc: <stable@vger.kernel.org>
Fixes: 187d2929206e ("drm/panfrost: Add support for GPU heap allocations")
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Steven Price <steven.price@arm.com>
---
drivers/gpu/drm/panfrost/panfrost_mmu.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/panfrost/panfrost_mmu.c b/drivers/gpu/drm/panfrost/panfrost_mmu.c
index 904d63450862..21e552d1ac71 100644
--- a/drivers/gpu/drm/panfrost/panfrost_mmu.c
+++ b/drivers/gpu/drm/panfrost/panfrost_mmu.c
@@ -488,8 +488,14 @@ static int panfrost_mmu_map_fault_addr(struct panfrost_device *pfdev, int as,
}
bo->base.pages = pages;
bo->base.pages_use_count = 1;
- } else
+ } else {
pages = bo->base.pages;
+ if (pages[page_offset]) {
+ /* Pages are already mapped, bail out. */
+ mutex_unlock(&bo->base.pages_lock);
+ goto out;
+ }
+ }
mapping = bo->base.base.filp->f_mapping;
mapping_set_unevictable(mapping);
@@ -522,6 +528,7 @@ static int panfrost_mmu_map_fault_addr(struct panfrost_device *pfdev, int as,
dev_dbg(pfdev->dev, "mapped page fault @ AS%d %llx", as, addr);
+out:
panfrost_gem_mapping_put(bomapping);
return 0;
--
2.17.1

View File

@ -1,39 +0,0 @@
From 5f66ff0ab7f871dd56140777b1e2274d301f7e23 Mon Sep 17 00:00:00 2001
From: Qinglang Miao <miaoqinglang@huawei.com>
Date: Sat, 28 Nov 2020 16:39:27 +0000
Subject: [PATCH 29/76] FROMLIST(v1): drm/lima: fix reference leak in
lima_pm_busy
pm_runtime_get_sync will increment pm usage counter even it
failed. Forgetting to putting operation will result in a
reference leak here.
A new function pm_runtime_resume_and_get is introduced in
[0] to keep usage counter balanced. So We fix the reference
leak by replacing it with new funtion.
[0] dd8088d5a896 ("PM: runtime: Add pm_runtime_resume_and_get to deal with usage counter")
Fixes: 50de2e9ebbc0 ("drm/lima: enable runtime pm")
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Qinglang Miao <miaoqinglang@huawei.com>
---
drivers/gpu/drm/lima/lima_sched.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/lima/lima_sched.c b/drivers/gpu/drm/lima/lima_sched.c
index 63b4c5643f9c..5cc20b403a25 100644
--- a/drivers/gpu/drm/lima/lima_sched.c
+++ b/drivers/gpu/drm/lima/lima_sched.c
@@ -201,7 +201,7 @@ static int lima_pm_busy(struct lima_device *ldev)
int ret;
/* resume GPU if it has been suspended by runtime PM */
- ret = pm_runtime_get_sync(ldev->dev);
+ ret = pm_runtime_resume_and_get(ldev->dev);
if (ret < 0)
return ret;
--
2.17.1

View File

@ -0,0 +1,86 @@
From de7001e0449dace7b635b715da03f268bda06550 Mon Sep 17 00:00:00 2001
From: Boris Brezillon <boris.brezillon@collabora.com>
Date: Thu, 4 Feb 2021 07:37:53 +0000
Subject: [PATCH 29/78] FROMLIST(v2): drm/panfrost: Stay in the threaded MMU
IRQ handler until we've handled all IRQs
Doing a hw-irq -> threaded-irq round-trip is counter-productive, stay
in the threaded irq handler as long as we can.
v2:
* Rework the loop to avoid a goto
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Steven Price <steven.price@arm.com>
---
drivers/gpu/drm/panfrost/panfrost_mmu.c | 26 +++++++++++++------------
1 file changed, 14 insertions(+), 12 deletions(-)
diff --git a/drivers/gpu/drm/panfrost/panfrost_mmu.c b/drivers/gpu/drm/panfrost/panfrost_mmu.c
index 21e552d1ac71..0581186ebfb3 100644
--- a/drivers/gpu/drm/panfrost/panfrost_mmu.c
+++ b/drivers/gpu/drm/panfrost/panfrost_mmu.c
@@ -578,22 +578,20 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data)
{
struct panfrost_device *pfdev = data;
u32 status = mmu_read(pfdev, MMU_INT_RAWSTAT);
- int i, ret;
+ int ret;
- for (i = 0; status; i++) {
- u32 mask = BIT(i) | BIT(i + 16);
+ while (status) {
+ u32 as = ffs(status | (status >> 16)) - 1;
+ u32 mask = BIT(as) | BIT(as + 16);
u64 addr;
u32 fault_status;
u32 exception_type;
u32 access_type;
u32 source_id;
- if (!(status & mask))
- continue;
-
- fault_status = mmu_read(pfdev, AS_FAULTSTATUS(i));
- addr = mmu_read(pfdev, AS_FAULTADDRESS_LO(i));
- addr |= (u64)mmu_read(pfdev, AS_FAULTADDRESS_HI(i)) << 32;
+ fault_status = mmu_read(pfdev, AS_FAULTSTATUS(as));
+ addr = mmu_read(pfdev, AS_FAULTADDRESS_LO(as));
+ addr |= (u64)mmu_read(pfdev, AS_FAULTADDRESS_HI(as)) << 32;
/* decode the fault status */
exception_type = fault_status & 0xFF;
@@ -604,8 +602,8 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data)
/* Page fault only */
ret = -1;
- if ((status & mask) == BIT(i) && (exception_type & 0xF8) == 0xC0)
- ret = panfrost_mmu_map_fault_addr(pfdev, i, addr);
+ if ((status & mask) == BIT(as) && (exception_type & 0xF8) == 0xC0)
+ ret = panfrost_mmu_map_fault_addr(pfdev, as, addr);
if (ret)
/* terminal fault, print info about the fault */
@@ -617,7 +615,7 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data)
"exception type 0x%X: %s\n"
"access type 0x%X: %s\n"
"source id 0x%X\n",
- i, addr,
+ as, addr,
"TODO",
fault_status,
(fault_status & (1 << 10) ? "DECODER FAULT" : "SLAVE FAULT"),
@@ -626,6 +624,10 @@ static irqreturn_t panfrost_mmu_irq_handler_thread(int irq, void *data)
source_id);
status &= ~mask;
+
+ /* If we received new MMU interrupts, process them before returning. */
+ if (!status)
+ status = mmu_read(pfdev, MMU_INT_RAWSTAT);
}
mmu_write(pfdev, MMU_INT_MASK, ~0);
--
2.17.1

View File

@ -1,7 +1,7 @@
From aa3efd8bd2329b37cf8913c11b37199bc45fd6fb Mon Sep 17 00:00:00 2001
From 6052a5deef08c74bc98c82ec29561aa752a6720c Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 24 Jan 2021 11:27:35 +0000
Subject: [PATCH 30/76] FROMLIST(v2): drm/lima: add governor data with
Subject: [PATCH 30/78] FROMLIST(v2): drm/lima: add governor data with
pre-defined thresholds
This patch adapts the panfrost pre-defined thresholds change [0] to the

View File

@ -1,7 +1,7 @@
From 6f9828a65b5f4da498317a6a7d1c6639666a8efc Mon Sep 17 00:00:00 2001
From a0042b05f655fb0242c2708023051212c1bb5cc2 Mon Sep 17 00:00:00 2001
From: Lukasz Luba <lukasz.luba@arm.com>
Date: Wed, 27 Jan 2021 11:36:36 +0000
Subject: [PATCH 31/76] FROMLIST(v1): drm/lima: Use delayed timer as default in
Subject: [PATCH 31/78] FROMLIST(v1): drm/lima: Use delayed timer as default in
devfreq profile
Devfreq framework supports 2 modes for monitoring devices.

View File

@ -1,7 +1,7 @@
From 1381befcde2460345c3c4b25e85dffa7d2dd1233 Mon Sep 17 00:00:00 2001
From cc28b30761d37398e52b7f02a37c5d972ba6e65e Mon Sep 17 00:00:00 2001
From: Amjad Ouled-Ameur <aouledameur@baylibre.com>
Date: Fri, 13 Nov 2020 07:45:15 +0000
Subject: [PATCH 32/76] FROMLIST(v1): phy: amlogic: phy-meson-gxl-usb2: fix
Subject: [PATCH 32/78] FROMLIST(v1): 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 e6a9357363650fd4d8174a1ff9ba245c597ece1f Mon Sep 17 00:00:00 2001
From af1ff7e8b282d244d97b94e1313011078bff805c Mon Sep 17 00:00:00 2001
From: Amjad Ouled-Ameur <aouledameur@baylibre.com>
Date: Fri, 13 Nov 2020 07:46:15 +0000
Subject: [PATCH 33/76] FROMLIST(v1): usb: dwc3: meson-g12a: fix shared reset
Subject: [PATCH 33/78] FROMLIST(v1): usb: dwc3: meson-g12a: fix shared reset
control use
reset_control_(de)assert() calls are called on a shared reset line when

View File

@ -1,7 +1,7 @@
From f2779a5b9d6c5f58bdc2c3fa7bd2899bd02c8723 Mon Sep 17 00:00:00 2001
From 1b28be6588104b09471115cfbfd951709bf21084 Mon Sep 17 00:00:00 2001
From: Lars-Peter Clausen <lars@metafoo.de>
Date: Mon, 21 Dec 2020 14:19:57 +0000
Subject: [PATCH 34/76] FROMLIST(v1): ASoC: meson: Use managed DMA buffer
Subject: [PATCH 34/78] FROMLIST(v1): ASoC: meson: Use managed DMA buffer
allocation
Using a managed buffer will pre-allocate the buffer using

View File

@ -0,0 +1,176 @@
From e6d584c2cf5aae23408baab574dfc096c45573d4 Mon Sep 17 00:00:00 2001
From: Krzysztof Kozlowski <krzk@kernel.org>
Date: Sun, 21 Feb 2021 16:27:16 +0000
Subject: [PATCH 35/78] FROMLIST(v1): ASoC: constify of_phandle_args in
snd_soc_get_dai_name()
The pointer to of_phandle_args passed to snd_soc_get_dai_name() and
of_xlate_dai_name() implementations is not modified. Since it is being
used only to translate passed OF node to a DAI name, it should not be
modified, so mark it as const for correctness and safer code.
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
include/sound/soc-component.h | 4 ++--
include/sound/soc.h | 2 +-
sound/soc/meson/aiu-acodec-ctrl.c | 2 +-
sound/soc/meson/aiu-codec-ctrl.c | 2 +-
sound/soc/meson/aiu.c | 4 ++--
sound/soc/meson/aiu.h | 2 +-
sound/soc/qcom/lpass-cpu.c | 2 +-
sound/soc/qcom/qdsp6/q6afe-dai.c | 2 +-
sound/soc/soc-component.c | 2 +-
sound/soc/soc-core.c | 2 +-
10 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/include/sound/soc-component.h b/include/sound/soc-component.h
index 0bce41fefd30..00494f955134 100644
--- a/include/sound/soc-component.h
+++ b/include/sound/soc-component.h
@@ -101,7 +101,7 @@ struct snd_soc_component_driver {
/* DT */
int (*of_xlate_dai_name)(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name);
int (*of_xlate_dai_id)(struct snd_soc_component *comment,
struct device_node *endpoint);
@@ -444,7 +444,7 @@ void snd_soc_component_remove(struct snd_soc_component *component);
int snd_soc_component_of_xlate_dai_id(struct snd_soc_component *component,
struct device_node *ep);
int snd_soc_component_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name);
int snd_soc_component_compr_open(struct snd_compr_stream *cstream);
void snd_soc_component_compr_free(struct snd_compr_stream *cstream,
diff --git a/include/sound/soc.h b/include/sound/soc.h
index 3fa6c40a63b7..1aaf3cedefb3 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -1219,7 +1219,7 @@ unsigned int snd_soc_of_parse_daifmt(struct device_node *np,
struct device_node **bitclkmaster,
struct device_node **framemaster);
int snd_soc_get_dai_id(struct device_node *ep);
-int snd_soc_get_dai_name(struct of_phandle_args *args,
+int snd_soc_get_dai_name(const struct of_phandle_args *args,
const char **dai_name);
int snd_soc_of_get_dai_name(struct device_node *of_node,
const char **dai_name);
diff --git a/sound/soc/meson/aiu-acodec-ctrl.c b/sound/soc/meson/aiu-acodec-ctrl.c
index 7078197e0cc5..27a6d3259c50 100644
--- a/sound/soc/meson/aiu-acodec-ctrl.c
+++ b/sound/soc/meson/aiu-acodec-ctrl.c
@@ -159,7 +159,7 @@ static const struct snd_kcontrol_new aiu_acodec_ctrl_controls[] = {
};
static int aiu_acodec_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name)
{
return aiu_of_xlate_dai_name(component, args, dai_name, AIU_ACODEC);
diff --git a/sound/soc/meson/aiu-codec-ctrl.c b/sound/soc/meson/aiu-codec-ctrl.c
index 4b773d3e8b07..c3ea733fce91 100644
--- a/sound/soc/meson/aiu-codec-ctrl.c
+++ b/sound/soc/meson/aiu-codec-ctrl.c
@@ -125,7 +125,7 @@ static const struct snd_soc_dapm_route aiu_hdmi_ctrl_routes[] = {
};
static int aiu_hdmi_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name)
{
return aiu_of_xlate_dai_name(component, args, dai_name, AIU_HDMI);
diff --git a/sound/soc/meson/aiu.c b/sound/soc/meson/aiu.c
index dc35ca79021c..ba15d5762b0b 100644
--- a/sound/soc/meson/aiu.c
+++ b/sound/soc/meson/aiu.c
@@ -42,7 +42,7 @@ static const struct snd_soc_dapm_route aiu_cpu_dapm_routes[] = {
};
int aiu_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name,
unsigned int component_id)
{
@@ -72,7 +72,7 @@ int aiu_of_xlate_dai_name(struct snd_soc_component *component,
}
static int aiu_cpu_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name)
{
return aiu_of_xlate_dai_name(component, args, dai_name, AIU_CPU);
diff --git a/sound/soc/meson/aiu.h b/sound/soc/meson/aiu.h
index 87aa19ac4af3..393b6c2307e4 100644
--- a/sound/soc/meson/aiu.h
+++ b/sound/soc/meson/aiu.h
@@ -45,7 +45,7 @@ struct aiu {
SNDRV_PCM_FMTBIT_S24_LE)
int aiu_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name,
unsigned int component_id);
diff --git a/sound/soc/qcom/lpass-cpu.c b/sound/soc/qcom/lpass-cpu.c
index 8e5415c9234f..0af5afaa0ece 100644
--- a/sound/soc/qcom/lpass-cpu.c
+++ b/sound/soc/qcom/lpass-cpu.c
@@ -340,7 +340,7 @@ int asoc_qcom_lpass_cpu_dai_probe(struct snd_soc_dai *dai)
EXPORT_SYMBOL_GPL(asoc_qcom_lpass_cpu_dai_probe);
static int asoc_qcom_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name)
{
struct lpass_data *drvdata = snd_soc_component_get_drvdata(component);
diff --git a/sound/soc/qcom/qdsp6/q6afe-dai.c b/sound/soc/qcom/qdsp6/q6afe-dai.c
index 4e1f101281e7..e8915519f427 100644
--- a/sound/soc/qcom/qdsp6/q6afe-dai.c
+++ b/sound/soc/qcom/qdsp6/q6afe-dai.c
@@ -1315,7 +1315,7 @@ static struct snd_soc_dai_driver q6afe_dais[] = {
};
static int q6afe_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name)
{
int id = args->args[0];
diff --git a/sound/soc/soc-component.c b/sound/soc/soc-component.c
index 760523382f3c..8b958db3a353 100644
--- a/sound/soc/soc-component.c
+++ b/sound/soc/soc-component.c
@@ -357,7 +357,7 @@ int snd_soc_component_of_xlate_dai_id(struct snd_soc_component *component,
}
int snd_soc_component_of_xlate_dai_name(struct snd_soc_component *component,
- struct of_phandle_args *args,
+ const struct of_phandle_args *args,
const char **dai_name)
{
if (component->driver->of_xlate_dai_name)
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index f6d4e99b590c..50190654edda 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -2994,7 +2994,7 @@ int snd_soc_get_dai_id(struct device_node *ep)
}
EXPORT_SYMBOL_GPL(snd_soc_get_dai_id);
-int snd_soc_get_dai_name(struct of_phandle_args *args,
+int snd_soc_get_dai_name(const struct of_phandle_args *args,
const char **dai_name)
{
struct snd_soc_component *pos;
--
2.17.1

View File

@ -1,46 +0,0 @@
From 04b1ab152b6f130df44c8c327901431f8ef55fb1 Mon Sep 17 00:00:00 2001
From: Artem Lapkin <art@khadas.com>
Date: Fri, 29 Jan 2021 14:17:19 +0000
Subject: [PATCH 36/76] FROMLIST(v1): arm64: dts: meson: fix broken wifi node
for Khadas VIM3L
Move &sd_emmc_a node from /* */ commented area because cannot load wifi fw
without sd-uhs-sdr50 option on VIM3L
[ 11.686590] brcmfmac: brcmf_chip_cores_check: CPU core not detected
[ 11.696382] brcmfmac: brcmf_sdio_probe_attach: brcmf_chip_attach failed!
[ 11.706240] brcmfmac: brcmf_sdio_probe: brcmf_sdio_probe_attach failed
[ 11.715890] brcmfmac: brcmf_ops_sdio_probe: F2 error, probe failed -19...
[ 13.718424] brcmfmac: brcmf_chip_recognition: chip backplane type 15 is not supported
Fixes: f1bb924e8f5b ("arm64: dts: meson: fix mmc0 tuning error on Khadas VIM3")
Signed-off-by: Artem Lapkin <art@khadas.com>
---
arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts b/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
index 4b517ca72059..29c785cf5c96 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
@@ -89,13 +89,13 @@
status = "okay";
};
-&sd_emmc_a {
- sd-uhs-sdr50;
-};
-
&usb {
phys = <&usb2_phy0>, <&usb2_phy1>;
phy-names = "usb2-phy0", "usb2-phy1";
};
*/
+&sd_emmc_a {
+ sd-uhs-sdr50;
+};
+
--
2.17.1

View File

@ -1,7 +1,7 @@
From 0694da394778d362654c518a08b6810a48b97e19 Mon Sep 17 00:00:00 2001
From 28fd818e286b4d92042e2b3d408f9037b6ab21ce Mon Sep 17 00:00:00 2001
From: Andreas Rammhold <andreas@rammhold.de>
Date: Thu, 28 Jan 2021 09:43:36 +0000
Subject: [PATCH 35/76] FROMLIST(v1): spi-nor: add support for XT25F128B
Subject: [PATCH 36/78] FROMLIST(v1): spi-nor: add support for XT25F128B
This adds support for the XT25F128B as found on the RockPi4b SBC.
@ -40,10 +40,10 @@ index 653923896205..3f7a52d7fa0b 100644
obj-$(CONFIG_MTD_SPI_NOR) += controllers/
diff --git a/drivers/mtd/spi-nor/core.c b/drivers/mtd/spi-nor/core.c
index 20df44b753da..46ec47dfac14 100644
index b17faccc95c4..427af2298e37 100644
--- a/drivers/mtd/spi-nor/core.c
+++ b/drivers/mtd/spi-nor/core.c
@@ -2176,6 +2176,7 @@ static const struct spi_nor_manufacturer *manufacturers[] = {
@@ -2178,6 +2178,7 @@ static const struct spi_nor_manufacturer *manufacturers[] = {
&spi_nor_winbond,
&spi_nor_xilinx,
&spi_nor_xmc,

View File

@ -1,7 +1,8 @@
From 6f706f917237bcc53e742bc07bfe2984c56e9c3a Mon Sep 17 00:00:00 2001
From 7269e66ec09d178a7ad7f3c418c92ea0d8183fc7 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 19 Jan 2021 11:55:20 +0000
Subject: [PATCH 64/76] media: rc: add keymap for minix-neo remote
Subject: [PATCH 37/78] FROMLIST(v1): media: rc: add keymap for minix-neo
remote
Add a keymap and bindings for the simple IR (NEC) remote used with
Minix 'NEO' branded Android STB devices.

View File

@ -1,11 +1,11 @@
From 90b781f9440f5ee9abc66a5f4c9a1358a82a26bd Mon Sep 17 00:00:00 2001
From c606e2fab43277b72b7fea5bb733dbbaac5bffa6 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 29 Jan 2021 04:46:21 +0000
Subject: [PATCH 62/76] dt-bindings: arm: amlogic: add support for the Minix
NEO U9-H
Subject: [PATCH 38/78] FROMLIST(v1): dt-bindings: arm: amlogic: add support
for the Minix NEO U9-H
The Minix NEO U9-H is a small form-factor Android STB based on the
Amlogic Q200 reference board with an S912 chip.
Amlogic Q200 reference board with an S912-H chip.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
@ -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 41b22a406423..4ab110d6b3f0 100644
index 5f6769bf45bd..d24334e1e166 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -120,6 +120,7 @@ properties:

View File

@ -1,11 +1,11 @@
From 8539b594ffc44f215a7b26437fe5424fb5525ab9 Mon Sep 17 00:00:00 2001
From 17b4f3b62b670127702280a40bf772d958062fdc Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 19 Jan 2021 12:57:11 +0000
Subject: [PATCH 63/76] arm64: dts: meson: add initial device-tree for Minix
NEO U9-H
Subject: [PATCH 39/78] FROMLIST(v1): arm64: dts: meson: add initial
device-tree for Minix NEO U9-H
Minix NEO U9H is based on the Amlogic Q200 reference board with an
S912-H chip and the folloing specs:
Minix NEO U9-H is based on the Amlogic Q200 reference board with an
S912-H chip and the following specs:
- 2GB DDR3 RAM
- 16GB eMMC
@ -23,15 +23,16 @@ S912-H chip and the folloing specs:
- 1x Update/Reset button (underside)
- 1x micro SD card slot
Tested-by: Wes Bradley <komplex@live.ie>
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm64/boot/dts/amlogic/Makefile | 1 +
.../dts/amlogic/meson-gxm-minix-neo-u9h.dts | 124 ++++++++++++++++++
2 files changed, 125 insertions(+)
.../dts/amlogic/meson-gxm-minix-neo-u9h.dts | 120 ++++++++++++++++++
2 files changed, 121 insertions(+)
create mode 100644 arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 3cf6699b4f30..da11ef28a47b 100644
index 78a569d7fa20..aebd49c88719 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -38,6 +38,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxl-s905w-p281.dtb
@ -44,10 +45,10 @@ index 3cf6699b4f30..da11ef28a47b 100644
dtb-$(CONFIG_ARCH_MESON) += meson-gxm-q201.dtb
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts
new file mode 100644
index 000000000000..50c35b7606b9
index 000000000000..a414cd39c2b1
--- /dev/null
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts
@@ -0,0 +1,124 @@
@@ -0,0 +1,120 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) Christian Hewitt <christianshewitt@gmail.com>
@ -64,10 +65,6 @@ index 000000000000..50c35b7606b9
+ compatible = "minix,neo-u9h", "amlogic,s912", "amlogic,meson-gxm";
+ model = "Minix Neo U9-H";
+
+ aliases {
+ rtc0 = &rtc;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+

View File

@ -0,0 +1,63 @@
From 6d69b3667677eca2ecc200ae366e062a5d66806a Mon Sep 17 00:00:00 2001
From: Alexander Stein <alexander.stein@mailbox.org>
Date: Wed, 3 Feb 2021 17:03:42 +0000
Subject: [PATCH 40/78] FROMLIST(v2): arm64: dts: amlogic: assign a fixed index
to mmc devices
Recently introduced async probe on mmc devices can shuffle block IDs.
Pin them to fixed values to ease booting in environments where UUIDs
are not practical. Use newly introduced aliases for mmcblk devices
from [1].
The unconventional order (B, C, A) is due to the fact that sd_emmc_a is
(according to the comments) only used for SDIO.
AFAICS all boards either have both sd_emmc_b and sd_emmc_c or only one
of them enabled. So the alias order should match the previous non-async
order for all of them.
[1] https://patchwork.kernel.org/patch/11747669/
Signed-off-by: Alexander Stein <alexander.stein@mailbox.org>
---
arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi | 6 ++++++
arch/arm64/boot/dts/amlogic/meson-gx.dtsi | 6 ++++++
2 files changed, 12 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
index 3a4f20506a61..bd6e48e3c51a 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12-common.dtsi
@@ -17,6 +17,12 @@
#address-cells = <2>;
#size-cells = <2>;
+ aliases {
+ mmc0 = &sd_emmc_b;
+ mmc1 = &sd_emmc_c;
+ mmc2 = &sd_emmc_a;
+ };
+
chosen {
#address-cells = <2>;
#size-cells = <2>;
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
index cf9eb7c8a6f0..14ff467c6be8 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
@@ -20,6 +20,12 @@
#address-cells = <2>;
#size-cells = <2>;
+ aliases {
+ mmc0 = &sd_emmc_b;
+ mmc1 = &sd_emmc_c;
+ mmc2 = &sd_emmc_a;
+ };
+
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
--
2.17.1

View File

@ -0,0 +1,69 @@
From 19bbd3afcc008b3b428bf12f4e74f9166ffe7ea3 Mon Sep 17 00:00:00 2001
From: Artem Lapkin <art@khadas.com>
Date: Wed, 24 Feb 2021 12:12:53 +0000
Subject: [PATCH 41/78] FROMLIST(v1): drm/meson: add shutdown function to
meson_drv
Problem: random stucks on reboot stage about 1/20 stuck/reboots
// debug kernel log
[ 4.496660] reboot: kernel restart prepare CMD:(null)
[ 4.498114] meson_ee_pwrc c883c000.system-controller:power-controller: shutdown begin
[ 4.503949] meson_ee_pwrc c883c000.system-controller:power-controller: shutdown domain 0:VPU...
...STUCK...
Solution: add shutdown function to meson_drm driver
// debug kernel log
[ 5.231896] reboot: kernel restart prepare CMD:(null)
[ 5.246135] [drm:meson_drv_shutdown]
...
[ 5.259271] meson_ee_pwrc c883c000.system-controller:power-controller: shutdown begin
[ 5.274688] meson_ee_pwrc c883c000.system-controller:power-controller: shutdown domain 0:VPU...
[ 5.338331] reboot: Restarting system
[ 5.358293] psci: PSCI_0_2_FN_SYSTEM_RESET reboot_mode:0 cmd:(null)
bl31 reboot reason: 0xd
bl31 reboot reason: 0x0
system cmd 1.
...REBOOT...
Tested: on VIM1 VIM2 VIM3 VIM3L khadas sbcs - 1000+ successful reboots
and Odroid boards, WeTek Play2 (GXBB)
Tested-by: Christian Hewitt <christianshewitt@gmail.com>
Signed-off-by: Artem Lapkin <art@khadas.com>
---
drivers/gpu/drm/meson/meson_drv.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/gpu/drm/meson/meson_drv.c b/drivers/gpu/drm/meson/meson_drv.c
index 42c5d3246cfc..ac3808e846ff 100644
--- a/drivers/gpu/drm/meson/meson_drv.c
+++ b/drivers/gpu/drm/meson/meson_drv.c
@@ -482,6 +482,17 @@ static int meson_probe_remote(struct platform_device *pdev,
return count;
}
+static void meson_drv_shutdown(struct platform_device *pdev)
+{
+ struct meson_drm *priv = dev_get_drvdata(&pdev->dev);
+ struct drm_device *drm = priv->drm;
+
+ dev_warn(&pdev->dev, "%s", __func__);
+ //drm_dev_unregister(drm);
+ drm_kms_helper_poll_fini(drm);
+ drm_atomic_helper_shutdown(drm);
+}
+
static int meson_drv_probe(struct platform_device *pdev)
{
struct component_match *match = NULL;
@@ -553,6 +564,7 @@ static const struct dev_pm_ops meson_drv_pm_ops = {
static struct platform_driver meson_drm_platform_driver = {
.probe = meson_drv_probe,
+ .shutdown = meson_drv_shutdown,
.driver = {
.name = "meson-drm",
.of_match_table = dt_match,
--
2.17.1

View File

@ -1,7 +1,7 @@
From 176ed28766085a6f74fe883418c27b67dc58ccff Mon Sep 17 00:00:00 2001
From 5e8efea13b5e47555d76b994ff26693ad5bfbabe Mon Sep 17 00:00:00 2001
From: Boris Brezillon <boris.brezillon@collabora.com>
Date: Tue, 4 Feb 2020 15:35:03 +0100
Subject: [PATCH 42/76] WIP: drm/panfrost: Make sure MMU context lifetime is
Subject: [PATCH 42/78] WIP: drm/panfrost: Make sure MMU context lifetime is
not bound to panfrost_priv
Jobs can be in-flight when the file descriptor is closed (either because
@ -229,7 +229,7 @@ index d6d5c15184f9..b600618abb49 100644
dma_fence_signal_locked(job->done_fence);
diff --git a/drivers/gpu/drm/panfrost/panfrost_mmu.c b/drivers/gpu/drm/panfrost/panfrost_mmu.c
index 7c1b3481b785..42da9c40fc4b 100644
index 0581186ebfb3..569509c2ba27 100644
--- a/drivers/gpu/drm/panfrost/panfrost_mmu.c
+++ b/drivers/gpu/drm/panfrost/panfrost_mmu.c
@@ -1,5 +1,8 @@
@ -331,7 +331,7 @@ index 7c1b3481b785..42da9c40fc4b 100644
out:
spin_unlock(&pfdev->as_lock);
return mapping;
@@ -535,6 +490,107 @@ static int panfrost_mmu_map_fault_addr(struct panfrost_device *pfdev, int as,
@@ -542,6 +497,107 @@ static int panfrost_mmu_map_fault_addr(struct panfrost_device *pfdev, int as,
return ret;
}

View File

@ -1,7 +1,7 @@
From 029a03290c4ad5594bc800fa15d0ede1abb127f0 Mon Sep 17 00:00:00 2001
From d4a390b8e4afb04886a5a7600d343f7b5c149ae8 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Thu, 3 Nov 2016 15:29:23 +0100
Subject: [PATCH 43/76] WIP: arm64: meson: add Amlogic Meson GX PM Suspend
Subject: [PATCH 43/78] WIP: 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 b2e229ad94cfa0940baac8e6b15912d733fe68d4 Mon Sep 17 00:00:00 2001
From b6ce27b12f864072eb706b56ce4f32603e211f16 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Thu, 3 Nov 2016 15:29:25 +0100
Subject: [PATCH 44/76] WIP: arm64: dts: meson: add support for GX PM and
Subject: [PATCH 44/78] WIP: arm64: dts: meson: add support for GX PM and
Virtual RTC
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
@ -10,10 +10,10 @@ Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
1 file changed, 9 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
index cf9eb7c8a6f0..8e3929e9cf42 100644
index 14ff467c6be8..2c7afe34112b 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx.dtsi
@@ -215,6 +215,10 @@
@@ -221,6 +221,10 @@
};
};
@ -24,7 +24,7 @@ index cf9eb7c8a6f0..8e3929e9cf42 100644
efuse: efuse {
compatible = "amlogic,meson-gx-efuse", "amlogic,meson-gxbb-efuse";
#address-cells = <1>;
@@ -452,6 +456,11 @@
@@ -458,6 +462,11 @@
};
};

View File

@ -1,7 +1,7 @@
From e4dbfa91b5924f9a3421a95bd239f6c3789071f9 Mon Sep 17 00:00:00 2001
From 56e132abb2baa69aa26850ccf7f1a3621d60bcc1 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Thu, 21 Jan 2021 01:35:36 +0000
Subject: [PATCH 45/76] WIP: arm64: dts: meson: add rtc/vrtc aliases to Khadas
Subject: [PATCH 45/78] WIP: 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

@ -0,0 +1,32 @@
From a8fe715b1ca52a0afb6db5e1ec0ebbf4d97e202d Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 1 Feb 2021 19:27:40 +0000
Subject: [PATCH 46/78] WIP: arm64: dts: meson: add rtc/vrtc aliases to Minix
NEO U9-H
Add node aliases to prevent meson-vrtc from claiming /dev/rtc0
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts b/arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts
index a414cd39c2b1..443cea738e53 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxm-minix-neo-u9h.dts
@@ -14,6 +14,11 @@
compatible = "minix,neo-u9h", "amlogic,s912", "amlogic,meson-gxm";
model = "Minix Neo U9-H";
+ aliases {
+ rtc0 = &rtc;
+ rtc1 = &vrtc;
+ };
+
leds {
compatible = "gpio-leds";
--
2.17.1

View File

@ -1,7 +1,7 @@
From da773d3b59dbd63db43576bfa1b0a6a3da252342 Mon Sep 17 00:00:00 2001
From be376ae6fb6f8050c5a6bac76d7c0d63eb6b8cfb Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Thu, 28 Jan 2021 17:15:22 +0000
Subject: [PATCH 59/76] arm64: dts: meson: add spifc node to ODROID-HC4
Subject: [PATCH 47/78] WIP: arm64: dts: meson: add spifc node to ODROID-HC4
Add a node for the XT25F128B SPI-NOR flash to make it accessible
from Linux.

View File

@ -1,7 +1,7 @@
From 6f2d6372b659434f8816584053d963ee89ce9746 Mon Sep 17 00:00:00 2001
From bb9668cf2d5d550b95b427fe2e6f1ffd64dcc80e Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 15 May 2020 07:23:05 +0000
Subject: [PATCH 46/76] WIP: arm64: dts: meson: add audio playback to nexbox-a1
Subject: [PATCH 48/78] WIP: arm64: dts: meson: add audio playback to nexbox-a1
Add initial support is limited to HDMI i2s and SPDIF (LPCM).

View File

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

View File

@ -1,7 +1,7 @@
From c2ca2c7ac6c3685be4e50cd1ace51a8dd23937ef Mon Sep 17 00:00:00 2001
From 7ee301326d2cd9b06cb3c28f088a8b5af49af39f Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 15 May 2020 07:56:15 +0000
Subject: [PATCH 48/76] WIP: arm64: dts: meson: add audio playback to p200
Subject: [PATCH 50/78] 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 fb6fe8a77cbe9e1418345840c814486b9f0dadd3 Mon Sep 17 00:00:00 2001
From e8c87f1399e34d67857e955542bdb14bd6939df6 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 15 May 2020 08:02:54 +0000
Subject: [PATCH 49/76] WIP: arm64: dts: meson: add audio playback to
Subject: [PATCH 51/78] 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 9676847fa8622e8a4d5a6ecd332958db59ce8d22 Mon Sep 17 00:00:00 2001
From 4ec2803abc56413983c880e88cd580fd30f23177 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 15 May 2020 08:13:00 +0000
Subject: [PATCH 50/76] WIP: arm64: dts: meson: add audio playback to rbox-pro
Subject: [PATCH 52/78] WIP: arm64: dts: meson: add audio playback to rbox-pro
Add initial support limited to HDMI i2s and SPDIF (LPCM).

View File

@ -1,7 +1,7 @@
From 6da9a634256de728600db6239dec4d714dbd0859 Mon Sep 17 00:00:00 2001
From e1cb25c4c9f92255af4c6face8052e660a939536 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 17 May 2020 05:00:55 +0000
Subject: [PATCH 51/76] WIP: arm64: dts: meson: add audio playback to u200
Subject: [PATCH 53/78] 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 c2a54c807910603e449bfe3719d2fb8d03e67d7c Mon Sep 17 00:00:00 2001
From 0bbdd1a843c87f6a58234b822e6b39fc85fb6ab5 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sat, 16 May 2020 07:04:58 +0000
Subject: [PATCH 52/76] WIP: arm64: dts: meson: add audio playback to vega-s95
Subject: [PATCH 54/78] WIP: arm64: dts: meson: add audio playback to vega-s95
dtsi
Add initial support limited to HDMI i2s and SPDIF (LPCM).

View File

@ -1,7 +1,7 @@
From c484291b43166b9c0ad1bb52361e0b869894fd61 Mon Sep 17 00:00:00 2001
From b60fc3c2b547b2116b0f8324ed5db4bd8d06ccc4 Mon Sep 17 00:00:00 2001
From: Jerome Brunet <jbrunet@baylibre.com>
Date: Fri, 15 Feb 2019 14:21:27 +0100
Subject: [PATCH 53/76] WIP: clk: meson: g12a: fix gp0 and hifi ranges
Subject: [PATCH 55/78] WIP: clk: meson: g12a: fix gp0 and hifi ranges
While some SoC samples are able to lock with a PLL factor of 55, others
samples can't. ATM, a minimum of 60 appears to work on all the samples

View File

@ -1,7 +1,7 @@
From 4791022f0f1c7cc046d11d231c1bf6a3fef56ada Mon Sep 17 00:00:00 2001
From e7405d6e7e5e8eab9e3ac563046b0e5972f95767 Mon Sep 17 00:00:00 2001
From: Jerome Brunet <jbrunet@baylibre.com>
Date: Tue, 14 Apr 2020 10:45:08 +0200
Subject: [PATCH 54/76] WIP: clk: meson: g12a: fix hifi pll lock
Subject: [PATCH 56/78] WIP: clk: meson: g12a: fix hifi pll lock
The HIFI pll of the g12a sometimes takes a long time to report the lock in
HIFI_PLL_CNTL0 bit 31. The would eventually be reported but the delay may

View File

@ -1,7 +1,7 @@
From 22499cd4c3070943e616b2e96a27144ddc33879a Mon Sep 17 00:00:00 2001
From e34a71cfeea60066ed069b87ca34d6ec7c702ec0 Mon Sep 17 00:00:00 2001
From: Jonas Karlman <jonas@kwiboo.se>
Date: Sun, 23 Dec 2018 02:24:38 +0100
Subject: [PATCH 55/76] WIP: ASoC: hdmi-codec: reorder channel allocation list
Subject: [PATCH 57/78] 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 21874177845354c9e7b6da77e8ac5efba3a17615 Mon Sep 17 00:00:00 2001
From f643523d186e62a40158d4b969c39c7e54351627 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Wed, 23 Dec 2020 02:45:27 +0100
Subject: [PATCH 56/76] WIP: ASoC: meson: aiu: encoder-spdif: implement the
Subject: [PATCH 58/78] WIP: ASoC: meson: aiu: encoder-spdif: implement the
.mute_stream callback
Implement the .mute_stream callback based on code from the vendor

View File

@ -1,7 +1,7 @@
From 32e6676f1f1fbff63c99d7257c763e6c1436eb7b Mon Sep 17 00:00:00 2001
From 05065835844cb04697b86f82f950e9b1974f8875 Mon Sep 17 00:00:00 2001
From: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Date: Wed, 23 Dec 2020 02:46:54 +0100
Subject: [PATCH 57/76] WIP: ASoC: meson: aiu: encoder-i2s: implement the
Subject: [PATCH 59/78] WIP: ASoC: meson: aiu: encoder-i2s: implement the
.mute_stream callback
Implement the .mute_stream callback based on the code from the vendor
@ -53,7 +53,7 @@ index 932224552146..d6aea7797641 100644
};
diff --git a/sound/soc/meson/aiu.h b/sound/soc/meson/aiu.h
index 87aa19ac4af3..47acf97d8034 100644
index 393b6c2307e4..7884c50f244d 100644
--- a/sound/soc/meson/aiu.h
+++ b/sound/soc/meson/aiu.h
@@ -66,6 +66,7 @@ extern const struct snd_soc_dai_ops aiu_encoder_spdif_dai_ops;

View File

@ -1,7 +1,7 @@
From 7facee7aa5ad08b0f38da7784d6a71652a53f0cb Mon Sep 17 00:00:00 2001
From ee135ee6fe801ae3ec8fe03e09013ee207fb2d83 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Thu, 14 Jan 2021 17:43:02 +0100
Subject: [PATCH 58/76] WIP: mmc: meson-gx-mmc: set core clock phase to 270
Subject: [PATCH 60/78] WIP: mmc: meson-gx-mmc: set core clock phase to 270
degres for AXG compatible controllers
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>

View File

@ -0,0 +1,33 @@
From 4394cdc8f1cb974a8cfbda25a1f43eb480024fe2 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 21 Feb 2021 05:51:27 +0000
Subject: [PATCH 61/78] arm64: dts: meson: add sd-uhs modes to ODROID-N2/N2+
Increase max-frequency to 200000000 and add sd-uhs modes to the
ODROID N2/N2+ common dtsi.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
index 58ce569b2ace..5c70935a583e 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
@@ -517,7 +517,11 @@
bus-width = <4>;
cap-sd-highspeed;
- max-frequency = <50000000>;
+ max-frequency = <200000000>;
+ sd-uhs-sdr12;
+ sd-uhs-sdr25;
+ sd-uhs-sdr50;
+ sd-uhs-sdr104;
disable-wp;
cd-gpios = <&gpio GPIOC_6 GPIO_ACTIVE_LOW>;
--
2.17.1

View File

@ -0,0 +1,71 @@
From 64b2e352216949aa790aaf86d138a40bcf2154ec Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 21 Feb 2021 05:58:56 +0000
Subject: [PATCH 62/78] arm64: dts: meson: add GPIO line names to ODROID N2/N2+
Add GPIO line-name identifiers to the ODROID N2/N2+ common dtsi.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
.../dts/amlogic/meson-g12b-odroid-n2.dtsi | 45 +++++++++++++++++++
1 file changed, 45 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
index 5c70935a583e..ac396067911d 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
@@ -446,6 +446,51 @@
};
&gpio {
+ gpio-line-names =
+ /* GPIOZ */
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "", "", "", "",
+ /* GPIOH */
+ "", "", "", "", "", "", "", "",
+ "",
+ /* BOOT */
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "", "", "", "",
+ /* GPIOC */
+ "", "", "", "", "", "", "", "",
+ /* GPIOA */
+ "PIN_44", /* GPIOA_0 */
+ "PIN_46", /* GPIOA_1 */
+ "PIN_45", /* GPIOA_2 */
+ "PIN_47", /* GPIOA_3 */
+ "PIN_26", /* GPIOA_4 */
+ "", "", "", "", "", "",
+ "PIN_42", /* GPIOA_11 */
+ "PIN_32", /* GPIOA_12 */
+ "PIN_7", /* GPIOA_13 */
+ "PIN_27", /* GPIOA_14 */
+ "PIN_28", /* GPIOA_15 */
+ /* GPIOX */
+ "PIN_16", /* GPIOX_0 */
+ "PIN_18", /* GPIOX_1 */
+ "PIN_22", /* GPIOX_2 */
+ "PIN_11", /* GPIOX_3 */
+ "PIN_13", /* GPIOX_4 */
+ "PIN_33", /* GPIOX_5 */
+ "PIN_35", /* GPIOX_6 */
+ "PIN_15", /* GPIOX_7 */
+ "PIN_19", /* GPIOX_8 */
+ "PIN_21", /* GPIOX_9 */
+ "PIN_24", /* GPIOX_10 */
+ "PIN_23", /* GPIOX_11 */
+ "PIN_8", /* GPIOX_12 */
+ "PIN_10", /* GPIOX_13 */
+ "PIN_29", /* GPIOX_14 */
+ "PIN_31", /* GPIOX_15 */
+ "PIN_12", /* GPIOX_16 */
+ "PIN_3", /* GPIOX_17 */
+ "PIN_5", /* GPIOX_18 */
+ "PIN_36"; /* GPIOX_19 */
/*
* WARNING: The USB Hub on the Odroid-N2 needs a reset signal
* to be turned high in order to be detected by the USB Controller
--
2.17.1

View File

@ -0,0 +1,30 @@
From da6d4e2729b28e2197f4e9ed6fd7c05aac607945 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 21 Feb 2021 06:03:20 +0000
Subject: [PATCH 63/78] arm64: dts: meson: add saradc node to ODROID N2/N2+
Add the meson saradc node to the ODROID N2/N2+ common dtsi.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
index ac396067911d..f71d012e5460 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
@@ -553,6 +553,10 @@
status = "okay";
};
+&saradc {
+ status = "okay";
+};
+
/* SD card */
&sd_emmc_b {
status = "okay";
--
2.17.1

View File

@ -0,0 +1,30 @@
From 8e7c25e8abe4a81b3e1428fcac2a98c18736c67c Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 21 Feb 2021 06:05:25 +0000
Subject: [PATCH 64/78] arm64: dts: meson: remove extra tab from ODROID N2/N2+
ext_mdio node
Remove an extra tab from the ext_mdio node in the ODROID N2/N2+ common
dtsi file.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
index f71d012e5460..eeceab18a497 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-odroid-n2.dtsi
@@ -410,7 +410,7 @@
&ext_mdio {
external_phy: ethernet-phy@0 {
- /* Realtek RTL8211F (0x001cc916) */
+ /* Realtek RTL8211F (0x001cc916) */
reg = <0>;
max-speed = <1000>;
--
2.17.1

View File

@ -1,7 +1,7 @@
From fe4777109f2e53cb51ba148454dd50eca3bf59cb Mon Sep 17 00:00:00 2001
From 4bfe6f94f37ddf4c7c95d1e376228b9d70cd782e Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 27 Dec 2020 15:27:44 +0000
Subject: [PATCH 60/76] dt-bindings: arm: amlogic: add Bananapi BPI-M5 bindings
Subject: [PATCH 65/78] dt-bindings: arm: amlogic: add Bananapi BPI-M5 bindings
Add the board bindings for the Sinovoip (Bananapi) BPI-M5 device.
@ -11,10 +11,10 @@ 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 5f6769bf45bd..41b22a406423 100644
index d24334e1e166..4ab110d6b3f0 100644
--- a/Documentation/devicetree/bindings/arm/amlogic.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic.yaml
@@ -168,6 +168,7 @@ properties:
@@ -169,6 +169,7 @@ properties:
- hardkernel,odroid-hc4
- khadas,vim3l
- seirobotics,sei610

View File

@ -1,7 +1,7 @@
From 3110595efb17f414c95efdf81269f3e794c0e6b2 Mon Sep 17 00:00:00 2001
From 6754ee8562db43e03db01ba95f180a4ce1b72c64 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 27 Dec 2020 15:11:59 +0000
Subject: [PATCH 61/76] arm64: dts: meson: add initial device-tree for Bananapi
Subject: [PATCH 66/78] arm64: dts: meson: add initial device-tree for Bananapi
BPI-M5
The Bananapi Wiki links to Amlogic BSP kernel sources which show [0]
@ -23,10 +23,10 @@ Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
create mode 100644 arch/arm64/boot/dts/amlogic/meson-sm1-bananapi-m5.dts
diff --git a/arch/arm64/boot/dts/amlogic/Makefile b/arch/arm64/boot/dts/amlogic/Makefile
index 78a569d7fa20..3cf6699b4f30 100644
index aebd49c88719..da11ef28a47b 100644
--- a/arch/arm64/boot/dts/amlogic/Makefile
+++ b/arch/arm64/boot/dts/amlogic/Makefile
@@ -45,6 +45,7 @@ dtb-$(CONFIG_ARCH_MESON) += meson-gxm-rbox-pro.dtb
@@ -46,6 +46,7 @@ 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

View File

@ -1,7 +1,7 @@
From c5708fd4ba0bf0e94b8cd12e114341069273f945 Mon Sep 17 00:00:00 2001
From be1367da3d53c261e77d20ebaea58e95d8f5443c Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 24 Jun 2020 12:41:46 +0000
Subject: [PATCH 65/76] arm64: dts: meson: add common SM1 ac2xx dtsi
Subject: [PATCH 67/78] arm64: dts: meson: add common SM1 ac2xx dtsi
Add a common dtsi for Android STB devices based on the Amlogic S905X3
(AC213/AC214) and S905D3 (AC201/AC202) reference designs. The dtsi is

View File

@ -1,7 +1,7 @@
From aa8ed7aba1ef3e13c240bf14e52aedca3bbe0a40 Mon Sep 17 00:00:00 2001
From 12e312feabbe06e09dc7d83b2b9525269c86f37f Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 18 May 2020 23:23:40 +0000
Subject: [PATCH 66/76] dt-bindings: arm: amlogic: add X96-AIR bindings
Subject: [PATCH 68/78] 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

View File

@ -1,7 +1,7 @@
From 579f1e7622e2dc32cddd755ed6352fc58c54bafc Mon Sep 17 00:00:00 2001
From d57fdb6ecfbaf2453370d49b8a023028ee29c495 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 24 Jun 2020 15:04:10 +0000
Subject: [PATCH 67/76] arm64: dts: meson: add initial device-trees for X96-AIR
Subject: [PATCH 69/78] arm64: dts: meson: add initial device-trees for X96-AIR
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

View File

@ -1,7 +1,7 @@
From 7dfa8ef0f2cfb1a64fecbd4cf01b14a2dc9bf32f Mon Sep 17 00:00:00 2001
From 96c672da3e46efd9e23d907d80a99bcba1d83b8f Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 29 Jun 2020 15:54:45 +0000
Subject: [PATCH 68/76] dt-bindings: arm: amlogic: add A95XF3-AIR bindings
Subject: [PATCH 70/78] 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

View File

@ -1,7 +1,7 @@
From f4bd8af01daa8367c68cb3cbbea348a02c6808db Mon Sep 17 00:00:00 2001
From 8a25bbde77c708cde68faa0fe10b50a44f32cd54 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Wed, 3 Jun 2020 18:03:22 +0000
Subject: [PATCH 69/76] arm64: dts: meson: add initial device-trees for
Subject: [PATCH 71/78] arm64: dts: meson: add initial device-trees for
A95XF3-AIR
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8

View File

@ -1,7 +1,7 @@
From bdc03977531cf69b8fd289928c2f52430b5806b9 Mon Sep 17 00:00:00 2001
From d42cc1b7e27de2e1ac98abe1ad0f1eea12c02a17 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Jan 2021 17:24:07 +0000
Subject: [PATCH 70/76] dt-bindings: vendor-prefixes: add haochuangyi prefix
Subject: [PATCH 72/78] dt-bindings: vendor-prefixes: add haochuangyi prefix
Shenzhen Haochuangyi Technology Co.,Ltd are a manufcaturer of Android
Set-Top Box devices.

View File

@ -1,7 +1,7 @@
From 96757d1ff05a6080df35ccd0d11394cfccc1d07c Mon Sep 17 00:00:00 2001
From 55f48f171a08b8378537139eefb4bc3c5952aea0 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Jan 2021 17:25:33 +0000
Subject: [PATCH 71/76] dt-bindings: arm: amlogic: add H96-Max bindings
Subject: [PATCH 73/78] dt-bindings: arm: amlogic: add H96-Max bindings
Add the board binding for the Haochuangyi H96-Max STB device.

View File

@ -1,7 +1,7 @@
From 00f29dbdd39eeee6f7696b96fbd19ac616bb5aec Mon Sep 17 00:00:00 2001
From b57ae2960233d81603dc62428f1e565691b274f4 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 12 Jan 2021 17:26:42 +0000
Subject: [PATCH 72/76] arm64: dts: meson: add initial device-tree for H96-Max
Subject: [PATCH 74/78] arm64: dts: meson: add initial device-tree for H96-Max
The Haochuangyi H96-Max is based on the Amlogic S905X3 reference
design with the following specs:

View File

@ -1,7 +1,7 @@
From 57a9dd64706e5373eb8d4640c8592a6978aaab00 Mon Sep 17 00:00:00 2001
From 51663ab279eade8c7828f9c3d45e26f4d5adbbfa Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sat, 29 Feb 2020 15:13:02 +0000
Subject: [PATCH 73/76] dt-bindings: arm: amlogic: add support for the Tanix
Subject: [PATCH 75/78] dt-bindings: arm: amlogic: add support for the Tanix
TX5 Max
The Oranth (Tanix) TX5 Max is based on the Amlogic U200 reference

View File

@ -1,7 +1,7 @@
From 0b95cf7438ed810360dfb2fd66b94acc2e1cb1af Mon Sep 17 00:00:00 2001
From 32373d61748b44985d8fc3ae4f8248604b82ced1 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Sun, 20 Oct 2019 04:06:59 +0000
Subject: [PATCH 74/76] arm64: dts: meson: add support for the Tanix TX5 Max
Subject: [PATCH 76/78] 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:

View File

@ -1,7 +1,7 @@
From b83ca69b0637b7abe386b88b1221118e48cdcd0a Mon Sep 17 00:00:00 2001
From 8d9cf6d03007568c751d4fac9ca1f83a3e54b534 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Mon, 21 Oct 2019 03:58:06 +0000
Subject: [PATCH 75/76] arm64: dts: meson: add multiple MeCool device trees
Subject: [PATCH 77/78] 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

View File

@ -1,7 +1,7 @@
From f2ef96d52be1a07552354084029747969f0a561b Mon Sep 17 00:00:00 2001
From 74ace7b5c101ee4925c52ff60f10620095aea22c Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 29 Dec 2020 09:31:57 +0000
Subject: [PATCH 76/76] arm64: dts: meson: fixups for WeTek common dtsi
Subject: [PATCH 78/78] arm64: dts: meson: fixups for WeTek common dtsi
Minor changes that result from work on mainline u-boot support, closer
study of vendor 3.14 device-tree, and access to vendor schematics:

View File

@ -1,7 +1,7 @@
From 9f81b716f4f1f92c7d7e717736763c885ca592f3 Mon Sep 17 00:00:00 2001
From 91f485c24fb55a7e0fcaa627fe71bb2ebd9033d5 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Fri, 13 Nov 2020 02:09:36 +0000
Subject: [PATCH 01/21] HACK: configs: meson64: prevent stdout/stderr on
Subject: [PATCH 01/10] HACK: configs: meson64: prevent stdout/stderr on
videoconsole
Several devices have CONFIG_DM_VIDEO enabled which causes stdout/stderr

View File

@ -1,25 +0,0 @@
From f9af8e2b20d319dc49f0732d0619dd622f2bf02d Mon Sep 17 00:00:00 2001
From: chewitt <christianshewitt@gmail.com>
Date: Fri, 24 Apr 2020 15:15:04 +0000
Subject: [PATCH 02/21] HACK: mmc: meson-gx: limit to 24MHz
---
drivers/mmc/meson_gx_mmc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/mmc/meson_gx_mmc.c b/drivers/mmc/meson_gx_mmc.c
index a5e9ac5637..4d90343271 100644
--- a/drivers/mmc/meson_gx_mmc.c
+++ b/drivers/mmc/meson_gx_mmc.c
@@ -283,7 +283,7 @@ static int meson_mmc_probe(struct udevice *dev)
cfg->host_caps = MMC_MODE_8BIT | MMC_MODE_4BIT |
MMC_MODE_HS_52MHz | MMC_MODE_HS;
cfg->f_min = DIV_ROUND_UP(SD_EMMC_CLKSRC_24M, CLK_MAX_DIV);
- cfg->f_max = 100000000; /* 100 MHz */
+ cfg->f_max = SD_EMMC_CLKSRC_24M;
cfg->b_max = 511; /* max 512 - 1 blocks */
cfg->name = dev->name;
--
2.17.1

View File

@ -1,92 +0,0 @@
From 239659a0a90ca7763970c3764726a606755e1ae9 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Wed, 30 Sep 2020 11:52:49 +0200
Subject: [PATCH 04/21] FROMGIT: power: domain: meson-ee-pwrc: add support for
the Meson GX SoCs
This syncs with the linux meson-ee-pwrc driver from Linux 5.10-rc1.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
---
drivers/power/domain/meson-ee-pwrc.c | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/drivers/power/domain/meson-ee-pwrc.c b/drivers/power/domain/meson-ee-pwrc.c
index 8349a9c158..dfedddd950 100644
--- a/drivers/power/domain/meson-ee-pwrc.c
+++ b/drivers/power/domain/meson-ee-pwrc.c
@@ -14,6 +14,7 @@
#include <reset.h>
#include <clk.h>
#include <dt-bindings/power/meson-g12a-power.h>
+#include <dt-bindings/power/meson-gxbb-power.h>
#include <dt-bindings/power/meson-sm1-power.h>
#include <linux/bitops.h>
#include <linux/delay.h>
@@ -68,7 +69,7 @@ struct meson_ee_pwrc_domain_data {
/* TOP Power Domains */
-static struct meson_ee_pwrc_top_domain g12a_pwrc_vpu = {
+static struct meson_ee_pwrc_top_domain gx_pwrc_vpu = {
.sleep_reg = AO_RTI_GEN_PWR_SLEEP0,
.sleep_mask = BIT(8),
.iso_reg = AO_RTI_GEN_PWR_SLEEP0,
@@ -126,6 +127,12 @@ static struct meson_ee_pwrc_mem_domain g12a_pwrc_mem_vpu[] = {
VPU_HHI_MEMPD(HHI_MEM_PD_REG0),
};
+static struct meson_ee_pwrc_mem_domain gxbb_pwrc_mem_vpu[] = {
+ VPU_MEMPD(HHI_VPU_MEM_PD_REG0),
+ VPU_MEMPD(HHI_VPU_MEM_PD_REG1),
+ VPU_HHI_MEMPD(HHI_MEM_PD_REG0),
+};
+
static struct meson_ee_pwrc_mem_domain g12a_pwrc_mem_eth[] = {
{ HHI_MEM_PD_REG0, GENMASK(3, 2) },
};
@@ -201,11 +208,17 @@ static struct meson_ee_pwrc_mem_domain sm1_pwrc_mem_audio[] = {
static bool pwrc_ee_get_power(struct power_domain *power_domain);
static struct meson_ee_pwrc_domain_desc g12a_pwrc_domains[] = {
- [PWRC_G12A_VPU_ID] = VPU_PD("VPU", &g12a_pwrc_vpu, g12a_pwrc_mem_vpu,
+ [PWRC_G12A_VPU_ID] = VPU_PD("VPU", &gx_pwrc_vpu, g12a_pwrc_mem_vpu,
pwrc_ee_get_power, 11, 2),
[PWRC_G12A_ETH_ID] = MEM_PD("ETH", g12a_pwrc_mem_eth),
};
+static struct meson_ee_pwrc_domain_desc gxbb_pwrc_domains[] = {
+ [PWRC_GXBB_VPU_ID] = VPU_PD("VPU", &gx_pwrc_vpu, gxbb_pwrc_mem_vpu,
+ pwrc_ee_get_power, 12, 2),
+ [PWRC_GXBB_ETHERNET_MEM_ID] = MEM_PD("ETH", g12a_pwrc_mem_eth),
+};
+
static struct meson_ee_pwrc_domain_desc sm1_pwrc_domains[] = {
[PWRC_SM1_VPU_ID] = VPU_PD("VPU", &sm1_pwrc_vpu, sm1_pwrc_mem_vpu,
pwrc_ee_get_power, 11, 2),
@@ -369,6 +382,11 @@ static struct meson_ee_pwrc_domain_data meson_ee_g12a_pwrc_data = {
.domains = g12a_pwrc_domains,
};
+static struct meson_ee_pwrc_domain_data meson_ee_gxbb_pwrc_data = {
+ .count = ARRAY_SIZE(gxbb_pwrc_domains),
+ .domains = gxbb_pwrc_domains,
+};
+
static struct meson_ee_pwrc_domain_data meson_ee_sm1_pwrc_data = {
.count = ARRAY_SIZE(sm1_pwrc_domains),
.domains = sm1_pwrc_domains,
@@ -379,6 +397,10 @@ static const struct udevice_id meson_ee_pwrc_ids[] = {
.compatible = "amlogic,meson-g12a-pwrc",
.data = (unsigned long)&meson_ee_g12a_pwrc_data,
},
+ {
+ .compatible = "amlogic,meson-gxbb-pwrc",
+ .data = (unsigned long)&meson_ee_gxbb_pwrc_data,
+ },
{
.compatible = "amlogic,meson-sm1-pwrc",
.data = (unsigned long)&meson_ee_sm1_pwrc_data,
--
2.17.1

View File

@ -1,88 +0,0 @@
From 8849236317c68808262cb02e086c5a83520a8724 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Wed, 30 Sep 2020 11:55:50 +0200
Subject: [PATCH 05/21] FROMGIT: power: domain: meson-ee-pwrc: add support for
the Meson AXG SoCs
This syncs with the linux meson-ee-pwrc driver from Linux 5.10-rc1.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
---
drivers/power/domain/meson-ee-pwrc.c | 26 ++++++++++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/drivers/power/domain/meson-ee-pwrc.c b/drivers/power/domain/meson-ee-pwrc.c
index dfedddd950..fa1ee93837 100644
--- a/drivers/power/domain/meson-ee-pwrc.c
+++ b/drivers/power/domain/meson-ee-pwrc.c
@@ -13,6 +13,7 @@
#include <syscon.h>
#include <reset.h>
#include <clk.h>
+#include <dt-bindings/power/meson-axg-power.h>
#include <dt-bindings/power/meson-g12a-power.h>
#include <dt-bindings/power/meson-gxbb-power.h>
#include <dt-bindings/power/meson-sm1-power.h>
@@ -127,6 +128,11 @@ static struct meson_ee_pwrc_mem_domain g12a_pwrc_mem_vpu[] = {
VPU_HHI_MEMPD(HHI_MEM_PD_REG0),
};
+static struct meson_ee_pwrc_mem_domain axg_pwrc_mem_vpu[] = {
+ VPU_MEMPD(HHI_VPU_MEM_PD_REG0),
+ VPU_HHI_MEMPD(HHI_MEM_PD_REG0),
+};
+
static struct meson_ee_pwrc_mem_domain gxbb_pwrc_mem_vpu[] = {
VPU_MEMPD(HHI_VPU_MEM_PD_REG0),
VPU_MEMPD(HHI_VPU_MEM_PD_REG1),
@@ -166,6 +172,10 @@ static struct meson_ee_pwrc_mem_domain sm1_pwrc_mem_ge2d[] = {
{ HHI_MEM_PD_REG0, GENMASK(25, 18) },
};
+static struct meson_ee_pwrc_mem_domain axg_pwrc_mem_audio[] = {
+ { HHI_MEM_PD_REG0, GENMASK(5, 4) },
+};
+
static struct meson_ee_pwrc_mem_domain sm1_pwrc_mem_audio[] = {
{ HHI_MEM_PD_REG0, GENMASK(5, 4) },
{ HHI_AUDIO_MEM_PD_REG0, GENMASK(1, 0) },
@@ -213,6 +223,13 @@ static struct meson_ee_pwrc_domain_desc g12a_pwrc_domains[] = {
[PWRC_G12A_ETH_ID] = MEM_PD("ETH", g12a_pwrc_mem_eth),
};
+static struct meson_ee_pwrc_domain_desc axg_pwrc_domains[] = {
+ [PWRC_AXG_VPU_ID] = VPU_PD("VPU", &gx_pwrc_vpu, axg_pwrc_mem_vpu,
+ pwrc_ee_get_power, 5, 2),
+ [PWRC_AXG_ETHERNET_MEM_ID] = MEM_PD("ETH", g12a_pwrc_mem_eth),
+ [PWRC_AXG_AUDIO_ID] = MEM_PD("AUDIO", axg_pwrc_mem_audio),
+};
+
static struct meson_ee_pwrc_domain_desc gxbb_pwrc_domains[] = {
[PWRC_GXBB_VPU_ID] = VPU_PD("VPU", &gx_pwrc_vpu, gxbb_pwrc_mem_vpu,
pwrc_ee_get_power, 12, 2),
@@ -382,6 +399,11 @@ static struct meson_ee_pwrc_domain_data meson_ee_g12a_pwrc_data = {
.domains = g12a_pwrc_domains,
};
+static struct meson_ee_pwrc_domain_data meson_ee_axg_pwrc_data = {
+ .count = ARRAY_SIZE(axg_pwrc_domains),
+ .domains = axg_pwrc_domains,
+};
+
static struct meson_ee_pwrc_domain_data meson_ee_gxbb_pwrc_data = {
.count = ARRAY_SIZE(gxbb_pwrc_domains),
.domains = gxbb_pwrc_domains,
@@ -401,6 +423,10 @@ static const struct udevice_id meson_ee_pwrc_ids[] = {
.compatible = "amlogic,meson-gxbb-pwrc",
.data = (unsigned long)&meson_ee_gxbb_pwrc_data,
},
+ {
+ .compatible = "amlogic,meson-axg-pwrc",
+ .data = (unsigned long)&meson_ee_axg_pwrc_data,
+ },
{
.compatible = "amlogic,meson-sm1-pwrc",
.data = (unsigned long)&meson_ee_sm1_pwrc_data,
--
2.17.1

View File

@ -1,86 +0,0 @@
From ba156073da5a34441657fef6d36ccc0767e1a3e8 Mon Sep 17 00:00:00 2001
From: Neil Armstrong <narmstrong@baylibre.com>
Date: Fri, 6 Nov 2020 11:11:08 +0100
Subject: [PATCH 06/21] FROMGIT: configs: use the new MESON_EE_POWER_DOMAIN
driver for Amlogic GXBB/GXL/GXM boards
Linux 5.10-rc1 uses the new generic driver, so switch to it since GXBB and
later is now supported.
Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
---
configs/libretech-ac_defconfig | 2 +-
configs/libretech-cc_defconfig | 2 +-
configs/libretech-s905d-pc_defconfig | 2 +-
configs/libretech-s912-pc_defconfig | 2 +-
configs/odroid-c2_defconfig | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/configs/libretech-ac_defconfig b/configs/libretech-ac_defconfig
index 171d793ae3..ca61591bd7 100644
--- a/configs/libretech-ac_defconfig
+++ b/configs/libretech-ac_defconfig
@@ -51,7 +51,7 @@ CONFIG_MESON_GXL_USB_PHY=y
CONFIG_PINCTRL=y
CONFIG_PINCTRL_MESON_GXL=y
CONFIG_POWER_DOMAIN=y
-CONFIG_MESON_GX_VPU_POWER_DOMAIN=y
+CONFIG_MESON_EE_POWER_DOMAIN=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_DM_RESET=y
diff --git a/configs/libretech-cc_defconfig b/configs/libretech-cc_defconfig
index aaab1a2d08..fb4bf4c929 100644
--- a/configs/libretech-cc_defconfig
+++ b/configs/libretech-cc_defconfig
@@ -38,7 +38,7 @@ CONFIG_MESON_GXL_USB_PHY=y
CONFIG_PINCTRL=y
CONFIG_PINCTRL_MESON_GXL=y
CONFIG_POWER_DOMAIN=y
-CONFIG_MESON_GX_VPU_POWER_DOMAIN=y
+CONFIG_MESON_EE_POWER_DOMAIN=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_DM_RESET=y
diff --git a/configs/libretech-s905d-pc_defconfig b/configs/libretech-s905d-pc_defconfig
index f4e289aca1..9d4c880a3b 100644
--- a/configs/libretech-s905d-pc_defconfig
+++ b/configs/libretech-s905d-pc_defconfig
@@ -46,7 +46,7 @@ CONFIG_MESON_GXL_USB_PHY=y
CONFIG_PINCTRL=y
CONFIG_PINCTRL_MESON_GXL=y
CONFIG_POWER_DOMAIN=y
-CONFIG_MESON_GX_VPU_POWER_DOMAIN=y
+CONFIG_MESON_EE_POWER_DOMAIN=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_DM_RESET=y
diff --git a/configs/libretech-s912-pc_defconfig b/configs/libretech-s912-pc_defconfig
index 24e410c5aa..cf600c1cbe 100644
--- a/configs/libretech-s912-pc_defconfig
+++ b/configs/libretech-s912-pc_defconfig
@@ -45,7 +45,7 @@ CONFIG_MESON_GXL_USB_PHY=y
CONFIG_PINCTRL=y
CONFIG_PINCTRL_MESON_GXL=y
CONFIG_POWER_DOMAIN=y
-CONFIG_MESON_GX_VPU_POWER_DOMAIN=y
+CONFIG_MESON_EE_POWER_DOMAIN=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_DM_RESET=y
diff --git a/configs/odroid-c2_defconfig b/configs/odroid-c2_defconfig
index 14e840547f..5c02fa1e62 100644
--- a/configs/odroid-c2_defconfig
+++ b/configs/odroid-c2_defconfig
@@ -38,7 +38,7 @@ CONFIG_MESON_GXBB_USB_PHY=y
CONFIG_PINCTRL=y
CONFIG_PINCTRL_MESON_GXBB=y
CONFIG_POWER_DOMAIN=y
-CONFIG_MESON_GX_VPU_POWER_DOMAIN=y
+CONFIG_MESON_EE_POWER_DOMAIN=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
CONFIG_DM_REGULATOR_GPIO=y
--
2.17.1

View File

@ -1,375 +0,0 @@
From 6974cd60b954cbd3b5288333384e763aad326c45 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 3 Nov 2020 02:30:18 +0000
Subject: [PATCH 07/21] FROMGIT: ARM: dts: import WeTek Core2 DTs from Linux
5.10
Import the WeTek Core2 and supporting meson-gx-p23x-q20x.dtsi files
from Linux 5.10.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
arch/arm/dts/Makefile | 1 +
arch/arm/dts/meson-gx-p23x-q20x.dtsi | 228 ++++++++++++++++++
.../arm/dts/meson-gxm-wetek-core2-u-boot.dtsi | 7 +
arch/arm/dts/meson-gxm-wetek-core2.dts | 87 +++++++
4 files changed, 323 insertions(+)
create mode 100644 arch/arm/dts/meson-gx-p23x-q20x.dtsi
create mode 100644 arch/arm/dts/meson-gxm-wetek-core2-u-boot.dtsi
create mode 100644 arch/arm/dts/meson-gxm-wetek-core2.dts
diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile
index 4044c3c87a..cd624950ab 100644
--- a/arch/arm/dts/Makefile
+++ b/arch/arm/dts/Makefile
@@ -165,6 +165,7 @@ dtb-$(CONFIG_ARCH_MESON) += \
meson-gxl-s905d-libretech-pc.dtb \
meson-gxm-khadas-vim2.dtb \
meson-gxm-s912-libretech-pc.dtb \
+ meson-gxm-wetek-core2.dtb \
meson-axg-s400.dtb \
meson-g12a-u200.dtb \
meson-g12a-sei510.dtb \
diff --git a/arch/arm/dts/meson-gx-p23x-q20x.dtsi b/arch/arm/dts/meson-gx-p23x-q20x.dtsi
new file mode 100644
index 0000000000..52525fcc59
--- /dev/null
+++ b/arch/arm/dts/meson-gx-p23x-q20x.dtsi
@@ -0,0 +1,228 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2016 Endless Computers, Inc.
+ * Author: Carlo Caione <carlo@endlessm.com>
+ */
+
+/* Common DTSI for same Amlogic Q200/Q201 and P230/P231 boards using either
+ * the pin-compatible S912 (GXM) or S905D (GXL) SoCs.
+ */
+
+/ {
+ aliases {
+ serial0 = &uart_AO;
+ ethernet0 = &ethmac;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x0 0x0 0x80000000>;
+ };
+
+ hdmi_5v: regulator-hdmi-5v {
+ compatible = "regulator-fixed";
+
+ regulator-name = "HDMI_5V";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+
+ gpio = <&gpio GPIOH_3 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ regulator-always-on;
+ };
+
+ vddio_ao18: regulator-vddio_ao18 {
+ compatible = "regulator-fixed";
+ regulator-name = "VDDIO_AO18";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ vddio_boot: regulator-vddio_boot {
+ compatible = "regulator-fixed";
+ regulator-name = "VDDIO_BOOT";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+
+ vddao_3v3: regulator-vddao_3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "VDDAO_3V3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ vcc_3v3: regulator-vcc_3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC_3V3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ };
+
+ emmc_pwrseq: emmc-pwrseq {
+ compatible = "mmc-pwrseq-emmc";
+ reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>;
+ };
+
+ wifi32k: wifi32k {
+ compatible = "pwm-clock";
+ #clock-cells = <0>;
+ clock-frequency = <32768>;
+ pwms = <&pwm_ef 0 30518 0>; /* PWM_E at 32.768KHz */
+ };
+
+ sdio_pwrseq: sdio-pwrseq {
+ compatible = "mmc-pwrseq-simple";
+ reset-gpios = <&gpio GPIOX_6 GPIO_ACTIVE_LOW>;
+ clocks = <&wifi32k>;
+ clock-names = "ext_clock";
+ };
+
+ cvbs-connector {
+ compatible = "composite-video-connector";
+
+ port {
+ cvbs_connector_in: endpoint {
+ remote-endpoint = <&cvbs_vdac_out>;
+ };
+ };
+ };
+
+ hdmi-connector {
+ compatible = "hdmi-connector";
+ type = "a";
+
+ port {
+ hdmi_connector_in: endpoint {
+ remote-endpoint = <&hdmi_tx_tmds_out>;
+ };
+ };
+ };
+};
+
+&cec_AO {
+ status = "okay";
+ pinctrl-0 = <&ao_cec_pins>;
+ pinctrl-names = "default";
+ hdmi-phandle = <&hdmi_tx>;
+};
+
+&cvbs_vdac_port {
+ cvbs_vdac_out: endpoint {
+ remote-endpoint = <&cvbs_connector_in>;
+ };
+};
+
+&ethmac {
+ status = "okay";
+};
+
+&hdmi_tx {
+ status = "okay";
+ pinctrl-0 = <&hdmi_hpd_pins>, <&hdmi_i2c_pins>;
+ pinctrl-names = "default";
+ hdmi-supply = <&hdmi_5v>;
+};
+
+&hdmi_tx_tmds_port {
+ hdmi_tx_tmds_out: endpoint {
+ remote-endpoint = <&hdmi_connector_in>;
+ };
+};
+
+&ir {
+ status = "okay";
+ pinctrl-0 = <&remote_input_ao_pins>;
+ 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>;
+};
+
+/* Wireless SDIO Module */
+&sd_emmc_a {
+ status = "okay";
+ pinctrl-0 = <&sdio_pins>;
+ pinctrl-1 = <&sdio_clk_gate_pins>;
+ pinctrl-names = "default", "clk-gate";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ bus-width = <4>;
+ cap-sd-highspeed;
+ max-frequency = <50000000>;
+
+ non-removable;
+ disable-wp;
+
+ /* WiFi firmware requires power to be kept while in suspend */
+ keep-power-in-suspend;
+
+ mmc-pwrseq = <&sdio_pwrseq>;
+
+ vmmc-supply = <&vddao_3v3>;
+ vqmmc-supply = <&vddio_boot>;
+};
+
+/* SD card */
+&sd_emmc_b {
+ status = "okay";
+ pinctrl-0 = <&sdcard_pins>;
+ pinctrl-1 = <&sdcard_clk_gate_pins>;
+ pinctrl-names = "default", "clk-gate";
+
+ bus-width = <4>;
+ cap-sd-highspeed;
+ max-frequency = <50000000>;
+ disable-wp;
+
+ cd-gpios = <&gpio CARD_6 GPIO_ACTIVE_LOW>;
+
+ vmmc-supply = <&vddao_3v3>;
+ vqmmc-supply = <&vddio_boot>;
+};
+
+/* eMMC */
+&sd_emmc_c {
+ status = "okay";
+ pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
+ pinctrl-1 = <&emmc_clk_gate_pins>;
+ pinctrl-names = "default", "clk-gate";
+
+ bus-width = <8>;
+ cap-mmc-highspeed;
+ max-frequency = <200000000>;
+ non-removable;
+ disable-wp;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+
+ mmc-pwrseq = <&emmc_pwrseq>;
+ vmmc-supply = <&vcc_3v3>;
+ vqmmc-supply = <&vddio_boot>;
+};
+
+/* This UART is brought out to the DB9 connector */
+&uart_AO {
+ status = "okay";
+ pinctrl-0 = <&uart_ao_a_pins>;
+ pinctrl-names = "default";
+};
+
+&usb {
+ status = "okay";
+};
diff --git a/arch/arm/dts/meson-gxm-wetek-core2-u-boot.dtsi b/arch/arm/dts/meson-gxm-wetek-core2-u-boot.dtsi
new file mode 100644
index 0000000000..39270ea71c
--- /dev/null
+++ b/arch/arm/dts/meson-gxm-wetek-core2-u-boot.dtsi
@@ -0,0 +1,7 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2019 BayLibre, SAS.
+ * Author: Neil Armstrong <narmstrong@baylibre.com>
+ */
+
+#include "meson-gxl-u-boot.dtsi"
diff --git a/arch/arm/dts/meson-gxm-wetek-core2.dts b/arch/arm/dts/meson-gxm-wetek-core2.dts
new file mode 100644
index 0000000000..ec794c134c
--- /dev/null
+++ b/arch/arm/dts/meson-gxm-wetek-core2.dts
@@ -0,0 +1,87 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2020 Christian Hewitt <christianshewitt@gmail.com>
+ */
+
+/dts-v1/;
+
+#include "meson-gxm.dtsi"
+#include "meson-gx-p23x-q20x.dtsi"
+#include <dt-bindings/input/input.h>
+#include <dt-bindings/leds/common.h>
+
+/ {
+ compatible = "wetek,core2", "amlogic,s912", "amlogic,meson-gxm";
+ model = "WeTek Core 2";
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x0 0x0 0x80000000>; /* 2 GiB or 3 GiB */
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ blue {
+ color = <LED_COLOR_ID_BLUE>;
+ function = LED_FUNCTION_STATUS;
+ gpios = <&gpio GPIODV_24 GPIO_ACTIVE_HIGH>;
+ default-state = "on";
+ };
+ };
+
+ adc-keys {
+ compatible = "adc-keys";
+ io-channels = <&saradc 0>;
+ io-channel-names = "buttons";
+ keyup-threshold-microvolt = <1710000>;
+
+ button-update {
+ label = "update";
+ linux,code = <KEY_VENDOR>;
+ press-threshold-microvolt = <10000>;
+ };
+ };
+
+ gpio-keys-polled {
+ compatible = "gpio-keys-polled";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ poll-interval = <100>;
+
+ button-power {
+ label = "power";
+ linux,code = <KEY_POWER>;
+ gpios = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_LOW>;
+ };
+ };
+};
+
+/* Disabled as Realtek RTL8152 USB provides Ethernet */
+&ethmac {
+ status = "disabled";
+};
+
+&internal_phy {
+ status = "disabled";
+};
+
+&ir {
+ linux,rc-map-name = "rc-wetek-play2";
+};
+
+/* This is connected to the Bluetooth module: */
+&uart_A {
+ status = "okay";
+ pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
+ pinctrl-names = "default";
+ uart-has-rtscts;
+
+ bluetooth {
+ compatible = "brcm,bcm43438-bt";
+ shutdown-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
+ max-speed = <2000000>;
+ clocks = <&wifi32k>;
+ clock-names = "lpo";
+ };
+};
--
2.17.1

View File

@ -1,92 +0,0 @@
From 71c65979ded70b70ae537f426f4c08a387682a79 Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 3 Nov 2020 02:48:41 +0000
Subject: [PATCH 08/21] FROMGIT: boards: amlogic: add WeTek Core2 support
Add a config for the WeTek Core2, largely based on the VIM2 config.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
configs/wetek-core2_defconfig | 70 +++++++++++++++++++++++++++++++++++
1 file changed, 70 insertions(+)
create mode 100644 configs/wetek-core2_defconfig
diff --git a/configs/wetek-core2_defconfig b/configs/wetek-core2_defconfig
new file mode 100644
index 0000000000..706abff962
--- /dev/null
+++ b/configs/wetek-core2_defconfig
@@ -0,0 +1,70 @@
+CONFIG_ARM=y
+CONFIG_ARCH_MESON=y
+CONFIG_SYS_TEXT_BASE=0x01000000
+CONFIG_NR_DRAM_BANKS=1
+CONFIG_ENV_SIZE=0x2000
+CONFIG_DM_GPIO=y
+CONFIG_MESON_GXM=y
+CONFIG_DEBUG_UART_BASE=0xc81004c0
+CONFIG_DEBUG_UART_CLOCK=24000000
+CONFIG_IDENT_STRING=" wetek-core2"
+CONFIG_DEFAULT_DEVICE_TREE="meson-gxm-wetek-core2"
+CONFIG_DEBUG_UART=y
+CONFIG_OF_BOARD_SETUP=y
+CONFIG_CONSOLE_MUX=y
+# CONFIG_DISPLAY_CPUINFO is not set
+CONFIG_MISC_INIT_R=y
+# CONFIG_CMD_BDI is not set
+# CONFIG_CMD_IMI is not set
+CONFIG_CMD_ADC=y
+CONFIG_CMD_GPIO=y
+# CONFIG_CMD_LOADS is not set
+CONFIG_CMD_MMC=y
+CONFIG_CMD_SF_TEST=y
+CONFIG_CMD_USB=y
+CONFIG_CMD_USB_MASS_STORAGE=y
+# CONFIG_CMD_SETEXPR is not set
+CONFIG_CMD_REGULATOR=y
+CONFIG_OF_CONTROL=y
+CONFIG_SYS_RELOC_GD_ENV_ADDR=y
+CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_SARADC_MESON=y
+CONFIG_DM_MMC=y
+CONFIG_MMC_MESON_GX=y
+CONFIG_MTD=y
+CONFIG_DM_MTD=y
+CONFIG_PHY_REALTEK=y
+CONFIG_DM_ETH=y
+CONFIG_ETH_DESIGNWARE=y
+CONFIG_MESON_GXL_USB_PHY=y
+CONFIG_PINCTRL=y
+CONFIG_PINCTRL_MESON_GXL=y
+CONFIG_DM_REGULATOR=y
+CONFIG_POWER_DOMAIN=y
+CONFIG_MESON_GX_VPU_POWER_DOMAIN=y
+CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_DM_RESET=y
+CONFIG_DEBUG_UART_ANNOUNCE=y
+CONFIG_DEBUG_UART_MESON=y
+CONFIG_DEBUG_UART_SKIP_INIT=y
+CONFIG_MESON_SERIAL=y
+CONFIG_USB=y
+CONFIG_DM_USB=y
+CONFIG_USB_KEYBOARD=y
+CONFIG_DM_VIDEO=y
+# CONFIG_VIDEO_BPP8 is not set
+# CONFIG_VIDEO_BPP16 is not set
+CONFIG_SYS_WHITE_ON_BLACK=y
+CONFIG_VIDEO_MESON=y
+CONFIG_VIDEO_DT_SIMPLEFB=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_XHCI_DWC3=y
+CONFIG_USB_DWC3=y
+# CONFIG_USB_DWC3_GADGET is not set
+CONFIG_USB_DWC3_MESON_GXL=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_VENDOR_NUM=0x1b8e
+CONFIG_USB_GADGET_PRODUCT_NUM=0xfada
+CONFIG_USB_GADGET_DWC2_OTG=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_OF_LIBFDT_OVERLAY=y
--
2.17.1

View File

@ -1,152 +0,0 @@
From d8bdcbf312e0cd740ead1dd2a590e179b5092c6a Mon Sep 17 00:00:00 2001
From: Christian Hewitt <christianshewitt@gmail.com>
Date: Tue, 3 Nov 2020 03:06:57 +0000
Subject: [PATCH 09/21] FROMGIT: boards: amlogic: update documentation for
WeTek Core2
Update the device matrix and add build instructions.
Signed-off-by: Christian Hewitt <christianshewitt@gmail.com>
---
doc/board/amlogic/index.rst | 5 +-
doc/board/amlogic/wetek-core2.rst | 101 ++++++++++++++++++++++++++++++
2 files changed, 104 insertions(+), 2 deletions(-)
create mode 100644 doc/board/amlogic/wetek-core2.rst
diff --git a/doc/board/amlogic/index.rst b/doc/board/amlogic/index.rst
index 9e780ba47c..82ad7a2f1a 100644
--- a/doc/board/amlogic/index.rst
+++ b/doc/board/amlogic/index.rst
@@ -17,7 +17,7 @@ This matrix concerns the actual source code version.
+===============================+===========+==============+==============+============+============+=============+==============+
| Boards | Odroid-C2 | P212 | Khadas VIM2 | S400 | U200 | Odroid-N2 | SEI610 |
| | Nanopi-K2 | Khadas-VIM | Libretech-PC | | SEI510 | Khadas-VIM3 | Khadas-VIM3L |
-| | P200 | LibreTech-CC | | | | | Odroid-C4 |
+| | P200 | LibreTech-CC | WeTek Core2 | | | | Odroid-C4 |
| | P201 | LibreTech-AC | | | | | |
+-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
| UART | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** |
@@ -36,7 +36,7 @@ This matrix concerns the actual source code version.
+-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
| Multi-core | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** |
+-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
-| Fuse access | **Yes** | **Yes** |**Yes** |**Yes** |**Yes** |**Yes** | **Yes** |
+| Fuse access | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** | **Yes** |
+-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
| SPI (FC) | **Yes** | **Yes** | **Yes** | **Yes** |**Yes** | **Yes** | No |
+-------------------------------+-----------+--------------+--------------+------------+------------+-------------+--------------+
@@ -96,3 +96,4 @@ Board Documentation
sei610
u200
w400
+ wetek-core2
diff --git a/doc/board/amlogic/wetek-core2.rst b/doc/board/amlogic/wetek-core2.rst
new file mode 100644
index 0000000000..f8faf48259
--- /dev/null
+++ b/doc/board/amlogic/wetek-core2.rst
@@ -0,0 +1,101 @@
+.. SPDX-License-Identifier: GPL-2.0+
+
+U-Boot for WeTek Core2
+======================
+
+WeTek Core2 is an Android STB based on the Q200 reference design with
+the following specifications:
+
+ - Amlogic S912 ARM Cortex-A53 octo-core SoC @ 1.5GHz
+ - ARM Mali T820 GPU
+ - 3GB DDR4 SDRAM
+ - 10/100 Realtek RTL8152 Ethernet (internal USB)
+ - HDMI 2.0 4K/60Hz display
+ - 2x USB 2.0 Host, 1x USB 2.0 OTG (internal)
+ - 32GB eMMC
+ - microSD
+ - SDIO Wifi Module, Bluetooth
+ - Two channel IR receiver
+
+U-Boot compilation
+------------------
+
+.. code-block:: bash
+
+ $ export CROSS_COMPILE=aarch64-none-elf-
+ $ make wetek-core2_defconfig
+ $ make
+
+Image creation
+--------------
+
+Amlogic does not provide sources for the firmware or the tools needed
+to create the bootloader image, and WeTek has not publicly shared the
+precompiled FIP binaries. However the public Khadas VIM2 sources also
+work with the Core2 box so we can use the Khadas git tree:
+
+.. code-block:: bash
+
+ $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
+ $ wget https://releases.linaro.org/archive/13.11/components/toolchain/binaries/gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
+ $ tar xvfJ gcc-linaro-aarch64-none-elf-4.8-2013.11_linux.tar.xz
+ $ tar xvfJ gcc-linaro-arm-none-eabi-4.8-2013.11_linux.tar.xz
+ $ export PATH=$PWD/gcc-linaro-aarch64-none-elf-4.8-2013.11_linux/bin:$PWD/gcc-linaro-arm-none-eabi-4.8-2013.11_linux/bin:$PATH
+ $ git clone https://github.com/khadas/u-boot -b khadas-vim-v2015.01 vim-u-boot
+ $ cd vim-u-boot
+ $ make kvim2_defconfig
+ $ make
+ $ export FIPDIR=$PWD/fip
+
+Go back to mainline U-Boot source tree then :
+
+.. code-block:: bash
+
+ $ mkdir fip
+
+ $ cp $FIPDIR/gxl/bl2.bin fip/
+ $ cp $FIPDIR/gxl/acs.bin fip/
+ $ cp $FIPDIR/gxl/bl21.bin fip/
+ $ cp $FIPDIR/gxl/bl30.bin fip/
+ $ cp $FIPDIR/gxl/bl301.bin fip/
+ $ cp $FIPDIR/gxl/bl31.img fip/
+ $ cp u-boot.bin fip/bl33.bin
+
+ $ $FIPDIR/blx_fix.sh \
+ fip/bl30.bin \
+ fip/zero_tmp \
+ fip/bl30_zero.bin \
+ fip/bl301.bin \
+ fip/bl301_zero.bin \
+ fip/bl30_new.bin \
+ bl30
+
+ $ python $FIPDIR/acs_tool.pyc fip/bl2.bin fip/bl2_acs.bin fip/acs.bin 0
+
+ $ $FIPDIR/blx_fix.sh \
+ fip/bl2_acs.bin \
+ fip/zero_tmp \
+ fip/bl2_zero.bin \
+ fip/bl21.bin \
+ fip/bl21_zero.bin \
+ fip/bl2_new.bin \
+ bl2
+
+ $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl30_new.bin
+ $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl31.img
+ $ $FIPDIR/gxl/aml_encrypt_gxl --bl3enc --input fip/bl33.bin
+ $ $FIPDIR/gxl/aml_encrypt_gxl --bl2sig --input fip/bl2_new.bin --output fip/bl2.n.bin.sig
+ $ $FIPDIR/gxl/aml_encrypt_gxl --bootmk \
+ --output fip/u-boot.bin \
+ --bl2 fip/bl2.n.bin.sig \
+ --bl30 fip/bl30_new.bin.enc \
+ --bl31 fip/bl31.img.enc \
+ --bl33 fip/bl33.bin.enc
+
+then write the image to SD with:
+
+.. code-block:: bash
+
+ $ DEV=/dev/your_sd_device
+ $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=512 skip=1 seek=1
+ $ dd if=fip/u-boot.bin.sd.bin of=$DEV conv=fsync,notrunc bs=1 count=444
--
2.17.1

Some files were not shown because too many files have changed in this diff Show More