diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index e8964fa6719c..70ba8f0aae91 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -25,19 +25,21 @@ config/boards/avaota-a1.csc @chainsx
config/boards/ayn-odin2.eos @FantasyGmm
config/boards/bananapi.conf @DylanHP @janprunk
config/boards/bananapicm4io.conf @pyavitz
-config/boards/bananapim2pro.conf @bretmlw
+config/boards/bananapim2pro.conf @igorpecovnik
config/boards/bananapim2s.conf @jeanrhum @pyavitz
config/boards/bananapim2zero.csc @mhawkins-consultant
config/boards/bananapim3.csc @AaronNGray
config/boards/bananapim4zero.conf @pyavitz
-config/boards/bananapim5.conf @bretmlw
+config/boards/bananapim5.conf @igorpecovnik
config/boards/bananapim64.csc @devdotnetorg
config/boards/bananapim7.conf @amazingfate
config/boards/bigtreetech-cb1.conf @JohnTheCoolingFan
+config/boards/bigtreetech-cb2.conf @JohnTheCoolingFan
config/boards/cherryba-m1.csc @IsMrX
config/boards/clearfogpro.csc @Heisath
config/boards/cm3588-nas.csc @ColorfulRhino
config/boards/coolpi-cm5.csc @andyshrk
+config/boards/coolpi-genbook.csc @andyshrk
config/boards/firefly-itx-3588j.csc @SeeleVolleri
config/boards/fxblox-rk1.csc @mahdichi
config/boards/gateway-gz80x.conf @pyavitz
@@ -90,20 +92,20 @@ config/boards/odroidhc4.conf @igorpecovnik
config/boards/odroidm1.conf @rpardini
config/boards/odroidn2.conf @NicoD-SBC
config/boards/odroidxu4.conf @joekhoobyar
-config/boards/olimex-teres-a64.conf @Kreyren
+config/boards/olimex-teres-a64.csc @Kreyren
config/boards/onecloud.conf @hzyitc
config/boards/oneplus-kebab.conf @amazingfate
config/boards/orangepi4-lts.conf @paolosabatino
config/boards/orangepi4.csc @paolosabatino
-config/boards/orangepi5-plus.conf @alexl83 @efectn
+config/boards/orangepi5-plus.conf @alexl83
config/boards/orangepi5.conf @efectn
config/boards/orangepione.conf @StephenGraf
config/boards/orangepipc.csc @lbmendes
config/boards/orangepipcplus.csc @Janmcha
-config/boards/orangepizero2.wip @AGM1968 @krachlatte
+config/boards/orangepizero2.csc @AGM1968 @krachlatte
config/boards/orangepizero2w.csc @chraac
config/boards/orangepizero3.csc @alexl83 @chraac
-config/boards/orangepizeroplus.conf @schwar3kat
+config/boards/orangepizeroplus.csc @schwar3kat
config/boards/phytiumpi.conf @chainsx
config/boards/pine64.conf @PanderMusubi
config/boards/pinebook-pro.csc @TRSx80 @ahoneybun
@@ -123,6 +125,7 @@ config/boards/rk3328-heltec.csc @sicXnull
config/boards/rock-3a.conf @ZazaBR @amazingfate @catalinii @vamzii
config/boards/rock-5-itx.conf @amazingfate @prahal
config/boards/rock-5a.conf @amazingfate
+config/boards/rock-5b-plus.conf @HeyMeco @fridtjof
config/boards/rock-5b.conf @amazingfate @linhz0hz
config/boards/rock-5c.conf @schwar3kat
config/boards/rock-s0.conf @brentr
@@ -140,7 +143,7 @@ config/boards/sk-tda4vm.conf @glneo
config/boards/station-m1.csc @150balbes
config/boards/station-m3.csc @chainsx
config/boards/sweet-potato.conf @Tonymac32
-config/boards/thinkpad-x13s.wip @PeterChrz @rpardini
+config/boards/thinkpad-x13s.conf @PeterChrz @rpardini
config/boards/tinkerboard.conf @paolosabatino
config/boards/tritium-h3.conf @Tonymac32
config/boards/tritium-h5.conf @Tonymac32
@@ -151,7 +154,7 @@ config/boards/wsl2-x86.csc @rpardini
config/boards/x96-mate.tvb @Ressetkk
config/boards/x96q.tvb @sicXnull
config/boards/xiaomi-elish.conf @amazingfate
-config/boards/xiaomi-umi.conf @FantasyGmm
+config/boards/xiaomi-umi.eos @FantasyGmm
config/boards/youyeetoo-r1-v3.csc @SuperKali
config/kernel/linux-arm64-*.config @FantasyGmm
config/kernel/linux-bcm2711-*.config @PanderMusubi @teknoid
@@ -159,14 +162,14 @@ config/kernel/linux-imx8m-*.config @schmiedelm
config/kernel/linux-k3-*.config @glneo
config/kernel/linux-meson-*.config @hzyitc
config/kernel/linux-meson-s4t7-*.config @adeepn @rpardini @viraniac
-config/kernel/linux-meson64-*.config @NicoD-SBC @SteeManMI @Tonymac32 @adeepn @bretmlw @clee @engineer-80 @igorpecovnik @jeanrhum @monkaBlyat @pyavitz @rpardini @teknoid
+config/kernel/linux-meson64-*.config @NicoD-SBC @SteeManMI @Tonymac32 @adeepn @clee @engineer-80 @igorpecovnik @jeanrhum @monkaBlyat @pyavitz @rpardini @teknoid
config/kernel/linux-mvebu-*.config @Heisath
config/kernel/linux-odroidxu4-*.config @joekhoobyar
config/kernel/linux-phytium-embedded-*.config @chainsx
-config/kernel/linux-rk35xx-*.config @ColorfulRhino @SeeleVolleri @SuperKali @Tonymac32 @ZazaBR @alexl83 @amazingfate @catalinii @chainsx @efectn @ginkage @hoochiwetech @krachlatte @lanefu @linhz0hz @mahdichi @mattx433 @monkaBlyat @prahal @rpardini @schwar3kat @sputnik2019 @vamzii
+config/kernel/linux-rk35xx-*.config @ColorfulRhino @HeyMeco @SeeleVolleri @SuperKali @Tonymac32 @ZazaBR @alexl83 @amazingfate @catalinii @chainsx @efectn @fridtjof @ginkage @hoochiwetech @krachlatte @lanefu @linhz0hz @mahdichi @mattx433 @monkaBlyat @prahal @rpardini @schwar3kat @sputnik2019 @vamzii
config/kernel/linux-rockchip-*.config @paolosabatino
-config/kernel/linux-rockchip-rk3588-*.config @ColorfulRhino @SuperKali @Tonymac32 @alexl83 @amazingfate @andyshrk @efectn @lanefu @linhz0hz @rpardini @schwar3kat
-config/kernel/linux-rockchip64-*.config @150balbes @Manouchehri @TRSx80 @TheSnowfield @Tonymac32 @ZazaBR @ahoneybun @amazingfate @andyshrk @brentr @catalinii @clee @hqnicolas @igorpecovnik @joekhoobyar @krachlatte @paolosabatino @prahal @rpardini @sicXnull @tdleiyao @utlark @vamzii
+config/kernel/linux-rockchip-rk3588-*.config @ColorfulRhino @HeyMeco @SuperKali @Tonymac32 @alexl83 @amazingfate @andyshrk @efectn @fridtjof @lanefu @linhz0hz @rpardini @schwar3kat
+config/kernel/linux-rockchip64-*.config @150balbes @JohnTheCoolingFan @Manouchehri @TRSx80 @TheSnowfield @Tonymac32 @ZazaBR @ahoneybun @amazingfate @andyshrk @brentr @catalinii @clee @hqnicolas @igorpecovnik @joekhoobyar @krachlatte @paolosabatino @prahal @rpardini @sicXnull @tdleiyao @utlark @vamzii
config/kernel/linux-sm8250-*.config @FantasyGmm @amazingfate
config/kernel/linux-sun55iw3-syterkit-*.config @chainsx
config/kernel/linux-sunxi-*.config @1ubuntuuser @AaronNGray @DylanHP @Janmcha @StephenGraf @Tonymac32 @janprunk @lbmendes @mhawkins-consultant @sgjava
@@ -183,14 +186,14 @@ patch/kernel/bcm2711-*/ @PanderMusubi @teknoid
patch/kernel/imx8m-*/ @schmiedelm
patch/kernel/k3-*/ @glneo
patch/kernel/meson-*/ @hzyitc
-patch/kernel/meson64-*/ @NicoD-SBC @SteeManMI @Tonymac32 @adeepn @bretmlw @clee @engineer-80 @igorpecovnik @jeanrhum @monkaBlyat @pyavitz @rpardini @teknoid
+patch/kernel/meson64-*/ @NicoD-SBC @SteeManMI @Tonymac32 @adeepn @clee @engineer-80 @igorpecovnik @jeanrhum @monkaBlyat @pyavitz @rpardini @teknoid
patch/kernel/mvebu-*/ @Heisath
patch/kernel/odroidxu4-*/ @joekhoobyar
patch/kernel/phytium-embedded-*/ @chainsx
-patch/kernel/rk35xx-vendor-*/ @ColorfulRhino @SeeleVolleri @SuperKali @Tonymac32 @ZazaBR @alexl83 @amazingfate @catalinii @chainsx @efectn @ginkage @hoochiwetech @krachlatte @lanefu @linhz0hz @mahdichi @mattx433 @monkaBlyat @prahal @rpardini @schwar3kat @sputnik2019 @vamzii
+patch/kernel/rk35xx-vendor-*/ @ColorfulRhino @HeyMeco @SeeleVolleri @SuperKali @Tonymac32 @ZazaBR @alexl83 @amazingfate @catalinii @chainsx @efectn @fridtjof @ginkage @hoochiwetech @krachlatte @lanefu @linhz0hz @mahdichi @mattx433 @monkaBlyat @prahal @rpardini @schwar3kat @sputnik2019 @vamzii
patch/kernel/rockchip-*/ @paolosabatino
-patch/kernel/rockchip-rk3588-*/ @ColorfulRhino @SuperKali @Tonymac32 @alexl83 @amazingfate @andyshrk @efectn @lanefu @linhz0hz @rpardini @schwar3kat
-patch/kernel/rockchip64-*/ @150balbes @Manouchehri @TRSx80 @TheSnowfield @Tonymac32 @ZazaBR @ahoneybun @amazingfate @andyshrk @brentr @catalinii @clee @hqnicolas @igorpecovnik @joekhoobyar @krachlatte @paolosabatino @prahal @rpardini @sicXnull @tdleiyao @utlark @vamzii
+patch/kernel/rockchip-rk3588-*/ @ColorfulRhino @HeyMeco @SuperKali @Tonymac32 @alexl83 @amazingfate @andyshrk @efectn @fridtjof @lanefu @linhz0hz @rpardini @schwar3kat
+patch/kernel/rockchip64-*/ @150balbes @JohnTheCoolingFan @Manouchehri @TRSx80 @TheSnowfield @Tonymac32 @ZazaBR @ahoneybun @amazingfate @andyshrk @brentr @catalinii @clee @hqnicolas @igorpecovnik @joekhoobyar @krachlatte @paolosabatino @prahal @rpardini @sicXnull @tdleiyao @utlark @vamzii
patch/kernel/sm8250-*/ @FantasyGmm @amazingfate
patch/kernel/sm8550-*/ @FantasyGmm
patch/kernel/sun55iw3-syterkit-*/ @chainsx
@@ -201,14 +204,14 @@ sources/families/imx8m.conf @schmiedelm
sources/families/k3.conf @glneo
sources/families/meson-s4t7.conf @adeepn @rpardini @viraniac
sources/families/meson.conf @hzyitc
-sources/families/meson64.conf @NicoD-SBC @SteeManMI @Tonymac32 @adeepn @bretmlw @clee @engineer-80 @igorpecovnik @jeanrhum @monkaBlyat @pyavitz @rpardini @teknoid
+sources/families/meson64.conf @NicoD-SBC @SteeManMI @Tonymac32 @adeepn @clee @engineer-80 @igorpecovnik @jeanrhum @monkaBlyat @pyavitz @rpardini @teknoid
sources/families/mvebu.conf @Heisath
sources/families/odroidxu4.conf @joekhoobyar
sources/families/phytium-embedded.conf @chainsx
-sources/families/rk35xx.conf @ColorfulRhino @SeeleVolleri @SuperKali @Tonymac32 @ZazaBR @alexl83 @amazingfate @catalinii @chainsx @efectn @ginkage @hoochiwetech @krachlatte @lanefu @linhz0hz @mahdichi @mattx433 @monkaBlyat @prahal @rpardini @schwar3kat @sputnik2019 @vamzii
-sources/families/rockchip-rk3588.conf @ColorfulRhino @SuperKali @Tonymac32 @alexl83 @amazingfate @andyshrk @efectn @lanefu @linhz0hz @rpardini @schwar3kat
+sources/families/rk35xx.conf @ColorfulRhino @HeyMeco @SeeleVolleri @SuperKali @Tonymac32 @ZazaBR @alexl83 @amazingfate @catalinii @chainsx @efectn @fridtjof @ginkage @hoochiwetech @krachlatte @lanefu @linhz0hz @mahdichi @mattx433 @monkaBlyat @prahal @rpardini @schwar3kat @sputnik2019 @vamzii
+sources/families/rockchip-rk3588.conf @ColorfulRhino @HeyMeco @SuperKali @Tonymac32 @alexl83 @amazingfate @andyshrk @efectn @fridtjof @lanefu @linhz0hz @rpardini @schwar3kat
sources/families/rockchip.conf @paolosabatino
-sources/families/rockchip64.conf @150balbes @Manouchehri @TRSx80 @TheSnowfield @Tonymac32 @ZazaBR @ahoneybun @amazingfate @andyshrk @brentr @catalinii @clee @hqnicolas @igorpecovnik @joekhoobyar @krachlatte @paolosabatino @prahal @rpardini @sicXnull @tdleiyao @utlark @vamzii
+sources/families/rockchip64.conf @150balbes @JohnTheCoolingFan @Manouchehri @TRSx80 @TheSnowfield @Tonymac32 @ZazaBR @ahoneybun @amazingfate @andyshrk @brentr @catalinii @clee @hqnicolas @igorpecovnik @joekhoobyar @krachlatte @paolosabatino @prahal @rpardini @sicXnull @tdleiyao @utlark @vamzii
sources/families/sm8250.conf @FantasyGmm @amazingfate
sources/families/sun55iw3-syterkit.conf @chainsx
sources/families/sunxi.conf @1ubuntuuser @AaronNGray @DylanHP @Janmcha @StephenGraf @Tonymac32 @janprunk @lbmendes @mhawkins-consultant @sgjava
diff --git a/.gitignore b/.gitignore
index f599d5086fa7..d59784c0b19f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,8 +15,7 @@ ubuntu-*-cloudimg-console.log
/.tmp/
/output/
/cache/
-/*userpatches*/
-/userpatches
+
### General annoyances ###
.DS_Store
diff --git a/README.md b/README.md
index 683cd3352e31..d245ce16fdb7 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,6 @@
+# DEPRECATED:
+# This branch will not receive any further updates or fixes. Do NOT open bug reports when using it.
+
@@ -26,7 +29,7 @@
- Superuser rights (configured sudo or root access).
- Make sure your system is up-to-date! Outdated Docker binaries, for example, can cause trouble.
-For stable branch use `--branch=v24.08`
+For stable branch use `--branch=v24.11`
```bash
apt-get -y install git
@@ -82,9 +85,10 @@ Generated image will be uploaded to your repository release. Note: GitHub upload
## More information:
-- [Building Armbian](https://docs.armbian.com/Developer-Guide_Build-Preparation/) (how to start, how to automate)
-- [Build options](https://docs.armbian.com/Developer-Guide_Build-Options/) (all build options)
+- [Building Armbian](https://docs.armbian.com/Developer-Guide_Build-Preparation/) (how to start)
+- [Build commands](https://docs.armbian.com/Developer-Guide_Build-Commands/) and [switches](https://docs.armbian.com/Developer-Guide_Build-Switches/) (build options)
- [User configuration](https://docs.armbian.com/Developer-Guide_User-Configurations/) (how to add packages, patches, and override sources config)
+- [System config](https://docs.armbian.com/User-Guide_Armbian-Config/) (menu driven utility to setup OS and HW features)
## Download prebuilt images releases
diff --git a/config/boards/aml-s9xx-box.tvb b/config/boards/aml-s9xx-box.tvb
index 4f1104f72603..67dce2c11dd5 100644
--- a/config/boards/aml-s9xx-box.tvb
+++ b/config/boards/aml-s9xx-box.tvb
@@ -31,7 +31,7 @@ function post_family_tweaks_bsp__config_aml-s9xx-box_bsp() {
run_host_command_logged chmod -v 644 "${destination}"/root/fstab.template
display_alert "${BOARD}" "Removing armbian-install" "info"
- run_host_command_logged rm -v "${destination}"/usr/sbin/armbian-install
+ run_host_command_logged rm -v "${destination}"/usr/bin/armbian-install
display_alert "${BOARD}" "Adding bsp-cli preinst logic" "info"
# Inline function! So this function is automatically hashed when this hook is hashed.
diff --git a/config/boards/armsom-cm5-io.csc b/config/boards/armsom-cm5-io.csc
index 69d626cd48f3..2c1dd8e922ee 100644
--- a/config/boards/armsom-cm5-io.csc
+++ b/config/boards/armsom-cm5-io.csc
@@ -11,7 +11,7 @@ IMAGE_PARTITION_TABLE="gpt"
BOARD_MAINTAINER=""
function post_family_config_branch_vendor__armsom-cm5-io_use_vendor_uboot() {
- display_alert "$BOARD" "vendor u-boot overrides for $BOARD / $BRANCH" "info"
+ display_alert "$BOARD" "vendor u-boot overrides for $BOARD / $BRANCH" "info"
declare -g BOOTSOURCE="https://github.com/ArmSoM/u-boot.git"
declare -g BOOTBRANCH="tag:rk3576-6.1-rk3.1"
diff --git a/config/boards/armsom-cm5-rpi-cm4-io.csc b/config/boards/armsom-cm5-rpi-cm4-io.csc
new file mode 100644
index 000000000000..ea33136b97ec
--- /dev/null
+++ b/config/boards/armsom-cm5-rpi-cm4-io.csc
@@ -0,0 +1,30 @@
+# Rockchip RK3576 SoC octa core 8-64GB SoC GBe eMMC USB3 NvME WIFI
+BOARD_NAME="ArmSoM CM5 CM4 IO"
+BOARDFAMILY="rk35xx"
+BOOTCONFIG="armsom-cm5-rpi-cm4-io-rk3576_defconfig"
+KERNEL_TARGET="vendor"
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+BOOT_FDT_FILE="rockchip/rk3576-armsom-cm5-rpi-cm4-io.dtb"
+BOOT_SCENARIO="spl-blobs"
+IMAGE_PARTITION_TABLE="gpt"
+BOARD_MAINTAINER=""
+
+function post_family_config_branch_vendor__armsom-cm5-rpi-cm4-io_use_vendor_uboot() {
+ display_alert "$BOARD" "vendor u-boot overrides for $BOARD / $BRANCH" "info"
+
+ declare -g BOOTSOURCE="https://github.com/ArmSoM/u-boot.git"
+ declare -g BOOTBRANCH="tag:rk3576-6.1-rk3.1"
+ declare -g BOOTPATCHDIR="legacy/u-boot-armsom-rk3576"
+ declare -g BOOTDIR="u-boot-${BOARD}"
+ declare -g UBOOT_TARGET_MAP="BL31=$RKBIN_DIR/$BL31_BLOB TEE=$RKBIN_DIR/$BL32_BLOB spl/u-boot-spl.bin u-boot.dtb u-boot.itb;;idbloader.img u-boot.itb"
+}
+
+function post_family_tweaks__armsom-cm5-rpi-cm4-io_naming_audios() {
+ display_alert "$BOARD" "Renaming armsom-cm5-rpi-cm4-io audios" "info"
+
+ mkdir -p $SDCARD/etc/udev/rules.d/
+ echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > $SDCARD/etc/udev/rules.d/90-naming-audios.rules
+
+ return 0
+}
diff --git a/config/boards/armsom-sige1.csc b/config/boards/armsom-sige1.csc
index a663cedd56fc..5de474efa247 100644
--- a/config/boards/armsom-sige1.csc
+++ b/config/boards/armsom-sige1.csc
@@ -8,5 +8,4 @@ FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3528-armsom-sige1.dtb"
BOOT_SCENARIO="spl-blobs"
-WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
diff --git a/config/boards/armsom-sige5.csc b/config/boards/armsom-sige5.csc
index c2ba55781dc8..9aea68a3c443 100644
--- a/config/boards/armsom-sige5.csc
+++ b/config/boards/armsom-sige5.csc
@@ -11,7 +11,7 @@ IMAGE_PARTITION_TABLE="gpt"
BOARD_MAINTAINER=""
function post_family_config_branch_vendor__armsom-sige7_use_vendor_uboot() {
- display_alert "$BOARD" "vendor u-boot overrides for $BOARD / $BRANCH" "info"
+ display_alert "$BOARD" "vendor u-boot overrides for $BOARD / $BRANCH" "info"
declare -g BOOTSOURCE="https://github.com/ArmSoM/u-boot.git"
declare -g BOOTBRANCH="tag:rk3576-6.1-rk3.1"
diff --git a/config/boards/bananapif3.csc b/config/boards/bananapif3.eos
similarity index 99%
rename from config/boards/bananapif3.csc
rename to config/boards/bananapif3.eos
index 3159e9f4e256..e2d43b69b60c 100644
--- a/config/boards/bananapif3.csc
+++ b/config/boards/bananapif3.eos
@@ -12,7 +12,7 @@ PACKAGE_LIST_BOARD="rfkill bluetooth bluez bluez-tools"
function post_config_uboot_target__extra_configs_for_bananapi_f3() {
display_alert "u-boot for ${BOARD}" "u-boot: enabling extra configs" "info"
-
+
run_host_command_logged scripts/config --enable CONFIG_SD_BOOT
run_host_command_logged scripts/config --enable CONFIG_EXT4_WRITE
run_host_command_logged scripts/config --enable CONFIG_FS_BTRFS
diff --git a/config/boards/bananapim2pro.conf b/config/boards/bananapim2pro.conf
index 47fb919df07d..c7ddf2789b80 100644
--- a/config/boards/bananapim2pro.conf
+++ b/config/boards/bananapim2pro.conf
@@ -1,7 +1,7 @@
# Amlogic S905X3 quad core 2-4GB RAM SoC eMMC GBE USB3 SPI Wifi
BOARD_NAME="Banana Pi M2Pro"
BOARDFAMILY="meson-sm1"
-BOARD_MAINTAINER="bretmlw"
+BOARD_MAINTAINER="igorpecovnik"
BOOTCONFIG="bananapi-m2-pro_defconfig"
BOOT_FDT_FILE="amlogic/meson-sm1-bananapi-m2-pro.dtb"
KERNEL_TARGET="current,edge"
@@ -10,8 +10,8 @@ MODULES_BLACKLIST="simpledrm" # SimpleDRM conflicts with Panfrost
FULL_DESKTOP="yes"
SERIALCON="ttyAML0"
BOOT_LOGO="desktop"
-BOOTBRANCH_BOARD="tag:v2023.07.02"
-BOOTPATCHDIR="v2023.07.02"
+BOOTBRANCH_BOARD="tag:v2024.07"
+BOOTPATCHDIR="v2024.07"
function fetch_sources_tools__libreelec_amlogic_fip_pre_m2-pro_blob_update() {
fetch_from_repo "https://github.com/Dangku/amlogic-boot-fip" "amlogic-boot-fip" "branch:master"
diff --git a/config/boards/bananapim3.csc b/config/boards/bananapim3.csc
index 1dbf5f932125..8294aa856438 100644
--- a/config/boards/bananapim3.csc
+++ b/config/boards/bananapim3.csc
@@ -6,3 +6,6 @@ BOOTCONFIG="Sinovoip_BPI_M3_defconfig"
OVERLAY_PREFIX="sun8i-a83t"
KERNEL_TARGET="legacy,current,edge"
KERNEL_TEST_TARGET="current"
+
+BOOTBRANCH="tag:v2024.01"
+BOOTPATCHDIR="u-boot-sunxi/board_${BOARD}"
diff --git a/config/boards/bananapim4zero.conf b/config/boards/bananapim4zero.conf
index 9e71b70c7792..e14f9a7be90f 100644
--- a/config/boards/bananapim4zero.conf
+++ b/config/boards/bananapim4zero.conf
@@ -4,7 +4,7 @@ BOARDFAMILY="sun50iw9-bpi"
BOARD_MAINTAINER="pyavitz"
BOOTCONFIG="bananapi_m4zero_defconfig"
OVERLAY_PREFIX="sun50i-h616"
-BOOT_FDT_FILE="allwinner/sun50i-h618-bananapi-m4-zero.dtb"
+BOOT_FDT_FILE="sun50i-h618-bananapi-m4-zero.dtb"
BOOT_LOGO="desktop"
KERNEL_TARGET="current,edge"
KERNEL_TEST_TARGET="current"
diff --git a/config/boards/bananapim5.conf b/config/boards/bananapim5.conf
index 8dfa3f417182..97cf7c5ed6b4 100644
--- a/config/boards/bananapim5.conf
+++ b/config/boards/bananapim5.conf
@@ -1,7 +1,7 @@
# Amlogic S905X3 quad core 2-4GB RAM SoC eMMC GBE USB3 SPI
BOARD_NAME="Banana Pi M5"
BOARDFAMILY="meson-sm1"
-BOARD_MAINTAINER="bretmlw"
+BOARD_MAINTAINER="igorpecovnik"
BOOTCONFIG="bananapi-m5_defconfig"
BOOT_FDT_FILE="amlogic/meson-sm1-bananapi-m5.dtb"
KERNEL_TARGET="current,edge"
diff --git a/config/boards/bigtreetech-cb1.conf b/config/boards/bigtreetech-cb1.conf
index a986944d2b77..080afc4dd40e 100644
--- a/config/boards/bigtreetech-cb1.conf
+++ b/config/boards/bigtreetech-cb1.conf
@@ -10,4 +10,4 @@ FORCE_BOOTSCRIPT_UPDATE="yes"
BOOTFS_TYPE="fat"
BOOT_FS_LABEL="BOOT"
OVERLAY_PREFIX="sun50i-h616"
-BOOT_FDT_FILE="allwinner/sun50i-h616-bigtreetech-cb1-sd.dtb"
+BOOT_FDT_FILE="sun50i-h616-bigtreetech-cb1-sd.dtb"
diff --git a/config/boards/bigtreetech-cb2.conf b/config/boards/bigtreetech-cb2.conf
new file mode 100644
index 000000000000..b9ce764d7ded
--- /dev/null
+++ b/config/boards/bigtreetech-cb2.conf
@@ -0,0 +1,48 @@
+# Rockchip RK3566 quad core 2GB-8GB GBE eMMC NVMe USB3 WiFi
+BOARD_NAME="BigTreeTech CB2"
+BOARDFAMILY="rockchip64"
+BOARD_MAINTAINER="JohnTheCoolingFan"
+BOOTCONFIG="bigtreetech-cb2-rk3566_defconfig"
+BOOT_SOC="rk3566"
+KERNEL_TARGET="current,edge"
+KERNEL_TEST_TARGET="current"
+BOOT_FDT_FILE="rockchip/rk3566-bigtreetech-cb2.dtb"
+IMAGE_PARTITION_TABLE="gpt"
+BOOT_SCENARIO="spl-blobs"
+OVERLAY_PREFIX='rk3566'
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+
+# TODO: replace with BOOT_SCENARIO=binman when it gets merged and in good shape
+function post_family_config__bigtreetech-cb2_uboot_overrides() {
+ display_alert "$BOARD" "mainline u-boot overrides" "info"
+
+ DDR_BLOB="rk35/rk3566_ddr_1056MHz_v1.21.bin"
+ BL31_BLOB="rk35/rk3568_bl31_v1.44.elf" # NOT a typo, bl31 is shared across 68 and 66
+
+ declare -g BOOTDELAY=1 # Wait for UART interrupt to enter UMS/RockUSB mode etc
+ declare -g BOOTSOURCE="https://github.com/u-boot/u-boot.git"
+ declare -g BOOTBRANCH="tag:v2024.10"
+ declare -g BOOTPATCHDIR="v2024.10/board_bigtreetech-cb2"
+ #declare -g BOOTDIR="u-boot-${BOARD}"
+ declare -g UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin"
+ unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
+
+ # Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
+ function write_uboot_platform() {
+ dd "if=${1}/u-boot-rockchip.bin" "of=${2}" bs=32k seek=1 conv=notrunc
+ }
+
+ function write_uboot_platform_mtd() {
+ declare -a extra_opts_flashcp=("--verbose")
+ if flashcp -h | grep -q -e '--partition'; then
+ echo "Confirmed flashcp supports --partition -- read and write only changed blocks." >&2
+ extra_opts_flashcp+=("--partition")
+ else
+ echo "flashcp does not support --partition, will write full SPI flash blocks." >&2
+ fi
+ flashcp "${extra_opts_flashcp[@]}" "${1}/u-boot-rockchip-spi.bin" /dev/mtd0
+ }
+}
+
+# vim: ft=bash
diff --git a/config/boards/cherryba-m1.csc b/config/boards/cherryba-m1.csc
index c38cc11dd768..b521ce160c9a 100644
--- a/config/boards/cherryba-m1.csc
+++ b/config/boards/cherryba-m1.csc
@@ -1,4 +1,4 @@
- # Allwinner H618 quad core 1GB 2GB 4GB RAM SoC WiFi USB-C emmc
+# Allwinner H618 quad core 1GB 2GB 4GB RAM SoC WiFi USB-C emmc
BOARD_NAME="CherryBa M1"
BOARDFAMILY="sun50iw9"
BOOTCONFIG="cherryba-m1_defconfig"
diff --git a/config/boards/coolpi-genbook.csc b/config/boards/coolpi-genbook.csc
new file mode 100644
index 000000000000..3188591875a5
--- /dev/null
+++ b/config/boards/coolpi-genbook.csc
@@ -0,0 +1,36 @@
+# Rockchip RK3588 SoC octa core 4-16GB SoC eMMC USB3 NVME
+BOARD_NAME="CoolPi GenBook"
+BOARDFAMILY="rockchip-rk3588"
+BOARD_MAINTAINER="andyshrk"
+BOARD_FIRMWARE_INSTALL="-full"
+BOOT_SOC="rk3588"
+BOOTCONFIG="coolpi-cm5-genbook-rk3588_defconfig"
+KERNEL_TARGET="edge"
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+BOOT_FDT_FILE="rockchip/rk3588-coolpi-cm5-genbook.dtb"
+BOOT_SCENARIO="spl-blobs"
+BOOT_SUPPORT_SPI="yes"
+BOOT_SPI_RKSPI_LOADER="yes"
+IMAGE_PARTITION_TABLE="gpt"
+
+# Mainline U-Boot
+function post_family_config_branch_edge__coolpi-genbook_use_mainline_uboot() {
+ display_alert "$BOARD" "mainline (next branch) u-boot overrides for $BOARD / $BRANCH" "info"
+
+ declare -g BOOTSOURCE="https://github.com/u-boot/u-boot.git" # Mainline U-Boot
+ unset BOOTBRANCH
+ unset BOOTPATCHDIR
+ declare -g BOOTBRANCH_BOARD="tag:v2025.01-rc3"
+ declare -g UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin u-boot-rockchip-spi.bin"
+ unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
+
+ # Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
+ function write_uboot_platform() {
+ dd "if=$1/u-boot-rockchip.bin" "of=$2" bs=32k seek=1 conv=notrunc status=none
+ }
+
+ function write_uboot_platform_mtd() {
+ flashcp -v -p "$1/u-boot-rockchip-spi.bin" /dev/mtd0
+ }
+}
diff --git a/config/boards/core3566.csc b/config/boards/core3566.csc
new file mode 100644
index 000000000000..3e21a7241e8c
--- /dev/null
+++ b/config/boards/core3566.csc
@@ -0,0 +1,66 @@
+# Rockchip RK3566 quad core 4/8GB RAM SoC WIFI/BT eMMC USB2 USB3 NVMe PCIe GbE HDMI SPI
+BOARD_NAME="core3566"
+BOARDFAMILY="rk35xx"
+BOARD_MAINTAINER=""
+BOOTCONFIG="orangepi-3b-rk3566_defconfig"
+BOOT_SOC="rk3566"
+KERNEL_TARGET="vendor"
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+BOOT_FDT_FILE="rockchip/rk3566-core3566.dtb"
+IMAGE_PARTITION_TABLE="gpt"
+BOOT_SCENARIO="spl-blobs"
+BOOT_SUPPORT_SPI="yes"
+BOOT_SPI_RKSPI_LOADER="yes"
+MODULES=""
+MODULES_BLACKLIST_LEGACY="bcmdhd"
+
+# Override family config for this board; let's avoid conditionals in family config.
+function post_family_config__core3566_use_mainline_uboot() {
+ display_alert "$BOARD" "mainline (Kwiboo's tree) u-boot overrides" "info"
+
+ BOOTSOURCE="https://github.com/Kwiboo/u-boot-rockchip.git"
+ BOOTBRANCH="branch:rk3xxx-2024.04" # specific commit tested is commit:ccef7dfc453bc03c5b5c61fa67d2745b96fa7da6
+ BOOTPATCHDIR="v2024.04-orangepi3b" # empty, patches are already in Kwiboo's branch:rk3xxx-2024.04
+
+ BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
+
+ BOOTDELAY=1 # Wait for UART interrupt to enter UMS/RockUSB mode etc
+ UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin u-boot-rockchip-spi.bin u-boot.itb idbloader.img idbloader-spi.img"
+ unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
+
+ # Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
+ function write_uboot_platform() {
+ dd if=${1}/u-boot-rockchip.bin of=${2} bs=32k seek=1 conv=fsync
+ }
+
+ # Smarter/faster/better to-spi writer using flashcp (hopefully with --partition), using the binman-provided 'u-boot-rockchip-spi.bin'
+ function write_uboot_platform_mtd() {
+ declare -a extra_opts_flashcp=("--verbose")
+ if flashcp -h | grep -q -e '--partition'; then
+ echo "Confirmed flashcp supports --partition -- read and write only changed blocks." >&2
+ extra_opts_flashcp+=("--partition")
+ else
+ echo "flashcp does not support --partition, will write full SPI flash blocks." >&2
+ fi
+ flashcp "${extra_opts_flashcp[@]}" "${1}/u-boot-rockchip-spi.bin" /dev/mtd0
+ }
+
+}
+
+function post_family_tweaks_bsp__core3566() {
+ # display_alert "$BOARD" "Installing sprd-bluetooth.service" "info"
+
+ # Bluetooth on core3566 board is handled by a Spreadtrum (sprd) chip and requires
+ # a custom hciattach_opi binary, plus a systemd service to run it at boot time
+ #install -m 755 $SRC/packages/bsp/rk3399/hciattach_opi $destination/usr/bin
+ # cp $SRC/packages/bsp/rk3399/sprd-bluetooth.service $destination/lib/systemd/system/
+
+ return 0
+}
+
+function post_family_tweaks__core3566_enable_services() {
+ # display_alert "$BOARD" "Enabling sprd-bluetooth.service" "info"
+ # chroot_sdcard systemctl enable sprd-bluetooth.service
+ return 0
+}
diff --git a/config/boards/cyber-aib-rk3588.csc b/config/boards/cyber-aib-rk3588.csc
index 54d4b1af9bba..32e609047eac 100644
--- a/config/boards/cyber-aib-rk3588.csc
+++ b/config/boards/cyber-aib-rk3588.csc
@@ -3,7 +3,7 @@ BOARD_NAME="Cyber Aib RK3588"
BOARDFAMILY="rockchip-rk3588"
BOARD_MAINTAINER=""
BOOTCONFIG="rk3588-cyber-aib_defconfig"
-KERNEL_TARGET="vendor"
+KERNEL_TARGET="vendor,edge"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588-cyber-aib.dtb"
diff --git a/config/boards/dg-iot20.csc b/config/boards/dg-iot20.csc
new file mode 100644
index 000000000000..e50caa3cc435
--- /dev/null
+++ b/config/boards/dg-iot20.csc
@@ -0,0 +1,12 @@
+# Rockchip RK3328 quad core 2GB RAM SoC eMMC
+BOARD_NAME="DG-IOT20"
+BOARDFAMILY="rockchip64"
+BOARD_MAINTAINER="dg741a"
+BOOTCONFIG="evb-rk3328_defconfig"
+KERNEL_TARGET="current"
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+BOOT_FDT_FILE="rockchip/rk3328-dg-iot20.dtb"
+IMAGE_PARTITION_TABLE="gpt"
+BOOT_SCENARIO="spl-blobs"
+BOOTFS_TYPE="fat"
diff --git a/config/boards/dg-iot45.csc b/config/boards/dg-iot45.csc
new file mode 100644
index 000000000000..5f95c3a61a5d
--- /dev/null
+++ b/config/boards/dg-iot45.csc
@@ -0,0 +1,31 @@
+# Rockchip RK3568 quad core SoC eMMC
+BOARD_NAME="dg-iot45"
+BOARDFAMILY="rockchip64"
+BOARD_MAINTAINER="dg741a"
+BOOTCONFIG="rk3568_defconfig"
+KERNEL_TARGET="current"
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+BOOT_FDT_FILE="rockchip/rk3568-dg-iot45.dtb"
+IMAGE_PARTITION_TABLE="gpt"
+
+# Mainline U-Boot
+function post_family_config__iot45_max_use_mainline_uboot() {
+ display_alert "$BOARD" "Using mainline U-Boot for $BOARD / $BRANCH" "info"
+
+ declare -g BOOTCONFIG="generic-rk3568_defconfig" # Use generic defconfig which should boot all RK3568 boards
+ declare -g BOOTSOURCE="https://github.com/u-boot/u-boot.git" # We ❤️ Mainline U-Boot
+ declare -g BOOTBRANCH="tag:v2024.07"
+ declare -g BOOTPATCHDIR="v2024.07/board_${BOARD}"
+ # Don't set BOOTDIR, allow shared U-Boot source directory for disk space efficiency
+
+ declare -g UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin"
+
+ # Disable stuff from rockchip64_common; we're using binman here which does all the work already
+ unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd
+
+ # Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
+ function write_uboot_platform() {
+ dd "if=$1/u-boot-rockchip.bin" "of=$2" bs=32k seek=1 conv=notrunc status=none
+ }
+}
diff --git a/config/boards/dg-pi-rb5.conf b/config/boards/dg-pi-rb5.conf
new file mode 100644
index 000000000000..14171bf5ca77
--- /dev/null
+++ b/config/boards/dg-pi-rb5.conf
@@ -0,0 +1,95 @@
+# Generate kernel and rootfs image for Qcom ABL booting
+declare -g BOARD_NAME="DG Pi RB5"
+declare -g BOARD_MAINTAINER="FantasyGmm"
+declare -g BOARDFAMILY="sm8250"
+declare -g KERNEL_TARGET="current,edge,legacy"
+declare -g KERNEL_TEST_TARGET="edge"
+declare -g EXTRAWIFI="no"
+declare -g BOOTCONFIG="none"
+declare -g BOOTIMG_CMDLINE_EXTRA="clk_ignore_unused pd_ignore_unused loglevel=8 panic=30 audit=0 allow_mismatched_32bit_el0 mem_sleep_default=s2idle console=tty0 earlycon=qcom_geni,0xa90000 console=ttyMSM0,115200n8 pcie_pme=nomsi"
+declare -g IMAGE_PARTITION_TABLE="gpt"
+declare -g -a ABL_DTB_LIST=("dg-pi-rb5")
+
+# Use the full firmware, complete linux-firmware plus Armbian's (for qcom/a650_sqe.fw)
+declare -g BOARD_FIRMWARE_INSTALL="-full"
+
+function qcom-rb5_is_userspace_supported() {
+ [[ "${RELEASE}" == "trixie" || "${RELEASE}" == "sid" || "${RELEASE}" == "mantic" || "${RELEASE}" == "noble" ]] && return 0
+ return 1
+}
+
+function post_family_tweaks_bsp__qcom-rb5_firmware() {
+ display_alert "$BOARD" "Install firmwares for qcom rb5" "info"
+
+ # Bluetooth MAC addr setup service
+ mkdir -p $destination/usr/local/bin/
+ mkdir -p $destination/usr/lib/systemd/system/
+ install -Dm655 $SRC/packages/bsp/generate-bt-mac-addr/bt-fixed-mac.sh $destination/usr/local/bin/
+ install -Dm644 $SRC/packages/bsp/generate-bt-mac-addr/bt-fixed-mac.service $destination/usr/lib/systemd/system/
+
+ # Kernel postinst script to update abl boot partition
+ install -Dm655 $SRC/packages/bsp/dg-pi-rb5/zz-update-abl-kernel $destination/etc/kernel/postinst.d/
+
+ return 0
+}
+
+function post_family_tweaks__qcom-rb5_enable_services() {
+ if ! qcom-rb5_is_userspace_supported; then
+ if [[ "${RELEASE}" != "" ]]; then
+ display_alert "Missing userspace for ${BOARD}" "${RELEASE} does not have the userspace necessary to support the ${BOARD}" "warn"
+ fi
+ fi
+
+ if [[ "${RELEASE}" == "jammy" ]]; then
+ display_alert "Adding qcom-mainline PPA" "${BOARD}" "info"
+ do_with_retries 3 chroot_sdcard add-apt-repository ppa:liujianfeng1994/qcom-mainline --yes --no-update
+ fi
+
+ if [[ "${DESKTOP_ENVIRONMENT}" == "kde-plasma" ]]; then
+ display_alert "Adding Extra KDE Package" "${BOARD}" "info"
+ do_with_retries 3 chroot_sdcard_apt_get_install plasma-workspace-wayland plasma-desktop plasma-systemmonitor plasma-nm kde-standard kde-spectacle kinfocenter kscreen krfb kfind filelight \
+ dolphin clinfo vulkan-tools wayland-utils mesa-vulkan-drivers
+ fi
+
+ if [[ "${DESKTOP_ENVIRONMENT}" == "gnome" ]]; then
+ display_alert "Adding Extra GNOME Package" "${BOARD}" "info"
+ do_with_retries 3 chroot_sdcard_apt_get_install vulkan-tools mesa-vulkan-drivers btop
+ fi
+
+ # Add video decoder/encoder udev rule
+ echo 'SUBSYSTEM=="video4linux", ATTR{name}=="qcom-venus-decoder", SYMLINK+="video-dec%n"' >> "${SDCARD}"/etc/udev/rules.d/90-browser-video.rules
+ echo 'SUBSYSTEM=="video4linux", ATTR{name}=="qcom-venus-encoder", SYMLINK+="video-enc%n"' >> "${SDCARD}"/etc/udev/rules.d/90-browser-video.rules
+
+ # We need unudhcpd from armbian repo, so enable it
+ mv "${SDCARD}"/etc/apt/sources.list.d/armbian.list.disabled "${SDCARD}"/etc/apt/sources.list.d/armbian.list
+
+ do_with_retries 3 chroot_sdcard_apt_get_update
+ display_alert "$BOARD" "Installing board tweaks" "info"
+ do_with_retries 3 chroot_sdcard_apt_get_install alsa-ucm-conf qrtr-tools protection-domain-mapper tqftpserv qbootctl unudhcpd mkbootimg
+
+ # Disable armbian repo back
+ mv "${SDCARD}"/etc/apt/sources.list.d/armbian.list "${SDCARD}"/etc/apt/sources.list.d/armbian.list.disabled
+ do_with_retries 3 chroot_sdcard_apt_get_update
+
+ # chroot_sdcard systemctl enable usbgadget-rndis.service
+ chroot_sdcard systemctl enable qbootctl.service
+
+ # No driver support for suspend
+ chroot_sdcard systemctl mask suspend.target
+ return 0
+}
+
+function post_family_tweaks_bsp__qcom-rb5_bsp_firmware_in_initrd() {
+ display_alert "Adding to bsp-cli" "${BOARD}: firmware in initrd" "info"
+ declare file_added_to_bsp_destination # Will be filled in by add_file_from_stdin_to_bsp_destination
+ # Using Elish's firmware for now
+ add_file_from_stdin_to_bsp_destination "/etc/initramfs-tools/hooks/dg-pi-rb5-firmware" <<- 'FIRMWARE_HOOK'
+ #!/bin/bash
+ [[ "$1" == "prereqs" ]] && exit 0
+ . /usr/share/initramfs-tools/hook-functions
+ add_firmware "qcom/sm8250/a650_zap.mbn" # Extra one for dpu
+ add_firmware "qcom/a650_sqe.fw" # Extra one for dpu
+ add_firmware "qcom/a650_gmu.bin" # Extra one for gpu
+ FIRMWARE_HOOK
+ run_host_command_logged chmod -v +x "${file_added_to_bsp_destination}"
+}
diff --git a/config/boards/dg-tn3568.csc b/config/boards/dg-tn3568.csc
new file mode 100644
index 000000000000..58ab3268729a
--- /dev/null
+++ b/config/boards/dg-tn3568.csc
@@ -0,0 +1,31 @@
+# Rockchip RK3568 quad core SoC eMMC
+BOARD_NAME="dg-tn3568"
+BOARDFAMILY="rockchip64"
+BOARD_MAINTAINER="dg741a"
+BOOTCONFIG="rk3568_defconfig"
+KERNEL_TARGET="current"
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+BOOT_FDT_FILE="rockchip/rk3568-dg-tn3568.dtb"
+IMAGE_PARTITION_TABLE="gpt"
+
+# Mainline U-Boot
+function post_family_config__tn3568_max_use_mainline_uboot() {
+ display_alert "$BOARD" "Using mainline U-Boot for $BOARD / $BRANCH" "info"
+
+ declare -g BOOTCONFIG="generic-rk3568_defconfig" # Use generic defconfig which should boot all RK3568 boards
+ declare -g BOOTSOURCE="https://github.com/u-boot/u-boot.git" # We ❤️ Mainline U-Boot
+ declare -g BOOTBRANCH="tag:v2024.07"
+ declare -g BOOTPATCHDIR="v2024.07/board_${BOARD}"
+ # Don't set BOOTDIR, allow shared U-Boot source directory for disk space efficiency
+
+ declare -g UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin"
+
+ # Disable stuff from rockchip64_common; we're using binman here which does all the work already
+ unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd
+
+ # Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
+ function write_uboot_platform() {
+ dd "if=$1/u-boot-rockchip.bin" "of=$2" bs=32k seek=1 conv=notrunc status=none
+ }
+}
diff --git a/config/boards/fxblox-rk1.csc b/config/boards/fxblox-rk1.csc
index 25ae7ac75d8d..8bcf6532abec 100644
--- a/config/boards/fxblox-rk1.csc
+++ b/config/boards/fxblox-rk1.csc
@@ -5,6 +5,7 @@ BOARD_MAINTAINER="mahdichi"
BOOTCONFIG="fxblox-rk1-rk3588_defconfig"
BOOT_SOC="rk3588"
KERNEL_TARGET="vendor"
+KERNEL_TEST_TARGET="vendor"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3588-fxblox-rk1.dtb"
@@ -12,48 +13,4 @@ BOOT_SCENARIO="spl-blobs"
BOOT_SUPPORT_SPI="yes"
BOOT_SPI_RKSPI_LOADER="yes"
IMAGE_PARTITION_TABLE="gpt"
-
-# @TODO: consider removing those, as the defaults in rockchip64_common have been bumped up
-DDR_BLOB='rk35/rk3588_ddr_lp4_2112MHz_lp5_2736MHz_v1.11.bin'
-BL31_BLOB='rk35/rk3588_bl31_v1.38.elf'
-
-function post_family_tweaks__fxblox-rk1_naming_audios() {
- display_alert "$BOARD" "Renaming fxblox rk1 audios" "info"
-
- mkdir -p $SDCARD/etc/udev/rules.d/
- echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
- echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp1-sound", ENV{SOUND_DESCRIPTION}="DP1 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
- return 0
-}
-
-function post_family_config_branch_legacy__fxblox-rk1_uboot_add_sata_target() {
- display_alert "$BOARD" "Configuring ($BOARD) standard and sata uboot target map" "info"
-
- UBOOT_TARGET_MAP="
- BL31=$RKBIN_DIR/$BL31_BLOB $BOOTCONFIG spl/u-boot-spl.bin u-boot.dtb u-boot.itb;;idbloader.img u-boot.itb rkspi_loader.img
- BL31=$RKBIN_DIR/$BL31_BLOB $BOOTCONFIG spl/u-boot-spl.bin u-boot.dtb u-boot.itb;; rkspi_loader_sata.img
- "
-}
-
-function post_uboot_custom_postprocess__create_sata_spi_image() {
- display_alert "$BOARD" "Create rkspi_loader_sata.img" "info"
-
- dd if=/dev/zero of=rkspi_loader_sata.img bs=1M count=0 seek=16
- /sbin/parted -s rkspi_loader_sata.img mklabel gpt
- /sbin/parted -s rkspi_loader_sata.img unit s mkpart idbloader 64 7167
- /sbin/parted -s rkspi_loader_sata.img unit s mkpart vnvm 7168 7679
- /sbin/parted -s rkspi_loader_sata.img unit s mkpart reserved_space 7680 8063
- /sbin/parted -s rkspi_loader_sata.img unit s mkpart reserved1 8064 8127
- /sbin/parted -s rkspi_loader_sata.img unit s mkpart uboot_env 8128 8191
- /sbin/parted -s rkspi_loader_sata.img unit s mkpart reserved2 8192 16383
- /sbin/parted -s rkspi_loader_sata.img unit s mkpart uboot 16384 32734
- dd if=idbloader.img of=rkspi_loader_sata.img seek=64 conv=notrunc
- dd if=u-boot.itb of=rkspi_loader_sata.img seek=16384 conv=notrunc
-}
-
-# Override family config for this board; let's avoid conditionals in family config.
-function post_family_config__fxblox-rk1_use_vendor_uboot() {
- BOOTSOURCE='https://github.com/functionland/u-boot.git'
- BOOTBRANCH='branch:next-dev'
- BOOTPATCHDIR="legacy"
-}
+declare -g UEFI_EDK2_BOARD_ID="fxblox-rk1" # This _only_ used for uefi-edk2-rk3588 extension
diff --git a/config/boards/hinlink-h28k.csc b/config/boards/hinlink-h28k.csc
index 665c44257f28..24557d42c469 100644
--- a/config/boards/hinlink-h28k.csc
+++ b/config/boards/hinlink-h28k.csc
@@ -8,7 +8,6 @@ FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3528-hinlink-h28k.dtb"
BOOT_SCENARIO="spl-blobs"
-WIREGUARD="no"
BOOT_SUPPORT_SPI="yes"
BOOT_SPI_RKSPI_LOADER="yes"
IMAGE_PARTITION_TABLE="gpt"
diff --git a/config/boards/hinlink-h66k.csc b/config/boards/hinlink-h66k.csc
index 48e0a11a4968..94ebf1b65f24 100644
--- a/config/boards/hinlink-h66k.csc
+++ b/config/boards/hinlink-h66k.csc
@@ -8,6 +8,5 @@ FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3568-hinlink-h66k.dtb"
BOOT_SCENARIO="spl-blobs"
-WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
BOOTFS_TYPE="fat"
diff --git a/config/boards/hinlink-h68k.csc b/config/boards/hinlink-h68k.csc
index eeb374c9b833..8c874cc224c8 100644
--- a/config/boards/hinlink-h68k.csc
+++ b/config/boards/hinlink-h68k.csc
@@ -8,6 +8,5 @@ FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3568-hinlink-h68k.dtb"
BOOT_SCENARIO="spl-blobs"
-WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
BOOTFS_TYPE="fat"
diff --git a/config/boards/hinlink-hnas.csc b/config/boards/hinlink-hnas.csc
index 1d32a61310f8..5daae3e398b7 100644
--- a/config/boards/hinlink-hnas.csc
+++ b/config/boards/hinlink-hnas.csc
@@ -8,6 +8,5 @@ FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3568-hinlink-hnas.dtb"
BOOT_SCENARIO="spl-blobs"
-WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
BOOTFS_TYPE="fat"
diff --git a/config/boards/hinlink-ht2.csc b/config/boards/hinlink-ht2.csc
index 4d1fada107ba..fa9cd94ee9be 100644
--- a/config/boards/hinlink-ht2.csc
+++ b/config/boards/hinlink-ht2.csc
@@ -8,6 +8,5 @@ FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3528-hinlink-ht2.dtb"
BOOT_SCENARIO="spl-blobs"
-WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
BOOTFS_TYPE="ext4"
diff --git a/config/boards/inovato-quadra.conf b/config/boards/inovato-quadra.conf
index e0d5a98609c3..54443537ed5a 100644
--- a/config/boards/inovato-quadra.conf
+++ b/config/boards/inovato-quadra.conf
@@ -4,7 +4,7 @@ BOARDFAMILY="sun50iw6"
BOARD_MAINTAINER="NicoD-SBC"
BOOTCONFIG="tanix_tx6_defconfig"
CRUSTCONFIG="tanix_tx6_defconfig"
-BOOT_FDT_FILE="allwinner/sun50i-h6-inovato-quadra.dtb"
+BOOT_FDT_FILE="sun50i-h6-inovato-quadra.dtb"
KERNEL_TARGET="legacy,current,edge"
KERNEL_TEST_TARGET="current"
BOOT_LOGO="desktop"
diff --git a/config/boards/longanpi-3h.csc b/config/boards/longanpi-3h.csc
new file mode 100644
index 000000000000..d0ab4ee7db6b
--- /dev/null
+++ b/config/boards/longanpi-3h.csc
@@ -0,0 +1,15 @@
+# Allwinner H618 quad core 1GB/2GB/4GB RAM
+BOARD_NAME="Longan Pi 3H"
+BOARDFAMILY="sun50iw9"
+BOARD_MAINTAINER=""
+BOOTCONFIG="longanpi_3h_defconfig"
+BOOTBRANCH="tag:v2024.10"
+BOOTPATCHDIR="v2024.10"
+BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
+BOOT_LOGO="desktop"
+OVERLAY_PREFIX="sun50i-h616"
+KERNEL_TARGET="current,edge"
+KERNEL_TEST_TARGET="current"
+FORCE_BOOTSCRIPT_UPDATE="yes"
+enable_extension "radxa-aic8800" # compatible with radxa-aic8800
+AIC8800_TYPE="usb"
diff --git a/config/boards/mangopi-m28k.csc b/config/boards/mangopi-m28k.csc
index 429a1e0f8c1d..8821cf03d93d 100644
--- a/config/boards/mangopi-m28k.csc
+++ b/config/boards/mangopi-m28k.csc
@@ -8,6 +8,5 @@ FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3528-mangopi-m28k.dtb"
BOOT_SCENARIO="spl-blobs"
-WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
BOOTFS_TYPE="ext4"
diff --git a/config/boards/mixtile-edge2.csc b/config/boards/mixtile-edge2.csc
index 66cdbb67dd3d..41a7e170c30d 100644
--- a/config/boards/mixtile-edge2.csc
+++ b/config/boards/mixtile-edge2.csc
@@ -40,7 +40,7 @@ function post_family_config_branch_vendor__kernel_and_uboot_rk35xx_mixtile_edge2
# Copypasta from rockchip-rk3588.conf family file -- we _really_ gotta find a better way!
declare -g KERNEL_MAJOR_MINOR="6.1" # Major and minor versions of this kernel.
declare -g KERNELSOURCE='https://github.com/armbian/linux-rockchip.git'
- declare -g KERNELBRANCH='branch:rk-6.1-rkr3'
+ declare -g KERNELBRANCH='branch:rk-6.1-rkr4.1'
declare -g KERNELPATCHDIR='rk35xx-vendor-6.1'
declare -g LINUXFAMILY=rk35xx
declare -g -i KERNEL_GIT_CACHE_TTL=120 # 2 minutes
diff --git a/config/boards/olimex-teres-a64.conf b/config/boards/olimex-teres-a64.csc
similarity index 100%
rename from config/boards/olimex-teres-a64.conf
rename to config/boards/olimex-teres-a64.csc
diff --git a/config/boards/oneplus-kebab.conf b/config/boards/oneplus-kebab.conf
index 765868ed5a02..0841693d68fc 100644
--- a/config/boards/oneplus-kebab.conf
+++ b/config/boards/oneplus-kebab.conf
@@ -54,7 +54,7 @@ function post_family_tweaks__oneplus-kebab_enable_services() {
return 0
fi
- if [[ "${RELEASE}" == "jammy" ]] || [[ "${RELEASE}" == "noble" ]];then
+ if [[ "${RELEASE}" == "jammy" ]] || [[ "${RELEASE}" == "noble" ]]; then
display_alert "Adding qcom-mainline PPA" "${BOARD}" "info"
do_with_retries 3 chroot_sdcard add-apt-repository ppa:liujianfeng1994/qcom-mainline --yes --no-update
fi
diff --git a/config/boards/orangepi3b.csc b/config/boards/orangepi3b.csc
index 0d8d5b562d00..cea568fb69f5 100644
--- a/config/boards/orangepi3b.csc
+++ b/config/boards/orangepi3b.csc
@@ -68,7 +68,7 @@ function post_family_tweaks__orangepi3b_naming_audios() {
mkdir -p $SDCARD/etc/udev/rules.d/
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi-sound", ENV{SOUND_DESCRIPTION}="HDMI Audio"' > $SDCARD/etc/udev/rules.d/90-naming-audios.rules
echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-rk809-sound", ENV{SOUND_DESCRIPTION}="RK809 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules # vendor dts
- echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-sound", ENV{SOUND_DESCRIPTION}="RK809 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules # mainline dts
+ echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-sound", ENV{SOUND_DESCRIPTION}="RK809 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules # mainline dts
return 0
}
diff --git a/config/boards/orangepi5-plus.conf b/config/boards/orangepi5-plus.conf
index 803c594126c6..141e6153d49f 100644
--- a/config/boards/orangepi5-plus.conf
+++ b/config/boards/orangepi5-plus.conf
@@ -1,7 +1,7 @@
# Rockchip RK3588 octa core 4/8/16GB RAM SoC SPI NVMe 2x USB2 2x USB3 1x USB-C 2x 2.5GbE 3x HDMI
BOARD_NAME="Orange Pi 5 Plus"
BOARDFAMILY="rockchip-rk3588"
-BOARD_MAINTAINER="alexl83 efectn"
+BOARD_MAINTAINER="alexl83"
BOOTCONFIG="orangepi-5-plus-rk3588_defconfig" # vendor name, not standard, see hook below, set BOOT_SOC below to compensate
BOOT_SOC="rk3588"
KERNEL_TARGET="edge,current,vendor"
@@ -77,9 +77,9 @@ function post_family_config_branch_current__orangepi5plus_use_mainline_uboot() {
function post_config_uboot_target__extra_configs_for_rock5b_mainline_environment_in_spi() {
[[ "${BRANCH}" != "edge" && "${BRANCH}" != "current" ]] && return 0
- display_alert "$BOARD" "u-boot configs for ${BOOTBRANCH} u-boot config BRANCH=${BRANCH}" "info"
+ display_alert "$BOARD" "u-boot configs for ${BOOTBRANCH} u-boot config BRANCH=${BRANCH}" "info"
run_host_command_logged scripts/config --set-val CONFIG_BOARD_RNG_SEED "y"
- run_host_command_logged scripts/config --set-val ARMV8_CRYPTO "n" #broken as per 2024.10-rc3
- run_host_command_logged scripts/config --set-val ARMV8_CE_SHA1 "n" #broken as per 2024.10-rc3
+ run_host_command_logged scripts/config --set-val ARMV8_CRYPTO "n" #broken as per 2024.10-rc3
+ run_host_command_logged scripts/config --set-val ARMV8_CE_SHA1 "n" #broken as per 2024.10-rc3
run_host_command_logged scripts/config --set-val ARMV8_CE_SHA256 "n" #broken as per 2024.10-rc3
}
diff --git a/config/boards/orangepizero2.wip b/config/boards/orangepizero2.csc
similarity index 100%
rename from config/boards/orangepizero2.wip
rename to config/boards/orangepizero2.csc
diff --git a/config/boards/orangepizeroplus.conf b/config/boards/orangepizeroplus.csc
similarity index 100%
rename from config/boards/orangepizeroplus.conf
rename to config/boards/orangepizeroplus.csc
diff --git a/config/boards/pineh64-b.csc b/config/boards/pineh64-b.csc
index 4da15fed6bc0..c337a0efc31c 100644
--- a/config/boards/pineh64-b.csc
+++ b/config/boards/pineh64-b.csc
@@ -5,5 +5,5 @@ BOARD_MAINTAINER=""
BOOTCONFIG="pine_h64_defconfig"
KERNEL_TARGET="legacy,current,edge"
KERNEL_TEST_TARGET="current"
-BOOT_FDT_FILE="allwinner/sun50i-h6-pine-h64-model-b.dtb"
+BOOT_FDT_FILE="sun50i-h6-pine-h64-model-b.dtb"
CRUSTCONFIG="h6_defconfig"
diff --git a/config/boards/radxa-e20c.csc b/config/boards/radxa-e20c.csc
index fd9a7c650631..6f6dd5740a20 100644
--- a/config/boards/radxa-e20c.csc
+++ b/config/boards/radxa-e20c.csc
@@ -8,5 +8,4 @@ FULL_DESKTOP="no"
BOOT_LOGO="desktop"
BOOT_FDT_FILE="rockchip/rk3528-radxa-e20c.dtb"
BOOT_SCENARIO="spl-blobs"
-WIREGUARD="no"
IMAGE_PARTITION_TABLE="gpt"
diff --git a/config/boards/retro-lite-cm5.csc b/config/boards/retro-lite-cm5.csc
index 6f2a1c66ba09..cdc1b116b313 100644
--- a/config/boards/retro-lite-cm5.csc
+++ b/config/boards/retro-lite-cm5.csc
@@ -23,4 +23,3 @@ function post_family_tweaks__retrolitecm5_naming_audios() {
return 0
}
-
diff --git a/config/boards/retroidpocket-rp5.csc b/config/boards/retroidpocket-rp5.csc
new file mode 100644
index 000000000000..4da38f80cbb6
--- /dev/null
+++ b/config/boards/retroidpocket-rp5.csc
@@ -0,0 +1,123 @@
+# Retroid Pocket RP5 Configuration
+declare -g BOARD_NAME="Retroid Pocket RP5"
+declare -g BOARD_MAINTAINER=""
+declare -g BOARDFAMILY="sm8250"
+declare -g KERNEL_TARGET="current"
+declare -g EXTRAWIFI="no"
+declare -g MODULES="panel_ddic_ch13726a"
+declare -g BOOTCONFIG="none"
+
+declare -g UEFI_GRUB_TERMINAL="gfxterm" # Use graphics in grub, for the Armbian wallpaper.
+declare -g GRUB_CMDLINE_LINUX_DEFAULT="clk_ignore_unused pd_ignore_unused arm64.nopauth efi=noruntime fbcon=rotate:3 console=ttyMSM0,115200n8"
+declare -g BOOT_FDT_FILE="qcom/sm8250-retroidpocket-rp5.dtb"
+
+declare -g SERIALCON="${SERIALCON:-tty1}"
+
+enable_extension "grub"
+enable_extension "grub-with-dtb" # important, puts the whole DTB handling in place.
+
+# declare -g BOOT_LOGO=desktop
+
+# Use the full firmware, complete linux-firmware plus Armbian's
+declare -g BOARD_FIRMWARE_INSTALL="-full"
+
+function retroidpocket-rp5_is_userspace_supported() {
+ [[ "${RELEASE}" == "bookworm" ]] && return 0
+ [[ "${RELEASE}" == "jammy" ]] && return 0
+ [[ "${RELEASE}" == "noble" ]] && return 0
+ [[ "${RELEASE}" == "trixie" ]] && return 0
+ return 1
+}
+
+function pre_customize_image__retroidpocket-rp5_alsa_ucm_conf() {
+ if ! retroidpocket-rp5_is_userspace_supported; then
+ return 0
+ fi
+
+ display_alert "Add alsa-ucm-conf for ${BOARD}" "${RELEASE}" "warn"
+ (
+ cd "${SDCARD}/usr/share/alsa" || exit 6
+ curl -L "https://github.com/RetroidPocket/alsa-ucm-conf/archive/refs/heads/rp/v1.2.13.tar.gz" | tar xvzf - --strip-components=1
+ )
+}
+
+function post_family_tweaks_bsp__retroidpocket-rp5_add_services() {
+ if ! retroidpocket-rp5_is_userspace_supported; then
+ if [[ "${RELEASE}" != "" ]]; then
+ display_alert "Missing userspace for ${BOARD}" "${RELEASE} does not have the userspace necessary to support the ${BOARD}" "warn"
+ fi
+ return 0
+ fi
+
+ display_alert "$BOARD" "Add services" "info"
+
+ # Bluetooth MAC addr setup service
+ mkdir -p $destination/usr/local/bin/
+ mkdir -p $destination/usr/lib/systemd/system/
+ install -Dm655 $SRC/packages/bsp/generate-bt-mac-addr/bt-fixed-mac.sh $destination/usr/local/bin/
+ install -Dm644 $SRC/packages/bsp/generate-bt-mac-addr/bt-fixed-mac.service $destination/usr/lib/systemd/system/
+
+ # Haptic and Gamepad rules
+ install -Dm644 $SRC/packages/bsp/retroidpocket/90-feedbackd-spmi-haptics.rules $destination/etc/udev/rules.d/90-feedbackd-spmi-haptics.rules
+ install -Dm644 $SRC/packages/bsp/retroidpocket/99-ignore-gamepad.rules $destination/etc/udev/rules.d/99-ignore-gamepad.rules
+}
+
+function post_family_tweaks__retroidpocket-rp5_enable_services() {
+ if ! retroidpocket-rp5_is_userspace_supported; then
+ if [[ "${RELEASE}" != "" ]]; then
+ display_alert "Missing userspace for ${BOARD}" "${RELEASE} does not have the userspace necessary to support the ${BOARD}" "warn"
+ fi
+ return 0
+ fi
+
+ display_alert "$BOARD" "Enable services" "info"
+
+ chroot_sdcard systemctl enable bt-fixed-mac.service
+ return 0
+}
+
+function post_family_config__retroidpocket-rp5_extra_packages() {
+ if ! retroidpocket-rp5_is_userspace_supported; then
+ if [[ "${RELEASE}" != "" ]]; then
+ display_alert "Missing userspace for ${BOARD}" "${RELEASE} does not have the userspace necessary to support the ${BOARD}" "warn"
+ fi
+ return 0
+ fi
+
+ display_alert "Setting up extra packages for ${BOARD}" "${RELEASE}" "info"
+ add_packages_to_image "bluez" "bluetooth" # for bluetooth stuff
+ add_packages_to_image "mtools" # for access to the EFI partition
+ add_packages_to_image "zstd" # for zstd compression of initrd
+}
+
+function post_family_tweaks_bsp__retroidpocket-rp5_bsp_firmware_in_initrd() {
+ display_alert "Adding to bsp-cli" "${BOARD}: firmware in initrd" "info"
+ declare file_added_to_bsp_destination # will be filled in by add_file_from_stdin_to_bsp_destination
+ add_file_from_stdin_to_bsp_destination "/etc/initramfs-tools/hooks/retroidpocket-rp5-firmware" <<- 'FIRMWARE_HOOK'
+ #!/bin/bash
+ [[ "$1" == "prereqs" ]] && exit 0
+ . /usr/share/initramfs-tools/hook-functions
+ for f in /lib/firmware/qcom/sm8250/* ; do
+ add_firmware "${f#/lib/firmware/}"
+ done
+ add_firmware "qcom/a650_sqe.fw" # extra one for dpu
+ add_firmware "qcom/a650_gmu.bin" # extra one for gpu
+ FIRMWARE_HOOK
+ run_host_command_logged chmod -v +x "${file_added_to_bsp_destination}"
+}
+
+## Modules, required to boot, add them to initrd
+function post_family_tweaks_bsp__retroidpocket-rp5_bsp_modules_in_initrd() {
+ display_alert "Adding to bsp-cli" "${BOARD}: modules in initrd" "info"
+ add_file_from_stdin_to_bsp_destination "/etc/initramfs-tools/modules" <<- 'EXTRA_MODULES'
+ panel-ddic-ch13726a
+ EXTRA_MODULES
+}
+
+# armbian-firstrun waits for systemd to be ready, but snapd.seeded might cause it to hang due to wrong clock.
+# if the battery runs out, the clock is reset to 1970. This causes snapd.seeded to hang, and armbian-firstrun to hang.
+function pre_customize_image__disable_snapd_seeded() {
+ [[ "${DISTRIBUTION}" != "Ubuntu" ]] && return 0 # only needed for Ubuntu
+ display_alert "Disabling snapd.seeded" "${BOARD}" "info"
+ chroot_sdcard systemctl disable snapd.seeded.service "||" true
+}
diff --git a/config/boards/retroidpocket-rpmini.csc b/config/boards/retroidpocket-rpmini.csc
new file mode 100644
index 000000000000..8b549b0600d5
--- /dev/null
+++ b/config/boards/retroidpocket-rpmini.csc
@@ -0,0 +1,123 @@
+# Retroid Pocket RPMini Configuration
+declare -g BOARD_NAME="Retroid Pocket RPMini"
+declare -g BOARD_MAINTAINER=""
+declare -g BOARDFAMILY="sm8250"
+declare -g KERNEL_TARGET="current"
+declare -g EXTRAWIFI="no"
+declare -g MODULES="panel_ddic_ch13726a"
+declare -g BOOTCONFIG="none"
+
+declare -g UEFI_GRUB_TERMINAL="gfxterm" # Use graphics in grub, for the Armbian wallpaper.
+declare -g GRUB_CMDLINE_LINUX_DEFAULT="clk_ignore_unused pd_ignore_unused arm64.nopauth efi=noruntime fbcon=rotate:1 console=ttyMSM0,115200n8"
+declare -g BOOT_FDT_FILE="qcom/sm8250-retroidpocket-rpmini.dtb"
+
+declare -g SERIALCON="${SERIALCON:-tty1}"
+
+enable_extension "grub"
+enable_extension "grub-with-dtb" # important, puts the whole DTB handling in place.
+
+# declare -g BOOT_LOGO=desktop
+
+# Use the full firmware, complete linux-firmware plus Armbian's
+declare -g BOARD_FIRMWARE_INSTALL="-full"
+
+function retroidpocket-rpmini_is_userspace_supported() {
+ [[ "${RELEASE}" == "bookworm" ]] && return 0
+ [[ "${RELEASE}" == "jammy" ]] && return 0
+ [[ "${RELEASE}" == "noble" ]] && return 0
+ [[ "${RELEASE}" == "trixie" ]] && return 0
+ return 1
+}
+
+function pre_customize_image__retroidpocket-rpmini_alsa_ucm_conf() {
+ if ! retroidpocket-rpmini_is_userspace_supported; then
+ return 0
+ fi
+
+ display_alert "Add alsa-ucm-conf for ${BOARD}" "${RELEASE}" "warn"
+ (
+ cd "${SDCARD}/usr/share/alsa" || exit 6
+ curl -L "https://github.com/RetroidPocket/alsa-ucm-conf/archive/refs/heads/rp/v1.2.13.tar.gz" | tar xvzf - --strip-components=1
+ )
+}
+
+function post_family_tweaks_bsp__retroidpocket-rpmini_add_services() {
+ if ! retroidpocket-rpmini_is_userspace_supported; then
+ if [[ "${RELEASE}" != "" ]]; then
+ display_alert "Missing userspace for ${BOARD}" "${RELEASE} does not have the userspace necessary to support the ${BOARD}" "warn"
+ fi
+ return 0
+ fi
+
+ display_alert "$BOARD" "Add services" "info"
+
+ # Bluetooth MAC addr setup service
+ mkdir -p $destination/usr/local/bin/
+ mkdir -p $destination/usr/lib/systemd/system/
+ install -Dm655 $SRC/packages/bsp/generate-bt-mac-addr/bt-fixed-mac.sh $destination/usr/local/bin/
+ install -Dm644 $SRC/packages/bsp/generate-bt-mac-addr/bt-fixed-mac.service $destination/usr/lib/systemd/system/
+
+ # Haptic and Gamepad rules
+ install -Dm644 $SRC/packages/bsp/retroidpocket/90-feedbackd-spmi-haptics.rules $destination/etc/udev/rules.d/90-feedbackd-spmi-haptics.rules
+ install -Dm644 $SRC/packages/bsp/retroidpocket/99-ignore-gamepad.rules $destination/etc/udev/rules.d/99-ignore-gamepad.rules
+}
+
+function post_family_tweaks__retroidpocket-rpmini_enable_services() {
+ if ! retroidpocket-rpmini_is_userspace_supported; then
+ if [[ "${RELEASE}" != "" ]]; then
+ display_alert "Missing userspace for ${BOARD}" "${RELEASE} does not have the userspace necessary to support the ${BOARD}" "warn"
+ fi
+ return 0
+ fi
+
+ display_alert "$BOARD" "Enable services" "info"
+
+ chroot_sdcard systemctl enable bt-fixed-mac.service
+ return 0
+}
+
+function post_family_config__retroidpocket-rpmini_extra_packages() {
+ if ! retroidpocket-rpmini_is_userspace_supported; then
+ if [[ "${RELEASE}" != "" ]]; then
+ display_alert "Missing userspace for ${BOARD}" "${RELEASE} does not have the userspace necessary to support the ${BOARD}" "warn"
+ fi
+ return 0
+ fi
+
+ display_alert "Setting up extra packages for ${BOARD}" "${RELEASE}" "info"
+ add_packages_to_image "bluez" "bluetooth" # for bluetooth stuff
+ add_packages_to_image "mtools" # for access to the EFI partition
+ add_packages_to_image "zstd" # for zstd compression of initrd
+}
+
+function post_family_tweaks_bsp__retroidpocket-rpmini_bsp_firmware_in_initrd() {
+ display_alert "Adding to bsp-cli" "${BOARD}: firmware in initrd" "info"
+ declare file_added_to_bsp_destination # will be filled in by add_file_from_stdin_to_bsp_destination
+ add_file_from_stdin_to_bsp_destination "/etc/initramfs-tools/hooks/retroidpocket-rpmini-firmware" <<- 'FIRMWARE_HOOK'
+ #!/bin/bash
+ [[ "$1" == "prereqs" ]] && exit 0
+ . /usr/share/initramfs-tools/hook-functions
+ for f in /lib/firmware/qcom/sm8250/* ; do
+ add_firmware "${f#/lib/firmware/}"
+ done
+ add_firmware "qcom/a650_sqe.fw" # extra one for dpu
+ add_firmware "qcom/a650_gmu.bin" # extra one for gpu
+ FIRMWARE_HOOK
+ run_host_command_logged chmod -v +x "${file_added_to_bsp_destination}"
+}
+
+## Modules, required to boot, add them to initrd
+function post_family_tweaks_bsp__retroidpocket-rpmini_bsp_modules_in_initrd() {
+ display_alert "Adding to bsp-cli" "${BOARD}: modules in initrd" "info"
+ add_file_from_stdin_to_bsp_destination "/etc/initramfs-tools/modules" <<- 'EXTRA_MODULES'
+ panel-ddic-ch13726a
+ EXTRA_MODULES
+}
+
+# armbian-firstrun waits for systemd to be ready, but snapd.seeded might cause it to hang due to wrong clock.
+# if the battery runs out, the clock is reset to 1970. This causes snapd.seeded to hang, and armbian-firstrun to hang.
+function pre_customize_image__disable_snapd_seeded() {
+ [[ "${DISTRIBUTION}" != "Ubuntu" ]] && return 0 # only needed for Ubuntu
+ display_alert "Disabling snapd.seeded" "${BOARD}" "info"
+ chroot_sdcard systemctl disable snapd.seeded.service "||" true
+}
diff --git a/config/boards/rock-3a.conf b/config/boards/rock-3a.conf
index a98072fb5f7b..7e35d4975b04 100644
--- a/config/boards/rock-3a.conf
+++ b/config/boards/rock-3a.conf
@@ -18,7 +18,7 @@ function post_family_config_branch_edge__rock-3a_use_mainline_uboot() {
display_alert "$BOARD" "Mainline U-Boot overrides for $BOARD - $BRANCH" "info"
unset BOOTFS_TYPE # fixes armbian-install and unneeded for modern uboot anyway
declare -g BOOTCONFIG="rock-3a-rk3568_defconfig"
- declare -g BOOTDELAY=1
+ declare -g BOOTDELAY=1
declare -g BOOTSOURCE="https://github.com/u-boot/u-boot"
declare -g BOOTBRANCH="tag:v2024.10"
declare -g BOOTPATCHDIR="v2024.10"
diff --git a/config/boards/rock-5-cm-rpi-cm4-io.csc b/config/boards/rock-5-cm-rpi-cm4-io.csc
new file mode 100644
index 000000000000..84d26d6a3728
--- /dev/null
+++ b/config/boards/rock-5-cm-rpi-cm4-io.csc
@@ -0,0 +1,14 @@
+# Rockchip RK3588S octa core 4/8/16GB RAM SoC NVMe USB3 USB-C GbE
+BOARD_NAME="Radxa CM5 on RPi CM4 IO"
+BOARDFAMILY="rockchip-rk3588"
+BOARD_MAINTAINER=""
+BOOTCONFIG="radxa-cm5-rpi-cm4-io-rk3588s_defconfig"
+BOOT_SOC="rk3588"
+KERNEL_TARGET="vendor"
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+BOOT_FDT_FILE="rockchip/rk3588s-radxa-cm5-rpi-cm4-io.dtb"
+BOOT_SCENARIO="spl-blobs"
+BOOT_SUPPORT_SPI="yes"
+BOOT_SPI_RKSPI_LOADER="yes"
+IMAGE_PARTITION_TABLE="gpt"
diff --git a/config/boards/rock-5b-plus.conf b/config/boards/rock-5b-plus.conf
new file mode 100644
index 000000000000..f204ee9c0e43
--- /dev/null
+++ b/config/boards/rock-5b-plus.conf
@@ -0,0 +1,66 @@
+# Rockchip RK3588 SoC octa core 4-16GB SoC 2.5GBe eMMC USB3 NvME
+BOARD_NAME="Rock 5B Plus"
+BOARDFAMILY="rockchip-rk3588"
+BOARD_MAINTAINER="HeyMeco fridtjof"
+BOOTCONFIG="rock-5b-plus-rk3588_defconfig"
+KERNEL_TARGET="edge,vendor"
+FULL_DESKTOP="yes"
+BOOT_LOGO="desktop"
+BOOT_FDT_FILE="rockchip/rk3588-radxa-rock-5b+.dtb"
+BOOT_SCENARIO="spl-blobs"
+BOOT_SUPPORT_SPI="yes"
+BOOT_SPI_RKSPI_LOADER="yes"
+IMAGE_PARTITION_TABLE="gpt"
+declare -g UEFI_EDK2_BOARD_ID="rock-5bplus" # This _only_ used for uefi-edk2-rk3588 extension
+
+function post_family_tweaks__rock5b_naming_audios() {
+ display_alert "$BOARD" "Renaming rock5b audios" "info"
+
+ mkdir -p $SDCARD/etc/udev/rules.d/
+ echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi1-sound", ENV{SOUND_DESCRIPTION}="HDMI1 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
+ echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmiin-sound", ENV{SOUND_DESCRIPTION}="HDMI-In Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
+ echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp0-sound", ENV{SOUND_DESCRIPTION}="DP0 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
+ echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-dp1-sound", ENV{SOUND_DESCRIPTION}="DP1 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
+ echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-es8316-sound", ENV{SOUND_DESCRIPTION}="ES8316 Audio"' >> $SDCARD/etc/udev/rules.d/90-naming-audios.rules
+
+ return 0
+}
+
+# Mainline u-boot tree
+# see rock-5b.conf and https://github.com/armbian/build/pull/7135
+function post_family_config_branch_edge__rock-5b_use_mainline_uboot() {
+ display_alert "$BOARD" "mainline (next branch) u-boot overrides for $BOARD / $BRANCH" "info"
+
+ # temporary override until DT in armbian/rockchip-linux is renamed
+ declare -g BOOT_FDT_FILE="rockchip/rk3588-rock-5b-plus.dtb"
+
+ declare -g BOOTCONFIG="rock5b-rk3588_defconfig" # override the default for the board/family
+ declare -g BOOTDELAY=1 # Wait for UART interrupt to enter UMS/RockUSB mode etc
+ declare -g BOOTSOURCE="https://github.com/u-boot/u-boot.git" # We ❤️ Mainline tree
+ declare -g BOOTBRANCH="tag:v2024.10" #
+ declare -g BOOTPATCHDIR="v2024.10" # empty; defconfig changes are done in hook below
+ declare -g BOOTDIR="u-boot-${BOARD}" # do not share u-boot directory
+ declare -g UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin u-boot-rockchip-spi.bin"
+ unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd # disable stuff from rockchip64_common; we're using binman here which does all the work already
+
+ # Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
+ function write_uboot_platform() {
+ dd "if=$1/u-boot-rockchip.bin" "of=$2" bs=32k seek=1 conv=notrunc status=none
+ }
+
+ function write_uboot_platform_mtd() {
+ flashcp -v -p "$1/u-boot-rockchip-spi.bin" /dev/mtd0
+ }
+}
+
+function post_config_uboot_target__extra_configs_for_rock5b_mainline_environment_in_spi() {
+ [[ "${BRANCH}" != "edge" ]] && return 0
+
+ display_alert "$BOARD" "u-boot configs for ${BOOTBRANCH} u-boot config BRANCH=${BRANCH}" "info"
+ run_host_command_logged scripts/config --set-val CONFIG_ENV_IS_NOWHERE "n"
+ run_host_command_logged scripts/config --set-val CONFIG_ENV_IS_IN_SPI_FLASH "y"
+ run_host_command_logged scripts/config --set-val CONFIG_ENV_SECT_SIZE_AUTO "y"
+ run_host_command_logged scripts/config --set-val CONFIG_ENV_OVERWRITE "y"
+ run_host_command_logged scripts/config --set-val CONFIG_ENV_SIZE "0x20000"
+ run_host_command_logged scripts/config --set-val CONFIG_ENV_OFFSET "0xc00000"
+}
diff --git a/config/boards/rock-s0.conf b/config/boards/rock-s0.conf
index 4ee215579b43..8bb1955c012f 100644
--- a/config/boards/rock-s0.conf
+++ b/config/boards/rock-s0.conf
@@ -1,13 +1,48 @@
# Rockchip RK3308 quad core 512MB SoC WiFi
# https://radxa.com/products/rocks/s0
-# This board is very similar to the older RockPi-S model
-source "${SRC}/config/boards/rockpi-s.conf"
-
BOARD_NAME="Rock S0"
+BOARDFAMILY=rockchip64
BOARD_MAINTAINER="brentr"
-BOARDFAMILY="rockchip64"
-BOOTCONFIG="rock-s0-rk3308_defconfig"
-BOOT_FDT_FILE="rockchip/rk3308-rock-s0.dtb"
-KERNEL_TARGET="current,edge"
-KERNEL_TEST_TARGET="current"
+
+BOOTCONFIG=rock-s0-rk3308_defconfig
+BOOT_FDT_FILE=rockchip/rk3308-rock-s0.dtb
+
+KERNEL_TARGET=current,edge
+KERNEL_TEST_TARGET=current
+
+DEFAULT_CONSOLE=serial
+SERIALCON=ttyS0
+MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima hantro_vpu panfrost"
+HAS_VIDEO_OUTPUT=no
+
+BOOTBRANCH_BOARD=tag:v2024.10
+BOOTPATCHDIR=v2024.10
+BOOT_SCENARIO=binman
+DDR_BLOB=rk33/rk3308_ddr_589MHz_uart0_m0_v2.07.bin
+BL31_BLOB=rk33/rk3308_bl31_v2.26.elf
+
+OVERLAY_PREFIX=rk3308
+
+function post_family_config__rocks0() {
+ declare -g BOOTDIR="u-boot-${BOARD}"
+ declare -g BOOTSCRIPT=boot-rockchip64-ttyS0.cmd:boot.cmd
+
+ family_tweaks_bsp() { #overrides rockchip64_common.inc
+ #Install udev script that derives fixed, unique MAC addresses for net interfaces
+ #that are assigned random ones
+ bsp=$SRC/packages/bsp/rockpis
+ rules=etc/udev/rules.d
+
+ install -m 755 $bsp/lib/udev/fixEtherAddr $destination/lib/udev
+ }
+}
+
+function pre_install_kernel_debs__enforce_cma() {
+ # Set CMA to 16 megabytes, to provide more usable RAM since Rock Pi S
+ # has usually a small amount of DRAM (512MB)
+ display_alert "$BOARD" "set CMA size to 16MB due to small DRAM size"
+ run_host_command_logged echo "extraargs=cma=16M" ">>" "${SDCARD}"/boot/armbianEnv.txt
+
+ return 0
+}
diff --git a/config/boards/rockpi-s.conf b/config/boards/rockpi-s.conf
index e564d018b95c..c61d8a4b83ac 100644
--- a/config/boards/rockpi-s.conf
+++ b/config/boards/rockpi-s.conf
@@ -1,66 +1,35 @@
# Rockchip RK3308 quad core 256-512MB SoC WiFi
-# https://radaxa.com/products/rockpi/pis
+# https://radxa.com/products/rockpi/pis
+
BOARD_NAME="Rockpi S"
-BOARDFAMILY="rockchip64"
+BOARDFAMILY=rockchip64
BOARD_MAINTAINER="brentr"
-BOOTCONFIG="rock-pi-s-rk3308_defconfig"
-BOOT_FDT_FILE="rockchip/rk3308-rock-pi-s.dtb"
-
-DEFAULT_CONSOLE="serial"
-SERIALCON="ttyS0"
-KERNEL_TARGET="current,edge"
-KERNEL_TEST_TARGET="current"
-MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima hantro_vpu panfrost"
-HAS_VIDEO_OUTPUT="no"
-BOOTBRANCH_BOARD="tag:v2022.04"
-BOOTPATCHDIR="u-boot-rockchip64-v2022.04"
-
-OVERLAY_PREFIX='rk3308'
-
-#comment out line below for an image that will NOT boot from the built-in SDNAND
-IDBLOADER_BLOB=$SRC/packages/blobs/rockchip/rk3308_idbloader_ddr589MHz_uart0_m0_v2.06.136sd.bin
-
-#The SDNAND capabilty IDBLOADER_BLOB requires the U-Boot and Linux serial console on UART0
-#Linux will hang on reboot if the console remains on UART2
-#Note: IDBLOADER_BLOB is derived from
-# https://dl.radxa.com/rockpis/images/loader/rk3308_loader_ddr589MHz_uart0_m0_v2.06.136sd.bin
-#by using the rkdeveloptool to "upgrade" the previous DDR_BLOB loader on the SDNAND
-#To recreate it, build the image with IDBLOADER_BLOB unset and boot Rock PI-S in MASKROM mode
-#On your host (connected to the RockPi-S's USB-C port):
-# rdeveloptool db rk3308_loader_ddr589MHz_uart0_m0_v2.06.136sd.bin
-# rdeveloptool wl 0 newly_built_image.img
-# rdeveloptool ul rk3308_loader_ddr589MHz_uart0_m0_v2.06.136sd.bin #this writes 280 sectors
+BOOTCONFIG=rock-pi-s-rk3308_defconfig
+BOOT_FDT_FILE=rockchip/rk3308-rock-pi-s.dtb
-#Then, reset the RockPi-S to boot from SDNAND. Using that running image:
-# dd if=/dev/mmcblk0 of=rk3308_idbloader_ddr589MHz_uart0_m0_v2.06.136sd.bin skip=64 count=280
+KERNEL_TARGET=current,edge
+KERNEL_TEST_TARGET=current
-function post_family_config___uboot_config() {
-
- display_alert "$BOARD" "u-boot ${BOOTBRANCH_BOARD} overrides" "info"
- unset uboot_custom_postprocess family_tweaks_bsp # disable stuff from rockchip64_common
-
- BOOTSCRIPT=boot-rockchip64-ttyS0.cmd:boot.cmd
+DEFAULT_CONSOLE=serial
+SERIALCON=ttyS0
+MODULES_BLACKLIST="rockchipdrm analogix_dp dw_mipi_dsi dw_hdmi gpu_sched lima hantro_vpu panfrost"
+HAS_VIDEO_OUTPUT=no
- uboot_custom_postprocess() {
+BOOTBRANCH_BOARD=tag:v2024.10
+BOOTPATCHDIR=v2024.10
+BOOT_SCENARIO=binman
+DDR_BLOB=rk33/rk3308_ddr_589MHz_uart0_m0_v2.07.bin
+BL31_BLOB=rk33/rk3308_bl31_v2.26.elf
- # TODO: remove this diversion from common caused by different loaderimage params
- run_host_x86_binary_logged $RKBIN_DIR/tools/loaderimage --pack --uboot ./u-boot-dtb.bin uboot.img 0x600000 --size 1024 1 &&
- if [ -r "$IDBLOADER_BLOB" ]; then
- echo "Installing $IDBLOADER_BLOB"
- echo "Capable of booting from built-in SDNAND"
- cp $IDBLOADER_BLOB idbloader.bin
- else
- [ "$IDBLOADER_BLOB" ] && echo "Missing $IDBLOADER_BLOB"
- echo "WARNING: This image will not boot from built-in SDNAND"
- tools/mkimage -n rk3308 -T rksd -d $RKBIN_DIR/$DDR_BLOB idbloader.bin &&
- cat $RKBIN_DIR/$MINILOADER_BLOB >> idbloader.bin
- fi &&
- run_host_x86_binary_logged $RKBIN_DIR/tools/trust_merger --replace bl31.elf $RKBIN_DIR/$BL31_BLOB trust.ini
- }
+OVERLAY_PREFIX=rk3308
- family_tweaks_bsp() { #Install udev script that derives fixed, unique MAC addresses for net interfaces
+function post_family_config__rockpis() {
+ declare -g BOOTDIR="u-boot-${BOARD}"
+ declare -g BOOTSCRIPT=boot-rockchip64-ttyS0.cmd:boot.cmd
+ family_tweaks_bsp() { #overrides rockchip64_common.inc
+ #Install udev script that derives fixed, unique MAC addresses for net interfaces
#that are assigned random ones -- like RockPI-S's WiFi network interfaces
bsp=$SRC/packages/bsp/rockpis
rules=etc/udev/rules.d
@@ -68,5 +37,13 @@ function post_family_config___uboot_config() {
install -m 755 $bsp/lib/udev/fixEtherAddr $destination/lib/udev &&
install -m 644 $bsp/$rules/05-fixMACaddress.rules $destination/$rules
}
+}
+
+function pre_install_kernel_debs__enforce_cma() {
+ # Set CMA to 16 megabytes, to provide more usable RAM since Rock Pi S
+ # has usually a small amount of DRAM (512MB)
+ display_alert "$BOARD" "set CMA size to 16MB due to small DRAM size"
+ run_host_command_logged echo "extraargs=cma=16M" ">>" "${SDCARD}"/boot/armbianEnv.txt
+ return 0
}
diff --git a/config/boards/thinkpad-x13s.wip b/config/boards/thinkpad-x13s.conf
similarity index 97%
rename from config/boards/thinkpad-x13s.wip
rename to config/boards/thinkpad-x13s.conf
index 4b049be0f9e3..6e089de1b4d8 100644
--- a/config/boards/thinkpad-x13s.wip
+++ b/config/boards/thinkpad-x13s.conf
@@ -28,9 +28,9 @@ enable_extension "grub-with-dtb" # important, puts the whole DTB handling in pla
# Use the full firmware, complete linux-firmware plus Armbian's
declare -g BOARD_FIRMWARE_INSTALL="-full"
-function post_family_config_branch_sc8280xp__jhovolds_69y_kernel() {
+function post_family_config_branch_sc8280xp__jhovolds_wip_kernel() {
declare -g KERNEL_MAJOR_MINOR="6.12" # Major and minor versions of this kernel.
- declare -g KERNELBRANCH='branch:wip/sc8280xp-6.12-rc2' # @TODO: this is down to 35 patches, from hundreds back in the day. Considering merging this with default arm64 uefi kernel
+ declare -g KERNELBRANCH='branch:wip/sc8280xp-6.12' # @TODO: this is down to 27 patches, from hundreds back in the day. Considering merging this with default arm64 uefi kernel
declare -g KERNELSOURCE='https://github.com/jhovold/linux.git'
declare -g LINUXCONFIG="linux-${ARCH}-${BRANCH}" # for this board: linux-arm64-sc8280xp
display_alert "Set up jhovold's kernel ${KERNELBRANCH} for" "${BOARD}" "info"
diff --git a/config/boards/turing-rk1.csc b/config/boards/turing-rk1.csc
index 499f32697d3a..8339e9acbe6d 100644
--- a/config/boards/turing-rk1.csc
+++ b/config/boards/turing-rk1.csc
@@ -1,4 +1,4 @@
-# Rockchip RK3588 octa core 8/16/32GB RAM SoM GBE NVMe eMMC USB3
+# Rockchip RK3588 octa core 8/16/32GB RAM SoM GBE NVMe eMMC USB3
BOARD_NAME="Turing RK1"
BOARDFAMILY="rockchip-rk3588"
BOARD_MAINTAINER=""
@@ -18,10 +18,10 @@ function post_family_config__turing-rk1_default_serial_console_by_branch() {
case $BRANCH in
vendor)
- declare -g SERIALCON="ttyS9"
+ declare -g SERIALCON="ttyS9"
;;
*)
- declare -g SERIALCON="ttyS0"
+ declare -g SERIALCON="ttyS0"
;;
esac
@@ -51,15 +51,15 @@ function post_family_config__turing-rk1_use_mainline_uboot() {
declare -g BOOTSOURCE="https://github.com/u-boot/u-boot.git"
declare -g BOOTBRANCH='tag:v2024.04'
declare -g BOOTPATCHDIR="v2024.04"
- declare -g BOOTDELAY=1
+ declare -g BOOTDELAY=1
# Don't set BOOTDIR, allow shared U-Boot source directory for disk space efficiency
declare -g UBOOT_TARGET_MAP="BL31=${RKBIN_DIR}/${BL31_BLOB} ROCKCHIP_TPL=${RKBIN_DIR}/${DDR_BLOB};;u-boot-rockchip.bin"
- # Disable stuff from rockchip64_common; we're using binman here which does all the work already
+ # Disable stuff from rockchip64_common; we're using binman here which does all the work already
unset uboot_custom_postprocess write_uboot_platform write_uboot_platform_mtd
- # Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
+ # Just use the binman-provided u-boot-rockchip.bin, which is ready-to-go
function write_uboot_platform() {
dd "if=$1/u-boot-rockchip.bin" "of=$2" bs=32k seek=1 conv=notrunc status=none
}
diff --git a/config/boards/xiaomi-umi.conf b/config/boards/xiaomi-umi.eos
similarity index 100%
rename from config/boards/xiaomi-umi.conf
rename to config/boards/xiaomi-umi.eos
diff --git a/config/boards/xt-q8l-v10.tvb b/config/boards/xt-q8l-v10.tvb
index 12d3c777eeeb..27709991c633 100644
--- a/config/boards/xt-q8l-v10.tvb
+++ b/config/boards/xt-q8l-v10.tvb
@@ -12,7 +12,7 @@ PACKAGE_LIST_BOARD="bluez"
function post_family_config__uboot_config() {
# Overwrite UBOOT_TARGET_MAP to use the proprietary rockchip
# ddrbin in place of u-boot TPL. The reason is that the board
- # uses DDR2 memories and u-boot TPL is not capable of
+ # uses DDR2 memories and u-boot TPL is not capable of
# initializing DDR2.
UBOOT_TARGET_MAP="ROCKCHIP_TPL=$SRC/cache/sources/rkbin-tools/rk32/rk3288_ddr_400MHz_v1.08.bin;;u-boot-rockchip-with-spl.bin"
}
diff --git a/config/boards/yjh-jm10-3588.csc b/config/boards/yjh-jm10-3588.csc
new file mode 100644
index 000000000000..55a53a2912bb
--- /dev/null
+++ b/config/boards/yjh-jm10-3588.csc
@@ -0,0 +1,60 @@
+# Yijiahe JM10-3588 Rockchip RK3588 Octa core 4GB-32GB eMMC GBE HDMI PCIe SATA USB3 WiFi 4G 5G
+BOARD_NAME="Yijiahe JM10-3588"
+BOARDFAMILY="rockchip-rk3588"
+BOOT_SOC="rk3588"
+BOARD_MAINTAINER="r-mt"
+KERNEL_TARGET="legacy,vendor"
+BOOTCONFIG="rk3588_defconfig"
+BOOT_FDT_FILE="rockchip/rk3588-yjh-jm10.dtb"
+BOOT_LOGO="desktop"
+FULL_DESKTOP="yes"
+IMAGE_PARTITION_TABLE="gpt"
+ENABLE_EXTENSIONS="mesa-vpu"
+
+function post_family_config__nas-lite_kernel() {
+ display_alert "$BOARD" "mainline BOOTPATCHDIR" "info"
+ if [[ ${BRANCH} = "legacy" ]] ; then
+ KERNELPATCHDIR="rockchip-5.10-yjh-jm10"
+ else
+ KERNELPATCHDIR="rockchip-6.1-yjh-jm10"
+ fi
+}
+
+function post_family_tweaks_bsp__JM10-3588() {
+ display_alert "$BOARD" "Installing rk3588-bluetooth.service" "info"
+
+ # Bluetooth on this board is handled by a Broadcom (AP6275PR3) chip and requires
+ # a custom brcm_patchram_plus binary, plus a systemd service to run it at boot time
+ install -m 755 $SRC/packages/bsp/rk3399/brcm_patchram_plus_rk3399 $destination/usr/bin
+ cp $SRC/packages/bsp/rk3399/rk3399-bluetooth.service $destination/lib/systemd/system/rk3588-bluetooth.service
+
+ # Reuse the service file, ttyS0 -> ttyS6; BCM4345C5.hcd -> BCM4362A2.hcd
+ sed -i 's/ttyS0/ttyS1/g' $destination/lib/systemd/system/rk3588-bluetooth.service
+ sed -i 's/BCM4345C5.hcd/BCM4362A2.hcd/g' $destination/lib/systemd/system/rk3588-bluetooth.service
+ return 0
+}
+
+function post_family_tweaks__JM10-3588_naming_audios() {
+ display_alert "$BOARD" "Renaming firefly-JM10-3588 audios" "info"
+ mkdir -p $SDCARD/etc/udev/rules.d/
+ echo 'SUBSYSTEM=="sound", ENV{ID_PATH}=="platform-hdmi0-sound", ENV{SOUND_DESCRIPTION}="HDMI0 Audio"' > $SDCARD/etc/udev/rules.d/90-naming-audios.rules
+ return 0
+}
+
+function post_family_tweaks__JM10-3588_enable_services() {
+ display_alert "fix armbian upgrade; hold kernel and dtb"
+ if [[ ${BRANCH} = "legacy" ]] ; then
+ display_alert "$BOARD" "Enabling JM10-3588 upgrade lock dtb adn kernel" "info"
+ chroot_sdcard apt-mark hold linux-dtb-legacy-rk35xx
+ chroot_sdcard apt-mark hold linux-u-boot-yjh-jm10-3588-legacy
+ else
+ display_alert "$BOARD" "Enabling JM10-3588 upgrade lock dtb adn kernel" "info"
+ chroot_sdcard apt-mark hold linux-dtb-vendor-rk35xx
+ chroot_sdcard apt-mark hold linux-u-boot-yjh-jm10-3588-vendor
+ fi
+
+ display_alert "$BOARD" "Enabling rk3588-bluetooth.service" "info"
+ chroot_sdcard_apt_get_install rfkill
+ chroot_sdcard systemctl enable rk3588-bluetooth.service
+ return 0
+}
diff --git a/config/boards/youyeetoo-r1-v3.csc b/config/boards/youyeetoo-r1-v3.csc
index 3b4cdfe754ef..47a522b9cafc 100644
--- a/config/boards/youyeetoo-r1-v3.csc
+++ b/config/boards/youyeetoo-r1-v3.csc
@@ -4,8 +4,7 @@ BOARDFAMILY="rockchip-rk3588"
BOARD_MAINTAINER="SuperKali"
BOOTCONFIG="generic-rk3588_defconfig" # vendor name, not standard, see hook below, set BOOT_SOC below to compensate
BOOT_SOC="rk3588"
-KERNEL_TARGET="edge,current,vendor"
-KERNEL_TEST_TARGET="vendor,current"
+KERNEL_TARGET="current,vendor"
FULL_DESKTOP="yes"
BOOT_LOGO="desktop"
IMAGE_PARTITION_TABLE="gpt"
diff --git a/config/bootenv/rk356x.txt b/config/bootenv/rk356x.txt
index 472418799e60..ecd0763f24b7 100644
--- a/config/bootenv/rk356x.txt
+++ b/config/bootenv/rk356x.txt
@@ -1,4 +1,4 @@
-verbosity=1
+verbosity=7
bootlogo=false
console=both
extraargs=cma=256M
diff --git a/config/bootenv/rockchip64.txt b/config/bootenv/rockchip64.txt
index ecdce79724be..150277d16ffe 100644
--- a/config/bootenv/rockchip64.txt
+++ b/config/bootenv/rockchip64.txt
@@ -1,3 +1,3 @@
-verbosity=1
+verbosity=7
bootlogo=false
console=both
diff --git a/config/bootscripts/boot-sun50i-next.cmd b/config/bootscripts/boot-sun50i-next.cmd
index f3fc703a9e59..0bd8b1b425c2 100644
--- a/config/bootscripts/boot-sun50i-next.cmd
+++ b/config/bootscripts/boot-sun50i-next.cmd
@@ -13,6 +13,17 @@ setenv console "both"
setenv docker_optimizations "on"
setenv bootlogo "false"
+setenv vendor "allwinner"
+
+# Remember the default fdtfile provided by u-boot and delete the vendor name
+if setexpr subfdt sub ${vendor}/ "" ${fdtfile};then
+ setenv deffdt_file ${subfdt}
+fi
+
+# Remember the default u-boot fdtdir
+setenv deffdt_dir "${prefix}dtb"
+if test "$fdtdir" = ""; then setenv fdtdir "${deffdt_dir}/${vendor}";fi
+
# Print boot source
itest.b *0x10028 == 0x00 && echo "U-boot loaded from SD"
itest.b *0x10028 == 0x02 && echo "U-boot loaded from eMMC or secondary SD"
@@ -25,6 +36,37 @@ if test -e ${devtype} ${devnum} ${prefix}armbianEnv.txt; then
env import -t ${load_addr} ${filesize}
fi
+# Delete the vendor's name from the fdtfile variable and record the result
+# after the file with the environment variables has been read
+if setexpr subfdt sub ${vendor}/ "" ${fdtfile};then
+ setenv fdtfile ${subfdt}
+fi
+
+# In this shell, we can only check the existence of the file.
+# Make a check of reasonable ways to find the dtb file.
+# Set the true value of the paths.
+if test -e ${devtype} ${devnum} "${fdtdir}/${fdtfile}"; then
+ echo "Load fdt: ${fdtdir}/${fdtfile}"
+else
+ echo "The file ${fdtfile} was not found in the path ${fdtdir}"
+ if test -e ${devtype} ${devnum} "${deffdt_dir}/${fdtfile}"; then
+ setenv fdtdir "${deffdt_dir}"
+ echo "Load fdt: ${fdtdir}/${fdtfile}"
+ else
+ if test -e ${devtype} ${devnum} "${deffdt_dir}/${vendor}/${deffdt_file}"; then
+ setenv fdtdir "${deffdt_dir}/${vendor}"
+ setenv fdtfile "${deffdt_file}"
+ echo "Load fdt: ${fdtdir}/${fdtfile}"
+ else
+ if test -e ${devtype} ${devnum} "${deffdt_dir}/${deffdt_file}"; then
+ setenv fdtdir "${deffdt_dir}"
+ setenv fdtfile "${deffdt_file}"
+ echo "Load fdt: ${fdtdir}/${fdtfile}"
+ fi
+ fi
+ fi
+fi
+
if test "${console}" = "display" || test "${console}" = "both"; then setenv consoleargs "console=ttyS0,115200 console=tty1"; fi
if test "${console}" = "serial"; then setenv consoleargs "console=ttyS0,115200"; fi
if test "${bootlogo}" = "true"; then
@@ -41,11 +83,11 @@ setenv bootargs "root=${rootdev} rootwait rootfstype=${rootfstype} ${consoleargs
if test "${docker_optimizations}" = "on"; then setenv bootargs "${bootargs} cgroup_enable=memory"; fi
-load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
+load ${devtype} ${devnum} ${fdt_addr_r} ${fdtdir}/${fdtfile}
fdt addr ${fdt_addr_r}
fdt resize 65536
for overlay_file in ${overlays}; do
- if load ${devtype} ${devnum} ${load_addr} ${prefix}dtb/allwinner/overlay/${overlay_prefix}-${overlay_file}.dtbo; then
+ if load ${devtype} ${devnum} ${load_addr} ${fdtdir}/overlay/${overlay_prefix}-${overlay_file}.dtbo; then
echo "Applying kernel provided DT overlay ${overlay_prefix}-${overlay_file}.dtbo"
fdt apply ${load_addr} || setenv overlay_error "true"
fi
@@ -58,9 +100,9 @@ for overlay_file in ${user_overlays}; do
done
if test "${overlay_error}" = "true"; then
echo "Error applying DT overlays, restoring original DT"
- load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
+ load ${devtype} ${devnum} ${fdt_addr_r} ${fdtdir}/${fdtfile}
else
- if load ${devtype} ${devnum} ${load_addr} ${prefix}dtb/allwinner/overlay/${overlay_prefix}-fixup.scr; then
+ if load ${devtype} ${devnum} ${load_addr} ${fdtdir}/overlay/${overlay_prefix}-fixup.scr; then
echo "Applying kernel provided DT fixup script (${overlay_prefix}-fixup.scr)"
source ${load_addr}
fi
diff --git a/config/bootscripts/boot-sunxi.cmd b/config/bootscripts/boot-sunxi.cmd
index 7c05f7a293c8..86f5f7052979 100644
--- a/config/bootscripts/boot-sunxi.cmd
+++ b/config/bootscripts/boot-sunxi.cmd
@@ -17,6 +17,15 @@ setenv devnum "0"
setenv rootdev "/dev/mmcblk${devnum}p1"
setenv earlycon "off"
+# Remember the default u-boot fdtfile
+setenv deffdt_file ${fdtfile}
+
+# Remember the default u-boot fdtdir
+setenv deffdt_dir "${prefix}dtb"
+if test "$fdtdir" = ""; then setenv fdtdir "${deffdt_dir}";fi
+
+setenv vendor "allwinner"
+
# Print boot source
itest.b *0x28 == 0x00 && echo "U-boot loaded from SD"
itest.b *0x28 == 0x01 && echo "U-boot loaded from NAND"
@@ -31,13 +40,42 @@ if test "${devtype}" = "mmc"; then
setenv rootdev "/dev/mmcblk${mmc_bootdev}p1"
fi
-echo "Boot script loaded from ${devtype}"
-
if test -e ${devtype} ${devnum} ${prefix}armbianEnv.txt; then
load ${devtype} ${devnum} ${load_addr} ${prefix}armbianEnv.txt
env import -t ${load_addr} ${filesize}
fi
+# Delete the vendor's name from the fdtfile variable and record the result
+# after the file with the environment variables has been read
+if setexpr subfdt sub ${vendor}/ "" ${fdtfile};then
+ setenv fdtfile ${subfdt}
+fi
+
+# In this shell, we can only check the existence of the file.
+# Make a check of reasonable ways to find the dtb file.
+# Set the true value of the paths.
+if test -e ${devtype} ${devnum} "${fdtdir}/${fdtfile}"; then
+ echo "Load fdt: ${fdtdir}/${fdtfile}"
+else
+ echo "The file ${fdtfile} was not found in the path ${fdtdir}"
+ if test -e ${devtype} ${devnum} "${deffdt_dir}/${vendor}/${fdtfile}"; then
+ setenv fdtdir "${deffdt_dir}/${vendor}"
+ echo "Load fdt: ${fdtdir}/${fdtfile}"
+ else
+ if test -e ${devtype} ${devnum} "${deffdt_dir}/${vendor}/${deffdt_file}"; then
+ setenv fdtdir "${deffdt_dir}/${vendor}"
+ setenv fdtfile "${deffdt_file}"
+ echo "Load fdt: ${fdtdir}/${fdtfile}"
+ else
+ if test -e ${devtype} ${devnum} "${deffdt_dir}/${deffdt_file}"; then
+ setenv fdtdir "${deffdt_dir}"
+ setenv fdtfile "${deffdt_file}"
+ echo "Load fdt: ${fdtdir}/${fdtfile}"
+ fi
+ fi
+ fi
+fi
+
if test "${console}" = "display"; then setenv consoleargs "console=tty1"; fi
if test "${console}" = "serial"; then setenv consoleargs "console=ttyS0,115200"; fi
if test "${console}" = "both"; then setenv consoleargs "console=ttyS0,115200 console=tty1"; fi
@@ -50,7 +88,10 @@ fi
setenv bootargs "root=${rootdev} rootwait rootfstype=${rootfstype} ${consoleargs} hdmi.audio=EDID:0 disp.screen0_output_mode=${disp_mode} consoleblank=0 loglevel=${verbosity} ubootpart=${partuuid} ubootsource=${devtype} usb-storage.quirks=${usbstoragequirks} ${extraargs} ${extraboardargs}"
-if test "${disp_mem_reserves}" = "off"; then setenv bootargs "${bootargs} sunxi_ve_mem_reserve=0 sunxi_g2d_mem_reserve=0 sunxi_fb_mem_reserve=16"; fi
+if test "${disp_mem_reserves}" = "off"; then
+ setenv bootargs "${bootargs} sunxi_ve_mem_reserve=0 sunxi_g2d_mem_reserve=0 sunxi_fb_mem_reserve=16"
+fi
+
if test "${docker_optimizations}" = "on"; then setenv bootargs "${bootargs} cgroup_enable=memory"; fi
load ${devtype} ${devnum} ${ramdisk_addr_r} ${prefix}uInitrd
@@ -58,11 +99,11 @@ load ${devtype} ${devnum} ${kernel_addr_r} ${prefix}zImage
if test -e ${devtype} ${devnum} "${prefix}.next"; then
echo "Found mainline kernel configuration"
- load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
+ load ${devtype} ${devnum} ${fdt_addr_r} ${fdtdir}/${fdtfile}
fdt addr ${fdt_addr_r}
fdt resize 65536
for overlay_file in ${overlays}; do
- if load ${devtype} ${devnum} ${load_addr} ${prefix}dtb/overlay/${overlay_prefix}-${overlay_file}.dtbo; then
+ if load ${devtype} ${devnum} ${load_addr} ${fdtdir}/overlay/${overlay_prefix}-${overlay_file}.dtbo; then
echo "Applying kernel provided DT overlay ${overlay_prefix}-${overlay_file}.dtbo"
fdt apply ${load_addr} || setenv overlay_error "true"
fi
@@ -75,9 +116,10 @@ if test -e ${devtype} ${devnum} "${prefix}.next"; then
done
if test "${overlay_error}" = "true"; then
echo "Error applying DT overlays, restoring original DT"
- load ${devtype} ${devnum} ${fdt_addr_r} ${prefix}dtb/${fdtfile}
+ load ${devtype} ${devnum} ${fdt_addr_r} ${fdtdir}/${fdtfile}
else
- if load ${devtype} ${devnum} ${load_addr} ${prefix}dtb/overlay/${overlay_prefix}-fixup.scr; then
+ if test -e ${devtype} ${devnum} ${fdtdir}/overlay/${overlay_prefix}-fixup.scr; then
+ load ${devtype} ${devnum} ${load_addr} ${fdtdir}/overlay/${overlay_prefix}-fixup.scr
echo "Applying kernel provided DT fixup script (${overlay_prefix}-fixup.scr)"
source ${load_addr}
fi
diff --git a/config/kernel/linux-rk35xx-vendor.config b/config/kernel/linux-rk35xx-vendor.config
index c9691c4d56e5..a7ff1b0423a7 100644
--- a/config/kernel/linux-rk35xx-vendor.config
+++ b/config/kernel/linux-rk35xx-vendor.config
@@ -2,17 +2,15 @@
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 6.1.75 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
+CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=110400
+CONFIG_GCC_VERSION=130200
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23800
+CONFIG_AS_VERSION=24200
CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23800
+CONFIG_LD_VERSION=24200
CONFIG_LLD_VERSION=0
-CONFIG_CC_CAN_LINK=y
-CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
CONFIG_CC_HAS_ASM_INLINE=y
@@ -409,6 +407,7 @@ CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_HW_PERF_EVENTS=y
+CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
# CONFIG_PARAVIRT is not set
# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
# CONFIG_KEXEC is not set
@@ -662,6 +661,8 @@ CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
+# CONFIG_SHADOW_CALL_STACK is not set
CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
CONFIG_LTO_NONE=y
@@ -884,8 +885,23 @@ CONFIG_COREDUMP=y
#
# Memory Management options
#
+CONFIG_ZPOOL=y
CONFIG_SWAP=y
-# CONFIG_ZSWAP is not set
+CONFIG_ZSWAP=y
+CONFIG_ZSWAP_DEFAULT_ON=y
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set
+# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
+CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
+CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=y
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set
+# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set
+CONFIG_ZSWAP_ZPOOL_DEFAULT="zbud"
+CONFIG_ZBUD=y
+# CONFIG_Z3FOLD is not set
CONFIG_ZSMALLOC=m
# CONFIG_ZSMALLOC_STAT is not set
@@ -932,6 +948,7 @@ CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
# CONFIG_MEMORY_FAILURE is not set
CONFIG_ARCH_WANTS_THP_SWAP=y
# CONFIG_TRANSPARENT_HUGEPAGE is not set
+CONFIG_FRONTSWAP=y
CONFIG_CMA=y
# CONFIG_CMA_INACTIVE is not set
# CONFIG_CMA_DEBUG is not set
@@ -1446,7 +1463,6 @@ CONFIG_BRIDGE_EBT_SNAT=m
CONFIG_BRIDGE_EBT_LOG=m
CONFIG_BRIDGE_EBT_NFLOG=m
CONFIG_BPFILTER=y
-CONFIG_BPFILTER_UMH=m
CONFIG_IP_DCCP=m
CONFIG_INET_DCCP_DIAG=m
@@ -3385,6 +3401,7 @@ CONFIG_TOUCHSCREEN_FTS=y
# CONFIG_TOUCHSCREEN_FT5726 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GOODIX=m
+CONFIG_TOUCHSCREEN_GOODIX_GTX8=y
CONFIG_TOUCHSCREEN_GSL3673=y
CONFIG_TOUCHSCREEN_GSL3673_800X1280=m
CONFIG_TOUCHSCREEN_GSLX680_PAD=m
@@ -5794,7 +5811,7 @@ CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m
CONFIG_DRM_PANEL_RADXA_DISPLAY_8HD=m
CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
-# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
+CONFIG_DRM_PANEL_RAYDIUM_RM67191=m
# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
CONFIG_DRM_PANEL_RONBO_RB070D30=m
CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20=m
@@ -8907,7 +8924,12 @@ CONFIG_LSM="lockdown,yama,loadpin,safesetid,integrity,apparmor,bpf"
#
# Memory initialization
#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
@@ -9069,7 +9091,7 @@ CONFIG_CRYPTO_LZO=y
# CONFIG_CRYPTO_842 is not set
# CONFIG_CRYPTO_LZ4 is not set
# CONFIG_CRYPTO_LZ4HC is not set
-CONFIG_CRYPTO_ZSTD=m
+CONFIG_CRYPTO_ZSTD=y
# end of Compression
#
@@ -9604,6 +9626,7 @@ CONFIG_STRICT_DEVMEM=y
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
CONFIG_RUNTIME_TESTING_MENU=y
CONFIG_LKDTM=y
# CONFIG_TEST_MIN_HEAP is not set
diff --git a/config/kernel/linux-rockchip-edge.config b/config/kernel/linux-rockchip-edge.config
index a55f3b189ef0..28c124f67d6b 100644
--- a/config/kernel/linux-rockchip-edge.config
+++ b/config/kernel/linux-rockchip-edge.config
@@ -1,22 +1,24 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm 6.11.0 Kernel Configuration
+# Linux/arm 6.12.1 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="arm-linux-gnueabihf-gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0"
+CONFIG_CC_VERSION_TEXT="arm-linux-gnueabihf-gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=110300
+CONFIG_GCC_VERSION=130200
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23800
+CONFIG_AS_VERSION=24200
CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23800
+CONFIG_LD_VERSION=24200
CONFIG_LLD_VERSION=0
+CONFIG_RUSTC_VERSION=0
+CONFIG_RUSTC_LLVM_VERSION=0
CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_GCC_ASM_GOTO_OUTPUT_BROKEN=y
CONFIG_CC_HAS_ASM_INLINE=y
CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
-CONFIG_PAHOLE_VERSION=122
+CONFIG_PAHOLE_VERSION=125
CONFIG_IRQ_WORK=y
CONFIG_BUILDTIME_TABLE_SORT=y
CONFIG_THREAD_INFO_IN_TASK=y
@@ -169,6 +171,7 @@ CONFIG_MEMCG=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_WRITEBACK=y
CONFIG_CGROUP_SCHED=y
+CONFIG_GROUP_SCHED_WEIGHT=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=y
@@ -177,6 +180,7 @@ CONFIG_CGROUP_PIDS=y
CONFIG_CGROUP_RDMA=y
CONFIG_CGROUP_FREEZER=y
CONFIG_CPUSETS=y
+# CONFIG_CPUSETS_V1 is not set
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CGROUP_CPUACCT=y
@@ -482,6 +486,8 @@ CONFIG_ALIGNMENT_TRAP=y
# CONFIG_PARAVIRT is not set
# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
# CONFIG_XEN is not set
+CONFIG_CC_HAVE_STACKPROTECTOR_TLS=y
+CONFIG_STACKPROTECTOR_PER_TASK=y
# end of Kernel Features
#
@@ -497,6 +503,7 @@ CONFIG_ZBOOT_ROM_BSS=0x0
CONFIG_CMDLINE=""
CONFIG_ARCH_SUPPORTS_KEXEC=y
CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
+CONFIG_ARCH_DEFAULT_CRASH_DUMP=y
CONFIG_AUTO_ZRELADDR=y
# CONFIG_EFI is not set
# end of Boot options
@@ -597,6 +604,7 @@ CONFIG_ARCH_HIBERNATION_POSSIBLE=y
CONFIG_AS_VFP_VMRS_FPINST=y
CONFIG_CPU_MITIGATIONS=y
+CONFIG_ARCH_HAS_DMA_OPS=y
#
# General architecture-dependent options
@@ -702,10 +710,7 @@ CONFIG_MODULE_FORCE_UNLOAD=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_MODULE_SIG is not set
-CONFIG_MODULE_COMPRESS_NONE=y
-# CONFIG_MODULE_COMPRESS_GZIP is not set
-# CONFIG_MODULE_COMPRESS_XZ is not set
-# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_COMPRESS is not set
# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
CONFIG_MODPROBE_PATH="/sbin/modprobe"
# CONFIG_TRIM_UNUSED_KSYMS is not set
@@ -815,12 +820,12 @@ CONFIG_ZSWAP_SHRINKER_DEFAULT_ON=y
CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set
-CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD=y
+CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD_DEPRECATED=y
# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set
CONFIG_ZSWAP_ZPOOL_DEFAULT="z3fold"
CONFIG_ZBUD=y
+CONFIG_Z3FOLD_DEPRECATED=y
CONFIG_Z3FOLD=y
-CONFIG_HAVE_ZSMALLOC=y
CONFIG_ZSMALLOC=y
# CONFIG_ZSMALLOC_STAT is not set
CONFIG_ZSMALLOC_CHAIN_SIZE=8
@@ -848,7 +853,7 @@ CONFIG_FLATMEM=y
CONFIG_ARCH_KEEP_MEMBLOCK=y
CONFIG_MEMORY_ISOLATION=y
CONFIG_EXCLUSIVE_SYSTEM_RAM=y
-CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_SPLIT_PTE_PTLOCKS=y
CONFIG_COMPACTION=y
CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1
# CONFIG_PAGE_REPORTING is not set
@@ -898,6 +903,7 @@ CONFIG_NET_EGRESS=y
CONFIG_NET_XGRESS=y
CONFIG_NET_REDIRECT=y
CONFIG_SKB_EXTENSIONS=y
+CONFIG_NET_DEVMEM=y
#
# Networking options
@@ -1672,6 +1678,7 @@ CONFIG_BT_HCIUART_RTL=y
# CONFIG_BT_HCIUART_QCA is not set
# CONFIG_BT_HCIUART_AG6XX is not set
# CONFIG_BT_HCIUART_MRVL is not set
+# CONFIG_BT_HCIUART_AML is not set
# CONFIG_BT_HCIBCM203X is not set
# CONFIG_BT_HCIBPA10X is not set
CONFIG_BT_HCIBFUSB=y
@@ -1715,7 +1722,6 @@ CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
CONFIG_MAC80211_MESH=y
CONFIG_MAC80211_LEDS=y
CONFIG_MAC80211_DEBUGFS=y
-# CONFIG_MAC80211_MESSAGE_TRACING is not set
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
CONFIG_RFKILL=y
@@ -1783,6 +1789,7 @@ CONFIG_DEV_COREDUMP=y
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
+CONFIG_GENERIC_CPU_DEVICES=y
CONFIG_GENERIC_CPU_AUTOPROBE=y
CONFIG_GENERIC_CPU_VULNERABILITIES=y
CONFIG_SOC_BUS=y
@@ -1824,12 +1831,26 @@ CONFIG_PROC_EVENTS=y
#
CONFIG_ARM_SCMI_PROTOCOL=m
# CONFIG_ARM_SCMI_RAW_MODE_SUPPORT is not set
+# CONFIG_ARM_SCMI_DEBUG_COUNTERS is not set
+
+#
+# SCMI Transport Drivers
+#
CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
CONFIG_ARM_SCMI_HAVE_SHMEM=y
-# CONFIG_ARM_SCMI_TRANSPORT_OPTEE is not set
-CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+CONFIG_ARM_SCMI_TRANSPORT_SMC=m
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_OPTEE is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
+# end of SCMI Transport Drivers
+
+#
+# ARM SCMI NXP i.MX Vendor Protocols
+#
+# CONFIG_IMX_SCMI_BBM_EXT is not set
+# CONFIG_IMX_SCMI_MISC_EXT is not set
+# end of ARM SCMI NXP i.MX Vendor Protocols
+
# CONFIG_ARM_SCMI_POWER_CONTROL is not set
# end of ARM System Control and Management Interface Protocol
@@ -1880,13 +1901,17 @@ CONFIG_BLK_DEV=y
# CONFIG_BLK_DEV_NULL_BLK is not set
CONFIG_CDROM=y
CONFIG_ZRAM=m
-CONFIG_ZRAM_DEF_COMP_LZORLE=y
-# CONFIG_ZRAM_DEF_COMP_ZSTD is not set
-# CONFIG_ZRAM_DEF_COMP_LZ4 is not set
+# CONFIG_ZRAM_BACKEND_LZ4 is not set
+# CONFIG_ZRAM_BACKEND_LZ4HC is not set
+CONFIG_ZRAM_BACKEND_ZSTD=y
+CONFIG_ZRAM_BACKEND_DEFLATE=y
+# CONFIG_ZRAM_BACKEND_842 is not set
+CONFIG_ZRAM_BACKEND_LZO=y
+# CONFIG_ZRAM_DEF_COMP_LZORLE is not set
# CONFIG_ZRAM_DEF_COMP_LZO is not set
-# CONFIG_ZRAM_DEF_COMP_LZ4HC is not set
-# CONFIG_ZRAM_DEF_COMP_842 is not set
-CONFIG_ZRAM_DEF_COMP="lzo-rle"
+CONFIG_ZRAM_DEF_COMP_ZSTD=y
+# CONFIG_ZRAM_DEF_COMP_DEFLATE is not set
+CONFIG_ZRAM_DEF_COMP="zstd"
CONFIG_ZRAM_WRITEBACK=y
CONFIG_ZRAM_TRACK_ENTRY_ACTIME=y
# CONFIG_ZRAM_MEMORY_TRACKING is not set
@@ -1925,6 +1950,7 @@ CONFIG_NVME_TCP=m
#
# CONFIG_AD525X_DPOT is not set
# CONFIG_DUMMY_IRQ is not set
+CONFIG_RPMB=y
# CONFIG_ICS932S401 is not set
# CONFIG_ENCLOSURE_SERVICES is not set
# CONFIG_APDS9802ALS is not set
@@ -2180,6 +2206,7 @@ CONFIG_NET_VENDOR_NI=y
# CONFIG_NET_VENDOR_NATSEMI is not set
# CONFIG_NET_VENDOR_NETRONOME is not set
# CONFIG_ETHOC is not set
+# CONFIG_OA_TC6 is not set
CONFIG_NET_VENDOR_PENSANDO=y
# CONFIG_NET_VENDOR_QUALCOMM is not set
# CONFIG_NET_VENDOR_RENESAS is not set
@@ -2289,13 +2316,16 @@ CONFIG_CAN_TI_HECC=m
CONFIG_CAN_C_CAN=m
CONFIG_CAN_C_CAN_PLATFORM=m
CONFIG_CAN_CC770=m
+# CONFIG_CAN_CC770_ISA is not set
CONFIG_CAN_CC770_PLATFORM=m
# CONFIG_CAN_CTUCANFD_PLATFORM is not set
CONFIG_CAN_IFI_CANFD=m
CONFIG_CAN_M_CAN=m
CONFIG_CAN_M_CAN_PLATFORM=m
CONFIG_CAN_M_CAN_TCAN4X5X=m
+# CONFIG_CAN_ROCKCHIP_CANFD is not set
CONFIG_CAN_SJA1000=m
+# CONFIG_CAN_SJA1000_ISA is not set
CONFIG_CAN_SJA1000_PLATFORM=m
CONFIG_CAN_SOFTING=m
@@ -2468,7 +2498,6 @@ CONFIG_BRCMFMAC=m
CONFIG_BRCMFMAC_PROTO_BCDC=y
CONFIG_BRCMFMAC_SDIO=y
# CONFIG_BRCMFMAC_USB is not set
-# CONFIG_BRCM_TRACING is not set
# CONFIG_BRCMDBG is not set
CONFIG_WLAN_VENDOR_INTEL=y
CONFIG_WLAN_VENDOR_INTERSIL=y
@@ -2640,7 +2669,6 @@ CONFIG_KEYBOARD_MATRIX=m
# CONFIG_KEYBOARD_LM8323 is not set
# CONFIG_KEYBOARD_LM8333 is not set
# CONFIG_KEYBOARD_MAX7359 is not set
-# CONFIG_KEYBOARD_MCS is not set
# CONFIG_KEYBOARD_MPR121 is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_OPENCORES is not set
@@ -2723,7 +2751,6 @@ CONFIG_TOUCHSCREEN_BU21029=m
# CONFIG_TOUCHSCREEN_CY8CTMA140 is not set
# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
-# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
# CONFIG_TOUCHSCREEN_CYTTSP5 is not set
# CONFIG_TOUCHSCREEN_DYNAPRO is not set
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
@@ -2748,7 +2775,6 @@ CONFIG_TOUCHSCREEN_ELAN=y
# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
# CONFIG_TOUCHSCREEN_MAX11801 is not set
-# CONFIG_TOUCHSCREEN_MCS5000 is not set
# CONFIG_TOUCHSCREEN_MMS114 is not set
# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
# CONFIG_TOUCHSCREEN_MSG2638 is not set
@@ -2954,6 +2980,7 @@ CONFIG_HW_RANDOM_OPTEE=m
# CONFIG_HW_RANDOM_CCTRNG is not set
# CONFIG_HW_RANDOM_XIPHERA is not set
CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=y
+CONFIG_HW_RANDOM_ROCKCHIP=y
CONFIG_DEVMEM=y
CONFIG_DEVPORT=y
CONFIG_TCG_TPM=y
@@ -2980,7 +3007,6 @@ CONFIG_TCG_TIS_I2C_INFINEON=y
#
CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
-CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MUX=y
@@ -3010,6 +3036,8 @@ CONFIG_I2C_ALGOBIT=m
# I2C system bus drivers (mostly embedded / system-on-chip)
#
# CONFIG_I2C_CBUS_GPIO is not set
+CONFIG_I2C_DESIGNWARE_CORE=y
+CONFIG_I2C_DESIGNWARE_SLAVE=y
# CONFIG_I2C_DESIGNWARE_PLATFORM is not set
# CONFIG_I2C_EMEV2 is not set
# CONFIG_I2C_GPIO is not set
@@ -3506,6 +3534,7 @@ CONFIG_THERMAL=y
# CONFIG_THERMAL_NETLINK is not set
# CONFIG_THERMAL_STATISTICS is not set
# CONFIG_THERMAL_DEBUGFS is not set
+# CONFIG_THERMAL_CORE_TESTING is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
CONFIG_THERMAL_OF=y
@@ -3565,6 +3594,7 @@ CONFIG_BCMA_POSSIBLE=y
# Multifunction device drivers
#
CONFIG_MFD_CORE=y
+# CONFIG_MFD_ADP5585 is not set
# CONFIG_MFD_ACT8945A is not set
# CONFIG_MFD_AS3711 is not set
# CONFIG_MFD_SMPRO is not set
@@ -4077,7 +4107,6 @@ CONFIG_VIDEO_MUX=m
#
# Chips&Media media platform drivers
#
-# CONFIG_VIDEO_E5010_JPEG_ENC is not set
#
# Intel media platform drivers
@@ -4114,7 +4143,6 @@ CONFIG_VIDEO_MUX=m
#
# Raspberry Pi media platform drivers
#
-# CONFIG_VIDEO_RASPBERRYPI_PISP_BE is not set
#
# Renesas media platform drivers
@@ -4148,6 +4176,7 @@ CONFIG_DVB_C8SECTPFE=m
# Verisilicon media platform drivers
#
CONFIG_VIDEO_HANTRO=m
+# CONFIG_VIDEO_HANTRO_HEVC_RFC is not set
CONFIG_VIDEO_HANTRO_ROCKCHIP=y
#
@@ -4632,6 +4661,7 @@ CONFIG_VIDEO=y
CONFIG_DRM=y
# CONFIG_DRM_DEBUG_MM is not set
CONFIG_DRM_KMS_HELPER=y
+# CONFIG_DRM_PANIC is not set
# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set
# CONFIG_DRM_DEBUG_MODESET_LOCK is not set
CONFIG_DRM_FBDEV_EMULATION=y
@@ -4711,6 +4741,7 @@ CONFIG_DRM_PANEL=y
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
# CONFIG_DRM_PANEL_EDP is not set
@@ -4899,10 +4930,10 @@ CONFIG_SND_MAX_CARDS=32
CONFIG_SND_SUPPORT_OLD_API=y
CONFIG_SND_PROC_FS=y
CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
CONFIG_SND_CTL_FAST_LOOKUP=y
# CONFIG_SND_DEBUG is not set
# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+# CONFIG_SND_UTIMER is not set
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
@@ -5183,6 +5214,7 @@ CONFIG_SND_SOC_WM8904=m
# CONFIG_SND_SOC_ZL38060 is not set
CONFIG_SND_SOC_MAX9759=m
CONFIG_SND_SOC_MT6351=m
+# CONFIG_SND_SOC_MT6357 is not set
CONFIG_SND_SOC_MT6358=m
# CONFIG_SND_SOC_MT6660 is not set
# CONFIG_SND_SOC_NAU8315 is not set
@@ -5250,6 +5282,7 @@ CONFIG_HID_GFRM=m
# CONFIG_HID_GLORIOUS is not set
CONFIG_HID_HOLTEK=m
CONFIG_HOLTEK_FF=y
+# CONFIG_HID_GOODIX_SPI is not set
# CONFIG_HID_GOOGLE_STADIA_FF is not set
# CONFIG_HID_VIVALDI is not set
CONFIG_HID_GT683R=m
@@ -5862,6 +5895,7 @@ CONFIG_RTC_DRV_EM3027=m
CONFIG_RTC_DRV_RV3028=m
# CONFIG_RTC_DRV_RV3032 is not set
CONFIG_RTC_DRV_RV8803=m
+# CONFIG_RTC_DRV_SD2405AL is not set
CONFIG_RTC_DRV_SD3078=m
#
@@ -5948,6 +5982,7 @@ CONFIG_PL330_DMA=y
# CONFIG_XILINX_DMA is not set
# CONFIG_XILINX_XDMA is not set
# CONFIG_XILINX_ZYNQMP_DPDMA is not set
+# CONFIG_AMD_QDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
# CONFIG_QCOM_HIDMA is not set
CONFIG_DW_DMAC_CORE=m
@@ -6080,7 +6115,6 @@ CONFIG_FB_TFT_UC1611=m
CONFIG_FB_TFT_UC1701=m
CONFIG_FB_TFT_UPD161704=m
# CONFIG_MOST_COMPONENTS is not set
-# CONFIG_KS7010 is not set
# CONFIG_XIL_AXIS_FIFO is not set
CONFIG_FIELDBUS_DEV=m
CONFIG_HMS_ANYBUSS_BUS=m
@@ -6299,6 +6333,7 @@ CONFIG_EXTCON=y
# CONFIG_EXTCON_ADC_JACK is not set
# CONFIG_EXTCON_FSA9480 is not set
# CONFIG_EXTCON_GPIO is not set
+# CONFIG_EXTCON_LC824206XA is not set
# CONFIG_EXTCON_MAX3355 is not set
# CONFIG_EXTCON_PTN5150 is not set
# CONFIG_EXTCON_RT8973A is not set
@@ -6338,6 +6373,8 @@ CONFIG_ADXL345_SPI=m
# CONFIG_ADXL367_I2C is not set
# CONFIG_ADXL372_SPI is not set
# CONFIG_ADXL372_I2C is not set
+# CONFIG_ADXL380_SPI is not set
+# CONFIG_ADXL380_I2C is not set
# CONFIG_BMA180 is not set
# CONFIG_BMA220 is not set
# CONFIG_BMA400 is not set
@@ -6375,7 +6412,9 @@ CONFIG_HID_SENSOR_ACCEL_3D=m
#
# Analog to digital converters
#
+# CONFIG_AD4000 is not set
# CONFIG_AD4130 is not set
+# CONFIG_AD4695 is not set
# CONFIG_AD7091R5 is not set
# CONFIG_AD7091R8 is not set
# CONFIG_AD7124 is not set
@@ -6427,6 +6466,7 @@ CONFIG_AD7768_1=m
# CONFIG_MCP3564 is not set
# CONFIG_MCP3911 is not set
# CONFIG_NAU7802 is not set
+# CONFIG_PAC1921 is not set
# CONFIG_PAC1934 is not set
CONFIG_ROCKCHIP_SARADC=y
# CONFIG_RICHTEK_RTQ6056 is not set
@@ -6558,6 +6598,7 @@ CONFIG_AD5758=m
# CONFIG_DS4424 is not set
# CONFIG_LTC1660 is not set
# CONFIG_LTC2632 is not set
+# CONFIG_LTC2664 is not set
# CONFIG_M62332 is not set
# CONFIG_MAX517 is not set
# CONFIG_MAX5522 is not set
@@ -6644,6 +6685,7 @@ CONFIG_MAX30102=m
#
# CONFIG_AM2315 is not set
# CONFIG_DHT11 is not set
+# CONFIG_ENS210 is not set
# CONFIG_HDC100X is not set
# CONFIG_HDC2010 is not set
# CONFIG_HDC3020 is not set
@@ -6692,6 +6734,7 @@ CONFIG_IIO_ADIS_LIB_BUFFER=y
# CONFIG_APDS9306 is not set
# CONFIG_APDS9960 is not set
# CONFIG_AS73211 is not set
+# CONFIG_BH1745 is not set
# CONFIG_BH1750 is not set
# CONFIG_BH1780 is not set
# CONFIG_CM32181 is not set
@@ -6831,6 +6874,7 @@ CONFIG_HID_SENSOR_PRESS=m
# CONFIG_MPRLS0025PA is not set
# CONFIG_MS5611 is not set
# CONFIG_MS5637 is not set
+# CONFIG_SDP500 is not set
# CONFIG_IIO_ST_PRESS is not set
# CONFIG_T5403 is not set
# CONFIG_HP206C is not set
@@ -6846,6 +6890,7 @@ CONFIG_HID_SENSOR_PRESS=m
#
# Proximity and distance sensors
#
+# CONFIG_HX9023S is not set
# CONFIG_IRSD200 is not set
CONFIG_ISL29501=m
# CONFIG_LIDAR_LITE_V2 is not set
@@ -6860,6 +6905,7 @@ CONFIG_MB1232=m
# CONFIG_SRF08 is not set
# CONFIG_VCNL3020 is not set
# CONFIG_VL53L0X_I2C is not set
+# CONFIG_AW96103 is not set
# end of Proximity and distance sensors
#
@@ -6997,6 +7043,7 @@ CONFIG_NVMEM_LAYOUTS=y
#
# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set
# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set
+# CONFIG_NVMEM_LAYOUT_U_BOOT_ENV is not set
# end of Layout Types
# CONFIG_NVMEM_RMEM is not set
@@ -7116,6 +7163,7 @@ CONFIG_BCACHEFS_POSIX_ACL=y
# CONFIG_BCACHEFS_LOCK_TIME_STATS is not set
# CONFIG_BCACHEFS_NO_LATENCY_ACCT is not set
CONFIG_BCACHEFS_SIX_OPTIMISTIC_SPIN=y
+# CONFIG_BCACHEFS_PATH_TRACEPOINTS is not set
CONFIG_FS_POSIX_ACL=y
CONFIG_EXPORTFS=y
CONFIG_EXPORTFS_BLOCK_OPS=y
@@ -7254,6 +7302,7 @@ CONFIG_EROFS_FS=m
CONFIG_EROFS_FS_XATTR=y
CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_EROFS_FS_SECURITY=y
+CONFIG_EROFS_FS_BACKED_BY_FILE=y
# CONFIG_EROFS_FS_ZIP is not set
# CONFIG_EROFS_FS_ONDEMAND is not set
CONFIG_NETWORK_FILESYSTEMS=y
@@ -7292,6 +7341,7 @@ CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_NFS_COMMON=y
+# CONFIG_NFS_LOCALIO is not set
CONFIG_NFS_V4_2_SSC_HELPER=y
CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
@@ -7316,6 +7366,7 @@ CONFIG_CIFS_POSIX=y
# CONFIG_CIFS_DFS_UPCALL is not set
# CONFIG_CIFS_SWN_UPCALL is not set
CONFIG_CIFS_FSCACHE=y
+CONFIG_CIFS_COMPRESSION=y
CONFIG_SMB_SERVER=m
CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
CONFIG_SMB_SERVER_KERBEROS5=y
@@ -7389,6 +7440,9 @@ CONFIG_KEYS=y
# CONFIG_ENCRYPTED_KEYS is not set
# CONFIG_KEY_DH_OPERATIONS is not set
# CONFIG_SECURITY_DMESG_RESTRICT is not set
+CONFIG_PROC_MEM_ALWAYS_FORCE=y
+# CONFIG_PROC_MEM_FORCE_PTRACE is not set
+# CONFIG_PROC_MEM_NO_FORCE is not set
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
@@ -7412,6 +7466,7 @@ CONFIG_SECURITY_YAMA=y
# CONFIG_SECURITY_SAFESETID is not set
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
# CONFIG_SECURITY_LANDLOCK is not set
+# CONFIG_SECURITY_IPE is not set
CONFIG_INTEGRITY=y
# CONFIG_INTEGRITY_SIGNATURE is not set
CONFIG_INTEGRITY_AUDIT=y
@@ -7428,7 +7483,12 @@ CONFIG_LSM="yama,loadpin,safesetid,integrity"
#
# Memory initialization
#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
@@ -7763,7 +7823,9 @@ CONFIG_XZ_DEC_X86=y
CONFIG_XZ_DEC_POWERPC=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_ARM64=y
CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_RISCV=y
# CONFIG_XZ_DEC_MICROLZMA is not set
CONFIG_XZ_DEC_BCJ=y
# CONFIG_XZ_DEC_TEST is not set
@@ -7791,7 +7853,7 @@ CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
-CONFIG_DMA_OPS=y
+CONFIG_DMA_OPS_HELPERS=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_DMA_DECLARE_COHERENT=y
diff --git a/config/kernel/linux-rockchip-rk3588-current.config b/config/kernel/linux-rockchip-rk3588-current.config
new file mode 120000
index 000000000000..6b7bb90ce8d3
--- /dev/null
+++ b/config/kernel/linux-rockchip-rk3588-current.config
@@ -0,0 +1 @@
+linux-rockchip-rk3588-edge.config
\ No newline at end of file
diff --git a/config/kernel/linux-rockchip-rk3588-6.11.config b/config/kernel/linux-rockchip-rk3588-edge.config
similarity index 98%
rename from config/kernel/linux-rockchip-rk3588-6.11.config
rename to config/kernel/linux-rockchip-rk3588-edge.config
index 12f66dbeb400..c9b5b23d5fe7 100644
--- a/config/kernel/linux-rockchip-rk3588-6.11.config
+++ b/config/kernel/linux-rockchip-rk3588-edge.config
@@ -1,16 +1,17 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 6.11.0 Kernel Configuration
+# Linux/arm64 6.12.0-rc3 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
+CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=110400
+CONFIG_GCC_VERSION=130200
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23800
+CONFIG_AS_VERSION=24200
CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23800
+CONFIG_LD_VERSION=24200
CONFIG_LLD_VERSION=0
+CONFIG_RUSTC_VERSION=0
CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_GCC_ASM_GOTO_OUTPUT_BROKEN=y
@@ -108,6 +109,7 @@ CONFIG_PREEMPT_BUILD=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
+# CONFIG_PREEMPT_RT is not set
CONFIG_PREEMPT_COUNT=y
CONFIG_PREEMPTION=y
# CONFIG_PREEMPT_DYNAMIC is not set
@@ -181,6 +183,7 @@ CONFIG_MEMCG=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_WRITEBACK=y
CONFIG_CGROUP_SCHED=y
+CONFIG_GROUP_SCHED_WEIGHT=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=y
@@ -190,6 +193,7 @@ CONFIG_CGROUP_RDMA=y
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CPUSETS=y
+# CONFIG_CPUSETS_V1 is not set
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CGROUP_CPUACCT=y
@@ -286,6 +290,7 @@ CONFIG_KEXEC_FILE=y
# end of General setup
CONFIG_ARM64=y
+CONFIG_RUSTC_SUPPORTS_ARM64=y
CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_64BIT=y
CONFIG_MMU=y
@@ -441,6 +446,7 @@ CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_HW_PERF_EVENTS=y
+CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
CONFIG_PARAVIRT=y
CONFIG_PARAVIRT_TIME_ACCOUNTING=y
CONFIG_ARCH_SUPPORTS_KEXEC=y
@@ -524,6 +530,13 @@ CONFIG_ARM64_MTE=y
CONFIG_ARM64_EPAN=y
# end of ARMv8.7 architectural features
+#
+# ARMv8.9 architectural features
+#
+CONFIG_ARM64_POE=y
+CONFIG_ARCH_PKEY_BITS=3
+# end of ARMv8.9 architectural features
+
CONFIG_ARM64_SVE=y
CONFIG_ARM64_SME=y
CONFIG_ARM64_PSEUDO_NMI=y
@@ -709,7 +722,9 @@ CONFIG_KVM_GENERIC_MMU_NOTIFIER=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
# CONFIG_NVHE_EL2_DEBUG is not set
+# CONFIG_PTDUMP_STAGE2_DEBUGFS is not set
CONFIG_CPU_MITIGATIONS=y
+CONFIG_ARCH_HAS_DMA_OPS=y
#
# General architecture-dependent options
@@ -771,6 +786,8 @@ CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
+# CONFIG_SHADOW_CALL_STACK is not set
CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
CONFIG_LTO_NONE=y
@@ -805,6 +822,7 @@ CONFIG_CLONE_BACKWARDS=y
CONFIG_OLD_SIGSUSPEND3=y
CONFIG_COMPAT_OLD_SIGACTION=y
CONFIG_COMPAT_32BIT_TIME=y
+CONFIG_ARCH_SUPPORTS_RT=y
CONFIG_HAVE_ARCH_VMAP_STACK=y
CONFIG_VMAP_STACK=y
CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
@@ -819,6 +837,7 @@ CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
CONFIG_ARCH_USE_MEMREMAP_PROT=y
# CONFIG_LOCK_EVENT_COUNTS is not set
CONFIG_ARCH_HAS_RELR=y
+CONFIG_ARCH_HAS_MEM_ENCRYPT=y
CONFIG_HAVE_PREEMPT_DYNAMIC=y
CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y
CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
@@ -851,10 +870,7 @@ CONFIG_MODVERSIONS=y
CONFIG_ASM_MODVERSIONS=y
CONFIG_MODULE_SRCVERSION_ALL=y
# CONFIG_MODULE_SIG is not set
-CONFIG_MODULE_COMPRESS_NONE=y
-# CONFIG_MODULE_COMPRESS_GZIP is not set
-# CONFIG_MODULE_COMPRESS_XZ is not set
-# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_COMPRESS is not set
# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
CONFIG_MODPROBE_PATH="/sbin/modprobe"
# CONFIG_TRIM_UNUSED_KSYMS is not set
@@ -970,12 +986,12 @@ CONFIG_ZSWAP_DEFAULT_ON=y
CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD=y
CONFIG_ZSWAP_COMPRESSOR_DEFAULT="zstd"
# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD is not set
-CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD=y
+CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD_DEPRECATED=y
# CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set
CONFIG_ZSWAP_ZPOOL_DEFAULT="z3fold"
CONFIG_ZBUD=y
+CONFIG_Z3FOLD_DEPRECATED=y
CONFIG_Z3FOLD=y
-CONFIG_HAVE_ZSMALLOC=y
CONFIG_ZSMALLOC=y
# CONFIG_ZSMALLOC_STAT is not set
CONFIG_ZSMALLOC_CHAIN_SIZE=8
@@ -1002,14 +1018,16 @@ CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_VMEMMAP=y
CONFIG_HAVE_GUP_FAST=y
CONFIG_ARCH_KEEP_MEMBLOCK=y
+CONFIG_NUMA_KEEP_MEMINFO=y
CONFIG_MEMORY_ISOLATION=y
CONFIG_EXCLUSIVE_SYSTEM_RAM=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
# CONFIG_MEMORY_HOTPLUG is not set
CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
-CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_SPLIT_PTE_PTLOCKS=y
CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
+CONFIG_SPLIT_PMD_PTLOCKS=y
CONFIG_MEMORY_BALLOON=y
CONFIG_BALLOON_COMPACTION=y
CONFIG_COMPACTION=y
@@ -1035,6 +1053,8 @@ CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y
CONFIG_THP_SWAP=y
# CONFIG_READ_ONLY_THP_FOR_FS is not set
CONFIG_PGTABLE_HAS_HUGE_LEAVES=y
+CONFIG_ARCH_SUPPORTS_HUGE_PFNMAP=y
+CONFIG_ARCH_SUPPORTS_PMD_PFNMAP=y
CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y
@@ -1055,7 +1075,9 @@ CONFIG_ZONE_DMA=y
CONFIG_ZONE_DMA32=y
CONFIG_GET_FREE_REGION=y
CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
-CONFIG_ARCH_USES_PG_ARCH_X=y
+CONFIG_ARCH_HAS_PKEYS=y
+CONFIG_ARCH_USES_PG_ARCH_2=y
+CONFIG_ARCH_USES_PG_ARCH_3=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_PERCPU_STATS=y
# CONFIG_GUP_TEST is not set
@@ -1075,6 +1097,8 @@ CONFIG_PER_VMA_LOCK=y
CONFIG_LOCK_MM_AND_FIND_VMA=y
CONFIG_IOMMU_MM_DATA=y
CONFIG_EXECMEM=y
+CONFIG_NUMA_MEMBLKS=y
+# CONFIG_NUMA_EMU is not set
#
# Data Access Monitoring
@@ -1091,6 +1115,7 @@ CONFIG_NET_XGRESS=y
CONFIG_NET_REDIRECT=y
CONFIG_SKB_DECRYPTED=y
CONFIG_SKB_EXTENSIONS=y
+CONFIG_NET_DEVMEM=y
#
# Networking options
@@ -1905,6 +1930,7 @@ CONFIG_BT_HCIUART_RTL=y
CONFIG_BT_HCIUART_QCA=y
CONFIG_BT_HCIUART_AG6XX=y
CONFIG_BT_HCIUART_MRVL=y
+# CONFIG_BT_HCIUART_AML is not set
CONFIG_BT_HCIBCM203X=m
# CONFIG_BT_HCIBCM4377 is not set
CONFIG_BT_HCIBPA10X=m
@@ -1974,6 +2000,7 @@ CONFIG_NET_9P=m
CONFIG_NET_9P_FD=m
CONFIG_NET_9P_VIRTIO=m
CONFIG_NET_9P_XEN=m
+# CONFIG_NET_9P_USBG is not set
# CONFIG_NET_9P_DEBUG is not set
CONFIG_CAIF=m
# CONFIG_CAIF_DEBUG is not set
@@ -2077,6 +2104,7 @@ CONFIG_PCI_ATS=y
CONFIG_PCI_DOE=y
CONFIG_PCI_ECAM=y
CONFIG_PCI_IOV=y
+# CONFIG_PCI_NPEM is not set
CONFIG_PCI_PRI=y
CONFIG_PCI_PASID=y
CONFIG_PCI_LABEL=y
@@ -2267,16 +2295,30 @@ CONFIG_CONNECTOR=m
#
CONFIG_ARM_SCMI_PROTOCOL=y
# CONFIG_ARM_SCMI_RAW_MODE_SUPPORT is not set
+# CONFIG_ARM_SCMI_DEBUG_COUNTERS is not set
+
+#
+# SCMI Transport Drivers
+#
CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
CONFIG_ARM_SCMI_HAVE_SHMEM=y
CONFIG_ARM_SCMI_HAVE_MSG=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
-CONFIG_ARM_SCMI_TRANSPORT_OPTEE=y
CONFIG_ARM_SCMI_TRANSPORT_SMC=y
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+CONFIG_ARM_SCMI_TRANSPORT_OPTEE=y
CONFIG_ARM_SCMI_TRANSPORT_VIRTIO=y
CONFIG_ARM_SCMI_TRANSPORT_VIRTIO_VERSION1_COMPLIANCE=y
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO_ATOMIC_ENABLE is not set
+# end of SCMI Transport Drivers
+
+#
+# ARM SCMI NXP i.MX Vendor Protocols
+#
+# CONFIG_IMX_SCMI_BBM_EXT is not set
+# CONFIG_IMX_SCMI_MISC_EXT is not set
+# end of ARM SCMI NXP i.MX Vendor Protocols
+
CONFIG_ARM_SCMI_POWER_CONTROL=m
# end of ARM System Control and Management Interface Protocol
@@ -2516,6 +2558,7 @@ CONFIG_OF_IRQ=y
CONFIG_OF_RESERVED_MEM=y
CONFIG_OF_RESOLVE=y
CONFIG_OF_OVERLAY=y
+# CONFIG_OF_OVERLAY_KUNIT_TEST is not set
CONFIG_OF_NUMA=y
# CONFIG_PARPORT is not set
CONFIG_PNP=y
@@ -2530,12 +2573,15 @@ CONFIG_BLK_DEV_NULL_BLK=m
CONFIG_CDROM=y
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
CONFIG_ZRAM=m
+# CONFIG_ZRAM_BACKEND_LZ4 is not set
+# CONFIG_ZRAM_BACKEND_LZ4HC is not set
+# CONFIG_ZRAM_BACKEND_ZSTD is not set
+# CONFIG_ZRAM_BACKEND_DEFLATE is not set
+# CONFIG_ZRAM_BACKEND_842 is not set
+CONFIG_ZRAM_BACKEND_FORCE_LZO=y
+CONFIG_ZRAM_BACKEND_LZO=y
CONFIG_ZRAM_DEF_COMP_LZORLE=y
-# CONFIG_ZRAM_DEF_COMP_ZSTD is not set
-# CONFIG_ZRAM_DEF_COMP_LZ4 is not set
# CONFIG_ZRAM_DEF_COMP_LZO is not set
-# CONFIG_ZRAM_DEF_COMP_LZ4HC is not set
-# CONFIG_ZRAM_DEF_COMP_842 is not set
CONFIG_ZRAM_DEF_COMP="lzo-rle"
CONFIG_ZRAM_WRITEBACK=y
# CONFIG_ZRAM_TRACK_ENTRY_ACTIME is not set
@@ -2561,7 +2607,7 @@ CONFIG_BLKDEV_UBLK_LEGACY_OPCODES=y
#
# NVME Support
#
-CONFIG_NVME_KEYRING=m
+CONFIG_NVME_KEYRING=y
CONFIG_NVME_AUTH=y
CONFIG_NVME_CORE=y
CONFIG_BLK_DEV_NVME=y
@@ -2592,6 +2638,7 @@ CONFIG_AD525X_DPOT_I2C=m
CONFIG_AD525X_DPOT_SPI=m
# CONFIG_DUMMY_IRQ is not set
CONFIG_PHANTOM=m
+# CONFIG_RPMB is not set
CONFIG_TIFM_CORE=m
CONFIG_TIFM_7XX1=m
# CONFIG_ICS932S401 is not set
@@ -3243,6 +3290,7 @@ CONFIG_MLX5_CORE_EN_DCB=y
# CONFIG_MLX5_EN_IPSEC is not set
# CONFIG_MLX5_EN_TLS is not set
CONFIG_MLX5_SW_STEERING=y
+CONFIG_MLX5_HW_STEERING=y
# CONFIG_MLX5_SF is not set
# CONFIG_MLX5_DPLL is not set
# CONFIG_MLXSW_CORE is not set
@@ -3259,6 +3307,7 @@ CONFIG_ENC28J60=m
CONFIG_ENC28J60_WRITEVERIFY=y
# CONFIG_ENCX24J600 is not set
# CONFIG_LAN743X is not set
+# CONFIG_LAN865X is not set
# CONFIG_LAN966X_SWITCH is not set
# CONFIG_VCAP is not set
CONFIG_NET_VENDOR_MICROSEMI=y
@@ -3283,6 +3332,7 @@ CONFIG_NET_VENDOR_NVIDIA=y
CONFIG_FORCEDETH=m
CONFIG_NET_VENDOR_OKI=y
CONFIG_ETHOC=m
+# CONFIG_OA_TC6 is not set
CONFIG_NET_VENDOR_PACKET_ENGINES=y
CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
@@ -3312,6 +3362,7 @@ CONFIG_8139TOO_8129=y
CONFIG_8139_OLD_RX_RESET=y
CONFIG_R8169=m
CONFIG_R8169_LEDS=y
+# CONFIG_RTASE is not set
CONFIG_NET_VENDOR_RENESAS=y
CONFIG_NET_VENDOR_ROCKER=y
CONFIG_ROCKER=m
@@ -3473,6 +3524,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_M_CAN_PLATFORM=m
CONFIG_CAN_M_CAN_TCAN4X5X=m
CONFIG_CAN_PEAK_PCIEFD=m
+# CONFIG_CAN_ROCKCHIP_CANFD is not set
CONFIG_CAN_SJA1000=m
CONFIG_CAN_EMS_PCI=m
CONFIG_CAN_F81601=m
@@ -3893,10 +3945,12 @@ CONFIG_RTW89_8851B=m
CONFIG_RTW89_8852A=m
CONFIG_RTW89_8852B_COMMON=m
CONFIG_RTW89_8852B=m
+CONFIG_RTW89_8852BT=m
CONFIG_RTW89_8852C=m
CONFIG_RTW89_8851BE=m
CONFIG_RTW89_8852AE=m
CONFIG_RTW89_8852BE=m
+CONFIG_RTW89_8852BTE=m
CONFIG_RTW89_8852CE=m
# CONFIG_RTW89_8922AE is not set
# CONFIG_RTW89_DEBUGMSG is not set
@@ -4027,7 +4081,6 @@ CONFIG_KEYBOARD_GPIO_POLLED=m
# CONFIG_KEYBOARD_LM8323 is not set
# CONFIG_KEYBOARD_LM8333 is not set
# CONFIG_KEYBOARD_MAX7359 is not set
-# CONFIG_KEYBOARD_MCS is not set
# CONFIG_KEYBOARD_MPR121 is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_OPENCORES is not set
@@ -4127,9 +4180,6 @@ CONFIG_TOUCHSCREEN_CY8CTMG110=m
CONFIG_TOUCHSCREEN_CYTTSP_CORE=m
CONFIG_TOUCHSCREEN_CYTTSP_I2C=m
CONFIG_TOUCHSCREEN_CYTTSP_SPI=m
-CONFIG_TOUCHSCREEN_CYTTSP4_CORE=m
-CONFIG_TOUCHSCREEN_CYTTSP4_I2C=m
-CONFIG_TOUCHSCREEN_CYTTSP4_SPI=m
# CONFIG_TOUCHSCREEN_CYTTSP5 is not set
CONFIG_TOUCHSCREEN_DYNAPRO=m
CONFIG_TOUCHSCREEN_HAMPSHIRE=m
@@ -4154,7 +4204,6 @@ CONFIG_TOUCHSCREEN_ELO=m
CONFIG_TOUCHSCREEN_WACOM_W8001=m
CONFIG_TOUCHSCREEN_WACOM_I2C=m
CONFIG_TOUCHSCREEN_MAX11801=m
-CONFIG_TOUCHSCREEN_MCS5000=m
CONFIG_TOUCHSCREEN_MMS114=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_MSG2638=m
@@ -4439,7 +4488,6 @@ CONFIG_XILLYUSB=m
CONFIG_I2C=y
CONFIG_ACPI_I2C_OPREGION=y
CONFIG_I2C_BOARDINFO=y
-CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MUX=y
@@ -4456,6 +4504,7 @@ CONFIG_I2C_MUX_PINCTRL=m
CONFIG_I2C_MUX_REG=m
CONFIG_I2C_DEMUX_PINCTRL=m
CONFIG_I2C_MUX_MLXCPLD=m
+# CONFIG_I2C_MUX_MULE is not set
# end of Multiplexer I2C Chip support
CONFIG_I2C_HELPER_AUTO=y
@@ -5130,6 +5179,7 @@ CONFIG_THERMAL=y
# CONFIG_THERMAL_NETLINK is not set
CONFIG_THERMAL_STATISTICS=y
# CONFIG_THERMAL_DEBUGFS is not set
+# CONFIG_THERMAL_CORE_TESTING is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
CONFIG_THERMAL_OF=y
@@ -5224,6 +5274,7 @@ CONFIG_BCMA_DEBUG=y
# Multifunction device drivers
#
CONFIG_MFD_CORE=y
+# CONFIG_MFD_ADP5585 is not set
# CONFIG_MFD_ACT8945A is not set
# CONFIG_MFD_AS3711 is not set
# CONFIG_MFD_SMPRO is not set
@@ -5493,6 +5544,7 @@ CONFIG_MEDIA_CEC_SUPPORT=y
CONFIG_CEC_CH7322=m
CONFIG_CEC_CROS_EC=m
CONFIG_CEC_GPIO=m
+# CONFIG_USB_EXTRON_DA_HD_4K_PLUS_CEC is not set
CONFIG_USB_PULSE8_CEC=m
CONFIG_USB_RAINSHADOW_CEC=m
# end of CEC support
@@ -5849,7 +5901,6 @@ CONFIG_VIDEO_CADENCE_CSI2TX=m
#
# Chips&Media media platform drivers
#
-# CONFIG_VIDEO_E5010_JPEG_ENC is not set
#
# Intel media platform drivers
@@ -5887,7 +5938,6 @@ CONFIG_VIDEO_CAFE_CCIC=m
#
# Raspberry Pi media platform drivers
#
-# CONFIG_VIDEO_RASPBERRYPI_PISP_BE is not set
#
# Renesas media platform drivers
@@ -5922,6 +5972,7 @@ CONFIG_HDMIRX_LOAD_DEFAULT_EDID=y
# Verisilicon media platform drivers
#
CONFIG_VIDEO_HANTRO=m
+# CONFIG_VIDEO_HANTRO_HEVC_RFC is not set
CONFIG_VIDEO_HANTRO_ROCKCHIP=y
#
@@ -6440,6 +6491,7 @@ CONFIG_DRM_MIPI_DSI=y
CONFIG_DRM_KUNIT_TEST_HELPERS=m
CONFIG_DRM_KUNIT_TEST=m
CONFIG_DRM_KMS_HELPER=m
+# CONFIG_DRM_PANIC is not set
# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set
# CONFIG_DRM_DEBUG_MODESET_LOCK is not set
CONFIG_DRM_FBDEV_EMULATION=y
@@ -6521,6 +6573,7 @@ CONFIG_DRM_PANEL_ARM_VERSATILE=m
CONFIG_DRM_PANEL_BOE_HIMAX8279D=m
# CONFIG_DRM_PANEL_BOE_TH101MB31UIG002_28A is not set
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
+# CONFIG_DRM_PANEL_BOE_TV101WUM_LL2 is not set
# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -6854,10 +6907,10 @@ CONFIG_SND_MAX_CARDS=32
CONFIG_SND_SUPPORT_OLD_API=y
CONFIG_SND_PROC_FS=y
CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
CONFIG_SND_CTL_FAST_LOOKUP=y
# CONFIG_SND_DEBUG is not set
CONFIG_SND_CTL_INPUT_VALIDATION=y
+# CONFIG_SND_UTIMER is not set
CONFIG_SND_VMASTER=y
CONFIG_SND_CTL_LED=m
CONFIG_SND_SEQUENCER=m
@@ -7357,6 +7410,7 @@ CONFIG_SND_SOC_WSA883X=m
CONFIG_SND_SOC_ZL38060=m
CONFIG_SND_SOC_MAX9759=m
CONFIG_SND_SOC_MT6351=m
+# CONFIG_SND_SOC_MT6357 is not set
CONFIG_SND_SOC_MT6358=m
CONFIG_SND_SOC_MT6660=m
CONFIG_SND_SOC_NAU8315=m
@@ -7429,6 +7483,7 @@ CONFIG_HID_GLORIOUS=m
CONFIG_HID_HOLTEK=m
CONFIG_HOLTEK_FF=y
CONFIG_HID_VIVALDI_COMMON=m
+# CONFIG_HID_GOODIX_SPI is not set
CONFIG_HID_GOOGLE_HAMMER=m
# CONFIG_HID_GOOGLE_STADIA_FF is not set
CONFIG_HID_VIVALDI=m
@@ -8200,6 +8255,7 @@ CONFIG_RTC_DRV_RK808=m
# CONFIG_RTC_DRV_RV3028 is not set
# CONFIG_RTC_DRV_RV3032 is not set
# CONFIG_RTC_DRV_RV8803 is not set
+# CONFIG_RTC_DRV_SD2405AL is not set
# CONFIG_RTC_DRV_SD3078 is not set
#
@@ -8289,6 +8345,7 @@ CONFIG_PLX_DMA=m
# CONFIG_XILINX_XDMA is not set
# CONFIG_XILINX_ZYNQMP_DMA is not set
# CONFIG_XILINX_ZYNQMP_DPDMA is not set
+# CONFIG_AMD_QDMA is not set
CONFIG_QCOM_HIDMA_MGMT=y
CONFIG_QCOM_HIDMA=y
CONFIG_DW_DMAC_CORE=m
@@ -8360,6 +8417,7 @@ CONFIG_IRQ_BYPASS_MANAGER=y
CONFIG_VIRT_DRIVERS=y
CONFIG_VMGENID=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_ARM_PKVM_GUEST is not set
CONFIG_VIRTIO_ANCHOR=y
CONFIG_VIRTIO=y
CONFIG_VIRTIO_PCI_LIB=y
@@ -8420,6 +8478,7 @@ CONFIG_XEN_GRANT_DEV_ALLOC=y
CONFIG_SWIOTLB_XEN=y
CONFIG_XEN_PCI_STUB=y
CONFIG_XEN_PCIDEV_STUB=m
+# CONFIG_XEN_PCIDEV_BACKEND is not set
# CONFIG_XEN_PVCALLS_FRONTEND is not set
# CONFIG_XEN_PVCALLS_BACKEND is not set
CONFIG_XEN_SCSI_BACKEND=m
@@ -8532,7 +8591,6 @@ CONFIG_FB_TFT_UC1611=m
CONFIG_FB_TFT_UC1701=m
CONFIG_FB_TFT_UPD161704=m
# CONFIG_MOST_COMPONENTS is not set
-# CONFIG_KS7010 is not set
# CONFIG_XIL_AXIS_FIFO is not set
CONFIG_FIELDBUS_DEV=m
CONFIG_HMS_ANYBUSS_BUS=m
@@ -8613,10 +8671,12 @@ CONFIG_CLK_RK3328=y
CONFIG_CLK_RK3368=y
CONFIG_CLK_RK3399=y
CONFIG_CLK_RK3568=y
+CONFIG_CLK_RK3576=y
CONFIG_CLK_RK3588=y
# CONFIG_XILINX_VCU is not set
# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
# CONFIG_CLK_KUNIT_TEST is not set
+# CONFIG_CLK_FIXED_RATE_KUNIT_TEST is not set
# CONFIG_CLK_GATE_KUNIT_TEST is not set
# CONFIG_CLK_FD_KUNIT_TEST is not set
# CONFIG_HWSPINLOCK is not set
@@ -8679,6 +8739,7 @@ CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
CONFIG_ARM_SMMU_V3=y
CONFIG_ARM_SMMU_V3_SVA=y
# CONFIG_ARM_SMMU_V3_KUNIT_TEST is not set
+# CONFIG_TEGRA241_CMDQV is not set
CONFIG_VIRTIO_IOMMU=m
#
@@ -8825,6 +8886,7 @@ CONFIG_EXTCON=y
CONFIG_EXTCON_ADC_JACK=m
# CONFIG_EXTCON_FSA9480 is not set
CONFIG_EXTCON_GPIO=y
+# CONFIG_EXTCON_LC824206XA is not set
# CONFIG_EXTCON_MAX3355 is not set
CONFIG_EXTCON_PTN5150=m
# CONFIG_EXTCON_RT8973A is not set
@@ -8869,6 +8931,8 @@ CONFIG_ADXL367_I2C=m
CONFIG_ADXL372=m
CONFIG_ADXL372_SPI=m
CONFIG_ADXL372_I2C=m
+# CONFIG_ADXL380_SPI is not set
+# CONFIG_ADXL380_I2C is not set
CONFIG_BMA180=m
CONFIG_BMA220=m
CONFIG_BMA400=m
@@ -8921,7 +8985,9 @@ CONFIG_STK8BA50=m
# Analog to digital converters
#
CONFIG_AD_SIGMA_DELTA=m
+# CONFIG_AD4000 is not set
# CONFIG_AD4130 is not set
+# CONFIG_AD4695 is not set
CONFIG_AD7091R=m
CONFIG_AD7091R5=m
# CONFIG_AD7091R8 is not set
@@ -8974,6 +9040,7 @@ CONFIG_MCP3422=m
CONFIG_MCP3911=m
# CONFIG_MEDIATEK_MT6370_ADC is not set
# CONFIG_NAU7802 is not set
+# CONFIG_PAC1921 is not set
# CONFIG_PAC1934 is not set
# CONFIG_QCOM_SPMI_IADC is not set
# CONFIG_QCOM_SPMI_VADC is not set
@@ -9119,6 +9186,7 @@ CONFIG_AD5770R=m
# CONFIG_DS4424 is not set
CONFIG_LTC1660=m
# CONFIG_LTC2632 is not set
+# CONFIG_LTC2664 is not set
# CONFIG_M62332 is not set
# CONFIG_MAX517 is not set
# CONFIG_MAX5522 is not set
@@ -9215,6 +9283,7 @@ CONFIG_MAX30102=m
#
CONFIG_AM2315=m
CONFIG_DHT11=m
+# CONFIG_ENS210 is not set
CONFIG_HDC100X=m
# CONFIG_HDC2010 is not set
# CONFIG_HDC3020 is not set
@@ -9269,6 +9338,7 @@ CONFIG_APDS9300=m
# CONFIG_APDS9306 is not set
CONFIG_APDS9960=m
# CONFIG_AS73211 is not set
+# CONFIG_BH1745 is not set
CONFIG_BH1750=m
CONFIG_BH1780=m
CONFIG_CM32181=m
@@ -9424,6 +9494,7 @@ CONFIG_MPL3115=m
# CONFIG_MPRLS0025PA is not set
# CONFIG_MS5611 is not set
# CONFIG_MS5637 is not set
+# CONFIG_SDP500 is not set
# CONFIG_IIO_ST_PRESS is not set
# CONFIG_T5403 is not set
# CONFIG_HP206C is not set
@@ -9440,6 +9511,7 @@ CONFIG_MPL3115=m
# Proximity and distance sensors
#
CONFIG_CROS_EC_MKBP_PROXIMITY=m
+# CONFIG_HX9023S is not set
# CONFIG_IRSD200 is not set
CONFIG_ISL29501=m
# CONFIG_LIDAR_LITE_V2 is not set
@@ -9454,6 +9526,7 @@ CONFIG_PING=m
# CONFIG_SRF08 is not set
# CONFIG_VCNL3020 is not set
CONFIG_VL53L0X_I2C=m
+# CONFIG_AW96103 is not set
# end of Proximity and distance sensors
#
@@ -9580,6 +9653,7 @@ CONFIG_ARM_CCI400_PMU=y
CONFIG_ARM_CCI5xx_PMU=y
CONFIG_ARM_CCN=y
# CONFIG_ARM_CMN is not set
+# CONFIG_ARM_NI is not set
CONFIG_ARM_PMU=y
CONFIG_ARM_PMU_ACPI=y
CONFIG_ARM_SMMU_V3_PMU=m
@@ -9623,6 +9697,7 @@ CONFIG_NVMEM_LAYOUTS=y
#
# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set
# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set
+CONFIG_NVMEM_LAYOUT_U_BOOT_ENV=m
# end of Layout Types
CONFIG_NVMEM_RMEM=m
@@ -9771,6 +9846,7 @@ CONFIG_BCACHEFS_POSIX_ACL=y
# CONFIG_BCACHEFS_LOCK_TIME_STATS is not set
# CONFIG_BCACHEFS_NO_LATENCY_ACCT is not set
CONFIG_BCACHEFS_SIX_OPTIMISTIC_SPIN=y
+# CONFIG_BCACHEFS_PATH_TRACEPOINTS is not set
# CONFIG_MEAN_AND_VARIANCE_UNIT_TEST is not set
CONFIG_ZONEFS_FS=m
CONFIG_FS_POSIX_ACL=y
@@ -9866,6 +9942,7 @@ CONFIG_TMPFS_XATTR=y
CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
+CONFIG_HUGETLB_PMD_PAGE_TABLE_SHARING=y
CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
CONFIG_CONFIGFS_FS=y
CONFIG_EFIVAR_FS=y
@@ -9962,6 +10039,7 @@ CONFIG_EROFS_FS=m
CONFIG_EROFS_FS_XATTR=y
CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_EROFS_FS_SECURITY=y
+CONFIG_EROFS_FS_BACKED_BY_FILE=y
# CONFIG_EROFS_FS_ZIP is not set
# CONFIG_EROFS_FS_ONDEMAND is not set
CONFIG_NETWORK_FILESYSTEMS=y
@@ -10001,6 +10079,7 @@ CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_NFS_COMMON=y
+# CONFIG_NFS_LOCALIO is not set
CONFIG_NFS_V4_2_SSC_HELPER=y
CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
@@ -10028,6 +10107,7 @@ CONFIG_CIFS_DEBUG=y
CONFIG_CIFS_DFS_UPCALL=y
# CONFIG_CIFS_SWN_UPCALL is not set
CONFIG_CIFS_FSCACHE=y
+# CONFIG_CIFS_COMPRESSION is not set
CONFIG_SMB_SERVER=m
CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
CONFIG_SMB_SERVER_KERBEROS5=y
@@ -10114,6 +10194,9 @@ CONFIG_ENCRYPTED_KEYS=y
# CONFIG_USER_DECRYPTED_DATA is not set
CONFIG_KEY_DH_OPERATIONS=y
CONFIG_SECURITY_DMESG_RESTRICT=y
+CONFIG_PROC_MEM_ALWAYS_FORCE=y
+# CONFIG_PROC_MEM_FORCE_PTRACE is not set
+# CONFIG_PROC_MEM_NO_FORCE is not set
CONFIG_SECURITY=y
CONFIG_SECURITYFS=y
CONFIG_SECURITY_NETWORK=y
@@ -10154,6 +10237,7 @@ CONFIG_SECURITY_YAMA=y
CONFIG_SECURITY_SAFESETID=y
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
# CONFIG_SECURITY_LANDLOCK is not set
+# CONFIG_SECURITY_IPE is not set
CONFIG_INTEGRITY=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
@@ -10206,7 +10290,12 @@ CONFIG_LSM="lockdown,yama,integrity,apparmor"
#
# Memory initialization
#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
@@ -10581,7 +10670,9 @@ CONFIG_XZ_DEC_X86=y
CONFIG_XZ_DEC_POWERPC=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_ARM64=y
CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_RISCV=y
CONFIG_XZ_DEC_MICROLZMA=y
CONFIG_XZ_DEC_BCJ=y
CONFIG_XZ_DEC_TEST=m
@@ -10611,7 +10702,7 @@ CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
-CONFIG_DMA_OPS=y
+CONFIG_DMA_OPS_HELPERS=y
CONFIG_NEED_SG_DMA_FLAGS=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_NEED_DMA_MAP_STATE=y
@@ -10662,6 +10753,7 @@ CONFIG_UCS2_STRING=y
CONFIG_HAVE_GENERIC_VDSO=y
CONFIG_GENERIC_GETTIMEOFDAY=y
CONFIG_GENERIC_VDSO_TIME_NS=y
+CONFIG_VDSO_GETRANDOM=y
CONFIG_FONT_SUPPORT=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
@@ -10967,6 +11059,7 @@ CONFIG_FUNCTION_ERROR_INJECTION=y
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_TEST_DHRY is not set
# CONFIG_LKDTM is not set
@@ -10975,6 +11068,7 @@ CONFIG_RUNTIME_TESTING_MENU=y
CONFIG_TEST_MIN_HEAP=m
# CONFIG_TEST_SORT is not set
CONFIG_TEST_DIV64=m
+# CONFIG_TEST_MULDIV64 is not set
# CONFIG_TEST_IOV_ITER is not set
# CONFIG_KPROBES_SANITY_TEST is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
@@ -11042,3 +11136,5 @@ CONFIG_MEMTEST=y
#
# end of Rust hacking
# end of Kernel hacking
+
+# CONFIG_INT_POW_TEST is not set
diff --git a/config/kernel/linux-rockchip64-current.config b/config/kernel/linux-rockchip64-current.config
index d122a31791d4..e7db6f5d8fa9 100644
--- a/config/kernel/linux-rockchip64-current.config
+++ b/config/kernel/linux-rockchip64-current.config
@@ -7666,7 +7666,7 @@ CONFIG_VHOST=m
CONFIG_VHOST_MENU=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
-# CONFIG_VHOST_VSOCK is not set
+CONFIG_VHOST_VSOCK=m
CONFIG_VHOST_VDPA=m
# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
@@ -7796,6 +7796,7 @@ CONFIG_FB_TFT_SSD1331=m
CONFIG_FB_TFT_SSD1351=m
CONFIG_FB_TFT_ST7735R=m
CONFIG_FB_TFT_ST7789V=m
+CONFIG_FB_TFT_ST7796=m
CONFIG_FB_TFT_TINYLCD=m
CONFIG_FB_TFT_TLS8204=m
CONFIG_FB_TFT_UC1611=m
diff --git a/config/kernel/linux-rockchip64-edge.config b/config/kernel/linux-rockchip64-edge.config
index 8096252ac003..4eaae942d505 100644
--- a/config/kernel/linux-rockchip64-edge.config
+++ b/config/kernel/linux-rockchip64-edge.config
@@ -1,16 +1,18 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 6.11.4 Kernel Configuration
+# Linux/arm64 6.12.1 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
+CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=110400
+CONFIG_GCC_VERSION=130200
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23800
+CONFIG_AS_VERSION=24200
CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23800
+CONFIG_LD_VERSION=24200
CONFIG_LLD_VERSION=0
+CONFIG_RUSTC_VERSION=0
+CONFIG_RUSTC_LLVM_VERSION=0
CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
CONFIG_GCC_ASM_GOTO_OUTPUT_BROKEN=y
@@ -107,6 +109,7 @@ CONFIG_PREEMPT_BUILD=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
+# CONFIG_PREEMPT_RT is not set
CONFIG_PREEMPT_COUNT=y
CONFIG_PREEMPTION=y
# CONFIG_PREEMPT_DYNAMIC is not set
@@ -179,6 +182,7 @@ CONFIG_MEMCG=y
CONFIG_BLK_CGROUP=y
CONFIG_CGROUP_WRITEBACK=y
CONFIG_CGROUP_SCHED=y
+CONFIG_GROUP_SCHED_WEIGHT=y
CONFIG_FAIR_GROUP_SCHED=y
CONFIG_CFS_BANDWIDTH=y
CONFIG_RT_GROUP_SCHED=y
@@ -188,6 +192,7 @@ CONFIG_CGROUP_RDMA=y
CONFIG_CGROUP_FREEZER=y
CONFIG_CGROUP_HUGETLB=y
CONFIG_CPUSETS=y
+# CONFIG_CPUSETS_V1 is not set
CONFIG_PROC_PID_CPUSET=y
CONFIG_CGROUP_DEVICE=y
CONFIG_CGROUP_CPUACCT=y
@@ -284,6 +289,7 @@ CONFIG_CRASH_DUMP=y
# end of General setup
CONFIG_ARM64=y
+CONFIG_RUSTC_SUPPORTS_ARM64=y
CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_64BIT=y
CONFIG_MMU=y
@@ -439,6 +445,7 @@ CONFIG_HZ=250
CONFIG_SCHED_HRTICK=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_HW_PERF_EVENTS=y
+CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
CONFIG_PARAVIRT=y
# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
CONFIG_ARCH_SUPPORTS_KEXEC=y
@@ -447,6 +454,7 @@ CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y
CONFIG_ARCH_SUPPORTS_KEXEC_IMAGE_VERIFY_SIG=y
CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y
CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
+CONFIG_ARCH_DEFAULT_CRASH_DUMP=y
CONFIG_ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATION=y
CONFIG_TRANS_TABLE=y
CONFIG_XEN_DOM0=y
@@ -522,8 +530,14 @@ CONFIG_ARM64_MTE=y
CONFIG_ARM64_EPAN=y
# end of ARMv8.7 architectural features
+#
+# ARMv8.9 architectural features
+#
+CONFIG_ARM64_POE=y
+CONFIG_ARCH_PKEY_BITS=3
+# end of ARMv8.9 architectural features
+
CONFIG_ARM64_SVE=y
-CONFIG_ARM64_SME=y
# CONFIG_ARM64_PSEUDO_NMI is not set
CONFIG_RELOCATABLE=y
CONFIG_RANDOMIZE_BASE=y
@@ -650,7 +664,9 @@ CONFIG_KVM_GENERIC_MMU_NOTIFIER=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=y
# CONFIG_NVHE_EL2_DEBUG is not set
+# CONFIG_PTDUMP_STAGE2_DEBUGFS is not set
CONFIG_CPU_MITIGATIONS=y
+CONFIG_ARCH_HAS_DMA_OPS=y
#
# General architecture-dependent options
@@ -710,6 +726,8 @@ CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
+# CONFIG_SHADOW_CALL_STACK is not set
CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
CONFIG_LTO_NONE=y
@@ -744,6 +762,7 @@ CONFIG_CLONE_BACKWARDS=y
CONFIG_OLD_SIGSUSPEND3=y
CONFIG_COMPAT_OLD_SIGACTION=y
CONFIG_COMPAT_32BIT_TIME=y
+CONFIG_ARCH_SUPPORTS_RT=y
CONFIG_HAVE_ARCH_VMAP_STACK=y
CONFIG_VMAP_STACK=y
CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
@@ -758,6 +777,7 @@ CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
CONFIG_ARCH_USE_MEMREMAP_PROT=y
# CONFIG_LOCK_EVENT_COUNTS is not set
CONFIG_ARCH_HAS_RELR=y
+CONFIG_ARCH_HAS_MEM_ENCRYPT=y
CONFIG_HAVE_PREEMPT_DYNAMIC=y
CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y
CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
@@ -789,10 +809,7 @@ CONFIG_MODULE_FORCE_UNLOAD=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
# CONFIG_MODULE_SIG is not set
-CONFIG_MODULE_COMPRESS_NONE=y
-# CONFIG_MODULE_COMPRESS_GZIP is not set
-# CONFIG_MODULE_COMPRESS_XZ is not set
-# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_COMPRESS is not set
# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
CONFIG_MODPROBE_PATH="/sbin/modprobe"
# CONFIG_TRIM_UNUSED_KSYMS is not set
@@ -896,7 +913,6 @@ CONFIG_ZSWAP_ZPOOL_DEFAULT="z3fold"
CONFIG_ZBUD=y
CONFIG_Z3FOLD_DEPRECATED=y
CONFIG_Z3FOLD=y
-CONFIG_HAVE_ZSMALLOC=y
CONFIG_ZSMALLOC=y
# CONFIG_ZSMALLOC_STAT is not set
CONFIG_ZSMALLOC_CHAIN_SIZE=8
@@ -923,14 +939,16 @@ CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_VMEMMAP=y
CONFIG_HAVE_GUP_FAST=y
CONFIG_ARCH_KEEP_MEMBLOCK=y
+CONFIG_NUMA_KEEP_MEMINFO=y
CONFIG_MEMORY_ISOLATION=y
CONFIG_EXCLUSIVE_SYSTEM_RAM=y
CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
# CONFIG_MEMORY_HOTPLUG is not set
CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
-CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_SPLIT_PTE_PTLOCKS=y
CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
+CONFIG_SPLIT_PMD_PTLOCKS=y
CONFIG_MEMORY_BALLOON=y
CONFIG_BALLOON_COMPACTION=y
CONFIG_COMPACTION=y
@@ -955,6 +973,8 @@ CONFIG_TRANSPARENT_HUGEPAGE_MADVISE=y
CONFIG_THP_SWAP=y
# CONFIG_READ_ONLY_THP_FOR_FS is not set
CONFIG_PGTABLE_HAS_HUGE_LEAVES=y
+CONFIG_ARCH_SUPPORTS_HUGE_PFNMAP=y
+CONFIG_ARCH_SUPPORTS_PMD_PFNMAP=y
CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
CONFIG_USE_PERCPU_NUMA_NODE_ID=y
@@ -974,7 +994,9 @@ CONFIG_ZONE_DMA=y
CONFIG_ZONE_DMA32=y
CONFIG_GET_FREE_REGION=y
CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
-CONFIG_ARCH_USES_PG_ARCH_X=y
+CONFIG_ARCH_HAS_PKEYS=y
+CONFIG_ARCH_USES_PG_ARCH_2=y
+CONFIG_ARCH_USES_PG_ARCH_3=y
CONFIG_VM_EVENT_COUNTERS=y
# CONFIG_PERCPU_STATS is not set
# CONFIG_GUP_TEST is not set
@@ -993,6 +1015,8 @@ CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y
CONFIG_PER_VMA_LOCK=y
CONFIG_LOCK_MM_AND_FIND_VMA=y
CONFIG_EXECMEM=y
+CONFIG_NUMA_MEMBLKS=y
+# CONFIG_NUMA_EMU is not set
#
# Data Access Monitoring
@@ -1009,6 +1033,7 @@ CONFIG_NET_XGRESS=y
CONFIG_NET_REDIRECT=y
CONFIG_SKB_DECRYPTED=y
CONFIG_SKB_EXTENSIONS=y
+CONFIG_NET_DEVMEM=y
#
# Networking options
@@ -1809,6 +1834,7 @@ CONFIG_BT_HCIUART_RTL=y
CONFIG_BT_HCIUART_QCA=y
CONFIG_BT_HCIUART_AG6XX=y
CONFIG_BT_HCIUART_MRVL=y
+# CONFIG_BT_HCIUART_AML is not set
CONFIG_BT_HCIBCM203X=m
# CONFIG_BT_HCIBCM4377 is not set
CONFIG_BT_HCIBPA10X=m
@@ -1877,6 +1903,7 @@ CONFIG_NET_9P=m
CONFIG_NET_9P_FD=m
CONFIG_NET_9P_VIRTIO=m
CONFIG_NET_9P_XEN=m
+# CONFIG_NET_9P_USBG is not set
# CONFIG_NET_9P_DEBUG is not set
# CONFIG_CAIF is not set
CONFIG_CEPH_LIB=m
@@ -1976,6 +2003,7 @@ CONFIG_PCI_ATS=y
CONFIG_PCI_DOE=y
CONFIG_PCI_ECAM=y
CONFIG_PCI_IOV=y
+# CONFIG_PCI_NPEM is not set
# CONFIG_PCI_PRI is not set
# CONFIG_PCI_PASID is not set
CONFIG_PCI_LABEL=y
@@ -2151,12 +2179,26 @@ CONFIG_CONNECTOR=m
#
CONFIG_ARM_SCMI_PROTOCOL=y
# CONFIG_ARM_SCMI_RAW_MODE_SUPPORT is not set
+# CONFIG_ARM_SCMI_DEBUG_COUNTERS is not set
+
+#
+# SCMI Transport Drivers
+#
CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
CONFIG_ARM_SCMI_HAVE_SHMEM=y
CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
CONFIG_ARM_SCMI_TRANSPORT_SMC=y
# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
+# end of SCMI Transport Drivers
+
+#
+# ARM SCMI NXP i.MX Vendor Protocols
+#
+# CONFIG_IMX_SCMI_BBM_EXT is not set
+# CONFIG_IMX_SCMI_MISC_EXT is not set
+# end of ARM SCMI NXP i.MX Vendor Protocols
+
# CONFIG_ARM_SCMI_POWER_CONTROL is not set
# end of ARM System Control and Management Interface Protocol
@@ -2339,6 +2381,7 @@ CONFIG_OF_IRQ=y
CONFIG_OF_RESERVED_MEM=y
CONFIG_OF_RESOLVE=y
CONFIG_OF_OVERLAY=y
+# CONFIG_OF_OVERLAY_KUNIT_TEST is not set
CONFIG_OF_NUMA=y
CONFIG_OF_CONFIGFS=y
# CONFIG_PARPORT is not set
@@ -2347,12 +2390,15 @@ CONFIG_BLK_DEV=y
CONFIG_CDROM=m
# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
CONFIG_ZRAM=m
+# CONFIG_ZRAM_BACKEND_LZ4 is not set
+# CONFIG_ZRAM_BACKEND_LZ4HC is not set
+# CONFIG_ZRAM_BACKEND_ZSTD is not set
+# CONFIG_ZRAM_BACKEND_DEFLATE is not set
+# CONFIG_ZRAM_BACKEND_842 is not set
+CONFIG_ZRAM_BACKEND_FORCE_LZO=y
+CONFIG_ZRAM_BACKEND_LZO=y
CONFIG_ZRAM_DEF_COMP_LZORLE=y
-# CONFIG_ZRAM_DEF_COMP_ZSTD is not set
-# CONFIG_ZRAM_DEF_COMP_LZ4 is not set
# CONFIG_ZRAM_DEF_COMP_LZO is not set
-# CONFIG_ZRAM_DEF_COMP_LZ4HC is not set
-# CONFIG_ZRAM_DEF_COMP_842 is not set
CONFIG_ZRAM_DEF_COMP="lzo-rle"
CONFIG_ZRAM_WRITEBACK=y
CONFIG_ZRAM_TRACK_ENTRY_ACTIME=y
@@ -2406,6 +2452,7 @@ CONFIG_NVME_TARGET_AUTH=y
# CONFIG_AD525X_DPOT is not set
# CONFIG_DUMMY_IRQ is not set
CONFIG_PHANTOM=m
+# CONFIG_RPMB is not set
CONFIG_TIFM_CORE=m
CONFIG_TIFM_7XX1=m
# CONFIG_ICS932S401 is not set
@@ -2999,9 +3046,11 @@ CONFIG_ENC28J60=m
CONFIG_ENC28J60_WRITEVERIFY=y
# CONFIG_ENCX24J600 is not set
# CONFIG_LAN743X is not set
+# CONFIG_LAN865X is not set
CONFIG_LAN966X_SWITCH=m
# CONFIG_LAN966X_DCB is not set
CONFIG_VCAP=y
+CONFIG_FDMA=y
CONFIG_NET_VENDOR_MICROSEMI=y
CONFIG_MSCC_OCELOT_SWITCH_LIB=m
CONFIG_MSCC_OCELOT_SWITCH=m
@@ -3024,6 +3073,7 @@ CONFIG_NET_VENDOR_NVIDIA=y
# CONFIG_FORCEDETH is not set
CONFIG_NET_VENDOR_OKI=y
# CONFIG_ETHOC is not set
+# CONFIG_OA_TC6 is not set
CONFIG_NET_VENDOR_PACKET_ENGINES=y
# CONFIG_HAMACHI is not set
# CONFIG_YELLOWFIN is not set
@@ -3049,6 +3099,7 @@ CONFIG_NET_VENDOR_REALTEK=y
# CONFIG_8139TOO is not set
CONFIG_R8169=m
CONFIG_R8169_LEDS=y
+# CONFIG_RTASE is not set
CONFIG_NET_VENDOR_RENESAS=y
CONFIG_NET_VENDOR_ROCKER=y
CONFIG_ROCKER=m
@@ -3200,6 +3251,7 @@ CONFIG_CAN_C_CAN=m
CONFIG_CAN_C_CAN_PLATFORM=m
CONFIG_CAN_C_CAN_PCI=m
CONFIG_CAN_CC770=m
+# CONFIG_CAN_CC770_ISA is not set
CONFIG_CAN_CC770_PLATFORM=m
CONFIG_CAN_CTUCANFD=m
CONFIG_CAN_CTUCANFD_PCI=m
@@ -3211,6 +3263,7 @@ CONFIG_CAN_M_CAN_PCI=m
CONFIG_CAN_M_CAN_PLATFORM=m
CONFIG_CAN_M_CAN_TCAN4X5X=m
CONFIG_CAN_PEAK_PCIEFD=m
+# CONFIG_CAN_ROCKCHIP_CANFD is not set
CONFIG_CAN_SJA1000=m
CONFIG_CAN_EMS_PCI=m
CONFIG_CAN_F81601=m
@@ -3218,6 +3271,7 @@ CONFIG_CAN_KVASER_PCI=m
CONFIG_CAN_PEAK_PCI=m
CONFIG_CAN_PEAK_PCIEC=y
CONFIG_CAN_PLX_PCI=m
+# CONFIG_CAN_SJA1000_ISA is not set
CONFIG_CAN_SJA1000_PLATFORM=m
CONFIG_CAN_SOFTING=m
@@ -3587,7 +3641,24 @@ CONFIG_RTW88_8821CS=m
CONFIG_RTW88_8821CU=m
# CONFIG_RTW88_DEBUG is not set
# CONFIG_RTW88_DEBUGFS is not set
-# CONFIG_RTW89 is not set
+CONFIG_RTW89=m
+CONFIG_RTW89_CORE=m
+CONFIG_RTW89_PCI=m
+CONFIG_RTW89_8851B=m
+CONFIG_RTW89_8852A=m
+CONFIG_RTW89_8852B_COMMON=m
+CONFIG_RTW89_8852B=m
+CONFIG_RTW89_8852BT=m
+CONFIG_RTW89_8852C=m
+CONFIG_RTW89_8922A=m
+CONFIG_RTW89_8851BE=m
+CONFIG_RTW89_8852AE=m
+CONFIG_RTW89_8852BE=m
+CONFIG_RTW89_8852BTE=m
+CONFIG_RTW89_8852CE=m
+CONFIG_RTW89_8922AE=m
+# CONFIG_RTW89_DEBUGMSG is not set
+# CONFIG_RTW89_DEBUGFS is not set
CONFIG_WLAN_VENDOR_RSI=y
CONFIG_RSI_91X=m
# CONFIG_RSI_DEBUGFS is not set
@@ -3717,7 +3788,6 @@ CONFIG_KEYBOARD_GPIO=y
# CONFIG_KEYBOARD_LM8323 is not set
# CONFIG_KEYBOARD_LM8333 is not set
# CONFIG_KEYBOARD_MAX7359 is not set
-# CONFIG_KEYBOARD_MCS is not set
# CONFIG_KEYBOARD_MPR121 is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_OPENCORES is not set
@@ -3810,9 +3880,6 @@ CONFIG_TOUCHSCREEN_CY8CTMG110=m
CONFIG_TOUCHSCREEN_CYTTSP_CORE=m
CONFIG_TOUCHSCREEN_CYTTSP_I2C=m
CONFIG_TOUCHSCREEN_CYTTSP_SPI=m
-CONFIG_TOUCHSCREEN_CYTTSP4_CORE=m
-CONFIG_TOUCHSCREEN_CYTTSP4_I2C=m
-CONFIG_TOUCHSCREEN_CYTTSP4_SPI=m
# CONFIG_TOUCHSCREEN_CYTTSP5 is not set
CONFIG_TOUCHSCREEN_DYNAPRO=m
CONFIG_TOUCHSCREEN_HAMPSHIRE=m
@@ -3837,7 +3904,6 @@ CONFIG_TOUCHSCREEN_ELO=m
CONFIG_TOUCHSCREEN_WACOM_W8001=m
CONFIG_TOUCHSCREEN_WACOM_I2C=m
CONFIG_TOUCHSCREEN_MAX11801=m
-CONFIG_TOUCHSCREEN_MCS5000=m
CONFIG_TOUCHSCREEN_MMS114=m
CONFIG_TOUCHSCREEN_MELFAS_MIP4=m
CONFIG_TOUCHSCREEN_MSG2638=m
@@ -4071,11 +4137,11 @@ CONFIG_HW_RANDOM=m
# CONFIG_HW_RANDOM_TIMERIOMEM is not set
# CONFIG_HW_RANDOM_BA431 is not set
# CONFIG_HW_RANDOM_VIRTIO is not set
-CONFIG_HW_RANDOM_ROCKCHIP=m
# CONFIG_HW_RANDOM_CCTRNG is not set
# CONFIG_HW_RANDOM_XIPHERA is not set
CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
CONFIG_HW_RANDOM_CN10K=m
+CONFIG_HW_RANDOM_ROCKCHIP=m
# CONFIG_APPLICOM is not set
CONFIG_DEVMEM=y
CONFIG_DEVPORT=y
@@ -4090,7 +4156,6 @@ CONFIG_XILLYUSB=m
#
CONFIG_I2C=y
CONFIG_I2C_BOARDINFO=y
-CONFIG_I2C_COMPAT=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MUX=m
@@ -4107,6 +4172,7 @@ CONFIG_I2C_MUX_PINCTRL=m
CONFIG_I2C_MUX_REG=m
CONFIG_I2C_DEMUX_PINCTRL=m
CONFIG_I2C_MUX_MLXCPLD=m
+# CONFIG_I2C_MUX_MULE is not set
# end of Multiplexer I2C Chip support
CONFIG_I2C_HELPER_AUTO=y
@@ -4773,6 +4839,7 @@ CONFIG_THERMAL=y
# CONFIG_THERMAL_NETLINK is not set
CONFIG_THERMAL_STATISTICS=y
# CONFIG_THERMAL_DEBUGFS is not set
+# CONFIG_THERMAL_CORE_TESTING is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
CONFIG_THERMAL_OF=y
@@ -4867,6 +4934,7 @@ CONFIG_BCMA_DRIVER_PCI=y
# Multifunction device drivers
#
CONFIG_MFD_CORE=y
+# CONFIG_MFD_ADP5585 is not set
# CONFIG_MFD_ACT8945A is not set
CONFIG_MFD_AS3711=y
# CONFIG_MFD_SMPRO is not set
@@ -5146,6 +5214,7 @@ CONFIG_MEDIA_CEC_SUPPORT=y
# CONFIG_CEC_CH7322 is not set
# CONFIG_CEC_CROS_EC is not set
# CONFIG_CEC_GPIO is not set
+# CONFIG_USB_EXTRON_DA_HD_4K_PLUS_CEC is not set
CONFIG_USB_PULSE8_CEC=m
CONFIG_USB_RAINSHADOW_CEC=m
# end of CEC support
@@ -5540,6 +5609,7 @@ CONFIG_VIDEO_ROCKCHIP_RGA=m
# Verisilicon media platform drivers
#
CONFIG_VIDEO_HANTRO=m
+# CONFIG_VIDEO_HANTRO_HEVC_RFC is not set
CONFIG_VIDEO_HANTRO_ROCKCHIP=y
#
@@ -6048,6 +6118,7 @@ CONFIG_DRM_MIPI_DSI=y
# CONFIG_DRM_DEBUG_MM is not set
# CONFIG_DRM_KUNIT_TEST is not set
CONFIG_DRM_KMS_HELPER=y
+# CONFIG_DRM_PANIC is not set
# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set
# CONFIG_DRM_DEBUG_MODESET_LOCK is not set
CONFIG_DRM_FBDEV_EMULATION=y
@@ -6123,6 +6194,7 @@ CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0=m
CONFIG_DRM_PANEL_BOE_HIMAX8279D=m
# CONFIG_DRM_PANEL_BOE_TH101MB31UIG002_28A is not set
CONFIG_DRM_PANEL_BOE_TV101WUM_NL6=m
+# CONFIG_DRM_PANEL_BOE_TV101WUM_LL2 is not set
# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
CONFIG_DRM_PANEL_ELIDA_KD35T133=m
CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02=m
@@ -6455,10 +6527,10 @@ CONFIG_SND_PCM_TIMER=y
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_PROC_FS=y
CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
CONFIG_SND_CTL_FAST_LOOKUP=y
# CONFIG_SND_DEBUG is not set
# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+# CONFIG_SND_UTIMER is not set
CONFIG_SND_VMASTER=y
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
@@ -6847,6 +6919,7 @@ CONFIG_SND_SOC_WM8985=m
# CONFIG_SND_SOC_ZL38060 is not set
CONFIG_SND_SOC_MAX9759=m
CONFIG_SND_SOC_MT6351=m
+# CONFIG_SND_SOC_MT6357 is not set
CONFIG_SND_SOC_MT6358=m
CONFIG_SND_SOC_MT6660=m
CONFIG_SND_SOC_NAU8315=m
@@ -6919,6 +6992,7 @@ CONFIG_HID_GLORIOUS=m
CONFIG_HID_HOLTEK=m
CONFIG_HOLTEK_FF=y
CONFIG_HID_VIVALDI_COMMON=m
+# CONFIG_HID_GOODIX_SPI is not set
CONFIG_HID_GOOGLE_HAMMER=m
# CONFIG_HID_GOOGLE_STADIA_FF is not set
# CONFIG_HID_VIVALDI is not set
@@ -7644,6 +7718,7 @@ CONFIG_RTC_DRV_RV3028=m
# CONFIG_RTC_DRV_RV3032 is not set
CONFIG_RTC_DRV_RV8803=m
CONFIG_RTC_DRV_S5M=m
+# CONFIG_RTC_DRV_SD2405AL is not set
CONFIG_RTC_DRV_SD3078=m
#
@@ -7733,6 +7808,7 @@ CONFIG_PLX_DMA=m
# CONFIG_XILINX_XDMA is not set
# CONFIG_XILINX_ZYNQMP_DMA is not set
# CONFIG_XILINX_ZYNQMP_DPDMA is not set
+# CONFIG_AMD_QDMA is not set
CONFIG_QCOM_HIDMA_MGMT=y
CONFIG_QCOM_HIDMA=y
# CONFIG_DW_DMAC is not set
@@ -7797,6 +7873,7 @@ CONFIG_IRQ_BYPASS_MANAGER=y
CONFIG_VIRT_DRIVERS=y
CONFIG_VMGENID=y
CONFIG_NITRO_ENCLAVES=m
+# CONFIG_ARM_PKVM_GUEST is not set
CONFIG_VIRTIO_ANCHOR=y
CONFIG_VIRTIO=y
CONFIG_VIRTIO_PCI_LIB=y
@@ -7828,7 +7905,7 @@ CONFIG_VHOST=m
CONFIG_VHOST_MENU=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
-# CONFIG_VHOST_VSOCK is not set
+CONFIG_VHOST_VSOCK=m
CONFIG_VHOST_VDPA=m
# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set
@@ -7954,13 +8031,13 @@ CONFIG_FB_TFT_SSD1331=m
CONFIG_FB_TFT_SSD1351=m
CONFIG_FB_TFT_ST7735R=m
CONFIG_FB_TFT_ST7789V=m
+CONFIG_FB_TFT_ST7796=m
CONFIG_FB_TFT_TINYLCD=m
CONFIG_FB_TFT_TLS8204=m
CONFIG_FB_TFT_UC1611=m
CONFIG_FB_TFT_UC1701=m
CONFIG_FB_TFT_UPD161704=m
# CONFIG_MOST_COMPONENTS is not set
-# CONFIG_KS7010 is not set
# CONFIG_XIL_AXIS_FIFO is not set
CONFIG_FIELDBUS_DEV=m
CONFIG_HMS_ANYBUSS_BUS=m
@@ -8033,10 +8110,12 @@ CONFIG_CLK_RK3328=y
CONFIG_CLK_RK3368=y
CONFIG_CLK_RK3399=y
CONFIG_CLK_RK3568=y
+CONFIG_CLK_RK3576=y
CONFIG_CLK_RK3588=y
# CONFIG_XILINX_VCU is not set
CONFIG_COMMON_CLK_XLNX_CLKWZRD=m
# CONFIG_CLK_KUNIT_TEST is not set
+# CONFIG_CLK_FIXED_RATE_KUNIT_TEST is not set
# CONFIG_CLK_GATE_KUNIT_TEST is not set
# CONFIG_CLK_FD_KUNIT_TEST is not set
# CONFIG_HWSPINLOCK is not set
@@ -8224,6 +8303,7 @@ CONFIG_EXTCON=y
# CONFIG_EXTCON_ADC_JACK is not set
# CONFIG_EXTCON_FSA9480 is not set
# CONFIG_EXTCON_GPIO is not set
+# CONFIG_EXTCON_LC824206XA is not set
# CONFIG_EXTCON_MAX3355 is not set
CONFIG_EXTCON_PTN5150=m
# CONFIG_EXTCON_RT8973A is not set
@@ -8267,6 +8347,8 @@ CONFIG_ADXL355_SPI=m
CONFIG_ADXL372=m
CONFIG_ADXL372_SPI=m
CONFIG_ADXL372_I2C=m
+# CONFIG_ADXL380_SPI is not set
+# CONFIG_ADXL380_I2C is not set
CONFIG_BMA180=m
CONFIG_BMA220=m
CONFIG_BMA400=m
@@ -8318,7 +8400,9 @@ CONFIG_STK8BA50=m
# Analog to digital converters
#
CONFIG_AD_SIGMA_DELTA=m
+# CONFIG_AD4000 is not set
# CONFIG_AD4130 is not set
+# CONFIG_AD4695 is not set
CONFIG_AD7091R=m
CONFIG_AD7091R5=m
# CONFIG_AD7091R8 is not set
@@ -8371,6 +8455,7 @@ CONFIG_LTC2496=m
# CONFIG_MCP3564 is not set
# CONFIG_MCP3911 is not set
# CONFIG_NAU7802 is not set
+# CONFIG_PAC1921 is not set
# CONFIG_PAC1934 is not set
# CONFIG_QCOM_SPMI_IADC is not set
# CONFIG_QCOM_SPMI_VADC is not set
@@ -8515,6 +8600,7 @@ CONFIG_AD7293=m
# CONFIG_DS4424 is not set
CONFIG_LTC1660=m
# CONFIG_LTC2632 is not set
+# CONFIG_LTC2664 is not set
# CONFIG_M62332 is not set
# CONFIG_MAX517 is not set
# CONFIG_MAX5522 is not set
@@ -8611,6 +8697,7 @@ CONFIG_ITG3200=m
#
CONFIG_AM2315=m
CONFIG_DHT11=m
+# CONFIG_ENS210 is not set
CONFIG_HDC100X=m
# CONFIG_HDC2010 is not set
# CONFIG_HDC3020 is not set
@@ -8664,6 +8751,7 @@ CONFIG_APDS9300=m
# CONFIG_APDS9306 is not set
CONFIG_APDS9960=m
# CONFIG_AS73211 is not set
+# CONFIG_BH1745 is not set
CONFIG_BH1750=m
CONFIG_BH1780=m
CONFIG_CM32181=m
@@ -8820,6 +8908,7 @@ CONFIG_ICP10100=m
# CONFIG_MPRLS0025PA is not set
# CONFIG_MS5611 is not set
# CONFIG_MS5637 is not set
+# CONFIG_SDP500 is not set
# CONFIG_IIO_ST_PRESS is not set
# CONFIG_T5403 is not set
# CONFIG_HP206C is not set
@@ -8836,6 +8925,7 @@ CONFIG_ICP10100=m
# Proximity and distance sensors
#
CONFIG_CROS_EC_MKBP_PROXIMITY=m
+# CONFIG_HX9023S is not set
# CONFIG_IRSD200 is not set
CONFIG_ISL29501=m
# CONFIG_LIDAR_LITE_V2 is not set
@@ -8850,6 +8940,7 @@ CONFIG_PING=m
# CONFIG_SRF08 is not set
# CONFIG_VCNL3020 is not set
CONFIG_VL53L0X_I2C=m
+# CONFIG_AW96103 is not set
# end of Proximity and distance sensors
#
@@ -8906,7 +8997,6 @@ CONFIG_ARM_GIC_MAX_NR=1
CONFIG_ARM_GIC_V2M=y
CONFIG_ARM_GIC_V3=y
CONFIG_ARM_GIC_V3_ITS=y
-CONFIG_ARM_GIC_V3_ITS_PCI=y
CONFIG_IRQ_MSI_LIB=y
# CONFIG_AL_FIC is not set
# CONFIG_LAN966X_OIC is not set
@@ -8978,6 +9068,7 @@ CONFIG_ARM_CCI_PMU=m
# CONFIG_ARM_CCI5xx_PMU is not set
# CONFIG_ARM_CCN is not set
# CONFIG_ARM_CMN is not set
+# CONFIG_ARM_NI is not set
CONFIG_ARM_PMU=y
# CONFIG_ARM_SMMU_V3_PMU is not set
CONFIG_ARM_PMUV3=y
@@ -9015,6 +9106,7 @@ CONFIG_NVMEM_LAYOUTS=y
#
# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set
# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set
+CONFIG_NVMEM_LAYOUT_U_BOOT_ENV=y
# end of Layout Types
# CONFIG_NVMEM_RAVE_SP_EEPROM is not set
@@ -9145,6 +9237,7 @@ CONFIG_BCACHEFS_POSIX_ACL=y
# CONFIG_BCACHEFS_LOCK_TIME_STATS is not set
# CONFIG_BCACHEFS_NO_LATENCY_ACCT is not set
CONFIG_BCACHEFS_SIX_OPTIMISTIC_SPIN=y
+# CONFIG_BCACHEFS_PATH_TRACEPOINTS is not set
# CONFIG_MEAN_AND_VARIANCE_UNIT_TEST is not set
CONFIG_ZONEFS_FS=m
CONFIG_FS_POSIX_ACL=y
@@ -9242,6 +9335,7 @@ CONFIG_TMPFS_XATTR=y
CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
+CONFIG_HUGETLB_PMD_PAGE_TABLE_SHARING=y
CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
CONFIG_CONFIGFS_FS=y
CONFIG_EFIVAR_FS=m
@@ -9329,6 +9423,7 @@ CONFIG_EROFS_FS=m
CONFIG_EROFS_FS_XATTR=y
CONFIG_EROFS_FS_POSIX_ACL=y
CONFIG_EROFS_FS_SECURITY=y
+CONFIG_EROFS_FS_BACKED_BY_FILE=y
# CONFIG_EROFS_FS_ZIP is not set
CONFIG_EROFS_FS_ONDEMAND=y
CONFIG_NETWORK_FILESYSTEMS=y
@@ -9368,6 +9463,7 @@ CONFIG_LOCKD=m
CONFIG_LOCKD_V4=y
CONFIG_NFS_ACL_SUPPORT=m
CONFIG_NFS_COMMON=y
+# CONFIG_NFS_LOCALIO is not set
CONFIG_NFS_V4_2_SSC_HELPER=y
CONFIG_SUNRPC=m
CONFIG_SUNRPC_GSS=m
@@ -9395,6 +9491,7 @@ CONFIG_CIFS_DEBUG=y
CONFIG_CIFS_DFS_UPCALL=y
# CONFIG_CIFS_SWN_UPCALL is not set
CONFIG_CIFS_FSCACHE=y
+# CONFIG_CIFS_COMPRESSION is not set
CONFIG_SMB_SERVER=m
CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
CONFIG_SMB_SERVER_KERBEROS5=y
@@ -9525,6 +9622,7 @@ CONFIG_SECURITY_YAMA=y
CONFIG_SECURITY_SAFESETID=y
# CONFIG_SECURITY_LOCKDOWN_LSM is not set
# CONFIG_SECURITY_LANDLOCK is not set
+# CONFIG_SECURITY_IPE is not set
CONFIG_INTEGRITY=y
CONFIG_INTEGRITY_SIGNATURE=y
CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y
@@ -9550,7 +9648,12 @@ CONFIG_LSM="lockdown,yama,integrity,apparmor"
#
# Memory initialization
#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
@@ -9922,7 +10025,9 @@ CONFIG_XZ_DEC_X86=y
CONFIG_XZ_DEC_POWERPC=y
CONFIG_XZ_DEC_ARM=y
CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_ARM64=y
CONFIG_XZ_DEC_SPARC=y
+CONFIG_XZ_DEC_RISCV=y
# CONFIG_XZ_DEC_MICROLZMA is not set
CONFIG_XZ_DEC_BCJ=y
CONFIG_XZ_DEC_TEST=m
@@ -9952,7 +10057,7 @@ CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
-CONFIG_DMA_OPS=y
+CONFIG_DMA_OPS_HELPERS=y
CONFIG_NEED_SG_DMA_FLAGS=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_NEED_DMA_MAP_STATE=y
@@ -10002,6 +10107,7 @@ CONFIG_UCS2_STRING=y
CONFIG_HAVE_GENERIC_VDSO=y
CONFIG_GENERIC_GETTIMEOFDAY=y
CONFIG_GENERIC_VDSO_TIME_NS=y
+CONFIG_VDSO_GETRANDOM=y
CONFIG_FONT_SUPPORT=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
@@ -10306,6 +10412,7 @@ CONFIG_FUNCTION_ERROR_INJECTION=y
# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_TEST_DHRY is not set
# CONFIG_LKDTM is not set
@@ -10314,6 +10421,7 @@ CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_TEST_MIN_HEAP is not set
# CONFIG_TEST_SORT is not set
CONFIG_TEST_DIV64=m
+# CONFIG_TEST_MULDIV64 is not set
# CONFIG_TEST_IOV_ITER is not set
# CONFIG_KPROBES_SANITY_TEST is not set
# CONFIG_BACKTRACE_SELF_TEST is not set
@@ -10381,3 +10489,5 @@ CONFIG_MEMTEST=y
#
# end of Rust hacking
# end of Kernel hacking
+
+# CONFIG_INT_POW_TEST is not set
diff --git a/config/kernel/linux-sm8250-current.config b/config/kernel/linux-sm8250-current.config
index 178339236da7..ddf9c912a28e 100644
--- a/config/kernel/linux-sm8250-current.config
+++ b/config/kernel/linux-sm8250-current.config
@@ -642,7 +642,6 @@ CONFIG_ACPI_MCFG=y
CONFIG_ACPI_CPPC_LIB=y
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_IPMI is not set
-CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_THERMAL=y
CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
CONFIG_ACPI_TABLE_UPGRADE=y
@@ -657,6 +656,7 @@ CONFIG_ACPI_NUMA=y
CONFIG_HAVE_ACPI_APEI=y
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
+# CONFIG_ACPI_APEI_PCIEAER is not set
CONFIG_ACPI_APEI_SEA=y
CONFIG_ACPI_APEI_MEMORY_FAILURE=y
CONFIG_ACPI_APEI_EINJ=y
@@ -777,6 +777,7 @@ CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
CONFIG_STRICT_MODULE_RWX=y
CONFIG_HAVE_ARCH_COMPILER_H=y
CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
+CONFIG_ARCH_USE_MEMREMAP_PROT=y
# CONFIG_LOCK_EVENT_COUNTS is not set
CONFIG_ARCH_HAS_RELR=y
CONFIG_HAVE_PREEMPT_DYNAMIC=y
@@ -848,7 +849,6 @@ CONFIG_BLK_MQ_PCI=y
CONFIG_BLK_MQ_VIRTIO=y
CONFIG_BLK_PM=y
CONFIG_BLOCK_HOLDER_DEPRECATED=y
-CONFIG_BLK_MQ_STACKING=y
#
# IO Schedulers
@@ -1574,6 +1574,7 @@ CONFIG_BT_LE_L2CAP_ECRED=y
#
CONFIG_BT_QCA=m
# CONFIG_BT_HCIBTUSB is not set
+# CONFIG_BT_HCIBTSDIO is not set
CONFIG_BT_HCIUART=m
CONFIG_BT_HCIUART_SERDEV=y
CONFIG_BT_HCIUART_H4=y
@@ -1594,6 +1595,7 @@ CONFIG_BT_HCIUART_QCA=y
# CONFIG_BT_HCIBFUSB is not set
# CONFIG_BT_HCIVHCI is not set
# CONFIG_BT_MRVL is not set
+# CONFIG_BT_MTKSDIO is not set
# CONFIG_BT_MTKUART is not set
# CONFIG_BT_QCOMSMD is not set
# CONFIG_BT_VIRTIO is not set
@@ -1626,10 +1628,7 @@ CONFIG_MAC80211_LEDS=y
# CONFIG_MAC80211_MESSAGE_TRACING is not set
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
-CONFIG_RFKILL=m
-CONFIG_RFKILL_LEDS=y
-CONFIG_RFKILL_INPUT=y
-# CONFIG_RFKILL_GPIO is not set
+# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set
# CONFIG_CAIF is not set
# CONFIG_CEPH_LIB is not set
@@ -1639,7 +1638,7 @@ CONFIG_RFKILL_INPUT=y
# CONFIG_LWTUNNEL is not set
CONFIG_DST_CACHE=y
CONFIG_GRO_CELLS=y
-CONFIG_NET_SELFTESTS=y
+CONFIG_NET_SELFTESTS=m
CONFIG_NET_SOCK_MSG=y
CONFIG_NET_DEVLINK=y
CONFIG_PAGE_POOL=y
@@ -1658,19 +1657,21 @@ CONFIG_PCI_DOMAINS=y
CONFIG_PCI_DOMAINS_GENERIC=y
CONFIG_PCI_SYSCALL=y
CONFIG_PCIEPORTBUS=y
-# CONFIG_HOTPLUG_PCI_PCIE is not set
-# CONFIG_PCIEAER is not set
+CONFIG_PCIEAER=y
+# CONFIG_PCIEAER_INJECT is not set
+# CONFIG_PCIE_ECRC is not set
CONFIG_PCIEASPM=y
CONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
+# CONFIG_PCIE_DPC is not set
# CONFIG_PCIE_PTM is not set
CONFIG_PCI_MSI=y
CONFIG_PCI_QUIRKS=y
# CONFIG_PCI_DEBUG is not set
-# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
# CONFIG_PCI_STUB is not set
# CONFIG_PCI_PF_STUB is not set
CONFIG_PCI_ATS=y
@@ -1685,22 +1686,15 @@ CONFIG_PCIE_BUS_DEFAULT=y
# CONFIG_PCIE_BUS_SAFE is not set
# CONFIG_PCIE_BUS_PERFORMANCE is not set
# CONFIG_PCIE_BUS_PEER2PEER is not set
-CONFIG_VGA_ARB=y
-CONFIG_VGA_ARB_MAX_GPUS=16
-CONFIG_HOTPLUG_PCI=y
-CONFIG_HOTPLUG_PCI_ACPI=y
-# CONFIG_HOTPLUG_PCI_ACPI_AMPERE_ALTRA is not set
-# CONFIG_HOTPLUG_PCI_ACPI_IBM is not set
-# CONFIG_HOTPLUG_PCI_CPCI is not set
-# CONFIG_HOTPLUG_PCI_SHPC is not set
+# CONFIG_VGA_ARB is not set
+# CONFIG_HOTPLUG_PCI is not set
#
# PCI controller drivers
#
-CONFIG_PCIE_ALTERA=y
-CONFIG_PCIE_ALTERA_MSI=y
-CONFIG_PCI_HOST_THUNDER_PEM=y
-CONFIG_PCI_HOST_THUNDER_ECAM=y
+# CONFIG_PCIE_ALTERA is not set
+# CONFIG_PCI_HOST_THUNDER_PEM is not set
+# CONFIG_PCI_HOST_THUNDER_ECAM is not set
# CONFIG_PCI_FTPCI100 is not set
CONFIG_PCI_HOST_COMMON=y
CONFIG_PCI_HOST_GENERIC=y
@@ -1726,9 +1720,7 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCI_HISI is not set
# CONFIG_PCIE_KIRIN is not set
# CONFIG_PCIE_DW_PLAT_HOST is not set
-# CONFIG_PCIE_DW_PLAT_EP is not set
CONFIG_PCIE_QCOM=y
-# CONFIG_PCIE_QCOM_EP is not set
# end of DesignWare-based PCIe controllers
#
@@ -1746,11 +1738,7 @@ CONFIG_PCIE_QCOM=y
#
# PCI Endpoint
#
-CONFIG_PCI_ENDPOINT=y
-CONFIG_PCI_ENDPOINT_CONFIGFS=y
-CONFIG_PCI_EPF_TEST=m
-# CONFIG_PCI_EPF_NTB is not set
-# CONFIG_PCI_EPF_MHI is not set
+# CONFIG_PCI_ENDPOINT is not set
# end of PCI Endpoint
#
@@ -1813,7 +1801,6 @@ CONFIG_REGMAP_SPI=y
CONFIG_REGMAP_SPMI=y
CONFIG_REGMAP_MMIO=y
CONFIG_REGMAP_IRQ=y
-CONFIG_REGMAP_SOUNDWIRE=m
CONFIG_DMA_SHARED_BUFFER=y
# CONFIG_DMA_FENCE_TRACE is not set
CONFIG_GENERIC_ARCH_TOPOLOGY=y
@@ -1890,6 +1877,7 @@ CONFIG_EFI_CAPSULE_LOADER=y
# CONFIG_EFI_TEST is not set
# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_EFI_DISABLE_PCI_DMA is not set
+CONFIG_EFI_EARLYCON=y
CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y
# CONFIG_EFI_DISABLE_RUNTIME is not set
# CONFIG_EFI_COCO_SECRET is not set
@@ -2080,10 +2068,12 @@ CONFIG_OF=y
CONFIG_OF_FLATTREE=y
CONFIG_OF_EARLY_FLATTREE=y
CONFIG_OF_KOBJ=y
+CONFIG_OF_DYNAMIC=y
CONFIG_OF_ADDRESS=y
CONFIG_OF_IRQ=y
CONFIG_OF_RESERVED_MEM=y
-# CONFIG_OF_OVERLAY is not set
+CONFIG_OF_RESOLVE=y
+CONFIG_OF_OVERLAY=y
CONFIG_OF_NUMA=y
# CONFIG_PARPORT is not set
CONFIG_PNP=y
@@ -2119,9 +2109,14 @@ CONFIG_VIRTIO_BLK=y
#
# NVME Support
#
-# CONFIG_BLK_DEV_NVME is not set
+CONFIG_NVME_CORE=m
+CONFIG_BLK_DEV_NVME=m
+CONFIG_NVME_MULTIPATH=y
+# CONFIG_NVME_VERBOSE_ERRORS is not set
+CONFIG_NVME_HWMON=y
# CONFIG_NVME_FC is not set
# CONFIG_NVME_TCP is not set
+# CONFIG_NVME_HOST_AUTH is not set
# CONFIG_NVME_TARGET is not set
# end of NVME Support
@@ -2149,7 +2144,7 @@ CONFIG_QCOM_FASTRPC=m
# CONFIG_LATTICE_ECP3_CONFIG is not set
CONFIG_SRAM=y
# CONFIG_DW_XDATA_PCIE is not set
-CONFIG_PCI_ENDPOINT_TEST=m
+# CONFIG_PCI_ENDPOINT_TEST is not set
# CONFIG_XILINX_SDFEC is not set
# CONFIG_HISI_HIKEY_USB is not set
# CONFIG_OPEN_DICE is not set
@@ -2232,6 +2227,7 @@ CONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP is not set
# CONFIG_ISCSI_BOOT_SYSFS is not set
# CONFIG_SCSI_CXGB3_ISCSI is not set
+# CONFIG_SCSI_CXGB4_ISCSI is not set
# CONFIG_SCSI_BNX2_ISCSI is not set
# CONFIG_BE2ISCSI is not set
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
@@ -2288,7 +2284,7 @@ CONFIG_SCSI_MPT3SAS_MAX_SGE=128
CONFIG_ATA=y
CONFIG_SATA_HOST=y
CONFIG_PATA_TIMINGS=y
-CONFIG_ATA_VERBOSE_ERROR=y
+# CONFIG_ATA_VERBOSE_ERROR is not set
CONFIG_ATA_FORCE=y
CONFIG_ATA_ACPI=y
# CONFIG_SATA_ZPODD is not set
@@ -2299,12 +2295,12 @@ CONFIG_SATA_PMP=y
#
CONFIG_SATA_AHCI=y
CONFIG_SATA_MOBILE_LPM_POLICY=0
-CONFIG_SATA_AHCI_PLATFORM=y
+CONFIG_SATA_AHCI_PLATFORM=m
# CONFIG_AHCI_DWC is not set
-CONFIG_AHCI_CEVA=y
+# CONFIG_AHCI_CEVA is not set
# CONFIG_SATA_INIC162X is not set
# CONFIG_SATA_ACARD_AHCI is not set
-CONFIG_SATA_SIL24=y
+# CONFIG_SATA_SIL24 is not set
CONFIG_ATA_SFF=y
#
@@ -2374,8 +2370,7 @@ CONFIG_ATA_BMDMA=y
# CONFIG_PATA_MPIIX is not set
# CONFIG_PATA_NS87410 is not set
# CONFIG_PATA_OPTI is not set
-CONFIG_PATA_PLATFORM=y
-CONFIG_PATA_OF_PLATFORM=y
+# CONFIG_PATA_OF_PLATFORM is not set
# CONFIG_PATA_RZ1000 is not set
#
@@ -2493,16 +2488,94 @@ CONFIG_VETH=m
# CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM is not set
# end of Distributed Switch Architecture drivers
-# CONFIG_ETHERNET is not set
+CONFIG_ETHERNET=y
+# CONFIG_NET_VENDOR_3COM is not set
+# CONFIG_NET_VENDOR_ADAPTEC is not set
+# CONFIG_NET_VENDOR_AGERE is not set
+# CONFIG_NET_VENDOR_ALACRITECH is not set
+# CONFIG_NET_VENDOR_ALTEON is not set
+# CONFIG_ALTERA_TSE is not set
+# CONFIG_NET_VENDOR_AMAZON is not set
+# CONFIG_NET_VENDOR_AMD is not set
+# CONFIG_NET_VENDOR_AQUANTIA is not set
+# CONFIG_NET_VENDOR_ARC is not set
+# CONFIG_NET_VENDOR_ASIX is not set
+# CONFIG_NET_VENDOR_ATHEROS is not set
+# CONFIG_NET_VENDOR_BROADCOM is not set
+# CONFIG_NET_VENDOR_CADENCE is not set
+# CONFIG_NET_VENDOR_CAVIUM is not set
+# CONFIG_NET_VENDOR_CHELSIO is not set
+# CONFIG_NET_VENDOR_CISCO is not set
+# CONFIG_NET_VENDOR_CORTINA is not set
+# CONFIG_NET_VENDOR_DAVICOM is not set
+# CONFIG_DNET is not set
+# CONFIG_NET_VENDOR_DEC is not set
+# CONFIG_NET_VENDOR_DLINK is not set
+# CONFIG_NET_VENDOR_EMULEX is not set
+# CONFIG_NET_VENDOR_ENGLEDER is not set
+# CONFIG_NET_VENDOR_EZCHIP is not set
+# CONFIG_NET_VENDOR_FUNGIBLE is not set
+# CONFIG_NET_VENDOR_GOOGLE is not set
+# CONFIG_NET_VENDOR_HISILICON is not set
+# CONFIG_NET_VENDOR_HUAWEI is not set
+# CONFIG_NET_VENDOR_INTEL is not set
+# CONFIG_JME is not set
+# CONFIG_NET_VENDOR_ADI is not set
+# CONFIG_NET_VENDOR_LITEX is not set
+# CONFIG_NET_VENDOR_MARVELL is not set
+# CONFIG_NET_VENDOR_MELLANOX is not set
+# CONFIG_NET_VENDOR_MICREL is not set
+# CONFIG_NET_VENDOR_MICROCHIP is not set
+# CONFIG_NET_VENDOR_MICROSEMI is not set
+# CONFIG_NET_VENDOR_MICROSOFT is not set
+# CONFIG_NET_VENDOR_MYRI is not set
+# CONFIG_FEALNX is not set
+# CONFIG_NET_VENDOR_NI is not set
+# CONFIG_NET_VENDOR_NATSEMI is not set
+# CONFIG_NET_VENDOR_NETERION is not set
+# CONFIG_NET_VENDOR_NETRONOME is not set
+# CONFIG_NET_VENDOR_NVIDIA is not set
+# CONFIG_NET_VENDOR_OKI is not set
+# CONFIG_ETHOC is not set
+# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
+# CONFIG_NET_VENDOR_PENSANDO is not set
+# CONFIG_NET_VENDOR_QLOGIC is not set
+# CONFIG_NET_VENDOR_BROCADE is not set
+# CONFIG_NET_VENDOR_QUALCOMM is not set
+# CONFIG_NET_VENDOR_RDC is not set
+CONFIG_NET_VENDOR_REALTEK=y
+# CONFIG_8139CP is not set
+# CONFIG_8139TOO is not set
+CONFIG_R8169=m
+CONFIG_R8169_LEDS=y
+# CONFIG_NET_VENDOR_RENESAS is not set
+# CONFIG_NET_VENDOR_ROCKER is not set
+# CONFIG_NET_VENDOR_SAMSUNG is not set
+# CONFIG_NET_VENDOR_SEEQ is not set
+# CONFIG_NET_VENDOR_SILAN is not set
+# CONFIG_NET_VENDOR_SIS is not set
+# CONFIG_NET_VENDOR_SOLARFLARE is not set
+# CONFIG_NET_VENDOR_SMSC is not set
+# CONFIG_NET_VENDOR_SOCIONEXT is not set
+# CONFIG_NET_VENDOR_STMICRO is not set
+# CONFIG_NET_VENDOR_SUN is not set
+# CONFIG_NET_VENDOR_SYNOPSYS is not set
+# CONFIG_NET_VENDOR_TEHUTI is not set
+# CONFIG_NET_VENDOR_TI is not set
+# CONFIG_NET_VENDOR_VERTEXCOM is not set
+# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
+# CONFIG_NET_VENDOR_WIZNET is not set
+# CONFIG_NET_VENDOR_XILINX is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
CONFIG_QCOM_IPA=m
CONFIG_PHYLINK=m
-CONFIG_PHYLIB=y
+CONFIG_PHYLIB=m
CONFIG_SWPHY=y
# CONFIG_LED_TRIGGER_PHY is not set
CONFIG_PHYLIB_LEDS=y
-CONFIG_FIXED_PHY=y
+CONFIG_FIXED_PHY=m
# CONFIG_SFP is not set
#
@@ -2512,7 +2585,7 @@ CONFIG_FIXED_PHY=y
# CONFIG_AMD_PHY is not set
# CONFIG_ADIN_PHY is not set
# CONFIG_ADIN1100_PHY is not set
-CONFIG_AQUANTIA_PHY=y
+# CONFIG_AQUANTIA_PHY is not set
CONFIG_AX88796B_PHY=m
# CONFIG_BROADCOM_PHY is not set
# CONFIG_BCM54140_PHY is not set
@@ -2534,7 +2607,7 @@ CONFIG_AX88796B_PHY=m
# CONFIG_MEDIATEK_GE_PHY is not set
# CONFIG_MICREL_PHY is not set
# CONFIG_MICROCHIP_T1S_PHY is not set
-CONFIG_MICROCHIP_PHY=m
+# CONFIG_MICROCHIP_PHY is not set
# CONFIG_MICROCHIP_T1_PHY is not set
# CONFIG_MICROSEMI_PHY is not set
# CONFIG_MOTORCOMM_PHY is not set
@@ -2549,7 +2622,7 @@ CONFIG_AT803X_PHY=y
# CONFIG_QCA808X_PHY is not set
# CONFIG_QCA807X_PHY is not set
# CONFIG_QSEMI_PHY is not set
-# CONFIG_REALTEK_PHY is not set
+CONFIG_REALTEK_PHY=m
# CONFIG_RENESAS_PHY is not set
# CONFIG_ROCKCHIP_PHY is not set
CONFIG_SMSC_PHY=m
@@ -2566,30 +2639,28 @@ CONFIG_VITESSE_PHY=y
# CONFIG_XILINX_GMII2RGMII is not set
# CONFIG_MICREL_KS8995MA is not set
# CONFIG_PSE_CONTROLLER is not set
-CONFIG_MDIO_DEVICE=y
-CONFIG_MDIO_BUS=y
-CONFIG_FWNODE_MDIO=y
-CONFIG_OF_MDIO=y
-CONFIG_ACPI_MDIO=y
-CONFIG_MDIO_DEVRES=y
+CONFIG_MDIO_DEVICE=m
+CONFIG_MDIO_BUS=m
+CONFIG_FWNODE_MDIO=m
+CONFIG_OF_MDIO=m
+CONFIG_ACPI_MDIO=m
+CONFIG_MDIO_DEVRES=m
# CONFIG_MDIO_BITBANG is not set
-CONFIG_MDIO_BCM_UNIMAC=m
-CONFIG_MDIO_CAVIUM=y
+# CONFIG_MDIO_BCM_UNIMAC is not set
# CONFIG_MDIO_HISI_FEMAC is not set
# CONFIG_MDIO_MVUSB is not set
# CONFIG_MDIO_MSCC_MIIM is not set
# CONFIG_MDIO_OCTEON is not set
# CONFIG_MDIO_IPQ4019 is not set
# CONFIG_MDIO_IPQ8064 is not set
-CONFIG_MDIO_THUNDER=y
+# CONFIG_MDIO_THUNDER is not set
#
# MDIO Multiplexers
#
-CONFIG_MDIO_BUS_MUX=y
# CONFIG_MDIO_BUS_MUX_GPIO is not set
-CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y
-CONFIG_MDIO_BUS_MUX_MMIOREG=y
+# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
+# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
#
# PCS device drivers
@@ -2604,16 +2675,16 @@ CONFIG_USB_NET_DRIVERS=y
# CONFIG_USB_KAWETH is not set
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
-# CONFIG_USB_RTL8152 is not set
+CONFIG_USB_RTL8152=m
# CONFIG_USB_LAN78XX is not set
CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=m
CONFIG_USB_NET_AX88179_178A=m
CONFIG_USB_NET_CDCETHER=m
-# CONFIG_USB_NET_CDC_EEM is not set
+CONFIG_USB_NET_CDC_EEM=m
CONFIG_USB_NET_CDC_NCM=m
-# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set
-# CONFIG_USB_NET_CDC_MBIM is not set
+CONFIG_USB_NET_HUAWEI_CDC_NCM=m
+CONFIG_USB_NET_CDC_MBIM=m
CONFIG_USB_NET_DM9601=m
# CONFIG_USB_NET_SR9700 is not set
CONFIG_USB_NET_SR9800=m
@@ -2635,11 +2706,10 @@ CONFIG_USB_ARMLINUX=y
CONFIG_USB_NET_ZAURUS=m
# CONFIG_USB_NET_CX82310_ETH is not set
# CONFIG_USB_NET_KALMIA is not set
-# CONFIG_USB_NET_QMI_WWAN is not set
-# CONFIG_USB_HSO is not set
+CONFIG_USB_NET_QMI_WWAN=m
# CONFIG_USB_NET_INT51X1 is not set
-# CONFIG_USB_IPHETH is not set
-# CONFIG_USB_SIERRA_NET is not set
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
# CONFIG_USB_VL600 is not set
# CONFIG_USB_NET_CH9200 is not set
# CONFIG_USB_NET_AQC111 is not set
@@ -2672,13 +2742,11 @@ CONFIG_ATH11K_PCI=m
# CONFIG_WLAN_VENDOR_MARVELL is not set
# CONFIG_WLAN_VENDOR_MEDIATEK is not set
# CONFIG_WLAN_VENDOR_MICROCHIP is not set
-CONFIG_WLAN_VENDOR_PURELIFI=y
-# CONFIG_PLFXLC is not set
+# CONFIG_WLAN_VENDOR_PURELIFI is not set
# CONFIG_WLAN_VENDOR_RALINK is not set
# CONFIG_WLAN_VENDOR_REALTEK is not set
# CONFIG_WLAN_VENDOR_RSI is not set
-CONFIG_WLAN_VENDOR_SILABS=y
-# CONFIG_WFX is not set
+# CONFIG_WLAN_VENDOR_SILABS is not set
# CONFIG_WLAN_VENDOR_ST is not set
# CONFIG_WLAN_VENDOR_TI is not set
# CONFIG_WLAN_VENDOR_ZYDAS is not set
@@ -2721,7 +2789,7 @@ CONFIG_INPUT_EVDEV=y
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
-CONFIG_KEYBOARD_ADC=m
+# CONFIG_KEYBOARD_ADC is not set
# CONFIG_KEYBOARD_ADP5588 is not set
# CONFIG_KEYBOARD_ADP5589 is not set
CONFIG_KEYBOARD_ATKBD=y
@@ -2776,7 +2844,37 @@ CONFIG_MOUSE_PS2_SMBUS=y
# CONFIG_MOUSE_GPIO is not set
# CONFIG_MOUSE_SYNAPTICS_I2C is not set
# CONFIG_MOUSE_SYNAPTICS_USB is not set
-# CONFIG_INPUT_JOYSTICK is not set
+CONFIG_INPUT_JOYSTICK=y
+# CONFIG_JOYSTICK_ANALOG is not set
+# CONFIG_JOYSTICK_A3D is not set
+# CONFIG_JOYSTICK_ADC is not set
+# CONFIG_JOYSTICK_ADI is not set
+# CONFIG_JOYSTICK_COBRA is not set
+# CONFIG_JOYSTICK_GF2K is not set
+# CONFIG_JOYSTICK_GRIP is not set
+# CONFIG_JOYSTICK_GRIP_MP is not set
+# CONFIG_JOYSTICK_GUILLEMOT is not set
+# CONFIG_JOYSTICK_INTERACT is not set
+# CONFIG_JOYSTICK_SIDEWINDER is not set
+# CONFIG_JOYSTICK_TMDC is not set
+# CONFIG_JOYSTICK_IFORCE is not set
+# CONFIG_JOYSTICK_WARRIOR is not set
+# CONFIG_JOYSTICK_MAGELLAN is not set
+# CONFIG_JOYSTICK_SPACEORB is not set
+# CONFIG_JOYSTICK_SPACEBALL is not set
+# CONFIG_JOYSTICK_STINGER is not set
+# CONFIG_JOYSTICK_TWIDJOY is not set
+# CONFIG_JOYSTICK_ZHENHUA is not set
+# CONFIG_JOYSTICK_AS5011 is not set
+# CONFIG_JOYSTICK_JOYDUMP is not set
+# CONFIG_JOYSTICK_XPAD is not set
+CONFIG_JOYSTICK_ODIN2=m
+# CONFIG_JOYSTICK_PSXPAD_SPI is not set
+# CONFIG_JOYSTICK_PXRC is not set
+# CONFIG_JOYSTICK_QWIIC is not set
+# CONFIG_JOYSTICK_FSIA6B is not set
+# CONFIG_JOYSTICK_SENSEHAT is not set
+# CONFIG_JOYSTICK_SEESAW is not set
# CONFIG_INPUT_TABLET is not set
CONFIG_INPUT_TOUCHSCREEN=y
CONFIG_TOUCHSCREEN_NT36523_SPI=m
@@ -2830,7 +2928,7 @@ CONFIG_TOUCHSCREEN_SYNAPTICS_TCM_ONCELL=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
# CONFIG_TOUCHSCREEN_INEXIO is not set
# CONFIG_TOUCHSCREEN_PENMOUNT is not set
-# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
+CONFIG_TOUCHSCREEN_EDT_FT5X06=m
# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
# CONFIG_TOUCHSCREEN_PIXCIR is not set
@@ -2864,6 +2962,7 @@ CONFIG_INPUT_MISC=y
# CONFIG_INPUT_E3X0_BUTTON is not set
CONFIG_INPUT_PM8941_PWRKEY=y
CONFIG_INPUT_PM8XXX_VIBRATOR=m
+CONFIG_INPUT_QCOM_SPMI_HAPTICS=m
# CONFIG_INPUT_MMA8450 is not set
# CONFIG_INPUT_GPIO_BEEPER is not set
# CONFIG_INPUT_GPIO_DECODER is not set
@@ -2931,22 +3030,26 @@ CONFIG_LDISC_AUTOLOAD=y
#
# Serial drivers
#
+CONFIG_SERIAL_EARLYCON=y
# CONFIG_SERIAL_8250 is not set
#
# Non-8250 serial port support
#
# CONFIG_SERIAL_AMBA_PL010 is not set
-# CONFIG_SERIAL_AMBA_PL011 is not set
-# CONFIG_SERIAL_EARLYCON_SEMIHOST is not set
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_EARLYCON_SEMIHOST=y
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
# CONFIG_SERIAL_UARTLITE is not set
CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
# CONFIG_SERIAL_JSM is not set
-# CONFIG_SERIAL_MSM is not set
+CONFIG_SERIAL_MSM=y
+CONFIG_SERIAL_MSM_CONSOLE=y
CONFIG_SERIAL_QCOM_GENI=y
-# CONFIG_SERIAL_QCOM_GENI_CONSOLE is not set
+CONFIG_SERIAL_QCOM_GENI_CONSOLE=y
# CONFIG_SERIAL_SIFIVE is not set
# CONFIG_SERIAL_SCCNXP is not set
# CONFIG_SERIAL_SC16IS7XX is not set
@@ -2981,7 +3084,7 @@ CONFIG_IPMI_SI=m
# CONFIG_IPMI_SSIF is not set
# CONFIG_IPMI_WATCHDOG is not set
# CONFIG_IPMI_POWEROFF is not set
-CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM=y
# CONFIG_HW_RANDOM_TIMERIOMEM is not set
# CONFIG_HW_RANDOM_BA431 is not set
# CONFIG_HW_RANDOM_VIRTIO is not set
@@ -3219,7 +3322,7 @@ CONFIG_GENERIC_PINCONF=y
# CONFIG_PINCTRL_AXP209 is not set
# CONFIG_PINCTRL_AW9523 is not set
# CONFIG_PINCTRL_CY8C95X0 is not set
-CONFIG_PINCTRL_MAX77620=y
+CONFIG_PINCTRL_MAX77620=m
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
# CONFIG_PINCTRL_OCELOT is not set
@@ -3273,7 +3376,7 @@ CONFIG_PINCTRL_LPASS_LPI=m
# CONFIG_PINCTRL_SC7280_LPASS_LPI is not set
# CONFIG_PINCTRL_SM4250_LPASS_LPI is not set
# CONFIG_PINCTRL_SM6115_LPASS_LPI is not set
-CONFIG_PINCTRL_SM8250_LPASS_LPI=m
+CONFIG_PINCTRL_SM8250_LPASS_LPI=y
# CONFIG_PINCTRL_SM8350_LPASS_LPI is not set
# CONFIG_PINCTRL_SM8450_LPASS_LPI is not set
# CONFIG_PINCTRL_SC8280XP_LPASS_LPI is not set
@@ -3417,8 +3520,8 @@ CONFIG_POWER_SUPPLY_HWMON=y
# CONFIG_BATTERY_SBS is not set
# CONFIG_CHARGER_SBS is not set
# CONFIG_MANAGER_SBS is not set
-CONFIG_BATTERY_BQ27XXX=y
-CONFIG_BATTERY_BQ27XXX_I2C=y
+CONFIG_BATTERY_BQ27XXX=m
+CONFIG_BATTERY_BQ27XXX_I2C=m
# CONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM is not set
# CONFIG_AXP20X_POWER is not set
# CONFIG_BATTERY_MAX17040 is not set
@@ -3455,6 +3558,8 @@ CONFIG_BATTERY_BQ27XXX_I2C=y
# CONFIG_CHARGER_BD99954 is not set
# CONFIG_BATTERY_UG3105 is not set
# CONFIG_CHARGER_QCOM_SMB2 is not set
+CONFIG_CHARGER_QCOM_SMB5=m
+CONFIG_BATTERY_QCOM_FG=m
# CONFIG_FUEL_GAUGE_MM8013 is not set
CONFIG_HWMON=y
# CONFIG_HWMON_DEBUG_CHIP is not set
@@ -3465,6 +3570,7 @@ CONFIG_HWMON=y
# CONFIG_SENSORS_AD7314 is not set
# CONFIG_SENSORS_AD7414 is not set
# CONFIG_SENSORS_AD7418 is not set
+# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
# CONFIG_SENSORS_ADM1029 is not set
@@ -3539,6 +3645,7 @@ CONFIG_SENSORS_ARM_SCPI=y
# CONFIG_SENSORS_MAX6620 is not set
# CONFIG_SENSORS_MAX6621 is not set
# CONFIG_SENSORS_MAX6639 is not set
+# CONFIG_SENSORS_MAX6642 is not set
# CONFIG_SENSORS_MAX6650 is not set
# CONFIG_SENSORS_MAX6697 is not set
# CONFIG_SENSORS_MAX31790 is not set
@@ -3558,7 +3665,7 @@ CONFIG_SENSORS_ARM_SCPI=y
# CONFIG_SENSORS_LM83 is not set
# CONFIG_SENSORS_LM85 is not set
# CONFIG_SENSORS_LM87 is not set
-CONFIG_SENSORS_LM90=m
+# CONFIG_SENSORS_LM90 is not set
# CONFIG_SENSORS_LM92 is not set
# CONFIG_SENSORS_LM93 is not set
# CONFIG_SENSORS_LM95234 is not set
@@ -3605,7 +3712,7 @@ CONFIG_SENSORS_PWM_FAN=m
# CONFIG_SENSORS_ADS7871 is not set
# CONFIG_SENSORS_AMC6821 is not set
# CONFIG_SENSORS_INA209 is not set
-CONFIG_SENSORS_INA2XX=m
+# CONFIG_SENSORS_INA2XX is not set
# CONFIG_SENSORS_INA238 is not set
CONFIG_SENSORS_INA3221=m
# CONFIG_SENSORS_SPD5118 is not set
@@ -3651,11 +3758,11 @@ CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
CONFIG_THERMAL_GOV_STEP_WISE=y
# CONFIG_THERMAL_GOV_BANG_BANG is not set
-# CONFIG_THERMAL_GOV_USER_SPACE is not set
+CONFIG_THERMAL_GOV_USER_SPACE=y
CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
CONFIG_CPU_THERMAL=y
CONFIG_CPU_FREQ_THERMAL=y
-# CONFIG_DEVFREQ_THERMAL is not set
+CONFIG_DEVFREQ_THERMAL=y
CONFIG_THERMAL_EMULATION=y
# CONFIG_THERMAL_MMIO is not set
# CONFIG_MAX77620_THERMAL is not set
@@ -3958,6 +4065,7 @@ CONFIG_REGULATOR_VCTRL=m
# CONFIG_REGULATOR_VQMMC_IPQ4019 is not set
# CONFIG_REGULATOR_QCOM_LABIBB is not set
# CONFIG_RC_CORE is not set
+CONFIG_CEC_CORE=y
#
# CEC support
@@ -4337,6 +4445,7 @@ CONFIG_DRM_PANEL=y
# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
# CONFIG_DRM_PANEL_BOE_TH101MB31UIG002_28A is not set
# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
+CONFIG_DRM_PANEL_DDIC_CH13726A=m
# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
@@ -4449,16 +4558,16 @@ CONFIG_DRM_LONTIUM_LT9611UXC=m
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_LVDS_CODEC is not set
# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
-CONFIG_DRM_NWL_MIPI_DSI=m
+# CONFIG_DRM_NWL_MIPI_DSI is not set
# CONFIG_DRM_NXP_PTN3460 is not set
# CONFIG_DRM_PARADE_PS8622 is not set
-CONFIG_DRM_PARADE_PS8640=m
+# CONFIG_DRM_PARADE_PS8640 is not set
# CONFIG_DRM_SAMSUNG_DSIM is not set
# CONFIG_DRM_SIL_SII8620 is not set
-CONFIG_DRM_SII902X=m
+# CONFIG_DRM_SII902X is not set
# CONFIG_DRM_SII9234 is not set
CONFIG_DRM_SIMPLE_BRIDGE=m
-CONFIG_DRM_THINE_THC63LVD1024=m
+# CONFIG_DRM_THINE_THC63LVD1024 is not set
# CONFIG_DRM_TOSHIBA_TC358762 is not set
# CONFIG_DRM_TOSHIBA_TC358764 is not set
# CONFIG_DRM_TOSHIBA_TC358767 is not set
@@ -4603,7 +4712,7 @@ CONFIG_DUMMY_CONSOLE_ROWS=25
CONFIG_FRAMEBUFFER_CONSOLE=y
# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
# end of Console display driver support
@@ -4631,11 +4740,14 @@ CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_MAX_CARDS=32
CONFIG_SND_SUPPORT_OLD_API=y
CONFIG_SND_PROC_FS=y
-CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
+# CONFIG_SND_VERBOSE_PROCFS is not set
+CONFIG_SND_VERBOSE_PRINTK=y
CONFIG_SND_CTL_FAST_LOOKUP=y
-# CONFIG_SND_DEBUG is not set
+CONFIG_SND_DEBUG=y
+CONFIG_SND_DEBUG_VERBOSE=y
# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_JACK_INJECTION_DEBUG is not set
# CONFIG_SND_SEQUENCER is not set
CONFIG_SND_DRIVERS=y
# CONFIG_SND_DUMMY is not set
@@ -4684,8 +4796,7 @@ CONFIG_SND_SOC_TOPOLOGY=y
# Common SoC Audio options for Freescale CPUs:
#
CONFIG_SND_SOC_FSL_ASRC=m
-CONFIG_SND_SOC_FSL_SAI=m
-# CONFIG_SND_SOC_FSL_MQS is not set
+# CONFIG_SND_SOC_FSL_SAI is not set
# CONFIG_SND_SOC_FSL_AUDMIX is not set
# CONFIG_SND_SOC_FSL_SSI is not set
# CONFIG_SND_SOC_FSL_SPDIF is not set
@@ -4695,7 +4806,7 @@ CONFIG_SND_SOC_FSL_EASRC=m
# CONFIG_SND_SOC_FSL_XCVR is not set
CONFIG_SND_SOC_FSL_UTILS=m
# CONFIG_SND_SOC_FSL_RPMSG is not set
-# CONFIG_SND_SOC_IMX_AUDMUX is not set
+CONFIG_SND_SOC_IMX_AUDMUX=m
# end of SoC Audio for Freescale CPUs
# CONFIG_SND_SOC_CHV3_I2S is not set
@@ -4703,13 +4814,10 @@ CONFIG_SND_SOC_FSL_UTILS=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_MTK_BTCVSD is not set
CONFIG_SND_SOC_QCOM=y
-CONFIG_SND_SOC_LPASS_CPU=m
-CONFIG_SND_SOC_LPASS_PLATFORM=m
-CONFIG_SND_SOC_LPASS_APQ8016=m
# CONFIG_SND_SOC_STORM is not set
-CONFIG_SND_SOC_APQ8016_SBC=m
-CONFIG_SND_SOC_QCOM_COMMON=y
-CONFIG_SND_SOC_QCOM_SDW=y
+# CONFIG_SND_SOC_APQ8016_SBC is not set
+CONFIG_SND_SOC_QCOM_COMMON=m
+CONFIG_SND_SOC_QCOM_SDW=m
CONFIG_SND_SOC_QDSP6_COMMON=y
CONFIG_SND_SOC_QDSP6_CORE=y
CONFIG_SND_SOC_QDSP6_AFE=y
@@ -4727,7 +4835,7 @@ CONFIG_SND_SOC_QDSP6_PRM=y
CONFIG_SND_SOC_QDSP6=y
# CONFIG_SND_SOC_MSM8996 is not set
# CONFIG_SND_SOC_SDM845 is not set
-CONFIG_SND_SOC_SM8250=y
+CONFIG_SND_SOC_SM8250=m
# CONFIG_SND_SOC_SC8280XP is not set
# CONFIG_SND_SOC_SC7180 is not set
# CONFIG_SND_SOC_SC7280 is not set
@@ -4919,9 +5027,7 @@ CONFIG_SND_SOC_HDMI_CODEC=y
# CONFIG_SND_SOC_TSCS42XX is not set
# CONFIG_SND_SOC_TSCS454 is not set
# CONFIG_SND_SOC_UDA1334 is not set
-CONFIG_SND_SOC_WCD_CLASSH=m
# CONFIG_SND_SOC_WCD9335 is not set
-CONFIG_SND_SOC_WCD_MBHC=m
# CONFIG_SND_SOC_WCD934X is not set
# CONFIG_SND_SOC_WCD937X_SDW is not set
CONFIG_SND_SOC_WCD938X=m
@@ -4953,7 +5059,7 @@ CONFIG_SND_SOC_WCD938X_SDW=m
# CONFIG_SND_SOC_WM8974 is not set
# CONFIG_SND_SOC_WM8978 is not set
# CONFIG_SND_SOC_WM8985 is not set
-# CONFIG_SND_SOC_WSA881X is not set
+CONFIG_SND_SOC_WSA881X=m
# CONFIG_SND_SOC_WSA883X is not set
# CONFIG_SND_SOC_WSA884X is not set
# CONFIG_SND_SOC_ZL38060 is not set
@@ -4968,9 +5074,9 @@ CONFIG_SND_SOC_WCD938X_SDW=m
# CONFIG_SND_SOC_NAU8822 is not set
# CONFIG_SND_SOC_NAU8824 is not set
# CONFIG_SND_SOC_TPA6130A2 is not set
-CONFIG_SND_SOC_LPASS_MACRO_COMMON=y
-CONFIG_SND_SOC_LPASS_WSA_MACRO=y
-CONFIG_SND_SOC_LPASS_VA_MACRO=y
+CONFIG_SND_SOC_LPASS_MACRO_COMMON=m
+# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
CONFIG_SND_SOC_LPASS_RX_MACRO=m
CONFIG_SND_SOC_LPASS_TX_MACRO=m
# end of CODEC drivers
@@ -5069,6 +5175,7 @@ CONFIG_HID_NINTENDO=m
# CONFIG_HID_PETALYNX is not set
# CONFIG_HID_PICOLCD is not set
# CONFIG_HID_PLANTRONICS is not set
+# CONFIG_HID_PLAYSTATION is not set
# CONFIG_HID_PXRC is not set
# CONFIG_HID_RAZER is not set
# CONFIG_HID_PRIMAX is not set
@@ -5182,7 +5289,7 @@ CONFIG_USB_OHCI_HCD_PLATFORM=y
#
CONFIG_USB_ACM=m
# CONFIG_USB_PRINTER is not set
-# CONFIG_USB_WDM is not set
+CONFIG_USB_WDM=m
# CONFIG_USB_TMC is not set
#
@@ -5344,7 +5451,7 @@ CONFIG_USB_SERIAL_OPTION=m
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_IDMOUSE is not set
# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_USB_QCOM_EUD is not set
+CONFIG_USB_QCOM_EUD=m
# CONFIG_APPLE_MFI_FASTCHARGE is not set
# CONFIG_USB_LJCA is not set
# CONFIG_USB_SISUSBVGA is not set
@@ -5463,10 +5570,15 @@ CONFIG_TYPEC=y
CONFIG_TYPEC_TCPM=m
CONFIG_TYPEC_TCPCI=m
# CONFIG_TYPEC_RT1711H is not set
+# CONFIG_TYPEC_MT6360 is not set
# CONFIG_TYPEC_TCPCI_MAXIM is not set
-# CONFIG_TYPEC_FUSB302 is not set
+CONFIG_TYPEC_FUSB302=m
CONFIG_TYPEC_QCOM_PMIC=m
-# CONFIG_TYPEC_UCSI is not set
+CONFIG_TYPEC_UCSI=m
+CONFIG_UCSI_CCG=m
+# CONFIG_UCSI_ACPI is not set
+# CONFIG_UCSI_STM32G0 is not set
+CONFIG_UCSI_PMIC_GLINK=m
CONFIG_TYPEC_TPS6598X=m
# CONFIG_TYPEC_ANX7411 is not set
# CONFIG_TYPEC_RT1719 is not set
@@ -5477,11 +5589,11 @@ CONFIG_TYPEC_HD3SS3220=m
#
# USB Type-C Multiplexer/DeMultiplexer Switch support
#
-# CONFIG_TYPEC_MUX_FSA4480 is not set
-# CONFIG_TYPEC_MUX_GPIO_SBU is not set
+CONFIG_TYPEC_MUX_FSA4480=m
+CONFIG_TYPEC_MUX_GPIO_SBU=m
# CONFIG_TYPEC_MUX_PI3USB30532 is not set
# CONFIG_TYPEC_MUX_IT5205 is not set
-# CONFIG_TYPEC_MUX_NB7VPQ904M is not set
+CONFIG_TYPEC_MUX_NB7VPQ904M=m
# CONFIG_TYPEC_MUX_PTN36502 is not set
# CONFIG_TYPEC_MUX_WCD939X_USBSS is not set
# end of USB Type-C Multiplexer/DeMultiplexer Switch support
@@ -5489,11 +5601,72 @@ CONFIG_TYPEC_HD3SS3220=m
#
# USB Type-C Alternate Mode drivers
#
-# CONFIG_TYPEC_DP_ALTMODE is not set
+CONFIG_TYPEC_DP_ALTMODE=m
+# CONFIG_TYPEC_NVIDIA_ALTMODE is not set
# end of USB Type-C Alternate Mode drivers
CONFIG_USB_ROLE_SWITCH=y
-# CONFIG_MMC is not set
+CONFIG_MMC=y
+CONFIG_PWRSEQ_EMMC=y
+# CONFIG_PWRSEQ_SD8787 is not set
+CONFIG_PWRSEQ_SIMPLE=y
+CONFIG_MMC_BLOCK=y
+CONFIG_MMC_BLOCK_MINORS=32
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+# CONFIG_MMC_DEBUG is not set
+CONFIG_MMC_ARMMMCI=y
+CONFIG_MMC_QCOM_DML=y
+# CONFIG_MMC_STM32_SDMMC is not set
+CONFIG_MMC_SDHCI=y
+CONFIG_MMC_SDHCI_IO_ACCESSORS=y
+# CONFIG_MMC_SDHCI_PCI is not set
+# CONFIG_MMC_SDHCI_ACPI is not set
+CONFIG_MMC_SDHCI_PLTFM=y
+# CONFIG_MMC_SDHCI_OF_ARASAN is not set
+# CONFIG_MMC_SDHCI_OF_AT91 is not set
+# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
+# CONFIG_MMC_SDHCI_OF_SPARX5 is not set
+# CONFIG_MMC_SDHCI_CADENCE is not set
+# CONFIG_MMC_SDHCI_ESDHC_IMX is not set
+# CONFIG_MMC_SDHCI_TEGRA is not set
+# CONFIG_MMC_SDHCI_S3C is not set
+# CONFIG_MMC_SDHCI_PXAV3 is not set
+# CONFIG_MMC_SDHCI_F_SDH30 is not set
+# CONFIG_MMC_SDHCI_MILBEAUT is not set
+# CONFIG_MMC_SDHCI_IPROC is not set
+# CONFIG_MMC_SDHCI_NPCM is not set
+# CONFIG_MMC_MESON_GX is not set
+# CONFIG_MMC_MESON_MX_SDIO is not set
+CONFIG_MMC_SDHCI_MSM=y
+# CONFIG_MMC_MXC is not set
+# CONFIG_MMC_TIFM_SD is not set
+# CONFIG_MMC_SPI is not set
+# CONFIG_MMC_SDHCI_SPRD is not set
+# CONFIG_MMC_SDHI is not set
+# CONFIG_MMC_UNIPHIER is not set
+# CONFIG_MMC_CB710 is not set
+# CONFIG_MMC_VIA_SDMMC is not set
+# CONFIG_MMC_DW is not set
+# CONFIG_MMC_SH_MMCIF is not set
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MMC_USDHI6ROL0 is not set
+# CONFIG_MMC_SUNXI is not set
+CONFIG_MMC_CQHCI=y
+# CONFIG_MMC_HSQ is not set
+# CONFIG_MMC_TOSHIBA_PCI is not set
+# CONFIG_MMC_BCM2835 is not set
+# CONFIG_MMC_MTK is not set
+# CONFIG_MMC_SDHCI_BRCMSTB is not set
+# CONFIG_MMC_SDHCI_XENON is not set
+# CONFIG_MMC_SDHCI_AM654 is not set
+# CONFIG_MMC_OWL is not set
CONFIG_SCSI_UFSHCD=y
CONFIG_SCSI_UFS_BSG=y
# CONFIG_SCSI_UFS_HWMON is not set
@@ -5506,7 +5679,7 @@ CONFIG_SCSI_UFS_QCOM=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
# CONFIG_LEDS_CLASS_FLASH is not set
-# CONFIG_LEDS_CLASS_MULTICOLOR is not set
+CONFIG_LEDS_CLASS_MULTICOLOR=y
# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
#
@@ -5519,14 +5692,14 @@ CONFIG_LEDS_CLASS=y
# CONFIG_LEDS_BCM6358 is not set
# CONFIG_LEDS_CR0014114 is not set
# CONFIG_LEDS_EL15203000 is not set
+CONFIG_LEDS_HTR3212=m
# CONFIG_LEDS_LM3530 is not set
# CONFIG_LEDS_LM3532 is not set
# CONFIG_LEDS_LM3642 is not set
-CONFIG_LEDS_LM3692X=m
+# CONFIG_LEDS_LM3692X is not set
# CONFIG_LEDS_MT6323 is not set
-CONFIG_LEDS_PCA9532=m
-# CONFIG_LEDS_PCA9532_GPIO is not set
-CONFIG_LEDS_GPIO=y
+# CONFIG_LEDS_PCA9532 is not set
+CONFIG_LEDS_GPIO=m
# CONFIG_LEDS_LP3944 is not set
# CONFIG_LEDS_LP3952 is not set
# CONFIG_LEDS_LP8860 is not set
@@ -5534,7 +5707,7 @@ CONFIG_LEDS_GPIO=y
# CONFIG_LEDS_PCA963X is not set
# CONFIG_LEDS_PCA995X is not set
# CONFIG_LEDS_DAC124S085 is not set
-CONFIG_LEDS_PWM=y
+CONFIG_LEDS_PWM=m
# CONFIG_LEDS_REGULATOR is not set
# CONFIG_LEDS_BD2606MVV is not set
# CONFIG_LEDS_BD2802 is not set
@@ -5551,7 +5724,7 @@ CONFIG_LEDS_PWM=y
# CONFIG_LEDS_BLINKM is not set
CONFIG_LEDS_SYSCON=y
# CONFIG_LEDS_MLXREG is not set
-# CONFIG_LEDS_USER is not set
+CONFIG_LEDS_USER=m
# CONFIG_LEDS_SPI_BYTE is not set
# CONFIG_LEDS_LM3697 is not set
@@ -5562,6 +5735,11 @@ CONFIG_LEDS_SYSCON=y
#
# RGB LED drivers
#
+CONFIG_LEDS_GROUP_MULTICOLOR=y
+# CONFIG_LEDS_KTD202X is not set
+# CONFIG_LEDS_NCP5623 is not set
+CONFIG_LEDS_PWM_MULTICOLOR=y
+CONFIG_LEDS_QCOM_LPG=y
#
# LED Triggers
@@ -5570,11 +5748,10 @@ CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=y
# CONFIG_LEDS_TRIGGER_ONESHOT is not set
CONFIG_LEDS_TRIGGER_DISK=y
-# CONFIG_LEDS_TRIGGER_MTD is not set
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
CONFIG_LEDS_TRIGGER_CPU=y
-# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
# CONFIG_LEDS_TRIGGER_GPIO is not set
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
@@ -5584,7 +5761,7 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
# CONFIG_LEDS_TRIGGER_CAMERA is not set
CONFIG_LEDS_TRIGGER_PANIC=y
-# CONFIG_LEDS_TRIGGER_NETDEV is not set
+CONFIG_LEDS_TRIGGER_NETDEV=m
# CONFIG_LEDS_TRIGGER_PATTERN is not set
# CONFIG_LEDS_TRIGGER_TTY is not set
# CONFIG_LEDS_TRIGGER_INPUT_EVENTS is not set
@@ -5883,15 +6060,15 @@ CONFIG_COMMON_CLK_SCPI=y
# CONFIG_COMMON_CLK_SI570 is not set
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
-CONFIG_COMMON_CLK_CS2000_CP=y
-CONFIG_COMMON_CLK_S2MPS11=y
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+# CONFIG_COMMON_CLK_S2MPS11 is not set
# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
# CONFIG_COMMON_CLK_XGENE is not set
CONFIG_COMMON_CLK_PWM=y
# CONFIG_COMMON_CLK_RS9_PCIE is not set
# CONFIG_COMMON_CLK_SI521XX is not set
# CONFIG_COMMON_CLK_VC3 is not set
-CONFIG_COMMON_CLK_VC5=y
+# CONFIG_COMMON_CLK_VC5 is not set
# CONFIG_COMMON_CLK_VC7 is not set
CONFIG_COMMON_CLK_BD718XX=m
# CONFIG_COMMON_CLK_FIXED_MMIO is not set
@@ -6023,10 +6200,9 @@ CONFIG_TIMER_ACPI=y
CONFIG_TIMER_PROBE=y
CONFIG_ARM_ARCH_TIMER=y
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
-CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y
-CONFIG_FSL_ERRATUM_A008585=y
-CONFIG_HISILICON_ERRATUM_161010101=y
-CONFIG_ARM64_ERRATUM_858921=y
+# CONFIG_FSL_ERRATUM_A008585 is not set
+# CONFIG_HISILICON_ERRATUM_161010101 is not set
+# CONFIG_ARM64_ERRATUM_858921 is not set
# end of Clock Source drivers
CONFIG_MAILBOX=y
@@ -6102,14 +6278,14 @@ CONFIG_RPMSG_QCOM_SMD=y
# CONFIG_RPMSG_VIRTIO is not set
# end of Rpmsg drivers
-CONFIG_SOUNDWIRE=y
+CONFIG_SOUNDWIRE=m
#
# SoundWire Devices
#
# CONFIG_SOUNDWIRE_AMD is not set
# CONFIG_SOUNDWIRE_INTEL is not set
-CONFIG_SOUNDWIRE_QCOM=y
+CONFIG_SOUNDWIRE_QCOM=m
#
# SOC (System On Chip) specific Drivers
@@ -6258,16 +6434,9 @@ CONFIG_EXTCON_USB_GPIO=y
# CONFIG_EXTCON_USBC_TUSB320 is not set
# CONFIG_MEMORY is not set
CONFIG_IIO=y
-CONFIG_IIO_BUFFER=y
-# CONFIG_IIO_BUFFER_CB is not set
-# CONFIG_IIO_BUFFER_DMA is not set
-# CONFIG_IIO_BUFFER_DMAENGINE is not set
-# CONFIG_IIO_BUFFER_HW_CONSUMER is not set
-CONFIG_IIO_KFIFO_BUF=m
-CONFIG_IIO_TRIGGERED_BUFFER=m
+# CONFIG_IIO_BUFFER is not set
# CONFIG_IIO_CONFIGFS is not set
-CONFIG_IIO_TRIGGER=y
-CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+# CONFIG_IIO_TRIGGER is not set
# CONFIG_IIO_SW_DEVICE is not set
# CONFIG_IIO_SW_TRIGGER is not set
# CONFIG_IIO_TRIGGERED_EVENT is not set
@@ -6378,8 +6547,8 @@ CONFIG_MAX9611=m
# CONFIG_NAU7802 is not set
# CONFIG_PAC1934 is not set
CONFIG_QCOM_VADC_COMMON=m
-# CONFIG_QCOM_SPMI_RRADC is not set
-# CONFIG_QCOM_SPMI_IADC is not set
+CONFIG_QCOM_SPMI_RRADC=m
+CONFIG_QCOM_SPMI_IADC=m
CONFIG_QCOM_SPMI_VADC=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_RICHTEK_RTQ6056 is not set
@@ -6474,10 +6643,6 @@ CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_IIO_SSP_SENSORHUB is not set
# end of SSP Sensor Common
-CONFIG_IIO_ST_SENSORS_I2C=m
-CONFIG_IIO_ST_SENSORS_SPI=m
-CONFIG_IIO_ST_SENSORS_CORE=m
-
#
# Digital to analog converters
#
@@ -6624,9 +6789,7 @@ CONFIG_IIO_ST_SENSORS_CORE=m
# CONFIG_INV_ICM42600_SPI is not set
# CONFIG_INV_MPU6050_I2C is not set
# CONFIG_INV_MPU6050_SPI is not set
-CONFIG_IIO_ST_LSM6DSX=m
-CONFIG_IIO_ST_LSM6DSX_I2C=m
-CONFIG_IIO_ST_LSM6DSX_SPI=m
+# CONFIG_IIO_ST_LSM6DSX is not set
# CONFIG_IIO_ST_LSM9DS0 is not set
# end of Inertial measurement units
@@ -6651,7 +6814,7 @@ CONFIG_IIO_ST_LSM6DSX_SPI=m
# CONFIG_CM36651 is not set
# CONFIG_GP2AP002 is not set
# CONFIG_GP2AP020A00F is not set
-CONFIG_SENSORS_ISL29018=m
+# CONFIG_SENSORS_ISL29018 is not set
# CONFIG_SENSORS_ISL29028 is not set
# CONFIG_ISL29125 is not set
# CONFIG_ISL76682 is not set
@@ -6681,7 +6844,7 @@ CONFIG_SENSORS_ISL29018=m
# CONFIG_TSL2772 is not set
# CONFIG_TSL4531 is not set
# CONFIG_US5182D is not set
-CONFIG_VCNL4000=m
+# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
# CONFIG_VEML6030 is not set
# CONFIG_VEML6040 is not set
@@ -6702,9 +6865,7 @@ CONFIG_VCNL4000=m
# CONFIG_BMC150_MAGN_SPI is not set
# CONFIG_MAG3110 is not set
# CONFIG_MMC35240 is not set
-CONFIG_IIO_ST_MAGN_3AXIS=m
-CONFIG_IIO_ST_MAGN_I2C_3AXIS=m
-CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
+# CONFIG_IIO_ST_MAGN_3AXIS is not set
# CONFIG_SENSORS_HMC5843_I2C is not set
# CONFIG_SENSORS_HMC5843_SPI is not set
# CONFIG_SENSORS_RM3100_I2C is not set
@@ -6724,13 +6885,6 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
#
# end of Inclinometer sensors
-#
-# Triggers - standalone
-#
-# CONFIG_IIO_INTERRUPT_TRIGGER is not set
-# CONFIG_IIO_SYSFS_TRIGGER is not set
-# end of Triggers - standalone
-
#
# Linear and angular position sensors
#
@@ -6772,7 +6926,7 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
# CONFIG_ICP10100 is not set
# CONFIG_MPL115_I2C is not set
# CONFIG_MPL115_SPI is not set
-CONFIG_MPL3115=m
+# CONFIG_MPL3115 is not set
# CONFIG_MPRLS0025PA is not set
# CONFIG_MS5611 is not set
# CONFIG_MS5637 is not set
@@ -6879,7 +7033,6 @@ CONFIG_RESET_SCMI=y
# PHY Subsystem
#
CONFIG_GENERIC_PHY=y
-CONFIG_GENERIC_PHY_MIPI_DPHY=y
# CONFIG_PHY_CAN_TRANSCEIVER is not set
#
@@ -6982,7 +7135,6 @@ CONFIG_NVMEM_QCOM_QFPROM=y
# CONFIG_NVMEM_QCOM_SEC_QFPROM is not set
CONFIG_NVMEM_RMEM=m
# CONFIG_NVMEM_SPMI_SDAM is not set
-# CONFIG_NVMEM_U_BOOT_ENV is not set
#
# HW tracing support
@@ -7012,17 +7164,6 @@ CONFIG_OF_FPGA_REGION=m
CONFIG_TEE=y
CONFIG_OPTEE=y
# CONFIG_OPTEE_INSECURE_LOAD_IMAGE is not set
-CONFIG_MULTIPLEXER=y
-
-#
-# Multiplexer drivers
-#
-# CONFIG_MUX_ADG792A is not set
-# CONFIG_MUX_ADGS1408 is not set
-# CONFIG_MUX_GPIO is not set
-CONFIG_MUX_MMIO=y
-# end of Multiplexer drivers
-
CONFIG_PM_OPP=y
# CONFIG_SIOX is not set
CONFIG_SLIMBUS=m
@@ -7208,7 +7349,6 @@ CONFIG_MISC_FILESYSTEMS=y
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
-# CONFIG_JFFS2_FS is not set
# CONFIG_CRAMFS is not set
CONFIG_SQUASHFS=y
CONFIG_SQUASHFS_FILE_CACHE=y
@@ -7254,7 +7394,6 @@ CONFIG_NFS_V4=y
CONFIG_NFS_V4_1=y
CONFIG_NFS_V4_2=y
CONFIG_PNFS_FILE_LAYOUT=y
-CONFIG_PNFS_BLOCK=y
CONFIG_PNFS_FLEXFILE_LAYOUT=y
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
# CONFIG_NFS_V4_1_MIGRATION is not set
@@ -7408,6 +7547,11 @@ CONFIG_RANDSTRUCT_NONE=y
# end of Security options
CONFIG_XOR_BLOCKS=y
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
+CONFIG_ASYNC_PQ=m
+CONFIG_ASYNC_RAID6_RECOV=m
CONFIG_CRYPTO=y
#
@@ -7627,17 +7771,24 @@ CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set
# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set
# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set
-# CONFIG_CRYPTO_DEV_QCE is not set
+CONFIG_CRYPTO_DEV_QCE=m
+CONFIG_CRYPTO_DEV_QCE_SKCIPHER=y
+CONFIG_CRYPTO_DEV_QCE_SHA=y
+CONFIG_CRYPTO_DEV_QCE_AEAD=y
+CONFIG_CRYPTO_DEV_QCE_ENABLE_ALL=y
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_SKCIPHER is not set
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_SHA is not set
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_AEAD is not set
+CONFIG_CRYPTO_DEV_QCE_SW_MAX_LEN=512
CONFIG_CRYPTO_DEV_QCOM_RNG=m
# CONFIG_CRYPTO_DEV_VIRTIO is not set
# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
CONFIG_CRYPTO_DEV_CCREE=m
# CONFIG_CRYPTO_DEV_HISI_SEC is not set
-CONFIG_CRYPTO_DEV_HISI_SEC2=m
-CONFIG_CRYPTO_DEV_HISI_QM=m
-CONFIG_CRYPTO_DEV_HISI_ZIP=m
-CONFIG_CRYPTO_DEV_HISI_HPRE=m
-CONFIG_CRYPTO_DEV_HISI_TRNG=m
+# CONFIG_CRYPTO_DEV_HISI_SEC2 is not set
+# CONFIG_CRYPTO_DEV_HISI_ZIP is not set
+# CONFIG_CRYPTO_DEV_HISI_HPRE is not set
+CONFIG_CRYPTO_DEV_HISI_TRNG=y
# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
@@ -7755,6 +7906,7 @@ CONFIG_REED_SOLOMON_ENC8=y
CONFIG_REED_SOLOMON_DEC8=y
CONFIG_XARRAY_MULTI=y
CONFIG_ASSOCIATIVE_ARRAY=y
+CONFIG_CLOSURES=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_IOPORT_MAP=y
@@ -7996,6 +8148,7 @@ CONFIG_STACKTRACE=y
# CONFIG_DEBUG_PLIST is not set
# CONFIG_DEBUG_SG is not set
# CONFIG_DEBUG_NOTIFIERS is not set
+# CONFIG_DEBUG_CLOSURES is not set
# CONFIG_DEBUG_MAPLE_TREE is not set
# end of Debug kernel data structures
@@ -8097,6 +8250,7 @@ CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_INTERVAL_TREE_TEST is not set
# CONFIG_PERCPU_TEST is not set
# CONFIG_ATOMIC64_SELFTEST is not set
+# CONFIG_ASYNC_RAID6_TEST is not set
# CONFIG_TEST_HEXDUMP is not set
# CONFIG_TEST_KSTRTOX is not set
# CONFIG_TEST_PRINTF is not set
diff --git a/config/kernel/linux-sm8250-edge.config b/config/kernel/linux-sm8250-edge.config
index 53aaf9a23829..acba1ca2a36d 100644
--- a/config/kernel/linux-sm8250-edge.config
+++ b/config/kernel/linux-sm8250-edge.config
@@ -1,15 +1,15 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 6.8.6 Kernel Configuration
+# Linux/arm64 6.9.8 Kernel Configuration
#
-CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
+CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0"
CONFIG_CC_IS_GCC=y
-CONFIG_GCC_VERSION=110400
+CONFIG_GCC_VERSION=130200
CONFIG_CLANG_VERSION=0
CONFIG_AS_IS_GNU=y
-CONFIG_AS_VERSION=23800
+CONFIG_AS_VERSION=24200
CONFIG_LD_IS_BFD=y
-CONFIG_LD_VERSION=23800
+CONFIG_LD_VERSION=24200
CONFIG_LLD_VERSION=0
CONFIG_CC_CAN_LINK=y
CONFIG_CC_CAN_LINK_STATIC=y
@@ -187,6 +187,7 @@ CONFIG_CGROUP_CPUACCT=y
CONFIG_CGROUP_PERF=y
CONFIG_CGROUP_BPF=y
# CONFIG_CGROUP_MISC is not set
+# CONFIG_CGROUP_DEBUG is not set
CONFIG_SOCK_CGROUP_DATA=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
@@ -216,9 +217,10 @@ CONFIG_LD_ORPHAN_WARN_LEVEL="warn"
CONFIG_SYSCTL=y
CONFIG_HAVE_UID16=y
CONFIG_SYSCTL_EXCEPTION_TRACE=y
-# CONFIG_EXPERT is not set
+CONFIG_EXPERT=y
CONFIG_UID16=y
CONFIG_MULTIUSER=y
+# CONFIG_SGETMASK_SYSCALL is not set
CONFIG_SYSFS_SYSCALL=y
CONFIG_FHANDLE=y
CONFIG_POSIX_TIMERS=y
@@ -239,9 +241,12 @@ CONFIG_ADVISE_SYSCALLS=y
CONFIG_MEMBARRIER=y
CONFIG_KCMP=y
CONFIG_RSEQ=y
+# CONFIG_DEBUG_RSEQ is not set
CONFIG_CACHESTAT_SYSCALL=y
+# CONFIG_PC104 is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_SELFTEST is not set
+# CONFIG_KALLSYMS_ALL is not set
CONFIG_KALLSYMS_BASE_RELATIVE=y
CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
CONFIG_HAVE_PERF_EVENTS=y
@@ -250,6 +255,7 @@ CONFIG_HAVE_PERF_EVENTS=y
# Kernel Performance Events And Counters
#
CONFIG_PERF_EVENTS=y
+# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
# end of Kernel Performance Events And Counters
CONFIG_SYSTEM_DATA_VERIFICATION=y
@@ -259,7 +265,8 @@ CONFIG_TRACEPOINTS=y
#
# Kexec and crash features
#
-CONFIG_CRASH_CORE=y
+CONFIG_CRASH_RESERVE=y
+CONFIG_VMCORE_INFO=y
CONFIG_KEXEC_CORE=y
CONFIG_KEXEC=y
CONFIG_KEXEC_FILE=y
@@ -272,7 +279,6 @@ CONFIG_ARM64=y
CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y
CONFIG_64BIT=y
CONFIG_MMU=y
-CONFIG_ARM64_PAGE_SHIFT=12
CONFIG_ARM64_CONT_PTE_SHIFT=4
CONFIG_ARM64_CONT_PMD_SHIFT=4
CONFIG_ARCH_MMAP_RND_BITS_MIN=18
@@ -401,6 +407,7 @@ CONFIG_ARM64_4K_PAGES=y
# CONFIG_ARM64_64K_PAGES is not set
# CONFIG_ARM64_VA_BITS_39 is not set
CONFIG_ARM64_VA_BITS_48=y
+# CONFIG_ARM64_VA_BITS_52 is not set
CONFIG_ARM64_VA_BITS=48
CONFIG_ARM64_PA_BITS_48=y
CONFIG_ARM64_PA_BITS=48
@@ -421,6 +428,7 @@ CONFIG_HZ=250
CONFIG_SCHED_HRTICK=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_HW_PERF_EVENTS=y
+CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
CONFIG_PARAVIRT=y
# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
CONFIG_ARCH_SUPPORTS_KEXEC=y
@@ -509,6 +517,7 @@ CONFIG_RANDOMIZE_BASE=y
CONFIG_RANDOMIZE_MODULE_REGION_FULL=y
CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
CONFIG_STACKPROTECTOR_PER_TASK=y
+CONFIG_ARM64_CONTPTE=y
# end of Kernel Features
#
@@ -526,9 +535,13 @@ CONFIG_DMI=y
#
CONFIG_SUSPEND=y
CONFIG_SUSPEND_FREEZER=y
+# CONFIG_SUSPEND_SKIP_SYNC is not set
CONFIG_HIBERNATE_CALLBACKS=y
CONFIG_HIBERNATION=y
CONFIG_HIBERNATION_SNAPSHOT_DEV=y
+CONFIG_HIBERNATION_COMP_LZO=y
+# CONFIG_HIBERNATION_COMP_LZ4 is not set
+CONFIG_HIBERNATION_DEF_COMP="lzo"
CONFIG_PM_STD_PARTITION=""
CONFIG_PM_SLEEP=y
CONFIG_PM_SLEEP_SMP=y
@@ -597,12 +610,12 @@ CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
#
CONFIG_CPUFREQ_DT=y
CONFIG_CPUFREQ_DT_PLATDEV=y
-CONFIG_ACPI_CPPC_CPUFREQ=m
-CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
CONFIG_ARM_SCPI_CPUFREQ=y
CONFIG_ARM_QCOM_CPUFREQ_NVMEM=y
CONFIG_ARM_QCOM_CPUFREQ_HW=y
CONFIG_ARM_SCMI_CPUFREQ=y
+CONFIG_ACPI_CPPC_CPUFREQ=m
+CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
# end of CPU Frequency scaling
# end of CPU Power Management
@@ -634,7 +647,6 @@ CONFIG_ACPI_TABLE_UPGRADE=y
# CONFIG_ACPI_PCI_SLOT is not set
CONFIG_ACPI_CONTAINER=y
CONFIG_ACPI_HED=y
-# CONFIG_ACPI_CUSTOM_METHOD is not set
# CONFIG_ACPI_BGRT is not set
CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y
CONFIG_ACPI_NUMA=y
@@ -642,6 +654,7 @@ CONFIG_ACPI_NUMA=y
CONFIG_HAVE_ACPI_APEI=y
CONFIG_ACPI_APEI=y
CONFIG_ACPI_APEI_GHES=y
+# CONFIG_ACPI_APEI_PCIEAER is not set
CONFIG_ACPI_APEI_SEA=y
CONFIG_ACPI_APEI_MEMORY_FAILURE=y
CONFIG_ACPI_APEI_EINJ=y
@@ -656,8 +669,8 @@ CONFIG_ACPI_PCC=y
# CONFIG_ACPI_FFH is not set
# CONFIG_PMIC_OPREGION is not set
CONFIG_ACPI_PRMT=y
-CONFIG_HAVE_KVM=y
# CONFIG_VIRTUALIZATION is not set
+CONFIG_CPU_MITIGATIONS=y
#
# General architecture-dependent options
@@ -690,6 +703,7 @@ CONFIG_ARCH_WANTS_NO_INSTR=y
CONFIG_HAVE_ASM_MODVERSIONS=y
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
CONFIG_HAVE_RSEQ=y
+CONFIG_HAVE_RUST=y
CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
CONFIG_HAVE_HW_BREAKPOINT=y
CONFIG_HAVE_PERF_REGS=y
@@ -714,6 +728,8 @@ CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
+# CONFIG_SHADOW_CALL_STACK is not set
CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
CONFIG_LTO_NONE=y
@@ -737,8 +753,11 @@ CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
CONFIG_ARCH_MMAP_RND_BITS=18
CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11
+CONFIG_HAVE_PAGE_SIZE_4KB=y
+CONFIG_PAGE_SIZE_4KB=y
CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
+CONFIG_PAGE_SHIFT=12
CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
CONFIG_CLONE_BACKWARDS=y
CONFIG_OLD_SIGSUSPEND3=y
@@ -755,6 +774,7 @@ CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
CONFIG_STRICT_MODULE_RWX=y
CONFIG_HAVE_ARCH_COMPILER_H=y
CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
+CONFIG_ARCH_USE_MEMREMAP_PROT=y
# CONFIG_LOCK_EVENT_COUNTS is not set
CONFIG_ARCH_HAS_RELR=y
CONFIG_HAVE_PREEMPT_DYNAMIC=y
@@ -794,6 +814,7 @@ CONFIG_MODULE_COMPRESS_NONE=y
# CONFIG_MODULE_COMPRESS_ZSTD is not set
# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
CONFIG_MODPROBE_PATH="/sbin/modprobe"
+# CONFIG_TRIM_UNUSED_KSYMS is not set
CONFIG_MODULES_TREE_LOOKUP=y
CONFIG_BLOCK=y
CONFIG_BLOCK_LEGACY_AUTOLOAD=y
@@ -827,7 +848,6 @@ CONFIG_BLK_MQ_PCI=y
CONFIG_BLK_MQ_VIRTIO=y
CONFIG_BLK_PM=y
CONFIG_BLOCK_HOLDER_DEPRECATED=y
-CONFIG_BLK_MQ_STACKING=y
#
# IO Schedulers
@@ -837,6 +857,7 @@ CONFIG_MQ_IOSCHED_KYBER=y
# CONFIG_IOSCHED_BFQ is not set
# end of IO Schedulers
+CONFIG_PADATA=y
CONFIG_ASN1=y
CONFIG_ARCH_INLINE_SPIN_TRYLOCK=y
CONFIG_ARCH_INLINE_SPIN_TRYLOCK_BH=y
@@ -930,6 +951,7 @@ CONFIG_ZSMALLOC_CHAIN_SIZE=8
# Slab allocator options
#
CONFIG_SLUB=y
+# CONFIG_SLUB_TINY is not set
CONFIG_SLAB_MERGE_DEFAULT=y
# CONFIG_SLAB_FREELIST_RANDOM is not set
# CONFIG_SLAB_FREELIST_HARDENED is not set
@@ -967,6 +989,7 @@ CONFIG_KSM=y
CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
CONFIG_MEMORY_FAILURE=y
+# CONFIG_HWPOISON_INJECT is not set
CONFIG_ARCH_WANTS_THP_SWAP=y
CONFIG_TRANSPARENT_HUGEPAGE=y
CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
@@ -988,6 +1011,7 @@ CONFIG_GENERIC_EARLY_IOREMAP=y
CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y
CONFIG_ARCH_HAS_PTE_DEVMAP=y
+CONFIG_ARCH_HAS_ZONE_DMA_SET=y
CONFIG_ZONE_DMA=y
CONFIG_ZONE_DMA32=y
CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
@@ -1025,7 +1049,6 @@ CONFIG_SKB_EXTENSIONS=y
CONFIG_PACKET=y
# CONFIG_PACKET_DIAG is not set
CONFIG_UNIX=y
-CONFIG_UNIX_SCM=y
CONFIG_AF_UNIX_OOB=y
# CONFIG_UNIX_DIAG is not set
# CONFIG_TLS is not set
@@ -1297,6 +1320,7 @@ CONFIG_IP_VS_NFCT=y
# IP: Netfilter Configuration
#
CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_IP_NF_IPTABLES_LEGACY=m
# CONFIG_NF_SOCKET_IPV4 is not set
# CONFIG_NF_TPROXY_IPV4 is not set
CONFIG_NF_TABLES_IPV4=y
@@ -1325,12 +1349,13 @@ CONFIG_IP_NF_MANGLE=m
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
# CONFIG_IP_NF_SECURITY is not set
-# CONFIG_IP_NF_ARPTABLES is not set
+# CONFIG_IP_NF_ARPFILTER is not set
# end of IP: Netfilter Configuration
#
# IPv6: Netfilter Configuration
#
+CONFIG_IP6_NF_IPTABLES_LEGACY=m
# CONFIG_NF_SOCKET_IPV6 is not set
# CONFIG_NF_TPROXY_IPV6 is not set
CONFIG_NF_TABLES_IPV6=y
@@ -1470,7 +1495,6 @@ CONFIG_NET_ACT_GACT=m
# CONFIG_GACT_PROB is not set
CONFIG_NET_ACT_MIRRED=m
# CONFIG_NET_ACT_SAMPLE is not set
-# CONFIG_NET_ACT_IPT is not set
# CONFIG_NET_ACT_NAT is not set
# CONFIG_NET_ACT_PEDIT is not set
# CONFIG_NET_ACT_SIMP is not set
@@ -1537,12 +1561,14 @@ CONFIG_BT_LE_L2CAP_ECRED=y
# CONFIG_BT_MSFTEXT is not set
# CONFIG_BT_AOSPEXT is not set
# CONFIG_BT_DEBUGFS is not set
+# CONFIG_BT_SELFTEST is not set
#
# Bluetooth device drivers
#
CONFIG_BT_QCA=m
# CONFIG_BT_HCIBTUSB is not set
+# CONFIG_BT_HCIBTSDIO is not set
CONFIG_BT_HCIUART=m
CONFIG_BT_HCIUART_SERDEV=y
CONFIG_BT_HCIUART_H4=y
@@ -1563,6 +1589,7 @@ CONFIG_BT_HCIUART_QCA=y
# CONFIG_BT_HCIBFUSB is not set
# CONFIG_BT_HCIVHCI is not set
# CONFIG_BT_MRVL is not set
+# CONFIG_BT_MTKSDIO is not set
# CONFIG_BT_MTKUART is not set
# CONFIG_BT_QCOMSMD is not set
# CONFIG_BT_VIRTIO is not set
@@ -1577,6 +1604,7 @@ CONFIG_WIRELESS=y
CONFIG_CFG80211=m
# CONFIG_NL80211_TESTMODE is not set
# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
CONFIG_CFG80211_DEFAULT_PS=y
@@ -1593,10 +1621,7 @@ CONFIG_MAC80211_LEDS=y
# CONFIG_MAC80211_MESSAGE_TRACING is not set
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
-CONFIG_RFKILL=m
-CONFIG_RFKILL_LEDS=y
-CONFIG_RFKILL_INPUT=y
-# CONFIG_RFKILL_GPIO is not set
+# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set
# CONFIG_CAIF is not set
# CONFIG_CEPH_LIB is not set
@@ -1606,7 +1631,7 @@ CONFIG_RFKILL_INPUT=y
# CONFIG_LWTUNNEL is not set
CONFIG_DST_CACHE=y
CONFIG_GRO_CELLS=y
-CONFIG_NET_SELFTESTS=y
+CONFIG_NET_SELFTESTS=m
CONFIG_NET_SOCK_MSG=y
CONFIG_NET_DEVLINK=y
CONFIG_PAGE_POOL=y
@@ -1619,23 +1644,27 @@ CONFIG_ETHTOOL_NETLINK=y
#
CONFIG_ARM_AMBA=y
CONFIG_HAVE_PCI=y
+CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_PCI=y
CONFIG_PCI_DOMAINS=y
CONFIG_PCI_DOMAINS_GENERIC=y
CONFIG_PCI_SYSCALL=y
CONFIG_PCIEPORTBUS=y
-# CONFIG_HOTPLUG_PCI_PCIE is not set
-# CONFIG_PCIEAER is not set
+CONFIG_PCIEAER=y
+# CONFIG_PCIEAER_INJECT is not set
+# CONFIG_PCIE_ECRC is not set
CONFIG_PCIEASPM=y
CONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not set
CONFIG_PCIE_PME=y
+# CONFIG_PCIE_DPC is not set
# CONFIG_PCIE_PTM is not set
CONFIG_PCI_MSI=y
CONFIG_PCI_QUIRKS=y
-# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
# CONFIG_PCI_STUB is not set
# CONFIG_PCI_PF_STUB is not set
CONFIG_PCI_ATS=y
@@ -1645,36 +1674,32 @@ CONFIG_PCI_IOV=y
CONFIG_PCI_PASID=y
CONFIG_PCI_LABEL=y
# CONFIG_PCI_DYNAMIC_OF_NODES is not set
-CONFIG_VGA_ARB=y
-CONFIG_VGA_ARB_MAX_GPUS=16
-CONFIG_HOTPLUG_PCI=y
-CONFIG_HOTPLUG_PCI_ACPI=y
-# CONFIG_HOTPLUG_PCI_ACPI_AMPERE_ALTRA is not set
-# CONFIG_HOTPLUG_PCI_ACPI_IBM is not set
-# CONFIG_HOTPLUG_PCI_CPCI is not set
-# CONFIG_HOTPLUG_PCI_SHPC is not set
+# CONFIG_PCIE_BUS_TUNE_OFF is not set
+CONFIG_PCIE_BUS_DEFAULT=y
+# CONFIG_PCIE_BUS_SAFE is not set
+# CONFIG_PCIE_BUS_PERFORMANCE is not set
+# CONFIG_PCIE_BUS_PEER2PEER is not set
+# CONFIG_VGA_ARB is not set
+# CONFIG_HOTPLUG_PCI is not set
#
# PCI controller drivers
#
-CONFIG_PCIE_ALTERA=y
-CONFIG_PCIE_ALTERA_MSI=y
-CONFIG_PCI_HOST_THUNDER_PEM=y
-CONFIG_PCI_HOST_THUNDER_ECAM=y
+# CONFIG_PCIE_ALTERA is not set
+# CONFIG_PCI_HOST_THUNDER_PEM is not set
+# CONFIG_PCI_HOST_THUNDER_ECAM is not set
# CONFIG_PCI_FTPCI100 is not set
CONFIG_PCI_HOST_COMMON=y
CONFIG_PCI_HOST_GENERIC=y
# CONFIG_PCIE_HISI_ERR is not set
# CONFIG_PCIE_MICROCHIP_HOST is not set
-CONFIG_PCI_XGENE=y
-CONFIG_PCI_XGENE_MSI=y
+# CONFIG_PCI_XGENE is not set
# CONFIG_PCIE_XILINX is not set
#
# Cadence-based PCIe controllers
#
# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
-# CONFIG_PCIE_CADENCE_PLAT_EP is not set
# end of Cadence-based PCIe controllers
#
@@ -1687,9 +1712,7 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCI_HISI is not set
# CONFIG_PCIE_KIRIN is not set
# CONFIG_PCIE_DW_PLAT_HOST is not set
-# CONFIG_PCIE_DW_PLAT_EP is not set
CONFIG_PCIE_QCOM=y
-# CONFIG_PCIE_QCOM_EP is not set
# end of DesignWare-based PCIe controllers
#
@@ -1701,11 +1724,7 @@ CONFIG_PCIE_QCOM=y
#
# PCI Endpoint
#
-CONFIG_PCI_ENDPOINT=y
-CONFIG_PCI_ENDPOINT_CONFIGFS=y
-CONFIG_PCI_EPF_TEST=m
-# CONFIG_PCI_EPF_NTB is not set
-# CONFIG_PCI_EPF_MHI is not set
+# CONFIG_PCI_ENDPOINT is not set
# end of PCI Endpoint
#
@@ -1750,6 +1769,9 @@ CONFIG_FW_CACHE=y
CONFIG_WANT_DEV_COREDUMP=y
CONFIG_ALLOW_DEV_COREDUMP=y
CONFIG_DEV_COREDUMP=y
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
+# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
CONFIG_GENERIC_CPU_DEVICES=y
CONFIG_GENERIC_CPU_AUTOPROBE=y
@@ -1762,7 +1784,6 @@ CONFIG_REGMAP_SPI=y
CONFIG_REGMAP_SPMI=y
CONFIG_REGMAP_MMIO=y
CONFIG_REGMAP_IRQ=y
-CONFIG_REGMAP_SOUNDWIRE=m
CONFIG_DMA_SHARED_BUFFER=y
# CONFIG_DMA_FENCE_TRACE is not set
CONFIG_GENERIC_ARCH_TOPOLOGY=y
@@ -1812,6 +1833,7 @@ CONFIG_ARM_SCMI_TRANSPORT_SMC=y
CONFIG_ARM_SCPI_PROTOCOL=y
# CONFIG_ARM_SDE_INTERFACE is not set
+# CONFIG_FIRMWARE_MEMMAP is not set
CONFIG_DMIID=y
# CONFIG_DMI_SYSFS is not set
# CONFIG_ISCSI_IBFT is not set
@@ -1838,6 +1860,7 @@ CONFIG_EFI_CAPSULE_LOADER=y
# CONFIG_EFI_TEST is not set
# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_EFI_DISABLE_PCI_DMA is not set
+CONFIG_EFI_EARLYCON=y
CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y
# CONFIG_EFI_DISABLE_RUNTIME is not set
# CONFIG_EFI_COCO_SECRET is not set
@@ -1867,169 +1890,20 @@ CONFIG_ARM_SMCCC_SOC_ID=y
# end of Tegra firmware driver
# end of Firmware Drivers
-CONFIG_GNSS=m
-CONFIG_GNSS_SERIAL=m
-CONFIG_GNSS_MTK_SERIAL=m
-# CONFIG_GNSS_SIRF_SERIAL is not set
-# CONFIG_GNSS_UBX_SERIAL is not set
-# CONFIG_GNSS_USB is not set
-CONFIG_MTD=y
-# CONFIG_MTD_TESTS is not set
-
-#
-# Partition parsers
-#
-# CONFIG_MTD_CMDLINE_PARTS is not set
-CONFIG_MTD_OF_PARTS=y
-# CONFIG_MTD_AFS_PARTS is not set
-# CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_QCOMSMEM_PARTS is not set
-# end of Partition parsers
-
-#
-# User Modules And Translation Layers
-#
-CONFIG_MTD_BLKDEVS=y
-CONFIG_MTD_BLOCK=y
-
-#
-# Note that in some cases UBI block is preferred. See MTD_UBI_BLOCK.
-#
-# CONFIG_FTL is not set
-# CONFIG_NFTL is not set
-# CONFIG_INFTL is not set
-# CONFIG_RFD_FTL is not set
-# CONFIG_SSFDC is not set
-# CONFIG_SM_FTL is not set
-# CONFIG_MTD_OOPS is not set
-# CONFIG_MTD_SWAP is not set
-# CONFIG_MTD_PARTITIONED_MASTER is not set
-
-#
-# RAM/ROM/Flash chip drivers
-#
-CONFIG_MTD_CFI=y
-# CONFIG_MTD_JEDECPROBE is not set
-CONFIG_MTD_GEN_PROBE=y
-CONFIG_MTD_CFI_ADV_OPTIONS=y
-CONFIG_MTD_CFI_NOSWAP=y
-# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
-# CONFIG_MTD_CFI_LE_BYTE_SWAP is not set
-# CONFIG_MTD_CFI_GEOMETRY is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_OTP is not set
-CONFIG_MTD_CFI_INTELEXT=y
-CONFIG_MTD_CFI_AMDSTD=y
-CONFIG_MTD_CFI_STAA=y
-CONFIG_MTD_CFI_UTIL=y
-# CONFIG_MTD_RAM is not set
-# CONFIG_MTD_ROM is not set
-# CONFIG_MTD_ABSENT is not set
-# end of RAM/ROM/Flash chip drivers
-
-#
-# Mapping drivers for chip access
-#
-# CONFIG_MTD_COMPLEX_MAPPINGS is not set
-CONFIG_MTD_PHYSMAP=y
-# CONFIG_MTD_PHYSMAP_COMPAT is not set
-CONFIG_MTD_PHYSMAP_OF=y
-# CONFIG_MTD_PHYSMAP_VERSATILE is not set
-# CONFIG_MTD_PHYSMAP_GEMINI is not set
-# CONFIG_MTD_INTEL_VR_NOR is not set
-# CONFIG_MTD_PLATRAM is not set
-# end of Mapping drivers for chip access
-
-#
-# Self-contained MTD device drivers
-#
-# CONFIG_MTD_PMC551 is not set
-CONFIG_MTD_DATAFLASH=y
-# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set
-# CONFIG_MTD_DATAFLASH_OTP is not set
-# CONFIG_MTD_MCHP23K256 is not set
-# CONFIG_MTD_MCHP48L640 is not set
-CONFIG_MTD_SST25L=y
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_MTD_PHRAM is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_BLOCK2MTD is not set
-
-#
-# Disk-On-Chip Device Drivers
-#
-# CONFIG_MTD_DOCG3 is not set
-# end of Self-contained MTD device drivers
-
-#
-# NAND
-#
-CONFIG_MTD_NAND_CORE=y
-# CONFIG_MTD_ONENAND is not set
-CONFIG_MTD_RAW_NAND=y
-
-#
-# Raw/parallel NAND flash controllers
-#
-CONFIG_MTD_NAND_DENALI=y
-# CONFIG_MTD_NAND_DENALI_PCI is not set
-CONFIG_MTD_NAND_DENALI_DT=y
-# CONFIG_MTD_NAND_CAFE is not set
-# CONFIG_MTD_NAND_BRCMNAND is not set
-CONFIG_MTD_NAND_QCOM=y
-# CONFIG_MTD_NAND_MXIC is not set
-# CONFIG_MTD_NAND_GPIO is not set
-# CONFIG_MTD_NAND_PLATFORM is not set
-# CONFIG_MTD_NAND_CADENCE is not set
-# CONFIG_MTD_NAND_ARASAN is not set
-# CONFIG_MTD_NAND_INTEL_LGM is not set
-
-#
-# Misc
-#
-# CONFIG_MTD_NAND_NANDSIM is not set
-# CONFIG_MTD_NAND_RICOH is not set
-# CONFIG_MTD_NAND_DISKONCHIP is not set
-# CONFIG_MTD_SPI_NAND is not set
-
-#
-# ECC engine support
-#
-CONFIG_MTD_NAND_ECC=y
-CONFIG_MTD_NAND_ECC_SW_HAMMING=y
-# CONFIG_MTD_NAND_ECC_SW_HAMMING_SMC is not set
-# CONFIG_MTD_NAND_ECC_SW_BCH is not set
-# CONFIG_MTD_NAND_ECC_MXIC is not set
-# end of ECC engine support
-# end of NAND
-
-#
-# LPDDR & LPDDR2 PCM memory drivers
-#
-# CONFIG_MTD_LPDDR is not set
-# end of LPDDR & LPDDR2 PCM memory drivers
-
-CONFIG_MTD_SPI_NOR=y
-CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
-# CONFIG_MTD_SPI_NOR_SWP_DISABLE is not set
-CONFIG_MTD_SPI_NOR_SWP_DISABLE_ON_VOLATILE=y
-# CONFIG_MTD_SPI_NOR_SWP_KEEP is not set
-# CONFIG_MTD_UBI is not set
-# CONFIG_MTD_HYPERBUS is not set
+# CONFIG_GNSS is not set
+# CONFIG_MTD is not set
CONFIG_DTC=y
CONFIG_OF=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF_FLATTREE=y
CONFIG_OF_EARLY_FLATTREE=y
CONFIG_OF_KOBJ=y
+CONFIG_OF_DYNAMIC=y
CONFIG_OF_ADDRESS=y
CONFIG_OF_IRQ=y
CONFIG_OF_RESERVED_MEM=y
-# CONFIG_OF_OVERLAY is not set
+CONFIG_OF_RESOLVE=y
+CONFIG_OF_OVERLAY=y
CONFIG_OF_NUMA=y
# CONFIG_PARPORT is not set
CONFIG_PNP=y
@@ -2065,9 +1939,14 @@ CONFIG_VIRTIO_BLK=y
#
# NVME Support
#
-# CONFIG_BLK_DEV_NVME is not set
+CONFIG_NVME_CORE=m
+CONFIG_BLK_DEV_NVME=m
+CONFIG_NVME_MULTIPATH=y
+# CONFIG_NVME_VERBOSE_ERRORS is not set
+CONFIG_NVME_HWMON=y
# CONFIG_NVME_FC is not set
# CONFIG_NVME_TCP is not set
+# CONFIG_NVME_HOST_AUTH is not set
# CONFIG_NVME_TARGET is not set
# end of NVME Support
@@ -2095,7 +1974,7 @@ CONFIG_QCOM_FASTRPC=m
# CONFIG_LATTICE_ECP3_CONFIG is not set
CONFIG_SRAM=y
# CONFIG_DW_XDATA_PCIE is not set
-CONFIG_PCI_ENDPOINT_TEST=m
+# CONFIG_PCI_ENDPOINT_TEST is not set
# CONFIG_XILINX_SDFEC is not set
# CONFIG_HISI_HIKEY_USB is not set
# CONFIG_OPEN_DICE is not set
@@ -2177,6 +2056,7 @@ CONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP is not set
# CONFIG_ISCSI_BOOT_SYSFS is not set
# CONFIG_SCSI_CXGB3_ISCSI is not set
+# CONFIG_SCSI_CXGB4_ISCSI is not set
# CONFIG_SCSI_BNX2_ISCSI is not set
# CONFIG_BE2ISCSI is not set
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
@@ -2233,7 +2113,7 @@ CONFIG_SCSI_MPT3SAS_MAX_SGE=128
CONFIG_ATA=y
CONFIG_SATA_HOST=y
CONFIG_PATA_TIMINGS=y
-CONFIG_ATA_VERBOSE_ERROR=y
+# CONFIG_ATA_VERBOSE_ERROR is not set
CONFIG_ATA_FORCE=y
CONFIG_ATA_ACPI=y
# CONFIG_SATA_ZPODD is not set
@@ -2244,12 +2124,12 @@ CONFIG_SATA_PMP=y
#
CONFIG_SATA_AHCI=y
CONFIG_SATA_MOBILE_LPM_POLICY=0
-CONFIG_SATA_AHCI_PLATFORM=y
+CONFIG_SATA_AHCI_PLATFORM=m
# CONFIG_AHCI_DWC is not set
-CONFIG_AHCI_CEVA=y
+# CONFIG_AHCI_CEVA is not set
# CONFIG_SATA_INIC162X is not set
# CONFIG_SATA_ACARD_AHCI is not set
-CONFIG_SATA_SIL24=y
+# CONFIG_SATA_SIL24 is not set
CONFIG_ATA_SFF=y
#
@@ -2319,8 +2199,7 @@ CONFIG_ATA_BMDMA=y
# CONFIG_PATA_MPIIX is not set
# CONFIG_PATA_NS87410 is not set
# CONFIG_PATA_OPTI is not set
-CONFIG_PATA_PLATFORM=y
-CONFIG_PATA_OF_PLATFORM=y
+# CONFIG_PATA_OF_PLATFORM is not set
# CONFIG_PATA_RZ1000 is not set
#
@@ -2331,43 +2210,15 @@ CONFIG_PATA_OF_PLATFORM=y
# CONFIG_PATA_LEGACY is not set
CONFIG_MD=y
CONFIG_BLK_DEV_MD=m
-CONFIG_MD_BITMAP_FILE=y
-# CONFIG_MD_RAID0 is not set
-# CONFIG_MD_RAID1 is not set
-# CONFIG_MD_RAID10 is not set
-# CONFIG_MD_RAID456 is not set
-# CONFIG_BCACHE is not set
-CONFIG_BLK_DEV_DM_BUILTIN=y
-CONFIG_BLK_DEV_DM=y
-# CONFIG_DM_DEBUG is not set
-CONFIG_DM_BUFIO=y
-# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set
-CONFIG_DM_BIO_PRISON=y
-CONFIG_DM_PERSISTENT_DATA=y
-# CONFIG_DM_UNSTRIPED is not set
-CONFIG_DM_CRYPT=m
-# CONFIG_DM_SNAPSHOT is not set
-CONFIG_DM_THIN_PROVISIONING=y
-# CONFIG_DM_CACHE is not set
-# CONFIG_DM_WRITECACHE is not set
-# CONFIG_DM_EBS is not set
-# CONFIG_DM_ERA is not set
-# CONFIG_DM_CLONE is not set
-CONFIG_DM_MIRROR=m
-# CONFIG_DM_LOG_USERSPACE is not set
-# CONFIG_DM_RAID is not set
-CONFIG_DM_ZERO=m
-# CONFIG_DM_MULTIPATH is not set
-# CONFIG_DM_DELAY is not set
-# CONFIG_DM_DUST is not set
-# CONFIG_DM_INIT is not set
-# CONFIG_DM_UEVENT is not set
-# CONFIG_DM_FLAKEY is not set
-# CONFIG_DM_VERITY is not set
-# CONFIG_DM_SWITCH is not set
-# CONFIG_DM_LOG_WRITES is not set
-# CONFIG_DM_INTEGRITY is not set
-# CONFIG_DM_AUDIT is not set
+# CONFIG_MD_BITMAP_FILE is not set
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
+CONFIG_BCACHE=m
+# CONFIG_BCACHE_DEBUG is not set
+CONFIG_BCACHE_ASYNC_REGISTRATION=y
+# CONFIG_BLK_DEV_DM is not set
# CONFIG_TARGET_CORE is not set
# CONFIG_FUSION is not set
@@ -2436,17 +2287,95 @@ CONFIG_VETH=m
# CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM is not set
# end of Distributed Switch Architecture drivers
-# CONFIG_ETHERNET is not set
+CONFIG_ETHERNET=y
+# CONFIG_NET_VENDOR_3COM is not set
+# CONFIG_NET_VENDOR_ADAPTEC is not set
+# CONFIG_NET_VENDOR_AGERE is not set
+# CONFIG_NET_VENDOR_ALACRITECH is not set
+# CONFIG_NET_VENDOR_ALTEON is not set
+# CONFIG_ALTERA_TSE is not set
+# CONFIG_NET_VENDOR_AMAZON is not set
+# CONFIG_NET_VENDOR_AMD is not set
+# CONFIG_NET_VENDOR_AQUANTIA is not set
+# CONFIG_NET_VENDOR_ARC is not set
+# CONFIG_NET_VENDOR_ASIX is not set
+# CONFIG_NET_VENDOR_ATHEROS is not set
+# CONFIG_NET_VENDOR_BROADCOM is not set
+# CONFIG_NET_VENDOR_CADENCE is not set
+# CONFIG_NET_VENDOR_CAVIUM is not set
+# CONFIG_NET_VENDOR_CHELSIO is not set
+# CONFIG_NET_VENDOR_CISCO is not set
+# CONFIG_NET_VENDOR_CORTINA is not set
+# CONFIG_NET_VENDOR_DAVICOM is not set
+# CONFIG_DNET is not set
+# CONFIG_NET_VENDOR_DEC is not set
+# CONFIG_NET_VENDOR_DLINK is not set
+# CONFIG_NET_VENDOR_EMULEX is not set
+# CONFIG_NET_VENDOR_ENGLEDER is not set
+# CONFIG_NET_VENDOR_EZCHIP is not set
+# CONFIG_NET_VENDOR_FUNGIBLE is not set
+# CONFIG_NET_VENDOR_GOOGLE is not set
+# CONFIG_NET_VENDOR_HISILICON is not set
+# CONFIG_NET_VENDOR_HUAWEI is not set
+# CONFIG_NET_VENDOR_INTEL is not set
+# CONFIG_JME is not set
+# CONFIG_NET_VENDOR_ADI is not set
+# CONFIG_NET_VENDOR_LITEX is not set
+# CONFIG_NET_VENDOR_MARVELL is not set
+# CONFIG_NET_VENDOR_MELLANOX is not set
+# CONFIG_NET_VENDOR_MICREL is not set
+# CONFIG_NET_VENDOR_MICROCHIP is not set
+# CONFIG_NET_VENDOR_MICROSEMI is not set
+# CONFIG_NET_VENDOR_MICROSOFT is not set
+# CONFIG_NET_VENDOR_MYRI is not set
+# CONFIG_FEALNX is not set
+# CONFIG_NET_VENDOR_NI is not set
+# CONFIG_NET_VENDOR_NATSEMI is not set
+# CONFIG_NET_VENDOR_NETERION is not set
+# CONFIG_NET_VENDOR_NETRONOME is not set
+# CONFIG_NET_VENDOR_NVIDIA is not set
+# CONFIG_NET_VENDOR_OKI is not set
+# CONFIG_ETHOC is not set
+# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
+# CONFIG_NET_VENDOR_PENSANDO is not set
+# CONFIG_NET_VENDOR_QLOGIC is not set
+# CONFIG_NET_VENDOR_BROCADE is not set
+# CONFIG_NET_VENDOR_QUALCOMM is not set
+# CONFIG_NET_VENDOR_RDC is not set
+CONFIG_NET_VENDOR_REALTEK=y
+# CONFIG_8139CP is not set
+# CONFIG_8139TOO is not set
+CONFIG_R8169=m
+CONFIG_R8169_LEDS=y
+# CONFIG_NET_VENDOR_RENESAS is not set
+# CONFIG_NET_VENDOR_ROCKER is not set
+# CONFIG_NET_VENDOR_SAMSUNG is not set
+# CONFIG_NET_VENDOR_SEEQ is not set
+# CONFIG_NET_VENDOR_SILAN is not set
+# CONFIG_NET_VENDOR_SIS is not set
+# CONFIG_NET_VENDOR_SOLARFLARE is not set
+# CONFIG_NET_VENDOR_SMSC is not set
+# CONFIG_NET_VENDOR_SOCIONEXT is not set
+# CONFIG_NET_VENDOR_STMICRO is not set
+# CONFIG_NET_VENDOR_SUN is not set
+# CONFIG_NET_VENDOR_SYNOPSYS is not set
+# CONFIG_NET_VENDOR_TEHUTI is not set
+# CONFIG_NET_VENDOR_TI is not set
+# CONFIG_NET_VENDOR_VERTEXCOM is not set
+# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
+# CONFIG_NET_VENDOR_WIZNET is not set
+# CONFIG_NET_VENDOR_XILINX is not set
# CONFIG_FDDI is not set
# CONFIG_HIPPI is not set
CONFIG_QCOM_IPA=m
# CONFIG_NET_SB1000 is not set
CONFIG_PHYLINK=m
-CONFIG_PHYLIB=y
+CONFIG_PHYLIB=m
CONFIG_SWPHY=y
# CONFIG_LED_TRIGGER_PHY is not set
CONFIG_PHYLIB_LEDS=y
-CONFIG_FIXED_PHY=y
+CONFIG_FIXED_PHY=m
# CONFIG_SFP is not set
#
@@ -2455,7 +2384,7 @@ CONFIG_FIXED_PHY=y
# CONFIG_AMD_PHY is not set
# CONFIG_ADIN_PHY is not set
# CONFIG_ADIN1100_PHY is not set
-CONFIG_AQUANTIA_PHY=y
+# CONFIG_AQUANTIA_PHY is not set
CONFIG_AX88796B_PHY=m
# CONFIG_BROADCOM_PHY is not set
# CONFIG_BCM54140_PHY is not set
@@ -2477,7 +2406,7 @@ CONFIG_AX88796B_PHY=m
# CONFIG_MEDIATEK_GE_PHY is not set
# CONFIG_MICREL_PHY is not set
# CONFIG_MICROCHIP_T1S_PHY is not set
-CONFIG_MICROCHIP_PHY=m
+# CONFIG_MICROCHIP_PHY is not set
# CONFIG_MICROCHIP_T1_PHY is not set
# CONFIG_MICROSEMI_PHY is not set
# CONFIG_MOTORCOMM_PHY is not set
@@ -2486,9 +2415,12 @@ CONFIG_MICROCHIP_PHY=m
# CONFIG_NXP_C45_TJA11XX_PHY is not set
# CONFIG_NXP_TJA11XX_PHY is not set
# CONFIG_NCN26000_PHY is not set
-CONFIG_AT803X_PHY=y
+# CONFIG_AT803X_PHY is not set
+# CONFIG_QCA83XX_PHY is not set
+# CONFIG_QCA808X_PHY is not set
+# CONFIG_QCA807X_PHY is not set
# CONFIG_QSEMI_PHY is not set
-# CONFIG_REALTEK_PHY is not set
+CONFIG_REALTEK_PHY=m
# CONFIG_RENESAS_PHY is not set
# CONFIG_ROCKCHIP_PHY is not set
CONFIG_SMSC_PHY=m
@@ -2501,34 +2433,32 @@ CONFIG_SMSC_PHY=m
# CONFIG_DP83869_PHY is not set
# CONFIG_DP83TD510_PHY is not set
# CONFIG_DP83TG720_PHY is not set
-CONFIG_VITESSE_PHY=y
+# CONFIG_VITESSE_PHY is not set
# CONFIG_XILINX_GMII2RGMII is not set
# CONFIG_MICREL_KS8995MA is not set
# CONFIG_PSE_CONTROLLER is not set
-CONFIG_MDIO_DEVICE=y
-CONFIG_MDIO_BUS=y
-CONFIG_FWNODE_MDIO=y
-CONFIG_OF_MDIO=y
-CONFIG_ACPI_MDIO=y
-CONFIG_MDIO_DEVRES=y
+CONFIG_MDIO_DEVICE=m
+CONFIG_MDIO_BUS=m
+CONFIG_FWNODE_MDIO=m
+CONFIG_OF_MDIO=m
+CONFIG_ACPI_MDIO=m
+CONFIG_MDIO_DEVRES=m
# CONFIG_MDIO_BITBANG is not set
-CONFIG_MDIO_BCM_UNIMAC=m
-CONFIG_MDIO_CAVIUM=y
+# CONFIG_MDIO_BCM_UNIMAC is not set
# CONFIG_MDIO_HISI_FEMAC is not set
# CONFIG_MDIO_MVUSB is not set
# CONFIG_MDIO_MSCC_MIIM is not set
# CONFIG_MDIO_OCTEON is not set
# CONFIG_MDIO_IPQ4019 is not set
# CONFIG_MDIO_IPQ8064 is not set
-CONFIG_MDIO_THUNDER=y
+# CONFIG_MDIO_THUNDER is not set
#
# MDIO Multiplexers
#
-CONFIG_MDIO_BUS_MUX=y
# CONFIG_MDIO_BUS_MUX_GPIO is not set
-CONFIG_MDIO_BUS_MUX_MULTIPLEXER=y
-CONFIG_MDIO_BUS_MUX_MMIOREG=y
+# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
+# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
#
# PCS device drivers
@@ -2542,16 +2472,16 @@ CONFIG_USB_NET_DRIVERS=y
# CONFIG_USB_KAWETH is not set
CONFIG_USB_PEGASUS=m
CONFIG_USB_RTL8150=m
-# CONFIG_USB_RTL8152 is not set
+CONFIG_USB_RTL8152=m
# CONFIG_USB_LAN78XX is not set
CONFIG_USB_USBNET=m
CONFIG_USB_NET_AX8817X=m
CONFIG_USB_NET_AX88179_178A=m
CONFIG_USB_NET_CDCETHER=m
-# CONFIG_USB_NET_CDC_EEM is not set
+CONFIG_USB_NET_CDC_EEM=m
CONFIG_USB_NET_CDC_NCM=m
-# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set
-# CONFIG_USB_NET_CDC_MBIM is not set
+CONFIG_USB_NET_HUAWEI_CDC_NCM=m
+CONFIG_USB_NET_CDC_MBIM=m
CONFIG_USB_NET_DM9601=m
# CONFIG_USB_NET_SR9700 is not set
CONFIG_USB_NET_SR9800=m
@@ -2573,11 +2503,10 @@ CONFIG_USB_ARMLINUX=y
CONFIG_USB_NET_ZAURUS=m
# CONFIG_USB_NET_CX82310_ETH is not set
# CONFIG_USB_NET_KALMIA is not set
-# CONFIG_USB_NET_QMI_WWAN is not set
-# CONFIG_USB_HSO is not set
+CONFIG_USB_NET_QMI_WWAN=m
# CONFIG_USB_NET_INT51X1 is not set
-# CONFIG_USB_IPHETH is not set
-# CONFIG_USB_SIERRA_NET is not set
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
# CONFIG_USB_VL600 is not set
# CONFIG_USB_NET_CH9200 is not set
# CONFIG_USB_NET_AQC111 is not set
@@ -2610,13 +2539,11 @@ CONFIG_ATH11K_PCI=m
# CONFIG_WLAN_VENDOR_MARVELL is not set
# CONFIG_WLAN_VENDOR_MEDIATEK is not set
# CONFIG_WLAN_VENDOR_MICROCHIP is not set
-CONFIG_WLAN_VENDOR_PURELIFI=y
-# CONFIG_PLFXLC is not set
+# CONFIG_WLAN_VENDOR_PURELIFI is not set
# CONFIG_WLAN_VENDOR_RALINK is not set
# CONFIG_WLAN_VENDOR_REALTEK is not set
# CONFIG_WLAN_VENDOR_RSI is not set
-CONFIG_WLAN_VENDOR_SILABS=y
-# CONFIG_WFX is not set
+# CONFIG_WLAN_VENDOR_SILABS is not set
# CONFIG_WLAN_VENDOR_ST is not set
# CONFIG_WLAN_VENDOR_TI is not set
# CONFIG_WLAN_VENDOR_ZYDAS is not set
@@ -2659,7 +2586,7 @@ CONFIG_INPUT_EVDEV=y
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
-CONFIG_KEYBOARD_ADC=m
+# CONFIG_KEYBOARD_ADC is not set
# CONFIG_KEYBOARD_ADP5588 is not set
# CONFIG_KEYBOARD_ADP5589 is not set
CONFIG_KEYBOARD_ATKBD=y
@@ -2717,6 +2644,7 @@ CONFIG_MOUSE_PS2_SMBUS=y
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not set
CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_NT36523_SPI=m
# CONFIG_TOUCHSCREEN_ADS7846 is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -2741,6 +2669,8 @@ CONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FUJITSU is not set
# CONFIG_TOUCHSCREEN_GOODIX is not set
+# CONFIG_TOUCHSCREEN_GOODIX_BERLIN_I2C is not set
+# CONFIG_TOUCHSCREEN_GOODIX_BERLIN_SPI is not set
# CONFIG_TOUCHSCREEN_HIDEEP is not set
# CONFIG_TOUCHSCREEN_HYCON_HY46XX is not set
# CONFIG_TOUCHSCREEN_HYNITRON_CSTXXX is not set
@@ -2855,7 +2785,6 @@ CONFIG_VT=y
CONFIG_CONSOLE_TRANSLATIONS=y
CONFIG_VT_CONSOLE=y
CONFIG_VT_CONSOLE_SLEEP=y
-CONFIG_HW_CONSOLE=y
CONFIG_VT_HW_CONSOLE_BINDING=y
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
@@ -2866,22 +2795,26 @@ CONFIG_LDISC_AUTOLOAD=y
#
# Serial drivers
#
+CONFIG_SERIAL_EARLYCON=y
# CONFIG_SERIAL_8250 is not set
#
# Non-8250 serial port support
#
# CONFIG_SERIAL_AMBA_PL010 is not set
-# CONFIG_SERIAL_AMBA_PL011 is not set
-# CONFIG_SERIAL_EARLYCON_SEMIHOST is not set
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_EARLYCON_SEMIHOST=y
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
# CONFIG_SERIAL_UARTLITE is not set
CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
# CONFIG_SERIAL_JSM is not set
-# CONFIG_SERIAL_MSM is not set
+CONFIG_SERIAL_MSM=y
+CONFIG_SERIAL_MSM_CONSOLE=y
CONFIG_SERIAL_QCOM_GENI=y
-# CONFIG_SERIAL_QCOM_GENI_CONSOLE is not set
+CONFIG_SERIAL_QCOM_GENI_CONSOLE=y
# CONFIG_SERIAL_SIFIVE is not set
# CONFIG_SERIAL_SCCNXP is not set
# CONFIG_SERIAL_SC16IS7XX is not set
@@ -2905,6 +2838,7 @@ CONFIG_HVC_DRIVER=y
# CONFIG_RPMSG_TTY is not set
CONFIG_SERIAL_DEV_BUS=y
CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
+# CONFIG_TTY_PRINTK is not set
CONFIG_VIRTIO_CONSOLE=y
CONFIG_IPMI_HANDLER=m
CONFIG_IPMI_DMI_DECODE=y
@@ -2915,7 +2849,7 @@ CONFIG_IPMI_SI=m
# CONFIG_IPMI_SSIF is not set
# CONFIG_IPMI_WATCHDOG is not set
# CONFIG_IPMI_POWEROFF is not set
-CONFIG_HW_RANDOM=m
+CONFIG_HW_RANDOM=y
# CONFIG_HW_RANDOM_TIMERIOMEM is not set
# CONFIG_HW_RANDOM_BA431 is not set
# CONFIG_HW_RANDOM_VIRTIO is not set
@@ -2927,21 +2861,7 @@ CONFIG_HW_RANDOM_CN10K=m
# CONFIG_APPLICOM is not set
CONFIG_DEVMEM=y
CONFIG_DEVPORT=y
-CONFIG_TCG_TPM=y
-# CONFIG_TCG_TIS is not set
-# CONFIG_TCG_TIS_SPI is not set
-# CONFIG_TCG_TIS_I2C is not set
-# CONFIG_TCG_TIS_I2C_CR50 is not set
-# CONFIG_TCG_TIS_I2C_ATMEL is not set
-CONFIG_TCG_TIS_I2C_INFINEON=y
-# CONFIG_TCG_TIS_I2C_NUVOTON is not set
-# CONFIG_TCG_ATMEL is not set
-# CONFIG_TCG_INFINEON is not set
-# CONFIG_TCG_CRB is not set
-# CONFIG_TCG_VTPM_PROXY is not set
-# CONFIG_TCG_FTPM_TEE is not set
-# CONFIG_TCG_TIS_ST33ZP24_I2C is not set
-# CONFIG_TCG_TIS_ST33ZP24_SPI is not set
+# CONFIG_TCG_TPM is not set
# CONFIG_XILLYBUS is not set
# CONFIG_XILLYUSB is not set
# end of Character devices
@@ -3053,6 +2973,7 @@ CONFIG_I2C_QUP=y
# CONFIG_I3C is not set
CONFIG_SPI=y
+# CONFIG_SPI_DEBUG is not set
CONFIG_SPI_MASTER=y
CONFIG_SPI_MEM=y
@@ -3135,6 +3056,7 @@ CONFIG_PTP_1588_CLOCK_OPTIONAL=y
CONFIG_PTP_1588_CLOCK_KVM=y
# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set
# CONFIG_PTP_1588_CLOCK_IDTCM is not set
+# CONFIG_PTP_1588_CLOCK_FC3W is not set
# CONFIG_PTP_1588_CLOCK_MOCK is not set
# end of PTP clock support
@@ -3144,10 +3066,12 @@ CONFIG_PINMUX=y
CONFIG_GENERIC_PINMUX_FUNCTIONS=y
CONFIG_PINCONF=y
CONFIG_GENERIC_PINCONF=y
+# CONFIG_DEBUG_PINCTRL is not set
# CONFIG_PINCTRL_AMD is not set
# CONFIG_PINCTRL_AXP209 is not set
+# CONFIG_PINCTRL_AW9523 is not set
# CONFIG_PINCTRL_CY8C95X0 is not set
-CONFIG_PINCTRL_MAX77620=y
+CONFIG_PINCTRL_MAX77620=m
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
# CONFIG_PINCTRL_OCELOT is not set
@@ -3198,7 +3122,7 @@ CONFIG_PINCTRL_QCOM_SPMI_PMIC=y
CONFIG_PINCTRL_LPASS_LPI=y
# CONFIG_PINCTRL_SC7280_LPASS_LPI is not set
# CONFIG_PINCTRL_SM6115_LPASS_LPI is not set
-CONFIG_PINCTRL_SM8250_LPASS_LPI=m
+CONFIG_PINCTRL_SM8250_LPASS_LPI=y
# CONFIG_PINCTRL_SM8350_LPASS_LPI is not set
# CONFIG_PINCTRL_SM8450_LPASS_LPI is not set
# CONFIG_PINCTRL_SC8280XP_LPASS_LPI is not set
@@ -3215,7 +3139,8 @@ CONFIG_GPIOLIB_FASTPATH_LIMIT=512
CONFIG_OF_GPIO=y
CONFIG_GPIO_ACPI=y
CONFIG_GPIOLIB_IRQCHIP=y
-CONFIG_OF_GPIO_MM_GPIOCHIP=y
+# CONFIG_DEBUG_GPIO is not set
+CONFIG_GPIO_SYSFS=y
CONFIG_GPIO_CDEV=y
CONFIG_GPIO_CDEV_V1=y
CONFIG_GPIO_GENERIC=y
@@ -3332,8 +3257,8 @@ CONFIG_POWER_SUPPLY_HWMON=y
# CONFIG_BATTERY_SBS is not set
# CONFIG_CHARGER_SBS is not set
# CONFIG_MANAGER_SBS is not set
-CONFIG_BATTERY_BQ27XXX=y
-CONFIG_BATTERY_BQ27XXX_I2C=y
+CONFIG_BATTERY_BQ27XXX=m
+CONFIG_BATTERY_BQ27XXX_I2C=m
# CONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM is not set
# CONFIG_AXP20X_POWER is not set
# CONFIG_BATTERY_MAX17040 is not set
@@ -3379,6 +3304,7 @@ CONFIG_HWMON=y
# CONFIG_SENSORS_AD7314 is not set
# CONFIG_SENSORS_AD7414 is not set
# CONFIG_SENSORS_AD7418 is not set
+# CONFIG_SENSORS_ADM1021 is not set
# CONFIG_SENSORS_ADM1025 is not set
# CONFIG_SENSORS_ADM1026 is not set
# CONFIG_SENSORS_ADM1029 is not set
@@ -3395,10 +3321,12 @@ CONFIG_HWMON=y
# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
# CONFIG_SENSORS_AS370 is not set
# CONFIG_SENSORS_ASC7621 is not set
+# CONFIG_SENSORS_ASUS_ROG_RYUJIN is not set
# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
CONFIG_SENSORS_ARM_SCMI=y
CONFIG_SENSORS_ARM_SCPI=y
# CONFIG_SENSORS_ATXP1 is not set
+# CONFIG_SENSORS_CHIPCAP2 is not set
# CONFIG_SENSORS_CORSAIR_CPRO is not set
# CONFIG_SENSORS_CORSAIR_PSU is not set
# CONFIG_SENSORS_DRIVETEMP is not set
@@ -3437,6 +3365,7 @@ CONFIG_SENSORS_ARM_SCPI=y
# CONFIG_SENSORS_LTC4245 is not set
# CONFIG_SENSORS_LTC4260 is not set
# CONFIG_SENSORS_LTC4261 is not set
+# CONFIG_SENSORS_LTC4282 is not set
# CONFIG_SENSORS_MAX1111 is not set
# CONFIG_SENSORS_MAX127 is not set
# CONFIG_SENSORS_MAX16065 is not set
@@ -3450,6 +3379,7 @@ CONFIG_SENSORS_ARM_SCPI=y
# CONFIG_SENSORS_MAX6620 is not set
# CONFIG_SENSORS_MAX6621 is not set
# CONFIG_SENSORS_MAX6639 is not set
+# CONFIG_SENSORS_MAX6642 is not set
# CONFIG_SENSORS_MAX6650 is not set
# CONFIG_SENSORS_MAX6697 is not set
# CONFIG_SENSORS_MAX31790 is not set
@@ -3469,7 +3399,7 @@ CONFIG_SENSORS_ARM_SCPI=y
# CONFIG_SENSORS_LM83 is not set
# CONFIG_SENSORS_LM85 is not set
# CONFIG_SENSORS_LM87 is not set
-CONFIG_SENSORS_LM90=m
+# CONFIG_SENSORS_LM90 is not set
# CONFIG_SENSORS_LM92 is not set
# CONFIG_SENSORS_LM93 is not set
# CONFIG_SENSORS_LM95234 is not set
@@ -3485,11 +3415,13 @@ CONFIG_SENSORS_LM90=m
# CONFIG_SENSORS_NCT7904 is not set
# CONFIG_SENSORS_NPCM7XX is not set
# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
+# CONFIG_SENSORS_NZXT_KRAKEN3 is not set
# CONFIG_SENSORS_NZXT_SMART2 is not set
# CONFIG_SENSORS_OCC_P8_I2C is not set
# CONFIG_SENSORS_PCF8591 is not set
# CONFIG_PMBUS is not set
-CONFIG_SENSORS_PWM_FAN=m
+# CONFIG_SENSORS_PT5161L is not set
+CONFIG_SENSORS_PWM_FAN=y
# CONFIG_SENSORS_SBTSI is not set
# CONFIG_SENSORS_SBRMI is not set
# CONFIG_SENSORS_SHT15 is not set
@@ -3514,9 +3446,9 @@ CONFIG_SENSORS_PWM_FAN=m
# CONFIG_SENSORS_ADS7871 is not set
# CONFIG_SENSORS_AMC6821 is not set
# CONFIG_SENSORS_INA209 is not set
-CONFIG_SENSORS_INA2XX=m
+# CONFIG_SENSORS_INA2XX is not set
# CONFIG_SENSORS_INA238 is not set
-CONFIG_SENSORS_INA3221=m
+# CONFIG_SENSORS_INA3221 is not set
# CONFIG_SENSORS_TC74 is not set
# CONFIG_SENSORS_THMC50 is not set
# CONFIG_SENSORS_TMP102 is not set
@@ -3552,7 +3484,6 @@ CONFIG_THERMAL=y
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
CONFIG_THERMAL_OF=y
-# CONFIG_THERMAL_WRITABLE_TRIPS is not set
CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
@@ -3560,11 +3491,11 @@ CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
CONFIG_THERMAL_GOV_STEP_WISE=y
# CONFIG_THERMAL_GOV_BANG_BANG is not set
-# CONFIG_THERMAL_GOV_USER_SPACE is not set
+CONFIG_THERMAL_GOV_USER_SPACE=y
CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
CONFIG_CPU_THERMAL=y
CONFIG_CPU_FREQ_THERMAL=y
-# CONFIG_DEVFREQ_THERMAL is not set
+CONFIG_DEVFREQ_THERMAL=y
CONFIG_THERMAL_EMULATION=y
# CONFIG_THERMAL_MMIO is not set
# CONFIG_MAX77620_THERMAL is not set
@@ -3695,6 +3626,7 @@ CONFIG_MFD_MT6397=y
# CONFIG_MFD_NTXEC is not set
# CONFIG_MFD_RETU is not set
# CONFIG_MFD_PCF50633 is not set
+CONFIG_MFD_QCOM_QCA639X=y
# CONFIG_MFD_QCOM_RPM is not set
CONFIG_MFD_SPMI_PMIC=y
# CONFIG_MFD_SY7636A is not set
@@ -3863,7 +3795,7 @@ CONFIG_REGULATOR_VCTRL=m
# CONFIG_REGULATOR_VQMMC_IPQ4019 is not set
# CONFIG_REGULATOR_QCOM_LABIBB is not set
# CONFIG_RC_CORE is not set
-CONFIG_CEC_CORE=m
+CONFIG_CEC_CORE=y
#
# CEC support
@@ -4026,19 +3958,113 @@ CONFIG_VIDEOBUF2_MEMOPS=m
CONFIG_VIDEOBUF2_DMA_CONTIG=m
# end of Media drivers
-CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
-
#
# Media ancillary drivers
#
#
-# audio, video and radio I2C drivers auto-selected by 'Autoselect ancillary drivers'
-#
+# Audio decoders, processors and mixers
+#
+# CONFIG_VIDEO_CS3308 is not set
+# CONFIG_VIDEO_CS5345 is not set
+# CONFIG_VIDEO_CS53L32A is not set
+# CONFIG_VIDEO_MSP3400 is not set
+# CONFIG_VIDEO_SONY_BTF_MPX is not set
+# CONFIG_VIDEO_TDA1997X is not set
+# CONFIG_VIDEO_TDA7432 is not set
+# CONFIG_VIDEO_TDA9840 is not set
+# CONFIG_VIDEO_TEA6415C is not set
+# CONFIG_VIDEO_TEA6420 is not set
+# CONFIG_VIDEO_TLV320AIC23B is not set
+# CONFIG_VIDEO_TVAUDIO is not set
+# CONFIG_VIDEO_UDA1342 is not set
+# CONFIG_VIDEO_VP27SMPX is not set
+# CONFIG_VIDEO_WM8739 is not set
+# CONFIG_VIDEO_WM8775 is not set
+# end of Audio decoders, processors and mixers
+
+#
+# RDS decoders
+#
+# CONFIG_VIDEO_SAA6588 is not set
+# end of RDS decoders
+
+#
+# Video decoders
+#
+# CONFIG_VIDEO_ADV7180 is not set
+# CONFIG_VIDEO_ADV7183 is not set
+# CONFIG_VIDEO_ADV748X is not set
+# CONFIG_VIDEO_ADV7604 is not set
+# CONFIG_VIDEO_ADV7842 is not set
+# CONFIG_VIDEO_BT819 is not set
+# CONFIG_VIDEO_BT856 is not set
+# CONFIG_VIDEO_BT866 is not set
+# CONFIG_VIDEO_ISL7998X is not set
+# CONFIG_VIDEO_KS0127 is not set
+# CONFIG_VIDEO_MAX9286 is not set
+# CONFIG_VIDEO_ML86V7667 is not set
+# CONFIG_VIDEO_SAA7110 is not set
+# CONFIG_VIDEO_SAA711X is not set
+# CONFIG_VIDEO_TC358743 is not set
+# CONFIG_VIDEO_TC358746 is not set
+# CONFIG_VIDEO_TVP514X is not set
+# CONFIG_VIDEO_TVP5150 is not set
+# CONFIG_VIDEO_TVP7002 is not set
+# CONFIG_VIDEO_TW2804 is not set
+# CONFIG_VIDEO_TW9900 is not set
+# CONFIG_VIDEO_TW9903 is not set
+# CONFIG_VIDEO_TW9906 is not set
+# CONFIG_VIDEO_TW9910 is not set
+# CONFIG_VIDEO_VPX3220 is not set
#
# Video and audio decoders
#
+# CONFIG_VIDEO_SAA717X is not set
+# CONFIG_VIDEO_CX25840 is not set
+# end of Video decoders
+
+#
+# Video encoders
+#
+# CONFIG_VIDEO_ADV7170 is not set
+# CONFIG_VIDEO_ADV7175 is not set
+# CONFIG_VIDEO_ADV7343 is not set
+# CONFIG_VIDEO_ADV7393 is not set
+# CONFIG_VIDEO_ADV7511 is not set
+# CONFIG_VIDEO_AK881X is not set
+# CONFIG_VIDEO_SAA7127 is not set
+# CONFIG_VIDEO_SAA7185 is not set
+# CONFIG_VIDEO_THS8200 is not set
+# end of Video encoders
+
+#
+# Video improvement chips
+#
+# CONFIG_VIDEO_UPD64031A is not set
+# CONFIG_VIDEO_UPD64083 is not set
+# end of Video improvement chips
+
+#
+# Audio/Video compression chips
+#
+# CONFIG_VIDEO_SAA6752HS is not set
+# end of Audio/Video compression chips
+
+#
+# SDR tuner chips
+#
+# end of SDR tuner chips
+
+#
+# Miscellaneous helper chips
+#
+# CONFIG_VIDEO_I2C is not set
+# CONFIG_VIDEO_M52790 is not set
+# CONFIG_VIDEO_ST_MIPID02 is not set
+# CONFIG_VIDEO_THS7303 is not set
+# end of Miscellaneous helper chips
#
# Video serializers and deserializers
@@ -4048,10 +4074,6 @@ CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
# CONFIG_VIDEO_DS90UB960 is not set
# end of Video serializers and deserializers
-#
-# SPI I2C drivers auto-selected by 'Autoselect ancillary drivers'
-#
-
#
# Media SPI Adapters
#
@@ -4063,21 +4085,24 @@ CONFIG_MEDIA_HIDE_ANCILLARY_SUBDRV=y
# Graphics support
#
CONFIG_APERTURE_HELPERS=y
-CONFIG_VIDEO_CMDLINE=y
-CONFIG_VIDEO_NOMODESET=y
+CONFIG_SCREEN_INFO=y
+CONFIG_VIDEO=y
# CONFIG_AUXDISPLAY is not set
CONFIG_DRM=y
CONFIG_DRM_MIPI_DSI=y
# CONFIG_DRM_DEBUG_MM is not set
CONFIG_DRM_KMS_HELPER=y
+# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set
+# CONFIG_DRM_DEBUG_MODESET_LOCK is not set
CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
-# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set
+# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set
+CONFIG_DRM_LOAD_EDID_FIRMWARE=y
CONFIG_DRM_DP_AUX_BUS=y
CONFIG_DRM_DISPLAY_HELPER=y
CONFIG_DRM_DISPLAY_DP_HELPER=y
-# CONFIG_DRM_DP_AUX_CHARDEV is not set
-# CONFIG_DRM_DP_CEC is not set
+CONFIG_DRM_DP_AUX_CHARDEV=y
+CONFIG_DRM_DP_CEC=y
CONFIG_DRM_EXEC=y
CONFIG_DRM_GEM_SHMEM_HELPER=y
CONFIG_DRM_SCHED=y
@@ -4112,6 +4137,7 @@ CONFIG_DRM_I2C_NXP_TDA998X=m
# CONFIG_DRM_QXL is not set
CONFIG_DRM_MSM=y
CONFIG_DRM_MSM_GPU_STATE=y
+# CONFIG_DRM_MSM_GPU_SUDO is not set
CONFIG_DRM_MSM_MDSS=y
# CONFIG_DRM_MSM_MDP4 is not set
# CONFIG_DRM_MSM_MDP5 is not set
@@ -4137,15 +4163,15 @@ CONFIG_DRM_PANEL=y
# CONFIG_DRM_PANEL_AUO_A030JTN01 is not set
# CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set
# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
+# CONFIG_DRM_PANEL_BOE_TH101MB31UIG002_28A is not set
# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
-# CONFIG_DRM_PANEL_DSI_CM is not set
-# CONFIG_DRM_PANEL_LVDS is not set
-# CONFIG_DRM_PANEL_SIMPLE is not set
-# CONFIG_DRM_PANEL_EDP is not set
# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
+# CONFIG_DRM_PANEL_DSI_CM is not set
+# CONFIG_DRM_PANEL_LVDS is not set
+# CONFIG_DRM_PANEL_HIMAX_HX83112A is not set
# CONFIG_DRM_PANEL_HIMAX_HX8394 is not set
# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
@@ -4155,17 +4181,17 @@ CONFIG_DRM_PANEL=y
# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
# CONFIG_DRM_PANEL_JADARD_JD9365DA_H3 is not set
-# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_JDI_LPM102A188A is not set
+# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_JDI_R63452 is not set
# CONFIG_DRM_PANEL_KHADAS_TS050 is not set
# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
# CONFIG_DRM_PANEL_MAGNACHIP_D53E6EA8966 is not set
+# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
# CONFIG_DRM_PANEL_NEWVISION_NV3051D is not set
# CONFIG_DRM_PANEL_NEWVISION_NV3052C is not set
@@ -4174,8 +4200,8 @@ CONFIG_DRM_PANEL=y
# CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set
CONFIG_DRM_PANEL_NOVATEK_NT36523=y
# CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT36672E is not set
# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
-# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
# CONFIG_DRM_PANEL_ORISETECH_OTA5601A is not set
# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
@@ -4186,15 +4212,16 @@ CONFIG_DRM_PANEL_NOVATEK_NT36523=y
# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
# CONFIG_DRM_PANEL_RAYDIUM_RM692E5 is not set
# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
-# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
# CONFIG_DRM_PANEL_SAMSUNG_SOFEF00 is not set
# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
@@ -4205,19 +4232,21 @@ CONFIG_DRM_PANEL_NOVATEK_NT36523=y
# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
-# CONFIG_DRM_PANEL_SYNAPTICS_R63353 is not set
# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
# CONFIG_DRM_PANEL_SONY_TD4353_JDI is not set
# CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set
# CONFIG_DRM_PANEL_STARTEK_KD070FHFID015 is not set
+# CONFIG_DRM_PANEL_EDP is not set
+# CONFIG_DRM_PANEL_SIMPLE is not set
+# CONFIG_DRM_PANEL_SYNAPTICS_R63353 is not set
# CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set
# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
# CONFIG_DRM_PANEL_TPO_TPG110 is not set
# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
+# CONFIG_DRM_PANEL_VISIONOX_R66451 is not set
# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
# CONFIG_DRM_PANEL_VISIONOX_VTDR6130 is not set
-# CONFIG_DRM_PANEL_VISIONOX_R66451 is not set
# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
# end of Display Panels
@@ -4241,16 +4270,16 @@ CONFIG_DRM_LONTIUM_LT9611UXC=m
# CONFIG_DRM_ITE_IT66121 is not set
# CONFIG_DRM_LVDS_CODEC is not set
# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
-CONFIG_DRM_NWL_MIPI_DSI=m
+# CONFIG_DRM_NWL_MIPI_DSI is not set
# CONFIG_DRM_NXP_PTN3460 is not set
# CONFIG_DRM_PARADE_PS8622 is not set
-CONFIG_DRM_PARADE_PS8640=m
+# CONFIG_DRM_PARADE_PS8640 is not set
# CONFIG_DRM_SAMSUNG_DSIM is not set
# CONFIG_DRM_SIL_SII8620 is not set
-CONFIG_DRM_SII902X=m
+# CONFIG_DRM_SII902X is not set
# CONFIG_DRM_SII9234 is not set
CONFIG_DRM_SIMPLE_BRIDGE=m
-CONFIG_DRM_THINE_THC63LVD1024=m
+# CONFIG_DRM_THINE_THC63LVD1024 is not set
# CONFIG_DRM_TOSHIBA_TC358762 is not set
# CONFIG_DRM_TOSHIBA_TC358764 is not set
# CONFIG_DRM_TOSHIBA_TC358767 is not set
@@ -4363,6 +4392,7 @@ CONFIG_FB_MODE_HELPERS=y
# CONFIG_LCD_CLASS_DEVICE is not set
CONFIG_BACKLIGHT_CLASS_DEVICE=y
# CONFIG_BACKLIGHT_KTD253 is not set
+# CONFIG_BACKLIGHT_KTD2801 is not set
CONFIG_BACKLIGHT_KTZ8866=y
# CONFIG_BACKLIGHT_PWM is not set
# CONFIG_BACKLIGHT_QCOM_WLED is not set
@@ -4419,11 +4449,14 @@ CONFIG_SND_DYNAMIC_MINORS=y
CONFIG_SND_MAX_CARDS=32
CONFIG_SND_SUPPORT_OLD_API=y
CONFIG_SND_PROC_FS=y
-CONFIG_SND_VERBOSE_PROCFS=y
-# CONFIG_SND_VERBOSE_PRINTK is not set
+# CONFIG_SND_VERBOSE_PROCFS is not set
+CONFIG_SND_VERBOSE_PRINTK=y
CONFIG_SND_CTL_FAST_LOOKUP=y
-# CONFIG_SND_DEBUG is not set
+CONFIG_SND_DEBUG=y
+CONFIG_SND_DEBUG_VERBOSE=y
# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_JACK_INJECTION_DEBUG is not set
# CONFIG_SND_SEQUENCER is not set
CONFIG_SND_DRIVERS=y
# CONFIG_SND_DUMMY is not set
@@ -4472,8 +4505,7 @@ CONFIG_SND_SOC_TOPOLOGY=y
# Common SoC Audio options for Freescale CPUs:
#
CONFIG_SND_SOC_FSL_ASRC=m
-CONFIG_SND_SOC_FSL_SAI=m
-# CONFIG_SND_SOC_FSL_MQS is not set
+# CONFIG_SND_SOC_FSL_SAI is not set
# CONFIG_SND_SOC_FSL_AUDMIX is not set
# CONFIG_SND_SOC_FSL_SSI is not set
# CONFIG_SND_SOC_FSL_SPDIF is not set
@@ -4483,7 +4515,7 @@ CONFIG_SND_SOC_FSL_EASRC=m
# CONFIG_SND_SOC_FSL_XCVR is not set
CONFIG_SND_SOC_FSL_UTILS=m
# CONFIG_SND_SOC_FSL_RPMSG is not set
-# CONFIG_SND_SOC_IMX_AUDMUX is not set
+CONFIG_SND_SOC_IMX_AUDMUX=m
# end of SoC Audio for Freescale CPUs
# CONFIG_SND_SOC_CHV3_I2S is not set
@@ -4491,13 +4523,10 @@ CONFIG_SND_SOC_FSL_UTILS=m
# CONFIG_SND_SOC_IMG is not set
# CONFIG_SND_SOC_MTK_BTCVSD is not set
CONFIG_SND_SOC_QCOM=y
-CONFIG_SND_SOC_LPASS_CPU=m
-CONFIG_SND_SOC_LPASS_PLATFORM=m
-CONFIG_SND_SOC_LPASS_APQ8016=m
# CONFIG_SND_SOC_STORM is not set
-CONFIG_SND_SOC_APQ8016_SBC=m
-CONFIG_SND_SOC_QCOM_COMMON=y
-CONFIG_SND_SOC_QCOM_SDW=y
+# CONFIG_SND_SOC_APQ8016_SBC is not set
+CONFIG_SND_SOC_QCOM_COMMON=m
+CONFIG_SND_SOC_QCOM_SDW=m
CONFIG_SND_SOC_QDSP6_COMMON=y
CONFIG_SND_SOC_QDSP6_CORE=y
CONFIG_SND_SOC_QDSP6_AFE=y
@@ -4515,7 +4544,7 @@ CONFIG_SND_SOC_QDSP6_PRM=y
CONFIG_SND_SOC_QDSP6=y
# CONFIG_SND_SOC_MSM8996 is not set
# CONFIG_SND_SOC_SDM845 is not set
-CONFIG_SND_SOC_SM8250=y
+CONFIG_SND_SOC_SM8250=m
# CONFIG_SND_SOC_SC8280XP is not set
# CONFIG_SND_SOC_SC7180 is not set
# CONFIG_SND_SOC_SC7280 is not set
@@ -4661,6 +4690,7 @@ CONFIG_SND_SOC_HDMI_CODEC=y
# CONFIG_SND_SOC_RT715_SDCA_SDW is not set
# CONFIG_SND_SOC_RT9120 is not set
# CONFIG_SND_SOC_RTQ9128 is not set
+# CONFIG_SND_SOC_SDW_MOCKUP is not set
# CONFIG_SND_SOC_SGTL5000 is not set
# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
# CONFIG_SND_SOC_SIMPLE_MUX is not set
@@ -4703,12 +4733,10 @@ CONFIG_SND_SOC_HDMI_CODEC=y
# CONFIG_SND_SOC_TSCS42XX is not set
# CONFIG_SND_SOC_TSCS454 is not set
# CONFIG_SND_SOC_UDA1334 is not set
-CONFIG_SND_SOC_WCD_CLASSH=m
# CONFIG_SND_SOC_WCD9335 is not set
-CONFIG_SND_SOC_WCD_MBHC=m
# CONFIG_SND_SOC_WCD934X is not set
-CONFIG_SND_SOC_WCD938X=m
-CONFIG_SND_SOC_WCD938X_SDW=m
+# CONFIG_SND_SOC_WCD938X_SDW is not set
+# CONFIG_SND_SOC_WCD939X_SDW is not set
# CONFIG_SND_SOC_WM8510 is not set
# CONFIG_SND_SOC_WM8523 is not set
# CONFIG_SND_SOC_WM8524 is not set
@@ -4750,9 +4778,9 @@ CONFIG_SND_SOC_WCD938X_SDW=m
# CONFIG_SND_SOC_NAU8822 is not set
# CONFIG_SND_SOC_NAU8824 is not set
# CONFIG_SND_SOC_TPA6130A2 is not set
-CONFIG_SND_SOC_LPASS_MACRO_COMMON=y
-CONFIG_SND_SOC_LPASS_WSA_MACRO=y
-CONFIG_SND_SOC_LPASS_VA_MACRO=y
+CONFIG_SND_SOC_LPASS_MACRO_COMMON=m
+# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
CONFIG_SND_SOC_LPASS_RX_MACRO=m
CONFIG_SND_SOC_LPASS_TX_MACRO=m
# end of CODEC drivers
@@ -4851,6 +4879,7 @@ CONFIG_HID_NINTENDO=m
# CONFIG_HID_PETALYNX is not set
# CONFIG_HID_PICOLCD is not set
# CONFIG_HID_PLANTRONICS is not set
+# CONFIG_HID_PLAYSTATION is not set
# CONFIG_HID_PXRC is not set
# CONFIG_HID_RAZER is not set
# CONFIG_HID_PRIMAX is not set
@@ -4929,6 +4958,7 @@ CONFIG_USB_OTG=y
# CONFIG_USB_OTG_FSM is not set
# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
CONFIG_USB_AUTOSUSPEND_DELAY=2
+CONFIG_USB_DEFAULT_AUTHORIZATION_MODE=1
CONFIG_USB_MON=m
#
@@ -4962,7 +4992,7 @@ CONFIG_USB_OHCI_HCD_PLATFORM=y
#
CONFIG_USB_ACM=m
# CONFIG_USB_PRINTER is not set
-# CONFIG_USB_WDM is not set
+CONFIG_USB_WDM=m
# CONFIG_USB_TMC is not set
#
@@ -5124,7 +5154,7 @@ CONFIG_USB_SERIAL_OPTION=m
# CONFIG_USB_CYTHERM is not set
# CONFIG_USB_IDMOUSE is not set
# CONFIG_USB_APPLEDISPLAY is not set
-# CONFIG_USB_QCOM_EUD is not set
+CONFIG_USB_QCOM_EUD=m
# CONFIG_APPLE_MFI_FASTCHARGE is not set
# CONFIG_USB_LJCA is not set
# CONFIG_USB_SISUSBVGA is not set
@@ -5154,6 +5184,7 @@ CONFIG_NOP_USB_XCEIV=y
# end of USB Physical Layer drivers
CONFIG_USB_GADGET=y
+# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGET_DEBUG_FILES is not set
# CONFIG_USB_GADGET_DEBUG_FS is not set
CONFIG_USB_GADGET_VBUS_DRAW=2
@@ -5259,7 +5290,8 @@ CONFIG_TYPEC_HD3SS3220=m
# CONFIG_TYPEC_MUX_FSA4480 is not set
# CONFIG_TYPEC_MUX_GPIO_SBU is not set
# CONFIG_TYPEC_MUX_PI3USB30532 is not set
-# CONFIG_TYPEC_MUX_NB7VPQ904M is not set
+# CONFIG_TYPEC_MUX_IT5205 is not set
+CONFIG_TYPEC_MUX_NB7VPQ904M=y
# CONFIG_TYPEC_MUX_PTN36502 is not set
# CONFIG_TYPEC_MUX_WCD939X_USBSS is not set
# end of USB Type-C Multiplexer/DeMultiplexer Switch support
@@ -5267,11 +5299,49 @@ CONFIG_TYPEC_HD3SS3220=m
#
# USB Type-C Alternate Mode drivers
#
-# CONFIG_TYPEC_DP_ALTMODE is not set
+CONFIG_TYPEC_DP_ALTMODE=y
+# CONFIG_TYPEC_NVIDIA_ALTMODE is not set
# end of USB Type-C Alternate Mode drivers
CONFIG_USB_ROLE_SWITCH=y
-# CONFIG_MMC is not set
+CONFIG_MMC=m
+CONFIG_PWRSEQ_EMMC=m
+CONFIG_PWRSEQ_SIMPLE=m
+CONFIG_MMC_BLOCK=m
+CONFIG_MMC_BLOCK_MINORS=8
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_ARMMMCI is not set
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_SDHCI_IO_ACCESSORS=y
+# CONFIG_MMC_SDHCI_PCI is not set
+# CONFIG_MMC_SDHCI_ACPI is not set
+CONFIG_MMC_SDHCI_PLTFM=m
+# CONFIG_MMC_SDHCI_OF_ARASAN is not set
+# CONFIG_MMC_SDHCI_OF_AT91 is not set
+# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
+# CONFIG_MMC_SDHCI_CADENCE is not set
+# CONFIG_MMC_SDHCI_F_SDH30 is not set
+# CONFIG_MMC_SDHCI_MILBEAUT is not set
+CONFIG_MMC_SDHCI_MSM=m
+# CONFIG_MMC_TIFM_SD is not set
+CONFIG_MMC_SPI=m
+# CONFIG_MMC_CB710 is not set
+# CONFIG_MMC_VIA_SDMMC is not set
+# CONFIG_MMC_DW is not set
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MMC_USDHI6ROL0 is not set
+CONFIG_MMC_CQHCI=m
+CONFIG_MMC_HSQ=m
+# CONFIG_MMC_TOSHIBA_PCI is not set
+# CONFIG_MMC_MTK is not set
+# CONFIG_MMC_SDHCI_XENON is not set
CONFIG_SCSI_UFSHCD=y
CONFIG_SCSI_UFS_BSG=y
# CONFIG_SCSI_UFS_HWMON is not set
@@ -5284,7 +5354,7 @@ CONFIG_SCSI_UFS_QCOM=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
# CONFIG_LEDS_CLASS_FLASH is not set
-# CONFIG_LEDS_CLASS_MULTICOLOR is not set
+CONFIG_LEDS_CLASS_MULTICOLOR=y
# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
#
@@ -5300,11 +5370,10 @@ CONFIG_LEDS_CLASS=y
# CONFIG_LEDS_LM3530 is not set
# CONFIG_LEDS_LM3532 is not set
# CONFIG_LEDS_LM3642 is not set
-CONFIG_LEDS_LM3692X=m
+# CONFIG_LEDS_LM3692X is not set
# CONFIG_LEDS_MT6323 is not set
-CONFIG_LEDS_PCA9532=m
-# CONFIG_LEDS_PCA9532_GPIO is not set
-CONFIG_LEDS_GPIO=y
+# CONFIG_LEDS_PCA9532 is not set
+CONFIG_LEDS_GPIO=m
# CONFIG_LEDS_LP3944 is not set
# CONFIG_LEDS_LP3952 is not set
# CONFIG_LEDS_LP50XX is not set
@@ -5314,7 +5383,7 @@ CONFIG_LEDS_GPIO=y
# CONFIG_LEDS_PCA963X is not set
# CONFIG_LEDS_PCA995X is not set
# CONFIG_LEDS_DAC124S085 is not set
-CONFIG_LEDS_PWM=y
+CONFIG_LEDS_PWM=m
# CONFIG_LEDS_REGULATOR is not set
# CONFIG_LEDS_BD2606MVV is not set
# CONFIG_LEDS_BD2802 is not set
@@ -5331,7 +5400,7 @@ CONFIG_LEDS_PWM=y
# CONFIG_LEDS_BLINKM is not set
CONFIG_LEDS_SYSCON=y
# CONFIG_LEDS_MLXREG is not set
-# CONFIG_LEDS_USER is not set
+CONFIG_LEDS_USER=m
# CONFIG_LEDS_SPI_BYTE is not set
# CONFIG_LEDS_LM3697 is not set
@@ -5342,6 +5411,11 @@ CONFIG_LEDS_SYSCON=y
#
# RGB LED drivers
#
+# CONFIG_LEDS_GROUP_MULTICOLOR is not set
+# CONFIG_LEDS_KTD202X is not set
+# CONFIG_LEDS_NCP5623 is not set
+# CONFIG_LEDS_PWM_MULTICOLOR is not set
+CONFIG_LEDS_QCOM_LPG=y
#
# LED Triggers
@@ -5350,11 +5424,10 @@ CONFIG_LEDS_TRIGGERS=y
CONFIG_LEDS_TRIGGER_TIMER=y
# CONFIG_LEDS_TRIGGER_ONESHOT is not set
CONFIG_LEDS_TRIGGER_DISK=y
-# CONFIG_LEDS_TRIGGER_MTD is not set
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
CONFIG_LEDS_TRIGGER_CPU=y
-# CONFIG_LEDS_TRIGGER_ACTIVITY is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
# CONFIG_LEDS_TRIGGER_GPIO is not set
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
@@ -5364,10 +5437,10 @@ CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
# CONFIG_LEDS_TRIGGER_CAMERA is not set
CONFIG_LEDS_TRIGGER_PANIC=y
-# CONFIG_LEDS_TRIGGER_NETDEV is not set
+CONFIG_LEDS_TRIGGER_NETDEV=m
# CONFIG_LEDS_TRIGGER_PATTERN is not set
-# CONFIG_LEDS_TRIGGER_AUDIO is not set
-# CONFIG_LEDS_TRIGGER_TTY is not set
+CONFIG_LEDS_TRIGGER_AUDIO=m
+CONFIG_LEDS_TRIGGER_TTY=m
#
# Simple LED drivers
@@ -5574,66 +5647,7 @@ CONFIG_VIRTIO=y
# CONFIG_GREYBUS is not set
# CONFIG_COMEDI is not set
-CONFIG_STAGING=y
-# CONFIG_PRISM2_USB is not set
-# CONFIG_RTLLIB is not set
-# CONFIG_R8712U is not set
-# CONFIG_RTS5208 is not set
-# CONFIG_VT6655 is not set
-# CONFIG_VT6656 is not set
-
-#
-# IIO staging drivers
-#
-
-#
-# Accelerometers
-#
-# CONFIG_ADIS16203 is not set
-# CONFIG_ADIS16240 is not set
-# end of Accelerometers
-
-#
-# Analog to digital converters
-#
-# CONFIG_AD7816 is not set
-# end of Analog to digital converters
-
-#
-# Analog digital bi-direction converters
-#
-# CONFIG_ADT7316 is not set
-# end of Analog digital bi-direction converters
-
-#
-# Direct Digital Synthesis
-#
-# CONFIG_AD9832 is not set
-# CONFIG_AD9834 is not set
-# end of Direct Digital Synthesis
-
-#
-# Network Analyzer, Impedance Converters
-#
-# CONFIG_AD5933 is not set
-# end of Network Analyzer, Impedance Converters
-# end of IIO staging drivers
-
-# CONFIG_FB_SM750 is not set
-CONFIG_STAGING_MEDIA=y
-# CONFIG_VIDEO_MAX96712 is not set
-
-#
-# StarFive media platform drivers
-#
-# CONFIG_STAGING_MEDIA_DEPRECATED is not set
-# CONFIG_STAGING_BOARD is not set
-# CONFIG_LTE_GDM724X is not set
-# CONFIG_FB_TFT is not set
-# CONFIG_PI433 is not set
-# CONFIG_XIL_AXIS_FIFO is not set
-# CONFIG_FIELDBUS_DEV is not set
-# CONFIG_VME_BUS is not set
+# CONFIG_STAGING is not set
# CONFIG_GOLDFISH is not set
# CONFIG_CHROME_PLATFORMS is not set
# CONFIG_MELLANOX_PLATFORM is not set
@@ -5661,22 +5675,26 @@ CONFIG_COMMON_CLK_SCPI=y
# CONFIG_COMMON_CLK_SI570 is not set
# CONFIG_COMMON_CLK_CDCE706 is not set
# CONFIG_COMMON_CLK_CDCE925 is not set
-CONFIG_COMMON_CLK_CS2000_CP=y
-CONFIG_COMMON_CLK_S2MPS11=y
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+# CONFIG_COMMON_CLK_S2MPS11 is not set
# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
# CONFIG_COMMON_CLK_XGENE is not set
CONFIG_COMMON_CLK_PWM=y
# CONFIG_COMMON_CLK_RS9_PCIE is not set
# CONFIG_COMMON_CLK_SI521XX is not set
# CONFIG_COMMON_CLK_VC3 is not set
-CONFIG_COMMON_CLK_VC5=y
+# CONFIG_COMMON_CLK_VC5 is not set
# CONFIG_COMMON_CLK_VC7 is not set
CONFIG_COMMON_CLK_BD718XX=m
# CONFIG_COMMON_CLK_FIXED_MMIO is not set
CONFIG_QCOM_GDSC=y
CONFIG_QCOM_RPMCC=y
CONFIG_COMMON_CLK_QCOM=y
+# CONFIG_CLK_X1E80100_CAMCC is not set
+# CONFIG_CLK_X1E80100_DISPCC is not set
# CONFIG_CLK_X1E80100_GCC is not set
+# CONFIG_CLK_X1E80100_GPUCC is not set
+# CONFIG_CLK_X1E80100_TCSRCC is not set
# CONFIG_QCOM_A53PLL is not set
# CONFIG_QCOM_A7PLL is not set
# CONFIG_QCOM_CLK_APCS_MSM8916 is not set
@@ -5725,7 +5743,6 @@ CONFIG_QCOM_CLK_RPMH=y
# CONFIG_SC_LPASSCC_8280XP is not set
# CONFIG_SC_LPASS_CORECC_7180 is not set
# CONFIG_SC_LPASS_CORECC_7280 is not set
-# CONFIG_SC_MSS_7180 is not set
# CONFIG_SC_VIDEOCC_7180 is not set
# CONFIG_SC_VIDEOCC_7280 is not set
# CONFIG_SDM_CAMCC_845 is not set
@@ -5794,10 +5811,9 @@ CONFIG_TIMER_ACPI=y
CONFIG_TIMER_PROBE=y
CONFIG_ARM_ARCH_TIMER=y
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
-CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y
-CONFIG_FSL_ERRATUM_A008585=y
-CONFIG_HISILICON_ERRATUM_161010101=y
-CONFIG_ARM64_ERRATUM_858921=y
+# CONFIG_FSL_ERRATUM_A008585 is not set
+# CONFIG_HISILICON_ERRATUM_161010101 is not set
+# CONFIG_ARM64_ERRATUM_858921 is not set
# end of Clock Source drivers
CONFIG_MAILBOX=y
@@ -5871,14 +5887,14 @@ CONFIG_RPMSG_QCOM_SMD=y
# CONFIG_RPMSG_VIRTIO is not set
# end of Rpmsg drivers
-CONFIG_SOUNDWIRE=y
+CONFIG_SOUNDWIRE=m
#
# SoundWire Devices
#
# CONFIG_SOUNDWIRE_AMD is not set
# CONFIG_SOUNDWIRE_INTEL is not set
-CONFIG_SOUNDWIRE_QCOM=y
+CONFIG_SOUNDWIRE_QCOM=m
#
# SOC (System On Chip) specific Drivers
@@ -5950,6 +5966,7 @@ CONFIG_QCOM_STATS=m
CONFIG_QCOM_WCNSS_CTRL=m
CONFIG_QCOM_APR=y
# CONFIG_QCOM_ICC_BWMON is not set
+# CONFIG_QCOM_PBS is not set
# end of Qualcomm SoC drivers
# CONFIG_SOC_TI is not set
@@ -6024,16 +6041,9 @@ CONFIG_EXTCON_USB_GPIO=y
# CONFIG_EXTCON_USBC_TUSB320 is not set
# CONFIG_MEMORY is not set
CONFIG_IIO=y
-CONFIG_IIO_BUFFER=y
-# CONFIG_IIO_BUFFER_CB is not set
-# CONFIG_IIO_BUFFER_DMA is not set
-# CONFIG_IIO_BUFFER_DMAENGINE is not set
-# CONFIG_IIO_BUFFER_HW_CONSUMER is not set
-CONFIG_IIO_KFIFO_BUF=m
-CONFIG_IIO_TRIGGERED_BUFFER=m
+# CONFIG_IIO_BUFFER is not set
# CONFIG_IIO_CONFIGFS is not set
-CONFIG_IIO_TRIGGER=y
-CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+# CONFIG_IIO_TRIGGER is not set
# CONFIG_IIO_SW_DEVICE is not set
# CONFIG_IIO_SW_TRIGGER is not set
# CONFIG_IIO_TRIGGERED_EVENT is not set
@@ -6111,6 +6121,7 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_AD7923 is not set
# CONFIG_AD7949 is not set
# CONFIG_AD799X is not set
+# CONFIG_AD9467 is not set
# CONFIG_ADI_AXI_ADC is not set
# CONFIG_AXP20X_ADC is not set
# CONFIG_AXP288_ADC is not set
@@ -6132,15 +6143,16 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_MAX1241 is not set
# CONFIG_MAX1363 is not set
# CONFIG_MAX34408 is not set
-CONFIG_MAX9611=m
+# CONFIG_MAX9611 is not set
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP3564 is not set
# CONFIG_MCP3911 is not set
# CONFIG_NAU7802 is not set
+# CONFIG_PAC1934 is not set
CONFIG_QCOM_VADC_COMMON=m
-# CONFIG_QCOM_SPMI_RRADC is not set
-# CONFIG_QCOM_SPMI_IADC is not set
+CONFIG_QCOM_SPMI_RRADC=m
+CONFIG_QCOM_SPMI_IADC=m
CONFIG_QCOM_SPMI_VADC=m
CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_RICHTEK_RTQ6056 is not set
@@ -6155,6 +6167,7 @@ CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_TI_ADS1015 is not set
# CONFIG_TI_ADS7924 is not set
# CONFIG_TI_ADS1100 is not set
+# CONFIG_TI_ADS1298 is not set
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8344 is not set
# CONFIG_TI_ADS8688 is not set
@@ -6232,10 +6245,6 @@ CONFIG_QCOM_SPMI_ADC5=m
# CONFIG_IIO_SSP_SENSORHUB is not set
# end of SSP Sensor Common
-CONFIG_IIO_ST_SENSORS_I2C=m
-CONFIG_IIO_ST_SENSORS_SPI=m
-CONFIG_IIO_ST_SENSORS_CORE=m
-
#
# Digital to analog converters
#
@@ -6309,6 +6318,7 @@ CONFIG_IIO_ST_SENSORS_CORE=m
# CONFIG_ADF4350 is not set
# CONFIG_ADF4371 is not set
# CONFIG_ADF4377 is not set
+# CONFIG_ADMFM2000 is not set
# CONFIG_ADMV1013 is not set
# CONFIG_ADMV1014 is not set
# CONFIG_ADMV4420 is not set
@@ -6380,9 +6390,7 @@ CONFIG_IIO_ST_SENSORS_CORE=m
# CONFIG_INV_ICM42600_SPI is not set
# CONFIG_INV_MPU6050_I2C is not set
# CONFIG_INV_MPU6050_SPI is not set
-CONFIG_IIO_ST_LSM6DSX=m
-CONFIG_IIO_ST_LSM6DSX_I2C=m
-CONFIG_IIO_ST_LSM6DSX_SPI=m
+# CONFIG_IIO_ST_LSM6DSX is not set
# CONFIG_IIO_ST_LSM9DS0 is not set
# end of Inertial measurement units
@@ -6406,7 +6414,7 @@ CONFIG_IIO_ST_LSM6DSX_SPI=m
# CONFIG_CM36651 is not set
# CONFIG_GP2AP002 is not set
# CONFIG_GP2AP020A00F is not set
-CONFIG_SENSORS_ISL29018=m
+# CONFIG_SENSORS_ISL29018 is not set
# CONFIG_SENSORS_ISL29028 is not set
# CONFIG_ISL29125 is not set
# CONFIG_ISL76682 is not set
@@ -6436,7 +6444,7 @@ CONFIG_SENSORS_ISL29018=m
# CONFIG_TSL2772 is not set
# CONFIG_TSL4531 is not set
# CONFIG_US5182D is not set
-CONFIG_VCNL4000=m
+# CONFIG_VCNL4000 is not set
# CONFIG_VCNL4035 is not set
# CONFIG_VEML6030 is not set
# CONFIG_VEML6070 is not set
@@ -6448,6 +6456,7 @@ CONFIG_VCNL4000=m
#
# Magnetometer sensors
#
+# CONFIG_AF8133J is not set
# CONFIG_AK8974 is not set
# CONFIG_AK8975 is not set
# CONFIG_AK09911 is not set
@@ -6455,9 +6464,7 @@ CONFIG_VCNL4000=m
# CONFIG_BMC150_MAGN_SPI is not set
# CONFIG_MAG3110 is not set
# CONFIG_MMC35240 is not set
-CONFIG_IIO_ST_MAGN_3AXIS=m
-CONFIG_IIO_ST_MAGN_I2C_3AXIS=m
-CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
+# CONFIG_IIO_ST_MAGN_3AXIS is not set
# CONFIG_SENSORS_HMC5843_I2C is not set
# CONFIG_SENSORS_HMC5843_SPI is not set
# CONFIG_SENSORS_RM3100_I2C is not set
@@ -6477,13 +6484,6 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
#
# end of Inclinometer sensors
-#
-# Triggers - standalone
-#
-# CONFIG_IIO_INTERRUPT_TRIGGER is not set
-# CONFIG_IIO_SYSFS_TRIGGER is not set
-# end of Triggers - standalone
-
#
# Linear and angular position sensors
#
@@ -6525,7 +6525,7 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
# CONFIG_ICP10100 is not set
# CONFIG_MPL115_I2C is not set
# CONFIG_MPL115_SPI is not set
-CONFIG_MPL3115=m
+# CONFIG_MPL3115 is not set
# CONFIG_MPRLS0025PA is not set
# CONFIG_MS5611 is not set
# CONFIG_MS5637 is not set
@@ -6590,6 +6590,7 @@ CONFIG_MPL3115=m
# CONFIG_NTB is not set
CONFIG_PWM=y
CONFIG_PWM_SYSFS=y
+# CONFIG_PWM_DEBUG is not set
# CONFIG_PWM_ATMEL_TCB is not set
# CONFIG_PWM_CLK is not set
# CONFIG_PWM_DWC is not set
@@ -6617,9 +6618,11 @@ CONFIG_QCOM_PDC=y
# CONFIG_IPACK_BUS is not set
CONFIG_RESET_CONTROLLER=y
+# CONFIG_RESET_GPIO is not set
CONFIG_RESET_QCOM_AOSS=y
CONFIG_RESET_QCOM_PDC=m
CONFIG_RESET_SCMI=y
+# CONFIG_RESET_SIMPLE is not set
# CONFIG_RESET_TI_SYSCON is not set
# CONFIG_RESET_TI_TPS380X is not set
@@ -6627,7 +6630,6 @@ CONFIG_RESET_SCMI=y
# PHY Subsystem
#
CONFIG_GENERIC_PHY=y
-CONFIG_GENERIC_PHY_MIPI_DPHY=y
# CONFIG_PHY_CAN_TRANSCEIVER is not set
#
@@ -6729,7 +6731,6 @@ CONFIG_NVMEM_QCOM_QFPROM=y
# CONFIG_NVMEM_QCOM_SEC_QFPROM is not set
CONFIG_NVMEM_RMEM=m
# CONFIG_NVMEM_SPMI_SDAM is not set
-# CONFIG_NVMEM_U_BOOT_ENV is not set
#
# HW tracing support
@@ -6739,36 +6740,11 @@ CONFIG_NVMEM_RMEM=m
# CONFIG_HISI_PTT is not set
# end of HW tracing support
-CONFIG_FPGA=y
-# CONFIG_ALTERA_PR_IP_CORE is not set
-# CONFIG_FPGA_MGR_ALTERA_PS_SPI is not set
-# CONFIG_FPGA_MGR_ALTERA_CVP is not set
-# CONFIG_FPGA_MGR_XILINX_SPI is not set
-# CONFIG_FPGA_MGR_ICE40_SPI is not set
-# CONFIG_FPGA_MGR_MACHXO2_SPI is not set
-CONFIG_FPGA_BRIDGE=m
-CONFIG_ALTERA_FREEZE_BRIDGE=m
-# CONFIG_XILINX_PR_DECOUPLER is not set
-CONFIG_FPGA_REGION=m
-CONFIG_OF_FPGA_REGION=m
-# CONFIG_FPGA_DFL is not set
-# CONFIG_FPGA_MGR_MICROCHIP_SPI is not set
-# CONFIG_FPGA_MGR_LATTICE_SYSCONFIG_SPI is not set
+# CONFIG_FPGA is not set
# CONFIG_FSI is not set
CONFIG_TEE=y
CONFIG_OPTEE=y
# CONFIG_OPTEE_INSECURE_LOAD_IMAGE is not set
-CONFIG_MULTIPLEXER=y
-
-#
-# Multiplexer drivers
-#
-# CONFIG_MUX_ADG792A is not set
-# CONFIG_MUX_ADGS1408 is not set
-# CONFIG_MUX_GPIO is not set
-CONFIG_MUX_MMIO=y
-# end of Multiplexer drivers
-
CONFIG_PM_OPP=y
# CONFIG_SIOX is not set
CONFIG_SLIMBUS=m
@@ -6777,6 +6753,7 @@ CONFIG_SLIM_QCOM_NGD_CTRL=m
CONFIG_INTERCONNECT=y
CONFIG_INTERCONNECT_QCOM=y
CONFIG_INTERCONNECT_QCOM_BCM_VOTER=y
+# CONFIG_INTERCONNECT_QCOM_MSM8909 is not set
# CONFIG_INTERCONNECT_QCOM_MSM8916 is not set
# CONFIG_INTERCONNECT_QCOM_MSM8939 is not set
# CONFIG_INTERCONNECT_QCOM_MSM8974 is not set
@@ -6800,6 +6777,7 @@ CONFIG_INTERCONNECT_QCOM_RPMH=y
# CONFIG_INTERCONNECT_QCOM_SDX75 is not set
# CONFIG_INTERCONNECT_QCOM_SM6115 is not set
# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
+# CONFIG_INTERCONNECT_QCOM_SM7150 is not set
# CONFIG_INTERCONNECT_QCOM_SM8150 is not set
CONFIG_INTERCONNECT_QCOM_SM8250=y
# CONFIG_INTERCONNECT_QCOM_SM8350 is not set
@@ -6879,6 +6857,7 @@ CONFIG_AUTOFS_FS=y
CONFIG_FUSE_FS=y
# CONFIG_CUSE is not set
# CONFIG_VIRTIO_FS is not set
+CONFIG_FUSE_PASSTHROUGH=y
CONFIG_OVERLAY_FS=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
@@ -6910,8 +6889,8 @@ CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
# CONFIG_FAT_DEFAULT_UTF8 is not set
CONFIG_EXFAT_FS=y
CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
-# CONFIG_NTFS_FS is not set
# CONFIG_NTFS3_FS is not set
+# CONFIG_NTFS_FS is not set
# end of DOS/FAT/EXFAT/NT Filesystems
#
@@ -6949,7 +6928,6 @@ CONFIG_MISC_FILESYSTEMS=y
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
-# CONFIG_JFFS2_FS is not set
# CONFIG_CRAMFS is not set
CONFIG_SQUASHFS=y
CONFIG_SQUASHFS_FILE_CACHE=y
@@ -6995,7 +6973,6 @@ CONFIG_NFS_V4=y
CONFIG_NFS_V4_1=y
CONFIG_NFS_V4_2=y
CONFIG_PNFS_FILE_LAYOUT=y
-CONFIG_PNFS_BLOCK=y
CONFIG_PNFS_FLEXFILE_LAYOUT=y
CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
# CONFIG_NFS_V4_1_MIGRATION is not set
@@ -7018,10 +6995,7 @@ CONFIG_RPCSEC_GSS_KRB5=y
# CONFIG_SUNRPC_DEBUG is not set
# CONFIG_CEPH_FS is not set
# CONFIG_CIFS is not set
-CONFIG_SMB_SERVER=m
-CONFIG_SMB_SERVER_SMBDIRECT=y
-CONFIG_SMB_SERVER_CHECK_CAP_NET_ADMIN=y
-CONFIG_SMB_SERVER_KERBEROS5=y
+# CONFIG_SMB_SERVER is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set
CONFIG_NLS=y
@@ -7121,7 +7095,12 @@ CONFIG_LSM="landlock,lockdown,yama,loadpin,safesetid,integrity,bpf"
#
# Memory initialization
#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
@@ -7140,6 +7119,11 @@ CONFIG_RANDSTRUCT_NONE=y
# end of Security options
CONFIG_XOR_BLOCKS=y
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
+CONFIG_ASYNC_PQ=m
+CONFIG_ASYNC_RAID6_RECOV=m
CONFIG_CRYPTO=y
#
@@ -7149,6 +7133,7 @@ CONFIG_CRYPTO_ALGAPI=y
CONFIG_CRYPTO_ALGAPI2=y
CONFIG_CRYPTO_AEAD=y
CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_SIG=y
CONFIG_CRYPTO_SIG2=y
CONFIG_CRYPTO_SKCIPHER=y
CONFIG_CRYPTO_SKCIPHER2=y
@@ -7359,17 +7344,24 @@ CONFIG_CRYPTO_HW=y
# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set
# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set
# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set
-# CONFIG_CRYPTO_DEV_QCE is not set
+CONFIG_CRYPTO_DEV_QCE=m
+CONFIG_CRYPTO_DEV_QCE_SKCIPHER=y
+CONFIG_CRYPTO_DEV_QCE_SHA=y
+CONFIG_CRYPTO_DEV_QCE_AEAD=y
+CONFIG_CRYPTO_DEV_QCE_ENABLE_ALL=y
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_SKCIPHER is not set
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_SHA is not set
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_AEAD is not set
+CONFIG_CRYPTO_DEV_QCE_SW_MAX_LEN=512
CONFIG_CRYPTO_DEV_QCOM_RNG=m
# CONFIG_CRYPTO_DEV_VIRTIO is not set
# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
CONFIG_CRYPTO_DEV_CCREE=m
# CONFIG_CRYPTO_DEV_HISI_SEC is not set
-CONFIG_CRYPTO_DEV_HISI_SEC2=m
-CONFIG_CRYPTO_DEV_HISI_QM=m
-CONFIG_CRYPTO_DEV_HISI_ZIP=m
-CONFIG_CRYPTO_DEV_HISI_HPRE=m
-CONFIG_CRYPTO_DEV_HISI_TRNG=m
+# CONFIG_CRYPTO_DEV_HISI_SEC2 is not set
+# CONFIG_CRYPTO_DEV_HISI_ZIP is not set
+# CONFIG_CRYPTO_DEV_HISI_HPRE is not set
+CONFIG_CRYPTO_DEV_HISI_TRNG=y
# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
CONFIG_ASYMMETRIC_KEY_TYPE=y
CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
@@ -7407,7 +7399,6 @@ CONFIG_GENERIC_NET_UTILS=y
# CONFIG_CORDIC is not set
# CONFIG_PRIME_NUMBERS is not set
CONFIG_RATIONAL=y
-CONFIG_GENERIC_PCI_IOMAP=y
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
@@ -7488,6 +7479,7 @@ CONFIG_REED_SOLOMON_ENC8=y
CONFIG_REED_SOLOMON_DEC8=y
CONFIG_XARRAY_MULTI=y
CONFIG_ASSOCIATIVE_ARRAY=y
+CONFIG_CLOSURES=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT=y
CONFIG_HAS_IOPORT_MAP=y
@@ -7525,6 +7517,7 @@ CONFIG_CMA_ALIGNMENT=8
# CONFIG_DMA_API_DEBUG is not set
# CONFIG_DMA_MAP_BENCHMARK is not set
CONFIG_SGL_ALLOC=y
+# CONFIG_FORCE_NR_CPUS is not set
CONFIG_CPU_RMAP=y
CONFIG_DQL=y
CONFIG_GLOB=y
@@ -7568,25 +7561,35 @@ CONFIG_PRINTK_TIME=y
CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
CONFIG_CONSOLE_LOGLEVEL_QUIET=4
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
+# CONFIG_BOOT_PRINTK_DELAY is not set
CONFIG_DYNAMIC_DEBUG=y
CONFIG_DYNAMIC_DEBUG_CORE=y
CONFIG_SYMBOLIC_ERRNAME=y
CONFIG_DEBUG_BUGVERBOSE=y
# end of printk and dmesg options
-# CONFIG_DEBUG_KERNEL is not set
+CONFIG_DEBUG_KERNEL=y
+CONFIG_DEBUG_MISC=y
#
# Compile-time checks and compiler options
#
CONFIG_AS_HAS_NON_CONST_ULEB128=y
+CONFIG_DEBUG_INFO_NONE=y
+# CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT is not set
+# CONFIG_DEBUG_INFO_DWARF4 is not set
+# CONFIG_DEBUG_INFO_DWARF5 is not set
CONFIG_FRAME_WARN=2048
# CONFIG_STRIP_ASM_SYMS is not set
+# CONFIG_READABLE_ASM is not set
# CONFIG_HEADERS_INSTALL is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
+# CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_64B is not set
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
+# CONFIG_VMLINUX_MAP is not set
+# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
# end of Compile-time checks and compiler options
#
@@ -7601,35 +7604,52 @@ CONFIG_DEBUG_FS_ALLOW_ALL=y
# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set
# CONFIG_DEBUG_FS_ALLOW_NONE is not set
CONFIG_HAVE_ARCH_KGDB=y
-CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
+# CONFIG_KGDB is not set
+CONFIG_ARCH_HAS_UBSAN=y
# CONFIG_UBSAN is not set
+CONFIG_HAVE_ARCH_KCSAN=y
CONFIG_HAVE_KCSAN_COMPILER=y
+# CONFIG_KCSAN is not set
# end of Generic Kernel Debugging Instruments
#
# Networking Debugging
#
+# CONFIG_NET_DEV_REFCNT_TRACKER is not set
+# CONFIG_NET_NS_REFCNT_TRACKER is not set
+# CONFIG_DEBUG_NET is not set
# end of Networking Debugging
#
# Memory Debugging
#
# CONFIG_PAGE_EXTENSION is not set
+# CONFIG_DEBUG_PAGEALLOC is not set
CONFIG_SLUB_DEBUG=y
# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_PAGE_OWNER is not set
# CONFIG_PAGE_TABLE_CHECK is not set
# CONFIG_PAGE_POISONING is not set
+# CONFIG_DEBUG_PAGE_REF is not set
# CONFIG_DEBUG_RODATA_TEST is not set
CONFIG_ARCH_HAS_DEBUG_WX=y
# CONFIG_DEBUG_WX is not set
CONFIG_GENERIC_PTDUMP=y
+# CONFIG_PTDUMP_DEBUGFS is not set
CONFIG_HAVE_DEBUG_KMEMLEAK=y
+# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_PER_VMA_LOCK_STATS is not set
+# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_SHRINKER_DEBUG is not set
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_SCHED_STACK_END_CHECK is not set
CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
+# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_VM_PGTABLE is not set
CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
+# CONFIG_DEBUG_VIRTUAL is not set
CONFIG_DEBUG_MEMORY_INIT=y
+# CONFIG_DEBUG_PER_CPU_MAPS is not set
CONFIG_HAVE_ARCH_KASAN=y
CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
CONFIG_HAVE_ARCH_KASAN_HW_TAGS=y
@@ -7642,19 +7662,28 @@ CONFIG_HAVE_ARCH_KFENCE=y
# CONFIG_KFENCE is not set
# end of Memory Debugging
+# CONFIG_DEBUG_SHIRQ is not set
+
#
# Debug Oops, Lockups and Hangs
#
# CONFIG_PANIC_ON_OOPS is not set
CONFIG_PANIC_ON_OOPS_VALUE=0
CONFIG_PANIC_TIMEOUT=0
+# CONFIG_SOFTLOCKUP_DETECTOR is not set
CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
+# CONFIG_HARDLOCKUP_DETECTOR is not set
+# CONFIG_DETECT_HUNG_TASK is not set
+# CONFIG_WQ_WATCHDOG is not set
+# CONFIG_WQ_CPU_INTENSIVE_REPORT is not set
# CONFIG_TEST_LOCKUP is not set
# end of Debug Oops, Lockups and Hangs
#
# Scheduler Debugging
#
+CONFIG_SCHED_DEBUG=y
+# CONFIG_SCHEDSTATS is not set
# end of Scheduler Debugging
# CONFIG_DEBUG_TIMEKEEPING is not set
@@ -7663,26 +7692,54 @@ CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
# Lock Debugging (spinlocks, mutexes, etc...)
#
CONFIG_LOCK_DEBUGGING_SUPPORT=y
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+# CONFIG_DEBUG_MUTEXES is not set
+# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
+# CONFIG_DEBUG_RWSEMS is not set
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_DEBUG_ATOMIC_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+# CONFIG_LOCK_TORTURE_TEST is not set
# CONFIG_WW_MUTEX_SELFTEST is not set
+# CONFIG_SCF_TORTURE_TEST is not set
+# CONFIG_CSD_LOCK_WAIT_DEBUG is not set
# end of Lock Debugging (spinlocks, mutexes, etc...)
# CONFIG_DEBUG_IRQFLAGS is not set
CONFIG_STACKTRACE=y
# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
+# CONFIG_DEBUG_KOBJECT is not set
#
# Debug kernel data structures
#
+# CONFIG_DEBUG_LIST is not set
+# CONFIG_DEBUG_PLIST is not set
+# CONFIG_DEBUG_SG is not set
+# CONFIG_DEBUG_NOTIFIERS is not set
+# CONFIG_DEBUG_CLOSURES is not set
+# CONFIG_DEBUG_MAPLE_TREE is not set
# end of Debug kernel data structures
#
# RCU Debugging
#
+# CONFIG_RCU_SCALE_TEST is not set
+# CONFIG_RCU_TORTURE_TEST is not set
+# CONFIG_RCU_REF_SCALE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=21
CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
# CONFIG_RCU_CPU_STALL_CPUTIME is not set
+CONFIG_RCU_TRACE=y
+# CONFIG_RCU_EQS_DEBUG is not set
# end of RCU Debugging
+# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
+# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
+# CONFIG_LATENCYTOP is not set
CONFIG_NOP_TRACER=y
CONFIG_HAVE_FUNCTION_TRACER=y
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
@@ -7747,18 +7804,25 @@ CONFIG_STRICT_DEVMEM=y
# Kernel Testing and Coverage
#
# CONFIG_KUNIT is not set
+# CONFIG_NOTIFIER_ERROR_INJECTION is not set
+# CONFIG_FAULT_INJECTION is not set
CONFIG_ARCH_HAS_KCOV=y
CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_TEST_DHRY is not set
# CONFIG_LKDTM is not set
# CONFIG_TEST_MIN_HEAP is not set
# CONFIG_TEST_DIV64 is not set
+# CONFIG_BACKTRACE_SELF_TEST is not set
+# CONFIG_TEST_REF_TRACKER is not set
+# CONFIG_RBTREE_TEST is not set
# CONFIG_REED_SOLOMON_TEST is not set
+# CONFIG_INTERVAL_TREE_TEST is not set
+# CONFIG_PERCPU_TEST is not set
# CONFIG_ATOMIC64_SELFTEST is not set
+# CONFIG_ASYNC_RAID6_TEST is not set
# CONFIG_TEST_HEXDUMP is not set
-# CONFIG_STRING_SELFTEST is not set
-# CONFIG_TEST_STRING_HELPERS is not set
# CONFIG_TEST_KSTRTOX is not set
# CONFIG_TEST_PRINTF is not set
# CONFIG_TEST_SCANF is not set
@@ -7784,6 +7848,7 @@ CONFIG_RUNTIME_TESTING_MENU=y
# CONFIG_TEST_MEMCAT_P is not set
# CONFIG_TEST_MEMINIT is not set
# CONFIG_TEST_FREE_PAGES is not set
+# CONFIG_TEST_OBJPOOL is not set
CONFIG_ARCH_USE_MEMTEST=y
CONFIG_MEMTEST=y
# end of Kernel Testing and Coverage
diff --git a/config/kernel/linux-sm8250-legacy.config b/config/kernel/linux-sm8250-legacy.config
new file mode 100644
index 000000000000..acba1ca2a36d
--- /dev/null
+++ b/config/kernel/linux-sm8250-legacy.config
@@ -0,0 +1,7860 @@
+#
+# Automatically generated file; DO NOT EDIT.
+# Linux/arm64 6.9.8 Kernel Configuration
+#
+CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 13.2.0-23ubuntu4) 13.2.0"
+CONFIG_CC_IS_GCC=y
+CONFIG_GCC_VERSION=130200
+CONFIG_CLANG_VERSION=0
+CONFIG_AS_IS_GNU=y
+CONFIG_AS_VERSION=24200
+CONFIG_LD_IS_BFD=y
+CONFIG_LD_VERSION=24200
+CONFIG_LLD_VERSION=0
+CONFIG_CC_CAN_LINK=y
+CONFIG_CC_CAN_LINK_STATIC=y
+CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y
+CONFIG_CC_HAS_ASM_GOTO_TIED_OUTPUT=y
+CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y
+CONFIG_CC_HAS_ASM_INLINE=y
+CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y
+CONFIG_PAHOLE_VERSION=125
+CONFIG_IRQ_WORK=y
+CONFIG_BUILDTIME_TABLE_SORT=y
+CONFIG_THREAD_INFO_IN_TASK=y
+
+#
+# General setup
+#
+CONFIG_INIT_ENV_ARG_LIMIT=32
+# CONFIG_COMPILE_TEST is not set
+# CONFIG_WERROR is not set
+CONFIG_LOCALVERSION=""
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_BUILD_SALT=""
+CONFIG_DEFAULT_INIT=""
+CONFIG_DEFAULT_HOSTNAME="(none)"
+CONFIG_SYSVIPC=y
+CONFIG_SYSVIPC_SYSCTL=y
+CONFIG_SYSVIPC_COMPAT=y
+CONFIG_POSIX_MQUEUE=y
+CONFIG_POSIX_MQUEUE_SYSCTL=y
+# CONFIG_WATCH_QUEUE is not set
+CONFIG_CROSS_MEMORY_ATTACH=y
+# CONFIG_USELIB is not set
+CONFIG_AUDIT=y
+CONFIG_HAVE_ARCH_AUDITSYSCALL=y
+CONFIG_AUDITSYSCALL=y
+
+#
+# IRQ subsystem
+#
+CONFIG_GENERIC_IRQ_PROBE=y
+CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
+CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
+CONFIG_GENERIC_IRQ_MIGRATION=y
+CONFIG_HARDIRQS_SW_RESEND=y
+CONFIG_IRQ_DOMAIN=y
+CONFIG_IRQ_DOMAIN_HIERARCHY=y
+CONFIG_IRQ_FASTEOI_HIERARCHY_HANDLERS=y
+CONFIG_GENERIC_IRQ_IPI=y
+CONFIG_GENERIC_MSI_IRQ=y
+CONFIG_IRQ_MSI_IOMMU=y
+CONFIG_IRQ_FORCED_THREADING=y
+CONFIG_SPARSE_IRQ=y
+# CONFIG_GENERIC_IRQ_DEBUGFS is not set
+# end of IRQ subsystem
+
+CONFIG_GENERIC_TIME_VSYSCALL=y
+CONFIG_GENERIC_CLOCKEVENTS=y
+CONFIG_ARCH_HAS_TICK_BROADCAST=y
+CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
+CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
+CONFIG_CONTEXT_TRACKING=y
+CONFIG_CONTEXT_TRACKING_IDLE=y
+
+#
+# Timers subsystem
+#
+CONFIG_TICK_ONESHOT=y
+CONFIG_NO_HZ_COMMON=y
+# CONFIG_HZ_PERIODIC is not set
+CONFIG_NO_HZ_IDLE=y
+# CONFIG_NO_HZ_FULL is not set
+# CONFIG_NO_HZ is not set
+CONFIG_HIGH_RES_TIMERS=y
+# end of Timers subsystem
+
+CONFIG_BPF=y
+CONFIG_HAVE_EBPF_JIT=y
+CONFIG_ARCH_WANT_DEFAULT_BPF_JIT=y
+
+#
+# BPF subsystem
+#
+CONFIG_BPF_SYSCALL=y
+CONFIG_BPF_JIT=y
+# CONFIG_BPF_JIT_ALWAYS_ON is not set
+CONFIG_BPF_JIT_DEFAULT_ON=y
+CONFIG_BPF_UNPRIV_DEFAULT_OFF=y
+# CONFIG_BPF_PRELOAD is not set
+# CONFIG_BPF_LSM is not set
+# end of BPF subsystem
+
+CONFIG_PREEMPT_NONE_BUILD=y
+CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_VOLUNTARY is not set
+# CONFIG_PREEMPT is not set
+# CONFIG_PREEMPT_DYNAMIC is not set
+# CONFIG_SCHED_CORE is not set
+
+#
+# CPU/Task time and stats accounting
+#
+CONFIG_TICK_CPU_ACCOUNTING=y
+# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
+CONFIG_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_SCHED_AVG_IRQ=y
+CONFIG_SCHED_THERMAL_PRESSURE=y
+CONFIG_BSD_PROCESS_ACCT=y
+CONFIG_BSD_PROCESS_ACCT_V3=y
+# CONFIG_TASKSTATS is not set
+CONFIG_PSI=y
+# CONFIG_PSI_DEFAULT_DISABLED is not set
+# end of CPU/Task time and stats accounting
+
+CONFIG_CPU_ISOLATION=y
+
+#
+# RCU Subsystem
+#
+CONFIG_TREE_RCU=y
+# CONFIG_RCU_EXPERT is not set
+CONFIG_TREE_SRCU=y
+CONFIG_TASKS_RCU_GENERIC=y
+CONFIG_TASKS_TRACE_RCU=y
+CONFIG_RCU_STALL_COMMON=y
+CONFIG_RCU_NEED_SEGCBLIST=y
+# end of RCU Subsystem
+
+CONFIG_IKCONFIG=y
+CONFIG_IKCONFIG_PROC=y
+# CONFIG_IKHEADERS is not set
+CONFIG_LOG_BUF_SHIFT=21
+CONFIG_LOG_CPU_MAX_BUF_SHIFT=12
+# CONFIG_PRINTK_INDEX is not set
+CONFIG_GENERIC_SCHED_CLOCK=y
+
+#
+# Scheduler features
+#
+# CONFIG_UCLAMP_TASK is not set
+# end of Scheduler features
+
+CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
+CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y
+CONFIG_CC_HAS_INT128=y
+CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5"
+CONFIG_GCC10_NO_ARRAY_BOUNDS=y
+CONFIG_CC_NO_ARRAY_BOUNDS=y
+CONFIG_GCC_NO_STRINGOP_OVERFLOW=y
+CONFIG_CC_NO_STRINGOP_OVERFLOW=y
+CONFIG_ARCH_SUPPORTS_INT128=y
+CONFIG_NUMA_BALANCING=y
+CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
+CONFIG_CGROUPS=y
+CONFIG_PAGE_COUNTER=y
+# CONFIG_CGROUP_FAVOR_DYNMODS is not set
+CONFIG_MEMCG=y
+CONFIG_MEMCG_KMEM=y
+CONFIG_BLK_CGROUP=y
+CONFIG_CGROUP_WRITEBACK=y
+CONFIG_CGROUP_SCHED=y
+CONFIG_FAIR_GROUP_SCHED=y
+CONFIG_CFS_BANDWIDTH=y
+CONFIG_RT_GROUP_SCHED=y
+CONFIG_SCHED_MM_CID=y
+CONFIG_CGROUP_PIDS=y
+# CONFIG_CGROUP_RDMA is not set
+CONFIG_CGROUP_FREEZER=y
+CONFIG_CGROUP_HUGETLB=y
+CONFIG_CPUSETS=y
+CONFIG_PROC_PID_CPUSET=y
+CONFIG_CGROUP_DEVICE=y
+CONFIG_CGROUP_CPUACCT=y
+CONFIG_CGROUP_PERF=y
+CONFIG_CGROUP_BPF=y
+# CONFIG_CGROUP_MISC is not set
+# CONFIG_CGROUP_DEBUG is not set
+CONFIG_SOCK_CGROUP_DATA=y
+CONFIG_NAMESPACES=y
+CONFIG_UTS_NS=y
+CONFIG_TIME_NS=y
+CONFIG_IPC_NS=y
+CONFIG_USER_NS=y
+CONFIG_PID_NS=y
+CONFIG_NET_NS=y
+CONFIG_CHECKPOINT_RESTORE=y
+CONFIG_SCHED_AUTOGROUP=y
+# CONFIG_RELAY is not set
+CONFIG_BLK_DEV_INITRD=y
+CONFIG_INITRAMFS_SOURCE=""
+CONFIG_RD_GZIP=y
+CONFIG_RD_BZIP2=y
+CONFIG_RD_LZMA=y
+CONFIG_RD_XZ=y
+CONFIG_RD_LZO=y
+CONFIG_RD_LZ4=y
+CONFIG_RD_ZSTD=y
+# CONFIG_BOOT_CONFIG is not set
+CONFIG_INITRAMFS_PRESERVE_MTIME=y
+CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
+# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
+CONFIG_LD_ORPHAN_WARN=y
+CONFIG_LD_ORPHAN_WARN_LEVEL="warn"
+CONFIG_SYSCTL=y
+CONFIG_HAVE_UID16=y
+CONFIG_SYSCTL_EXCEPTION_TRACE=y
+CONFIG_EXPERT=y
+CONFIG_UID16=y
+CONFIG_MULTIUSER=y
+# CONFIG_SGETMASK_SYSCALL is not set
+CONFIG_SYSFS_SYSCALL=y
+CONFIG_FHANDLE=y
+CONFIG_POSIX_TIMERS=y
+CONFIG_PRINTK=y
+CONFIG_BUG=y
+CONFIG_ELF_CORE=y
+CONFIG_BASE_FULL=y
+CONFIG_FUTEX=y
+CONFIG_FUTEX_PI=y
+CONFIG_EPOLL=y
+CONFIG_SIGNALFD=y
+CONFIG_TIMERFD=y
+CONFIG_EVENTFD=y
+CONFIG_SHMEM=y
+CONFIG_AIO=y
+CONFIG_IO_URING=y
+CONFIG_ADVISE_SYSCALLS=y
+CONFIG_MEMBARRIER=y
+CONFIG_KCMP=y
+CONFIG_RSEQ=y
+# CONFIG_DEBUG_RSEQ is not set
+CONFIG_CACHESTAT_SYSCALL=y
+# CONFIG_PC104 is not set
+CONFIG_KALLSYMS=y
+# CONFIG_KALLSYMS_SELFTEST is not set
+# CONFIG_KALLSYMS_ALL is not set
+CONFIG_KALLSYMS_BASE_RELATIVE=y
+CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y
+CONFIG_HAVE_PERF_EVENTS=y
+
+#
+# Kernel Performance Events And Counters
+#
+CONFIG_PERF_EVENTS=y
+# CONFIG_DEBUG_PERF_USE_VMALLOC is not set
+# end of Kernel Performance Events And Counters
+
+CONFIG_SYSTEM_DATA_VERIFICATION=y
+CONFIG_PROFILING=y
+CONFIG_TRACEPOINTS=y
+
+#
+# Kexec and crash features
+#
+CONFIG_CRASH_RESERVE=y
+CONFIG_VMCORE_INFO=y
+CONFIG_KEXEC_CORE=y
+CONFIG_KEXEC=y
+CONFIG_KEXEC_FILE=y
+# CONFIG_KEXEC_SIG is not set
+CONFIG_CRASH_DUMP=y
+# end of Kexec and crash features
+# end of General setup
+
+CONFIG_ARM64=y
+CONFIG_GCC_SUPPORTS_DYNAMIC_FTRACE_WITH_ARGS=y
+CONFIG_64BIT=y
+CONFIG_MMU=y
+CONFIG_ARM64_CONT_PTE_SHIFT=4
+CONFIG_ARM64_CONT_PMD_SHIFT=4
+CONFIG_ARCH_MMAP_RND_BITS_MIN=18
+CONFIG_ARCH_MMAP_RND_BITS_MAX=33
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16
+CONFIG_STACKTRACE_SUPPORT=y
+CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000
+CONFIG_LOCKDEP_SUPPORT=y
+CONFIG_GENERIC_BUG=y
+CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y
+CONFIG_GENERIC_HWEIGHT=y
+CONFIG_GENERIC_CSUM=y
+CONFIG_GENERIC_CALIBRATE_DELAY=y
+CONFIG_SMP=y
+CONFIG_KERNEL_MODE_NEON=y
+CONFIG_FIX_EARLYCON_MEM=y
+CONFIG_PGTABLE_LEVELS=4
+CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_ARCH_PROC_KCORE_TEXT=y
+CONFIG_BUILTIN_RETURN_ADDRESS_STRIPS_PAC=y
+
+#
+# Platform selection
+#
+# CONFIG_ARCH_ACTIONS is not set
+# CONFIG_ARCH_SUNXI is not set
+# CONFIG_ARCH_ALPINE is not set
+# CONFIG_ARCH_APPLE is not set
+# CONFIG_ARCH_BCM is not set
+# CONFIG_ARCH_BERLIN is not set
+# CONFIG_ARCH_BITMAIN is not set
+# CONFIG_ARCH_EXYNOS is not set
+# CONFIG_ARCH_SPARX5 is not set
+# CONFIG_ARCH_K3 is not set
+# CONFIG_ARCH_LG1K is not set
+# CONFIG_ARCH_HISI is not set
+# CONFIG_ARCH_KEEMBAY is not set
+# CONFIG_ARCH_MEDIATEK is not set
+# CONFIG_ARCH_MESON is not set
+# CONFIG_ARCH_MVEBU is not set
+# CONFIG_ARCH_NXP is not set
+# CONFIG_ARCH_MA35 is not set
+# CONFIG_ARCH_NPCM is not set
+# CONFIG_ARCH_PENSANDO is not set
+CONFIG_ARCH_QCOM=y
+# CONFIG_ARCH_REALTEK is not set
+# CONFIG_ARCH_RENESAS is not set
+# CONFIG_ARCH_ROCKCHIP is not set
+# CONFIG_ARCH_SEATTLE is not set
+# CONFIG_ARCH_INTEL_SOCFPGA is not set
+# CONFIG_ARCH_STM32 is not set
+# CONFIG_ARCH_SYNQUACER is not set
+# CONFIG_ARCH_TEGRA is not set
+# CONFIG_ARCH_SPRD is not set
+# CONFIG_ARCH_THUNDER is not set
+# CONFIG_ARCH_THUNDER2 is not set
+# CONFIG_ARCH_UNIPHIER is not set
+# CONFIG_ARCH_VEXPRESS is not set
+# CONFIG_ARCH_VISCONTI is not set
+# CONFIG_ARCH_XGENE is not set
+# CONFIG_ARCH_ZYNQMP is not set
+# end of Platform selection
+
+#
+# Kernel Features
+#
+
+#
+# ARM errata workarounds via the alternatives framework
+#
+CONFIG_AMPERE_ERRATUM_AC03_CPU_38=y
+CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y
+CONFIG_ARM64_ERRATUM_826319=y
+CONFIG_ARM64_ERRATUM_827319=y
+CONFIG_ARM64_ERRATUM_824069=y
+CONFIG_ARM64_ERRATUM_819472=y
+CONFIG_ARM64_ERRATUM_832075=y
+CONFIG_ARM64_ERRATUM_1742098=y
+CONFIG_ARM64_ERRATUM_845719=y
+CONFIG_ARM64_ERRATUM_843419=y
+CONFIG_ARM64_LD_HAS_FIX_ERRATUM_843419=y
+CONFIG_ARM64_ERRATUM_1024718=y
+CONFIG_ARM64_ERRATUM_1418040=y
+CONFIG_ARM64_WORKAROUND_SPECULATIVE_AT=y
+CONFIG_ARM64_ERRATUM_1165522=y
+CONFIG_ARM64_ERRATUM_1319367=y
+CONFIG_ARM64_ERRATUM_1530923=y
+CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y
+CONFIG_ARM64_ERRATUM_2441007=y
+CONFIG_ARM64_ERRATUM_1286807=y
+CONFIG_ARM64_ERRATUM_1463225=y
+CONFIG_ARM64_ERRATUM_1542419=y
+CONFIG_ARM64_ERRATUM_1508412=y
+CONFIG_ARM64_ERRATUM_2051678=y
+CONFIG_ARM64_ERRATUM_2077057=y
+CONFIG_ARM64_ERRATUM_2658417=y
+CONFIG_ARM64_WORKAROUND_TSB_FLUSH_FAILURE=y
+CONFIG_ARM64_ERRATUM_2054223=y
+CONFIG_ARM64_ERRATUM_2067961=y
+CONFIG_ARM64_ERRATUM_2441009=y
+CONFIG_ARM64_ERRATUM_2457168=y
+CONFIG_ARM64_ERRATUM_2645198=y
+CONFIG_ARM64_WORKAROUND_SPECULATIVE_UNPRIV_LOAD=y
+CONFIG_ARM64_ERRATUM_2966298=y
+CONFIG_ARM64_ERRATUM_3117295=y
+CONFIG_CAVIUM_ERRATUM_22375=y
+CONFIG_CAVIUM_ERRATUM_23144=y
+CONFIG_CAVIUM_ERRATUM_23154=y
+CONFIG_CAVIUM_ERRATUM_27456=y
+CONFIG_CAVIUM_ERRATUM_30115=y
+CONFIG_CAVIUM_TX2_ERRATUM_219=y
+CONFIG_FUJITSU_ERRATUM_010001=y
+CONFIG_HISILICON_ERRATUM_161600802=y
+CONFIG_QCOM_FALKOR_ERRATUM_1003=y
+CONFIG_QCOM_FALKOR_ERRATUM_1009=y
+CONFIG_QCOM_QDF2400_ERRATUM_0065=y
+CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
+CONFIG_NVIDIA_CARMEL_CNP_ERRATUM=y
+CONFIG_ROCKCHIP_ERRATUM_3588001=y
+CONFIG_SOCIONEXT_SYNQUACER_PREITS=y
+# end of ARM errata workarounds via the alternatives framework
+
+CONFIG_ARM64_4K_PAGES=y
+# CONFIG_ARM64_16K_PAGES is not set
+# CONFIG_ARM64_64K_PAGES is not set
+# CONFIG_ARM64_VA_BITS_39 is not set
+CONFIG_ARM64_VA_BITS_48=y
+# CONFIG_ARM64_VA_BITS_52 is not set
+CONFIG_ARM64_VA_BITS=48
+CONFIG_ARM64_PA_BITS_48=y
+CONFIG_ARM64_PA_BITS=48
+# CONFIG_CPU_BIG_ENDIAN is not set
+CONFIG_CPU_LITTLE_ENDIAN=y
+CONFIG_SCHED_MC=y
+# CONFIG_SCHED_CLUSTER is not set
+CONFIG_SCHED_SMT=y
+CONFIG_NR_CPUS=256
+CONFIG_HOTPLUG_CPU=y
+CONFIG_NUMA=y
+CONFIG_NODES_SHIFT=4
+# CONFIG_HZ_100 is not set
+CONFIG_HZ_250=y
+# CONFIG_HZ_300 is not set
+# CONFIG_HZ_1000 is not set
+CONFIG_HZ=250
+CONFIG_SCHED_HRTICK=y
+CONFIG_ARCH_SPARSEMEM_ENABLE=y
+CONFIG_HW_PERF_EVENTS=y
+CONFIG_CC_HAVE_SHADOW_CALL_STACK=y
+CONFIG_PARAVIRT=y
+# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set
+CONFIG_ARCH_SUPPORTS_KEXEC=y
+CONFIG_ARCH_SUPPORTS_KEXEC_FILE=y
+CONFIG_ARCH_SELECTS_KEXEC_FILE=y
+CONFIG_ARCH_SUPPORTS_KEXEC_SIG=y
+CONFIG_ARCH_SUPPORTS_KEXEC_IMAGE_VERIFY_SIG=y
+CONFIG_ARCH_DEFAULT_KEXEC_IMAGE_VERIFY_SIG=y
+CONFIG_ARCH_SUPPORTS_CRASH_DUMP=y
+CONFIG_ARCH_HAS_GENERIC_CRASHKERNEL_RESERVATION=y
+CONFIG_TRANS_TABLE=y
+# CONFIG_XEN is not set
+CONFIG_ARCH_FORCE_MAX_ORDER=10
+CONFIG_UNMAP_KERNEL_AT_EL0=y
+CONFIG_MITIGATE_SPECTRE_BRANCH_HISTORY=y
+CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
+# CONFIG_ARM64_SW_TTBR0_PAN is not set
+CONFIG_ARM64_TAGGED_ADDR_ABI=y
+CONFIG_COMPAT=y
+CONFIG_KUSER_HELPERS=y
+# CONFIG_COMPAT_ALIGNMENT_FIXUPS is not set
+# CONFIG_ARMV8_DEPRECATED is not set
+
+#
+# ARMv8.1 architectural features
+#
+CONFIG_ARM64_HW_AFDBM=y
+CONFIG_ARM64_PAN=y
+CONFIG_AS_HAS_LSE_ATOMICS=y
+CONFIG_ARM64_LSE_ATOMICS=y
+CONFIG_ARM64_USE_LSE_ATOMICS=y
+# end of ARMv8.1 architectural features
+
+#
+# ARMv8.2 architectural features
+#
+CONFIG_AS_HAS_ARMV8_2=y
+CONFIG_AS_HAS_SHA3=y
+# CONFIG_ARM64_PMEM is not set
+CONFIG_ARM64_RAS_EXTN=y
+CONFIG_ARM64_CNP=y
+# end of ARMv8.2 architectural features
+
+#
+# ARMv8.3 architectural features
+#
+CONFIG_ARM64_PTR_AUTH=y
+CONFIG_ARM64_PTR_AUTH_KERNEL=y
+CONFIG_CC_HAS_BRANCH_PROT_PAC_RET=y
+CONFIG_CC_HAS_SIGN_RETURN_ADDRESS=y
+CONFIG_AS_HAS_ARMV8_3=y
+CONFIG_AS_HAS_CFI_NEGATE_RA_STATE=y
+CONFIG_AS_HAS_LDAPR=y
+# end of ARMv8.3 architectural features
+
+#
+# ARMv8.4 architectural features
+#
+CONFIG_ARM64_AMU_EXTN=y
+CONFIG_AS_HAS_ARMV8_4=y
+CONFIG_ARM64_TLB_RANGE=y
+# end of ARMv8.4 architectural features
+
+#
+# ARMv8.5 architectural features
+#
+CONFIG_AS_HAS_ARMV8_5=y
+CONFIG_ARM64_BTI=y
+CONFIG_CC_HAS_BRANCH_PROT_PAC_RET_BTI=y
+CONFIG_ARM64_E0PD=y
+CONFIG_ARM64_AS_HAS_MTE=y
+CONFIG_ARM64_MTE=y
+# end of ARMv8.5 architectural features
+
+#
+# ARMv8.7 architectural features
+#
+CONFIG_ARM64_EPAN=y
+# end of ARMv8.7 architectural features
+
+CONFIG_ARM64_SVE=y
+CONFIG_ARM64_SME=y
+# CONFIG_ARM64_PSEUDO_NMI is not set
+CONFIG_RELOCATABLE=y
+CONFIG_RANDOMIZE_BASE=y
+CONFIG_RANDOMIZE_MODULE_REGION_FULL=y
+CONFIG_CC_HAVE_STACKPROTECTOR_SYSREG=y
+CONFIG_STACKPROTECTOR_PER_TASK=y
+CONFIG_ARM64_CONTPTE=y
+# end of Kernel Features
+
+#
+# Boot options
+#
+# CONFIG_ARM64_ACPI_PARKING_PROTOCOL is not set
+CONFIG_CMDLINE=""
+CONFIG_EFI_STUB=y
+CONFIG_EFI=y
+CONFIG_DMI=y
+# end of Boot options
+
+#
+# Power management options
+#
+CONFIG_SUSPEND=y
+CONFIG_SUSPEND_FREEZER=y
+# CONFIG_SUSPEND_SKIP_SYNC is not set
+CONFIG_HIBERNATE_CALLBACKS=y
+CONFIG_HIBERNATION=y
+CONFIG_HIBERNATION_SNAPSHOT_DEV=y
+CONFIG_HIBERNATION_COMP_LZO=y
+# CONFIG_HIBERNATION_COMP_LZ4 is not set
+CONFIG_HIBERNATION_DEF_COMP="lzo"
+CONFIG_PM_STD_PARTITION=""
+CONFIG_PM_SLEEP=y
+CONFIG_PM_SLEEP_SMP=y
+# CONFIG_PM_AUTOSLEEP is not set
+# CONFIG_PM_USERSPACE_AUTOSLEEP is not set
+# CONFIG_PM_WAKELOCKS is not set
+CONFIG_PM=y
+# CONFIG_PM_DEBUG is not set
+CONFIG_PM_CLK=y
+CONFIG_PM_GENERIC_DOMAINS=y
+CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y
+CONFIG_PM_GENERIC_DOMAINS_SLEEP=y
+CONFIG_PM_GENERIC_DOMAINS_OF=y
+CONFIG_CPU_PM=y
+CONFIG_ENERGY_MODEL=y
+CONFIG_ARCH_HIBERNATION_POSSIBLE=y
+CONFIG_ARCH_HIBERNATION_HEADER=y
+CONFIG_ARCH_SUSPEND_POSSIBLE=y
+# end of Power management options
+
+#
+# CPU Power Management
+#
+
+#
+# CPU Idle
+#
+CONFIG_CPU_IDLE=y
+CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y
+# CONFIG_CPU_IDLE_GOV_LADDER is not set
+CONFIG_CPU_IDLE_GOV_MENU=y
+# CONFIG_CPU_IDLE_GOV_TEO is not set
+CONFIG_DT_IDLE_STATES=y
+CONFIG_DT_IDLE_GENPD=y
+
+#
+# ARM CPU Idle Drivers
+#
+CONFIG_ARM_PSCI_CPUIDLE=y
+CONFIG_ARM_PSCI_CPUIDLE_DOMAIN=y
+# end of ARM CPU Idle Drivers
+# end of CPU Idle
+
+#
+# CPU Frequency scaling
+#
+CONFIG_CPU_FREQ=y
+CONFIG_CPU_FREQ_GOV_ATTR_SET=y
+CONFIG_CPU_FREQ_GOV_COMMON=y
+CONFIG_CPU_FREQ_STAT=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
+# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set
+CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE=y
+# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set
+CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
+CONFIG_CPU_FREQ_GOV_POWERSAVE=y
+CONFIG_CPU_FREQ_GOV_USERSPACE=y
+CONFIG_CPU_FREQ_GOV_ONDEMAND=y
+CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
+CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
+
+#
+# CPU frequency scaling drivers
+#
+CONFIG_CPUFREQ_DT=y
+CONFIG_CPUFREQ_DT_PLATDEV=y
+CONFIG_ARM_SCPI_CPUFREQ=y
+CONFIG_ARM_QCOM_CPUFREQ_NVMEM=y
+CONFIG_ARM_QCOM_CPUFREQ_HW=y
+CONFIG_ARM_SCMI_CPUFREQ=y
+CONFIG_ACPI_CPPC_CPUFREQ=m
+CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
+# end of CPU Frequency scaling
+# end of CPU Power Management
+
+CONFIG_ARCH_SUPPORTS_ACPI=y
+CONFIG_ACPI=y
+CONFIG_ACPI_GENERIC_GSI=y
+CONFIG_ACPI_CCA_REQUIRED=y
+CONFIG_ACPI_THERMAL_LIB=y
+# CONFIG_ACPI_DEBUGGER is not set
+CONFIG_ACPI_SPCR_TABLE=y
+# CONFIG_ACPI_FPDT is not set
+# CONFIG_ACPI_EC_DEBUGFS is not set
+CONFIG_ACPI_AC=y
+CONFIG_ACPI_BATTERY=y
+CONFIG_ACPI_BUTTON=y
+# CONFIG_ACPI_VIDEO is not set
+CONFIG_ACPI_FAN=y
+# CONFIG_ACPI_TAD is not set
+# CONFIG_ACPI_DOCK is not set
+CONFIG_ACPI_PROCESSOR_IDLE=y
+CONFIG_ACPI_MCFG=y
+CONFIG_ACPI_CPPC_LIB=y
+CONFIG_ACPI_PROCESSOR=y
+# CONFIG_ACPI_IPMI is not set
+CONFIG_ACPI_THERMAL=y
+CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y
+CONFIG_ACPI_TABLE_UPGRADE=y
+# CONFIG_ACPI_DEBUG is not set
+# CONFIG_ACPI_PCI_SLOT is not set
+CONFIG_ACPI_CONTAINER=y
+CONFIG_ACPI_HED=y
+# CONFIG_ACPI_BGRT is not set
+CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y
+CONFIG_ACPI_NUMA=y
+# CONFIG_ACPI_HMAT is not set
+CONFIG_HAVE_ACPI_APEI=y
+CONFIG_ACPI_APEI=y
+CONFIG_ACPI_APEI_GHES=y
+# CONFIG_ACPI_APEI_PCIEAER is not set
+CONFIG_ACPI_APEI_SEA=y
+CONFIG_ACPI_APEI_MEMORY_FAILURE=y
+CONFIG_ACPI_APEI_EINJ=y
+# CONFIG_ACPI_APEI_ERST_DEBUG is not set
+# CONFIG_ACPI_CONFIGFS is not set
+# CONFIG_ACPI_PFRUT is not set
+CONFIG_ACPI_IORT=y
+CONFIG_ACPI_GTDT=y
+CONFIG_ACPI_APMT=y
+CONFIG_ACPI_PPTT=y
+CONFIG_ACPI_PCC=y
+# CONFIG_ACPI_FFH is not set
+# CONFIG_PMIC_OPREGION is not set
+CONFIG_ACPI_PRMT=y
+# CONFIG_VIRTUALIZATION is not set
+CONFIG_CPU_MITIGATIONS=y
+
+#
+# General architecture-dependent options
+#
+CONFIG_ARCH_HAS_SUBPAGE_FAULTS=y
+CONFIG_HOTPLUG_CORE_SYNC=y
+CONFIG_HOTPLUG_CORE_SYNC_DEAD=y
+# CONFIG_KPROBES is not set
+# CONFIG_JUMP_LABEL is not set
+CONFIG_UPROBES=y
+CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
+CONFIG_HAVE_IOREMAP_PROT=y
+CONFIG_HAVE_KPROBES=y
+CONFIG_HAVE_KRETPROBES=y
+CONFIG_ARCH_CORRECT_STACKTRACE_ON_KRETPROBE=y
+CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y
+CONFIG_HAVE_NMI=y
+CONFIG_TRACE_IRQFLAGS_SUPPORT=y
+CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
+CONFIG_HAVE_ARCH_TRACEHOOK=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
+CONFIG_GENERIC_SMP_IDLE_THREAD=y
+CONFIG_GENERIC_IDLE_POLL_SETUP=y
+CONFIG_ARCH_HAS_FORTIFY_SOURCE=y
+CONFIG_ARCH_HAS_KEEPINITRD=y
+CONFIG_ARCH_HAS_SET_MEMORY=y
+CONFIG_ARCH_HAS_SET_DIRECT_MAP=y
+CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y
+CONFIG_ARCH_WANTS_NO_INSTR=y
+CONFIG_HAVE_ASM_MODVERSIONS=y
+CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
+CONFIG_HAVE_RSEQ=y
+CONFIG_HAVE_RUST=y
+CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y
+CONFIG_HAVE_HW_BREAKPOINT=y
+CONFIG_HAVE_PERF_REGS=y
+CONFIG_HAVE_PERF_USER_STACK_DUMP=y
+CONFIG_HAVE_ARCH_JUMP_LABEL=y
+CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y
+CONFIG_MMU_GATHER_TABLE_FREE=y
+CONFIG_MMU_GATHER_RCU_TABLE_FREE=y
+CONFIG_MMU_LAZY_TLB_REFCOUNT=y
+CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
+CONFIG_ARCH_HAS_NMI_SAFE_THIS_CPU_OPS=y
+CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
+CONFIG_HAVE_CMPXCHG_LOCAL=y
+CONFIG_HAVE_CMPXCHG_DOUBLE=y
+CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y
+CONFIG_HAVE_ARCH_SECCOMP=y
+CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
+CONFIG_SECCOMP=y
+CONFIG_SECCOMP_FILTER=y
+# CONFIG_SECCOMP_CACHE_DEBUG is not set
+CONFIG_HAVE_ARCH_STACKLEAK=y
+CONFIG_HAVE_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR=y
+CONFIG_STACKPROTECTOR_STRONG=y
+CONFIG_ARCH_SUPPORTS_SHADOW_CALL_STACK=y
+# CONFIG_SHADOW_CALL_STACK is not set
+CONFIG_ARCH_SUPPORTS_LTO_CLANG=y
+CONFIG_ARCH_SUPPORTS_LTO_CLANG_THIN=y
+CONFIG_LTO_NONE=y
+CONFIG_ARCH_SUPPORTS_CFI_CLANG=y
+CONFIG_HAVE_CONTEXT_TRACKING_USER=y
+CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
+CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
+CONFIG_HAVE_MOVE_PUD=y
+CONFIG_HAVE_MOVE_PMD=y
+CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
+CONFIG_HAVE_ARCH_HUGE_VMAP=y
+CONFIG_HAVE_ARCH_HUGE_VMALLOC=y
+CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y
+CONFIG_ARCH_WANT_PMD_MKWRITE=y
+CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
+CONFIG_MODULES_USE_ELF_RELA=y
+CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_SOFTIRQ_ON_OWN_STACK=y
+CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
+CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
+CONFIG_ARCH_MMAP_RND_BITS=18
+CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
+CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11
+CONFIG_HAVE_PAGE_SIZE_4KB=y
+CONFIG_PAGE_SIZE_4KB=y
+CONFIG_PAGE_SIZE_LESS_THAN_64KB=y
+CONFIG_PAGE_SIZE_LESS_THAN_256KB=y
+CONFIG_PAGE_SHIFT=12
+CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
+CONFIG_CLONE_BACKWARDS=y
+CONFIG_OLD_SIGSUSPEND3=y
+CONFIG_COMPAT_OLD_SIGACTION=y
+CONFIG_COMPAT_32BIT_TIME=y
+CONFIG_HAVE_ARCH_VMAP_STACK=y
+CONFIG_VMAP_STACK=y
+CONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=y
+CONFIG_RANDOMIZE_KSTACK_OFFSET=y
+# CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT is not set
+CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
+CONFIG_STRICT_KERNEL_RWX=y
+CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
+CONFIG_STRICT_MODULE_RWX=y
+CONFIG_HAVE_ARCH_COMPILER_H=y
+CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y
+CONFIG_ARCH_USE_MEMREMAP_PROT=y
+# CONFIG_LOCK_EVENT_COUNTS is not set
+CONFIG_ARCH_HAS_RELR=y
+CONFIG_HAVE_PREEMPT_DYNAMIC=y
+CONFIG_HAVE_PREEMPT_DYNAMIC_KEY=y
+CONFIG_ARCH_WANT_LD_ORPHAN_WARN=y
+CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
+CONFIG_ARCH_SUPPORTS_PAGE_TABLE_CHECK=y
+CONFIG_ARCH_HAVE_TRACE_MMIO_ACCESS=y
+CONFIG_ARCH_HAS_HW_PTE_YOUNG=y
+
+#
+# GCOV-based kernel profiling
+#
+# CONFIG_GCOV_KERNEL is not set
+CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
+# end of GCOV-based kernel profiling
+
+CONFIG_HAVE_GCC_PLUGINS=y
+CONFIG_FUNCTION_ALIGNMENT_4B=y
+CONFIG_FUNCTION_ALIGNMENT=4
+# end of General architecture-dependent options
+
+CONFIG_RT_MUTEXES=y
+CONFIG_BASE_SMALL=0
+CONFIG_MODULES=y
+# CONFIG_MODULE_DEBUG is not set
+# CONFIG_MODULE_FORCE_LOAD is not set
+CONFIG_MODULE_UNLOAD=y
+# CONFIG_MODULE_FORCE_UNLOAD is not set
+# CONFIG_MODULE_UNLOAD_TAINT_TRACKING is not set
+# CONFIG_MODVERSIONS is not set
+# CONFIG_MODULE_SRCVERSION_ALL is not set
+# CONFIG_MODULE_SIG is not set
+CONFIG_MODULE_COMPRESS_NONE=y
+# CONFIG_MODULE_COMPRESS_GZIP is not set
+# CONFIG_MODULE_COMPRESS_XZ is not set
+# CONFIG_MODULE_COMPRESS_ZSTD is not set
+# CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS is not set
+CONFIG_MODPROBE_PATH="/sbin/modprobe"
+# CONFIG_TRIM_UNUSED_KSYMS is not set
+CONFIG_MODULES_TREE_LOOKUP=y
+CONFIG_BLOCK=y
+CONFIG_BLOCK_LEGACY_AUTOLOAD=y
+CONFIG_BLK_CGROUP_RWSTAT=y
+CONFIG_BLK_CGROUP_PUNT_BIO=y
+CONFIG_BLK_DEV_BSG_COMMON=y
+CONFIG_BLK_DEV_BSGLIB=y
+CONFIG_BLK_DEV_INTEGRITY=y
+CONFIG_BLK_DEV_INTEGRITY_T10=y
+CONFIG_BLK_DEV_WRITE_MOUNTED=y
+# CONFIG_BLK_DEV_ZONED is not set
+CONFIG_BLK_DEV_THROTTLING=y
+# CONFIG_BLK_DEV_THROTTLING_LOW is not set
+# CONFIG_BLK_WBT is not set
+# CONFIG_BLK_CGROUP_IOLATENCY is not set
+# CONFIG_BLK_CGROUP_IOCOST is not set
+# CONFIG_BLK_CGROUP_IOPRIO is not set
+CONFIG_BLK_DEBUG_FS=y
+# CONFIG_BLK_SED_OPAL is not set
+# CONFIG_BLK_INLINE_ENCRYPTION is not set
+
+#
+# Partition Types
+#
+# CONFIG_PARTITION_ADVANCED is not set
+CONFIG_MSDOS_PARTITION=y
+CONFIG_EFI_PARTITION=y
+# end of Partition Types
+
+CONFIG_BLK_MQ_PCI=y
+CONFIG_BLK_MQ_VIRTIO=y
+CONFIG_BLK_PM=y
+CONFIG_BLOCK_HOLDER_DEPRECATED=y
+
+#
+# IO Schedulers
+#
+CONFIG_MQ_IOSCHED_DEADLINE=y
+CONFIG_MQ_IOSCHED_KYBER=y
+# CONFIG_IOSCHED_BFQ is not set
+# end of IO Schedulers
+
+CONFIG_PADATA=y
+CONFIG_ASN1=y
+CONFIG_ARCH_INLINE_SPIN_TRYLOCK=y
+CONFIG_ARCH_INLINE_SPIN_TRYLOCK_BH=y
+CONFIG_ARCH_INLINE_SPIN_LOCK=y
+CONFIG_ARCH_INLINE_SPIN_LOCK_BH=y
+CONFIG_ARCH_INLINE_SPIN_LOCK_IRQ=y
+CONFIG_ARCH_INLINE_SPIN_LOCK_IRQSAVE=y
+CONFIG_ARCH_INLINE_SPIN_UNLOCK=y
+CONFIG_ARCH_INLINE_SPIN_UNLOCK_BH=y
+CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQ=y
+CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE=y
+CONFIG_ARCH_INLINE_READ_LOCK=y
+CONFIG_ARCH_INLINE_READ_LOCK_BH=y
+CONFIG_ARCH_INLINE_READ_LOCK_IRQ=y
+CONFIG_ARCH_INLINE_READ_LOCK_IRQSAVE=y
+CONFIG_ARCH_INLINE_READ_UNLOCK=y
+CONFIG_ARCH_INLINE_READ_UNLOCK_BH=y
+CONFIG_ARCH_INLINE_READ_UNLOCK_IRQ=y
+CONFIG_ARCH_INLINE_READ_UNLOCK_IRQRESTORE=y
+CONFIG_ARCH_INLINE_WRITE_LOCK=y
+CONFIG_ARCH_INLINE_WRITE_LOCK_BH=y
+CONFIG_ARCH_INLINE_WRITE_LOCK_IRQ=y
+CONFIG_ARCH_INLINE_WRITE_LOCK_IRQSAVE=y
+CONFIG_ARCH_INLINE_WRITE_UNLOCK=y
+CONFIG_ARCH_INLINE_WRITE_UNLOCK_BH=y
+CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQ=y
+CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE=y
+CONFIG_INLINE_SPIN_TRYLOCK=y
+CONFIG_INLINE_SPIN_TRYLOCK_BH=y
+CONFIG_INLINE_SPIN_LOCK=y
+CONFIG_INLINE_SPIN_LOCK_BH=y
+CONFIG_INLINE_SPIN_LOCK_IRQ=y
+CONFIG_INLINE_SPIN_LOCK_IRQSAVE=y
+CONFIG_INLINE_SPIN_UNLOCK_BH=y
+CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
+CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE=y
+CONFIG_INLINE_READ_LOCK=y
+CONFIG_INLINE_READ_LOCK_BH=y
+CONFIG_INLINE_READ_LOCK_IRQ=y
+CONFIG_INLINE_READ_LOCK_IRQSAVE=y
+CONFIG_INLINE_READ_UNLOCK=y
+CONFIG_INLINE_READ_UNLOCK_BH=y
+CONFIG_INLINE_READ_UNLOCK_IRQ=y
+CONFIG_INLINE_READ_UNLOCK_IRQRESTORE=y
+CONFIG_INLINE_WRITE_LOCK=y
+CONFIG_INLINE_WRITE_LOCK_BH=y
+CONFIG_INLINE_WRITE_LOCK_IRQ=y
+CONFIG_INLINE_WRITE_LOCK_IRQSAVE=y
+CONFIG_INLINE_WRITE_UNLOCK=y
+CONFIG_INLINE_WRITE_UNLOCK_BH=y
+CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
+CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
+CONFIG_MUTEX_SPIN_ON_OWNER=y
+CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_LOCK_SPIN_ON_OWNER=y
+CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y
+CONFIG_QUEUED_SPINLOCKS=y
+CONFIG_ARCH_USE_QUEUED_RWLOCKS=y
+CONFIG_QUEUED_RWLOCKS=y
+CONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=y
+CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y
+CONFIG_FREEZER=y
+
+#
+# Executable file formats
+#
+CONFIG_BINFMT_ELF=y
+CONFIG_COMPAT_BINFMT_ELF=y
+CONFIG_ARCH_BINFMT_ELF_STATE=y
+CONFIG_ARCH_BINFMT_ELF_EXTRA_PHDRS=y
+CONFIG_ARCH_HAVE_ELF_PROT=y
+CONFIG_ARCH_USE_GNU_PROPERTY=y
+CONFIG_ELFCORE=y
+# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
+CONFIG_BINFMT_SCRIPT=y
+CONFIG_BINFMT_MISC=y
+CONFIG_COREDUMP=y
+# end of Executable file formats
+
+#
+# Memory Management options
+#
+CONFIG_SWAP=y
+# CONFIG_ZSWAP is not set
+CONFIG_ZSMALLOC=m
+CONFIG_ZSMALLOC_STAT=y
+CONFIG_ZSMALLOC_CHAIN_SIZE=8
+
+#
+# Slab allocator options
+#
+CONFIG_SLUB=y
+# CONFIG_SLUB_TINY is not set
+CONFIG_SLAB_MERGE_DEFAULT=y
+# CONFIG_SLAB_FREELIST_RANDOM is not set
+# CONFIG_SLAB_FREELIST_HARDENED is not set
+# CONFIG_SLUB_STATS is not set
+CONFIG_SLUB_CPU_PARTIAL=y
+# CONFIG_RANDOM_KMALLOC_CACHES is not set
+# end of Slab allocator options
+
+# CONFIG_SHUFFLE_PAGE_ALLOCATOR is not set
+# CONFIG_COMPAT_BRK is not set
+CONFIG_SPARSEMEM=y
+CONFIG_SPARSEMEM_EXTREME=y
+CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
+CONFIG_SPARSEMEM_VMEMMAP=y
+CONFIG_HAVE_FAST_GUP=y
+CONFIG_ARCH_KEEP_MEMBLOCK=y
+CONFIG_MEMORY_ISOLATION=y
+CONFIG_EXCLUSIVE_SYSTEM_RAM=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
+CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y
+# CONFIG_MEMORY_HOTPLUG is not set
+CONFIG_ARCH_MHP_MEMMAP_ON_MEMORY_ENABLE=y
+CONFIG_SPLIT_PTLOCK_CPUS=4
+CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y
+CONFIG_COMPACTION=y
+CONFIG_COMPACT_UNEVICTABLE_DEFAULT=1
+CONFIG_PAGE_REPORTING=y
+CONFIG_MIGRATION=y
+CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y
+CONFIG_ARCH_ENABLE_THP_MIGRATION=y
+CONFIG_CONTIG_ALLOC=y
+CONFIG_PCP_BATCH_SCALE_MAX=5
+CONFIG_PHYS_ADDR_T_64BIT=y
+CONFIG_KSM=y
+CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
+CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y
+CONFIG_MEMORY_FAILURE=y
+# CONFIG_HWPOISON_INJECT is not set
+CONFIG_ARCH_WANTS_THP_SWAP=y
+CONFIG_TRANSPARENT_HUGEPAGE=y
+CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
+# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
+# CONFIG_TRANSPARENT_HUGEPAGE_NEVER is not set
+CONFIG_THP_SWAP=y
+# CONFIG_READ_ONLY_THP_FOR_FS is not set
+CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
+CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
+CONFIG_USE_PERCPU_NUMA_NODE_ID=y
+CONFIG_HAVE_SETUP_PER_CPU_AREA=y
+CONFIG_CMA=y
+# CONFIG_CMA_DEBUGFS is not set
+# CONFIG_CMA_SYSFS is not set
+CONFIG_CMA_AREAS=19
+CONFIG_GENERIC_EARLY_IOREMAP=y
+# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set
+# CONFIG_IDLE_PAGE_TRACKING is not set
+CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
+CONFIG_ARCH_HAS_CURRENT_STACK_POINTER=y
+CONFIG_ARCH_HAS_PTE_DEVMAP=y
+CONFIG_ARCH_HAS_ZONE_DMA_SET=y
+CONFIG_ZONE_DMA=y
+CONFIG_ZONE_DMA32=y
+CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
+CONFIG_ARCH_USES_PG_ARCH_X=y
+CONFIG_VM_EVENT_COUNTERS=y
+# CONFIG_PERCPU_STATS is not set
+# CONFIG_GUP_TEST is not set
+# CONFIG_DMAPOOL_TEST is not set
+CONFIG_ARCH_HAS_PTE_SPECIAL=y
+CONFIG_MEMFD_CREATE=y
+CONFIG_SECRETMEM=y
+# CONFIG_ANON_VMA_NAME is not set
+# CONFIG_USERFAULTFD is not set
+# CONFIG_LRU_GEN is not set
+CONFIG_ARCH_SUPPORTS_PER_VMA_LOCK=y
+CONFIG_PER_VMA_LOCK=y
+CONFIG_LOCK_MM_AND_FIND_VMA=y
+
+#
+# Data Access Monitoring
+#
+# CONFIG_DAMON is not set
+# end of Data Access Monitoring
+# end of Memory Management options
+
+CONFIG_NET=y
+CONFIG_NET_INGRESS=y
+CONFIG_NET_EGRESS=y
+CONFIG_NET_XGRESS=y
+CONFIG_SKB_EXTENSIONS=y
+
+#
+# Networking options
+#
+CONFIG_PACKET=y
+# CONFIG_PACKET_DIAG is not set
+CONFIG_UNIX=y
+CONFIG_AF_UNIX_OOB=y
+# CONFIG_UNIX_DIAG is not set
+# CONFIG_TLS is not set
+# CONFIG_XFRM_USER is not set
+# CONFIG_NET_KEY is not set
+# CONFIG_XDP_SOCKETS is not set
+CONFIG_NET_HANDSHAKE=y
+CONFIG_INET=y
+CONFIG_IP_MULTICAST=y
+CONFIG_IP_ADVANCED_ROUTER=y
+# CONFIG_IP_FIB_TRIE_STATS is not set
+CONFIG_IP_MULTIPLE_TABLES=y
+# CONFIG_IP_ROUTE_MULTIPATH is not set
+# CONFIG_IP_ROUTE_VERBOSE is not set
+CONFIG_IP_PNP=y
+CONFIG_IP_PNP_DHCP=y
+CONFIG_IP_PNP_BOOTP=y
+# CONFIG_IP_PNP_RARP is not set
+# CONFIG_NET_IPIP is not set
+# CONFIG_NET_IPGRE_DEMUX is not set
+CONFIG_NET_IP_TUNNEL=y
+# CONFIG_IP_MROUTE is not set
+# CONFIG_SYN_COOKIES is not set
+# CONFIG_NET_IPVTI is not set
+CONFIG_NET_UDP_TUNNEL=y
+# CONFIG_NET_FOU is not set
+# CONFIG_NET_FOU_IP_TUNNELS is not set
+# CONFIG_INET_AH is not set
+# CONFIG_INET_ESP is not set
+# CONFIG_INET_IPCOMP is not set
+CONFIG_INET_TABLE_PERTURB_ORDER=16
+CONFIG_INET_TUNNEL=m
+CONFIG_INET_DIAG=y
+CONFIG_INET_TCP_DIAG=y
+# CONFIG_INET_UDP_DIAG is not set
+# CONFIG_INET_RAW_DIAG is not set
+# CONFIG_INET_DIAG_DESTROY is not set
+# CONFIG_TCP_CONG_ADVANCED is not set
+CONFIG_TCP_CONG_CUBIC=y
+CONFIG_DEFAULT_TCP_CONG="cubic"
+# CONFIG_TCP_MD5SIG is not set
+CONFIG_IPV6=m
+# CONFIG_IPV6_ROUTER_PREF is not set
+# CONFIG_IPV6_OPTIMISTIC_DAD is not set
+# CONFIG_INET6_AH is not set
+# CONFIG_INET6_ESP is not set
+# CONFIG_INET6_IPCOMP is not set
+# CONFIG_IPV6_MIP6 is not set
+# CONFIG_IPV6_ILA is not set
+# CONFIG_IPV6_VTI is not set
+CONFIG_IPV6_SIT=m
+# CONFIG_IPV6_SIT_6RD is not set
+CONFIG_IPV6_NDISC_NODETYPE=y
+# CONFIG_IPV6_TUNNEL is not set
+CONFIG_IPV6_MULTIPLE_TABLES=y
+# CONFIG_IPV6_SUBTREES is not set
+# CONFIG_IPV6_MROUTE is not set
+# CONFIG_IPV6_SEG6_LWTUNNEL is not set
+# CONFIG_IPV6_SEG6_HMAC is not set
+# CONFIG_IPV6_RPL_LWTUNNEL is not set
+# CONFIG_IPV6_IOAM6_LWTUNNEL is not set
+# CONFIG_NETLABEL is not set
+# CONFIG_MPTCP is not set
+# CONFIG_NETWORK_SECMARK is not set
+CONFIG_NET_PTP_CLASSIFY=y
+# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
+CONFIG_NETFILTER=y
+CONFIG_NETFILTER_ADVANCED=y
+CONFIG_BRIDGE_NETFILTER=m
+
+#
+# Core Netfilter Configuration
+#
+CONFIG_NETFILTER_INGRESS=y
+CONFIG_NETFILTER_EGRESS=y
+CONFIG_NETFILTER_SKIP_EGRESS=y
+CONFIG_NETFILTER_NETLINK=y
+CONFIG_NETFILTER_FAMILY_BRIDGE=y
+CONFIG_NETFILTER_BPF_LINK=y
+# CONFIG_NETFILTER_NETLINK_HOOK is not set
+# CONFIG_NETFILTER_NETLINK_ACCT is not set
+# CONFIG_NETFILTER_NETLINK_QUEUE is not set
+# CONFIG_NETFILTER_NETLINK_LOG is not set
+# CONFIG_NETFILTER_NETLINK_OSF is not set
+CONFIG_NF_CONNTRACK=m
+CONFIG_NF_LOG_SYSLOG=m
+CONFIG_NF_CONNTRACK_MARK=y
+# CONFIG_NF_CONNTRACK_ZONES is not set
+CONFIG_NF_CONNTRACK_PROCFS=y
+CONFIG_NF_CONNTRACK_EVENTS=y
+# CONFIG_NF_CONNTRACK_TIMEOUT is not set
+# CONFIG_NF_CONNTRACK_TIMESTAMP is not set
+# CONFIG_NF_CONNTRACK_LABELS is not set
+CONFIG_NF_CT_PROTO_DCCP=y
+CONFIG_NF_CT_PROTO_SCTP=y
+CONFIG_NF_CT_PROTO_UDPLITE=y
+# CONFIG_NF_CONNTRACK_AMANDA is not set
+# CONFIG_NF_CONNTRACK_FTP is not set
+# CONFIG_NF_CONNTRACK_H323 is not set
+# CONFIG_NF_CONNTRACK_IRC is not set
+# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set
+# CONFIG_NF_CONNTRACK_SNMP is not set
+# CONFIG_NF_CONNTRACK_PPTP is not set
+# CONFIG_NF_CONNTRACK_SANE is not set
+# CONFIG_NF_CONNTRACK_SIP is not set
+# CONFIG_NF_CONNTRACK_TFTP is not set
+# CONFIG_NF_CT_NETLINK is not set
+CONFIG_NF_NAT=m
+CONFIG_NF_NAT_REDIRECT=y
+CONFIG_NF_NAT_MASQUERADE=y
+CONFIG_NF_TABLES=y
+CONFIG_NF_TABLES_INET=y
+# CONFIG_NF_TABLES_NETDEV is not set
+# CONFIG_NFT_NUMGEN is not set
+CONFIG_NFT_CT=m
+# CONFIG_NFT_CONNLIMIT is not set
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_MASQ=m
+# CONFIG_NFT_REDIR is not set
+CONFIG_NFT_NAT=m
+# CONFIG_NFT_TUNNEL is not set
+# CONFIG_NFT_QUOTA is not set
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_REJECT_INET=m
+# CONFIG_NFT_COMPAT is not set
+# CONFIG_NFT_HASH is not set
+CONFIG_NFT_FIB=y
+# CONFIG_NFT_FIB_INET is not set
+# CONFIG_NFT_SOCKET is not set
+# CONFIG_NFT_OSF is not set
+# CONFIG_NFT_TPROXY is not set
+# CONFIG_NFT_SYNPROXY is not set
+# CONFIG_NF_FLOW_TABLE is not set
+CONFIG_NETFILTER_XTABLES=m
+CONFIG_NETFILTER_XTABLES_COMPAT=y
+
+#
+# Xtables combined modules
+#
+CONFIG_NETFILTER_XT_MARK=m
+# CONFIG_NETFILTER_XT_CONNMARK is not set
+
+#
+# Xtables targets
+#
+# CONFIG_NETFILTER_XT_TARGET_AUDIT is not set
+CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
+# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
+# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
+# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
+# CONFIG_NETFILTER_XT_TARGET_HL is not set
+# CONFIG_NETFILTER_XT_TARGET_HMARK is not set
+# CONFIG_NETFILTER_XT_TARGET_IDLETIMER is not set
+# CONFIG_NETFILTER_XT_TARGET_LED is not set
+CONFIG_NETFILTER_XT_TARGET_LOG=m
+# CONFIG_NETFILTER_XT_TARGET_MARK is not set
+CONFIG_NETFILTER_XT_NAT=m
+# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set
+# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set
+# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set
+# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set
+CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
+CONFIG_NETFILTER_XT_TARGET_MASQUERADE=m
+# CONFIG_NETFILTER_XT_TARGET_TEE is not set
+# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set
+CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
+# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set
+
+#
+# Xtables matches
+#
+CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
+# CONFIG_NETFILTER_XT_MATCH_BPF is not set
+# CONFIG_NETFILTER_XT_MATCH_CGROUP is not set
+# CONFIG_NETFILTER_XT_MATCH_CLUSTER is not set
+CONFIG_NETFILTER_XT_MATCH_COMMENT=m
+# CONFIG_NETFILTER_XT_MATCH_CONNBYTES is not set
+# CONFIG_NETFILTER_XT_MATCH_CONNLABEL is not set
+# CONFIG_NETFILTER_XT_MATCH_CONNLIMIT is not set
+# CONFIG_NETFILTER_XT_MATCH_CONNMARK is not set
+CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
+# CONFIG_NETFILTER_XT_MATCH_CPU is not set
+# CONFIG_NETFILTER_XT_MATCH_DCCP is not set
+# CONFIG_NETFILTER_XT_MATCH_DEVGROUP is not set
+# CONFIG_NETFILTER_XT_MATCH_DSCP is not set
+# CONFIG_NETFILTER_XT_MATCH_ECN is not set
+# CONFIG_NETFILTER_XT_MATCH_ESP is not set
+# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set
+# CONFIG_NETFILTER_XT_MATCH_HELPER is not set
+# CONFIG_NETFILTER_XT_MATCH_HL is not set
+# CONFIG_NETFILTER_XT_MATCH_IPCOMP is not set
+# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set
+CONFIG_NETFILTER_XT_MATCH_IPVS=m
+# CONFIG_NETFILTER_XT_MATCH_L2TP is not set
+# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set
+# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set
+# CONFIG_NETFILTER_XT_MATCH_MAC is not set
+# CONFIG_NETFILTER_XT_MATCH_MARK is not set
+# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set
+# CONFIG_NETFILTER_XT_MATCH_NFACCT is not set
+# CONFIG_NETFILTER_XT_MATCH_OSF is not set
+# CONFIG_NETFILTER_XT_MATCH_OWNER is not set
+# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
+# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
+# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
+# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set
+# CONFIG_NETFILTER_XT_MATCH_REALM is not set
+# CONFIG_NETFILTER_XT_MATCH_RECENT is not set
+# CONFIG_NETFILTER_XT_MATCH_SCTP is not set
+# CONFIG_NETFILTER_XT_MATCH_SOCKET is not set
+# CONFIG_NETFILTER_XT_MATCH_STATE is not set
+# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set
+# CONFIG_NETFILTER_XT_MATCH_STRING is not set
+CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
+# CONFIG_NETFILTER_XT_MATCH_TIME is not set
+# CONFIG_NETFILTER_XT_MATCH_U32 is not set
+# end of Core Netfilter Configuration
+
+# CONFIG_IP_SET is not set
+CONFIG_IP_VS=m
+# CONFIG_IP_VS_IPV6 is not set
+# CONFIG_IP_VS_DEBUG is not set
+CONFIG_IP_VS_TAB_BITS=12
+
+#
+# IPVS transport protocol load balancing support
+#
+CONFIG_IP_VS_PROTO_TCP=y
+CONFIG_IP_VS_PROTO_UDP=y
+# CONFIG_IP_VS_PROTO_ESP is not set
+# CONFIG_IP_VS_PROTO_AH is not set
+# CONFIG_IP_VS_PROTO_SCTP is not set
+
+#
+# IPVS scheduler
+#
+CONFIG_IP_VS_RR=m
+# CONFIG_IP_VS_WRR is not set
+# CONFIG_IP_VS_LC is not set
+# CONFIG_IP_VS_WLC is not set
+# CONFIG_IP_VS_FO is not set
+# CONFIG_IP_VS_OVF is not set
+# CONFIG_IP_VS_LBLC is not set
+# CONFIG_IP_VS_LBLCR is not set
+# CONFIG_IP_VS_DH is not set
+# CONFIG_IP_VS_SH is not set
+# CONFIG_IP_VS_MH is not set
+# CONFIG_IP_VS_SED is not set
+# CONFIG_IP_VS_NQ is not set
+# CONFIG_IP_VS_TWOS is not set
+
+#
+# IPVS SH scheduler
+#
+CONFIG_IP_VS_SH_TAB_BITS=8
+
+#
+# IPVS MH scheduler
+#
+CONFIG_IP_VS_MH_TAB_INDEX=12
+
+#
+# IPVS application helper
+#
+CONFIG_IP_VS_NFCT=y
+
+#
+# IP: Netfilter Configuration
+#
+CONFIG_NF_DEFRAG_IPV4=m
+CONFIG_IP_NF_IPTABLES_LEGACY=m
+# CONFIG_NF_SOCKET_IPV4 is not set
+# CONFIG_NF_TPROXY_IPV4 is not set
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_REJECT_IPV4=m
+# CONFIG_NFT_DUP_IPV4 is not set
+CONFIG_NFT_FIB_IPV4=y
+# CONFIG_NF_TABLES_ARP is not set
+# CONFIG_NF_DUP_IPV4 is not set
+# CONFIG_NF_LOG_ARP is not set
+# CONFIG_NF_LOG_IPV4 is not set
+CONFIG_NF_REJECT_IPV4=m
+CONFIG_IP_NF_IPTABLES=m
+# CONFIG_IP_NF_MATCH_AH is not set
+# CONFIG_IP_NF_MATCH_ECN is not set
+# CONFIG_IP_NF_MATCH_RPFILTER is not set
+# CONFIG_IP_NF_MATCH_TTL is not set
+CONFIG_IP_NF_FILTER=m
+CONFIG_IP_NF_TARGET_REJECT=m
+# CONFIG_IP_NF_TARGET_SYNPROXY is not set
+CONFIG_IP_NF_NAT=m
+CONFIG_IP_NF_TARGET_MASQUERADE=m
+# CONFIG_IP_NF_TARGET_NETMAP is not set
+CONFIG_IP_NF_TARGET_REDIRECT=m
+CONFIG_IP_NF_MANGLE=m
+# CONFIG_IP_NF_TARGET_ECN is not set
+# CONFIG_IP_NF_TARGET_TTL is not set
+# CONFIG_IP_NF_RAW is not set
+# CONFIG_IP_NF_SECURITY is not set
+# CONFIG_IP_NF_ARPFILTER is not set
+# end of IP: Netfilter Configuration
+
+#
+# IPv6: Netfilter Configuration
+#
+CONFIG_IP6_NF_IPTABLES_LEGACY=m
+# CONFIG_NF_SOCKET_IPV6 is not set
+# CONFIG_NF_TPROXY_IPV6 is not set
+CONFIG_NF_TABLES_IPV6=y
+CONFIG_NFT_REJECT_IPV6=m
+# CONFIG_NFT_DUP_IPV6 is not set
+CONFIG_NFT_FIB_IPV6=m
+# CONFIG_NF_DUP_IPV6 is not set
+CONFIG_NF_REJECT_IPV6=m
+CONFIG_NF_LOG_IPV6=m
+CONFIG_IP6_NF_IPTABLES=m
+# CONFIG_IP6_NF_MATCH_AH is not set
+# CONFIG_IP6_NF_MATCH_EUI64 is not set
+# CONFIG_IP6_NF_MATCH_FRAG is not set
+# CONFIG_IP6_NF_MATCH_OPTS is not set
+# CONFIG_IP6_NF_MATCH_HL is not set
+# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set
+# CONFIG_IP6_NF_MATCH_MH is not set
+# CONFIG_IP6_NF_MATCH_RPFILTER is not set
+# CONFIG_IP6_NF_MATCH_RT is not set
+# CONFIG_IP6_NF_MATCH_SRH is not set
+# CONFIG_IP6_NF_TARGET_HL is not set
+CONFIG_IP6_NF_FILTER=m
+CONFIG_IP6_NF_TARGET_REJECT=m
+# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
+CONFIG_IP6_NF_MANGLE=m
+# CONFIG_IP6_NF_RAW is not set
+# CONFIG_IP6_NF_SECURITY is not set
+CONFIG_IP6_NF_NAT=m
+CONFIG_IP6_NF_TARGET_MASQUERADE=m
+# CONFIG_IP6_NF_TARGET_NPT is not set
+# end of IPv6: Netfilter Configuration
+
+CONFIG_NF_DEFRAG_IPV6=m
+# CONFIG_NF_TABLES_BRIDGE is not set
+# CONFIG_NF_CONNTRACK_BRIDGE is not set
+# CONFIG_BRIDGE_NF_EBTABLES is not set
+# CONFIG_IP_DCCP is not set
+# CONFIG_IP_SCTP is not set
+# CONFIG_RDS is not set
+# CONFIG_TIPC is not set
+# CONFIG_ATM is not set
+# CONFIG_L2TP is not set
+CONFIG_STP=m
+CONFIG_GARP=m
+CONFIG_MRP=m
+CONFIG_BRIDGE=m
+CONFIG_BRIDGE_IGMP_SNOOPING=y
+CONFIG_BRIDGE_VLAN_FILTERING=y
+# CONFIG_BRIDGE_MRP is not set
+# CONFIG_BRIDGE_CFM is not set
+CONFIG_NET_DSA=m
+# CONFIG_NET_DSA_TAG_NONE is not set
+# CONFIG_NET_DSA_TAG_AR9331 is not set
+# CONFIG_NET_DSA_TAG_BRCM is not set
+# CONFIG_NET_DSA_TAG_BRCM_LEGACY is not set
+# CONFIG_NET_DSA_TAG_BRCM_PREPEND is not set
+# CONFIG_NET_DSA_TAG_HELLCREEK is not set
+# CONFIG_NET_DSA_TAG_GSWIP is not set
+# CONFIG_NET_DSA_TAG_DSA is not set
+# CONFIG_NET_DSA_TAG_EDSA is not set
+# CONFIG_NET_DSA_TAG_MTK is not set
+# CONFIG_NET_DSA_TAG_KSZ is not set
+# CONFIG_NET_DSA_TAG_OCELOT is not set
+# CONFIG_NET_DSA_TAG_OCELOT_8021Q is not set
+# CONFIG_NET_DSA_TAG_QCA is not set
+# CONFIG_NET_DSA_TAG_RTL4_A is not set
+# CONFIG_NET_DSA_TAG_RTL8_4 is not set
+# CONFIG_NET_DSA_TAG_RZN1_A5PSW is not set
+# CONFIG_NET_DSA_TAG_LAN9303 is not set
+# CONFIG_NET_DSA_TAG_SJA1105 is not set
+# CONFIG_NET_DSA_TAG_TRAILER is not set
+# CONFIG_NET_DSA_TAG_XRS700X is not set
+CONFIG_VLAN_8021Q=m
+CONFIG_VLAN_8021Q_GVRP=y
+CONFIG_VLAN_8021Q_MVRP=y
+CONFIG_LLC=m
+# CONFIG_LLC2 is not set
+# CONFIG_ATALK is not set
+# CONFIG_X25 is not set
+# CONFIG_LAPB is not set
+# CONFIG_PHONET is not set
+# CONFIG_6LOWPAN is not set
+# CONFIG_IEEE802154 is not set
+CONFIG_NET_SCHED=y
+
+#
+# Queueing/Scheduling
+#
+# CONFIG_NET_SCH_HTB is not set
+# CONFIG_NET_SCH_HFSC is not set
+# CONFIG_NET_SCH_PRIO is not set
+# CONFIG_NET_SCH_MULTIQ is not set
+# CONFIG_NET_SCH_RED is not set
+# CONFIG_NET_SCH_SFB is not set
+# CONFIG_NET_SCH_SFQ is not set
+# CONFIG_NET_SCH_TEQL is not set
+# CONFIG_NET_SCH_TBF is not set
+CONFIG_NET_SCH_CBS=m
+CONFIG_NET_SCH_ETF=m
+CONFIG_NET_SCH_MQPRIO_LIB=m
+CONFIG_NET_SCH_TAPRIO=m
+# CONFIG_NET_SCH_GRED is not set
+# CONFIG_NET_SCH_NETEM is not set
+# CONFIG_NET_SCH_DRR is not set
+CONFIG_NET_SCH_MQPRIO=m
+# CONFIG_NET_SCH_SKBPRIO is not set
+# CONFIG_NET_SCH_CHOKE is not set
+# CONFIG_NET_SCH_QFQ is not set
+# CONFIG_NET_SCH_CODEL is not set
+# CONFIG_NET_SCH_FQ_CODEL is not set
+# CONFIG_NET_SCH_CAKE is not set
+# CONFIG_NET_SCH_FQ is not set
+# CONFIG_NET_SCH_HHF is not set
+# CONFIG_NET_SCH_PIE is not set
+CONFIG_NET_SCH_INGRESS=m
+# CONFIG_NET_SCH_PLUG is not set
+# CONFIG_NET_SCH_ETS is not set
+# CONFIG_NET_SCH_DEFAULT is not set
+
+#
+# Classification
+#
+CONFIG_NET_CLS=y
+CONFIG_NET_CLS_BASIC=m
+# CONFIG_NET_CLS_ROUTE4 is not set
+# CONFIG_NET_CLS_FW is not set
+# CONFIG_NET_CLS_U32 is not set
+# CONFIG_NET_CLS_FLOW is not set
+CONFIG_NET_CLS_CGROUP=y
+# CONFIG_NET_CLS_BPF is not set
+CONFIG_NET_CLS_FLOWER=m
+# CONFIG_NET_CLS_MATCHALL is not set
+# CONFIG_NET_EMATCH is not set
+CONFIG_NET_CLS_ACT=y
+# CONFIG_NET_ACT_POLICE is not set
+CONFIG_NET_ACT_GACT=m
+# CONFIG_GACT_PROB is not set
+CONFIG_NET_ACT_MIRRED=m
+# CONFIG_NET_ACT_SAMPLE is not set
+# CONFIG_NET_ACT_NAT is not set
+# CONFIG_NET_ACT_PEDIT is not set
+# CONFIG_NET_ACT_SIMP is not set
+# CONFIG_NET_ACT_SKBEDIT is not set
+# CONFIG_NET_ACT_CSUM is not set
+# CONFIG_NET_ACT_MPLS is not set
+# CONFIG_NET_ACT_VLAN is not set
+# CONFIG_NET_ACT_BPF is not set
+# CONFIG_NET_ACT_CONNMARK is not set
+# CONFIG_NET_ACT_CTINFO is not set
+# CONFIG_NET_ACT_SKBMOD is not set
+# CONFIG_NET_ACT_IFE is not set
+# CONFIG_NET_ACT_TUNNEL_KEY is not set
+CONFIG_NET_ACT_GATE=m
+# CONFIG_NET_TC_SKB_EXT is not set
+CONFIG_NET_SCH_FIFO=y
+# CONFIG_DCB is not set
+CONFIG_DNS_RESOLVER=y
+# CONFIG_BATMAN_ADV is not set
+# CONFIG_OPENVSWITCH is not set
+# CONFIG_VSOCKETS is not set
+# CONFIG_NETLINK_DIAG is not set
+# CONFIG_MPLS is not set
+# CONFIG_NET_NSH is not set
+# CONFIG_HSR is not set
+CONFIG_NET_SWITCHDEV=y
+CONFIG_NET_L3_MASTER_DEV=y
+CONFIG_QRTR=m
+CONFIG_QRTR_SMD=m
+CONFIG_QRTR_TUN=m
+CONFIG_QRTR_MHI=m
+# CONFIG_NET_NCSI is not set
+CONFIG_PCPU_DEV_REFCNT=y
+CONFIG_MAX_SKB_FRAGS=17
+CONFIG_RPS=y
+CONFIG_RFS_ACCEL=y
+CONFIG_SOCK_RX_QUEUE_MAPPING=y
+CONFIG_XPS=y
+CONFIG_CGROUP_NET_PRIO=y
+CONFIG_CGROUP_NET_CLASSID=y
+CONFIG_NET_RX_BUSY_POLL=y
+CONFIG_BQL=y
+# CONFIG_BPF_STREAM_PARSER is not set
+CONFIG_NET_FLOW_LIMIT=y
+
+#
+# Network testing
+#
+# CONFIG_NET_PKTGEN is not set
+# CONFIG_NET_DROP_MONITOR is not set
+# end of Network testing
+# end of Networking options
+
+# CONFIG_HAMRADIO is not set
+# CONFIG_CAN is not set
+CONFIG_BT=m
+CONFIG_BT_BREDR=y
+# CONFIG_BT_RFCOMM is not set
+# CONFIG_BT_BNEP is not set
+CONFIG_BT_HIDP=m
+CONFIG_BT_LE=y
+CONFIG_BT_LE_L2CAP_ECRED=y
+# CONFIG_BT_LEDS is not set
+# CONFIG_BT_MSFTEXT is not set
+# CONFIG_BT_AOSPEXT is not set
+# CONFIG_BT_DEBUGFS is not set
+# CONFIG_BT_SELFTEST is not set
+
+#
+# Bluetooth device drivers
+#
+CONFIG_BT_QCA=m
+# CONFIG_BT_HCIBTUSB is not set
+# CONFIG_BT_HCIBTSDIO is not set
+CONFIG_BT_HCIUART=m
+CONFIG_BT_HCIUART_SERDEV=y
+CONFIG_BT_HCIUART_H4=y
+# CONFIG_BT_HCIUART_NOKIA is not set
+# CONFIG_BT_HCIUART_BCSP is not set
+# CONFIG_BT_HCIUART_ATH3K is not set
+CONFIG_BT_HCIUART_LL=y
+# CONFIG_BT_HCIUART_3WIRE is not set
+# CONFIG_BT_HCIUART_INTEL is not set
+# CONFIG_BT_HCIUART_BCM is not set
+# CONFIG_BT_HCIUART_RTL is not set
+CONFIG_BT_HCIUART_QCA=y
+# CONFIG_BT_HCIUART_AG6XX is not set
+# CONFIG_BT_HCIUART_MRVL is not set
+# CONFIG_BT_HCIBCM203X is not set
+# CONFIG_BT_HCIBCM4377 is not set
+# CONFIG_BT_HCIBPA10X is not set
+# CONFIG_BT_HCIBFUSB is not set
+# CONFIG_BT_HCIVHCI is not set
+# CONFIG_BT_MRVL is not set
+# CONFIG_BT_MTKSDIO is not set
+# CONFIG_BT_MTKUART is not set
+# CONFIG_BT_QCOMSMD is not set
+# CONFIG_BT_VIRTIO is not set
+# CONFIG_BT_NXPUART is not set
+# end of Bluetooth device drivers
+
+# CONFIG_AF_RXRPC is not set
+# CONFIG_AF_KCM is not set
+# CONFIG_MCTP is not set
+CONFIG_FIB_RULES=y
+CONFIG_WIRELESS=y
+CONFIG_CFG80211=m
+# CONFIG_NL80211_TESTMODE is not set
+# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
+# CONFIG_CFG80211_CERTIFICATION_ONUS is not set
+CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y
+CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y
+CONFIG_CFG80211_DEFAULT_PS=y
+# CONFIG_CFG80211_DEBUGFS is not set
+CONFIG_CFG80211_CRDA_SUPPORT=y
+# CONFIG_CFG80211_WEXT is not set
+CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
+CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
+# CONFIG_MAC80211_MESH is not set
+CONFIG_MAC80211_LEDS=y
+# CONFIG_MAC80211_MESSAGE_TRACING is not set
+# CONFIG_MAC80211_DEBUG_MENU is not set
+CONFIG_MAC80211_STA_HASH_MAX_SIZE=0
+# CONFIG_RFKILL is not set
+# CONFIG_NET_9P is not set
+# CONFIG_CAIF is not set
+# CONFIG_CEPH_LIB is not set
+# CONFIG_NFC is not set
+# CONFIG_PSAMPLE is not set
+# CONFIG_NET_IFE is not set
+# CONFIG_LWTUNNEL is not set
+CONFIG_DST_CACHE=y
+CONFIG_GRO_CELLS=y
+CONFIG_NET_SELFTESTS=m
+CONFIG_NET_SOCK_MSG=y
+CONFIG_NET_DEVLINK=y
+CONFIG_PAGE_POOL=y
+CONFIG_PAGE_POOL_STATS=y
+CONFIG_FAILOVER=y
+CONFIG_ETHTOOL_NETLINK=y
+
+#
+# Device Drivers
+#
+CONFIG_ARM_AMBA=y
+CONFIG_HAVE_PCI=y
+CONFIG_GENERIC_PCI_IOMAP=y
+CONFIG_PCI=y
+CONFIG_PCI_DOMAINS=y
+CONFIG_PCI_DOMAINS_GENERIC=y
+CONFIG_PCI_SYSCALL=y
+CONFIG_PCIEPORTBUS=y
+CONFIG_PCIEAER=y
+# CONFIG_PCIEAER_INJECT is not set
+# CONFIG_PCIE_ECRC is not set
+CONFIG_PCIEASPM=y
+CONFIG_PCIEASPM_DEFAULT=y
+# CONFIG_PCIEASPM_POWERSAVE is not set
+# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
+# CONFIG_PCIEASPM_PERFORMANCE is not set
+CONFIG_PCIE_PME=y
+# CONFIG_PCIE_DPC is not set
+# CONFIG_PCIE_PTM is not set
+CONFIG_PCI_MSI=y
+CONFIG_PCI_QUIRKS=y
+# CONFIG_PCI_DEBUG is not set
+CONFIG_PCI_REALLOC_ENABLE_AUTO=y
+# CONFIG_PCI_STUB is not set
+# CONFIG_PCI_PF_STUB is not set
+CONFIG_PCI_ATS=y
+CONFIG_PCI_ECAM=y
+CONFIG_PCI_IOV=y
+# CONFIG_PCI_PRI is not set
+CONFIG_PCI_PASID=y
+CONFIG_PCI_LABEL=y
+# CONFIG_PCI_DYNAMIC_OF_NODES is not set
+# CONFIG_PCIE_BUS_TUNE_OFF is not set
+CONFIG_PCIE_BUS_DEFAULT=y
+# CONFIG_PCIE_BUS_SAFE is not set
+# CONFIG_PCIE_BUS_PERFORMANCE is not set
+# CONFIG_PCIE_BUS_PEER2PEER is not set
+# CONFIG_VGA_ARB is not set
+# CONFIG_HOTPLUG_PCI is not set
+
+#
+# PCI controller drivers
+#
+# CONFIG_PCIE_ALTERA is not set
+# CONFIG_PCI_HOST_THUNDER_PEM is not set
+# CONFIG_PCI_HOST_THUNDER_ECAM is not set
+# CONFIG_PCI_FTPCI100 is not set
+CONFIG_PCI_HOST_COMMON=y
+CONFIG_PCI_HOST_GENERIC=y
+# CONFIG_PCIE_HISI_ERR is not set
+# CONFIG_PCIE_MICROCHIP_HOST is not set
+# CONFIG_PCI_XGENE is not set
+# CONFIG_PCIE_XILINX is not set
+
+#
+# Cadence-based PCIe controllers
+#
+# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
+# end of Cadence-based PCIe controllers
+
+#
+# DesignWare-based PCIe controllers
+#
+CONFIG_PCIE_DW=y
+CONFIG_PCIE_DW_HOST=y
+# CONFIG_PCIE_AL is not set
+# CONFIG_PCI_MESON is not set
+# CONFIG_PCI_HISI is not set
+# CONFIG_PCIE_KIRIN is not set
+# CONFIG_PCIE_DW_PLAT_HOST is not set
+CONFIG_PCIE_QCOM=y
+# end of DesignWare-based PCIe controllers
+
+#
+# Mobiveil-based PCIe controllers
+#
+# end of Mobiveil-based PCIe controllers
+# end of PCI controller drivers
+
+#
+# PCI Endpoint
+#
+# CONFIG_PCI_ENDPOINT is not set
+# end of PCI Endpoint
+
+#
+# PCI switch controller drivers
+#
+# CONFIG_PCI_SW_SWITCHTEC is not set
+# end of PCI switch controller drivers
+
+# CONFIG_CXL_BUS is not set
+# CONFIG_PCCARD is not set
+# CONFIG_RAPIDIO is not set
+
+#
+# Generic Driver Options
+#
+CONFIG_AUXILIARY_BUS=y
+CONFIG_UEVENT_HELPER=y
+CONFIG_UEVENT_HELPER_PATH=""
+CONFIG_DEVTMPFS=y
+CONFIG_DEVTMPFS_MOUNT=y
+# CONFIG_DEVTMPFS_SAFE is not set
+CONFIG_STANDALONE=y
+CONFIG_PREVENT_FIRMWARE_BUILD=y
+
+#
+# Firmware loader
+#
+CONFIG_FW_LOADER=y
+CONFIG_FW_LOADER_DEBUG=y
+CONFIG_FW_LOADER_PAGED_BUF=y
+CONFIG_FW_LOADER_SYSFS=y
+CONFIG_EXTRA_FIRMWARE=""
+CONFIG_FW_LOADER_USER_HELPER=y
+# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set
+CONFIG_FW_LOADER_COMPRESS=y
+CONFIG_FW_LOADER_COMPRESS_XZ=y
+# CONFIG_FW_LOADER_COMPRESS_ZSTD is not set
+CONFIG_FW_CACHE=y
+# CONFIG_FW_UPLOAD is not set
+# end of Firmware loader
+
+CONFIG_WANT_DEV_COREDUMP=y
+CONFIG_ALLOW_DEV_COREDUMP=y
+CONFIG_DEV_COREDUMP=y
+# CONFIG_DEBUG_DRIVER is not set
+# CONFIG_DEBUG_DEVRES is not set
+# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set
+# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set
+CONFIG_GENERIC_CPU_DEVICES=y
+CONFIG_GENERIC_CPU_AUTOPROBE=y
+CONFIG_GENERIC_CPU_VULNERABILITIES=y
+CONFIG_SOC_BUS=y
+CONFIG_REGMAP=y
+CONFIG_REGMAP_I2C=y
+CONFIG_REGMAP_SLIMBUS=m
+CONFIG_REGMAP_SPI=y
+CONFIG_REGMAP_SPMI=y
+CONFIG_REGMAP_MMIO=y
+CONFIG_REGMAP_IRQ=y
+CONFIG_DMA_SHARED_BUFFER=y
+# CONFIG_DMA_FENCE_TRACE is not set
+CONFIG_GENERIC_ARCH_TOPOLOGY=y
+CONFIG_GENERIC_ARCH_NUMA=y
+# CONFIG_FW_DEVLINK_SYNC_STATE_TIMEOUT is not set
+# end of Generic Driver Options
+
+#
+# Bus devices
+#
+# CONFIG_MOXTET is not set
+CONFIG_QCOM_EBI2=y
+# CONFIG_QCOM_SSC_BLOCK_BUS is not set
+# CONFIG_VEXPRESS_CONFIG is not set
+CONFIG_MHI_BUS=m
+# CONFIG_MHI_BUS_DEBUG is not set
+CONFIG_MHI_BUS_PCI_GENERIC=m
+CONFIG_MHI_BUS_EP=m
+# end of Bus devices
+
+#
+# Cache Drivers
+#
+# end of Cache Drivers
+
+# CONFIG_CONNECTOR is not set
+
+#
+# Firmware Drivers
+#
+
+#
+# ARM System Control and Management Interface Protocol
+#
+CONFIG_ARM_SCMI_PROTOCOL=y
+# CONFIG_ARM_SCMI_RAW_MODE_SUPPORT is not set
+CONFIG_ARM_SCMI_HAVE_TRANSPORT=y
+CONFIG_ARM_SCMI_HAVE_SHMEM=y
+CONFIG_ARM_SCMI_HAVE_MSG=y
+CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y
+CONFIG_ARM_SCMI_TRANSPORT_OPTEE=y
+CONFIG_ARM_SCMI_TRANSPORT_SMC=y
+# CONFIG_ARM_SCMI_TRANSPORT_SMC_ATOMIC_ENABLE is not set
+# CONFIG_ARM_SCMI_TRANSPORT_VIRTIO is not set
+# CONFIG_ARM_SCMI_POWER_CONTROL is not set
+# end of ARM System Control and Management Interface Protocol
+
+CONFIG_ARM_SCPI_PROTOCOL=y
+# CONFIG_ARM_SDE_INTERFACE is not set
+# CONFIG_FIRMWARE_MEMMAP is not set
+CONFIG_DMIID=y
+# CONFIG_DMI_SYSFS is not set
+# CONFIG_ISCSI_IBFT is not set
+# CONFIG_FW_CFG_SYSFS is not set
+CONFIG_SYSFB=y
+CONFIG_SYSFB_SIMPLEFB=y
+# CONFIG_ARM_FFA_TRANSPORT is not set
+CONFIG_FW_CS_DSP=m
+# CONFIG_GOOGLE_FIRMWARE is not set
+
+#
+# EFI (Extensible Firmware Interface) Support
+#
+CONFIG_EFI_ESRT=y
+CONFIG_EFI_VARS_PSTORE=y
+# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set
+CONFIG_EFI_PARAMS_FROM_FDT=y
+CONFIG_EFI_RUNTIME_WRAPPERS=y
+CONFIG_EFI_GENERIC_STUB=y
+# CONFIG_EFI_ZBOOT is not set
+CONFIG_EFI_ARMSTUB_DTB_LOADER=y
+# CONFIG_EFI_BOOTLOADER_CONTROL is not set
+CONFIG_EFI_CAPSULE_LOADER=y
+# CONFIG_EFI_TEST is not set
+# CONFIG_RESET_ATTACK_MITIGATION is not set
+# CONFIG_EFI_DISABLE_PCI_DMA is not set
+CONFIG_EFI_EARLYCON=y
+CONFIG_EFI_CUSTOM_SSDT_OVERLAYS=y
+# CONFIG_EFI_DISABLE_RUNTIME is not set
+# CONFIG_EFI_COCO_SECRET is not set
+# end of EFI (Extensible Firmware Interface) Support
+
+CONFIG_UEFI_CPER=y
+CONFIG_UEFI_CPER_ARM=y
+# CONFIG_TEE_STMM_EFI is not set
+CONFIG_ARM_PSCI_FW=y
+# CONFIG_ARM_PSCI_CHECKER is not set
+
+#
+# Qualcomm firmware drivers
+#
+CONFIG_QCOM_SCM=y
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
+# CONFIG_QCOM_QSEECOM is not set
+# end of Qualcomm firmware drivers
+
+CONFIG_HAVE_ARM_SMCCC=y
+CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y
+CONFIG_ARM_SMCCC_SOC_ID=y
+
+#
+# Tegra firmware driver
+#
+# end of Tegra firmware driver
+# end of Firmware Drivers
+
+# CONFIG_GNSS is not set
+# CONFIG_MTD is not set
+CONFIG_DTC=y
+CONFIG_OF=y
+# CONFIG_OF_UNITTEST is not set
+CONFIG_OF_FLATTREE=y
+CONFIG_OF_EARLY_FLATTREE=y
+CONFIG_OF_KOBJ=y
+CONFIG_OF_DYNAMIC=y
+CONFIG_OF_ADDRESS=y
+CONFIG_OF_IRQ=y
+CONFIG_OF_RESERVED_MEM=y
+CONFIG_OF_RESOLVE=y
+CONFIG_OF_OVERLAY=y
+CONFIG_OF_NUMA=y
+# CONFIG_PARPORT is not set
+CONFIG_PNP=y
+CONFIG_PNP_DEBUG_MESSAGES=y
+
+#
+# Protocols
+#
+CONFIG_PNPACPI=y
+CONFIG_BLK_DEV=y
+# CONFIG_BLK_DEV_NULL_BLK is not set
+# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set
+CONFIG_ZRAM=m
+# CONFIG_ZRAM_DEF_COMP_LZORLE is not set
+CONFIG_ZRAM_DEF_COMP_LZ4=y
+# CONFIG_ZRAM_DEF_COMP_LZO is not set
+CONFIG_ZRAM_DEF_COMP="lz4"
+CONFIG_ZRAM_WRITEBACK=y
+CONFIG_ZRAM_TRACK_ENTRY_ACTIME=y
+CONFIG_ZRAM_MEMORY_TRACKING=y
+# CONFIG_ZRAM_MULTI_COMP is not set
+CONFIG_BLK_DEV_LOOP=y
+CONFIG_BLK_DEV_LOOP_MIN_COUNT=8
+# CONFIG_BLK_DEV_DRBD is not set
+CONFIG_BLK_DEV_NBD=m
+# CONFIG_BLK_DEV_RAM is not set
+# CONFIG_CDROM_PKTCDVD is not set
+# CONFIG_ATA_OVER_ETH is not set
+CONFIG_VIRTIO_BLK=y
+# CONFIG_BLK_DEV_RBD is not set
+# CONFIG_BLK_DEV_UBLK is not set
+
+#
+# NVME Support
+#
+CONFIG_NVME_CORE=m
+CONFIG_BLK_DEV_NVME=m
+CONFIG_NVME_MULTIPATH=y
+# CONFIG_NVME_VERBOSE_ERRORS is not set
+CONFIG_NVME_HWMON=y
+# CONFIG_NVME_FC is not set
+# CONFIG_NVME_TCP is not set
+# CONFIG_NVME_HOST_AUTH is not set
+# CONFIG_NVME_TARGET is not set
+# end of NVME Support
+
+#
+# Misc devices
+#
+# CONFIG_AD525X_DPOT is not set
+# CONFIG_DUMMY_IRQ is not set
+# CONFIG_PHANTOM is not set
+# CONFIG_TIFM_CORE is not set
+# CONFIG_ICS932S401 is not set
+# CONFIG_ENCLOSURE_SERVICES is not set
+# CONFIG_HI6421V600_IRQ is not set
+# CONFIG_HP_ILO is not set
+# CONFIG_QCOM_COINCELL is not set
+CONFIG_QCOM_FASTRPC=m
+# CONFIG_APDS9802ALS is not set
+# CONFIG_ISL29003 is not set
+# CONFIG_ISL29020 is not set
+# CONFIG_SENSORS_TSL2550 is not set
+# CONFIG_SENSORS_BH1770 is not set
+# CONFIG_SENSORS_APDS990X is not set
+# CONFIG_HMC6352 is not set
+# CONFIG_DS1682 is not set
+# CONFIG_LATTICE_ECP3_CONFIG is not set
+CONFIG_SRAM=y
+# CONFIG_DW_XDATA_PCIE is not set
+# CONFIG_PCI_ENDPOINT_TEST is not set
+# CONFIG_XILINX_SDFEC is not set
+# CONFIG_HISI_HIKEY_USB is not set
+# CONFIG_OPEN_DICE is not set
+# CONFIG_VCPU_STALL_DETECTOR is not set
+# CONFIG_NSM is not set
+# CONFIG_C2PORT is not set
+
+#
+# EEPROM support
+#
+CONFIG_EEPROM_AT24=m
+CONFIG_EEPROM_AT25=m
+# CONFIG_EEPROM_MAX6875 is not set
+# CONFIG_EEPROM_93CX6 is not set
+# CONFIG_EEPROM_93XX46 is not set
+# CONFIG_EEPROM_IDT_89HPESX is not set
+# CONFIG_EEPROM_EE1004 is not set
+# end of EEPROM support
+
+# CONFIG_CB710_CORE is not set
+
+#
+# Texas Instruments shared transport line discipline
+#
+# CONFIG_TI_ST is not set
+# end of Texas Instruments shared transport line discipline
+
+# CONFIG_SENSORS_LIS3_I2C is not set
+# CONFIG_ALTERA_STAPL is not set
+# CONFIG_VMWARE_VMCI is not set
+# CONFIG_GENWQE is not set
+# CONFIG_ECHO is not set
+# CONFIG_BCM_VK is not set
+# CONFIG_MISC_ALCOR_PCI is not set
+# CONFIG_MISC_RTSX_PCI is not set
+# CONFIG_MISC_RTSX_USB is not set
+CONFIG_UACCE=m
+# CONFIG_PVPANIC is not set
+# CONFIG_GP_PCI1XXXX is not set
+# end of Misc devices
+
+#
+# SCSI device support
+#
+CONFIG_SCSI_MOD=y
+CONFIG_RAID_ATTRS=m
+CONFIG_SCSI_COMMON=y
+CONFIG_SCSI=y
+CONFIG_SCSI_DMA=y
+# CONFIG_SCSI_PROC_FS is not set
+
+#
+# SCSI support type (disk, tape, CD-ROM)
+#
+CONFIG_BLK_DEV_SD=y
+# CONFIG_CHR_DEV_ST is not set
+# CONFIG_BLK_DEV_SR is not set
+CONFIG_CHR_DEV_SG=y
+CONFIG_BLK_DEV_BSG=y
+# CONFIG_CHR_DEV_SCH is not set
+# CONFIG_SCSI_CONSTANTS is not set
+# CONFIG_SCSI_LOGGING is not set
+# CONFIG_SCSI_SCAN_ASYNC is not set
+
+#
+# SCSI Transports
+#
+# CONFIG_SCSI_SPI_ATTRS is not set
+# CONFIG_SCSI_FC_ATTRS is not set
+# CONFIG_SCSI_ISCSI_ATTRS is not set
+CONFIG_SCSI_SAS_ATTRS=y
+CONFIG_SCSI_SAS_LIBSAS=y
+CONFIG_SCSI_SAS_ATA=y
+CONFIG_SCSI_SAS_HOST_SMP=y
+# CONFIG_SCSI_SRP_ATTRS is not set
+# end of SCSI Transports
+
+CONFIG_SCSI_LOWLEVEL=y
+# CONFIG_ISCSI_TCP is not set
+# CONFIG_ISCSI_BOOT_SYSFS is not set
+# CONFIG_SCSI_CXGB3_ISCSI is not set
+# CONFIG_SCSI_CXGB4_ISCSI is not set
+# CONFIG_SCSI_BNX2_ISCSI is not set
+# CONFIG_BE2ISCSI is not set
+# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
+# CONFIG_SCSI_HPSA is not set
+# CONFIG_SCSI_3W_9XXX is not set
+# CONFIG_SCSI_3W_SAS is not set
+# CONFIG_SCSI_ACARD is not set
+# CONFIG_SCSI_AACRAID is not set
+# CONFIG_SCSI_AIC7XXX is not set
+# CONFIG_SCSI_AIC79XX is not set
+# CONFIG_SCSI_AIC94XX is not set
+CONFIG_SCSI_HISI_SAS=y
+CONFIG_SCSI_HISI_SAS_PCI=y
+# CONFIG_SCSI_HISI_SAS_DEBUGFS_DEFAULT_ENABLE is not set
+# CONFIG_SCSI_MVSAS is not set
+# CONFIG_SCSI_MVUMI is not set
+# CONFIG_SCSI_ADVANSYS is not set
+# CONFIG_SCSI_ARCMSR is not set
+# CONFIG_SCSI_ESAS2R is not set
+# CONFIG_MEGARAID_NEWGEN is not set
+# CONFIG_MEGARAID_LEGACY is not set
+CONFIG_MEGARAID_SAS=y
+CONFIG_SCSI_MPT3SAS=m
+CONFIG_SCSI_MPT2SAS_MAX_SGE=128
+CONFIG_SCSI_MPT3SAS_MAX_SGE=128
+# CONFIG_SCSI_MPT2SAS is not set
+# CONFIG_SCSI_MPI3MR is not set
+# CONFIG_SCSI_SMARTPQI is not set
+# CONFIG_SCSI_HPTIOP is not set
+# CONFIG_SCSI_BUSLOGIC is not set
+# CONFIG_SCSI_MYRB is not set
+# CONFIG_SCSI_MYRS is not set
+# CONFIG_SCSI_SNIC is not set
+# CONFIG_SCSI_DMX3191D is not set
+# CONFIG_SCSI_FDOMAIN_PCI is not set
+# CONFIG_SCSI_IPS is not set
+# CONFIG_SCSI_INITIO is not set
+# CONFIG_SCSI_INIA100 is not set
+# CONFIG_SCSI_STEX is not set
+# CONFIG_SCSI_SYM53C8XX_2 is not set
+# CONFIG_SCSI_IPR is not set
+# CONFIG_SCSI_QLOGIC_1280 is not set
+# CONFIG_SCSI_QLA_ISCSI is not set
+# CONFIG_SCSI_DC395x is not set
+# CONFIG_SCSI_AM53C974 is not set
+# CONFIG_SCSI_WD719X is not set
+# CONFIG_SCSI_DEBUG is not set
+# CONFIG_SCSI_PMCRAID is not set
+# CONFIG_SCSI_PM8001 is not set
+# CONFIG_SCSI_VIRTIO is not set
+# CONFIG_SCSI_DH is not set
+# end of SCSI device support
+
+CONFIG_ATA=y
+CONFIG_SATA_HOST=y
+CONFIG_PATA_TIMINGS=y
+# CONFIG_ATA_VERBOSE_ERROR is not set
+CONFIG_ATA_FORCE=y
+CONFIG_ATA_ACPI=y
+# CONFIG_SATA_ZPODD is not set
+CONFIG_SATA_PMP=y
+
+#
+# Controllers with non-SFF native interface
+#
+CONFIG_SATA_AHCI=y
+CONFIG_SATA_MOBILE_LPM_POLICY=0
+CONFIG_SATA_AHCI_PLATFORM=m
+# CONFIG_AHCI_DWC is not set
+# CONFIG_AHCI_CEVA is not set
+# CONFIG_SATA_INIC162X is not set
+# CONFIG_SATA_ACARD_AHCI is not set
+# CONFIG_SATA_SIL24 is not set
+CONFIG_ATA_SFF=y
+
+#
+# SFF controllers with custom DMA interface
+#
+# CONFIG_PDC_ADMA is not set
+# CONFIG_SATA_QSTOR is not set
+# CONFIG_SATA_SX4 is not set
+CONFIG_ATA_BMDMA=y
+
+#
+# SATA SFF controllers with BMDMA
+#
+# CONFIG_ATA_PIIX is not set
+# CONFIG_SATA_DWC is not set
+# CONFIG_SATA_MV is not set
+# CONFIG_SATA_NV is not set
+# CONFIG_SATA_PROMISE is not set
+# CONFIG_SATA_SIL is not set
+# CONFIG_SATA_SIS is not set
+# CONFIG_SATA_SVW is not set
+# CONFIG_SATA_ULI is not set
+# CONFIG_SATA_VIA is not set
+# CONFIG_SATA_VITESSE is not set
+
+#
+# PATA SFF controllers with BMDMA
+#
+# CONFIG_PATA_ALI is not set
+# CONFIG_PATA_AMD is not set
+# CONFIG_PATA_ARTOP is not set
+# CONFIG_PATA_ATIIXP is not set
+# CONFIG_PATA_ATP867X is not set
+# CONFIG_PATA_CMD64X is not set
+# CONFIG_PATA_CYPRESS is not set
+# CONFIG_PATA_EFAR is not set
+# CONFIG_PATA_HPT366 is not set
+# CONFIG_PATA_HPT37X is not set
+# CONFIG_PATA_HPT3X2N is not set
+# CONFIG_PATA_HPT3X3 is not set
+# CONFIG_PATA_IT8213 is not set
+# CONFIG_PATA_IT821X is not set
+# CONFIG_PATA_JMICRON is not set
+# CONFIG_PATA_MARVELL is not set
+# CONFIG_PATA_NETCELL is not set
+# CONFIG_PATA_NINJA32 is not set
+# CONFIG_PATA_NS87415 is not set
+# CONFIG_PATA_OLDPIIX is not set
+# CONFIG_PATA_OPTIDMA is not set
+# CONFIG_PATA_PDC2027X is not set
+# CONFIG_PATA_PDC_OLD is not set
+# CONFIG_PATA_RADISYS is not set
+# CONFIG_PATA_RDC is not set
+# CONFIG_PATA_SCH is not set
+# CONFIG_PATA_SERVERWORKS is not set
+# CONFIG_PATA_SIL680 is not set
+# CONFIG_PATA_SIS is not set
+# CONFIG_PATA_TOSHIBA is not set
+# CONFIG_PATA_TRIFLEX is not set
+# CONFIG_PATA_VIA is not set
+# CONFIG_PATA_WINBOND is not set
+
+#
+# PIO-only SFF controllers
+#
+# CONFIG_PATA_CMD640_PCI is not set
+# CONFIG_PATA_MPIIX is not set
+# CONFIG_PATA_NS87410 is not set
+# CONFIG_PATA_OPTI is not set
+# CONFIG_PATA_OF_PLATFORM is not set
+# CONFIG_PATA_RZ1000 is not set
+
+#
+# Generic fallback / legacy drivers
+#
+# CONFIG_PATA_ACPI is not set
+# CONFIG_ATA_GENERIC is not set
+# CONFIG_PATA_LEGACY is not set
+CONFIG_MD=y
+CONFIG_BLK_DEV_MD=m
+# CONFIG_MD_BITMAP_FILE is not set
+CONFIG_MD_RAID0=m
+CONFIG_MD_RAID1=m
+CONFIG_MD_RAID10=m
+CONFIG_MD_RAID456=m
+CONFIG_BCACHE=m
+# CONFIG_BCACHE_DEBUG is not set
+CONFIG_BCACHE_ASYNC_REGISTRATION=y
+# CONFIG_BLK_DEV_DM is not set
+# CONFIG_TARGET_CORE is not set
+# CONFIG_FUSION is not set
+
+#
+# IEEE 1394 (FireWire) support
+#
+# CONFIG_FIREWIRE is not set
+# CONFIG_FIREWIRE_NOSY is not set
+# end of IEEE 1394 (FireWire) support
+
+CONFIG_NETDEVICES=y
+CONFIG_MII=m
+CONFIG_NET_CORE=y
+# CONFIG_BONDING is not set
+CONFIG_DUMMY=y
+CONFIG_WIREGUARD=m
+# CONFIG_WIREGUARD_DEBUG is not set
+# CONFIG_EQUALIZER is not set
+# CONFIG_NET_FC is not set
+# CONFIG_IFB is not set
+# CONFIG_NET_TEAM is not set
+CONFIG_MACVLAN=m
+CONFIG_MACVTAP=m
+CONFIG_IPVLAN_L3S=y
+CONFIG_IPVLAN=m
+# CONFIG_IPVTAP is not set
+CONFIG_VXLAN=y
+# CONFIG_GENEVE is not set
+# CONFIG_BAREUDP is not set
+# CONFIG_GTP is not set
+# CONFIG_AMT is not set
+# CONFIG_MACSEC is not set
+# CONFIG_NETCONSOLE is not set
+CONFIG_TUN=y
+CONFIG_TAP=m
+# CONFIG_TUN_VNET_CROSS_LE is not set
+CONFIG_VETH=m
+# CONFIG_VIRTIO_NET is not set
+# CONFIG_NLMON is not set
+# CONFIG_NETKIT is not set
+# CONFIG_NET_VRF is not set
+# CONFIG_MHI_NET is not set
+# CONFIG_ARCNET is not set
+
+#
+# Distributed Switch Architecture drivers
+#
+# CONFIG_B53 is not set
+# CONFIG_NET_DSA_BCM_SF2 is not set
+# CONFIG_NET_DSA_LOOP is not set
+# CONFIG_NET_DSA_HIRSCHMANN_HELLCREEK is not set
+# CONFIG_NET_DSA_LANTIQ_GSWIP is not set
+# CONFIG_NET_DSA_MT7530 is not set
+# CONFIG_NET_DSA_MV88E6060 is not set
+# CONFIG_NET_DSA_MICROCHIP_KSZ_COMMON is not set
+# CONFIG_NET_DSA_MV88E6XXX is not set
+# CONFIG_NET_DSA_AR9331 is not set
+# CONFIG_NET_DSA_QCA8K is not set
+# CONFIG_NET_DSA_SJA1105 is not set
+# CONFIG_NET_DSA_XRS700X_I2C is not set
+# CONFIG_NET_DSA_XRS700X_MDIO is not set
+# CONFIG_NET_DSA_REALTEK is not set
+# CONFIG_NET_DSA_SMSC_LAN9303_I2C is not set
+# CONFIG_NET_DSA_SMSC_LAN9303_MDIO is not set
+# CONFIG_NET_DSA_VITESSE_VSC73XX_SPI is not set
+# CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM is not set
+# end of Distributed Switch Architecture drivers
+
+CONFIG_ETHERNET=y
+# CONFIG_NET_VENDOR_3COM is not set
+# CONFIG_NET_VENDOR_ADAPTEC is not set
+# CONFIG_NET_VENDOR_AGERE is not set
+# CONFIG_NET_VENDOR_ALACRITECH is not set
+# CONFIG_NET_VENDOR_ALTEON is not set
+# CONFIG_ALTERA_TSE is not set
+# CONFIG_NET_VENDOR_AMAZON is not set
+# CONFIG_NET_VENDOR_AMD is not set
+# CONFIG_NET_VENDOR_AQUANTIA is not set
+# CONFIG_NET_VENDOR_ARC is not set
+# CONFIG_NET_VENDOR_ASIX is not set
+# CONFIG_NET_VENDOR_ATHEROS is not set
+# CONFIG_NET_VENDOR_BROADCOM is not set
+# CONFIG_NET_VENDOR_CADENCE is not set
+# CONFIG_NET_VENDOR_CAVIUM is not set
+# CONFIG_NET_VENDOR_CHELSIO is not set
+# CONFIG_NET_VENDOR_CISCO is not set
+# CONFIG_NET_VENDOR_CORTINA is not set
+# CONFIG_NET_VENDOR_DAVICOM is not set
+# CONFIG_DNET is not set
+# CONFIG_NET_VENDOR_DEC is not set
+# CONFIG_NET_VENDOR_DLINK is not set
+# CONFIG_NET_VENDOR_EMULEX is not set
+# CONFIG_NET_VENDOR_ENGLEDER is not set
+# CONFIG_NET_VENDOR_EZCHIP is not set
+# CONFIG_NET_VENDOR_FUNGIBLE is not set
+# CONFIG_NET_VENDOR_GOOGLE is not set
+# CONFIG_NET_VENDOR_HISILICON is not set
+# CONFIG_NET_VENDOR_HUAWEI is not set
+# CONFIG_NET_VENDOR_INTEL is not set
+# CONFIG_JME is not set
+# CONFIG_NET_VENDOR_ADI is not set
+# CONFIG_NET_VENDOR_LITEX is not set
+# CONFIG_NET_VENDOR_MARVELL is not set
+# CONFIG_NET_VENDOR_MELLANOX is not set
+# CONFIG_NET_VENDOR_MICREL is not set
+# CONFIG_NET_VENDOR_MICROCHIP is not set
+# CONFIG_NET_VENDOR_MICROSEMI is not set
+# CONFIG_NET_VENDOR_MICROSOFT is not set
+# CONFIG_NET_VENDOR_MYRI is not set
+# CONFIG_FEALNX is not set
+# CONFIG_NET_VENDOR_NI is not set
+# CONFIG_NET_VENDOR_NATSEMI is not set
+# CONFIG_NET_VENDOR_NETERION is not set
+# CONFIG_NET_VENDOR_NETRONOME is not set
+# CONFIG_NET_VENDOR_NVIDIA is not set
+# CONFIG_NET_VENDOR_OKI is not set
+# CONFIG_ETHOC is not set
+# CONFIG_NET_VENDOR_PACKET_ENGINES is not set
+# CONFIG_NET_VENDOR_PENSANDO is not set
+# CONFIG_NET_VENDOR_QLOGIC is not set
+# CONFIG_NET_VENDOR_BROCADE is not set
+# CONFIG_NET_VENDOR_QUALCOMM is not set
+# CONFIG_NET_VENDOR_RDC is not set
+CONFIG_NET_VENDOR_REALTEK=y
+# CONFIG_8139CP is not set
+# CONFIG_8139TOO is not set
+CONFIG_R8169=m
+CONFIG_R8169_LEDS=y
+# CONFIG_NET_VENDOR_RENESAS is not set
+# CONFIG_NET_VENDOR_ROCKER is not set
+# CONFIG_NET_VENDOR_SAMSUNG is not set
+# CONFIG_NET_VENDOR_SEEQ is not set
+# CONFIG_NET_VENDOR_SILAN is not set
+# CONFIG_NET_VENDOR_SIS is not set
+# CONFIG_NET_VENDOR_SOLARFLARE is not set
+# CONFIG_NET_VENDOR_SMSC is not set
+# CONFIG_NET_VENDOR_SOCIONEXT is not set
+# CONFIG_NET_VENDOR_STMICRO is not set
+# CONFIG_NET_VENDOR_SUN is not set
+# CONFIG_NET_VENDOR_SYNOPSYS is not set
+# CONFIG_NET_VENDOR_TEHUTI is not set
+# CONFIG_NET_VENDOR_TI is not set
+# CONFIG_NET_VENDOR_VERTEXCOM is not set
+# CONFIG_NET_VENDOR_VIA is not set
+# CONFIG_NET_VENDOR_WANGXUN is not set
+# CONFIG_NET_VENDOR_WIZNET is not set
+# CONFIG_NET_VENDOR_XILINX is not set
+# CONFIG_FDDI is not set
+# CONFIG_HIPPI is not set
+CONFIG_QCOM_IPA=m
+# CONFIG_NET_SB1000 is not set
+CONFIG_PHYLINK=m
+CONFIG_PHYLIB=m
+CONFIG_SWPHY=y
+# CONFIG_LED_TRIGGER_PHY is not set
+CONFIG_PHYLIB_LEDS=y
+CONFIG_FIXED_PHY=m
+# CONFIG_SFP is not set
+
+#
+# MII PHY device drivers
+#
+# CONFIG_AMD_PHY is not set
+# CONFIG_ADIN_PHY is not set
+# CONFIG_ADIN1100_PHY is not set
+# CONFIG_AQUANTIA_PHY is not set
+CONFIG_AX88796B_PHY=m
+# CONFIG_BROADCOM_PHY is not set
+# CONFIG_BCM54140_PHY is not set
+# CONFIG_BCM7XXX_PHY is not set
+# CONFIG_BCM84881_PHY is not set
+# CONFIG_BCM87XX_PHY is not set
+# CONFIG_CICADA_PHY is not set
+# CONFIG_CORTINA_PHY is not set
+# CONFIG_DAVICOM_PHY is not set
+# CONFIG_ICPLUS_PHY is not set
+# CONFIG_LXT_PHY is not set
+# CONFIG_INTEL_XWAY_PHY is not set
+# CONFIG_LSI_ET1011C_PHY is not set
+# CONFIG_MARVELL_PHY is not set
+# CONFIG_MARVELL_10G_PHY is not set
+# CONFIG_MARVELL_88Q2XXX_PHY is not set
+# CONFIG_MARVELL_88X2222_PHY is not set
+# CONFIG_MAXLINEAR_GPHY is not set
+# CONFIG_MEDIATEK_GE_PHY is not set
+# CONFIG_MICREL_PHY is not set
+# CONFIG_MICROCHIP_T1S_PHY is not set
+# CONFIG_MICROCHIP_PHY is not set
+# CONFIG_MICROCHIP_T1_PHY is not set
+# CONFIG_MICROSEMI_PHY is not set
+# CONFIG_MOTORCOMM_PHY is not set
+# CONFIG_NATIONAL_PHY is not set
+# CONFIG_NXP_CBTX_PHY is not set
+# CONFIG_NXP_C45_TJA11XX_PHY is not set
+# CONFIG_NXP_TJA11XX_PHY is not set
+# CONFIG_NCN26000_PHY is not set
+# CONFIG_AT803X_PHY is not set
+# CONFIG_QCA83XX_PHY is not set
+# CONFIG_QCA808X_PHY is not set
+# CONFIG_QCA807X_PHY is not set
+# CONFIG_QSEMI_PHY is not set
+CONFIG_REALTEK_PHY=m
+# CONFIG_RENESAS_PHY is not set
+# CONFIG_ROCKCHIP_PHY is not set
+CONFIG_SMSC_PHY=m
+# CONFIG_STE10XP is not set
+# CONFIG_TERANETICS_PHY is not set
+# CONFIG_DP83822_PHY is not set
+# CONFIG_DP83TC811_PHY is not set
+# CONFIG_DP83848_PHY is not set
+# CONFIG_DP83867_PHY is not set
+# CONFIG_DP83869_PHY is not set
+# CONFIG_DP83TD510_PHY is not set
+# CONFIG_DP83TG720_PHY is not set
+# CONFIG_VITESSE_PHY is not set
+# CONFIG_XILINX_GMII2RGMII is not set
+# CONFIG_MICREL_KS8995MA is not set
+# CONFIG_PSE_CONTROLLER is not set
+CONFIG_MDIO_DEVICE=m
+CONFIG_MDIO_BUS=m
+CONFIG_FWNODE_MDIO=m
+CONFIG_OF_MDIO=m
+CONFIG_ACPI_MDIO=m
+CONFIG_MDIO_DEVRES=m
+# CONFIG_MDIO_BITBANG is not set
+# CONFIG_MDIO_BCM_UNIMAC is not set
+# CONFIG_MDIO_HISI_FEMAC is not set
+# CONFIG_MDIO_MVUSB is not set
+# CONFIG_MDIO_MSCC_MIIM is not set
+# CONFIG_MDIO_OCTEON is not set
+# CONFIG_MDIO_IPQ4019 is not set
+# CONFIG_MDIO_IPQ8064 is not set
+# CONFIG_MDIO_THUNDER is not set
+
+#
+# MDIO Multiplexers
+#
+# CONFIG_MDIO_BUS_MUX_GPIO is not set
+# CONFIG_MDIO_BUS_MUX_MULTIPLEXER is not set
+# CONFIG_MDIO_BUS_MUX_MMIOREG is not set
+
+#
+# PCS device drivers
+#
+# end of PCS device drivers
+
+# CONFIG_PPP is not set
+# CONFIG_SLIP is not set
+CONFIG_USB_NET_DRIVERS=y
+# CONFIG_USB_CATC is not set
+# CONFIG_USB_KAWETH is not set
+CONFIG_USB_PEGASUS=m
+CONFIG_USB_RTL8150=m
+CONFIG_USB_RTL8152=m
+# CONFIG_USB_LAN78XX is not set
+CONFIG_USB_USBNET=m
+CONFIG_USB_NET_AX8817X=m
+CONFIG_USB_NET_AX88179_178A=m
+CONFIG_USB_NET_CDCETHER=m
+CONFIG_USB_NET_CDC_EEM=m
+CONFIG_USB_NET_CDC_NCM=m
+CONFIG_USB_NET_HUAWEI_CDC_NCM=m
+CONFIG_USB_NET_CDC_MBIM=m
+CONFIG_USB_NET_DM9601=m
+# CONFIG_USB_NET_SR9700 is not set
+CONFIG_USB_NET_SR9800=m
+CONFIG_USB_NET_SMSC75XX=m
+CONFIG_USB_NET_SMSC95XX=m
+# CONFIG_USB_NET_GL620A is not set
+CONFIG_USB_NET_NET1080=m
+CONFIG_USB_NET_PLUSB=m
+CONFIG_USB_NET_MCS7830=m
+# CONFIG_USB_NET_RNDIS_HOST is not set
+CONFIG_USB_NET_CDC_SUBSET_ENABLE=m
+CONFIG_USB_NET_CDC_SUBSET=m
+# CONFIG_USB_ALI_M5632 is not set
+# CONFIG_USB_AN2720 is not set
+CONFIG_USB_BELKIN=y
+CONFIG_USB_ARMLINUX=y
+# CONFIG_USB_EPSON2888 is not set
+# CONFIG_USB_KC2190 is not set
+CONFIG_USB_NET_ZAURUS=m
+# CONFIG_USB_NET_CX82310_ETH is not set
+# CONFIG_USB_NET_KALMIA is not set
+CONFIG_USB_NET_QMI_WWAN=m
+# CONFIG_USB_NET_INT51X1 is not set
+CONFIG_USB_IPHETH=m
+CONFIG_USB_SIERRA_NET=m
+# CONFIG_USB_VL600 is not set
+# CONFIG_USB_NET_CH9200 is not set
+# CONFIG_USB_NET_AQC111 is not set
+CONFIG_USB_RTL8153_ECM=m
+CONFIG_WLAN=y
+# CONFIG_WLAN_VENDOR_ADMTEK is not set
+CONFIG_ATH_COMMON=m
+CONFIG_WLAN_VENDOR_ATH=y
+# CONFIG_ATH_DEBUG is not set
+# CONFIG_ATH5K is not set
+# CONFIG_ATH5K_PCI is not set
+# CONFIG_ATH9K is not set
+# CONFIG_ATH9K_HTC is not set
+# CONFIG_CARL9170 is not set
+# CONFIG_ATH6KL is not set
+# CONFIG_AR5523 is not set
+# CONFIG_WIL6210 is not set
+# CONFIG_ATH10K is not set
+# CONFIG_WCN36XX is not set
+CONFIG_ATH11K=m
+# CONFIG_ATH11K_AHB is not set
+CONFIG_ATH11K_PCI=m
+# CONFIG_ATH11K_DEBUG is not set
+# CONFIG_ATH11K_TRACING is not set
+# CONFIG_ATH12K is not set
+# CONFIG_WLAN_VENDOR_ATMEL is not set
+# CONFIG_WLAN_VENDOR_BROADCOM is not set
+# CONFIG_WLAN_VENDOR_INTEL is not set
+# CONFIG_WLAN_VENDOR_INTERSIL is not set
+# CONFIG_WLAN_VENDOR_MARVELL is not set
+# CONFIG_WLAN_VENDOR_MEDIATEK is not set
+# CONFIG_WLAN_VENDOR_MICROCHIP is not set
+# CONFIG_WLAN_VENDOR_PURELIFI is not set
+# CONFIG_WLAN_VENDOR_RALINK is not set
+# CONFIG_WLAN_VENDOR_REALTEK is not set
+# CONFIG_WLAN_VENDOR_RSI is not set
+# CONFIG_WLAN_VENDOR_SILABS is not set
+# CONFIG_WLAN_VENDOR_ST is not set
+# CONFIG_WLAN_VENDOR_TI is not set
+# CONFIG_WLAN_VENDOR_ZYDAS is not set
+# CONFIG_WLAN_VENDOR_QUANTENNA is not set
+# CONFIG_MAC80211_HWSIM is not set
+# CONFIG_VIRT_WIFI is not set
+# CONFIG_WAN is not set
+
+#
+# Wireless WAN
+#
+# CONFIG_WWAN is not set
+# end of Wireless WAN
+
+# CONFIG_VMXNET3 is not set
+# CONFIG_FUJITSU_ES is not set
+# CONFIG_NETDEVSIM is not set
+CONFIG_NET_FAILOVER=y
+# CONFIG_ISDN is not set
+
+#
+# Input device support
+#
+CONFIG_INPUT=y
+CONFIG_INPUT_LEDS=y
+CONFIG_INPUT_FF_MEMLESS=y
+# CONFIG_INPUT_SPARSEKMAP is not set
+CONFIG_INPUT_MATRIXKMAP=y
+CONFIG_INPUT_VIVALDIFMAP=y
+
+#
+# Userland interfaces
+#
+# CONFIG_INPUT_MOUSEDEV is not set
+# CONFIG_INPUT_JOYDEV is not set
+CONFIG_INPUT_EVDEV=y
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+CONFIG_INPUT_KEYBOARD=y
+# CONFIG_KEYBOARD_ADC is not set
+# CONFIG_KEYBOARD_ADP5588 is not set
+# CONFIG_KEYBOARD_ADP5589 is not set
+CONFIG_KEYBOARD_ATKBD=y
+# CONFIG_KEYBOARD_QT1050 is not set
+# CONFIG_KEYBOARD_QT1070 is not set
+# CONFIG_KEYBOARD_QT2160 is not set
+# CONFIG_KEYBOARD_DLINK_DIR685 is not set
+# CONFIG_KEYBOARD_LKKBD is not set
+CONFIG_KEYBOARD_GPIO=y
+# CONFIG_KEYBOARD_GPIO_POLLED is not set
+# CONFIG_KEYBOARD_TCA6416 is not set
+# CONFIG_KEYBOARD_TCA8418 is not set
+# CONFIG_KEYBOARD_MATRIX is not set
+# CONFIG_KEYBOARD_LM8323 is not set
+# CONFIG_KEYBOARD_LM8333 is not set
+# CONFIG_KEYBOARD_MAX7359 is not set
+# CONFIG_KEYBOARD_MCS is not set
+# CONFIG_KEYBOARD_MPR121 is not set
+# CONFIG_KEYBOARD_NEWTON is not set
+# CONFIG_KEYBOARD_OPENCORES is not set
+# CONFIG_KEYBOARD_PINEPHONE is not set
+# CONFIG_KEYBOARD_SAMSUNG is not set
+# CONFIG_KEYBOARD_STOWAWAY is not set
+# CONFIG_KEYBOARD_SUNKBD is not set
+# CONFIG_KEYBOARD_OMAP4 is not set
+# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set
+# CONFIG_KEYBOARD_XTKBD is not set
+# CONFIG_KEYBOARD_CAP11XX is not set
+# CONFIG_KEYBOARD_BCM is not set
+# CONFIG_KEYBOARD_MTK_PMIC is not set
+# CONFIG_KEYBOARD_CYPRESS_SF is not set
+CONFIG_INPUT_MOUSE=y
+CONFIG_MOUSE_PS2=y
+CONFIG_MOUSE_PS2_ALPS=y
+CONFIG_MOUSE_PS2_BYD=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y
+CONFIG_MOUSE_PS2_CYPRESS=y
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+# CONFIG_MOUSE_PS2_ELANTECH is not set
+# CONFIG_MOUSE_PS2_SENTELIC is not set
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
+CONFIG_MOUSE_PS2_FOCALTECH=y
+CONFIG_MOUSE_PS2_SMBUS=y
+# CONFIG_MOUSE_SERIAL is not set
+# CONFIG_MOUSE_APPLETOUCH is not set
+# CONFIG_MOUSE_BCM5974 is not set
+# CONFIG_MOUSE_CYAPA is not set
+# CONFIG_MOUSE_ELAN_I2C is not set
+# CONFIG_MOUSE_VSXXXAA is not set
+# CONFIG_MOUSE_GPIO is not set
+# CONFIG_MOUSE_SYNAPTICS_I2C is not set
+# CONFIG_MOUSE_SYNAPTICS_USB is not set
+# CONFIG_INPUT_JOYSTICK is not set
+# CONFIG_INPUT_TABLET is not set
+CONFIG_INPUT_TOUCHSCREEN=y
+CONFIG_TOUCHSCREEN_NT36523_SPI=m
+# CONFIG_TOUCHSCREEN_ADS7846 is not set
+# CONFIG_TOUCHSCREEN_AD7877 is not set
+# CONFIG_TOUCHSCREEN_AD7879 is not set
+# CONFIG_TOUCHSCREEN_ADC is not set
+# CONFIG_TOUCHSCREEN_AR1021_I2C is not set
+# CONFIG_TOUCHSCREEN_ATMEL_MXT is not set
+# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_BU21013 is not set
+# CONFIG_TOUCHSCREEN_BU21029 is not set
+# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set
+# CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMA140 is not set
+# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set
+# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set
+# CONFIG_TOUCHSCREEN_CYTTSP5 is not set
+# CONFIG_TOUCHSCREEN_DYNAPRO is not set
+# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_EETI is not set
+# CONFIG_TOUCHSCREEN_EGALAX is not set
+# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
+# CONFIG_TOUCHSCREEN_FUJITSU is not set
+# CONFIG_TOUCHSCREEN_GOODIX is not set
+# CONFIG_TOUCHSCREEN_GOODIX_BERLIN_I2C is not set
+# CONFIG_TOUCHSCREEN_GOODIX_BERLIN_SPI is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
+# CONFIG_TOUCHSCREEN_HYCON_HY46XX is not set
+# CONFIG_TOUCHSCREEN_HYNITRON_CSTXXX is not set
+# CONFIG_TOUCHSCREEN_ILI210X is not set
+# CONFIG_TOUCHSCREEN_ILITEK is not set
+CONFIG_TOUCHSCREEN_S6SY761=m
+# CONFIG_TOUCHSCREEN_GUNZE is not set
+# CONFIG_TOUCHSCREEN_EKTF2127 is not set
+# CONFIG_TOUCHSCREEN_ELAN is not set
+# CONFIG_TOUCHSCREEN_ELO is not set
+# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set
+# CONFIG_TOUCHSCREEN_WACOM_I2C is not set
+# CONFIG_TOUCHSCREEN_MAX11801 is not set
+# CONFIG_TOUCHSCREEN_MCS5000 is not set
+# CONFIG_TOUCHSCREEN_MMS114 is not set
+# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set
+# CONFIG_TOUCHSCREEN_MSG2638 is not set
+# CONFIG_TOUCHSCREEN_MTOUCH is not set
+# CONFIG_TOUCHSCREEN_NOVATEK_NVT_TS is not set
+# CONFIG_TOUCHSCREEN_IMAGIS is not set
+# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
+# CONFIG_TOUCHSCREEN_INEXIO is not set
+# CONFIG_TOUCHSCREEN_PENMOUNT is not set
+# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set
+# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set
+# CONFIG_TOUCHSCREEN_TOUCHWIN is not set
+# CONFIG_TOUCHSCREEN_PIXCIR is not set
+# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set
+# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set
+# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set
+# CONFIG_TOUCHSCREEN_TSC_SERIO is not set
+# CONFIG_TOUCHSCREEN_TSC2004 is not set
+# CONFIG_TOUCHSCREEN_TSC2005 is not set
+# CONFIG_TOUCHSCREEN_TSC2007 is not set
+# CONFIG_TOUCHSCREEN_RM_TS is not set
+# CONFIG_TOUCHSCREEN_SILEAD is not set
+# CONFIG_TOUCHSCREEN_SIS_I2C is not set
+# CONFIG_TOUCHSCREEN_ST1232 is not set
+# CONFIG_TOUCHSCREEN_STMFTS is not set
+# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set
+# CONFIG_TOUCHSCREEN_SX8654 is not set
+# CONFIG_TOUCHSCREEN_TPS6507X is not set
+# CONFIG_TOUCHSCREEN_ZET6223 is not set
+# CONFIG_TOUCHSCREEN_ZFORCE is not set
+# CONFIG_TOUCHSCREEN_COLIBRI_VF50 is not set
+# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_IQS5XX is not set
+# CONFIG_TOUCHSCREEN_IQS7211 is not set
+# CONFIG_TOUCHSCREEN_ZINITIX is not set
+# CONFIG_TOUCHSCREEN_HIMAX_HX83112B is not set
+CONFIG_INPUT_MISC=y
+# CONFIG_INPUT_AD714X is not set
+# CONFIG_INPUT_ATMEL_CAPTOUCH is not set
+# CONFIG_INPUT_BMA150 is not set
+# CONFIG_INPUT_E3X0_BUTTON is not set
+CONFIG_INPUT_PM8941_PWRKEY=y
+CONFIG_INPUT_PM8XXX_VIBRATOR=m
+# CONFIG_INPUT_MMA8450 is not set
+# CONFIG_INPUT_GPIO_BEEPER is not set
+# CONFIG_INPUT_GPIO_DECODER is not set
+# CONFIG_INPUT_GPIO_VIBRA is not set
+# CONFIG_INPUT_ATI_REMOTE2 is not set
+# CONFIG_INPUT_KEYSPAN_REMOTE is not set
+# CONFIG_INPUT_KXTJ9 is not set
+# CONFIG_INPUT_POWERMATE is not set
+# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT_CM109 is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
+# CONFIG_INPUT_AXP20X_PEK is not set
+CONFIG_INPUT_UINPUT=y
+# CONFIG_INPUT_PCF8574 is not set
+# CONFIG_INPUT_PWM_BEEPER is not set
+CONFIG_INPUT_PWM_VIBRA=m
+# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set
+# CONFIG_INPUT_DA7280_HAPTICS is not set
+# CONFIG_INPUT_ADXL34X is not set
+# CONFIG_INPUT_IMS_PCU is not set
+# CONFIG_INPUT_IQS269A is not set
+# CONFIG_INPUT_IQS626A is not set
+# CONFIG_INPUT_IQS7222 is not set
+# CONFIG_INPUT_CMA3000 is not set
+# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set
+# CONFIG_INPUT_DRV260X_HAPTICS is not set
+# CONFIG_INPUT_DRV2665_HAPTICS is not set
+# CONFIG_INPUT_DRV2667_HAPTICS is not set
+# CONFIG_RMI4_CORE is not set
+
+#
+# Hardware I/O ports
+#
+CONFIG_SERIO=y
+# CONFIG_SERIO_SERPORT is not set
+CONFIG_SERIO_AMBAKMI=y
+# CONFIG_SERIO_PCIPS2 is not set
+CONFIG_SERIO_LIBPS2=y
+# CONFIG_SERIO_RAW is not set
+# CONFIG_SERIO_ALTERA_PS2 is not set
+# CONFIG_SERIO_PS2MULT is not set
+# CONFIG_SERIO_ARC_PS2 is not set
+# CONFIG_SERIO_APBPS2 is not set
+# CONFIG_SERIO_GPIO_PS2 is not set
+# CONFIG_USERIO is not set
+# CONFIG_GAMEPORT is not set
+# end of Hardware I/O ports
+# end of Input device support
+
+#
+# Character devices
+#
+CONFIG_TTY=y
+CONFIG_VT=y
+CONFIG_CONSOLE_TRANSLATIONS=y
+CONFIG_VT_CONSOLE=y
+CONFIG_VT_CONSOLE_SLEEP=y
+CONFIG_VT_HW_CONSOLE_BINDING=y
+CONFIG_UNIX98_PTYS=y
+CONFIG_LEGACY_PTYS=y
+CONFIG_LEGACY_PTY_COUNT=16
+CONFIG_LEGACY_TIOCSTI=y
+CONFIG_LDISC_AUTOLOAD=y
+
+#
+# Serial drivers
+#
+CONFIG_SERIAL_EARLYCON=y
+# CONFIG_SERIAL_8250 is not set
+
+#
+# Non-8250 serial port support
+#
+# CONFIG_SERIAL_AMBA_PL010 is not set
+CONFIG_SERIAL_AMBA_PL011=y
+CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
+CONFIG_SERIAL_EARLYCON_SEMIHOST=y
+# CONFIG_SERIAL_MAX3100 is not set
+# CONFIG_SERIAL_MAX310X is not set
+# CONFIG_SERIAL_UARTLITE is not set
+CONFIG_SERIAL_CORE=y
+CONFIG_SERIAL_CORE_CONSOLE=y
+# CONFIG_SERIAL_JSM is not set
+CONFIG_SERIAL_MSM=y
+CONFIG_SERIAL_MSM_CONSOLE=y
+CONFIG_SERIAL_QCOM_GENI=y
+CONFIG_SERIAL_QCOM_GENI_CONSOLE=y
+# CONFIG_SERIAL_SIFIVE is not set
+# CONFIG_SERIAL_SCCNXP is not set
+# CONFIG_SERIAL_SC16IS7XX is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
+# CONFIG_SERIAL_XILINX_PS_UART is not set
+# CONFIG_SERIAL_ARC is not set
+# CONFIG_SERIAL_RP2 is not set
+# CONFIG_SERIAL_FSL_LPUART is not set
+# CONFIG_SERIAL_FSL_LINFLEXUART is not set
+# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
+# CONFIG_SERIAL_SPRD is not set
+# end of Serial drivers
+
+# CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
+# CONFIG_NOZOMI is not set
+# CONFIG_NULL_TTY is not set
+CONFIG_HVC_DRIVER=y
+# CONFIG_HVC_DCC is not set
+# CONFIG_RPMSG_TTY is not set
+CONFIG_SERIAL_DEV_BUS=y
+CONFIG_SERIAL_DEV_CTRL_TTYPORT=y
+# CONFIG_TTY_PRINTK is not set
+CONFIG_VIRTIO_CONSOLE=y
+CONFIG_IPMI_HANDLER=m
+CONFIG_IPMI_DMI_DECODE=y
+CONFIG_IPMI_PLAT_DATA=y
+# CONFIG_IPMI_PANIC_EVENT is not set
+CONFIG_IPMI_DEVICE_INTERFACE=m
+CONFIG_IPMI_SI=m
+# CONFIG_IPMI_SSIF is not set
+# CONFIG_IPMI_WATCHDOG is not set
+# CONFIG_IPMI_POWEROFF is not set
+CONFIG_HW_RANDOM=y
+# CONFIG_HW_RANDOM_TIMERIOMEM is not set
+# CONFIG_HW_RANDOM_BA431 is not set
+# CONFIG_HW_RANDOM_VIRTIO is not set
+CONFIG_HW_RANDOM_OPTEE=m
+# CONFIG_HW_RANDOM_CCTRNG is not set
+# CONFIG_HW_RANDOM_XIPHERA is not set
+CONFIG_HW_RANDOM_ARM_SMCCC_TRNG=m
+CONFIG_HW_RANDOM_CN10K=m
+# CONFIG_APPLICOM is not set
+CONFIG_DEVMEM=y
+CONFIG_DEVPORT=y
+# CONFIG_TCG_TPM is not set
+# CONFIG_XILLYBUS is not set
+# CONFIG_XILLYUSB is not set
+# end of Character devices
+
+#
+# I2C support
+#
+CONFIG_I2C=y
+CONFIG_ACPI_I2C_OPREGION=y
+CONFIG_I2C_BOARDINFO=y
+CONFIG_I2C_COMPAT=y
+CONFIG_I2C_CHARDEV=y
+CONFIG_I2C_MUX=y
+
+#
+# Multiplexer I2C Chip support
+#
+# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set
+# CONFIG_I2C_MUX_GPIO is not set
+# CONFIG_I2C_MUX_GPMUX is not set
+# CONFIG_I2C_MUX_LTC4306 is not set
+# CONFIG_I2C_MUX_PCA9541 is not set
+CONFIG_I2C_MUX_PCA954x=y
+# CONFIG_I2C_MUX_PINCTRL is not set
+# CONFIG_I2C_MUX_REG is not set
+# CONFIG_I2C_DEMUX_PINCTRL is not set
+# CONFIG_I2C_MUX_MLXCPLD is not set
+# end of Multiplexer I2C Chip support
+
+CONFIG_I2C_HELPER_AUTO=y
+CONFIG_I2C_ALGOBIT=m
+
+#
+# I2C Hardware Bus support
+#
+
+#
+# PC SMBus host controller drivers
+#
+# CONFIG_I2C_ALI1535 is not set
+# CONFIG_I2C_ALI1563 is not set
+# CONFIG_I2C_ALI15X3 is not set
+# CONFIG_I2C_AMD756 is not set
+# CONFIG_I2C_AMD8111 is not set
+# CONFIG_I2C_AMD_MP2 is not set
+# CONFIG_I2C_I801 is not set
+# CONFIG_I2C_ISCH is not set
+# CONFIG_I2C_PIIX4 is not set
+# CONFIG_I2C_NFORCE2 is not set
+# CONFIG_I2C_NVIDIA_GPU is not set
+# CONFIG_I2C_SIS5595 is not set
+# CONFIG_I2C_SIS630 is not set
+# CONFIG_I2C_SIS96X is not set
+# CONFIG_I2C_VIA is not set
+# CONFIG_I2C_VIAPRO is not set
+
+#
+# ACPI drivers
+#
+# CONFIG_I2C_SCMI is not set
+
+#
+# I2C system bus drivers (mostly embedded / system-on-chip)
+#
+# CONFIG_I2C_CADENCE is not set
+# CONFIG_I2C_CBUS_GPIO is not set
+CONFIG_I2C_DESIGNWARE_CORE=y
+# CONFIG_I2C_DESIGNWARE_SLAVE is not set
+CONFIG_I2C_DESIGNWARE_PLATFORM=y
+# CONFIG_I2C_DESIGNWARE_PCI is not set
+# CONFIG_I2C_EMEV2 is not set
+CONFIG_I2C_GPIO=m
+# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set
+# CONFIG_I2C_HISI is not set
+# CONFIG_I2C_NOMADIK is not set
+# CONFIG_I2C_OCORES is not set
+# CONFIG_I2C_PCA_PLATFORM is not set
+CONFIG_I2C_QCOM_CCI=m
+CONFIG_I2C_QCOM_GENI=y
+CONFIG_I2C_QUP=y
+# CONFIG_I2C_RK3X is not set
+# CONFIG_I2C_SIMTEC is not set
+# CONFIG_I2C_THUNDERX is not set
+# CONFIG_I2C_XILINX is not set
+
+#
+# External I2C/SMBus adapter drivers
+#
+# CONFIG_I2C_DIOLAN_U2C is not set
+# CONFIG_I2C_CP2615 is not set
+# CONFIG_I2C_PCI1XXXX is not set
+# CONFIG_I2C_ROBOTFUZZ_OSIF is not set
+# CONFIG_I2C_TAOS_EVM is not set
+# CONFIG_I2C_TINY_USB is not set
+
+#
+# Other I2C/SMBus bus drivers
+#
+# CONFIG_I2C_MLXCPLD is not set
+# CONFIG_I2C_VIRTIO is not set
+# end of I2C Hardware Bus support
+
+# CONFIG_I2C_STUB is not set
+# CONFIG_I2C_SLAVE is not set
+# CONFIG_I2C_DEBUG_CORE is not set
+# CONFIG_I2C_DEBUG_ALGO is not set
+# CONFIG_I2C_DEBUG_BUS is not set
+# end of I2C support
+
+# CONFIG_I3C is not set
+CONFIG_SPI=y
+# CONFIG_SPI_DEBUG is not set
+CONFIG_SPI_MASTER=y
+CONFIG_SPI_MEM=y
+
+#
+# SPI Master Controller Drivers
+#
+# CONFIG_SPI_ALTERA is not set
+# CONFIG_SPI_AXI_SPI_ENGINE is not set
+# CONFIG_SPI_BITBANG is not set
+# CONFIG_SPI_CADENCE is not set
+CONFIG_SPI_CADENCE_QUADSPI=y
+# CONFIG_SPI_CADENCE_XSPI is not set
+CONFIG_SPI_DESIGNWARE=m
+CONFIG_SPI_DW_DMA=y
+# CONFIG_SPI_DW_PCI is not set
+CONFIG_SPI_DW_MMIO=m
+# CONFIG_SPI_HISI_KUNPENG is not set
+# CONFIG_SPI_HISI_SFC_V3XX is not set
+# CONFIG_SPI_GPIO is not set
+# CONFIG_SPI_FSL_SPI is not set
+# CONFIG_SPI_MICROCHIP_CORE is not set
+# CONFIG_SPI_MICROCHIP_CORE_QSPI is not set
+# CONFIG_SPI_OC_TINY is not set
+# CONFIG_SPI_PCI1XXXX is not set
+CONFIG_SPI_PL022=y
+# CONFIG_SPI_PXA2XX is not set
+CONFIG_SPI_QCOM_QSPI=m
+CONFIG_SPI_QUP=y
+CONFIG_SPI_QCOM_GENI=m
+# CONFIG_SPI_SC18IS602 is not set
+# CONFIG_SPI_SIFIVE is not set
+# CONFIG_SPI_SN_F_OSPI is not set
+# CONFIG_SPI_MXIC is not set
+# CONFIG_SPI_THUNDERX is not set
+# CONFIG_SPI_XCOMM is not set
+# CONFIG_SPI_XILINX is not set
+# CONFIG_SPI_ZYNQMP_GQSPI is not set
+# CONFIG_SPI_AMD is not set
+
+#
+# SPI Multiplexer support
+#
+# CONFIG_SPI_MUX is not set
+
+#
+# SPI Protocol Masters
+#
+CONFIG_SPI_SPIDEV=m
+# CONFIG_SPI_LOOPBACK_TEST is not set
+# CONFIG_SPI_TLE62X0 is not set
+# CONFIG_SPI_SLAVE is not set
+CONFIG_SPI_DYNAMIC=y
+CONFIG_SPMI=y
+# CONFIG_SPMI_HISI3670 is not set
+CONFIG_SPMI_MSM_PMIC_ARB=y
+# CONFIG_HSI is not set
+CONFIG_PPS=y
+# CONFIG_PPS_DEBUG is not set
+
+#
+# PPS clients support
+#
+# CONFIG_PPS_CLIENT_KTIMER is not set
+# CONFIG_PPS_CLIENT_LDISC is not set
+# CONFIG_PPS_CLIENT_GPIO is not set
+
+#
+# PPS generators support
+#
+
+#
+# PTP clock support
+#
+CONFIG_PTP_1588_CLOCK=y
+CONFIG_PTP_1588_CLOCK_OPTIONAL=y
+
+#
+# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
+#
+CONFIG_PTP_1588_CLOCK_KVM=y
+# CONFIG_PTP_1588_CLOCK_IDT82P33 is not set
+# CONFIG_PTP_1588_CLOCK_IDTCM is not set
+# CONFIG_PTP_1588_CLOCK_FC3W is not set
+# CONFIG_PTP_1588_CLOCK_MOCK is not set
+# end of PTP clock support
+
+CONFIG_PINCTRL=y
+CONFIG_GENERIC_PINCTRL_GROUPS=y
+CONFIG_PINMUX=y
+CONFIG_GENERIC_PINMUX_FUNCTIONS=y
+CONFIG_PINCONF=y
+CONFIG_GENERIC_PINCONF=y
+# CONFIG_DEBUG_PINCTRL is not set
+# CONFIG_PINCTRL_AMD is not set
+# CONFIG_PINCTRL_AXP209 is not set
+# CONFIG_PINCTRL_AW9523 is not set
+# CONFIG_PINCTRL_CY8C95X0 is not set
+CONFIG_PINCTRL_MAX77620=m
+# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MICROCHIP_SGPIO is not set
+# CONFIG_PINCTRL_OCELOT is not set
+CONFIG_PINCTRL_SINGLE=y
+# CONFIG_PINCTRL_STMFX is not set
+# CONFIG_PINCTRL_SX150X is not set
+CONFIG_PINCTRL_MSM=y
+# CONFIG_PINCTRL_IPQ5018 is not set
+# CONFIG_PINCTRL_IPQ5332 is not set
+# CONFIG_PINCTRL_IPQ8074 is not set
+# CONFIG_PINCTRL_IPQ6018 is not set
+# CONFIG_PINCTRL_IPQ9574 is not set
+# CONFIG_PINCTRL_MDM9607 is not set
+# CONFIG_PINCTRL_MSM8916 is not set
+# CONFIG_PINCTRL_MSM8953 is not set
+# CONFIG_PINCTRL_MSM8976 is not set
+# CONFIG_PINCTRL_MSM8994 is not set
+# CONFIG_PINCTRL_MSM8996 is not set
+# CONFIG_PINCTRL_MSM8998 is not set
+# CONFIG_PINCTRL_QCM2290 is not set
+# CONFIG_PINCTRL_QCS404 is not set
+# CONFIG_PINCTRL_QDF2XXX is not set
+# CONFIG_PINCTRL_QDU1000 is not set
+# CONFIG_PINCTRL_SA8775P is not set
+# CONFIG_PINCTRL_SC7180 is not set
+# CONFIG_PINCTRL_SC7280 is not set
+# CONFIG_PINCTRL_SC8180X is not set
+# CONFIG_PINCTRL_SC8280XP is not set
+# CONFIG_PINCTRL_SDM660 is not set
+# CONFIG_PINCTRL_SDM670 is not set
+# CONFIG_PINCTRL_SDM845 is not set
+# CONFIG_PINCTRL_SDX75 is not set
+# CONFIG_PINCTRL_SM4450 is not set
+# CONFIG_PINCTRL_SM6115 is not set
+# CONFIG_PINCTRL_SM6125 is not set
+# CONFIG_PINCTRL_SM6350 is not set
+# CONFIG_PINCTRL_SM6375 is not set
+# CONFIG_PINCTRL_SM7150 is not set
+# CONFIG_PINCTRL_SM8150 is not set
+CONFIG_PINCTRL_SM8250=y
+# CONFIG_PINCTRL_SM8350 is not set
+# CONFIG_PINCTRL_SM8450 is not set
+# CONFIG_PINCTRL_SM8550 is not set
+# CONFIG_PINCTRL_SM8650 is not set
+# CONFIG_PINCTRL_X1E80100 is not set
+CONFIG_PINCTRL_QCOM_SPMI_PMIC=y
+# CONFIG_PINCTRL_QCOM_SSBI_PMIC is not set
+CONFIG_PINCTRL_LPASS_LPI=y
+# CONFIG_PINCTRL_SC7280_LPASS_LPI is not set
+# CONFIG_PINCTRL_SM6115_LPASS_LPI is not set
+CONFIG_PINCTRL_SM8250_LPASS_LPI=y
+# CONFIG_PINCTRL_SM8350_LPASS_LPI is not set
+# CONFIG_PINCTRL_SM8450_LPASS_LPI is not set
+# CONFIG_PINCTRL_SC8280XP_LPASS_LPI is not set
+# CONFIG_PINCTRL_SM8550_LPASS_LPI is not set
+# CONFIG_PINCTRL_SM8650_LPASS_LPI is not set
+
+#
+# Renesas pinctrl drivers
+#
+# end of Renesas pinctrl drivers
+
+CONFIG_GPIOLIB=y
+CONFIG_GPIOLIB_FASTPATH_LIMIT=512
+CONFIG_OF_GPIO=y
+CONFIG_GPIO_ACPI=y
+CONFIG_GPIOLIB_IRQCHIP=y
+# CONFIG_DEBUG_GPIO is not set
+CONFIG_GPIO_SYSFS=y
+CONFIG_GPIO_CDEV=y
+CONFIG_GPIO_CDEV_V1=y
+CONFIG_GPIO_GENERIC=y
+
+#
+# Memory mapped GPIO drivers
+#
+# CONFIG_GPIO_74XX_MMIO is not set
+# CONFIG_GPIO_ALTERA is not set
+# CONFIG_GPIO_AMDPT is not set
+# CONFIG_GPIO_CADENCE is not set
+CONFIG_GPIO_DWAPB=y
+# CONFIG_GPIO_FTGPIO010 is not set
+# CONFIG_GPIO_GENERIC_PLATFORM is not set
+# CONFIG_GPIO_GRGPIO is not set
+# CONFIG_GPIO_HISI is not set
+# CONFIG_GPIO_HLWD is not set
+# CONFIG_GPIO_LOGICVC is not set
+# CONFIG_GPIO_MB86S7X is not set
+# CONFIG_GPIO_PL061 is not set
+# CONFIG_GPIO_SIFIVE is not set
+# CONFIG_GPIO_SYSCON is not set
+CONFIG_GPIO_WCD934X=m
+# CONFIG_GPIO_XGENE is not set
+# CONFIG_GPIO_XILINX is not set
+# CONFIG_GPIO_AMD_FCH is not set
+# end of Memory mapped GPIO drivers
+
+#
+# I2C GPIO expanders
+#
+# CONFIG_GPIO_ADNP is not set
+# CONFIG_GPIO_FXL6408 is not set
+# CONFIG_GPIO_DS4520 is not set
+# CONFIG_GPIO_GW_PLD is not set
+# CONFIG_GPIO_MAX7300 is not set
+# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_PCA953X is not set
+# CONFIG_GPIO_PCA9570 is not set
+# CONFIG_GPIO_PCF857X is not set
+# CONFIG_GPIO_TPIC2810 is not set
+# end of I2C GPIO expanders
+
+#
+# MFD GPIO expanders
+#
+CONFIG_GPIO_BD9571MWV=m
+CONFIG_GPIO_MAX77620=y
+# end of MFD GPIO expanders
+
+#
+# PCI GPIO expanders
+#
+# CONFIG_GPIO_BT8XX is not set
+# CONFIG_GPIO_PCI_IDIO_16 is not set
+# CONFIG_GPIO_PCIE_IDIO_24 is not set
+# CONFIG_GPIO_RDC321X is not set
+# end of PCI GPIO expanders
+
+#
+# SPI GPIO expanders
+#
+# CONFIG_GPIO_74X164 is not set
+# CONFIG_GPIO_MAX3191X is not set
+# CONFIG_GPIO_MAX7301 is not set
+# CONFIG_GPIO_MC33880 is not set
+# CONFIG_GPIO_PISOSR is not set
+# CONFIG_GPIO_XRA1403 is not set
+# end of SPI GPIO expanders
+
+#
+# USB GPIO expanders
+#
+# end of USB GPIO expanders
+
+#
+# Virtual GPIO drivers
+#
+# CONFIG_GPIO_AGGREGATOR is not set
+# CONFIG_GPIO_LATCH is not set
+# CONFIG_GPIO_MOCKUP is not set
+# CONFIG_GPIO_VIRTIO is not set
+# CONFIG_GPIO_SIM is not set
+# end of Virtual GPIO drivers
+
+# CONFIG_W1 is not set
+CONFIG_POWER_RESET=y
+# CONFIG_POWER_RESET_GPIO is not set
+# CONFIG_POWER_RESET_GPIO_RESTART is not set
+CONFIG_POWER_RESET_MSM=y
+CONFIG_POWER_RESET_QCOM_PON=m
+# CONFIG_POWER_RESET_LTC2952 is not set
+# CONFIG_POWER_RESET_MT6323 is not set
+# CONFIG_POWER_RESET_REGULATOR is not set
+# CONFIG_POWER_RESET_RESTART is not set
+CONFIG_POWER_RESET_XGENE=y
+CONFIG_POWER_RESET_SYSCON=y
+# CONFIG_POWER_RESET_SYSCON_POWEROFF is not set
+CONFIG_REBOOT_MODE=y
+CONFIG_SYSCON_REBOOT_MODE=y
+# CONFIG_NVMEM_REBOOT_MODE is not set
+CONFIG_POWER_SUPPLY=y
+# CONFIG_POWER_SUPPLY_DEBUG is not set
+CONFIG_POWER_SUPPLY_HWMON=y
+# CONFIG_GENERIC_ADC_BATTERY is not set
+# CONFIG_IP5XXX_POWER is not set
+# CONFIG_TEST_POWER is not set
+# CONFIG_CHARGER_ADP5061 is not set
+# CONFIG_BATTERY_CW2015 is not set
+# CONFIG_BATTERY_DS2780 is not set
+# CONFIG_BATTERY_DS2781 is not set
+# CONFIG_BATTERY_DS2782 is not set
+# CONFIG_BATTERY_SAMSUNG_SDI is not set
+# CONFIG_BATTERY_SBS is not set
+# CONFIG_CHARGER_SBS is not set
+# CONFIG_MANAGER_SBS is not set
+CONFIG_BATTERY_BQ27XXX=m
+CONFIG_BATTERY_BQ27XXX_I2C=m
+# CONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM is not set
+# CONFIG_AXP20X_POWER is not set
+# CONFIG_BATTERY_MAX17040 is not set
+# CONFIG_BATTERY_MAX17042 is not set
+# CONFIG_CHARGER_ISP1704 is not set
+# CONFIG_CHARGER_MAX8903 is not set
+# CONFIG_CHARGER_LP8727 is not set
+# CONFIG_CHARGER_GPIO is not set
+# CONFIG_CHARGER_MANAGER is not set
+# CONFIG_CHARGER_LT3651 is not set
+# CONFIG_CHARGER_LTC4162L is not set
+# CONFIG_CHARGER_DETECTOR_MAX14656 is not set
+# CONFIG_CHARGER_MAX77976 is not set
+# CONFIG_CHARGER_QCOM_SMBB is not set
+# CONFIG_BATTERY_PM8916_BMS_VM is not set
+# CONFIG_CHARGER_PM8916_LBC is not set
+# CONFIG_CHARGER_BQ2415X is not set
+# CONFIG_CHARGER_BQ24190 is not set
+# CONFIG_CHARGER_BQ24257 is not set
+# CONFIG_CHARGER_BQ24735 is not set
+# CONFIG_CHARGER_BQ2515X is not set
+# CONFIG_CHARGER_BQ25890 is not set
+# CONFIG_CHARGER_BQ25980 is not set
+# CONFIG_CHARGER_BQ256XX is not set
+# CONFIG_CHARGER_SMB347 is not set
+# CONFIG_BATTERY_GAUGE_LTC2941 is not set
+# CONFIG_BATTERY_GOLDFISH is not set
+# CONFIG_BATTERY_RT5033 is not set
+# CONFIG_CHARGER_RT9455 is not set
+# CONFIG_CHARGER_RT9467 is not set
+# CONFIG_CHARGER_RT9471 is not set
+# CONFIG_CHARGER_UCS1002 is not set
+# CONFIG_CHARGER_BD99954 is not set
+# CONFIG_BATTERY_UG3105 is not set
+# CONFIG_CHARGER_QCOM_SMB2 is not set
+# CONFIG_FUEL_GAUGE_MM8013 is not set
+CONFIG_HWMON=y
+# CONFIG_HWMON_DEBUG_CHIP is not set
+
+#
+# Native drivers
+#
+# CONFIG_SENSORS_AD7314 is not set
+# CONFIG_SENSORS_AD7414 is not set
+# CONFIG_SENSORS_AD7418 is not set
+# CONFIG_SENSORS_ADM1021 is not set
+# CONFIG_SENSORS_ADM1025 is not set
+# CONFIG_SENSORS_ADM1026 is not set
+# CONFIG_SENSORS_ADM1029 is not set
+# CONFIG_SENSORS_ADM1031 is not set
+# CONFIG_SENSORS_ADM1177 is not set
+# CONFIG_SENSORS_ADM9240 is not set
+# CONFIG_SENSORS_ADT7310 is not set
+# CONFIG_SENSORS_ADT7410 is not set
+# CONFIG_SENSORS_ADT7411 is not set
+# CONFIG_SENSORS_ADT7462 is not set
+# CONFIG_SENSORS_ADT7470 is not set
+# CONFIG_SENSORS_ADT7475 is not set
+# CONFIG_SENSORS_AHT10 is not set
+# CONFIG_SENSORS_AQUACOMPUTER_D5NEXT is not set
+# CONFIG_SENSORS_AS370 is not set
+# CONFIG_SENSORS_ASC7621 is not set
+# CONFIG_SENSORS_ASUS_ROG_RYUJIN is not set
+# CONFIG_SENSORS_AXI_FAN_CONTROL is not set
+CONFIG_SENSORS_ARM_SCMI=y
+CONFIG_SENSORS_ARM_SCPI=y
+# CONFIG_SENSORS_ATXP1 is not set
+# CONFIG_SENSORS_CHIPCAP2 is not set
+# CONFIG_SENSORS_CORSAIR_CPRO is not set
+# CONFIG_SENSORS_CORSAIR_PSU is not set
+# CONFIG_SENSORS_DRIVETEMP is not set
+# CONFIG_SENSORS_DS620 is not set
+# CONFIG_SENSORS_DS1621 is not set
+# CONFIG_SENSORS_I5K_AMB is not set
+# CONFIG_SENSORS_F71805F is not set
+# CONFIG_SENSORS_F71882FG is not set
+# CONFIG_SENSORS_F75375S is not set
+# CONFIG_SENSORS_FTSTEUTATES is not set
+# CONFIG_SENSORS_GIGABYTE_WATERFORCE is not set
+# CONFIG_SENSORS_GL518SM is not set
+# CONFIG_SENSORS_GL520SM is not set
+# CONFIG_SENSORS_G760A is not set
+# CONFIG_SENSORS_G762 is not set
+# CONFIG_SENSORS_GPIO_FAN is not set
+# CONFIG_SENSORS_HIH6130 is not set
+# CONFIG_SENSORS_HS3001 is not set
+# CONFIG_SENSORS_IBMAEM is not set
+# CONFIG_SENSORS_IBMPEX is not set
+# CONFIG_SENSORS_IIO_HWMON is not set
+# CONFIG_SENSORS_IT87 is not set
+# CONFIG_SENSORS_JC42 is not set
+# CONFIG_SENSORS_POWERZ is not set
+# CONFIG_SENSORS_POWR1220 is not set
+# CONFIG_SENSORS_LINEAGE is not set
+# CONFIG_SENSORS_LTC2945 is not set
+# CONFIG_SENSORS_LTC2947_I2C is not set
+# CONFIG_SENSORS_LTC2947_SPI is not set
+# CONFIG_SENSORS_LTC2990 is not set
+# CONFIG_SENSORS_LTC2991 is not set
+# CONFIG_SENSORS_LTC2992 is not set
+# CONFIG_SENSORS_LTC4151 is not set
+# CONFIG_SENSORS_LTC4215 is not set
+# CONFIG_SENSORS_LTC4222 is not set
+# CONFIG_SENSORS_LTC4245 is not set
+# CONFIG_SENSORS_LTC4260 is not set
+# CONFIG_SENSORS_LTC4261 is not set
+# CONFIG_SENSORS_LTC4282 is not set
+# CONFIG_SENSORS_MAX1111 is not set
+# CONFIG_SENSORS_MAX127 is not set
+# CONFIG_SENSORS_MAX16065 is not set
+# CONFIG_SENSORS_MAX1619 is not set
+# CONFIG_SENSORS_MAX1668 is not set
+# CONFIG_SENSORS_MAX197 is not set
+# CONFIG_SENSORS_MAX31722 is not set
+# CONFIG_SENSORS_MAX31730 is not set
+# CONFIG_SENSORS_MAX31760 is not set
+# CONFIG_MAX31827 is not set
+# CONFIG_SENSORS_MAX6620 is not set
+# CONFIG_SENSORS_MAX6621 is not set
+# CONFIG_SENSORS_MAX6639 is not set
+# CONFIG_SENSORS_MAX6642 is not set
+# CONFIG_SENSORS_MAX6650 is not set
+# CONFIG_SENSORS_MAX6697 is not set
+# CONFIG_SENSORS_MAX31790 is not set
+# CONFIG_SENSORS_MC34VR500 is not set
+# CONFIG_SENSORS_MCP3021 is not set
+# CONFIG_SENSORS_TC654 is not set
+# CONFIG_SENSORS_TPS23861 is not set
+# CONFIG_SENSORS_MR75203 is not set
+# CONFIG_SENSORS_ADCXX is not set
+# CONFIG_SENSORS_LM63 is not set
+# CONFIG_SENSORS_LM70 is not set
+# CONFIG_SENSORS_LM73 is not set
+# CONFIG_SENSORS_LM75 is not set
+# CONFIG_SENSORS_LM77 is not set
+# CONFIG_SENSORS_LM78 is not set
+# CONFIG_SENSORS_LM80 is not set
+# CONFIG_SENSORS_LM83 is not set
+# CONFIG_SENSORS_LM85 is not set
+# CONFIG_SENSORS_LM87 is not set
+# CONFIG_SENSORS_LM90 is not set
+# CONFIG_SENSORS_LM92 is not set
+# CONFIG_SENSORS_LM93 is not set
+# CONFIG_SENSORS_LM95234 is not set
+# CONFIG_SENSORS_LM95241 is not set
+# CONFIG_SENSORS_LM95245 is not set
+# CONFIG_SENSORS_PC87360 is not set
+# CONFIG_SENSORS_PC87427 is not set
+# CONFIG_SENSORS_NTC_THERMISTOR is not set
+# CONFIG_SENSORS_NCT6683 is not set
+# CONFIG_SENSORS_NCT6775 is not set
+# CONFIG_SENSORS_NCT6775_I2C is not set
+# CONFIG_SENSORS_NCT7802 is not set
+# CONFIG_SENSORS_NCT7904 is not set
+# CONFIG_SENSORS_NPCM7XX is not set
+# CONFIG_SENSORS_NZXT_KRAKEN2 is not set
+# CONFIG_SENSORS_NZXT_KRAKEN3 is not set
+# CONFIG_SENSORS_NZXT_SMART2 is not set
+# CONFIG_SENSORS_OCC_P8_I2C is not set
+# CONFIG_SENSORS_PCF8591 is not set
+# CONFIG_PMBUS is not set
+# CONFIG_SENSORS_PT5161L is not set
+CONFIG_SENSORS_PWM_FAN=y
+# CONFIG_SENSORS_SBTSI is not set
+# CONFIG_SENSORS_SBRMI is not set
+# CONFIG_SENSORS_SHT15 is not set
+# CONFIG_SENSORS_SHT21 is not set
+# CONFIG_SENSORS_SHT3x is not set
+# CONFIG_SENSORS_SHT4x is not set
+# CONFIG_SENSORS_SHTC1 is not set
+# CONFIG_SENSORS_SIS5595 is not set
+# CONFIG_SENSORS_DME1737 is not set
+# CONFIG_SENSORS_EMC1403 is not set
+# CONFIG_SENSORS_EMC2103 is not set
+# CONFIG_SENSORS_EMC2305 is not set
+# CONFIG_SENSORS_EMC6W201 is not set
+# CONFIG_SENSORS_SMSC47M1 is not set
+# CONFIG_SENSORS_SMSC47M192 is not set
+# CONFIG_SENSORS_SMSC47B397 is not set
+# CONFIG_SENSORS_SCH5627 is not set
+# CONFIG_SENSORS_SCH5636 is not set
+# CONFIG_SENSORS_STTS751 is not set
+# CONFIG_SENSORS_ADC128D818 is not set
+# CONFIG_SENSORS_ADS7828 is not set
+# CONFIG_SENSORS_ADS7871 is not set
+# CONFIG_SENSORS_AMC6821 is not set
+# CONFIG_SENSORS_INA209 is not set
+# CONFIG_SENSORS_INA2XX is not set
+# CONFIG_SENSORS_INA238 is not set
+# CONFIG_SENSORS_INA3221 is not set
+# CONFIG_SENSORS_TC74 is not set
+# CONFIG_SENSORS_THMC50 is not set
+# CONFIG_SENSORS_TMP102 is not set
+# CONFIG_SENSORS_TMP103 is not set
+# CONFIG_SENSORS_TMP108 is not set
+# CONFIG_SENSORS_TMP401 is not set
+# CONFIG_SENSORS_TMP421 is not set
+# CONFIG_SENSORS_TMP464 is not set
+# CONFIG_SENSORS_TMP513 is not set
+# CONFIG_SENSORS_VIA686A is not set
+# CONFIG_SENSORS_VT1211 is not set
+# CONFIG_SENSORS_VT8231 is not set
+# CONFIG_SENSORS_W83773G is not set
+# CONFIG_SENSORS_W83781D is not set
+# CONFIG_SENSORS_W83791D is not set
+# CONFIG_SENSORS_W83792D is not set
+# CONFIG_SENSORS_W83793 is not set
+# CONFIG_SENSORS_W83795 is not set
+# CONFIG_SENSORS_W83L785TS is not set
+# CONFIG_SENSORS_W83L786NG is not set
+# CONFIG_SENSORS_W83627HF is not set
+# CONFIG_SENSORS_W83627EHF is not set
+# CONFIG_SENSORS_XGENE is not set
+
+#
+# ACPI drivers
+#
+# CONFIG_SENSORS_ACPI_POWER is not set
+CONFIG_THERMAL=y
+# CONFIG_THERMAL_NETLINK is not set
+# CONFIG_THERMAL_STATISTICS is not set
+# CONFIG_THERMAL_DEBUGFS is not set
+CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
+CONFIG_THERMAL_HWMON=y
+CONFIG_THERMAL_OF=y
+CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
+# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set
+# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set
+# CONFIG_THERMAL_GOV_FAIR_SHARE is not set
+CONFIG_THERMAL_GOV_STEP_WISE=y
+# CONFIG_THERMAL_GOV_BANG_BANG is not set
+CONFIG_THERMAL_GOV_USER_SPACE=y
+CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y
+CONFIG_CPU_THERMAL=y
+CONFIG_CPU_FREQ_THERMAL=y
+CONFIG_DEVFREQ_THERMAL=y
+CONFIG_THERMAL_EMULATION=y
+# CONFIG_THERMAL_MMIO is not set
+# CONFIG_MAX77620_THERMAL is not set
+# CONFIG_GENERIC_ADC_THERMAL is not set
+
+#
+# Qualcomm thermal drivers
+#
+CONFIG_QCOM_TSENS=m
+CONFIG_QCOM_SPMI_ADC_TM5=m
+CONFIG_QCOM_SPMI_TEMP_ALARM=m
+CONFIG_QCOM_LMH=m
+# end of Qualcomm thermal drivers
+
+CONFIG_WATCHDOG=y
+CONFIG_WATCHDOG_CORE=y
+# CONFIG_WATCHDOG_NOWAYOUT is not set
+CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y
+CONFIG_WATCHDOG_OPEN_TIMEOUT=0
+# CONFIG_WATCHDOG_SYSFS is not set
+# CONFIG_WATCHDOG_HRTIMER_PRETIMEOUT is not set
+
+#
+# Watchdog Pretimeout Governors
+#
+# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set
+
+#
+# Watchdog Device Drivers
+#
+# CONFIG_SOFT_WATCHDOG is not set
+# CONFIG_GPIO_WATCHDOG is not set
+# CONFIG_WDAT_WDT is not set
+# CONFIG_XILINX_WATCHDOG is not set
+# CONFIG_XILINX_WINDOW_WATCHDOG is not set
+# CONFIG_ZIIRAVE_WATCHDOG is not set
+CONFIG_ARM_SP805_WATCHDOG=y
+CONFIG_ARM_SBSA_WATCHDOG=y
+# CONFIG_CADENCE_WATCHDOG is not set
+CONFIG_DW_WATCHDOG=y
+# CONFIG_MAX63XX_WATCHDOG is not set
+# CONFIG_MAX77620_WATCHDOG is not set
+CONFIG_QCOM_WDT=y
+CONFIG_ARM_SMC_WATCHDOG=y
+# CONFIG_PM8916_WATCHDOG is not set
+# CONFIG_ALIM7101_WDT is not set
+# CONFIG_I6300ESB_WDT is not set
+# CONFIG_HP_WATCHDOG is not set
+# CONFIG_MEN_A21_WDT is not set
+
+#
+# PCI-based Watchdog Cards
+#
+# CONFIG_PCIPCWATCHDOG is not set
+# CONFIG_WDTPCI is not set
+
+#
+# USB-based Watchdog Cards
+#
+# CONFIG_USBPCWATCHDOG is not set
+CONFIG_SSB_POSSIBLE=y
+# CONFIG_SSB is not set
+CONFIG_BCMA_POSSIBLE=y
+# CONFIG_BCMA is not set
+
+#
+# Multifunction device drivers
+#
+CONFIG_MFD_CORE=y
+# CONFIG_MFD_ACT8945A is not set
+# CONFIG_MFD_AS3711 is not set
+# CONFIG_MFD_SMPRO is not set
+# CONFIG_MFD_AS3722 is not set
+# CONFIG_PMIC_ADP5520 is not set
+# CONFIG_MFD_AAT2870_CORE is not set
+# CONFIG_MFD_ATMEL_FLEXCOM is not set
+# CONFIG_MFD_ATMEL_HLCDC is not set
+# CONFIG_MFD_BCM590XX is not set
+CONFIG_MFD_BD9571MWV=y
+CONFIG_MFD_AXP20X=y
+CONFIG_MFD_AXP20X_I2C=y
+# CONFIG_MFD_CS42L43_I2C is not set
+# CONFIG_MFD_CS42L43_SDW is not set
+# CONFIG_MFD_MADERA is not set
+# CONFIG_MFD_MAX5970 is not set
+# CONFIG_PMIC_DA903X is not set
+# CONFIG_MFD_DA9052_SPI is not set
+# CONFIG_MFD_DA9052_I2C is not set
+# CONFIG_MFD_DA9055 is not set
+# CONFIG_MFD_DA9062 is not set
+# CONFIG_MFD_DA9063 is not set
+# CONFIG_MFD_DA9150 is not set
+# CONFIG_MFD_DLN2 is not set
+# CONFIG_MFD_GATEWORKS_GSC is not set
+# CONFIG_MFD_MC13XXX_SPI is not set
+# CONFIG_MFD_MC13XXX_I2C is not set
+# CONFIG_MFD_MP2629 is not set
+CONFIG_MFD_HI6421_PMIC=y
+# CONFIG_MFD_HI6421_SPMI is not set
+# CONFIG_LPC_ICH is not set
+# CONFIG_LPC_SCH is not set
+# CONFIG_MFD_IQS62X is not set
+# CONFIG_MFD_JANZ_CMODIO is not set
+# CONFIG_MFD_KEMPLD is not set
+# CONFIG_MFD_88PM800 is not set
+# CONFIG_MFD_88PM805 is not set
+# CONFIG_MFD_88PM860X is not set
+# CONFIG_MFD_MAX14577 is not set
+# CONFIG_MFD_MAX77541 is not set
+CONFIG_MFD_MAX77620=y
+# CONFIG_MFD_MAX77650 is not set
+# CONFIG_MFD_MAX77686 is not set
+# CONFIG_MFD_MAX77693 is not set
+# CONFIG_MFD_MAX77714 is not set
+# CONFIG_MFD_MAX77843 is not set
+# CONFIG_MFD_MAX8907 is not set
+# CONFIG_MFD_MAX8925 is not set
+# CONFIG_MFD_MAX8997 is not set
+# CONFIG_MFD_MAX8998 is not set
+# CONFIG_MFD_MT6360 is not set
+# CONFIG_MFD_MT6370 is not set
+CONFIG_MFD_MT6397=y
+# CONFIG_MFD_MENF21BMC is not set
+# CONFIG_MFD_OCELOT is not set
+# CONFIG_EZX_PCAP is not set
+# CONFIG_MFD_CPCAP is not set
+# CONFIG_MFD_VIPERBOARD is not set
+# CONFIG_MFD_NTXEC is not set
+# CONFIG_MFD_RETU is not set
+# CONFIG_MFD_PCF50633 is not set
+CONFIG_MFD_QCOM_QCA639X=y
+# CONFIG_MFD_QCOM_RPM is not set
+CONFIG_MFD_SPMI_PMIC=y
+# CONFIG_MFD_SY7636A is not set
+# CONFIG_MFD_RDC321X is not set
+# CONFIG_MFD_RT4831 is not set
+# CONFIG_MFD_RT5033 is not set
+# CONFIG_MFD_RT5120 is not set
+# CONFIG_MFD_RC5T583 is not set
+# CONFIG_MFD_RK8XX_I2C is not set
+# CONFIG_MFD_RK8XX_SPI is not set
+# CONFIG_MFD_RN5T618 is not set
+CONFIG_MFD_SEC_CORE=y
+# CONFIG_MFD_SI476X_CORE is not set
+# CONFIG_MFD_SM501 is not set
+# CONFIG_MFD_SKY81452 is not set
+# CONFIG_MFD_STMPE is not set
+CONFIG_MFD_SYSCON=y
+# CONFIG_MFD_LP3943 is not set
+# CONFIG_MFD_LP8788 is not set
+# CONFIG_MFD_TI_LMU is not set
+# CONFIG_MFD_PALMAS is not set
+# CONFIG_TPS6105X is not set
+# CONFIG_TPS65010 is not set
+# CONFIG_TPS6507X is not set
+# CONFIG_MFD_TPS65086 is not set
+# CONFIG_MFD_TPS65090 is not set
+# CONFIG_MFD_TPS65217 is not set
+# CONFIG_MFD_TI_LP873X is not set
+# CONFIG_MFD_TI_LP87565 is not set
+# CONFIG_MFD_TPS65218 is not set
+# CONFIG_MFD_TPS65219 is not set
+# CONFIG_MFD_TPS6586X is not set
+# CONFIG_MFD_TPS65910 is not set
+# CONFIG_MFD_TPS65912_I2C is not set
+# CONFIG_MFD_TPS65912_SPI is not set
+# CONFIG_MFD_TPS6594_I2C is not set
+# CONFIG_MFD_TPS6594_SPI is not set
+# CONFIG_TWL4030_CORE is not set
+# CONFIG_TWL6040_CORE is not set
+# CONFIG_MFD_WL1273_CORE is not set
+# CONFIG_MFD_LM3533 is not set
+# CONFIG_MFD_TC3589X is not set
+# CONFIG_MFD_TQMX86 is not set
+# CONFIG_MFD_VX855 is not set
+# CONFIG_MFD_LOCHNAGAR is not set
+# CONFIG_MFD_ARIZONA_I2C is not set
+# CONFIG_MFD_ARIZONA_SPI is not set
+# CONFIG_MFD_WM8400 is not set
+# CONFIG_MFD_WM831X_I2C is not set
+# CONFIG_MFD_WM831X_SPI is not set
+# CONFIG_MFD_WM8350_I2C is not set
+# CONFIG_MFD_WM8994 is not set
+CONFIG_MFD_ROHM_BD718XX=y
+# CONFIG_MFD_ROHM_BD71828 is not set
+# CONFIG_MFD_ROHM_BD957XMUF is not set
+# CONFIG_MFD_STPMIC1 is not set
+# CONFIG_MFD_STMFX is not set
+CONFIG_MFD_WCD934X=m
+# CONFIG_MFD_ATC260X_I2C is not set
+# CONFIG_MFD_QCOM_PM8008 is not set
+# CONFIG_RAVE_SP_CORE is not set
+# CONFIG_MFD_INTEL_M10_BMC_SPI is not set
+# CONFIG_MFD_RSMU_I2C is not set
+# CONFIG_MFD_RSMU_SPI is not set
+# end of Multifunction device drivers
+
+CONFIG_REGULATOR=y
+# CONFIG_REGULATOR_DEBUG is not set
+CONFIG_REGULATOR_FIXED_VOLTAGE=y
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
+# CONFIG_REGULATOR_NETLINK_EVENTS is not set
+# CONFIG_REGULATOR_88PG86X is not set
+# CONFIG_REGULATOR_ACT8865 is not set
+# CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_ARM_SCMI is not set
+# CONFIG_REGULATOR_AW37503 is not set
+CONFIG_REGULATOR_AXP20X=y
+CONFIG_REGULATOR_BD718XX=y
+CONFIG_REGULATOR_BD9571MWV=y
+# CONFIG_REGULATOR_DA9121 is not set
+# CONFIG_REGULATOR_DA9210 is not set
+# CONFIG_REGULATOR_DA9211 is not set
+CONFIG_REGULATOR_FAN53555=y
+# CONFIG_REGULATOR_FAN53880 is not set
+CONFIG_REGULATOR_GPIO=y
+# CONFIG_REGULATOR_HI6421 is not set
+CONFIG_REGULATOR_HI6421V530=y
+# CONFIG_REGULATOR_ISL9305 is not set
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_LTC3589 is not set
+# CONFIG_REGULATOR_LTC3676 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX77503 is not set
+CONFIG_REGULATOR_MAX77620=y
+# CONFIG_REGULATOR_MAX77857 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8893 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+CONFIG_REGULATOR_MAX8973=y
+# CONFIG_REGULATOR_MAX20086 is not set
+# CONFIG_REGULATOR_MAX20411 is not set
+# CONFIG_REGULATOR_MAX77826 is not set
+# CONFIG_REGULATOR_MCP16502 is not set
+# CONFIG_REGULATOR_MP5416 is not set
+CONFIG_REGULATOR_MP8859=y
+# CONFIG_REGULATOR_MP886X is not set
+# CONFIG_REGULATOR_MPQ7920 is not set
+# CONFIG_REGULATOR_MT6311 is not set
+# CONFIG_REGULATOR_MT6315 is not set
+# CONFIG_REGULATOR_MT6323 is not set
+# CONFIG_REGULATOR_MT6331 is not set
+# CONFIG_REGULATOR_MT6332 is not set
+# CONFIG_REGULATOR_MT6357 is not set
+CONFIG_REGULATOR_MT6358=y
+# CONFIG_REGULATOR_MT6359 is not set
+CONFIG_REGULATOR_MT6397=y
+CONFIG_REGULATOR_PCA9450=y
+CONFIG_REGULATOR_PF8X00=y
+CONFIG_REGULATOR_PFUZE100=y
+# CONFIG_REGULATOR_PV88060 is not set
+# CONFIG_REGULATOR_PV88080 is not set
+# CONFIG_REGULATOR_PV88090 is not set
+CONFIG_REGULATOR_PWM=y
+# CONFIG_REGULATOR_QCOM_REFGEN is not set
+CONFIG_REGULATOR_QCOM_RPMH=y
+CONFIG_REGULATOR_QCOM_SMD_RPM=y
+CONFIG_REGULATOR_QCOM_SPMI=y
+CONFIG_REGULATOR_QCOM_USB_VBUS=y
+# CONFIG_REGULATOR_RAA215300 is not set
+# CONFIG_REGULATOR_RASPBERRYPI_TOUCHSCREEN_ATTINY is not set
+CONFIG_REGULATOR_ROHM=y
+# CONFIG_REGULATOR_RT4801 is not set
+# CONFIG_REGULATOR_RT4803 is not set
+# CONFIG_REGULATOR_RT5190A is not set
+# CONFIG_REGULATOR_RT5739 is not set
+# CONFIG_REGULATOR_RT5759 is not set
+# CONFIG_REGULATOR_RT6160 is not set
+# CONFIG_REGULATOR_RT6190 is not set
+# CONFIG_REGULATOR_RT6245 is not set
+# CONFIG_REGULATOR_RTQ2134 is not set
+# CONFIG_REGULATOR_RTMV20 is not set
+# CONFIG_REGULATOR_RTQ6752 is not set
+# CONFIG_REGULATOR_RTQ2208 is not set
+# CONFIG_REGULATOR_S2MPA01 is not set
+CONFIG_REGULATOR_S2MPS11=y
+# CONFIG_REGULATOR_S5M8767 is not set
+# CONFIG_REGULATOR_SLG51000 is not set
+# CONFIG_REGULATOR_SY8106A is not set
+# CONFIG_REGULATOR_SY8824X is not set
+# CONFIG_REGULATOR_SY8827N is not set
+# CONFIG_REGULATOR_TPS51632 is not set
+# CONFIG_REGULATOR_TPS62360 is not set
+# CONFIG_REGULATOR_TPS6286X is not set
+# CONFIG_REGULATOR_TPS6287X is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
+CONFIG_REGULATOR_TPS65132=m
+# CONFIG_REGULATOR_TPS6524X is not set
+CONFIG_REGULATOR_VCTRL=m
+# CONFIG_REGULATOR_VQMMC_IPQ4019 is not set
+# CONFIG_REGULATOR_QCOM_LABIBB is not set
+# CONFIG_RC_CORE is not set
+CONFIG_CEC_CORE=y
+
+#
+# CEC support
+#
+# CONFIG_MEDIA_CEC_SUPPORT is not set
+# end of CEC support
+
+CONFIG_MEDIA_SUPPORT=y
+CONFIG_MEDIA_SUPPORT_FILTER=y
+CONFIG_MEDIA_SUBDRV_AUTOSELECT=y
+
+#
+# Media device types
+#
+# CONFIG_MEDIA_CAMERA_SUPPORT is not set
+# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set
+# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set
+# CONFIG_MEDIA_RADIO_SUPPORT is not set
+# CONFIG_MEDIA_SDR_SUPPORT is not set
+CONFIG_MEDIA_PLATFORM_SUPPORT=y
+# CONFIG_MEDIA_TEST_SUPPORT is not set
+# end of Media device types
+
+CONFIG_VIDEO_DEV=y
+CONFIG_MEDIA_CONTROLLER=y
+
+#
+# Video4Linux options
+#
+CONFIG_VIDEO_V4L2_I2C=y
+# CONFIG_VIDEO_ADV_DEBUG is not set
+# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
+CONFIG_V4L2_MEM2MEM_DEV=m
+# end of Video4Linux options
+
+#
+# Media controller options
+#
+# end of Media controller options
+
+#
+# Media drivers
+#
+
+#
+# Drivers filtered as selected at 'Filter media drivers'
+#
+
+#
+# Media drivers
+#
+# CONFIG_MEDIA_USB_SUPPORT is not set
+# CONFIG_MEDIA_PCI_SUPPORT is not set
+CONFIG_MEDIA_PLATFORM_DRIVERS=y
+# CONFIG_V4L_PLATFORM_DRIVERS is not set
+CONFIG_V4L_MEM2MEM_DRIVERS=y
+# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set
+
+#
+# Allegro DVT media platform drivers
+#
+
+#
+# Amlogic media platform drivers
+#
+
+#
+# Amphion drivers
+#
+
+#
+# Aspeed media platform drivers
+#
+
+#
+# Atmel media platform drivers
+#
+
+#
+# Cadence media platform drivers
+#
+# CONFIG_VIDEO_CADENCE_CSI2RX is not set
+# CONFIG_VIDEO_CADENCE_CSI2TX is not set
+
+#
+# Chips&Media media platform drivers
+#
+
+#
+# Intel media platform drivers
+#
+
+#
+# Marvell media platform drivers
+#
+
+#
+# Mediatek media platform drivers
+#
+
+#
+# Microchip Technology, Inc. media platform drivers
+#
+
+#
+# Nuvoton media platform drivers
+#
+
+#
+# NVidia media platform drivers
+#
+
+#
+# NXP media platform drivers
+#
+
+#
+# Qualcomm media platform drivers
+#
+CONFIG_VIDEO_QCOM_VENUS=m
+
+#
+# Renesas media platform drivers
+#
+
+#
+# Rockchip media platform drivers
+#
+
+#
+# Samsung media platform drivers
+#
+
+#
+# STMicroelectronics media platform drivers
+#
+
+#
+# Sunxi media platform drivers
+#
+
+#
+# Texas Instruments drivers
+#
+
+#
+# Verisilicon media platform drivers
+#
+
+#
+# VIA media platform drivers
+#
+
+#
+# Xilinx media platform drivers
+#
+CONFIG_VIDEOBUF2_CORE=m
+CONFIG_VIDEOBUF2_V4L2=m
+CONFIG_VIDEOBUF2_MEMOPS=m
+CONFIG_VIDEOBUF2_DMA_CONTIG=m
+# end of Media drivers
+
+#
+# Media ancillary drivers
+#
+
+#
+# Audio decoders, processors and mixers
+#
+# CONFIG_VIDEO_CS3308 is not set
+# CONFIG_VIDEO_CS5345 is not set
+# CONFIG_VIDEO_CS53L32A is not set
+# CONFIG_VIDEO_MSP3400 is not set
+# CONFIG_VIDEO_SONY_BTF_MPX is not set
+# CONFIG_VIDEO_TDA1997X is not set
+# CONFIG_VIDEO_TDA7432 is not set
+# CONFIG_VIDEO_TDA9840 is not set
+# CONFIG_VIDEO_TEA6415C is not set
+# CONFIG_VIDEO_TEA6420 is not set
+# CONFIG_VIDEO_TLV320AIC23B is not set
+# CONFIG_VIDEO_TVAUDIO is not set
+# CONFIG_VIDEO_UDA1342 is not set
+# CONFIG_VIDEO_VP27SMPX is not set
+# CONFIG_VIDEO_WM8739 is not set
+# CONFIG_VIDEO_WM8775 is not set
+# end of Audio decoders, processors and mixers
+
+#
+# RDS decoders
+#
+# CONFIG_VIDEO_SAA6588 is not set
+# end of RDS decoders
+
+#
+# Video decoders
+#
+# CONFIG_VIDEO_ADV7180 is not set
+# CONFIG_VIDEO_ADV7183 is not set
+# CONFIG_VIDEO_ADV748X is not set
+# CONFIG_VIDEO_ADV7604 is not set
+# CONFIG_VIDEO_ADV7842 is not set
+# CONFIG_VIDEO_BT819 is not set
+# CONFIG_VIDEO_BT856 is not set
+# CONFIG_VIDEO_BT866 is not set
+# CONFIG_VIDEO_ISL7998X is not set
+# CONFIG_VIDEO_KS0127 is not set
+# CONFIG_VIDEO_MAX9286 is not set
+# CONFIG_VIDEO_ML86V7667 is not set
+# CONFIG_VIDEO_SAA7110 is not set
+# CONFIG_VIDEO_SAA711X is not set
+# CONFIG_VIDEO_TC358743 is not set
+# CONFIG_VIDEO_TC358746 is not set
+# CONFIG_VIDEO_TVP514X is not set
+# CONFIG_VIDEO_TVP5150 is not set
+# CONFIG_VIDEO_TVP7002 is not set
+# CONFIG_VIDEO_TW2804 is not set
+# CONFIG_VIDEO_TW9900 is not set
+# CONFIG_VIDEO_TW9903 is not set
+# CONFIG_VIDEO_TW9906 is not set
+# CONFIG_VIDEO_TW9910 is not set
+# CONFIG_VIDEO_VPX3220 is not set
+
+#
+# Video and audio decoders
+#
+# CONFIG_VIDEO_SAA717X is not set
+# CONFIG_VIDEO_CX25840 is not set
+# end of Video decoders
+
+#
+# Video encoders
+#
+# CONFIG_VIDEO_ADV7170 is not set
+# CONFIG_VIDEO_ADV7175 is not set
+# CONFIG_VIDEO_ADV7343 is not set
+# CONFIG_VIDEO_ADV7393 is not set
+# CONFIG_VIDEO_ADV7511 is not set
+# CONFIG_VIDEO_AK881X is not set
+# CONFIG_VIDEO_SAA7127 is not set
+# CONFIG_VIDEO_SAA7185 is not set
+# CONFIG_VIDEO_THS8200 is not set
+# end of Video encoders
+
+#
+# Video improvement chips
+#
+# CONFIG_VIDEO_UPD64031A is not set
+# CONFIG_VIDEO_UPD64083 is not set
+# end of Video improvement chips
+
+#
+# Audio/Video compression chips
+#
+# CONFIG_VIDEO_SAA6752HS is not set
+# end of Audio/Video compression chips
+
+#
+# SDR tuner chips
+#
+# end of SDR tuner chips
+
+#
+# Miscellaneous helper chips
+#
+# CONFIG_VIDEO_I2C is not set
+# CONFIG_VIDEO_M52790 is not set
+# CONFIG_VIDEO_ST_MIPID02 is not set
+# CONFIG_VIDEO_THS7303 is not set
+# end of Miscellaneous helper chips
+
+#
+# Video serializers and deserializers
+#
+# CONFIG_VIDEO_DS90UB913 is not set
+# CONFIG_VIDEO_DS90UB953 is not set
+# CONFIG_VIDEO_DS90UB960 is not set
+# end of Video serializers and deserializers
+
+#
+# Media SPI Adapters
+#
+# CONFIG_VIDEO_GS1662 is not set
+# end of Media SPI Adapters
+# end of Media ancillary drivers
+
+#
+# Graphics support
+#
+CONFIG_APERTURE_HELPERS=y
+CONFIG_SCREEN_INFO=y
+CONFIG_VIDEO=y
+# CONFIG_AUXDISPLAY is not set
+CONFIG_DRM=y
+CONFIG_DRM_MIPI_DSI=y
+# CONFIG_DRM_DEBUG_MM is not set
+CONFIG_DRM_KMS_HELPER=y
+# CONFIG_DRM_DEBUG_DP_MST_TOPOLOGY_REFS is not set
+# CONFIG_DRM_DEBUG_MODESET_LOCK is not set
+CONFIG_DRM_FBDEV_EMULATION=y
+CONFIG_DRM_FBDEV_OVERALLOC=100
+# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set
+CONFIG_DRM_LOAD_EDID_FIRMWARE=y
+CONFIG_DRM_DP_AUX_BUS=y
+CONFIG_DRM_DISPLAY_HELPER=y
+CONFIG_DRM_DISPLAY_DP_HELPER=y
+CONFIG_DRM_DP_AUX_CHARDEV=y
+CONFIG_DRM_DP_CEC=y
+CONFIG_DRM_EXEC=y
+CONFIG_DRM_GEM_SHMEM_HELPER=y
+CONFIG_DRM_SCHED=y
+
+#
+# I2C encoder or helper chips
+#
+# CONFIG_DRM_I2C_CH7006 is not set
+# CONFIG_DRM_I2C_SIL164 is not set
+CONFIG_DRM_I2C_NXP_TDA998X=m
+# CONFIG_DRM_I2C_NXP_TDA9950 is not set
+# end of I2C encoder or helper chips
+
+#
+# ARM devices
+#
+# CONFIG_DRM_HDLCD is not set
+# CONFIG_DRM_MALI_DISPLAY is not set
+# CONFIG_DRM_KOMEDA is not set
+# end of ARM devices
+
+# CONFIG_DRM_RADEON is not set
+# CONFIG_DRM_AMDGPU is not set
+# CONFIG_DRM_NOUVEAU is not set
+# CONFIG_DRM_XE is not set
+# CONFIG_DRM_VGEM is not set
+# CONFIG_DRM_VKMS is not set
+# CONFIG_DRM_VMWGFX is not set
+# CONFIG_DRM_UDL is not set
+# CONFIG_DRM_AST is not set
+# CONFIG_DRM_MGAG200 is not set
+# CONFIG_DRM_QXL is not set
+CONFIG_DRM_MSM=y
+CONFIG_DRM_MSM_GPU_STATE=y
+# CONFIG_DRM_MSM_GPU_SUDO is not set
+CONFIG_DRM_MSM_MDSS=y
+# CONFIG_DRM_MSM_MDP4 is not set
+# CONFIG_DRM_MSM_MDP5 is not set
+CONFIG_DRM_MSM_DPU=y
+CONFIG_DRM_MSM_DP=y
+CONFIG_DRM_MSM_DSI=y
+# CONFIG_DRM_MSM_DSI_28NM_PHY is not set
+# CONFIG_DRM_MSM_DSI_20NM_PHY is not set
+# CONFIG_DRM_MSM_DSI_28NM_8960_PHY is not set
+# CONFIG_DRM_MSM_DSI_14NM_PHY is not set
+# CONFIG_DRM_MSM_DSI_10NM_PHY is not set
+CONFIG_DRM_MSM_DSI_7NM_PHY=y
+CONFIG_DRM_MSM_HDMI=y
+CONFIG_DRM_MSM_HDMI_HDCP=y
+CONFIG_DRM_PANEL=y
+
+#
+# Display Panels
+#
+# CONFIG_DRM_PANEL_ABT_Y030XX067A is not set
+# CONFIG_DRM_PANEL_ARM_VERSATILE is not set
+# CONFIG_DRM_PANEL_ASUS_Z00T_TM5P5_NT35596 is not set
+# CONFIG_DRM_PANEL_AUO_A030JTN01 is not set
+# CONFIG_DRM_PANEL_BOE_BF060Y8M_AJ0 is not set
+# CONFIG_DRM_PANEL_BOE_HIMAX8279D is not set
+# CONFIG_DRM_PANEL_BOE_TH101MB31UIG002_28A is not set
+# CONFIG_DRM_PANEL_BOE_TV101WUM_NL6 is not set
+# CONFIG_DRM_PANEL_EBBG_FT8719 is not set
+# CONFIG_DRM_PANEL_ELIDA_KD35T133 is not set
+# CONFIG_DRM_PANEL_FEIXIN_K101_IM2BA02 is not set
+# CONFIG_DRM_PANEL_FEIYANG_FY07024DI26A30D is not set
+# CONFIG_DRM_PANEL_DSI_CM is not set
+# CONFIG_DRM_PANEL_LVDS is not set
+# CONFIG_DRM_PANEL_HIMAX_HX83112A is not set
+# CONFIG_DRM_PANEL_HIMAX_HX8394 is not set
+# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9341 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9805 is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set
+# CONFIG_DRM_PANEL_ILITEK_ILI9882T is not set
+# CONFIG_DRM_PANEL_INNOLUX_EJ030NA is not set
+# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set
+# CONFIG_DRM_PANEL_JADARD_JD9365DA_H3 is not set
+# CONFIG_DRM_PANEL_JDI_LPM102A188A is not set
+# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
+# CONFIG_DRM_PANEL_JDI_R63452 is not set
+# CONFIG_DRM_PANEL_KHADAS_TS050 is not set
+# CONFIG_DRM_PANEL_KINGDISPLAY_KD097D04 is not set
+# CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W is not set
+# CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829 is not set
+# CONFIG_DRM_PANEL_LG_LB035Q02 is not set
+# CONFIG_DRM_PANEL_LG_LG4573 is not set
+# CONFIG_DRM_PANEL_MAGNACHIP_D53E6EA8966 is not set
+# CONFIG_DRM_PANEL_MANTIX_MLAF057WE51 is not set
+# CONFIG_DRM_PANEL_NEC_NL8048HL11 is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3051D is not set
+# CONFIG_DRM_PANEL_NEWVISION_NV3052C is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35510 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35560 is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT35950 is not set
+CONFIG_DRM_PANEL_NOVATEK_NT36523=y
+# CONFIG_DRM_PANEL_NOVATEK_NT36672A is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT36672E is not set
+# CONFIG_DRM_PANEL_NOVATEK_NT39016 is not set
+# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set
+# CONFIG_DRM_PANEL_ORISETECH_OTA5601A is not set
+# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set
+# CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS is not set
+# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
+# CONFIG_DRM_PANEL_RAYDIUM_RM692E5 is not set
+# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_ATNA33XC20 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_DB7430 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D27A1 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6D7AA0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E63M0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+# CONFIG_DRM_PANEL_SAMSUNG_SOFEF00 is not set
+# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set
+# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
+# CONFIG_DRM_PANEL_SHARP_LS060T1SX01 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
+# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
+# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
+# CONFIG_DRM_PANEL_SONY_TD4353_JDI is not set
+# CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521 is not set
+# CONFIG_DRM_PANEL_STARTEK_KD070FHFID015 is not set
+# CONFIG_DRM_PANEL_EDP is not set
+# CONFIG_DRM_PANEL_SIMPLE is not set
+# CONFIG_DRM_PANEL_SYNAPTICS_R63353 is not set
+# CONFIG_DRM_PANEL_TDO_TL070WSH30 is not set
+# CONFIG_DRM_PANEL_TPO_TD028TTEC1 is not set
+# CONFIG_DRM_PANEL_TPO_TD043MTEA1 is not set
+# CONFIG_DRM_PANEL_TPO_TPG110 is not set
+# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set
+# CONFIG_DRM_PANEL_VISIONOX_R66451 is not set
+# CONFIG_DRM_PANEL_VISIONOX_RM69299 is not set
+# CONFIG_DRM_PANEL_VISIONOX_VTDR6130 is not set
+# CONFIG_DRM_PANEL_WIDECHIPS_WS2401 is not set
+# CONFIG_DRM_PANEL_XINPENG_XPP055C272 is not set
+# end of Display Panels
+
+CONFIG_DRM_BRIDGE=y
+CONFIG_DRM_PANEL_BRIDGE=y
+CONFIG_DRM_AUX_BRIDGE=y
+CONFIG_DRM_AUX_HPD_BRIDGE=m
+
+#
+# Display Interface Bridges
+#
+# CONFIG_DRM_CHIPONE_ICN6211 is not set
+# CONFIG_DRM_CHRONTEL_CH7033 is not set
+CONFIG_DRM_DISPLAY_CONNECTOR=m
+# CONFIG_DRM_ITE_IT6505 is not set
+CONFIG_DRM_LONTIUM_LT8912B=m
+# CONFIG_DRM_LONTIUM_LT9211 is not set
+CONFIG_DRM_LONTIUM_LT9611=m
+CONFIG_DRM_LONTIUM_LT9611UXC=m
+# CONFIG_DRM_ITE_IT66121 is not set
+# CONFIG_DRM_LVDS_CODEC is not set
+# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set
+# CONFIG_DRM_NWL_MIPI_DSI is not set
+# CONFIG_DRM_NXP_PTN3460 is not set
+# CONFIG_DRM_PARADE_PS8622 is not set
+# CONFIG_DRM_PARADE_PS8640 is not set
+# CONFIG_DRM_SAMSUNG_DSIM is not set
+# CONFIG_DRM_SIL_SII8620 is not set
+# CONFIG_DRM_SII902X is not set
+# CONFIG_DRM_SII9234 is not set
+CONFIG_DRM_SIMPLE_BRIDGE=m
+# CONFIG_DRM_THINE_THC63LVD1024 is not set
+# CONFIG_DRM_TOSHIBA_TC358762 is not set
+# CONFIG_DRM_TOSHIBA_TC358764 is not set
+# CONFIG_DRM_TOSHIBA_TC358767 is not set
+# CONFIG_DRM_TOSHIBA_TC358768 is not set
+# CONFIG_DRM_TOSHIBA_TC358775 is not set
+# CONFIG_DRM_TI_DLPC3433 is not set
+# CONFIG_DRM_TI_TFP410 is not set
+# CONFIG_DRM_TI_SN65DSI83 is not set
+# CONFIG_DRM_TI_SN65DSI86 is not set
+# CONFIG_DRM_TI_TPD12S015 is not set
+# CONFIG_DRM_ANALOGIX_ANX6345 is not set
+# CONFIG_DRM_ANALOGIX_ANX78XX is not set
+# CONFIG_DRM_ANALOGIX_ANX7625 is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
+# CONFIG_DRM_CDNS_DSI is not set
+# CONFIG_DRM_CDNS_MHDP8546 is not set
+# end of Display Interface Bridges
+
+# CONFIG_DRM_ETNAVIV is not set
+# CONFIG_DRM_HISI_HIBMC is not set
+# CONFIG_DRM_HISI_KIRIN is not set
+# CONFIG_DRM_LOGICVC is not set
+# CONFIG_DRM_ARCPGU is not set
+# CONFIG_DRM_BOCHS is not set
+# CONFIG_DRM_CIRRUS_QEMU is not set
+# CONFIG_DRM_GM12U320 is not set
+# CONFIG_DRM_PANEL_MIPI_DBI is not set
+CONFIG_DRM_SIMPLEDRM=y
+# CONFIG_TINYDRM_HX8357D is not set
+# CONFIG_TINYDRM_ILI9163 is not set
+# CONFIG_TINYDRM_ILI9225 is not set
+# CONFIG_TINYDRM_ILI9341 is not set
+# CONFIG_TINYDRM_ILI9486 is not set
+# CONFIG_TINYDRM_MI0283QT is not set
+# CONFIG_TINYDRM_REPAPER is not set
+# CONFIG_TINYDRM_ST7586 is not set
+# CONFIG_TINYDRM_ST7735R is not set
+# CONFIG_DRM_PL111 is not set
+# CONFIG_DRM_LIMA is not set
+# CONFIG_DRM_PANFROST is not set
+# CONFIG_DRM_TIDSS is not set
+# CONFIG_DRM_GUD is not set
+# CONFIG_DRM_SSD130X is not set
+# CONFIG_DRM_POWERVR is not set
+CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y
+
+#
+# Frame buffer Devices
+#
+CONFIG_FB=y
+# CONFIG_FB_CIRRUS is not set
+# CONFIG_FB_PM2 is not set
+# CONFIG_FB_CYBER2000 is not set
+# CONFIG_FB_ASILIANT is not set
+# CONFIG_FB_IMSTT is not set
+CONFIG_FB_EFI=y
+# CONFIG_FB_OPENCORES is not set
+# CONFIG_FB_S1D13XXX is not set
+# CONFIG_FB_NVIDIA is not set
+# CONFIG_FB_RIVA is not set
+# CONFIG_FB_I740 is not set
+# CONFIG_FB_MATROX is not set
+# CONFIG_FB_RADEON is not set
+# CONFIG_FB_ATY128 is not set
+# CONFIG_FB_ATY is not set
+# CONFIG_FB_S3 is not set
+# CONFIG_FB_SAVAGE is not set
+# CONFIG_FB_SIS is not set
+# CONFIG_FB_NEOMAGIC is not set
+# CONFIG_FB_KYRO is not set
+# CONFIG_FB_3DFX is not set
+# CONFIG_FB_VOODOO1 is not set
+# CONFIG_FB_VT8623 is not set
+# CONFIG_FB_TRIDENT is not set
+# CONFIG_FB_ARK is not set
+# CONFIG_FB_PM3 is not set
+# CONFIG_FB_CARMINE is not set
+# CONFIG_FB_SMSCUFX is not set
+# CONFIG_FB_UDL is not set
+# CONFIG_FB_IBM_GXT4500 is not set
+# CONFIG_FB_VIRTUAL is not set
+# CONFIG_FB_METRONOME is not set
+# CONFIG_FB_MB862XX is not set
+# CONFIG_FB_SSD1307 is not set
+# CONFIG_FB_SM712 is not set
+CONFIG_FB_CORE=y
+CONFIG_FB_NOTIFY=y
+# CONFIG_FIRMWARE_EDID is not set
+CONFIG_FB_DEVICE=y
+CONFIG_FB_CFB_FILLRECT=y
+CONFIG_FB_CFB_COPYAREA=y
+CONFIG_FB_CFB_IMAGEBLIT=y
+CONFIG_FB_SYS_FILLRECT=y
+CONFIG_FB_SYS_COPYAREA=y
+CONFIG_FB_SYS_IMAGEBLIT=y
+# CONFIG_FB_FOREIGN_ENDIAN is not set
+CONFIG_FB_SYSMEM_FOPS=y
+CONFIG_FB_DEFERRED_IO=y
+CONFIG_FB_IOMEM_FOPS=y
+CONFIG_FB_IOMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS=y
+CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y
+CONFIG_FB_MODE_HELPERS=y
+# CONFIG_FB_TILEBLITTING is not set
+# end of Frame buffer Devices
+
+#
+# Backlight & LCD device support
+#
+# CONFIG_LCD_CLASS_DEVICE is not set
+CONFIG_BACKLIGHT_CLASS_DEVICE=y
+# CONFIG_BACKLIGHT_KTD253 is not set
+# CONFIG_BACKLIGHT_KTD2801 is not set
+CONFIG_BACKLIGHT_KTZ8866=y
+# CONFIG_BACKLIGHT_PWM is not set
+# CONFIG_BACKLIGHT_QCOM_WLED is not set
+# CONFIG_BACKLIGHT_ADP8860 is not set
+# CONFIG_BACKLIGHT_ADP8870 is not set
+# CONFIG_BACKLIGHT_LM3630A is not set
+# CONFIG_BACKLIGHT_LM3639 is not set
+# CONFIG_BACKLIGHT_LP855X is not set
+# CONFIG_BACKLIGHT_MP3309C is not set
+# CONFIG_BACKLIGHT_GPIO is not set
+# CONFIG_BACKLIGHT_LV5207LP is not set
+# CONFIG_BACKLIGHT_BD6107 is not set
+# CONFIG_BACKLIGHT_ARCXCNN is not set
+# CONFIG_BACKLIGHT_LED is not set
+# end of Backlight & LCD device support
+
+CONFIG_VIDEOMODE_HELPERS=y
+CONFIG_HDMI=y
+
+#
+# Console display driver support
+#
+CONFIG_DUMMY_CONSOLE=y
+CONFIG_DUMMY_CONSOLE_COLUMNS=80
+CONFIG_DUMMY_CONSOLE_ROWS=25
+CONFIG_FRAMEBUFFER_CONSOLE=y
+# CONFIG_FRAMEBUFFER_CONSOLE_LEGACY_ACCELERATION is not set
+CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
+# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
+# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set
+# end of Console display driver support
+
+CONFIG_LOGO=y
+# CONFIG_LOGO_LINUX_MONO is not set
+# CONFIG_LOGO_LINUX_VGA16 is not set
+CONFIG_LOGO_LINUX_CLUT224=y
+# end of Graphics support
+
+# CONFIG_DRM_ACCEL is not set
+CONFIG_SOUND=y
+CONFIG_SND=y
+CONFIG_SND_TIMER=y
+CONFIG_SND_PCM=y
+CONFIG_SND_PCM_ELD=y
+CONFIG_SND_PCM_IEC958=y
+CONFIG_SND_DMAENGINE_PCM=y
+CONFIG_SND_COMPRESS_OFFLOAD=y
+CONFIG_SND_JACK=y
+CONFIG_SND_JACK_INPUT_DEV=y
+# CONFIG_SND_OSSEMUL is not set
+CONFIG_SND_PCM_TIMER=y
+# CONFIG_SND_HRTIMER is not set
+CONFIG_SND_DYNAMIC_MINORS=y
+CONFIG_SND_MAX_CARDS=32
+CONFIG_SND_SUPPORT_OLD_API=y
+CONFIG_SND_PROC_FS=y
+# CONFIG_SND_VERBOSE_PROCFS is not set
+CONFIG_SND_VERBOSE_PRINTK=y
+CONFIG_SND_CTL_FAST_LOOKUP=y
+CONFIG_SND_DEBUG=y
+CONFIG_SND_DEBUG_VERBOSE=y
+# CONFIG_SND_CTL_INPUT_VALIDATION is not set
+# CONFIG_SND_CTL_DEBUG is not set
+# CONFIG_SND_JACK_INJECTION_DEBUG is not set
+# CONFIG_SND_SEQUENCER is not set
+CONFIG_SND_DRIVERS=y
+# CONFIG_SND_DUMMY is not set
+# CONFIG_SND_ALOOP is not set
+# CONFIG_SND_PCMTEST is not set
+# CONFIG_SND_MTPAV is not set
+# CONFIG_SND_SERIAL_U16550 is not set
+# CONFIG_SND_SERIAL_GENERIC is not set
+# CONFIG_SND_MPU401 is not set
+# CONFIG_SND_PCI is not set
+
+#
+# HD-Audio
+#
+# end of HD-Audio
+
+CONFIG_SND_HDA_PREALLOC_SIZE=64
+CONFIG_SND_SPI=y
+CONFIG_SND_USB=y
+# CONFIG_SND_USB_AUDIO is not set
+# CONFIG_SND_USB_UA101 is not set
+# CONFIG_SND_USB_CAIAQ is not set
+# CONFIG_SND_USB_6FIRE is not set
+# CONFIG_SND_USB_HIFACE is not set
+# CONFIG_SND_BCD2000 is not set
+# CONFIG_SND_USB_POD is not set
+# CONFIG_SND_USB_PODHD is not set
+# CONFIG_SND_USB_TONEPORT is not set
+# CONFIG_SND_USB_VARIAX is not set
+CONFIG_SND_SOC=y
+CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
+CONFIG_SND_SOC_COMPRESS=y
+CONFIG_SND_SOC_TOPOLOGY=y
+# CONFIG_SND_SOC_ADI is not set
+# CONFIG_SND_SOC_AMD_ACP is not set
+# CONFIG_SND_AMD_ACP_CONFIG is not set
+# CONFIG_SND_ATMEL_SOC is not set
+# CONFIG_SND_BCM63XX_I2S_WHISTLER is not set
+# CONFIG_SND_DESIGNWARE_I2S is not set
+
+#
+# SoC Audio for Freescale CPUs
+#
+
+#
+# Common SoC Audio options for Freescale CPUs:
+#
+CONFIG_SND_SOC_FSL_ASRC=m
+# CONFIG_SND_SOC_FSL_SAI is not set
+# CONFIG_SND_SOC_FSL_AUDMIX is not set
+# CONFIG_SND_SOC_FSL_SSI is not set
+# CONFIG_SND_SOC_FSL_SPDIF is not set
+# CONFIG_SND_SOC_FSL_ESAI is not set
+CONFIG_SND_SOC_FSL_MICFIL=m
+CONFIG_SND_SOC_FSL_EASRC=m
+# CONFIG_SND_SOC_FSL_XCVR is not set
+CONFIG_SND_SOC_FSL_UTILS=m
+# CONFIG_SND_SOC_FSL_RPMSG is not set
+CONFIG_SND_SOC_IMX_AUDMUX=m
+# end of SoC Audio for Freescale CPUs
+
+# CONFIG_SND_SOC_CHV3_I2S is not set
+# CONFIG_SND_I2S_HI6210_I2S is not set
+# CONFIG_SND_SOC_IMG is not set
+# CONFIG_SND_SOC_MTK_BTCVSD is not set
+CONFIG_SND_SOC_QCOM=y
+# CONFIG_SND_SOC_STORM is not set
+# CONFIG_SND_SOC_APQ8016_SBC is not set
+CONFIG_SND_SOC_QCOM_COMMON=m
+CONFIG_SND_SOC_QCOM_SDW=m
+CONFIG_SND_SOC_QDSP6_COMMON=y
+CONFIG_SND_SOC_QDSP6_CORE=y
+CONFIG_SND_SOC_QDSP6_AFE=y
+CONFIG_SND_SOC_QDSP6_AFE_DAI=y
+CONFIG_SND_SOC_QDSP6_AFE_CLOCKS=y
+CONFIG_SND_SOC_QDSP6_ADM=y
+CONFIG_SND_SOC_QDSP6_ROUTING=y
+CONFIG_SND_SOC_QDSP6_ASM=y
+CONFIG_SND_SOC_QDSP6_ASM_DAI=y
+CONFIG_SND_SOC_QDSP6_APM_DAI=y
+CONFIG_SND_SOC_QDSP6_APM_LPASS_DAI=y
+CONFIG_SND_SOC_QDSP6_APM=y
+CONFIG_SND_SOC_QDSP6_PRM_LPASS_CLOCKS=y
+CONFIG_SND_SOC_QDSP6_PRM=y
+CONFIG_SND_SOC_QDSP6=y
+# CONFIG_SND_SOC_MSM8996 is not set
+# CONFIG_SND_SOC_SDM845 is not set
+CONFIG_SND_SOC_SM8250=m
+# CONFIG_SND_SOC_SC8280XP is not set
+# CONFIG_SND_SOC_SC7180 is not set
+# CONFIG_SND_SOC_SC7280 is not set
+# CONFIG_SND_SOC_X1E80100 is not set
+# CONFIG_SND_SOC_SOF_TOPLEVEL is not set
+
+#
+# STMicroelectronics STM32 SOC audio support
+#
+# end of STMicroelectronics STM32 SOC audio support
+
+# CONFIG_SND_SOC_XILINX_I2S is not set
+# CONFIG_SND_SOC_XILINX_AUDIO_FORMATTER is not set
+# CONFIG_SND_SOC_XILINX_SPDIF is not set
+# CONFIG_SND_SOC_XTFPGA_I2S is not set
+CONFIG_SND_SOC_I2C_AND_SPI=y
+
+#
+# CODEC drivers
+#
+CONFIG_SND_SOC_WM_ADSP=m
+# CONFIG_SND_SOC_AC97_CODEC is not set
+# CONFIG_SND_SOC_ADAU1372_I2C is not set
+# CONFIG_SND_SOC_ADAU1372_SPI is not set
+# CONFIG_SND_SOC_ADAU1701 is not set
+# CONFIG_SND_SOC_ADAU1761_I2C is not set
+# CONFIG_SND_SOC_ADAU1761_SPI is not set
+# CONFIG_SND_SOC_ADAU7002 is not set
+# CONFIG_SND_SOC_ADAU7118_HW is not set
+# CONFIG_SND_SOC_ADAU7118_I2C is not set
+# CONFIG_SND_SOC_AK4104 is not set
+# CONFIG_SND_SOC_AK4118 is not set
+# CONFIG_SND_SOC_AK4375 is not set
+# CONFIG_SND_SOC_AK4458 is not set
+# CONFIG_SND_SOC_AK4554 is not set
+# CONFIG_SND_SOC_AK4613 is not set
+# CONFIG_SND_SOC_AK4642 is not set
+# CONFIG_SND_SOC_AK5386 is not set
+# CONFIG_SND_SOC_AK5558 is not set
+# CONFIG_SND_SOC_ALC5623 is not set
+# CONFIG_SND_SOC_AUDIO_IIO_AUX is not set
+# CONFIG_SND_SOC_AW8738 is not set
+# CONFIG_SND_SOC_AW88395 is not set
+# CONFIG_SND_SOC_AW88261 is not set
+# CONFIG_SND_SOC_AW87390 is not set
+# CONFIG_SND_SOC_AW88399 is not set
+# CONFIG_SND_SOC_BD28623 is not set
+# CONFIG_SND_SOC_BT_SCO is not set
+# CONFIG_SND_SOC_CHV3_CODEC is not set
+# CONFIG_SND_SOC_CS35L32 is not set
+# CONFIG_SND_SOC_CS35L33 is not set
+# CONFIG_SND_SOC_CS35L34 is not set
+# CONFIG_SND_SOC_CS35L35 is not set
+# CONFIG_SND_SOC_CS35L36 is not set
+CONFIG_SND_SOC_CS35L41_LIB=m
+CONFIG_SND_SOC_CS35L41=m
+# CONFIG_SND_SOC_CS35L41_SPI is not set
+CONFIG_SND_SOC_CS35L41_I2C=m
+# CONFIG_SND_SOC_CS35L45_SPI is not set
+# CONFIG_SND_SOC_CS35L45_I2C is not set
+# CONFIG_SND_SOC_CS35L56_I2C is not set
+# CONFIG_SND_SOC_CS35L56_SPI is not set
+# CONFIG_SND_SOC_CS35L56_SDW is not set
+# CONFIG_SND_SOC_CS42L42 is not set
+# CONFIG_SND_SOC_CS42L42_SDW is not set
+# CONFIG_SND_SOC_CS42L51_I2C is not set
+# CONFIG_SND_SOC_CS42L52 is not set
+# CONFIG_SND_SOC_CS42L56 is not set
+# CONFIG_SND_SOC_CS42L73 is not set
+# CONFIG_SND_SOC_CS42L83 is not set
+# CONFIG_SND_SOC_CS4234 is not set
+# CONFIG_SND_SOC_CS4265 is not set
+# CONFIG_SND_SOC_CS4270 is not set
+# CONFIG_SND_SOC_CS4271_I2C is not set
+# CONFIG_SND_SOC_CS4271_SPI is not set
+# CONFIG_SND_SOC_CS42XX8_I2C is not set
+# CONFIG_SND_SOC_CS43130 is not set
+# CONFIG_SND_SOC_CS4341 is not set
+# CONFIG_SND_SOC_CS4349 is not set
+# CONFIG_SND_SOC_CS53L30 is not set
+# CONFIG_SND_SOC_CX2072X is not set
+# CONFIG_SND_SOC_DA7213 is not set
+# CONFIG_SND_SOC_DMIC is not set
+CONFIG_SND_SOC_HDMI_CODEC=y
+# CONFIG_SND_SOC_ES7134 is not set
+# CONFIG_SND_SOC_ES7241 is not set
+# CONFIG_SND_SOC_ES8316 is not set
+# CONFIG_SND_SOC_ES8326 is not set
+# CONFIG_SND_SOC_ES8328_I2C is not set
+# CONFIG_SND_SOC_ES8328_SPI is not set
+# CONFIG_SND_SOC_GTM601 is not set
+# CONFIG_SND_SOC_HDA is not set
+# CONFIG_SND_SOC_ICS43432 is not set
+# CONFIG_SND_SOC_IDT821034 is not set
+# CONFIG_SND_SOC_INNO_RK3036 is not set
+# CONFIG_SND_SOC_MAX98088 is not set
+# CONFIG_SND_SOC_MAX98090 is not set
+# CONFIG_SND_SOC_MAX98357A is not set
+# CONFIG_SND_SOC_MAX98504 is not set
+# CONFIG_SND_SOC_MAX9867 is not set
+# CONFIG_SND_SOC_MAX98927 is not set
+# CONFIG_SND_SOC_MAX98520 is not set
+# CONFIG_SND_SOC_MAX98363 is not set
+# CONFIG_SND_SOC_MAX98373_I2C is not set
+# CONFIG_SND_SOC_MAX98373_SDW is not set
+# CONFIG_SND_SOC_MAX98388 is not set
+# CONFIG_SND_SOC_MAX98390 is not set
+# CONFIG_SND_SOC_MAX98396 is not set
+# CONFIG_SND_SOC_MAX9860 is not set
+# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set
+# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
+# CONFIG_SND_SOC_PCM1681 is not set
+# CONFIG_SND_SOC_PCM1789_I2C is not set
+# CONFIG_SND_SOC_PCM179X_I2C is not set
+# CONFIG_SND_SOC_PCM179X_SPI is not set
+# CONFIG_SND_SOC_PCM186X_I2C is not set
+# CONFIG_SND_SOC_PCM186X_SPI is not set
+# CONFIG_SND_SOC_PCM3060_I2C is not set
+# CONFIG_SND_SOC_PCM3060_SPI is not set
+# CONFIG_SND_SOC_PCM3168A_I2C is not set
+# CONFIG_SND_SOC_PCM3168A_SPI is not set
+# CONFIG_SND_SOC_PCM5102A is not set
+# CONFIG_SND_SOC_PCM512x_I2C is not set
+# CONFIG_SND_SOC_PCM512x_SPI is not set
+# CONFIG_SND_SOC_PEB2466 is not set
+# CONFIG_SND_SOC_RK3328 is not set
+# CONFIG_SND_SOC_RT1017_SDCA_SDW is not set
+# CONFIG_SND_SOC_RT1308_SDW is not set
+# CONFIG_SND_SOC_RT1316_SDW is not set
+# CONFIG_SND_SOC_RT1318_SDW is not set
+# CONFIG_SND_SOC_RT5616 is not set
+# CONFIG_SND_SOC_RT5631 is not set
+# CONFIG_SND_SOC_RT5640 is not set
+# CONFIG_SND_SOC_RT5659 is not set
+# CONFIG_SND_SOC_RT5682_SDW is not set
+# CONFIG_SND_SOC_RT700_SDW is not set
+# CONFIG_SND_SOC_RT711_SDW is not set
+# CONFIG_SND_SOC_RT711_SDCA_SDW is not set
+# CONFIG_SND_SOC_RT712_SDCA_SDW is not set
+# CONFIG_SND_SOC_RT712_SDCA_DMIC_SDW is not set
+# CONFIG_SND_SOC_RT722_SDCA_SDW is not set
+# CONFIG_SND_SOC_RT715_SDW is not set
+# CONFIG_SND_SOC_RT715_SDCA_SDW is not set
+# CONFIG_SND_SOC_RT9120 is not set
+# CONFIG_SND_SOC_RTQ9128 is not set
+# CONFIG_SND_SOC_SDW_MOCKUP is not set
+# CONFIG_SND_SOC_SGTL5000 is not set
+# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set
+# CONFIG_SND_SOC_SIMPLE_MUX is not set
+# CONFIG_SND_SOC_SMA1303 is not set
+# CONFIG_SND_SOC_SPDIF is not set
+# CONFIG_SND_SOC_SRC4XXX_I2C is not set
+# CONFIG_SND_SOC_SSM2305 is not set
+# CONFIG_SND_SOC_SSM2518 is not set
+# CONFIG_SND_SOC_SSM2602_SPI is not set
+# CONFIG_SND_SOC_SSM2602_I2C is not set
+# CONFIG_SND_SOC_SSM3515 is not set
+# CONFIG_SND_SOC_SSM4567 is not set
+# CONFIG_SND_SOC_STA32X is not set
+# CONFIG_SND_SOC_STA350 is not set
+# CONFIG_SND_SOC_STI_SAS is not set
+# CONFIG_SND_SOC_TAS2552 is not set
+# CONFIG_SND_SOC_TAS2562 is not set
+# CONFIG_SND_SOC_TAS2764 is not set
+# CONFIG_SND_SOC_TAS2770 is not set
+# CONFIG_SND_SOC_TAS2780 is not set
+# CONFIG_SND_SOC_TAS2781_I2C is not set
+# CONFIG_SND_SOC_TAS5086 is not set
+# CONFIG_SND_SOC_TAS571X is not set
+# CONFIG_SND_SOC_TAS5720 is not set
+# CONFIG_SND_SOC_TAS5805M is not set
+# CONFIG_SND_SOC_TAS6424 is not set
+# CONFIG_SND_SOC_TDA7419 is not set
+# CONFIG_SND_SOC_TFA9879 is not set
+# CONFIG_SND_SOC_TFA989X is not set
+# CONFIG_SND_SOC_TLV320ADC3XXX is not set
+# CONFIG_SND_SOC_TLV320AIC23_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC23_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC31XX is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set
+# CONFIG_SND_SOC_TLV320AIC3X_I2C is not set
+# CONFIG_SND_SOC_TLV320AIC3X_SPI is not set
+# CONFIG_SND_SOC_TLV320ADCX140 is not set
+# CONFIG_SND_SOC_TS3A227E is not set
+# CONFIG_SND_SOC_TSCS42XX is not set
+# CONFIG_SND_SOC_TSCS454 is not set
+# CONFIG_SND_SOC_UDA1334 is not set
+# CONFIG_SND_SOC_WCD9335 is not set
+# CONFIG_SND_SOC_WCD934X is not set
+# CONFIG_SND_SOC_WCD938X_SDW is not set
+# CONFIG_SND_SOC_WCD939X_SDW is not set
+# CONFIG_SND_SOC_WM8510 is not set
+# CONFIG_SND_SOC_WM8523 is not set
+# CONFIG_SND_SOC_WM8524 is not set
+# CONFIG_SND_SOC_WM8580 is not set
+# CONFIG_SND_SOC_WM8711 is not set
+# CONFIG_SND_SOC_WM8728 is not set
+# CONFIG_SND_SOC_WM8731_I2C is not set
+# CONFIG_SND_SOC_WM8731_SPI is not set
+# CONFIG_SND_SOC_WM8737 is not set
+# CONFIG_SND_SOC_WM8741 is not set
+# CONFIG_SND_SOC_WM8750 is not set
+# CONFIG_SND_SOC_WM8753 is not set
+# CONFIG_SND_SOC_WM8770 is not set
+# CONFIG_SND_SOC_WM8776 is not set
+# CONFIG_SND_SOC_WM8782 is not set
+# CONFIG_SND_SOC_WM8804_I2C is not set
+# CONFIG_SND_SOC_WM8804_SPI is not set
+# CONFIG_SND_SOC_WM8903 is not set
+# CONFIG_SND_SOC_WM8904 is not set
+# CONFIG_SND_SOC_WM8940 is not set
+# CONFIG_SND_SOC_WM8960 is not set
+# CONFIG_SND_SOC_WM8961 is not set
+# CONFIG_SND_SOC_WM8962 is not set
+# CONFIG_SND_SOC_WM8974 is not set
+# CONFIG_SND_SOC_WM8978 is not set
+# CONFIG_SND_SOC_WM8985 is not set
+# CONFIG_SND_SOC_WSA881X is not set
+# CONFIG_SND_SOC_WSA883X is not set
+# CONFIG_SND_SOC_WSA884X is not set
+# CONFIG_SND_SOC_ZL38060 is not set
+# CONFIG_SND_SOC_MAX9759 is not set
+# CONFIG_SND_SOC_MT6351 is not set
+# CONFIG_SND_SOC_MT6358 is not set
+# CONFIG_SND_SOC_MT6660 is not set
+# CONFIG_SND_SOC_NAU8315 is not set
+# CONFIG_SND_SOC_NAU8540 is not set
+# CONFIG_SND_SOC_NAU8810 is not set
+# CONFIG_SND_SOC_NAU8821 is not set
+# CONFIG_SND_SOC_NAU8822 is not set
+# CONFIG_SND_SOC_NAU8824 is not set
+# CONFIG_SND_SOC_TPA6130A2 is not set
+CONFIG_SND_SOC_LPASS_MACRO_COMMON=m
+# CONFIG_SND_SOC_LPASS_WSA_MACRO is not set
+# CONFIG_SND_SOC_LPASS_VA_MACRO is not set
+CONFIG_SND_SOC_LPASS_RX_MACRO=m
+CONFIG_SND_SOC_LPASS_TX_MACRO=m
+# end of CODEC drivers
+
+CONFIG_SND_SIMPLE_CARD_UTILS=m
+CONFIG_SND_SIMPLE_CARD=m
+CONFIG_SND_AUDIO_GRAPH_CARD=m
+# CONFIG_SND_AUDIO_GRAPH_CARD2 is not set
+# CONFIG_SND_TEST_COMPONENT is not set
+# CONFIG_SND_VIRTIO is not set
+CONFIG_HID_SUPPORT=y
+CONFIG_HID=y
+# CONFIG_HID_BATTERY_STRENGTH is not set
+CONFIG_HIDRAW=y
+CONFIG_UHID=m
+CONFIG_HID_GENERIC=y
+
+#
+# Special HID drivers
+#
+CONFIG_HID_A4TECH=y
+# CONFIG_HID_ACCUTOUCH is not set
+# CONFIG_HID_ACRUX is not set
+CONFIG_HID_APPLE=y
+# CONFIG_HID_APPLEIR is not set
+# CONFIG_HID_ASUS is not set
+# CONFIG_HID_AUREAL is not set
+CONFIG_HID_BELKIN=y
+# CONFIG_HID_BETOP_FF is not set
+# CONFIG_HID_BIGBEN_FF is not set
+CONFIG_HID_CHERRY=y
+CONFIG_HID_CHICONY=y
+# CONFIG_HID_CORSAIR is not set
+# CONFIG_HID_COUGAR is not set
+# CONFIG_HID_MACALLY is not set
+# CONFIG_HID_PRODIKEYS is not set
+# CONFIG_HID_CMEDIA is not set
+# CONFIG_HID_CP2112 is not set
+# CONFIG_HID_CREATIVE_SB0540 is not set
+CONFIG_HID_CYPRESS=y
+# CONFIG_HID_DRAGONRISE is not set
+# CONFIG_HID_EMS_FF is not set
+# CONFIG_HID_ELAN is not set
+# CONFIG_HID_ELECOM is not set
+# CONFIG_HID_ELO is not set
+# CONFIG_HID_EVISION is not set
+CONFIG_HID_EZKEY=y
+# CONFIG_HID_FT260 is not set
+# CONFIG_HID_GEMBIRD is not set
+# CONFIG_HID_GFRM is not set
+# CONFIG_HID_GLORIOUS is not set
+# CONFIG_HID_HOLTEK is not set
+# CONFIG_HID_GOOGLE_STADIA_FF is not set
+# CONFIG_HID_VIVALDI is not set
+# CONFIG_HID_GT683R is not set
+# CONFIG_HID_KEYTOUCH is not set
+# CONFIG_HID_KYE is not set
+# CONFIG_HID_UCLOGIC is not set
+# CONFIG_HID_WALTOP is not set
+# CONFIG_HID_VIEWSONIC is not set
+# CONFIG_HID_VRC2 is not set
+# CONFIG_HID_XIAOMI is not set
+# CONFIG_HID_GYRATION is not set
+# CONFIG_HID_ICADE is not set
+CONFIG_HID_ITE=y
+# CONFIG_HID_JABRA is not set
+# CONFIG_HID_TWINHAN is not set
+CONFIG_HID_KENSINGTON=y
+# CONFIG_HID_LCPOWER is not set
+# CONFIG_HID_LED is not set
+# CONFIG_HID_LENOVO is not set
+# CONFIG_HID_LETSKETCH is not set
+CONFIG_HID_LOGITECH=y
+# CONFIG_HID_LOGITECH_DJ is not set
+# CONFIG_HID_LOGITECH_HIDPP is not set
+# CONFIG_LOGITECH_FF is not set
+# CONFIG_LOGIRUMBLEPAD2_FF is not set
+# CONFIG_LOGIG940_FF is not set
+# CONFIG_LOGIWHEELS_FF is not set
+# CONFIG_HID_MAGICMOUSE is not set
+# CONFIG_HID_MALTRON is not set
+# CONFIG_HID_MAYFLASH is not set
+# CONFIG_HID_MEGAWORLD_FF is not set
+CONFIG_HID_REDRAGON=y
+CONFIG_HID_MICROSOFT=y
+CONFIG_HID_MONTEREY=y
+CONFIG_HID_MULTITOUCH=m
+CONFIG_HID_NINTENDO=m
+# CONFIG_NINTENDO_FF is not set
+# CONFIG_HID_NTI is not set
+# CONFIG_HID_NTRIG is not set
+# CONFIG_HID_NVIDIA_SHIELD is not set
+# CONFIG_HID_ORTEK is not set
+# CONFIG_HID_PANTHERLORD is not set
+# CONFIG_HID_PENMOUNT is not set
+# CONFIG_HID_PETALYNX is not set
+# CONFIG_HID_PICOLCD is not set
+# CONFIG_HID_PLANTRONICS is not set
+# CONFIG_HID_PLAYSTATION is not set
+# CONFIG_HID_PXRC is not set
+# CONFIG_HID_RAZER is not set
+# CONFIG_HID_PRIMAX is not set
+# CONFIG_HID_RETRODE is not set
+# CONFIG_HID_ROCCAT is not set
+# CONFIG_HID_SAITEK is not set
+# CONFIG_HID_SAMSUNG is not set
+# CONFIG_HID_SEMITEK is not set
+# CONFIG_HID_SIGMAMICRO is not set
+# CONFIG_HID_SONY is not set
+# CONFIG_HID_SPEEDLINK is not set
+# CONFIG_HID_STEAM is not set
+# CONFIG_HID_STEELSERIES is not set
+# CONFIG_HID_SUNPLUS is not set
+# CONFIG_HID_RMI is not set
+# CONFIG_HID_GREENASIA is not set
+# CONFIG_HID_SMARTJOYPLUS is not set
+# CONFIG_HID_TIVO is not set
+# CONFIG_HID_TOPSEED is not set
+# CONFIG_HID_TOPRE is not set
+# CONFIG_HID_THINGM is not set
+# CONFIG_HID_THRUSTMASTER is not set
+# CONFIG_HID_UDRAW_PS3 is not set
+# CONFIG_HID_U2FZERO is not set
+# CONFIG_HID_WACOM is not set
+# CONFIG_HID_WIIMOTE is not set
+# CONFIG_HID_XINMO is not set
+# CONFIG_HID_ZEROPLUS is not set
+# CONFIG_HID_ZYDACRON is not set
+# CONFIG_HID_SENSOR_HUB is not set
+# CONFIG_HID_ALPS is not set
+# CONFIG_HID_MCP2200 is not set
+# CONFIG_HID_MCP2221 is not set
+# end of Special HID drivers
+
+#
+# HID-BPF support
+#
+# end of HID-BPF support
+
+#
+# USB HID support
+#
+CONFIG_USB_HID=y
+# CONFIG_HID_PID is not set
+CONFIG_USB_HIDDEV=y
+# end of USB HID support
+
+CONFIG_I2C_HID=y
+CONFIG_I2C_HID_ACPI=m
+CONFIG_I2C_HID_OF=m
+# CONFIG_I2C_HID_OF_ELAN is not set
+# CONFIG_I2C_HID_OF_GOODIX is not set
+CONFIG_I2C_HID_CORE=m
+CONFIG_USB_OHCI_LITTLE_ENDIAN=y
+CONFIG_USB_SUPPORT=y
+CONFIG_USB_COMMON=y
+# CONFIG_USB_LED_TRIG is not set
+CONFIG_USB_ULPI_BUS=y
+CONFIG_USB_CONN_GPIO=m
+CONFIG_USB_ARCH_HAS_HCD=y
+CONFIG_USB=y
+CONFIG_USB_PCI=y
+# CONFIG_USB_PCI_AMD is not set
+# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set
+
+#
+# Miscellaneous USB options
+#
+CONFIG_USB_DEFAULT_PERSIST=y
+# CONFIG_USB_FEW_INIT_RETRIES is not set
+# CONFIG_USB_DYNAMIC_MINORS is not set
+CONFIG_USB_OTG=y
+# CONFIG_USB_OTG_PRODUCTLIST is not set
+# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
+# CONFIG_USB_OTG_FSM is not set
+# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set
+CONFIG_USB_AUTOSUSPEND_DELAY=2
+CONFIG_USB_DEFAULT_AUTHORIZATION_MODE=1
+CONFIG_USB_MON=m
+
+#
+# USB Host Controller Drivers
+#
+# CONFIG_USB_C67X00_HCD is not set
+CONFIG_USB_XHCI_HCD=y
+# CONFIG_USB_XHCI_DBGCAP is not set
+CONFIG_USB_XHCI_PCI=m
+CONFIG_USB_XHCI_PCI_RENESAS=m
+CONFIG_USB_XHCI_PLATFORM=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
+CONFIG_USB_EHCI_TT_NEWSCHED=y
+CONFIG_USB_EHCI_PCI=y
+# CONFIG_USB_EHCI_FSL is not set
+CONFIG_USB_EHCI_HCD_PLATFORM=y
+# CONFIG_USB_OXU210HP_HCD is not set
+# CONFIG_USB_ISP116X_HCD is not set
+# CONFIG_USB_MAX3421_HCD is not set
+CONFIG_USB_OHCI_HCD=y
+CONFIG_USB_OHCI_HCD_PCI=y
+CONFIG_USB_OHCI_HCD_PLATFORM=y
+# CONFIG_USB_UHCI_HCD is not set
+# CONFIG_USB_SL811_HCD is not set
+# CONFIG_USB_R8A66597_HCD is not set
+# CONFIG_USB_HCD_TEST_MODE is not set
+
+#
+# USB Device Class drivers
+#
+CONFIG_USB_ACM=m
+# CONFIG_USB_PRINTER is not set
+CONFIG_USB_WDM=m
+# CONFIG_USB_TMC is not set
+
+#
+# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
+#
+
+#
+# also be needed; see USB_STORAGE Help for more info
+#
+CONFIG_USB_STORAGE=y
+# CONFIG_USB_STORAGE_DEBUG is not set
+# CONFIG_USB_STORAGE_REALTEK is not set
+# CONFIG_USB_STORAGE_DATAFAB is not set
+# CONFIG_USB_STORAGE_FREECOM is not set
+# CONFIG_USB_STORAGE_ISD200 is not set
+# CONFIG_USB_STORAGE_USBAT is not set
+# CONFIG_USB_STORAGE_SDDR09 is not set
+# CONFIG_USB_STORAGE_SDDR55 is not set
+# CONFIG_USB_STORAGE_JUMPSHOT is not set
+# CONFIG_USB_STORAGE_ALAUDA is not set
+# CONFIG_USB_STORAGE_ONETOUCH is not set
+# CONFIG_USB_STORAGE_KARMA is not set
+# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
+# CONFIG_USB_STORAGE_ENE_UB6250 is not set
+# CONFIG_USB_UAS is not set
+
+#
+# USB Imaging devices
+#
+# CONFIG_USB_MDC800 is not set
+# CONFIG_USB_MICROTEK is not set
+# CONFIG_USBIP_CORE is not set
+
+#
+# USB dual-mode controller drivers
+#
+# CONFIG_USB_CDNS_SUPPORT is not set
+CONFIG_USB_MUSB_HDRC=y
+# CONFIG_USB_MUSB_HOST is not set
+# CONFIG_USB_MUSB_GADGET is not set
+CONFIG_USB_MUSB_DUAL_ROLE=y
+
+#
+# Platform Glue Layer
+#
+
+#
+# MUSB DMA mode
+#
+# CONFIG_MUSB_PIO_ONLY is not set
+CONFIG_USB_DWC3=y
+# CONFIG_USB_DWC3_ULPI is not set
+# CONFIG_USB_DWC3_HOST is not set
+# CONFIG_USB_DWC3_GADGET is not set
+CONFIG_USB_DWC3_DUAL_ROLE=y
+
+#
+# Platform Glue Driver Support
+#
+CONFIG_USB_DWC3_PCI=y
+CONFIG_USB_DWC3_HAPS=y
+CONFIG_USB_DWC3_OF_SIMPLE=y
+CONFIG_USB_DWC3_QCOM=y
+CONFIG_USB_DWC2=y
+# CONFIG_USB_DWC2_HOST is not set
+
+#
+# Gadget/Dual-role mode requires USB Gadget support to be enabled
+#
+# CONFIG_USB_DWC2_PERIPHERAL is not set
+CONFIG_USB_DWC2_DUAL_ROLE=y
+# CONFIG_USB_DWC2_PCI is not set
+# CONFIG_USB_DWC2_DEBUG is not set
+# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
+CONFIG_USB_CHIPIDEA=y
+CONFIG_USB_CHIPIDEA_UDC=y
+CONFIG_USB_CHIPIDEA_HOST=y
+CONFIG_USB_CHIPIDEA_PCI=y
+CONFIG_USB_CHIPIDEA_MSM=y
+CONFIG_USB_CHIPIDEA_NPCM=y
+CONFIG_USB_CHIPIDEA_IMX=y
+CONFIG_USB_CHIPIDEA_GENERIC=y
+CONFIG_USB_CHIPIDEA_TEGRA=y
+CONFIG_USB_ISP1760=y
+CONFIG_USB_ISP1760_HCD=y
+CONFIG_USB_ISP1761_UDC=y
+# CONFIG_USB_ISP1760_HOST_ROLE is not set
+# CONFIG_USB_ISP1760_GADGET_ROLE is not set
+CONFIG_USB_ISP1760_DUAL_ROLE=y
+
+#
+# USB port drivers
+#
+CONFIG_USB_SERIAL=m
+# CONFIG_USB_SERIAL_GENERIC is not set
+# CONFIG_USB_SERIAL_SIMPLE is not set
+# CONFIG_USB_SERIAL_AIRCABLE is not set
+# CONFIG_USB_SERIAL_ARK3116 is not set
+# CONFIG_USB_SERIAL_BELKIN is not set
+# CONFIG_USB_SERIAL_CH341 is not set
+# CONFIG_USB_SERIAL_WHITEHEAT is not set
+# CONFIG_USB_SERIAL_DIGI_ACCELEPORT is not set
+CONFIG_USB_SERIAL_CP210X=m
+# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
+# CONFIG_USB_SERIAL_EMPEG is not set
+CONFIG_USB_SERIAL_FTDI_SIO=m
+# CONFIG_USB_SERIAL_VISOR is not set
+# CONFIG_USB_SERIAL_IPAQ is not set
+# CONFIG_USB_SERIAL_IR is not set
+# CONFIG_USB_SERIAL_EDGEPORT is not set
+# CONFIG_USB_SERIAL_EDGEPORT_TI is not set
+# CONFIG_USB_SERIAL_F81232 is not set
+# CONFIG_USB_SERIAL_F8153X is not set
+# CONFIG_USB_SERIAL_GARMIN is not set
+# CONFIG_USB_SERIAL_IPW is not set
+# CONFIG_USB_SERIAL_IUU is not set
+# CONFIG_USB_SERIAL_KEYSPAN_PDA is not set
+# CONFIG_USB_SERIAL_KEYSPAN is not set
+# CONFIG_USB_SERIAL_KLSI is not set
+# CONFIG_USB_SERIAL_KOBIL_SCT is not set
+# CONFIG_USB_SERIAL_MCT_U232 is not set
+# CONFIG_USB_SERIAL_METRO is not set
+# CONFIG_USB_SERIAL_MOS7720 is not set
+# CONFIG_USB_SERIAL_MOS7840 is not set
+# CONFIG_USB_SERIAL_MXUPORT is not set
+# CONFIG_USB_SERIAL_NAVMAN is not set
+# CONFIG_USB_SERIAL_PL2303 is not set
+# CONFIG_USB_SERIAL_OTI6858 is not set
+# CONFIG_USB_SERIAL_QCAUX is not set
+# CONFIG_USB_SERIAL_QUALCOMM is not set
+# CONFIG_USB_SERIAL_SPCP8X5 is not set
+# CONFIG_USB_SERIAL_SAFE is not set
+# CONFIG_USB_SERIAL_SIERRAWIRELESS is not set
+# CONFIG_USB_SERIAL_SYMBOL is not set
+# CONFIG_USB_SERIAL_TI is not set
+# CONFIG_USB_SERIAL_CYBERJACK is not set
+CONFIG_USB_SERIAL_WWAN=m
+CONFIG_USB_SERIAL_OPTION=m
+# CONFIG_USB_SERIAL_OMNINET is not set
+# CONFIG_USB_SERIAL_OPTICON is not set
+# CONFIG_USB_SERIAL_XSENS_MT is not set
+# CONFIG_USB_SERIAL_WISHBONE is not set
+# CONFIG_USB_SERIAL_SSU100 is not set
+# CONFIG_USB_SERIAL_QT2 is not set
+# CONFIG_USB_SERIAL_UPD78F0730 is not set
+# CONFIG_USB_SERIAL_XR is not set
+# CONFIG_USB_SERIAL_DEBUG is not set
+
+#
+# USB Miscellaneous drivers
+#
+# CONFIG_USB_EMI62 is not set
+# CONFIG_USB_EMI26 is not set
+# CONFIG_USB_ADUTUX is not set
+# CONFIG_USB_SEVSEG is not set
+# CONFIG_USB_LEGOTOWER is not set
+# CONFIG_USB_LCD is not set
+# CONFIG_USB_CYPRESS_CY7C63 is not set
+# CONFIG_USB_CYTHERM is not set
+# CONFIG_USB_IDMOUSE is not set
+# CONFIG_USB_APPLEDISPLAY is not set
+CONFIG_USB_QCOM_EUD=m
+# CONFIG_APPLE_MFI_FASTCHARGE is not set
+# CONFIG_USB_LJCA is not set
+# CONFIG_USB_SISUSBVGA is not set
+# CONFIG_USB_LD is not set
+# CONFIG_USB_TRANCEVIBRATOR is not set
+# CONFIG_USB_IOWARRIOR is not set
+# CONFIG_USB_TEST is not set
+# CONFIG_USB_EHSET_TEST_FIXTURE is not set
+# CONFIG_USB_ISIGHTFW is not set
+# CONFIG_USB_YUREX is not set
+# CONFIG_USB_EZUSB_FX2 is not set
+# CONFIG_USB_HUB_USB251XB is not set
+CONFIG_USB_HSIC_USB3503=y
+# CONFIG_USB_HSIC_USB4604 is not set
+# CONFIG_USB_LINK_LAYER_TEST is not set
+# CONFIG_USB_CHAOSKEY is not set
+# CONFIG_USB_ONBOARD_HUB is not set
+
+#
+# USB Physical Layer drivers
+#
+CONFIG_USB_PHY=y
+CONFIG_NOP_USB_XCEIV=y
+# CONFIG_USB_GPIO_VBUS is not set
+# CONFIG_USB_ISP1301 is not set
+# CONFIG_USB_ULPI is not set
+# end of USB Physical Layer drivers
+
+CONFIG_USB_GADGET=y
+# CONFIG_USB_GADGET_DEBUG is not set
+# CONFIG_USB_GADGET_DEBUG_FILES is not set
+# CONFIG_USB_GADGET_DEBUG_FS is not set
+CONFIG_USB_GADGET_VBUS_DRAW=2
+CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
+# CONFIG_U_SERIAL_CONSOLE is not set
+
+#
+# USB Peripheral Controller
+#
+# CONFIG_USB_GR_UDC is not set
+# CONFIG_USB_R8A66597 is not set
+# CONFIG_USB_PXA27X is not set
+# CONFIG_USB_MV_UDC is not set
+# CONFIG_USB_MV_U3D is not set
+# CONFIG_USB_SNP_UDC_PLAT is not set
+# CONFIG_USB_M66592 is not set
+# CONFIG_USB_BDC_UDC is not set
+# CONFIG_USB_AMD5536UDC is not set
+# CONFIG_USB_NET2272 is not set
+# CONFIG_USB_NET2280 is not set
+# CONFIG_USB_GOKU is not set
+# CONFIG_USB_EG20T is not set
+# CONFIG_USB_GADGET_XILINX is not set
+# CONFIG_USB_MAX3420_UDC is not set
+# CONFIG_USB_CDNS2_UDC is not set
+# CONFIG_USB_DUMMY_HCD is not set
+# end of USB Peripheral Controller
+
+CONFIG_USB_LIBCOMPOSITE=y
+CONFIG_USB_F_ACM=y
+CONFIG_USB_U_SERIAL=y
+CONFIG_USB_U_ETHER=y
+CONFIG_USB_F_SERIAL=y
+CONFIG_USB_F_OBEX=y
+CONFIG_USB_F_NCM=y
+CONFIG_USB_F_ECM=y
+CONFIG_USB_F_EEM=y
+CONFIG_USB_F_SUBSET=y
+CONFIG_USB_F_RNDIS=y
+CONFIG_USB_F_MASS_STORAGE=y
+CONFIG_USB_F_FS=y
+CONFIG_USB_CONFIGFS=y
+CONFIG_USB_CONFIGFS_SERIAL=y
+CONFIG_USB_CONFIGFS_ACM=y
+CONFIG_USB_CONFIGFS_OBEX=y
+CONFIG_USB_CONFIGFS_NCM=y
+CONFIG_USB_CONFIGFS_ECM=y
+CONFIG_USB_CONFIGFS_ECM_SUBSET=y
+CONFIG_USB_CONFIGFS_RNDIS=y
+CONFIG_USB_CONFIGFS_EEM=y
+CONFIG_USB_CONFIGFS_MASS_STORAGE=y
+# CONFIG_USB_CONFIGFS_F_LB_SS is not set
+CONFIG_USB_CONFIGFS_F_FS=y
+# CONFIG_USB_CONFIGFS_F_UAC1 is not set
+# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set
+# CONFIG_USB_CONFIGFS_F_UAC2 is not set
+# CONFIG_USB_CONFIGFS_F_MIDI is not set
+# CONFIG_USB_CONFIGFS_F_MIDI2 is not set
+# CONFIG_USB_CONFIGFS_F_HID is not set
+# CONFIG_USB_CONFIGFS_F_UVC is not set
+# CONFIG_USB_CONFIGFS_F_PRINTER is not set
+
+#
+# USB Gadget precomposed configurations
+#
+# CONFIG_USB_ZERO is not set
+# CONFIG_USB_AUDIO is not set
+# CONFIG_USB_ETH is not set
+# CONFIG_USB_G_NCM is not set
+# CONFIG_USB_GADGETFS is not set
+# CONFIG_USB_FUNCTIONFS is not set
+# CONFIG_USB_MASS_STORAGE is not set
+# CONFIG_USB_G_SERIAL is not set
+# CONFIG_USB_MIDI_GADGET is not set
+# CONFIG_USB_G_PRINTER is not set
+# CONFIG_USB_CDC_COMPOSITE is not set
+# CONFIG_USB_G_ACM_MS is not set
+# CONFIG_USB_G_MULTI is not set
+# CONFIG_USB_G_HID is not set
+# CONFIG_USB_G_DBGP is not set
+# CONFIG_USB_G_WEBCAM is not set
+# CONFIG_USB_RAW_GADGET is not set
+# end of USB Gadget precomposed configurations
+
+CONFIG_TYPEC=y
+CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TCPCI=m
+# CONFIG_TYPEC_RT1711H is not set
+# CONFIG_TYPEC_TCPCI_MAXIM is not set
+# CONFIG_TYPEC_FUSB302 is not set
+CONFIG_TYPEC_QCOM_PMIC=m
+# CONFIG_TYPEC_UCSI is not set
+CONFIG_TYPEC_TPS6598X=m
+# CONFIG_TYPEC_ANX7411 is not set
+# CONFIG_TYPEC_RT1719 is not set
+CONFIG_TYPEC_HD3SS3220=m
+# CONFIG_TYPEC_STUSB160X is not set
+# CONFIG_TYPEC_WUSB3801 is not set
+
+#
+# USB Type-C Multiplexer/DeMultiplexer Switch support
+#
+# CONFIG_TYPEC_MUX_FSA4480 is not set
+# CONFIG_TYPEC_MUX_GPIO_SBU is not set
+# CONFIG_TYPEC_MUX_PI3USB30532 is not set
+# CONFIG_TYPEC_MUX_IT5205 is not set
+CONFIG_TYPEC_MUX_NB7VPQ904M=y
+# CONFIG_TYPEC_MUX_PTN36502 is not set
+# CONFIG_TYPEC_MUX_WCD939X_USBSS is not set
+# end of USB Type-C Multiplexer/DeMultiplexer Switch support
+
+#
+# USB Type-C Alternate Mode drivers
+#
+CONFIG_TYPEC_DP_ALTMODE=y
+# CONFIG_TYPEC_NVIDIA_ALTMODE is not set
+# end of USB Type-C Alternate Mode drivers
+
+CONFIG_USB_ROLE_SWITCH=y
+CONFIG_MMC=m
+CONFIG_PWRSEQ_EMMC=m
+CONFIG_PWRSEQ_SIMPLE=m
+CONFIG_MMC_BLOCK=m
+CONFIG_MMC_BLOCK_MINORS=8
+# CONFIG_SDIO_UART is not set
+# CONFIG_MMC_TEST is not set
+
+#
+# MMC/SD/SDIO Host Controller Drivers
+#
+# CONFIG_MMC_DEBUG is not set
+# CONFIG_MMC_ARMMMCI is not set
+CONFIG_MMC_SDHCI=m
+CONFIG_MMC_SDHCI_IO_ACCESSORS=y
+# CONFIG_MMC_SDHCI_PCI is not set
+# CONFIG_MMC_SDHCI_ACPI is not set
+CONFIG_MMC_SDHCI_PLTFM=m
+# CONFIG_MMC_SDHCI_OF_ARASAN is not set
+# CONFIG_MMC_SDHCI_OF_AT91 is not set
+# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set
+# CONFIG_MMC_SDHCI_CADENCE is not set
+# CONFIG_MMC_SDHCI_F_SDH30 is not set
+# CONFIG_MMC_SDHCI_MILBEAUT is not set
+CONFIG_MMC_SDHCI_MSM=m
+# CONFIG_MMC_TIFM_SD is not set
+CONFIG_MMC_SPI=m
+# CONFIG_MMC_CB710 is not set
+# CONFIG_MMC_VIA_SDMMC is not set
+# CONFIG_MMC_DW is not set
+# CONFIG_MMC_VUB300 is not set
+# CONFIG_MMC_USHC is not set
+# CONFIG_MMC_USDHI6ROL0 is not set
+CONFIG_MMC_CQHCI=m
+CONFIG_MMC_HSQ=m
+# CONFIG_MMC_TOSHIBA_PCI is not set
+# CONFIG_MMC_MTK is not set
+# CONFIG_MMC_SDHCI_XENON is not set
+CONFIG_SCSI_UFSHCD=y
+CONFIG_SCSI_UFS_BSG=y
+# CONFIG_SCSI_UFS_HWMON is not set
+# CONFIG_SCSI_UFSHCD_PCI is not set
+CONFIG_SCSI_UFSHCD_PLATFORM=y
+# CONFIG_SCSI_UFS_CDNS_PLATFORM is not set
+# CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set
+CONFIG_SCSI_UFS_QCOM=y
+# CONFIG_MEMSTICK is not set
+CONFIG_NEW_LEDS=y
+CONFIG_LEDS_CLASS=y
+# CONFIG_LEDS_CLASS_FLASH is not set
+CONFIG_LEDS_CLASS_MULTICOLOR=y
+# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
+
+#
+# LED drivers
+#
+# CONFIG_LEDS_AN30259A is not set
+# CONFIG_LEDS_AW200XX is not set
+# CONFIG_LEDS_AW2013 is not set
+# CONFIG_LEDS_BCM6328 is not set
+# CONFIG_LEDS_BCM6358 is not set
+# CONFIG_LEDS_CR0014114 is not set
+# CONFIG_LEDS_EL15203000 is not set
+# CONFIG_LEDS_LM3530 is not set
+# CONFIG_LEDS_LM3532 is not set
+# CONFIG_LEDS_LM3642 is not set
+# CONFIG_LEDS_LM3692X is not set
+# CONFIG_LEDS_MT6323 is not set
+# CONFIG_LEDS_PCA9532 is not set
+CONFIG_LEDS_GPIO=m
+# CONFIG_LEDS_LP3944 is not set
+# CONFIG_LEDS_LP3952 is not set
+# CONFIG_LEDS_LP50XX is not set
+# CONFIG_LEDS_LP55XX_COMMON is not set
+# CONFIG_LEDS_LP8860 is not set
+# CONFIG_LEDS_PCA955X is not set
+# CONFIG_LEDS_PCA963X is not set
+# CONFIG_LEDS_PCA995X is not set
+# CONFIG_LEDS_DAC124S085 is not set
+CONFIG_LEDS_PWM=m
+# CONFIG_LEDS_REGULATOR is not set
+# CONFIG_LEDS_BD2606MVV is not set
+# CONFIG_LEDS_BD2802 is not set
+# CONFIG_LEDS_LT3593 is not set
+# CONFIG_LEDS_TCA6507 is not set
+# CONFIG_LEDS_TLC591XX is not set
+# CONFIG_LEDS_LM355x is not set
+# CONFIG_LEDS_IS31FL319X is not set
+# CONFIG_LEDS_IS31FL32XX is not set
+
+#
+# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
+#
+# CONFIG_LEDS_BLINKM is not set
+CONFIG_LEDS_SYSCON=y
+# CONFIG_LEDS_MLXREG is not set
+CONFIG_LEDS_USER=m
+# CONFIG_LEDS_SPI_BYTE is not set
+# CONFIG_LEDS_LM3697 is not set
+
+#
+# Flash and Torch LED drivers
+#
+
+#
+# RGB LED drivers
+#
+# CONFIG_LEDS_GROUP_MULTICOLOR is not set
+# CONFIG_LEDS_KTD202X is not set
+# CONFIG_LEDS_NCP5623 is not set
+# CONFIG_LEDS_PWM_MULTICOLOR is not set
+CONFIG_LEDS_QCOM_LPG=y
+
+#
+# LED Triggers
+#
+CONFIG_LEDS_TRIGGERS=y
+CONFIG_LEDS_TRIGGER_TIMER=y
+# CONFIG_LEDS_TRIGGER_ONESHOT is not set
+CONFIG_LEDS_TRIGGER_DISK=y
+CONFIG_LEDS_TRIGGER_HEARTBEAT=y
+# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set
+CONFIG_LEDS_TRIGGER_CPU=y
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
+# CONFIG_LEDS_TRIGGER_GPIO is not set
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
+
+#
+# iptables trigger is under Netfilter config (LED target)
+#
+# CONFIG_LEDS_TRIGGER_TRANSIENT is not set
+# CONFIG_LEDS_TRIGGER_CAMERA is not set
+CONFIG_LEDS_TRIGGER_PANIC=y
+CONFIG_LEDS_TRIGGER_NETDEV=m
+# CONFIG_LEDS_TRIGGER_PATTERN is not set
+CONFIG_LEDS_TRIGGER_AUDIO=m
+CONFIG_LEDS_TRIGGER_TTY=m
+
+#
+# Simple LED drivers
+#
+# CONFIG_ACCESSIBILITY is not set
+# CONFIG_INFINIBAND is not set
+CONFIG_EDAC_SUPPORT=y
+CONFIG_EDAC=y
+CONFIG_EDAC_LEGACY_SYSFS=y
+# CONFIG_EDAC_DEBUG is not set
+CONFIG_EDAC_GHES=y
+# CONFIG_EDAC_THUNDERX is not set
+# CONFIG_EDAC_XGENE is not set
+# CONFIG_EDAC_QCOM is not set
+# CONFIG_EDAC_DMC520 is not set
+CONFIG_RTC_LIB=y
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+CONFIG_RTC_SYSTOHC=y
+CONFIG_RTC_SYSTOHC_DEVICE="rtc0"
+# CONFIG_RTC_DEBUG is not set
+CONFIG_RTC_NVMEM=y
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
+# CONFIG_RTC_DRV_TEST is not set
+
+#
+# I2C RTC drivers
+#
+# CONFIG_RTC_DRV_ABB5ZES3 is not set
+# CONFIG_RTC_DRV_ABEOZ9 is not set
+# CONFIG_RTC_DRV_ABX80X is not set
+CONFIG_RTC_DRV_DS1307=m
+# CONFIG_RTC_DRV_DS1307_CENTURY is not set
+# CONFIG_RTC_DRV_DS1374 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+CONFIG_RTC_DRV_HYM8563=m
+# CONFIG_RTC_DRV_MAX6900 is not set
+# CONFIG_RTC_DRV_MAX31335 is not set
+CONFIG_RTC_DRV_MAX77686=y
+# CONFIG_RTC_DRV_NCT3018Y is not set
+# CONFIG_RTC_DRV_RS5C372 is not set
+# CONFIG_RTC_DRV_ISL1208 is not set
+# CONFIG_RTC_DRV_ISL12022 is not set
+# CONFIG_RTC_DRV_ISL12026 is not set
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_PCF8523 is not set
+# CONFIG_RTC_DRV_PCF85063 is not set
+CONFIG_RTC_DRV_PCF85363=m
+# CONFIG_RTC_DRV_PCF8563 is not set
+# CONFIG_RTC_DRV_PCF8583 is not set
+CONFIG_RTC_DRV_M41T80=m
+# CONFIG_RTC_DRV_M41T80_WDT is not set
+# CONFIG_RTC_DRV_BQ32K is not set
+# CONFIG_RTC_DRV_S35390A is not set
+# CONFIG_RTC_DRV_FM3130 is not set
+# CONFIG_RTC_DRV_RX8010 is not set
+CONFIG_RTC_DRV_RX8581=m
+# CONFIG_RTC_DRV_RX8025 is not set
+# CONFIG_RTC_DRV_EM3027 is not set
+CONFIG_RTC_DRV_RV3028=m
+# CONFIG_RTC_DRV_RV3032 is not set
+CONFIG_RTC_DRV_RV8803=m
+CONFIG_RTC_DRV_S5M=y
+# CONFIG_RTC_DRV_SD3078 is not set
+
+#
+# SPI RTC drivers
+#
+# CONFIG_RTC_DRV_M41T93 is not set
+# CONFIG_RTC_DRV_M41T94 is not set
+# CONFIG_RTC_DRV_DS1302 is not set
+# CONFIG_RTC_DRV_DS1305 is not set
+# CONFIG_RTC_DRV_DS1343 is not set
+# CONFIG_RTC_DRV_DS1347 is not set
+# CONFIG_RTC_DRV_DS1390 is not set
+# CONFIG_RTC_DRV_MAX6916 is not set
+# CONFIG_RTC_DRV_R9701 is not set
+# CONFIG_RTC_DRV_RX4581 is not set
+# CONFIG_RTC_DRV_RS5C348 is not set
+# CONFIG_RTC_DRV_MAX6902 is not set
+# CONFIG_RTC_DRV_PCF2123 is not set
+# CONFIG_RTC_DRV_MCP795 is not set
+CONFIG_RTC_I2C_AND_SPI=y
+
+#
+# SPI and I2C RTC drivers
+#
+CONFIG_RTC_DRV_DS3232=y
+CONFIG_RTC_DRV_DS3232_HWMON=y
+CONFIG_RTC_DRV_PCF2127=m
+# CONFIG_RTC_DRV_RV3029C2 is not set
+# CONFIG_RTC_DRV_RX6110 is not set
+
+#
+# Platform RTC drivers
+#
+# CONFIG_RTC_DRV_DS1286 is not set
+# CONFIG_RTC_DRV_DS1511 is not set
+# CONFIG_RTC_DRV_DS1553 is not set
+# CONFIG_RTC_DRV_DS1685_FAMILY is not set
+# CONFIG_RTC_DRV_DS1742 is not set
+# CONFIG_RTC_DRV_DS2404 is not set
+CONFIG_RTC_DRV_EFI=y
+# CONFIG_RTC_DRV_STK17TA8 is not set
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_M48T35 is not set
+# CONFIG_RTC_DRV_M48T59 is not set
+# CONFIG_RTC_DRV_MSM6242 is not set
+# CONFIG_RTC_DRV_RP5C01 is not set
+# CONFIG_RTC_DRV_OPTEE is not set
+# CONFIG_RTC_DRV_ZYNQMP is not set
+
+#
+# on-CPU RTC drivers
+#
+# CONFIG_RTC_DRV_PL030 is not set
+CONFIG_RTC_DRV_PL031=y
+# CONFIG_RTC_DRV_CADENCE is not set
+# CONFIG_RTC_DRV_FTRTC010 is not set
+CONFIG_RTC_DRV_PM8XXX=m
+# CONFIG_RTC_DRV_MT6397 is not set
+# CONFIG_RTC_DRV_R7301 is not set
+
+#
+# HID Sensor RTC drivers
+#
+# CONFIG_RTC_DRV_GOLDFISH is not set
+CONFIG_DMADEVICES=y
+# CONFIG_DMADEVICES_DEBUG is not set
+
+#
+# DMA Devices
+#
+CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y
+CONFIG_DMA_ENGINE=y
+CONFIG_DMA_VIRTUAL_CHANNELS=y
+CONFIG_DMA_ACPI=y
+CONFIG_DMA_OF=y
+# CONFIG_ALTERA_MSGDMA is not set
+# CONFIG_AMBA_PL08X is not set
+# CONFIG_BCM_SBA_RAID is not set
+# CONFIG_DW_AXI_DMAC is not set
+CONFIG_FSL_EDMA=y
+# CONFIG_FSL_QDMA is not set
+# CONFIG_INTEL_IDMA64 is not set
+CONFIG_MV_XOR_V2=y
+CONFIG_PL330_DMA=y
+# CONFIG_PLX_DMA is not set
+# CONFIG_XILINX_DMA is not set
+# CONFIG_XILINX_XDMA is not set
+# CONFIG_XILINX_ZYNQMP_DMA is not set
+# CONFIG_XILINX_ZYNQMP_DPDMA is not set
+CONFIG_QCOM_BAM_DMA=y
+CONFIG_QCOM_GPI_DMA=y
+CONFIG_QCOM_HIDMA_MGMT=y
+CONFIG_QCOM_HIDMA=y
+# CONFIG_DW_DMAC is not set
+# CONFIG_DW_DMAC_PCI is not set
+# CONFIG_DW_EDMA is not set
+# CONFIG_SF_PDMA is not set
+
+#
+# DMA Clients
+#
+# CONFIG_ASYNC_TX_DMA is not set
+# CONFIG_DMATEST is not set
+CONFIG_DMA_ENGINE_RAID=y
+
+#
+# DMABUF options
+#
+CONFIG_SYNC_FILE=y
+# CONFIG_SW_SYNC is not set
+# CONFIG_UDMABUF is not set
+# CONFIG_DMABUF_MOVE_NOTIFY is not set
+# CONFIG_DMABUF_DEBUG is not set
+# CONFIG_DMABUF_SELFTESTS is not set
+# CONFIG_DMABUF_HEAPS is not set
+# CONFIG_DMABUF_SYSFS_STATS is not set
+# end of DMABUF options
+
+# CONFIG_UIO is not set
+# CONFIG_VFIO is not set
+# CONFIG_VIRT_DRIVERS is not set
+CONFIG_VIRTIO_ANCHOR=y
+CONFIG_VIRTIO=y
+# CONFIG_VIRTIO_MENU is not set
+# CONFIG_VDPA is not set
+# CONFIG_VHOST_MENU is not set
+
+#
+# Microsoft Hyper-V guest support
+#
+# CONFIG_HYPERV is not set
+# end of Microsoft Hyper-V guest support
+
+# CONFIG_GREYBUS is not set
+# CONFIG_COMEDI is not set
+# CONFIG_STAGING is not set
+# CONFIG_GOLDFISH is not set
+# CONFIG_CHROME_PLATFORMS is not set
+# CONFIG_MELLANOX_PLATFORM is not set
+# CONFIG_SURFACE_PLATFORMS is not set
+CONFIG_HAVE_CLK=y
+CONFIG_HAVE_CLK_PREPARE=y
+CONFIG_COMMON_CLK=y
+
+#
+# Clock driver for ARM Reference designs
+#
+# CONFIG_CLK_ICST is not set
+# CONFIG_CLK_SP810 is not set
+# end of Clock driver for ARM Reference designs
+
+# CONFIG_LMK04832 is not set
+# CONFIG_COMMON_CLK_MAX77686 is not set
+# CONFIG_COMMON_CLK_MAX9485 is not set
+CONFIG_COMMON_CLK_SCMI=y
+CONFIG_COMMON_CLK_SCPI=y
+# CONFIG_COMMON_CLK_SI5341 is not set
+# CONFIG_COMMON_CLK_SI5351 is not set
+# CONFIG_COMMON_CLK_SI514 is not set
+# CONFIG_COMMON_CLK_SI544 is not set
+# CONFIG_COMMON_CLK_SI570 is not set
+# CONFIG_COMMON_CLK_CDCE706 is not set
+# CONFIG_COMMON_CLK_CDCE925 is not set
+# CONFIG_COMMON_CLK_CS2000_CP is not set
+# CONFIG_COMMON_CLK_S2MPS11 is not set
+# CONFIG_COMMON_CLK_AXI_CLKGEN is not set
+# CONFIG_COMMON_CLK_XGENE is not set
+CONFIG_COMMON_CLK_PWM=y
+# CONFIG_COMMON_CLK_RS9_PCIE is not set
+# CONFIG_COMMON_CLK_SI521XX is not set
+# CONFIG_COMMON_CLK_VC3 is not set
+# CONFIG_COMMON_CLK_VC5 is not set
+# CONFIG_COMMON_CLK_VC7 is not set
+CONFIG_COMMON_CLK_BD718XX=m
+# CONFIG_COMMON_CLK_FIXED_MMIO is not set
+CONFIG_QCOM_GDSC=y
+CONFIG_QCOM_RPMCC=y
+CONFIG_COMMON_CLK_QCOM=y
+# CONFIG_CLK_X1E80100_CAMCC is not set
+# CONFIG_CLK_X1E80100_DISPCC is not set
+# CONFIG_CLK_X1E80100_GCC is not set
+# CONFIG_CLK_X1E80100_GPUCC is not set
+# CONFIG_CLK_X1E80100_TCSRCC is not set
+# CONFIG_QCOM_A53PLL is not set
+# CONFIG_QCOM_A7PLL is not set
+# CONFIG_QCOM_CLK_APCS_MSM8916 is not set
+# CONFIG_QCOM_CLK_APCC_MSM8996 is not set
+CONFIG_QCOM_CLK_SMD_RPM=y
+CONFIG_QCOM_CLK_RPMH=y
+# CONFIG_IPQ_APSS_PLL is not set
+# CONFIG_IPQ_APSS_6018 is not set
+# CONFIG_IPQ_GCC_4019 is not set
+# CONFIG_IPQ_GCC_5018 is not set
+# CONFIG_IPQ_GCC_5332 is not set
+# CONFIG_IPQ_GCC_6018 is not set
+# CONFIG_IPQ_GCC_8074 is not set
+# CONFIG_IPQ_GCC_9574 is not set
+# CONFIG_MSM_GCC_8916 is not set
+# CONFIG_MSM_GCC_8917 is not set
+# CONFIG_MSM_GCC_8939 is not set
+# CONFIG_MSM_GCC_8953 is not set
+# CONFIG_MSM_GCC_8976 is not set
+# CONFIG_MSM_MMCC_8994 is not set
+# CONFIG_MSM_GCC_8994 is not set
+# CONFIG_MSM_GCC_8996 is not set
+# CONFIG_MSM_MMCC_8996 is not set
+# CONFIG_MSM_GCC_8998 is not set
+# CONFIG_MSM_GPUCC_8998 is not set
+# CONFIG_MSM_MMCC_8998 is not set
+# CONFIG_QCM_GCC_2290 is not set
+# CONFIG_QCM_DISPCC_2290 is not set
+# CONFIG_QCS_GCC_404 is not set
+# CONFIG_SC_CAMCC_7180 is not set
+# CONFIG_SC_CAMCC_7280 is not set
+# CONFIG_SC_CAMCC_8280XP is not set
+# CONFIG_SC_DISPCC_7180 is not set
+# CONFIG_SC_DISPCC_7280 is not set
+# CONFIG_SC_DISPCC_8280XP is not set
+# CONFIG_SA_GCC_8775P is not set
+# CONFIG_SA_GPUCC_8775P is not set
+# CONFIG_SC_GCC_7180 is not set
+# CONFIG_SC_GCC_7280 is not set
+# CONFIG_SC_GCC_8180X is not set
+# CONFIG_SC_GCC_8280XP is not set
+# CONFIG_SC_GPUCC_7180 is not set
+# CONFIG_SC_GPUCC_7280 is not set
+# CONFIG_SC_GPUCC_8280XP is not set
+# CONFIG_SC_LPASSCC_7280 is not set
+# CONFIG_SC_LPASSCC_8280XP is not set
+# CONFIG_SC_LPASS_CORECC_7180 is not set
+# CONFIG_SC_LPASS_CORECC_7280 is not set
+# CONFIG_SC_VIDEOCC_7180 is not set
+# CONFIG_SC_VIDEOCC_7280 is not set
+# CONFIG_SDM_CAMCC_845 is not set
+# CONFIG_SDM_GCC_660 is not set
+# CONFIG_SDM_MMCC_660 is not set
+# CONFIG_SDM_GPUCC_660 is not set
+# CONFIG_QCS_TURING_404 is not set
+# CONFIG_QCS_Q6SSTOP_404 is not set
+# CONFIG_QDU_GCC_1000 is not set
+# CONFIG_QDU_ECPRICC_1000 is not set
+# CONFIG_SDM_GCC_845 is not set
+# CONFIG_SDM_GPUCC_845 is not set
+# CONFIG_SDM_VIDEOCC_845 is not set
+# CONFIG_SDM_DISPCC_845 is not set
+# CONFIG_SDM_LPASSCC_845 is not set
+# CONFIG_SDX_GCC_75 is not set
+# CONFIG_SM_CAMCC_6350 is not set
+# CONFIG_SM_CAMCC_8250 is not set
+# CONFIG_SM_CAMCC_8450 is not set
+# CONFIG_SM_CAMCC_8550 is not set
+CONFIG_SM_DISPCC_8250=y
+# CONFIG_SM_DISPCC_8650 is not set
+# CONFIG_SM_GCC_4450 is not set
+# CONFIG_SM_GCC_6115 is not set
+# CONFIG_SM_GCC_6125 is not set
+# CONFIG_SM_GCC_6350 is not set
+# CONFIG_SM_GCC_6375 is not set
+# CONFIG_SM_GCC_7150 is not set
+# CONFIG_SM_GCC_8150 is not set
+CONFIG_SM_GCC_8250=y
+# CONFIG_SM_GCC_8350 is not set
+# CONFIG_SM_GCC_8450 is not set
+# CONFIG_SM_GCC_8550 is not set
+# CONFIG_SM_GCC_8650 is not set
+# CONFIG_SM_GPUCC_6115 is not set
+# CONFIG_SM_GPUCC_6125 is not set
+# CONFIG_SM_GPUCC_6375 is not set
+# CONFIG_SM_GPUCC_6350 is not set
+# CONFIG_SM_GPUCC_8150 is not set
+CONFIG_SM_GPUCC_8250=y
+# CONFIG_SM_GPUCC_8350 is not set
+# CONFIG_SM_GPUCC_8450 is not set
+# CONFIG_SM_GPUCC_8550 is not set
+# CONFIG_SM_GPUCC_8650 is not set
+# CONFIG_SM_TCSRCC_8550 is not set
+# CONFIG_SM_TCSRCC_8650 is not set
+# CONFIG_SM_VIDEOCC_8150 is not set
+CONFIG_SM_VIDEOCC_8250=y
+# CONFIG_SM_VIDEOCC_8350 is not set
+# CONFIG_SM_VIDEOCC_8550 is not set
+# CONFIG_SPMI_PMIC_CLKDIV is not set
+CONFIG_QCOM_HFPLL=y
+# CONFIG_KPSS_XCC is not set
+CONFIG_CLK_GFM_LPASS_SM8250=y
+# CONFIG_SM_VIDEOCC_8450 is not set
+# CONFIG_XILINX_VCU is not set
+# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
+CONFIG_HWSPINLOCK=y
+CONFIG_HWSPINLOCK_QCOM=y
+
+#
+# Clock Source drivers
+#
+CONFIG_TIMER_OF=y
+CONFIG_TIMER_ACPI=y
+CONFIG_TIMER_PROBE=y
+CONFIG_ARM_ARCH_TIMER=y
+CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
+# CONFIG_FSL_ERRATUM_A008585 is not set
+# CONFIG_HISILICON_ERRATUM_161010101 is not set
+# CONFIG_ARM64_ERRATUM_858921 is not set
+# end of Clock Source drivers
+
+CONFIG_MAILBOX=y
+CONFIG_ARM_MHU=y
+# CONFIG_ARM_MHU_V2 is not set
+CONFIG_PLATFORM_MHU=y
+# CONFIG_PL320_MBOX is not set
+CONFIG_PCC=y
+# CONFIG_ALTERA_MBOX is not set
+# CONFIG_MAILBOX_TEST is not set
+CONFIG_QCOM_APCS_IPC=y
+CONFIG_QCOM_IPCC=y
+CONFIG_IOMMU_IOVA=y
+CONFIG_IOMMU_API=y
+CONFIG_IOMMU_SUPPORT=y
+
+#
+# Generic IOMMU Pagetable Support
+#
+CONFIG_IOMMU_IO_PGTABLE=y
+CONFIG_IOMMU_IO_PGTABLE_LPAE=y
+# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set
+# CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set
+# CONFIG_IOMMU_IO_PGTABLE_DART is not set
+# end of Generic IOMMU Pagetable Support
+
+# CONFIG_IOMMU_DEBUGFS is not set
+CONFIG_IOMMU_DEFAULT_DMA_STRICT=y
+# CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set
+# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set
+CONFIG_OF_IOMMU=y
+CONFIG_IOMMU_DMA=y
+# CONFIG_IOMMUFD is not set
+CONFIG_ARM_SMMU=y
+# CONFIG_ARM_SMMU_LEGACY_DT_BINDINGS is not set
+CONFIG_ARM_SMMU_DISABLE_BYPASS_BY_DEFAULT=y
+CONFIG_ARM_SMMU_QCOM=y
+# CONFIG_ARM_SMMU_QCOM_DEBUG is not set
+CONFIG_ARM_SMMU_V3=y
+# CONFIG_ARM_SMMU_V3_SVA is not set
+CONFIG_QCOM_IOMMU=y
+# CONFIG_VIRTIO_IOMMU is not set
+
+#
+# Remoteproc drivers
+#
+CONFIG_REMOTEPROC=y
+CONFIG_REMOTEPROC_CDEV=y
+CONFIG_QCOM_PIL_INFO=m
+CONFIG_QCOM_RPROC_COMMON=m
+CONFIG_QCOM_Q6V5_COMMON=m
+# CONFIG_QCOM_Q6V5_ADSP is not set
+CONFIG_QCOM_Q6V5_MSS=m
+CONFIG_QCOM_Q6V5_PAS=m
+# CONFIG_QCOM_Q6V5_WCSS is not set
+CONFIG_QCOM_SYSMON=m
+CONFIG_QCOM_WCNSS_PIL=m
+# end of Remoteproc drivers
+
+#
+# Rpmsg drivers
+#
+CONFIG_RPMSG=y
+CONFIG_RPMSG_CHAR=m
+# CONFIG_RPMSG_CTRL is not set
+# CONFIG_RPMSG_NS is not set
+CONFIG_RPMSG_QCOM_GLINK=y
+CONFIG_RPMSG_QCOM_GLINK_RPM=y
+CONFIG_RPMSG_QCOM_GLINK_SMEM=m
+CONFIG_RPMSG_QCOM_SMD=y
+# CONFIG_RPMSG_VIRTIO is not set
+# end of Rpmsg drivers
+
+CONFIG_SOUNDWIRE=m
+
+#
+# SoundWire Devices
+#
+# CONFIG_SOUNDWIRE_AMD is not set
+# CONFIG_SOUNDWIRE_INTEL is not set
+CONFIG_SOUNDWIRE_QCOM=m
+
+#
+# SOC (System On Chip) specific Drivers
+#
+
+#
+# Amlogic SoC drivers
+#
+# end of Amlogic SoC drivers
+
+#
+# Broadcom SoC drivers
+#
+# end of Broadcom SoC drivers
+
+#
+# NXP/Freescale QorIQ SoC drivers
+#
+# CONFIG_QUICC_ENGINE is not set
+CONFIG_FSL_RCPM=y
+# end of NXP/Freescale QorIQ SoC drivers
+
+#
+# fujitsu SoC drivers
+#
+# CONFIG_A64FX_DIAG is not set
+# end of fujitsu SoC drivers
+
+#
+# i.MX SoC drivers
+#
+# end of i.MX SoC drivers
+
+#
+# Enable LiteX SoC Builder specific drivers
+#
+# CONFIG_LITEX_SOC_CONTROLLER is not set
+# end of Enable LiteX SoC Builder specific drivers
+
+# CONFIG_WPCM450_SOC is not set
+
+#
+# Qualcomm SoC drivers
+#
+CONFIG_QCOM_AOSS_QMP=y
+CONFIG_QCOM_COMMAND_DB=y
+CONFIG_QCOM_GENI_SE=y
+# CONFIG_QCOM_GSBI is not set
+CONFIG_QCOM_LLCC=y
+CONFIG_QCOM_KRYO_L2_ACCESSORS=y
+CONFIG_QCOM_MDT_LOADER=y
+# CONFIG_QCOM_OCMEM is not set
+CONFIG_QCOM_PDR_HELPERS=y
+# CONFIG_QCOM_PMIC_PDCHARGER_ULOG is not set
+# CONFIG_QCOM_PMIC_GLINK is not set
+CONFIG_QCOM_QMI_HELPERS=y
+# CONFIG_QCOM_RAMP_CTRL is not set
+CONFIG_QCOM_RMTFS_MEM=m
+# CONFIG_QCOM_RPM_MASTER_STATS is not set
+CONFIG_QCOM_RPMH=y
+CONFIG_QCOM_SMEM=y
+CONFIG_QCOM_SMD_RPM=y
+CONFIG_QCOM_SMEM_STATE=y
+CONFIG_QCOM_SMP2P=y
+CONFIG_QCOM_SMSM=y
+CONFIG_QCOM_SOCINFO=m
+# CONFIG_QCOM_SPM is not set
+CONFIG_QCOM_STATS=m
+CONFIG_QCOM_WCNSS_CTRL=m
+CONFIG_QCOM_APR=y
+# CONFIG_QCOM_ICC_BWMON is not set
+# CONFIG_QCOM_PBS is not set
+# end of Qualcomm SoC drivers
+
+# CONFIG_SOC_TI is not set
+
+#
+# Xilinx SoC drivers
+#
+# end of Xilinx SoC drivers
+# end of SOC (System On Chip) specific Drivers
+
+#
+# PM Domains
+#
+
+#
+# Amlogic PM Domains
+#
+# end of Amlogic PM Domains
+
+CONFIG_ARM_SCMI_PERF_DOMAIN=y
+CONFIG_ARM_SCMI_POWER_DOMAIN=y
+CONFIG_ARM_SCPI_POWER_DOMAIN=y
+
+#
+# Broadcom PM Domains
+#
+# end of Broadcom PM Domains
+
+#
+# i.MX PM Domains
+#
+# end of i.MX PM Domains
+
+#
+# Qualcomm PM Domains
+#
+CONFIG_QCOM_CPR=y
+CONFIG_QCOM_RPMHPD=y
+CONFIG_QCOM_RPMPD=y
+# end of Qualcomm PM Domains
+# end of PM Domains
+
+CONFIG_PM_DEVFREQ=y
+
+#
+# DEVFREQ Governors
+#
+CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y
+# CONFIG_DEVFREQ_GOV_PERFORMANCE is not set
+# CONFIG_DEVFREQ_GOV_POWERSAVE is not set
+# CONFIG_DEVFREQ_GOV_USERSPACE is not set
+# CONFIG_DEVFREQ_GOV_PASSIVE is not set
+
+#
+# DEVFREQ Drivers
+#
+# CONFIG_PM_DEVFREQ_EVENT is not set
+CONFIG_EXTCON=y
+
+#
+# Extcon Device Drivers
+#
+# CONFIG_EXTCON_ADC_JACK is not set
+# CONFIG_EXTCON_FSA9480 is not set
+# CONFIG_EXTCON_GPIO is not set
+# CONFIG_EXTCON_MAX3355 is not set
+CONFIG_EXTCON_PTN5150=m
+# CONFIG_EXTCON_QCOM_SPMI_MISC is not set
+# CONFIG_EXTCON_RT8973A is not set
+# CONFIG_EXTCON_SM5502 is not set
+CONFIG_EXTCON_USB_GPIO=y
+# CONFIG_EXTCON_USBC_TUSB320 is not set
+# CONFIG_MEMORY is not set
+CONFIG_IIO=y
+# CONFIG_IIO_BUFFER is not set
+# CONFIG_IIO_CONFIGFS is not set
+# CONFIG_IIO_TRIGGER is not set
+# CONFIG_IIO_SW_DEVICE is not set
+# CONFIG_IIO_SW_TRIGGER is not set
+# CONFIG_IIO_TRIGGERED_EVENT is not set
+
+#
+# Accelerometers
+#
+# CONFIG_ADIS16201 is not set
+# CONFIG_ADIS16209 is not set
+# CONFIG_ADXL313_I2C is not set
+# CONFIG_ADXL313_SPI is not set
+# CONFIG_ADXL345_I2C is not set
+# CONFIG_ADXL345_SPI is not set
+# CONFIG_ADXL355_I2C is not set
+# CONFIG_ADXL355_SPI is not set
+# CONFIG_ADXL367_SPI is not set
+# CONFIG_ADXL367_I2C is not set
+# CONFIG_ADXL372_SPI is not set
+# CONFIG_ADXL372_I2C is not set
+# CONFIG_BMA180 is not set
+# CONFIG_BMA220 is not set
+# CONFIG_BMA400 is not set
+# CONFIG_BMC150_ACCEL is not set
+# CONFIG_BMI088_ACCEL is not set
+# CONFIG_DA280 is not set
+# CONFIG_DA311 is not set
+# CONFIG_DMARD06 is not set
+# CONFIG_DMARD09 is not set
+# CONFIG_DMARD10 is not set
+# CONFIG_FXLS8962AF_I2C is not set
+# CONFIG_FXLS8962AF_SPI is not set
+# CONFIG_IIO_ST_ACCEL_3AXIS is not set
+# CONFIG_IIO_KX022A_SPI is not set
+# CONFIG_IIO_KX022A_I2C is not set
+# CONFIG_KXSD9 is not set
+# CONFIG_KXCJK1013 is not set
+# CONFIG_MC3230 is not set
+# CONFIG_MMA7455_I2C is not set
+# CONFIG_MMA7455_SPI is not set
+# CONFIG_MMA7660 is not set
+# CONFIG_MMA8452 is not set
+# CONFIG_MMA9551 is not set
+# CONFIG_MMA9553 is not set
+# CONFIG_MSA311 is not set
+# CONFIG_MXC4005 is not set
+# CONFIG_MXC6255 is not set
+# CONFIG_SCA3000 is not set
+# CONFIG_SCA3300 is not set
+# CONFIG_STK8312 is not set
+# CONFIG_STK8BA50 is not set
+# end of Accelerometers
+
+#
+# Analog to digital converters
+#
+# CONFIG_AD4130 is not set
+# CONFIG_AD7091R5 is not set
+# CONFIG_AD7091R8 is not set
+# CONFIG_AD7124 is not set
+# CONFIG_AD7192 is not set
+# CONFIG_AD7266 is not set
+# CONFIG_AD7280 is not set
+# CONFIG_AD7291 is not set
+# CONFIG_AD7292 is not set
+# CONFIG_AD7298 is not set
+# CONFIG_AD7476 is not set
+# CONFIG_AD7606_IFACE_PARALLEL is not set
+# CONFIG_AD7606_IFACE_SPI is not set
+# CONFIG_AD7766 is not set
+# CONFIG_AD7768_1 is not set
+# CONFIG_AD7780 is not set
+# CONFIG_AD7791 is not set
+# CONFIG_AD7793 is not set
+# CONFIG_AD7887 is not set
+# CONFIG_AD7923 is not set
+# CONFIG_AD7949 is not set
+# CONFIG_AD799X is not set
+# CONFIG_AD9467 is not set
+# CONFIG_ADI_AXI_ADC is not set
+# CONFIG_AXP20X_ADC is not set
+# CONFIG_AXP288_ADC is not set
+# CONFIG_CC10001_ADC is not set
+# CONFIG_ENVELOPE_DETECTOR is not set
+# CONFIG_HI8435 is not set
+# CONFIG_HX711 is not set
+# CONFIG_INA2XX_ADC is not set
+# CONFIG_LTC2309 is not set
+# CONFIG_LTC2471 is not set
+# CONFIG_LTC2485 is not set
+# CONFIG_LTC2496 is not set
+# CONFIG_LTC2497 is not set
+# CONFIG_MAX1027 is not set
+# CONFIG_MAX11100 is not set
+# CONFIG_MAX1118 is not set
+# CONFIG_MAX11205 is not set
+# CONFIG_MAX11410 is not set
+# CONFIG_MAX1241 is not set
+# CONFIG_MAX1363 is not set
+# CONFIG_MAX34408 is not set
+# CONFIG_MAX9611 is not set
+# CONFIG_MCP320X is not set
+# CONFIG_MCP3422 is not set
+# CONFIG_MCP3564 is not set
+# CONFIG_MCP3911 is not set
+# CONFIG_NAU7802 is not set
+# CONFIG_PAC1934 is not set
+CONFIG_QCOM_VADC_COMMON=m
+CONFIG_QCOM_SPMI_RRADC=m
+CONFIG_QCOM_SPMI_IADC=m
+CONFIG_QCOM_SPMI_VADC=m
+CONFIG_QCOM_SPMI_ADC5=m
+# CONFIG_RICHTEK_RTQ6056 is not set
+# CONFIG_SD_ADC_MODULATOR is not set
+# CONFIG_TI_ADC081C is not set
+# CONFIG_TI_ADC0832 is not set
+# CONFIG_TI_ADC084S021 is not set
+# CONFIG_TI_ADC12138 is not set
+# CONFIG_TI_ADC108S102 is not set
+# CONFIG_TI_ADC128S052 is not set
+# CONFIG_TI_ADC161S626 is not set
+# CONFIG_TI_ADS1015 is not set
+# CONFIG_TI_ADS7924 is not set
+# CONFIG_TI_ADS1100 is not set
+# CONFIG_TI_ADS1298 is not set
+# CONFIG_TI_ADS7950 is not set
+# CONFIG_TI_ADS8344 is not set
+# CONFIG_TI_ADS8688 is not set
+# CONFIG_TI_ADS124S08 is not set
+# CONFIG_TI_ADS131E08 is not set
+# CONFIG_TI_LMP92064 is not set
+# CONFIG_TI_TLC4541 is not set
+# CONFIG_TI_TSC2046 is not set
+# CONFIG_VF610_ADC is not set
+# CONFIG_XILINX_XADC is not set
+# end of Analog to digital converters
+
+#
+# Analog to digital and digital to analog converters
+#
+# CONFIG_AD74115 is not set
+# CONFIG_AD74413R is not set
+# end of Analog to digital and digital to analog converters
+
+#
+# Analog Front Ends
+#
+# CONFIG_IIO_RESCALE is not set
+# end of Analog Front Ends
+
+#
+# Amplifiers
+#
+# CONFIG_AD8366 is not set
+# CONFIG_ADA4250 is not set
+# CONFIG_HMC425 is not set
+# end of Amplifiers
+
+#
+# Capacitance to digital converters
+#
+# CONFIG_AD7150 is not set
+# CONFIG_AD7746 is not set
+# end of Capacitance to digital converters
+
+#
+# Chemical Sensors
+#
+# CONFIG_AOSONG_AGS02MA is not set
+# CONFIG_ATLAS_PH_SENSOR is not set
+# CONFIG_ATLAS_EZO_SENSOR is not set
+# CONFIG_BME680 is not set
+# CONFIG_CCS811 is not set
+# CONFIG_IAQCORE is not set
+# CONFIG_PMS7003 is not set
+# CONFIG_SCD30_CORE is not set
+# CONFIG_SCD4X is not set
+# CONFIG_SENSIRION_SGP30 is not set
+# CONFIG_SENSIRION_SGP40 is not set
+# CONFIG_SPS30_I2C is not set
+# CONFIG_SPS30_SERIAL is not set
+# CONFIG_SENSEAIR_SUNRISE_CO2 is not set
+# CONFIG_VZ89X is not set
+# end of Chemical Sensors
+
+#
+# Hid Sensor IIO Common
+#
+# end of Hid Sensor IIO Common
+
+#
+# IIO SCMI Sensors
+#
+# CONFIG_IIO_SCMI is not set
+# end of IIO SCMI Sensors
+
+#
+# SSP Sensor Common
+#
+# CONFIG_IIO_SSP_SENSORHUB is not set
+# end of SSP Sensor Common
+
+#
+# Digital to analog converters
+#
+# CONFIG_AD3552R is not set
+# CONFIG_AD5064 is not set
+# CONFIG_AD5360 is not set
+# CONFIG_AD5380 is not set
+# CONFIG_AD5421 is not set
+# CONFIG_AD5446 is not set
+# CONFIG_AD5449 is not set
+# CONFIG_AD5592R is not set
+# CONFIG_AD5593R is not set
+# CONFIG_AD5504 is not set
+# CONFIG_AD5624R_SPI is not set
+# CONFIG_LTC2688 is not set
+# CONFIG_AD5686_SPI is not set
+# CONFIG_AD5696_I2C is not set
+# CONFIG_AD5755 is not set
+# CONFIG_AD5758 is not set
+# CONFIG_AD5761 is not set
+# CONFIG_AD5764 is not set
+# CONFIG_AD5766 is not set
+# CONFIG_AD5770R is not set
+# CONFIG_AD5791 is not set
+# CONFIG_AD7293 is not set
+# CONFIG_AD7303 is not set
+# CONFIG_AD8801 is not set
+# CONFIG_DPOT_DAC is not set
+# CONFIG_DS4424 is not set
+# CONFIG_LTC1660 is not set
+# CONFIG_LTC2632 is not set
+# CONFIG_M62332 is not set
+# CONFIG_MAX517 is not set
+# CONFIG_MAX5522 is not set
+# CONFIG_MAX5821 is not set
+# CONFIG_MCP4725 is not set
+# CONFIG_MCP4728 is not set
+# CONFIG_MCP4821 is not set
+# CONFIG_MCP4922 is not set
+# CONFIG_TI_DAC082S085 is not set
+# CONFIG_TI_DAC5571 is not set
+# CONFIG_TI_DAC7311 is not set
+# CONFIG_TI_DAC7612 is not set
+# CONFIG_VF610_DAC is not set
+# end of Digital to analog converters
+
+#
+# IIO dummy driver
+#
+# end of IIO dummy driver
+
+#
+# Filters
+#
+# CONFIG_ADMV8818 is not set
+# end of Filters
+
+#
+# Frequency Synthesizers DDS/PLL
+#
+
+#
+# Clock Generator/Distribution
+#
+# CONFIG_AD9523 is not set
+# end of Clock Generator/Distribution
+
+#
+# Phase-Locked Loop (PLL) frequency synthesizers
+#
+# CONFIG_ADF4350 is not set
+# CONFIG_ADF4371 is not set
+# CONFIG_ADF4377 is not set
+# CONFIG_ADMFM2000 is not set
+# CONFIG_ADMV1013 is not set
+# CONFIG_ADMV1014 is not set
+# CONFIG_ADMV4420 is not set
+# CONFIG_ADRF6780 is not set
+# end of Phase-Locked Loop (PLL) frequency synthesizers
+# end of Frequency Synthesizers DDS/PLL
+
+#
+# Digital gyroscope sensors
+#
+# CONFIG_ADIS16080 is not set
+# CONFIG_ADIS16130 is not set
+# CONFIG_ADIS16136 is not set
+# CONFIG_ADIS16260 is not set
+# CONFIG_ADXRS290 is not set
+# CONFIG_ADXRS450 is not set
+# CONFIG_BMG160 is not set
+# CONFIG_FXAS21002C is not set
+# CONFIG_MPU3050_I2C is not set
+# CONFIG_IIO_ST_GYRO_3AXIS is not set
+# CONFIG_ITG3200 is not set
+# end of Digital gyroscope sensors
+
+#
+# Health Sensors
+#
+
+#
+# Heart Rate Monitors
+#
+# CONFIG_AFE4403 is not set
+# CONFIG_AFE4404 is not set
+# CONFIG_MAX30100 is not set
+# CONFIG_MAX30102 is not set
+# end of Heart Rate Monitors
+# end of Health Sensors
+
+#
+# Humidity sensors
+#
+# CONFIG_AM2315 is not set
+# CONFIG_DHT11 is not set
+# CONFIG_HDC100X is not set
+# CONFIG_HDC2010 is not set
+# CONFIG_HDC3020 is not set
+# CONFIG_HTS221 is not set
+# CONFIG_HTU21 is not set
+# CONFIG_SI7005 is not set
+# CONFIG_SI7020 is not set
+# end of Humidity sensors
+
+#
+# Inertial measurement units
+#
+# CONFIG_ADIS16400 is not set
+# CONFIG_ADIS16460 is not set
+# CONFIG_ADIS16475 is not set
+# CONFIG_ADIS16480 is not set
+# CONFIG_BMI160_I2C is not set
+# CONFIG_BMI160_SPI is not set
+# CONFIG_BMI323_I2C is not set
+# CONFIG_BMI323_SPI is not set
+# CONFIG_BOSCH_BNO055_SERIAL is not set
+# CONFIG_BOSCH_BNO055_I2C is not set
+# CONFIG_FXOS8700_I2C is not set
+# CONFIG_FXOS8700_SPI is not set
+# CONFIG_KMX61 is not set
+# CONFIG_INV_ICM42600_I2C is not set
+# CONFIG_INV_ICM42600_SPI is not set
+# CONFIG_INV_MPU6050_I2C is not set
+# CONFIG_INV_MPU6050_SPI is not set
+# CONFIG_IIO_ST_LSM6DSX is not set
+# CONFIG_IIO_ST_LSM9DS0 is not set
+# end of Inertial measurement units
+
+#
+# Light sensors
+#
+# CONFIG_ACPI_ALS is not set
+# CONFIG_ADJD_S311 is not set
+# CONFIG_ADUX1020 is not set
+# CONFIG_AL3010 is not set
+# CONFIG_AL3320A is not set
+# CONFIG_APDS9300 is not set
+# CONFIG_APDS9960 is not set
+# CONFIG_AS73211 is not set
+# CONFIG_BH1750 is not set
+# CONFIG_BH1780 is not set
+# CONFIG_CM32181 is not set
+# CONFIG_CM3232 is not set
+# CONFIG_CM3323 is not set
+# CONFIG_CM3605 is not set
+# CONFIG_CM36651 is not set
+# CONFIG_GP2AP002 is not set
+# CONFIG_GP2AP020A00F is not set
+# CONFIG_SENSORS_ISL29018 is not set
+# CONFIG_SENSORS_ISL29028 is not set
+# CONFIG_ISL29125 is not set
+# CONFIG_ISL76682 is not set
+# CONFIG_JSA1212 is not set
+# CONFIG_ROHM_BU27008 is not set
+# CONFIG_ROHM_BU27034 is not set
+# CONFIG_RPR0521 is not set
+# CONFIG_LTR390 is not set
+# CONFIG_LTR501 is not set
+# CONFIG_LTRF216A is not set
+# CONFIG_LV0104CS is not set
+# CONFIG_MAX44000 is not set
+# CONFIG_MAX44009 is not set
+# CONFIG_NOA1305 is not set
+# CONFIG_OPT3001 is not set
+# CONFIG_OPT4001 is not set
+# CONFIG_PA12203001 is not set
+# CONFIG_SI1133 is not set
+# CONFIG_SI1145 is not set
+# CONFIG_STK3310 is not set
+# CONFIG_ST_UVIS25 is not set
+# CONFIG_TCS3414 is not set
+# CONFIG_TCS3472 is not set
+# CONFIG_SENSORS_TSL2563 is not set
+# CONFIG_TSL2583 is not set
+# CONFIG_TSL2591 is not set
+# CONFIG_TSL2772 is not set
+# CONFIG_TSL4531 is not set
+# CONFIG_US5182D is not set
+# CONFIG_VCNL4000 is not set
+# CONFIG_VCNL4035 is not set
+# CONFIG_VEML6030 is not set
+# CONFIG_VEML6070 is not set
+# CONFIG_VEML6075 is not set
+# CONFIG_VL6180 is not set
+# CONFIG_ZOPT2201 is not set
+# end of Light sensors
+
+#
+# Magnetometer sensors
+#
+# CONFIG_AF8133J is not set
+# CONFIG_AK8974 is not set
+# CONFIG_AK8975 is not set
+# CONFIG_AK09911 is not set
+# CONFIG_BMC150_MAGN_I2C is not set
+# CONFIG_BMC150_MAGN_SPI is not set
+# CONFIG_MAG3110 is not set
+# CONFIG_MMC35240 is not set
+# CONFIG_IIO_ST_MAGN_3AXIS is not set
+# CONFIG_SENSORS_HMC5843_I2C is not set
+# CONFIG_SENSORS_HMC5843_SPI is not set
+# CONFIG_SENSORS_RM3100_I2C is not set
+# CONFIG_SENSORS_RM3100_SPI is not set
+# CONFIG_TI_TMAG5273 is not set
+# CONFIG_YAMAHA_YAS530 is not set
+# end of Magnetometer sensors
+
+#
+# Multiplexers
+#
+# CONFIG_IIO_MUX is not set
+# end of Multiplexers
+
+#
+# Inclinometer sensors
+#
+# end of Inclinometer sensors
+
+#
+# Linear and angular position sensors
+#
+# end of Linear and angular position sensors
+
+#
+# Digital potentiometers
+#
+# CONFIG_AD5110 is not set
+# CONFIG_AD5272 is not set
+# CONFIG_DS1803 is not set
+# CONFIG_MAX5432 is not set
+# CONFIG_MAX5481 is not set
+# CONFIG_MAX5487 is not set
+# CONFIG_MCP4018 is not set
+# CONFIG_MCP4131 is not set
+# CONFIG_MCP4531 is not set
+# CONFIG_MCP41010 is not set
+# CONFIG_TPL0102 is not set
+# CONFIG_X9250 is not set
+# end of Digital potentiometers
+
+#
+# Digital potentiostats
+#
+# CONFIG_LMP91000 is not set
+# end of Digital potentiostats
+
+#
+# Pressure sensors
+#
+# CONFIG_ABP060MG is not set
+# CONFIG_ROHM_BM1390 is not set
+# CONFIG_BMP280 is not set
+# CONFIG_DLHL60D is not set
+# CONFIG_DPS310 is not set
+# CONFIG_HP03 is not set
+# CONFIG_HSC030PA is not set
+# CONFIG_ICP10100 is not set
+# CONFIG_MPL115_I2C is not set
+# CONFIG_MPL115_SPI is not set
+# CONFIG_MPL3115 is not set
+# CONFIG_MPRLS0025PA is not set
+# CONFIG_MS5611 is not set
+# CONFIG_MS5637 is not set
+# CONFIG_IIO_ST_PRESS is not set
+# CONFIG_T5403 is not set
+# CONFIG_HP206C is not set
+# CONFIG_ZPA2326 is not set
+# end of Pressure sensors
+
+#
+# Lightning sensors
+#
+# CONFIG_AS3935 is not set
+# end of Lightning sensors
+
+#
+# Proximity and distance sensors
+#
+# CONFIG_IRSD200 is not set
+# CONFIG_ISL29501 is not set
+# CONFIG_LIDAR_LITE_V2 is not set
+# CONFIG_MB1232 is not set
+# CONFIG_PING is not set
+# CONFIG_RFD77402 is not set
+# CONFIG_SRF04 is not set
+# CONFIG_SX9310 is not set
+# CONFIG_SX9324 is not set
+# CONFIG_SX9360 is not set
+# CONFIG_SX9500 is not set
+# CONFIG_SRF08 is not set
+# CONFIG_VCNL3020 is not set
+# CONFIG_VL53L0X_I2C is not set
+# end of Proximity and distance sensors
+
+#
+# Resolver to digital converters
+#
+# CONFIG_AD2S90 is not set
+# CONFIG_AD2S1200 is not set
+# CONFIG_AD2S1210 is not set
+# end of Resolver to digital converters
+
+#
+# Temperature sensors
+#
+# CONFIG_LTC2983 is not set
+# CONFIG_MAXIM_THERMOCOUPLE is not set
+# CONFIG_MLX90614 is not set
+# CONFIG_MLX90632 is not set
+# CONFIG_MLX90635 is not set
+# CONFIG_TMP006 is not set
+# CONFIG_TMP007 is not set
+# CONFIG_TMP117 is not set
+# CONFIG_TSYS01 is not set
+# CONFIG_TSYS02D is not set
+# CONFIG_MAX30208 is not set
+# CONFIG_MAX31856 is not set
+# CONFIG_MAX31865 is not set
+# CONFIG_MCP9600 is not set
+# end of Temperature sensors
+
+# CONFIG_NTB is not set
+CONFIG_PWM=y
+CONFIG_PWM_SYSFS=y
+# CONFIG_PWM_DEBUG is not set
+# CONFIG_PWM_ATMEL_TCB is not set
+# CONFIG_PWM_CLK is not set
+# CONFIG_PWM_DWC is not set
+# CONFIG_PWM_FSL_FTM is not set
+# CONFIG_PWM_PCA9685 is not set
+# CONFIG_PWM_XILINX is not set
+
+#
+# IRQ chip support
+#
+CONFIG_IRQCHIP=y
+CONFIG_ARM_GIC=y
+CONFIG_ARM_GIC_MAX_NR=1
+CONFIG_ARM_GIC_V2M=y
+CONFIG_ARM_GIC_V3=y
+CONFIG_ARM_GIC_V3_ITS=y
+CONFIG_ARM_GIC_V3_ITS_PCI=y
+# CONFIG_AL_FIC is not set
+# CONFIG_XILINX_INTC is not set
+CONFIG_PARTITION_PERCPU=y
+CONFIG_QCOM_IRQ_COMBINER=y
+CONFIG_QCOM_PDC=y
+# CONFIG_QCOM_MPM is not set
+# end of IRQ chip support
+
+# CONFIG_IPACK_BUS is not set
+CONFIG_RESET_CONTROLLER=y
+# CONFIG_RESET_GPIO is not set
+CONFIG_RESET_QCOM_AOSS=y
+CONFIG_RESET_QCOM_PDC=m
+CONFIG_RESET_SCMI=y
+# CONFIG_RESET_SIMPLE is not set
+# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RESET_TI_TPS380X is not set
+
+#
+# PHY Subsystem
+#
+CONFIG_GENERIC_PHY=y
+# CONFIG_PHY_CAN_TRANSCEIVER is not set
+
+#
+# PHY drivers for Broadcom platforms
+#
+# CONFIG_BCM_KONA_USB2_PHY is not set
+# end of PHY drivers for Broadcom platforms
+
+# CONFIG_PHY_CADENCE_TORRENT is not set
+# CONFIG_PHY_CADENCE_DPHY is not set
+# CONFIG_PHY_CADENCE_DPHY_RX is not set
+# CONFIG_PHY_CADENCE_SIERRA is not set
+# CONFIG_PHY_CADENCE_SALVO is not set
+# CONFIG_PHY_PXA_28NM_HSIC is not set
+# CONFIG_PHY_PXA_28NM_USB2 is not set
+# CONFIG_PHY_LAN966X_SERDES is not set
+# CONFIG_PHY_CPCAP_USB is not set
+# CONFIG_PHY_MAPPHONE_MDM6600 is not set
+# CONFIG_PHY_OCELOT_SERDES is not set
+# CONFIG_PHY_QCOM_APQ8064_SATA is not set
+# CONFIG_PHY_QCOM_EDP is not set
+# CONFIG_PHY_QCOM_IPQ4019_USB is not set
+# CONFIG_PHY_QCOM_IPQ806X_SATA is not set
+# CONFIG_PHY_QCOM_PCIE2 is not set
+CONFIG_PHY_QCOM_QMP=y
+CONFIG_PHY_QCOM_QMP_COMBO=y
+CONFIG_PHY_QCOM_QMP_PCIE=y
+CONFIG_PHY_QCOM_QMP_PCIE_8996=y
+CONFIG_PHY_QCOM_QMP_UFS=y
+CONFIG_PHY_QCOM_QMP_USB=y
+# CONFIG_PHY_QCOM_QMP_USB_LEGACY is not set
+CONFIG_PHY_QCOM_QUSB2=m
+# CONFIG_PHY_QCOM_SNPS_EUSB2 is not set
+# CONFIG_PHY_QCOM_EUSB2_REPEATER is not set
+# CONFIG_PHY_QCOM_M31_USB is not set
+CONFIG_PHY_QCOM_USB_HS=y
+CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2=y
+# CONFIG_PHY_QCOM_USB_HSIC is not set
+# CONFIG_PHY_QCOM_USB_HS_28NM is not set
+# CONFIG_PHY_QCOM_USB_SS is not set
+# CONFIG_PHY_QCOM_IPQ806X_USB is not set
+# CONFIG_PHY_QCOM_SGMII_ETH is not set
+# CONFIG_PHY_SAMSUNG_USB2 is not set
+# CONFIG_PHY_TUSB1210 is not set
+# end of PHY Subsystem
+
+# CONFIG_POWERCAP is not set
+# CONFIG_MCB is not set
+
+#
+# Performance monitor support
+#
+# CONFIG_ARM_CCI_PMU is not set
+# CONFIG_ARM_CCN is not set
+# CONFIG_ARM_CMN is not set
+CONFIG_ARM_PMU=y
+CONFIG_ARM_PMU_ACPI=y
+CONFIG_ARM_SMMU_V3_PMU=m
+CONFIG_ARM_PMUV3=y
+# CONFIG_ARM_DSU_PMU is not set
+CONFIG_QCOM_L2_PMU=y
+CONFIG_QCOM_L3_PMU=y
+# CONFIG_ARM_SPE_PMU is not set
+# CONFIG_ARM_DMC620_PMU is not set
+# CONFIG_ALIBABA_UNCORE_DRW_PMU is not set
+CONFIG_HISI_PMU=y
+# CONFIG_HISI_PCIE_PMU is not set
+# CONFIG_HNS3_PMU is not set
+# CONFIG_DWC_PCIE_PMU is not set
+# CONFIG_ARM_CORESIGHT_PMU_ARCH_SYSTEM_PMU is not set
+# end of Performance monitor support
+
+CONFIG_RAS=y
+# CONFIG_USB4 is not set
+
+#
+# Android
+#
+CONFIG_ANDROID_BINDER_IPC=y
+# CONFIG_ANDROID_BINDERFS is not set
+CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder"
+# CONFIG_ANDROID_BINDER_IPC_SELFTEST is not set
+# end of Android
+
+# CONFIG_LIBNVDIMM is not set
+# CONFIG_DAX is not set
+CONFIG_NVMEM=y
+CONFIG_NVMEM_SYSFS=y
+CONFIG_NVMEM_LAYOUTS=y
+
+#
+# Layout Types
+#
+# CONFIG_NVMEM_LAYOUT_SL28_VPD is not set
+# CONFIG_NVMEM_LAYOUT_ONIE_TLV is not set
+# end of Layout Types
+
+CONFIG_NVMEM_QCOM_QFPROM=y
+# CONFIG_NVMEM_QCOM_SEC_QFPROM is not set
+CONFIG_NVMEM_RMEM=m
+# CONFIG_NVMEM_SPMI_SDAM is not set
+
+#
+# HW tracing support
+#
+# CONFIG_STM is not set
+# CONFIG_INTEL_TH is not set
+# CONFIG_HISI_PTT is not set
+# end of HW tracing support
+
+# CONFIG_FPGA is not set
+# CONFIG_FSI is not set
+CONFIG_TEE=y
+CONFIG_OPTEE=y
+# CONFIG_OPTEE_INSECURE_LOAD_IMAGE is not set
+CONFIG_PM_OPP=y
+# CONFIG_SIOX is not set
+CONFIG_SLIMBUS=m
+CONFIG_SLIM_QCOM_CTRL=m
+CONFIG_SLIM_QCOM_NGD_CTRL=m
+CONFIG_INTERCONNECT=y
+CONFIG_INTERCONNECT_QCOM=y
+CONFIG_INTERCONNECT_QCOM_BCM_VOTER=y
+# CONFIG_INTERCONNECT_QCOM_MSM8909 is not set
+# CONFIG_INTERCONNECT_QCOM_MSM8916 is not set
+# CONFIG_INTERCONNECT_QCOM_MSM8939 is not set
+# CONFIG_INTERCONNECT_QCOM_MSM8974 is not set
+# CONFIG_INTERCONNECT_QCOM_MSM8996 is not set
+CONFIG_INTERCONNECT_QCOM_OSM_L3=y
+# CONFIG_INTERCONNECT_QCOM_QCM2290 is not set
+# CONFIG_INTERCONNECT_QCOM_QCS404 is not set
+# CONFIG_INTERCONNECT_QCOM_QDU1000 is not set
+CONFIG_INTERCONNECT_QCOM_RPMH_POSSIBLE=y
+CONFIG_INTERCONNECT_QCOM_RPMH=y
+# CONFIG_INTERCONNECT_QCOM_SA8775P is not set
+# CONFIG_INTERCONNECT_QCOM_SC7180 is not set
+# CONFIG_INTERCONNECT_QCOM_SC7280 is not set
+# CONFIG_INTERCONNECT_QCOM_SC8180X is not set
+# CONFIG_INTERCONNECT_QCOM_SC8280XP is not set
+# CONFIG_INTERCONNECT_QCOM_SDM660 is not set
+# CONFIG_INTERCONNECT_QCOM_SDM670 is not set
+# CONFIG_INTERCONNECT_QCOM_SDM845 is not set
+# CONFIG_INTERCONNECT_QCOM_SDX55 is not set
+# CONFIG_INTERCONNECT_QCOM_SDX65 is not set
+# CONFIG_INTERCONNECT_QCOM_SDX75 is not set
+# CONFIG_INTERCONNECT_QCOM_SM6115 is not set
+# CONFIG_INTERCONNECT_QCOM_SM6350 is not set
+# CONFIG_INTERCONNECT_QCOM_SM7150 is not set
+# CONFIG_INTERCONNECT_QCOM_SM8150 is not set
+CONFIG_INTERCONNECT_QCOM_SM8250=y
+# CONFIG_INTERCONNECT_QCOM_SM8350 is not set
+# CONFIG_INTERCONNECT_QCOM_SM8450 is not set
+# CONFIG_INTERCONNECT_QCOM_SM8550 is not set
+# CONFIG_INTERCONNECT_QCOM_SM8650 is not set
+# CONFIG_INTERCONNECT_QCOM_X1E80100 is not set
+# CONFIG_COUNTER is not set
+# CONFIG_MOST is not set
+# CONFIG_PECI is not set
+# CONFIG_HTE is not set
+# CONFIG_CDX_BUS is not set
+# end of Device Drivers
+
+#
+# File systems
+#
+CONFIG_DCACHE_WORD_ACCESS=y
+# CONFIG_VALIDATE_FS_PARSER is not set
+CONFIG_FS_IOMAP=y
+CONFIG_FS_STACK=y
+CONFIG_BUFFER_HEAD=y
+CONFIG_LEGACY_DIRECT_IO=y
+CONFIG_EXT2_FS=y
+# CONFIG_EXT2_FS_XATTR is not set
+CONFIG_EXT3_FS=y
+# CONFIG_EXT3_FS_POSIX_ACL is not set
+# CONFIG_EXT3_FS_SECURITY is not set
+CONFIG_EXT4_FS=y
+CONFIG_EXT4_FS_POSIX_ACL=y
+CONFIG_EXT4_FS_SECURITY=y
+# CONFIG_EXT4_DEBUG is not set
+CONFIG_JBD2=y
+# CONFIG_JBD2_DEBUG is not set
+CONFIG_FS_MBCACHE=y
+# CONFIG_REISERFS_FS is not set
+# CONFIG_JFS_FS is not set
+# CONFIG_XFS_FS is not set
+# CONFIG_GFS2_FS is not set
+# CONFIG_OCFS2_FS is not set
+CONFIG_BTRFS_FS=y
+# CONFIG_BTRFS_FS_POSIX_ACL is not set
+# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
+# CONFIG_BTRFS_DEBUG is not set
+# CONFIG_BTRFS_ASSERT is not set
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
+# CONFIG_NILFS2_FS is not set
+CONFIG_F2FS_FS=y
+CONFIG_F2FS_STAT_FS=y
+CONFIG_F2FS_FS_XATTR=y
+CONFIG_F2FS_FS_POSIX_ACL=y
+# CONFIG_F2FS_FS_SECURITY is not set
+# CONFIG_F2FS_CHECK_FS is not set
+# CONFIG_F2FS_FAULT_INJECTION is not set
+# CONFIG_F2FS_FS_COMPRESSION is not set
+CONFIG_F2FS_IOSTAT=y
+# CONFIG_F2FS_UNFAIR_RWSEM is not set
+# CONFIG_BCACHEFS_FS is not set
+CONFIG_FS_POSIX_ACL=y
+CONFIG_EXPORTFS=y
+# CONFIG_EXPORTFS_BLOCK_OPS is not set
+CONFIG_FILE_LOCKING=y
+# CONFIG_FS_ENCRYPTION is not set
+# CONFIG_FS_VERITY is not set
+CONFIG_FSNOTIFY=y
+CONFIG_DNOTIFY=y
+CONFIG_INOTIFY_USER=y
+CONFIG_FANOTIFY=y
+CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y
+CONFIG_QUOTA=y
+# CONFIG_QUOTA_NETLINK_INTERFACE is not set
+# CONFIG_QUOTA_DEBUG is not set
+# CONFIG_QFMT_V1 is not set
+# CONFIG_QFMT_V2 is not set
+CONFIG_QUOTACTL=y
+CONFIG_AUTOFS_FS=y
+CONFIG_FUSE_FS=y
+# CONFIG_CUSE is not set
+# CONFIG_VIRTIO_FS is not set
+CONFIG_FUSE_PASSTHROUGH=y
+CONFIG_OVERLAY_FS=y
+# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
+# CONFIG_OVERLAY_FS_INDEX is not set
+# CONFIG_OVERLAY_FS_XINO_AUTO is not set
+# CONFIG_OVERLAY_FS_METACOPY is not set
+# CONFIG_OVERLAY_FS_DEBUG is not set
+
+#
+# Caches
+#
+# end of Caches
+
+#
+# CD-ROM/DVD Filesystems
+#
+# CONFIG_ISO9660_FS is not set
+# CONFIG_UDF_FS is not set
+# end of CD-ROM/DVD Filesystems
+
+#
+# DOS/FAT/EXFAT/NT Filesystems
+#
+CONFIG_FAT_FS=y
+# CONFIG_MSDOS_FS is not set
+CONFIG_VFAT_FS=y
+CONFIG_FAT_DEFAULT_CODEPAGE=437
+CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1"
+# CONFIG_FAT_DEFAULT_UTF8 is not set
+CONFIG_EXFAT_FS=y
+CONFIG_EXFAT_DEFAULT_IOCHARSET="utf8"
+# CONFIG_NTFS3_FS is not set
+# CONFIG_NTFS_FS is not set
+# end of DOS/FAT/EXFAT/NT Filesystems
+
+#
+# Pseudo filesystems
+#
+CONFIG_PROC_FS=y
+# CONFIG_PROC_KCORE is not set
+CONFIG_PROC_VMCORE=y
+# CONFIG_PROC_VMCORE_DEVICE_DUMP is not set
+CONFIG_PROC_SYSCTL=y
+CONFIG_PROC_PAGE_MONITOR=y
+CONFIG_PROC_CHILDREN=y
+CONFIG_KERNFS=y
+CONFIG_SYSFS=y
+CONFIG_TMPFS=y
+CONFIG_TMPFS_POSIX_ACL=y
+CONFIG_TMPFS_XATTR=y
+# CONFIG_TMPFS_INODE64 is not set
+# CONFIG_TMPFS_QUOTA is not set
+CONFIG_ARCH_SUPPORTS_HUGETLBFS=y
+CONFIG_HUGETLBFS=y
+CONFIG_HUGETLB_PAGE=y
+CONFIG_ARCH_HAS_GIGANTIC_PAGE=y
+CONFIG_CONFIGFS_FS=y
+CONFIG_EFIVAR_FS=y
+# end of Pseudo filesystems
+
+CONFIG_MISC_FILESYSTEMS=y
+# CONFIG_ORANGEFS_FS is not set
+# CONFIG_ADFS_FS is not set
+# CONFIG_AFFS_FS is not set
+# CONFIG_ECRYPT_FS is not set
+# CONFIG_HFS_FS is not set
+# CONFIG_HFSPLUS_FS is not set
+# CONFIG_BEFS_FS is not set
+# CONFIG_BFS_FS is not set
+# CONFIG_EFS_FS is not set
+# CONFIG_CRAMFS is not set
+CONFIG_SQUASHFS=y
+CONFIG_SQUASHFS_FILE_CACHE=y
+# CONFIG_SQUASHFS_FILE_DIRECT is not set
+CONFIG_SQUASHFS_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_CHOICE_DECOMP_BY_MOUNT is not set
+CONFIG_SQUASHFS_COMPILE_DECOMP_SINGLE=y
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI is not set
+# CONFIG_SQUASHFS_COMPILE_DECOMP_MULTI_PERCPU is not set
+CONFIG_SQUASHFS_XATTR=y
+CONFIG_SQUASHFS_ZLIB=y
+# CONFIG_SQUASHFS_LZ4 is not set
+# CONFIG_SQUASHFS_LZO is not set
+CONFIG_SQUASHFS_XZ=y
+# CONFIG_SQUASHFS_ZSTD is not set
+# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set
+# CONFIG_SQUASHFS_EMBEDDED is not set
+CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3
+# CONFIG_VXFS_FS is not set
+# CONFIG_MINIX_FS is not set
+# CONFIG_OMFS_FS is not set
+# CONFIG_HPFS_FS is not set
+# CONFIG_QNX4FS_FS is not set
+# CONFIG_QNX6FS_FS is not set
+# CONFIG_ROMFS_FS is not set
+CONFIG_PSTORE=y
+CONFIG_PSTORE_DEFAULT_KMSG_BYTES=10240
+CONFIG_PSTORE_COMPRESS=y
+CONFIG_PSTORE_CONSOLE=y
+CONFIG_PSTORE_PMSG=y
+CONFIG_PSTORE_RAM=y
+# CONFIG_PSTORE_BLK is not set
+# CONFIG_SYSV_FS is not set
+# CONFIG_UFS_FS is not set
+# CONFIG_EROFS_FS is not set
+CONFIG_NETWORK_FILESYSTEMS=y
+CONFIG_NFS_FS=y
+CONFIG_NFS_V2=y
+CONFIG_NFS_V3=y
+# CONFIG_NFS_V3_ACL is not set
+CONFIG_NFS_V4=y
+# CONFIG_NFS_SWAP is not set
+CONFIG_NFS_V4_1=y
+CONFIG_NFS_V4_2=y
+CONFIG_PNFS_FILE_LAYOUT=y
+CONFIG_PNFS_FLEXFILE_LAYOUT=y
+CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org"
+# CONFIG_NFS_V4_1_MIGRATION is not set
+CONFIG_NFS_V4_SECURITY_LABEL=y
+# CONFIG_ROOT_NFS is not set
+# CONFIG_NFS_USE_LEGACY_DNS is not set
+CONFIG_NFS_USE_KERNEL_DNS=y
+CONFIG_NFS_DISABLE_UDP_SUPPORT=y
+# CONFIG_NFS_V4_2_READ_PLUS is not set
+# CONFIG_NFSD is not set
+CONFIG_GRACE_PERIOD=y
+CONFIG_LOCKD=y
+CONFIG_LOCKD_V4=y
+CONFIG_NFS_COMMON=y
+CONFIG_NFS_V4_2_SSC_HELPER=y
+CONFIG_SUNRPC=y
+CONFIG_SUNRPC_GSS=y
+CONFIG_SUNRPC_BACKCHANNEL=y
+CONFIG_RPCSEC_GSS_KRB5=y
+# CONFIG_SUNRPC_DEBUG is not set
+# CONFIG_CEPH_FS is not set
+# CONFIG_CIFS is not set
+# CONFIG_SMB_SERVER is not set
+# CONFIG_CODA_FS is not set
+# CONFIG_AFS_FS is not set
+CONFIG_NLS=y
+CONFIG_NLS_DEFAULT="iso8859-1"
+CONFIG_NLS_CODEPAGE_437=y
+# CONFIG_NLS_CODEPAGE_737 is not set
+# CONFIG_NLS_CODEPAGE_775 is not set
+# CONFIG_NLS_CODEPAGE_850 is not set
+# CONFIG_NLS_CODEPAGE_852 is not set
+# CONFIG_NLS_CODEPAGE_855 is not set
+# CONFIG_NLS_CODEPAGE_857 is not set
+# CONFIG_NLS_CODEPAGE_860 is not set
+# CONFIG_NLS_CODEPAGE_861 is not set
+# CONFIG_NLS_CODEPAGE_862 is not set
+# CONFIG_NLS_CODEPAGE_863 is not set
+# CONFIG_NLS_CODEPAGE_864 is not set
+# CONFIG_NLS_CODEPAGE_865 is not set
+# CONFIG_NLS_CODEPAGE_866 is not set
+# CONFIG_NLS_CODEPAGE_869 is not set
+# CONFIG_NLS_CODEPAGE_936 is not set
+# CONFIG_NLS_CODEPAGE_950 is not set
+# CONFIG_NLS_CODEPAGE_932 is not set
+# CONFIG_NLS_CODEPAGE_949 is not set
+# CONFIG_NLS_CODEPAGE_874 is not set
+# CONFIG_NLS_ISO8859_8 is not set
+# CONFIG_NLS_CODEPAGE_1250 is not set
+# CONFIG_NLS_CODEPAGE_1251 is not set
+# CONFIG_NLS_ASCII is not set
+CONFIG_NLS_ISO8859_1=y
+# CONFIG_NLS_ISO8859_2 is not set
+# CONFIG_NLS_ISO8859_3 is not set
+# CONFIG_NLS_ISO8859_4 is not set
+# CONFIG_NLS_ISO8859_5 is not set
+# CONFIG_NLS_ISO8859_6 is not set
+# CONFIG_NLS_ISO8859_7 is not set
+# CONFIG_NLS_ISO8859_9 is not set
+# CONFIG_NLS_ISO8859_13 is not set
+# CONFIG_NLS_ISO8859_14 is not set
+# CONFIG_NLS_ISO8859_15 is not set
+# CONFIG_NLS_KOI8_R is not set
+# CONFIG_NLS_KOI8_U is not set
+# CONFIG_NLS_MAC_ROMAN is not set
+# CONFIG_NLS_MAC_CELTIC is not set
+# CONFIG_NLS_MAC_CENTEURO is not set
+# CONFIG_NLS_MAC_CROATIAN is not set
+# CONFIG_NLS_MAC_CYRILLIC is not set
+# CONFIG_NLS_MAC_GAELIC is not set
+# CONFIG_NLS_MAC_GREEK is not set
+# CONFIG_NLS_MAC_ICELAND is not set
+# CONFIG_NLS_MAC_INUIT is not set
+# CONFIG_NLS_MAC_ROMANIAN is not set
+# CONFIG_NLS_MAC_TURKISH is not set
+# CONFIG_NLS_UTF8 is not set
+# CONFIG_DLM is not set
+# CONFIG_UNICODE is not set
+CONFIG_IO_WQ=y
+# end of File systems
+
+#
+# Security options
+#
+CONFIG_KEYS=y
+# CONFIG_KEYS_REQUEST_CACHE is not set
+# CONFIG_PERSISTENT_KEYRINGS is not set
+# CONFIG_TRUSTED_KEYS is not set
+# CONFIG_ENCRYPTED_KEYS is not set
+CONFIG_KEY_DH_OPERATIONS=y
+# CONFIG_SECURITY_DMESG_RESTRICT is not set
+CONFIG_SECURITY=y
+CONFIG_SECURITYFS=y
+# CONFIG_SECURITY_NETWORK is not set
+# CONFIG_SECURITY_PATH is not set
+# CONFIG_HARDENED_USERCOPY is not set
+# CONFIG_FORTIFY_SOURCE is not set
+# CONFIG_STATIC_USERMODEHELPER is not set
+# CONFIG_SECURITY_SMACK is not set
+# CONFIG_SECURITY_TOMOYO is not set
+# CONFIG_SECURITY_APPARMOR is not set
+# CONFIG_SECURITY_LOADPIN is not set
+# CONFIG_SECURITY_YAMA is not set
+# CONFIG_SECURITY_SAFESETID is not set
+# CONFIG_SECURITY_LOCKDOWN_LSM is not set
+# CONFIG_SECURITY_LANDLOCK is not set
+CONFIG_INTEGRITY=y
+# CONFIG_INTEGRITY_SIGNATURE is not set
+CONFIG_INTEGRITY_AUDIT=y
+# CONFIG_IMA is not set
+# CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set
+# CONFIG_EVM is not set
+CONFIG_DEFAULT_SECURITY_DAC=y
+CONFIG_LSM="landlock,lockdown,yama,loadpin,safesetid,integrity,bpf"
+
+#
+# Kernel hardening options
+#
+
+#
+# Memory initialization
+#
+CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y
+CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y
+CONFIG_INIT_STACK_NONE=y
+# CONFIG_INIT_STACK_ALL_PATTERN is not set
+# CONFIG_INIT_STACK_ALL_ZERO is not set
+# CONFIG_INIT_ON_ALLOC_DEFAULT_ON is not set
+# CONFIG_INIT_ON_FREE_DEFAULT_ON is not set
+CONFIG_CC_HAS_ZERO_CALL_USED_REGS=y
+# CONFIG_ZERO_CALL_USED_REGS is not set
+# end of Memory initialization
+
+#
+# Hardening of kernel data structures
+#
+# CONFIG_LIST_HARDENED is not set
+# CONFIG_BUG_ON_DATA_CORRUPTION is not set
+# end of Hardening of kernel data structures
+
+CONFIG_RANDSTRUCT_NONE=y
+# end of Kernel hardening options
+# end of Security options
+
+CONFIG_XOR_BLOCKS=y
+CONFIG_ASYNC_CORE=m
+CONFIG_ASYNC_MEMCPY=m
+CONFIG_ASYNC_XOR=m
+CONFIG_ASYNC_PQ=m
+CONFIG_ASYNC_RAID6_RECOV=m
+CONFIG_CRYPTO=y
+
+#
+# Crypto core or helper
+#
+CONFIG_CRYPTO_ALGAPI=y
+CONFIG_CRYPTO_ALGAPI2=y
+CONFIG_CRYPTO_AEAD=y
+CONFIG_CRYPTO_AEAD2=y
+CONFIG_CRYPTO_SIG=y
+CONFIG_CRYPTO_SIG2=y
+CONFIG_CRYPTO_SKCIPHER=y
+CONFIG_CRYPTO_SKCIPHER2=y
+CONFIG_CRYPTO_HASH=y
+CONFIG_CRYPTO_HASH2=y
+CONFIG_CRYPTO_RNG=y
+CONFIG_CRYPTO_RNG2=y
+CONFIG_CRYPTO_RNG_DEFAULT=y
+CONFIG_CRYPTO_AKCIPHER2=y
+CONFIG_CRYPTO_AKCIPHER=y
+CONFIG_CRYPTO_KPP2=y
+CONFIG_CRYPTO_KPP=y
+CONFIG_CRYPTO_ACOMP2=y
+CONFIG_CRYPTO_MANAGER=y
+CONFIG_CRYPTO_MANAGER2=y
+# CONFIG_CRYPTO_USER is not set
+CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y
+CONFIG_CRYPTO_NULL=y
+CONFIG_CRYPTO_NULL2=y
+# CONFIG_CRYPTO_PCRYPT is not set
+CONFIG_CRYPTO_CRYPTD=y
+CONFIG_CRYPTO_AUTHENC=m
+# CONFIG_CRYPTO_TEST is not set
+# end of Crypto core or helper
+
+#
+# Public-key cryptography
+#
+CONFIG_CRYPTO_RSA=y
+CONFIG_CRYPTO_DH=y
+# CONFIG_CRYPTO_DH_RFC7919_GROUPS is not set
+CONFIG_CRYPTO_ECC=m
+CONFIG_CRYPTO_ECDH=m
+# CONFIG_CRYPTO_ECDSA is not set
+# CONFIG_CRYPTO_ECRDSA is not set
+# CONFIG_CRYPTO_SM2 is not set
+CONFIG_CRYPTO_CURVE25519=m
+# end of Public-key cryptography
+
+#
+# Block ciphers
+#
+CONFIG_CRYPTO_AES=y
+# CONFIG_CRYPTO_AES_TI is not set
+# CONFIG_CRYPTO_ANUBIS is not set
+# CONFIG_CRYPTO_ARIA is not set
+# CONFIG_CRYPTO_BLOWFISH is not set
+# CONFIG_CRYPTO_CAMELLIA is not set
+# CONFIG_CRYPTO_CAST5 is not set
+# CONFIG_CRYPTO_CAST6 is not set
+CONFIG_CRYPTO_DES=y
+# CONFIG_CRYPTO_FCRYPT is not set
+# CONFIG_CRYPTO_KHAZAD is not set
+# CONFIG_CRYPTO_SEED is not set
+# CONFIG_CRYPTO_SERPENT is not set
+CONFIG_CRYPTO_SM4=m
+CONFIG_CRYPTO_SM4_GENERIC=m
+# CONFIG_CRYPTO_TEA is not set
+# CONFIG_CRYPTO_TWOFISH is not set
+# end of Block ciphers
+
+#
+# Length-preserving ciphers and modes
+#
+# CONFIG_CRYPTO_ADIANTUM is not set
+# CONFIG_CRYPTO_ARC4 is not set
+# CONFIG_CRYPTO_CHACHA20 is not set
+CONFIG_CRYPTO_CBC=m
+CONFIG_CRYPTO_CTR=m
+# CONFIG_CRYPTO_CTS is not set
+CONFIG_CRYPTO_ECB=y
+# CONFIG_CRYPTO_HCTR2 is not set
+# CONFIG_CRYPTO_KEYWRAP is not set
+# CONFIG_CRYPTO_LRW is not set
+# CONFIG_CRYPTO_PCBC is not set
+CONFIG_CRYPTO_XTS=m
+# end of Length-preserving ciphers and modes
+
+#
+# AEAD (authenticated encryption with associated data) ciphers
+#
+# CONFIG_CRYPTO_AEGIS128 is not set
+# CONFIG_CRYPTO_CHACHA20POLY1305 is not set
+CONFIG_CRYPTO_CCM=m
+CONFIG_CRYPTO_GCM=m
+CONFIG_CRYPTO_GENIV=y
+# CONFIG_CRYPTO_SEQIV is not set
+CONFIG_CRYPTO_ECHAINIV=y
+CONFIG_CRYPTO_ESSIV=m
+# end of AEAD (authenticated encryption with associated data) ciphers
+
+#
+# Hashes, digests, and MACs
+#
+CONFIG_CRYPTO_BLAKE2B=y
+CONFIG_CRYPTO_CMAC=m
+CONFIG_CRYPTO_GHASH=m
+CONFIG_CRYPTO_HMAC=y
+# CONFIG_CRYPTO_MD4 is not set
+CONFIG_CRYPTO_MD5=m
+CONFIG_CRYPTO_MICHAEL_MIC=y
+# CONFIG_CRYPTO_POLY1305 is not set
+# CONFIG_CRYPTO_RMD160 is not set
+CONFIG_CRYPTO_SHA1=y
+CONFIG_CRYPTO_SHA256=y
+CONFIG_CRYPTO_SHA512=y
+CONFIG_CRYPTO_SHA3=y
+CONFIG_CRYPTO_SM3=m
+CONFIG_CRYPTO_SM3_GENERIC=m
+# CONFIG_CRYPTO_STREEBOG is not set
+# CONFIG_CRYPTO_VMAC is not set
+# CONFIG_CRYPTO_WP512 is not set
+# CONFIG_CRYPTO_XCBC is not set
+CONFIG_CRYPTO_XXHASH=y
+# end of Hashes, digests, and MACs
+
+#
+# CRCs (cyclic redundancy checks)
+#
+CONFIG_CRYPTO_CRC32C=y
+CONFIG_CRYPTO_CRC32=y
+CONFIG_CRYPTO_CRCT10DIF=y
+CONFIG_CRYPTO_CRC64_ROCKSOFT=y
+# end of CRCs (cyclic redundancy checks)
+
+#
+# Compression
+#
+CONFIG_CRYPTO_DEFLATE=y
+CONFIG_CRYPTO_LZO=y
+# CONFIG_CRYPTO_842 is not set
+CONFIG_CRYPTO_LZ4=y
+# CONFIG_CRYPTO_LZ4HC is not set
+# CONFIG_CRYPTO_ZSTD is not set
+# end of Compression
+
+#
+# Random number generation
+#
+CONFIG_CRYPTO_ANSI_CPRNG=y
+CONFIG_CRYPTO_DRBG_MENU=y
+CONFIG_CRYPTO_DRBG_HMAC=y
+# CONFIG_CRYPTO_DRBG_HASH is not set
+# CONFIG_CRYPTO_DRBG_CTR is not set
+CONFIG_CRYPTO_DRBG=y
+CONFIG_CRYPTO_JITTERENTROPY=y
+CONFIG_CRYPTO_JITTERENTROPY_MEMORY_BLOCKS=64
+CONFIG_CRYPTO_JITTERENTROPY_MEMORY_BLOCKSIZE=32
+CONFIG_CRYPTO_JITTERENTROPY_OSR=1
+CONFIG_CRYPTO_KDF800108_CTR=y
+# end of Random number generation
+
+#
+# Userspace interface
+#
+CONFIG_CRYPTO_USER_API=y
+CONFIG_CRYPTO_USER_API_HASH=y
+CONFIG_CRYPTO_USER_API_SKCIPHER=y
+CONFIG_CRYPTO_USER_API_RNG=m
+# CONFIG_CRYPTO_USER_API_RNG_CAVP is not set
+# CONFIG_CRYPTO_USER_API_AEAD is not set
+CONFIG_CRYPTO_USER_API_ENABLE_OBSOLETE=y
+# end of Userspace interface
+
+CONFIG_CRYPTO_HASH_INFO=y
+# CONFIG_CRYPTO_NHPOLY1305_NEON is not set
+CONFIG_CRYPTO_CHACHA20_NEON=m
+
+#
+# Accelerated Cryptographic Algorithms for CPU (arm64)
+#
+CONFIG_CRYPTO_GHASH_ARM64_CE=y
+CONFIG_CRYPTO_POLY1305_NEON=m
+CONFIG_CRYPTO_SHA1_ARM64_CE=y
+CONFIG_CRYPTO_SHA256_ARM64=y
+CONFIG_CRYPTO_SHA2_ARM64_CE=y
+CONFIG_CRYPTO_SHA512_ARM64=m
+CONFIG_CRYPTO_SHA512_ARM64_CE=m
+CONFIG_CRYPTO_SHA3_ARM64=m
+# CONFIG_CRYPTO_SM3_NEON is not set
+CONFIG_CRYPTO_SM3_ARM64_CE=m
+# CONFIG_CRYPTO_POLYVAL_ARM64_CE is not set
+CONFIG_CRYPTO_AES_ARM64=y
+CONFIG_CRYPTO_AES_ARM64_CE=y
+CONFIG_CRYPTO_AES_ARM64_CE_BLK=y
+CONFIG_CRYPTO_AES_ARM64_NEON_BLK=m
+CONFIG_CRYPTO_AES_ARM64_BS=m
+# CONFIG_CRYPTO_SM4_ARM64_CE is not set
+# CONFIG_CRYPTO_SM4_ARM64_CE_BLK is not set
+# CONFIG_CRYPTO_SM4_ARM64_NEON_BLK is not set
+CONFIG_CRYPTO_AES_ARM64_CE_CCM=y
+# CONFIG_CRYPTO_SM4_ARM64_CE_CCM is not set
+# CONFIG_CRYPTO_SM4_ARM64_CE_GCM is not set
+CONFIG_CRYPTO_CRCT10DIF_ARM64_CE=m
+# end of Accelerated Cryptographic Algorithms for CPU (arm64)
+
+CONFIG_CRYPTO_HW=y
+# CONFIG_CRYPTO_DEV_ATMEL_ECC is not set
+# CONFIG_CRYPTO_DEV_ATMEL_SHA204A is not set
+# CONFIG_CRYPTO_DEV_CCP is not set
+# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_C62X is not set
+# CONFIG_CRYPTO_DEV_QAT_4XXX is not set
+# CONFIG_CRYPTO_DEV_QAT_420XX is not set
+# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set
+# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set
+# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set
+CONFIG_CRYPTO_DEV_QCE=m
+CONFIG_CRYPTO_DEV_QCE_SKCIPHER=y
+CONFIG_CRYPTO_DEV_QCE_SHA=y
+CONFIG_CRYPTO_DEV_QCE_AEAD=y
+CONFIG_CRYPTO_DEV_QCE_ENABLE_ALL=y
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_SKCIPHER is not set
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_SHA is not set
+# CONFIG_CRYPTO_DEV_QCE_ENABLE_AEAD is not set
+CONFIG_CRYPTO_DEV_QCE_SW_MAX_LEN=512
+CONFIG_CRYPTO_DEV_QCOM_RNG=m
+# CONFIG_CRYPTO_DEV_VIRTIO is not set
+# CONFIG_CRYPTO_DEV_SAFEXCEL is not set
+CONFIG_CRYPTO_DEV_CCREE=m
+# CONFIG_CRYPTO_DEV_HISI_SEC is not set
+# CONFIG_CRYPTO_DEV_HISI_SEC2 is not set
+# CONFIG_CRYPTO_DEV_HISI_ZIP is not set
+# CONFIG_CRYPTO_DEV_HISI_HPRE is not set
+CONFIG_CRYPTO_DEV_HISI_TRNG=y
+# CONFIG_CRYPTO_DEV_AMLOGIC_GXL is not set
+CONFIG_ASYMMETRIC_KEY_TYPE=y
+CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y
+CONFIG_X509_CERTIFICATE_PARSER=y
+CONFIG_PKCS8_PRIVATE_KEY_PARSER=y
+CONFIG_PKCS7_MESSAGE_PARSER=y
+# CONFIG_PKCS7_TEST_KEY is not set
+# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set
+# CONFIG_FIPS_SIGNATURE_SELFTEST is not set
+
+#
+# Certificates for signature checking
+#
+CONFIG_SYSTEM_TRUSTED_KEYRING=y
+CONFIG_SYSTEM_TRUSTED_KEYS=""
+# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set
+# CONFIG_SECONDARY_TRUSTED_KEYRING is not set
+# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set
+# end of Certificates for signature checking
+
+CONFIG_BINARY_PRINTF=y
+
+#
+# Library routines
+#
+CONFIG_RAID6_PQ=y
+# CONFIG_RAID6_PQ_BENCHMARK is not set
+CONFIG_LINEAR_RANGES=y
+# CONFIG_PACKING is not set
+CONFIG_BITREVERSE=y
+CONFIG_HAVE_ARCH_BITREVERSE=y
+CONFIG_GENERIC_STRNCPY_FROM_USER=y
+CONFIG_GENERIC_STRNLEN_USER=y
+CONFIG_GENERIC_NET_UTILS=y
+# CONFIG_CORDIC is not set
+# CONFIG_PRIME_NUMBERS is not set
+CONFIG_RATIONAL=y
+CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
+CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
+CONFIG_ARCH_USE_SYM_ANNOTATIONS=y
+# CONFIG_INDIRECT_PIO is not set
+# CONFIG_TRACE_MMIO_ACCESS is not set
+
+#
+# Crypto library routines
+#
+CONFIG_CRYPTO_LIB_UTILS=y
+CONFIG_CRYPTO_LIB_AES=y
+CONFIG_CRYPTO_LIB_ARC4=m
+CONFIG_CRYPTO_LIB_GF128MUL=y
+CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y
+CONFIG_CRYPTO_ARCH_HAVE_LIB_CHACHA=m
+CONFIG_CRYPTO_LIB_CHACHA_GENERIC=m
+CONFIG_CRYPTO_LIB_CHACHA=m
+CONFIG_CRYPTO_LIB_CURVE25519_GENERIC=m
+CONFIG_CRYPTO_LIB_CURVE25519=m
+CONFIG_CRYPTO_LIB_DES=y
+CONFIG_CRYPTO_LIB_POLY1305_RSIZE=9
+CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305=m
+CONFIG_CRYPTO_LIB_POLY1305=m
+CONFIG_CRYPTO_LIB_CHACHA20POLY1305=m
+CONFIG_CRYPTO_LIB_SHA1=y
+CONFIG_CRYPTO_LIB_SHA256=y
+# end of Crypto library routines
+
+# CONFIG_CRC_CCITT is not set
+CONFIG_CRC16=y
+CONFIG_CRC_T10DIF=y
+CONFIG_CRC64_ROCKSOFT=y
+CONFIG_CRC_ITU_T=y
+CONFIG_CRC32=y
+# CONFIG_CRC32_SELFTEST is not set
+CONFIG_CRC32_SLICEBY8=y
+# CONFIG_CRC32_SLICEBY4 is not set
+# CONFIG_CRC32_SARWATE is not set
+# CONFIG_CRC32_BIT is not set
+CONFIG_CRC64=y
+# CONFIG_CRC4 is not set
+CONFIG_CRC7=y
+CONFIG_LIBCRC32C=y
+CONFIG_CRC8=y
+CONFIG_XXHASH=y
+CONFIG_AUDIT_GENERIC=y
+CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y
+CONFIG_AUDIT_COMPAT_GENERIC=y
+# CONFIG_RANDOM32_SELFTEST is not set
+CONFIG_ZLIB_INFLATE=y
+CONFIG_ZLIB_DEFLATE=y
+CONFIG_LZO_COMPRESS=y
+CONFIG_LZO_DECOMPRESS=y
+CONFIG_LZ4_COMPRESS=y
+CONFIG_LZ4_DECOMPRESS=y
+CONFIG_ZSTD_COMMON=y
+CONFIG_ZSTD_COMPRESS=y
+CONFIG_ZSTD_DECOMPRESS=y
+CONFIG_XZ_DEC=y
+CONFIG_XZ_DEC_X86=y
+CONFIG_XZ_DEC_POWERPC=y
+CONFIG_XZ_DEC_ARM=y
+CONFIG_XZ_DEC_ARMTHUMB=y
+CONFIG_XZ_DEC_SPARC=y
+# CONFIG_XZ_DEC_MICROLZMA is not set
+CONFIG_XZ_DEC_BCJ=y
+# CONFIG_XZ_DEC_TEST is not set
+CONFIG_DECOMPRESS_GZIP=y
+CONFIG_DECOMPRESS_BZIP2=y
+CONFIG_DECOMPRESS_LZMA=y
+CONFIG_DECOMPRESS_XZ=y
+CONFIG_DECOMPRESS_LZO=y
+CONFIG_DECOMPRESS_LZ4=y
+CONFIG_DECOMPRESS_ZSTD=y
+CONFIG_GENERIC_ALLOCATOR=y
+CONFIG_REED_SOLOMON=y
+CONFIG_REED_SOLOMON_ENC8=y
+CONFIG_REED_SOLOMON_DEC8=y
+CONFIG_XARRAY_MULTI=y
+CONFIG_ASSOCIATIVE_ARRAY=y
+CONFIG_CLOSURES=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_IOPORT_MAP=y
+CONFIG_HAS_DMA=y
+CONFIG_DMA_OPS=y
+CONFIG_NEED_SG_DMA_FLAGS=y
+CONFIG_NEED_SG_DMA_LENGTH=y
+CONFIG_NEED_DMA_MAP_STATE=y
+CONFIG_ARCH_DMA_ADDR_T_64BIT=y
+CONFIG_DMA_DECLARE_COHERENT=y
+CONFIG_ARCH_HAS_SETUP_DMA_OPS=y
+CONFIG_ARCH_HAS_TEARDOWN_DMA_OPS=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y
+CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y
+CONFIG_ARCH_HAS_DMA_PREP_COHERENT=y
+CONFIG_SWIOTLB=y
+# CONFIG_SWIOTLB_DYNAMIC is not set
+CONFIG_DMA_BOUNCE_UNALIGNED_KMALLOC=y
+# CONFIG_DMA_RESTRICTED_POOL is not set
+CONFIG_DMA_NONCOHERENT_MMAP=y
+CONFIG_DMA_COHERENT_POOL=y
+CONFIG_DMA_DIRECT_REMAP=y
+CONFIG_DMA_CMA=y
+# CONFIG_DMA_NUMA_CMA is not set
+
+#
+# Default contiguous memory area size:
+#
+CONFIG_CMA_SIZE_MBYTES=32
+CONFIG_CMA_SIZE_SEL_MBYTES=y
+# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set
+# CONFIG_CMA_SIZE_SEL_MIN is not set
+# CONFIG_CMA_SIZE_SEL_MAX is not set
+CONFIG_CMA_ALIGNMENT=8
+# CONFIG_DMA_API_DEBUG is not set
+# CONFIG_DMA_MAP_BENCHMARK is not set
+CONFIG_SGL_ALLOC=y
+# CONFIG_FORCE_NR_CPUS is not set
+CONFIG_CPU_RMAP=y
+CONFIG_DQL=y
+CONFIG_GLOB=y
+# CONFIG_GLOB_SELFTEST is not set
+CONFIG_NLATTR=y
+CONFIG_CLZ_TAB=y
+CONFIG_IRQ_POLL=y
+CONFIG_MPILIB=y
+CONFIG_LIBFDT=y
+CONFIG_OID_REGISTRY=y
+CONFIG_UCS2_STRING=y
+CONFIG_HAVE_GENERIC_VDSO=y
+CONFIG_GENERIC_GETTIMEOFDAY=y
+CONFIG_GENERIC_VDSO_TIME_NS=y
+CONFIG_FONT_SUPPORT=y
+# CONFIG_FONTS is not set
+CONFIG_FONT_8x8=y
+CONFIG_FONT_8x16=y
+CONFIG_SG_POOL=y
+CONFIG_ARCH_STACKWALK=y
+CONFIG_STACKDEPOT=y
+CONFIG_STACKDEPOT_MAX_FRAMES=64
+CONFIG_SBITMAP=y
+# CONFIG_LWQ_TEST is not set
+# end of Library routines
+
+CONFIG_GENERIC_IOREMAP=y
+CONFIG_GENERIC_LIB_DEVMEM_IS_ALLOWED=y
+CONFIG_FIRMWARE_TABLE=y
+
+#
+# Kernel hacking
+#
+
+#
+# printk and dmesg options
+#
+CONFIG_PRINTK_TIME=y
+# CONFIG_PRINTK_CALLER is not set
+# CONFIG_STACKTRACE_BUILD_ID is not set
+CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7
+CONFIG_CONSOLE_LOGLEVEL_QUIET=4
+CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
+# CONFIG_BOOT_PRINTK_DELAY is not set
+CONFIG_DYNAMIC_DEBUG=y
+CONFIG_DYNAMIC_DEBUG_CORE=y
+CONFIG_SYMBOLIC_ERRNAME=y
+CONFIG_DEBUG_BUGVERBOSE=y
+# end of printk and dmesg options
+
+CONFIG_DEBUG_KERNEL=y
+CONFIG_DEBUG_MISC=y
+
+#
+# Compile-time checks and compiler options
+#
+CONFIG_AS_HAS_NON_CONST_ULEB128=y
+CONFIG_DEBUG_INFO_NONE=y
+# CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT is not set
+# CONFIG_DEBUG_INFO_DWARF4 is not set
+# CONFIG_DEBUG_INFO_DWARF5 is not set
+CONFIG_FRAME_WARN=2048
+# CONFIG_STRIP_ASM_SYMS is not set
+# CONFIG_READABLE_ASM is not set
+# CONFIG_HEADERS_INSTALL is not set
+# CONFIG_DEBUG_SECTION_MISMATCH is not set
+CONFIG_SECTION_MISMATCH_WARN_ONLY=y
+# CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_64B is not set
+CONFIG_ARCH_WANT_FRAME_POINTERS=y
+CONFIG_FRAME_POINTER=y
+# CONFIG_VMLINUX_MAP is not set
+# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
+# end of Compile-time checks and compiler options
+
+#
+# Generic Kernel Debugging Instruments
+#
+CONFIG_MAGIC_SYSRQ=y
+CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
+CONFIG_MAGIC_SYSRQ_SERIAL=y
+CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
+CONFIG_DEBUG_FS=y
+CONFIG_DEBUG_FS_ALLOW_ALL=y
+# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set
+# CONFIG_DEBUG_FS_ALLOW_NONE is not set
+CONFIG_HAVE_ARCH_KGDB=y
+# CONFIG_KGDB is not set
+CONFIG_ARCH_HAS_UBSAN=y
+# CONFIG_UBSAN is not set
+CONFIG_HAVE_ARCH_KCSAN=y
+CONFIG_HAVE_KCSAN_COMPILER=y
+# CONFIG_KCSAN is not set
+# end of Generic Kernel Debugging Instruments
+
+#
+# Networking Debugging
+#
+# CONFIG_NET_DEV_REFCNT_TRACKER is not set
+# CONFIG_NET_NS_REFCNT_TRACKER is not set
+# CONFIG_DEBUG_NET is not set
+# end of Networking Debugging
+
+#
+# Memory Debugging
+#
+# CONFIG_PAGE_EXTENSION is not set
+# CONFIG_DEBUG_PAGEALLOC is not set
+CONFIG_SLUB_DEBUG=y
+# CONFIG_SLUB_DEBUG_ON is not set
+# CONFIG_PAGE_OWNER is not set
+# CONFIG_PAGE_TABLE_CHECK is not set
+# CONFIG_PAGE_POISONING is not set
+# CONFIG_DEBUG_PAGE_REF is not set
+# CONFIG_DEBUG_RODATA_TEST is not set
+CONFIG_ARCH_HAS_DEBUG_WX=y
+# CONFIG_DEBUG_WX is not set
+CONFIG_GENERIC_PTDUMP=y
+# CONFIG_PTDUMP_DEBUGFS is not set
+CONFIG_HAVE_DEBUG_KMEMLEAK=y
+# CONFIG_DEBUG_KMEMLEAK is not set
+# CONFIG_PER_VMA_LOCK_STATS is not set
+# CONFIG_DEBUG_OBJECTS is not set
+# CONFIG_SHRINKER_DEBUG is not set
+# CONFIG_DEBUG_STACK_USAGE is not set
+# CONFIG_SCHED_STACK_END_CHECK is not set
+CONFIG_ARCH_HAS_DEBUG_VM_PGTABLE=y
+# CONFIG_DEBUG_VM is not set
+# CONFIG_DEBUG_VM_PGTABLE is not set
+CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
+# CONFIG_DEBUG_VIRTUAL is not set
+CONFIG_DEBUG_MEMORY_INIT=y
+# CONFIG_DEBUG_PER_CPU_MAPS is not set
+CONFIG_HAVE_ARCH_KASAN=y
+CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
+CONFIG_HAVE_ARCH_KASAN_HW_TAGS=y
+CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
+CONFIG_CC_HAS_KASAN_GENERIC=y
+CONFIG_CC_HAS_KASAN_SW_TAGS=y
+CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
+# CONFIG_KASAN is not set
+CONFIG_HAVE_ARCH_KFENCE=y
+# CONFIG_KFENCE is not set
+# end of Memory Debugging
+
+# CONFIG_DEBUG_SHIRQ is not set
+
+#
+# Debug Oops, Lockups and Hangs
+#
+# CONFIG_PANIC_ON_OOPS is not set
+CONFIG_PANIC_ON_OOPS_VALUE=0
+CONFIG_PANIC_TIMEOUT=0
+# CONFIG_SOFTLOCKUP_DETECTOR is not set
+CONFIG_HAVE_HARDLOCKUP_DETECTOR_BUDDY=y
+# CONFIG_HARDLOCKUP_DETECTOR is not set
+# CONFIG_DETECT_HUNG_TASK is not set
+# CONFIG_WQ_WATCHDOG is not set
+# CONFIG_WQ_CPU_INTENSIVE_REPORT is not set
+# CONFIG_TEST_LOCKUP is not set
+# end of Debug Oops, Lockups and Hangs
+
+#
+# Scheduler Debugging
+#
+CONFIG_SCHED_DEBUG=y
+# CONFIG_SCHEDSTATS is not set
+# end of Scheduler Debugging
+
+# CONFIG_DEBUG_TIMEKEEPING is not set
+
+#
+# Lock Debugging (spinlocks, mutexes, etc...)
+#
+CONFIG_LOCK_DEBUGGING_SUPPORT=y
+# CONFIG_PROVE_LOCKING is not set
+# CONFIG_LOCK_STAT is not set
+# CONFIG_DEBUG_RT_MUTEXES is not set
+# CONFIG_DEBUG_SPINLOCK is not set
+# CONFIG_DEBUG_MUTEXES is not set
+# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set
+# CONFIG_DEBUG_RWSEMS is not set
+# CONFIG_DEBUG_LOCK_ALLOC is not set
+# CONFIG_DEBUG_ATOMIC_SLEEP is not set
+# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
+# CONFIG_LOCK_TORTURE_TEST is not set
+# CONFIG_WW_MUTEX_SELFTEST is not set
+# CONFIG_SCF_TORTURE_TEST is not set
+# CONFIG_CSD_LOCK_WAIT_DEBUG is not set
+# end of Lock Debugging (spinlocks, mutexes, etc...)
+
+# CONFIG_DEBUG_IRQFLAGS is not set
+CONFIG_STACKTRACE=y
+# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set
+# CONFIG_DEBUG_KOBJECT is not set
+
+#
+# Debug kernel data structures
+#
+# CONFIG_DEBUG_LIST is not set
+# CONFIG_DEBUG_PLIST is not set
+# CONFIG_DEBUG_SG is not set
+# CONFIG_DEBUG_NOTIFIERS is not set
+# CONFIG_DEBUG_CLOSURES is not set
+# CONFIG_DEBUG_MAPLE_TREE is not set
+# end of Debug kernel data structures
+
+#
+# RCU Debugging
+#
+# CONFIG_RCU_SCALE_TEST is not set
+# CONFIG_RCU_TORTURE_TEST is not set
+# CONFIG_RCU_REF_SCALE_TEST is not set
+CONFIG_RCU_CPU_STALL_TIMEOUT=21
+CONFIG_RCU_EXP_CPU_STALL_TIMEOUT=0
+# CONFIG_RCU_CPU_STALL_CPUTIME is not set
+CONFIG_RCU_TRACE=y
+# CONFIG_RCU_EQS_DEBUG is not set
+# end of RCU Debugging
+
+# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set
+# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
+# CONFIG_LATENCYTOP is not set
+CONFIG_NOP_TRACER=y
+CONFIG_HAVE_FUNCTION_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
+CONFIG_HAVE_FUNCTION_GRAPH_RETVAL=y
+CONFIG_HAVE_DYNAMIC_FTRACE=y
+CONFIG_HAVE_DYNAMIC_FTRACE_WITH_ARGS=y
+CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
+CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
+CONFIG_HAVE_C_RECORDMCOUNT=y
+CONFIG_TRACE_CLOCK=y
+CONFIG_RING_BUFFER=y
+CONFIG_EVENT_TRACING=y
+CONFIG_CONTEXT_SWITCH_TRACER=y
+CONFIG_TRACING=y
+CONFIG_TRACING_SUPPORT=y
+CONFIG_FTRACE=y
+# CONFIG_BOOTTIME_TRACING is not set
+# CONFIG_FUNCTION_TRACER is not set
+# CONFIG_STACK_TRACER is not set
+# CONFIG_IRQSOFF_TRACER is not set
+# CONFIG_SCHED_TRACER is not set
+# CONFIG_HWLAT_TRACER is not set
+# CONFIG_OSNOISE_TRACER is not set
+# CONFIG_TIMERLAT_TRACER is not set
+# CONFIG_ENABLE_DEFAULT_TRACERS is not set
+# CONFIG_FTRACE_SYSCALLS is not set
+# CONFIG_TRACER_SNAPSHOT is not set
+CONFIG_BRANCH_PROFILE_NONE=y
+# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set
+# CONFIG_PROFILE_ALL_BRANCHES is not set
+# CONFIG_BLK_DEV_IO_TRACE is not set
+CONFIG_UPROBE_EVENTS=y
+CONFIG_BPF_EVENTS=y
+CONFIG_DYNAMIC_EVENTS=y
+CONFIG_PROBE_EVENTS=y
+# CONFIG_SYNTH_EVENTS is not set
+# CONFIG_USER_EVENTS is not set
+# CONFIG_HIST_TRIGGERS is not set
+# CONFIG_TRACE_EVENT_INJECT is not set
+# CONFIG_TRACEPOINT_BENCHMARK is not set
+# CONFIG_RING_BUFFER_BENCHMARK is not set
+# CONFIG_TRACE_EVAL_MAP_FILE is not set
+# CONFIG_RING_BUFFER_STARTUP_TEST is not set
+# CONFIG_RING_BUFFER_VALIDATE_TIME_DELTAS is not set
+# CONFIG_PREEMPTIRQ_DELAY_TEST is not set
+# CONFIG_RV is not set
+# CONFIG_SAMPLES is not set
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT=y
+CONFIG_HAVE_SAMPLE_FTRACE_DIRECT_MULTI=y
+CONFIG_STRICT_DEVMEM=y
+# CONFIG_IO_STRICT_DEVMEM is not set
+
+#
+# arm64 Debugging
+#
+# CONFIG_PID_IN_CONTEXTIDR is not set
+# CONFIG_ARM64_RELOC_TEST is not set
+# CONFIG_CORESIGHT is not set
+# end of arm64 Debugging
+
+#
+# Kernel Testing and Coverage
+#
+# CONFIG_KUNIT is not set
+# CONFIG_NOTIFIER_ERROR_INJECTION is not set
+# CONFIG_FAULT_INJECTION is not set
+CONFIG_ARCH_HAS_KCOV=y
+CONFIG_CC_HAS_SANCOV_TRACE_PC=y
+# CONFIG_KCOV is not set
+CONFIG_RUNTIME_TESTING_MENU=y
+# CONFIG_TEST_DHRY is not set
+# CONFIG_LKDTM is not set
+# CONFIG_TEST_MIN_HEAP is not set
+# CONFIG_TEST_DIV64 is not set
+# CONFIG_BACKTRACE_SELF_TEST is not set
+# CONFIG_TEST_REF_TRACKER is not set
+# CONFIG_RBTREE_TEST is not set
+# CONFIG_REED_SOLOMON_TEST is not set
+# CONFIG_INTERVAL_TREE_TEST is not set
+# CONFIG_PERCPU_TEST is not set
+# CONFIG_ATOMIC64_SELFTEST is not set
+# CONFIG_ASYNC_RAID6_TEST is not set
+# CONFIG_TEST_HEXDUMP is not set
+# CONFIG_TEST_KSTRTOX is not set
+# CONFIG_TEST_PRINTF is not set
+# CONFIG_TEST_SCANF is not set
+# CONFIG_TEST_BITMAP is not set
+# CONFIG_TEST_UUID is not set
+# CONFIG_TEST_XARRAY is not set
+# CONFIG_TEST_MAPLE_TREE is not set
+# CONFIG_TEST_RHASHTABLE is not set
+# CONFIG_TEST_IDA is not set
+# CONFIG_TEST_LKM is not set
+# CONFIG_TEST_BITOPS is not set
+# CONFIG_TEST_VMALLOC is not set
+# CONFIG_TEST_USER_COPY is not set
+# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_BLACKHOLE_DEV is not set
+# CONFIG_FIND_BIT_BENCHMARK is not set
+# CONFIG_TEST_FIRMWARE is not set
+# CONFIG_TEST_SYSCTL is not set
+# CONFIG_TEST_UDELAY is not set
+# CONFIG_TEST_STATIC_KEYS is not set
+# CONFIG_TEST_DYNAMIC_DEBUG is not set
+# CONFIG_TEST_KMOD is not set
+# CONFIG_TEST_MEMCAT_P is not set
+# CONFIG_TEST_MEMINIT is not set
+# CONFIG_TEST_FREE_PAGES is not set
+# CONFIG_TEST_OBJPOOL is not set
+CONFIG_ARCH_USE_MEMTEST=y
+CONFIG_MEMTEST=y
+# end of Kernel Testing and Coverage
+
+#
+# Rust hacking
+#
+# end of Rust hacking
+# end of Kernel hacking
diff --git a/config/kernel/linux-tqma-current.config b/config/kernel/linux-tqma-current.config
index d4dec9432d83..f07840b878bf 100644
--- a/config/kernel/linux-tqma-current.config
+++ b/config/kernel/linux-tqma-current.config
@@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
-# Linux/arm64 6.11.5 Kernel Configuration
+# Linux/arm64 6.11.6 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="aarch64-linux-gnu-gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
CONFIG_CC_IS_GCC=y
@@ -1043,13 +1043,26 @@ CONFIG_UNIX=y
CONFIG_AF_UNIX_OOB=y
# CONFIG_UNIX_DIAG is not set
# CONFIG_TLS is not set
+CONFIG_XFRM=y
+CONFIG_XFRM_ALGO=m
# CONFIG_XFRM_USER is not set
+# CONFIG_XFRM_INTERFACE is not set
+# CONFIG_XFRM_SUB_POLICY is not set
+# CONFIG_XFRM_MIGRATE is not set
+# CONFIG_XFRM_STATISTICS is not set
+CONFIG_XFRM_AH=m
+CONFIG_XFRM_ESP=m
+CONFIG_XFRM_IPCOMP=m
# CONFIG_NET_KEY is not set
# CONFIG_XDP_SOCKETS is not set
CONFIG_NET_HANDSHAKE=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
-# CONFIG_IP_ADVANCED_ROUTER is not set
+CONFIG_IP_ADVANCED_ROUTER=y
+# CONFIG_IP_FIB_TRIE_STATS is not set
+CONFIG_IP_MULTIPLE_TABLES=y
+# CONFIG_IP_ROUTE_MULTIPATH is not set
+# CONFIG_IP_ROUTE_VERBOSE is not set
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
@@ -1058,14 +1071,17 @@ CONFIG_IP_PNP_BOOTP=y
# CONFIG_NET_IPGRE_DEMUX is not set
CONFIG_NET_IP_TUNNEL=m
# CONFIG_IP_MROUTE is not set
-# CONFIG_SYN_COOKIES is not set
+CONFIG_SYN_COOKIES=y
# CONFIG_NET_IPVTI is not set
# CONFIG_NET_FOU is not set
# CONFIG_NET_FOU_IP_TUNNELS is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
+CONFIG_INET_AH=m
+CONFIG_INET_ESP=m
+# CONFIG_INET_ESP_OFFLOAD is not set
+# CONFIG_INET_ESPINTCP is not set
+CONFIG_INET_IPCOMP=m
CONFIG_INET_TABLE_PERTURB_ORDER=16
+CONFIG_INET_XFRM_TUNNEL=m
CONFIG_INET_TUNNEL=m
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
@@ -1080,16 +1096,21 @@ CONFIG_IPV6=m
# CONFIG_IPV6_ROUTER_PREF is not set
# CONFIG_IPV6_OPTIMISTIC_DAD is not set
# CONFIG_INET6_AH is not set
-# CONFIG_INET6_ESP is not set
-# CONFIG_INET6_IPCOMP is not set
+CONFIG_INET6_ESP=m
+# CONFIG_INET6_ESP_OFFLOAD is not set
+# CONFIG_INET6_ESPINTCP is not set
+CONFIG_INET6_IPCOMP=m
# CONFIG_IPV6_MIP6 is not set
# CONFIG_IPV6_ILA is not set
+CONFIG_INET6_XFRM_TUNNEL=m
+CONFIG_INET6_TUNNEL=m
# CONFIG_IPV6_VTI is not set
CONFIG_IPV6_SIT=m
# CONFIG_IPV6_SIT_6RD is not set
CONFIG_IPV6_NDISC_NODETYPE=y
# CONFIG_IPV6_TUNNEL is not set
-# CONFIG_IPV6_MULTIPLE_TABLES is not set
+CONFIG_IPV6_MULTIPLE_TABLES=y
+# CONFIG_IPV6_SUBTREES is not set
# CONFIG_IPV6_MROUTE is not set
# CONFIG_IPV6_SEG6_LWTUNNEL is not set
# CONFIG_IPV6_SEG6_HMAC is not set
@@ -1110,14 +1131,18 @@ CONFIG_BRIDGE_NETFILTER=m
CONFIG_NETFILTER_INGRESS=y
CONFIG_NETFILTER_EGRESS=y
CONFIG_NETFILTER_SKIP_EGRESS=y
+CONFIG_NETFILTER_NETLINK=y
CONFIG_NETFILTER_FAMILY_BRIDGE=y
+CONFIG_NETFILTER_FAMILY_ARP=y
CONFIG_NETFILTER_BPF_LINK=y
-# CONFIG_NETFILTER_NETLINK_ACCT is not set
-# CONFIG_NETFILTER_NETLINK_QUEUE is not set
-# CONFIG_NETFILTER_NETLINK_LOG is not set
-# CONFIG_NETFILTER_NETLINK_OSF is not set
+# CONFIG_NETFILTER_NETLINK_HOOK is not set
+CONFIG_NETFILTER_NETLINK_ACCT=m
+CONFIG_NETFILTER_NETLINK_QUEUE=m
+CONFIG_NETFILTER_NETLINK_LOG=m
+CONFIG_NETFILTER_NETLINK_OSF=m
CONFIG_NF_CONNTRACK=m
CONFIG_NF_LOG_SYSLOG=m
+CONFIG_NETFILTER_CONNCOUNT=m
# CONFIG_NF_CONNTRACK_MARK is not set
# CONFIG_NF_CONNTRACK_ZONES is not set
# CONFIG_NF_CONNTRACK_PROCFS is not set
@@ -1140,8 +1165,37 @@ CONFIG_NF_CT_PROTO_UDPLITE=y
# CONFIG_NF_CONNTRACK_TFTP is not set
# CONFIG_NF_CT_NETLINK is not set
CONFIG_NF_NAT=m
+CONFIG_NF_NAT_REDIRECT=y
CONFIG_NF_NAT_MASQUERADE=y
-# CONFIG_NF_TABLES is not set
+CONFIG_NETFILTER_SYNPROXY=m
+CONFIG_NF_TABLES=y
+CONFIG_NF_TABLES_INET=y
+CONFIG_NF_TABLES_NETDEV=y
+CONFIG_NFT_NUMGEN=m
+CONFIG_NFT_CT=m
+CONFIG_NFT_CONNLIMIT=m
+CONFIG_NFT_LOG=m
+CONFIG_NFT_LIMIT=m
+CONFIG_NFT_MASQ=m
+CONFIG_NFT_REDIR=m
+CONFIG_NFT_NAT=m
+CONFIG_NFT_TUNNEL=m
+CONFIG_NFT_QUEUE=m
+CONFIG_NFT_QUOTA=m
+CONFIG_NFT_REJECT=m
+CONFIG_NFT_REJECT_INET=m
+CONFIG_NFT_COMPAT=m
+CONFIG_NFT_HASH=m
+CONFIG_NFT_XFRM=m
+CONFIG_NFT_SOCKET=m
+CONFIG_NFT_OSF=m
+CONFIG_NFT_TPROXY=m
+CONFIG_NFT_SYNPROXY=m
+CONFIG_NF_DUP_NETDEV=m
+CONFIG_NFT_DUP_NETDEV=m
+CONFIG_NFT_FWD_NETDEV=m
+CONFIG_NFT_REJECT_NETDEV=m
+# CONFIG_NF_FLOW_TABLE is not set
CONFIG_NETFILTER_XTABLES=m
CONFIG_NETFILTER_XTABLES_COMPAT=y
@@ -1158,6 +1212,7 @@ CONFIG_NETFILTER_XT_MARK=m
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set
# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set
+# CONFIG_NETFILTER_XT_TARGET_CT is not set
# CONFIG_NETFILTER_XT_TARGET_DSCP is not set
# CONFIG_NETFILTER_XT_TARGET_HL is not set
# CONFIG_NETFILTER_XT_TARGET_HMARK is not set
@@ -1211,6 +1266,7 @@ CONFIG_NETFILTER_XT_MATCH_IPVS=m
# CONFIG_NETFILTER_XT_MATCH_NFACCT is not set
# CONFIG_NETFILTER_XT_MATCH_OSF is not set
# CONFIG_NETFILTER_XT_MATCH_OWNER is not set
+CONFIG_NETFILTER_XT_MATCH_POLICY=m
# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set
# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set
# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set
@@ -1280,8 +1336,13 @@ CONFIG_IP_VS_MH_TAB_INDEX=12
#
CONFIG_NF_DEFRAG_IPV4=m
CONFIG_IP_NF_IPTABLES_LEGACY=m
-# CONFIG_NF_SOCKET_IPV4 is not set
-# CONFIG_NF_TPROXY_IPV4 is not set
+CONFIG_NF_SOCKET_IPV4=m
+CONFIG_NF_TPROXY_IPV4=m
+CONFIG_NF_TABLES_IPV4=y
+CONFIG_NFT_REJECT_IPV4=m
+# CONFIG_NFT_DUP_IPV4 is not set
+# CONFIG_NFT_FIB_IPV4 is not set
+CONFIG_NF_TABLES_ARP=y
# CONFIG_NF_DUP_IPV4 is not set
# CONFIG_NF_LOG_ARP is not set
# CONFIG_NF_LOG_IPV4 is not set
@@ -1293,7 +1354,7 @@ CONFIG_IP_NF_IPTABLES=m
# CONFIG_IP_NF_MATCH_TTL is not set
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
-# CONFIG_IP_NF_TARGET_SYNPROXY is not set
+CONFIG_IP_NF_TARGET_SYNPROXY=m
CONFIG_IP_NF_NAT=m
CONFIG_IP_NF_TARGET_MASQUERADE=m
# CONFIG_IP_NF_TARGET_NETMAP is not set
@@ -1303,15 +1364,21 @@ CONFIG_IP_NF_MANGLE=m
# CONFIG_IP_NF_TARGET_TTL is not set
# CONFIG_IP_NF_RAW is not set
# CONFIG_IP_NF_SECURITY is not set
+CONFIG_NFT_COMPAT_ARP=m
# CONFIG_IP_NF_ARPFILTER is not set
+# CONFIG_IP_NF_ARP_MANGLE is not set
# end of IP: Netfilter Configuration
#
# IPv6: Netfilter Configuration
#
CONFIG_IP6_NF_IPTABLES_LEGACY=m
-# CONFIG_NF_SOCKET_IPV6 is not set
-# CONFIG_NF_TPROXY_IPV6 is not set
+CONFIG_NF_SOCKET_IPV6=m
+CONFIG_NF_TPROXY_IPV6=m
+CONFIG_NF_TABLES_IPV6=y
+CONFIG_NFT_REJECT_IPV6=m
+# CONFIG_NFT_DUP_IPV6 is not set
+# CONFIG_NFT_FIB_IPV6 is not set
# CONFIG_NF_DUP_IPV6 is not set
CONFIG_NF_REJECT_IPV6=m
CONFIG_NF_LOG_IPV6=m
@@ -1329,7 +1396,7 @@ CONFIG_IP6_NF_IPTABLES=m
# CONFIG_IP6_NF_TARGET_HL is not set
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
-# CONFIG_IP6_NF_TARGET_SYNPROXY is not set
+CONFIG_IP6_NF_TARGET_SYNPROXY=m
CONFIG_IP6_NF_MANGLE=m
# CONFIG_IP6_NF_RAW is not set
# CONFIG_IP6_NF_SECURITY is not set
@@ -1339,6 +1406,9 @@ CONFIG_IP6_NF_TARGET_MASQUERADE=m
# end of IPv6: Netfilter Configuration
CONFIG_NF_DEFRAG_IPV6=m
+CONFIG_NF_TABLES_BRIDGE=m
+# CONFIG_NFT_BRIDGE_META is not set
+# CONFIG_NFT_BRIDGE_REJECT is not set
# CONFIG_NF_CONNTRACK_BRIDGE is not set
# CONFIG_BRIDGE_NF_EBTABLES is not set
# CONFIG_IP_DCCP is not set
@@ -1562,6 +1632,7 @@ CONFIG_BT_NXPUART=m
# CONFIG_AF_RXRPC is not set
# CONFIG_AF_KCM is not set
# CONFIG_MCTP is not set
+CONFIG_FIB_RULES=y
CONFIG_WIRELESS=y
CONFIG_CFG80211=m
# CONFIG_NL80211_TESTMODE is not set
@@ -8459,7 +8530,7 @@ CONFIG_CRYPTO_XTS=m
CONFIG_CRYPTO_CCM=m
CONFIG_CRYPTO_GCM=m
CONFIG_CRYPTO_GENIV=y
-# CONFIG_CRYPTO_SEQIV is not set
+CONFIG_CRYPTO_SEQIV=m
CONFIG_CRYPTO_ECHAINIV=y
# CONFIG_CRYPTO_ESSIV is not set
# end of AEAD (authenticated encryption with associated data) ciphers
@@ -8686,7 +8757,7 @@ CONFIG_CRC32_SLICEBY8=y
CONFIG_CRC64=y
# CONFIG_CRC4 is not set
CONFIG_CRC7=y
-CONFIG_LIBCRC32C=m
+CONFIG_LIBCRC32C=y
CONFIG_CRC8=y
CONFIG_XXHASH=y
CONFIG_AUDIT_GENERIC=y
diff --git a/config/sources/amd64.conf b/config/sources/amd64.conf
index 555d9c0c9b92..b1d7a0a07921 100644
--- a/config/sources/amd64.conf
+++ b/config/sources/amd64.conf
@@ -17,12 +17,12 @@ declare -g QEMU_BINARY='qemu-x86_64-static' # Hopefully you have this installed.
# See https://uapi-group.org/specifications/specs/discoverable_partitions_specification/
declare -g PARTITION_TYPE_UUID_ROOT="4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709" # "Linux root (x86-64)"
-declare -g MAIN_CMDLINE='' # we set it in common, it was not set before
-declare -g KERNEL_COMPILER=' ' # hack: use single space for host gcc. won't work on arm64 hosts
-declare -g KERNEL_USE_GCC=' ' # more hacks.
-declare -g KERNEL_EXTRA_TARGETS='modules' # default is "modules dtb" but x86_64 has no DTB
-declare -g KERNEL_BUILD_DTBS="no" # amd64 has no DTBs. that I know of.
-declare -g UBOOT_USE_GCC='none' # required by configuration.sh
+declare -g MAIN_CMDLINE='' # we set it in common, it was not set before
+declare -g KERNEL_COMPILER=' ' # hack: use single space for host gcc. won't work on arm64 hosts
+declare -g KERNEL_USE_GCC=' ' # more hacks.
+declare -g KERNEL_EXTRA_TARGETS='modules' # default is "modules dtb" but x86_64 has no DTB
+declare -g KERNEL_BUILD_DTBS="no" # amd64 has no DTBs. that I know of.
+declare -g UBOOT_USE_GCC='none' # required by configuration.sh
#declare -g INITRD_ARCH=amd64 # Used by u-boot for mkimage in initramfs. No u-boot for x86 yet.
# Defaults, if not set by board or family.
diff --git a/config/sources/families/include/meson64_common.inc b/config/sources/families/include/meson64_common.inc
index 6da0cb2d22fc..c2ad22311e53 100644
--- a/config/sources/families/include/meson64_common.inc
+++ b/config/sources/families/include/meson64_common.inc
@@ -46,7 +46,7 @@ case $BRANCH in
declare -g KERNEL_MAJOR_MINOR="6.6"
;;
edge)
- declare -g KERNEL_MAJOR_MINOR="6.11"
+ declare -g KERNEL_MAJOR_MINOR="6.12"
;;
esac
diff --git a/config/sources/families/include/rockchip64_common.inc b/config/sources/families/include/rockchip64_common.inc
index 9382a30d332e..5e18f422f676 100644
--- a/config/sources/families/include/rockchip64_common.inc
+++ b/config/sources/families/include/rockchip64_common.inc
@@ -33,7 +33,7 @@ case $BRANCH in
;;
edge)
- declare -g KERNEL_MAJOR_MINOR="6.11"
+ declare -g KERNEL_MAJOR_MINOR="6.12"
declare -g LINUXFAMILY=rockchip64
declare -g LINUXCONFIG='linux-rockchip64-'$BRANCH
;;
@@ -56,6 +56,7 @@ esac
# - tpl-spl-blob: uses mainline u-boot TPL and SPL with proprietary rockchip ATF blob
# - tpl-blob-atf-mainline: proprietary rockchip ddrbin + mainline u-boot SPL + mainline ATF
# - blobless: mainline u-boot TPL + mainline u-boot SPL + mainline ATF
+# - binman: u-boot builds full boot image from information in device tree. See: https://docs.u-boot.org/en/latest/develop/package/binman.html
#BOOT_SOC=`expr $BOOTCONFIG : '.*\(rk[[:digit:]]\+.*\)_.*'`
BOOT_SOC=${BOOT_SOC:=$(expr $BOOTCONFIG : '.*\(rk[[:digit:]]\+.*\)_.*' || true)}
@@ -80,12 +81,6 @@ case "$BOOT_SOC" in
DDR_BLOB="${DDR_BLOB:-"rk33/rk3308_ddr_589MHz_uart2_m1_v1.30.bin"}"
MINILOADER_BLOB="${MINILOADER_BLOB:-"rk33/rk3308_miniloader_v1.22.bin"}"
BL31_BLOB="${BL31_BLOB:-"rk33/rk3308_bl31_v2.22.elf"}"
-
- if [[ ${BRANCH} == legacy ]]; then
- DDR_BLOB="${DDR_BLOB:-"rk33/rk3308_ddr_589MHz_uart2_m0_v1.26.bin"}"
- MINILOADER_BLOB="${MINILOADER_BLOB:-"rk33/rk3308_miniloader_sd_nand_v1.13.bin"}"
- BL31_BLOB="${BL31_BLOB:-"rk33/rk3308_bl31_v2.10.elf"}"
- fi
;;
rk3328)
@@ -157,9 +152,12 @@ case "$BOOT_SOC" in
esac
prepare_boot_configuration() {
+ ATFSOURCE=''
+ ATF_COMPILE='no'
case "$BOOT_SCENARIO" in
blobless | tpl-blob-atf-mainline)
UBOOT_TARGET_MAP="BL31=bl31.elf idbloader.img u-boot.itb;;idbloader.img u-boot.itb"
+ ATF_COMPILE=yes
ATFSOURCE='https://github.com/ARM-software/arm-trusted-firmware'
ATF_COMPILER='aarch64-linux-gnu-'
ATFDIR='arm-trusted-firmware'
@@ -171,22 +169,17 @@ prepare_boot_configuration() {
[[ $BOOT_SCENARIO == tpl-blob-atf-mainline ]] &&
UBOOT_TARGET_MAP="BL31=bl31.elf idbloader.img u-boot.itb;;idbloader.img u-boot.itb"
;;
-
tpl-spl-blob)
UBOOT_TARGET_MAP="BL31=$RKBIN_DIR/$BL31_BLOB idbloader.img u-boot.itb;;idbloader.img u-boot.itb"
- ATFSOURCE=''
- ATF_COMPILE='no'
;;
spl-blobs)
UBOOT_TARGET_MAP="BL31=$RKBIN_DIR/$BL31_BLOB spl/u-boot-spl.bin u-boot.dtb u-boot.itb;;idbloader.img u-boot.itb"
- ATFSOURCE=''
- ATF_COMPILE='no'
;;
-
only-blobs)
UBOOT_TARGET_MAP="u-boot-dtb.bin;;idbloader.bin uboot.img trust.bin"
- ATFSOURCE=''
- ATF_COMPILE='no'
+ ;;
+ binman)
+ UBOOT_TARGET_MAP="BL31=$RKBIN_DIR/$BL31_BLOB ROCKCHIP_TPL=$RKBIN_DIR/$DDR_BLOB;;u-boot-rockchip.bin"
;;
esac
@@ -206,31 +199,52 @@ prepare_boot_configuration() {
}
uboot_custom_postprocess() {
- [[ -z ${BOOT_SOC} ]] && exit_with_error "BOOT_SOC not defined for scenario '${BOOT_SCENARIO}' for BOARD'=${BOARD}' and BOOTCONFIG='${BOOTCONFIG}'"
-
- if [[ $BOOT_SCENARIO == "blobless" || $BOOT_SCENARIO == "tpl-spl-blob" ]]; then
- :
- elif [[ $BOOT_SCENARIO == "spl-blobs" || $BOOT_SCENARIO == "tpl-blob-atf-mainline" ]]; then
- # Bomb if DDR_BLOB not defined or does not exist
- declare SPL_BIN_PATH="${RKBIN_DIR}/${DDR_BLOB}"
- [[ -z ${SPL_BIN_PATH} ]] && exit_with_error "DDR_BLOB not defined for scenario ${BOOT_SCENARIO}"
- [[ ! -f "${SPL_BIN_PATH}" ]] && exit_with_error "DDR_BLOB ${SPL_BIN_PATH} does not exist for scenario ${BOOT_SCENARIO}"
+ [[ -z ${BOOT_SOC} ]] &&
+ exit_with_error "BOOT_SOC not defined for scenario '${BOOT_SCENARIO}' for BOARD'=${BOARD}' and BOOTCONFIG='${BOOTCONFIG}'"
+ display_alert "${BOARD}" "boots with ${BOOT_SCENARIO} scenario" "info"
- display_alert "mkimage for '${BOOT_SOC}' for scenario ${BOOT_SCENARIO}" "SPL_BIN_PATH: ${SPL_BIN_PATH}" "debug"
- run_host_command_logged tools/mkimage -n "${BOOT_SOC_MKIMAGE}" -T rksd -d "${SPL_BIN_PATH}:spl/u-boot-spl.bin" idbloader.img
+ case "$BOOT_SCENARIO" in
+ blobless | tpl-spl-blob | binman)
+ :
+ ;;
- elif [[ $BOOT_SCENARIO == "only-blobs" ]]; then
+ spl-blobs | tpl-blob-atf-mainline)
+ # Bomb if DDR_BLOB not defined or does not exist
+ declare SPL_BIN_PATH="${RKBIN_DIR}/${DDR_BLOB}"
+ [[ -z ${SPL_BIN_PATH} ]] && exit_with_error "DDR_BLOB not defined for scenario ${BOOT_SCENARIO}"
+ [[ ! -f "${SPL_BIN_PATH}" ]] && exit_with_error "DDR_BLOB ${SPL_BIN_PATH} does not exist for scenario ${BOOT_SCENARIO}"
+
+ if [[ "$BOOT_SOC" == "rk3576" ]]; then
+ display_alert "boot_merger for '${BOOT_SOC}' for scenario ${BOOT_SCENARIO}" "SPL_BIN_PATH: ${SPL_BIN_PATH}" "debug"
+ RKBOOT_INI_FILE=rk3576.ini
+ cp $RKBIN_DIR/rk35/RK3576MINIALL.ini $RKBOOT_INI_FILE
+ sed -i "s|FlashBoost=.*$|FlashBoost=${RKBIN_DIR}/rk35/rk3576_boost_v1.02.bin|g" $RKBOOT_INI_FILE
+ sed -i "s|Path1=.*rk3576_ddr.*$|Path1=${SPL_BIN_PATH}|g" $RKBOOT_INI_FILE
+ sed -i "s|Path1=.*rk3576_usbplug.*$|Path1=${RKBIN_DIR}/rk35/rk3576_usbplug_v1.03.bin|g" $RKBOOT_INI_FILE
+ sed -i "s|FlashData=.*$|FlashData=${SPL_BIN_PATH}|g" $RKBOOT_INI_FILE
+ sed -i "s|FlashBoot=.*$|FlashBoot=./spl/u-boot-spl.bin|g" $RKBOOT_INI_FILE
+ sed -i "s|IDB_PATH=.*$|IDB_PATH=idbloader.img|g" $RKBOOT_INI_FILE
+ run_host_x86_binary_logged $RKBIN_DIR/tools/boot_merger $RKBOOT_INI_FILE
+ rm -f $RKBOOT_INI_FILE
+ else
+ display_alert "mkimage for '${BOOT_SOC}' for scenario ${BOOT_SCENARIO}" "SPL_BIN_PATH: ${SPL_BIN_PATH}" "debug"
+ run_host_command_logged tools/mkimage -n "${BOOT_SOC_MKIMAGE}" -T rksd -d "${SPL_BIN_PATH}:spl/u-boot-spl.bin" idbloader.img
+ fi
+ ;;
- local tempfile
- tempfile=$(mktemp)
- run_host_command_logged tools/mkimage -n "${BOOT_SOC_MKIMAGE}" -T rksd -d $RKBIN_DIR/$DDR_BLOB idbloader.bin
- cat $RKBIN_DIR/$MINILOADER_BLOB >> idbloader.bin
- run_host_x86_binary_logged $RKBIN_DIR/tools/loaderimage --pack --uboot ./u-boot-dtb.bin uboot.img 0x200000
- run_host_x86_binary_logged $RKBIN_DIR/tools/trust_merger --replace bl31.elf $RKBIN_DIR/$BL31_BLOB trust.ini
+ only-blobs)
+ local tempfile
+ tempfile=$(mktemp)
+ run_host_command_logged tools/mkimage -n "${BOOT_SOC_MKIMAGE}" -T rksd -d $RKBIN_DIR/$DDR_BLOB idbloader.bin
+ cat $RKBIN_DIR/$MINILOADER_BLOB >> idbloader.bin
+ run_host_x86_binary_logged $RKBIN_DIR/tools/loaderimage --pack --uboot ./u-boot-dtb.bin uboot.img 0x200000
+ run_host_x86_binary_logged $RKBIN_DIR/tools/trust_merger --replace bl31.elf $RKBIN_DIR/$BL31_BLOB trust.ini
+ ;;
- else
- exit_with_error "Unsupported u-boot processing configuration!"
- fi
+ *)
+ exit_with_error "\"$BOOT_SCENARIO\" is an Unsupported Boot Scenario!"
+ ;;
+ esac
if [[ $BOOT_SUPPORT_SPI == yes ]]; then
if [[ "${BOOT_SPI_RKSPI_LOADER:-"no"}" == "yes" ]]; then
@@ -259,9 +273,11 @@ write_uboot_platform() {
local logging_prelude=""
[[ $(type -t run_host_command_logged) == function ]] && logging_prelude="run_host_command_logged"
- if [[ -f $1/rksd_loader.img ]]; then # legacy rk3399 loader
+ if [ -f $1/u-boot-rockchip.bin ]; then #"$BOOT_SCENARIO" == binman
+ ${logging_prelude} dd if=$1/u-boot-rockchip.bin of=$2 bs=32k seek=1 conv=notrunc status=none
+ elif [ -f $1/rksd_loader.img ]; then # legacy rk3399 loader
${logging_prelude} dd if=$1/rksd_loader.img of=$2 seek=64 conv=notrunc status=none
- elif [[ -f $1/u-boot.itb ]]; then # $BOOT_SCENARIO == "blobless" || $BOOT_SCENARIO == "tpl-spl-blob"
+ elif [[ -f $1/u-boot.itb ]]; then # $BOOT_SCENARIO "blobless" or "tpl-spl-blob"
${logging_prelude} dd if=$1/idbloader.img of=$2 seek=64 conv=notrunc status=none
${logging_prelude} dd if=$1/u-boot.itb of=$2 seek=16384 conv=notrunc status=none
elif [[ -f $1/uboot.img ]]; then # $BOOT_SCENARIO == "only-blobs"
@@ -274,32 +290,26 @@ write_uboot_platform() {
fi
}
+# @TODO: this is not ready for BOOT_SCENARIO=binman yet
write_uboot_platform_mtd() {
if [[ -f $1/rkspi_loader.img ]]; then
-
dd if=$1/rkspi_loader.img of=$2 conv=notrunc status=none > /dev/null 2>&1
-
else
-
echo "SPI u-boot image not found!"
exit 1
-
fi
}
setup_write_uboot_platform() {
-
if grep -q "ubootpart" /proc/cmdline; then
-
- local tmp=$(cat /proc/cmdline)
+ local tmp part dev
+ tmp=$(cat /proc/cmdline)
tmp="${tmp##*ubootpart=}"
tmp="${tmp%% *}"
- [[ -n $tmp ]] && local part=$(findfs PARTUUID=$tmp 2> /dev/null)
- [[ -n $part ]] && local dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
+ [[ -n $tmp ]] && part=$(findfs PARTUUID=$tmp 2> /dev/null)
+ [[ -n $part ]] && dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
[[ -n $dev ]] && DEVICE="/dev/$dev"
-
fi
-
}
family_tweaks() {
diff --git a/config/sources/families/include/sunxi64_common.inc b/config/sources/families/include/sunxi64_common.inc
index 847ef7f178c3..14ef14571703 100644
--- a/config/sources/families/include/sunxi64_common.inc
+++ b/config/sources/families/include/sunxi64_common.inc
@@ -31,12 +31,12 @@ case $BRANCH in
current)
declare -g KERNEL_MAJOR_MINOR="6.6" # Major and minor versions of this kernel.
- declare -g KERNELBRANCH="tag:v6.6.54"
+ declare -g KERNELBRANCH="tag:v6.6.62"
;;
edge)
declare -g KERNEL_MAJOR_MINOR="6.11" # Major and minor versions of this kernel.
- declare -g KERNELBRANCH="tag:v6.11.2"
+ declare -g KERNELBRANCH="tag:v6.11.9"
;;
esac
@@ -54,21 +54,22 @@ write_uboot_platform() {
}
setup_write_uboot_platform() {
+ local tmp part dev
if grep -q "ubootpart" /proc/cmdline; then
# mainline with new boot script
- local tmp=$(cat /proc/cmdline)
+ tmp=$(cat /proc/cmdline)
tmp="${tmp##*ubootpart=}"
tmp="${tmp%% *}"
- [[ -n $tmp ]] && local part=$(findfs PARTUUID=$tmp 2> /dev/null)
- [[ -n $part ]] && local dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
+ [[ -n $tmp ]] && part=$(findfs PARTUUID=$tmp 2> /dev/null)
+ [[ -n $part ]] && dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
[[ -n $dev ]] && DEVICE="/dev/$dev"
else
# legacy or old boot script
- local tmp=$(cat /proc/cmdline)
+ tmp=$(cat /proc/cmdline)
tmp="${tmp##*root=}"
tmp="${tmp%% *}"
- [[ -n $tmp ]] && local part=$(findfs $tmp 2> /dev/null)
- [[ -n $part ]] && local dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
+ [[ -n $tmp ]] && part=$(findfs $tmp 2> /dev/null)
+ [[ -n $part ]] && dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
# do not try to write u-boot to USB devices
[[ -n $dev && $dev == mmcblk* ]] && DEVICE="/dev/$dev"
fi
diff --git a/config/sources/families/include/sunxi_common.inc b/config/sources/families/include/sunxi_common.inc
index ff82fc38dae8..0ef69277244f 100644
--- a/config/sources/families/include/sunxi_common.inc
+++ b/config/sources/families/include/sunxi_common.inc
@@ -32,12 +32,12 @@ case $BRANCH in
current)
declare -g KERNEL_MAJOR_MINOR="6.6" # Major and minor versions of this kernel.
- declare -g KERNELBRANCH="tag:v6.6.54"
+ declare -g KERNELBRANCH="tag:v6.6.62"
;;
edge)
declare -g KERNEL_MAJOR_MINOR="6.11" # Major and minor versions of this kernel.
- declare -g KERNELBRANCH="tag:v6.11.2"
+ declare -g KERNELBRANCH="tag:v6.11.9"
;;
esac
@@ -63,12 +63,13 @@ write_uboot_platform() {
}
setup_write_uboot_platform() {
+ local tmp part dev
if grep -q "ubootpart" /proc/cmdline; then
- local tmp=$(cat /proc/cmdline)
+ tmp=$(cat /proc/cmdline)
tmp="${tmp##*ubootpart=}"
tmp="${tmp%% *}"
- [[ -n $tmp ]] && local part=$(findfs PARTUUID=$tmp 2> /dev/null)
- [[ -n $part ]] && local dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
+ [[ -n $tmp ]] && part=$(findfs PARTUUID=$tmp 2> /dev/null)
+ [[ -n $part ]] && dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
[[ -n $dev ]] && DEVICE="/dev/$dev"
elif [[ -f /var/lib/armbian/force_search_uboot ]]; then
# This may cause overwriting u-boot for android or other non-Armbian OS installed on eMMC
diff --git a/config/sources/families/odroidxu4.conf b/config/sources/families/odroidxu4.conf
index b647bdcf9d91..4015383892a6 100644
--- a/config/sources/families/odroidxu4.conf
+++ b/config/sources/families/odroidxu4.conf
@@ -52,17 +52,16 @@ function custom_kernel_config__hack_odroidxu4_firmware() {
}
setup_write_uboot_platform() {
-
# this will update u-boot on the device rootfs is located on
# in case it's a mmc device, otherwise DEVICE will not be changed
# and will default to /dev/mmcblk0
- local tmp=$(cat /proc/cmdline)
+ local tmp part dev
+ tmp=$(cat /proc/cmdline)
tmp="${tmp##*root=}"
tmp="${tmp%% *}"
- [[ -n $tmp ]] && local part=$(findfs $tmp 2> /dev/null)
- [[ -n $part ]] && local dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
+ [[ -n $tmp ]] && part=$(findfs $tmp 2> /dev/null)
+ [[ -n $part ]] && dev=$(lsblk -n -o PKNAME $part 2> /dev/null)
[[ -n $dev && $dev == mmcblk* ]] && DEVICE="/dev/${dev}"
-
}
write_uboot_platform() {
diff --git a/config/sources/families/rk35xx.conf b/config/sources/families/rk35xx.conf
index c252a5cd6c59..50e83ad213e0 100644
--- a/config/sources/families/rk35xx.conf
+++ b/config/sources/families/rk35xx.conf
@@ -37,7 +37,7 @@ case $BRANCH in
declare -g KERNEL_MAJOR_MINOR="6.1" # Major and minor versions of this kernel.
declare -g -i KERNEL_GIT_CACHE_TTL=120 # 2 minutes; this is a high-traffic repo
KERNELSOURCE='https://github.com/armbian/linux-rockchip.git'
- KERNELBRANCH='branch:rk-6.1-rkr3'
+ KERNELBRANCH='branch:rk-6.1-rkr4.1'
KERNELPATCHDIR='rk35xx-vendor-6.1'
;;
esac
diff --git a/config/sources/families/rockchip-rk3588.conf b/config/sources/families/rockchip-rk3588.conf
index 9d77b14fa318..2b589ab0c718 100644
--- a/config/sources/families/rockchip-rk3588.conf
+++ b/config/sources/families/rockchip-rk3588.conf
@@ -34,7 +34,7 @@ case $BRANCH in
declare -g KERNEL_MAJOR_MINOR="6.1" # Major and minor versions of this kernel.
declare -g -i KERNEL_GIT_CACHE_TTL=120 # 2 minutes; this is a high-traffic repo
KERNELSOURCE='https://github.com/armbian/linux-rockchip.git'
- KERNELBRANCH='branch:rk-6.1-rkr3'
+ KERNELBRANCH='branch:rk-6.1-rkr4.1'
KERNELPATCHDIR='rk35xx-vendor-6.1'
LINUXFAMILY=rk35xx
;;
@@ -42,16 +42,16 @@ case $BRANCH in
current)
# Branch based on a stable kernel release (will stay on the next LTS kernel release once released, 6.12? LTS)
LINUXFAMILY=rockchip-rk3588
- KERNEL_MAJOR_MINOR="6.11" # Major and minor versions of this kernel.
- LINUXCONFIG="linux-rockchip-rk3588-${KERNEL_MAJOR_MINOR}" # Attention: not -${BRANCH} (edge/current/legacy), but -${KERNEL_MAJOR_MINOR} thus 6.6 / 6.12 etc
+ KERNEL_MAJOR_MINOR="6.12" # Major and minor versions of this kernel.
+ LINUXCONFIG="linux-rockchip-rk3588-${BRANCH}"
# No need to set KERNELPATCHDIR, since default is: KERNELPATCHDIR='archive/rockchip-rk3588-${KERNEL_MAJOR_MINOR}'
;;
edge)
# Branch based on the latest kernel release including RC releases, to benefit from the latest RK3588 mainline advancements. Might be unstable!
LINUXFAMILY=rockchip-rk3588
- KERNEL_MAJOR_MINOR="6.11" # Major and minor versions of this kernel.
- LINUXCONFIG="linux-rockchip-rk3588-${KERNEL_MAJOR_MINOR}" # Attention: not -${BRANCH} (edge/current/legacy), but -${KERNEL_MAJOR_MINOR} thus 6.8 / 6.10 etc
+ KERNEL_MAJOR_MINOR="6.12" # Major and minor versions of this kernel.
+ LINUXCONFIG="linux-rockchip-rk3588-${BRANCH}"
# No need to set KERNELPATCHDIR, since default is: KERNELPATCHDIR='archive/rockchip-rk3588-${KERNEL_MAJOR_MINOR}'
;;
diff --git a/config/sources/families/rockchip.conf b/config/sources/families/rockchip.conf
index 4eef8ed8b8be..a3ad9d0c191b 100644
--- a/config/sources/families/rockchip.conf
+++ b/config/sources/families/rockchip.conf
@@ -56,7 +56,7 @@ case $BRANCH in
edge)
- declare -g KERNEL_MAJOR_MINOR="6.11" # Major and minor versions of this kernel.
+ declare -g KERNEL_MAJOR_MINOR="6.12" # Major and minor versions of this kernel.
;;
esac
@@ -97,7 +97,7 @@ if [[ "$BOOT_SOC" == "rk3288" ]]; then
# fi
#
# run_host_command_logged cat spl/u-boot-spl-dtb.bin >> u-boot-rockchip-with-spl.bin
-
+
run_host_command_logged cat idbloader.img > u-boot-rockchip-with-spl.bin
run_host_command_logged dd if=u-boot-dtb.img of=u-boot-rockchip-with-spl.bin seek=$((0x200 - 0x40)) conv=notrunc
diff --git a/config/sources/families/sm8250.conf b/config/sources/families/sm8250.conf
index a0e4874bf1fe..3e67512be283 100644
--- a/config/sources/families/sm8250.conf
+++ b/config/sources/families/sm8250.conf
@@ -15,14 +15,19 @@ enable_extension "image-output-abl"
case $BRANCH in
+ legacy)
+ declare -g KERNEL_MAJOR_MINOR="6.9" # Major and minor versions of this kernel.
+ declare -g KERNELBRANCH='branch:linux-6.9.y'
+ declare -g -i KERNEL_GIT_CACHE_TTL=120 # 2 minutes; this is a high-traffic repo
+ ;;
current)
- declare -g KERNEL_MAJOR_MINOR="6.11" # Major and minor versions of this kernel.
- declare -g KERNELBRANCH='branch:linux-6.11.y'
+ declare -g KERNEL_MAJOR_MINOR="6.12" # Major and minor versions of this kernel.
+ declare -g KERNELBRANCH='branch:linux-6.12.y'
declare -g -i KERNEL_GIT_CACHE_TTL=120 # 2 minutes; this is a high-traffic repo
;;
edge)
- declare -g KERNEL_MAJOR_MINOR="6.10" # Major and minor versions of this kernel.
+ declare -g KERNEL_MAJOR_MINOR="6.12" # Major and minor versions of this kernel.
;;
esac
diff --git a/config/sources/families/spacemit.conf b/config/sources/families/spacemit.conf
index 0d67fd252f28..d4fda34cfc96 100644
--- a/config/sources/families/spacemit.conf
+++ b/config/sources/families/spacemit.conf
@@ -76,8 +76,8 @@ write_uboot_platform() {
declare -A d
d=(
- [${1}/bootinfo_emmc.bin]="0:$(du -b ${1}/bootinfo_emmc.bin | awk '{print $1}')"
- [${1}/FSBL.bin]="512:$(du -b ${1}/FSBL.bin | awk '{print $1}')"
+ [${1} / bootinfo_emmc.bin]="0:$(du -b ${1}/bootinfo_emmc.bin | awk '{print $1}')"
+ [${1} / FSBL.bin]="512:$(du -b ${1}/FSBL.bin | awk '{print $1}')"
)
if [ -b ${2}boot0 ]; then
@@ -86,11 +86,9 @@ write_uboot_platform() {
sync
fi
- for f in "${!d[@]}"
- do
+ for f in "${!d[@]}"; do
if $(dd if=${device} bs=1 skip="${d[$f]%:*}" count="${d[$f]#*:}" \
- conv=notrunc status=noxfer 2>/dev/null | cmp --quiet "${f}")
- then
+ conv=notrunc status=noxfer 2> /dev/null | cmp --quiet "${f}"); then
echo "Skip $(basename $f), it is equal to the existing one"
else
echo "# Write =: $(basename $f) to ${device}"
diff --git a/config/sources/mainline-kernel.conf.sh b/config/sources/mainline-kernel.conf.sh
index 1892e2b7f8ac..51d1265536dc 100644
--- a/config/sources/mainline-kernel.conf.sh
+++ b/config/sources/mainline-kernel.conf.sh
@@ -7,8 +7,8 @@
# Shared versioning logic for Armbian mainline kernels.
function mainline_kernel_decide_version__upstream_release_candidate_number() {
[[ -n "${KERNELBRANCH}" ]] && return 0 # if already set, don't touch it; that way other hooks can run in any order
- if [[ "${KERNEL_MAJOR_MINOR}" == "6.12" ]]; then # @TODO: roll over to next MAJOR.MINOR and MAJOR.MINOR-rc1 when it is released
- declare -g KERNELBRANCH="tag:v6.12-rc2"
+ if [[ "${KERNEL_MAJOR_MINOR}" == "6.13" ]]; then # @TODO: roll over to next MAJOR.MINOR and MAJOR.MINOR-rc1 when it is released
+ declare -g KERNELBRANCH="tag:v6.13-rc1"
display_alert "mainline-kernel: upstream release candidate" "Using KERNELBRANCH='${KERNELBRANCH}' for KERNEL_MAJOR_MINOR='${KERNEL_MAJOR_MINOR}'" "info"
fi
}
diff --git a/extensions/fs-cryptroot-support.sh b/extensions/fs-cryptroot-support.sh
index a7b1613b69c2..6d42e88e00e4 100644
--- a/extensions/fs-cryptroot-support.sh
+++ b/extensions/fs-cryptroot-support.sh
@@ -26,10 +26,10 @@ function prepare_root_device__encrypt_root_device() {
check_loop_device "$rootdevice"
display_alert "Extension: ${EXTENSION}: Encrypting root partition with LUKS..." "cryptsetup luksFormat $rootdevice" ""
echo -n $CRYPTROOT_PASSPHRASE | cryptsetup luksFormat $CRYPTROOT_PARAMETERS $rootdevice -
- echo -n $CRYPTROOT_PASSPHRASE | cryptsetup luksOpen $rootdevice $ROOT_MAPPER -
+ echo -n $CRYPTROOT_PASSPHRASE | cryptsetup luksOpen $rootdevice $CRYPTROOT_MAPPER -
display_alert "Extension: ${EXTENSION}: Root partition encryption complete." "" "ext"
# TODO: pass /dev/mapper to Docker
- rootdevice=/dev/mapper/$ROOT_MAPPER # used by `mkfs` and `mount` commands
+ rootdevice=/dev/mapper/$CRYPTROOT_MAPPER # used by `mkfs` and `mount` commands
}
function pre_install_kernel_debs__adjust_dropbear_configuration() {
diff --git a/extensions/image-output-abl-fixed.sh b/extensions/image-output-abl-fixed.sh
new file mode 100644
index 000000000000..ae9e9d47a957
--- /dev/null
+++ b/extensions/image-output-abl-fixed.sh
@@ -0,0 +1,46 @@
+function add_host_dependencies__abl_host_deps() {
+ declare -g EXTRA_BUILD_DEPS="${EXTRA_BUILD_DEPS} mkbootimg"
+}
+
+function post_build_image__900_convert_to_abl_img() {
+ [[ -z $version ]] && exit_with_error "version is not set"
+
+ if [ ! -z "$BOOTFS_TYPE" ]; then
+ return 0
+ fi
+
+ display_alert "Converting image $version to rootfs" "${EXTENSION}" "info"
+ declare -g ROOTFS_IMAGE_FILE="${DESTIMG}/${version}.rootfs.img"
+ old_rootfs_image_mount_dir=${DESTIMG}/rootfs-old
+ mkdir -p ${old_rootfs_image_mount_dir}
+ old_image_loop_device=$(losetup -f -P --show ${DESTIMG}/${version}.img)
+ mount ${old_image_loop_device}p1 ${old_rootfs_image_mount_dir}
+ rm ${DESTIMG}/${version}.img
+ declare -g bootimg_cmdline="${BOOTIMG_CMDLINE_EXTRA} root=PARTLABEL=rootfs slot_suffix=${abl_boot_partition_label#boot}"
+
+ if [ ${#ABL_DTB_LIST[@]} -ne 0 ]; then
+ display_alert "Going to create abl kernel boot image" "${EXTENSION}" "info"
+ source ${old_rootfs_image_mount_dir}/boot/armbianEnv.txt
+ gzip -c ${old_rootfs_image_mount_dir}/boot/vmlinuz-*-* > ${DESTIMG}/Image.gz
+ for dtb_name in "${ABL_DTB_LIST[@]}"; do
+ display_alert "Creatng abl kernel boot image with dtb ${dtb_name} and cmdline ${bootimg_cmdline} " "${EXTENSION}" "info"
+ cat ${DESTIMG}/Image.gz ${old_rootfs_image_mount_dir}/usr/lib/linux-image-*/qcom/${dtb_name}.dtb > ${DESTIMG}/Image.gz-${dtb_name}
+ /usr/bin/mkbootimg \
+ --kernel ${DESTIMG}/Image.gz-${dtb_name} \
+ --ramdisk ${old_rootfs_image_mount_dir}/boot/initrd.img-*-* \
+ --base 0x0 \
+ --second_offset 0x00f00000 \
+ --cmdline "${bootimg_cmdline}" \
+ --kernel_offset 0x8000 \
+ --ramdisk_offset 0x1000000 \
+ --tags_offset 0x100 \
+ --pagesize 4096 \
+ -o ${DESTIMG}/${version}.boot_${dtb_name}_fixed.img
+ done
+ fi
+
+ umount ${old_rootfs_image_mount_dir}
+ losetup -d ${old_image_loop_device}
+ rm -rf ${old_rootfs_image_mount_dir}
+ return 0
+}
diff --git a/extensions/image-output-abl.sh b/extensions/image-output-abl.sh
index ad4d3e4a906d..a16478d94933 100644
--- a/extensions/image-output-abl.sh
+++ b/extensions/image-output-abl.sh
@@ -5,6 +5,11 @@ function add_host_dependencies__abl_host_deps() {
function post_build_image__900_convert_to_abl_img() {
[[ -z $version ]] && exit_with_error "version is not set"
+ if [ ! -z "$UEFI_GRUB_TARGET" ]; then
+ display_alert "Ignore" "${EXTENSION}" "info"
+ return 0
+ fi
+
if [ ! -z "$BOOTFS_TYPE" ]; then
return 0
fi
@@ -16,7 +21,7 @@ function post_build_image__900_convert_to_abl_img() {
old_rootfs_image_mount_dir=${DESTIMG}/rootfs-old
new_rootfs_image_mount_dir=${DESTIMG}/rootfs-new
mkdir -p ${old_rootfs_image_mount_dir} ${new_rootfs_image_mount_dir}
- truncate --size=9216M ${ROOTFS_IMAGE_FILE}
+ truncate --size=9728M ${ROOTFS_IMAGE_FILE}
mkfs.ext4 -F ${ROOTFS_IMAGE_FILE}
new_rootfs_image_uuid=$(blkid -s UUID -o value ${ROOTFS_IMAGE_FILE})
old_image_loop_device=$(losetup -f -P --show ${DESTIMG}/${version}.img)
diff --git a/extensions/mesa-vpu.sh b/extensions/mesa-vpu.sh
index aaba956d7ec1..3bc89d0cfa0b 100644
--- a/extensions/mesa-vpu.sh
+++ b/extensions/mesa-vpu.sh
@@ -90,34 +90,6 @@ function post_install_kernel_debs__3d() {
# Add chromium if building a desktop
if [[ "${BUILD_DESKTOP}" == "yes" ]]; then
- if [[ "${ARCH}" == "arm64" ]]; then
-
- display_alert "Adding Amazingfate Chromium PPAs" "${EXTENSION}" "info"
- do_with_retries 3 chroot_sdcard add-apt-repository ppa:liujianfeng1994/chromium --yes --no-update
- sed -i "s/oracular/noble/g" "${SDCARD}"/etc/apt/sources.list.d/liujianfeng1994-ubuntu-chromium-"${RELEASE}".*
-
- display_alert "Pinning amazingfated's Chromium PPAs" "${EXTENSION}" "info"
- cat <<- EOF > "${SDCARD}"/etc/apt/preferences.d/liujianfeng1994-chromium-pin
- Package: chromium
- Pin: release o=LP-PPA-liujianfeng1994-chromium
- Pin-Priority: 1001
- EOF
-
- else
-
- display_alert "Adding Xtradebs Apps PPAs" "${EXTENSION}" "info"
- do_with_retries 3 chroot_sdcard add-apt-repository ppa:xtradeb/apps --yes --no-update
- sed -i "s/oracular/noble/g" "${SDCARD}"/etc/apt/sources.list.d/xtradeb-ubuntu-apps-"${RELEASE}".*
-
- display_alert "Pinning Xtradebs PPAs" "${EXTENSION}" "info"
- cat <<- EOF > "${SDCARD}"/etc/apt/preferences.d/xtradebs-apps-pin
- Package: chromium
- Pin: release o=LP-PPA-xtradebs-apps
- Pin-Priority: 1001
- EOF
-
- fi
-
pkgs+=("chromium")
fi
fi
diff --git a/lib/functions/artifacts/artifact-armbian-bsp-cli.sh b/lib/functions/artifacts/artifact-armbian-bsp-cli.sh
index d3af981e7966..14c91a172ed0 100644
--- a/lib/functions/artifacts/artifact-armbian-bsp-cli.sh
+++ b/lib/functions/artifacts/artifact-armbian-bsp-cli.sh
@@ -60,7 +60,7 @@ function artifact_armbian-bsp-cli_prepare_version() {
"INITRD_ARCH: ${INITRD_ARCH}" # /etc/armbian-release
"KERNEL_IMAGE_TYPE: ${KERNEL_IMAGE_TYPE}" # /etc/armbian-release
"VENDOR: ${VENDOR}" # /etc/armbian-release
- "OVERLAY_DIR: ${OVERLAY_DIR}" # /etc/armbian-release
+ "OVERLAY_DIR: ${OVERLAY_DIR}" # /etc/armbian-release
"KERNEL_TARGET: ${KERNEL_TARGET}" # /etc/armbian-release
"KERNEL_TEST_TARGET: ${KERNEL_TEST_TARGET}" # /etc/armbian-release
"BOOT_SOC: ${BOOT_SOC}" # /etc/armbian-release # See https://github.com/armbian/build/pull/6411
diff --git a/lib/functions/artifacts/artifact-armbian-config.sh b/lib/functions/artifacts/artifact-armbian-config.sh
index 979daee13f55..aa5e03a4c2af 100644
--- a/lib/functions/artifacts/artifact-armbian-config.sh
+++ b/lib/functions/artifacts/artifact-armbian-config.sh
@@ -15,8 +15,8 @@ function artifact_armbian-config_prepare_version() {
artifact_version="undetermined" # outer scope
artifact_version_reason="undetermined" # outer scope
- local ARMBIAN_CONFIG_SOURCE="${ARMBIAN_CONFIG_SOURCE:-"https://github.com/armbian/config"}"
- local ARMBIAN_CONFIG_BRANCH="branch:${ARMBIAN_CONFIG_BRANCH:-"master"}"
+ local ARMBIAN_CONFIG_SOURCE="${ARMBIAN_CONFIG_SOURCE:-"https://github.com/armbian/configng"}"
+ local ARMBIAN_CONFIG_BRANCH="branch:${ARMBIAN_CONFIG_BRANCH:-"main"}"
debug_var ARMBIAN_CONFIG_SOURCE
debug_var ARMBIAN_CONFIG_BRANCH
diff --git a/lib/functions/artifacts/artifacts-obtain.sh b/lib/functions/artifacts/artifacts-obtain.sh
index 1a60f4867ce6..173bf16704b6 100644
--- a/lib/functions/artifacts/artifacts-obtain.sh
+++ b/lib/functions/artifacts/artifacts-obtain.sh
@@ -533,7 +533,7 @@ function is_artifact_available_in_remote_cache() {
display_alert "Artifact is not available in remote cache" "${artifact_full_oci_target}" "info"
artifact_exists_in_remote_cache="no"
fi
-
+ artifact_exists_in_remote_cache="no"
return 0
}
diff --git a/lib/functions/compilation/kernel-make.sh b/lib/functions/compilation/kernel-make.sh
index aec6e865790d..11629ac5a05c 100644
--- a/lib/functions/compilation/kernel-make.sh
+++ b/lib/functions/compilation/kernel-make.sh
@@ -53,7 +53,7 @@ function run_kernel_make_internal() {
"ARCH=${ARCHITECTURE}" # Key param. Everything depends on this.
"LOCALVERSION=-${BRANCH}-${LINUXFAMILY}" # Change the internal kernel version to include the family. Changing this causes recompiles # @TODO change hack at .config; that might handles mtime better
- "${cc_name}=${CCACHE} ${DISTCC_CROSS_COMPILE_PREFIX[@]} ${KERNEL_COMPILER}" # added as prefix to every compiler invocation by make
+ "${cc_name}=${CCACHE} ${DISTCC_CROSS_COMPILE_PREFIX[@]} ${KERNEL_COMPILER}" # added as prefix to every compiler invocation by make
"KCFLAGS=-fdiagnostics-color=always -Wno-error=misleading-indentation ${extra_warnings} ${KERNEL_EXTRA_CFLAGS:-""}" # Force GCC colored messages, downgrade misleading indentation to warning
"SOURCE_DATE_EPOCH=${kernel_base_revision_ts}" # https://reproducible-builds.org/docs/source-date-epoch/ and https://www.kernel.org/doc/html/latest/kbuild/reproducible-builds.html
diff --git a/lib/functions/compilation/packages/armbian-config-deb.sh b/lib/functions/compilation/packages/armbian-config-deb.sh
index 0922cbc26b4a..4264fdbbc8c7 100644
--- a/lib/functions/compilation/packages/armbian-config-deb.sh
+++ b/lib/functions/compilation/packages/armbian-config-deb.sh
@@ -18,22 +18,26 @@ compile_armbian-config() {
declare armbian_config_dir="armbian-config"
mkdir -p "${tmp_dir}/${armbian_config_dir}"
- local ARMBIAN_CONFIG_GIT_SOURCE="${ARMBIAN_FIRMWARE_GIT_SOURCE:-"https://github.com/armbian/config"}"
- local ARMBIAN_CONFIG_GIT_BRANCH="${ARMBIAN_FIRMWARE_GIT_BRANCH:-"master"}"
+ local ARMBIAN_CONFIG_GIT_SOURCE="${ARMBIAN_FIRMWARE_GIT_SOURCE:-"https://github.com/armbian/configng"}"
+ local ARMBIAN_CONFIG_GIT_BRANCH="${ARMBIAN_FIRMWARE_GIT_BRANCH:-"main"}"
- fetch_from_repo "https://github.com/armbian/config" "armbian-config" "branch:master"
# this is also not getting any updates
- fetch_from_repo "https://github.com/dylanaraps/neofetch" "neofetch" "tag:7.1.0"
+ fetch_from_repo "$GITHUB_SOURCE/dylanaraps/neofetch" "neofetch" "tag:7.1.0"
+ fetch_from_repo "$GITHUB_SOURCE/armbian/configng" "armbian-config" "branch:main"
+ fetch_from_repo "$GITHUB_SOURCE/complexorganizations/wireguard-manager" "wireguard-manager" "branch:main"
# Fetch Armbian config from git.
declare fetched_revision
do_checkout="no" fetch_from_repo "${ARMBIAN_CONFIG_GIT_SOURCE}" "armbian-config-git" "branch:${ARMBIAN_CONFIG_GIT_BRANCH}"
declare -r armbian_firmware_git_sha1="${fetched_revision}"
+ # Compile Armbian config
+ ${SRC}/cache/sources/armbian-config/tools/config-assemble.sh -p
+
# @TODO: move this to where it is actually used; not everyone needs to pull this in
fetch_from_repo "$GITHUB_SOURCE/complexorganizations/wireguard-manager" "wireguard-manager" "branch:main"
- mkdir -p "${tmp_dir}/${armbian_config_dir}"/{DEBIAN,usr/bin/,usr/sbin/,usr/lib/armbian-config/}
+ mkdir -p "${tmp_dir}/${armbian_config_dir}"/{DEBIAN,bin/,lib/armbian-config/,usr/bin/,/etc/apt/sources.list.d/}
cd "${tmp_dir}/${armbian_config_dir}" || exit_with_error "can't change directory"
@@ -43,31 +47,29 @@ compile_armbian-config() {
Version: ${artifact_version}
Architecture: all
Maintainer: $MAINTAINER <$MAINTAINERMAIL>
- Depends: bash, iperf3, psmisc, curl, bc, expect, dialog, pv, zip, debconf-utils, unzip, build-essential, html2text, html2text, dirmngr, software-properties-common, debconf, jq
- Suggests: libpam-google-authenticator, qrencode, network-manager, sunxi-tools
+ Depends: whiptail, jq, sudo, procps, systemd, iproute2
Section: utils
Priority: optional
- Description: Armbian configuration utility
+ Description: Armbian configuration utility - The new generation
END
install -m 755 "${SRC}"/cache/sources/neofetch/neofetch "${tmp_dir}/${armbian_config_dir}"/usr/bin/neofetch
cd "${tmp_dir}/${armbian_config_dir}"/usr/bin/ || exit_with_error "Failed to cd to ${tmp_dir}/${armbian_config_dir}/usr/bin/"
process_patch_file "${SRC}/patch/misc/add-armbian-neofetch.patch" "applying"
+ # 3rd party utilities
install -m 755 "${SRC}"/cache/sources/wireguard-manager/wireguard-manager.sh "${tmp_dir}/${armbian_config_dir}"/usr/bin/wireguard-manager
- install -m 755 "${SRC}"/cache/sources/armbian-config/scripts/tv_grab_file "${tmp_dir}/${armbian_config_dir}"/usr/bin/tv_grab_file
- install -m 755 "${SRC}"/cache/sources/armbian-config/debian-config "${tmp_dir}/${armbian_config_dir}"/usr/sbin/armbian-config
- install -m 644 "${SRC}"/cache/sources/armbian-config/debian-config-jobs "${tmp_dir}/${armbian_config_dir}"/usr/lib/armbian-config/jobs.sh
- install -m 644 "${SRC}"/cache/sources/armbian-config/debian-config-submenu "${tmp_dir}/${armbian_config_dir}"/usr/lib/armbian-config/submenu.sh
- install -m 644 "${SRC}"/cache/sources/armbian-config/debian-config-functions "${tmp_dir}/${armbian_config_dir}"/usr/lib/armbian-config/functions.sh
- install -m 644 "${SRC}"/cache/sources/armbian-config/debian-config-functions-network "${tmp_dir}/${armbian_config_dir}"/usr/lib/armbian-config/functions-network.sh
- install -m 755 "${SRC}"/cache/sources/armbian-config/softy "${tmp_dir}/${armbian_config_dir}"/usr/sbin/softy
- # fallback to replace armbian-config in BSP
- ln -sf /usr/sbin/armbian-config "${tmp_dir}/${armbian_config_dir}"/usr/bin/armbian-config
- ln -sf /usr/sbin/softy "${tmp_dir}/${armbian_config_dir}"/usr/bin/softy
- dpkg_deb_build "${tmp_dir}/${armbian_config_dir}" "armbian-config"
+ # Armbian config parts
+ install -m 755 "${SRC}"/cache/sources/armbian-config/bin/armbian-config "${tmp_dir}/${armbian_config_dir}"/bin/armbian-config
+ cp -R "${SRC}"/cache/sources/armbian-config/lib/armbian-config/ "${tmp_dir}/${armbian_config_dir}"/lib/
+ # Add development repository to keep rooling release of this tool
+ cat <<- END > ${tmp_dir}/${armbian_config_dir}/etc/apt/sources.list.d/armbian-config.list
+ deb [signed-by=/usr/share/keyrings/armbian.gpg] https://github.armbian.com/configng stable main
+ END
+
+ dpkg_deb_build "${tmp_dir}/${armbian_config_dir}" "armbian-config"
done_with_temp_dir "${cleanup_id}" # changes cwd to "${SRC}" and fires the cleanup function early
}
diff --git a/lib/functions/compilation/packages/armbian-zsh-deb.sh b/lib/functions/compilation/packages/armbian-zsh-deb.sh
index 55339b03c356..839613dcb7c3 100644
--- a/lib/functions/compilation/packages/armbian-zsh-deb.sh
+++ b/lib/functions/compilation/packages/armbian-zsh-deb.sh
@@ -78,6 +78,9 @@ compile_armbian-zsh() {
# define default plugins
sed -i 's/^plugins=.*/plugins=(evalcache git git-extras debian tmux screen history extract colorize web-search docker)/' "${tmp_dir}/${armbian_zsh_dir}"/etc/skel/.zshrc
+ # add collection of Armbian BASH aliases also to ZSH. They are compatible
+ cat "${SRC}"/packages/bsp/common/etc/skel/.bash_aliases >> "${tmp_dir}/${armbian_zsh_dir}"/etc/skel/.zshrc
+
chmod 755 "${tmp_dir}/${armbian_zsh_dir}"/DEBIAN/postinst
dpkg_deb_build "${tmp_dir}/${armbian_zsh_dir}" "armbian-zsh"
diff --git a/lib/functions/compilation/patch/drivers_network.sh b/lib/functions/compilation/patch/drivers_network.sh
index 5fe737914d89..56a5ea4feaf3 100644
--- a/lib/functions/compilation/patch/drivers_network.sh
+++ b/lib/functions/compilation/patch/drivers_network.sh
@@ -381,7 +381,7 @@ driver_rtl8852bs() {
# Bugfix/workaround: Comment undefined RTW_WARN_LMT
# @TODO Check on update if this fix is still needed (added 2024-July-10)
- sed -i "s/RTW_WARN_LMT(/\/\/RTW_WARN_LMT(/g" \
+ sed -i "s/RTW_WARN_LMT(/\/\/RTW_WARN_LMT(/g" \
"$kerneldir/drivers/net/wireless/realtek/rtl8852bs/core/rtw_xmit.c"
# Add to section Makefile
diff --git a/lib/functions/compilation/uboot.sh b/lib/functions/compilation/uboot.sh
index ae9912d70765..305160e46026 100644
--- a/lib/functions/compilation/uboot.sh
+++ b/lib/functions/compilation/uboot.sh
@@ -414,13 +414,23 @@ function compile_uboot() {
unset uboot_postinst_base postinst_functions destination
# declare -f on non-defined function does not do anything (but exits with errors, so ignore them with "|| true")
- cat <<- EOF > "$uboottempdir/usr/lib/u-boot/platform_install.sh"
+ cat <<- EOF > "${uboottempdir}/usr/lib/u-boot/platform_install.sh"
+ # Armbian u-boot install script for linux-u-boot-${BOARD}-${BRANCH} ${artifact_version}
+ # This file provides functions for deploying u-boot to a block device.
DIR=/usr/lib/$uboot_name
$(declare -f write_uboot_platform || true)
$(declare -f write_uboot_platform_mtd || true)
$(declare -f setup_write_uboot_platform || true)
EOF
+ if [[ "${SHOW_DEBUG}" == "yes" ]]; then
+ display_alert "Showing contents of" "usr/lib/u-boot/platform_install.sh" "info"
+ run_tool_batcat --file-name "usr/lib/u-boot/platform_install.sh" "${uboottempdir}/usr/lib/u-boot/platform_install.sh"
+ fi
+
+ display_alert "Running shellcheck" "usr/lib/u-boot/platform_install.sh" "info"
+ shellcheck_debian_control_scripts "${uboottempdir}/usr/lib/u-boot/platform_install.sh"
+
display_alert "Das U-Boot .deb package version" "${artifact_version}" "info"
# set up control file
diff --git a/lib/functions/configuration/main-config.sh b/lib/functions/configuration/main-config.sh
index d0df1d4210da..0d83fa707ab9 100644
--- a/lib/functions/configuration/main-config.sh
+++ b/lib/functions/configuration/main-config.sh
@@ -166,10 +166,10 @@ function do_main_configuration() {
# Support for LUKS / cryptroot
if [[ $CRYPTROOT_ENABLE == yes ]]; then
enable_extension "fs-cryptroot-support" # add the tooling needed, cryptsetup
- ROOT_MAPPER="armbian-root" # TODO: fixed name can't be used for parallel image building (rpardini: ?)
if [[ -z $CRYPTROOT_PASSPHRASE ]]; then # a passphrase is mandatory if rootfs encryption is enabled
exit_with_error "Root encryption is enabled but CRYPTROOT_PASSPHRASE is not set"
fi
+ [[ -z $CRYPTROOT_MAPPER ]] && CRYPTROOT_MAPPER="armbian-root" # TODO: fixed name can't be used for parallel image building (rpardini: ?)
[[ -z $CRYPTROOT_SSH_UNLOCK ]] && CRYPTROOT_SSH_UNLOCK=yes
[[ -z $CRYPTROOT_SSH_UNLOCK_PORT ]] && CRYPTROOT_SSH_UNLOCK_PORT=2022
# Default to pdkdf2, this used to be the default with cryptroot <= 2.0, however
@@ -267,7 +267,6 @@ function do_main_configuration() {
[[ -z $OFFSET ]] && OFFSET=4 # offset to 1st partition (we use 4MiB boundaries by default)
[[ -z $ARCH ]] && ARCH=arm64 # makes little sense to default to anything... # @TODO: remove, but check_config_userspace_release_and_desktop requires it
ATF_COMPILE=yes # @TODO: move to armhf/arm64
- [[ -z $WIREGUARD ]] && WIREGUARD="yes"
[[ -z $EXTRAWIFI ]] && EXTRAWIFI="yes"
[[ -z $PLYMOUTH ]] && PLYMOUTH="yes"
[[ -z $AUFS ]] && AUFS="yes"
@@ -344,8 +343,6 @@ function do_main_configuration() {
declare -g -r PACKAGE_LIST_FAMILY="${PACKAGE_LIST_FAMILY}"
declare -g -r PACKAGE_LIST_FAMILY_REMOVE="${PACKAGE_LIST_FAMILY_REMOVE}"
- if [[ $RELEASE == trixie || $ARCH == riscv64 ]]; then remove_packages "cpufrequtils"; fi # this will remove from rootfs as well
-
display_alert "Done with do_main_configuration" "do_main_configuration" "debug"
}
diff --git a/lib/functions/general/apt-utils.sh b/lib/functions/general/apt-utils.sh
index a5c8123ca578..c0e1bc715a77 100644
--- a/lib/functions/general/apt-utils.sh
+++ b/lib/functions/general/apt-utils.sh
@@ -9,7 +9,6 @@
function apt_find_upstream_package_version_and_download_url() {
declare sought_package_name="${1}"
- declare -a package_info_download_urls=()
declare first_letter_of_sought_package_name="${sought_package_name:0:1}"
declare mirror_with_slash="undetermined/"
@@ -17,15 +16,15 @@ function apt_find_upstream_package_version_and_download_url() {
Ubuntu)
# Only LTS releases have an "-updates" repo that is worth looking into
if [[ "${RELEASE}" == "focal" || "${RELEASE}" == "jammy" ]]; then # @TODO: release info information, is_ubuntu_release_lts() or similar
- package_info_download_urls+=("https://packages.ubuntu.com/${RELEASE}-updates/${ARCH}/${sought_package_name}/download")
+ package_download_release=${RELEASE}-updates
else
- package_info_download_urls+=("https://packages.ubuntu.com/${RELEASE}/${ARCH}/${sought_package_name}/download")
+ package_download_release=${RELEASE}
fi
mirror_with_slash="${UBUNTU_MIRROR}"
;;
Debian)
- package_info_download_urls+=("https://packages.debian.org/${RELEASE}/${ARCH}/${sought_package_name}/download")
+ package_download_release=${RELEASE}
mirror_with_slash="${DEBIAN_MIRROR}"
;;
@@ -41,35 +40,29 @@ function apt_find_upstream_package_version_and_download_url() {
declare base_down_url="http://${mirror_with_slash}pool/main/${first_letter_of_sought_package_name}/${sought_package_name}"
- declare index package_info_download_url
- # loop over the package_info_download_urls with index and value
- for index in "${!package_info_download_urls[@]}"; do
- package_info_download_url="${package_info_download_urls[$index]}"
- display_alert "Testing URL" "${package_info_download_url}" "debug"
-
- declare package_info_download_url_file
- package_info_download_url_file="$(mktemp)"
- curl --silent --show-error --max-time 10 "${package_info_download_url}" > "${package_info_download_url_file}" || true # don't fail
- declare package_info_download_url_file_package_name # grep the file for the package name. parse "name"
- package_info_download_url_file_package_name="$(grep -oP '(?<=)[^<]+' "${package_info_download_url_file}" | grep "^${sought_package_name}_" | head -n 1)"
- rm -f "${package_info_download_url_file}"
-
- display_alert "Package name parsed" "${package_info_download_url_file_package_name}" "debug"
- if [[ "${package_info_download_url_file_package_name}" == "${sought_package_name}_"* ]]; then
- found_package_filename="${package_info_download_url_file_package_name}"
- found_package_down_url="${base_down_url}/${found_package_filename}"
- display_alert "Found package filename" "${found_package_filename} in url ${package_info_download_url}" "debug"
- break
- fi
- done
+ # get json with latest pacakge info generated by GHA
+ case "${GITHUB_MIRROR}" in
+ "ghproxy")
+ package_info_download_url="https://ghp.ci/https://raw.githubusercontent.com/armbian/armbian.github.io/refs/heads/data/data/${sought_package_name}.json"
+ ;;
+ *)
+ package_info_download_url="https://github.armbian.com/${sought_package_name}.json"
+ ;;
+ esac
+ package_info_download_url_file="$(mktemp)"
+ curl --silent --show-error --max-time 10 $package_info_download_url -o $package_info_download_url_file
+ found_package_filename=$(jq -r .[\"${package_download_release}\"].${ARCH} $package_info_download_url_file)
if [[ "${found_package_filename}" == "${sought_package_name}_"* ]]; then
display_alert "Found upstream base-files package filename" "${found_package_filename}" "info"
else
- display_alert "Could not find package filename for '${sought_package_name}' in '${package_info_download_urls[*]}'" "looking for ${sought_package_name}" "warn"
+ display_alert "Could not find package filename for '${sought_package_name}' in distro repo" "looking for ${sought_package_name}, found_package_filename is ${found_package_filename}" "warn"
return 1
fi
+ found_package_down_url="${base_down_url}/${found_package_filename}"
+ display_alert "Found package filename" "${found_package_filename} in url ${found_package_down_url}" "debug"
+
# Now we have the package name, lets parse out the version.
found_package_version="$(echo "${found_package_filename}" | grep -oP '(?<=_)[^_]+(?=_)')"
display_alert "Found base-files upstream package version" "${found_package_version}" "info"
diff --git a/lib/functions/general/bat-cat.sh b/lib/functions/general/bat-cat.sh
index f389909efa2a..1dc4486045d0 100644
--- a/lib/functions/general/bat-cat.sh
+++ b/lib/functions/general/bat-cat.sh
@@ -9,7 +9,7 @@
function run_tool_batcat() {
# Default version
- BATCAT_VERSION=${BATCAT_VERSION:-0.24.0} # https://github.com/sharkdp/bat/releases
+ BATCAT_VERSION=${BATCAT_VERSION:-0.25.0} # https://github.com/sharkdp/bat/releases
declare non_cache_dir="/armbian-tools/batcat" # To deploy/reuse cached batcat in a Docker image.
diff --git a/lib/functions/general/oci-oras.sh b/lib/functions/general/oci-oras.sh
index 1e7ac0c3f220..8e550924ec65 100644
--- a/lib/functions/general/oci-oras.sh
+++ b/lib/functions/general/oci-oras.sh
@@ -85,7 +85,7 @@ function run_tool_oras() {
display_alert "Running ORAS ${ACTUAL_VERSION}" "HOME='${ORAS_HOME}'; retries='${retries:-1}'; cmdline: $*" "debug"
if [[ "${retries:-1}" -gt 1 ]]; then
display_alert "Calling ORAS with retries ${retries}" "$*" "debug"
- sleep_seconds="30" do_with_retries "${retries}" env -i "HOME=${ORAS_HOME}" "HTTPS_PROXY=${HTTPS_PROXY}" "${ORAS_BIN}" "$@"
+ sleep_seconds="30" do_with_retries "${retries}" env -i "HOME=${ORAS_HOME}" "HTTPS_PROXY=${HTTPS_PROXY}" "${ORAS_BIN}" "$@"
else
# If any parameters passed, call ORAS, otherwise exit. We call it this way (sans-parameters) early to prepare ORAS tooling.
if [[ $# -eq 0 ]]; then
diff --git a/lib/functions/image/partitioning.sh b/lib/functions/image/partitioning.sh
index a638410af504..773ed9501579 100644
--- a/lib/functions/image/partitioning.sh
+++ b/lib/functions/image/partitioning.sh
@@ -300,7 +300,7 @@ function prepare_partitions() {
wait_for_disk_sync "after mkfs" # force writes to be really flushed
# store in readonly global for usage in later hooks
- root_part_uuid="$(blkid -s UUID -o value ${rootdevice})"
+ root_part_uuid="$(blkid -s UUID -o value ${LOOP}p${rootpart})"
declare -g -r ROOT_PART_UUID="${root_part_uuid}"
display_alert "Mounting rootfs" "$rootdevice (UUID=${ROOT_PART_UUID})"
@@ -310,7 +310,7 @@ function prepare_partitions() {
local rootfs
if [[ $CRYPTROOT_ENABLE == yes ]]; then
# map the LUKS container partition via its UUID to be the 'cryptroot' device
- echo "$ROOT_MAPPER UUID=${root_part_uuid} none luks" >> $SDCARD/etc/crypttab
+ echo "$CRYPTROOT_MAPPER UUID=${root_part_uuid} none luks" >> $SDCARD/etc/crypttab
rootfs=$rootdevice # used in fstab
else
rootfs="UUID=$(blkid -s UUID -o value $rootdevice)"
@@ -369,7 +369,7 @@ function prepare_partitions() {
if [[ -f $SDCARD/boot/armbianEnv.txt ]]; then
display_alert "Found armbianEnv.txt" "${SDCARD}/boot/armbianEnv.txt" "debug"
if [[ $CRYPTROOT_ENABLE == yes ]]; then
- echo "rootdev=$rootdevice cryptdevice=UUID=${root_part_uuid}:$ROOT_MAPPER" >> "${SDCARD}/boot/armbianEnv.txt"
+ echo "rootdev=$rootdevice cryptdevice=UUID=${root_part_uuid}:$CRYPTROOT_MAPPER" >> "${SDCARD}/boot/armbianEnv.txt"
else
echo "rootdev=$rootfs" >> "${SDCARD}/boot/armbianEnv.txt"
fi
@@ -389,7 +389,7 @@ function prepare_partitions() {
sed -i -e "s/rootfstype \"ext4\"/rootfstype \"$ROOTFS_TYPE\"/" $SDCARD/boot/boot.ini
if [[ $CRYPTROOT_ENABLE == yes ]]; then
rootpart="UUID=${root_part_uuid}"
- sed -i 's/^setenv rootdev .*/setenv rootdev "\/dev\/mapper\/'$ROOT_MAPPER' cryptdevice='$rootpart':'$ROOT_MAPPER'"/' $SDCARD/boot/boot.ini
+ sed -i 's/^setenv rootdev .*/setenv rootdev "\/dev\/mapper\/'$CRYPTROOT_MAPPER' cryptdevice='$rootpart':'$CRYPTROOT_MAPPER'"/' $SDCARD/boot/boot.ini
else
sed -i 's/^setenv rootdev .*/setenv rootdev "'$rootfs'"/' $SDCARD/boot/boot.ini
fi
diff --git a/lib/functions/image/rootfs-to-image.sh b/lib/functions/image/rootfs-to-image.sh
index 7585374c9dc0..92dcc6625c34 100644
--- a/lib/functions/image/rootfs-to-image.sh
+++ b/lib/functions/image/rootfs-to-image.sh
@@ -119,7 +119,7 @@ function create_image_from_sdcard_rootfs() {
wait_for_disk_sync "before umount MOUNT"
umount_chroot_recursive "${MOUNT}" "MOUNT"
- [[ $CRYPTROOT_ENABLE == yes ]] && cryptsetup luksClose "$ROOT_MAPPER"
+ [[ $CRYPTROOT_ENABLE == yes ]] && cryptsetup luksClose "$CRYPTROOT_MAPPER"
call_extension_method "post_umount_final_image" "config_post_umount_final_image" <<- 'POST_UMOUNT_FINAL_IMAGE'
*allow config to hack into the image after the unmount*
diff --git a/lib/functions/main/build-packages.sh b/lib/functions/main/build-packages.sh
index e00b64f272e8..f3f0a6fde98b 100644
--- a/lib/functions/main/build-packages.sh
+++ b/lib/functions/main/build-packages.sh
@@ -32,9 +32,7 @@ function determine_artifacts_to_build_for_image() {
fi
if [[ "${PACKAGE_LIST_RM}" != *armbian-config* ]]; then
- if [[ $BUILD_MINIMAL != yes ]]; then
- artifacts_to_build+=("armbian-config")
- fi
+ artifacts_to_build+=("armbian-config")
fi
if [[ "${PACKAGE_LIST_RM}" != *armbian-zsh* ]]; then
diff --git a/lib/functions/main/config-prepare.sh b/lib/functions/main/config-prepare.sh
index a58b850c29ce..05573d493561 100644
--- a/lib/functions/main/config-prepare.sh
+++ b/lib/functions/main/config-prepare.sh
@@ -300,6 +300,9 @@ function config_post_main() {
# Do some sanity checks for userspace stuff, if RELEASE/DESKTOP_ENVIRONMENT is set.
check_config_userspace_release_and_desktop
+ # late Userspace / package list fixes; RELEASE and DISTRIBUTION must be set.
+ fix_userspace_packages_release_and_distro
+
track_general_config_variables "before calling extension_finish_config"
display_alert "Extensions: finish configuration" "extension_finish_config" "debug"
call_extension_method "extension_finish_config" <<- 'EXTENSION_FINISH_CONFIG'
@@ -380,6 +383,19 @@ function check_config_userspace_release_and_desktop() {
return 0
}
+function fix_userspace_packages_release_and_distro() {
+ display_alert "fix_userspace_packages_release_and_distro" "For distro '${DISTRIBUTION}' release '${RELEASE}'" "debug"
+
+ # Some old hack from the past, not sure if it's still needed. Originally from https://github.com/armbian/build/pull/5881
+ if [[ $RELEASE == trixie || $ARCH == riscv64 ]]; then remove_packages "cpufrequtils"; fi # this will remove from rootfs as well
+
+ # Debian: no need for this package in the rootfs, as it provides add-apt-repository which is not used on our Debian builds
+ if [[ "${DISTRIBUTION}" == "Debian" ]]; then
+ display_alert "Not-installing software-properties-common" "For distro '${DISTRIBUTION}' release '${RELEASE}'" "warn"
+ remove_packages "software-properties-common" "software-properties-gtk" "software-properties-common"
+ fi
+}
+
# Some utility functions
function branch2dir() {
[[ "${1}" == "head" ]] && echo "HEAD" || echo "${1##*:}"
diff --git a/lib/functions/rootfs/apt-install.sh b/lib/functions/rootfs/apt-install.sh
index 990830496023..fc2a310e9e13 100644
--- a/lib/functions/rootfs/apt-install.sh
+++ b/lib/functions/rootfs/apt-install.sh
@@ -103,7 +103,7 @@ function install_deb_chroot() {
# install in chroot via apt-get, not dpkg, so dependencies are also installed from repo if needed.
declare -g if_error_detail_message="Installation of $install_target failed ${BOARD} ${RELEASE} ${BUILD_DESKTOP} ${LINUXFAMILY}"
declare -a extra_apt_envs=()
- extra_apt_envs+=("ARMBIAN_IMAGE_BUILD_BOOTFS_TYPE=${BOOTFS_TYPE:-"unset"}") # used by package postinst scripts to bevahe
+ extra_apt_envs+=("ARMBIAN_IMAGE_BUILD_BOOTFS_TYPE=${BOOTFS_TYPE:-"unset"}") # used by package postinst scripts to bevahe
DONT_MAINTAIN_APT_CACHE="yes" chroot_sdcard_apt_get --no-install-recommends "${apt_options}" install "${install_target}" # don't auto-maintain apt cache when installing from packages.
unset extra_apt_envs
diff --git a/lib/functions/rootfs/distro-agnostic.sh b/lib/functions/rootfs/distro-agnostic.sh
index 64b17ea36cdd..9c80fcd595fa 100644
--- a/lib/functions/rootfs/distro-agnostic.sh
+++ b/lib/functions/rootfs/distro-agnostic.sh
@@ -99,16 +99,14 @@ function install_distribution_agnostic() {
echo -e "${VENDOR} ${IMAGE_VERSION:-"${REVISION}"} ${RELEASE^} \\l \n" > "${SDCARD}"/etc/issue
echo "${VENDOR} ${IMAGE_VERSION:-"${REVISION}"} ${RELEASE^}" > "${SDCARD}"/etc/issue.net
- # PRETTY_NAME changing in os-release is now done in armbian-base-files directly.
+ # Copy SKEL bashrc and profile to root user
+ cp "${SDCARD}"/etc/skel/.bashrc "${SDCARD}"/root/
+ cp "${SDCARD}"/etc/skel/.profile "${SDCARD}"/root/
- # enable few bash aliases enabled in Ubuntu by default to make it even
- sed "s/#alias ll='ls -l'/alias ll='ls -l'/" -i "${SDCARD}"/etc/skel/.bashrc
- sed "s/#alias la='ls -A'/alias la='ls -A'/" -i "${SDCARD}"/etc/skel/.bashrc
- sed "s/#alias l='ls -CF'/alias l='ls -CF'/" -i "${SDCARD}"/etc/skel/.bashrc
- # root user is already there. Copy bashrc there as well
- cp "${SDCARD}"/etc/skel/.bashrc "${SDCARD}"/root
+ # Copy systemwide alieases to root user too
+ cp "${SRC}"/packages/bsp/common/etc/skel/.bash_aliases "${SDCARD}"/root/
- # display welcome message at first root login @TODO: what reads this?
+ # display welcome message at first root login which is ready by /usr/sbin/armbian/armbian-firstlogin
touch "${SDCARD}"/root/.not_logged_in_yet
if [[ ${DESKTOP_AUTOLOGIN} == yes ]]; then
@@ -335,9 +333,7 @@ function install_distribution_agnostic() {
# install armbian-config
if [[ "${PACKAGE_LIST_RM}" != *armbian-config* ]]; then
- if [[ $BUILD_MINIMAL != yes ]]; then
- install_artifact_deb_chroot "armbian-config"
- fi
+ install_artifact_deb_chroot "armbian-config"
fi
# install armbian-zsh
@@ -354,11 +350,6 @@ function install_distribution_agnostic() {
chroot_sdcard_apt_get_remove --auto-remove plymouth
fi
- # install wireguard tools
- if [[ $WIREGUARD == yes ]]; then
- install_deb_chroot "wireguard-tools" "remote" # @TODO: move this to some image pkg list in config
- fi
-
# freeze armbian packages
if [[ "${BSPFREEZE:-"no"}" == yes ]]; then
display_alert "Freezing Armbian packages" "$BOARD" "info"
@@ -399,11 +390,11 @@ function install_distribution_agnostic() {
# enable additional services, if they exist.
display_alert "Enabling Armbian services" "systemd" "info"
if [[ -f "${SDCARD}"/lib/systemd/system/armbian-firstrun.service ]]; then
- # Note: armbian-firstrun starts before the user has a chance to edit the env file's values.
- # Exceptionaly, the env file can be edited during image build time
- if test -n "$OPENSSHD_REGENERATE_HOST_KEYS"; then
- sed -i "s/\(^OPENSSHD_REGENERATE_HOST_KEYS *= *\).*/\1$OPENSSHD_REGENERATE_HOST_KEYS/" "${SDCARD}"/etc/default/armbian-firstrun
- fi
+ # Note: armbian-firstrun starts before the user has a chance to edit the env file's values.
+ # Exceptionaly, the env file can be edited during image build time
+ if test -n "$OPENSSHD_REGENERATE_HOST_KEYS"; then
+ sed -i "s/\(^OPENSSHD_REGENERATE_HOST_KEYS *= *\).*/\1$OPENSSHD_REGENERATE_HOST_KEYS/" "${SDCARD}"/etc/default/armbian-firstrun
+ fi
chroot_sdcard systemctl --no-reload enable armbian-firstrun.service
fi
[[ -f "${SDCARD}"/lib/systemd/system/armbian-zram-config.service ]] && chroot_sdcard systemctl --no-reload enable armbian-zram-config.service
diff --git a/lib/functions/rootfs/trap-rootfs.sh b/lib/functions/rootfs/trap-rootfs.sh
index 15911c3501a6..ce8ba64ce19a 100644
--- a/lib/functions/rootfs/trap-rootfs.sh
+++ b/lib/functions/rootfs/trap-rootfs.sh
@@ -63,7 +63,7 @@ function trap_handler_cleanup_rootfs_and_image() {
# unmount tmpfs mounted on SDCARD if it exists. #@TODO: move to new tmpfs-utils scheme
mountpoint -q "${SDCARD}" && umount "${SDCARD}"
- [[ $CRYPTROOT_ENABLE == yes ]] && cryptsetup luksClose "${ROOT_MAPPER}"
+ [[ $CRYPTROOT_ENABLE == yes ]] && cryptsetup luksClose "${CRYPTROOT_MAPPER}"
if [[ "${PRESERVE_SDCARD_MOUNT}" == "yes" ]]; then
display_alert "Preserving SD card mount" "trap_handler_cleanup_rootfs_and_image" "warn"
diff --git a/packages/blobs/rockchip/rk3308_idbloader_ddr589MHz_uart0_m0_v2.06.136sd.bin b/packages/blobs/rockchip/rk3308_idbloader_ddr589MHz_uart0_m0_v2.06.136sd.bin
deleted file mode 100644
index b287863a2a1f..000000000000
Binary files a/packages/blobs/rockchip/rk3308_idbloader_ddr589MHz_uart0_m0_v2.06.136sd.bin and /dev/null differ
diff --git a/packages/blobs/rockchip/rk3308_loader_ddr589MHz_uart0_m0_v2.06.136sd.bin b/packages/blobs/rockchip/rk3308_loader_ddr589MHz_uart0_m0_v2.06.136sd.bin
deleted file mode 100644
index 5534eab726bf..000000000000
Binary files a/packages/blobs/rockchip/rk3308_loader_ddr589MHz_uart0_m0_v2.06.136sd.bin and /dev/null differ
diff --git a/packages/bsp/common/etc/skel/.bash_aliases b/packages/bsp/common/etc/skel/.bash_aliases
new file mode 100644
index 000000000000..bf8e24991ed8
--- /dev/null
+++ b/packages/bsp/common/etc/skel/.bash_aliases
@@ -0,0 +1,6 @@
+# BASH or ZSH shell alieases
+alias ll='ls -l'
+alias la='ls -A'
+alias l='ls -CF'
+alias kernel="uname -r | sed 's/[1-9]\+[0-9]*\.[0-9]\+\.[0-9]\+-//' | sed 's/[1-9]\+[0-9]*\.[0-9]*\-rc[0-9]\+-//'"
+alias showip='ip -4 addr show scope global | grep inet | awk "{print $2}" | cut -d"/" -f1 | sed "s/ inet //g" | paste -s -d, -'
diff --git a/packages/bsp/common/etc/update-motd.d/41-commands b/packages/bsp/common/etc/update-motd.d/41-commands
index 1ba43c57beb2..70db18667504 100755
--- a/packages/bsp/common/etc/update-motd.d/41-commands
+++ b/packages/bsp/common/etc/update-motd.d/41-commands
@@ -14,6 +14,9 @@ MOTD_DISABLE=""
[[ -f /etc/default/armbian-motd ]] && . /etc/default/armbian-motd
+# read upgrade count to show upgrade command
+[[ -f /var/cache/apt/archives/updates.number ]] && . /var/cache/apt/archives/updates.number
+
for f in $MOTD_DISABLE; do
[[ $f == $THIS_SCRIPT ]] && exit 0
done
@@ -21,9 +24,9 @@ done
# text, sudo / without, command, condition
# condition can be fairly complex
list=(
- "System config","sudo ","armbian-config","true"
- "System monitor","","htop","true"
- "Installer","","armbian-install","! grep -q \"INSTALLED=true\" /etc/armbian-image-release 2> /dev/null && ((($(date +%s) - $(stat -c +%X /etc/armbian-image-release 2> /dev/null)) < 86400))"
+ "Configuration","","armbian-config","true"
+ "Upgrade","","armbian-upgrade","[[ \"${NUM_UPDATES}\" -gt 0 ]]"
+ "Monitoring","","htop","true"
)
# verify if command exits on the system
diff --git a/packages/bsp/common/usr/sbin/armbian-install b/packages/bsp/common/usr/bin/armbian-install
similarity index 99%
rename from packages/bsp/common/usr/sbin/armbian-install
rename to packages/bsp/common/usr/bin/armbian-install
index a4280c0c0e56..6f264d343149 100755
--- a/packages/bsp/common/usr/sbin/armbian-install
+++ b/packages/bsp/common/usr/bin/armbian-install
@@ -20,6 +20,9 @@
# $4 = :space: separated list of all MTD device names
# Note: MTD char device names are passed in format device_name:partition_label - e.g.: mtd0:SPL
+trap "exit" INT TERM
+[[ $EUID != 0 ]] && exec sudo "$0" "$@"
+
[[ -f /usr/lib/u-boot/platform_install.sh ]] && source /usr/lib/u-boot/platform_install.sh
# ORIGINAL_SCRIPT_NAME: Must be either armbian-install or nand-sata-install
diff --git a/packages/bsp/common/usr/bin/armbian-upgrade b/packages/bsp/common/usr/bin/armbian-upgrade
new file mode 100755
index 000000000000..ec0c0f1a4530
--- /dev/null
+++ b/packages/bsp/common/usr/bin/armbian-upgrade
@@ -0,0 +1,8 @@
+#!/bin/bash
+trap "exit" INT TERM
+[[ $EUID != 0 ]] && exec sudo "$0" "$@"
+apt update
+apt -y upgrade
+apt clean
+apt -y autoremove
+exit 0
diff --git a/packages/bsp/common/usr/bin/armbianmonitor b/packages/bsp/common/usr/bin/armbianmonitor
index 94e65d42567b..b37a67854ea2 100755
--- a/packages/bsp/common/usr/bin/armbianmonitor
+++ b/packages/bsp/common/usr/bin/armbianmonitor
@@ -82,7 +82,7 @@
############################################################################
# Config:
-declare -a paste_servers=("paste.armbian.com" "paste.next.armbian.com")
+declare -a paste_servers=("paste.armbian.com" "paste.next.armbian.com" "paste.armbian.de")
if [[ "${PASTE_SERVER_HOST}" != "" ]]; then
echo "Using custom paste server: '${PASTE_SERVER_HOST}'"
paste_servers=("${PASTE_SERVER_HOST}" "${paste_servers[@]}")
@@ -179,7 +179,7 @@ ParseOptions() {
# in clear since otherwise the log becomes worthless due to randomly generated
# addresses here and there that might conflict
sed -E 's/([0-9]{1,3}\.)([0-9]{1,3}\.)([0-9]{1,3}\.)([0-9]{1,3})/XXX.XXX.\3\4/g' |
- curl -s --data-binary @- "https://${paste_server}/log"
+ curl -s --fail --data-binary @- "https://${paste_server}/log"
# Check PIPESTATUS to know if everything worked. Any non-zero exit status means something didn't work.
for i in "${PIPESTATUS[@]}"; do
counter=$((counter + 1))
@@ -973,7 +973,7 @@ CollectSupportInfo() {
cat /etc/resolv.conf
)" ||
echo -e "\n### resolv.conf does not exist or readable"
- echo -e "\n### Current sysinfo:\n\n$(iostat -p ALL | grep -v "^loop")\n\n$(vmstat -w)\n\n$(free -h)\n\n$(zramctl 2> /dev/null)\n\n$(uptime)\n\n$(dmesg | tail -n 250)"
+ echo -e "\n### Current sysinfo:\n\n$(command -v iostat >/dev/null 2>&1 && iostat -p ALL | grep -v "^loop")\n\n$(vmstat -w)\n\n$(free -h)\n\n$(zramctl 2> /dev/null)\n\n$(uptime)\n\n$(dmesg | tail -n 250)"
echo -e "\n"
[[ "$(id -u)" -eq "0" ]] && for sysfsnode in /proc/sys/vm/*; do sysctl $(echo ${sysfsnode} | sed 's|/proc/sys/vm/|vm.|'); done
echo -e "\n### interrupts:\n$(cat /proc/interrupts)"
diff --git a/packages/bsp/common/usr/sbin/nand-sata-install b/packages/bsp/common/usr/bin/nand-sata-install
similarity index 100%
rename from packages/bsp/common/usr/sbin/nand-sata-install
rename to packages/bsp/common/usr/bin/nand-sata-install
diff --git a/packages/bsp/common/usr/lib/armbian/armbian-apt-updates b/packages/bsp/common/usr/lib/armbian/armbian-apt-updates
index 87f4e00f7aa2..ce32e48edcd4 100755
--- a/packages/bsp/common/usr/lib/armbian/armbian-apt-updates
+++ b/packages/bsp/common/usr/lib/armbian/armbian-apt-updates
@@ -36,6 +36,9 @@ fi
myfile="/var/cache/apt/archives/updates.number"
myfiles="/var/cache/apt/archives/updates.list"
+# create folder as it doesn't exists at start to prevent erroring
+mkdir -p "/var/cache/apt/archives/"
+
# update procedure
DISTRO=$(lsb_release -c | cut -d ":" -f 2 | tr -d '[:space:]') && DISTRO=${DISTRO,,}
diff --git a/packages/bsp/common/usr/lib/armbian/armbian-firstlogin b/packages/bsp/common/usr/lib/armbian/armbian-firstlogin
index a983dc9a9870..4d60b873abdf 100755
--- a/packages/bsp/common/usr/lib/armbian/armbian-firstlogin
+++ b/packages/bsp/common/usr/lib/armbian/armbian-firstlogin
@@ -11,7 +11,7 @@
[[ -f /etc/lsb-release ]] && . /etc/lsb-release
[[ -f /etc/os-release ]] && . /etc/os-release
[[ -z "$DISTRIB_CODENAME" ]] && DISTRIB_CODENAME="${VERSION_CODENAME}"
-[[ -n "$DISTRIB_CODENAME" && -f /etc/armbian-distribution-status ]] && DISTRIBUTION_STATUS=$(grep "$DISTRIB_CODENAME" /etc/armbian-distribution-status | cut -d"=" -f2 | cut -d";" -f1)
+[[ -n "$DISTRIB_CODENAME" && -f /etc/armbian-distribution-status ]] && DISTRIBUTION_STATUS=$(grep "^$DISTRIB_CODENAME" /etc/armbian-distribution-status | cut -d"=" -f2 | cut -d";" -f1)
. /etc/armbian-release
diff --git a/packages/bsp/dg-pi-rb5/zz-update-abl-kernel b/packages/bsp/dg-pi-rb5/zz-update-abl-kernel
new file mode 100644
index 000000000000..3cf27bfe0508
--- /dev/null
+++ b/packages/bsp/dg-pi-rb5/zz-update-abl-kernel
@@ -0,0 +1,32 @@
+#!/bin/bash
+set -ex
+new_rootfs_image_uuid=$(sed -e 's/^.*root=UUID=//' -e 's/ .*$//' < /proc/cmdline)
+BOOTIMG_CMDLINE_EXTRA="clk_ignore_unused pd_ignore_unused loglevel=8 panic=30 audit=0 allow_mismatched_32bit_el0 mem_sleep_default=s2idle console=tty0 earlycon=qcom_geni,0xa90000 console=ttyMSM0,1500000n8 pcie_pme=nomsi"
+bootimg_cmdline="${BOOTIMG_CMDLINE_EXTRA} root=UUID=${new_rootfs_image_uuid} slot_suffix=${abl_boot_partition_label#boot}"
+gzip -c /boot/vmlinuz > /tmp/Image.gz
+file /boot/vmlinuz
+file /tmp/Image.gz
+version=$(readlink /boot/vmlinuz | cut -d'-' -f2-)
+cat /tmp/Image.gz /usr/lib/linux-image-${version}/qcom/dg-pi-rb5.dtb > /tmp/Image.gz-dtb
+source /boot/armbianEnv.txt
+/usr/bin/mkbootimg \
+ --kernel /tmp/Image.gz-dtb \
+ --ramdisk /boot/initrd.img \
+ --base 0x0 \
+ --second_offset 0x00f00000 \
+ --cmdline "${bootimg_cmdline}" \
+ --kernel_offset 0x8000 \
+ --ramdisk_offset 0x1000000 \
+ --tags_offset 0x100 \
+ --pagesize 4096 \
+ -o /boot/armbian-kernel.img
+rm -f /tmp/Image.gz /tmp/Image.gz-dtb
+
+if [ -n "$abl_boot_partition_label" ];then
+ echo abl boot partition label is $abl_boot_partition_label
+ dd if=/boot/armbian-kernel.img of=/dev/disk/by-partlabel/${abl_boot_partition_label}
+else
+ echo abl boot partition label is not defined, exit
+ exit
+fi
+set +ex
diff --git a/packages/bsp/dg-pi-rb5/zz-update-abl-kernel-old b/packages/bsp/dg-pi-rb5/zz-update-abl-kernel-old
new file mode 100644
index 000000000000..49ecd5c08e95
--- /dev/null
+++ b/packages/bsp/dg-pi-rb5/zz-update-abl-kernel-old
@@ -0,0 +1,30 @@
+#!/bin/bash
+set -ex
+new_rootfs_image_uuid=$(sed -e 's/^.*root=UUID=//' -e 's/ .*$//' < /proc/cmdline)
+BOOTIMG_CMDLINE_EXTRA="clk_ignore_unused pd_ignore_unused loglevel=8 panic=30 audit=0 allow_mismatched_32bit_el0 mem_sleep_default=s2idle console=tty0 earlycon=qcom_geni,0xa90000 console=ttyMSM0,1500000n8 pcie_pme=nomsi"
+bootimg_cmdline="${BOOTIMG_CMDLINE_EXTRA} root=UUID=${new_rootfs_image_uuid} slot_suffix=${abl_boot_partition_label#boot}"
+gzip -c /boot/vmlinuz-*-sm8250 > /tmp/Image.gz
+cat /tmp/Image.gz /usr/lib/linux-image-*-sm8250/qcom/dg-pi-rb5.dtb > /tmp/Image.gz-dtb
+new_ramdisk=$(ls -1 /boot/initrd* | sort --version-sort | tail -n1)
+source /boot/armbianEnv.txt
+/usr/bin/mkbootimg \
+ --kernel /tmp/Image.gz-dtb \
+ --ramdisk "${new_ramdisk}" \
+ --base 0x0 \
+ --second_offset 0x00f00000 \
+ --cmdline "${bootimg_cmdline}" \
+ --kernel_offset 0x8000 \
+ --ramdisk_offset 0x1000000 \
+ --tags_offset 0x100 \
+ --pagesize 4096 \
+ -o /boot/armbian-kernel.img
+rm -f /tmp/Image.gz /tmp/Image.gz-dtb
+
+if [ -n "$abl_boot_partition_label" ];then
+ echo abl boot partition label is $abl_boot_partition_label
+ dd if=/boot/armbian-kernel.img of=/dev/disk/by-partlabel/${abl_boot_partition_label}
+else
+ echo abl boot partition label is not defined, exit
+ exit
+fi
+set +ex
diff --git a/packages/bsp/retroidpocket/90-feedbackd-spmi-haptics.rules b/packages/bsp/retroidpocket/90-feedbackd-spmi-haptics.rules
new file mode 100755
index 000000000000..739c0ac0391d
--- /dev/null
+++ b/packages/bsp/retroidpocket/90-feedbackd-spmi-haptics.rules
@@ -0,0 +1 @@
+SUBSYSTEM=="input", KERNEL=="event*", ENV{ID_INPUT}=="1", SUBSYSTEMS=="input", ATTRS{name}=="spmi_haptics", TAG+="uaccess", ENV{FEEDBACKD_TYPE}="vibra"
diff --git a/packages/bsp/retroidpocket/99-ignore-gamepad.rules b/packages/bsp/retroidpocket/99-ignore-gamepad.rules
new file mode 100644
index 000000000000..283bce545fd1
--- /dev/null
+++ b/packages/bsp/retroidpocket/99-ignore-gamepad.rules
@@ -0,0 +1 @@
+SUBSYSTEM=="input", ATTRS{name}=="Retroid Pocket Controller", MODE="0666", ENV{ID_INPUT_MOUSE}="0", ENV{ID_INPUT_JOYSTICK}="1"
diff --git a/packages/bsp/rockchip/asound.conf b/packages/bsp/rockchip/asound.conf
index 6559665239de..4aec50abab31 100644
--- a/packages/bsp/rockchip/asound.conf
+++ b/packages/bsp/rockchip/asound.conf
@@ -1,27 +1,3 @@
-pcm.OnBoard_D0 {
-
- type hw
- card OnBoard
- device 0
-
-}
-
-pcm.OnBoard_D1 {
-
- type hw
- card OnBoard
- device 1
-
-}
-
-pcm.OnBoard_D2 {
-
- type hw
- card OnBoard
- device 2
-
-}
-
# Configuration to expose the SPDIF device of RK3288 to ALSA.
# The device tree must describe a simple-audio-card device named "SPDIF"
# for this to work properly
@@ -53,24 +29,18 @@ cards.SPDIF.pcm.iec958.0 {
}
# Configuration to expose the HDMI device of RK3288 to ALSA.
-# The device tree must describe a simple-audio-card device named "DW-I2S-HDMI"
+# The device tree must describe a simple-audio-card device named "HDMI"
# for this to work properly
# This percolates to PulseAudio, which will eventually show the proper
# labels to the audio device
-cards.DW-I2S-HDMI.pcm.hdmi.0 {
- @args [ CARD DEVICE CTLINDEX AES0 AES1 AES2 AES3 ]
+cards.HDMI.pcm.hdmi.0 {
+ @args [ CARD AES0 AES1 AES2 AES3 ]
@args.CARD {
type string
}
- @args.DEVICE {
- type integer
- }
- @args.CTLINDEX {
- type integer
- }
@args.AES0 {
type integer
}
@@ -83,6 +53,22 @@ cards.DW-I2S-HDMI.pcm.hdmi.0 {
@args.AES3 {
type integer
}
- type hw
- card $CARD
+ type hooks
+ slave.pcm {
+ type hw
+ card $CARD
+ }
+ hooks.0 {
+ type ctl_elems
+ hook_args [
+ {
+ interface PCM
+ name "IEC958 Playback Default"
+ lock true
+ preserve true
+ value [ $AES0 $AES1 $AES2 $AES3 ]
+ }
+ ]
+ }
}
+
diff --git a/packages/bsp/rockpis/etc/udev/rules.d/05-fixMACaddress.rules b/packages/bsp/rockpis/etc/udev/rules.d/05-fixMACaddress.rules
index 87a948aa9779..884fcf20c6b1 100644
--- a/packages/bsp/rockpis/etc/udev/rules.d/05-fixMACaddress.rules
+++ b/packages/bsp/rockpis/etc/udev/rules.d/05-fixMACaddress.rules
@@ -1,6 +1,13 @@
-#If a network interface is being assigned a new, different address on each boot,
-#enable the corresponding line below to derive its MAC addr from UUID of rootfs
-#Beware that all the two digit hex code prefixes below must be unique!
+#If a network interface is being assigned a different MAC address on each boot,
+#or the MAC address is based on a disk image (rather than a hardware serial #),
+#enable the corresponding line below to derive that interface's MAC address from
+#the RK3308 SOC's unique serial number.
+
+#All the two digit hex code prefixes passed to fixEtherAddr should be unique
+#and chosen such that (n-2)%4 == 0
KERNEL=="wlan0", ACTION=="add" RUN+="fixEtherAddr %k 0a"
KERNEL=="p2p0", ACTION=="add" RUN+="fixEtherAddr %k 0e"
+
+#U-Boot >=V2024.10 sets the built-in Ethernet MAC adr from the SOC serial number
+#KERNEL=="end0", ACTION=="add" RUN+="fixEtherAddr %k 06"
diff --git a/patch/kernel/archive/imx8m-6.11/0001-Add-lvds-device-tree-for-imx8mp-tqma8mpql-mba8mp-ras.patch b/patch/kernel/archive/imx8m-6.11/0001-Add-lvds-device-tree-for-imx8mp-tqma8mpql-mba8mp-ras.patch
new file mode 100644
index 000000000000..e2be14d5f2ae
--- /dev/null
+++ b/patch/kernel/archive/imx8m-6.11/0001-Add-lvds-device-tree-for-imx8mp-tqma8mpql-mba8mp-ras.patch
@@ -0,0 +1,28 @@
+From 5cb95ed2dea1fea9335a9b7a73af7e7f4104fb38 Mon Sep 17 00:00:00 2001
+From: Martin Schmiedel
+Date: Tue, 5 Nov 2024 10:07:03 +0100
+Subject: [PATCH] Add lvds device tree for imx8mp-tqma8mpql-mba8mp-ras314
+
+Signed-off-by: Martin Schmiedel
+---
+ arch/arm64/boot/dts/freescale/Makefile | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/arch/arm64/boot/dts/freescale/Makefile b/arch/arm64/boot/dts/freescale/Makefile
+index f04c22b7d..543386e0d 100644
+--- a/arch/arm64/boot/dts/freescale/Makefile
++++ b/arch/arm64/boot/dts/freescale/Makefile
+@@ -198,8 +198,10 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mp-evk-mx8-dlvds-lcd1.dtb
+
+ imx8mp-tqma8mpql-mba8mpxl-lvds-dtbs += imx8mp-tqma8mpql-mba8mpxl.dtb imx8mp-tqma8mpql-mba8mpxl-lvds.dtbo
+ imx8mp-tqma8mpql-mba8mpxl-lvds-g133han01-dtbs += imx8mp-tqma8mpql-mba8mpxl.dtb imx8mp-tqma8mpql-mba8mpxl-lvds-g133han01.dtbo
++imx8mp-tqma8mpql-mba8mp-ras314-lvds-dtbs += imx8mp-tqma8mpql-mba8mp-ras314.dtb imx8mp-tqma8mpql-mba8mpxl-lvds.dtbo
+ dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl-lvds.dtb
+ dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mpxl-lvds-g133han01.dtb
++dtb-$(CONFIG_ARCH_MXC) += imx8mp-tqma8mpql-mba8mp-ras314-lvds.dtb
+
+ dtb-$(CONFIG_ARCH_MXC) += imx8mq-evk.dtb
+ dtb-$(CONFIG_ARCH_MXC) += imx8mq-hummingboard-pulse.dtb
+--
+2.43.0
+
diff --git a/patch/kernel/archive/meson64-6.1/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch b/patch/kernel/archive/meson64-6.1/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch
new file mode 100644
index 000000000000..174932bca6a5
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.1/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch
@@ -0,0 +1,18 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Chen Jiali
+Date: Tue, 23 Apr 2024 16:05:42 +0800
+Subject: [PATCH 1/1] Reduce eMMC frequency to improve compatibility
+
+diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
+index cf0a9be83..29ace14b4 100644
+--- a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
++++ b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
+@@ -358,7 +358,7 @@ &sd_emmc_c {
+ cap-mmc-highspeed;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+- max-frequency = <200000000>;
++ max-frequency = <150000000>;
+ disable-wp;
+
+ mmc-pwrseq = <&emmc_pwrseq>;
diff --git a/patch/kernel/archive/meson64-6.11/0000.patching_config.yaml b/patch/kernel/archive/meson64-6.12/0000.patching_config.yaml
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/0000.patching_config.yaml
rename to patch/kernel/archive/meson64-6.12/0000.patching_config.yaml
diff --git a/patch/kernel/archive/meson64-6.11/board-bananapi-cm4-cm4io.patch b/patch/kernel/archive/meson64-6.12/board-bananapi-cm4-cm4io.patch
similarity index 99%
rename from patch/kernel/archive/meson64-6.11/board-bananapi-cm4-cm4io.patch
rename to patch/kernel/archive/meson64-6.12/board-bananapi-cm4-cm4io.patch
index 7f03eb5d5272..3990b4e33737 100644
--- a/patch/kernel/archive/meson64-6.11/board-bananapi-cm4-cm4io.patch
+++ b/patch/kernel/archive/meson64-6.12/board-bananapi-cm4-cm4io.patch
@@ -31,7 +31,7 @@ index 111111111111..222222222222 100644
};
};
-@@ -116,6 +117,10 @@ codec {
+@@ -120,6 +121,10 @@ codec {
};
};
diff --git a/patch/kernel/archive/meson64-6.11/board-bananapi-m2s.patch b/patch/kernel/archive/meson64-6.12/board-bananapi-m2s.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-bananapi-m2s.patch
rename to patch/kernel/archive/meson64-6.12/board-bananapi-m2s.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-bananapim5-001-sd-use-270-mmc-clock-phase-via-dt.patch b/patch/kernel/archive/meson64-6.12/board-bananapim5-001-sd-use-270-mmc-clock-phase-via-dt.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-bananapim5-001-sd-use-270-mmc-clock-phase-via-dt.patch
rename to patch/kernel/archive/meson64-6.12/board-bananapim5-001-sd-use-270-mmc-clock-phase-via-dt.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-bananapim5-002-add-wifi-bt-support.patch b/patch/kernel/archive/meson64-6.12/board-bananapim5-002-add-wifi-bt-support.patch
similarity index 96%
rename from patch/kernel/archive/meson64-6.11/board-bananapim5-002-add-wifi-bt-support.patch
rename to patch/kernel/archive/meson64-6.12/board-bananapim5-002-add-wifi-bt-support.patch
index 66db01e2cdb3..4a35b7a32213 100644
--- a/patch/kernel/archive/meson64-6.11/board-bananapim5-002-add-wifi-bt-support.patch
+++ b/patch/kernel/archive/meson64-6.12/board-bananapim5-002-add-wifi-bt-support.patch
@@ -37,7 +37,7 @@ index 111111111111..222222222222 100644
sound {
compatible = "amlogic,axg-sound-card";
model = "BPI-M5";
-@@ -149,7 +163,6 @@ &acodec {
+@@ -153,7 +167,6 @@ &acodec {
status = "okay";
};
@@ -45,7 +45,7 @@ index 111111111111..222222222222 100644
&clkc_audio {
status = "okay";
};
-@@ -172,6 +185,42 @@ &frddr_c {
+@@ -176,6 +189,42 @@ &frddr_c {
status = "okay";
};
@@ -88,7 +88,7 @@ index 111111111111..222222222222 100644
&tdmif_b {
status = "okay";
};
-@@ -219,3 +268,18 @@ &toddr_b {
+@@ -223,3 +272,18 @@ &toddr_b {
&toddr_c {
status = "okay";
};
diff --git a/patch/kernel/archive/meson64-6.11/board-bananapism1-add-uart_A-and-AO_B.patch b/patch/kernel/archive/meson64-6.12/board-bananapism1-add-uart_A-and-AO_B.patch
similarity index 98%
rename from patch/kernel/archive/meson64-6.11/board-bananapism1-add-uart_A-and-AO_B.patch
rename to patch/kernel/archive/meson64-6.12/board-bananapism1-add-uart_A-and-AO_B.patch
index c363217ae399..5f66a931aee1 100644
--- a/patch/kernel/archive/meson64-6.11/board-bananapism1-add-uart_A-and-AO_B.patch
+++ b/patch/kernel/archive/meson64-6.12/board-bananapism1-add-uart_A-and-AO_B.patch
@@ -47,7 +47,7 @@ index 111111111111..222222222222 100644
sound {
compatible = "amlogic,axg-sound-card";
model = "BPI-M2-PRO";
-@@ -95,3 +99,9 @@ &tdmout_b {
+@@ -99,3 +103,9 @@ &tdmout_b {
&tohdmitx {
status = "okay";
};
diff --git a/patch/kernel/archive/meson64-6.11/board-khadas-vim3-fix-missing-i2c3-nod.patch b/patch/kernel/archive/meson64-6.12/board-khadas-vim3-fix-missing-i2c3-nod.patch
similarity index 95%
rename from patch/kernel/archive/meson64-6.11/board-khadas-vim3-fix-missing-i2c3-nod.patch
rename to patch/kernel/archive/meson64-6.12/board-khadas-vim3-fix-missing-i2c3-nod.patch
index 46cf86cb4ac0..9e5b1ad6ee7b 100644
--- a/patch/kernel/archive/meson64-6.11/board-khadas-vim3-fix-missing-i2c3-nod.patch
+++ b/patch/kernel/archive/meson64-6.12/board-khadas-vim3-fix-missing-i2c3-nod.patch
@@ -18,7 +18,7 @@ diff --git a/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi b/arch/arm64/boo
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi
-@@ -332,6 +332,13 @@ hdmi_tx_tmds_out: endpoint {
+@@ -336,6 +336,13 @@ hdmi_tx_tmds_out: endpoint {
};
};
diff --git a/patch/kernel/archive/meson64-6.11/board-khadas-vims-add-rtc-vrtc-aliases.patch b/patch/kernel/archive/meson64-6.12/board-khadas-vims-add-rtc-vrtc-aliases.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-khadas-vims-add-rtc-vrtc-aliases.patch
rename to patch/kernel/archive/meson64-6.12/board-khadas-vims-add-rtc-vrtc-aliases.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-nanopi-k2-add-uartC-alias.patch b/patch/kernel/archive/meson64-6.12/board-nanopi-k2-add-uartC-alias.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-nanopi-k2-add-uartC-alias.patch
rename to patch/kernel/archive/meson64-6.12/board-nanopi-k2-add-uartC-alias.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-nanopi-k2-enable-emmc.patch b/patch/kernel/archive/meson64-6.12/board-nanopi-k2-enable-emmc.patch
similarity index 93%
rename from patch/kernel/archive/meson64-6.11/board-nanopi-k2-enable-emmc.patch
rename to patch/kernel/archive/meson64-6.12/board-nanopi-k2-enable-emmc.patch
index 1ca16d7ef26b..6405bd43ccf6 100644
--- a/patch/kernel/archive/meson64-6.11/board-nanopi-k2-enable-emmc.patch
+++ b/patch/kernel/archive/meson64-6.12/board-nanopi-k2-enable-emmc.patch
@@ -12,7 +12,7 @@ diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts b/arch/arm64/b
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-nanopi-k2.dts
-@@ -358,7 +358,7 @@ &sd_emmc_b {
+@@ -362,7 +362,7 @@ &sd_emmc_b {
/* eMMC */
&sd_emmc_c {
@@ -21,7 +21,7 @@ index 111111111111..222222222222 100644
pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>;
pinctrl-1 = <&emmc_clk_gate_pins>;
pinctrl-names = "default", "clk-gate";
-@@ -368,8 +368,6 @@ &sd_emmc_c {
+@@ -372,8 +372,6 @@ &sd_emmc_c {
non-removable;
disable-wp;
cap-mmc-highspeed;
diff --git a/patch/kernel/archive/meson64-6.11/board-odroidc2-add-uartA-uartC.patch b/patch/kernel/archive/meson64-6.12/board-odroidc2-add-uartA-uartC.patch
similarity index 97%
rename from patch/kernel/archive/meson64-6.11/board-odroidc2-add-uartA-uartC.patch
rename to patch/kernel/archive/meson64-6.12/board-odroidc2-add-uartA-uartC.patch
index 9388fecc5d67..1a6cbae6d0ac 100644
--- a/patch/kernel/archive/meson64-6.11/board-odroidc2-add-uartA-uartC.patch
+++ b/patch/kernel/archive/meson64-6.12/board-odroidc2-add-uartA-uartC.patch
@@ -26,7 +26,7 @@ index 111111111111..222222222222 100644
ethernet0 = ðmac;
};
-@@ -383,6 +385,18 @@ &uart_AO {
+@@ -387,6 +389,18 @@ &uart_AO {
pinctrl-names = "default";
};
diff --git a/patch/kernel/archive/meson64-6.11/board-odroidc2-enable-SPI.patch b/patch/kernel/archive/meson64-6.12/board-odroidc2-enable-SPI.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-odroidc2-enable-SPI.patch
rename to patch/kernel/archive/meson64-6.12/board-odroidc2-enable-SPI.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-odroidc2-enable-scpi-dvfs.patch b/patch/kernel/archive/meson64-6.12/board-odroidc2-enable-scpi-dvfs.patch
similarity index 96%
rename from patch/kernel/archive/meson64-6.11/board-odroidc2-enable-scpi-dvfs.patch
rename to patch/kernel/archive/meson64-6.12/board-odroidc2-enable-scpi-dvfs.patch
index be0dc2ae930f..1de23f578c08 100644
--- a/patch/kernel/archive/meson64-6.11/board-odroidc2-enable-scpi-dvfs.patch
+++ b/patch/kernel/archive/meson64-6.12/board-odroidc2-enable-scpi-dvfs.patch
@@ -12,7 +12,7 @@ diff --git a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts b/arch/arm64/bo
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-gxbb-odroidc2.dts
-@@ -360,7 +360,8 @@ &saradc {
+@@ -364,7 +364,8 @@ &saradc {
};
&scpi_clocks {
diff --git a/patch/kernel/archive/meson64-6.11/board-odroidc2-usb-hub-disable-autosuspend-for-Genesys-Logic-.patch b/patch/kernel/archive/meson64-6.12/board-odroidc2-usb-hub-disable-autosuspend-for-Genesys-Logic-.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-odroidc2-usb-hub-disable-autosuspend-for-Genesys-Logic-.patch
rename to patch/kernel/archive/meson64-6.12/board-odroidc2-usb-hub-disable-autosuspend-for-Genesys-Logic-.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-odroidc4-reset.patch b/patch/kernel/archive/meson64-6.12/board-odroidc4-reset.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-odroidc4-reset.patch
rename to patch/kernel/archive/meson64-6.12/board-odroidc4-reset.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-odroidhc4-enable-fan1_input.patch b/patch/kernel/archive/meson64-6.12/board-odroidhc4-enable-fan1_input.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-odroidhc4-enable-fan1_input.patch
rename to patch/kernel/archive/meson64-6.12/board-odroidhc4-enable-fan1_input.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-odroidn2plus-Add-missing-CPU-opp.patch b/patch/kernel/archive/meson64-6.12/board-odroidn2plus-Add-missing-CPU-opp.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-odroidn2plus-Add-missing-CPU-opp.patch
rename to patch/kernel/archive/meson64-6.12/board-odroidn2plus-Add-missing-CPU-opp.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-radxa-zero-dts-add-aliases-for-serial-i2c-and-spi.patch b/patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-add-aliases-for-serial-i2c-and-spi.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/board-radxa-zero-dts-add-aliases-for-serial-i2c-and-spi.patch
rename to patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-add-aliases-for-serial-i2c-and-spi.patch
diff --git a/patch/kernel/archive/meson64-6.11/board-radxa-zero-dts-add-support-for-the-usb-c-controller.patch b/patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-add-support-for-the-usb-c-controller.patch
similarity index 96%
rename from patch/kernel/archive/meson64-6.11/board-radxa-zero-dts-add-support-for-the-usb-c-controller.patch
rename to patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-add-support-for-the-usb-c-controller.patch
index 291b3494922d..1263cda9ab91 100644
--- a/patch/kernel/archive/meson64-6.11/board-radxa-zero-dts-add-support-for-the-usb-c-controller.patch
+++ b/patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-add-support-for-the-usb-c-controller.patch
@@ -41,7 +41,7 @@ index 111111111111..222222222222 100644
ao_5v: regulator-ao-5v {
compatible = "regulator-fixed";
regulator-name = "AO_5V";
-@@ -202,6 +210,18 @@ wifi32k: wifi32k {
+@@ -206,6 +214,18 @@ wifi32k: wifi32k {
};
};
@@ -60,7 +60,7 @@ index 111111111111..222222222222 100644
&arb {
status = "okay";
};
-@@ -289,6 +309,26 @@ &ir {
+@@ -293,6 +313,26 @@ &ir {
pinctrl-names = "default";
};
@@ -87,7 +87,7 @@ index 111111111111..222222222222 100644
&pwm_AO_cd {
pinctrl-0 = <&pwm_ao_d_e_pins>;
pinctrl-names = "default";
-@@ -413,3 +453,11 @@ &uart_AO {
+@@ -417,3 +457,11 @@ &uart_AO {
&usb {
status = "okay";
};
diff --git a/patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch b/patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch
new file mode 100644
index 000000000000..174932bca6a5
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch
@@ -0,0 +1,18 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Chen Jiali
+Date: Tue, 23 Apr 2024 16:05:42 +0800
+Subject: [PATCH 1/1] Reduce eMMC frequency to improve compatibility
+
+diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
+index cf0a9be83..29ace14b4 100644
+--- a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
++++ b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
+@@ -358,7 +358,7 @@ &sd_emmc_c {
+ cap-mmc-highspeed;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+- max-frequency = <200000000>;
++ max-frequency = <150000000>;
+ disable-wp;
+
+ mmc-pwrseq = <&emmc_pwrseq>;
diff --git a/patch/kernel/archive/meson64-6.11/board-radxa-zero-dts-slow-down-sdio-for-working-wifi.patch b/patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-slow-down-sdio-for-working-wifi.patch
similarity index 96%
rename from patch/kernel/archive/meson64-6.11/board-radxa-zero-dts-slow-down-sdio-for-working-wifi.patch
rename to patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-slow-down-sdio-for-working-wifi.patch
index d7aea9f2b106..6ced91999b8c 100644
--- a/patch/kernel/archive/meson64-6.11/board-radxa-zero-dts-slow-down-sdio-for-working-wifi.patch
+++ b/patch/kernel/archive/meson64-6.12/board-radxa-zero-dts-slow-down-sdio-for-working-wifi.patch
@@ -15,7 +15,7 @@ diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts b/arch/arm64/
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
-@@ -361,7 +361,7 @@ &sd_emmc_a {
+@@ -365,7 +365,7 @@ &sd_emmc_a {
bus-width = <4>;
cap-sd-highspeed;
diff --git a/patch/kernel/archive/meson64-6.11/board-t95z-add-rc-remote-keymap.patch b/patch/kernel/archive/meson64-6.12/board-t95z-add-rc-remote-keymap.patch
similarity index 99%
rename from patch/kernel/archive/meson64-6.11/board-t95z-add-rc-remote-keymap.patch
rename to patch/kernel/archive/meson64-6.12/board-t95z-add-rc-remote-keymap.patch
index 9f85146dcfeb..91582812d4a2 100644
--- a/patch/kernel/archive/meson64-6.11/board-t95z-add-rc-remote-keymap.patch
+++ b/patch/kernel/archive/meson64-6.12/board-t95z-add-rc-remote-keymap.patch
@@ -34,7 +34,7 @@ diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentat
index 111111111111..222222222222 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
-@@ -1431,6 +1431,8 @@ patternProperties:
+@@ -1435,6 +1435,8 @@ patternProperties:
description: Sundance DSP Inc.
"^sunplus,.*":
description: Sunplus Technology Co., Ltd.
diff --git a/patch/kernel/archive/meson64-6.11/driver-power-meson64-reset.patch b/patch/kernel/archive/meson64-6.12/driver-power-meson64-reset.patch
similarity index 98%
rename from patch/kernel/archive/meson64-6.11/driver-power-meson64-reset.patch
rename to patch/kernel/archive/meson64-6.12/driver-power-meson64-reset.patch
index 7197289a5f33..f18459a6fabd 100644
--- a/patch/kernel/archive/meson64-6.11/driver-power-meson64-reset.patch
+++ b/patch/kernel/archive/meson64-6.12/driver-power-meson64-reset.patch
@@ -13,7 +13,7 @@ diff --git a/drivers/power/reset/Kconfig b/drivers/power/reset/Kconfig
index 111111111111..222222222222 100644
--- a/drivers/power/reset/Kconfig
+++ b/drivers/power/reset/Kconfig
-@@ -148,6 +148,13 @@ config POWER_RESET_ODROID_GO_ULTRA_POWEROFF
+@@ -158,6 +158,13 @@ config POWER_RESET_ODROID_GO_ULTRA_POWEROFF
help
This driver supports Power off for Odroid Go Ultra device.
@@ -31,7 +31,7 @@ diff --git a/drivers/power/reset/Makefile b/drivers/power/reset/Makefile
index 111111111111..222222222222 100644
--- a/drivers/power/reset/Makefile
+++ b/drivers/power/reset/Makefile
-@@ -14,6 +14,7 @@ obj-$(CONFIG_POWER_RESET_HISI) += hisi-reboot.o
+@@ -15,6 +15,7 @@ obj-$(CONFIG_POWER_RESET_HISI) += hisi-reboot.o
obj-$(CONFIG_POWER_RESET_LINKSTATION) += linkstation-poweroff.o
obj-$(CONFIG_POWER_RESET_MSM) += msm-poweroff.o
obj-$(CONFIG_POWER_RESET_MT6323) += mt6323-poweroff.o
diff --git a/patch/kernel/archive/rockchip64-6.11/drv-spi-spidev-remove-warnings.patch b/patch/kernel/archive/meson64-6.12/drv-spi-spidev-remove-warnings.patch
similarity index 88%
rename from patch/kernel/archive/rockchip64-6.11/drv-spi-spidev-remove-warnings.patch
rename to patch/kernel/archive/meson64-6.12/drv-spi-spidev-remove-warnings.patch
index 96521e65c7ff..b480422c87eb 100644
--- a/patch/kernel/archive/rockchip64-6.11/drv-spi-spidev-remove-warnings.patch
+++ b/patch/kernel/archive/meson64-6.12/drv-spi-spidev-remove-warnings.patch
@@ -12,7 +12,7 @@ diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c
index 111111111111..222222222222 100644
--- a/drivers/spi/spidev.c
+++ b/drivers/spi/spidev.c
-@@ -700,6 +700,7 @@ static const struct class spidev_class = {
+@@ -699,6 +699,7 @@ static const struct class spidev_class = {
};
static const struct spi_device_id spidev_spi_ids[] = {
@@ -20,7 +20,7 @@ index 111111111111..222222222222 100644
{ .name = "bh2228fv" },
{ .name = "dh2228fv" },
{ .name = "jg10309-01" },
-@@ -730,6 +731,7 @@ static int spidev_of_check(struct device *dev)
+@@ -729,6 +730,7 @@ static int spidev_of_check(struct device *dev)
}
static const struct of_device_id spidev_dt_ids[] = {
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-axg-amper-gateway-am-gz80x.dts b/patch/kernel/archive/meson64-6.12/dt/meson-axg-amper-gateway-am-gz80x.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-axg-amper-gateway-am-gz80x.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-axg-amper-gateway-am-gz80x.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-axg-amper-gateway-gz80x.dtsi b/patch/kernel/archive/meson64-6.12/dt/meson-axg-amper-gateway-gz80x.dtsi
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-axg-amper-gateway-gz80x.dtsi
rename to patch/kernel/archive/meson64-6.12/dt/meson-axg-amper-gateway-gz80x.dtsi
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12-enable-spinor.dtsi b/patch/kernel/archive/meson64-6.12/dt/meson-g12-enable-spinor.dtsi
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12-enable-spinor.dtsi
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12-enable-spinor.dtsi
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12a-radxa-zero-spidev.dts b/patch/kernel/archive/meson64-6.12/dt/meson-g12a-radxa-zero-spidev.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12a-radxa-zero-spidev.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12a-radxa-zero-spidev.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12b-a311d-khadas-vim3-spidev.dts b/patch/kernel/archive/meson64-6.12/dt/meson-g12b-a311d-khadas-vim3-spidev.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12b-a311d-khadas-vim3-spidev.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12b-a311d-khadas-vim3-spidev.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12b-a311d-khadas-vim3-spinor.dts b/patch/kernel/archive/meson64-6.12/dt/meson-g12b-a311d-khadas-vim3-spinor.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12b-a311d-khadas-vim3-spinor.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12b-a311d-khadas-vim3-spinor.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12b-odroid-n2-plus-spidev.dts b/patch/kernel/archive/meson64-6.12/dt/meson-g12b-odroid-n2-plus-spidev.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12b-odroid-n2-plus-spidev.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12b-odroid-n2-plus-spidev.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12b-odroid-n2-plus-spinor.dts b/patch/kernel/archive/meson64-6.12/dt/meson-g12b-odroid-n2-plus-spinor.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12b-odroid-n2-plus-spinor.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12b-odroid-n2-plus-spinor.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12b-odroid-n2-spinor.dts b/patch/kernel/archive/meson64-6.12/dt/meson-g12b-odroid-n2-spinor.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12b-odroid-n2-spinor.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12b-odroid-n2-spinor.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12b-radxa-zero2-spidev.dts b/patch/kernel/archive/meson64-6.12/dt/meson-g12b-radxa-zero2-spidev.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12b-radxa-zero2-spidev.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12b-radxa-zero2-spidev.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-g12b-waveshare-cm4-io-base-b.dts b/patch/kernel/archive/meson64-6.12/dt/meson-g12b-waveshare-cm4-io-base-b.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-g12b-waveshare-cm4-io-base-b.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-g12b-waveshare-cm4-io-base-b.dts
diff --git a/patch/kernel/archive/meson64-6.12/dt/meson-gxm-c400-plus.dts b/patch/kernel/archive/meson64-6.12/dt/meson-gxm-c400-plus.dts
new file mode 100644
index 000000000000..714c6fef3ff9
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.12/dt/meson-gxm-c400-plus.dts
@@ -0,0 +1,66 @@
+/dts-v1/;
+
+#include "meson-gxm.dtsi"
+#include "meson-gx-p23x-q20x.dtsi"
+
+/ {
+ compatible = "magicsee,c400-plus", "amlogic,s912", "amlogic,meson-gxm";
+ model = "Magicsee C400 Plus";
+};
+
+/* Q201 has only internal PHY port */
+ðmac {
+ phy-mode = "rmii";
+ phy-handle = <&internal_phy>;
+};
+
+&sd_emmc_a {
+ brcmf: wifi@1 {
+ reg = <1>;
+ compatible = "brcm,bcm4329-fmac";
+ };
+};
+
+&uart_A {
+ status = "okay";
+ pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
+ pinctrl-names = "default";
+ uart-has-rtscts;
+
+ bluetooth {
+ compatible = "qcom,qca9377-bt";
+ enable-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
+ max-speed = <2000000>;
+ clocks = <&wifi32k>;
+ clock-names = "lpo";
+ };
+};
+
+/* 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;
+ sd-uhs-sdr12;
+ sd-uhs-sdr25;
+ sd-uhs-sdr50;
+ sd-uhs-sdr104;
+ 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>;
+};
\ No newline at end of file
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-gxm-mini-m8s-pro.dts b/patch/kernel/archive/meson64-6.12/dt/meson-gxm-mini-m8s-pro.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-gxm-mini-m8s-pro.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-gxm-mini-m8s-pro.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-gxm-t95z-plus.dts b/patch/kernel/archive/meson64-6.12/dt/meson-gxm-t95z-plus.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-gxm-t95z-plus.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-gxm-t95z-plus.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-sm1-jethome-jethub-j200-spinor.dts b/patch/kernel/archive/meson64-6.12/dt/meson-sm1-jethome-jethub-j200-spinor.dts
similarity index 69%
rename from patch/kernel/archive/meson64-6.11/dt/meson-sm1-jethome-jethub-j200-spinor.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-sm1-jethome-jethub-j200-spinor.dts
index a9e4749f8395..b4d2542cddc2 100644
--- a/patch/kernel/archive/meson64-6.11/dt/meson-sm1-jethome-jethub-j200-spinor.dts
+++ b/patch/kernel/archive/meson64-6.12/dt/meson-sm1-jethome-jethub-j200-spinor.dts
@@ -1,4 +1,8 @@
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2024 JetHome
+ * Author: Viacheslav Bocharov
+ */
/dts-v1/;
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-sm1-jethome-jethub-j200.dts b/patch/kernel/archive/meson64-6.12/dt/meson-sm1-jethome-jethub-j200.dts
similarity index 99%
rename from patch/kernel/archive/meson64-6.11/dt/meson-sm1-jethome-jethub-j200.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-sm1-jethome-jethub-j200.dts
index d5c761aa0a65..181e4a221ba2 100644
--- a/patch/kernel/archive/meson64-6.11/dt/meson-sm1-jethome-jethub-j200.dts
+++ b/patch/kernel/archive/meson64-6.12/dt/meson-sm1-jethome-jethub-j200.dts
@@ -462,6 +462,7 @@
status = "disabled";
pinctrl-0 = <&nor_pins>;
pinctrl-names = "default";
+ clock-frequency = <400000>;
flash: nor-flash@0 {
compatible = "sst,w25q256", "jedec,spi-nor";
@@ -500,6 +501,7 @@
status = "okay";
pinctrl-0 = <&uart_b_pins>;
pinctrl-names = "default";
+ clock-frequency = <400000>;
};
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-sm1-khadas-vim3l-spidev.dts b/patch/kernel/archive/meson64-6.12/dt/meson-sm1-khadas-vim3l-spidev.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-sm1-khadas-vim3l-spidev.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-sm1-khadas-vim3l-spidev.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-sm1-khadas-vim3l-spinor.dts b/patch/kernel/archive/meson64-6.12/dt/meson-sm1-khadas-vim3l-spinor.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-sm1-khadas-vim3l-spinor.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-sm1-khadas-vim3l-spinor.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-sm1-odroid-c4-spidev.dts b/patch/kernel/archive/meson64-6.12/dt/meson-sm1-odroid-c4-spidev.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-sm1-odroid-c4-spidev.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-sm1-odroid-c4-spidev.dts
diff --git a/patch/kernel/archive/meson64-6.11/dt/meson-sm1-ugoos-x3.dts b/patch/kernel/archive/meson64-6.12/dt/meson-sm1-ugoos-x3.dts
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/dt/meson-sm1-ugoos-x3.dts
rename to patch/kernel/archive/meson64-6.12/dt/meson-sm1-ugoos-x3.dts
diff --git a/patch/kernel/archive/meson64-6.11/general-add-Amlogic-Meson-GX-PM-Suspend.patch b/patch/kernel/archive/meson64-6.12/general-add-Amlogic-Meson-GX-PM-Suspend.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-add-Amlogic-Meson-GX-PM-Suspend.patch
rename to patch/kernel/archive/meson64-6.12/general-add-Amlogic-Meson-GX-PM-Suspend.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-add-overlay-compilation-support.patch b/patch/kernel/archive/meson64-6.12/general-add-overlay-compilation-support.patch
similarity index 70%
rename from patch/kernel/archive/meson64-6.11/general-add-overlay-compilation-support.patch
rename to patch/kernel/archive/meson64-6.12/general-add-overlay-compilation-support.patch
index dffc72914d3f..267fd37eb3de 100644
--- a/patch/kernel/archive/meson64-6.11/general-add-overlay-compilation-support.patch
+++ b/patch/kernel/archive/meson64-6.12/general-add-overlay-compilation-support.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino
-Date: Sun, 2 Jun 2024 21:53:01 +0200
+Date: Wed, 2 Oct 2024 19:30:34 +0300
Subject: compile .scr and install overlays in right path
---
scripts/Makefile.dtbinst | 13 +++++++++-
- scripts/Makefile.lib | 8 +++++-
+ scripts/Makefile.dtbs | 8 +++++-
2 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst
@@ -32,22 +32,19 @@ index 111111111111..222222222222 100644
endif # CONFIG_ARCH_WANT_FLAT_DTB_INSTALL
-diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
+diff --git a/scripts/Makefile.dtbs b/scripts/Makefile.dtbs
index 111111111111..222222222222 100644
---- a/scripts/Makefile.lib
-+++ b/scripts/Makefile.lib
-@@ -405,7 +405,7 @@ cmd_dtb_check = $(if $(dtb-check-enabled),; $(DT_CHECKER) $(DT_CHECKER_FLAGS) -u
-
+--- a/scripts/Makefile.dtbs
++++ b/scripts/Makefile.dtbs
+@@ -122,17 +122,23 @@ dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
quiet_cmd_dtc = DTC $(quiet_dtb_check_tag) $@
- cmd_dtc = $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
-- $(DTC) -o $@ -b 0 \
-+ $(DTC) -@ -o $@ -b 0 \
- $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \
- -d $(depfile).dtc.tmp $(dtc-tmp) ; \
+ cmd_dtc = \
+ $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
+- $(DTC) -o $@ -b 0 $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) \
++ $(DTC) -@ -o $@ -b 0 $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) \
+ $(DTC_FLAGS) -d $(depfile).dtc.tmp $(dtc-tmp) ; \
cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile) \
-@@ -430,12 +430,18 @@ DT_TMP_SCHEMA := $(objtree)/$(DT_BINDING_DIR)/processed-schema.json
- dtb-check-enabled = $(if $(filter %.dtb, $@),y)
- endif
+ $(cmd_dtb_check)
+quiet_cmd_scr = MKIMAGE $@
+cmd_scr = mkimage -C none -A $(ARCH) -T script -d $< $@
@@ -61,9 +58,9 @@ index 111111111111..222222222222 100644
+$(obj)/%.scr: $(src)/%.scr-cmd FORCE
+ $(call if_changed,scr)
+
- dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
+ # targets
+ # ---------------------------------------------------------------------------
- # Bzip2
--
Armbian
diff --git a/patch/kernel/archive/meson64-6.11/general-driver-tm1628-auxdisplay-add-support-for-Titanmec-TM16.patch b/patch/kernel/archive/meson64-6.12/general-driver-tm1628-auxdisplay-add-support-for-Titanmec-TM16.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-driver-tm1628-auxdisplay-add-support-for-Titanmec-TM16.patch
rename to patch/kernel/archive/meson64-6.12/general-driver-tm1628-auxdisplay-add-support-for-Titanmec-TM16.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-drm-dw-hdmi-call-hdmi_set_cts_n-after-clock.patch b/patch/kernel/archive/meson64-6.12/general-drm-dw-hdmi-call-hdmi_set_cts_n-after-clock.patch
similarity index 94%
rename from patch/kernel/archive/meson64-6.11/general-drm-dw-hdmi-call-hdmi_set_cts_n-after-clock.patch
rename to patch/kernel/archive/meson64-6.12/general-drm-dw-hdmi-call-hdmi_set_cts_n-after-clock.patch
index e7d09fac12d2..7734c4c3434d 100644
--- a/patch/kernel/archive/meson64-6.11/general-drm-dw-hdmi-call-hdmi_set_cts_n-after-clock.patch
+++ b/patch/kernel/archive/meson64-6.12/general-drm-dw-hdmi-call-hdmi_set_cts_n-after-clock.patch
@@ -13,7 +13,7 @@ diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/
index 111111111111..222222222222 100644
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
-@@ -768,6 +768,11 @@ static void hdmi_enable_audio_clk(struct dw_hdmi *hdmi, bool enable)
+@@ -765,6 +765,11 @@ static void hdmi_enable_audio_clk(struct dw_hdmi *hdmi, bool enable)
else
hdmi->mc_clkdis |= HDMI_MC_CLKDIS_AUDCLK_DISABLE;
hdmi_writeb(hdmi, hdmi->mc_clkdis, HDMI_MC_CLKDIS);
diff --git a/patch/kernel/archive/meson64-6.11/general-drm-panfrost-fix-reference-leak.patch b/patch/kernel/archive/meson64-6.12/general-drm-panfrost-fix-reference-leak.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-drm-panfrost-fix-reference-leak.patch
rename to patch/kernel/archive/meson64-6.12/general-drm-panfrost-fix-reference-leak.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-fix-Kodi-sysinfo-CPU-information.patch b/patch/kernel/archive/meson64-6.12/general-fix-Kodi-sysinfo-CPU-information.patch
similarity index 94%
rename from patch/kernel/archive/meson64-6.11/general-fix-Kodi-sysinfo-CPU-information.patch
rename to patch/kernel/archive/meson64-6.12/general-fix-Kodi-sysinfo-CPU-information.patch
index fc69ccc7fd77..7166e299f502 100644
--- a/patch/kernel/archive/meson64-6.11/general-fix-Kodi-sysinfo-CPU-information.patch
+++ b/patch/kernel/archive/meson64-6.12/general-fix-Kodi-sysinfo-CPU-information.patch
@@ -16,7 +16,7 @@ diff --git a/arch/arm64/kernel/cpuinfo.c b/arch/arm64/kernel/cpuinfo.c
index 111111111111..222222222222 100644
--- a/arch/arm64/kernel/cpuinfo.c
+++ b/arch/arm64/kernel/cpuinfo.c
-@@ -205,8 +205,7 @@ static int c_show(struct seq_file *m, void *v)
+@@ -206,8 +206,7 @@ static int c_show(struct seq_file *m, void *v)
* "processor". Give glibc what it expects.
*/
seq_printf(m, "processor\t: %d\n", i);
diff --git a/patch/kernel/archive/meson64-6.11/general-gpu-drm-add-new-display-resolution-2560x1440.patch b/patch/kernel/archive/meson64-6.12/general-gpu-drm-add-new-display-resolution-2560x1440.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-gpu-drm-add-new-display-resolution-2560x1440.patch
rename to patch/kernel/archive/meson64-6.12/general-gpu-drm-add-new-display-resolution-2560x1440.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-hdmi-codec-reorder-channel-allocation-list.patch b/patch/kernel/archive/meson64-6.12/general-hdmi-codec-reorder-channel-allocation-list.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-hdmi-codec-reorder-channel-allocation-list.patch
rename to patch/kernel/archive/meson64-6.12/general-hdmi-codec-reorder-channel-allocation-list.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-input-touchscreen-Add-D-WAV-Multitouch.patch b/patch/kernel/archive/meson64-6.12/general-input-touchscreen-Add-D-WAV-Multitouch.patch
similarity index 99%
rename from patch/kernel/archive/meson64-6.11/general-input-touchscreen-Add-D-WAV-Multitouch.patch
rename to patch/kernel/archive/meson64-6.12/general-input-touchscreen-Add-D-WAV-Multitouch.patch
index fffbabf6f91c..6432ee17e629 100644
--- a/patch/kernel/archive/meson64-6.11/general-input-touchscreen-Add-D-WAV-Multitouch.patch
+++ b/patch/kernel/archive/meson64-6.12/general-input-touchscreen-Add-D-WAV-Multitouch.patch
@@ -16,7 +16,7 @@ diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 111111111111..222222222222 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
-@@ -1484,4 +1484,10 @@
+@@ -1474,4 +1474,10 @@
#define USB_VENDOR_ID_SIGNOTEC 0x2133
#define USB_DEVICE_ID_SIGNOTEC_VIEWSONIC_PD1011 0x0018
@@ -45,7 +45,7 @@ diff --git a/drivers/input/touchscreen/Kconfig b/drivers/input/touchscreen/Kconf
index 111111111111..222222222222 100644
--- a/drivers/input/touchscreen/Kconfig
+++ b/drivers/input/touchscreen/Kconfig
-@@ -1430,4 +1430,14 @@ config TOUCHSCREEN_HIMAX_HX83112B
+@@ -1388,4 +1388,14 @@ config TOUCHSCREEN_HIMAX_HX83112B
To compile this driver as a module, choose M here: the
module will be called himax_hx83112b.
@@ -64,7 +64,7 @@ diff --git a/drivers/input/touchscreen/Makefile b/drivers/input/touchscreen/Make
index 111111111111..222222222222 100644
--- a/drivers/input/touchscreen/Makefile
+++ b/drivers/input/touchscreen/Makefile
-@@ -120,4 +120,5 @@ obj-$(CONFIG_TOUCHSCREEN_RASPBERRYPI_FW) += raspberrypi-ts.o
+@@ -116,4 +116,5 @@ obj-$(CONFIG_TOUCHSCREEN_RASPBERRYPI_FW) += raspberrypi-ts.o
obj-$(CONFIG_TOUCHSCREEN_IQS5XX) += iqs5xx.o
obj-$(CONFIG_TOUCHSCREEN_IQS7211) += iqs7211.o
obj-$(CONFIG_TOUCHSCREEN_ZINITIX) += zinitix.o
diff --git a/patch/kernel/archive/meson64-6.11/general-media-cec-silence-CEC-timeout-message-HACK.patch b/patch/kernel/archive/meson64-6.12/general-media-cec-silence-CEC-timeout-message-HACK.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-media-cec-silence-CEC-timeout-message-HACK.patch
rename to patch/kernel/archive/meson64-6.12/general-media-cec-silence-CEC-timeout-message-HACK.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-memory-marked-nomap.patch b/patch/kernel/archive/meson64-6.12/general-memory-marked-nomap.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-memory-marked-nomap.patch
rename to patch/kernel/archive/meson64-6.12/general-memory-marked-nomap.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-meson-aiu-Fix-HDMI-codec-control-selection.patch b/patch/kernel/archive/meson64-6.12/general-meson-aiu-Fix-HDMI-codec-control-selection.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-meson-aiu-Fix-HDMI-codec-control-selection.patch
rename to patch/kernel/archive/meson64-6.12/general-meson-aiu-Fix-HDMI-codec-control-selection.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-meson-mmc-1-arm64-amlogic-mmc-meson-gx-Add-core-tx-rx-eMMC-SD-SD.patch b/patch/kernel/archive/meson64-6.12/general-meson-mmc-1-arm64-amlogic-mmc-meson-gx-Add-core-tx-rx-eMMC-SD-SD.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-meson-mmc-1-arm64-amlogic-mmc-meson-gx-Add-core-tx-rx-eMMC-SD-SD.patch
rename to patch/kernel/archive/meson64-6.12/general-meson-mmc-1-arm64-amlogic-mmc-meson-gx-Add-core-tx-rx-eMMC-SD-SD.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-meson-mmc-2-arm64-amlogic-dts-meson-update-meson-axg-device-tree.patch b/patch/kernel/archive/meson64-6.12/general-meson-mmc-2-arm64-amlogic-dts-meson-update-meson-axg-device-tree.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-meson-mmc-2-arm64-amlogic-dts-meson-update-meson-axg-device-tree.patch
rename to patch/kernel/archive/meson64-6.12/general-meson-mmc-2-arm64-amlogic-dts-meson-update-meson-axg-device-tree.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-meson-mmc-3-arm64-dts-docs-Update-mmc-meson-gx-documentation-for.patch b/patch/kernel/archive/meson64-6.12/general-meson-mmc-3-arm64-dts-docs-Update-mmc-meson-gx-documentation-for.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-meson-mmc-3-arm64-dts-docs-Update-mmc-meson-gx-documentation-for.patch
rename to patch/kernel/archive/meson64-6.12/general-meson-mmc-3-arm64-dts-docs-Update-mmc-meson-gx-documentation-for.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-meson-vdec-add-HEVC-decode-codec.patch b/patch/kernel/archive/meson64-6.12/general-meson-vdec-add-HEVC-decode-codec.patch
similarity index 99%
rename from patch/kernel/archive/meson64-6.11/general-meson-vdec-add-HEVC-decode-codec.patch
rename to patch/kernel/archive/meson64-6.12/general-meson-vdec-add-HEVC-decode-codec.patch
index 44e1694e0236..0654394709db 100644
--- a/patch/kernel/archive/meson64-6.11/general-meson-vdec-add-HEVC-decode-codec.patch
+++ b/patch/kernel/archive/meson64-6.12/general-meson-vdec-add-HEVC-decode-codec.patch
@@ -1546,7 +1546,7 @@ index 111111111111..222222222222 100644
}, {
.pixfmt = V4L2_PIX_FMT_H264,
.min_buffers = 2,
-@@ -114,6 +127,18 @@ static const struct amvdec_format vdec_formats_gxm[] = {
+@@ -152,6 +165,18 @@ static const struct amvdec_format vdec_formats_gxm[] = {
.pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
.flags = V4L2_FMT_FLAG_COMPRESSED |
V4L2_FMT_FLAG_DYN_RESOLUTION,
@@ -1565,7 +1565,7 @@ index 111111111111..222222222222 100644
}, {
.pixfmt = V4L2_PIX_FMT_H264,
.min_buffers = 2,
-@@ -165,6 +190,18 @@ static const struct amvdec_format vdec_formats_g12a[] = {
+@@ -203,6 +228,18 @@ static const struct amvdec_format vdec_formats_g12a[] = {
.flags = V4L2_FMT_FLAG_COMPRESSED |
V4L2_FMT_FLAG_DYN_RESOLUTION,
}, {
@@ -1584,7 +1584,7 @@ index 111111111111..222222222222 100644
.pixfmt = V4L2_PIX_FMT_H264,
.min_buffers = 2,
.max_buffers = 24,
-@@ -214,6 +251,18 @@ static const struct amvdec_format vdec_formats_sm1[] = {
+@@ -252,6 +289,18 @@ static const struct amvdec_format vdec_formats_sm1[] = {
.pixfmts_cap = { V4L2_PIX_FMT_NV12M, 0 },
.flags = V4L2_FMT_FLAG_COMPRESSED |
V4L2_FMT_FLAG_DYN_RESOLUTION,
diff --git a/patch/kernel/archive/meson64-6.11/general-meson-vdec-add-handling-to-HEVC-decoder-.patch b/patch/kernel/archive/meson64-6.12/general-meson-vdec-add-handling-to-HEVC-decoder-.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-meson-vdec-add-handling-to-HEVC-decoder-.patch
rename to patch/kernel/archive/meson64-6.12/general-meson-vdec-add-handling-to-HEVC-decoder-.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-meson-vdec-check-if-parser-has-really-parser.patch b/patch/kernel/archive/meson64-6.12/general-meson-vdec-check-if-parser-has-really-parser.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-meson-vdec-check-if-parser-has-really-parser.patch
rename to patch/kernel/archive/meson64-6.12/general-meson-vdec-check-if-parser-has-really-parser.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-meson-vdec-improve-mmu-and-fbc-handling-.patch b/patch/kernel/archive/meson64-6.12/general-meson-vdec-improve-mmu-and-fbc-handling-.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-meson-vdec-improve-mmu-and-fbc-handling-.patch
rename to patch/kernel/archive/meson64-6.12/general-meson-vdec-improve-mmu-and-fbc-handling-.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-meson64-overlays.patch b/patch/kernel/archive/meson64-6.12/general-meson64-overlays.patch
similarity index 77%
rename from patch/kernel/archive/meson64-6.11/general-meson64-overlays.patch
rename to patch/kernel/archive/meson64-6.12/general-meson64-overlays.patch
index 2e10642b037c..43c434b227fb 100644
--- a/patch/kernel/archive/meson64-6.11/general-meson64-overlays.patch
+++ b/patch/kernel/archive/meson64-6.12/general-meson64-overlays.patch
@@ -12,9 +12,9 @@ diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 111111111111..222222222222 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
-@@ -93,6 +93,9 @@ base-dtb-y := $(filter %.dtb, $(call real-search, $(multi-dtb-y), .dtb, -dtbs))
-
- always-y += $(dtb-y)
+@@ -75,6 +75,9 @@ always-y += $(hostprogs-always-y) $(hostprogs-always-m)
+ userprogs += $(userprogs-always-y) $(userprogs-always-m)
+ always-y += $(userprogs-always-y) $(userprogs-always-m)
+# Overlay targets
+extra-y += $(dtbo-y) $(scr-y) $(dtbotxt-y)
diff --git a/patch/kernel/archive/meson64-6.11/general-si2168-fix-cmd-timeout.patch b/patch/kernel/archive/meson64-6.12/general-si2168-fix-cmd-timeout.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-si2168-fix-cmd-timeout.patch
rename to patch/kernel/archive/meson64-6.12/general-si2168-fix-cmd-timeout.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-socinfo-sm-3-soc-amlogic-meson-gx-socinfo-move-common-code-to-hea.patch b/patch/kernel/archive/meson64-6.12/general-soc-0001-soc-amlogic-meson-gx-socinfo-move-common-code-to-hea.patch
similarity index 89%
rename from patch/kernel/archive/meson64-6.11/general-socinfo-sm-3-soc-amlogic-meson-gx-socinfo-move-common-code-to-hea.patch
rename to patch/kernel/archive/meson64-6.12/general-soc-0001-soc-amlogic-meson-gx-socinfo-move-common-code-to-hea.patch
index 25b9ece37c1e..676805b8c153 100644
--- a/patch/kernel/archive/meson64-6.11/general-socinfo-sm-3-soc-amlogic-meson-gx-socinfo-move-common-code-to-hea.patch
+++ b/patch/kernel/archive/meson64-6.12/general-soc-0001-soc-amlogic-meson-gx-socinfo-move-common-code-to-hea.patch
@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Viacheslav Bocharov
-Date: Tue, 4 Jun 2024 17:18:08 +0300
+Date: Mon, 18 Nov 2024 15:36:06 +0300
Subject: soc: amlogic: meson-gx-socinfo: move common code to header file
Move common constants and inline functions from meson-gx-socinfo driver
@@ -8,16 +8,16 @@ to header file. Create new structures for store meson64 cpu_id and chip_id.
Signed-off-by: Viacheslav Bocharov
---
- drivers/soc/amlogic/meson-gx-socinfo-internal.h | 122 ++++++++
- drivers/soc/amlogic/meson-gx-socinfo.c | 140 +---------
- 2 files changed, 137 insertions(+), 125 deletions(-)
+ drivers/soc/amlogic/meson-gx-socinfo-internal.h | 132 ++++++++
+ drivers/soc/amlogic/meson-gx-socinfo.c | 150 +---------
+ 2 files changed, 147 insertions(+), 135 deletions(-)
diff --git a/drivers/soc/amlogic/meson-gx-socinfo-internal.h b/drivers/soc/amlogic/meson-gx-socinfo-internal.h
new file mode 100644
index 000000000000..111111111111
--- /dev/null
+++ b/drivers/soc/amlogic/meson-gx-socinfo-internal.h
-@@ -0,0 +1,122 @@
+@@ -0,0 +1,132 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
+/*
+ * Copyright (c) 2017 BayLibre, SAS
@@ -76,6 +76,11 @@ index 000000000000..111111111111
+ { "G12B", 0x29 },
+ { "SM1", 0x2b },
+ { "A1", 0x2c },
++ { "T7", 0x36 },
++ { "S4", 0x37 },
++ { "A5", 0x3c },
++ { "C3", 0x3d },
++ { "A4", 0x40 },
+};
+
+static const struct meson_gx_package_id {
@@ -111,6 +116,11 @@ index 000000000000..111111111111
+ { "S905X3", 0x2b, 0x10, 0x3f },
+ { "S905D3", 0x2b, 0x30, 0x3f },
+ { "A113L", 0x2c, 0x0, 0xf8 },
++ { "S805X2", 0x37, 0x2, 0xf },
++ { "C308L", 0x3d, 0x1, 0xf },
++ { "A311D2", 0x36, 0x1, 0xf },
++ { "A113X2", 0x3c, 0x1, 0xf },
++ { "A113L2", 0x40, 0x1, 0xf },
+};
+
+static inline const char *socinfo_v1_to_package_id(union meson_cpu_id socinfo)
@@ -154,7 +164,7 @@ index 111111111111..222222222222 100644
*/
#include
-@@ -12,120 +12,10 @@
+@@ -12,130 +12,10 @@
#include
#include
#include
@@ -187,6 +197,11 @@ index 111111111111..222222222222 100644
- { "G12B", 0x29 },
- { "SM1", 0x2b },
- { "A1", 0x2c },
+- { "T7", 0x36 },
+- { "S4", 0x37 },
+- { "A5", 0x3c },
+- { "C3", 0x3d },
+- { "A4", 0x40 },
-};
-
-static const struct meson_gx_package_id {
@@ -222,6 +237,11 @@ index 111111111111..222222222222 100644
- { "S905X3", 0x2b, 0x10, 0x3f },
- { "S905D3", 0x2b, 0x30, 0x3f },
- { "A113L", 0x2c, 0x0, 0xf8 },
+- { "S805X2", 0x37, 0x2, 0xf },
+- { "C308L", 0x3d, 0x1, 0xf },
+- { "A311D2", 0x36, 0x1, 0xf },
+- { "A113X2", 0x3c, 0x1, 0xf },
+- { "A113L2", 0x40, 0x1, 0xf },
-};
-
-static inline unsigned int socinfo_to_major(u32 socinfo)
@@ -276,7 +296,7 @@ index 111111111111..222222222222 100644
static int __init meson_gx_socinfo_init(void)
{
-@@ -133,7 +23,7 @@ static int __init meson_gx_socinfo_init(void)
+@@ -143,7 +23,7 @@ static int __init meson_gx_socinfo_init(void)
struct soc_device *soc_dev;
struct device_node *np;
struct regmap *regmap;
@@ -285,7 +305,7 @@ index 111111111111..222222222222 100644
struct device *dev;
int ret;
-@@ -162,11 +52,11 @@ static int __init meson_gx_socinfo_init(void)
+@@ -172,11 +52,11 @@ static int __init meson_gx_socinfo_init(void)
return -ENODEV;
}
@@ -299,7 +319,7 @@ index 111111111111..222222222222 100644
pr_err("%s: invalid chipid value\n", __func__);
return -EINVAL;
}
-@@ -177,13 +67,13 @@ static int __init meson_gx_socinfo_init(void)
+@@ -187,13 +67,13 @@ static int __init meson_gx_socinfo_init(void)
soc_dev_attr->family = "Amlogic Meson";
soc_dev_attr->revision = kasprintf(GFP_KERNEL, "%x:%x - %x:%x",
@@ -319,7 +339,7 @@ index 111111111111..222222222222 100644
soc_dev = soc_device_register(soc_dev_attr);
if (IS_ERR(soc_dev)) {
-@@ -196,10 +86,10 @@ static int __init meson_gx_socinfo_init(void)
+@@ -206,10 +86,10 @@ static int __init meson_gx_socinfo_init(void)
dev_info(dev, "Amlogic Meson %s Revision %x:%x (%x:%x) Detected\n",
soc_dev_attr->soc_id,
diff --git a/patch/kernel/archive/meson64-6.11/general-socinfo-sm-4-soc-amlogic-meson-gx-socinfo-sm-Add-Amlogic-secure-m.patch b/patch/kernel/archive/meson64-6.12/general-soc-0002-soc-amlogic-meson-gx-socinfo-sm-Add-Amlogic-secure-m.patch
similarity index 99%
rename from patch/kernel/archive/meson64-6.11/general-socinfo-sm-4-soc-amlogic-meson-gx-socinfo-sm-Add-Amlogic-secure-m.patch
rename to patch/kernel/archive/meson64-6.12/general-soc-0002-soc-amlogic-meson-gx-socinfo-sm-Add-Amlogic-secure-m.patch
index 4c6713041c1e..8d45c0f9faa6 100644
--- a/patch/kernel/archive/meson64-6.11/general-socinfo-sm-4-soc-amlogic-meson-gx-socinfo-sm-Add-Amlogic-secure-m.patch
+++ b/patch/kernel/archive/meson64-6.12/general-soc-0002-soc-amlogic-meson-gx-socinfo-sm-Add-Amlogic-secure-m.patch
@@ -1,6 +1,6 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Viacheslav Bocharov
-Date: Wed, 21 Feb 2024 16:41:30 +0300
+Date: Mon, 18 Nov 2024 15:36:49 +0300
Subject: soc: amlogic: meson-gx-socinfo-sm: Add Amlogic secure-monitor SoC
Information driver
@@ -71,7 +71,7 @@ index 111111111111..222222222222 100644
+ } v2;
+ struct { // raw
+ u32 version;
-+ u8 buf[12+sizeof(union meson_cpu_id)];
++ u8 buf[12 + sizeof(union meson_cpu_id)];
+ } raw;
};
diff --git a/patch/kernel/archive/meson64-6.11/general-socinfo-sm-6-dt-bindings-arm-amlogic-amlogic-meson-gx-ao-secure-a.patch b/patch/kernel/archive/meson64-6.12/general-soc-0003-dt-bindings-arm-amlogic-amlogic-meson-gx-ao-secure-a.patch
similarity index 97%
rename from patch/kernel/archive/meson64-6.11/general-socinfo-sm-6-dt-bindings-arm-amlogic-amlogic-meson-gx-ao-secure-a.patch
rename to patch/kernel/archive/meson64-6.12/general-soc-0003-dt-bindings-arm-amlogic-amlogic-meson-gx-ao-secure-a.patch
index 0f5fa737b394..71f842c1dfbc 100644
--- a/patch/kernel/archive/meson64-6.11/general-socinfo-sm-6-dt-bindings-arm-amlogic-amlogic-meson-gx-ao-secure-a.patch
+++ b/patch/kernel/archive/meson64-6.12/general-soc-0003-dt-bindings-arm-amlogic-amlogic-meson-gx-ao-secure-a.patch
@@ -15,7 +15,7 @@ diff --git a/Documentation/devicetree/bindings/arm/amlogic/amlogic,meson-gx-ao-s
index 111111111111..222222222222 100644
--- a/Documentation/devicetree/bindings/arm/amlogic/amlogic,meson-gx-ao-secure.yaml
+++ b/Documentation/devicetree/bindings/arm/amlogic/amlogic,meson-gx-ao-secure.yaml
-@@ -32,6 +32,10 @@ properties:
+@@ -40,6 +40,10 @@ properties:
reg:
maxItems: 1
diff --git a/patch/kernel/archive/meson64-6.11/general-socinfo-sm-5-arm64-dts-meson-add-dts-links-to-secure-monitor-for-.patch b/patch/kernel/archive/meson64-6.12/general-soc-0004-arm64-dts-meson-add-dts-links-to-secure-monitor-for-.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-socinfo-sm-5-arm64-dts-meson-add-dts-links-to-secure-monitor-for-.patch
rename to patch/kernel/archive/meson64-6.12/general-soc-0004-arm64-dts-meson-add-dts-links-to-secure-monitor-for-.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-sound-soc-remove-mono-channel-as-it-curren.patch b/patch/kernel/archive/meson64-6.12/general-sound-soc-remove-mono-channel-as-it-curren.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-sound-soc-remove-mono-channel-as-it-curren.patch
rename to patch/kernel/archive/meson64-6.12/general-sound-soc-remove-mono-channel-as-it-curren.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-spi-nor-add-support-for-XT25F128B.patch b/patch/kernel/archive/meson64-6.12/general-spi-nor-add-support-for-XT25F128B.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-spi-nor-add-support-for-XT25F128B.patch
rename to patch/kernel/archive/meson64-6.12/general-spi-nor-add-support-for-XT25F128B.patch
diff --git a/patch/kernel/archive/meson64-6.11/general-usb-core-improve-handling-of-hubs-with-no-ports.patch b/patch/kernel/archive/meson64-6.12/general-usb-core-improve-handling-of-hubs-with-no-ports.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/general-usb-core-improve-handling-of-hubs-with-no-ports.patch
rename to patch/kernel/archive/meson64-6.12/general-usb-core-improve-handling-of-hubs-with-no-ports.patch
diff --git a/patch/kernel/archive/meson64-6.11/hwmon-emc2305-fixups-for-driver.patch b/patch/kernel/archive/meson64-6.12/hwmon-emc2305-fixups-for-driver.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/hwmon-emc2305-fixups-for-driver.patch
rename to patch/kernel/archive/meson64-6.12/hwmon-emc2305-fixups-for-driver.patch
diff --git a/patch/kernel/archive/meson64-6.11/jethome-0001-Fix-meson64-add-gpio-irq-patch-from-https-lkml.org-l.patch b/patch/kernel/archive/meson64-6.12/jethome-0001-Fix-meson64-add-gpio-irq-patch-from-https-lkml.org-l.patch
similarity index 93%
rename from patch/kernel/archive/meson64-6.11/jethome-0001-Fix-meson64-add-gpio-irq-patch-from-https-lkml.org-l.patch
rename to patch/kernel/archive/meson64-6.12/jethome-0001-Fix-meson64-add-gpio-irq-patch-from-https-lkml.org-l.patch
index d6c0036fae99..46783aef714b 100644
--- a/patch/kernel/archive/meson64-6.11/jethome-0001-Fix-meson64-add-gpio-irq-patch-from-https-lkml.org-l.patch
+++ b/patch/kernel/archive/meson64-6.12/jethome-0001-Fix-meson64-add-gpio-irq-patch-from-https-lkml.org-l.patch
@@ -22,14 +22,14 @@ index 111111111111..222222222222 100644
#include "../core.h"
#include "../pinctrl-utils.h"
-@@ -601,6 +602,40 @@ static int meson_gpio_get(struct gpio_chip *chip, unsigned gpio)
+@@ -602,6 +603,40 @@ static int meson_gpio_get(struct gpio_chip *chip, unsigned gpio)
return !!(val & BIT(bit));
}
+static int meson_gpio_to_irq(struct gpio_chip *chip, unsigned int gpio)
+{
+ struct meson_pinctrl *pc = gpiochip_get_data(chip);
-+ struct meson_bank *bank;
++ const struct meson_bank *bank;
+ struct irq_fwspec fwspec;
+ int hwirq;
+
@@ -63,7 +63,7 @@ index 111111111111..222222222222 100644
static int meson_gpiolib_register(struct meson_pinctrl *pc)
{
int ret;
-@@ -616,6 +651,7 @@ static int meson_gpiolib_register(struct meson_pinctrl *pc)
+@@ -617,6 +652,7 @@ static int meson_gpiolib_register(struct meson_pinctrl *pc)
pc->chip.direction_output = meson_gpio_direction_output;
pc->chip.get = meson_gpio_get;
pc->chip.set = meson_gpio_set;
@@ -71,7 +71,7 @@ index 111111111111..222222222222 100644
pc->chip.base = -1;
pc->chip.ngpio = pc->data->num_pins;
pc->chip.can_sleep = false;
-@@ -679,6 +715,11 @@ static int meson_pinctrl_parse_dt(struct meson_pinctrl *pc)
+@@ -680,6 +716,11 @@ static int meson_pinctrl_parse_dt(struct meson_pinctrl *pc)
pc->fwnode = gpiochip_node_get_first(pc->dev);
gpio_np = to_of_node(pc->fwnode);
diff --git a/patch/kernel/archive/meson64-6.11/jethome-0002-arm64-dts-jethub-j1xx-add-eeprom-node.patch b/patch/kernel/archive/meson64-6.12/jethome-0002-arm64-dts-jethub-j1xx-add-eeprom-node.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/jethome-0002-arm64-dts-jethub-j1xx-add-eeprom-node.patch
rename to patch/kernel/archive/meson64-6.12/jethome-0002-arm64-dts-jethub-j1xx-add-eeprom-node.patch
diff --git a/patch/kernel/archive/meson64-6.11/jethome-0003-arm64-dts-meson-add-dts-links-to-secure-monitor-for-jethub.patch.disabled b/patch/kernel/archive/meson64-6.12/jethome-0003-arm64-dts-meson-add-dts-links-to-secure-monitor-for-jethub.patch.disabled
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/jethome-0003-arm64-dts-meson-add-dts-links-to-secure-monitor-for-jethub.patch.disabled
rename to patch/kernel/archive/meson64-6.12/jethome-0003-arm64-dts-meson-add-dts-links-to-secure-monitor-for-jethub.patch.disabled
diff --git a/patch/kernel/archive/meson64-6.11/kernel-6.8-tools-cgroup-makefile.patch b/patch/kernel/archive/meson64-6.12/kernel-6.8-tools-cgroup-makefile.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/kernel-6.8-tools-cgroup-makefile.patch
rename to patch/kernel/archive/meson64-6.12/kernel-6.8-tools-cgroup-makefile.patch
diff --git a/patch/kernel/archive/meson64-6.11/meson-g12a-pinctrl-add-missing-ir-options.patch b/patch/kernel/archive/meson64-6.12/meson-g12a-pinctrl-add-missing-ir-options.patch
similarity index 93%
rename from patch/kernel/archive/meson64-6.11/meson-g12a-pinctrl-add-missing-ir-options.patch
rename to patch/kernel/archive/meson64-6.12/meson-g12a-pinctrl-add-missing-ir-options.patch
index 835cb05a2966..956c347dfd8f 100644
--- a/patch/kernel/archive/meson64-6.11/meson-g12a-pinctrl-add-missing-ir-options.patch
+++ b/patch/kernel/archive/meson64-6.12/meson-g12a-pinctrl-add-missing-ir-options.patch
@@ -59,7 +59,7 @@ index 111111111111..222222222222 100644
/* uart_a */
static const unsigned int uart_a_tx_pins[] = { GPIOX_12 };
static const unsigned int uart_a_rx_pins[] = { GPIOX_13 };
-@@ -737,6 +740,7 @@ static struct meson_pmx_group meson_g12a_periphs_groups[] = {
+@@ -737,6 +740,7 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
/* bank GPIOA */
GROUP(i2c3_sda_a, 2),
GROUP(i2c3_sck_a, 2),
@@ -78,7 +78,7 @@ index 111111111111..222222222222 100644
static const char * const uart_a_groups[] = {
"uart_a_tx", "uart_a_rx", "uart_a_cts", "uart_a_rts",
};
-@@ -1266,6 +1274,7 @@ static struct meson_pmx_func meson_g12a_periphs_functions[] = {
+@@ -1266,6 +1274,7 @@ static const struct meson_pmx_func meson_g12a_periphs_functions[] = {
FUNCTION(i2c1),
FUNCTION(i2c2),
FUNCTION(i2c3),
diff --git a/patch/kernel/archive/meson64-6.11/meson-g12b-pinctrl-Add-missing-pinmux-for-pwm.patch b/patch/kernel/archive/meson64-6.12/meson-g12b-pinctrl-Add-missing-pinmux-for-pwm.patch
similarity index 95%
rename from patch/kernel/archive/meson64-6.11/meson-g12b-pinctrl-Add-missing-pinmux-for-pwm.patch
rename to patch/kernel/archive/meson64-6.12/meson-g12b-pinctrl-Add-missing-pinmux-for-pwm.patch
index f929f37d34f1..b3de0ee701ef 100644
--- a/patch/kernel/archive/meson64-6.11/meson-g12b-pinctrl-Add-missing-pinmux-for-pwm.patch
+++ b/patch/kernel/archive/meson64-6.12/meson-g12b-pinctrl-Add-missing-pinmux-for-pwm.patch
@@ -83,7 +83,7 @@ index 111111111111..222222222222 100644
/* pwm_e */
static const unsigned int pwm_e_pins[] = { GPIOX_16 };
-@@ -594,6 +598,9 @@ static struct meson_pmx_group meson_g12a_periphs_groups[] = {
+@@ -594,6 +598,9 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
GROUP(bt565_a_din5, 2),
GROUP(bt565_a_din6, 2),
GROUP(bt565_a_din7, 2),
@@ -93,7 +93,7 @@ index 111111111111..222222222222 100644
GROUP(tsin_b_valid_z, 3),
GROUP(tsin_b_sop_z, 3),
GROUP(tsin_b_din0_z, 3),
-@@ -726,6 +733,7 @@ static struct meson_pmx_group meson_g12a_periphs_groups[] = {
+@@ -726,6 +733,7 @@ static const struct meson_pmx_group meson_g12a_periphs_groups[] = {
GROUP(uart_c_rts, 2),
GROUP(iso7816_clk_h, 1),
GROUP(iso7816_data_h, 1),
diff --git a/patch/kernel/archive/meson64-6.11/meson-gx-dts-add-support-for-GX-PM-and-VRTC.patch b/patch/kernel/archive/meson64-6.12/meson-gx-dts-add-support-for-GX-PM-and-VRTC.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/meson-gx-dts-add-support-for-GX-PM-and-VRTC.patch
rename to patch/kernel/archive/meson64-6.12/meson-gx-dts-add-support-for-GX-PM-and-VRTC.patch
diff --git a/patch/kernel/archive/meson64-6.11/meson-gxbb-dts-i2cX-missing-pins.patch b/patch/kernel/archive/meson64-6.12/meson-gxbb-dts-i2cX-missing-pins.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/meson-gxbb-dts-i2cX-missing-pins.patch
rename to patch/kernel/archive/meson64-6.12/meson-gxbb-dts-i2cX-missing-pins.patch
diff --git a/patch/kernel/archive/meson64-6.11/meson-gxbb-vdec-add-HEVC-support-to-GXBB.patch b/patch/kernel/archive/meson64-6.12/meson-gxbb-vdec-add-HEVC-support-to-GXBB.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/meson-gxbb-vdec-add-HEVC-support-to-GXBB.patch
rename to patch/kernel/archive/meson64-6.12/meson-gxbb-vdec-add-HEVC-support-to-GXBB.patch
diff --git a/patch/kernel/archive/meson64-6.11/meson-gxl-gxm-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch b/patch/kernel/archive/meson64-6.12/meson-gxl-gxm-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch
similarity index 99%
rename from patch/kernel/archive/meson64-6.11/meson-gxl-gxm-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch
rename to patch/kernel/archive/meson64-6.12/meson-gxl-gxm-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch
index 925ab80df2c2..9d1c1ebdd3bb 100644
--- a/patch/kernel/archive/meson64-6.11/meson-gxl-gxm-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch
+++ b/patch/kernel/archive/meson64-6.12/meson-gxl-gxm-arm64-dts-meson-set-p212-p23x-q20x-SDIO-to-100MH.patch
@@ -90,7 +90,7 @@ diff --git a/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi b/arch/arm64/bo
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-gx-p23x-q20x.dtsi
-@@ -256,7 +256,11 @@ &sd_emmc_a {
+@@ -260,7 +260,11 @@ &sd_emmc_a {
bus-width = <4>;
cap-sd-highspeed;
diff --git a/patch/kernel/archive/meson64-6.11/meson-gxm-vdec-add-VP9-support-to-GXM.patch b/patch/kernel/archive/meson64-6.12/meson-gxm-vdec-add-VP9-support-to-GXM.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/meson-gxm-vdec-add-VP9-support-to-GXM.patch
rename to patch/kernel/archive/meson64-6.12/meson-gxm-vdec-add-VP9-support-to-GXM.patch
diff --git a/patch/kernel/archive/meson64-6.11/meson-sm1-dts-add-higher-clocks.patch b/patch/kernel/archive/meson64-6.12/meson-sm1-dts-add-higher-clocks.patch
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/meson-sm1-dts-add-higher-clocks.patch
rename to patch/kernel/archive/meson64-6.12/meson-sm1-dts-add-higher-clocks.patch
diff --git a/patch/kernel/archive/meson64-6.11/overlay/Makefile b/patch/kernel/archive/meson64-6.12/overlay/Makefile
similarity index 97%
rename from patch/kernel/archive/meson64-6.11/overlay/Makefile
rename to patch/kernel/archive/meson64-6.12/overlay/Makefile
index fe5e0f7258cd..cff92a0bffea 100644
--- a/patch/kernel/archive/meson64-6.11/overlay/Makefile
+++ b/patch/kernel/archive/meson64-6.12/overlay/Makefile
@@ -21,6 +21,7 @@ dtbo-$(CONFIG_ARCH_MESON) += \
meson-g12a-radxa-zero-uart-ao-b-on-gpioao-2-gpioao-3.dtbo \
meson-g12a-radxa-zero-uart-ao-b-on-gpioao-8-gpioao-9.dtbo \
meson-g12a-radxa-zero-uart-ee-c.dtbo \
+ meson-g12b-bananapi-cm4-i2c2.dtbo \
meson-g12b-bananapi-cm4-pwm-gpioh-5-fan.dtbo \
meson-g12b-bananapi-cm4-wifi-freq-200mhz.dtbo \
meson-g12b-bananapi-m2s-rtl8822cs.dtbo \
diff --git a/patch/kernel/archive/meson64-6.11/overlay/README.meson-overlays b/patch/kernel/archive/meson64-6.12/overlay/README.meson-overlays
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/README.meson-overlays
rename to patch/kernel/archive/meson64-6.12/overlay/README.meson-overlays
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-fixup.scr-cmd b/patch/kernel/archive/meson64-6.12/overlay/meson-fixup.scr-cmd
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-fixup.scr-cmd
rename to patch/kernel/archive/meson64-6.12/overlay/meson-fixup.scr-cmd
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12-gxl-cma-pool-896MB.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12-gxl-cma-pool-896MB.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12-gxl-cma-pool-896MB.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12-gxl-cma-pool-896MB.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12-pwm-gpiox-5-fan.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12-pwm-gpiox-5-fan.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12-pwm-gpiox-5-fan.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12-pwm-gpiox-5-fan.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-gpio-10-led.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-gpio-10-led.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-gpio-10-led.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-gpio-10-led.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-gpio-8-led.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-gpio-8-led.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-gpio-8-led.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-gpio-8-led.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-i2c-ao-m0-gpioao-2-gpioao-3.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-i2c-ao-m0-gpioao-2-gpioao-3.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-i2c-ao-m0-gpioao-2-gpioao-3.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-i2c-ao-m0-gpioao-2-gpioao-3.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-i2c-ee-m1-gpioh-6-gpioh-7.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-i2c-ee-m1-gpioh-6-gpioh-7.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-i2c-ee-m1-gpioh-6-gpioh-7.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-i2c-ee-m1-gpioh-6-gpioh-7.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-i2c-ee-m1-gpiox-10-gpiox-11.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-i2c-ee-m1-gpiox-10-gpiox-11.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-i2c-ee-m1-gpiox-10-gpiox-11.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-i2c-ee-m1-gpiox-10-gpiox-11.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-i2c-ee-m3-gpioa-14-gpioa-15.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-i2c-ee-m3-gpioa-14-gpioa-15.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-i2c-ee-m3-gpioa-14-gpioa-15.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-i2c-ee-m3-gpioa-14-gpioa-15.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-pwm-c-on-gpiox-8.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-pwm-c-on-gpiox-8.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-pwm-c-on-gpiox-8.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-pwm-c-on-gpiox-8.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-pwmao-a-on-gpioao-11.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-pwmao-a-on-gpioao-11.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-pwmao-a-on-gpioao-11.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-pwmao-a-on-gpioao-11.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-spi-spidev.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-spi-spidev.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-spi-spidev.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-spi-spidev.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-uart-ao-a-on-gpioao-0-gpioao-1.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-uart-ao-a-on-gpioao-0-gpioao-1.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-uart-ao-a-on-gpioao-0-gpioao-1.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-uart-ao-a-on-gpioao-0-gpioao-1.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-uart-ao-b-on-gpioao-2-gpioao-3.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-uart-ao-b-on-gpioao-2-gpioao-3.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-uart-ao-b-on-gpioao-2-gpioao-3.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-uart-ao-b-on-gpioao-2-gpioao-3.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-uart-ao-b-on-gpioao-8-gpioao-9.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-uart-ao-b-on-gpioao-8-gpioao-9.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-uart-ao-b-on-gpioao-8-gpioao-9.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-uart-ao-b-on-gpioao-8-gpioao-9.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-uart-ee-c.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-uart-ee-c.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12a-radxa-zero-uart-ee-c.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12a-radxa-zero-uart-ee-c.dtso
diff --git a/patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-cm4-i2c2.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-cm4-i2c2.dtso
new file mode 100644
index 000000000000..b0fbeee3d2ff
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-cm4-i2c2.dtso
@@ -0,0 +1,20 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "bananapi,bpi-cm4io", "bananapi,bpi-cm4", "amlogic,a311d", "amlogic,g12b";
+
+ fragment@0 {
+ target = <&i2c2>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&uart_A>;
+ __overlay__ {
+ status = "disabled";
+ };
+ };
+};
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12b-bananapi-cm4-pwm-gpioh-5-fan.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-cm4-pwm-gpioh-5-fan.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12b-bananapi-cm4-pwm-gpioh-5-fan.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-cm4-pwm-gpioh-5-fan.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12b-bananapi-cm4-wifi-freq-200mhz.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-cm4-wifi-freq-200mhz.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12b-bananapi-cm4-wifi-freq-200mhz.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-cm4-wifi-freq-200mhz.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12b-bananapi-m2s-rtl8822cs.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-m2s-rtl8822cs.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12b-bananapi-m2s-rtl8822cs.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12b-bananapi-m2s-rtl8822cs.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12b-odroid-n2-spi.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12b-odroid-n2-spi.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12b-odroid-n2-spi.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12b-odroid-n2-spi.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-g12b-waveshare-cm4-io-base-usb.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-g12b-waveshare-cm4-io-base-usb.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-g12b-waveshare-cm4-io-base-usb.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-g12b-waveshare-cm4-io-base-usb.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-i2cA.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-i2cA.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-i2cA.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-i2cA.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-i2cB.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-i2cB.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-i2cB.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-i2cB.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-sm1-bananapi-m5-rtl8822cs.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-sm1-bananapi-m5-rtl8822cs.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-sm1-bananapi-m5-rtl8822cs.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-sm1-bananapi-m5-rtl8822cs.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-sm1-bananapi-uartA.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-sm1-bananapi-uartA.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-sm1-bananapi-uartA.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-sm1-bananapi-uartA.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-sm1-bananapi-uartAO_B.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-sm1-bananapi-uartAO_B.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-sm1-bananapi-uartAO_B.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-sm1-bananapi-uartAO_B.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-sm1-bananapi-uartA_cts_rts.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-sm1-bananapi-uartA_cts_rts.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-sm1-bananapi-uartA_cts_rts.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-sm1-bananapi-uartA_cts_rts.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-sm1-jethome-jethub-j200-spi.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-sm1-jethome-jethub-j200-spi.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-sm1-jethome-jethub-j200-spi.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-sm1-jethome-jethub-j200-spi.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-uartA.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-uartA.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-uartA.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-uartA.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-uartC.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-uartC.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-uartC.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-uartC.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-w1-gpio.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-w1-gpio.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-w1-gpio.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-w1-gpio.dtso
diff --git a/patch/kernel/archive/meson64-6.11/overlay/meson-w1AB-gpio.dtso b/patch/kernel/archive/meson64-6.12/overlay/meson-w1AB-gpio.dtso
similarity index 100%
rename from patch/kernel/archive/meson64-6.11/overlay/meson-w1AB-gpio.dtso
rename to patch/kernel/archive/meson64-6.12/overlay/meson-w1AB-gpio.dtso
diff --git a/patch/kernel/archive/meson64-6.6/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch b/patch/kernel/archive/meson64-6.6/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch
new file mode 100644
index 000000000000..174932bca6a5
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.6/board-radxa-zero-dts-slow-down-sdio-for-working-emmc.patch
@@ -0,0 +1,18 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Chen Jiali
+Date: Tue, 23 Apr 2024 16:05:42 +0800
+Subject: [PATCH 1/1] Reduce eMMC frequency to improve compatibility
+
+diff --git a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
+index cf0a9be83..29ace14b4 100644
+--- a/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
++++ b/arch/arm64/boot/dts/amlogic/meson-g12a-radxa-zero.dts
+@@ -358,7 +358,7 @@ &sd_emmc_c {
+ cap-mmc-highspeed;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+- max-frequency = <200000000>;
++ max-frequency = <150000000>;
+ disable-wp;
+
+ mmc-pwrseq = <&emmc_pwrseq>;
diff --git a/patch/kernel/archive/meson64-6.6/dt/meson-gxm-c400-plus.dts b/patch/kernel/archive/meson64-6.6/dt/meson-gxm-c400-plus.dts
new file mode 100644
index 000000000000..714c6fef3ff9
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.6/dt/meson-gxm-c400-plus.dts
@@ -0,0 +1,66 @@
+/dts-v1/;
+
+#include "meson-gxm.dtsi"
+#include "meson-gx-p23x-q20x.dtsi"
+
+/ {
+ compatible = "magicsee,c400-plus", "amlogic,s912", "amlogic,meson-gxm";
+ model = "Magicsee C400 Plus";
+};
+
+/* Q201 has only internal PHY port */
+ðmac {
+ phy-mode = "rmii";
+ phy-handle = <&internal_phy>;
+};
+
+&sd_emmc_a {
+ brcmf: wifi@1 {
+ reg = <1>;
+ compatible = "brcm,bcm4329-fmac";
+ };
+};
+
+&uart_A {
+ status = "okay";
+ pinctrl-0 = <&uart_a_pins>, <&uart_a_cts_rts_pins>;
+ pinctrl-names = "default";
+ uart-has-rtscts;
+
+ bluetooth {
+ compatible = "qcom,qca9377-bt";
+ enable-gpios = <&gpio GPIOX_17 GPIO_ACTIVE_HIGH>;
+ max-speed = <2000000>;
+ clocks = <&wifi32k>;
+ clock-names = "lpo";
+ };
+};
+
+/* 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;
+ sd-uhs-sdr12;
+ sd-uhs-sdr25;
+ sd-uhs-sdr50;
+ sd-uhs-sdr104;
+ 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>;
+};
\ No newline at end of file
diff --git a/patch/kernel/archive/meson64-6.6/dt/meson-sm1-jethome-jethub-j200-spinor.dts b/patch/kernel/archive/meson64-6.6/dt/meson-sm1-jethome-jethub-j200-spinor.dts
new file mode 100644
index 000000000000..b4d2542cddc2
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.6/dt/meson-sm1-jethome-jethub-j200-spinor.dts
@@ -0,0 +1,15 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2024 JetHome
+ * Author: Viacheslav Bocharov
+ */
+
+/dts-v1/;
+
+#include "meson-sm1-jethome-jethub-j200.dts"
+
+/ {
+ model = "JetHub D2 with SPI NOR flash";
+};
+
+#include "meson-g12-enable-spinor.dtsi"
diff --git a/patch/kernel/archive/meson64-6.6/dt/meson-sm1-jethome-jethub-j200.dts b/patch/kernel/archive/meson64-6.6/dt/meson-sm1-jethome-jethub-j200.dts
new file mode 100644
index 000000000000..181e4a221ba2
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.6/dt/meson-sm1-jethome-jethub-j200.dts
@@ -0,0 +1,707 @@
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
+/*
+ * Copyright (c) 2024 JetHome
+ * Author: Viacheslav Bocharov
+ */
+
+/dts-v1/;
+
+#include "meson-sm1.dtsi"
+
+#include
+#include
+#include
+
+
+/ {
+
+ compatible = "jethome,jethub-j200", "amlogic,sm1";
+ model = "JetHome JetHub D2";
+
+ aliases {
+ serial0 = &uart_AO;
+ ethernet0 = ðmac;
+ rtc0 = &rtc;
+ rtc1 = &vrtc;
+ };
+
+ chosen {
+ stdout-path = "serial0:115200n8";
+ };
+
+ memory@0 {
+ device_type = "memory";
+ reg = <0x0 0x0 0x0 0x40000000>;
+ };
+
+ emmc_pwrseq: emmc-pwrseq {
+ compatible = "mmc-pwrseq-emmc";
+ reset-gpios = <&gpio BOOT_12 GPIO_ACTIVE_LOW>;
+ };
+
+ tflash_vdd: regulator-tflash_vdd {
+ compatible = "regulator-fixed";
+
+ regulator-name = "TFLASH_VDD";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+
+ gpio = <&gpio_ao GPIOAO_3 GPIO_OPEN_DRAIN>;
+ enable-active-high;
+ regulator-always-on;
+ };
+
+ tf_io: gpio-regulator-tf_io {
+ compatible = "regulator-gpio";
+
+ regulator-name = "TF_IO";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <&vcc_5v>;
+
+ enable-gpios = <&gpio_ao GPIOE_2 GPIO_OPEN_DRAIN>;
+ enable-active-high;
+ regulator-always-on;
+
+ gpios = <&gpio_ao GPIOAO_6 GPIO_OPEN_SOURCE>;
+ gpios-states = <0>;
+
+ states = <3300000 0>,
+ <1800000 1>;
+ };
+
+ flash_1v8: regulator-flash_1v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "FLASH_1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ vin-supply = <&vcc_3v3>;
+ regulator-always-on;
+ };
+
+ main_12v: regulator-main_12v {
+ compatible = "regulator-fixed";
+ regulator-name = "12V";
+ regulator-min-microvolt = <12000000>;
+ regulator-max-microvolt = <12000000>;
+ regulator-always-on;
+ };
+
+ vcc_5v: regulator-vcc_5v {
+ compatible = "regulator-fixed";
+ regulator-name = "5V";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ regulator-always-on;
+ vin-supply = <&main_12v>;
+ gpio = <&gpio GPIOH_8 GPIO_OPEN_DRAIN>;
+ enable-active-high;
+ };
+
+ vcc_1v8: regulator-vcc_1v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC_1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ vin-supply = <&vcc_3v3>;
+ regulator-always-on;
+ };
+
+ vcc_3v3: regulator-vcc_3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "VCC_3V3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <&vddao_3v3>;
+ regulator-always-on;
+ };
+
+ vddcpu: regulator-vddcpu {
+ /*
+ * MP8756GD Regulator.
+ */
+ compatible = "pwm-regulator";
+
+ regulator-name = "VDDCPU";
+ regulator-min-microvolt = <721000>;
+ regulator-max-microvolt = <1022000>;
+
+ pwm-supply = <&main_12v>;
+
+ pwms = <&pwm_AO_cd 1 1250 0>;
+ pwm-dutycycle-range = <100 0>;
+
+ regulator-boot-on;
+ regulator-always-on;
+ };
+
+ usb_pwr_en: regulator-usb_pwr_en {
+ compatible = "regulator-fixed";
+ regulator-name = "USB_PWR_EN";
+ regulator-min-microvolt = <5000000>;
+ regulator-max-microvolt = <5000000>;
+ vin-supply = <&vcc_5v>;
+
+ /* Connected to the internal USB-Hub */
+ gpio = <&gpio_ao GPIOAO_2 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ };
+
+ vddao_1v8: regulator-vddao_1v8 {
+ compatible = "regulator-fixed";
+ regulator-name = "VDDAO_1V8";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ vin-supply = <&vddao_3v3>;
+ regulator-always-on;
+ };
+
+ vddao_3v3: regulator-vddao_3v3 {
+ compatible = "regulator-fixed";
+ regulator-name = "VDDAO_3V3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ vin-supply = <&main_12v>;
+ regulator-always-on;
+ };
+
+ hdmi-connector {
+ compatible = "hdmi-connector";
+ type = "a";
+
+ port {
+ hdmi_connector_in: endpoint {
+ remote-endpoint = <&hdmi_tx_tmds_out>;
+ };
+ };
+ };
+
+ sound {
+ compatible = "amlogic,axg-sound-card";
+ audio-aux-devs = <&tdmout_b>;
+ audio-routing = "TDM_B Playback", "TDMOUT_B OUT";
+
+ assigned-clocks = <&clkc CLKID_MPLL2>,
+ <&clkc CLKID_MPLL0>,
+ <&clkc CLKID_MPLL1>;
+ assigned-clock-parents = <0>, <0>, <0>;
+ assigned-clock-rates = <294912000>,
+ <270950400>,
+ <393216000>;
+
+ /* 8ch hdmi interface */
+ dai-link-0 {
+ sound-dai = <&tdmif_b>;
+ dai-format = "i2s";
+ dai-tdm-slot-tx-mask-0 = <1 1>;
+ dai-tdm-slot-tx-mask-1 = <1 1>;
+ dai-tdm-slot-tx-mask-2 = <1 1>;
+ dai-tdm-slot-tx-mask-3 = <1 1>;
+ mclk-fs = <256>;
+
+ codec {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_IN_B>;
+ };
+ };
+
+ /* hdmi glue */
+ dai-link-1 {
+ sound-dai = <&tohdmitx TOHDMITX_I2S_OUT>;
+
+ codec {
+ sound-dai = <&hdmi_tx>;
+ };
+ };
+ };
+
+ meson64-reboot {
+ compatible = "meson64,reboot";
+ sys_reset = <0x84000009>;
+ sys_poweroff = <0x84000008>;
+
+ sd-vqen = <&gpio GPIOE_2 GPIO_ACTIVE_HIGH>;
+ sd-vqsw = <&gpio_ao GPIOAO_6 GPIO_ACTIVE_HIGH>;
+ sd-vmmc = <&gpio_ao GPIOAO_3 GPIO_ACTIVE_HIGH>;
+ };
+
+ leds {
+ compatible = "gpio-leds";
+
+ led-green {
+ color = ;
+ function = LED_FUNCTION_STATUS;
+ gpios = <&gpio_ao GPIOAO_11 GPIO_ACTIVE_LOW>;
+ linux,default-trigger = "heartbeat";
+ panic-indicator;
+ };
+
+ led-red {
+ color = ;
+ function = LED_FUNCTION_POWER;
+ gpios = <&gpio GPIOH_5 GPIO_ACTIVE_LOW>;
+ default-state = "off";
+ };
+
+ };
+
+ sound {
+ model = "JETHUB-D2";
+ };
+
+};
+
+&arb {
+ status = "okay";
+};
+
+&cec_AO {
+ pinctrl-0 = <&cec_ao_a_h_pins>;
+ pinctrl-names = "default";
+ status = "disabled";
+ hdmi-phandle = <&hdmi_tx>;
+};
+
+&cecb_AO {
+ pinctrl-0 = <&cec_ao_b_h_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+ hdmi-phandle = <&hdmi_tx>;
+};
+
+&clkc_audio {
+ status = "okay";
+};
+
+&cpu0 {
+ cpu-supply = <&vddcpu>;
+ operating-points-v2 = <&cpu_opp_table>;
+ clocks = <&clkc CLKID_CPU_CLK>;
+ clock-latency = <50000>;
+};
+
+&cpu1 {
+ cpu-supply = <&vddcpu>;
+ operating-points-v2 = <&cpu_opp_table>;
+ clocks = <&clkc CLKID_CPU1_CLK>;
+ clock-latency = <50000>;
+};
+
+&cpu2 {
+ cpu-supply = <&vddcpu>;
+ operating-points-v2 = <&cpu_opp_table>;
+ clocks = <&clkc CLKID_CPU2_CLK>;
+ clock-latency = <50000>;
+};
+
+&cpu3 {
+ cpu-supply = <&vddcpu>;
+ operating-points-v2 = <&cpu_opp_table>;
+ clocks = <&clkc CLKID_CPU3_CLK>;
+ clock-latency = <50000>;
+};
+
+&ext_mdio {
+ external_phy: ethernet-phy@0 {
+ /* Realtek RTL8211F (0x001cc916) */
+ reg = <0>;
+ max-speed = <1000>;
+
+ reset-assert-us = <10000>;
+ reset-deassert-us = <80000>;
+ reset-gpios = <&gpio GPIOZ_15 (GPIO_ACTIVE_LOW | GPIO_OPEN_DRAIN)>;
+
+ interrupt-parent = <&gpio_intc>;
+ /* MAC_INTR on GPIOZ_14 */
+ interrupts = ;
+ };
+};
+
+ðmac {
+ pinctrl-0 = <ð_pins>, <ð_rgmii_pins>;
+ pinctrl-names = "default";
+ status = "okay";
+ phy-mode = "rgmii";
+ phy-handle = <&external_phy>;
+ amlogic,tx-delay-ns = <2>;
+};
+
+&gpio {
+ gpio-line-names =
+ /* GPIOZ */
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "", "", "", "",
+ /* GPIOH */
+ "HDMITX_SDA", /* GPIOH_0 */
+ "HDMITX_SCL", /* GPIOH_1 */
+ "HDMITX_HPD_IN", /* GPIOH_2 */
+ "AO_CEC_A", /* GPIOH_3 */
+ "HUB_RESET", /* GPIOH_4 */
+ "LED_RED", /* GPIOH_5 */
+ "I2C_SDA_MODULES", /* GPIOH_6 */
+ "I2C_SCL_MODULES", /* GPIOH_7 */
+ "5V_EN", /* GPIOH_8 */
+ /* BOOT */
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "", "", "", "",
+ /* GPIOC */
+ "", "", "", "", "", "", "", "",
+ /* GPIOA */
+ "", "", "", "", "", "", "", "",
+ "", "", "", "", "", "",
+ "I2C_SDA_SYSBUS", /* GPIOA_14 */
+ "I2C_SCL_SYSBUS", /* GPIOA_15 */
+ /* GPIOX */
+ "", "", "", "", "", "", /* GPIOX_0 - GPIOX_5 */
+ "RS485_TX", /* GPIOX_6 */
+ "RS485_RX", /* GPIOX_7 */
+ "", "", "", "", "", "", /* GPIOX_8 - GPIOX_13 */
+ "", "", "", /* GPIOX_14 - GPIOX_16 */
+ "I2C_SDA_LCDBUS", /* GPIOX_17 */
+ "I2C_SCL_LCDBUS", /* GPIOX_18 */
+ ""; /* GPIOX_19 */
+ /*
+ * WARNING: The USB Hub needs a reset signal to be turned low in
+ * order to be detected by the USB Controller. This signal should
+ * be handled by a USB specific power sequence to reset the Hub
+ * when the USB bus is powered down.
+ */
+ usb-hub-hog {
+ gpio-hog;
+ gpios = ;
+ output-low;
+ line-name = "usb-hub-reset";
+ };
+
+};
+
+&gpio_ao {
+ gpio-line-names =
+ /* GPIOAO */
+ "CONSOLE_TX", /* GPIOAO_0 */
+ "CONSOLE_RX", /* GPIOAO_1 */
+ "USB_OTG_PWR_EN", /* GPIOAO_2 */
+ "TFLASH_VDD_EN", /* GPIOAO_3 */
+ "MCU_RESET", /* GPIOAO_4 */
+ "POWER_GOOD", /* GPIOAO_5 */
+ "TF_3V3N_1V8_EN", /* GPIOAO_6 */
+ "GPIO_EXPANDER_INT", /* GPIOAO_7 */
+ "MCU_UART_TX", /* GPIOAO_8 */
+ "MCU_UART_RX", /* GPIOAO_9 */
+ "BUTTON_USR", /* GPIOAO_10 */
+ "LED_GREEN", /* GPIOAO_11 */
+ /* GPIOE */
+ "VDDEE_PWM", "VDDCPU_PWM", "TF_PWR_EN";
+};
+
+&hdmi_tx {
+ status = "okay";
+ pinctrl-0 = <&hdmitx_hpd_pins>, <&hdmitx_ddc_pins>;
+ pinctrl-names = "default";
+ hdmi-supply = <&vcc_5v>;
+};
+
+&hdmi_tx_tmds_port {
+ hdmi_tx_tmds_out: endpoint {
+ remote-endpoint = <&hdmi_connector_in>;
+ };
+};
+
+&pwm_AO_cd {
+ pinctrl-0 = <&pwm_ao_d_e_pins>;
+ pinctrl-names = "default";
+ clocks = <&xtal>;
+ clock-names = "clkin1";
+ status = "okay";
+};
+
+&saradc {
+ status = "okay";
+};
+
+/* SD card */
+&sd_emmc_b {
+ status = "okay";
+ pinctrl-0 = <&sdcard_c_pins>;
+ pinctrl-1 = <&sdcard_clk_gate_c_pins>;
+ pinctrl-names = "default", "clk-gate";
+
+ bus-width = <4>;
+ cap-sd-highspeed;
+ 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>;
+ vmmc-supply = <&tflash_vdd>;
+ vqmmc-supply = <&tf_io>;
+};
+
+/* eMMC */
+&sd_emmc_c {
+ status = "okay";
+ pinctrl-0 = <&emmc_ctrl_pins>, <&emmc_data_8b_pins>, <&emmc_ds_pins>;
+ pinctrl-1 = <&emmc_clk_gate_pins>;
+ pinctrl-names = "default", "clk-gate";
+
+ bus-width = <8>;
+ cap-mmc-highspeed;
+ mmc-ddr-1_8v;
+ mmc-hs200-1_8v;
+ max-frequency = <200000000>;
+ disable-wp;
+
+ mmc-pwrseq = <&emmc_pwrseq>;
+ vmmc-supply = <&vcc_3v3>;
+ vqmmc-supply = <&flash_1v8>;
+};
+
+&spifc {
+ status = "disabled";
+ pinctrl-0 = <&nor_pins>;
+ pinctrl-names = "default";
+ clock-frequency = <400000>;
+
+ flash: nor-flash@0 {
+ compatible = "sst,w25q256", "jedec,spi-nor";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ reg = <0>;
+ spi-max-frequency = <30000000>;
+ };
+};
+
+&tdmif_b {
+ status = "okay";
+};
+
+&tdmout_b {
+ status = "okay";
+};
+
+&tohdmitx {
+ status = "okay";
+};
+
+&uart_AO {
+ status = "okay";
+ pinctrl-0 = <&uart_ao_a_pins>;
+ pinctrl-names = "default";
+};
+
+&uart_AO_B {
+ status = "okay";
+ pinctrl-0 = <&uart_ao_b_8_9_pins>;
+ pinctrl-names = "default";
+};
+
+&uart_B {
+ status = "okay";
+ pinctrl-0 = <&uart_b_pins>;
+ pinctrl-names = "default";
+ clock-frequency = <400000>;
+};
+
+
+&usb {
+ status = "okay";
+ vbus-supply = <&usb_pwr_en>;
+};
+
+&usb2_phy0 {
+ phy-supply = <&vcc_5v>;
+};
+
+
+/* I2C for modules */
+&i2c1 {
+ status = "okay";
+ pinctrl-0 = <&i2c1_sda_h6_pins>, <&i2c1_sck_h7_pins>;
+ pinctrl-names = "default";
+ clock-frequency = <400000>;
+
+ /* GPIO expander */
+ u9: gpio@22 {
+ compatible = "nxp,pca9535";
+ reg = <0x22>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ interrupt-parent = <&gpio_intc>;
+ interrupts = ;
+
+ gpio-line-names =
+ "RELAY_1", "RELAY_2",
+ "", "",
+ "UXM1_RESET", "UXM1_BOOT",
+ "UXM2_RESET", "UXM2_BOOT",
+ "DIN_1", "DIN_2", "DIN_3",
+ "","","","","";
+ };
+
+ /* 1-wire */
+ w1: onewire@18 {
+ compatible = "maxim,ds2482";
+ reg = <0x18>;
+ };
+
+};
+
+
+/* I2C for lcd/etc */
+&i2c2 {
+ status = "okay";
+ pinctrl-0 = <&i2c2_sda_x_pins>, <&i2c2_sck_x_pins>;
+ pinctrl-names = "default";
+ clock-frequency = <400000>;
+};
+
+/* I2C_EE_M3: I2C for CPU board */
+&i2c3 {
+ status = "okay";
+ pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>;
+ pinctrl-names = "default";
+ clock-frequency = <400000>;
+
+ /* I2C for rtc */
+ rtc: rtc@51 {
+ status = "okay";
+ compatible = "nxp,pcf8563";
+ reg = <0x51>;
+ wakeup-source;
+ };
+
+ /* FRAM on base board */
+ fram: eeprom@52 {
+ compatible = "atmel,24c64";
+ reg = <0x52>;
+ pagesize = <0x20>;
+ label = "fram";
+ address-width = <0x10>;
+ vcc-supply = <&vddao_3v3>;
+ };
+
+ /* EEPROM on CPU board */
+ eepromc: eeprom@54 {
+ compatible = "atmel,24c64";
+ reg = <0x54>;
+ pagesize = <0x20>;
+ label = "eepromc";
+ address-width = <0x10>;
+ vcc-supply = <&vddao_3v3>;
+ };
+
+ /* EEPROM on base board */
+ eeprompd: eeprom@56 {
+ compatible = "atmel,24c64";
+ reg = <0x56>;
+ pagesize = <0x20>;
+ label = "eeprompd";
+ address-width = <0x10>;
+ vcc-supply = <&vddao_3v3>;
+ };
+
+ /* EEPROM on power module */
+ eeprompm: eeprom@57 {
+ compatible = "atmel,24c64";
+ reg = <0x57>;
+ pagesize = <0x20>;
+ label = "eeprompm";
+ address-width = <0x10>;
+ vcc-supply = <&vddao_3v3>;
+ };
+
+ /* temperature sensors */
+ temp1: tmp102@48 {
+ compatible = "ti,tmp102";
+ reg = <0x48>;
+ };
+
+ temp2: tmp102@49 {
+ compatible = "ti,tmp102";
+ reg = <0x49>;
+ };
+
+};
+
+&efuse {
+ eth_mac: eth-mac@0 {
+ reg = <0x0 0x6>;
+ };
+
+ bt_mac: bt-mac@6 {
+ reg = <0x6 0x6>;
+ };
+
+ wifi_mac: wifi-mac@c {
+ reg = <0xc 0x6>;
+ };
+
+ bid: bid@12 {
+ reg = <0x12 0x20>;
+ };
+
+ sn: sn@32 {
+ reg = <0x32 0x20>;
+ };
+};
+
+&cpu_thermal {
+ trips {
+ cpu_passive: cpu-passive {
+ temperature = <70000>; /* millicelsius */
+ hysteresis = <2000>; /* millicelsius */
+ type = "passive";
+ };
+
+ cpu_hot: cpu-hot {
+ temperature = <85000>; /* millicelsius */
+ hysteresis = <2000>; /* millicelsius */
+ type = "hot";
+ };
+
+ cpu_critical: cpu-critical {
+ temperature = <90000>; /* millicelsius */
+ hysteresis = <2000>; /* millicelsius */
+ type = "critical";
+ };
+ };
+
+ cooling-maps {
+ map0 {
+ trip = <&cpu_passive>;
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+
+ map1 {
+ trip = <&cpu_hot>;
+ cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+ <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+ };
+ };
+};
+
+&ddr_thermal {
+ trips {
+ ddr_passive: ddr-passive {
+ temperature = <70000>; /* millicelsius */
+ hysteresis = <2000>; /* millicelsius */
+ type = "passive";
+ };
+
+ ddr_critical: ddr-critical {
+ temperature = <85000>; /* millicelsius */
+ hysteresis = <2000>; /* millicelsius */
+ type = "critical";
+ };
+ };
+
+};
diff --git a/patch/kernel/archive/meson64-6.6/overlay/Makefile b/patch/kernel/archive/meson64-6.6/overlay/Makefile
index 1373e070c6b9..9a6893242991 100644
--- a/patch/kernel/archive/meson64-6.6/overlay/Makefile
+++ b/patch/kernel/archive/meson64-6.6/overlay/Makefile
@@ -21,6 +21,7 @@ dtbo-$(CONFIG_ARCH_MESON) += \
meson-g12a-radxa-zero-uart-ao-b-on-gpioao-2-gpioao-3.dtbo \
meson-g12a-radxa-zero-uart-ao-b-on-gpioao-8-gpioao-9.dtbo \
meson-g12a-radxa-zero-uart-ee-c.dtbo \
+ meson-g12b-bananapi-cm4-i2c2.dtbo \
meson-g12b-bananapi-cm4-pwm-gpioh-5-fan.dtbo \
meson-g12b-bananapi-cm4-wifi-freq-200mhz.dtbo \
meson-g12b-bananapi-m2s-rtl8822cs.dtbo \
diff --git a/patch/kernel/archive/meson64-6.6/overlay/meson-g12b-bananapi-cm4-i2c2.dts b/patch/kernel/archive/meson64-6.6/overlay/meson-g12b-bananapi-cm4-i2c2.dts
new file mode 100644
index 000000000000..b0fbeee3d2ff
--- /dev/null
+++ b/patch/kernel/archive/meson64-6.6/overlay/meson-g12b-bananapi-cm4-i2c2.dts
@@ -0,0 +1,20 @@
+/dts-v1/;
+/plugin/;
+
+/ {
+ compatible = "bananapi,bpi-cm4io", "bananapi,bpi-cm4", "amlogic,a311d", "amlogic,g12b";
+
+ fragment@0 {
+ target = <&i2c2>;
+ __overlay__ {
+ status = "okay";
+ };
+ };
+
+ fragment@1 {
+ target = <&uart_A>;
+ __overlay__ {
+ status = "disabled";
+ };
+ };
+};
diff --git a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-0002-rockchip-from-list.patch b/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-0002-rockchip-from-list.patch
deleted file mode 100644
index 517eaf53c059..000000000000
--- a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-0002-rockchip-from-list.patch
+++ /dev/null
@@ -1,131 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Jonas Karlman
-Date: Sun, 17 Feb 2019 22:14:38 +0000
-Subject: [PATCH] mmc: core: set initial signal voltage on power off
-
-Some boards have SD card connectors where the power rail cannot be switched
-off by the driver. If the card has not been power cycled, it may still be
-using 1.8V signaling after a warm re-boot. Bootroms expecting 3.3V signaling
-will fail to boot from a UHS card that continue to use 1.8V signaling.
-
-Set initial signal voltage in mmc_power_off() to allow re-boot to function.
-
-This fixes re-boot with UHS cards on Asus Tinker Board (Rockchip RK3288),
-same issue have been seen on some Rockchip RK3399 boards.
-
-I am sending this as a RFC because I have no insights into SD/MMC subsystem,
-this change fix a re-boot issue on my boards and does not break emmc/sdio.
-Is this an acceptable workaround? Any advice is appreciated.
-
-Signed-off-by: Jonas Karlman
----
- drivers/mmc/core/core.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
-index ef53a2578824..d4c53074154a 100644
---- a/drivers/mmc/core/core.c
-+++ b/drivers/mmc/core/core.c
-@@ -1358,6 +1358,14 @@ void mmc_power_off(struct mmc_host *host)
- if (host->ios.power_mode == MMC_POWER_OFF)
- return;
-
-+ mmc_set_initial_signal_voltage(host);
-+
-+ /*
-+ * This delay should be sufficient to allow the power supply
-+ * to reach the minimum voltage.
-+ */
-+ mmc_delay(host->ios.power_delay_ms);
-+
- mmc_pwrseq_power_off(host);
-
- host->ios.clock = 0;
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Alex Bee
-Date: Wed, 23 Jun 2021 16:59:18 +0200
-Subject: [PATCH] arm64: dts: rockchip: Add sdmmc_ext for RK3328
-
-RK3328 SoC has a fourth mmc controller called SDMMC_EXT. Some
-boards have sdio wifi connected to it. In order to use it
-one would have to add the pinctrls from sdmmc0ext group which
-is done on board level.
-
-Signed-off-by: Alex Bee
----
- arch/arm64/boot/dts/rockchip/rk3328.dtsi | 14 ++++++++++++++
- 1 file changed, 14 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
-index 49ae15708a0b..60348d517efb 100644
---- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
-@@ -993,6 +993,20 @@ usb_host0_ohci: usb@ff5d0000 {
- status = "disabled";
- };
-
-+ sdmmc_ext: mmc@ff5f0000 {
-+ compatible = "rockchip,rk3328-dw-mshc", "rockchip,rk3288-dw-mshc";
-+ reg = <0x0 0xff5f0000 0x0 0x4000>;
-+ interrupts = ;
-+ clocks = <&cru HCLK_SDMMC_EXT>, <&cru SCLK_SDMMC_EXT>,
-+ <&cru SCLK_SDMMC_EXT_DRV>, <&cru SCLK_SDMMC_EXT_SAMPLE>;
-+ clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
-+ fifo-depth = <0x100>;
-+ max-frequency = <150000000>;
-+ resets = <&cru SRST_SDMMCEXT>;
-+ reset-names = "reset";
-+ status = "disabled";
-+ };
-+
- usbdrd3: usb@ff600000 {
- compatible = "rockchip,rk3328-dwc3", "snps,dwc3";
- reg = <0x0 0xff600000 0x0 0x100000>;
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Alex Bee
-Date: Wed, 23 Jun 2021 17:02:08 +0200
-Subject: [PATCH] arm64: dts: rockchip: Add sdmmc/sdio/emmc reset controls for
- RK3328
-
-The DW MCI controller driver will use them to reset the IP block before
-initialisation.
-
-Fixes: d717f7352ec6 ("arm64: dts: rockchip: add sdmmc/sdio/emmc nodes for RK3328 SoCs")
-Signed-off-by: Alex Bee
----
- arch/arm64/boot/dts/rockchip/rk3328.dtsi | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
-index 60348d517efb..d7e44d174d7b 100644
---- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
-@@ -871,6 +871,8 @@ sdmmc: mmc@ff500000 {
- clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
- fifo-depth = <0x100>;
- max-frequency = <150000000>;
-+ resets = <&cru SRST_MMC0>;
-+ reset-names = "reset";
- status = "disabled";
- };
-
-@@ -883,6 +885,8 @@ sdio: mmc@ff510000 {
- clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
- fifo-depth = <0x100>;
- max-frequency = <150000000>;
-+ resets = <&cru SRST_SDIO>;
-+ reset-names = "reset";
- status = "disabled";
- };
-
-@@ -895,6 +899,8 @@ emmc: mmc@ff520000 {
- clock-names = "biu", "ciu", "ciu-drive", "ciu-sample";
- fifo-depth = <0x100>;
- max-frequency = <150000000>;
-+ resets = <&cru SRST_EMMC>;
-+ reset-names = "reset";
- status = "disabled";
- };
-
diff --git a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1003-temp-dw_hdmi-rockchip.patch b/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1003-temp-dw_hdmi-rockchip.patch
deleted file mode 100644
index 649732ddbedd..000000000000
--- a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1003-temp-dw_hdmi-rockchip.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-index 0370bb247fcb..55c0b8dddad5 100644
---- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c 2023-06-25 03:23:55.724209412 +0000
-+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c 2023-06-25 04:16:27.469899470 +0000
-@@ -254,35 +245,31 @@
- const struct drm_display_info *info,
- const struct drm_display_mode *mode)
- {
-- struct rockchip_hdmi *hdmi = data;
-- const struct dw_hdmi_mpll_config *mpll_cfg = rockchip_mpll_cfg;
-- int pclk = mode->clock * 1000;
-- bool exact_match = hdmi->plat_data->phy_force_vendor;
-- int i;
--
-- if (hdmi->ref_clk) {
-- int rpclk = clk_round_rate(hdmi->ref_clk, pclk);
--
-- if (abs(rpclk - pclk) > pclk / 1000)
-- return MODE_NOCLOCK;
-- }
--
-- for (i = 0; mpll_cfg[i].mpixelclock != (~0UL); i++) {
-- /*
-- * For vendor specific phys force an exact match of the pixelclock
-- * to preserve the original behaviour of the driver.
-- */
-- if (exact_match && pclk == mpll_cfg[i].mpixelclock)
-- return MODE_OK;
-- /*
-- * The Synopsys phy can work with pixelclocks up to the value given
-- * in the corresponding mpll_cfg entry.
-- */
-- if (!exact_match && pclk <= mpll_cfg[i].mpixelclock)
-- return MODE_OK;
-+ struct dw_hdmi_plat_data *pdata = (struct dw_hdmi_plat_data *)data;
-+ const struct dw_hdmi_mpll_config *mpll_cfg = pdata->mpll_cfg;
-+ int clock = mode->clock;
-+ unsigned int i = 0;
-+
-+ if (pdata->ycbcr_420_allowed && drm_mode_is_420(info, mode) &&
-+ (info->color_formats & DRM_COLOR_FORMAT_YCBCR420)) {
-+ clock /= 2;
-+ mpll_cfg = pdata->mpll_cfg_420;
-+ }
-+
-+ if ((!mpll_cfg && clock > 340000) ||
-+ (info->max_tmds_clock && clock > info->max_tmds_clock))
-+ return MODE_CLOCK_HIGH;
-+
-+ if (mpll_cfg) {
-+ while ((clock * 1000) < mpll_cfg[i].mpixelclock &&
-+ mpll_cfg[i].mpixelclock != (~0UL))
-+ i++;
-+
-+ if (mpll_cfg[i].mpixelclock == (~0UL))
-+ return MODE_CLOCK_HIGH;
- }
-
-- return MODE_BAD;
-+ return MODE_OK;
- }
-
- static void dw_hdmi_rockchip_encoder_disable(struct drm_encoder *encoder)
diff --git a/patch/kernel/archive/rockchip-6.11/0000.patching_config.yaml b/patch/kernel/archive/rockchip-6.12/0000.patching_config.yaml
similarity index 95%
rename from patch/kernel/archive/rockchip-6.11/0000.patching_config.yaml
rename to patch/kernel/archive/rockchip-6.12/0000.patching_config.yaml
index c956d602cc6c..141801ee796c 100644
--- a/patch/kernel/archive/rockchip-6.11/0000.patching_config.yaml
+++ b/patch/kernel/archive/rockchip-6.12/0000.patching_config.yaml
@@ -1,10 +1,10 @@
config:
# Just some info stuff; not used by the patching scripts
- name: rockchip-6.11
+ name: rockchip-6.12
kind: kernel
type: mainline # or: vendor
- branch: linux-6.11.y
- last-known-good-tag: v6.11
+ branch: linux-6.12.y
+ last-known-good-tag: v6.12
maintainers:
- { github: paolo.sabatino, name: Paolo Sabatino, email: paolo.sabatino@gmail.com, armbian-forum: jock }
diff --git a/patch/kernel/archive/rockchip-6.11/armbian.series b/patch/kernel/archive/rockchip-6.12/armbian.series
similarity index 97%
rename from patch/kernel/archive/rockchip-6.11/armbian.series
rename to patch/kernel/archive/rockchip-6.12/armbian.series
index afd8f3b90306..847a170939ac 100644
--- a/patch/kernel/archive/rockchip-6.11/armbian.series
+++ b/patch/kernel/archive/rockchip-6.12/armbian.series
@@ -29,6 +29,7 @@
patches.armbian/general-add-overlay-compilation-support.patch
patches.armbian/general-add-overlay-configfs.patch
patches.armbian/general-add-restart-handler-for-act8846.patch
+ patches.armbian/general-dwc2-fix-rk3288-reset-on-wake-quirk.patch
patches.armbian/general-dwc2-fix-wait-peripheral.patch
patches.armbian/general-dwc2-fix-wait-time.patch
patches.armbian/general-dwc2-nak-gadget.patch
diff --git a/patch/kernel/archive/rockchip-6.11/dt/rk322x-box.dts b/patch/kernel/archive/rockchip-6.12/dt/rk322x-box.dts
similarity index 93%
rename from patch/kernel/archive/rockchip-6.11/dt/rk322x-box.dts
rename to patch/kernel/archive/rockchip-6.12/dt/rk322x-box.dts
index ddc25ec77f7f..1382c432b60c 100644
--- a/patch/kernel/archive/rockchip-6.11/dt/rk322x-box.dts
+++ b/patch/kernel/archive/rockchip-6.12/dt/rk322x-box.dts
@@ -24,7 +24,7 @@
/delete-node/ opp-table-0;
/*
- * Rebuild the thermal zones and cooling maps ourselved
+ * Rebuild the thermal zones and cooling maps ourselves
*/
/delete-node/ thermal-zones;
@@ -37,20 +37,6 @@
mmc2 = &emmc;
};
- analog-sound {
- compatible = "simple-audio-card";
- simple-audio-card,format = "i2s";
- simple-audio-card,mclk-fs = <256>;
- simple-audio-card,name = "analog";
- simple-audio-card,cpu {
- sound-dai = <&i2s1>;
- };
-
- simple-audio-card,codec {
- sound-dai = <&codec>;
- };
- };
-
chosen {
bootargs = "earlyprintk=uart8250,mmio32,0x11030000";
};
@@ -142,25 +128,6 @@
reset-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_LOW>;
};
-
- spdif_out: spdif-out {
- status = "okay";
- compatible = "linux,spdif-dit";
- #sound-dai-cells = <0>;
- };
-
- spdif-sound {
- status = "okay";
- compatible = "simple-audio-card";
- simple-audio-card,name = "SPDIF";
- simple-audio-card,cpu {
- sound-dai = <&spdif>;
- };
- simple-audio-card,codec {
- sound-dai = <&spdif_out>;
- };
- };
-
vcc_sys: vcc-sys-regulator {
compatible = "regulator-fixed";
regulator-name = "vcc_sys";
@@ -318,11 +285,35 @@
};
};
-};
+ hdmi-sound {
+ compatible = "audio-graph-card2";
+ label = "HDMI";
+ links = <&i2s0_port>;
+ };
+
+ analog-sound {
+ compatible = "audio-graph-card2";
+ label = "analog";
+ links = <&i2s1_port>;
+ };
+
+ spdif-sound {
+ compatible = "audio-graph-card2";
+ label = "SPDIF";
+ links = <&spdif_port>;
+ };
+
+ spdif_out: spdif-out {
+ status = "okay";
+ compatible = "linux,spdif-dit";
+ #sound-dai-cells = <0>;
+ spdif_out_port: port {
+ spdif_out_ep: endpoint {
+ remote-endpoint = <&spdif_ep>;
+ };
+ };
+ };
-&codec {
- #sound-dai-cells = <0>;
- status = "okay";
};
&cpu0 {
@@ -460,23 +451,63 @@
&hdmi {
status = "okay";
+ hdmi_port: port {
+ hdmi_ep: endpoint {
+ remote-endpoint = <&i2s0_ep>;
+ };
+ };
};
-&hdmi_sound {
+&hdmi_phy {
status = "okay";
};
-&hdmi_phy {
+&codec {
+ #sound-dai-cells = <0>;
+ status = "okay";
+ codec_port: port {
+ codec_ep: endpoint {
+ remote-endpoint = <&i2s1_ep>;
+ };
+ };
+};
+
+&spdif {
status = "okay";
+ spdif_port: port {
+ spdif_ep: endpoint {
+ remote-endpoint = <&spdif_out_ep>;
+ };
+ };
};
&i2s0 {
status = "okay";
+ i2s0_port: port {
+ i2s0_ep: endpoint {
+ system-clock-direction-out;
+ frame-master;
+ bitclock-master;
+ mclk-fs = <256>;
+ dai-format = "i2s";
+ remote-endpoint = <&hdmi_ep>;
+ };
+ };
};
&i2s1 {
#sound-dai-cells = <0>;
status = "okay";
+ i2s1_port: port {
+ i2s1_ep: endpoint {
+ system-clock-direction-out;
+ frame-master;
+ bitclock-master;
+ mclk-fs = <256>;
+ dai-format = "i2s";
+ remote-endpoint = <&codec_ep>;
+ };
+ };
};
/** Integration to pin controller */
@@ -742,10 +773,6 @@
status = "okay";
};
-&spdif {
- status = "okay";
-};
-
&tsadc {
rockchip,grf = <&grf>;
rockchip,hw-tshut-mode = <0>;
diff --git a/patch/kernel/archive/rockchip-6.11/dt/rk3288-xt-q8l-v10.dts b/patch/kernel/archive/rockchip-6.12/dt/rk3288-xt-q8l-v10.dts
similarity index 96%
rename from patch/kernel/archive/rockchip-6.11/dt/rk3288-xt-q8l-v10.dts
rename to patch/kernel/archive/rockchip-6.12/dt/rk3288-xt-q8l-v10.dts
index b715818fe691..a26e0c4c7535 100644
--- a/patch/kernel/archive/rockchip-6.11/dt/rk3288-xt-q8l-v10.dts
+++ b/patch/kernel/archive/rockchip-6.12/dt/rk3288-xt-q8l-v10.dts
@@ -202,7 +202,7 @@
* Required power sequence to properly enable the wireless/bluetooth
* module connected to sdio0
*/
- sdio0_pwrseq: sdio0_pwrseq {
+ sdio0_pwrseq: sdio0-pwrseq {
compatible = "mmc-pwrseq-simple";
pinctrl-names = "default";
pinctrl-0 = <&wifi_enable_h>;
@@ -220,43 +220,26 @@
};
*/
- /*
- * Sound taken from tinkerboard device tree, adapted to q8.
- */
- soundcard-hdmi {
- compatible = "simple-audio-card";
- simple-audio-card,format = "i2s";
- simple-audio-card,name = "DW-I2S-HDMI";
- simple-audio-card,mclk-fs = <512>;
-
- simple-audio-card,codec {
- sound-dai = <&hdmi>;
- };
-
- simple-audio-card,cpu {
- sound-dai = <&i2s>;
- };
+ hdmi-sound {
+ compatible = "audio-graph-card2";
+ label = "HDMI";
+ links = <&i2s_port>;
};
- soundcard-spdif {
- compatible = "simple-audio-card";
- simple-audio-card,name = "SPDIF";
- simple-audio-card,dai-link@1 {
-
- cpu {
- sound-dai = <&spdif>;
- };
-
- codec {
- sound-dai = <&spdif_out>;
- };
-
- };
+ spdif-sound {
+ compatible = "audio-graph-card2";
+ label = "SPDIF";
+ links = <&spdif_port>;
};
spdif_out: spdif-out {
compatible = "linux,spdif-dit";
#sound-dai-cells = <0>;
+ spdif_out_port: port {
+ spdif_out_ep: endpoint {
+ remote-endpoint = <&spdif_ep>;
+ };
+ };
};
};
@@ -300,6 +283,11 @@
&hdmi {
ddc-i2c-bus = <&i2c5>;
status = "ok";
+ hdmi_port: port {
+ hdmi_ep: endpoint {
+ remote-endpoint = <&i2s_ep>;
+ };
+ };
};
&gpu {
@@ -758,7 +746,7 @@
sdio0 {
wifi_enable_h: wifienable-h {
- rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_output_high>;
+ rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_pull_down>;
};
};
@@ -868,9 +856,6 @@
vqmmc-supply = <&vcc_18>; // This must be the same as in io_domains,
// otherwise the mmc1 device won't be detected properly
- // clock-frequency = <50000000>;
- // max-frequency = <50000000>;
-
pinctrl-names = "default";
pinctrl-0 = <&sdio0_bus4>, <&sdio0_cmd>, <&sdio0_clk>, <&sdio0_int>;
@@ -884,6 +869,8 @@
keep-power-in-suspend;
disable-wp;
+ //sd-uhs-sdr50; // required to be enabled, otherwise the device gets
+ // detected, but there is no communication
status = "okay";
@@ -896,9 +883,6 @@
status = "okay";
};
- //sd-uhs-sdr104; // required to be disabled, otherwise the device get
- // detected, but there is no communication
-
};
&spi0 {
@@ -1053,11 +1037,26 @@
&i2s {
#sound-dai-cells = <0>;
status = "okay";
+ i2s_port: port {
+ i2s_ep: endpoint {
+ system-clock-direction-out;
+ frame-master;
+ bitclock-master;
+ mclk-fs = <512>;
+ dai-format = "i2s";
+ remote-endpoint = <&hdmi_ep>;
+ };
+ };
};
// spdif is present on q8 device, enable it
&spdif {
status = "okay";
+ spdif_port: port {
+ spdif_ep: endpoint {
+ remote-endpoint = <&spdif_out_ep>;
+ };
+ };
};
/*
diff --git a/patch/kernel/archive/rockchip-6.11/kernel-6.8-tools-cgroup-makefile.patch b/patch/kernel/archive/rockchip-6.12/kernel-6.8-tools-cgroup-makefile.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/kernel-6.8-tools-cgroup-makefile.patch
rename to patch/kernel/archive/rockchip-6.12/kernel-6.8-tools-cgroup-makefile.patch
diff --git a/patch/kernel/archive/rockchip-6.11/libreelec.series b/patch/kernel/archive/rockchip-6.12/libreelec.series
similarity index 87%
rename from patch/kernel/archive/rockchip-6.11/libreelec.series
rename to patch/kernel/archive/rockchip-6.12/libreelec.series
index 6d4878166c87..baa5c9472284 100644
--- a/patch/kernel/archive/rockchip-6.11/libreelec.series
+++ b/patch/kernel/archive/rockchip-6.12/libreelec.series
@@ -4,6 +4,5 @@
patches.libreelec/linux-1000-drm-rockchip.patch
patches.libreelec/linux-1001-v4l2-rockchip.patch
patches.libreelec/linux-1002-for-libreelec.patch
- patches.libreelec/linux-1003-temp-dw_hdmi-rockchip.patch
patches.libreelec/linux-2000-v4l2-wip-rkvdec-hevc.patch
patches.libreelec/linux-2001-v4l2-wip-iep-driver.patch
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/Makefile b/patch/kernel/archive/rockchip-6.12/overlay/Makefile
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/Makefile
rename to patch/kernel/archive/rockchip-6.12/overlay/Makefile
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/README.rk322x-overlays b/patch/kernel/archive/rockchip-6.12/overlay/README.rk322x-overlays
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/README.rk322x-overlays
rename to patch/kernel/archive/rockchip-6.12/overlay/README.rk322x-overlays
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/README.rockchip-overlays b/patch/kernel/archive/rockchip-6.12/overlay/README.rockchip-overlays
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/README.rockchip-overlays
rename to patch/kernel/archive/rockchip-6.12/overlay/README.rockchip-overlays
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-bt-8723cs.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-bt-8723cs.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-bt-8723cs.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-bt-8723cs.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-cpu-hs-lv.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-cpu-hs-lv.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-cpu-hs-lv.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-cpu-hs-lv.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-cpu-hs.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-cpu-hs.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-cpu-hs.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-cpu-hs.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-cpu-stability.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-cpu-stability.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-cpu-stability.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-cpu-stability.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-ddr3-330.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-ddr3-330.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-ddr3-330.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-ddr3-330.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-ddr3-528.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-ddr3-528.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-ddr3-528.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-ddr3-528.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-ddr3-660.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-ddr3-660.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-ddr3-660.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-ddr3-660.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-ddr3-800.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-ddr3-800.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-ddr3-800.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-ddr3-800.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc-ddr-ph180.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc-ddr-ph180.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc-ddr-ph180.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc-ddr-ph180.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc-ddr-ph45.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc-ddr-ph45.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc-ddr-ph45.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc-ddr-ph45.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc-hs200.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc-hs200.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc-hs200.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc-hs200.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc-pins.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc-pins.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc-pins.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc-pins.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-emmc.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-emmc.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-fixup.scr-cmd b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-fixup.scr-cmd
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-fixup.scr-cmd
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-fixup.scr-cmd
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-ir-wakeup.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-ir-wakeup.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-ir-wakeup.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-ir-wakeup.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf-default.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf-default.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf-default.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf-default.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf1.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf1.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf1.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf1.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf2.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf2.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf2.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf2.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf3.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf3.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf3.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf3.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf4.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf4.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf4.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf4.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf5.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf5.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf5.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf5.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf6.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf6.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf6.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf6.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf7.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf7.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf7.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf7.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf8.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf8.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-led-conf8.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-led-conf8.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-nand.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-nand.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-nand.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-nand.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-usb-otg-peripheral.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-usb-otg-peripheral.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-usb-otg-peripheral.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-usb-otg-peripheral.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rk322x-wlan-alt-wiring.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rk322x-wlan-alt-wiring.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rk322x-wlan-alt-wiring.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rk322x-wlan-alt-wiring.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-ds1307.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-ds1307.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-ds1307.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-ds1307.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-ds1307.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-ds1307.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-ds1307.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-ds1307.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-fixup.scr-cmd b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-fixup.scr-cmd
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-fixup.scr-cmd
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-fixup.scr-cmd
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-i2c1.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-i2c1.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-i2c1.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-i2c1.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-i2c1.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-i2c1.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-i2c1.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-i2c1.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-i2c4.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-i2c4.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-i2c4.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-i2c4.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-i2c4.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-i2c4.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-i2c4.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-i2c4.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-pwm1.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-pwm1.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-pwm1.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-pwm1.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-pwm2.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-pwm2.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-pwm2.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-pwm2.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-pwm3.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-pwm3.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-pwm3.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-pwm3.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-spi0.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-spi0.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-spi0.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-spi0.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-spi0.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-spi0.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-spi0.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-spi0.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-spi2.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-spi2.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-spi2.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-spi2.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-spi2.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-spi2.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-spi2.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-spi2.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-spidev0.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-spidev0.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-spidev0.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-spidev0.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-spidev0.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-spidev0.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-spidev0.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-spidev0.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-spidev2.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-spidev2.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-spidev2.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-spidev2.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-spidev2.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-spidev2.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-spidev2.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-spidev2.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart1.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart1.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart1.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart1.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart1.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart1.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart1.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart1.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart2.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart2.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart2.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart2.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart2.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart2.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart2.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart2.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart3.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart3.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart3.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart3.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart3.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart3.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart3.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart3.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart4.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart4.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart4.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart4.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart4.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart4.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-uart4.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-uart4.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-w1-gpio.dtbo b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-w1-gpio.dtbo
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-w1-gpio.dtbo
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-w1-gpio.dtbo
diff --git a/patch/kernel/archive/rockchip-6.11/overlay/rockchip-w1-gpio.dtso b/patch/kernel/archive/rockchip-6.12/overlay/rockchip-w1-gpio.dtso
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/overlay/rockchip-w1-gpio.dtso
rename to patch/kernel/archive/rockchip-6.12/overlay/rockchip-w1-gpio.dtso
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/bt-broadcom-serdev-workaround.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/bt-broadcom-serdev-workaround.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/bt-broadcom-serdev-workaround.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/bt-broadcom-serdev-workaround.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/clk-rk322x-composite-mmc-clk.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/clk-rk322x-composite-mmc-clk.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/clk-rk322x-composite-mmc-clk.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/clk-rk322x-composite-mmc-clk.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/clk-rockchip-max-frac-divider.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/clk-rockchip-max-frac-divider.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/clk-rockchip-max-frac-divider.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/clk-rockchip-max-frac-divider.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/driver-rk322x-audio-codec.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/driver-rk322x-audio-codec.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/driver-rk322x-audio-codec.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/driver-rk322x-audio-codec.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/driver-rk3288-gpiomem.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/driver-rk3288-gpiomem.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/driver-rk3288-gpiomem.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/driver-rk3288-gpiomem.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/driver-tinkerboard-alc4040-codec.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/driver-tinkerboard-alc4040-codec.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/driver-tinkerboard-alc4040-codec.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/driver-tinkerboard-alc4040-codec.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/drm-rk322x-plane-overlay.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/drm-rk322x-plane-overlay.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/drm-rk322x-plane-overlay.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/drm-rk322x-plane-overlay.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/drm-rk322x-yuv-10bit-modes.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/drm-rk322x-yuv-10bit-modes.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/drm-rk322x-yuv-10bit-modes.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/drm-rk322x-yuv-10bit-modes.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/drm-rockchip-hardware-cursor.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/drm-rockchip-hardware-cursor.patch
similarity index 95%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/drm-rockchip-hardware-cursor.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/drm-rockchip-hardware-cursor.patch
index 863a70aaa42e..0c4abae7c7b1 100644
--- a/patch/kernel/archive/rockchip-6.11/patches.armbian/drm-rockchip-hardware-cursor.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.armbian/drm-rockchip-hardware-cursor.patch
@@ -13,7 +13,7 @@ diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockc
index 83a926c0a..b0832320e 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
-@@ -1160,6 +1160,207 @@ static void vop_plane_atomic_async_update(struct drm_plane *plane,
+@@ -1160,6 +1160,197 @@ static void vop_plane_atomic_async_update(struct drm_plane *plane,
}
}
@@ -28,10 +28,8 @@ index 83a926c0a..b0832320e 100644
+ const struct vop_win_data *win = vop_win->data;
+ struct vop *vop = to_vop(new_state->crtc);
+ struct drm_framebuffer *fb = new_state->fb;
-+ unsigned int actual_w, actual_h;
+ unsigned int dsp_stx, dsp_sty;
+ uint32_t dsp_st;
-+ struct drm_rect *src = &new_state->src;
+ struct drm_rect *dest = &new_state->dst;
+ struct drm_gem_object *obj;
+ struct rockchip_gem_object *rk_obj;
@@ -58,8 +56,6 @@ index 83a926c0a..b0832320e 100644
+ obj = fb->obj[0];
+ rk_obj = to_rockchip_obj(obj);
+
-+// actual_w = drm_rect_width(src) >> 16;
-+// actual_h = drm_rect_height(src) >> 16;
+
+ dsp_stx = dest->x1 + crtc->mode.htotal - crtc->mode.hsync_start;
+ dsp_sty = dest->y1 + crtc->mode.vtotal - crtc->mode.vsync_start;
@@ -71,8 +67,6 @@ index 83a926c0a..b0832320e 100644
+ * For y-mirroring we need to move address
+ * to the beginning of the last line.
+ */
-+// if (new_state->rotation & DRM_MODE_REFLECT_Y)
-+// dma_addr += (actual_h - 1) * fb->pitches[0];
+
+ spin_lock(&vop->reg_lock);
+
@@ -82,10 +76,6 @@ index 83a926c0a..b0832320e 100644
+
+ VOP_WIN_SET(vop, win, format, format);
+
-+// if (win->phy->scl)
-+// scl_vop_cal_scl_fac(vop, win, actual_w, actual_h,
-+// drm_rect_width(dest), drm_rect_height(dest),
-+// fb->format);
+
+ rb_swap = has_rb_swapped(vop->data->version, fb->format->format);
+ VOP_WIN_SET(vop, win, rb_swap, rb_swap);
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-miqi-fan.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-miqi-fan.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-miqi-fan.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-miqi-fan.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-miqi-hevc-rga.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-miqi-hevc-rga.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-miqi-hevc-rga.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-miqi-hevc-rga.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-miqi-mali-gpu.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-miqi-mali-gpu.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-miqi-mali-gpu.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-miqi-mali-gpu.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-miqi-regulator-fix.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-miqi-regulator-fix.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-miqi-regulator-fix.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-miqi-regulator-fix.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk322x-iep-node.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk322x-iep-node.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk322x-iep-node.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk322x-iep-node.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk322x-pinctrl-nand.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk322x-pinctrl-nand.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk322x-pinctrl-nand.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk322x-pinctrl-nand.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-disable-serial-dma.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-disable-serial-dma.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-disable-serial-dma.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-disable-serial-dma.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-fix-mmc-aliases.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-fix-mmc-aliases.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-fix-mmc-aliases.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-fix-mmc-aliases.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-gpu-500mhz-opp.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-gpu-500mhz-opp.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-gpu-500mhz-opp.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-gpu-500mhz-opp.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-pinctrl-spi2.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-pinctrl-spi2.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-pinctrl-spi2.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-pinctrl-spi2.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-thermal-rearrange-zones.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-thermal-rearrange-zones.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-rk3288-thermal-rearrange-zones.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-rk3288-thermal-rearrange-zones.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-bt-rtl8723bs.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-bt-rtl8723bs.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-bt-rtl8723bs.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-bt-rtl8723bs.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-bt-uart-pins.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-bt-uart-pins.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-bt-uart-pins.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-bt-uart-pins.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-hevc-rga.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-hevc-rga.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-hevc-rga.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-hevc-rga.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-sdio-wifi.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-sdio-wifi.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-sdio-wifi.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-sdio-wifi.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-sdmmc-properties.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-sdmmc-properties.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-sdmmc-properties.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-sdmmc-properties.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-spi-interface.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-spi-interface.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-tinkerboard-spi-interface.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-tinkerboard-spi-interface.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/dts-veyron-flag-cache-flush.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/dts-veyron-flag-cache-flush.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/dts-veyron-flag-cache-flush.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/dts-veyron-flag-cache-flush.patch
diff --git a/patch/kernel/archive/rockchip64-6.11/general-add-overlay-compilation-support.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-add-overlay-compilation-support.patch
similarity index 65%
rename from patch/kernel/archive/rockchip64-6.11/general-add-overlay-compilation-support.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-add-overlay-compilation-support.patch
index 161a1939729e..267fd37eb3de 100644
--- a/patch/kernel/archive/rockchip64-6.11/general-add-overlay-compilation-support.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-add-overlay-compilation-support.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino
-Date: Sat, 20 Jul 2024 13:58:49 +0200
+Date: Wed, 2 Oct 2024 19:30:34 +0300
Subject: compile .scr and install overlays in right path
---
scripts/Makefile.dtbinst | 13 +++++++++-
- scripts/Makefile.lib | 8 +++++-
+ scripts/Makefile.dtbs | 8 +++++-
2 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst
@@ -32,36 +32,35 @@ index 111111111111..222222222222 100644
endif # CONFIG_ARCH_WANT_FLAT_DTB_INSTALL
-diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
+diff --git a/scripts/Makefile.dtbs b/scripts/Makefile.dtbs
index 111111111111..222222222222 100644
---- a/scripts/Makefile.lib
-+++ b/scripts/Makefile.lib
-@@ -394,18 +394,24 @@ quiet_cmd_wrap_S_dtb = WRAP $@
- echo '.balign STRUCT_ALIGNMENT'; \
- } > $@
+--- a/scripts/Makefile.dtbs
++++ b/scripts/Makefile.dtbs
+@@ -122,17 +122,23 @@ dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
+ quiet_cmd_dtc = DTC $(quiet_dtb_check_tag) $@
+ cmd_dtc = \
+ $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
+- $(DTC) -o $@ -b 0 $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) \
++ $(DTC) -@ -o $@ -b 0 $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) \
+ $(DTC_FLAGS) -d $(depfile).dtc.tmp $(dtc-tmp) ; \
+ cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile) \
+ $(cmd_dtb_check)
+quiet_cmd_scr = MKIMAGE $@
+cmd_scr = mkimage -C none -A $(ARCH) -T script -d $< $@
+
- $(obj)/%.dtb.S: $(obj)/%.dtb FORCE
- $(call if_changed,wrap_S_dtb)
+ $(obj)/%.dtb: $(obj)/%.dts $(DTC) $(DT_TMP_SCHEMA) FORCE
+ $(call if_changed_dep,dtc)
- $(obj)/%.dtbo.S: $(obj)/%.dtbo FORCE
- $(call if_changed,wrap_S_dtb)
+ $(obj)/%.dtbo: $(src)/%.dtso $(DTC) FORCE
+ $(call if_changed_dep,dtc)
+$(obj)/%.scr: $(src)/%.scr-cmd FORCE
+ $(call if_changed,scr)
+
- quiet_dtb_check_tag = $(if $(dtb-check-enabled),[C], )
- cmd_dtb_check = $(if $(dtb-check-enabled),; $(DT_CHECKER) $(DT_CHECKER_FLAGS) -u $(srctree)/$(DT_BINDING_DIR) -p $(DT_TMP_SCHEMA) $@ || true)
+ # targets
+ # ---------------------------------------------------------------------------
- quiet_cmd_dtc = DTC $(quiet_dtb_check_tag) $@
- cmd_dtc = $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
-- $(DTC) -o $@ -b 0 \
-+ $(DTC) -@ -o $@ -b 0 \
- $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \
- -d $(depfile).dtc.tmp $(dtc-tmp) ; \
- cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile) \
--
Armbian
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-add-overlay-configfs.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-add-overlay-configfs.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-add-overlay-configfs.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-add-overlay-configfs.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-add-restart-handler-for-act8846.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-add-restart-handler-for-act8846.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-add-restart-handler-for-act8846.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-add-restart-handler-for-act8846.patch
diff --git a/patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-fix-rk3288-reset-on-wake-quirk.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-fix-rk3288-reset-on-wake-quirk.patch
new file mode 100644
index 000000000000..bc3a6f29630b
--- /dev/null
+++ b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-fix-rk3288-reset-on-wake-quirk.patch
@@ -0,0 +1,24 @@
+From c046bcccf1ca331cff3b89f09eed080a5407aa5a Mon Sep 17 00:00:00 2001
+From: Paolo Sabatino
+Date: Wed, 4 Dec 2024 14:32:40 +0100
+Subject: [PATCH] rockchip: fix rk3288 reset-on-wake quirk
+
+---
+ drivers/usb/dwc2/params.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/drivers/usb/dwc2/params.c b/drivers/usb/dwc2/params.c
+index 4d73fae80b12..0109055a9a8e 100644
+--- a/drivers/usb/dwc2/params.c
++++ b/drivers/usb/dwc2/params.c
+@@ -130,7 +130,6 @@ static void dwc2_set_rk_params(struct dwc2_hsotg *hsotg)
+ p->lpm_clock_gating = false;
+ p->besl = false;
+ p->hird_threshold_en = false;
+- p->no_clock_gating = true;
+ }
+
+ static void dwc2_set_ltq_danube_params(struct dwc2_hsotg *hsotg)
+--
+2.43.0
+
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-dwc2-fix-wait-peripheral.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-fix-wait-peripheral.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-dwc2-fix-wait-peripheral.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-fix-wait-peripheral.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-dwc2-fix-wait-time.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-fix-wait-time.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-dwc2-fix-wait-time.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-fix-wait-time.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-dwc2-nak-gadget.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-nak-gadget.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-dwc2-nak-gadget.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-dwc2-nak-gadget.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-fix-reboot-from-kwiboo.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-fix-reboot-from-kwiboo.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-fix-reboot-from-kwiboo.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-fix-reboot-from-kwiboo.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-linux-export-mm-trace-rss-stats.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-linux-export-mm-trace-rss-stats.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-linux-export-mm-trace-rss-stats.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-linux-export-mm-trace-rss-stats.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-rk322x-gpio-ir-driver.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-rk322x-gpio-ir-driver.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-rk322x-gpio-ir-driver.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-rk322x-gpio-ir-driver.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-rockchip-various-fixes.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-rockchip-various-fixes.patch
similarity index 87%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/general-rockchip-various-fixes.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/general-rockchip-various-fixes.patch
index 206f44442540..00d644bde46b 100644
--- a/patch/kernel/archive/rockchip-6.11/patches.armbian/general-rockchip-various-fixes.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.armbian/general-rockchip-various-fixes.patch
@@ -26,29 +26,6 @@ index 831561fc1814..24e963b01d87 100644
serial0 = &uart0;
serial1 = &uart1;
serial2 = &uart2;
-@@ -105,6 +106,22 @@ arm-pmu {
- interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
- };
-
-+ hdmi_sound: hdmi-sound {
-+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "hdmi-sound";
-+ simple-audio-card,format = "i2s";
-+ simple-audio-card,mclk-fs = <256>;
-+ status = "disabled";
-+
-+ simple-audio-card,cpu {
-+ sound-dai = <&i2s0>;
-+ };
-+
-+ simple-audio-card,codec {
-+ sound-dai = <&hdmi>;
-+ };
-+ };
-+
- psci {
- compatible = "arm,psci-1.0", "arm,psci-0.2";
- method = "smc";
@@ -132,6 +149,17 @@ display_subsystem: display-subsystem {
ports = <&vop_out>;
};
@@ -462,79 +439,6 @@ diff --git a/drivers/net/ethernet/arc/emac_main.c b/drivers/net/ethernet/arc/ema
index 67b8113a2..40332a976 100644
--- a/drivers/net/ethernet/arc/emac_main.c
+++ b/drivers/net/ethernet/arc/emac_main.c
-@@ -140,7 +140,7 @@ static void arc_emac_tx_clean(struct net_device *ndev)
- stats->tx_bytes += skb->len;
- }
-
-- dma_unmap_single(&ndev->dev, dma_unmap_addr(tx_buff, addr),
-+ dma_unmap_single(ndev->dev.parent, dma_unmap_addr(tx_buff, addr),
- dma_unmap_len(tx_buff, len), DMA_TO_DEVICE);
-
- /* return the sk_buff to system */
-@@ -223,9 +223,9 @@ static int arc_emac_rx(struct net_device *ndev, int budget)
- continue;
- }
-
-- addr = dma_map_single(&ndev->dev, (void *)skb->data,
-+ addr = dma_map_single(ndev->dev.parent, (void *)skb->data,
- EMAC_BUFFER_SIZE, DMA_FROM_DEVICE);
-- if (dma_mapping_error(&ndev->dev, addr)) {
-+ if (dma_mapping_error(ndev->dev.parent, addr)) {
- if (net_ratelimit())
- netdev_err(ndev, "cannot map dma buffer\n");
- dev_kfree_skb(skb);
-@@ -237,7 +237,7 @@ static int arc_emac_rx(struct net_device *ndev, int budget)
- }
-
- /* unmap previosly mapped skb */
-- dma_unmap_single(&ndev->dev, dma_unmap_addr(rx_buff, addr),
-+ dma_unmap_single(ndev->dev.parent, dma_unmap_addr(rx_buff, addr),
- dma_unmap_len(rx_buff, len), DMA_FROM_DEVICE);
-
- pktlen = info & LEN_MASK;
-@@ -445,9 +445,9 @@ static int arc_emac_open(struct net_device *ndev)
- if (unlikely(!rx_buff->skb))
- return -ENOMEM;
-
-- addr = dma_map_single(&ndev->dev, (void *)rx_buff->skb->data,
-+ addr = dma_map_single(ndev->dev.parent, (void *)rx_buff->skb->data,
- EMAC_BUFFER_SIZE, DMA_FROM_DEVICE);
-- if (dma_mapping_error(&ndev->dev, addr)) {
-+ if (dma_mapping_error(ndev->dev.parent, addr)) {
- netdev_err(ndev, "cannot dma map\n");
- dev_kfree_skb(rx_buff->skb);
- return -ENOMEM;
-@@ -555,7 +555,7 @@ static void arc_free_tx_queue(struct net_device *ndev)
- struct buffer_state *tx_buff = &priv->tx_buff[i];
-
- if (tx_buff->skb) {
-- dma_unmap_single(&ndev->dev,
-+ dma_unmap_single(ndev->dev.parent,
- dma_unmap_addr(tx_buff, addr),
- dma_unmap_len(tx_buff, len),
- DMA_TO_DEVICE);
-@@ -586,7 +586,7 @@ static void arc_free_rx_queue(struct net_device *ndev)
- struct buffer_state *rx_buff = &priv->rx_buff[i];
-
- if (rx_buff->skb) {
-- dma_unmap_single(&ndev->dev,
-+ dma_unmap_single(ndev->dev.parent,
- dma_unmap_addr(rx_buff, addr),
- dma_unmap_len(rx_buff, len),
- DMA_FROM_DEVICE);
-@@ -692,10 +692,10 @@ static netdev_tx_t arc_emac_tx(struct sk_buff *skb, struct net_device *ndev)
- return NETDEV_TX_BUSY;
- }
-
-- addr = dma_map_single(&ndev->dev, (void *)skb->data, len,
-+ addr = dma_map_single(ndev->dev.parent, (void *)skb->data, len,
- DMA_TO_DEVICE);
-
-- if (unlikely(dma_mapping_error(&ndev->dev, addr))) {
-+ if (unlikely(dma_mapping_error(ndev->dev.parent, addr))) {
- stats->tx_dropped++;
- stats->tx_errors++;
- dev_kfree_skb_any(skb);
@@ -850,6 +850,62 @@ static const struct net_device_ops arc_emac_netdev_ops = {
#endif
};
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/ir-keymap-rk322x-box.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/ir-keymap-rk322x-box.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/ir-keymap-rk322x-box.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/ir-keymap-rk322x-box.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/ir-keymap-xt-q8l-v10.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/ir-keymap-xt-q8l-v10.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/ir-keymap-xt-q8l-v10.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/ir-keymap-xt-q8l-v10.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/misc-tinkerboard-spi-interface.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/misc-tinkerboard-spi-interface.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/misc-tinkerboard-spi-interface.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/misc-tinkerboard-spi-interface.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/mmc-tinkerboard-sdmmc-reboot-fix.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/mmc-tinkerboard-sdmmc-reboot-fix.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/mmc-tinkerboard-sdmmc-reboot-fix.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/mmc-tinkerboard-sdmmc-reboot-fix.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dmc-driver-01-sipv2-calls.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dmc-driver-01-sipv2-calls.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dmc-driver-01-sipv2-calls.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dmc-driver-01-sipv2-calls.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dmc-driver-02-sip-constants.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dmc-driver-02-sip-constants.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dmc-driver-02-sip-constants.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dmc-driver-02-sip-constants.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dmc-driver-03-dfi-driver.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dmc-driver-03-dfi-driver.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dmc-driver-03-dfi-driver.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dmc-driver-03-dfi-driver.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dmc-driver-04-driver.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dmc-driver-04-driver.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dmc-driver-04-driver.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dmc-driver-04-driver.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dwc2-no-clock-gating.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dwc2-no-clock-gating.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-dwc2-no-clock-gating.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-dwc2-no-clock-gating.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-usb-reset-props.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-usb-reset-props.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/rk322x-usb-reset-props.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/rk322x-usb-reset-props.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-ath9k-no-bulk-EP3-EP4.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-ath9k-no-bulk-EP3-EP4.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-ath9k-no-bulk-EP3-EP4.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-ath9k-no-bulk-EP3-EP4.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-brcmfmac-add-bcm43342.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-brcmfmac-add-bcm43342.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-brcmfmac-add-bcm43342.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-brcmfmac-add-bcm43342.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-brcmfmac-ap6330-firmware.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-brcmfmac-ap6330-firmware.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-brcmfmac-ap6330-firmware.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-brcmfmac-ap6330-firmware.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-driver-esp8089.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-driver-esp8089.patch
similarity index 99%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-driver-esp8089.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-driver-esp8089.patch
index 4dc64bfd7984..727afc1b843e 100644
--- a/patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-driver-esp8089.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-driver-esp8089.patch
@@ -3542,7 +3542,7 @@ new file mode 100644
index 000000000000..14186365fdd4
--- /dev/null
+++ b/drivers/net/wireless/esp8089/esp_mac80211.c
-@@ -0,0 +1,1728 @@
+@@ -0,0 +1,1731 @@
+/*
+ * Copyright (c) 2011-2014 Espressif System.
+ *
@@ -4938,6 +4938,9 @@ index 000000000000..14186365fdd4
+ .set_tsf = esp_op_set_tsf,
+ .reset_tsf = esp_op_reset_tsf,
+ .rfkill_poll = esp_op_rfkill_poll,
++ .add_chanctx = ieee80211_emulate_add_chanctx,
++ .remove_chanctx = ieee80211_emulate_remove_chanctx,
++ .change_chanctx = ieee80211_emulate_change_chanctx,
+#ifdef HW_SCAN
+ .hw_scan = esp_op_hw_scan,
+ .remain_on_channel = esp_op_remain_on_channel,
diff --git a/patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-driver-ssv6051.patch b/patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-driver-ssv6051.patch
similarity index 99%
rename from patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-driver-ssv6051.patch
rename to patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-driver-ssv6051.patch
index 65d6bf2429a3..669c07b57441 100644
--- a/patch/kernel/archive/rockchip-6.11/patches.armbian/wifi-driver-ssv6051.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.armbian/wifi-driver-ssv6051.patch
@@ -35324,10 +35324,10 @@ index 000000000000..93b5275715b5
+#endif
diff --git a/drivers/net/wireless/ssv6051/smac/dev.c b/drivers/net/wireless/ssv6051/smac/dev.c
new file mode 100644
-index 000000000000..214e93fae460
+index 000000000000..cd93fa42648b
--- /dev/null
+++ b/drivers/net/wireless/ssv6051/smac/dev.c
-@@ -0,0 +1,3881 @@
+@@ -0,0 +1,3884 @@
+/*
+ * Copyright (c) 2015 South Silicon Valley Microelectronics Inc.
+ * Copyright (c) 2015 iComm Corporation
@@ -38511,6 +38511,9 @@ index 000000000000..214e93fae460
+ .conf_tx = ssv6200_conf_tx,
+ .ampdu_action = ssv6200_ampdu_action,
+ .wake_tx_queue = ieee80211_handle_wake_tx_queue,
++ .add_chanctx = ieee80211_emulate_add_chanctx,
++ .remove_chanctx = ieee80211_emulate_remove_chanctx,
++ .change_chanctx = ieee80211_emulate_change_chanctx,
+#ifdef CONFIG_PM
+ .suspend = ssv6xxx_suspend,
+ .resume = ssv6xxx_resume,
diff --git a/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-0002-rockchip-from-list.patch b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-0002-rockchip-from-list.patch
new file mode 100644
index 000000000000..fbb292deb6e1
--- /dev/null
+++ b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-0002-rockchip-from-list.patch
@@ -0,0 +1,44 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Jonas Karlman
+Date: Sun, 17 Feb 2019 22:14:38 +0000
+Subject: [PATCH] mmc: core: set initial signal voltage on power off
+
+Some boards have SD card connectors where the power rail cannot be switched
+off by the driver. If the card has not been power cycled, it may still be
+using 1.8V signaling after a warm re-boot. Bootroms expecting 3.3V signaling
+will fail to boot from a UHS card that continue to use 1.8V signaling.
+
+Set initial signal voltage in mmc_power_off() to allow re-boot to function.
+
+This fixes re-boot with UHS cards on Asus Tinker Board (Rockchip RK3288),
+same issue have been seen on some Rockchip RK3399 boards.
+
+I am sending this as a RFC because I have no insights into SD/MMC subsystem,
+this change fix a re-boot issue on my boards and does not break emmc/sdio.
+Is this an acceptable workaround? Any advice is appreciated.
+
+Signed-off-by: Jonas Karlman
+---
+ drivers/mmc/core/core.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
+index ef53a2578824..d4c53074154a 100644
+--- a/drivers/mmc/core/core.c
++++ b/drivers/mmc/core/core.c
+@@ -1368,6 +1368,14 @@ void mmc_power_off(struct mmc_host *host)
+ if (host->ios.power_mode == MMC_POWER_OFF)
+ return;
+
++ mmc_set_initial_signal_voltage(host);
++
++ /*
++ * This delay should be sufficient to allow the power supply
++ * to reach the minimum voltage.
++ */
++ mmc_delay(host->ios.power_delay_ms);
++
+ mmc_pwrseq_power_off(host);
+
+ host->ios.clock = 0;
+
diff --git a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-0011-v4l2-from-list.patch b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-0011-v4l2-from-list.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-0011-v4l2-from-list.patch
rename to patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-0011-v4l2-from-list.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1000-drm-rockchip.patch b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1000-drm-rockchip.patch
similarity index 91%
rename from patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1000-drm-rockchip.patch
rename to patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1000-drm-rockchip.patch
index 4ecb43bb8203..6af1e51feea3 100644
--- a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1000-drm-rockchip.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1000-drm-rockchip.patch
@@ -19,7 +19,7 @@ diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockc
index dbe4d411b30f..fac23d370ee0 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
-@@ -1206,6 +1206,59 @@ static void vop_crtc_disable_vblank(struct drm_crtc *crtc)
+@@ -1207,6 +1207,59 @@ static void vop_crtc_disable_vblank(struct drm_crtc *crtc)
spin_unlock_irqrestore(&vop->irq_lock, flags);
}
@@ -97,7 +97,7 @@ diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockc
index fac23d370ee0..9f7326c5b1f5 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
-@@ -1244,6 +1244,9 @@ static enum drm_mode_status vop_crtc_mode_valid(struct drm_crtc *crtc,
+@@ -1245,6 +1245,9 @@ static enum drm_mode_status vop_crtc_mode_valid(struct drm_crtc *crtc,
if (!vop_crtc_is_tmds(crtc))
return MODE_OK;
@@ -125,7 +125,7 @@ diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockc
index 9f7326c5b1f5..30e252ba7184 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
-@@ -1228,6 +1228,24 @@ static bool vop_crtc_is_tmds(struct drm_crtc *crtc)
+@@ -1229,6 +1229,24 @@ static bool vop_crtc_is_tmds(struct drm_crtc *crtc)
return false;
}
@@ -150,7 +150,7 @@ index 9f7326c5b1f5..30e252ba7184 100644
/*
* The VESA DMT standard specifies a 0.5% pixel clock frequency tolerance.
* The CVT spec reuses that tolerance in its examples.
-@@ -1241,25 +1259,24 @@ static enum drm_mode_status vop_crtc_mode_valid(struct drm_crtc *crtc,
+@@ -1242,25 +1260,24 @@ static enum drm_mode_status vop_crtc_mode_valid(struct drm_crtc *crtc,
long rounded_rate;
long lowest, highest;
@@ -189,7 +189,7 @@ index 9f7326c5b1f5..30e252ba7184 100644
}
static bool vop_crtc_mode_fixup(struct drm_crtc *crtc,
-@@ -1269,6 +1286,9 @@ static bool vop_crtc_mode_fixup(struct drm_crtc *crtc,
+@@ -1270,6 +1287,9 @@ static bool vop_crtc_mode_fixup(struct drm_crtc *crtc,
struct vop *vop = to_vop(crtc);
unsigned long rate;
@@ -244,7 +244,7 @@ diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
index c14f88893868..4411ca8fd7ed 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-@@ -193,7 +193,7 @@ static const struct dw_hdmi_curr_ctrl rockchip_cur_ctr[] = {
+@@ -201,7 +201,7 @@ static const struct dw_hdmi_curr_ctrl rockchip_cur_ctr[] = {
static const struct dw_hdmi_phy_config rockchip_phy_config[] = {
/*pixelclk symbol term vlev*/
{ 74250000, 0x8009, 0x0004, 0x0272},
@@ -271,7 +271,7 @@ diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
index 4411ca8fd7ed..bec381cde0bc 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-@@ -195,6 +195,7 @@ static const struct dw_hdmi_phy_config rockchip_phy_config[] = {
+@@ -203,6 +203,7 @@ static const struct dw_hdmi_phy_config rockchip_phy_config[] = {
{ 74250000, 0x8009, 0x0004, 0x0272},
{ 165000000, 0x802b, 0x0004, 0x0209},
{ 297000000, 0x8039, 0x0005, 0x028d},
@@ -301,7 +301,7 @@ diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
index bec381cde0bc..72c1d65c7b75 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-@@ -172,20 +172,6 @@ static const struct dw_hdmi_mpll_config rockchip_mpll_cfg[] = {
+@@ -178,20 +178,6 @@ static const struct dw_hdmi_mpll_config rockchip_mpll_cfg[] = {
static const struct dw_hdmi_curr_ctrl rockchip_cur_ctr[] = {
/* pixelclk bpp8 bpp10 bpp12 */
{
@@ -323,268 +323,6 @@ index bec381cde0bc..72c1d65c7b75 100644
}, {
~0UL, { 0x0000, 0x0000, 0x0000},
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Douglas Anderson
-Date: Mon, 11 Jul 2016 19:05:42 +0800
-Subject: [PATCH] drm/rockchip: dw_hdmi: Use auto-generated tables
-
-The previous tables for mpll_cfg and curr_ctrl were created using the
-20-pages of example settings provided by the PHY vendor. Those
-example settings weren't particularly dense, so there were places
-where we were guessing what the settings would be for 10-bit and
-12-bit (not that we use those anyway). It was also always a lot of
-extra work every time we wanted to add a new clock rate since we had
-to cross-reference several tables.
-
-In I've gone through the work to figure
-out how to generate this table automatically. Let's now use the
-automatically generated table and then we'll never need to look at it
-again.
-
-We only support 8-bit mode right now and only support a small number
-of clock rates and and I've verified that the only 8-bit rate that was
-affected was 148.5. That mode appears to have been wrong in the old
-table.
-
-Signed-off-by: Douglas Anderson
-Signed-off-by: Yakir Yang
-Signed-off-by: Jonas Karlman
----
- drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 130 +++++++++++---------
- 1 file changed, 69 insertions(+), 61 deletions(-)
-
-diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-index 72c1d65c7b75..0370bb247fcb 100644
---- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-@@ -95,86 +95,88 @@
-
- static const struct dw_hdmi_mpll_config rockchip_mpll_cfg[] = {
- {
-- 27000000, {
-- { 0x00b3, 0x0000},
-- { 0x2153, 0x0000},
-- { 0x40f3, 0x0000}
-- },
-- }, {
-- 36000000, {
-- { 0x00b3, 0x0000},
-- { 0x2153, 0x0000},
-- { 0x40f3, 0x0000}
-- },
-- }, {
-- 40000000, {
-- { 0x00b3, 0x0000},
-- { 0x2153, 0x0000},
-- { 0x40f3, 0x0000}
-- },
-- }, {
-- 54000000, {
-- { 0x0072, 0x0001},
-- { 0x2142, 0x0001},
-- { 0x40a2, 0x0001},
-- },
-- }, {
-- 65000000, {
-- { 0x0072, 0x0001},
-- { 0x2142, 0x0001},
-- { 0x40a2, 0x0001},
-- },
-- }, {
-- 66000000, {
-- { 0x013e, 0x0003},
-- { 0x217e, 0x0002},
-- { 0x4061, 0x0002}
-- },
-- }, {
-- 74250000, {
-- { 0x0072, 0x0001},
-- { 0x2145, 0x0002},
-- { 0x4061, 0x0002}
-- },
-- }, {
-- 83500000, {
-- { 0x0072, 0x0001},
-- },
-- }, {
-- 108000000, {
-- { 0x0051, 0x0002},
-- { 0x2145, 0x0002},
-- { 0x4061, 0x0002}
-- },
-- }, {
-- 106500000, {
-- { 0x0051, 0x0002},
-- { 0x2145, 0x0002},
-- { 0x4061, 0x0002}
-- },
-- }, {
-- 146250000, {
-- { 0x0051, 0x0002},
-- { 0x2145, 0x0002},
-- { 0x4061, 0x0002}
-- },
-- }, {
-- 148500000, {
-- { 0x0051, 0x0003},
-- { 0x214c, 0x0003},
-- { 0x4064, 0x0003}
-+ 30666000, {
-+ { 0x00b3, 0x0000 },
-+ { 0x2153, 0x0000 },
-+ { 0x40f3, 0x0000 },
-+ },
-+ }, {
-+ 36800000, {
-+ { 0x00b3, 0x0000 },
-+ { 0x2153, 0x0000 },
-+ { 0x40a2, 0x0001 },
-+ },
-+ }, {
-+ 46000000, {
-+ { 0x00b3, 0x0000 },
-+ { 0x2142, 0x0001 },
-+ { 0x40a2, 0x0001 },
-+ },
-+ }, {
-+ 61333000, {
-+ { 0x0072, 0x0001 },
-+ { 0x2142, 0x0001 },
-+ { 0x40a2, 0x0001 },
-+ },
-+ }, {
-+ 73600000, {
-+ { 0x0072, 0x0001 },
-+ { 0x2142, 0x0001 },
-+ { 0x4061, 0x0002 },
-+ },
-+ }, {
-+ 92000000, {
-+ { 0x0072, 0x0001 },
-+ { 0x2145, 0x0002 },
-+ { 0x4061, 0x0002 },
-+ },
-+ }, {
-+ 122666000, {
-+ { 0x0051, 0x0002 },
-+ { 0x2145, 0x0002 },
-+ { 0x4061, 0x0002 },
-+ },
-+ }, {
-+ 147200000, {
-+ { 0x0051, 0x0002 },
-+ { 0x2145, 0x0002 },
-+ { 0x4064, 0x0003 },
-+ },
-+ }, {
-+ 184000000, {
-+ { 0x0051, 0x0002 },
-+ { 0x214c, 0x0003 },
-+ { 0x4064, 0x0003 },
- },
-- }, {
-+ }, {
-+ 226666000, {
-+ { 0x0040, 0x0003 },
-+ { 0x214c, 0x0003 },
-+ { 0x4064, 0x0003 },
-+ },
-+ }, {
-+ 272000000, {
-+ { 0x0040, 0x0003 },
-+ { 0x214c, 0x0003 },
-+ { 0x5a64, 0x0003 },
-+ },
-+ }, {
- 340000000, {
- { 0x0040, 0x0003 },
- { 0x3b4c, 0x0003 },
- { 0x5a64, 0x0003 },
- },
-- }, {
-+ }, {
-+ 600000000, {
-+ { 0x1a40, 0x0003 },
-+ { 0x3b4c, 0x0003 },
-+ { 0x5a64, 0x0003 },
-+ },
-+ }, {
- ~0UL, {
-- { 0x00a0, 0x000a },
-- { 0x2001, 0x000f },
-- { 0x4002, 0x000f },
-+ { 0x0000, 0x0000 },
-+ { 0x0000, 0x0000 },
-+ { 0x0000, 0x0000 },
- },
- }
- };
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Jonas Karlman
-Date: Wed, 8 Jan 2020 21:07:49 +0000
-Subject: [PATCH] drm/rockchip: dw-hdmi: allow high tmds bit rates
-
-Prepare support for High TMDS Bit Rates used by HDMI2.0 display modes.
-
-Signed-off-by: Jonas Karlman
----
- drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-index 55c0b8dddad5..15ecb257b902 100644
---- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-@@ -327,6 +327,8 @@ static int dw_hdmi_rockchip_genphy_init(struct dw_hdmi *dw_hdmi, void *data,
- {
- struct rockchip_hdmi *hdmi = (struct rockchip_hdmi *)data;
-
-+ dw_hdmi_set_high_tmds_clock_ratio(dw_hdmi, display);
-+
- return phy_power_on(hdmi->phy);
- }
-
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Jonas Karlman
-Date: Wed, 8 Jan 2020 21:07:52 +0000
-Subject: [PATCH] drm/rockchip: dw-hdmi: remove unused plat_data on
- rk3228/rk3328
-
-mpll_cfg/cur_ctr/phy_config is not used when phy_force_vendor is true,
-lets remove them.
-
-Signed-off-by: Jonas Karlman
----
- drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c | 6 ------
- 1 file changed, 6 deletions(-)
-
-diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-index 15ecb257b902..38dded2baaf7 100644
---- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-@@ -417,9 +417,6 @@ static struct rockchip_hdmi_chip_data rk3228_chip_data = {
-
- static const struct dw_hdmi_plat_data rk3228_hdmi_drv_data = {
- .mode_valid = dw_hdmi_rockchip_mode_valid,
-- .mpll_cfg = rockchip_mpll_cfg,
-- .cur_ctr = rockchip_cur_ctr,
-- .phy_config = rockchip_phy_config,
- .phy_data = &rk3228_chip_data,
- .phy_ops = &rk3228_hdmi_phy_ops,
- .phy_name = "inno_dw_hdmi_phy2",
-@@ -454,9 +451,6 @@ static struct rockchip_hdmi_chip_data rk3328_chip_data = {
-
- static const struct dw_hdmi_plat_data rk3328_hdmi_drv_data = {
- .mode_valid = dw_hdmi_rockchip_mode_valid,
-- .mpll_cfg = rockchip_mpll_cfg,
-- .cur_ctr = rockchip_cur_ctr,
-- .phy_config = rockchip_phy_config,
- .phy_data = &rk3328_chip_data,
- .phy_ops = &rk3328_hdmi_phy_ops,
- .phy_name = "inno_dw_hdmi_phy2",
-
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jonas Karlman
Date: Sat, 10 Oct 2020 10:16:32 +0000
@@ -599,16 +337,16 @@ diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
index 38dded2baaf7..9e460b7e14a4 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
-@@ -558,7 +558,7 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
+@@ -592,7 +592,7 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
if (IS_ERR(hdmi->phy)) {
ret = PTR_ERR(hdmi->phy);
if (ret != -EPROBE_DEFER)
-- DRM_DEV_ERROR(hdmi->dev, "failed to get phy\n");
-+ DRM_DEV_ERROR(hdmi->dev, "Failed to get phy: %d\n", ret);
+- drm_err(hdmi, "failed to get phy\n");
++ drm_err(hdmi, "failed to get phy: %d\n", ret);
return ret;
}
-@@ -590,7 +590,12 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
+@@ -605,7 +605,12 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
}
drm_encoder_helper_add(encoder, &dw_hdmi_rockchip_encoder_helper_funcs);
@@ -622,14 +360,15 @@ index 38dded2baaf7..9e460b7e14a4 100644
platform_set_drvdata(pdev, hdmi);
-@@ -609,6 +614,7 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
+@@ -624,7 +629,7 @@ static int dw_hdmi_rockchip_bind(struct device *dev, struct device *master,
err_bind:
drm_encoder_cleanup(encoder);
+-
+err_disable_clk:
- clk_disable_unprepare(hdmi->ref_clk);
- err_clk:
- regulator_disable(hdmi->avdd_1v8);
+ return ret;
+ }
+
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jonas Karlman
@@ -1655,14 +1394,14 @@ Subject: [PATCH] HACK: dts: rockchip: do not use vopl for hdmi
---
arch/arm/boot/dts/rockchip/rk3288.dtsi | 9 ---------
- arch/arm64/boot/dts/rockchip/rk3399.dtsi | 9 ---------
+ arch/arm64/boot/dts/rockchip/rk3399-base.dtsi | 9 ---------
2 files changed, 18 deletions(-)
diff --git a/arch/arm/boot/dts/rockchip/rk3288.dtsi b/arch/arm/boot/dts/rockchip/rk3288.dtsi
index d1ae42757242..7b2cde230b87 100644
--- a/arch/arm/boot/dts/rockchip/rk3288.dtsi
+++ b/arch/arm/boot/dts/rockchip/rk3288.dtsi
-@@ -1090,11 +1090,6 @@
+@@ -1083,11 +1083,6 @@ vopl_out: port {
#address-cells = <1>;
#size-cells = <0>;
@@ -1674,7 +1413,7 @@ index d1ae42757242..7b2cde230b87 100644
vopl_out_edp: endpoint@1 {
reg = <1>;
remote-endpoint = <&edp_in_vopl>;
-@@ -1257,10 +1262,6 @@
+@@ -1227,10 +1222,6 @@ hdmi_in_vopb: endpoint@0 {
remote-endpoint = <&vopb_out_hdmi>;
};
@@ -1683,13 +1422,13 @@ index d1ae42757242..7b2cde230b87 100644
- remote-endpoint = <&vopl_out_hdmi>;
- };
};
+ };
- hdmi_out: port@1 {
-diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
index 92c2207e686c..980b12cb0a49 100644
---- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
-@@ -1728,11 +1728,6 @@ vopl_out_edp: endpoint@1 {
+--- a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
++++ b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
+@@ -1846,11 +1846,6 @@ vopl_out_edp: endpoint@1 {
remote-endpoint = <&edp_in_vopl>;
};
@@ -1701,7 +1440,7 @@ index 92c2207e686c..980b12cb0a49 100644
vopl_out_mipi1: endpoint@3 {
reg = <3>;
remote-endpoint = <&mipi1_in_vopl>;
-@@ -1926,10 +1921,6 @@ hdmi_in_vopb: endpoint@0 {
+@@ -2048,10 +2043,6 @@ hdmi_in_vopb: endpoint@0 {
reg = <0>;
remote-endpoint = <&vopb_out_hdmi>;
};
@@ -2115,9 +1854,9 @@ index 89424c5bc24a..05de2052d95d 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
@@ -68,6 +68,7 @@ struct rockchip_hdmi_chip_data {
- int lcdsel_grf_reg;
u32 lcdsel_big;
u32 lcdsel_lit;
+ int max_tmds_clock;
+ bool ycbcr_444_allowed;
};
@@ -2181,9 +1920,9 @@ index 89424c5bc24a..05de2052d95d 100644
input_fmt = kzalloc(sizeof(*input_fmt), GFP_KERNEL);
@@ -604,6 +630,7 @@ static const struct dw_hdmi_phy_ops rk3328_hdmi_phy_ops = {
-
static struct rockchip_hdmi_chip_data rk3328_chip_data = {
.lcdsel_grf_reg = -1,
+ .max_tmds_clock = 594000,
+ .ycbcr_444_allowed = true,
};
@@ -2497,9 +2236,9 @@ index cb201612199f..8627f6826bfe 100644
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
@@ -616,6 +616,7 @@ static const struct dw_hdmi_phy_ops rk3228_hdmi_phy_ops = {
-
static struct rockchip_hdmi_chip_data rk3228_chip_data = {
.lcdsel_grf_reg = -1,
+ .max_tmds_clock = 594000,
+ .ycbcr_444_allowed = true,
};
@@ -2526,7 +2265,7 @@ diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c b/drivers/gpu/drm/rockc
index e50f71ad3ceb..ef0a078c22f4 100644
--- a/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
+++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop.c
-@@ -965,6 +965,7 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
+@@ -958,6 +958,7 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
int format;
int is_yuv = fb->format->is_yuv;
int i;
@@ -2534,7 +2273,7 @@ index e50f71ad3ceb..ef0a078c22f4 100644
/*
* can't update plane when vop is disabled.
-@@ -983,8 +984,14 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
+@@ -976,8 +977,14 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
obj = fb->obj[0];
rk_obj = to_rockchip_obj(obj);
@@ -2550,7 +2289,7 @@ index e50f71ad3ceb..ef0a078c22f4 100644
act_info = (actual_h - 1) << 16 | ((actual_w - 1) & 0xffff);
dsp_info = (drm_rect_height(dest) - 1) << 16;
-@@ -1026,7 +1033,7 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
+@@ -1019,7 +1026,7 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
VOP_WIN_SET(vop, win, format, format);
VOP_WIN_SET(vop, win, fmt_10, is_fmt_10(fb->format->format));
@@ -2559,7 +2298,7 @@ index e50f71ad3ceb..ef0a078c22f4 100644
VOP_WIN_SET(vop, win, yrgb_mst, dma_addr);
VOP_WIN_YUV2YUV_SET(vop, win_yuv2yuv, y2r_en, is_yuv);
VOP_WIN_SET(vop, win, y_mir_en,
-@@ -1050,7 +1057,7 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
+@@ -1040,7 +1047,7 @@ static void vop_plane_atomic_update(struct drm_plane *plane,
offset += (src->y1 >> 16) * fb->pitches[1] / vsub;
dma_addr = rk_uv_obj->dma_addr + offset + fb->offsets[1];
@@ -2569,7 +2308,6 @@ index e50f71ad3ceb..ef0a078c22f4 100644
for (i = 0; i < NUM_YUV2YUV_COEFFICIENTS; i++) {
-
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Alex Bee
Date: Sat, 10 Apr 2021 16:54:26 +0200
@@ -2760,9 +2498,9 @@ index b78df931aa74..ebbea63ea9de 100644
/* cec-core.c */
extern int cec_debug;
+extern int cec_debounce_ms;
- int cec_get_device(struct cec_devnode *devnode);
- void cec_put_device(struct cec_devnode *devnode);
+ /* cec-adap.c */
+ int cec_monitor_all_cnt_inc(struct cec_adapter *adap);
diff --git a/include/media/cec.h b/include/media/cec.h
index abee41ae02d0..544eedb5d671 100644
--- a/include/media/cec.h
diff --git a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1001-v4l2-rockchip.patch b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1001-v4l2-rockchip.patch
similarity index 98%
rename from patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1001-v4l2-rockchip.patch
rename to patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1001-v4l2-rockchip.patch
index d705909546c6..a80516538408 100644
--- a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1001-v4l2-rockchip.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1001-v4l2-rockchip.patch
@@ -349,13 +349,13 @@ Date: Tue, 18 Aug 2020 11:38:04 +0200
Subject: [PATCH] WIP: arm64: dts: add resets to vdec for RK3399
---
- arch/arm64/boot/dts/rockchip/rk3399.dtsi | 5 +++++
+ arch/arm64/boot/dts/rockchip/rk3399-base.dtsi | 5 +++++
1 file changed, 5 insertions(+)
-diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
index 980b12cb0a49..6e3149e587c5 100644
---- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+--- a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
++++ b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
@@ -1345,6 +1348,11 @@ vdec: video-codec@ff660000 {
clock-names = "axi", "ahb", "cabac", "core";
iommus = <&vdec_mmu>;
diff --git a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1002-for-libreelec.patch b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1002-for-libreelec.patch
similarity index 97%
rename from patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1002-for-libreelec.patch
rename to patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1002-for-libreelec.patch
index 1143681e4d09..363a367de2ca 100644
--- a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-1002-for-libreelec.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-1002-for-libreelec.patch
@@ -165,7 +165,7 @@ Subject: [PATCH] ARM/arm64: dts: rockchip: align sound card names
Signed-off-by: Alex Bee
---
arch/arm/boot/dts/rockchip/rk3288-tinker.dtsi | 2 +-
- arch/arm64/boot/dts/rockchip/rk3399.dtsi | 2 +-
+ arch/arm64/boot/dts/rockchip/rk3399-base.dtsi | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/arm/boot/dts/rockchip/rk3288-tinker.dtsi b/arch/arm/boot/dts/rockchip/rk3288-tinker.dtsi
@@ -181,10 +181,10 @@ index 09618bb7d872..db9106a3dd22 100644
simple-audio-card,mclk-fs = <512>;
simple-audio-card,codec {
-diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
index 093ebe070775..a10fe60b7680 100644
---- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+--- a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
++++ b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
@@ -1893,7 +1893,7 @@ hdmi_sound: hdmi-sound {
compatible = "simple-audio-card";
simple-audio-card,format = "i2s";
@@ -557,13 +557,13 @@ result in poor DMA controller performance
Signed-off-by: Alex Bee
---
- arch/arm64/boot/dts/rockchip/rk3399.dtsi | 2 +-
+ arch/arm64/boot/dts/rockchip/rk3399-base.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
index a10fe60b7680..dbe6a9cb98a5 100644
---- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+--- a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
++++ b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
@@ -1477,7 +1477,7 @@ cru: clock-controller@ff760000 {
<1000000000>,
<150000000>, <75000000>,
diff --git a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-2000-v4l2-wip-rkvdec-hevc.patch b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-2000-v4l2-wip-rkvdec-hevc.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-2000-v4l2-wip-rkvdec-hevc.patch
rename to patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-2000-v4l2-wip-rkvdec-hevc.patch
diff --git a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-2001-v4l2-wip-iep-driver.patch b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-2001-v4l2-wip-iep-driver.patch
similarity index 99%
rename from patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-2001-v4l2-wip-iep-driver.patch
rename to patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-2001-v4l2-wip-iep-driver.patch
index c778dc3bbf4d..541c84937605 100644
--- a/patch/kernel/archive/rockchip-6.11/patches.libreelec/linux-2001-v4l2-wip-iep-driver.patch
+++ b/patch/kernel/archive/rockchip-6.12/patches.libreelec/linux-2001-v4l2-wip-iep-driver.patch
@@ -465,7 +465,7 @@ new file mode 100644
index 000000000000..f4b9320733be
--- /dev/null
+++ b/drivers/media/platform/rockchip/iep/iep.c
-@@ -0,0 +1,1089 @@
+@@ -0,0 +1,1087 @@
+// SPDX-License-Identifier: GPL-2.0-only
+/*
+ * Rockchip Image Enhancement Processor (IEP) driver
@@ -1484,8 +1484,6 @@ index 000000000000..f4b9320733be
+ v4l2_m2m_release(iep->m2m_dev);
+ video_unregister_device(&iep->vfd);
+ v4l2_device_unregister(&iep->v4l2_dev);
-+
-+ return;
+}
+
+static int __maybe_unused iep_runtime_suspend(struct device *dev)
@@ -1727,13 +1725,13 @@ Subject: [PATCH] ARM64: dts: rockchip: Add IEP node for RK3399
Signed-off-by: Alex Bee
---
- arch/arm64/boot/dts/rockchip/rk3399.dtsi | 13 ++++++++++++-
+ arch/arm64/boot/dts/rockchip/rk3399-base.dtsi | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
-diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+diff --git a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
index dbe6a9cb98a5..f0629b7a81c6 100644
---- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+--- a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
++++ b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
@@ -1365,14 +1365,25 @@ vdec_mmu: iommu@ff660480 {
#iommu-cells = <0>;
};
diff --git a/patch/kernel/archive/rockchip-6.11/series.conf b/patch/kernel/archive/rockchip-6.12/series.conf
similarity index 96%
rename from patch/kernel/archive/rockchip-6.11/series.conf
rename to patch/kernel/archive/rockchip-6.12/series.conf
index 530f1fbbb0cf..9d32a6f1fe3c 100644
--- a/patch/kernel/archive/rockchip-6.11/series.conf
+++ b/patch/kernel/archive/rockchip-6.12/series.conf
@@ -4,13 +4,12 @@
patches.libreelec/linux-1000-drm-rockchip.patch
patches.libreelec/linux-1001-v4l2-rockchip.patch
patches.libreelec/linux-1002-for-libreelec.patch
- patches.libreelec/linux-1003-temp-dw_hdmi-rockchip.patch
patches.libreelec/linux-2000-v4l2-wip-rkvdec-hevc.patch
patches.libreelec/linux-2001-v4l2-wip-iep-driver.patch
# Series from patches.armbian/
patches.armbian/bt-broadcom-serdev-workaround.patch
patches.armbian/clk-rk322x-composite-mmc-clk.patch
- patches.armbian/clk-rockchip-max-frac-divider.patch
+ -patches.armbian/clk-rockchip-max-frac-divider.patch
patches.armbian/driver-rk322x-audio-codec.patch
patches.armbian/driver-rk3288-gpiomem.patch
patches.armbian/driver-tinkerboard-alc4040-codec.patch
@@ -38,6 +37,7 @@
patches.armbian/general-add-overlay-compilation-support.patch
patches.armbian/general-add-overlay-configfs.patch
patches.armbian/general-add-restart-handler-for-act8846.patch
+ patches.armbian/general-dwc2-fix-rk3288-reset-on-wake-quirk.patch
patches.armbian/general-dwc2-fix-wait-peripheral.patch
patches.armbian/general-dwc2-fix-wait-time.patch
patches.armbian/general-dwc2-nak-gadget.patch
diff --git a/patch/kernel/archive/rockchip-6.6/dt/rk322x-box.dts b/patch/kernel/archive/rockchip-6.6/dt/rk322x-box.dts
index ddc25ec77f7f..1382c432b60c 100644
--- a/patch/kernel/archive/rockchip-6.6/dt/rk322x-box.dts
+++ b/patch/kernel/archive/rockchip-6.6/dt/rk322x-box.dts
@@ -24,7 +24,7 @@
/delete-node/ opp-table-0;
/*
- * Rebuild the thermal zones and cooling maps ourselved
+ * Rebuild the thermal zones and cooling maps ourselves
*/
/delete-node/ thermal-zones;
@@ -37,20 +37,6 @@
mmc2 = &emmc;
};
- analog-sound {
- compatible = "simple-audio-card";
- simple-audio-card,format = "i2s";
- simple-audio-card,mclk-fs = <256>;
- simple-audio-card,name = "analog";
- simple-audio-card,cpu {
- sound-dai = <&i2s1>;
- };
-
- simple-audio-card,codec {
- sound-dai = <&codec>;
- };
- };
-
chosen {
bootargs = "earlyprintk=uart8250,mmio32,0x11030000";
};
@@ -142,25 +128,6 @@
reset-gpios = <&gpio2 RK_PD2 GPIO_ACTIVE_LOW>;
};
-
- spdif_out: spdif-out {
- status = "okay";
- compatible = "linux,spdif-dit";
- #sound-dai-cells = <0>;
- };
-
- spdif-sound {
- status = "okay";
- compatible = "simple-audio-card";
- simple-audio-card,name = "SPDIF";
- simple-audio-card,cpu {
- sound-dai = <&spdif>;
- };
- simple-audio-card,codec {
- sound-dai = <&spdif_out>;
- };
- };
-
vcc_sys: vcc-sys-regulator {
compatible = "regulator-fixed";
regulator-name = "vcc_sys";
@@ -318,11 +285,35 @@
};
};
-};
+ hdmi-sound {
+ compatible = "audio-graph-card2";
+ label = "HDMI";
+ links = <&i2s0_port>;
+ };
+
+ analog-sound {
+ compatible = "audio-graph-card2";
+ label = "analog";
+ links = <&i2s1_port>;
+ };
+
+ spdif-sound {
+ compatible = "audio-graph-card2";
+ label = "SPDIF";
+ links = <&spdif_port>;
+ };
+
+ spdif_out: spdif-out {
+ status = "okay";
+ compatible = "linux,spdif-dit";
+ #sound-dai-cells = <0>;
+ spdif_out_port: port {
+ spdif_out_ep: endpoint {
+ remote-endpoint = <&spdif_ep>;
+ };
+ };
+ };
-&codec {
- #sound-dai-cells = <0>;
- status = "okay";
};
&cpu0 {
@@ -460,23 +451,63 @@
&hdmi {
status = "okay";
+ hdmi_port: port {
+ hdmi_ep: endpoint {
+ remote-endpoint = <&i2s0_ep>;
+ };
+ };
};
-&hdmi_sound {
+&hdmi_phy {
status = "okay";
};
-&hdmi_phy {
+&codec {
+ #sound-dai-cells = <0>;
+ status = "okay";
+ codec_port: port {
+ codec_ep: endpoint {
+ remote-endpoint = <&i2s1_ep>;
+ };
+ };
+};
+
+&spdif {
status = "okay";
+ spdif_port: port {
+ spdif_ep: endpoint {
+ remote-endpoint = <&spdif_out_ep>;
+ };
+ };
};
&i2s0 {
status = "okay";
+ i2s0_port: port {
+ i2s0_ep: endpoint {
+ system-clock-direction-out;
+ frame-master;
+ bitclock-master;
+ mclk-fs = <256>;
+ dai-format = "i2s";
+ remote-endpoint = <&hdmi_ep>;
+ };
+ };
};
&i2s1 {
#sound-dai-cells = <0>;
status = "okay";
+ i2s1_port: port {
+ i2s1_ep: endpoint {
+ system-clock-direction-out;
+ frame-master;
+ bitclock-master;
+ mclk-fs = <256>;
+ dai-format = "i2s";
+ remote-endpoint = <&codec_ep>;
+ };
+ };
};
/** Integration to pin controller */
@@ -742,10 +773,6 @@
status = "okay";
};
-&spdif {
- status = "okay";
-};
-
&tsadc {
rockchip,grf = <&grf>;
rockchip,hw-tshut-mode = <0>;
diff --git a/patch/kernel/archive/rockchip-6.6/dt/rk3288-xt-q8l-v10.dts b/patch/kernel/archive/rockchip-6.6/dt/rk3288-xt-q8l-v10.dts
index b715818fe691..a26e0c4c7535 100644
--- a/patch/kernel/archive/rockchip-6.6/dt/rk3288-xt-q8l-v10.dts
+++ b/patch/kernel/archive/rockchip-6.6/dt/rk3288-xt-q8l-v10.dts
@@ -202,7 +202,7 @@
* Required power sequence to properly enable the wireless/bluetooth
* module connected to sdio0
*/
- sdio0_pwrseq: sdio0_pwrseq {
+ sdio0_pwrseq: sdio0-pwrseq {
compatible = "mmc-pwrseq-simple";
pinctrl-names = "default";
pinctrl-0 = <&wifi_enable_h>;
@@ -220,43 +220,26 @@
};
*/
- /*
- * Sound taken from tinkerboard device tree, adapted to q8.
- */
- soundcard-hdmi {
- compatible = "simple-audio-card";
- simple-audio-card,format = "i2s";
- simple-audio-card,name = "DW-I2S-HDMI";
- simple-audio-card,mclk-fs = <512>;
-
- simple-audio-card,codec {
- sound-dai = <&hdmi>;
- };
-
- simple-audio-card,cpu {
- sound-dai = <&i2s>;
- };
+ hdmi-sound {
+ compatible = "audio-graph-card2";
+ label = "HDMI";
+ links = <&i2s_port>;
};
- soundcard-spdif {
- compatible = "simple-audio-card";
- simple-audio-card,name = "SPDIF";
- simple-audio-card,dai-link@1 {
-
- cpu {
- sound-dai = <&spdif>;
- };
-
- codec {
- sound-dai = <&spdif_out>;
- };
-
- };
+ spdif-sound {
+ compatible = "audio-graph-card2";
+ label = "SPDIF";
+ links = <&spdif_port>;
};
spdif_out: spdif-out {
compatible = "linux,spdif-dit";
#sound-dai-cells = <0>;
+ spdif_out_port: port {
+ spdif_out_ep: endpoint {
+ remote-endpoint = <&spdif_ep>;
+ };
+ };
};
};
@@ -300,6 +283,11 @@
&hdmi {
ddc-i2c-bus = <&i2c5>;
status = "ok";
+ hdmi_port: port {
+ hdmi_ep: endpoint {
+ remote-endpoint = <&i2s_ep>;
+ };
+ };
};
&gpu {
@@ -758,7 +746,7 @@
sdio0 {
wifi_enable_h: wifienable-h {
- rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_output_high>;
+ rockchip,pins = <4 28 RK_FUNC_GPIO &pcfg_pull_down>;
};
};
@@ -868,9 +856,6 @@
vqmmc-supply = <&vcc_18>; // This must be the same as in io_domains,
// otherwise the mmc1 device won't be detected properly
- // clock-frequency = <50000000>;
- // max-frequency = <50000000>;
-
pinctrl-names = "default";
pinctrl-0 = <&sdio0_bus4>, <&sdio0_cmd>, <&sdio0_clk>, <&sdio0_int>;
@@ -884,6 +869,8 @@
keep-power-in-suspend;
disable-wp;
+ //sd-uhs-sdr50; // required to be enabled, otherwise the device gets
+ // detected, but there is no communication
status = "okay";
@@ -896,9 +883,6 @@
status = "okay";
};
- //sd-uhs-sdr104; // required to be disabled, otherwise the device get
- // detected, but there is no communication
-
};
&spi0 {
@@ -1053,11 +1037,26 @@
&i2s {
#sound-dai-cells = <0>;
status = "okay";
+ i2s_port: port {
+ i2s_ep: endpoint {
+ system-clock-direction-out;
+ frame-master;
+ bitclock-master;
+ mclk-fs = <512>;
+ dai-format = "i2s";
+ remote-endpoint = <&hdmi_ep>;
+ };
+ };
};
// spdif is present on q8 device, enable it
&spdif {
status = "okay";
+ spdif_port: port {
+ spdif_ep: endpoint {
+ remote-endpoint = <&spdif_out_ep>;
+ };
+ };
};
/*
diff --git a/patch/kernel/archive/rockchip-6.6/patches.armbian/general-rockchip-various-fixes.patch b/patch/kernel/archive/rockchip-6.6/patches.armbian/general-rockchip-various-fixes.patch
index 58552ddf57a3..64da12bfef9b 100644
--- a/patch/kernel/archive/rockchip-6.6/patches.armbian/general-rockchip-various-fixes.patch
+++ b/patch/kernel/archive/rockchip-6.6/patches.armbian/general-rockchip-various-fixes.patch
@@ -32,7 +32,7 @@ index 75af99c76..c50b2ccd7 100644
+ hdmi_sound: hdmi-sound {
+ compatible = "simple-audio-card";
-+ simple-audio-card,name = "hdmi-sound";
++ simple-audio-card,name = "HDMI";
+ simple-audio-card,format = "i2s";
+ simple-audio-card,mclk-fs = <256>;
+ status = "disabled";
@@ -462,79 +462,6 @@ diff --git a/drivers/net/ethernet/arc/emac_main.c b/drivers/net/ethernet/arc/ema
index 67b8113a2..40332a976 100644
--- a/drivers/net/ethernet/arc/emac_main.c
+++ b/drivers/net/ethernet/arc/emac_main.c
-@@ -140,7 +140,7 @@ static void arc_emac_tx_clean(struct net_device *ndev)
- stats->tx_bytes += skb->len;
- }
-
-- dma_unmap_single(&ndev->dev, dma_unmap_addr(tx_buff, addr),
-+ dma_unmap_single(ndev->dev.parent, dma_unmap_addr(tx_buff, addr),
- dma_unmap_len(tx_buff, len), DMA_TO_DEVICE);
-
- /* return the sk_buff to system */
-@@ -223,9 +223,9 @@ static int arc_emac_rx(struct net_device *ndev, int budget)
- continue;
- }
-
-- addr = dma_map_single(&ndev->dev, (void *)skb->data,
-+ addr = dma_map_single(ndev->dev.parent, (void *)skb->data,
- EMAC_BUFFER_SIZE, DMA_FROM_DEVICE);
-- if (dma_mapping_error(&ndev->dev, addr)) {
-+ if (dma_mapping_error(ndev->dev.parent, addr)) {
- if (net_ratelimit())
- netdev_err(ndev, "cannot map dma buffer\n");
- dev_kfree_skb(skb);
-@@ -237,7 +237,7 @@ static int arc_emac_rx(struct net_device *ndev, int budget)
- }
-
- /* unmap previosly mapped skb */
-- dma_unmap_single(&ndev->dev, dma_unmap_addr(rx_buff, addr),
-+ dma_unmap_single(ndev->dev.parent, dma_unmap_addr(rx_buff, addr),
- dma_unmap_len(rx_buff, len), DMA_FROM_DEVICE);
-
- pktlen = info & LEN_MASK;
-@@ -445,9 +445,9 @@ static int arc_emac_open(struct net_device *ndev)
- if (unlikely(!rx_buff->skb))
- return -ENOMEM;
-
-- addr = dma_map_single(&ndev->dev, (void *)rx_buff->skb->data,
-+ addr = dma_map_single(ndev->dev.parent, (void *)rx_buff->skb->data,
- EMAC_BUFFER_SIZE, DMA_FROM_DEVICE);
-- if (dma_mapping_error(&ndev->dev, addr)) {
-+ if (dma_mapping_error(ndev->dev.parent, addr)) {
- netdev_err(ndev, "cannot dma map\n");
- dev_kfree_skb(rx_buff->skb);
- return -ENOMEM;
-@@ -555,7 +555,7 @@ static void arc_free_tx_queue(struct net_device *ndev)
- struct buffer_state *tx_buff = &priv->tx_buff[i];
-
- if (tx_buff->skb) {
-- dma_unmap_single(&ndev->dev,
-+ dma_unmap_single(ndev->dev.parent,
- dma_unmap_addr(tx_buff, addr),
- dma_unmap_len(tx_buff, len),
- DMA_TO_DEVICE);
-@@ -586,7 +586,7 @@ static void arc_free_rx_queue(struct net_device *ndev)
- struct buffer_state *rx_buff = &priv->rx_buff[i];
-
- if (rx_buff->skb) {
-- dma_unmap_single(&ndev->dev,
-+ dma_unmap_single(ndev->dev.parent,
- dma_unmap_addr(rx_buff, addr),
- dma_unmap_len(rx_buff, len),
- DMA_FROM_DEVICE);
-@@ -692,10 +692,10 @@ static netdev_tx_t arc_emac_tx(struct sk_buff *skb, struct net_device *ndev)
- return NETDEV_TX_BUSY;
- }
-
-- addr = dma_map_single(&ndev->dev, (void *)skb->data, len,
-+ addr = dma_map_single(ndev->dev.parent, (void *)skb->data, len,
- DMA_TO_DEVICE);
-
-- if (unlikely(dma_mapping_error(&ndev->dev, addr))) {
-+ if (unlikely(dma_mapping_error(ndev->dev.parent, addr))) {
- stats->tx_dropped++;
- stats->tx_errors++;
- dev_kfree_skb_any(skb);
@@ -850,6 +850,62 @@ static const struct net_device_ops arc_emac_netdev_ops = {
#endif
};
diff --git a/patch/kernel/archive/rockchip-6.6/series.conf b/patch/kernel/archive/rockchip-6.6/series.conf
index 13e491c12efd..b318baf310e5 100644
--- a/patch/kernel/archive/rockchip-6.6/series.conf
+++ b/patch/kernel/archive/rockchip-6.6/series.conf
@@ -11,7 +11,7 @@
# Series from patches.armbian/
patches.armbian/bt-broadcom-serdev-workaround.patch
patches.armbian/clk-rk322x-composite-mmc-clk.patch
- patches.armbian/clk-rockchip-max-frac-divider.patch
+ -patches.armbian/clk-rockchip-max-frac-divider.patch
patches.armbian/driver-rk322x-audio-codec.patch
patches.armbian/driver-rk3288-gpiomem.patch
patches.armbian/driver-tinkerboard-alc4040-codec.patch
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0025-RK3588-Add-HW-RNG-Support.patch b/patch/kernel/archive/rockchip-rk3588-6.11/0025-RK3588-Add-HW-RNG-Support.patch
deleted file mode 100644
index ef9b7791121b..000000000000
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0025-RK3588-Add-HW-RNG-Support.patch
+++ /dev/null
@@ -1,663 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Muhammed Efe Cetin
-Date: Thu, 16 Nov 2023 17:49:42 +0300
-Subject: hwrng: rockchip: Add support for Rockchip HW RNG
-
----
- drivers/char/hw_random/Kconfig | 13 +
- drivers/char/hw_random/Makefile | 1 +
- drivers/char/hw_random/rockchip-rng.c | 574 ++++++++++
- 3 files changed, 588 insertions(+)
-
-diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig
-index 111111111111..222222222222 100644
---- a/drivers/char/hw_random/Kconfig
-+++ b/drivers/char/hw_random/Kconfig
-@@ -538,6 +538,19 @@ config HW_RANDOM_XIPHERA
- To compile this driver as a module, choose M here: the
- module will be called xiphera-trng.
-
-+config HW_RANDOM_ROCKCHIP
-+ tristate "Rockchip Random Number Generator support"
-+ depends on ARCH_ROCKCHIP
-+ default HW_RANDOM
-+ help
-+ This driver provides kernel-side support for the Random Number
-+ Generator hardware found on Rockchip cpus.
-+
-+ To compile this driver as a module, choose M here: the
-+ module will be called rockchip-rng.
-+
-+ If unsure, say Y.
-+
- config HW_RANDOM_ARM_SMCCC_TRNG
- tristate "Arm SMCCC TRNG firmware interface support"
- depends on HAVE_ARM_SMCCC_DISCOVERY
-diff --git a/drivers/char/hw_random/Makefile b/drivers/char/hw_random/Makefile
-index 111111111111..222222222222 100644
---- a/drivers/char/hw_random/Makefile
-+++ b/drivers/char/hw_random/Makefile
-@@ -35,6 +35,7 @@ obj-$(CONFIG_HW_RANDOM_IPROC_RNG200) += iproc-rng200.o
- obj-$(CONFIG_HW_RANDOM_ST) += st-rng.o
- obj-$(CONFIG_HW_RANDOM_XGENE) += xgene-rng.o
- obj-$(CONFIG_HW_RANDOM_STM32) += stm32-rng.o
-+obj-$(CONFIG_HW_RANDOM_ROCKCHIP) += rockchip-rng.o
- obj-$(CONFIG_HW_RANDOM_PIC32) += pic32-rng.o
- obj-$(CONFIG_HW_RANDOM_MESON) += meson-rng.o
- obj-$(CONFIG_HW_RANDOM_CAVIUM) += cavium-rng.o cavium-rng-vf.o
-diff --git a/drivers/char/hw_random/rockchip-rng.c b/drivers/char/hw_random/rockchip-rng.c
-new file mode 100644
-index 000000000000..111111111111
---- /dev/null
-+++ b/drivers/char/hw_random/rockchip-rng.c
-@@ -0,0 +1,574 @@
-+// SPDX-License-Identifier: GPL-2.0
-+/*
-+ * rockchip-rng.c Random Number Generator driver for the Rockchip
-+ *
-+ * Copyright (c) 2018, Fuzhou Rockchip Electronics Co., Ltd.
-+ * Author: Lin Jinhan
-+ *
-+ */
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+
-+#define _SBF(s, v) ((v) << (s))
-+#define HIWORD_UPDATE(val, mask, shift) \
-+ ((val) << (shift) | (mask) << ((shift) + 16))
-+
-+#define ROCKCHIP_AUTOSUSPEND_DELAY 100
-+#define ROCKCHIP_POLL_PERIOD_US 100
-+#define ROCKCHIP_POLL_TIMEOUT_US 50000
-+#define RK_MAX_RNG_BYTE (32)
-+
-+/* start of CRYPTO V1 register define */
-+#define CRYPTO_V1_CTRL 0x0008
-+#define CRYPTO_V1_RNG_START BIT(8)
-+#define CRYPTO_V1_RNG_FLUSH BIT(9)
-+
-+#define CRYPTO_V1_TRNG_CTRL 0x0200
-+#define CRYPTO_V1_OSC_ENABLE BIT(16)
-+#define CRYPTO_V1_TRNG_SAMPLE_PERIOD(x) (x)
-+
-+#define CRYPTO_V1_TRNG_DOUT_0 0x0204
-+/* end of CRYPTO V1 register define */
-+
-+/* start of CRYPTO V2 register define */
-+#define CRYPTO_V2_RNG_DEFAULT_OFFSET 0x0400
-+#define CRYPTO_V2_RNG_CTL 0x0
-+#define CRYPTO_V2_RNG_64_BIT_LEN _SBF(4, 0x00)
-+#define CRYPTO_V2_RNG_128_BIT_LEN _SBF(4, 0x01)
-+#define CRYPTO_V2_RNG_192_BIT_LEN _SBF(4, 0x02)
-+#define CRYPTO_V2_RNG_256_BIT_LEN _SBF(4, 0x03)
-+#define CRYPTO_V2_RNG_FATESY_SOC_RING _SBF(2, 0x00)
-+#define CRYPTO_V2_RNG_SLOWER_SOC_RING_0 _SBF(2, 0x01)
-+#define CRYPTO_V2_RNG_SLOWER_SOC_RING_1 _SBF(2, 0x02)
-+#define CRYPTO_V2_RNG_SLOWEST_SOC_RING _SBF(2, 0x03)
-+#define CRYPTO_V2_RNG_ENABLE BIT(1)
-+#define CRYPTO_V2_RNG_START BIT(0)
-+#define CRYPTO_V2_RNG_SAMPLE_CNT 0x0004
-+#define CRYPTO_V2_RNG_DOUT_0 0x0010
-+/* end of CRYPTO V2 register define */
-+
-+/* start of TRNG_V1 register define */
-+/* TRNG is no longer subordinate to the Crypto module */
-+#define TRNG_V1_CTRL 0x0000
-+#define TRNG_V1_CTRL_NOP _SBF(0, 0x00)
-+#define TRNG_V1_CTRL_RAND _SBF(0, 0x01)
-+#define TRNG_V1_CTRL_SEED _SBF(0, 0x02)
-+
-+#define TRNG_V1_STAT 0x0004
-+#define TRNG_V1_STAT_SEEDED BIT(9)
-+#define TRNG_V1_STAT_GENERATING BIT(30)
-+#define TRNG_V1_STAT_RESEEDING BIT(31)
-+
-+#define TRNG_V1_MODE 0x0008
-+#define TRNG_V1_MODE_128_BIT _SBF(3, 0x00)
-+#define TRNG_V1_MODE_256_BIT _SBF(3, 0x01)
-+
-+#define TRNG_V1_IE 0x0010
-+#define TRNG_V1_IE_GLBL_EN BIT(31)
-+#define TRNG_V1_IE_SEED_DONE_EN BIT(1)
-+#define TRNG_V1_IE_RAND_RDY_EN BIT(0)
-+
-+#define TRNG_V1_ISTAT 0x0014
-+#define TRNG_V1_ISTAT_RAND_RDY BIT(0)
-+
-+/* RAND0 ~ RAND7 */
-+#define TRNG_V1_RAND0 0x0020
-+#define TRNG_V1_RAND7 0x003C
-+
-+#define TRNG_V1_AUTO_RQSTS 0x0060
-+
-+#define TRNG_V1_VERSION 0x00F0
-+#define TRNG_v1_VERSION_CODE 0x46bc
-+/* end of TRNG_V1 register define */
-+
-+/* start of RKRNG register define */
-+#define RKRNG_CTRL 0x0010
-+#define RKRNG_CTRL_INST_REQ BIT(0)
-+#define RKRNG_CTRL_RESEED_REQ BIT(1)
-+#define RKRNG_CTRL_TEST_REQ BIT(2)
-+#define RKRNG_CTRL_SW_DRNG_REQ BIT(3)
-+#define RKRNG_CTRL_SW_TRNG_REQ BIT(4)
-+
-+#define RKRNG_STATE 0x0014
-+#define RKRNG_STATE_INST_ACK BIT(0)
-+#define RKRNG_STATE_RESEED_ACK BIT(1)
-+#define RKRNG_STATE_TEST_ACK BIT(2)
-+#define RKRNG_STATE_SW_DRNG_ACK BIT(3)
-+#define RKRNG_STATE_SW_TRNG_ACK BIT(4)
-+
-+/* DRNG_DATA_0 ~ DNG_DATA_7 */
-+#define RKRNG_DRNG_DATA_0 0x0070
-+#define RKRNG_DRNG_DATA_7 0x008C
-+
-+/* end of RKRNG register define */
-+
-+struct rk_rng_soc_data {
-+ u32 default_offset;
-+
-+ int (*rk_rng_init)(struct hwrng *rng);
-+ int (*rk_rng_read)(struct hwrng *rng, void *buf, size_t max, bool wait);
-+};
-+
-+struct rk_rng {
-+ struct device *dev;
-+ struct hwrng rng;
-+ void __iomem *mem;
-+ struct rk_rng_soc_data *soc_data;
-+ int clk_num;
-+ struct clk_bulk_data *clk_bulks;
-+};
-+
-+static void rk_rng_writel(struct rk_rng *rng, u32 val, u32 offset)
-+{
-+ __raw_writel(val, rng->mem + offset);
-+}
-+
-+static u32 rk_rng_readl(struct rk_rng *rng, u32 offset)
-+{
-+ return __raw_readl(rng->mem + offset);
-+}
-+
-+static int rk_rng_init(struct hwrng *rng)
-+{
-+ int ret;
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+
-+ dev_dbg(rk_rng->dev, "clk_bulk_prepare_enable.\n");
-+
-+ ret = clk_bulk_prepare_enable(rk_rng->clk_num, rk_rng->clk_bulks);
-+ if (ret < 0) {
-+ dev_err(rk_rng->dev, "failed to enable clks %d\n", ret);
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+
-+static void rk_rng_cleanup(struct hwrng *rng)
-+{
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+
-+ dev_dbg(rk_rng->dev, "clk_bulk_disable_unprepare.\n");
-+ clk_bulk_disable_unprepare(rk_rng->clk_num, rk_rng->clk_bulks);
-+}
-+
-+static int rk_rng_read(struct hwrng *rng, void *buf, size_t max, bool wait)
-+{
-+ int ret;
-+ int read_len = 0;
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+
-+ if (!rk_rng->soc_data->rk_rng_read)
-+ return -EFAULT;
-+
-+ ret = pm_runtime_get_sync(rk_rng->dev);
-+ if (ret < 0) {
-+ pm_runtime_put_noidle(rk_rng->dev);
-+ return ret;
-+ }
-+
-+ ret = 0;
-+ while (max > ret) {
-+ read_len = rk_rng->soc_data->rk_rng_read(rng, buf + ret,
-+ max - ret, wait);
-+ if (read_len < 0) {
-+ ret = read_len;
-+ break;
-+ }
-+ ret += read_len;
-+ }
-+
-+ pm_runtime_mark_last_busy(rk_rng->dev);
-+ pm_runtime_put_sync_autosuspend(rk_rng->dev);
-+
-+ return ret;
-+}
-+
-+static void rk_rng_read_regs(struct rk_rng *rng, u32 offset, void *buf,
-+ size_t size)
-+{
-+ u32 i;
-+
-+ for (i = 0; i < size; i += 4)
-+ *(u32 *)(buf + i) = be32_to_cpu(rk_rng_readl(rng, offset + i));
-+}
-+
-+static int crypto_v1_read(struct hwrng *rng, void *buf, size_t max, bool wait)
-+{
-+ int ret = 0;
-+ u32 reg_ctrl = 0;
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+
-+ /* enable osc_ring to get entropy, sample period is set as 100 */
-+ reg_ctrl = CRYPTO_V1_OSC_ENABLE | CRYPTO_V1_TRNG_SAMPLE_PERIOD(100);
-+ rk_rng_writel(rk_rng, reg_ctrl, CRYPTO_V1_TRNG_CTRL);
-+
-+ reg_ctrl = HIWORD_UPDATE(CRYPTO_V1_RNG_START, CRYPTO_V1_RNG_START, 0);
-+
-+ rk_rng_writel(rk_rng, reg_ctrl, CRYPTO_V1_CTRL);
-+
-+ ret = read_poll_timeout(rk_rng_readl, reg_ctrl,
-+ !(reg_ctrl & CRYPTO_V1_RNG_START),
-+ ROCKCHIP_POLL_PERIOD_US,
-+ ROCKCHIP_POLL_TIMEOUT_US, false,
-+ rk_rng, CRYPTO_V1_CTRL);
-+
-+ if (ret < 0)
-+ goto out;
-+
-+ ret = min_t(size_t, max, RK_MAX_RNG_BYTE);
-+
-+ rk_rng_read_regs(rk_rng, CRYPTO_V1_TRNG_DOUT_0, buf, ret);
-+
-+out:
-+ /* close TRNG */
-+ rk_rng_writel(rk_rng, HIWORD_UPDATE(0, CRYPTO_V1_RNG_START, 0),
-+ CRYPTO_V1_CTRL);
-+
-+ return ret;
-+}
-+
-+static int crypto_v2_read(struct hwrng *rng, void *buf, size_t max, bool wait)
-+{
-+ int ret = 0;
-+ u32 reg_ctrl = 0;
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+
-+ /* enable osc_ring to get entropy, sample period is set as 100 */
-+ rk_rng_writel(rk_rng, 100, CRYPTO_V2_RNG_SAMPLE_CNT);
-+
-+ reg_ctrl |= CRYPTO_V2_RNG_256_BIT_LEN;
-+ reg_ctrl |= CRYPTO_V2_RNG_SLOWER_SOC_RING_0;
-+ reg_ctrl |= CRYPTO_V2_RNG_ENABLE;
-+ reg_ctrl |= CRYPTO_V2_RNG_START;
-+
-+ rk_rng_writel(rk_rng, HIWORD_UPDATE(reg_ctrl, 0xffff, 0),
-+ CRYPTO_V2_RNG_CTL);
-+
-+ ret = read_poll_timeout(rk_rng_readl, reg_ctrl,
-+ !(reg_ctrl & CRYPTO_V2_RNG_START),
-+ ROCKCHIP_POLL_PERIOD_US,
-+ ROCKCHIP_POLL_TIMEOUT_US, false,
-+ rk_rng, CRYPTO_V2_RNG_CTL);
-+ if (ret < 0)
-+ goto out;
-+
-+ ret = min_t(size_t, max, RK_MAX_RNG_BYTE);
-+
-+ rk_rng_read_regs(rk_rng, CRYPTO_V2_RNG_DOUT_0, buf, ret);
-+
-+out:
-+ /* close TRNG */
-+ rk_rng_writel(rk_rng, HIWORD_UPDATE(0, 0xffff, 0), CRYPTO_V2_RNG_CTL);
-+
-+ return ret;
-+}
-+
-+static int trng_v1_init(struct hwrng *rng)
-+{
-+ int ret;
-+ uint32_t auto_reseed_cnt = 1000;
-+ uint32_t reg_ctrl, status, version;
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+
-+ version = rk_rng_readl(rk_rng, TRNG_V1_VERSION);
-+ if (version != TRNG_v1_VERSION_CODE) {
-+ dev_err(rk_rng->dev,
-+ "wrong trng version, expected = %08x, actual = %08x\n",
-+ TRNG_V1_VERSION, version);
-+ ret = -EFAULT;
-+ goto exit;
-+ }
-+
-+ status = rk_rng_readl(rk_rng, TRNG_V1_STAT);
-+
-+ /* TRNG should wait RAND_RDY triggered if it is busy or not seeded */
-+ if (!(status & TRNG_V1_STAT_SEEDED) ||
-+ (status & TRNG_V1_STAT_GENERATING) ||
-+ (status & TRNG_V1_STAT_RESEEDING)) {
-+ uint32_t mask = TRNG_V1_STAT_SEEDED |
-+ TRNG_V1_STAT_GENERATING |
-+ TRNG_V1_STAT_RESEEDING;
-+
-+ udelay(10);
-+
-+ /* wait for GENERATING and RESEEDING flag to clear */
-+ read_poll_timeout(rk_rng_readl, reg_ctrl,
-+ (reg_ctrl & mask) == TRNG_V1_STAT_SEEDED,
-+ ROCKCHIP_POLL_PERIOD_US,
-+ ROCKCHIP_POLL_TIMEOUT_US, false,
-+ rk_rng, TRNG_V1_STAT);
-+ }
-+
-+ /* clear ISTAT flag because trng may auto reseeding when power on */
-+ reg_ctrl = rk_rng_readl(rk_rng, TRNG_V1_ISTAT);
-+ rk_rng_writel(rk_rng, reg_ctrl, TRNG_V1_ISTAT);
-+
-+ /* auto reseed after (auto_reseed_cnt * 16) byte rand generate */
-+ rk_rng_writel(rk_rng, auto_reseed_cnt, TRNG_V1_AUTO_RQSTS);
-+
-+ ret = 0;
-+exit:
-+
-+ return ret;
-+}
-+
-+static int trng_v1_read(struct hwrng *rng, void *buf, size_t max, bool wait)
-+{
-+ int ret = 0;
-+ u32 reg_ctrl = 0;
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+
-+ /* clear ISTAT anyway */
-+ reg_ctrl = rk_rng_readl(rk_rng, TRNG_V1_ISTAT);
-+ rk_rng_writel(rk_rng, reg_ctrl, TRNG_V1_ISTAT);
-+
-+ /* generate 256bit random */
-+ rk_rng_writel(rk_rng, TRNG_V1_MODE_256_BIT, TRNG_V1_MODE);
-+ rk_rng_writel(rk_rng, TRNG_V1_CTRL_RAND, TRNG_V1_CTRL);
-+
-+ /*
-+ * Generate2 56 bit random data will cost 1024 clock cycles.
-+ * Estimated at 150M RNG module frequency, it takes 6.7 microseconds.
-+ */
-+ udelay(10);
-+ reg_ctrl = rk_rng_readl(rk_rng, TRNG_V1_ISTAT);
-+ if (!(reg_ctrl & TRNG_V1_ISTAT_RAND_RDY)) {
-+ /* wait RAND_RDY triggered */
-+ ret = read_poll_timeout(rk_rng_readl, reg_ctrl,
-+ (reg_ctrl & TRNG_V1_ISTAT_RAND_RDY),
-+ ROCKCHIP_POLL_PERIOD_US,
-+ ROCKCHIP_POLL_TIMEOUT_US, false,
-+ rk_rng, TRNG_V1_ISTAT);
-+ if (ret < 0)
-+ goto out;
-+ }
-+
-+ ret = min_t(size_t, max, RK_MAX_RNG_BYTE);
-+
-+ rk_rng_read_regs(rk_rng, TRNG_V1_RAND0, buf, ret);
-+
-+ /* clear all status flag */
-+ rk_rng_writel(rk_rng, reg_ctrl, TRNG_V1_ISTAT);
-+out:
-+ /* close TRNG */
-+ rk_rng_writel(rk_rng, TRNG_V1_CTRL_NOP, TRNG_V1_CTRL);
-+
-+ return ret;
-+}
-+
-+static int rkrng_init(struct hwrng *rng)
-+{
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+ u32 reg = 0;
-+
-+ rk_rng_writel(rk_rng, HIWORD_UPDATE(0, 0xffff, 0), RKRNG_CTRL);
-+
-+ reg = rk_rng_readl(rk_rng, RKRNG_STATE);
-+ rk_rng_writel(rk_rng, reg, RKRNG_STATE);
-+
-+ return 0;
-+}
-+
-+static int rkrng_read(struct hwrng *rng, void *buf, size_t max, bool wait)
-+{
-+ struct rk_rng *rk_rng = container_of(rng, struct rk_rng, rng);
-+ u32 reg_ctrl = 0;
-+ int ret;
-+
-+ reg_ctrl = RKRNG_CTRL_SW_DRNG_REQ;
-+
-+ rk_rng_writel(rk_rng, HIWORD_UPDATE(reg_ctrl, 0xffff, 0), RKRNG_CTRL);
-+
-+ ret = readl_poll_timeout(rk_rng->mem + RKRNG_STATE, reg_ctrl,
-+ (reg_ctrl & RKRNG_STATE_SW_DRNG_ACK),
-+ ROCKCHIP_POLL_PERIOD_US,
-+ ROCKCHIP_POLL_TIMEOUT_US);
-+
-+ if (ret)
-+ goto exit;
-+
-+ rk_rng_writel(rk_rng, reg_ctrl, RKRNG_STATE);
-+
-+ ret = min_t(size_t, max, RK_MAX_RNG_BYTE);
-+
-+ rk_rng_read_regs(rk_rng, RKRNG_DRNG_DATA_0, buf, ret);
-+
-+exit:
-+ /* close TRNG */
-+ rk_rng_writel(rk_rng, HIWORD_UPDATE(0, 0xffff, 0), RKRNG_CTRL);
-+
-+ return ret;
-+}
-+
-+static const struct rk_rng_soc_data crypto_v1_soc_data = {
-+ .default_offset = 0,
-+
-+ .rk_rng_read = crypto_v1_read,
-+};
-+
-+static const struct rk_rng_soc_data crypto_v2_soc_data = {
-+ .default_offset = CRYPTO_V2_RNG_DEFAULT_OFFSET,
-+
-+ .rk_rng_read = crypto_v2_read,
-+};
-+
-+static const struct rk_rng_soc_data trng_v1_soc_data = {
-+ .default_offset = 0,
-+
-+ .rk_rng_init = trng_v1_init,
-+ .rk_rng_read = trng_v1_read,
-+};
-+
-+static const struct rk_rng_soc_data rkrng_soc_data = {
-+ .default_offset = 0,
-+
-+ .rk_rng_init = rkrng_init,
-+ .rk_rng_read = rkrng_read,
-+};
-+
-+static const struct of_device_id rk_rng_dt_match[] = {
-+ {
-+ .compatible = "rockchip,cryptov1-rng",
-+ .data = (void *)&crypto_v1_soc_data,
-+ },
-+ {
-+ .compatible = "rockchip,cryptov2-rng",
-+ .data = (void *)&crypto_v2_soc_data,
-+ },
-+ {
-+ .compatible = "rockchip,trngv1",
-+ .data = (void *)&trng_v1_soc_data,
-+ },
-+ {
-+ .compatible = "rockchip,rkrng",
-+ .data = (void *)&rkrng_soc_data,
-+ },
-+ { },
-+};
-+
-+MODULE_DEVICE_TABLE(of, rk_rng_dt_match);
-+
-+static int rk_rng_probe(struct platform_device *pdev)
-+{
-+ int ret;
-+ struct rk_rng *rk_rng;
-+ struct device_node *np = pdev->dev.of_node;
-+ const struct of_device_id *match;
-+ resource_size_t map_size;
-+
-+ dev_dbg(&pdev->dev, "probing...\n");
-+ rk_rng = devm_kzalloc(&pdev->dev, sizeof(struct rk_rng), GFP_KERNEL);
-+ if (!rk_rng)
-+ return -ENOMEM;
-+
-+ match = of_match_node(rk_rng_dt_match, np);
-+ rk_rng->soc_data = (struct rk_rng_soc_data *)match->data;
-+
-+ rk_rng->dev = &pdev->dev;
-+ rk_rng->rng.name = "rockchip";
-+#ifndef CONFIG_PM
-+ rk_rng->rng.init = rk_rng_init;
-+ rk_rng->rng.cleanup = rk_rng_cleanup,
-+#endif
-+ rk_rng->rng.read = rk_rng_read;
-+ rk_rng->rng.quality = 999;
-+
-+ rk_rng->mem = devm_of_iomap(&pdev->dev, pdev->dev.of_node, 0, &map_size);
-+ if (IS_ERR(rk_rng->mem))
-+ return PTR_ERR(rk_rng->mem);
-+
-+ /* compatible with crypto v2 module */
-+ /*
-+ * With old dtsi configurations, the RNG base was equal to the crypto
-+ * base, so both drivers could not be enabled at the same time.
-+ * RNG base = CRYPTO base + RNG offset
-+ * (Since RK356X, RNG module is no longer belongs to CRYPTO module)
-+ *
-+ * With new dtsi configurations, CRYPTO regs is divided into two parts
-+ * |---cipher---|---rng---|---pka---|, and RNG base is real RNG base.
-+ * RNG driver and CRYPTO driver could be enabled at the same time.
-+ */
-+ if (map_size > rk_rng->soc_data->default_offset)
-+ rk_rng->mem += rk_rng->soc_data->default_offset;
-+
-+ rk_rng->clk_num = devm_clk_bulk_get_all(&pdev->dev, &rk_rng->clk_bulks);
-+ if (rk_rng->clk_num < 0) {
-+ dev_err(&pdev->dev, "failed to get clks property\n");
-+ return -ENODEV;
-+ }
-+
-+ platform_set_drvdata(pdev, rk_rng);
-+
-+ pm_runtime_set_autosuspend_delay(&pdev->dev,
-+ ROCKCHIP_AUTOSUSPEND_DELAY);
-+ pm_runtime_use_autosuspend(&pdev->dev);
-+ pm_runtime_enable(&pdev->dev);
-+
-+ ret = devm_hwrng_register(&pdev->dev, &rk_rng->rng);
-+ if (ret) {
-+ pm_runtime_dont_use_autosuspend(&pdev->dev);
-+ pm_runtime_disable(&pdev->dev);
-+ }
-+
-+ /* for some platform need hardware operation when probe */
-+ if (rk_rng->soc_data->rk_rng_init) {
-+ pm_runtime_get_sync(rk_rng->dev);
-+
-+ ret = rk_rng->soc_data->rk_rng_init(&rk_rng->rng);
-+
-+ pm_runtime_mark_last_busy(rk_rng->dev);
-+ pm_runtime_put_sync_autosuspend(rk_rng->dev);
-+ }
-+
-+ return ret;
-+}
-+
-+#ifdef CONFIG_PM
-+static int rk_rng_runtime_suspend(struct device *dev)
-+{
-+ struct rk_rng *rk_rng = dev_get_drvdata(dev);
-+
-+ rk_rng_cleanup(&rk_rng->rng);
-+
-+ return 0;
-+}
-+
-+static int rk_rng_runtime_resume(struct device *dev)
-+{
-+ struct rk_rng *rk_rng = dev_get_drvdata(dev);
-+
-+ return rk_rng_init(&rk_rng->rng);
-+}
-+
-+static const struct dev_pm_ops rk_rng_pm_ops = {
-+ SET_RUNTIME_PM_OPS(rk_rng_runtime_suspend,
-+ rk_rng_runtime_resume, NULL)
-+ SET_SYSTEM_SLEEP_PM_OPS(pm_runtime_force_suspend,
-+ pm_runtime_force_resume)
-+};
-+
-+#endif
-+
-+static struct platform_driver rk_rng_driver = {
-+ .driver = {
-+ .name = "rockchip-rng",
-+#ifdef CONFIG_PM
-+ .pm = &rk_rng_pm_ops,
-+#endif
-+ .of_match_table = rk_rng_dt_match,
-+ },
-+ .probe = rk_rng_probe,
-+};
-+
-+module_platform_driver(rk_rng_driver);
-+
-+MODULE_DESCRIPTION("ROCKCHIP H/W Random Number Generator driver");
-+MODULE_AUTHOR("Lin Jinhan ");
-+MODULE_LICENSE("GPL v2");
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Muhammed Efe Cetin
-Date: Fri, 2 Aug 2024 00:10:39 +0300
-Subject: arm64: dts: rockchip: rk3588: enable RNG node
-
----
- arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-@@ -1774,6 +1774,16 @@ crypto: crypto@fe370000 {
- reset-names = "core";
- };
-
-+ rng: rng@fe378000 {
-+ compatible = "rockchip,trngv1";
-+ reg = <0x0 0xfe378000 0x0 0x200>;
-+ interrupts = ;
-+ clocks = <&scmi_clk SCMI_HCLK_SECURE_NS>;
-+ clock-names = "hclk_trng";
-+ resets = <&scmi_reset SRST_H_TRNG_NS>;
-+ reset-names = "reset";
-+ };
-+
- i2s0_8ch: i2s@fe470000 {
- compatible = "rockchip,rk3588-i2s-tdm";
- reg = <0x0 0xfe470000 0x0 0x1000>;
---
-Armbian
-
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0026-RK3588-Add-VPU121-H.264-Decoder-Support.patch b/patch/kernel/archive/rockchip-rk3588-6.11/0026-RK3588-Add-VPU121-H.264-Decoder-Support.patch
deleted file mode 100644
index 35298c4c4663..000000000000
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0026-RK3588-Add-VPU121-H.264-Decoder-Support.patch
+++ /dev/null
@@ -1,395 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Emmanuel Gil Peyrot
-Date: Thu, 18 Apr 2024 16:15:05 +0200
-Subject: media: dt-bindings: rk3568-vepu: Add RK3588 VEPU121
-
-This encoder-only device is present four times on this SoC, and should
-support everything the rk3568 vepu supports (so JPEG, H.264 and VP8
-encoding). No fallback compatible has been added, since the operating
-systems might already support RK3568 VEPU and want to avoid registering
-four of them separately considering they can be used as a cluster.
-
-Signed-off-by: Emmanuel Gil Peyrot
-Acked-by: Conor Dooley
-Signed-off-by: Sebastian Reichel
----
- Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml b/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
-index 111111111111..222222222222 100644
---- a/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
-+++ b/Documentation/devicetree/bindings/media/rockchip,rk3568-vepu.yaml
-@@ -17,6 +17,7 @@ properties:
- compatible:
- enum:
- - rockchip,rk3568-vepu
-+ - rockchip,rk3588-vepu121
-
- reg:
- maxItems: 1
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Jianfeng Liu
-Date: Tue, 30 Apr 2024 10:40:01 +0800
-Subject: media: dt-bindings: rockchip-vpu: Add RK3588 VPU121
-
-RK3588 has four Hantro H1 VEPUs (encoder-only) modules and one combined
-Hantro H1/G1 VPU (decoder and encoder). These are not described as
-separate IP, since they are sharing an internal cache. This adds the
-RK3588 specific compatible string for the combined VPU, which seems to
-be identical to the version found in the RK3568.
-
-Signed-off-by: Jianfeng Liu
-Acked-by: Conor Dooley
-Signed-off-by: Sebastian Reichel
----
- Documentation/devicetree/bindings/media/rockchip-vpu.yaml | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/Documentation/devicetree/bindings/media/rockchip-vpu.yaml b/Documentation/devicetree/bindings/media/rockchip-vpu.yaml
-index 111111111111..222222222222 100644
---- a/Documentation/devicetree/bindings/media/rockchip-vpu.yaml
-+++ b/Documentation/devicetree/bindings/media/rockchip-vpu.yaml
-@@ -31,6 +31,9 @@ properties:
- - items:
- - const: rockchip,rk3228-vpu
- - const: rockchip,rk3399-vpu
-+ - items:
-+ - const: rockchip,rk3588-vpu121
-+ - const: rockchip,rk3568-vpu
-
- reg:
- maxItems: 1
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel
-Date: Thu, 13 Jun 2024 14:29:55 +0200
-Subject: media: hantro: Disable multicore support
-
-Avoid exposing equal Hantro video codecs to userspace. Equal video
-codecs allow scheduling work between the cores. For that kernel support
-is required, which does not yet exist. Until that is implemented avoid
-exposing each core separately to userspace so that multicore can be
-added in the future without breaking userspace ABI.
-
-This was written with Rockchip RK3588 in mind (which has 4 Hantro H1
-cores), but applies to all SoCs.
-
-Signed-off-by: Sebastian Reichel
----
- drivers/media/platform/verisilicon/hantro_drv.c | 47 ++++++++++
- 1 file changed, 47 insertions(+)
-
-diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/platform/verisilicon/hantro_drv.c
-index 111111111111..222222222222 100644
---- a/drivers/media/platform/verisilicon/hantro_drv.c
-+++ b/drivers/media/platform/verisilicon/hantro_drv.c
-@@ -992,6 +992,49 @@ static const struct media_device_ops hantro_m2m_media_ops = {
- .req_queue = v4l2_m2m_request_queue,
- };
-
-+/*
-+ * Some SoCs, like RK3588 have multiple identical Hantro cores, but the
-+ * kernel is currently missing support for multi-core handling. Exposing
-+ * separate devices for each core to userspace is bad, since that does
-+ * not allow scheduling tasks properly (and creates ABI). With this workaround
-+ * the driver will only probe for the first core and early exit for the other
-+ * cores. Once the driver gains multi-core support, the same technique
-+ * for detecting the main core can be used to cluster all cores together.
-+ */
-+static int hantro_disable_multicore(struct hantro_dev *vpu)
-+{
-+ struct device_node *node = NULL;
-+ const char *compatible;
-+ bool is_main_core;
-+ int ret;
-+
-+ /* Intentionally ignores the fallback strings */
-+ ret = of_property_read_string(vpu->dev->of_node, "compatible", &compatible);
-+ if (ret)
-+ return ret;
-+
-+ /* The first compatible and available node found is considered the main core */
-+ do {
-+ node = of_find_compatible_node(node, NULL, compatible);
-+ if (of_device_is_available(node))
-+ break;
-+ } while (node);
-+
-+ if (!node)
-+ return -EINVAL;
-+
-+ is_main_core = (vpu->dev->of_node == node);
-+
-+ of_node_put(node);
-+
-+ if (!is_main_core) {
-+ dev_info(vpu->dev, "missing multi-core support, ignoring this instance\n");
-+ return -ENODEV;
-+ }
-+
-+ return 0;
-+}
-+
- static int hantro_probe(struct platform_device *pdev)
- {
- const struct of_device_id *match;
-@@ -1011,6 +1054,10 @@ static int hantro_probe(struct platform_device *pdev)
- match = of_match_node(of_hantro_match, pdev->dev.of_node);
- vpu->variant = match->data;
-
-+ ret = hantro_disable_multicore(vpu);
-+ if (ret)
-+ return ret;
-+
- /*
- * Support for nxp,imx8mq-vpu is kept for backwards compatibility
- * but it's deprecated. Please update your DTS file to use
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel
-Date: Thu, 13 Jun 2024 14:48:43 +0200
-Subject: media: hantro: Add RK3588 VEPU121
-
-RK3588 handling is exactly the same as RK3568. This is not
-handled using fallback compatibles to avoid exposing multiple
-video devices on kernels not having the multicore disable
-patch.
-
-Signed-off-by: Sebastian Reichel
----
- drivers/media/platform/verisilicon/hantro_drv.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/platform/verisilicon/hantro_drv.c
-index 111111111111..222222222222 100644
---- a/drivers/media/platform/verisilicon/hantro_drv.c
-+++ b/drivers/media/platform/verisilicon/hantro_drv.c
-@@ -722,6 +722,7 @@ static const struct of_device_id of_hantro_match[] = {
- { .compatible = "rockchip,rk3399-vpu", .data = &rk3399_vpu_variant, },
- { .compatible = "rockchip,rk3568-vepu", .data = &rk3568_vepu_variant, },
- { .compatible = "rockchip,rk3568-vpu", .data = &rk3568_vpu_variant, },
-+ { .compatible = "rockchip,rk3588-vepu121", .data = &rk3568_vepu_variant, },
- { .compatible = "rockchip,rk3588-av1-vpu", .data = &rk3588_vpu981_variant, },
- #endif
- #ifdef CONFIG_VIDEO_HANTRO_IMX8M
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Emmanuel Gil Peyrot
-Date: Wed, 5 Jun 2024 15:28:33 +0200
-Subject: arm64: dts: rockchip: Add VEPU121 to RK3588
-
-RK3588 has 4 Hantro G1 encoder-only cores. They are all independent IP,
-but can be used as a cluster (i.e. sharing work between the cores).
-These cores are called VEPU121 in the TRM. The TRM describes one more
-VEPU121, but that is combined with a Hantro H1. That one will be handled
-using the VPU binding instead.
-
-Signed-off-by: Emmanuel Gil Peyrot
-Signed-off-by: Sebastian Reichel
----
- arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 80 ++++++++++
- 1 file changed, 80 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-@@ -1122,6 +1122,86 @@ power-domain@RK3588_PD_SDMMC {
- };
- };
-
-+ vepu121_0: video-codec@fdba0000 {
-+ compatible = "rockchip,rk3588-vepu121";
-+ reg = <0x0 0xfdba0000 0x0 0x800>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>;
-+ clock-names = "aclk", "hclk";
-+ iommus = <&vepu121_0_mmu>;
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ };
-+
-+ vepu121_0_mmu: iommu@fdba0800 {
-+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
-+ reg = <0x0 0xfdba0800 0x0 0x40>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_JPEG_ENCODER0>, <&cru HCLK_JPEG_ENCODER0>;
-+ clock-names = "aclk", "iface";
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ #iommu-cells = <0>;
-+ };
-+
-+ vepu121_1: video-codec@fdba4000 {
-+ compatible = "rockchip,rk3588-vepu121";
-+ reg = <0x0 0xfdba4000 0x0 0x800>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_JPEG_ENCODER1>, <&cru HCLK_JPEG_ENCODER1>;
-+ clock-names = "aclk", "hclk";
-+ iommus = <&vepu121_1_mmu>;
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ };
-+
-+ vepu121_1_mmu: iommu@fdba4800 {
-+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
-+ reg = <0x0 0xfdba4800 0x0 0x40>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_JPEG_ENCODER1>, <&cru HCLK_JPEG_ENCODER1>;
-+ clock-names = "aclk", "iface";
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ #iommu-cells = <0>;
-+ };
-+
-+ vepu121_2: video-codec@fdba8000 {
-+ compatible = "rockchip,rk3588-vepu121";
-+ reg = <0x0 0xfdba8000 0x0 0x800>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_JPEG_ENCODER2>, <&cru HCLK_JPEG_ENCODER2>;
-+ clock-names = "aclk", "hclk";
-+ iommus = <&vepu121_2_mmu>;
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ };
-+
-+ vepu121_2_mmu: iommu@fdba8800 {
-+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
-+ reg = <0x0 0xfdba8800 0x0 0x40>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_JPEG_ENCODER2>, <&cru HCLK_JPEG_ENCODER2>;
-+ clock-names = "aclk", "iface";
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ #iommu-cells = <0>;
-+ };
-+
-+ vepu121_3: video-codec@fdbac000 {
-+ compatible = "rockchip,rk3588-vepu121";
-+ reg = <0x0 0xfdbac000 0x0 0x800>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_JPEG_ENCODER3>, <&cru HCLK_JPEG_ENCODER3>;
-+ clock-names = "aclk", "hclk";
-+ iommus = <&vepu121_3_mmu>;
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ };
-+
-+ vepu121_3_mmu: iommu@fdbac800 {
-+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
-+ reg = <0x0 0xfdbac800 0x0 0x40>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_JPEG_ENCODER3>, <&cru HCLK_JPEG_ENCODER3>;
-+ clock-names = "aclk", "iface";
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ #iommu-cells = <0>;
-+ };
-+
- av1d: video-codec@fdc70000 {
- compatible = "rockchip,rk3588-av1-vpu";
- reg = <0x0 0xfdc70000 0x0 0x800>;
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Jianfeng Liu
-Date: Tue, 30 Apr 2024 10:40:02 +0800
-Subject: arm64: dts: rockchip: Add VPU121 support for RK3588
-
-Enable Hantro G1 video decoder in RK3588's devicetree.
-
-Tested with FFmpeg v4l2_request code taken from [1]
-with MPEG2, H.264 and VP8 samples.
-
-[1] https://github.com/LibreELEC/LibreELEC.tv/blob/master/packages/multimedia/ffmpeg/patches/v4l2-request/ffmpeg-001-v4l2-request.patch
-
-Signed-off-by: Jianfeng Liu
-Tested-by: Hugh Cole-Baker
-Signed-off-by: Sebastian Reichel
----
- arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 21 ++++++++++
- 1 file changed, 21 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-@@ -1122,6 +1122,27 @@ power-domain@RK3588_PD_SDMMC {
- };
- };
-
-+ vpu121: video-codec@fdb50000 {
-+ compatible = "rockchip,rk3588-vpu121", "rockchip,rk3568-vpu";
-+ reg = <0x0 0xfdb50000 0x0 0x800>;
-+ interrupts = ;
-+ interrupt-names = "vdpu";
-+ clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>;
-+ clock-names = "aclk", "hclk";
-+ iommus = <&vpu121_mmu>;
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ };
-+
-+ vpu121_mmu: iommu@fdb50800 {
-+ compatible = "rockchip,rk3588-iommu", "rockchip,rk3568-iommu";
-+ reg = <0x0 0xfdb50800 0x0 0x40>;
-+ interrupts = ;
-+ clock-names = "aclk", "iface";
-+ clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>;
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ #iommu-cells = <0>;
-+ };
-+
- vepu121_0: video-codec@fdba0000 {
- compatible = "rockchip,rk3588-vepu121";
- reg = <0x0 0xfdba0000 0x0 0x800>;
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Muhammed Efe Cetin
-Date: Mon, 29 Jul 2024 23:21:19 +0300
-Subject: arm64: dts: rockchip: rk3588: disable H264 decoding on Hantro decoder
-
----
- Documentation/devicetree/bindings/media/rockchip-vpu.yaml | 2 +-
- arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 7 ++++---
- 2 files changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/Documentation/devicetree/bindings/media/rockchip-vpu.yaml b/Documentation/devicetree/bindings/media/rockchip-vpu.yaml
-index 111111111111..222222222222 100644
---- a/Documentation/devicetree/bindings/media/rockchip-vpu.yaml
-+++ b/Documentation/devicetree/bindings/media/rockchip-vpu.yaml
-@@ -33,7 +33,7 @@ properties:
- - const: rockchip,rk3399-vpu
- - items:
- - const: rockchip,rk3588-vpu121
-- - const: rockchip,rk3568-vpu
-+ - const: rockchip,rk3399-vpu
-
- reg:
- maxItems: 1
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-@@ -1123,10 +1123,11 @@ power-domain@RK3588_PD_SDMMC {
- };
-
- vpu121: video-codec@fdb50000 {
-- compatible = "rockchip,rk3588-vpu121", "rockchip,rk3568-vpu";
-+ compatible = "rockchip,rk3588-vpu121", "rockchip,rk3399-vpu";
- reg = <0x0 0xfdb50000 0x0 0x800>;
-- interrupts = ;
-- interrupt-names = "vdpu";
-+ interrupts = ,
-+ ;
-+ interrupt-names = "vepu", "vdpu";
- clocks = <&cru ACLK_VPU>, <&cru HCLK_VPU>;
- clock-names = "aclk", "hclk";
- iommus = <&vpu121_mmu>;
---
-Armbian
-
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0027-RK3588-Add-rkvdec2-Support-v3.patch b/patch/kernel/archive/rockchip-rk3588-6.11/0027-RK3588-Add-rkvdec2-Support-v3.patch
deleted file mode 120000
index 23f230de04ea..000000000000
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0027-RK3588-Add-rkvdec2-Support-v3.patch
+++ /dev/null
@@ -1 +0,0 @@
-../rockchip64-6.11/media-0001-Add-rkvdec2-Support-v3.patch
\ No newline at end of file
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0029-arm64-dts-rockchip-rk3588-add-RGA2-node.patch b/patch/kernel/archive/rockchip-rk3588-6.11/0029-arm64-dts-rockchip-rk3588-add-RGA2-node.patch
deleted file mode 100644
index abb8d1683714..000000000000
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0029-arm64-dts-rockchip-rk3588-add-RGA2-node.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Muhammed Efe Cetin
-Date: Mon, 13 May 2024 20:29:49 +0300
-Subject: arm64: dts: rockchip: rk3588: add VDPU and RGA2 nodes
-
----
- arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 11 ++++++++++
- 1 file changed, 11 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-@@ -566,6 +566,17 @@ mmu600_php: iommu@fcb00000 {
- status = "disabled";
- };
-
-+ rga: rga@fdb80000 {
-+ compatible = "rockchip,rk3568-rga", "rockchip,rk3288-rga";
-+ reg = <0x0 0xfdb80000 0x0 0x1000>;
-+ interrupts = ;
-+ clocks = <&cru ACLK_RGA2>, <&cru HCLK_RGA2>, <&cru CLK_RGA2_CORE>;
-+ clock-names = "aclk", "hclk", "sclk";
-+ resets = <&cru SRST_RGA2_CORE>, <&cru SRST_A_RGA2>, <&cru SRST_H_RGA2>;
-+ reset-names = "core", "axi", "ahb";
-+ power-domains = <&power RK3588_PD_VDPU>;
-+ };
-+
- pmu1grf: syscon@fd58a000 {
- compatible = "rockchip,rk3588-pmugrf", "syscon", "simple-mfd";
- reg = <0x0 0xfd58a000 0x0 0x10000>;
---
-Armbian
-
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0130-phy-phy-rockchip-samsung-hdptx-Enable-runtime-PM.patch b/patch/kernel/archive/rockchip-rk3588-6.11/0130-phy-phy-rockchip-samsung-hdptx-Enable-runtime-PM.patch
deleted file mode 100644
index 387f39d1df6b..000000000000
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0130-phy-phy-rockchip-samsung-hdptx-Enable-runtime-PM.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Cristian Ciocaltea
-Date: Tue, 11 Jun 2024 02:28:26 +0300
-Subject: phy: phy-rockchip-samsung-hdptx: Enable runtime PM at PHY core level
-
-When a new PHY is created via [devm_]phy_create(), the runtime PM for it
-is not enabled unless the parent device (which creates the PHY) has its
-own runtime PM already enabled.
-
-Move the call to devm_pm_runtime_enable() before devm_phy_create() to
-enable runtime PM at PHY core level.
-
-With this change the ->power_on() and ->power_off() callbacks do not
-require explicit runtime PM management anymore, since the PHY core
-handles that via phy_pm_runtime_{get,put}_sync() when phy_power_on() and
-phy_power_off() are invoked.
-
-Hence drop the now unnecessary calls to pm_runtime_resume_and_get() and
-pm_runtime_put() helpers.
-
-Signed-off-by: Cristian Ciocaltea
----
- drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c | 24 +++-------
- 1 file changed, 6 insertions(+), 18 deletions(-)
-
-diff --git a/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c b/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
-index 111111111111..222222222222 100644
---- a/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
-+++ b/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
-@@ -860,7 +860,7 @@ static int rk_hdptx_ropll_tmds_mode_config(struct rk_hdptx_phy *hdptx,
- static int rk_hdptx_phy_power_on(struct phy *phy)
- {
- struct rk_hdptx_phy *hdptx = phy_get_drvdata(phy);
-- int ret, bus_width = phy_get_bus_width(hdptx->phy);
-+ int bus_width = phy_get_bus_width(hdptx->phy);
- /*
- * FIXME: Temporary workaround to pass pixel_clk_rate
- * from the HDMI bridge driver until phy_configure_opts_hdmi
-@@ -871,17 +871,7 @@ static int rk_hdptx_phy_power_on(struct phy *phy)
- dev_dbg(hdptx->dev, "%s bus_width=%x rate=%u\n",
- __func__, bus_width, rate);
-
-- ret = pm_runtime_resume_and_get(hdptx->dev);
-- if (ret) {
-- dev_err(hdptx->dev, "Failed to resume phy: %d\n", ret);
-- return ret;
-- }
--
-- ret = rk_hdptx_ropll_tmds_mode_config(hdptx, rate);
-- if (ret)
-- pm_runtime_put(hdptx->dev);
--
-- return ret;
-+ return rk_hdptx_ropll_tmds_mode_config(hdptx, rate);
- }
-
- static int rk_hdptx_phy_power_off(struct phy *phy)
-@@ -894,8 +884,6 @@ static int rk_hdptx_phy_power_off(struct phy *phy)
- if (ret == 0 && (val & HDPTX_O_PLL_LOCK_DONE))
- rk_hdptx_phy_disable(hdptx);
-
-- pm_runtime_put(hdptx->dev);
--
- return ret;
- }
-
-@@ -977,6 +965,10 @@ static int rk_hdptx_phy_probe(struct platform_device *pdev)
- return dev_err_probe(dev, PTR_ERR(hdptx->grf),
- "Could not get GRF syscon\n");
-
-+ ret = devm_pm_runtime_enable(dev);
-+ if (ret)
-+ return dev_err_probe(dev, ret, "Failed to enable runtime PM\n");
-+
- hdptx->phy = devm_phy_create(dev, NULL, &rk_hdptx_phy_ops);
- if (IS_ERR(hdptx->phy))
- return dev_err_probe(dev, PTR_ERR(hdptx->phy),
-@@ -986,10 +978,6 @@ static int rk_hdptx_phy_probe(struct platform_device *pdev)
- phy_set_drvdata(hdptx->phy, hdptx);
- phy_set_bus_width(hdptx->phy, 8);
-
-- ret = devm_pm_runtime_enable(dev);
-- if (ret)
-- return dev_err_probe(dev, ret, "Failed to enable runtime PM\n");
--
- phy_provider = devm_of_phy_provider_register(dev, of_phy_simple_xlate);
- if (IS_ERR(phy_provider))
- return dev_err_probe(dev, PTR_ERR(phy_provider),
---
-Armbian
-
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0131-phy-phy-rockchip-samsung-hdptx-Add-clock-provider.patch b/patch/kernel/archive/rockchip-rk3588-6.11/0131-phy-phy-rockchip-samsung-hdptx-Add-clock-provider.patch
deleted file mode 100644
index 721cf796ee3d..000000000000
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0131-phy-phy-rockchip-samsung-hdptx-Add-clock-provider.patch
+++ /dev/null
@@ -1,323 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Cristian Ciocaltea
-Date: Mon, 19 Feb 2024 21:53:24 +0200
-Subject: dt-bindings: phy: rockchip,rk3588-hdptx-phy: Add #clock-cells
-
-The HDMI PHY can be used as a clock provider on RK3588 SoC, hence add
-the necessary '#clock-cells' property.
-
-Signed-off-by: Cristian Ciocaltea
----
- Documentation/devicetree/bindings/phy/rockchip,rk3588-hdptx-phy.yaml | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/Documentation/devicetree/bindings/phy/rockchip,rk3588-hdptx-phy.yaml b/Documentation/devicetree/bindings/phy/rockchip,rk3588-hdptx-phy.yaml
-index 111111111111..222222222222 100644
---- a/Documentation/devicetree/bindings/phy/rockchip,rk3588-hdptx-phy.yaml
-+++ b/Documentation/devicetree/bindings/phy/rockchip,rk3588-hdptx-phy.yaml
-@@ -27,6 +27,9 @@ properties:
- - const: ref
- - const: apb
-
-+ "#clock-cells":
-+ const: 0
-+
- "#phy-cells":
- const: 0
-
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Cristian Ciocaltea
-Date: Tue, 16 Jan 2024 19:27:40 +0200
-Subject: phy: phy-rockchip-samsung-hdptx: Add clock provider support
-
-The HDMI PHY PLL can be used as an alternative dclk source to RK3588 SoC
-CRU. It provides more accurate clock rates required by VOP2 to improve
-existing support for display modes handling, which is known to be
-problematic when dealing with non-integer refresh rates, among others.
-
-It is worth noting this only works for HDMI 2.0 or below, e.g. cannot be
-used to support HDMI 2.1 4K@120Hz mode.
-
-Signed-off-by: Cristian Ciocaltea
----
- drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c | 195 ++++++++--
- 1 file changed, 173 insertions(+), 22 deletions(-)
-
-diff --git a/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c b/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
-index 111111111111..222222222222 100644
---- a/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
-+++ b/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
-@@ -8,6 +8,7 @@
- */
- #include
- #include
-+#include
- #include
- #include
- #include
-@@ -191,6 +192,8 @@
- #define LN3_TX_SER_RATE_SEL_HBR2 BIT(3)
- #define LN3_TX_SER_RATE_SEL_HBR3 BIT(2)
-
-+#define HDMI20_MAX_RATE 600000000
-+
- struct lcpll_config {
- u32 bit_rate;
- u8 lcvco_mode_en;
-@@ -273,6 +276,12 @@ struct rk_hdptx_phy {
- struct clk_bulk_data *clks;
- int nr_clks;
- struct reset_control_bulk_data rsts[RST_MAX];
-+
-+ /* clk provider */
-+ struct clk_hw hw;
-+ unsigned long rate;
-+
-+ atomic_t usage_count;
- };
-
- static const struct ropll_config ropll_tmds_cfg[] = {
-@@ -760,6 +769,8 @@ static int rk_hdptx_ropll_tmds_cmn_config(struct rk_hdptx_phy *hdptx,
- struct ropll_config rc = {0};
- int i;
-
-+ hdptx->rate = rate * 100;
-+
- for (i = 0; i < ARRAY_SIZE(ropll_tmds_cfg); i++)
- if (rate == ropll_tmds_cfg[i].bit_rate) {
- cfg = &ropll_tmds_cfg[i];
-@@ -823,19 +834,6 @@ static int rk_hdptx_ropll_tmds_cmn_config(struct rk_hdptx_phy *hdptx,
- static int rk_hdptx_ropll_tmds_mode_config(struct rk_hdptx_phy *hdptx,
- unsigned int rate)
- {
-- u32 val;
-- int ret;
--
-- ret = regmap_read(hdptx->grf, GRF_HDPTX_STATUS, &val);
-- if (ret)
-- return ret;
--
-- if (!(val & HDPTX_O_PLL_LOCK_DONE)) {
-- ret = rk_hdptx_ropll_tmds_cmn_config(hdptx, rate);
-- if (ret)
-- return ret;
-- }
--
- rk_hdptx_multi_reg_write(hdptx, rk_hdtpx_common_sb_init_seq);
-
- regmap_write(hdptx->regmap, LNTOP_REG(0200), 0x06);
-@@ -857,10 +855,68 @@ static int rk_hdptx_ropll_tmds_mode_config(struct rk_hdptx_phy *hdptx,
- return rk_hdptx_post_enable_lane(hdptx);
- }
-
-+static int rk_hdptx_phy_consumer_get(struct rk_hdptx_phy *hdptx,
-+ unsigned int rate)
-+{
-+ u32 status;
-+ int ret;
-+
-+ if (atomic_inc_return(&hdptx->usage_count) > 1)
-+ return 0;
-+
-+ ret = regmap_read(hdptx->grf, GRF_HDPTX_STATUS, &status);
-+ if (ret)
-+ goto dec_usage;
-+
-+ if (status & HDPTX_O_PLL_LOCK_DONE)
-+ dev_warn(hdptx->dev, "PLL locked by unknown consumer!\n");
-+
-+ if (rate) {
-+ ret = rk_hdptx_ropll_tmds_cmn_config(hdptx, rate);
-+ if (ret)
-+ goto dec_usage;
-+ }
-+
-+ return 0;
-+
-+dec_usage:
-+ atomic_dec(&hdptx->usage_count);
-+ return ret;
-+}
-+
-+static int rk_hdptx_phy_consumer_put(struct rk_hdptx_phy *hdptx, bool force)
-+{
-+ u32 status;
-+ int ret;
-+
-+ ret = atomic_dec_return(&hdptx->usage_count);
-+ if (ret > 0)
-+ return 0;
-+
-+ if (ret < 0) {
-+ dev_warn(hdptx->dev, "Usage count underflow!\n");
-+ ret = -EINVAL;
-+ } else {
-+ ret = regmap_read(hdptx->grf, GRF_HDPTX_STATUS, &status);
-+ if (!ret) {
-+ if (status & HDPTX_O_PLL_LOCK_DONE)
-+ rk_hdptx_phy_disable(hdptx);
-+ return 0;
-+ } else if (force) {
-+ return 0;
-+ }
-+ }
-+
-+ atomic_inc(&hdptx->usage_count);
-+ return ret;
-+}
-+
- static int rk_hdptx_phy_power_on(struct phy *phy)
- {
- struct rk_hdptx_phy *hdptx = phy_get_drvdata(phy);
- int bus_width = phy_get_bus_width(hdptx->phy);
-+ int ret;
-+
- /*
- * FIXME: Temporary workaround to pass pixel_clk_rate
- * from the HDMI bridge driver until phy_configure_opts_hdmi
-@@ -871,20 +927,22 @@ static int rk_hdptx_phy_power_on(struct phy *phy)
- dev_dbg(hdptx->dev, "%s bus_width=%x rate=%u\n",
- __func__, bus_width, rate);
-
-- return rk_hdptx_ropll_tmds_mode_config(hdptx, rate);
-+ ret = rk_hdptx_phy_consumer_get(hdptx, rate);
-+ if (ret)
-+ return ret;
-+
-+ ret = rk_hdptx_ropll_tmds_mode_config(hdptx, rate);
-+ if (ret)
-+ rk_hdptx_phy_consumer_put(hdptx, true);
-+
-+ return ret;
- }
-
- static int rk_hdptx_phy_power_off(struct phy *phy)
- {
- struct rk_hdptx_phy *hdptx = phy_get_drvdata(phy);
-- u32 val;
-- int ret;
-
-- ret = regmap_read(hdptx->grf, GRF_HDPTX_STATUS, &val);
-- if (ret == 0 && (val & HDPTX_O_PLL_LOCK_DONE))
-- rk_hdptx_phy_disable(hdptx);
--
-- return ret;
-+ return rk_hdptx_phy_consumer_put(hdptx, false);
- }
-
- static const struct phy_ops rk_hdptx_phy_ops = {
-@@ -893,6 +951,99 @@ static const struct phy_ops rk_hdptx_phy_ops = {
- .owner = THIS_MODULE,
- };
-
-+static struct rk_hdptx_phy *to_rk_hdptx_phy(struct clk_hw *hw)
-+{
-+ return container_of(hw, struct rk_hdptx_phy, hw);
-+}
-+
-+static int rk_hdptx_phy_clk_prepare(struct clk_hw *hw)
-+{
-+ struct rk_hdptx_phy *hdptx = to_rk_hdptx_phy(hw);
-+
-+ return rk_hdptx_phy_consumer_get(hdptx, hdptx->rate / 100);
-+}
-+
-+static void rk_hdptx_phy_clk_unprepare(struct clk_hw *hw)
-+{
-+ struct rk_hdptx_phy *hdptx = to_rk_hdptx_phy(hw);
-+
-+ rk_hdptx_phy_consumer_put(hdptx, true);
-+}
-+
-+static unsigned long rk_hdptx_phy_clk_recalc_rate(struct clk_hw *hw,
-+ unsigned long parent_rate)
-+{
-+ struct rk_hdptx_phy *hdptx = to_rk_hdptx_phy(hw);
-+
-+ return hdptx->rate;
-+}
-+
-+static long rk_hdptx_phy_clk_round_rate(struct clk_hw *hw, unsigned long rate,
-+ unsigned long *parent_rate)
-+{
-+ u32 bit_rate = rate / 100;
-+ int i;
-+
-+ if (rate > HDMI20_MAX_RATE)
-+ return rate;
-+
-+ for (i = 0; i < ARRAY_SIZE(ropll_tmds_cfg); i++)
-+ if (bit_rate == ropll_tmds_cfg[i].bit_rate)
-+ break;
-+
-+ if (i == ARRAY_SIZE(ropll_tmds_cfg) &&
-+ !rk_hdptx_phy_clk_pll_calc(bit_rate, NULL))
-+ return -EINVAL;
-+
-+ return rate;
-+}
-+
-+static int rk_hdptx_phy_clk_set_rate(struct clk_hw *hw, unsigned long rate,
-+ unsigned long parent_rate)
-+{
-+ struct rk_hdptx_phy *hdptx = to_rk_hdptx_phy(hw);
-+
-+ return rk_hdptx_ropll_tmds_cmn_config(hdptx, rate / 100);
-+}
-+
-+static const struct clk_ops hdptx_phy_clk_ops = {
-+ .prepare = rk_hdptx_phy_clk_prepare,
-+ .unprepare = rk_hdptx_phy_clk_unprepare,
-+ .recalc_rate = rk_hdptx_phy_clk_recalc_rate,
-+ .round_rate = rk_hdptx_phy_clk_round_rate,
-+ .set_rate = rk_hdptx_phy_clk_set_rate,
-+};
-+
-+static int rk_hdptx_phy_clk_register(struct rk_hdptx_phy *hdptx)
-+{
-+ struct device *dev = hdptx->dev;
-+ const char *name, *pname;
-+ struct clk *refclk;
-+ int ret, id;
-+
-+ refclk = devm_clk_get(dev, "ref");
-+ if (IS_ERR(refclk))
-+ return dev_err_probe(dev, PTR_ERR(refclk),
-+ "Failed to get ref clock\n");
-+
-+ id = of_alias_get_id(dev->of_node, "hdptxphy");
-+ name = id > 0 ? "clk_hdmiphy_pixel1" : "clk_hdmiphy_pixel0";
-+ pname = __clk_get_name(refclk);
-+
-+ hdptx->hw.init = CLK_HW_INIT(name, pname, &hdptx_phy_clk_ops,
-+ CLK_GET_RATE_NOCACHE);
-+
-+ ret = devm_clk_hw_register(dev, &hdptx->hw);
-+ if (ret)
-+ return dev_err_probe(dev, ret, "Failed to register clock\n");
-+
-+ ret = devm_of_clk_add_hw_provider(dev, of_clk_hw_simple_get, &hdptx->hw);
-+ if (ret)
-+ return dev_err_probe(dev, ret,
-+ "Failed to register clk provider\n");
-+ return 0;
-+}
-+
- static int rk_hdptx_phy_runtime_suspend(struct device *dev)
- {
- struct rk_hdptx_phy *hdptx = dev_get_drvdata(dev);
-@@ -987,7 +1138,7 @@ static int rk_hdptx_phy_probe(struct platform_device *pdev)
- reset_control_deassert(hdptx->rsts[RST_CMN].rstc);
- reset_control_deassert(hdptx->rsts[RST_INIT].rstc);
-
-- return 0;
-+ return rk_hdptx_phy_clk_register(hdptx);
- }
-
- static const struct dev_pm_ops rk_hdptx_phy_pm_ops = {
---
-Armbian
-
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/1023-arm64-dts-rockchip-add-PCIe-for-M.2-E-Key-to-rock-5a.patch b/patch/kernel/archive/rockchip-rk3588-6.11/1023-arm64-dts-rockchip-add-PCIe-for-M.2-E-Key-to-rock-5a.patch
deleted file mode 100644
index bd33b5976c41..000000000000
--- a/patch/kernel/archive/rockchip-rk3588-6.11/1023-arm64-dts-rockchip-add-PCIe-for-M.2-E-Key-to-rock-5a.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: amazingfate
-Date: Thu, 28 Mar 2024 16:07:18 +0800
-Subject: arm64: dts: rockchip: add PCIe for M.2 E-Key to rock-5a
-
----
- arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts b/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
-+++ b/arch/arm64/boot/dts/rockchip/rk3588s-rock-5a.dts
-@@ -115,6 +115,10 @@ vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
- };
- };
-
-+&combphy0_ps {
-+ status = "okay";
-+};
-+
- &combphy2_psu {
- status = "okay";
- };
-@@ -299,6 +303,11 @@ rgmii_phy1: ethernet-phy@1 {
- };
- };
-
-+&pcie2x1l2 {
-+ status = "okay";
-+ reset-gpios = <&gpio3 RK_PD1 GPIO_ACTIVE_HIGH>;
-+};
-+
- &pinctrl {
- leds {
- io_led: io-led {
---
-Armbian
-
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/1051-arm64-dts-rockchip-nanopct6-lts-and-fixes-v6.patch b/patch/kernel/archive/rockchip-rk3588-6.11/1051-arm64-dts-rockchip-nanopct6-lts-and-fixes-v6.patch
deleted file mode 100644
index eb1dce1ab39e..000000000000
--- a/patch/kernel/archive/rockchip-rk3588-6.11/1051-arm64-dts-rockchip-nanopct6-lts-and-fixes-v6.patch
+++ /dev/null
@@ -1,2540 +0,0 @@
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Marcin Juszkiewicz
-Date: Thu, 29 Aug 2024 14:26:53 +0200
-Subject: arm64: dts: rockchip: prepare NanoPC-T6 for LTS board
-
-FriendlyELEC introduced a second version of NanoPC-T6 SBC.
-
-Create common include file and make NanoPC-T6 use it. Following
-patches will add LTS version.
-
-Signed-off-by: Marcin Juszkiewicz
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts | 932 +--------
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi | 945 ++++++++++
- 2 files changed, 947 insertions(+), 930 deletions(-)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts
-@@ -2,944 +2,16 @@
- /*
- * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
- * Copyright (c) 2023 Thomas McKahan
-+ * Copyright (c) 2024 Linaro Ltd.
- *
- */
-
- /dts-v1/;
-
--#include
--#include
--#include
--#include "rk3588.dtsi"
-+#include "rk3588-nanopc-t6.dtsi"
-
- / {
- model = "FriendlyElec NanoPC-T6";
- compatible = "friendlyarm,nanopc-t6", "rockchip,rk3588";
-
-- aliases {
-- mmc0 = &sdhci;
-- mmc1 = &sdmmc;
-- };
--
-- chosen {
-- stdout-path = "serial2:1500000n8";
-- };
--
-- leds {
-- compatible = "gpio-leds";
--
-- sys_led: led-0 {
-- gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
-- label = "system-led";
-- linux,default-trigger = "heartbeat";
-- pinctrl-names = "default";
-- pinctrl-0 = <&sys_led_pin>;
-- };
--
-- usr_led: led-1 {
-- gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
-- label = "user-led";
-- pinctrl-names = "default";
-- pinctrl-0 = <&usr_led_pin>;
-- };
-- };
--
-- sound {
-- compatible = "simple-audio-card";
-- pinctrl-names = "default";
-- pinctrl-0 = <&hp_det>;
--
-- simple-audio-card,name = "realtek,rt5616-codec";
-- simple-audio-card,format = "i2s";
-- simple-audio-card,mclk-fs = <256>;
--
-- simple-audio-card,hp-det-gpio = <&gpio1 RK_PC4 GPIO_ACTIVE_LOW>;
-- simple-audio-card,hp-pin-name = "Headphones";
--
-- simple-audio-card,widgets =
-- "Headphone", "Headphones",
-- "Microphone", "Microphone Jack";
-- simple-audio-card,routing =
-- "Headphones", "HPOL",
-- "Headphones", "HPOR",
-- "MIC1", "Microphone Jack",
-- "Microphone Jack", "micbias1";
--
-- simple-audio-card,cpu {
-- sound-dai = <&i2s0_8ch>;
-- };
-- simple-audio-card,codec {
-- sound-dai = <&rt5616>;
-- };
-- };
--
-- vcc12v_dcin: vcc12v-dcin-regulator {
-- compatible = "regulator-fixed";
-- regulator-name = "vcc12v_dcin";
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <12000000>;
-- regulator-max-microvolt = <12000000>;
-- };
--
-- /* vcc5v0_sys powers peripherals */
-- vcc5v0_sys: vcc5v0-sys-regulator {
-- compatible = "regulator-fixed";
-- regulator-name = "vcc5v0_sys";
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <5000000>;
-- regulator-max-microvolt = <5000000>;
-- vin-supply = <&vcc12v_dcin>;
-- };
--
-- /* vcc4v0_sys powers the RK806, RK860's */
-- vcc4v0_sys: vcc4v0-sys-regulator {
-- compatible = "regulator-fixed";
-- regulator-name = "vcc4v0_sys";
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <4000000>;
-- regulator-max-microvolt = <4000000>;
-- vin-supply = <&vcc12v_dcin>;
-- };
--
-- vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
-- compatible = "regulator-fixed";
-- regulator-name = "vcc-1v1-nldo-s3";
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <1100000>;
-- regulator-max-microvolt = <1100000>;
-- vin-supply = <&vcc4v0_sys>;
-- };
--
-- vcc_3v3_pcie20: vcc3v3-pcie20-regulator {
-- compatible = "regulator-fixed";
-- regulator-name = "vcc_3v3_pcie20";
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <3300000>;
-- regulator-max-microvolt = <3300000>;
-- vin-supply = <&vcc_3v3_s3>;
-- };
--
-- vbus5v0_typec: vbus5v0-typec-regulator {
-- compatible = "regulator-fixed";
-- enable-active-high;
-- gpio = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&typec5v_pwren>;
-- regulator-name = "vbus5v0_typec";
-- regulator-min-microvolt = <5000000>;
-- regulator-max-microvolt = <5000000>;
-- vin-supply = <&vcc5v0_sys>;
-- };
--
-- vcc3v3_pcie2x1l0: vcc3v3-pcie2x1l0-regulator {
-- compatible = "regulator-fixed";
-- enable-active-high;
-- gpio = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&pcie_m2_1_pwren>;
-- regulator-name = "vcc3v3_pcie2x1l0";
-- regulator-min-microvolt = <3300000>;
-- regulator-max-microvolt = <3300000>;
-- vin-supply = <&vcc5v0_sys>;
-- };
--
-- vcc3v3_pcie30: vcc3v3-pcie30-regulator {
-- compatible = "regulator-fixed";
-- enable-active-high;
-- gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&pcie_m2_0_pwren>;
-- regulator-name = "vcc3v3_pcie30";
-- regulator-min-microvolt = <3300000>;
-- regulator-max-microvolt = <3300000>;
-- vin-supply = <&vcc5v0_sys>;
-- };
--
-- vcc3v3_sd_s0: vcc3v3-sd-s0-regulator {
-- compatible = "regulator-fixed";
-- enable-active-low;
-- gpio = <&gpio4 RK_PA5 GPIO_ACTIVE_LOW>;
-- regulator-boot-on;
-- regulator-max-microvolt = <3300000>;
-- regulator-min-microvolt = <3300000>;
-- regulator-name = "vcc3v3_sd_s0";
-- vin-supply = <&vcc_3v3_s3>;
-- };
--
-- vdd_4g_3v3: vdd-4g-3v3-regulator {
-- compatible = "regulator-fixed";
-- enable-active-high;
-- gpio = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&pin_4g_lte_pwren>;
-- regulator-name = "vdd_4g_3v3";
-- regulator-min-microvolt = <3300000>;
-- regulator-max-microvolt = <3300000>;
-- vin-supply = <&vcc5v0_sys>;
-- };
--};
--
--&combphy0_ps {
-- status = "okay";
--};
--
--&combphy1_ps {
-- status = "okay";
--};
--
--&combphy2_psu {
-- status = "okay";
--};
--
--&cpu_l0 {
-- cpu-supply = <&vdd_cpu_lit_s0>;
--};
--
--&cpu_l1 {
-- cpu-supply = <&vdd_cpu_lit_s0>;
--};
--
--&cpu_l2 {
-- cpu-supply = <&vdd_cpu_lit_s0>;
--};
--
--&cpu_l3 {
-- cpu-supply = <&vdd_cpu_lit_s0>;
--};
--
--&cpu_b0 {
-- cpu-supply = <&vdd_cpu_big0_s0>;
--};
--
--&cpu_b1 {
-- cpu-supply = <&vdd_cpu_big0_s0>;
--};
--
--&cpu_b2 {
-- cpu-supply = <&vdd_cpu_big1_s0>;
--};
--
--&cpu_b3 {
-- cpu-supply = <&vdd_cpu_big1_s0>;
--};
--
--&gpio0 {
-- gpio-line-names = /* GPIO0 A0-A7 */
-- "", "", "", "",
-- "", "", "", "",
-- /* GPIO0 B0-B7 */
-- "", "", "", "",
-- "", "", "", "",
-- /* GPIO0 C0-C7 */
-- "", "", "", "",
-- "HEADER_10", "HEADER_08", "HEADER_32", "",
-- /* GPIO0 D0-D7 */
-- "", "", "", "",
-- "", "", "", "";
--};
--
--&gpio1 {
-- gpio-line-names = /* GPIO1 A0-A7 */
-- "HEADER_27", "HEADER_28", "", "",
-- "", "", "", "HEADER_15",
-- /* GPIO1 B0-B7 */
-- "HEADER_26", "HEADER_21", "HEADER_19", "HEADER_23",
-- "HEADER_24", "HEADER_22", "", "",
-- /* GPIO1 C0-C7 */
-- "", "", "", "",
-- "", "", "", "",
-- /* GPIO1 D0-D7 */
-- "", "", "", "",
-- "", "", "HEADER_05", "HEADER_03";
--};
--
--&gpio2 {
-- gpio-line-names = /* GPIO2 A0-A7 */
-- "", "", "", "",
-- "", "", "", "",
-- /* GPIO2 B0-B7 */
-- "", "", "", "",
-- "", "", "", "",
-- /* GPIO2 C0-C7 */
-- "", "CSI1_11", "CSI1_12", "",
-- "", "", "", "",
-- /* GPIO2 D0-D7 */
-- "", "", "", "",
-- "", "", "", "";
--};
--
--&gpio3 {
-- gpio-line-names = /* GPIO3 A0-A7 */
-- "HEADER_35", "HEADER_38", "HEADER_40", "HEADER_36",
-- "HEADER_37", "", "DSI0_12", "",
-- /* GPIO3 B0-B7 */
-- "HEADER_33", "DSI0_10", "HEADER_07", "HEADER_16",
-- "HEADER_18", "HEADER_29", "HEADER_31", "HEADER_12",
-- /* GPIO3 C0-C7 */
-- "DSI0_08", "DSI0_14", "HEADER_11", "HEADER_13",
-- "", "", "", "",
-- /* GPIO3 D0-D7 */
-- "", "", "", "",
-- "", "DSI1_10", "", "";
--};
--
--&gpio4 {
-- gpio-line-names = /* GPIO4 A0-A7 */
-- "DSI1_08", "DSI1_14", "", "DSI1_12",
-- "", "", "", "",
-- /* GPIO4 B0-B7 */
-- "", "", "", "",
-- "", "", "", "",
-- /* GPIO4 C0-C7 */
-- "", "", "", "",
-- "CSI0_11", "CSI0_12", "", "",
-- /* GPIO4 D0-D7 */
-- "", "", "", "",
-- "", "", "", "";
--};
--
--&i2c0 {
-- pinctrl-names = "default";
-- pinctrl-0 = <&i2c0m2_xfer>;
-- status = "okay";
--
-- vdd_cpu_big0_s0: regulator@42 {
-- compatible = "rockchip,rk8602";
-- reg = <0x42>;
-- fcs,suspend-voltage-selector = <1>;
-- regulator-name = "vdd_cpu_big0_s0";
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <550000>;
-- regulator-max-microvolt = <1050000>;
-- regulator-ramp-delay = <2300>;
-- vin-supply = <&vcc4v0_sys>;
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vdd_cpu_big1_s0: regulator@43 {
-- compatible = "rockchip,rk8603", "rockchip,rk8602";
-- reg = <0x43>;
-- fcs,suspend-voltage-selector = <1>;
-- regulator-name = "vdd_cpu_big1_s0";
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <550000>;
-- regulator-max-microvolt = <1050000>;
-- regulator-ramp-delay = <2300>;
-- vin-supply = <&vcc4v0_sys>;
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--};
--
--&i2c2 {
-- status = "okay";
--
-- vdd_npu_s0: regulator@42 {
-- compatible = "rockchip,rk8602";
-- reg = <0x42>;
-- rockchip,suspend-voltage-selector = <1>;
-- regulator-name = "vdd_npu_s0";
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <550000>;
-- regulator-max-microvolt = <950000>;
-- regulator-ramp-delay = <2300>;
-- vin-supply = <&vcc4v0_sys>;
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--};
--
--&i2c6 {
-- clock-frequency = <200000>;
-- status = "okay";
--
-- fusb302: typec-portc@22 {
-- compatible = "fcs,fusb302";
-- reg = <0x22>;
-- interrupt-parent = <&gpio0>;
-- interrupts = ;
-- pinctrl-0 = <&usbc0_int>;
-- pinctrl-names = "default";
-- vbus-supply = <&vbus5v0_typec>;
--
-- connector {
-- compatible = "usb-c-connector";
-- data-role = "dual";
-- label = "USB-C";
-- power-role = "dual";
-- try-power-role = "sink";
-- source-pdos = ;
-- sink-pdos = ;
-- op-sink-microwatt = <1000000>;
-- };
-- };
--
-- hym8563: rtc@51 {
-- compatible = "haoyu,hym8563";
-- reg = <0x51>;
-- #clock-cells = <0>;
-- clock-output-names = "hym8563";
-- pinctrl-names = "default";
-- pinctrl-0 = <&hym8563_int>;
-- interrupt-parent = <&gpio0>;
-- interrupts = ;
-- wakeup-source;
-- };
--};
--
--&i2c7 {
-- clock-frequency = <200000>;
-- status = "okay";
--
-- rt5616: codec@1b {
-- compatible = "realtek,rt5616";
-- reg = <0x1b>;
-- clocks = <&cru I2S0_8CH_MCLKOUT>;
-- clock-names = "mclk";
-- #sound-dai-cells = <0>;
-- assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
-- assigned-clock-rates = <12288000>;
--
-- port {
-- rt5616_p0_0: endpoint {
-- remote-endpoint = <&i2s0_8ch_p0_0>;
-- };
-- };
-- };
--
-- /* connected with MIPI-CSI1 */
--};
--
--&i2c8 {
-- pinctrl-0 = <&i2c8m2_xfer>;
--};
--
--&i2s0_8ch {
-- pinctrl-names = "default";
-- pinctrl-0 = <&i2s0_lrck
-- &i2s0_mclk
-- &i2s0_sclk
-- &i2s0_sdi0
-- &i2s0_sdo0>;
-- status = "okay";
--
-- i2s0_8ch_p0: port {
-- i2s0_8ch_p0_0: endpoint {
-- dai-format = "i2s";
-- mclk-fs = <256>;
-- remote-endpoint = <&rt5616_p0_0>;
-- };
-- };
--};
--
--&pcie2x1l0 {
-- reset-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>;
-- vpcie3v3-supply = <&vcc_3v3_pcie20>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&pcie2_0_rst>;
-- status = "okay";
--};
--
--&pcie2x1l1 {
-- reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
-- vpcie3v3-supply = <&vcc3v3_pcie2x1l0>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&pcie2_1_rst>;
-- status = "okay";
--};
--
--&pcie2x1l2 {
-- reset-gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>;
-- vpcie3v3-supply = <&vcc_3v3_pcie20>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&pcie2_2_rst>;
-- status = "okay";
--};
--
--&pcie30phy {
-- status = "okay";
--};
--
--&pcie3x4 {
-- reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
-- vpcie3v3-supply = <&vcc3v3_pcie30>;
-- status = "okay";
--};
--
--&pinctrl {
-- gpio-leds {
-- sys_led_pin: sys-led-pin {
-- rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
--
-- usr_led_pin: usr-led-pin {
-- rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
-- };
--
-- headphone {
-- hp_det: hp-det {
-- rockchip,pins = <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
-- };
--
-- hym8563 {
-- hym8563_int: hym8563-int {
-- rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
-- };
-- };
--
-- pcie {
-- pcie2_0_rst: pcie2-0-rst {
-- rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
--
-- pcie2_1_rst: pcie2-1-rst {
-- rockchip,pins = <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
--
-- pcie2_2_rst: pcie2-2-rst {
-- rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
--
-- pcie_m2_0_pwren: pcie-m20-pwren {
-- rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
--
-- pcie_m2_1_pwren: pcie-m21-pwren {
-- rockchip,pins = <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
-- };
--
-- usb {
-- pin_4g_lte_pwren: 4g-lte-pwren {
-- rockchip,pins = <4 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
--
-- typec5v_pwren: typec5v-pwren {
-- rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
--
-- usbc0_int: usbc0-int {
-- rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
-- };
-- };
--};
--
--&pwm1 {
-- pinctrl-0 = <&pwm1m1_pins>;
-- status = "okay";
--};
--
--&saradc {
-- vref-supply = <&avcc_1v8_s0>;
-- status = "okay";
--};
--
--&sdhci {
-- bus-width = <8>;
-- no-sdio;
-- no-sd;
-- non-removable;
-- max-frequency = <200000000>;
-- mmc-hs400-1_8v;
-- mmc-hs400-enhanced-strobe;
-- status = "okay";
--};
--
--&sdmmc {
-- bus-width = <4>;
-- cap-mmc-highspeed;
-- cap-sd-highspeed;
-- cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
-- disable-wp;
-- no-mmc;
-- no-sdio;
-- sd-uhs-sdr104;
-- vmmc-supply = <&vcc3v3_sd_s0>;
-- vqmmc-supply = <&vccio_sd_s0>;
-- status = "okay";
--};
--
--&spi2 {
-- status = "okay";
-- assigned-clocks = <&cru CLK_SPI2>;
-- assigned-clock-rates = <200000000>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
-- num-cs = <1>;
--
-- pmic@0 {
-- compatible = "rockchip,rk806";
-- spi-max-frequency = <1000000>;
-- reg = <0x0>;
--
-- interrupt-parent = <&gpio0>;
-- interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
--
-- pinctrl-names = "default";
-- pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
-- <&rk806_dvs2_null>, <&rk806_dvs3_null>;
--
-- system-power-controller;
--
-- vcc1-supply = <&vcc4v0_sys>;
-- vcc2-supply = <&vcc4v0_sys>;
-- vcc3-supply = <&vcc4v0_sys>;
-- vcc4-supply = <&vcc4v0_sys>;
-- vcc5-supply = <&vcc4v0_sys>;
-- vcc6-supply = <&vcc4v0_sys>;
-- vcc7-supply = <&vcc4v0_sys>;
-- vcc8-supply = <&vcc4v0_sys>;
-- vcc9-supply = <&vcc4v0_sys>;
-- vcc10-supply = <&vcc4v0_sys>;
-- vcc11-supply = <&vcc_2v0_pldo_s3>;
-- vcc12-supply = <&vcc4v0_sys>;
-- vcc13-supply = <&vcc_1v1_nldo_s3>;
-- vcc14-supply = <&vcc_1v1_nldo_s3>;
-- vcca-supply = <&vcc4v0_sys>;
--
-- gpio-controller;
-- #gpio-cells = <2>;
--
-- rk806_dvs1_null: dvs1-null-pins {
-- pins = "gpio_pwrctrl1";
-- function = "pin_fun0";
-- };
--
-- rk806_dvs2_null: dvs2-null-pins {
-- pins = "gpio_pwrctrl2";
-- function = "pin_fun0";
-- };
--
-- rk806_dvs3_null: dvs3-null-pins {
-- pins = "gpio_pwrctrl3";
-- function = "pin_fun0";
-- };
--
-- regulators {
-- vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
-- regulator-boot-on;
-- regulator-min-microvolt = <550000>;
-- regulator-max-microvolt = <950000>;
-- regulator-ramp-delay = <12500>;
-- regulator-name = "vdd_gpu_s0";
-- regulator-enable-ramp-delay = <400>;
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <550000>;
-- regulator-max-microvolt = <950000>;
-- regulator-ramp-delay = <12500>;
-- regulator-name = "vdd_cpu_lit_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vdd_log_s0: dcdc-reg3 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <675000>;
-- regulator-max-microvolt = <750000>;
-- regulator-ramp-delay = <12500>;
-- regulator-name = "vdd_log_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- regulator-suspend-microvolt = <750000>;
-- };
-- };
--
-- vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <550000>;
-- regulator-max-microvolt = <950000>;
-- regulator-init-microvolt = <750000>;
-- regulator-ramp-delay = <12500>;
-- regulator-name = "vdd_vdenc_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vdd_ddr_s0: dcdc-reg5 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <675000>;
-- regulator-max-microvolt = <900000>;
-- regulator-ramp-delay = <12500>;
-- regulator-name = "vdd_ddr_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- regulator-suspend-microvolt = <850000>;
-- };
-- };
--
-- vdd2_ddr_s3: dcdc-reg6 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-name = "vdd2_ddr_s3";
--
-- regulator-state-mem {
-- regulator-on-in-suspend;
-- };
-- };
--
-- vcc_2v0_pldo_s3: dcdc-reg7 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <2000000>;
-- regulator-max-microvolt = <2000000>;
-- regulator-ramp-delay = <12500>;
-- regulator-name = "vdd_2v0_pldo_s3";
--
-- regulator-state-mem {
-- regulator-on-in-suspend;
-- regulator-suspend-microvolt = <2000000>;
-- };
-- };
--
-- vcc_3v3_s3: dcdc-reg8 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <3300000>;
-- regulator-max-microvolt = <3300000>;
-- regulator-name = "vcc_3v3_s3";
--
-- regulator-state-mem {
-- regulator-on-in-suspend;
-- regulator-suspend-microvolt = <3300000>;
-- };
-- };
--
-- vddq_ddr_s0: dcdc-reg9 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-name = "vddq_ddr_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vcc_1v8_s3: dcdc-reg10 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <1800000>;
-- regulator-max-microvolt = <1800000>;
-- regulator-name = "vcc_1v8_s3";
--
-- regulator-state-mem {
-- regulator-on-in-suspend;
-- regulator-suspend-microvolt = <1800000>;
-- };
-- };
--
-- avcc_1v8_s0: pldo-reg1 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <1800000>;
-- regulator-max-microvolt = <1800000>;
-- regulator-name = "avcc_1v8_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vcc_1v8_s0: pldo-reg2 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <1800000>;
-- regulator-max-microvolt = <1800000>;
-- regulator-name = "vcc_1v8_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- regulator-suspend-microvolt = <1800000>;
-- };
-- };
--
-- avdd_1v2_s0: pldo-reg3 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <1200000>;
-- regulator-max-microvolt = <1200000>;
-- regulator-name = "avdd_1v2_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vcc_3v3_s0: pldo-reg4 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <3300000>;
-- regulator-max-microvolt = <3300000>;
-- regulator-ramp-delay = <12500>;
-- regulator-name = "vcc_3v3_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vccio_sd_s0: pldo-reg5 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <1800000>;
-- regulator-max-microvolt = <3300000>;
-- regulator-ramp-delay = <12500>;
-- regulator-name = "vccio_sd_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- pldo6_s3: pldo-reg6 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <1800000>;
-- regulator-max-microvolt = <1800000>;
-- regulator-name = "pldo6_s3";
--
-- regulator-state-mem {
-- regulator-on-in-suspend;
-- regulator-suspend-microvolt = <1800000>;
-- };
-- };
--
-- vdd_0v75_s3: nldo-reg1 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <750000>;
-- regulator-max-microvolt = <750000>;
-- regulator-name = "vdd_0v75_s3";
--
-- regulator-state-mem {
-- regulator-on-in-suspend;
-- regulator-suspend-microvolt = <750000>;
-- };
-- };
--
-- vdd_ddr_pll_s0: nldo-reg2 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <850000>;
-- regulator-max-microvolt = <850000>;
-- regulator-name = "vdd_ddr_pll_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- regulator-suspend-microvolt = <850000>;
-- };
-- };
--
-- avdd_0v75_s0: nldo-reg3 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <750000>;
-- regulator-max-microvolt = <750000>;
-- regulator-name = "avdd_0v75_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vdd_0v85_s0: nldo-reg4 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <850000>;
-- regulator-max-microvolt = <850000>;
-- regulator-name = "vdd_0v85_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
--
-- vdd_0v75_s0: nldo-reg5 {
-- regulator-always-on;
-- regulator-boot-on;
-- regulator-min-microvolt = <750000>;
-- regulator-max-microvolt = <750000>;
-- regulator-name = "vdd_0v75_s0";
--
-- regulator-state-mem {
-- regulator-off-in-suspend;
-- };
-- };
-- };
-- };
--};
--
--&tsadc {
-- status = "okay";
--};
--
--&uart2 {
-- pinctrl-0 = <&uart2m0_xfer>;
-- status = "okay";
--};
--
--&u2phy2_host {
-- phy-supply = <&vdd_4g_3v3>;
-- status = "okay";
--};
--
--&u2phy3_host {
-- status = "okay";
--};
--
--&u2phy2 {
-- status = "okay";
--};
--
--&u2phy3 {
-- status = "okay";
--};
--
--&usb_host0_ehci {
-- status = "okay";
--};
--
--&usb_host0_ohci {
-- status = "okay";
--};
--
--&usb_host1_ehci {
-- status = "okay";
--};
--
--&usb_host1_ohci {
-- status = "okay";
- };
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-new file mode 100644
-index 000000000000..111111111111
---- /dev/null
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-@@ -0,0 +1,945 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
-+ * Copyright (c) 2023 Thomas McKahan
-+ *
-+ */
-+
-+/dts-v1/;
-+
-+#include
-+#include
-+#include
-+#include "rk3588.dtsi"
-+
-+/ {
-+ model = "FriendlyElec NanoPC-T6";
-+ compatible = "friendlyarm,nanopc-t6", "rockchip,rk3588";
-+
-+ aliases {
-+ mmc0 = &sdhci;
-+ mmc1 = &sdmmc;
-+ };
-+
-+ chosen {
-+ stdout-path = "serial2:1500000n8";
-+ };
-+
-+ leds {
-+ compatible = "gpio-leds";
-+
-+ sys_led: led-0 {
-+ gpios = <&gpio2 RK_PB7 GPIO_ACTIVE_HIGH>;
-+ label = "system-led";
-+ linux,default-trigger = "heartbeat";
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&sys_led_pin>;
-+ };
-+
-+ usr_led: led-1 {
-+ gpios = <&gpio2 RK_PC0 GPIO_ACTIVE_HIGH>;
-+ label = "user-led";
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&usr_led_pin>;
-+ };
-+ };
-+
-+ sound {
-+ compatible = "simple-audio-card";
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&hp_det>;
-+
-+ simple-audio-card,name = "realtek,rt5616-codec";
-+ simple-audio-card,format = "i2s";
-+ simple-audio-card,mclk-fs = <256>;
-+
-+ simple-audio-card,hp-det-gpio = <&gpio1 RK_PC4 GPIO_ACTIVE_LOW>;
-+ simple-audio-card,hp-pin-name = "Headphones";
-+
-+ simple-audio-card,widgets =
-+ "Headphone", "Headphones",
-+ "Microphone", "Microphone Jack";
-+ simple-audio-card,routing =
-+ "Headphones", "HPOL",
-+ "Headphones", "HPOR",
-+ "MIC1", "Microphone Jack",
-+ "Microphone Jack", "micbias1";
-+
-+ simple-audio-card,cpu {
-+ sound-dai = <&i2s0_8ch>;
-+ };
-+ simple-audio-card,codec {
-+ sound-dai = <&rt5616>;
-+ };
-+ };
-+
-+ vcc12v_dcin: vcc12v-dcin-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc12v_dcin";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <12000000>;
-+ regulator-max-microvolt = <12000000>;
-+ };
-+
-+ /* vcc5v0_sys powers peripherals */
-+ vcc5v0_sys: vcc5v0-sys-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc5v0_sys";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ vin-supply = <&vcc12v_dcin>;
-+ };
-+
-+ /* vcc4v0_sys powers the RK806, RK860's */
-+ vcc4v0_sys: vcc4v0-sys-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc4v0_sys";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <4000000>;
-+ regulator-max-microvolt = <4000000>;
-+ vin-supply = <&vcc12v_dcin>;
-+ };
-+
-+ vcc_1v1_nldo_s3: vcc-1v1-nldo-s3-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc-1v1-nldo-s3";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1100000>;
-+ regulator-max-microvolt = <1100000>;
-+ vin-supply = <&vcc4v0_sys>;
-+ };
-+
-+ vcc_3v3_pcie20: vcc3v3-pcie20-regulator {
-+ compatible = "regulator-fixed";
-+ regulator-name = "vcc_3v3_pcie20";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ vin-supply = <&vcc_3v3_s3>;
-+ };
-+
-+ vbus5v0_typec: vbus5v0-typec-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpio = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&typec5v_pwren>;
-+ regulator-name = "vbus5v0_typec";
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+
-+ vcc3v3_pcie2x1l0: vcc3v3-pcie2x1l0-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpio = <&gpio4 RK_PC2 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pcie_m2_1_pwren>;
-+ regulator-name = "vcc3v3_pcie2x1l0";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+
-+ vcc3v3_pcie30: vcc3v3-pcie30-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpios = <&gpio2 RK_PC5 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pcie_m2_0_pwren>;
-+ regulator-name = "vcc3v3_pcie30";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+
-+ vcc3v3_sd_s0: vcc3v3-sd-s0-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-low;
-+ gpio = <&gpio4 RK_PA5 GPIO_ACTIVE_LOW>;
-+ regulator-boot-on;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-name = "vcc3v3_sd_s0";
-+ vin-supply = <&vcc_3v3_s3>;
-+ };
-+
-+ vdd_4g_3v3: vdd-4g-3v3-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpio = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pin_4g_lte_pwren>;
-+ regulator-name = "vdd_4g_3v3";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+};
-+
-+&combphy0_ps {
-+ status = "okay";
-+};
-+
-+&combphy1_ps {
-+ status = "okay";
-+};
-+
-+&combphy2_psu {
-+ status = "okay";
-+};
-+
-+&cpu_l0 {
-+ cpu-supply = <&vdd_cpu_lit_s0>;
-+};
-+
-+&cpu_l1 {
-+ cpu-supply = <&vdd_cpu_lit_s0>;
-+};
-+
-+&cpu_l2 {
-+ cpu-supply = <&vdd_cpu_lit_s0>;
-+};
-+
-+&cpu_l3 {
-+ cpu-supply = <&vdd_cpu_lit_s0>;
-+};
-+
-+&cpu_b0 {
-+ cpu-supply = <&vdd_cpu_big0_s0>;
-+};
-+
-+&cpu_b1 {
-+ cpu-supply = <&vdd_cpu_big0_s0>;
-+};
-+
-+&cpu_b2 {
-+ cpu-supply = <&vdd_cpu_big1_s0>;
-+};
-+
-+&cpu_b3 {
-+ cpu-supply = <&vdd_cpu_big1_s0>;
-+};
-+
-+&gpio0 {
-+ gpio-line-names = /* GPIO0 A0-A7 */
-+ "", "", "", "",
-+ "", "", "", "",
-+ /* GPIO0 B0-B7 */
-+ "", "", "", "",
-+ "", "", "", "",
-+ /* GPIO0 C0-C7 */
-+ "", "", "", "",
-+ "HEADER_10", "HEADER_08", "HEADER_32", "",
-+ /* GPIO0 D0-D7 */
-+ "", "", "", "",
-+ "", "", "", "";
-+};
-+
-+&gpio1 {
-+ gpio-line-names = /* GPIO1 A0-A7 */
-+ "HEADER_27", "HEADER_28", "", "",
-+ "", "", "", "HEADER_15",
-+ /* GPIO1 B0-B7 */
-+ "HEADER_26", "HEADER_21", "HEADER_19", "HEADER_23",
-+ "HEADER_24", "HEADER_22", "", "",
-+ /* GPIO1 C0-C7 */
-+ "", "", "", "",
-+ "", "", "", "",
-+ /* GPIO1 D0-D7 */
-+ "", "", "", "",
-+ "", "", "HEADER_05", "HEADER_03";
-+};
-+
-+&gpio2 {
-+ gpio-line-names = /* GPIO2 A0-A7 */
-+ "", "", "", "",
-+ "", "", "", "",
-+ /* GPIO2 B0-B7 */
-+ "", "", "", "",
-+ "", "", "", "",
-+ /* GPIO2 C0-C7 */
-+ "", "CSI1_11", "CSI1_12", "",
-+ "", "", "", "",
-+ /* GPIO2 D0-D7 */
-+ "", "", "", "",
-+ "", "", "", "";
-+};
-+
-+&gpio3 {
-+ gpio-line-names = /* GPIO3 A0-A7 */
-+ "HEADER_35", "HEADER_38", "HEADER_40", "HEADER_36",
-+ "HEADER_37", "", "DSI0_12", "",
-+ /* GPIO3 B0-B7 */
-+ "HEADER_33", "DSI0_10", "HEADER_07", "HEADER_16",
-+ "HEADER_18", "HEADER_29", "HEADER_31", "HEADER_12",
-+ /* GPIO3 C0-C7 */
-+ "DSI0_08", "DSI0_14", "HEADER_11", "HEADER_13",
-+ "", "", "", "",
-+ /* GPIO3 D0-D7 */
-+ "", "", "", "",
-+ "", "DSI1_10", "", "";
-+};
-+
-+&gpio4 {
-+ gpio-line-names = /* GPIO4 A0-A7 */
-+ "DSI1_08", "DSI1_14", "", "DSI1_12",
-+ "", "", "", "",
-+ /* GPIO4 B0-B7 */
-+ "", "", "", "",
-+ "", "", "", "",
-+ /* GPIO4 C0-C7 */
-+ "", "", "", "",
-+ "CSI0_11", "CSI0_12", "", "",
-+ /* GPIO4 D0-D7 */
-+ "", "", "", "",
-+ "", "", "", "";
-+};
-+
-+&i2c0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&i2c0m2_xfer>;
-+ status = "okay";
-+
-+ vdd_cpu_big0_s0: regulator@42 {
-+ compatible = "rockchip,rk8602";
-+ reg = <0x42>;
-+ fcs,suspend-voltage-selector = <1>;
-+ regulator-name = "vdd_cpu_big0_s0";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <1050000>;
-+ regulator-ramp-delay = <2300>;
-+ vin-supply = <&vcc4v0_sys>;
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_cpu_big1_s0: regulator@43 {
-+ compatible = "rockchip,rk8603", "rockchip,rk8602";
-+ reg = <0x43>;
-+ fcs,suspend-voltage-selector = <1>;
-+ regulator-name = "vdd_cpu_big1_s0";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <1050000>;
-+ regulator-ramp-delay = <2300>;
-+ vin-supply = <&vcc4v0_sys>;
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+};
-+
-+&i2c2 {
-+ status = "okay";
-+
-+ vdd_npu_s0: regulator@42 {
-+ compatible = "rockchip,rk8602";
-+ reg = <0x42>;
-+ rockchip,suspend-voltage-selector = <1>;
-+ regulator-name = "vdd_npu_s0";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <950000>;
-+ regulator-ramp-delay = <2300>;
-+ vin-supply = <&vcc4v0_sys>;
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+};
-+
-+&i2c6 {
-+ clock-frequency = <200000>;
-+ status = "okay";
-+
-+ fusb302: typec-portc@22 {
-+ compatible = "fcs,fusb302";
-+ reg = <0x22>;
-+ interrupt-parent = <&gpio0>;
-+ interrupts = ;
-+ pinctrl-0 = <&usbc0_int>;
-+ pinctrl-names = "default";
-+ vbus-supply = <&vbus5v0_typec>;
-+
-+ connector {
-+ compatible = "usb-c-connector";
-+ data-role = "dual";
-+ label = "USB-C";
-+ power-role = "dual";
-+ try-power-role = "sink";
-+ source-pdos = ;
-+ sink-pdos = ;
-+ op-sink-microwatt = <1000000>;
-+ };
-+ };
-+
-+ hym8563: rtc@51 {
-+ compatible = "haoyu,hym8563";
-+ reg = <0x51>;
-+ #clock-cells = <0>;
-+ clock-output-names = "hym8563";
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&hym8563_int>;
-+ interrupt-parent = <&gpio0>;
-+ interrupts = ;
-+ wakeup-source;
-+ };
-+};
-+
-+&i2c7 {
-+ clock-frequency = <200000>;
-+ status = "okay";
-+
-+ rt5616: codec@1b {
-+ compatible = "realtek,rt5616";
-+ reg = <0x1b>;
-+ clocks = <&cru I2S0_8CH_MCLKOUT>;
-+ clock-names = "mclk";
-+ #sound-dai-cells = <0>;
-+ assigned-clocks = <&cru I2S0_8CH_MCLKOUT>;
-+ assigned-clock-rates = <12288000>;
-+
-+ port {
-+ rt5616_p0_0: endpoint {
-+ remote-endpoint = <&i2s0_8ch_p0_0>;
-+ };
-+ };
-+ };
-+
-+ /* connected with MIPI-CSI1 */
-+};
-+
-+&i2c8 {
-+ pinctrl-0 = <&i2c8m2_xfer>;
-+};
-+
-+&i2s0_8ch {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&i2s0_lrck
-+ &i2s0_mclk
-+ &i2s0_sclk
-+ &i2s0_sdi0
-+ &i2s0_sdo0>;
-+ status = "okay";
-+
-+ i2s0_8ch_p0: port {
-+ i2s0_8ch_p0_0: endpoint {
-+ dai-format = "i2s";
-+ mclk-fs = <256>;
-+ remote-endpoint = <&rt5616_p0_0>;
-+ };
-+ };
-+};
-+
-+&pcie2x1l0 {
-+ reset-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>;
-+ vpcie3v3-supply = <&vcc_3v3_pcie20>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pcie2_0_rst>;
-+ status = "okay";
-+};
-+
-+&pcie2x1l1 {
-+ reset-gpios = <&gpio4 RK_PA2 GPIO_ACTIVE_HIGH>;
-+ vpcie3v3-supply = <&vcc3v3_pcie2x1l0>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pcie2_1_rst>;
-+ status = "okay";
-+};
-+
-+&pcie2x1l2 {
-+ reset-gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_HIGH>;
-+ vpcie3v3-supply = <&vcc_3v3_pcie20>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pcie2_2_rst>;
-+ status = "okay";
-+};
-+
-+&pcie30phy {
-+ status = "okay";
-+};
-+
-+&pcie3x4 {
-+ reset-gpios = <&gpio4 RK_PB6 GPIO_ACTIVE_HIGH>;
-+ vpcie3v3-supply = <&vcc3v3_pcie30>;
-+ status = "okay";
-+};
-+
-+&pinctrl {
-+ gpio-leds {
-+ sys_led_pin: sys-led-pin {
-+ rockchip,pins = <2 RK_PB7 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ usr_led_pin: usr-led-pin {
-+ rockchip,pins = <2 RK_PC0 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+
-+ headphone {
-+ hp_det: hp-det {
-+ rockchip,pins = <1 RK_PC4 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+
-+ hym8563 {
-+ hym8563_int: hym8563-int {
-+ rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>;
-+ };
-+ };
-+
-+ pcie {
-+ pcie2_0_rst: pcie2-0-rst {
-+ rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ pcie2_1_rst: pcie2-1-rst {
-+ rockchip,pins = <4 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ pcie2_2_rst: pcie2-2-rst {
-+ rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ pcie_m2_0_pwren: pcie-m20-pwren {
-+ rockchip,pins = <2 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ pcie_m2_1_pwren: pcie-m21-pwren {
-+ rockchip,pins = <4 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+
-+ usb {
-+ pin_4g_lte_pwren: 4g-lte-pwren {
-+ rockchip,pins = <4 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ typec5v_pwren: typec5v-pwren {
-+ rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
-+ usbc0_int: usbc0-int {
-+ rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
-+ };
-+ };
-+};
-+
-+&pwm1 {
-+ pinctrl-0 = <&pwm1m1_pins>;
-+ status = "okay";
-+};
-+
-+&saradc {
-+ vref-supply = <&avcc_1v8_s0>;
-+ status = "okay";
-+};
-+
-+&sdhci {
-+ bus-width = <8>;
-+ no-sdio;
-+ no-sd;
-+ non-removable;
-+ max-frequency = <200000000>;
-+ mmc-hs400-1_8v;
-+ mmc-hs400-enhanced-strobe;
-+ status = "okay";
-+};
-+
-+&sdmmc {
-+ bus-width = <4>;
-+ cap-mmc-highspeed;
-+ cap-sd-highspeed;
-+ cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_LOW>;
-+ disable-wp;
-+ no-mmc;
-+ no-sdio;
-+ sd-uhs-sdr104;
-+ vmmc-supply = <&vcc3v3_sd_s0>;
-+ vqmmc-supply = <&vccio_sd_s0>;
-+ status = "okay";
-+};
-+
-+&spi2 {
-+ status = "okay";
-+ assigned-clocks = <&cru CLK_SPI2>;
-+ assigned-clock-rates = <200000000>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&spi2m2_cs0 &spi2m2_pins>;
-+ num-cs = <1>;
-+
-+ pmic@0 {
-+ compatible = "rockchip,rk806";
-+ spi-max-frequency = <1000000>;
-+ reg = <0x0>;
-+
-+ interrupt-parent = <&gpio0>;
-+ interrupts = <7 IRQ_TYPE_LEVEL_LOW>;
-+
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pmic_pins>, <&rk806_dvs1_null>,
-+ <&rk806_dvs2_null>, <&rk806_dvs3_null>;
-+
-+ system-power-controller;
-+
-+ vcc1-supply = <&vcc4v0_sys>;
-+ vcc2-supply = <&vcc4v0_sys>;
-+ vcc3-supply = <&vcc4v0_sys>;
-+ vcc4-supply = <&vcc4v0_sys>;
-+ vcc5-supply = <&vcc4v0_sys>;
-+ vcc6-supply = <&vcc4v0_sys>;
-+ vcc7-supply = <&vcc4v0_sys>;
-+ vcc8-supply = <&vcc4v0_sys>;
-+ vcc9-supply = <&vcc4v0_sys>;
-+ vcc10-supply = <&vcc4v0_sys>;
-+ vcc11-supply = <&vcc_2v0_pldo_s3>;
-+ vcc12-supply = <&vcc4v0_sys>;
-+ vcc13-supply = <&vcc_1v1_nldo_s3>;
-+ vcc14-supply = <&vcc_1v1_nldo_s3>;
-+ vcca-supply = <&vcc4v0_sys>;
-+
-+ gpio-controller;
-+ #gpio-cells = <2>;
-+
-+ rk806_dvs1_null: dvs1-null-pins {
-+ pins = "gpio_pwrctrl1";
-+ function = "pin_fun0";
-+ };
-+
-+ rk806_dvs2_null: dvs2-null-pins {
-+ pins = "gpio_pwrctrl2";
-+ function = "pin_fun0";
-+ };
-+
-+ rk806_dvs3_null: dvs3-null-pins {
-+ pins = "gpio_pwrctrl3";
-+ function = "pin_fun0";
-+ };
-+
-+ regulators {
-+ vdd_gpu_s0: vdd_gpu_mem_s0: dcdc-reg1 {
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <950000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_gpu_s0";
-+ regulator-enable-ramp-delay = <400>;
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_cpu_lit_s0: vdd_cpu_lit_mem_s0: dcdc-reg2 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <950000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_cpu_lit_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_log_s0: dcdc-reg3 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <675000>;
-+ regulator-max-microvolt = <750000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_log_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <750000>;
-+ };
-+ };
-+
-+ vdd_vdenc_s0: vdd_vdenc_mem_s0: dcdc-reg4 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <550000>;
-+ regulator-max-microvolt = <950000>;
-+ regulator-init-microvolt = <750000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_vdenc_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_ddr_s0: dcdc-reg5 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <675000>;
-+ regulator-max-microvolt = <900000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_ddr_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <850000>;
-+ };
-+ };
-+
-+ vdd2_ddr_s3: dcdc-reg6 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-name = "vdd2_ddr_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ };
-+ };
-+
-+ vcc_2v0_pldo_s3: dcdc-reg7 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <2000000>;
-+ regulator-max-microvolt = <2000000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vdd_2v0_pldo_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <2000000>;
-+ };
-+ };
-+
-+ vcc_3v3_s3: dcdc-reg8 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-name = "vcc_3v3_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <3300000>;
-+ };
-+ };
-+
-+ vddq_ddr_s0: dcdc-reg9 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-name = "vddq_ddr_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vcc_1v8_s3: dcdc-reg10 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-name = "vcc_1v8_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <1800000>;
-+ };
-+ };
-+
-+ avcc_1v8_s0: pldo-reg1 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-name = "avcc_1v8_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vcc_1v8_s0: pldo-reg2 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-name = "vcc_1v8_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <1800000>;
-+ };
-+ };
-+
-+ avdd_1v2_s0: pldo-reg3 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1200000>;
-+ regulator-max-microvolt = <1200000>;
-+ regulator-name = "avdd_1v2_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vcc_3v3_s0: pldo-reg4 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vcc_3v3_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vccio_sd_s0: pldo-reg5 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <3300000>;
-+ regulator-ramp-delay = <12500>;
-+ regulator-name = "vccio_sd_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ pldo6_s3: pldo-reg6 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <1800000>;
-+ regulator-max-microvolt = <1800000>;
-+ regulator-name = "pldo6_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <1800000>;
-+ };
-+ };
-+
-+ vdd_0v75_s3: nldo-reg1 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <750000>;
-+ regulator-max-microvolt = <750000>;
-+ regulator-name = "vdd_0v75_s3";
-+
-+ regulator-state-mem {
-+ regulator-on-in-suspend;
-+ regulator-suspend-microvolt = <750000>;
-+ };
-+ };
-+
-+ vdd_ddr_pll_s0: nldo-reg2 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <850000>;
-+ regulator-max-microvolt = <850000>;
-+ regulator-name = "vdd_ddr_pll_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ regulator-suspend-microvolt = <850000>;
-+ };
-+ };
-+
-+ avdd_0v75_s0: nldo-reg3 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <750000>;
-+ regulator-max-microvolt = <750000>;
-+ regulator-name = "avdd_0v75_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_0v85_s0: nldo-reg4 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <850000>;
-+ regulator-max-microvolt = <850000>;
-+ regulator-name = "vdd_0v85_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+
-+ vdd_0v75_s0: nldo-reg5 {
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-min-microvolt = <750000>;
-+ regulator-max-microvolt = <750000>;
-+ regulator-name = "vdd_0v75_s0";
-+
-+ regulator-state-mem {
-+ regulator-off-in-suspend;
-+ };
-+ };
-+ };
-+ };
-+};
-+
-+&tsadc {
-+ status = "okay";
-+};
-+
-+&uart2 {
-+ pinctrl-0 = <&uart2m0_xfer>;
-+ status = "okay";
-+};
-+
-+&u2phy2_host {
-+ phy-supply = <&vdd_4g_3v3>;
-+ status = "okay";
-+};
-+
-+&u2phy3_host {
-+ status = "okay";
-+};
-+
-+&u2phy2 {
-+ status = "okay";
-+};
-+
-+&u2phy3 {
-+ status = "okay";
-+};
-+
-+&usb_host0_ehci {
-+ status = "okay";
-+};
-+
-+&usb_host0_ohci {
-+ status = "okay";
-+};
-+
-+&usb_host1_ehci {
-+ status = "okay";
-+};
-+
-+&usb_host1_ohci {
-+ status = "okay";
-+};
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Marcin Juszkiewicz
-Date: Thu, 29 Aug 2024 14:26:54 +0200
-Subject: arm64: dts: rockchip: move NanoPC-T6 parts to DTS
-
-MiniPCIe slot is present only in first version of NanoPC-T6 (2301).
-
-Signed-off-by: Marcin Juszkiewicz
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts | 24 ++++++++++
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi | 17 -------
- 2 files changed, 24 insertions(+), 17 deletions(-)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dts
-@@ -14,4 +14,28 @@ / {
- model = "FriendlyElec NanoPC-T6";
- compatible = "friendlyarm,nanopc-t6", "rockchip,rk3588";
-
-+ vdd_4g_3v3: vdd-4g-3v3-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpio = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&pin_4g_lte_pwren>;
-+ regulator-name = "vdd_4g_3v3";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+};
-+
-+&pinctrl {
-+ usb {
-+ pin_4g_lte_pwren: 4g-lte-pwren {
-+ rockchip,pins = <4 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+};
-+
-+&u2phy2_host {
-+ phy-supply = <&vdd_4g_3v3>;
-+ status = "okay";
- };
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-@@ -170,18 +170,6 @@ vcc3v3_sd_s0: vcc3v3-sd-s0-regulator {
- regulator-name = "vcc3v3_sd_s0";
- vin-supply = <&vcc_3v3_s3>;
- };
--
-- vdd_4g_3v3: vdd-4g-3v3-regulator {
-- compatible = "regulator-fixed";
-- enable-active-high;
-- gpio = <&gpio4 RK_PC6 GPIO_ACTIVE_HIGH>;
-- pinctrl-names = "default";
-- pinctrl-0 = <&pin_4g_lte_pwren>;
-- regulator-name = "vdd_4g_3v3";
-- regulator-min-microvolt = <3300000>;
-- regulator-max-microvolt = <3300000>;
-- vin-supply = <&vcc5v0_sys>;
-- };
- };
-
- &combphy0_ps {
-@@ -527,10 +515,6 @@ pcie_m2_1_pwren: pcie-m21-pwren {
- };
-
- usb {
-- pin_4g_lte_pwren: 4g-lte-pwren {
-- rockchip,pins = <4 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none>;
-- };
--
- typec5v_pwren: typec5v-pwren {
- rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
- };
-@@ -912,7 +896,6 @@ &uart2 {
- };
-
- &u2phy2_host {
-- phy-supply = <&vdd_4g_3v3>;
- status = "okay";
- };
-
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Marcin Juszkiewicz
-Date: Thu, 29 Aug 2024 14:26:55 +0200
-Subject: arm64: dts: rockchip: add NanoPC-T6 LTS
-
-In the LTS (2310) version the miniPCIe slot got removed and USB 2.0
-setup has changed. There are two external accessible ports and two ports
-on the internal header.
-
-There is an on-board USB hub which provides:
-- one external connector (bottom one)
-- two internal ports on pin header
-- one port for m.2 E connector
-
-The top USB 2.0 connector comes directly from the SoC.
-
-Signed-off-by: Marcin Juszkiewicz
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts | 61 ++++++++++
- 1 file changed, 61 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts
-new file mode 100644
-index 000000000000..111111111111
---- /dev/null
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts
-@@ -0,0 +1,61 @@
-+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
-+/*
-+ * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
-+ * Copyright (c) 2023 Thomas McKahan
-+ * Copyright (c) 2024 Linaro Ltd.
-+ *
-+ */
-+
-+/dts-v1/;
-+
-+#include "rk3588-nanopc-t6.dtsi"
-+
-+/ {
-+ model = "FriendlyElec NanoPC-T6 LTS";
-+ compatible = "friendlyarm,nanopc-t6-lts", "rockchip,rk3588";
-+
-+ /* provide power for on-board USB 2.0 hub */
-+ vcc5v0_usb20_host: vcc5v0-usb20-host-regulator {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpio = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>;
-+ pinctrl-0 = <&usb20_host_pwren>;
-+ pinctrl-names = "default";
-+ regulator-always-on;
-+ regulator-boot-on;
-+ regulator-max-microvolt = <5000000>;
-+ regulator-min-microvolt = <5000000>;
-+ regulator-name = "vcc5v0_usb20_host";
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+};
-+
-+&pinctrl {
-+ usb {
-+ usb20_host_pwren: usb20-host-pwren {
-+ rockchip,pins = <1 RK_PA4 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+};
-+
-+&u2phy1 {
-+ status = "okay";
-+};
-+
-+&u2phy1_otg {
-+ status = "okay";
-+};
-+
-+&u2phy2_host {
-+ phy-supply = <&vcc5v0_usb20_host>;
-+ status = "okay";
-+};
-+
-+&usbdp_phy1 {
-+ status = "okay";
-+};
-+
-+&usb_host1_xhci {
-+ dr_mode = "host";
-+ status = "okay";
-+};
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Marcin Juszkiewicz
-Date: Thu, 29 Aug 2024 14:26:56 +0200
-Subject: arm64: dts: rockchip: add SPI flash on NanoPC-T6
-
-FriendlyELEC NanoPC-T6 has optional SPI flash chip on-board.
-It is populated with 32MB one on LTS version.
-
-Signed-off-by: Marcin Juszkiewicz
-Reviewed-by: Jonas Karlman
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi | 15 ++++++++++
- 1 file changed, 15 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-@@ -560,6 +560,21 @@ &sdmmc {
- status = "okay";
- };
-
-+/* optional on non-LTS, populated on LTS version */
-+&sfc {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&fspim1_pins>;
-+ status = "okay";
-+
-+ flash@0 {
-+ compatible = "jedec,spi-nor";
-+ reg = <0>;
-+ spi-max-frequency = <104000000>;
-+ spi-rx-bus-width = <4>;
-+ spi-tx-bus-width = <1>;
-+ };
-+};
-+
- &spi2 {
- status = "okay";
- assigned-clocks = <&cru CLK_SPI2>;
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Marcin Juszkiewicz
-Date: Thu, 29 Aug 2024 14:26:57 +0200
-Subject: arm64: dts: rockchip: add IR-receiver to NanoPC-T6
-
-FriendlyELEC NanoPC-T6 has IR receiver connected to PWM3_IR_M0 line
-which ends as GPIO0_D4.
-
-Signed-off-by: Marcin Juszkiewicz
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi | 15 +++++++++-
- 1 file changed, 14 insertions(+), 1 deletion(-)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-@@ -25,6 +25,13 @@ chosen {
- stdout-path = "serial2:1500000n8";
- };
-
-+ ir-receiver {
-+ compatible = "gpio-ir-receiver";
-+ gpios = <&gpio0 RK_PD4 GPIO_ACTIVE_LOW>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&ir_receiver_pin>;
-+ };
-+
- leds {
- compatible = "gpio-leds";
-
-@@ -228,7 +235,7 @@ &gpio0 {
- "HEADER_10", "HEADER_08", "HEADER_32", "",
- /* GPIO0 D0-D7 */
- "", "", "", "",
-- "", "", "", "";
-+ "IR receiver [PWM3_IR_M0]", "", "", "";
- };
-
- &gpio1 {
-@@ -492,6 +499,12 @@ hym8563_int: hym8563-int {
- };
- };
-
-+ ir-receiver {
-+ ir_receiver_pin: ir-receiver-pin {
-+ rockchip,pins = <0 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+ };
-+
- pcie {
- pcie2_0_rst: pcie2-0-rst {
- rockchip,pins = <4 RK_PB3 RK_FUNC_GPIO &pcfg_pull_none>;
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Marcin Juszkiewicz
-Date: Thu, 29 Aug 2024 14:26:58 +0200
-Subject: arm64: dts: rockchip: enable GPU on NanoPC-T6
-
-Enable the Mali GPU on FriendlyELEC NanoPC-T6
-
-Signed-off-by: Marcin Juszkiewicz
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-@@ -298,6 +298,11 @@ &gpio4 {
- "", "", "", "";
- };
-
-+&gpu {
-+ mali-supply = <&vdd_gpu_s0>;
-+ status = "okay";
-+};
-+
- &i2c0 {
- pinctrl-names = "default";
- pinctrl-0 = <&i2c0m2_xfer>;
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Marcin Juszkiewicz
-Date: Thu, 29 Aug 2024 14:26:59 +0200
-Subject: arm64: dts: rockchip: enable USB-C on NanoPC-T6
-
-Enable the USB-C port on FriendlyELEC NanoPC-T6.
-
-Works one way so far but still better than before.
-
-Signed-off-by: Marcin Juszkiewicz
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi | 76 +++++++++-
- 1 file changed, 72 insertions(+), 4 deletions(-)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-@@ -137,6 +137,8 @@ vbus5v0_typec: vbus5v0-typec-regulator {
- gpio = <&gpio1 RK_PD2 GPIO_ACTIVE_HIGH>;
- pinctrl-names = "default";
- pinctrl-0 = <&typec5v_pwren>;
-+ regulator-always-on;
-+ regulator-boot-on;
- regulator-name = "vbus5v0_typec";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
-@@ -381,11 +383,34 @@ connector {
- compatible = "usb-c-connector";
- data-role = "dual";
- label = "USB-C";
-- power-role = "dual";
-- try-power-role = "sink";
-+ power-role = "source";
- source-pdos = ;
-- sink-pdos = ;
-- op-sink-microwatt = <1000000>;
-+
-+ ports {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ port@0 {
-+ reg = <0>;
-+ usbc0_hs: endpoint {
-+ remote-endpoint = <&usb_host0_xhci_drd_sw>;
-+ };
-+ };
-+
-+ port@1 {
-+ reg = <1>;
-+ usbc0_ss: endpoint {
-+ remote-endpoint = <&usbdp_phy0_typec_ss>;
-+ };
-+ };
-+
-+ port@2 {
-+ reg = <2>;
-+ usbc0_sbu: endpoint {
-+ remote-endpoint = <&usbdp_phy0_typec_sbu>;
-+ };
-+ };
-+ };
- };
- };
-
-@@ -928,6 +953,14 @@ &uart2 {
- status = "okay";
- };
-
-+&u2phy0 {
-+ status = "okay";
-+};
-+
-+&u2phy0_otg {
-+ status = "okay";
-+};
-+
- &u2phy2_host {
- status = "okay";
- };
-@@ -944,6 +977,29 @@ &u2phy3 {
- status = "okay";
- };
-
-+&usbdp_phy0 {
-+ mode-switch;
-+ orientation-switch;
-+ sbu1-dc-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;
-+ sbu2-dc-gpios = <&gpio4 RK_PA7 GPIO_ACTIVE_HIGH>;
-+ status = "okay";
-+
-+ port {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ usbdp_phy0_typec_ss: endpoint@0 {
-+ reg = <0>;
-+ remote-endpoint = <&usbc0_ss>;
-+ };
-+
-+ usbdp_phy0_typec_sbu: endpoint@1 {
-+ reg = <1>;
-+ remote-endpoint = <&usbc0_sbu>;
-+ };
-+ };
-+};
-+
- &usb_host0_ehci {
- status = "okay";
- };
-@@ -952,6 +1008,18 @@ &usb_host0_ohci {
- status = "okay";
- };
-
-+&usb_host0_xhci {
-+ dr_mode = "host";
-+ status = "okay";
-+ usb-role-switch;
-+
-+ port {
-+ usb_host0_xhci_drd_sw: endpoint {
-+ remote-endpoint = <&usbc0_hs>;
-+ };
-+ };
-+};
-+
- &usb_host1_ehci {
- status = "okay";
- };
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Marcin Juszkiewicz
-Date: Thu, 29 Aug 2024 14:27:00 +0200
-Subject: arm64: dts: rockchip: add Mask Rom key on NanoPC-T6
-
-Mask Rom key is connected to SARADC and can be read from OS.
-
-Signed-off-by: Marcin Juszkiewicz
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi | 15 ++++++++++
- 1 file changed, 15 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-@@ -8,6 +8,7 @@
- /dts-v1/;
-
- #include
-+#include
- #include
- #include
- #include "rk3588.dtsi"
-@@ -21,6 +22,20 @@ aliases {
- mmc1 = &sdmmc;
- };
-
-+ adc-keys-0 {
-+ compatible = "adc-keys";
-+ io-channels = <&saradc 0>;
-+ io-channel-names = "buttons";
-+ keyup-threshold-microvolt = <1800000>;
-+ poll-interval = <100>;
-+
-+ button-maskrom {
-+ label = "Mask Rom";
-+ linux,code = ;
-+ press-threshold-microvolt = <2000>;
-+ };
-+ };
-+
- chosen {
- stdout-path = "serial2:1500000n8";
- };
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: SuperKali
-Date: Mon, 21 Oct 2024 13:21:03 +0000
-Subject: Add Missing parameters for USB3.0 and FAN
-
-Signed-off-by: SuperKali
----
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts | 4 -
- arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi | 58 ++++++++++
- 2 files changed, 58 insertions(+), 4 deletions(-)
-
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6-lts.dts
-@@ -42,10 +42,6 @@ &u2phy1 {
- status = "okay";
- };
-
--&u2phy1_otg {
-- status = "okay";
--};
--
- &u2phy2_host {
- phy-supply = <&vcc5v0_usb20_host>;
- status = "okay";
-diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-index 111111111111..222222222222 100644
---- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
-@@ -66,6 +66,15 @@ usr_led: led-1 {
- };
- };
-
-+ /* FAN */
-+ fan0: pwm-fan {
-+ compatible = "pwm-fan";
-+ #cooling-cells = <2>;
-+ cooling-levels = <100 160 190 200 215 235 255>;
-+ pwms = <&pwm1 0 50000 0>;
-+ fan-supply = <&vcc5v0_sys>;
-+ };
-+
- sound {
- compatible = "simple-audio-card";
- pinctrl-names = "default";
-@@ -172,6 +181,18 @@ vcc3v3_pcie2x1l0: vcc3v3-pcie2x1l0-regulator {
- vin-supply = <&vcc5v0_sys>;
- };
-
-+ vcc5v0_host_30: vcc5v0-host-30 {
-+ compatible = "regulator-fixed";
-+ enable-active-high;
-+ gpio = <&gpio4 RK_PB0 GPIO_ACTIVE_HIGH>;
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&vcc5v0_host30_en>;
-+ regulator-name = "vcc5v0_host_30";
-+ regulator-min-microvolt = <5000000>;
-+ regulator-max-microvolt = <5000000>;
-+ vin-supply = <&vcc5v0_sys>;
-+ };
-+
- vcc3v3_pcie30: vcc3v3-pcie30-regulator {
- compatible = "regulator-fixed";
- enable-active-high;
-@@ -487,6 +508,34 @@ i2s0_8ch_p0_0: endpoint {
- };
- };
-
-+&package_thermal {
-+ polling-delay = <1000>;
-+
-+ trips {
-+ package_fan0: package-fan0 {
-+ temperature = <55000>;
-+ hysteresis = <2000>;
-+ type = "active";
-+ };
-+ package_fan1: package-fan1 {
-+ temperature = <65000>;
-+ hysteresis = <2000>;
-+ type = "active";
-+ };
-+ };
-+
-+ cooling-maps {
-+ map1 {
-+ trip = <&package_fan0>;
-+ cooling-device = <&fan0 THERMAL_NO_LIMIT 1>;
-+ };
-+ map2 {
-+ trip = <&package_fan1>;
-+ cooling-device = <&fan0 2 THERMAL_NO_LIMIT>;
-+ };
-+ };
-+};
-+
- &pcie2x1l0 {
- reset-gpios = <&gpio4 RK_PB3 GPIO_ACTIVE_HIGH>;
- vpcie3v3-supply = <&vcc_3v3_pcie20>;
-@@ -577,6 +626,10 @@ typec5v_pwren: typec5v-pwren {
- rockchip,pins = <1 RK_PD2 RK_FUNC_GPIO &pcfg_pull_none>;
- };
-
-+ vcc5v0_host30_en: vcc5v0-host30-en {
-+ rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_pull_none>;
-+ };
-+
- usbc0_int: usbc0-int {
- rockchip,pins = <0 RK_PD3 RK_FUNC_GPIO &pcfg_pull_up>;
- };
-@@ -976,6 +1029,11 @@ &u2phy0_otg {
- status = "okay";
- };
-
-+&u2phy1_otg {
-+ phy-supply = <&vcc5v0_host_30>;
-+ status = "okay";
-+};
-+
- &u2phy2_host {
- status = "okay";
- };
---
-Armbian
-
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0000.patching_config.yaml b/patch/kernel/archive/rockchip-rk3588-6.12/0000.patching_config.yaml
similarity index 100%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0000.patching_config.yaml
rename to patch/kernel/archive/rockchip-rk3588-6.12/0000.patching_config.yaml
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0001-general-add-overlay-support.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0001-general-add-overlay-support.patch
similarity index 70%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0001-general-add-overlay-support.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0001-general-add-overlay-support.patch
index dffc72914d3f..267fd37eb3de 100644
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0001-general-add-overlay-support.patch
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0001-general-add-overlay-support.patch
@@ -1,11 +1,11 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino
-Date: Sun, 2 Jun 2024 21:53:01 +0200
+Date: Wed, 2 Oct 2024 19:30:34 +0300
Subject: compile .scr and install overlays in right path
---
scripts/Makefile.dtbinst | 13 +++++++++-
- scripts/Makefile.lib | 8 +++++-
+ scripts/Makefile.dtbs | 8 +++++-
2 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst
@@ -32,22 +32,19 @@ index 111111111111..222222222222 100644
endif # CONFIG_ARCH_WANT_FLAT_DTB_INSTALL
-diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
+diff --git a/scripts/Makefile.dtbs b/scripts/Makefile.dtbs
index 111111111111..222222222222 100644
---- a/scripts/Makefile.lib
-+++ b/scripts/Makefile.lib
-@@ -405,7 +405,7 @@ cmd_dtb_check = $(if $(dtb-check-enabled),; $(DT_CHECKER) $(DT_CHECKER_FLAGS) -u
-
+--- a/scripts/Makefile.dtbs
++++ b/scripts/Makefile.dtbs
+@@ -122,17 +122,23 @@ dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
quiet_cmd_dtc = DTC $(quiet_dtb_check_tag) $@
- cmd_dtc = $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
-- $(DTC) -o $@ -b 0 \
-+ $(DTC) -@ -o $@ -b 0 \
- $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) $(DTC_FLAGS) \
- -d $(depfile).dtc.tmp $(dtc-tmp) ; \
+ cmd_dtc = \
+ $(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
+- $(DTC) -o $@ -b 0 $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) \
++ $(DTC) -@ -o $@ -b 0 $(addprefix -i,$(dir $<) $(DTC_INCLUDE)) \
+ $(DTC_FLAGS) -d $(depfile).dtc.tmp $(dtc-tmp) ; \
cat $(depfile).pre.tmp $(depfile).dtc.tmp > $(depfile) \
-@@ -430,12 +430,18 @@ DT_TMP_SCHEMA := $(objtree)/$(DT_BINDING_DIR)/processed-schema.json
- dtb-check-enabled = $(if $(filter %.dtb, $@),y)
- endif
+ $(cmd_dtb_check)
+quiet_cmd_scr = MKIMAGE $@
+cmd_scr = mkimage -C none -A $(ARCH) -T script -d $< $@
@@ -61,9 +58,9 @@ index 111111111111..222222222222 100644
+$(obj)/%.scr: $(src)/%.scr-cmd FORCE
+ $(call if_changed,scr)
+
- dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
+ # targets
+ # ---------------------------------------------------------------------------
- # Bzip2
--
Armbian
diff --git a/patch/kernel/archive/rockchip-rk3588-6.12/0002-tools-disable-sched_ext_clean.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0002-tools-disable-sched_ext_clean.patch
new file mode 120000
index 000000000000..0d64596d7763
--- /dev/null
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0002-tools-disable-sched_ext_clean.patch
@@ -0,0 +1 @@
+../rockchip64-6.12/0001-tools-disable-sched_ext_clean.patch
\ No newline at end of file
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0010-fix-clk-divisions.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0010-fix-clk-divisions.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0010-fix-clk-divisions.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0010-fix-clk-divisions.patch
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0011-irqchip-fix-its-timeout-issue.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0011-irqchip-fix-its-timeout-issue.patch
similarity index 97%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0011-irqchip-fix-its-timeout-issue.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0011-irqchip-fix-its-timeout-issue.patch
index 84f63b711b75..2c6b3c3b9708 100644
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0011-irqchip-fix-its-timeout-issue.patch
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0011-irqchip-fix-its-timeout-issue.patch
@@ -177,7 +177,7 @@ index 111111111111..222222222222 100644
kfree(its_dev);
}
-@@ -5083,6 +5139,7 @@ static int __init its_probe_one(struct its_node *its)
+@@ -5099,6 +5155,7 @@ static int __init its_probe_one(struct its_node *its)
struct page *page;
u32 ctlr;
int err;
@@ -185,7 +185,7 @@ index 111111111111..222222222222 100644
its_enable_quirks(its);
-@@ -5116,7 +5173,10 @@ static int __init its_probe_one(struct its_node *its)
+@@ -5132,7 +5189,10 @@ static int __init its_probe_one(struct its_node *its)
}
}
@@ -197,7 +197,7 @@ index 111111111111..222222222222 100644
get_order(ITS_CMD_QUEUE_SZ));
if (!page) {
err = -ENOMEM;
-@@ -5145,6 +5205,11 @@ static int __init its_probe_one(struct its_node *its)
+@@ -5161,6 +5221,11 @@ static int __init its_probe_one(struct its_node *its)
if (its->flags & ITS_FLAGS_FORCE_NON_SHAREABLE)
tmp &= ~GITS_CBASER_SHAREABILITY_MASK;
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0024-RK3588-Add-Crypto-Support.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0024-RK3588-Add-Crypto-Support.patch
similarity index 99%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0024-RK3588-Add-Crypto-Support.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0024-RK3588-Add-Crypto-Support.patch
index 636d11ec130f..79a15e17a272 100644
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0024-RK3588-Add-Crypto-Support.patch
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0024-RK3588-Add-Crypto-Support.patch
@@ -103,7 +103,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk356x.dtsi b/arch/arm64/boot/dts/rock
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
-@@ -1113,6 +1113,18 @@ sdhci: mmc@fe310000 {
+@@ -1122,6 +1122,18 @@ rng: rng@fe388000 {
status = "disabled";
};
@@ -138,7 +138,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-@@ -1763,6 +1763,17 @@ sdhci: mmc@fe2e0000 {
+@@ -1879,6 +1879,17 @@ sdhci: mmc@fe2e0000 {
status = "disabled";
};
@@ -340,7 +340,7 @@ diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig
index 111111111111..222222222222 100644
--- a/drivers/crypto/Kconfig
+++ b/drivers/crypto/Kconfig
-@@ -653,6 +653,35 @@ config CRYPTO_DEV_TEGRA
+@@ -714,6 +714,35 @@ config CRYPTO_DEV_TEGRA
Select this to enable Tegra Security Engine which accelerates various
AES encryption/decryption and HASH algorithms.
@@ -1397,7 +1397,7 @@ index 000000000000..111111111111
+ *
+ * Copyright (c) 2022-2023 Corentin Labbe
+ */
-+#include
++#include
+#include
+#include "rk2_crypto.h"
+
diff --git a/patch/kernel/archive/rockchip-rk3588-6.12/0027-RK3588-Add-rkvdec2-Support-v3.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0027-RK3588-Add-rkvdec2-Support-v3.patch
new file mode 120000
index 000000000000..10a283585f9a
--- /dev/null
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0027-RK3588-Add-rkvdec2-Support-v3.patch
@@ -0,0 +1 @@
+../rockchip64-6.12/media-0001-Add-rkvdec2-Support-v3.patch
\ No newline at end of file
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0028-media-v4l2-core-Initialize-h264-frame_mbs_only_flag-.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0028-media-v4l2-core-Initialize-h264-frame_mbs_only_flag-.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0028-media-v4l2-core-Initialize-h264-frame_mbs_only_flag-.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0028-media-v4l2-core-Initialize-h264-frame_mbs_only_flag-.patch
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0113-add-synopsys-designware-hdmi-rx-controller.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0113-add-synopsys-designware-hdmi-rx-controller.patch
similarity index 99%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0113-add-synopsys-designware-hdmi-rx-controller.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0113-add-synopsys-designware-hdmi-rx-controller.patch
index facdd2bff61d..ad9521aa936a 100644
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0113-add-synopsys-designware-hdmi-rx-controller.patch
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0113-add-synopsys-designware-hdmi-rx-controller.patch
@@ -3929,7 +3929,7 @@ diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 111111111111..222222222222 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
-@@ -840,6 +840,7 @@ CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
+@@ -847,6 +847,7 @@ CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m
CONFIG_VIDEO_SAMSUNG_S5P_MFC=m
CONFIG_VIDEO_SUN6I_CSI=m
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0132-phy-phy-rockchip-samsung-hdptx-Add-FRL-EARC-support.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0132-phy-phy-rockchip-samsung-hdptx-Add-FRL-EARC-support.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0132-phy-phy-rockchip-samsung-hdptx-Add-FRL-EARC-support.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0132-phy-phy-rockchip-samsung-hdptx-Add-FRL-EARC-support.patch
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0133-drm-rockchip-vop2-Improve-display-modes-handling.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0133-drm-rockchip-vop2-Improve-display-modes-handling.patch
similarity index 100%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0133-drm-rockchip-vop2-Improve-display-modes-handling.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0133-drm-rockchip-vop2-Improve-display-modes-handling.patch
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0135-arm64-dts-rockchip-Add-HDMI0-bridge-CLK-to-rk3588.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0135-arm64-dts-rockchip-Add-HDMI0-bridge-CLK-to-rk3588.patch
similarity index 87%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0135-arm64-dts-rockchip-Add-HDMI0-bridge-CLK-to-rk3588.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0135-arm64-dts-rockchip-Add-HDMI0-bridge-CLK-to-rk3588.patch
index 4707239f4ad3..0a5952e54c44 100644
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0135-arm64-dts-rockchip-Add-HDMI0-bridge-CLK-to-rk3588.patch
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0135-arm64-dts-rockchip-Add-HDMI0-bridge-CLK-to-rk3588.patch
@@ -1,20 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Cristian Ciocaltea
-Date: Mon, 15 Jan 2024 22:47:41 +0200
-Subject: arm64: dts: rockchip: Add HDMI0 bridge to rk3588
+Date: Sat, 19 Oct 2024 13:12:10 +0300
+Subject: arm64: dts: rockchip: Add HDMI0 node to rk3588
-Add DT node for the HDMI0 bridge found on RK3588 SoC.
+Add support for the HDMI0 output port found on RK3588 SoC.
Signed-off-by: Cristian Ciocaltea
---
- arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 42 ++++++++++
- 1 file changed, 42 insertions(+)
+ arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 41 ++++++++++
+ 1 file changed, 41 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-@@ -1405,6 +1405,48 @@ i2s9_8ch: i2s@fddfc000 {
+@@ -1370,6 +1370,47 @@ i2s9_8ch: i2s@fddfc000 {
status = "disabled";
};
@@ -35,7 +35,6 @@ index 111111111111..222222222222 100644
+ ;
+ interrupt-names = "avp", "cec", "earc", "main", "hpd";
+ phys = <&hdptxphy_hdmi0>;
-+ phy-names = "hdmi";
+ pinctrl-names = "default";
+ pinctrl-0 = <&hdmim0_tx0_cec &hdmim0_tx0_hpd
+ &hdmim0_tx0_scl &hdmim0_tx0_sda>;
@@ -43,7 +42,7 @@ index 111111111111..222222222222 100644
+ resets = <&cru SRST_HDMITX0_REF>, <&cru SRST_HDMIHDP0>;
+ reset-names = "ref", "hdp";
+ rockchip,grf = <&sys_grf>;
-+ rockchip,vo1_grf = <&vo1_grf>;
++ rockchip,vo-grf = <&vo1_grf>;
+ status = "disabled";
+
+ ports {
@@ -81,7 +80,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
-@@ -2868,6 +2868,7 @@ hdptxphy_hdmi0: phy@fed60000 {
+@@ -2822,6 +2822,7 @@ hdptxphy_hdmi0: phy@fed60000 {
reg = <0x0 0xfed60000 0x0 0x2000>;
clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>, <&cru PCLK_HDPTX0>;
clock-names = "ref", "apb";
diff --git a/patch/kernel/archive/rockchip-rk3588-6.11/0134-drm-bridge-synopsys-Add-initial-support-for-DW-HDMI-Controller.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0140-drm-bridge-synopsys-Add-DW-HDMI-QP-TX-Controller-support-library.patch
similarity index 61%
rename from patch/kernel/archive/rockchip-rk3588-6.11/0134-drm-bridge-synopsys-Add-initial-support-for-DW-HDMI-Controller.patch
rename to patch/kernel/archive/rockchip-rk3588-6.12/0140-drm-bridge-synopsys-Add-DW-HDMI-QP-TX-Controller-support-library.patch
index 35f16d8ba3c8..2378873eb40d 100644
--- a/patch/kernel/archive/rockchip-rk3588-6.11/0134-drm-bridge-synopsys-Add-initial-support-for-DW-HDMI-Controller.patch
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0140-drm-bridge-synopsys-Add-DW-HDMI-QP-TX-Controller-support-library.patch
@@ -1,102 +1,10 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Cristian Ciocaltea
-Date: Fri, 26 Jul 2024 02:54:52 +0300
-Subject: dt-bindings: display: bridge: Add schema for Synopsys DW HDMI QP TX
- IP
+Date: Wed, 16 Oct 2024 23:06:51 +0300
+Subject: drm/bridge: synopsys: Add DW HDMI QP TX Controller support library
-Add dt-binding schema containing the common properties for the Synopsys
-DesignWare HDMI QP TX controller.
-
-Note this is not a full dt-binding specification, but is meant to be
-referenced by platform-specific bindings for this IP core.
-
-Signed-off-by: Cristian Ciocaltea
----
- Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi-qp.yaml | 66 ++++++++++
- 1 file changed, 66 insertions(+)
-
-diff --git a/Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi-qp.yaml b/Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi-qp.yaml
-new file mode 100644
-index 000000000000..111111111111
---- /dev/null
-+++ b/Documentation/devicetree/bindings/display/bridge/synopsys,dw-hdmi-qp.yaml
-@@ -0,0 +1,66 @@
-+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
-+%YAML 1.2
-+---
-+$id: http://devicetree.org/schemas/display/bridge/synopsys,dw-hdmi-qp.yaml#
-+$schema: http://devicetree.org/meta-schemas/core.yaml#
-+
-+title: Common Properties for Synopsys DesignWare HDMI QP TX Controller IP
-+
-+maintainers:
-+ - Cristian Ciocaltea
-+
-+description: |
-+ This document defines device tree properties for the Synopsys DesignWare
-+ HDMI 2.1 Quad-Pixel (QP) TX controller IP core.
-+ It doesn't constitute a device tree binding specification by itself, but
-+ is meant to be referenced by platform-specific device tree bindings.
-+
-+ When referenced from platform device tree bindings, the properties defined
-+ in this document are defined as follows. The platform device tree bindings
-+ are responsible for defining whether each property is required or optional.
-+
-+properties:
-+ reg:
-+ maxItems: 1
-+
-+ clocks:
-+ minItems: 4
-+ maxItems: 6
-+ items:
-+ - description: Peripheral/APB bus clock
-+ - description: EARC RX biphase clock
-+ - description: Reference clock
-+ - description: Audio interface clock
-+ additionalItems: true
-+
-+ clock-names:
-+ minItems: 4
-+ maxItems: 6
-+ items:
-+ - const: pclk
-+ - const: earc
-+ - const: ref
-+ - const: aud
-+ additionalItems: true
-+
-+ interrupts:
-+ minItems: 4
-+ maxItems: 5
-+ items:
-+ - description: AVP Unit interrupt
-+ - description: CEC interrupt
-+ - description: eARC RX interrupt
-+ - description: Main Unit interrupt
-+ additionalItems: true
-+
-+ interrupt-names:
-+ minItems: 4
-+ maxItems: 5
-+ items:
-+ - const: avp
-+ - const: cec
-+ - const: earc
-+ - const: main
-+ additionalItems: true
-+
-+additionalProperties: true
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Cristian Ciocaltea
-Date: Mon, 20 May 2024 14:49:50 +0300
-Subject: drm/bridge: synopsys: Add DW HDMI QP TX Controller driver
-
-The Synopsys DesignWare HDMI 2.1 Quad-Pixel (QP) TX Controller supports
-the following features, among others:
+The Synopsys DesignWare HDMI 2.1 Quad-Pixel (QP) TX Controller IP
+supports the following features, among others:
* Fixed Rate Link (FRL)
* Display Stream Compression (DSC)
@@ -110,19 +18,22 @@ the following features, among others:
* Multi-stream audio
* Enhanced Audio Return Channel (EARC)
-Add driver to enable basic support, i.e. RGB output up to 4K@60Hz,
-without audio, CEC or any HDMI 2.1 specific features.
+Add library containing common helpers to enable basic support, i.e. RGB
+output up to 4K@30Hz, without audio, CEC or any HDMI 2.1 specific
+features.
Co-developed-by: Algea Cao
Signed-off-by: Algea Cao
+Tested-by: Heiko Stuebner
+Reviewed-by: Maxime Ripard
Signed-off-by: Cristian Ciocaltea
---
drivers/gpu/drm/bridge/synopsys/Kconfig | 8 +
drivers/gpu/drm/bridge/synopsys/Makefile | 2 +
- drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 748 +++++++++
+ drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c | 647 +++++++
drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.h | 834 ++++++++++
- include/drm/bridge/dw_hdmi_qp.h | 37 +
- 5 files changed, 1629 insertions(+)
+ include/drm/bridge/dw_hdmi_qp.h | 32 +
+ 5 files changed, 1523 insertions(+)
diff --git a/drivers/gpu/drm/bridge/synopsys/Kconfig b/drivers/gpu/drm/bridge/synopsys/Kconfig
index 111111111111..222222222222 100644
@@ -159,7 +70,7 @@ new file mode 100644
index 000000000000..111111111111
--- /dev/null
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c
-@@ -0,0 +1,748 @@
+@@ -0,0 +1,647 @@
+// SPDX-License-Identifier: GPL-2.0-or-later
+/*
+ * Copyright (c) 2021-2022 Rockchip Electronics Co., Ltd.
@@ -168,7 +79,6 @@ index 000000000000..111111111111
+ * Author: Algea Cao
+ * Author: Cristian Ciocaltea
+ */
-+#include
+#include
+#include
+#include
@@ -176,16 +86,17 @@ index 000000000000..111111111111
+#include
+#include
+#include
++#include
+
+#include
++#include
+#include
-+#include
-+
+#include
+#include
+#include
+#include
+#include
++#include
+
+#include
+
@@ -194,10 +105,10 @@ index 000000000000..111111111111
+#define DDC_CI_ADDR 0x37
+#define DDC_SEGMENT_ADDR 0x30
+
-+#define SCDC_MIN_SOURCE_VERSION 0x1
-+
+#define HDMI14_MAX_TMDSCLK 340000000
+
++#define SCRAMB_POLL_DELAY_MS 3000
++
+struct dw_hdmi_qp_i2c {
+ struct i2c_adapter adap;
+
@@ -221,71 +132,9 @@ index 000000000000..111111111111
+ void *data;
+ } phy;
+
-+ struct clk *ref_clk;
-+
-+ struct drm_connector *curr_conn;
-+ unsigned long long pix_clock;
-+
+ struct regmap *regm;
+};
+
-+/* Filter out invalid setups to avoid configuring SCDC and scrambling */
-+static bool dw_hdmi_qp_support_scdc(struct dw_hdmi_qp *hdmi,
-+ const struct drm_display_info *display)
-+{
-+ /* Disable if no DDC bus */
-+ if (!hdmi->bridge.ddc)
-+ return false;
-+
-+ /* Disable if SCDC is not supported, or if an HF-VSDB block is absent */
-+ if (!display->hdmi.scdc.supported ||
-+ !display->hdmi.scdc.scrambling.supported)
-+ return false;
-+
-+ /*
-+ * Disable if display only support low TMDS rates and scrambling
-+ * for low rates is not supported either
-+ */
-+ if (!display->hdmi.scdc.scrambling.low_rates &&
-+ display->max_tmds_clock <= 340000)
-+ return false;
-+
-+ return true;
-+}
-+
-+int dw_hdmi_qp_set_refclk_rate(struct dw_hdmi_qp *hdmi, unsigned long rate)
-+{
-+ return clk_set_rate(hdmi->ref_clk, rate);
-+}
-+EXPORT_SYMBOL_GPL(dw_hdmi_qp_set_refclk_rate);
-+
-+/*
-+ * HDMI2.0 Specifies the following procedure for High TMDS Bit Rates:
-+ * - The Source shall suspend transmission of the TMDS clock and data
-+ *
-+ * - The Source shall write to the TMDS_Bit_Clock_Ratio bit to change it
-+ * from a 0 to a 1 or from a 1 to a 0
-+ *
-+ * - The Source shall allow a minimum of 1 ms and a maximum of 100 ms from
-+ * the time the TMDS_Bit_Clock_Ratio bit is written until resuming
-+ * transmission of TMDS clock and data
-+ *
-+ * To respect the 100ms max delay, the dw_hdmi_qp_set_high_tmds_clock_ratio()
-+ * helper should be called right before enabling the TMDS Clock and Data in
-+ * the PHY configuration callback.
-+ */
-+void dw_hdmi_qp_set_high_tmds_clock_ratio(struct dw_hdmi_qp *hdmi,
-+ const struct drm_display_info *display)
-+{
-+ bool set;
-+
-+ if (hdmi->curr_conn && dw_hdmi_qp_support_scdc(hdmi, display)) {
-+ set = (hdmi->pix_clock > HDMI14_MAX_TMDSCLK);
-+ drm_scdc_set_high_tmds_clock_ratio(hdmi->curr_conn, set);
-+ }
-+}
-+EXPORT_SYMBOL_GPL(dw_hdmi_qp_set_high_tmds_clock_ratio);
-+
+static void dw_hdmi_qp_write(struct dw_hdmi_qp *hdmi, unsigned int val,
+ int offset)
+{
@@ -424,7 +273,7 @@ index 000000000000..111111111111
+ }
+ }
+
-+ mutex_lock(&i2c->lock);
++ guard(mutex)(&i2c->lock);
+
+ /* Unmute DONE and ERROR interrupts */
+ dw_hdmi_qp_mod(hdmi, I2CM_NACK_RCVD_MASK_N | I2CM_OP_DONE_MASK_N,
@@ -469,8 +318,6 @@ index 000000000000..111111111111
+ dw_hdmi_qp_mod(hdmi, 0, I2CM_OP_DONE_MASK_N | I2CM_NACK_RCVD_MASK_N,
+ MAINUNIT_1_INT_MASK_N);
+
-+ mutex_unlock(&i2c->lock);
-+
+ return ret;
+}
+
@@ -587,43 +434,6 @@ index 000000000000..111111111111
+ return 0;
+}
+
-+static void dw_hdmi_qp_setup(struct dw_hdmi_qp *hdmi,
-+ struct drm_connector *connector)
-+{
-+ bool scramb;
-+ u8 ver;
-+
-+ if (!connector->display_info.is_hdmi) {
-+ dev_dbg(hdmi->dev, "%s DVI mode\n", __func__);
-+
-+ dw_hdmi_qp_mod(hdmi, HDCP2_BYPASS, HDCP2_BYPASS,
-+ HDCP2LOGIC_CONFIG0);
-+ dw_hdmi_qp_mod(hdmi, OPMODE_DVI, OPMODE_DVI, LINK_CONFIG0);
-+
-+ return;
-+ }
-+
-+ dev_dbg(hdmi->dev, "%s HDMI mode\n", __func__);
-+
-+ dw_hdmi_qp_mod(hdmi, 0, OPMODE_DVI, LINK_CONFIG0);
-+ dw_hdmi_qp_mod(hdmi, HDCP2_BYPASS, HDCP2_BYPASS, HDCP2LOGIC_CONFIG0);
-+
-+ scramb = (hdmi->pix_clock > HDMI14_MAX_TMDSCLK);
-+
-+ if (dw_hdmi_qp_support_scdc(hdmi, &connector->display_info)) {
-+ if (scramb) {
-+ drm_scdc_readb(hdmi->bridge.ddc, SCDC_SINK_VERSION, &ver);
-+ drm_scdc_writeb(hdmi->bridge.ddc, SCDC_SOURCE_VERSION,
-+ min_t(u8, ver, SCDC_MIN_SOURCE_VERSION));
-+ }
-+
-+ drm_scdc_set_high_tmds_clock_ratio(connector, scramb);
-+ drm_scdc_set_scrambling(connector, scramb);
-+ }
-+
-+ dw_hdmi_qp_write(hdmi, scramb, SCRAMB_CONFIG0);
-+}
-+
+static int dw_hdmi_qp_bridge_atomic_check(struct drm_bridge *bridge,
+ struct drm_bridge_state *bridge_state,
+ struct drm_crtc_state *crtc_state,
@@ -645,19 +455,31 @@ index 000000000000..111111111111
+{
+ struct dw_hdmi_qp *hdmi = bridge->driver_private;
+ struct drm_atomic_state *state = old_state->base.state;
-+ struct drm_connector *connector;
+ struct drm_connector_state *conn_state;
++ struct drm_connector *connector;
++ unsigned int op_mode;
++
++ connector = drm_atomic_get_new_connector_for_encoder(state, bridge->encoder);
++ if (WARN_ON(!connector))
++ return;
+
-+ connector = drm_atomic_get_new_connector_for_encoder(state,
-+ bridge->encoder);
+ conn_state = drm_atomic_get_new_connector_state(state, connector);
++ if (WARN_ON(!conn_state))
++ return;
+
-+ hdmi->pix_clock = conn_state->hdmi.tmds_char_rate;
-+ hdmi->curr_conn = connector;
++ if (connector->display_info.is_hdmi) {
++ dev_dbg(hdmi->dev, "%s mode=HDMI rate=%llu\n",
++ __func__, conn_state->hdmi.tmds_char_rate);
++ op_mode = 0;
++ } else {
++ dev_dbg(hdmi->dev, "%s mode=DVI\n", __func__);
++ op_mode = OPMODE_DVI;
++ }
+
-+ hdmi->phy.ops->init(hdmi, hdmi->phy.data, &connector->display_info);
++ hdmi->phy.ops->init(hdmi, hdmi->phy.data);
+
-+ dw_hdmi_qp_setup(hdmi, connector);
++ dw_hdmi_qp_mod(hdmi, HDCP2_BYPASS, HDCP2_BYPASS, HDCP2LOGIC_CONFIG0);
++ dw_hdmi_qp_mod(hdmi, op_mode, OPMODE_DVI, LINK_CONFIG0);
+
+ drm_atomic_helper_connector_hdmi_update_infoframes(connector, state);
+}
@@ -667,7 +489,6 @@ index 000000000000..111111111111
+{
+ struct dw_hdmi_qp *hdmi = bridge->driver_private;
+
-+ hdmi->curr_conn = NULL;
+ hdmi->phy.ops->disable(hdmi, hdmi->phy.data);
+}
+
@@ -686,9 +507,6 @@ index 000000000000..111111111111
+ struct dw_hdmi_qp *hdmi = bridge->driver_private;
+ const struct drm_edid *drm_edid;
+
-+ if (!bridge->ddc)
-+ return NULL;
-+
+ drm_edid = drm_edid_read_ddc(connector, bridge->ddc);
+ if (!drm_edid)
+ dev_dbg(hdmi->dev, "failed to get edid\n");
@@ -696,6 +514,23 @@ index 000000000000..111111111111
+ return drm_edid;
+}
+
++static enum drm_mode_status
++dw_hdmi_qp_bridge_mode_valid(struct drm_bridge *bridge,
++ const struct drm_display_info *info,
++ const struct drm_display_mode *mode)
++{
++ struct dw_hdmi_qp *hdmi = bridge->driver_private;
++ unsigned long long rate;
++
++ rate = drm_hdmi_compute_mode_clock(mode, 8, HDMI_COLORSPACE_RGB);
++ if (rate > HDMI14_MAX_TMDSCLK) {
++ dev_dbg(hdmi->dev, "Unsupported mode clock: %d\n", mode->clock);
++ return MODE_CLOCK_HIGH;
++ }
++
++ return MODE_OK;
++}
++
+static int dw_hdmi_qp_bridge_clear_infoframe(struct drm_bridge *bridge,
+ enum hdmi_infoframe_type type)
+{
@@ -748,6 +583,7 @@ index 000000000000..111111111111
+ .atomic_disable = dw_hdmi_qp_bridge_atomic_disable,
+ .detect = dw_hdmi_qp_bridge_detect,
+ .edid_read = dw_hdmi_qp_bridge_edid_read,
++ .mode_valid = dw_hdmi_qp_bridge_mode_valid,
+ .hdmi_clear_infoframe = dw_hdmi_qp_bridge_clear_infoframe,
+ .hdmi_write_infoframe = dw_hdmi_qp_bridge_write_infoframe,
+};
@@ -806,14 +642,10 @@ index 000000000000..111111111111
+ struct drm_encoder *encoder,
+ const struct dw_hdmi_qp_plat_data *plat_data)
+{
-+ static const char * const clk_names[] = {
-+ "pclk", "earc", "aud", "ref" /* keep "ref" last */
-+ };
+ struct device *dev = &pdev->dev;
+ struct dw_hdmi_qp *hdmi;
+ void __iomem *regs;
-+ struct clk *clk;
-+ int irq, ret, i;
++ int ret;
+
+ if (!plat_data->phy_ops || !plat_data->phy_ops->init ||
+ !plat_data->phy_ops->disable || !plat_data->phy_ops->read_hpd) {
@@ -829,7 +661,7 @@ index 000000000000..111111111111
+
+ regs = devm_platform_ioremap_resource(pdev, 0);
+ if (IS_ERR(regs))
-+ return regs;
++ return ERR_CAST(regs);
+
+ hdmi->regm = devm_regmap_init_mmio(dev, regs, &dw_hdmi_qp_regmap_config);
+ if (IS_ERR(hdmi->regm)) {
@@ -837,28 +669,12 @@ index 000000000000..111111111111
+ return ERR_CAST(hdmi->regm);
+ }
+
-+ for (i = 0; i < ARRAY_SIZE(clk_names); i++) {
-+ clk = devm_clk_get_enabled(hdmi->dev, clk_names[i]);
-+
-+ if (IS_ERR(clk)) {
-+ if (PTR_ERR(clk) != -EPROBE_DEFER)
-+ dev_err(dev, "Failed to get %s clock\n",
-+ clk_names[i]);
-+ return ERR_CAST(clk);
-+ }
-+ }
-+ hdmi->ref_clk = clk;
-+
+ hdmi->phy.ops = plat_data->phy_ops;
+ hdmi->phy.data = plat_data->phy_data;
+
+ dw_hdmi_qp_init_hw(hdmi);
+
-+ irq = platform_get_irq_byname(pdev, "main");
-+ if (irq < 0)
-+ return ERR_PTR(irq);
-+
-+ ret = devm_request_threaded_irq(dev, irq,
++ ret = devm_request_threaded_irq(dev, plat_data->main_irq,
+ dw_hdmi_qp_main_hardirq, NULL,
+ IRQF_SHARED, dev_name(dev), hdmi);
+ if (ret)
@@ -877,7 +693,7 @@ index 000000000000..111111111111
+
+ hdmi->bridge.ddc = dw_hdmi_qp_i2c_adapter(hdmi);
+ if (IS_ERR(hdmi->bridge.ddc))
-+ hdmi->bridge.ddc = NULL;
++ return ERR_CAST(hdmi->bridge.ddc);
+
+ ret = devm_drm_bridge_add(dev, &hdmi->bridge);
+ if (ret)
@@ -892,11 +708,6 @@ index 000000000000..111111111111
+}
+EXPORT_SYMBOL_GPL(dw_hdmi_qp_bind);
+
-+void dw_hdmi_qp_unbind(struct dw_hdmi_qp *hdmi)
-+{
-+}
-+EXPORT_SYMBOL_GPL(dw_hdmi_qp_unbind);
-+
+void dw_hdmi_qp_resume(struct device *dev, struct dw_hdmi_qp *hdmi)
+{
+ dw_hdmi_qp_init_hw(hdmi);
@@ -905,9 +716,8 @@ index 000000000000..111111111111
+
+MODULE_AUTHOR("Algea Cao ");
+MODULE_AUTHOR("Cristian Ciocaltea ");
-+MODULE_DESCRIPTION("DW HDMI QP transmitter driver");
++MODULE_DESCRIPTION("DW HDMI QP transmitter library");
+MODULE_LICENSE("GPL");
-+MODULE_ALIAS("platform:dw-hdmi-qp");
diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.h b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.h
new file mode 100644
index 000000000000..111111111111
@@ -1753,7 +1563,7 @@ new file mode 100644
index 000000000000..111111111111
--- /dev/null
+++ b/include/drm/bridge/dw_hdmi_qp.h
-@@ -0,0 +1,37 @@
+@@ -0,0 +1,32 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+/*
+ * Copyright (c) 2021-2022 Rockchip Electronics Co., Ltd.
@@ -1764,14 +1574,12 @@ index 000000000000..111111111111
+#define __DW_HDMI_QP__
+
+struct device;
-+struct drm_display_info;
+struct drm_encoder;
+struct dw_hdmi_qp;
+struct platform_device;
+
+struct dw_hdmi_qp_phy_ops {
-+ int (*init)(struct dw_hdmi_qp *hdmi, void *data,
-+ const struct drm_display_info *display);
++ int (*init)(struct dw_hdmi_qp *hdmi, void *data);
+ void (*disable)(struct dw_hdmi_qp *hdmi, void *data);
+ enum drm_connector_status (*read_hpd)(struct dw_hdmi_qp *hdmi, void *data);
+ void (*setup_hpd)(struct dw_hdmi_qp *hdmi, void *data);
@@ -1780,12 +1588,9 @@ index 000000000000..111111111111
+struct dw_hdmi_qp_plat_data {
+ const struct dw_hdmi_qp_phy_ops *phy_ops;
+ void *phy_data;
++ int main_irq;
+};
+
-+int dw_hdmi_qp_set_refclk_rate(struct dw_hdmi_qp *hdmi, unsigned long rate);
-+void dw_hdmi_qp_set_high_tmds_clock_ratio(struct dw_hdmi_qp *hdmi,
-+ const struct drm_display_info *display);
-+void dw_hdmi_qp_unbind(struct dw_hdmi_qp *hdmi);
+struct dw_hdmi_qp *dw_hdmi_qp_bind(struct platform_device *pdev,
+ struct drm_encoder *encoder,
+ const struct dw_hdmi_qp_plat_data *plat_data);
@@ -1794,810 +1599,3 @@ index 000000000000..111111111111
--
Armbian
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Cristian Ciocaltea
-Date: Fri, 26 Jul 2024 03:07:04 +0300
-Subject: dt-bindings: display: rockchip: Add schema for RK3588 HDMI TX
- Controller
-
-Rockchip RK3588 SoC integrates the Synopsys DesignWare HDMI 2.1
-Quad-Pixel (QP) TX controller IP.
-
-Since this is a new IP block, quite different from those used in the
-previous generations of Rockchip SoCs, add a dedicated binding file.
-
-Signed-off-by: Cristian Ciocaltea
----
- Documentation/devicetree/bindings/display/rockchip/rockchip,dw-hdmi-qp.yaml | 188 ++++++++++
- 1 file changed, 188 insertions(+)
-
-diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-hdmi-qp.yaml b/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-hdmi-qp.yaml
-new file mode 100644
-index 000000000000..111111111111
---- /dev/null
-+++ b/Documentation/devicetree/bindings/display/rockchip/rockchip,dw-hdmi-qp.yaml
-@@ -0,0 +1,188 @@
-+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
-+%YAML 1.2
-+---
-+$id: http://devicetree.org/schemas/display/rockchip/rockchip,dw-hdmi-qp.yaml#
-+$schema: http://devicetree.org/meta-schemas/core.yaml#
-+
-+title: Rockchip DW HDMI QP TX Encoder
-+
-+maintainers:
-+ - Cristian Ciocaltea
-+
-+description:
-+ Rockchip RK3588 SoC integrates the Synopsys DesignWare HDMI QP TX controller
-+ IP and a HDMI/eDP TX Combo PHY based on a Samsung IP block.
-+
-+allOf:
-+ - $ref: ../bridge/synopsys,dw-hdmi-qp.yaml#
-+ - $ref: /schemas/sound/dai-common.yaml#
-+
-+properties:
-+ compatible:
-+ enum:
-+ - rockchip,rk3588-dw-hdmi-qp
-+
-+ clocks:
-+ minItems: 4
-+ items:
-+ - {}
-+ - {}
-+ - {}
-+ - {}
-+ # The next clocks are optional, but shall be specified in this
-+ # order when present.
-+ - description: TMDS/FRL link clock
-+ - description: Video datapath clock
-+
-+ clock-names:
-+ minItems: 4
-+ items:
-+ - {}
-+ - {}
-+ - {}
-+ - {}
-+ - enum: [hdp, hclk_vo1]
-+ - const: hclk_vo1
-+
-+ interrupts:
-+ items:
-+ - {}
-+ - {}
-+ - {}
-+ - {}
-+ - description: HPD interrupt
-+
-+ interrupt-names:
-+ items:
-+ - {}
-+ - {}
-+ - {}
-+ - {}
-+ - const: hpd
-+
-+ phys:
-+ maxItems: 1
-+ description: The HDMI/eDP PHY.
-+
-+ phy-names:
-+ const: hdmi
-+
-+ ports:
-+ $ref: /schemas/graph.yaml#/properties/ports
-+
-+ properties:
-+ port@0:
-+ $ref: /schemas/graph.yaml#/properties/port
-+ description:
-+ Port node with one endpoint connected to a vop node.
-+
-+ port@1:
-+ $ref: /schemas/graph.yaml#/properties/port
-+ description:
-+ Port node with one endpoint connected to a hdmi-connector node.
-+
-+ required:
-+ - port@0
-+ - port@1
-+
-+ power-domains:
-+ maxItems: 1
-+
-+ resets:
-+ minItems: 2
-+ maxItems: 2
-+
-+ reset-names:
-+ items:
-+ - const: ref
-+ - const: hdp
-+
-+ "#sound-dai-cells":
-+ const: 0
-+
-+ rockchip,grf:
-+ $ref: /schemas/types.yaml#/definitions/phandle
-+ description:
-+ Most HDMI QP related data is accessed through SYS GRF regs.
-+
-+ rockchip,vo1_grf:
-+ $ref: /schemas/types.yaml#/definitions/phandle
-+ description:
-+ Additional HDMI QP related data is accessed through VO1 GRF regs.
-+
-+required:
-+ - compatible
-+ - reg
-+ - clocks
-+ - clock-names
-+ - interrupts
-+ - interrupt-names
-+ - phys
-+ - phy-names
-+ - ports
-+ - resets
-+ - reset-names
-+ - rockchip,grf
-+ - rockchip,vo1_grf
-+
-+unevaluatedProperties: false
-+
-+examples:
-+ - |
-+ #include
-+ #include
-+ #include
-+ #include
-+ #include
-+
-+ soc {
-+ #address-cells = <2>;
-+ #size-cells = <2>;
-+
-+ hdmi@fde80000 {
-+ compatible = "rockchip,rk3588-dw-hdmi-qp";
-+ reg = <0x0 0xfde80000 0x0 0x20000>;
-+ clocks = <&cru PCLK_HDMITX0>,
-+ <&cru CLK_HDMITX0_EARC>,
-+ <&cru CLK_HDMITX0_REF>,
-+ <&cru MCLK_I2S5_8CH_TX>,
-+ <&cru CLK_HDMIHDP0>,
-+ <&cru HCLK_VO1>;
-+ clock-names = "pclk", "earc", "ref", "aud", "hdp", "hclk_vo1";
-+ interrupts = ,
-+ ,
-+ ,
-+ ,
-+ ;
-+ interrupt-names = "avp", "cec", "earc", "main", "hpd";
-+ phys = <&hdptxphy_hdmi0>;
-+ phy-names = "hdmi";
-+ power-domains = <&power RK3588_PD_VO1>;
-+ resets = <&cru SRST_HDMITX0_REF>, <&cru SRST_HDMIHDP0>;
-+ reset-names = "ref", "hdp";
-+ rockchip,grf = <&sys_grf>;
-+ rockchip,vo1_grf = <&vo1_grf>;
-+ #sound-dai-cells = <0>;
-+
-+ ports {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ port@0 {
-+ reg = <0>;
-+
-+ hdmi0_in_vp0: endpoint {
-+ remote-endpoint = <&vp0_out_hdmi0>;
-+ };
-+ };
-+
-+ port@1 {
-+ reg = <1>;
-+
-+ hdmi0_out_con0: endpoint {
-+ remote-endpoint = <&hdmi_con0_in>;
-+ };
-+ };
-+ };
-+ };
-+ };
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Cristian Ciocaltea
-Date: Wed, 17 Jul 2024 03:34:36 +0300
-Subject: drm/rockchip: Explicitly include bits header
-
-Driver makes use of the BIT() macro, but relies on the bits header being
-implicitly included.
-
-Explicitly pull the header in to avoid potential build failures in some
-configurations.
-
-While at it, reorder include directives alphabetically.
-
-Fixes: 8c8546546f25 ("drm/rockchip: move output interface related definition to rockchip_drm_drv.h")
-Signed-off-by: Cristian Ciocaltea
----
- drivers/gpu/drm/rockchip/rockchip_drm_drv.h | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.h b/drivers/gpu/drm/rockchip/rockchip_drm_drv.h
-index 111111111111..222222222222 100644
---- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.h
-+++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.h
-@@ -12,9 +12,10 @@
- #include
- #include
-
-+#include
-+#include
- #include
- #include
--#include
-
- #define ROCKCHIP_MAX_FB_BUFFER 3
- #define ROCKCHIP_MAX_CONNECTOR 2
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Cristian Ciocaltea
-Date: Sat, 6 Jul 2024 03:22:35 +0300
-Subject: drm/rockchip: Add basic RK3588 HDMI output support
-
-The RK3588 SoC family integrates the newer Synopsys DesignWare HDMI 2.1
-Quad-Pixel (QP) TX controller IP and a HDMI/eDP TX Combo PHY based on a
-Samsung IP block.
-
-Add just the basic support for now, i.e. RGB output up to 4K@60Hz,
-without audio, CEC or any of the HDMI 2.1 specific features.
-
-Co-developed-by: Algea Cao
-Signed-off-by: Algea Cao
-Signed-off-by: Cristian Ciocaltea
----
- drivers/gpu/drm/rockchip/Kconfig | 8 +
- drivers/gpu/drm/rockchip/Makefile | 1 +
- drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c | 430 ++++++++++
- drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 2 +
- drivers/gpu/drm/rockchip/rockchip_drm_drv.h | 1 +
- 5 files changed, 442 insertions(+)
-
-diff --git a/drivers/gpu/drm/rockchip/Kconfig b/drivers/gpu/drm/rockchip/Kconfig
-index 111111111111..222222222222 100644
---- a/drivers/gpu/drm/rockchip/Kconfig
-+++ b/drivers/gpu/drm/rockchip/Kconfig
-@@ -8,6 +8,7 @@ config DRM_ROCKCHIP
- select VIDEOMODE_HELPERS
- select DRM_ANALOGIX_DP if ROCKCHIP_ANALOGIX_DP
- select DRM_DW_HDMI if ROCKCHIP_DW_HDMI
-+ select DRM_DW_HDMI_QP if ROCKCHIP_DW_HDMI_QP
- select DRM_DW_MIPI_DSI if ROCKCHIP_DW_MIPI_DSI
- select GENERIC_PHY if ROCKCHIP_DW_MIPI_DSI
- select GENERIC_PHY_MIPI_DPHY if ROCKCHIP_DW_MIPI_DSI
-@@ -63,6 +64,13 @@ config ROCKCHIP_DW_HDMI
- enable HDMI on RK3288 or RK3399 based SoC, you should select
- this option.
-
-+config ROCKCHIP_DW_HDMI_QP
-+ bool "Rockchip specific extensions for Synopsys DW HDMI QP"
-+ help
-+ This selects support for Rockchip SoC specific extensions
-+ for the Synopsys DesignWare HDMI QP driver. If you want to
-+ enable HDMI on RK3588 based SoC, you should select this option.
-+
- config ROCKCHIP_DW_MIPI_DSI
- bool "Rockchip specific extensions for Synopsys DW MIPI DSI"
- select GENERIC_PHY_MIPI_DPHY
-diff --git a/drivers/gpu/drm/rockchip/Makefile b/drivers/gpu/drm/rockchip/Makefile
-index 111111111111..222222222222 100644
---- a/drivers/gpu/drm/rockchip/Makefile
-+++ b/drivers/gpu/drm/rockchip/Makefile
-@@ -11,6 +11,7 @@ rockchipdrm-$(CONFIG_ROCKCHIP_VOP) += rockchip_drm_vop.o rockchip_vop_reg.o
- rockchipdrm-$(CONFIG_ROCKCHIP_ANALOGIX_DP) += analogix_dp-rockchip.o
- rockchipdrm-$(CONFIG_ROCKCHIP_CDN_DP) += cdn-dp-core.o cdn-dp-reg.o
- rockchipdrm-$(CONFIG_ROCKCHIP_DW_HDMI) += dw_hdmi-rockchip.o
-+rockchipdrm-$(CONFIG_ROCKCHIP_DW_HDMI_QP) += dw_hdmi_qp-rockchip.o
- rockchipdrm-$(CONFIG_ROCKCHIP_DW_MIPI_DSI) += dw-mipi-dsi-rockchip.o
- rockchipdrm-$(CONFIG_ROCKCHIP_INNO_HDMI) += inno_hdmi.o
- rockchipdrm-$(CONFIG_ROCKCHIP_LVDS) += rockchip_lvds.o
-diff --git a/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c
-new file mode 100644
-index 000000000000..111111111111
---- /dev/null
-+++ b/drivers/gpu/drm/rockchip/dw_hdmi_qp-rockchip.c
-@@ -0,0 +1,430 @@
-+// SPDX-License-Identifier: GPL-2.0-or-later
-+/*
-+ * Copyright (c) 2021-2022 Rockchip Electronics Co., Ltd.
-+ * Copyright (c) 2024 Collabora Ltd.
-+ *
-+ * Author: Algea Cao
-+ * Author: Cristian Ciocaltea
-+ */
-+
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+#include
-+
-+#include
-+#include
-+#include
-+#include
-+#include
-+
-+#include "rockchip_drm_drv.h"
-+
-+#define RK3588_GRF_SOC_CON2 0x0308
-+#define RK3588_HDMI0_HPD_INT_MSK BIT(13)
-+#define RK3588_HDMI0_HPD_INT_CLR BIT(12)
-+#define RK3588_GRF_SOC_CON7 0x031c
-+#define RK3588_SET_HPD_PATH_MASK GENMASK(13, 12)
-+#define RK3588_GRF_SOC_STATUS1 0x0384
-+#define RK3588_HDMI0_LEVEL_INT BIT(16)
-+#define RK3588_GRF_VO1_CON3 0x000c
-+#define RK3588_SCLIN_MASK BIT(9)
-+#define RK3588_SDAIN_MASK BIT(10)
-+#define RK3588_MODE_MASK BIT(11)
-+#define RK3588_I2S_SEL_MASK BIT(13)
-+#define RK3588_GRF_VO1_CON9 0x0024
-+#define RK3588_HDMI0_GRANT_SEL BIT(10)
-+
-+#define HIWORD_UPDATE(val, mask) ((val) | (mask) << 16)
-+
-+struct rockchip_hdmi_qp {
-+ struct device *dev;
-+ struct regmap *regmap;
-+ struct regmap *vo1_regmap;
-+ struct rockchip_encoder encoder;
-+ struct dw_hdmi_qp *hdmi;
-+ struct phy *phy;
-+ struct gpio_desc *enable_gpio;
-+ struct delayed_work hpd_work;
-+};
-+
-+static struct rockchip_hdmi_qp *to_rockchip_hdmi_qp(struct drm_encoder *encoder)
-+{
-+ struct rockchip_encoder *rkencoder = to_rockchip_encoder(encoder);
-+
-+ return container_of(rkencoder, struct rockchip_hdmi_qp, encoder);
-+}
-+
-+static void
-+dw_hdmi_qp_rockchip_encoder_mode_set(struct drm_encoder *encoder,
-+ struct drm_display_mode *mode,
-+ struct drm_display_mode *adj_mode)
-+{
-+ struct rockchip_hdmi_qp *hdmi = to_rockchip_hdmi_qp(encoder);
-+
-+ dw_hdmi_qp_set_refclk_rate(hdmi->hdmi, adj_mode->clock * 1000);
-+}
-+
-+static void dw_hdmi_qp_rockchip_encoder_enable(struct drm_encoder *encoder)
-+{
-+ struct rockchip_hdmi_qp *hdmi = to_rockchip_hdmi_qp(encoder);
-+ struct drm_crtc *crtc = encoder->crtc;
-+ int rate;
-+
-+ /* Unconditionally switch to TMDS as FRL is not yet supported */
-+ gpiod_set_value(hdmi->enable_gpio, 1);
-+
-+ if (crtc && crtc->state) {
-+ dw_hdmi_qp_set_refclk_rate(hdmi->hdmi,
-+ crtc->state->adjusted_mode.crtc_clock * 1000);
-+ /*
-+ * FIXME: Temporary workaround to pass pixel clock rate
-+ * to the PHY driver until phy_configure_opts_hdmi
-+ * becomes available in the PHY API. See also the related
-+ * comment in rk_hdptx_phy_power_on() from
-+ * drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
-+ */
-+ rate = crtc->state->mode.clock * 10;
-+ phy_set_bus_width(hdmi->phy, rate);
-+ drm_dbg(hdmi, "%s set bus_width=%u\n", __func__, rate);
-+ }
-+}
-+
-+static int
-+dw_hdmi_qp_rockchip_encoder_atomic_check(struct drm_encoder *encoder,
-+ struct drm_crtc_state *crtc_state,
-+ struct drm_connector_state *conn_state)
-+{
-+ struct rockchip_crtc_state *s = to_rockchip_crtc_state(crtc_state);
-+
-+ s->output_mode = ROCKCHIP_OUT_MODE_AAAA;
-+ s->output_type = DRM_MODE_CONNECTOR_HDMIA;
-+
-+ return 0;
-+}
-+
-+static const struct
-+drm_encoder_helper_funcs dw_hdmi_qp_rockchip_encoder_helper_funcs = {
-+ .mode_set = dw_hdmi_qp_rockchip_encoder_mode_set,
-+ .enable = dw_hdmi_qp_rockchip_encoder_enable,
-+ .atomic_check = dw_hdmi_qp_rockchip_encoder_atomic_check,
-+};
-+
-+static int dw_hdmi_qp_rk3588_phy_init(struct dw_hdmi_qp *dw_hdmi, void *data,
-+ const struct drm_display_info *display)
-+{
-+ struct rockchip_hdmi_qp *hdmi = (struct rockchip_hdmi_qp *)data;
-+
-+ dw_hdmi_qp_set_high_tmds_clock_ratio(dw_hdmi, display);
-+
-+ return phy_power_on(hdmi->phy);
-+}
-+
-+static void dw_hdmi_qp_rk3588_phy_disable(struct dw_hdmi_qp *dw_hdmi,
-+ void *data)
-+{
-+ struct rockchip_hdmi_qp *hdmi = (struct rockchip_hdmi_qp *)data;
-+
-+ phy_power_off(hdmi->phy);
-+}
-+
-+static enum drm_connector_status
-+dw_hdmi_qp_rk3588_read_hpd(struct dw_hdmi_qp *dw_hdmi, void *data)
-+{
-+ struct rockchip_hdmi_qp *hdmi = (struct rockchip_hdmi_qp *)data;
-+ u32 val;
-+
-+ regmap_read(hdmi->regmap, RK3588_GRF_SOC_STATUS1, &val);
-+
-+ return val & RK3588_HDMI0_LEVEL_INT ?
-+ connector_status_connected : connector_status_disconnected;
-+}
-+
-+static void dw_hdmi_qp_rk3588_setup_hpd(struct dw_hdmi_qp *dw_hdmi, void *data)
-+{
-+ struct rockchip_hdmi_qp *hdmi = (struct rockchip_hdmi_qp *)data;
-+
-+ regmap_write(hdmi->regmap,
-+ RK3588_GRF_SOC_CON2,
-+ HIWORD_UPDATE(RK3588_HDMI0_HPD_INT_CLR,
-+ RK3588_HDMI0_HPD_INT_CLR |
-+ RK3588_HDMI0_HPD_INT_MSK));
-+}
-+
-+static const struct dw_hdmi_qp_phy_ops rk3588_hdmi_phy_ops = {
-+ .init = dw_hdmi_qp_rk3588_phy_init,
-+ .disable = dw_hdmi_qp_rk3588_phy_disable,
-+ .read_hpd = dw_hdmi_qp_rk3588_read_hpd,
-+ .setup_hpd = dw_hdmi_qp_rk3588_setup_hpd,
-+};
-+
-+static void dw_hdmi_qp_rk3588_hpd_work(struct work_struct *work)
-+{
-+ struct rockchip_hdmi_qp *hdmi = container_of(work,
-+ struct rockchip_hdmi_qp,
-+ hpd_work.work);
-+ struct drm_device *drm = hdmi->encoder.encoder.dev;
-+ bool changed;
-+
-+ if (drm) {
-+ changed = drm_helper_hpd_irq_event(drm);
-+ if (changed)
-+ drm_dbg(hdmi, "connector status changed\n");
-+ }
-+}
-+
-+static irqreturn_t dw_hdmi_qp_rk3588_hardirq(int irq, void *dev_id)
-+{
-+ struct rockchip_hdmi_qp *hdmi = dev_id;
-+ u32 intr_stat, val;
-+
-+ regmap_read(hdmi->regmap, RK3588_GRF_SOC_STATUS1, &intr_stat);
-+
-+ if (intr_stat) {
-+ val = HIWORD_UPDATE(RK3588_HDMI0_HPD_INT_MSK,
-+ RK3588_HDMI0_HPD_INT_MSK);
-+ regmap_write(hdmi->regmap, RK3588_GRF_SOC_CON2, val);
-+ return IRQ_WAKE_THREAD;
-+ }
-+
-+ return IRQ_NONE;
-+}
-+
-+static irqreturn_t dw_hdmi_qp_rk3588_irq(int irq, void *dev_id)
-+{
-+ struct rockchip_hdmi_qp *hdmi = dev_id;
-+ u32 intr_stat, val;
-+ int debounce_ms;
-+
-+ regmap_read(hdmi->regmap, RK3588_GRF_SOC_STATUS1, &intr_stat);
-+ if (!intr_stat)
-+ return IRQ_NONE;
-+
-+ val = HIWORD_UPDATE(RK3588_HDMI0_HPD_INT_CLR,
-+ RK3588_HDMI0_HPD_INT_CLR);
-+ regmap_write(hdmi->regmap, RK3588_GRF_SOC_CON2, val);
-+
-+ debounce_ms = intr_stat & RK3588_HDMI0_LEVEL_INT ? 150 : 20;
-+ mod_delayed_work(system_wq, &hdmi->hpd_work,
-+ msecs_to_jiffies(debounce_ms));
-+
-+ val |= HIWORD_UPDATE(0, RK3588_HDMI0_HPD_INT_MSK);
-+ regmap_write(hdmi->regmap, RK3588_GRF_SOC_CON2, val);
-+
-+ return IRQ_HANDLED;
-+}
-+
-+static const struct of_device_id dw_hdmi_qp_rockchip_dt_ids[] = {
-+ { .compatible = "rockchip,rk3588-dw-hdmi-qp",
-+ .data = &rk3588_hdmi_phy_ops },
-+ {},
-+};
-+MODULE_DEVICE_TABLE(of, dw_hdmi_qp_rockchip_dt_ids);
-+
-+static int dw_hdmi_qp_rockchip_bind(struct device *dev, struct device *master,
-+ void *data)
-+{
-+ static const char * const clk_names[] = { "hdp", "hclk_vo1" };
-+ struct platform_device *pdev = to_platform_device(dev);
-+ struct dw_hdmi_qp_plat_data plat_data;
-+ struct drm_device *drm = data;
-+ struct drm_connector *connector;
-+ struct drm_encoder *encoder;
-+ struct rockchip_hdmi_qp *hdmi;
-+ struct clk *clk;
-+ int ret, irq, i;
-+ u32 val;
-+
-+ if (!pdev->dev.of_node)
-+ return -ENODEV;
-+
-+ hdmi = devm_kzalloc(&pdev->dev, sizeof(*hdmi), GFP_KERNEL);
-+ if (!hdmi)
-+ return -ENOMEM;
-+
-+ plat_data.phy_ops = of_device_get_match_data(dev);
-+ if (!plat_data.phy_ops)
-+ return -ENODEV;
-+
-+ plat_data.phy_data = hdmi;
-+ hdmi->dev = &pdev->dev;
-+
-+ encoder = &hdmi->encoder.encoder;
-+ encoder->possible_crtcs = drm_of_find_possible_crtcs(drm, dev->of_node);
-+
-+ rockchip_drm_encoder_set_crtc_endpoint_id(&hdmi->encoder,
-+ dev->of_node, 0, 0);
-+ /*
-+ * If we failed to find the CRTC(s) which this encoder is
-+ * supposed to be connected to, it's because the CRTC has
-+ * not been registered yet. Defer probing, and hope that
-+ * the required CRTC is added later.
-+ */
-+ if (encoder->possible_crtcs == 0)
-+ return -EPROBE_DEFER;
-+
-+ hdmi->regmap = syscon_regmap_lookup_by_phandle(dev->of_node,
-+ "rockchip,grf");
-+ if (IS_ERR(hdmi->regmap)) {
-+ drm_err(hdmi, "Unable to get rockchip,grf\n");
-+ return PTR_ERR(hdmi->regmap);
-+ }
-+
-+ hdmi->vo1_regmap = syscon_regmap_lookup_by_phandle(dev->of_node,
-+ "rockchip,vo1_grf");
-+ if (IS_ERR(hdmi->vo1_regmap)) {
-+ drm_err(hdmi, "Unable to get rockchip,vo1_grf\n");
-+ return PTR_ERR(hdmi->vo1_regmap);
-+ }
-+
-+ for (i = 0; i < ARRAY_SIZE(clk_names); i++) {
-+ clk = devm_clk_get_optional_enabled(hdmi->dev, clk_names[i]);
-+
-+ if (IS_ERR(clk)) {
-+ ret = PTR_ERR(clk);
-+ if (ret != -EPROBE_DEFER)
-+ drm_err(hdmi, "Failed to get %s clock: %d\n",
-+ clk_names[i], ret);
-+ return ret;
-+ }
-+ }
-+
-+ hdmi->enable_gpio = devm_gpiod_get_optional(hdmi->dev, "enable",
-+ GPIOD_OUT_HIGH);
-+ if (IS_ERR(hdmi->enable_gpio)) {
-+ ret = PTR_ERR(hdmi->enable_gpio);
-+ drm_err(hdmi, "Failed to request enable GPIO: %d\n", ret);
-+ return ret;
-+ }
-+
-+ hdmi->phy = devm_phy_get(dev, "hdmi");
-+ if (IS_ERR(hdmi->phy)) {
-+ ret = PTR_ERR(hdmi->phy);
-+ if (ret != -EPROBE_DEFER)
-+ drm_err(hdmi, "failed to get phy: %d\n", ret);
-+ return ret;
-+ }
-+
-+ val = HIWORD_UPDATE(RK3588_SCLIN_MASK, RK3588_SCLIN_MASK) |
-+ HIWORD_UPDATE(RK3588_SDAIN_MASK, RK3588_SDAIN_MASK) |
-+ HIWORD_UPDATE(RK3588_MODE_MASK, RK3588_MODE_MASK) |
-+ HIWORD_UPDATE(RK3588_I2S_SEL_MASK, RK3588_I2S_SEL_MASK);
-+ regmap_write(hdmi->vo1_regmap, RK3588_GRF_VO1_CON3, val);
-+
-+ val = HIWORD_UPDATE(RK3588_SET_HPD_PATH_MASK,
-+ RK3588_SET_HPD_PATH_MASK);
-+ regmap_write(hdmi->regmap, RK3588_GRF_SOC_CON7, val);
-+
-+ val = HIWORD_UPDATE(RK3588_HDMI0_GRANT_SEL,
-+ RK3588_HDMI0_GRANT_SEL);
-+ regmap_write(hdmi->vo1_regmap, RK3588_GRF_VO1_CON9, val);
-+
-+ val = HIWORD_UPDATE(RK3588_HDMI0_HPD_INT_MSK, RK3588_HDMI0_HPD_INT_MSK);
-+ regmap_write(hdmi->regmap, RK3588_GRF_SOC_CON2, val);
-+
-+ INIT_DELAYED_WORK(&hdmi->hpd_work, dw_hdmi_qp_rk3588_hpd_work);
-+
-+ irq = platform_get_irq_byname(pdev, "hpd");
-+ if (irq < 0)
-+ return irq;
-+
-+ ret = devm_request_threaded_irq(hdmi->dev, irq,
-+ dw_hdmi_qp_rk3588_hardirq,
-+ dw_hdmi_qp_rk3588_irq,
-+ IRQF_SHARED, "dw-hdmi-qp-hpd",
-+ hdmi);
-+ if (ret)
-+ return ret;
-+
-+ drm_encoder_helper_add(encoder, &dw_hdmi_qp_rockchip_encoder_helper_funcs);
-+ drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS);
-+
-+ platform_set_drvdata(pdev, hdmi);
-+
-+ hdmi->hdmi = dw_hdmi_qp_bind(pdev, encoder, &plat_data);
-+ if (IS_ERR(hdmi->hdmi)) {
-+ ret = PTR_ERR(hdmi->hdmi);
-+ drm_encoder_cleanup(encoder);
-+ return ret;
-+ }
-+
-+ connector = drm_bridge_connector_init(drm, encoder);
-+ if (IS_ERR(connector)) {
-+ ret = PTR_ERR(connector);
-+ drm_err(hdmi, "failed to init bridge connector: %d\n", ret);
-+ return ret;
-+ }
-+
-+ return drm_connector_attach_encoder(connector, encoder);
-+}
-+
-+static void dw_hdmi_qp_rockchip_unbind(struct device *dev,
-+ struct device *master,
-+ void *data)
-+{
-+ struct rockchip_hdmi_qp *hdmi = dev_get_drvdata(dev);
-+
-+ cancel_delayed_work_sync(&hdmi->hpd_work);
-+ dw_hdmi_qp_unbind(hdmi->hdmi);
-+
-+ drm_encoder_cleanup(&hdmi->encoder.encoder);
-+}
-+
-+static const struct component_ops dw_hdmi_qp_rockchip_ops = {
-+ .bind = dw_hdmi_qp_rockchip_bind,
-+ .unbind = dw_hdmi_qp_rockchip_unbind,
-+};
-+
-+static int dw_hdmi_qp_rockchip_probe(struct platform_device *pdev)
-+{
-+ return component_add(&pdev->dev, &dw_hdmi_qp_rockchip_ops);
-+}
-+
-+static void dw_hdmi_qp_rockchip_remove(struct platform_device *pdev)
-+{
-+ component_del(&pdev->dev, &dw_hdmi_qp_rockchip_ops);
-+}
-+
-+static int __maybe_unused dw_hdmi_qp_rockchip_resume(struct device *dev)
-+{
-+ struct rockchip_hdmi_qp *hdmi = dev_get_drvdata(dev);
-+ u32 val;
-+
-+ val = HIWORD_UPDATE(RK3588_SCLIN_MASK, RK3588_SCLIN_MASK) |
-+ HIWORD_UPDATE(RK3588_SDAIN_MASK, RK3588_SDAIN_MASK) |
-+ HIWORD_UPDATE(RK3588_MODE_MASK, RK3588_MODE_MASK) |
-+ HIWORD_UPDATE(RK3588_I2S_SEL_MASK, RK3588_I2S_SEL_MASK);
-+ regmap_write(hdmi->vo1_regmap, RK3588_GRF_VO1_CON3, val);
-+
-+ val = HIWORD_UPDATE(RK3588_SET_HPD_PATH_MASK,
-+ RK3588_SET_HPD_PATH_MASK);
-+ regmap_write(hdmi->regmap, RK3588_GRF_SOC_CON7, val);
-+
-+ val = HIWORD_UPDATE(RK3588_HDMI0_GRANT_SEL,
-+ RK3588_HDMI0_GRANT_SEL);
-+ regmap_write(hdmi->vo1_regmap, RK3588_GRF_VO1_CON9, val);
-+
-+ dw_hdmi_qp_resume(dev, hdmi->hdmi);
-+
-+ if (hdmi->encoder.encoder.dev)
-+ drm_helper_hpd_irq_event(hdmi->encoder.encoder.dev);
-+
-+ return 0;
-+}
-+
-+static const struct dev_pm_ops dw_hdmi_qp_rockchip_pm = {
-+ SET_SYSTEM_SLEEP_PM_OPS(NULL, dw_hdmi_qp_rockchip_resume)
-+};
-+
-+struct platform_driver dw_hdmi_qp_rockchip_pltfm_driver = {
-+ .probe = dw_hdmi_qp_rockchip_probe,
-+ .remove_new = dw_hdmi_qp_rockchip_remove,
-+ .driver = {
-+ .name = "dwhdmiqp-rockchip",
-+ .pm = &dw_hdmi_qp_rockchip_pm,
-+ .of_match_table = dw_hdmi_qp_rockchip_dt_ids,
-+ },
-+};
-diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
-index 111111111111..222222222222 100644
---- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
-+++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c
-@@ -507,6 +507,8 @@ static int __init rockchip_drm_init(void)
- ADD_ROCKCHIP_SUB_DRIVER(cdn_dp_driver, CONFIG_ROCKCHIP_CDN_DP);
- ADD_ROCKCHIP_SUB_DRIVER(dw_hdmi_rockchip_pltfm_driver,
- CONFIG_ROCKCHIP_DW_HDMI);
-+ ADD_ROCKCHIP_SUB_DRIVER(dw_hdmi_qp_rockchip_pltfm_driver,
-+ CONFIG_ROCKCHIP_DW_HDMI_QP);
- ADD_ROCKCHIP_SUB_DRIVER(dw_mipi_dsi_rockchip_driver,
- CONFIG_ROCKCHIP_DW_MIPI_DSI);
- ADD_ROCKCHIP_SUB_DRIVER(inno_hdmi_driver, CONFIG_ROCKCHIP_INNO_HDMI);
-diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.h b/drivers/gpu/drm/rockchip/rockchip_drm_drv.h
-index 111111111111..222222222222 100644
---- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.h
-+++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.h
-@@ -88,6 +88,7 @@ int rockchip_drm_encoder_set_crtc_endpoint_id(struct rockchip_encoder *rencoder,
- int rockchip_drm_endpoint_is_subdriver(struct device_node *ep);
- extern struct platform_driver cdn_dp_driver;
- extern struct platform_driver dw_hdmi_rockchip_pltfm_driver;
-+extern struct platform_driver dw_hdmi_qp_rockchip_pltfm_driver;
- extern struct platform_driver dw_mipi_dsi_rockchip_driver;
- extern struct platform_driver inno_hdmi_driver;
- extern struct platform_driver rockchip_dp_driver;
---
-Armbian
-
-From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
-From: Cristian Ciocaltea
-Date: Thu, 11 Jul 2024 14:48:43 +0300
-Subject: arm64: defconfig: Enable Rockchip extensions for Synopsys DW HDMI QP
-
-Enable Rockchip specific extensions for the Synopsys DesignWare HDMI QP
-driver.
-
-This is needed for the HDMI output support on RK3588 SoC based boards.
-
-Signed-off-by: Cristian Ciocaltea
----
- arch/arm64/configs/defconfig | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
-index 111111111111..222222222222 100644
---- a/arch/arm64/configs/defconfig
-+++ b/arch/arm64/configs/defconfig
-@@ -865,6 +865,7 @@ CONFIG_ROCKCHIP_VOP2=y
- CONFIG_ROCKCHIP_ANALOGIX_DP=y
- CONFIG_ROCKCHIP_CDN_DP=y
- CONFIG_ROCKCHIP_DW_HDMI=y
-+CONFIG_ROCKCHIP_DW_HDMI_QP=y
- CONFIG_ROCKCHIP_DW_MIPI_DSI=y
- CONFIG_ROCKCHIP_INNO_HDMI=y
- CONFIG_ROCKCHIP_LVDS=y
---
-Armbian
-
diff --git a/patch/kernel/archive/rockchip-rk3588-6.12/0141-dt-bindings-display-rockchip-Add-schema-for-RK3588-HDMI-TX-Controller.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0141-dt-bindings-display-rockchip-Add-schema-for-RK3588-HDMI-TX-Controller.patch
new file mode 100644
index 000000000000..fc63c8139f94
--- /dev/null
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0141-dt-bindings-display-rockchip-Add-schema-for-RK3588-HDMI-TX-Controller.patch
@@ -0,0 +1,215 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Cristian Ciocaltea
+Date: Wed, 16 Oct 2024 23:06:52 +0300
+Subject: dt-bindings: display: rockchip: Add schema for RK3588 HDMI TX
+ Controller
+
+Rockchip RK3588 SoC integrates the Synopsys DesignWare HDMI 2.1
+Quad-Pixel (QP) TX controller IP.
+
+Since this is a new IP block, quite different from those used in the
+previous generations of Rockchip SoCs, add a dedicated binding file.
+
+Reviewed-by: Krzysztof Kozlowski
+Signed-off-by: Cristian Ciocaltea
+---
+ Documentation/devicetree/bindings/display/rockchip/rockchip,rk3588-dw-hdmi-qp.yaml | 188 ++++++++++
+ 1 file changed, 188 insertions(+)
+
+diff --git a/Documentation/devicetree/bindings/display/rockchip/rockchip,rk3588-dw-hdmi-qp.yaml b/Documentation/devicetree/bindings/display/rockchip/rockchip,rk3588-dw-hdmi-qp.yaml
+new file mode 100644
+index 000000000000..111111111111
+--- /dev/null
++++ b/Documentation/devicetree/bindings/display/rockchip/rockchip,rk3588-dw-hdmi-qp.yaml
+@@ -0,0 +1,188 @@
++# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
++%YAML 1.2
++---
++$id: http://devicetree.org/schemas/display/rockchip/rockchip,rk3588-dw-hdmi-qp.yaml#
++$schema: http://devicetree.org/meta-schemas/core.yaml#
++
++title: Rockchip DW HDMI QP TX Encoder
++
++maintainers:
++ - Cristian Ciocaltea
++
++description: |
++ Rockchip RK3588 SoC integrates the Synopsys DesignWare HDMI QP TX controller
++ IP and a HDMI/eDP TX Combo PHY based on a Samsung IP block, providing the
++ following features, among others:
++
++ * Fixed Rate Link (FRL)
++ * Display Stream Compression (DSC)
++ * 4K@120Hz and 8K@60Hz video modes
++ * Variable Refresh Rate (VRR) including Quick Media Switching (QMS)
++ * Fast Vactive (FVA)
++ * SCDC I2C DDC access
++ * Multi-stream audio
++ * Enhanced Audio Return Channel (EARC)
++
++allOf:
++ - $ref: /schemas/sound/dai-common.yaml#
++
++properties:
++ compatible:
++ enum:
++ - rockchip,rk3588-dw-hdmi-qp
++
++ reg:
++ maxItems: 1
++
++ clocks:
++ items:
++ - description: Peripheral/APB bus clock
++ - description: EARC RX biphase clock
++ - description: Reference clock
++ - description: Audio interface clock
++ - description: TMDS/FRL link clock
++ - description: Video datapath clock
++
++ clock-names:
++ items:
++ - const: pclk
++ - const: earc
++ - const: ref
++ - const: aud
++ - const: hdp
++ - const: hclk_vo1
++
++ interrupts:
++ items:
++ - description: AVP Unit interrupt
++ - description: CEC interrupt
++ - description: eARC RX interrupt
++ - description: Main Unit interrupt
++ - description: HPD interrupt
++
++ interrupt-names:
++ items:
++ - const: avp
++ - const: cec
++ - const: earc
++ - const: main
++ - const: hpd
++
++ phys:
++ maxItems: 1
++ description: The HDMI/eDP PHY
++
++ ports:
++ $ref: /schemas/graph.yaml#/properties/ports
++
++ properties:
++ port@0:
++ $ref: /schemas/graph.yaml#/properties/port
++ description: Video port for RGB/YUV input.
++
++ port@1:
++ $ref: /schemas/graph.yaml#/properties/port
++ description: Video port for HDMI/eDP output.
++
++ required:
++ - port@0
++ - port@1
++
++ power-domains:
++ maxItems: 1
++
++ resets:
++ maxItems: 2
++
++ reset-names:
++ items:
++ - const: ref
++ - const: hdp
++
++ "#sound-dai-cells":
++ const: 0
++
++ rockchip,grf:
++ $ref: /schemas/types.yaml#/definitions/phandle
++ description:
++ Some HDMI QP related data is accessed through SYS GRF regs.
++
++ rockchip,vo-grf:
++ $ref: /schemas/types.yaml#/definitions/phandle
++ description:
++ Additional HDMI QP related data is accessed through VO GRF regs.
++
++required:
++ - compatible
++ - reg
++ - clocks
++ - clock-names
++ - interrupts
++ - interrupt-names
++ - phys
++ - ports
++ - resets
++ - reset-names
++ - rockchip,grf
++ - rockchip,vo-grf
++
++unevaluatedProperties: false
++
++examples:
++ - |
++ #include
++ #include
++ #include
++ #include
++ #include
++
++ soc {
++ #address-cells = <2>;
++ #size-cells = <2>;
++
++ hdmi@fde80000 {
++ compatible = "rockchip,rk3588-dw-hdmi-qp";
++ reg = <0x0 0xfde80000 0x0 0x20000>;
++ clocks = <&cru PCLK_HDMITX0>,
++ <&cru CLK_HDMITX0_EARC>,
++ <&cru CLK_HDMITX0_REF>,
++ <&cru MCLK_I2S5_8CH_TX>,
++ <&cru CLK_HDMIHDP0>,
++ <&cru HCLK_VO1>;
++ clock-names = "pclk", "earc", "ref", "aud", "hdp", "hclk_vo1";
++ interrupts = ,
++ ,
++ ,
++ ,
++ ;
++ interrupt-names = "avp", "cec", "earc", "main", "hpd";
++ phys = <&hdptxphy_hdmi0>;
++ power-domains = <&power RK3588_PD_VO1>;
++ resets = <&cru SRST_HDMITX0_REF>, <&cru SRST_HDMIHDP0>;
++ reset-names = "ref", "hdp";
++ rockchip,grf = <&sys_grf>;
++ rockchip,vo-grf = <&vo1_grf>;
++ #sound-dai-cells = <0>;
++
++ ports {
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ port@0 {
++ reg = <0>;
++
++ hdmi0_in_vp0: endpoint {
++ remote-endpoint = <&vp0_out_hdmi0>;
++ };
++ };
++
++ port@1 {
++ reg = <1>;
++
++ hdmi0_out_con0: endpoint {
++ remote-endpoint = <&hdmi_con0_in>;
++ };
++ };
++ };
++ };
++ };
+--
+Armbian
+
diff --git a/patch/kernel/archive/rockchip-rk3588-6.12/0142-drm-rockchip-Add-basic-RK3588-HDMI-output-support.patch b/patch/kernel/archive/rockchip-rk3588-6.12/0142-drm-rockchip-Add-basic-RK3588-HDMI-output-support.patch
new file mode 100644
index 000000000000..aebdf92e6d70
--- /dev/null
+++ b/patch/kernel/archive/rockchip-rk3588-6.12/0142-drm-rockchip-Add-basic-RK3588-HDMI-output-support.patch
@@ -0,0 +1,522 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Cristian Ciocaltea
+Date: Wed, 16 Oct 2024 23:06:53 +0300
+Subject: drm/rockchip: Add basic RK3588 HDMI output support
+
+The RK3588 SoC family integrates the newer Synopsys DesignWare HDMI 2.1
+Quad-Pixel (QP) TX controller IP and a HDMI/eDP TX Combo PHY based on a
+Samsung IP block.
+
+Add just the basic support for now, i.e. RGB output up to 4K@60Hz,
+without audio, CEC or any of the HDMI 2.1 specific features.
+
+Co-developed-by: Algea Cao
+Signed-off-by: Algea Cao