aboutsummarylogtreecommitdiffstats
path: root/xanmod-rog-config
blob: 41ddea8c158d04583a97eeb76401092bad405bd1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#!/bin/bash

## Xanmod-ROG configuration script; this script is called during package creation and tunes kernel configuration
##            where we want to differ from upstream Xanmod

## Any user customization should be done in $PKGDIR/myconfig or $HOME/.config/linux-xanmod-rog/myconfig; if either
## of these scripts exists they'll be called during package build after this script ends

## bake in s0ix debugging parameters
scripts/config  --enable CONFIG_CMDLINE_BOOL \
                --set-str CONFIG_CMDLINE "makepkgplaceholderyolo" \
                --disable CMDLINE_OVERRIDE

## HACK: forcibly fixup CONFIG_CMDLINE here as using scripts/config mangles escaped quotes
sed -i 's#makepkgplaceholderyolo#pm_debug_messages amd_pmc.enable_stb=1 amd_pmc.dyndbg=\\"+p\\" acpi.dyndbg=\\"file drivers/acpi/x86/s2idle.c +p\\"#' .config

# note the double escaped quotes above, sed strips one; the final result in .config needs to contain
# single slash escaped quotes (eg: `CONFIG_CMDLINE="foo.dyndbg=\"+p\""`) to avoid dyndbg parse errors
# at boot. this is impossible with the current kernel config script.

## XXX: As this kernel package is primarily targeted at ASUS laptops we default to schedutil so the machine properly clocks down

scripts/config  --disable CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE \
                --enable CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL

## NOTE: s0ix debugging moved into PKGBUILD

## asusctl/supergfxctl compatibility
scripts/config  --module CONFIG_VFIO_IOMMU_TYPE1 \
                --module CONFIG_VFIO_VIRQFD \
                --disable CONFIG_VFIO_NOIOMMU \
                --module CONFIG_VFIO_PCI

# package is throwing a warning re: lack of binutils support for this
scripts/config  --disable CONFIG_X86_X32

# sync default hostname with Arch
scripts/config  --set-str CONFIG_DEFAULT_HOSTNAME archlinux

# sync up BPF defaults with mainline
scripts/config  --enable CONFIG_BPF_PRELOAD \
                --module CONFIG_BPF_PRELOAD_UMD \
                --enable CONFIG_BPF_LSM #\
                #--disable CONFIG_BPF_UNPRIV_DEFAULT_OFF

# sync some settings with Arch:
scripts/config  --enable CONFIG_TASKS_RUDE_RCU \
                --disable CONFIG_X86_MCELOG_LEGACY \
                --enable CONFIG_X86_CPA_STATISTICS \
                --module CONFIG_X86_PMEM_LEGACY \
                --enable CONFIG_KPROBES_ON_FTRACE \
                --enable CONFIG_UPROBES \
                --enable CONFIG_LOCK_EVENT_COUNTS \
                --enable CONFIG_MODULE_FORCE_LOAD \
                --enable CONFIG_MODULE_FORCE_UNLOAD \
                --enable CONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS \
                --enable CONFIG_BLK_DEV_THROTTLING_LOW \
                --enable CONFIG_BLK_CGROUP_IOCOST \
                --enable CONFIG_CMA \
                --enable CONFIG_CMA_DEBUGFS \
                --enable CONFIG_CMA_SYSFS \
                --set-val CONFIG_CMA_AREAS 7 \
                --enable CONFIG_ZSWAP_DEFAULT_ON \
                --enable CONFIG_READ_ONLY_THP_FOR_FS \
                --enable CONFIG_XFRM_SUB_POLICY \
                --enable CONFIG_XFRM_MIGRATE \
                --enable CONFIG_NET_KEY_MIGRATE \
                --enable CONFIG_IPV6_OPTIMISTIC_DAD \
                --enable CONFIG_IPV6_RPL_LWTUNNEL \
                --enable CONFIG_NF_CONNTRACK_PROCFS \
                --module CONFIG_NETFILTER_XT_TARGET_NOTRACK \
                --disable CONFIG_DECNET \
                --module CONFIG_IPDDP \
                --enable CONFIG_IPDDP_ENCAP \
                --disable CONFIG_X25 \
                --disable CONFIG_LAPB

scripts/config  --enable CONFIG_TRACEPOINTS \
                --disable CONFIG_IOSF_MBI_DEBUG \
                --enable CONFIG_KVM_MMU_AUDIT \
                --disable CONFIG_BLK_CMDLINE_PARSER \
                --enable CONFIG_6LOWPAN_DEBUGFS \
                --module CONFIG_6LOWPAN_GHC_EXT_HDR_HOP \
                --module CONFIG_6LOWPAN_GHC_UDP \
                --module CONFIG_6LOWPAN_GHC_ICMPV6 \
                --module CONFIG_6LOWPAN_GHC_EXT_HDR_DEST \
                --module CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG \
                --module CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE \
                --enable CONFIG_IEEE802154_NL802154_EXPERIMENTAL \
                --enable CONFIG_CLS_U32_PERF \
                --module CONFIG_NET_ACT_IFE \
                --enable CONFIG_BATMAN_ADV_BATMAN_V \
                --enable CONFIG_CEPH_LIB_PRETTYDEBUG \
                --module CONFIG_PCIEAER_INJECT \
                --enable CONFIG_PCIE_ECRC \
                --enable CONFIG_PCI_P2PDMA

scripts/config  --disable CONFIG_RAPIDIO \
                --module CONFIG_CDROM \
                --disable CONFIG_PARIDE \
                --enable CONFIG_NVME_CORE \
                --enable CONFIG_BLK_DEV_NVME \
                --module CONFIG_FDDI \
                --module CONFIG_PPP \
                --module CONFIG_SLHC

# larger kernel log buffer (256KB)
scripts/config --set-val CONFIG_LOG_BUF_SHIFT 18
# MSR as a module
scripts/config --module CONFIG_X86_MSR
# enable EFI var access
scripts/config --module CONFIG_EFI_VARS
# enable bluetooth high speed
scripts/config --enable CONFIG_BT_HS
# disable user event hooks
scripts/config --disable CONFIG_UEVENT_HELPER
scripts/config --disable CONFIG_FW_LOADER_USER_HELPER
# enable scheduler autogrouping
scripts/config --enable CONFIG_SCHED_AUTOGROUP_DEFAULT_ENABLED

# enable multigen LRU by default
scripts/config  --enable CONFIG_LRU_GEN \
                --enable CONFIG_LRU_GEN_ENABLED