diff --git a/packages/kernel/linux/package.mk b/packages/kernel/linux/package.mk index b1eb4291f..bb862e894 100644 --- a/packages/kernel/linux/package.mk +++ b/packages/kernel/linux/package.mk @@ -4,7 +4,7 @@ PKG_NAME="linux" PKG_LICENSE="GPL" -PKG_VERSION="6.4.6" +PKG_VERSION="6.4.7" PKG_URL="https://www.kernel.org/pub/linux/kernel/v6.x/${PKG_NAME}-${PKG_VERSION}.tar.xz" PKG_SITE="http://www.kernel.org" PKG_DEPENDS_HOST="ccache:host rsync:host openssl:host" diff --git a/packages/kernel/linux/patches/AMD64/004-revert-skip-irq-override.patch b/packages/kernel/linux/patches/AMD64/004-revert-skip-irq-override.patch deleted file mode 100644 index 82723a663..000000000 --- a/packages/kernel/linux/patches/AMD64/004-revert-skip-irq-override.patch +++ /dev/null @@ -1,150 +0,0 @@ -From: Mario Limonciello @ 2023-06-01 22:11 UTC (permalink / raw) - To: linux-acpi, rafael - Cc: linux-kernel, Mario Limonciello, ofenfisch, wse, adam.niederer, - adrian, jirislaby, Renjith.Pananchikkal, anson.tsao, - Richard.Gong, Chuanhong Guo, evilsnoo, ruinairas1992, nmschulte - -commit 9946e39fe8d0 ("ACPI: resource: skip IRQ override on -AMD Zen platforms") attempted to overhaul the override logic so it -didn't apply on X86 AMD Zen systems. This was intentional so that -systems would prefer DSDT values instead of default MADT value for -IRQ 1 on Ryzen 6000 systems which typically uses ActiveLow for IRQ1. - -This turned out to be a bad assumption because several vendors -add Interrupt Source Override but don't fix the DSDT. A pile of -quirks was collecting that proved this wasn't sustaintable. - -Furthermore some vendors have used ActiveHigh for IRQ1. -To solve this problem revert the following commits: -* commit 17bb7046e7ce ("ACPI: resource: Do IRQ override on all TongFang -GMxRGxx") -* commit f3cb9b740869 ("ACPI: resource: do IRQ override on Lenovo 14ALC7") -* commit bfcdf58380b1 ("ACPI: resource: do IRQ override on LENOVO IdeaPad") -* commit 7592b79ba4a9 ("ACPI: resource: do IRQ override on XMG Core 15") -* commit 9946e39fe8d0 ("ACPI: resource: skip IRQ override on AMD Zen -platforms") - -Cc: ofenfisch@googlemail.com -Cc: wse@tuxedocomputers.com -Cc: adam.niederer@gmail.com -Cc: adrian@freund.io -Cc: jirislaby@kernel.org -Cc: Renjith.Pananchikkal@amd.com -Cc: anson.tsao@amd.com -Cc: Richard.Gong@amd.com -Cc: Chuanhong Guo -Reported-by: evilsnoo@proton.me -Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217394 -Reported-by: ruinairas1992@gmail.com -Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217406 -Reported-by: nmschulte@gmail.com -Closes: https://bugzilla.kernel.org/show_bug.cgi?id=217336 -Signed-off-by: Mario Limonciello ---- -v2->v3: - * Adjust to drop heuristics entirely - * Drop tested tags - * Add more links and people to Cc - * Drop Fixes tag as this got a lot more risky -v1->v2: - * Rebase on 71a485624c4c ("ACPI: resource: Add IRQ override quirk for LG UltraPC 17U70P") - * Pick up tag - -Rafael, -Please hold off on picking this up until the majority of those on CC -have tested it on hardware they have and reported results. - -Everyone else, -Please test. If you have problems with this applied, please share -an acpidump and dmesg either on a bug or to me privately. ---- - drivers/acpi/resource.c | 60 ----------------------------------------- - 1 file changed, 60 deletions(-) - -diff --git a/drivers/acpi/resource.c b/drivers/acpi/resource.c -index 0800a9d77558..1dd8d5aebf67 100644 ---- a/drivers/acpi/resource.c -+++ b/drivers/acpi/resource.c -@@ -470,52 +470,6 @@ static const struct dmi_system_id asus_laptop[] = { - { } - }; - --static const struct dmi_system_id lenovo_laptop[] = { -- { -- .ident = "LENOVO IdeaPad Flex 5 14ALC7", -- .matches = { -- DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), -- DMI_MATCH(DMI_PRODUCT_NAME, "82R9"), -- }, -- }, -- { -- .ident = "LENOVO IdeaPad Flex 5 16ALC7", -- .matches = { -- DMI_MATCH(DMI_SYS_VENDOR, "LENOVO"), -- DMI_MATCH(DMI_PRODUCT_NAME, "82RA"), -- }, -- }, -- { } --}; -- --static const struct dmi_system_id tongfang_gm_rg[] = { -- { -- .ident = "TongFang GMxRGxx/XMG CORE 15 (M22)/TUXEDO Stellaris 15 Gen4 AMD", -- .matches = { -- DMI_MATCH(DMI_BOARD_NAME, "GMxRGxx"), -- }, -- }, -- { } --}; -- --static const struct dmi_system_id maingear_laptop[] = { -- { -- .ident = "MAINGEAR Vector Pro 2 15", -- .matches = { -- DMI_MATCH(DMI_SYS_VENDOR, "Micro Electronics Inc"), -- DMI_MATCH(DMI_PRODUCT_NAME, "MG-VCP2-15A3070T"), -- } -- }, -- { -- .ident = "MAINGEAR Vector Pro 2 17", -- .matches = { -- DMI_MATCH(DMI_SYS_VENDOR, "Micro Electronics Inc"), -- DMI_MATCH(DMI_PRODUCT_NAME, "MG-VCP2-17A3070T"), -- }, -- }, -- { } --}; -- - static const struct dmi_system_id lg_laptop[] = { - { - .ident = "LG Electronics 17U70P", -@@ -539,10 +493,6 @@ struct irq_override_cmp { - static const struct irq_override_cmp override_table[] = { - { medion_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, false }, - { asus_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, false }, -- { lenovo_laptop, 6, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, true }, -- { lenovo_laptop, 10, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, true }, -- { tongfang_gm_rg, 1, ACPI_EDGE_SENSITIVE, ACPI_ACTIVE_LOW, 1, true }, -- { maingear_laptop, 1, ACPI_EDGE_SENSITIVE, ACPI_ACTIVE_LOW, 1, true }, - { lg_laptop, 1, ACPI_LEVEL_SENSITIVE, ACPI_ACTIVE_LOW, 0, false }, - }; - -@@ -562,16 +512,6 @@ static bool acpi_dev_irq_override(u32 gsi, u8 triggering, u8 polarity, - return entry->override; - } - --#ifdef CONFIG_X86 -- /* -- * IRQ override isn't needed on modern AMD Zen systems and -- * this override breaks active low IRQs on AMD Ryzen 6000 and -- * newer systems. Skip it. -- */ -- if (boot_cpu_has(X86_FEATURE_ZEN)) -- return false; --#endif -- - return true; - } - --- -2.34.1 diff --git a/packages/kernel/linux/patches/AMD64/007-asus-ally-cs35l41-6.3-with-asus-keys.patch b/packages/kernel/linux/patches/AMD64/007-asus-ally-cs35l41-6.3-with-asus-keys.patch index 7e2473ea6..7593c0d2b 100644 --- a/packages/kernel/linux/patches/AMD64/007-asus-ally-cs35l41-6.3-with-asus-keys.patch +++ b/packages/kernel/linux/patches/AMD64/007-asus-ally-cs35l41-6.3-with-asus-keys.patch @@ -36,74 +36,3 @@ index c2e9b6d1fd7d..cd6efa46a2bd 100644 #define USB_DEVICE_ID_ASUSTEK_ROG_CLAYMORE_II_KEYBOARD 0x196b #define USB_DEVICE_ID_ASUSTEK_FX503VD_KEYBOARD 0x1869 -diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c -index f70d6a33421d..068a30c0ff4d 100644 ---- a/sound/pci/hda/patch_realtek.c -+++ b/sound/pci/hda/patch_realtek.c -@@ -7118,6 +7118,10 @@ enum { - ALC294_FIXUP_ASUS_DUAL_SPK, - ALC285_FIXUP_THINKPAD_X1_GEN7, - ALC285_FIXUP_THINKPAD_HEADSET_JACK, -+ ALC294_FIXUP_ASUS_ALLY, -+ ALC294_FIXUP_ASUS_ALLY_PINS, -+ ALC294_FIXUP_ASUS_ALLY_VERBS, -+ ALC294_FIXUP_ASUS_ALLY_SPEAKER, - ALC294_FIXUP_ASUS_HPE, - ALC294_FIXUP_ASUS_COEF_1B, - ALC294_FIXUP_ASUS_GX502_HP, -@@ -8414,6 +8418,47 @@ static const struct hda_fixup alc269_fixups[] = { - .chained = true, - .chain_id = ALC294_FIXUP_SPK2_TO_DAC1 - }, -+ [ALC294_FIXUP_ASUS_ALLY] = { -+ .type = HDA_FIXUP_FUNC, -+ .v.func = cs35l41_fixup_i2c_two, -+ .chained = true, -+ .chain_id = ALC294_FIXUP_ASUS_ALLY_PINS -+ }, -+ [ALC294_FIXUP_ASUS_ALLY_PINS] = { -+ .type = HDA_FIXUP_PINS, -+ .v.pins = (const struct hda_pintbl[]) { -+ { 0x19, 0x03a11050 }, -+ { 0x1a, 0x03a11C30 }, -+ { 0x21, 0x03211420 }, -+ { } -+ }, -+ .chained = true, -+ .chain_id = ALC294_FIXUP_ASUS_ALLY_VERBS -+ }, -+ [ALC294_FIXUP_ASUS_ALLY_VERBS] = { -+ .type = HDA_FIXUP_VERBS, -+ .v.verbs = (const struct hda_verb[]) { -+ { 0x20, AC_VERB_SET_COEF_INDEX, 0x45 }, -+ { 0x20, AC_VERB_SET_PROC_COEF, 0x5089 }, -+ { 0x20, AC_VERB_SET_COEF_INDEX, 0x46 }, -+ { 0x20, AC_VERB_SET_PROC_COEF, 0x0004 }, -+ { 0x20, AC_VERB_SET_COEF_INDEX, 0x47 }, -+ { 0x20, AC_VERB_SET_PROC_COEF, 0xA47A }, -+ { 0x20, AC_VERB_SET_COEF_INDEX, 0x49 }, -+ { 0x20, AC_VERB_SET_PROC_COEF, 0x0049}, -+ { 0x20, AC_VERB_SET_COEF_INDEX, 0x4A }, -+ { 0x20, AC_VERB_SET_PROC_COEF, 0x201B }, -+ { 0x20, AC_VERB_SET_COEF_INDEX, 0x6B }, -+ { 0x20, AC_VERB_SET_PROC_COEF, 0x4278}, -+ { } -+ }, -+ .chained = true, -+ .chain_id = ALC294_FIXUP_ASUS_ALLY_SPEAKER -+ }, -+ [ALC294_FIXUP_ASUS_ALLY_SPEAKER] = { -+ .type = HDA_FIXUP_FUNC, -+ .v.func = alc285_fixup_speaker2_to_dac1, -+ }, - [ALC285_FIXUP_THINKPAD_X1_GEN7] = { - .type = HDA_FIXUP_FUNC, - .v.func = alc285_fixup_thinkpad_x1_gen7, -@@ -9558,6 +9603,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { - SND_PCI_QUIRK(0x10ec, 0x1252, "Intel Reference board", ALC295_FIXUP_CHROME_BOOK), - SND_PCI_QUIRK(0x10ec, 0x1254, "Intel Reference board", ALC295_FIXUP_CHROME_BOOK), - SND_PCI_QUIRK(0x10f7, 0x8338, "Panasonic CF-SZ6", ALC269_FIXUP_HEADSET_MODE), -+ SND_PCI_QUIRK(0x1043, 0x17F3, "ROG Ally RC71L_RC71L", ALC294_FIXUP_ASUS_ALLY), - SND_PCI_QUIRK(0x144d, 0xc109, "Samsung Ativ book 9 (NP900X3G)", ALC269_FIXUP_INV_DMIC), - SND_PCI_QUIRK(0x144d, 0xc169, "Samsung Notebook 9 Pen (NP930SBE-K01US)", ALC298_FIXUP_SAMSUNG_AMP), - SND_PCI_QUIRK(0x144d, 0xc176, "Samsung Notebook 9 Pro (NP930MBE-K04US)", ALC298_FIXUP_SAMSUNG_AMP), diff --git a/packages/ui/emulationstation/package.mk b/packages/ui/emulationstation/package.mk index b128dbcab..901224839 100644 --- a/packages/ui/emulationstation/package.mk +++ b/packages/ui/emulationstation/package.mk @@ -3,7 +3,7 @@ # Copyright (C) 2020-present Fewtarius PKG_NAME="emulationstation" -PKG_VERSION="9e42208" +PKG_VERSION="e79f16f231795523fdb4752726a2b2d5c3ee51d3" PKG_GIT_CLONE_BRANCH="main" PKG_REV="1" PKG_ARCH="any" diff --git a/projects/Amlogic/packages/linux/package.mk b/projects/Amlogic/packages/linux/package.mk index 9181cfb4e..59a91236c 100644 --- a/projects/Amlogic/packages/linux/package.mk +++ b/projects/Amlogic/packages/linux/package.mk @@ -19,7 +19,7 @@ PKG_PATCH_DIRS+="${DEVICE}" case ${DEVICE} in S922X*) - PKG_VERSION="6.1.41" + PKG_VERSION="6.1.42" PKG_URL="https://www.kernel.org/pub/linux/kernel/v6.x/${PKG_NAME}-${PKG_VERSION}.tar.xz" ;; esac diff --git a/projects/PC/devices/AMD64/options b/projects/PC/devices/AMD64/options index ecf7c93e7..80cdcd3a7 100644 --- a/projects/PC/devices/AMD64/options +++ b/projects/PC/devices/AMD64/options @@ -12,7 +12,7 @@ esac # kernel command line - EXTRA_CMDLINE="quiet console=tty0 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20 intel_pstate=active amd_pstate=active amd_pstate.shared_mem=1 amdgpu.dpm=1 usbcore.autosuspend=5" + EXTRA_CMDLINE="quiet console=tty0 ssh consoleblank=0 systemd.show_status=0 loglevel=0 panic=20 intel_pstate=active amd_pstate=active amd_pstate.shared_mem=1 amdgpu.dpm=1" # Partition label PARTITION_TABLE="msdos" diff --git a/projects/Rockchip/devices/RK3399/options b/projects/Rockchip/devices/RK3399/options index 2e2eae135..7bc6ad223 100644 --- a/projects/Rockchip/devices/RK3399/options +++ b/projects/Rockchip/devices/RK3399/options @@ -30,7 +30,7 @@ KERNEL_TARGET="Image" BOOTLOADER="u-boot" PARTITION_TABLE="msdos" - DEVICE_DTB=("rk3399-rg552-linux") + DEVICE_DTB=("rk3399-anbernic-rg552") UBOOT_DTB="${DEVICE_DTB[0]}" UBOOT_CONFIG="evb-rk3399_defconfig" PKG_SOC="rk3399" diff --git a/projects/Rockchip/packages/linux/package.mk b/projects/Rockchip/packages/linux/package.mk index 4094e9b2b..37286cd8b 100644 --- a/projects/Rockchip/packages/linux/package.mk +++ b/projects/Rockchip/packages/linux/package.mk @@ -37,7 +37,7 @@ case ${DEVICE} in PKG_GIT_CLONE_BRANCH="main" ;; RK33*) - PKG_VERSION="6.1.41" + PKG_VERSION="6.1.42" PKG_URL="https://www.kernel.org/pub/linux/kernel/v6.x/${PKG_NAME}-${PKG_VERSION}.tar.xz" ;; esac diff --git a/projects/Rockchip/packages/linux/patches/RK3399/000-rk3399-devices.patch b/projects/Rockchip/packages/linux/patches/RK3399/000-rk3399-devices.patch index eeb6cc406..36a9d9d2d 100644 --- a/projects/Rockchip/packages/linux/patches/RK3399/000-rk3399-devices.patch +++ b/projects/Rockchip/packages/linux/patches/RK3399/000-rk3399-devices.patch @@ -1,7 +1,7 @@ diff -rupN linux.orig/Makefile linux/Makefile ---- linux.orig/Makefile 2023-07-24 16:56:41.000000000 +0000 -+++ linux/Makefile 2023-07-26 14:27:49.537460386 +0000 -@@ -814,6 +814,8 @@ KBUILD_CFLAGS += $(call cc-disable-warni +--- linux.orig/Makefile 2023-06-23 03:53:37.552116029 +0000 ++++ linux/Makefile 2023-07-22 17:35:56.978930533 +0000 +@@ -826,6 +826,8 @@ KBUILD_CFLAGS += $(call cc-disable-warni KBUILD_CFLAGS += $(call cc-disable-warning, format-truncation) KBUILD_CFLAGS += $(call cc-disable-warning, format-overflow) KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member) @@ -10,7 +10,7 @@ diff -rupN linux.orig/Makefile linux/Makefile ifdef CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE KBUILD_CFLAGS += -O2 -@@ -1069,7 +1071,7 @@ endif +@@ -1075,7 +1077,7 @@ endif KBUILD_CFLAGS += -Werror=date-time # enforce correct pointer usage @@ -20,20 +20,165 @@ diff -rupN linux.orig/Makefile linux/Makefile # Require designated initializers for all marked structures KBUILD_CFLAGS += $(call cc-option,-Werror=designated-init) diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/Makefile linux/arch/arm64/boot/dts/rockchip/Makefile ---- linux.orig/arch/arm64/boot/dts/rockchip/Makefile 2023-07-24 16:56:41.000000000 +0000 -+++ linux/arch/arm64/boot/dts/rockchip/Makefile 2023-07-26 14:27:49.537460386 +0000 -@@ -53,6 +53,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-or - dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinebook-pro.dtb - dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinephone-pro.dtb - dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou.dtb -+dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rg552-linux.dtb - dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc.dtb - dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-mezzanine.dtb - dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-plus.dtb -diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts linux/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts ---- linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts 1970-01-01 00:00:00.000000000 +0000 -+++ linux/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts 2023-07-26 14:27:49.537460386 +0000 -@@ -0,0 +1,1334 @@ +--- linux.orig/arch/arm64/boot/dts/rockchip/Makefile 2023-06-23 03:53:36.244094795 +0000 ++++ linux/arch/arm64/boot/dts/rockchip/Makefile 2023-07-27 13:59:09.292214719 +0000 +@@ -21,6 +21,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-li + dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-orion-r68-meta.dtb + dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-px5-evb.dtb + dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-r88.dtb ++dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-anbernic-rg552.dtb + dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-eaidk-610.dtb + dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-evb.dtb + dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-ficus.dtb +diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-anbernic-rg552-opp.dtsi linux/arch/arm64/boot/dts/rockchip/rk3399-anbernic-rg552-opp.dtsi +--- linux.orig/arch/arm64/boot/dts/rockchip/rk3399-anbernic-rg552-opp.dtsi 1970-01-01 00:00:00.000000000 +0000 ++++ linux/arch/arm64/boot/dts/rockchip/rk3399-anbernic-rg552-opp.dtsi 2023-07-27 12:34:27.790942738 +0000 +@@ -0,0 +1,141 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR MIT) ++/* ++ * Copyright (c) 2016-2017 Fuzhou Rockchip Electronics Co., Ltd ++ * Copyright (C) 2023 BrooksyTech (https://github.com/brooksytech) ++ */ ++ ++/ { ++ cluster0_opp: opp-table-0 { ++ compatible = "operating-points-v2"; ++ opp-shared; ++ ++ opp00 { ++ opp-hz = /bits/ 64 <816000000>; ++ opp-microvolt = <850000>; ++ }; ++ opp01 { ++ opp-hz = /bits/ 64 <1008000000>; ++ opp-microvolt = <925000>; ++ }; ++ opp02 { ++ opp-hz = /bits/ 64 <1200000000>; ++ opp-microvolt = <1000000>; ++ }; ++ opp03 { ++ opp-hz = /bits/ 64 <1416000000>; ++ opp-microvolt = <1125000>; ++ }; ++ opp-04 { ++ opp-hz = /bits/ 64 <1512000000>; ++ opp-microvolt = <1200000>; ++ }; ++ opp-05 { ++ opp-hz = /bits/ 64 <1608000000>; ++ opp-microvolt = <1225000>; ++ }; ++ }; ++ ++ cluster1_opp: opp-table-1 { ++ compatible = "operating-points-v2"; ++ opp-shared; ++ ++ opp00 { ++ opp-hz = /bits/ 64 <816000000>; ++ opp-microvolt = <825000>; ++ }; ++ opp01 { ++ opp-hz = /bits/ 64 <1008000000>; ++ opp-microvolt = <875000>; ++ }; ++ opp02 { ++ opp-hz = /bits/ 64 <1200000000>; ++ opp-microvolt = <950000>; ++ }; ++ opp03 { ++ opp-hz = /bits/ 64 <1416000000>; ++ opp-microvolt = <1025000>; ++ }; ++ opp04 { ++ opp-hz = /bits/ 64 <1608000000>; ++ opp-microvolt = <1100000>; ++ }; ++ opp05 { ++ opp-hz = /bits/ 64 <1800000000>; ++ opp-microvolt = <1200000>; ++ }; ++ opp-06 { ++ opp-hz = /bits/ 64 <1992000000>; ++ opp-microvolt = <1250000>; ++ }; ++ opp-07 { ++ opp-hz = /bits/ 64 <2088000000>; ++ opp-microvolt = <1250000>; ++ }; ++ }; ++ ++ gpu_opp_table: opp-table-2 { ++ compatible = "operating-points-v2"; ++ ++ opp00 { ++ opp-hz = /bits/ 64 <500000000>; ++ opp-microvolt = <875000>; ++ }; ++ opp01 { ++ opp-hz = /bits/ 64 <600000000>; ++ opp-microvolt = <925000>; ++ }; ++ opp02 { ++ opp-hz = /bits/ 64 <800000000>; ++ opp-microvolt = <1100000>; ++ }; ++ opp03 { ++ opp-hz = /bits/ 64 <900000000>; ++ opp-microvolt = <1150000>; ++ }; ++ }; ++ ++ dmc_opp_table: opp-table-3 { ++ compatible = "operating-points-v2"; ++ ++ opp00 { ++ opp-hz = /bits/ 64 <666000000>; ++ opp-microvolt = <900000>; ++ }; ++ opp01 { ++ opp-hz = /bits/ 64 <856000000>; ++ opp-microvolt = <900000>; ++ }; ++ }; ++}; ++ ++&cpu_l0 { ++ operating-points-v2 = <&cluster0_opp>; ++}; ++ ++&cpu_l1 { ++ operating-points-v2 = <&cluster0_opp>; ++}; ++ ++&cpu_l2 { ++ operating-points-v2 = <&cluster0_opp>; ++}; ++ ++&cpu_l3 { ++ operating-points-v2 = <&cluster0_opp>; ++}; ++ ++&cpu_b0 { ++ operating-points-v2 = <&cluster1_opp>; ++}; ++ ++&cpu_b1 { ++ operating-points-v2 = <&cluster1_opp>; ++}; ++ ++&dmc { ++ operating-points-v2 = <&dmc_opp_table>; ++}; ++ ++&gpu { ++ operating-points-v2 = <&gpu_opp_table>; ++}; +diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-anbernic-rg552.dts linux/arch/arm64/boot/dts/rockchip/rk3399-anbernic-rg552.dts +--- linux.orig/arch/arm64/boot/dts/rockchip/rk3399-anbernic-rg552.dts 1970-01-01 00:00:00.000000000 +0000 ++++ linux/arch/arm64/boot/dts/rockchip/rk3399-anbernic-rg552.dts 2023-07-27 13:51:07.753940750 +0000 +@@ -0,0 +1,1328 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd. @@ -48,7 +193,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts linux/ +#include +#include +#include "rk3399.dtsi" -+#include "rk3399-rg552-opp.dtsi" ++#include "rk3399-anbernic-rg552-opp.dtsi" + +/ { + model = "Anbernic RG552"; @@ -657,8 +802,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts linux/ + pinctrl-names = "default"; + pinctrl-0 = <&sdio0_clk &sdio0_cmd &sdio0_cd &sdio0_bus4>; + sd-uhs-sdr104; -+// vqmmc-supply = <&vcc3v0_touch>; -+ vqmmc-supply = <&vcc_sdio>; ++ vqmmc-supply = <&vcc3v0_touch>; ++ //vqmmc-supply = <&vcc_sdio>; + status = "okay"; +}; + @@ -1174,12 +1319,6 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts linux/ + + }; + -+ sdio-pwrseq { -+ wifi_enable_h: wifi-enable-h { -+ rockchip,pins = <2 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>; -+ }; -+ }; -+ + usb-typec { + vcc5v0_typec_en: vcc5v0_typec_en { + rockchip,pins = <1 RK_PA3 RK_FUNC_GPIO &pcfg_pull_up>; @@ -1216,7 +1355,7 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts linux/ + + wifi { + wifi_pwr: wifi-pwr-en { -+ rockchip,pins = <3 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>; ++ rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_none>; + }; + }; + @@ -1368,155 +1507,10 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-linux.dts linux/ +&vopl_mmu { + status = "okay"; +}; -diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-opp.dtsi linux/arch/arm64/boot/dts/rockchip/rk3399-rg552-opp.dtsi ---- linux.orig/arch/arm64/boot/dts/rockchip/rk3399-rg552-opp.dtsi 1970-01-01 00:00:00.000000000 +0000 -+++ linux/arch/arm64/boot/dts/rockchip/rk3399-rg552-opp.dtsi 2023-07-26 14:27:49.537460386 +0000 -@@ -0,0 +1,141 @@ -+// SPDX-License-Identifier: (GPL-2.0+ OR MIT) -+/* -+ * Copyright (c) 2016-2017 Fuzhou Rockchip Electronics Co., Ltd -+ * Copyright (C) 2023 BrooksyTech (https://github.com/brooksytech) -+ */ -+ -+/ { -+ cluster0_opp: opp-table-0 { -+ compatible = "operating-points-v2"; -+ opp-shared; -+ -+ opp00 { -+ opp-hz = /bits/ 64 <816000000>; -+ opp-microvolt = <850000>; -+ }; -+ opp01 { -+ opp-hz = /bits/ 64 <1008000000>; -+ opp-microvolt = <925000>; -+ }; -+ opp02 { -+ opp-hz = /bits/ 64 <1200000000>; -+ opp-microvolt = <1000000>; -+ }; -+ opp03 { -+ opp-hz = /bits/ 64 <1416000000>; -+ opp-microvolt = <1125000>; -+ }; -+ opp-04 { -+ opp-hz = /bits/ 64 <1512000000>; -+ opp-microvolt = <1200000>; -+ }; -+ opp-05 { -+ opp-hz = /bits/ 64 <1608000000>; -+ opp-microvolt = <1225000>; -+ }; -+ }; -+ -+ cluster1_opp: opp-table-1 { -+ compatible = "operating-points-v2"; -+ opp-shared; -+ -+ opp00 { -+ opp-hz = /bits/ 64 <816000000>; -+ opp-microvolt = <825000>; -+ }; -+ opp01 { -+ opp-hz = /bits/ 64 <1008000000>; -+ opp-microvolt = <875000>; -+ }; -+ opp02 { -+ opp-hz = /bits/ 64 <1200000000>; -+ opp-microvolt = <950000>; -+ }; -+ opp03 { -+ opp-hz = /bits/ 64 <1416000000>; -+ opp-microvolt = <1025000>; -+ }; -+ opp04 { -+ opp-hz = /bits/ 64 <1608000000>; -+ opp-microvolt = <1100000>; -+ }; -+ opp05 { -+ opp-hz = /bits/ 64 <1800000000>; -+ opp-microvolt = <1200000>; -+ }; -+ opp-06 { -+ opp-hz = /bits/ 64 <1992000000>; -+ opp-microvolt = <1250000>; -+ }; -+ opp-07 { -+ opp-hz = /bits/ 64 <2088000000>; -+ opp-microvolt = <1250000>; -+ }; -+ }; -+ -+ gpu_opp_table: opp-table-2 { -+ compatible = "operating-points-v2"; -+ -+ opp00 { -+ opp-hz = /bits/ 64 <500000000>; -+ opp-microvolt = <875000>; -+ }; -+ opp01 { -+ opp-hz = /bits/ 64 <600000000>; -+ opp-microvolt = <925000>; -+ }; -+ opp02 { -+ opp-hz = /bits/ 64 <800000000>; -+ opp-microvolt = <1100000>; -+ }; -+ opp03 { -+ opp-hz = /bits/ 64 <900000000>; -+ opp-microvolt = <1150000>; -+ }; -+ }; -+ -+ dmc_opp_table: opp-table-3 { -+ compatible = "operating-points-v2"; -+ -+ opp00 { -+ opp-hz = /bits/ 64 <666000000>; -+ opp-microvolt = <900000>; -+ }; -+ opp01 { -+ opp-hz = /bits/ 64 <856000000>; -+ opp-microvolt = <900000>; -+ }; -+ }; -+}; -+ -+&cpu_l0 { -+ operating-points-v2 = <&cluster0_opp>; -+}; -+ -+&cpu_l1 { -+ operating-points-v2 = <&cluster0_opp>; -+}; -+ -+&cpu_l2 { -+ operating-points-v2 = <&cluster0_opp>; -+}; -+ -+&cpu_l3 { -+ operating-points-v2 = <&cluster0_opp>; -+}; -+ -+&cpu_b0 { -+ operating-points-v2 = <&cluster1_opp>; -+}; -+ -+&cpu_b1 { -+ operating-points-v2 = <&cluster1_opp>; -+}; -+ -+&dmc { -+ operating-points-v2 = <&dmc_opp_table>; -+}; -+ -+&gpu { -+ operating-points-v2 = <&gpu_opp_table>; -+}; diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399.dtsi linux/arch/arm64/boot/dts/rockchip/rk3399.dtsi ---- linux.orig/arch/arm64/boot/dts/rockchip/rk3399.dtsi 2023-07-24 16:56:41.000000000 +0000 -+++ linux/arch/arm64/boot/dts/rockchip/rk3399.dtsi 2023-07-26 14:27:49.537460386 +0000 -@@ -1489,7 +1489,7 @@ +--- linux.orig/arch/arm64/boot/dts/rockchip/rk3399.dtsi 2023-06-23 03:53:36.256094988 +0000 ++++ linux/arch/arm64/boot/dts/rockchip/rk3399.dtsi 2023-07-24 20:00:14.430068009 +0000 +@@ -1469,7 +1469,7 @@ <1000000000>, <150000000>, <75000000>, <37500000>, @@ -1526,8 +1520,8 @@ diff -rupN linux.orig/arch/arm64/boot/dts/rockchip/rk3399.dtsi linux/arch/arm64/ <100000000>, <50000000>, <400000000>, <400000000>, diff -rupN linux.orig/drivers/gpio/gpio-rockchip.c linux/drivers/gpio/gpio-rockchip.c ---- linux.orig/drivers/gpio/gpio-rockchip.c 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/gpio/gpio-rockchip.c 2023-07-26 14:27:49.537460386 +0000 +--- linux.orig/drivers/gpio/gpio-rockchip.c 2023-07-16 19:38:02.962868756 +0000 ++++ linux/drivers/gpio/gpio-rockchip.c 2023-07-22 17:35:57.766955315 +0000 @@ -335,13 +335,13 @@ static void rockchip_irq_demux(struct ir unsigned long pending; unsigned int irq; @@ -1545,9 +1539,9 @@ diff -rupN linux.orig/drivers/gpio/gpio-rockchip.c linux/drivers/gpio/gpio-rockc /* * Triggering IRQ on both rising and falling edge diff -rupN linux.orig/drivers/gpu/drm/panel/Kconfig linux/drivers/gpu/drm/panel/Kconfig ---- linux.orig/drivers/gpu/drm/panel/Kconfig 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/gpu/drm/panel/Kconfig 2023-07-26 14:27:49.537460386 +0000 -@@ -657,6 +657,15 @@ config DRM_PANEL_SHARP_LS043T1LE01 +--- linux.orig/drivers/gpu/drm/panel/Kconfig 2023-06-23 03:53:39.968155272 +0000 ++++ linux/drivers/gpu/drm/panel/Kconfig 2023-07-25 05:54:31.139292676 +0000 +@@ -588,6 +588,15 @@ config DRM_PANEL_SHARP_LS043T1LE01 Say Y here if you want to enable support for Sharp LS043T1LE01 qHD (540x960) DSI panel as found on the Qualcomm APQ8074 Dragonboard @@ -1564,9 +1558,9 @@ diff -rupN linux.orig/drivers/gpu/drm/panel/Kconfig linux/drivers/gpu/drm/panel/ tristate "Sharp LS060T1SX01 FullHD video mode panel" depends on OF diff -rupN linux.orig/drivers/gpu/drm/panel/Makefile linux/drivers/gpu/drm/panel/Makefile ---- linux.orig/drivers/gpu/drm/panel/Makefile 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/gpu/drm/panel/Makefile 2023-07-26 14:27:49.537460386 +0000 -@@ -66,6 +66,7 @@ obj-$(CONFIG_DRM_PANEL_SEIKO_43WVF1G) += +--- linux.orig/drivers/gpu/drm/panel/Makefile 2023-06-23 03:53:39.968155272 +0000 ++++ linux/drivers/gpu/drm/panel/Makefile 2023-07-22 17:35:58.626982361 +0000 +@@ -59,6 +59,7 @@ obj-$(CONFIG_DRM_PANEL_SEIKO_43WVF1G) += obj-$(CONFIG_DRM_PANEL_SHARP_LQ101R1SX01) += panel-sharp-lq101r1sx01.o obj-$(CONFIG_DRM_PANEL_SHARP_LS037V7DW01) += panel-sharp-ls037v7dw01.o obj-$(CONFIG_DRM_PANEL_SHARP_LS043T1LE01) += panel-sharp-ls043t1le01.o @@ -1576,7 +1570,7 @@ diff -rupN linux.orig/drivers/gpu/drm/panel/Makefile linux/drivers/gpu/drm/panel obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7703) += panel-sitronix-st7703.o diff -rupN linux.orig/drivers/gpu/drm/panel/panel-sharp-ls054b3sx01.c linux/drivers/gpu/drm/panel/panel-sharp-ls054b3sx01.c --- linux.orig/drivers/gpu/drm/panel/panel-sharp-ls054b3sx01.c 1970-01-01 00:00:00.000000000 +0000 -+++ linux/drivers/gpu/drm/panel/panel-sharp-ls054b3sx01.c 2023-07-26 14:27:49.537460386 +0000 ++++ linux/drivers/gpu/drm/panel/panel-sharp-ls054b3sx01.c 2023-07-25 14:36:58.284854285 +0000 @@ -0,0 +1,360 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* @@ -1939,8 +1933,8 @@ diff -rupN linux.orig/drivers/gpu/drm/panel/panel-sharp-ls054b3sx01.c linux/driv +MODULE_DESCRIPTION("Panel driver for Sharp LS054B3SX01 1152x1920 Video Mode DSI Panel"); +MODULE_LICENSE("GPL v2"); diff -rupN linux.orig/drivers/input/Kconfig linux/drivers/input/Kconfig ---- linux.orig/drivers/input/Kconfig 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/input/Kconfig 2023-07-26 14:27:49.537460386 +0000 +--- linux.orig/drivers/input/Kconfig 2023-06-23 03:53:40.600165543 +0000 ++++ linux/drivers/input/Kconfig 2023-07-22 17:35:58.778987141 +0000 @@ -51,6 +51,19 @@ config INPUT_FF_MEMLESS To compile this driver as a module, choose M here: the module will be called ff-memless. @@ -1962,8 +1956,8 @@ diff -rupN linux.orig/drivers/input/Kconfig linux/drivers/input/Kconfig tristate "Sparse keymap support library" help diff -rupN linux.orig/drivers/input/Makefile linux/drivers/input/Makefile ---- linux.orig/drivers/input/Makefile 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/input/Makefile 2023-07-26 14:27:49.537460386 +0000 +--- linux.orig/drivers/input/Makefile 2023-06-23 03:53:40.600165543 +0000 ++++ linux/drivers/input/Makefile 2023-07-22 17:35:58.810988147 +0000 @@ -10,6 +10,7 @@ input-core-y := input.o input-compat.o i input-core-y += touchscreen.o @@ -1974,7 +1968,7 @@ diff -rupN linux.orig/drivers/input/Makefile linux/drivers/input/Makefile obj-$(CONFIG_INPUT_VIVALDIFMAP) += vivaldi-fmap.o diff -rupN linux.orig/drivers/input/input-polldev.c linux/drivers/input/input-polldev.c --- linux.orig/drivers/input/input-polldev.c 1970-01-01 00:00:00.000000000 +0000 -+++ linux/drivers/input/input-polldev.c 2023-07-26 14:27:49.537460386 +0000 ++++ linux/drivers/input/input-polldev.c 2023-07-22 17:35:58.810988147 +0000 @@ -0,0 +1,362 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* @@ -2339,8 +2333,8 @@ diff -rupN linux.orig/drivers/input/input-polldev.c linux/drivers/input/input-po +} +EXPORT_SYMBOL(input_unregister_polled_device); diff -rupN linux.orig/drivers/input/joystick/Kconfig linux/drivers/input/joystick/Kconfig ---- linux.orig/drivers/input/joystick/Kconfig 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/input/joystick/Kconfig 2023-07-26 14:27:49.537460386 +0000 +--- linux.orig/drivers/input/joystick/Kconfig 2023-06-23 03:53:40.604165608 +0000 ++++ linux/drivers/input/joystick/Kconfig 2023-07-22 17:35:58.782987267 +0000 @@ -393,6 +393,12 @@ config JOYSTICK_FSIA6B To compile this driver as a module, choose M here: the module will be called fsia6b. @@ -2355,8 +2349,8 @@ diff -rupN linux.orig/drivers/input/joystick/Kconfig linux/drivers/input/joystic bool "N64 controller" depends on MACH_NINTENDO64 diff -rupN linux.orig/drivers/input/joystick/Makefile linux/drivers/input/joystick/Makefile ---- linux.orig/drivers/input/joystick/Makefile 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/input/joystick/Makefile 2023-07-26 14:27:49.537460386 +0000 +--- linux.orig/drivers/input/joystick/Makefile 2023-06-23 03:53:40.604165608 +0000 ++++ linux/drivers/input/joystick/Makefile 2023-07-22 17:35:58.782987267 +0000 @@ -30,6 +30,7 @@ obj-$(CONFIG_JOYSTICK_PXRC) += pxrc.o obj-$(CONFIG_JOYSTICK_QWIIC) += qwiic-joystick.o obj-$(CONFIG_JOYSTICK_SENSEHAT) += sensehat-joystick.o @@ -2367,7 +2361,7 @@ diff -rupN linux.orig/drivers/input/joystick/Makefile linux/drivers/input/joysti obj-$(CONFIG_JOYSTICK_STINGER) += stinger.o diff -rupN linux.orig/drivers/input/joystick/singleadcjoy.c linux/drivers/input/joystick/singleadcjoy.c --- linux.orig/drivers/input/joystick/singleadcjoy.c 1970-01-01 00:00:00.000000000 +0000 -+++ linux/drivers/input/joystick/singleadcjoy.c 2023-07-26 14:27:49.537460386 +0000 ++++ linux/drivers/input/joystick/singleadcjoy.c 2023-07-22 17:35:58.782987267 +0000 @@ -0,0 +1,1416 @@ +/*----------------------------------------------------------------------------*/ + @@ -3786,9 +3780,9 @@ diff -rupN linux.orig/drivers/input/joystick/singleadcjoy.c linux/drivers/input/ +late_initcall(joypad_init); +module_exit(joypad_exit); diff -rupN linux.orig/drivers/input/touchscreen/goodix.c linux/drivers/input/touchscreen/goodix.c ---- linux.orig/drivers/input/touchscreen/goodix.c 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/input/touchscreen/goodix.c 2023-07-26 14:27:49.537460386 +0000 -@@ -1018,7 +1018,7 @@ retry_get_irq_gpio: +--- linux.orig/drivers/input/touchscreen/goodix.c 2023-06-23 03:53:40.656166453 +0000 ++++ linux/drivers/input/touchscreen/goodix.c 2023-07-22 17:35:58.806988021 +0000 +@@ -1010,7 +1010,7 @@ retry_get_irq_gpio: default: if (ts->gpiod_int && ts->gpiod_rst) { ts->reset_controller_at_probe = true; @@ -3798,8 +3792,8 @@ diff -rupN linux.orig/drivers/input/touchscreen/goodix.c linux/drivers/input/tou } } diff -rupN linux.orig/drivers/power/supply/cw2015_battery.c linux/drivers/power/supply/cw2015_battery.c ---- linux.orig/drivers/power/supply/cw2015_battery.c 2023-07-24 16:56:41.000000000 +0000 -+++ linux/drivers/power/supply/cw2015_battery.c 2023-07-26 14:27:49.537460386 +0000 +--- linux.orig/drivers/power/supply/cw2015_battery.c 2023-06-23 03:53:42.860202281 +0000 ++++ linux/drivers/power/supply/cw2015_battery.c 2023-07-22 17:35:59.927023244 +0000 @@ -553,7 +553,7 @@ static enum power_supply_property cw_bat }; @@ -3811,7 +3805,7 @@ diff -rupN linux.orig/drivers/power/supply/cw2015_battery.c linux/drivers/power/ .num_properties = ARRAY_SIZE(cw_battery_properties), diff -rupN linux.orig/include/linux/input-polldev.h linux/include/linux/input-polldev.h --- linux.orig/include/linux/input-polldev.h 1970-01-01 00:00:00.000000000 +0000 -+++ linux/include/linux/input-polldev.h 2023-07-26 14:27:49.537460386 +0000 ++++ linux/include/linux/input-polldev.h 2023-07-22 17:35:57.254939213 +0000 @@ -0,0 +1,58 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef _INPUT_POLLDEV_H