moby: kernel: re-enable build-time improvements and display config (the latter doesnt always work though)
This commit is contained in:
@@ -312,8 +312,7 @@ linux_latest.override {
|
||||
# byName."Add-README.md-with-information-and-u-boot-patches"
|
||||
# byName."Defconfigs-for-all-my-devices"
|
||||
# byName."Update-defconfigs"
|
||||
]) ++
|
||||
lib.optionals withFullConfig [
|
||||
]) ++ [
|
||||
# {
|
||||
# name = "fix-compilation-specific-to-megi";
|
||||
# patch = null;
|
||||
@@ -331,98 +330,52 @@ linux_latest.override {
|
||||
# # SUN8I_DE2_CCU = lib.mkForce module; #< want:y, got:M
|
||||
# };
|
||||
# }
|
||||
# {
|
||||
# name = "fix-no-display";
|
||||
# patch = null;
|
||||
# extraStructuredConfig = with lib.kernel; {
|
||||
# ### RUNTIME FIXES AFTER <https://github.com/NixOS/nixpkgs/pull/298332>
|
||||
# # pmOS kernel config is in pmaports repo:
|
||||
# # - CONFIG_FB_SIMPLE=y
|
||||
# # - CONFIG_DRM_SIMPLEDRM is unset
|
||||
# # - CONFIG_SYSFB_SIMPLEFB is not referenced
|
||||
# # these config values are speculative: could probably be made smaller
|
||||
# FB_SIMPLE = lib.mkForce yes;
|
||||
# DRM_SIMPLEDRM = lib.mkForce no; #< conflicts with FB_SIMPLE
|
||||
# # SYSFB_SIMPLEFB = lib.mkForce no;
|
||||
# # downgrade these from "yes" to "module", to match previous config.
|
||||
# DRM = lib.mkForce module;
|
||||
# };
|
||||
# }
|
||||
# {
|
||||
# name = "enable-rtw88-wifi-drivers";
|
||||
# patch = null;
|
||||
# extraStructuredConfig = with lib.kernel; {
|
||||
# # default nixpkgs/pmos config enables RTW88, but not RTW88_8723CS.
|
||||
# # but the pinephone uses a 8723BS/8723CS chipset, so enable these
|
||||
# # and anything else that could possibly be needed, since these things are tangled.
|
||||
# # TODO: reduce this, this is surely more than i actually need
|
||||
# # RTL8187_LEDS=y
|
||||
# # RTLWIFI_DEBUG=y
|
||||
# # RTL8180 = module;
|
||||
# # RTL8187 = module;
|
||||
# # RTL8188EE = module;
|
||||
# # RTL8192CE = module;
|
||||
# # RTL8192CU = module;
|
||||
# # RTL8192C_COMMON = module;
|
||||
# # RTL8192DE = module;
|
||||
# # RTL8192D_COMMON = module;
|
||||
# # RTL8192EE = module;
|
||||
# # RTL8192SE = module;
|
||||
# # RTL8723AE = module;
|
||||
# # RTL8723BE = module;
|
||||
# # RTL8723_COMMON = module;
|
||||
# # RTL8821AE = module;
|
||||
# # RTL8XXXU = module;
|
||||
# # RTLBTCOEXIST = module;
|
||||
# # RTLWIFI = module;
|
||||
# # RTLWIFI_PCI = module;
|
||||
# # RTLWIFI_USB = module;
|
||||
# RTW88_8703B = module;
|
||||
# RTW88_8723CS = module;
|
||||
# RTW88_8723D = module;
|
||||
# RTW88_8723DE = module;
|
||||
# RTW88_8723DS = module;
|
||||
# RTW88_8723DU = module;
|
||||
# RTW88_8723X = module;
|
||||
# RTW88_8821C = module;
|
||||
# RTW88_8821CE = module;
|
||||
# RTW88_8821CS = module;
|
||||
# RTW88_8821CU = module;
|
||||
# RTW88_8822BS = module;
|
||||
# RTW88_8822BU = module;
|
||||
# RTW88_8822CS = module;
|
||||
# RTW88_8822CU = module;
|
||||
# RTW88_SDIO = module;
|
||||
# RTW88_USB = module;
|
||||
# };
|
||||
# }
|
||||
# {
|
||||
# # this could be enabled for *all* systems, but i'm not sure i really want that.
|
||||
# name = "quality-of-life";
|
||||
# patch = null;
|
||||
# extraStructuredConfig = with lib.kernel; {
|
||||
# # optimize for faster builds.
|
||||
# # see <repo:kernel.org/linux:Documentation/admin-guide/quickly-build-trimmed-linux.rst>
|
||||
# # note that several options can re-enable DEBUG_KERNEL (such as DEBUG_LIST)
|
||||
# # DEBUG_KERNEL = lib.mkForce no; # option group which seems to just gate the other DEBUG_ opts?
|
||||
# DEBUG_INFO = lib.mkForce no; # for gdb debugging (does it impact kernel stacktraces, too?)
|
||||
# # DEBUG_INFO_NONE = lib.mkForce no;
|
||||
# DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT = lib.mkForce no;
|
||||
# # DEBUG_LIST = lib.mkForce no;
|
||||
# # DEBUG_MISC = lib.mkForce no;
|
||||
# # DEBUG_FS = no;
|
||||
{
|
||||
# this could be enabled for *all* systems, but i'm not sure i really want that.
|
||||
name = "quality-of-life";
|
||||
patch = null;
|
||||
extraStructuredConfig = with lib.kernel; {
|
||||
# optimize for faster builds (measured 12m00s -> 10m45s)
|
||||
# see <repo:kernel.org/linux:Documentation/admin-guide/quickly-build-trimmed-linux.rst>
|
||||
# note that several options can re-enable DEBUG_KERNEL (such as DEBUG_LIST)
|
||||
# DEBUG_KERNEL = lib.mkForce no; # option group which seems to just gate the other DEBUG_ opts?
|
||||
DEBUG_INFO = lib.mkForce no; # for gdb debugging (does it impact kernel stacktraces, too?)
|
||||
# DEBUG_INFO_NONE = lib.mkForce no;
|
||||
DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT = lib.mkForce no;
|
||||
# DEBUG_LIST = lib.mkForce no;
|
||||
# DEBUG_MISC = lib.mkForce no;
|
||||
# DEBUG_FS = no;
|
||||
|
||||
# DEBUG_INFO_BTF = lib.mkForce no; # BPF debug symbols. rec by <https://nixos.wiki/wiki/Linux_kernel#Too_high_ram_usage>
|
||||
# # SCHED_DEBUG = lib.mkForce no; # determines /sys/kernel/debug/sched
|
||||
# SUNRPC_DEBUG = lib.mkForce no;
|
||||
# # shave 500ms off Pinephone boot time (dmesg | grep raid6)
|
||||
# # - by default raid6 (on behalf of btrfs) will compute the fastest algorithms at boot.
|
||||
# # - AFAICT, this only comes into effect if using raid (i don't).
|
||||
# # - in any case, on moby, the fastest benchmark happens to be the default anyway.
|
||||
# # - on lappy/servo/desko, the default is about 3% slower than the fastest. but they compute this in < 100ms.
|
||||
# RAID6_PQ_BENCHMARK = lib.mkForce no;
|
||||
# };
|
||||
# }
|
||||
DEBUG_INFO_BTF = lib.mkForce no; # BPF debug symbols. rec by <https://nixos.wiki/wiki/Linux_kernel#Too_high_ram_usage>
|
||||
# SCHED_DEBUG = lib.mkForce no; # determines /sys/kernel/debug/sched
|
||||
SUNRPC_DEBUG = lib.mkForce no;
|
||||
# shave 500ms off Pinephone boot time (dmesg | grep raid6)
|
||||
# - by default raid6 (on behalf of btrfs) will compute the fastest algorithms at boot.
|
||||
# - AFAICT, this only comes into effect if using raid (i don't).
|
||||
# - in any case, on moby, the fastest benchmark happens to be the default anyway.
|
||||
# - on lappy/servo/desko, the default is about 3% slower than the fastest. but they compute this in < 100ms.
|
||||
RAID6_PQ_BENCHMARK = lib.mkForce no;
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "fix-no-display";
|
||||
patch = null;
|
||||
extraStructuredConfig = with lib.kernel; {
|
||||
### RUNTIME FIXES AFTER <https://github.com/NixOS/nixpkgs/pull/298332>
|
||||
# pmOS kernel config is in pmaports repo:
|
||||
# - CONFIG_FB_SIMPLE=y
|
||||
# - CONFIG_DRM_SIMPLEDRM is unset
|
||||
# - CONFIG_SYSFB_SIMPLEFB is not referenced
|
||||
# these config values are speculative: could probably be made smaller
|
||||
FB_SIMPLE = lib.mkForce yes;
|
||||
DRM_SIMPLEDRM = lib.mkForce no; #< conflicts with FB_SIMPLE
|
||||
# SYSFB_SIMPLEFB = lib.mkForce no;
|
||||
|
||||
DRM = yes;
|
||||
# downgrade these from "yes" to "module", to match previous config.
|
||||
# DRM = lib.mkForce module;
|
||||
};
|
||||
}
|
||||
] ++ lib.optionals (withMegousPatches && withModemPower) [
|
||||
{
|
||||
name = "enable-megi-modem-power";
|
||||
@@ -553,6 +506,55 @@ linux_latest.override {
|
||||
# UDMABUF = yes; #< not needed (nixos default)
|
||||
};
|
||||
}
|
||||
] ++ lib.optionals (!withFullConfig) [
|
||||
{
|
||||
name = "enable-rtw88-wifi-drivers";
|
||||
patch = null;
|
||||
extraStructuredConfig = with lib.kernel; {
|
||||
# default nixpkgs/pmos config enables RTW88, but not RTW88_8723CS.
|
||||
# but the pinephone uses a 8723BS/8723CS chipset, so enable these
|
||||
# and anything else that could possibly be needed, since these things are tangled.
|
||||
# TODO: reduce this, this is surely more than i actually need
|
||||
# RTL8187_LEDS=y
|
||||
# RTLWIFI_DEBUG=y
|
||||
# RTL8180 = module;
|
||||
# RTL8187 = module;
|
||||
# RTL8188EE = module;
|
||||
# RTL8192CE = module;
|
||||
# RTL8192CU = module;
|
||||
# RTL8192C_COMMON = module;
|
||||
# RTL8192DE = module;
|
||||
# RTL8192D_COMMON = module;
|
||||
# RTL8192EE = module;
|
||||
# RTL8192SE = module;
|
||||
# RTL8723AE = module;
|
||||
# RTL8723BE = module;
|
||||
# RTL8723_COMMON = module;
|
||||
# RTL8821AE = module;
|
||||
# RTL8XXXU = module;
|
||||
# RTLBTCOEXIST = module;
|
||||
# RTLWIFI = module;
|
||||
# RTLWIFI_PCI = module;
|
||||
# RTLWIFI_USB = module;
|
||||
RTW88_8703B = module;
|
||||
RTW88_8723CS = module;
|
||||
RTW88_8723D = module;
|
||||
RTW88_8723DE = module;
|
||||
RTW88_8723DS = module;
|
||||
RTW88_8723DU = module;
|
||||
RTW88_8723X = module;
|
||||
RTW88_8821C = module;
|
||||
RTW88_8821CE = module;
|
||||
RTW88_8821CS = module;
|
||||
RTW88_8821CU = module;
|
||||
RTW88_8822BS = module;
|
||||
RTW88_8822BU = module;
|
||||
RTW88_8822CS = module;
|
||||
RTW88_8822CU = module;
|
||||
RTW88_SDIO = module;
|
||||
RTW88_USB = module;
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
passthru = {
|
||||
|
Reference in New Issue
Block a user