]> git.zerfleddert.de Git - m1-debian/blame - patch_kernel_config.pl
remove the exit
[m1-debian] / patch_kernel_config.pl
CommitLineData
628b5aed
TG
1#!/usr/bin/perl
2
3use strict;
4use warnings FATAL => 'all';
5
6# This was taken from the linux-image-5.16.0-3-arm64-unsigned
7# Than it was copied as .config in the asahi tree
8# Than make olddefconfig was executed twice
c6eade91 9my @lines = `cat config`;
628b5aed
TG
10chomp @lines;
11
12my %asahi_options = (
4ca99176 13 'CONFIG_APPLE_ADMAC' => 'm',
628b5aed 14 'CONFIG_APPLE_AIC' => 'y',
4ca99176 15 'CONFIG_APPLE_DART' => 'm',
628b5aed
TG
16 'CONFIG_APPLE_MAILBOX' => 'y',
17 'CONFIG_APPLE_PLATFORMS' => 'y',
18 'CONFIG_APPLE_PMGR_PWRSTATE' => 'y',
19 'CONFIG_APPLE_RTKIT' => 'y',
4ca99176 20 'CONFIG_APPLE_SART' => 'm',
628b5aed
TG
21 'CONFIG_APPLE_SMC' => 'y',
22 'CONFIG_APPLE_SMC_RTKIT' => 'y',
23 'CONFIG_APPLE_WATCHDOG' => 'y',
24 'CONFIG_ARCH_APPLE' => 'y',
4ca99176 25 'CONFIG_ARM_APPLE_SOC_CPUFREQ' => 'm',
628b5aed
TG
26 'CONFIG_BRCMFMAC' => 'm',
27 'CONFIG_BRCMFMAC_PCIE' => 'y',
28 'CONFIG_CFG80211_WEXT' => 'y',
4ca99176
TG
29 'CONFIG_CHARGER_MACSMC' => 'm',
30 'CONFIG_COMMON_CLK_APPLE_NCO' => 'm',
628b5aed 31 'CONFIG_DRM' => 'y',
4abf6f9d 32 'CONFIG_DRM_SIMPLEDRM' => 'y',
628b5aed
TG
33 'CONFIG_FW_LOADER_USER_HELPER' => 'n',
34 'CONFIG_FW_LOADER_USER_HELPER_FALLBACK' => 'n',
35 'CONFIG_GPIO_MACSMC' => 'y',
4ca99176
TG
36 'CONFIG_HID_APPLE' => 'm',
37 'CONFIG_HID_MAGICMOUSE' => 'm',
38 'CONFIG_I2C_APPLE' => 'm',
39 'CONFIG_MFD_APPLE_SPMI_PMU' => 'm',
40 'CONFIG_MMC_SDHCI_PCI' => 'm',
628b5aed 41 'CONFIG_NLMON' => 'm',
4ca99176
TG
42 'CONFIG_NVMEM_SPMI_MFD' => 'm',
43 'CONFIG_NVME_APPLE' => 'm',
44 'CONFIG_PCIE_APPLE' => 'm',
45 'CONFIG_PINCTRL_APPLE_GPIO' => 'm',
46 'CONFIG_POWER_RESET_MACSMC' => 'm',
47 'CONFIG_RTC_DRV_MACSMC' => 'm',
48 'CONFIG_SND_SIMPLE_CARD' => 'm',
49 'CONFIG_SND_SOC_APPLE_MCA' => 'm',
50 'CONFIG_SND_SOC_APPLE_SILICON' => 'm',
51 'CONFIG_SND_SOC_CS42L42' => 'm',
628b5aed 52 'CONFIG_SND_SOC_TAS2770' => 'm',
4ca99176
TG
53 'CONFIG_SPI_APPLE' => 'm',
54 'CONFIG_SPI_HID_APPLE_CORE' => 'm',
55 'CONFIG_SPI_HID_APPLE_OF' => 'm',
56 'CONFIG_SPMI_APPLE' => 'm',
57 'CONFIG_USB_DWC3' => 'm',
fdbce99a 58 'CONFIG_BACKLIGHT_CLASS_DEVICE' => 'y',
4ca99176
TG
59 'CONFIG_BACKLIGHT_GPIO' => 'y',
60 'CONFIG_TYPEC_TPS6598X' => 'm',
9d961f8a 61 'CONFIG_BT_HCIBCM4377' => 'm',
b1bdeb59
TG
62 'CONFIG_HID_DOCKCHANNEL' => 'm',
63 'CONFIG_APPLE_DOCKCHANNEL' => 'm',
628b5aed
TG
64);
65
66my %debian_options;
67
68for (@lines) {
69 if (/(^CONFIG_[^=]+)=(.*)/) {
70 $debian_options{$1} = $2;
71 }
72}
73
74for my $o (keys %asahi_options) {
03e35824 75 if ((not exists $debian_options{$o}) && $asahi_options{$o} ne 'n') {
628b5aed
TG
76 print "$o missing, adding\n";
77 $debian_options{$o} = $asahi_options{$o};
03e35824
TG
78 } elsif ((exists $debian_options{$o}) && ($asahi_options{$o} eq 'n')) {
79 print "$o present, removing\n";
80 delete $debian_options{$o};
81 } elsif ((exists $asahi_options{$o} && exists $debian_options{$o}) && ($debian_options{$o} ne $asahi_options{$o})) {
82 print "$o different\n";
628b5aed
TG
83 }
84}
85
03e35824 86open(CONFIG, '>', 'config.new') || die;
628b5aed
TG
87for (keys %debian_options) {
88 print CONFIG $_ . '=' . $debian_options{$_} . "\n";
89}
90close CONFIG;
Impressum, Datenschutz