]> git.zerfleddert.de Git - m1-debian/blobdiff - patch_kernel_config.pl
more useful tips
[m1-debian] / patch_kernel_config.pl
index 0537c8cb931685831e6078c9334d768d6330247d..2bc15b8c34028d89d04e746ebaa614ebe73ecb19 100644 (file)
@@ -6,7 +6,7 @@ use warnings FATAL => 'all';
 # This was taken from the linux-image-5.16.0-3-arm64-unsigned
 # Than it was copied as .config in the asahi tree
 # Than make olddefconfig was executed twice
-my @lines = `cat /boot/config-5.17.0-rc6-asahi-next-20220301-25570-g0cf7b747744a`;
+my @lines = `cat config`;
 chomp @lines;
 
 my %asahi_options = (
@@ -56,6 +56,20 @@ my %asahi_options = (
         'CONFIG_SPMI_APPLE' => 'y',
         'CONFIG_USB_DWC3' => 'y',
         'CONFIG_USB_DWC3_PCI' => 'y',
+        'CONFIG_FB_EFI' => 'y',
+        'CONFIG_BACKLIGHT_CLASS_DEVICE' => 'y',
+        'CONFIG_BACKLIGHT_GPIO' => 'm',
+        'CONFIG_TYPEC_TPS6598X' => 'y',
+        'CONFIG_BT_HCIBCM4377' => 'm',
+        'CONFIG_HID_DOCKCHANNEL' => 'm',
+        'CONFIG_APPLE_DOCKCHANNEL' => 'm',
+        'CONFIG_SND_SOC_CS42L84' => 'm',
+        'CONFIG_SND_SOC_TAS2780' => 'm',
+        'CONFIG_USB_XHCI_PCI_ASMEDIA' => 'y',
+        'CONFIG_APPLE_M1_CPU_PMU' => 'y',
+        'CONFIG_SND_SOC_CS42L83' => 'm',
+        'CONFIG_DRM_APPLE' => 'y',
+        'CONFIG_DRM_ASAHI' => 'y',
 );
 
 my %debian_options;
@@ -67,13 +81,18 @@ for (@lines) {
 }
 
 for my $o (keys %asahi_options) {
-        if (not exists $debian_options{$o}) {
+        if ((not exists $debian_options{$o}) && $asahi_options{$o} ne 'n') {
                 print "$o missing, adding\n";
                 $debian_options{$o} = $asahi_options{$o};
+        } elsif ((exists $debian_options{$o}) && ($asahi_options{$o} eq 'n')) {
+                print "$o present, removing\n";
+                delete $debian_options{$o};
+        } elsif ((exists $asahi_options{$o} && exists $debian_options{$o}) && ($debian_options{$o} ne $asahi_options{$o})) {
+                print "$o different\n";
         }
 }
 
-open(CONFIG, '>', 'config') || die;
+open(CONFIG, '>', 'config.new') || die;
 for (keys %debian_options) {
         print CONFIG $_ . '=' . $debian_options{$_} . "\n";
 }
Impressum, Datenschutz