jakeday / linux-surface

Linux Kernel for Surface Devices
2.6k stars 244 forks source link

List of surface related kernel config? #410

Open pwFoo opened 5 years ago

pwFoo commented 5 years ago

Instead of a complete kernel config file is there a list of surface related CONFIG_* lines?

I'm searching for (USB-)NIC, dock NIC, SSD required kernel modules / features.

ZZZXXX0110 commented 5 years ago

Been also wondering about this, there are attempts of trying to integrate the kernel patches needed for Surface into Android x86 kernel, but something seems amiss: https://forum.xda-developers.com/showpost.php?p=79025286&postcount=525

korakios commented 5 years ago

You may copy the stock configurations and the surface config and compare them

comm -3 <(<old.config grep '^[^#]' | sort) <(<new.config grep '^[^#]' | sort)

https://unix.stackexchange.com/questions/130917/compare-two-kernel-config-files-from-the-menuconfig-perspective

I am also curious ,since I tried to build an rt-kernel for audio but the performance was very poor

Gregory-Meyer commented 5 years ago

This is the difference between the Arch Linux 5.0 kernel and dmhacker's 5.0 kernel for Surface; hopefully this will be of use to you:

$ ./diffconfig arch-5.0.config dmhacker-5.0.config

-ACPI_APEI_PCIEAER y
-AD5686 m
-AD7606_IFACE_PARALLEL m
-AD7606_IFACE_SPI m
-ADE7854_I2C m
-ADE7854_SPI m
-ADT7316_I2C m
-ADT7316_SPI m
-ADXL372 m
-AUDITSYSCALL y
-BACKLIGHT_RAVE_SP m
-BME680_I2C m
-BME680_SPI m
-CDNS_I3C_MASTER m
-COMMON_CLK_BD718XX m
-CROS_EC_CTL m
-CRYPTO_MORUS1280_GLUE m
-CRYPTO_MORUS640_GLUE m
-CRYPTO_NHPOLY1305 m
-DEFAULT_SECURITY_APPARMOR n
-DEFAULT_SECURITY_SELINUX n
-DRM_XEN_FRONTEND m
-DW_I3C_MASTER m
-EROFS_FAULT_INJECTION n
-EROFS_FS_CLUSTER_PAGE_LIMIT 2
-EROFS_FS_DEBUG n
-EROFS_FS_IO_MAX_RETRIES 5
-EROFS_FS_POSIX_ACL y
-EROFS_FS_SECURITY y
-EROFS_FS_USE_VM_MAP_RAM n
-EROFS_FS_XATTR y
-EROFS_FS_ZIP y
-EROFS_FS_ZIP_CACHE_BIPOLAR y
-EROFS_FS_ZIP_CACHE_UNIPOLAR n
-EROFS_FS_ZIP_NO_CACHE n
-EVM n
-FPGA_DFL_AFU m
-FPGA_DFL_FME m
-FPGA_DFL_FME_BRIDGE m
-FPGA_DFL_FME_MGR m
-FPGA_DFL_FME_REGION m
-FPGA_DFL_PCI m
-FSI_OCC m
-GARP m
-GNSS_SERIAL m
-GNSS_SIRF_SERIAL m
-GNSS_UBX_SERIAL m
-GPIO_MADERA m
-GPIO_SIOX m
-HOTPLUG_PCI_PCIE y
-IMA n
-INPUT_RAVE_SP_PWRBUTTON m
-INTEGRITY_AUDIT y
-INTEGRITY_SIGNATURE n
-INTEL_CHT_INT33FE m
-IR_GPIO_TX m
-IR_PWM_TX m
-IR_SPI m
-ISA_BUS_API y
-JFFS2_FS_POSIX_ACL y
-JFFS2_FS_SECURITY y
-LEDS_SYSCON y
-LSM_MMAP_MIN_ADDR 65536
-MADERA_IRQ m
-MDIO_I2C m
-MEMSTICK_REALTEK_PCI m
-MEMSTICK_REALTEK_USB m
-MFD_CS47L35 y
-MFD_CS47L85 y
-MFD_CS47L90 y
-MFD_MADERA_I2C m
-MFD_MADERA_SPI m
-MISC_RTSX m
-MLX5_EN_TLS y
-MLXREG_HOTPLUG m
-MLXREG_IO m
-MMC_ALCOR m
-MMC_REALTEK_PCI m
-MMC_REALTEK_USB m
-MODULE_SIG_ALL y
-MODULE_SIG_FORCE n
-MODULE_SIG_HASH "sha512"
-MODULE_SIG_KEY "certs/signing_key.pem"
-MODULE_SIG_SHA1 n
-MODULE_SIG_SHA224 n
-MODULE_SIG_SHA256 n
-MODULE_SIG_SHA384 n
-MODULE_SIG_SHA512 y
-MSCC_OCELOT_SWITCH_OCELOT m
-MT76_CORE m
-MT76_LEDS y
-MT76_USB m
-MT76x02_LIB m
-MT76x02_USB m
-MT76x0_COMMON m
-MT76x2_COMMON m
-MTD_NAND_CORE m
-MTD_PHYSMAP_GEMINI y
-MTD_PHYSMAP_VERSATILE y
-MTK_AEE_KDUMP n
-MTK_MMC_CD_POLL n
-NETFILTER_XT_TARGET_AUDIT m
-NET_DSA_MICROCHIP_KSZ9477_SPI m
-NET_DSA_MICROCHIP_KSZ_COMMON m
-NET_DSA_TAG_GSWIP y
-NET_DSA_TAG_KSZ y
-NET_DSA_TAG_KSZ9477 y
-NFT_BRIDGE_REJECT m
-NFT_DUP_NETDEV m
-NFT_FIB_INET m
-NFT_FIB_NETDEV m
-NFT_FLOW_OFFLOAD m
-NFT_FWD_NETDEV m
-NFT_REJECT_INET m
-NF_DUP_NETDEV m
-NF_FLOW_TABLE_INET m
-NF_FLOW_TABLE_IPV4 m
-NF_FLOW_TABLE_IPV6 m
-NF_LOG_BRIDGE m
-PCIEAER y
-PCIEAER_INJECT n
-PCIEASPM y
-PCIEASPM_DEBUG n
-PCIEASPM_DEFAULT y
-PCIEASPM_PERFORMANCE n
-PCIEASPM_POWERSAVE n
-PCIEASPM_POWER_SUPERSAVE n
-PCIE_CADENCE y
-PCIE_DPC y
-PCIE_DW y
-PCIE_DW_EP y
-PCIE_DW_HOST y
-PCIE_DW_PLAT y
-PCIE_ECRC y
-PCIE_PME y
-PCIE_PTM y
-PCI_ECAM y
-PCI_HOST_COMMON y
-PINCTRL_CS47L35 y
-PINCTRL_CS47L85 y
-PINCTRL_CS47L90 y
-PINCTRL_MADERA m
-PSI_DEFAULT_DISABLED n
-PSTORE_LZ4HC_COMPRESS_DEFAULT n
-PSTORE_LZ4_COMPRESS_DEFAULT n
-PSTORE_LZO_COMPRESS_DEFAULT n
-PSTORE_ZSTD_COMPRESS_DEFAULT y
-QTNFMAC m
-RAPIDIO_TSI721 m
-RAVE_SP_EEPROM m
-RAVE_SP_WATCHDOG m
-REGMAP_SOUNDWIRE m
-REGULATOR_BD718XX m
-SECURITY_APPARMOR_BOOTPARAM_VALUE 0
-SECURITY_APPARMOR_DEBUG n
-SECURITY_APPARMOR_HASH y
-SECURITY_APPARMOR_HASH_DEFAULT y
-SECURITY_SELINUX y
-SECURITY_SELINUX_AVC_STATS y
-SECURITY_SELINUX_BOOTPARAM y
-SECURITY_SELINUX_BOOTPARAM_VALUE 0
-SECURITY_SELINUX_CHECKREQPROT_VALUE 0
-SECURITY_SELINUX_DEVELOP y
-SECURITY_SELINUX_DISABLE n
-SENSORS_MLXREG_FAN m
-SENSORS_OCC y
-SENSORS_OCC_P9_SBE m
-SENSORS_RM3100 m
-SIOX_BUS_GPIO m
-SLIM_QCOM_CTRL m
-SND_SOC_HDAC_HDA m
-SND_SOC_INTEL_SKL_HDA_DSP_GENERIC_MACH m
-SND_SOC_PCM1789 m
-SND_SOC_PCM186X m
-SND_SOC_PCM3060 m
-SND_SOC_RT5660 m
-SND_SOC_RT5682 m
-SND_SOC_TLV320AIC32X4 m
-SND_SST_IPC_PCI m
-SOCK_VALIDATE_XMIT y
-SOUNDWIRE_BUS m
-SOUNDWIRE_CADENCE m
-SOUNDWIRE_INTEL m
-STAGING_APEX_DRIVER m
-ST_UVIS25_I2C m
-ST_UVIS25_SPI m
-TPM_KEY_PARSER m
-USB_SERIAL_CONSOLE y
-VIDEO_CADENCE_CSI2RX m
-VIDEO_CADENCE_CSI2TX m
-VIDEO_SECO_RC y
-X86_16BIT y
-X86_ESPFIX64 y
-X86_PTDUMP_CORE y
-XEN_FRONT_PGDIR_SHBUF m
-XEN_GNTDEV_DMABUF y
 ACER_WIRELESS m -> n
 ACPI_TAD m -> n
 AD2S1200 m -> n
 AD2S1210 m -> n
 AD2S90 m -> n
 AD5272 m -> n
 AD5686_SPI m -> n
 AD5696_I2C m -> n
 AD5758 m -> n
 AD5933 m -> n
 AD7124 m -> n
 AD7150 m -> n
 AD7152 m -> n
 AD7192 m -> n
 AD7280 m -> n
 AD7606 m -> n
 AD7746 m -> n
 AD7780 m -> n
 AD7816 m -> n
 AD7949 m -> n
 AD9832 m -> n
 AD9834 m -> n
 ADE7854 m -> n
 ADIS16201 m -> n
 ADIS16203 m -> n
 ADIS16209 m -> n
 ADIS16240 m -> n
 ADT7316 m -> n
 ADXL372_I2C m -> n
 ADXL372_SPI m -> n
 ASIX_PHY m -> n
 ASYMMETRIC_TPM_KEY_SUBTYPE m -> n
 ATH10K_SPECTRAL y -> n
 ATH9K_COMMON_SPECTRAL y -> n
 AUDIT y -> n
 B53_SERDES m -> n
 BLK_CGROUP_IOLATENCY y -> n
 BME680 m -> n
 BT_HCIBTUSB_AUTOSUSPEND y -> n
 BT_HCIUART_RTL y -> n
 BT_MTKUART m -> n
 CAN_FLEXCAN m -> n
 CAN_UCAN m -> n
 CAVIUM_PTP m -> y
 CEC_CORE y -> m
 CFG80211_DEFAULT_PS y -> n
 CHARGER_ADP5061 m -> n
 CHARGER_CROS_USBPD m -> n
 CHELSIO_IPSEC_INLINE y -> n
 CHROMEOS_TBMC m -> n
 COMMON_CLK_MAX9485 m -> n
 COMMON_CLK_SI544 m -> n
 CONSOLE_LOGLEVEL_QUIET 1 -> 4
 CROS_EC_I2C m -> n
 CROS_EC_SPI m -> n
 CRYPTO_ADIANTUM m -> n
 CRYPTO_AEGIS128 m -> n
 CRYPTO_AEGIS128L m -> n
 CRYPTO_AEGIS128L_AESNI_SSE2 m -> n
 CRYPTO_AEGIS128_AESNI_SSE2 m -> n
 CRYPTO_AEGIS256 m -> n
 CRYPTO_AEGIS256_AESNI_SSE2 m -> n
 CRYPTO_CFB m -> n
 CRYPTO_DEFLATE m -> y
 CRYPTO_DEV_CHELSIO_TLS m -> n
 CRYPTO_ECB m -> y
 CRYPTO_MORUS1280 m -> n
 CRYPTO_MORUS1280_AVX2 m -> n
 CRYPTO_MORUS1280_SSE2 m -> n
 CRYPTO_MORUS640 m -> n
 CRYPTO_MORUS640_SSE2 m -> n
 CRYPTO_NHPOLY1305_AVX2 m -> n
 CRYPTO_NHPOLY1305_SSE2 m -> n
 CRYPTO_OFB m -> n
 CRYPTO_SHA512 y -> m
 CRYPTO_STREEBOG m -> n
 CRYPTO_ZSTD y -> n
 CXD2880_SPI_DRV m -> n
 DEBUG_WX y -> n
 DM_UNSTRIPED m -> n
 DM_WRITECACHE m -> n
 DP83TC811_PHY m -> n
 DRM_CDNS_DSI m -> n
 DRM_DP_CEC y -> n
 DRM_I2C_NXP_TDA9950 m -> n
 DRM_PANEL_ARM_VERSATILE m -> n
 DRM_PANEL_ILITEK_IL9322 m -> n
 DRM_PANEL_ILITEK_ILI9881C m -> n
 DRM_PANEL_OLIMEX_LCD_OLINUXINO m -> n
 DRM_PANEL_RAYDIUM_RM68200 m -> n
 DRM_PANEL_SAMSUNG_S6D16D0 m -> n
 DRM_PANEL_TRULY_NT35597_WQXGA m -> n
 DRM_RCAR_LVDS m -> n
 DRM_THINE_THC63LVD1024 m -> n
 DRM_TI_SN65DSI86 m -> n
 DRM_TOSHIBA_TC358764 m -> n
 DRM_VKMS m -> n
 DRM_XEN y -> n
 DVB_MMAP y -> n
 DW_AXI_DMAC m -> n
 EBC_C384_WDT m -> n
 EEPROM_EE1004 m -> n
 ENERGY_MODEL y -> n
 EROFS_FS m -> n
 FPGA_DFL m -> n
 FPGA_MGR_MACHXO2_SPI m -> n
 FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER y -> n
 FSI_NEW_DEV_NODE y -> n
 FSI_SBEFIFO m -> n
 GEMINI_ETHERNET m -> n
 GNSS m -> n
 GPD_POCKET_FAN m -> n
 GPIO_CADENCE m -> n
 GPIO_HLWD m -> n
 GPIO_PCIE_IDIO_24 m -> n
 GPIO_SAMA5D2_PIOBU m -> n
 GPIO_WINBOND m -> n
 GPIO_WS16C48 m -> n
 HID_BIGBEN_FF m -> n
 HID_COUGAR m -> n
 HID_ELAN m -> n
 HID_GOOGLE_HAMMER m -> n
 HID_JABRA m -> n
 HID_REDRAGON m -> n
 HID_STEAM m -> n
 HOTPLUG_PCI_SHPC y -> n
 HSA_AMD y -> n
 HUAWEI_WMI m -> n
 HZ 300 -> 1000
 HZ_1000 n -> y
 HZ_300 y -> n
 I2C_FSI m -> n
 I2C_MULTI_INSTANTIATE m -> n
 I2C_NVIDIA_GPU m -> n
 I3C m -> n
 ICE m -> n
 IDLE_INJECT y -> n
 IEEE802154_HWSIM m -> n
 IEEE802154_MCR20A m -> n
 IGC m -> n
 IIO_BUFFER_HW_CONSUMER m -> n
 IIO_RESCALE m -> n
 INTEGRITY y -> n
 INTEL_ATOMISP2_PM m -> n
 INTEL_CHTDC_TI_PWRBTN m -> n
 INTEL_TH_ACPI m -> n
 IP_VS_MH m -> n
 IR_IMON_DECODER m -> n
 IR_IMON_RAW m -> n
 ISL29501 m -> n
 JAILHOUSE_GUEST y -> n
 JFFS2_FS_XATTR y -> n
 JFFS2_SUMMARY y -> n
 JOYSTICK_PXRC m -> n
 KEYBOARD_MTK_PMIC m -> n
 LAN743X m -> n
 LCD_OTM3225A m -> n
 LEDS_AN30259A m -> n
 LEDS_CLASS y -> m
 LEDS_CR0014114 m -> n
 LEDS_LM3601X m -> n
 LEDS_LM3692X m -> n
 LEDS_MLXREG m -> n
 LEDS_TRIGGER_NETDEV m -> n
 LEDS_TRIGGER_PATTERN m -> n
 LG_LAPTOP m -> n
 LIRC y -> n
 LOCALVERSION "" -> "-surface"
 LOCALVERSION_AUTO y -> n
 LTC1660 m -> n
 LV0104CS m -> n
 MCP3911 m -> n
 MCP4018 m -> n
 MCP41010 m -> n
 MDIO_MSCC_MIIM m -> n
 MELLANOX_PLATFORM y -> n
 MENZ069_WATCHDOG m -> n
 MFD_CROS_EC_CHARDEV m -> n
 MFD_MADERA m -> n
 MFD_ROHM_BD718XX m -> n
 MICROCHIP_T1_PHY m -> n
 MISC_ALCOR_PCI m -> n
 MISC_RTSX_PCI m -> n
 MISC_RTSX_USB m -> n
 MLX90632 m -> n
 MMC_SDHCI_AM654 m -> n
 MMC_SDHCI_OF_DWCMSHC m -> n
 MODIFY_LDT_SYSCALL y -> n
 MODULE_SIG y -> n
 MODVERSIONS n -> y
 MOST_CDEV m -> n
 MOST_DIM2 m -> n
 MOST_I2C m -> n
 MOST_NET m -> n
 MOST_SOUND m -> n
 MOST_USB m -> n
 MOST_VIDEO m -> n
 MSCC_OCELOT_SWITCH m -> n
 MT76x0E m -> n
 MT76x0U m -> n
 MT76x2E m -> n
 MT76x2U m -> n
 MTD_PHYSMAP_GPIO_ADDR y -> n
 MTD_PHYSMAP_OF y -> n
 MTD_SPI_NAND m -> n
 MTK_MMC m -> n
 MUX_ADGS1408 m -> n
 NCSI_OEM_CMD_GET_MAC y -> n
 NETDEVSIM m -> n
 NET_DSA_LANTIQ_GSWIP m -> n
 NET_DSA_LEGACY n -> y
 NET_DSA_MICROCHIP_KSZ9477 m -> n
 NET_DSA_MV88E6XXX_PTP y -> n
 NET_DSA_REALTEK_SMI m -> n
 NET_DSA_VITESSE_VSC73XX m -> n
 NET_EMATCH_IPT m -> n
 NET_SCH_CAKE m -> n
 NET_SCH_ETF m -> n
 NET_SCH_SKBPRIO m -> n
 NET_SCH_TAPRIO m -> n
 NFT_CONNLIMIT m -> n
 NFT_OSF m -> n
 NFT_SOCKET m -> n
 NFT_TPROXY m -> n
 NFT_TUNNEL m -> n
 NFT_XFRM m -> n
 NF_FLOW_TABLE m -> n
 NF_TABLES_BRIDGE y -> n
 NF_TABLES_INET y -> n
 NF_TABLES_NETDEV y -> n
 NF_TABLES_SET m -> n
 NI_XGE_MANAGEMENT_ENET m -> n
 NODES_SHIFT 5 -> 2
 NVME_TARGET_TCP m -> n
 NVME_TCP m -> n
 OF_FPGA_REGION m -> n
 OF_PMEM m -> y
 OVERLAY_FS_METACOPY y -> n
 OVERLAY_FS_XINO_AUTO y -> n
 PCIEPORTBUS y -> n
 PCIE_CADENCE_EP y -> n
 PCIE_CADENCE_HOST y -> n
 PCIE_DW_PLAT_EP y -> n
 PCIE_DW_PLAT_HOST y -> n
 PCIE_XILINX y -> n
 PCI_FTPCI100 y -> n
 PCI_HOST_GENERIC y -> n
 PCI_MESON y -> n
 PCI_P2PDMA y -> n
 PCI_PF_STUB m -> n
 PHYSICAL_ALIGN 0x200000 -> 0x1000000
 PHY_CADENCE_DP m -> n
 PHY_CADENCE_SIERRA m -> n
 PHY_FSL_IMX8MQ_USB m -> n
 PHY_MAPPHONE_MDM6600 m -> n
 PHY_OCELOT_SERDES m -> n
 PINCTRL_AXP209 m -> n
 PINCTRL_BROXTON y -> m
 PINCTRL_CANNONLAKE y -> m
 PINCTRL_CEDARFORK y -> m
 PINCTRL_CHERRYVIEW y -> m
 PINCTRL_DENVERTON y -> m
 PINCTRL_GEMINILAKE y -> m
 PINCTRL_ICELAKE y -> n
 PINCTRL_INTEL y -> m
 PINCTRL_LEWISBURG y -> m
 PINCTRL_OCELOT y -> n
 PINCTRL_SUNRISEPOINT y -> m
 PKCS8_PRIVATE_KEY_PARSER m -> n
 PROC_VMCORE_DEVICE_DUMP y -> n
 PSI y -> n
 PSTORE_COMPRESS_DEFAULT "zstd" -> "deflate"
 PSTORE_DEFLATE_COMPRESS m -> y
 PSTORE_DEFLATE_COMPRESS_DEFAULT n -> y
 PSTORE_LZ4HC_COMPRESS m -> n
 PSTORE_LZ4_COMPRESS m -> n
 PSTORE_LZO_COMPRESS m -> n
 PSTORE_ZSTD_COMPRESS y -> n
 QCOM_SPMI_ADC5 m -> n
 QTNFMAC_PCIE m -> n
 RAVE_SP_CORE m -> n
 RC_XBOX_DVD m -> n
 REGULATOR_88PG86X m -> n
 REGULATOR_MCP16502 m -> n
 REGULATOR_SY8106A m -> n
 RTC_DRV_CMOS y -> m
 RTC_DRV_CROS_EC m -> n
 RTC_DRV_ISL12026 m -> n
 SATA_MOBILE_LPM_POLICY 3 -> 0
 SCSI_MYRB m -> n
 SCSI_MYRS m -> n
 SCSI_UFS_BSG y -> n
 SCSI_UFS_CDNS_PLATFORM m -> n
 SD_ADC_MODULATOR m -> n
 SECURITY_APPARMOR y -> n
 SENSORS_NPCM7XX m -> n
 SENSORS_OCC_P8_I2C m -> n
 SENSORS_RM3100_I2C m -> n
 SENSORS_RM3100_SPI m -> n
 SENSORS_W83773G m -> n
 SERIO_OLPC_APSP m -> n
 SFP m -> n
 SI1133 m -> n
 SIOX m -> n
 SLIMBUS m -> n
 SND_HDA_POWER_SAVE_DEFAULT 0 -> 10
 SND_SOC_ADAU1761_SPI m -> n
 SND_SOC_AK4104 m -> n
 SND_SOC_AK4118 m -> n
 SND_SOC_AK4458 m -> n
 SND_SOC_AK5558 m -> n
 SND_SOC_AMD_ACP3x m -> n
 SND_SOC_AMD_CZ_DA7219MX98357_MACH m -> n
 SND_SOC_BD28623 m -> n
 SND_SOC_CPCAP m -> n
 SND_SOC_CS4271_SPI m -> n
 SND_SOC_ES7241 m -> n
 SND_SOC_ES8328_SPI m -> n
 SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH n -> m
 SND_SOC_INTEL_CHT_BSW_NAU8824_MACH m -> n
 SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH m -> n
 SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH m -> n
 SND_SOC_INTEL_KBL_DA7219_MAX98927_MACH m -> n
 SND_SOC_INTEL_KBL_RT5660_MACH m -> n
 SND_SOC_INTEL_SKYLAKE_HDAUDIO_CODEC y -> n
 SND_SOC_MAX9759 m -> n
 SND_SOC_MAX98088 m -> n
 SND_SOC_MAX98373 m -> n
 SND_SOC_MAX9867 m -> n
 SND_SOC_MIKROE_PROTO m -> n
 SND_SOC_MT6351 m -> n
 SND_SOC_NAU8822 m -> n
 SND_SOC_PCM1789_I2C m -> n
 SND_SOC_PCM179X_SPI m -> n
 SND_SOC_PCM186X_I2C m -> n
 SND_SOC_PCM186X_SPI m -> n
 SND_SOC_PCM3060_I2C m -> n
 SND_SOC_PCM3060_SPI m -> n
 SND_SOC_PCM3168A_SPI m -> n
 SND_SOC_PCM512x_SPI m -> n
 SND_SOC_SIMPLE_AMPLIFIER m -> n
 SND_SOC_SSM2305 m -> n
 SND_SOC_SSM2602_SPI m -> n
 SND_SOC_TAS6424 m -> n
 SND_SOC_TDA7419 m -> n
 SND_SOC_TLV320AIC23_SPI m -> n
 SND_SOC_TLV320AIC32X4_I2C m -> n
 SND_SOC_TLV320AIC32X4_SPI m -> n
 SND_SOC_TSCS42XX m -> n
 SND_SOC_TSCS454 m -> n
 SND_SOC_WM8770 m -> n
 SND_SOC_WM8782 m -> n
 SND_SOC_WM8804_SPI m -> n
 SND_SOC_XILINX_I2S m -> n
 SND_SST_ATOM_HIFI2_PLATFORM_PCI m -> n
 SND_XEN_FRONTEND m -> n
 SOUNDWIRE y -> n
 SPI_MXIC m -> n
 SQUASHFS_DECOMP_MULTI y -> n
 SQUASHFS_DECOMP_MULTI_PERCPU n -> y
 STAGING_GASKET_FRAMEWORK m -> n
 STM_PROTO_BASIC m -> n
 STM_PROTO_SYS_T m -> n
 ST_UVIS25 m -> n
 TINYDRM_HX8357D m -> n
 TINYDRM_ILI9225 m -> n
 TINYDRM_ILI9341 m -> n
 TINYDRM_ST7735R m -> n
 TI_DAC5571 m -> n
 TI_DAC7311 m -> n
 TLS_DEVICE y -> n
 TOUCHSCREEN_ADC m -> n
 TOUCHSCREEN_BU21029 m -> n
 TOUCHSCREEN_CHIPONE_ICN8505 m -> n
 TOUCHSCREEN_DMI y -> n
 TQMX86_WDT m -> n
 TSL2772 m -> n
 TYPEC_DP_ALTMODE m -> n
 TYPEC_MUX_PI3USB30532 m -> n
 TYPEC_RT1711H m -> n
 UBIFS_FS_AUTHENTICATION y -> n
 UCSI_CCG m -> n
 UDMABUF y -> n
 USB y -> m
 USB_COMMON y -> m
 USB_NET_AQC111 m -> n
 USB_ROLES_INTEL_XHCI m -> n
 USB_SERIAL y -> m
 USB_SERIAL_DEBUG m -> n
 VBOXGUEST m -> n
 VCNL4035 m -> n
 VIDEO_ASPEED m -> n
 VIDEO_CADENCE y -> n
 VIDEO_CROS_EC_CEC m -> n
 VIDEO_IPU3_IMGU m -> n
 VIDEO_SECO_CEC m -> n
 VIDEO_VICODEC m -> n
 VIRT_WIFI m -> n
 VL53L0X_I2C m -> n
 VLAN_8021Q_GVRP y -> n
 X86_CPU_RESCTRL y -> n
 X86_INTEL_MPX n -> y
 XDP_SOCKETS y -> n
 XEN_GRANT_DMA_ALLOC y -> n
 XFRM_INTERFACE m -> n
 XFS_ONLINE_REPAIR y -> n
 XILINX_VCU m -> n
 XIL_AXIS_FIFO m -> n
 ZOPT2201 m -> n
 ZSTD_COMPRESS y -> m
 ZSTD_DECOMPRESS y -> m
+INTEL_IPTS m
+MEDIA_CEC_RC y
+MWLWIFI n
+NET_DSA_MV88E6060 m
+NET_DSA_TAG_TRAILER y
+OVERLAY_FS_NFS_EXPORT n
+SURFACE_3_POWER_OPREGION m
+SURFACE_ACPI m
+SURFACE_ACPI_SAN y
+SURFACE_ACPI_SSH y
+SURFACE_ACPI_VHF y
lhindir commented 4 years ago

Did you get the right config revision? That seems like a lot of differences. How many of the removed lines default to the same value?

I’m looking into compiling my own kernel for the Surface and I’m trying to find the strictly relevant config options. It’s hard to get very far because I can’t tell how @jakeday and @dmhacker are making revisions to the configs. The patches and firmware are more straightforward, but they seem to just upload the configs in full with each version update. Are they going through make menuconfig for every version? It’s easier to tell where most of the patches and firmware came from, but the I can’t figure out where the config option choices are coming from, or why those choices are made.