moby: reduce custom kernel configs

works: rear camera (megapixels-next)
works: speaker
works: headphones
works: camera flash
untested: battery/charging
This commit is contained in:
2024-09-18 20:41:03 +00:00
parent 6be3a8a245
commit e2a96a391f

View File

@@ -365,7 +365,10 @@ linux.override {
# byName."arm64-dts-sun50i-a64-pinephone-Add-support-for-Pinephone-1.2-be"
# byName."arm64-dts-sun50i-a64-pinephone-Add-power-supply-to-stk3311"
# byName."arm64-dts-sun50i-a64-pinephone-Add-reboot-mode-driver"
# some or all of these audio patches are required for speaker audio:
# TODO: mainline sun50i-a64-pinephone.dtsi defines headphone jack, internal earpiece *and* internal speaker;
# these patches shouldn't actually be necessary?? might just need to (un-)fix alsa-ucm-conf, or init them with eg25-manager
byName."arm64-dts-sun50i-a64-pinephone-Use-newer-jack-detection-impleme"
byName."arm64-dts-sun50-a64-pinephone-Define-jack-pins-in-DT"
byName."dt-bindings-sound-Add-jack-type-property-to-sun8i-a33-codec"
@@ -381,6 +384,7 @@ linux.override {
# byName."sound-soc-ac100-codec-Support-analog-part-of-X-Powers-AC100-cod"
# byName."sound-soc-sun8i-codec-Add-support-for-digital-part-of-the-AC100"
byName."ASoC-ec25-New-codec-driver-for-the-EC25-modem" #< required for speaker audio (which works even with modem powered off)
# # byName."ASOC-sun9i-hdmi-audio-Initial-implementation" #< linux 6.11: `error: initialization of 'void (*)(struct platform_device *)' from incompatible pointer type 'int (*)(struct platform_device *)'`
# # byName."ARM-dts-sunxi-h3-h5-Add-hdmi-sound-card"
# # byName."ARM-dts-sun8i-h3-Enable-hdmi-sound-card-on-boards-with-hdmi"
@@ -696,21 +700,20 @@ linux.override {
OF_RESOLVE = yes;
OF_OVERLAY = yes;
THERMAL_STATISTICS = yes;
THERMAL_GOV_FAIR_SHARE = yes;
THERMAL_GOV_BANG_BANG = yes;
USB_ANNOUNCE_NEW_DEVICES = yes;
LEDS_BRIGHTNESS_HW_CHANGED = yes;
SERIAL_8250_NR_UARTS = freeform "4";
# THERMAL_STATISTICS = yes;
# THERMAL_GOV_FAIR_SHARE = yes;
# THERMAL_GOV_BANG_BANG = yes;
# USB_ANNOUNCE_NEW_DEVICES = yes;
# LEDS_BRIGHTNESS_HW_CHANGED = yes;
# SERIAL_8250_NR_UARTS = freeform "4";
# RCU_CPU_STALL_TIMEOUT = freeform "60";
INPUT_JOYSTICK = yes;
RT2800USB_RT3573 = yes;
# INPUT_JOYSTICK = yes;
# RT2800USB_RT3573 = yes;
# NETFILTER_XTABLES_COMPAT = yes;
ARM64_ERRATUM_2441007 = yes;
ARM64_ERRATUM_1286807 = yes;
ARM64_ERRATUM_1542419 = yes;
ARM64_ERRATUM_2441009 = yes;
PGTABLE_LEVELS = freeform "4";
# ARM64_ERRATUM_2441007 = yes;
# ARM64_ERRATUM_1286807 = yes;
# ARM64_ERRATUM_1542419 = yes;
# ARM64_ERRATUM_2441009 = yes;
# BT_BNEP_MC_FILTER = yes;
# BT_BNEP_PROTO_FILTER = yes;
# BT_LE = yes;
@@ -727,12 +730,14 @@ linux.override {
# RCU_FANOUT = freeform "64";
# RCU_FANOUT_LEAF = freeform "16";
ARCH_MMAP_RND_BITS_MAX = freeform "33";
ARM64_LPA2 = yes;
ARM64_VA_BITS_48 = yes;
ARM64_VA_BITS = freeform "48";
ARM64_PA_BITS_48 = yes;
ARM64_PA_BITS = freeform "48";
ARM64_VA_BITS_48 = yes; #< 48 (not 52) bits for virtual addresses. the other bit widths are then derived same as pmos config
# ARM64_VA_BITS = freeform "48";
# ARM64_PA_BITS_48 = yes;
# ARM64_PA_BITS = freeform "48";
# ARCH_MMAP_RND_BITS_MAX = freeform "33";
# PGTABLE_LEVELS = freeform "4";
# PM_AUTOSLEEP = yes;
# CPU_IDLE_GOV_LADDER = no;
# ZSMALLOC_STAT = yes;
@@ -745,14 +750,15 @@ linux.override {
CMDLINE_FROM_BOOTLOADER = yes;
# pmOS specifies these as 'y', while nixpkgs/autoModules would only make them 'm': change them back to 'y'
SUN4I_EMAC = yes;
STMMAC_ETH = yes;
STMMAC_PLATFORM = yes;
DWMAC_GENERIC = yes;
DWMAC_SUNXI = yes;
DWMAC_SUN8I = yes;
MDIO_SUN4I = yes;
PCS_XPCS = yes;
# SUN4I_EMAC = yes;
# STMMAC_ETH = yes;
# STMMAC_PLATFORM = yes;
# DWMAC_GENERIC = yes;
# DWMAC_SUNXI = yes;
# DWMAC_SUN8I = yes;
# MDIO_SUN4I = yes;
# PCS_XPCS = yes;
TOUCHSCREEN_GOODIX = yes;
INPUT_AXP20X_PEK = yes;
IP5XXX_POWER = yes;
@@ -760,12 +766,14 @@ linux.override {
BATTERY_AXP20X = yes;
AXP20X_POWER = yes;
REGULATOR_VCTRL = yes;
RC_MAP = yes;
IR_SUNXI = yes;
CEC_CORE = yes;
MEDIA_SUPPORT = yes;
# RC_MAP = yes;
# IR_SUNXI = yes;
# CEC_CORE = yes;
# DVB_CORE = yes;
MEDIA_SUPPORT = yes; #< removing this forces V4L2 stuff to be degraded to module
VIDEO_DEV = yes;
DVB_CORE = yes;
V4L2_MEM2MEM_DEV = yes;
# # V4L2_FLASH_LED_CLASS = yes;
V4L2_FWNODE = yes;