CONFIG_IPV6=y CONFIG_DYNAMIC_DEBUG=y # For Squashfs (root file system): CONFIG_SQUASHFS=y CONFIG_SQUASHFS_FILE_CACHE=y CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y CONFIG_SQUASHFS_ZLIB=y CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 # For a console on HDMI: # # TODO: the simpledrm driver just does not work for me. the ASRock logo never disappears from HDMI # # [ 0.364059] [drm] Initialized simpledrm 1.0.0 20200625 for simple-framebuffer.0 on minor 0 # CONFIG_DRM_SIMPLEDRM=y # CONFIG_X86_SYSFB=y # # Whereas with (working) efifb, I see: # # [ 0.460084] efifb: probing for efifb # # [ 0.460096] efifb: framebuffer at 0xe9000000, using 3072k, total 3072k # # [ 0.460099] efifb: mode is 1024x768x32, linelength=4096, pages=1 # # [ 0.460101] efifb: scrolling: redraw # # [ 0.460103] efifb: Truecolor: size=8:8:8:8, shift=24:16:8:0 CONFIG_DRM_SIMPLEDRM=n CONFIG_X86_SYSFB=n CONFIG_FB=y CONFIG_FB_EFI=y CONFIG_FB_SIMPLE=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_FRAMEBUFFER_CONSOLE=y # For FUSE (for cpu(1)): CONFIG_FUSE_FS=y # For using github.com/vishvananda/netlink CONFIG_NETFILTER_NETLINK_QUEUE=y CONFIG_XFRM_USER=y # For nftables: CONFIG_NF_TABLES=y CONFIG_NF_NAT_IPV4=y CONFIG_NF_NAT_MASQUERADE_IPV4=y CONFIG_NFT_PAYLOAD=y CONFIG_NFT_EXTHDR=y CONFIG_NFT_META=y CONFIG_NFT_CT=y CONFIG_NFT_RBTREE=y CONFIG_NFT_HASH=y CONFIG_NFT_COUNTER=y CONFIG_NFT_LOG=y CONFIG_NFT_LIMIT=y CONFIG_NFT_NAT=y CONFIG_NFT_COMPAT=y CONFIG_NFT_MASQ=y CONFIG_NFT_MASQ_IPV4=y CONFIG_NFT_REDIR=y CONFIG_NFT_REJECT=y CONFIG_NF_TABLES_IPV4=y CONFIG_NFT_REJECT_IPV4=y CONFIG_NFT_CHAIN_ROUTE_IPV4=y CONFIG_NFT_CHAIN_NAT_IPV4=y CONFIG_NF_TABLES_IPV6=y CONFIG_NFT_CHAIN_ROUTE_IPV6=y CONFIG_NFT_OBJREF=y CONFIG_NFT_DUP_IPV4=y CONFIG_NFT_FIB_IPV4=y CONFIG_NFT_DUP_IPV6=y CONFIG_NFT_FIB_IPV6=y # Explicitly disable nftables helper modules to prevent NAT slipstreaming attacks: # https://samy.pl/slipstream/ CONFIG_NF_CONNTRACK_AMANDA=n CONFIG_NF_CONNTRACK_FTP=n CONFIG_NF_CONNTRACK_H323=n CONFIG_NF_CONNTRACK_IRC=n CONFIG_NF_CONNTRACK_NETBIOS_NS=n CONFIG_NF_CONNTRACK_SNMP=n CONFIG_NF_CONNTRACK_PPTP=n CONFIG_NF_CONNTRACK_SANE=n CONFIG_NF_CONNTRACK_SIP=n CONFIG_NF_CONNTRACK_TFTP=n # For using USB mass storage CONFIG_USB_EHCI_HCD=y CONFIG_USB_XHCI_HCD=y CONFIG_USB_DEVICEFS=y CONFIG_USB_STORAGE=y # For NVMe storage CONFIG_NVME_CORE=y CONFIG_BLK_DEV_NVME=y CONFIG_NVME_MULTIPATH=y CONFIG_NVME_HWMON=y CONFIG_NVME_TARGET_PASSTHRU=y # For https://www.fs.com/products/75602.html and https://www.fs.com/products/75603.html network cards: CONFIG_I40E=y # For Intel E810 series network cards: CONFIG_ICE=y # For Broadcom 57414 10/25 Gbit/s network card: CONFIG_BNXT=y # For Mellanox ConnectX-4 25 Gbit/s network cards: CONFIG_MLX5_EN=y CONFIG_MLX5_CORE=y CONFIG_MLX5_CORE_EN=y CONFIG_MLX5_INFINIBAND=n # For apu2c4 ethernet ports CONFIG_IGB=y # For Intel I225 ethernet ports (ASRock B550 Taichi): CONFIG_IGC=y # For /proc/config.gz CONFIG_IKCONFIG=y CONFIG_IKCONFIG_PROC=y # For kexec CONFIG_KEXEC_FILE=y # For apu2c4 watchdog CONFIG_SP5100_TCO=y # For WireGuard CONFIG_NET_UDP_TUNNEL=y CONFIG_WIREGUARD=y # For traffic shaping using tc: CONFIG_NET_SCH_TBF=y # For measuring CPU temperature: CONFIG_SENSORS_K10TEMP=y # For measuring non-CPU temperature and fan speeds: Crashes on cm3588 # CONFIG_SENSORS_NCT6683=y # For Corsair Commander Pro fan controller: CONFIG_SENSORS_CORSAIR_CPRO=y # For iproute2’s ss(8): CONFIG_INET_DIAG=y # For macvlan ethernet devices: CONFIG_MACVLAN=y # For virtio drivers (for qemu): CONFIG_VIRTIO_PCI=y CONFIG_VIRTIO_BALLOON=y CONFIG_VIRTIO_BLK=y CONFIG_VIRTIO_NET=y CONFIG_VIRTIO=y CONFIG_VIRTIO_RING=y # For watchdog within qemu: CONFIG_I6300ESB_WDT=y # For running KVM-accelerated qemu VMs: CONFIG_KVM=y CONFIG_KVM_INTEL=y CONFIG_KVM_AMD=y CONFIG_KVM_AMD_SEV=y # For bridge ethernet devices: CONFIG_BRIDGE=y CONFIG_EFIVAR_FS=y # For Ryzen CPUs: CONFIG_X86_AMD_PLATFORM_DEVICE=y CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE=y CONFIG_CPU_FREQ_GOV_POWERSAVE=y CONFIG_X86_POWERNOW_K8=y CONFIG_X86_AMD_FREQ_SENSITIVITY=y # Include hardware interrupt CPU usage in /proc/stat CPU time reporting: CONFIG_IRQ_TIME_ACCOUNTING=y # For tun devices, see https://www.kernel.org/doc/Documentation/networking/tuntap.txt CONFIG_TUN=y # For runc: CONFIG_BPF_SYSCALL=y CONFIG_CGROUP_FREEZER=y CONFIG_CGROUP_BPF=y CONFIG_SOCK_CGROUP_DATA=y CONFIG_NET_SOCK_MSG=y # For podman: CONFIG_OVERLAY_FS=y CONFIG_BRIDGE=y CONFIG_VETH=y CONFIG_NETFILTER_ADVANCED=y CONFIG_NETFILTER_XT_MATCH_COMMENT=y CONFIG_IP_NF_NAT=y CONFIG_IP_NF_TARGET_MASQUERADE=y CONFIG_NETFILTER_XT_NAT=y CONFIG_NETFILTER_XT_TARGET_MASQUERADE=y CONFIG_NETFILTER_XT_MATCH_MULTIPORT=y CONFIG_NETFILTER_XT_MARK=y CONFIG_CGROUP_PIDS=y # Enable TCP BBR as default congestion control CONFIG_TCP_CONG_BBR=y CONFIG_DEFAULT_BBR=y CONFIG_DEFAULT_TCP_CONG="bbr" # Linux 6.1: # In file included from :0:0: # drivers/gpu/drm/i915/i915_sw_fence_work.c: In function 'dma_fence_work_init': # drivers/gpu/drm/i915/i915_sw_fence.h:57:20: error: the comparison will always evaluate as 'false' for the address of 'fence_notify' will never be NULL [-Werror=address] # BUILD_BUG_ON((fn) == NULL); \ # ^ # ././include/linux/compiler_types.h:337:9: note: in definition of macro '__compiletime_assert' # if (!(condition)) \ # ^~~~~~~~~ # ././include/linux/compiler_types.h:357:2: note: in expansion of macro '_compiletime_assert' # _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__) # ^~~~~~~~~~~~~~~~~~~ # ./include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert' # #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg) # ^~~~~~~~~~~~~~~~~~ # ./include/linux/build_bug.h:50:2: note: in expansion of macro 'BUILD_BUG_ON_MSG' # BUILD_BUG_ON_MSG(condition, "BUILD_BUG_ON failed: " #condition) # ^~~~~~~~~~~~~~~~ # drivers/gpu/drm/i915/i915_sw_fence.h:57:2: note: in expansion of macro 'BUILD_BUG_ON' # BUILD_BUG_ON((fn) == NULL); \ # ^~~~~~~~~~~~ # drivers/gpu/drm/i915/i915_sw_fence_work.c:89:2: note: in expansion of macro 'i915_sw_fence_init' # i915_sw_fence_init(&f->chain, fence_notify); # ^~~~~~~~~~~~~~~~~~ # cc1: all warnings being treated as errors # make[5]: *** [drivers/gpu/drm/i915/i915_sw_fence_work.o] Error 1 # make[4]: *** [drivers/gpu/drm/i915] Error 2 # make[3]: *** [drivers/gpu/drm] Error 2 CONFIG_WERROR=n # Enable zstd compression to stay below 15 MB, which is the size of Extended Memory. # This is relevant to keep the kernel booting with the minimal MBR loader we use. CONFIG_KERNEL_ZSTD=y # For qemu -M microvm quick boots: CONFIG_VIRTIO_MMIO=y CONFIG_HW_RANDOM_VIRTIO=y CONFIG_XEN_VIRTIO=y CONFIG_VIRTIO_IOMMU=y CONFIG_IPV6_MULTIPLE_TABLES=y CONFIG_NF_SOCKET_IPV6=y CONFIG_NETLINK_DIAG=y CONFIG_INET_DIAG_DESTROY=y # More AWS stuff: CONFIG_ENA_ETHERNET=y CONFIG_RANDOM_TRUST_CPU=y CONFIG_RANDOM_TRUST_BOOTLOADER=y # For older AWS: CONFIG_XEN=y CONFIG_XEN_DOM0=y CONFIG_XEN_PRIVILEGED_GUEST=y CONFIG_XEN_PVHVM=y # Speed up boot and processing in general CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y CONFIG_DEBUG_KERNEL=n # Enable the RK3588 CPU CONFIG_ARCH_ROCKCHIP=y CONFIG_CPU_RK3588=y # Enable all the ROCKCHIP options CONFIG_CRYPTO_DEV_ROCKCHIP2=y CONFIG_CRYPTO_DEV_ROCKCHIP=y CONFIG_HW_RANDOM_ROCKCHIP=y CONFIG_MFD_RK8XX_I2C=y CONFIG_MFD_RK8XX_SPI=y CONFIG_MMC_DW_ROCKCHIP=y CONFIG_NVMEM_ROCKCHIP_EFUSE=y CONFIG_NVMEM_ROCKCHIP_OTP=y CONFIG_PCIE_ROCKCHIP_HOST=y CONFIG_PHY_ROCKCHIP_DP=y CONFIG_PHY_ROCKCHIP_DPHY_RX0=y CONFIG_PHY_ROCKCHIP_EMMC=y CONFIG_PHY_ROCKCHIP_INNO_CSIDPHY=y CONFIG_PHY_ROCKCHIP_INNO_DSIDPHY=y CONFIG_PHY_ROCKCHIP_INNO_HDMI=y CONFIG_PHY_ROCKCHIP_INNO_USB2=y CONFIG_PHY_ROCKCHIP_NANENG_COMBO_PHY=y CONFIG_PHY_ROCKCHIP_PCIE=y CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX=y CONFIG_PHY_ROCKCHIP_SNPS_PCIE3=y CONFIG_PHY_ROCKCHIP_TYPEC=y CONFIG_PHY_ROCKCHIP_USB=y CONFIG_PHY_ROCKCHIP_USBDP=y CONFIG_PWM_ROCKCHIP=y CONFIG_ROCKCHIP_IODOMAIN=y CONFIG_ROCKCHIP_IOMMU=y CONFIG_ROCKCHIP_MBOX=y CONFIG_ROCKCHIP_PHY=y CONFIG_ROCKCHIP_PM_DOMAINS=y CONFIG_ROCKCHIP_THERMAL=y CONFIG_SND_SOC_RK3328=y CONFIG_SPI_ROCKCHIP=y CONFIG_SPI_ROCKCHIP_SFC=y CONFIG_VIDEO_ROCKCHIP_VDEC2=y # CM3588 RTC driver CONFIG_RTC_DRV_RK808=y # Shouldn't this be done elsewhere? CONFIG_CMDLINE="console=ttyAMA0" # This is what friendlyelec has CONFIG_HZ_300=y # Quad core CPU CONFIG_NR_CPUS=8 # Power button CONFIG_PINCTRL_RK805=y CONFIG_INPUT_RK805_PWRKEY=y # Needed to ensure DWMAC_ROCKCHIP is built, which is needed for Ethernet CONFIG_STMMAC_ETH=y CONFIG_STMMAC_PLATFORM=y CONFIG_DWMAC_GENERIC=y CONFIG_DWMAC_ROCKCHIP=y # Ethernet driver CONFIG_REALTEK_PHY=y CONFIG_R8169=y # Try to enable HDMI out CONFIG_DRM_ROCKCHIP=y # Try to enable sound CONFIG_SND_SOC_ROCKCHIP=y CONFIG_SND_SOC_ROCKCHIP_DLP_PCM=y CONFIG_SND_SOC_ROCKCHIP_I2S=y CONFIG_SND_SOC_ROCKCHIP_I2S_TDM=y CONFIG_SND_SOC_ROCKCHIP_PDM=y CONFIG_SND_SOC_ROCKCHIP_SAI=y CONFIG_SND_SOC_ROCKCHIP_SPDIF=y CONFIG_SND_SOC_ROCKCHIP_SPDIFRX=y CONFIG_SND_SOC_ROCKCHIP_VAD=y CONFIG_SND_SOC_ROCKCHIP_MAX98090=y CONFIG_SND_SOC_ROCKCHIP_MULTICODECS=y CONFIG_SND_SOC_ROCKCHIP_RT5645=y CONFIG_SND_SOC_ROCKCHIP_HDMI=y CONFIG_OVERLAY_FS=y CONFIG_OVERLAY_FS_INDEX=y # # disable other arches # CONFIG_ARCH_ACTIONS=n # CONFIG_ARCH_AIROHA=n # CONFIG_ARCH_ALPINE=n # CONFIG_ARCH_APPLE=n # CONFIG_ARCH_BCM2835=n # CONFIG_ARCH_BCM=n # CONFIG_ARCH_BCM_IPROC=n # CONFIG_ARCH_BCMBCA=n # CONFIG_ARCH_BERLIN=n # CONFIG_ARCH_BRCMSTB=n # CONFIG_ARCH_EXYNOS=n # CONFIG_ARCH_HISI=n # CONFIG_ARCH_INTEL_SOCFPGA=n # CONFIG_ARCH_K3=n # CONFIG_ARCH_KEEMBAY=n # CONFIG_ARCH_LAYERSCAPE=n # CONFIG_ARCH_LG1K=n # CONFIG_ARCH_MA35=n # CONFIG_ARCH_MEDIATEK=n # CONFIG_ARCH_MESON=n # CONFIG_ARCH_MVEBU=n # CONFIG_ARCH_MXC=n # CONFIG_ARCH_NPCM=n # CONFIG_ARCH_NXP=n # CONFIG_ARCH_QCOM=n # CONFIG_ARCH_R8A774A1=n # CONFIG_ARCH_R8A774B1=n # CONFIG_ARCH_R8A774C0=n # CONFIG_ARCH_R8A774E1=n # CONFIG_ARCH_R8A77951=n # CONFIG_ARCH_R8A77960=n # CONFIG_ARCH_R8A77961=n # CONFIG_ARCH_R8A77965=n # CONFIG_ARCH_R8A77970=n # CONFIG_ARCH_R8A77980=n # CONFIG_ARCH_R8A77990=n # CONFIG_ARCH_R8A77995=n # CONFIG_ARCH_R8A779A0=n # CONFIG_ARCH_R8A779F0=n # CONFIG_ARCH_R8A779G0=n # CONFIG_ARCH_R8A779H0=n # CONFIG_ARCH_R9A07G043=n # CONFIG_ARCH_R9A07G044=n # CONFIG_ARCH_R9A07G054=n # CONFIG_ARCH_R9A08G045=n # CONFIG_ARCH_R9A09G011=n # CONFIG_ARCH_R9A09G057=n # CONFIG_ARCH_REALTEK=n # CONFIG_ARCH_RENESAS=n # CONFIG_ARCH_S32=n # CONFIG_ARCH_SEATTLE=n # CONFIG_ARCH_SPARX5=n # CONFIG_ARCH_SPRD=n # CONFIG_ARCH_STM32=n # CONFIG_ARCH_SUNXI=n # CONFIG_ARCH_SYNQUACER=n # CONFIG_ARCH_TEGRA=n # CONFIG_ARCH_TEGRA_132_SOC=n # CONFIG_ARCH_TEGRA_186_SOC=n # CONFIG_ARCH_TEGRA_194_SOC=n # CONFIG_ARCH_TEGRA_210_SOC=n # CONFIG_ARCH_TEGRA_234_SOC=n # CONFIG_ARCH_TESLA_FSD=n # CONFIG_ARCH_THUNDER2=n # CONFIG_ARCH_THUNDER=n # CONFIG_ARCH_UNIPHIER=n # CONFIG_ARCH_VEXPRESS=n # CONFIG_ARCH_VISCONTI=n # CONFIG_ARCH_XGENE=n # CONFIG_ARCH_ZYNQMP=n # CONFIG_GOOGLE_FIRMWARE=n # CONFIG_ATA=n # CONFIG_MD=n # CONFIG_NET_VENDOR_3COM=n # CONFIG_NET_VENDOR_ADAPTEC=n # CONFIG_NET_VENDOR_AGERE=n # CONFIG_NET_VENDOR_ALACRITECH=n # CONFIG_NET_VENDOR_ALTEON=n # CONFIG_NET_VENDOR_AMAZON=n # CONFIG_NET_VENDOR_AMD=n # CONFIG_NET_VENDOR_AQUANTIA=n # CONFIG_NET_VENDOR_ARC=n # CONFIG_NET_VENDOR_ASIX=n # CONFIG_NET_VENDOR_ATHEROS=n # CONFIG_NET_VENDOR_CADENCE=n # CONFIG_NET_VENDOR_CAVIUM=n # CONFIG_NET_VENDOR_CHELSIO=n # CONFIG_NET_VENDOR_CISCO=n # CONFIG_NET_VENDOR_CORTINA=n # CONFIG_NET_VENDOR_DAVICOM=n # CONFIG_NET_VENDOR_DEC=n # CONFIG_NET_VENDOR_DLINK=n # CONFIG_NET_VENDOR_EMULEX=n # CONFIG_NET_VENDOR_ENGLEDER=n # CONFIG_NET_VENDOR_EZCHIP=n # CONFIG_NET_VENDOR_FUNGIBLE=n # CONFIG_NET_VENDOR_GOOGLE=n # CONFIG_NET_VENDOR_HISILICON=n # CONFIG_NET_VENDOR_HUAWEI=n # CONFIG_NET_VENDOR_I825XX=n # CONFIG_NET_VENDOR_INTEL=n # CONFIG_NET_VENDOR_ADI=n # CONFIG_NET_VENDOR_LITEX=n # CONFIG_NET_VENDOR_MARVELL=n # CONFIG_NET_VENDOR_MELLANOX=n # CONFIG_NET_VENDOR_MICREL=n # CONFIG_NET_VENDOR_MICROCHIP=n # CONFIG_NET_VENDOR_MICROSEMI=n # CONFIG_NET_VENDOR_MICROSOFT=n # CONFIG_NET_VENDOR_MnRI=n # CONFIG_NET_VENDOR_NI=n # CONFIG_NET_VENDOR_NATSEMI=n # CONFIG_NET_VENDOR_NETERION=n # CONFIG_NET_VENDOR_NETRONOME=n # CONFIG_NET_VENDOR_8390=n # CONFIG_NET_VENDOR_NVIDIA=n # CONFIG_NET_VENDOR_OKI=n # CONFIG_NET_VENDOR_PACKET_ENGINES=n # CONFIG_NET_VENDOR_PENSANDO=n # CONFIG_NET_VENDOR_QLOGIC=n # CONFIG_NET_VENDOR_BROCADE=n # CONFIG_NET_VENDOR_QUALCOMM=n # CONFIG_NET_VENDOR_RDC=n # CONFIG_NET_VENDOR_BROADCOM=n # CONFIG_NET_VENDOR_RENESAS=n # CONFIG_NET_VENDOR_ROCKER=n # CONFIG_NET_VENDOR_SAMSUNG=n # CONFIG_NET_VENDOR_SEEQ=n # CONFIG_NET_VENDOR_SILAN=n # CONFIG_NET_VENDOR_SIS=n # CONFIG_NET_VENDOR_SOLARFLARE=n # CONFIG_NET_VENDOR_SMSC=n # CONFIG_NET_VENDOR_SOCIONEXT=n # CONFIG_NET_VENDOR_STMICRO=n # CONFIG_NET_VENDOR_SUN=n # CONFIG_NET_VENDOR_SnNOPSnS=n # CONFIG_NET_VENDOR_TEHUTI=n # CONFIG_NET_VENDOR_TI=n # CONFIG_NET_VENDOR_VERTEXCOM=n # CONFIG_NET_VENDOR_VIA=n # CONFIG_NET_VENDOR_WANGXUN=n # CONFIG_NET_VENDOR_WIZNET=n # CONFIG_NET_VENDOR_XILINX=n