summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaura Abbott <labbott@redhat.com>2018-02-05 11:20:04 -0800
committerLaura Abbott <labbott@redhat.com>2018-02-05 11:35:34 -0800
commitc41960f76806a516b0c4fd1953779fcd20bc7633 (patch)
treeb71e9707b6ad3b47e8f80bddf5874777d6582b10
parent622598fecff89da5536a5182e8f9dd5527b8471e (diff)
downloadkernel-c41960f76806a516b0c4fd1953779fcd20bc7633.tar.gz
kernel-c41960f76806a516b0c4fd1953779fcd20bc7633.tar.xz
kernel-c41960f76806a516b0c4fd1953779fcd20bc7633.zip
Linux v4.15
-rw-r--r--0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch90
-rw-r--r--0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch47
-rw-r--r--0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch106
-rw-r--r--0001-Input-gpio_keys-Allow-suppression-of-input-events-fo.patch163
-rw-r--r--0001-Make-get_cert_list-not-complain-about-cert-lists-tha.patch109
-rw-r--r--0001-PATCH-staging-rtl8822be-fix-wrong-dma-unmap-len.patch46
-rw-r--r--0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch106
-rw-r--r--0001-ipv6-avoid-overflow-of-offset-in-ip6_find_1stfragopt.patch54
-rw-r--r--0001-mm-thp-Do-not-make-page-table-dirty-unconditionally-.patch108
-rw-r--r--0001-platform-x86-Add-driver-for-ACPI-INT0002-Virtual-GPI.patch339
-rw-r--r--0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch99
-rw-r--r--0002-Add-efi_status_to_str-and-rework-efi_status_to_err.patch183
-rw-r--r--0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch84
-rw-r--r--0002-Input-soc_button_array-Suppress-power-button-presses.patch62
-rw-r--r--0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch33
-rw-r--r--0002-mfd-Add-Cherry-Trail-Whiskey-Cove-PMIC-driver.patch355
-rw-r--r--0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch78
-rw-r--r--0003-Make-get_cert_list-use-efi_status_to_str-to-print-er.patch38
-rw-r--r--0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch274
-rw-r--r--0003-power-supply-core-Add-support-for-supplied-from-devi.patch57
-rw-r--r--0004-platform-x86-intel_cht_int33fe-Set-supplied-from-pro.patch48
-rw-r--r--0005-ACPI-PMIC-xpower-Add-support-for-the-GPI1-regulator-.patch80
-rw-r--r--0006-Input-axp20x-pek-Add-wakeup-support.patch67
-rw-r--r--0007-platform-x86-silead_dmi-Add-touchscreen-info-for-GP-.patch56
-rw-r--r--0008-platform-x86-silead_dmi-Add-touchscreen-info-for-PoV.patch59
-rw-r--r--0009-platform-x86-silead_dmi-Add-touchscreen-info-for-Pip.patch57
-rw-r--r--0012-Input-gpio_keys-Do-not-report-wake-button-presses-as.patch150
-rw-r--r--0014-mmc-sdhci-acpi-Workaround-conflict-with-PCI-wifi-on-.patch143
-rw-r--r--0016-Input-silead-Do-not-try-to-directly-access-the-GPIO-.patch54
-rw-r--r--AllWinner-net-emac.patch2554
-rw-r--r--CVE-2017-11473.patch48
-rw-r--r--KEYS-Add-a-system-blacklist-keyring.patch102
-rw-r--r--MODSIGN-Don-t-try-secure-boot-if-EFI-runtime-is-disa.patch32
-rw-r--r--PCI-aspm-deal-with-missing-root-ports-in-link-state-handling.patch55
-rw-r--r--RFC-audit-fix-a-race-condition-with-the-auditd-tracking-code.patch156
-rw-r--r--USB-ulpi-fix-bus-node-lookup.patch48
-rw-r--r--allwinner-net-emac.patch1791
-rw-r--r--arm-dts-boneblack-wireless-add-WL1835-Bluetooth-device-node.patch40
-rw-r--r--arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch41
-rw-r--r--arm-exynos-fix-usb3.patch411
-rw-r--r--arm-thermal-fixes.patch224
-rw-r--r--arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch146
-rw-r--r--arm64-socionext-96b-enablement.patch420
-rw-r--r--baseconfig/CONFIG_ACT200L_DONGLE1
-rw-r--r--baseconfig/CONFIG_ACTISYS_DONGLE1
-rw-r--r--baseconfig/CONFIG_ALI_FIR1
-rw-r--r--baseconfig/CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK1
-rw-r--r--baseconfig/CONFIG_BPF_JIT_ALWAYS_ON1
-rw-r--r--baseconfig/CONFIG_BTRFS_FS_REF_VERIFY1
-rw-r--r--baseconfig/CONFIG_BT_HCIBTUSB_AUTOSUSPEND1
-rw-r--r--baseconfig/CONFIG_CHASH_SELFTEST1
-rw-r--r--baseconfig/CONFIG_CHASH_STATS1
-rw-r--r--baseconfig/CONFIG_CHT_DC_TI_PMIC_OPREGION1
-rw-r--r--baseconfig/CONFIG_CPU_ISOLATION1
-rw-r--r--baseconfig/CONFIG_CRAMFS_MTD1
-rw-r--r--baseconfig/CONFIG_CRYPTO_SM31
-rw-r--r--baseconfig/CONFIG_DEBUG_KERNEL_DC1
-rw-r--r--baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible1
-rw-r--r--baseconfig/CONFIG_DONGLE1
-rw-r--r--baseconfig/CONFIG_DP83822_PHY1
-rw-r--r--baseconfig/CONFIG_DPM_WATCHDOG (renamed from baseconfig/CONFIG_DPM_WATCHDOG revisit this in debug)0
-rw-r--r--baseconfig/CONFIG_DRM_AMD_DC1
-rw-r--r--baseconfig/CONFIG_DRM_AMD_DC_FBC1
-rw-r--r--baseconfig/CONFIG_DRM_AMD_DC_PRE_VEGA1
-rw-r--r--baseconfig/CONFIG_DRM_I2C_ADV75112
-rw-r--r--baseconfig/CONFIG_DRM_I2C_ADV7511_CEC1
-rw-r--r--baseconfig/CONFIG_DRM_PANEL_ORISETECH_OTM8009A1
-rw-r--r--baseconfig/CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN1
-rw-r--r--baseconfig/CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X031
-rw-r--r--baseconfig/CONFIG_DRM_PANEL_SEIKO_43WVF1G1
-rw-r--r--baseconfig/CONFIG_DRM_SII92341
-rw-r--r--baseconfig/CONFIG_DRM_SIL_SII86202
-rw-r--r--baseconfig/CONFIG_DS44241
-rw-r--r--baseconfig/CONFIG_ESI_DONGLE1
-rw-r--r--baseconfig/CONFIG_GIRBIL_DONGLE1
-rw-r--r--baseconfig/CONFIG_GPIO_MAX3191X1
-rw-r--r--baseconfig/CONFIG_GPIO_MB86S7X1
-rw-r--r--baseconfig/CONFIG_GPIO_TEGRA1861
-rw-r--r--baseconfig/CONFIG_GUP_BENCHMARK1
-rw-r--r--baseconfig/CONFIG_HID_CP21122
-rw-r--r--baseconfig/CONFIG_HWSPINLOCK2
-rw-r--r--baseconfig/CONFIG_IIO_CROS_EC_ACCEL_LEGACY1
-rw-r--r--baseconfig/CONFIG_INTEL_SOC_PMIC_CHTDC_TI1
-rw-r--r--baseconfig/CONFIG_IP6_NF_TARGET_NPT2
-rw-r--r--baseconfig/CONFIG_IPMI_PROC_INTERFACE1
-rw-r--r--baseconfig/CONFIG_IPX2
-rw-r--r--baseconfig/CONFIG_IRCOMM1
-rw-r--r--baseconfig/CONFIG_IRDA2
-rw-r--r--baseconfig/CONFIG_IRDA_CACHE_LAST_LSAP1
-rw-r--r--baseconfig/CONFIG_IRDA_DEBUG1
-rw-r--r--baseconfig/CONFIG_IRDA_FAST_RR1
-rw-r--r--baseconfig/CONFIG_IRDA_ULTRA1
-rw-r--r--baseconfig/CONFIG_IRLAN1
-rw-r--r--baseconfig/CONFIG_IRNET1
-rw-r--r--baseconfig/CONFIG_IRTTY_SIR1
-rw-r--r--baseconfig/CONFIG_IR_SIR2
-rw-r--r--baseconfig/CONFIG_KINGSUN_DONGLE1
-rw-r--r--baseconfig/CONFIG_KS959_DONGLE1
-rw-r--r--baseconfig/CONFIG_KSDAZZLE_DONGLE1
-rw-r--r--baseconfig/CONFIG_LEDS_TRIGGER_ACTIVITY1
-rw-r--r--baseconfig/CONFIG_LIRC_SIR1
-rw-r--r--baseconfig/CONFIG_LITELINK_DONGLE1
-rw-r--r--baseconfig/CONFIG_MA600_DONGLE1
-rw-r--r--baseconfig/CONFIG_MANAGER_SBS1
-rw-r--r--baseconfig/CONFIG_MCP2120_DONGLE1
-rw-r--r--baseconfig/CONFIG_MCS_FIR1
-rw-r--r--baseconfig/CONFIG_MESON_GX_PM_DOMAINS1
-rw-r--r--baseconfig/CONFIG_MESON_MX_EFUSE1
-rw-r--r--baseconfig/CONFIG_MESON_MX_SOCINFO1
-rw-r--r--baseconfig/CONFIG_MLX4_CORE_GEN21
-rw-r--r--baseconfig/CONFIG_MMC_SDHCI_OMAP1
-rw-r--r--baseconfig/CONFIG_MTD_SHARPSL_PARTS1
-rw-r--r--baseconfig/CONFIG_NCP_FS2
-rw-r--r--baseconfig/CONFIG_NET_SCH_CBS1
-rw-r--r--baseconfig/CONFIG_NOUVEAU_DEBUG_MMU1
-rw-r--r--baseconfig/CONFIG_NSC_FIR1
-rw-r--r--baseconfig/CONFIG_NTB_SWITCHTEC1
-rw-r--r--baseconfig/CONFIG_NVME_MULTIPATH1
-rw-r--r--baseconfig/CONFIG_OLD_BELKIN_DONGLE1
-rw-r--r--baseconfig/CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW1
-rw-r--r--baseconfig/CONFIG_PINCTRL_CEDARFORK1
-rw-r--r--baseconfig/CONFIG_PINCTRL_MESON_GXBB1
-rw-r--r--baseconfig/CONFIG_PINCTRL_MESON_GXL1
-rw-r--r--baseconfig/CONFIG_PREEMPTIRQ_EVENTS1
-rw-r--r--baseconfig/CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT1
-rw-r--r--baseconfig/CONFIG_RENESAS_PHY1
-rw-r--r--baseconfig/CONFIG_RESET_ATTACK_MITIGATION2
-rw-r--r--baseconfig/CONFIG_RFD774021
-rw-r--r--baseconfig/CONFIG_RPMSG_VIRTIO1
-rw-r--r--baseconfig/CONFIG_RTC_DRV_PCF853631
-rw-r--r--baseconfig/CONFIG_SATA_MOBILE_LPM_POLICY1
-rw-r--r--baseconfig/CONFIG_SENSORS_MAX317851
-rw-r--r--baseconfig/CONFIG_SENSORS_MAX66211
-rw-r--r--baseconfig/CONFIG_SIGMATEL_FIR1
-rw-r--r--baseconfig/CONFIG_SMC_IRCC_FIR1
-rw-r--r--baseconfig/CONFIG_SND_BCD20002
-rw-r--r--baseconfig/CONFIG_SND_HDA_POWER_SAVE_DEFAULT2
-rw-r--r--baseconfig/CONFIG_SND_SOC_AMD_CZ_RT5645_MACH1
-rw-r--r--baseconfig/CONFIG_SOUND_PRIME1
-rw-r--r--baseconfig/CONFIG_TEGRA_BPMP_THERMAL1
-rw-r--r--baseconfig/CONFIG_TEKRAM_DONGLE1
-rw-r--r--baseconfig/CONFIG_TEST_FIND_BIT1
-rw-r--r--baseconfig/CONFIG_TI_DAC082S0851
-rw-r--r--baseconfig/CONFIG_TOIM3232_DONGLE1
-rw-r--r--baseconfig/CONFIG_TOSHIBA_FIR1
-rw-r--r--baseconfig/CONFIG_TOUCHSCREEN_EXC30001
-rw-r--r--baseconfig/CONFIG_TOUCHSCREEN_HIDEEP1
-rw-r--r--baseconfig/CONFIG_TOUCHSCREEN_S6SY7611
-rw-r--r--baseconfig/CONFIG_TPS68470_PMIC_OPREGION1
-rw-r--r--baseconfig/CONFIG_TYPEC1
-rw-r--r--baseconfig/CONFIG_TYPEC_TPS6598X1
-rw-r--r--baseconfig/CONFIG_USB_GADGET_LEGACY1
-rw-r--r--baseconfig/CONFIG_USB_IRDA1
-rw-r--r--baseconfig/CONFIG_VIA_FIR1
-rw-r--r--baseconfig/CONFIG_VLSI_FIR1
-rw-r--r--baseconfig/CONFIG_VSOCKETS_DIAG1
-rw-r--r--baseconfig/CONFIG_W1_SLAVE_DS28E171
-rw-r--r--baseconfig/CONFIG_WINBOND_FIR1
-rw-r--r--baseconfig/CONFIG_XEN_PVCALLS_FRONTEND1
-rw-r--r--baseconfig/CONFIG_XFS_ONLINE_SCRUB1
-rw-r--r--baseconfig/arm/CONFIG_ARCH_BCM_HR21
-rw-r--r--baseconfig/arm/CONFIG_ARM_SPE_PMU1
-rw-r--r--baseconfig/arm/CONFIG_BINFMT_ELF_FDPIC1
-rw-r--r--baseconfig/arm/CONFIG_DRM_SUN4I_HDMI (renamed from baseconfig/arm/armv7/CONFIG_DRM_SUN4I_HDMI)0
-rw-r--r--baseconfig/arm/CONFIG_DRM_SUN4I_HDMI_CEC1
-rw-r--r--baseconfig/arm/CONFIG_GPIO_PCF857X (renamed from baseconfig/arm/armv7/CONFIG_GPIO_PCF857X)0
-rw-r--r--baseconfig/arm/CONFIG_HISI_PMU1
-rw-r--r--baseconfig/arm/CONFIG_MESON_IRQ_GPIO1
-rw-r--r--baseconfig/arm/CONFIG_MMC_MESON_MX_SDIO1
-rw-r--r--baseconfig/arm/CONFIG_MMC_SDHCI_OMAP1
-rw-r--r--baseconfig/arm/CONFIG_NVMEM_SNVS_LPGPR1
-rw-r--r--baseconfig/arm/CONFIG_PCIE_HISI_STB1
-rw-r--r--baseconfig/arm/CONFIG_PINCTRL_MESON81
-rw-r--r--baseconfig/arm/CONFIG_PINCTRL_MESON8B1
-rw-r--r--baseconfig/arm/CONFIG_QCOM_RMTFS_MEM1
-rw-r--r--baseconfig/arm/CONFIG_RESET_SIMPLE1
-rw-r--r--baseconfig/arm/CONFIG_ROCKCHIP_LVDS1
-rw-r--r--baseconfig/arm/CONFIG_SIMPLE_PM_BUS1
-rw-r--r--baseconfig/arm/CONFIG_VIDEO_ROCKCHIP_RGA1
-rw-r--r--baseconfig/arm/CONFIG_VIDEO_TEGRA_HDMI_CEC1
-rw-r--r--baseconfig/arm/aarch64/CONFIG_64BIT (renamed from baseconfig/arm/arm64/CONFIG_64BIT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI (renamed from baseconfig/arm/arm64/CONFIG_ACPI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_APEI (renamed from baseconfig/arm/arm64/CONFIG_ACPI_APEI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_APEI_EINJ (renamed from baseconfig/arm/arm64/CONFIG_ACPI_APEI_EINJ)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_APEI_ERST_DEBUG (renamed from baseconfig/arm/arm64/CONFIG_ACPI_APEI_ERST_DEBUG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_APEI_GHES (renamed from baseconfig/arm/arm64/CONFIG_ACPI_APEI_GHES)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_APEI_MEMORY_FAILURE (renamed from baseconfig/arm/arm64/CONFIG_ACPI_APEI_MEMORY_FAILURE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_APEI_PCIEAER (renamed from baseconfig/arm/arm64/CONFIG_ACPI_APEI_PCIEAER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_APEI_SEA (renamed from baseconfig/arm/arm64/CONFIG_ACPI_APEI_SEA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_BGRT (renamed from baseconfig/arm/arm64/CONFIG_ACPI_BGRT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_BUTTON (renamed from baseconfig/arm/arm64/CONFIG_ACPI_BUTTON)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_CONFIGFS (renamed from baseconfig/arm/arm64/CONFIG_ACPI_CONFIGFS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_CONTAINER (renamed from baseconfig/arm/arm64/CONFIG_ACPI_CONTAINER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_CPPC_CPUFREQ (renamed from baseconfig/arm/arm64/CONFIG_ACPI_CPPC_CPUFREQ)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_CUSTOM_METHOD (renamed from baseconfig/arm/arm64/CONFIG_ACPI_CUSTOM_METHOD)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_DOCK (renamed from baseconfig/arm/arm64/CONFIG_ACPI_DOCK)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_EC_DEBUGFS (renamed from baseconfig/arm/arm64/CONFIG_ACPI_EC_DEBUGFS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_FAN (renamed from baseconfig/arm/arm64/CONFIG_ACPI_FAN)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_HED (renamed from baseconfig/arm/arm64/CONFIG_ACPI_HED)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_I2C_OPREGION (renamed from baseconfig/arm/arm64/CONFIG_ACPI_I2C_OPREGION)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_IPMI (renamed from baseconfig/arm/arm64/CONFIG_ACPI_IPMI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_NFIT (renamed from baseconfig/arm/arm64/CONFIG_ACPI_NFIT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_NFIT_DEBUG (renamed from baseconfig/arm/arm64/CONFIG_ACPI_NFIT_DEBUG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_NUMA (renamed from baseconfig/arm/arm64/CONFIG_ACPI_NUMA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_PROCESSOR (renamed from baseconfig/arm/arm64/CONFIG_ACPI_PROCESSOR)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_PROCFS_POWER (renamed from baseconfig/arm/arm64/CONFIG_ACPI_PROCFS_POWER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_TABLE_UPGRADE (renamed from baseconfig/arm/arm64/CONFIG_ACPI_TABLE_UPGRADE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_THERMAL (renamed from baseconfig/arm/arm64/CONFIG_ACPI_THERMAL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ACPI_WATCHDOG (renamed from baseconfig/arm/arm64/CONFIG_ACPI_WATCHDOG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AHCI_SUNXI (renamed from baseconfig/arm/arm64/CONFIG_AHCI_SUNXI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AHCI_XGENE (renamed from baseconfig/arm/arm64/CONFIG_AHCI_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AMBA_PL08X (renamed from baseconfig/arm/arm64/CONFIG_AMBA_PL08X)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AMD_XGBE (renamed from baseconfig/arm/arm64/CONFIG_AMD_XGBE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AMD_XGBE_DCB (renamed from baseconfig/arm/arm64/CONFIG_AMD_XGBE_DCB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_APQ_GCC_8084 (renamed from baseconfig/arm/arm64/CONFIG_APQ_GCC_8084)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_APQ_MMCC_8084 (renamed from baseconfig/arm/arm64/CONFIG_APQ_MMCC_8084)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_ALPINE (renamed from baseconfig/arm/arm64/CONFIG_ARCH_ALPINE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_BERLIN (renamed from baseconfig/arm/arm64/CONFIG_ARCH_BERLIN)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_EXYNOS (renamed from baseconfig/arm/arm64/CONFIG_ARCH_EXYNOS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_HAS_HOLES_MEMORYMODEL (renamed from baseconfig/arm/arm64/CONFIG_ARCH_HAS_HOLES_MEMORYMODEL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_HISI (renamed from baseconfig/arm/arm64/CONFIG_ARCH_HISI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_LAYERSCAPE (renamed from baseconfig/arm/arm64/CONFIG_ARCH_LAYERSCAPE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_LG1K (renamed from baseconfig/arm/arm64/CONFIG_ARCH_LG1K)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_MEDIATEK (renamed from baseconfig/arm/arm64/CONFIG_ARCH_MEDIATEK)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_QCOM (renamed from baseconfig/arm/arm64/CONFIG_ARCH_QCOM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_REALTEK (renamed from baseconfig/arm/arm64/CONFIG_ARCH_REALTEK)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_RENESAS (renamed from baseconfig/arm/arm64/CONFIG_ARCH_RENESAS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_SEATTLE (renamed from baseconfig/arm/arm64/CONFIG_ARCH_SEATTLE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_SPRD (renamed from baseconfig/arm/arm64/CONFIG_ARCH_SPRD)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_STRATIX10 (renamed from baseconfig/arm/arm64/CONFIG_ARCH_STRATIX10)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_SUNXI (renamed from baseconfig/arm/arm64/CONFIG_ARCH_SUNXI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_SYNQUACER1
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA (renamed from baseconfig/arm/arm64/CONFIG_ARCH_TEGRA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_132_SOC (renamed from baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_132_SOC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_186_SOC (renamed from baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_186_SOC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_210_SOC (renamed from baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_210_SOC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_THUNDER (renamed from baseconfig/arm/arm64/CONFIG_ARCH_THUNDER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_THUNDER2 (renamed from baseconfig/arm/arm64/CONFIG_ARCH_THUNDER2)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_UNIPHIER (renamed from baseconfig/arm/arm64/CONFIG_ARCH_UNIPHIER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_XGENE (renamed from baseconfig/arm/arm64/CONFIG_ARCH_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_ZX (renamed from baseconfig/arm/arm64/CONFIG_ARCH_ZX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARCH_ZYNQMP (renamed from baseconfig/arm/arm64/CONFIG_ARCH_ZYNQMP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64 (renamed from baseconfig/arm/arm64/CONFIG_ARM64)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_4K_PAGES (renamed from baseconfig/arm/arm64/CONFIG_ARM64_4K_PAGES)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_ACPI_PARKING_PROTOCOL (renamed from baseconfig/arm/arm64/CONFIG_ARM64_ACPI_PARKING_PROTOCOL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_CRYPTO (renamed from baseconfig/arm/arm64/CONFIG_ARM64_CRYPTO)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_819472 (renamed from baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_819472)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_824069 (renamed from baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_824069)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_826319 (renamed from baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_826319)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_827319 (renamed from baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_827319)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_832075 (renamed from baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_832075)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_834220 (renamed from baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_834220)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_843419 (renamed from baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_843419)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_HW_AFDBM (renamed from baseconfig/arm/arm64/CONFIG_ARM64_HW_AFDBM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_LSE_ATOMICS (renamed from baseconfig/arm/arm64/CONFIG_ARM64_LSE_ATOMICS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_PAN (renamed from baseconfig/arm/arm64/CONFIG_ARM64_PAN)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_PMEM (renamed from baseconfig/arm/arm64/CONFIG_ARM64_PMEM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_PTDUMP (renamed from baseconfig/arm/arm64/CONFIG_ARM64_PTDUMP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_PTDUMP_DEBUGFS (renamed from baseconfig/arm/arm64/CONFIG_ARM64_PTDUMP_DEBUGFS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET (renamed from baseconfig/arm/arm64/CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_RELOC_TEST (renamed from baseconfig/arm/arm64/CONFIG_ARM64_RELOC_TEST)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_SVE1
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_SW_TTBR0_PAN (renamed from baseconfig/arm/arm64/CONFIG_ARM64_SW_TTBR0_PAN)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_UAO (renamed from baseconfig/arm/arm64/CONFIG_ARM64_UAO)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_VA_BITS (renamed from baseconfig/arm/arm64/CONFIG_ARM64_VA_BITS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_VA_BITS_48 (renamed from baseconfig/arm/arm64/CONFIG_ARM64_VA_BITS_48)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM64_VHE (renamed from baseconfig/arm/arm64/CONFIG_ARM64_VHE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARMADA_AP806_SYSCON (renamed from baseconfig/arm/arm64/CONFIG_ARMADA_AP806_SYSCON)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM_SBSA_WATCHDOG (renamed from baseconfig/arm/arm64/CONFIG_ARM_SBSA_WATCHDOG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM_SMMU_V3 (renamed from baseconfig/arm/arm64/CONFIG_ARM_SMMU_V3)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM_TEGRA186_CPUFREQ (renamed from baseconfig/arm/arm64/CONFIG_ARM_TEGRA186_CPUFREQ)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ARM_TEGRA_DEVFREQ (renamed from baseconfig/arm/arm64/CONFIG_ARM_TEGRA_DEVFREQ)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ATA_ACPI (renamed from baseconfig/arm/arm64/CONFIG_ATA_ACPI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AXP20X_ADC (renamed from baseconfig/arm/arm64/CONFIG_AXP20X_ADC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AXP20X_POWER (renamed from baseconfig/arm/arm64/CONFIG_AXP20X_POWER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AXP288_ADC (renamed from baseconfig/arm/arm64/CONFIG_AXP288_ADC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AXP288_CHARGER (renamed from baseconfig/arm/arm64/CONFIG_AXP288_CHARGER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_AXP288_FUEL_GAUGE (renamed from baseconfig/arm/arm64/CONFIG_AXP288_FUEL_GAUGE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_BATTERY_AXP20X (renamed from baseconfig/arm/arm64/CONFIG_BATTERY_AXP20X)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_BCMA_POSSIBLE (renamed from baseconfig/arm/arm64/CONFIG_BCMA_POSSIBLE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_BCM_PDC_MBOX (renamed from baseconfig/arm/arm64/CONFIG_BCM_PDC_MBOX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE (renamed from baseconfig/arm/arm64/CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_BRCMUTIL (renamed from baseconfig/arm/arm64/CONFIG_BRCMUTIL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_BTT (renamed from baseconfig/arm/arm64/CONFIG_BTT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_BT_QCOMSMD (renamed from baseconfig/arm/arm64/CONFIG_BT_QCOMSMD)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_BUG (renamed from baseconfig/arm/arm64/CONFIG_BUG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CAN_SUN4I (renamed from baseconfig/arm/arm64/CONFIG_CAN_SUN4I)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CAVIUM_CPT (renamed from baseconfig/arm/arm64/CONFIG_CAVIUM_CPT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_22375 (renamed from baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_22375)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_23144 (renamed from baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_23144)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_23154 (renamed from baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_23154)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_27456 (renamed from baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_27456)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_30115 (renamed from baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_30115)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CHARGER_AXP20X (renamed from baseconfig/arm/arm64/CONFIG_CHARGER_AXP20X)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CHARGER_MANAGER (renamed from baseconfig/arm/arm64/CONFIG_CHARGER_MANAGER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CHARGER_QCOM_SMBB (renamed from baseconfig/arm/arm64/CONFIG_CHARGER_QCOM_SMBB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CLKDEV_LOOKUP (renamed from baseconfig/arm/arm64/CONFIG_CLKDEV_LOOKUP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CMDLINE (renamed from baseconfig/arm/arm64/CONFIG_CMDLINE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CMDLINE_FORCE (renamed from baseconfig/arm/arm64/CONFIG_CMDLINE_FORCE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3516CV300 (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3516CV300)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3519 (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3519)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3660 (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3660)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3798CV200 (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3798CV200)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI6220 (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI6220)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI655X (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI655X)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_PWM (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_PWM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_QCOM (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_QCOM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_CLK_XGENE (renamed from baseconfig/arm/arm64/CONFIG_COMMON_CLK_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMMON_RESET_HI6220 (renamed from baseconfig/arm/arm64/CONFIG_COMMON_RESET_HI6220)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_COMPAT (renamed from baseconfig/arm/arm64/CONFIG_COMPAT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CONSOLE_TRANSLATIONS (renamed from baseconfig/arm/arm64/CONFIG_CONSOLE_TRANSLATIONS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64 (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_BS (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_BS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE_BLK (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE_BLK)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE_CCM (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE_CCM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_NEON_BLK (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_NEON_BLK)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_CRC32_ARM64 (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_CRC32_ARM64)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CAVIUM_ZIP (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CAVIUM_ZIP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP_CRYPTO (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP_CRYPTO)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP_DD (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP_DD)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_QCE (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_QCE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_SAFEXCEL (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_SAFEXCEL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_GHASH_ARM64_CE (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_GHASH_ARM64_CE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA1_ARM64_CE (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_SHA1_ARM64_CE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA2_ARM64_CE (renamed from baseconfig/arm/arm64/CONFIG_CRYPTO_SHA2_ARM64_CE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DEBUG_ALIGN_RODATA (renamed from baseconfig/arm/arm64/CONFIG_DEBUG_ALIGN_RODATA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DEBUG_EFI (renamed from baseconfig/arm/arm64/CONFIG_DEBUG_EFI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DEBUG_SECTION_MISMATCH (renamed from baseconfig/arm/arm64/CONFIG_DEBUG_SECTION_MISMATCH)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DEBUG_WX (renamed from baseconfig/arm/arm64/CONFIG_DEBUG_WX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_HISI_KIRIN (renamed from baseconfig/arm/arm64/CONFIG_DRM_HISI_KIRIN)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_14NM_PHY (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_14NM_PHY)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_20NM_PHY (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_20NM_PHY)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_28NM_8960_PHY (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_28NM_8960_PHY)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_28NM_PHY (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_28NM_PHY)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_PLL (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_PLL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM_HDMI_HDCP (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM_HDMI_HDCP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DRM_MSM_REGISTER_LOGGING (renamed from baseconfig/arm/arm64/CONFIG_DRM_MSM_REGISTER_LOGGING)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DVB_B2C2_FLEXCOP_USB (renamed from baseconfig/arm/arm64/CONFIG_DVB_B2C2_FLEXCOP_USB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DWMAC_IPQ806X (renamed from baseconfig/arm/arm64/CONFIG_DWMAC_IPQ806X)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DWMAC_SUN8I (renamed from baseconfig/arm/arm64/CONFIG_DWMAC_SUN8I)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_DWMAC_SUNXI (renamed from baseconfig/arm/arm64/CONFIG_DWMAC_SUNXI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_EDAC_THUNDERX (renamed from baseconfig/arm/arm64/CONFIG_EDAC_THUNDERX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_EDAC_XGENE (renamed from baseconfig/arm/arm64/CONFIG_EDAC_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_EXTCON_AXP288 (renamed from baseconfig/arm/arm64/CONFIG_EXTCON_AXP288)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_EXTCON_QCOM_SPMI_MISC (renamed from baseconfig/arm/arm64/CONFIG_EXTCON_QCOM_SPMI_MISC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_FB_MODE_HELPERS (renamed from baseconfig/arm/arm64/CONFIG_FB_MODE_HELPERS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER (renamed from baseconfig/arm/arm64/CONFIG_FORCE_MAX_ZONEORDER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_FSL_ERRATUM_A008585 (renamed from baseconfig/arm/arm64/CONFIG_FSL_ERRATUM_A008585)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_FSL_MC_BUS (renamed from baseconfig/arm/arm64/CONFIG_FSL_MC_BUS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_FUJITSU_ES (renamed from baseconfig/arm/arm64/CONFIG_FUJITSU_ES)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_GPIO_AXP209 (renamed from baseconfig/arm/arm64/CONFIG_GPIO_AXP209)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_GPIO_MAX77620 (renamed from baseconfig/arm/arm64/CONFIG_GPIO_MAX77620)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_GPIO_THUNDERX (renamed from baseconfig/arm/arm64/CONFIG_GPIO_THUNDERX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_GPIO_XGENE (renamed from baseconfig/arm/arm64/CONFIG_GPIO_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_GPIO_XGENE_SB (renamed from baseconfig/arm/arm64/CONFIG_GPIO_XGENE_SB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_GPIO_XLP (renamed from baseconfig/arm/arm64/CONFIG_GPIO_XLP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HI6220_MBOX (renamed from baseconfig/arm/arm64/CONFIG_HI6220_MBOX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HISILICON_ERRATUM_161010101 (renamed from baseconfig/arm/arm64/CONFIG_HISILICON_ERRATUM_161010101)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HISILICON_ERRATUM_1616008021
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HISILICON_IRQ_MBIGEN (renamed from baseconfig/arm/arm64/CONFIG_HISILICON_IRQ_MBIGEN)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HISI_KIRIN_DW_DSI (renamed from baseconfig/arm/arm64/CONFIG_HISI_KIRIN_DW_DSI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HISI_THERMAL (renamed from baseconfig/arm/arm64/CONFIG_HISI_THERMAL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HOTPLUG_PCI_SHPC (renamed from baseconfig/arm/arm64/CONFIG_HOTPLUG_PCI_SHPC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HVC_DCC (renamed from baseconfig/arm/arm64/CONFIG_HVC_DCC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HVC_DRIVER (renamed from baseconfig/arm/arm64/CONFIG_HVC_DRIVER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HWSPINLOCK_QCOM (renamed from baseconfig/arm/arm64/CONFIG_HWSPINLOCK_QCOM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HW_RANDOM_CAVIUM (renamed from baseconfig/arm/arm64/CONFIG_HW_RANDOM_CAVIUM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HW_RANDOM_HISI (renamed from baseconfig/arm/arm64/CONFIG_HW_RANDOM_HISI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HW_RANDOM_MSM (renamed from baseconfig/arm/arm64/CONFIG_HW_RANDOM_MSM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HW_RANDOM_OMAP (renamed from baseconfig/arm/arm64/CONFIG_HW_RANDOM_OMAP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HW_RANDOM_XGENE (renamed from baseconfig/arm/arm64/CONFIG_HW_RANDOM_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HZ (renamed from baseconfig/arm/arm64/CONFIG_HZ)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HZ_100 (renamed from baseconfig/arm/arm64/CONFIG_HZ_100)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_HZ_1000 (renamed from baseconfig/arm/arm64/CONFIG_HZ_1000)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_I2C_HIX5HD2 (renamed from baseconfig/arm/arm64/CONFIG_I2C_HIX5HD2)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_I2C_QUP (renamed from baseconfig/arm/arm64/CONFIG_I2C_QUP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_I2C_SCMI (renamed from baseconfig/arm/arm64/CONFIG_I2C_SCMI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_I2C_THUNDERX (renamed from baseconfig/arm/arm64/CONFIG_I2C_THUNDERX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_I2C_XGENE_SLIMPRO (renamed from baseconfig/arm/arm64/CONFIG_I2C_XGENE_SLIMPRO)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_I2C_XLP9XX (renamed from baseconfig/arm/arm64/CONFIG_I2C_XLP9XX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_INPUT_AXP20X_PEK (renamed from baseconfig/arm/arm64/CONFIG_INPUT_AXP20X_PEK)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_INPUT_HISI_POWERKEY (renamed from baseconfig/arm/arm64/CONFIG_INPUT_HISI_POWERKEY)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_INPUT_PM8941_PWRKEY (renamed from baseconfig/arm/arm64/CONFIG_INPUT_PM8941_PWRKEY)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_INPUT_REGULATOR_HAPTIC (renamed from baseconfig/arm/arm64/CONFIG_INPUT_REGULATOR_HAPTIC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_IR_SUNXI (renamed from baseconfig/arm/arm64/CONFIG_IR_SUNXI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_K3_DMA (renamed from baseconfig/arm/arm64/CONFIG_K3_DMA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_KEYBOARD_SUN4I_LRADC (renamed from baseconfig/arm/arm64/CONFIG_KEYBOARD_SUN4I_LRADC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_KVM (renamed from baseconfig/arm/arm64/CONFIG_KVM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_LIBNVDIMM (renamed from baseconfig/arm/arm64/CONFIG_LIBNVDIMM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_LIQUIDIO (renamed from baseconfig/arm/arm64/CONFIG_LIQUIDIO)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MAX77620_THERMAL (renamed from baseconfig/arm/arm64/CONFIG_MAX77620_THERMAL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MAX77620_WATCHDOG (renamed from baseconfig/arm/arm64/CONFIG_MAX77620_WATCHDOG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MDIO_HISI_FEMAC (renamed from baseconfig/arm/arm64/CONFIG_MDIO_HISI_FEMAC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MDIO_OCTEON (renamed from baseconfig/arm/arm64/CONFIG_MDIO_OCTEON)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MDIO_SUN4I (renamed from baseconfig/arm/arm64/CONFIG_MDIO_SUN4I)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MDIO_THUNDER (renamed from baseconfig/arm/arm64/CONFIG_MDIO_THUNDER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MDIO_XGENE (renamed from baseconfig/arm/arm64/CONFIG_MDIO_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MDM_GCC_9615 (renamed from baseconfig/arm/arm64/CONFIG_MDM_GCC_9615)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MDM_LCC_9615 (renamed from baseconfig/arm/arm64/CONFIG_MDM_LCC_9615)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MESON_GXBB_WATCHDOG (renamed from baseconfig/arm/arm64/CONFIG_MESON_GXBB_WATCHDOG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MESON_GXL_PHY (renamed from baseconfig/arm/arm64/CONFIG_MESON_GXL_PHY)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MESON_WATCHDOG (renamed from baseconfig/arm/arm64/CONFIG_MESON_WATCHDOG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_AXP20X (renamed from baseconfig/arm/arm64/CONFIG_MFD_AXP20X)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_AXP20X_I2C (renamed from baseconfig/arm/arm64/CONFIG_MFD_AXP20X_I2C)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_AXP20X_RSB (renamed from baseconfig/arm/arm64/CONFIG_MFD_AXP20X_RSB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_HI655X_PMIC (renamed from baseconfig/arm/arm64/CONFIG_MFD_HI655X_PMIC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_MAX77620 (renamed from baseconfig/arm/arm64/CONFIG_MFD_MAX77620)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_QCOM_RPM (renamed from baseconfig/arm/arm64/CONFIG_MFD_QCOM_RPM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_SPMI_PMIC (renamed from baseconfig/arm/arm64/CONFIG_MFD_SPMI_PMIC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_SUN4I_GPADC (renamed from baseconfig/arm/arm64/CONFIG_MFD_SUN4I_GPADC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MFD_SUN6I_PRCM (renamed from baseconfig/arm/arm64/CONFIG_MFD_SUN6I_PRCM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MMC_CAVIUM_THUNDERX (renamed from baseconfig/arm/arm64/CONFIG_MMC_CAVIUM_THUNDERX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MMC_MESON_GX (renamed from baseconfig/arm/arm64/CONFIG_MMC_MESON_GX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MMC_QCOM_DML (renamed from baseconfig/arm/arm64/CONFIG_MMC_QCOM_DML)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MMC_SDHCI_F_SDH301
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MMC_SDHCI_MSM (renamed from baseconfig/arm/arm64/CONFIG_MMC_SDHCI_MSM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MMC_SUNXI (renamed from baseconfig/arm/arm64/CONFIG_MMC_SUNXI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_GCC_8660 (renamed from baseconfig/arm/arm64/CONFIG_MSM_GCC_8660)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_GCC_8916 (renamed from baseconfig/arm/arm64/CONFIG_MSM_GCC_8916)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_GCC_8960 (renamed from baseconfig/arm/arm64/CONFIG_MSM_GCC_8960)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_GCC_8974 (renamed from baseconfig/arm/arm64/CONFIG_MSM_GCC_8974)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_GCC_8996 (renamed from baseconfig/arm/arm64/CONFIG_MSM_GCC_8996)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_LCC_8960 (renamed from baseconfig/arm/arm64/CONFIG_MSM_LCC_8960)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8960 (renamed from baseconfig/arm/arm64/CONFIG_MSM_MMCC_8960)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8974 (renamed from baseconfig/arm/arm64/CONFIG_MSM_MMCC_8974)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8996 (renamed from baseconfig/arm/arm64/CONFIG_MSM_MMCC_8996)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_MV_XOR_V2 (renamed from baseconfig/arm/arm64/CONFIG_MV_XOR_V2)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ND_BLK (renamed from baseconfig/arm/arm64/CONFIG_ND_BLK)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_ND_BTT (renamed from baseconfig/arm/arm64/CONFIG_ND_BTT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NET_SB1000 (renamed from baseconfig/arm/arm64/CONFIG_NET_SB1000)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NET_VENDOR_ALLWINNER (renamed from baseconfig/arm/arm64/CONFIG_NET_VENDOR_ALLWINNER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NET_VENDOR_CAVIUM (renamed from baseconfig/arm/arm64/CONFIG_NET_VENDOR_CAVIUM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NET_VENDOR_QUALCOMM (renamed from baseconfig/arm/arm64/CONFIG_NET_VENDOR_QUALCOMM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NET_VENDOR_SNI (renamed from baseconfig/arm/arm64/CONFIG_NET_VENDOR_SNI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NET_XGENE (renamed from baseconfig/arm/arm64/CONFIG_NET_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NET_XGENE_V2 (renamed from baseconfig/arm/arm64/CONFIG_NET_XGENE_V2)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NODES_SHIFT (renamed from baseconfig/arm/arm64/CONFIG_NODES_SHIFT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NR_CPUS (renamed from baseconfig/arm/arm64/CONFIG_NR_CPUS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NUMA (renamed from baseconfig/arm/arm64/CONFIG_NUMA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NUMA_BALANCING (renamed from baseconfig/arm/arm64/CONFIG_NUMA_BALANCING)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NUMA_BALANCING_DEFAULT_ENABLED (renamed from baseconfig/arm/arm64/CONFIG_NUMA_BALANCING_DEFAULT_ENABLED)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_NVMEM_SUNXI_SID (renamed from baseconfig/arm/arm64/CONFIG_NVMEM_SUNXI_SID)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PATA_ACPI (renamed from baseconfig/arm/arm64/CONFIG_PATA_ACPI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCC (renamed from baseconfig/arm/arm64/CONFIG_PCC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCIE_DW_HOST_ECAM (renamed from baseconfig/arm/arm64/CONFIG_PCIE_DW_HOST_ECAM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCIE_KIRIN (renamed from baseconfig/arm/arm64/CONFIG_PCIE_KIRIN)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCIE_QCOM (renamed from baseconfig/arm/arm64/CONFIG_PCIE_QCOM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCI_HISI (renamed from baseconfig/arm/arm64/CONFIG_PCI_HISI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCI_HOST_THUNDER_ECAM (renamed from baseconfig/arm/arm64/CONFIG_PCI_HOST_THUNDER_ECAM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCI_HOST_THUNDER_PEM (renamed from baseconfig/arm/arm64/CONFIG_PCI_HOST_THUNDER_PEM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCI_XGENE (renamed from baseconfig/arm/arm64/CONFIG_PCI_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PCI_XGENE_MSI (renamed from baseconfig/arm/arm64/CONFIG_PCI_XGENE_MSI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_HI6220_USB (renamed from baseconfig/arm/arm64/CONFIG_PHY_HI6220_USB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_MVEBU_CP110_COMPHY (renamed from baseconfig/arm/arm64/CONFIG_PHY_MVEBU_CP110_COMPHY)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_QCOM_APQ8064_SATA (renamed from baseconfig/arm/arm64/CONFIG_PHY_QCOM_APQ8064_SATA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_QCOM_QMP (renamed from baseconfig/arm/arm64/CONFIG_PHY_QCOM_QMP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_QCOM_QUSB2 (renamed from baseconfig/arm/arm64/CONFIG_PHY_QCOM_QUSB2)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_QCOM_UFS (renamed from baseconfig/arm/arm64/CONFIG_PHY_QCOM_UFS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_QCOM_USB_HS (renamed from baseconfig/arm/arm64/CONFIG_PHY_QCOM_USB_HS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_QCOM_USB_HSIC (renamed from baseconfig/arm/arm64/CONFIG_PHY_QCOM_USB_HSIC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_SUN4I_USB (renamed from baseconfig/arm/arm64/CONFIG_PHY_SUN4I_USB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_SUN9I_USB (renamed from baseconfig/arm/arm64/CONFIG_PHY_SUN9I_USB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PHY_XGENE (renamed from baseconfig/arm/arm64/CONFIG_PHY_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_AMD (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_AMD)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_APQ8064 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_APQ8064)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_APQ8084 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_APQ8084)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_MAX77620 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_MAX77620)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_MDM9615 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_MDM9615)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_MSM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8660 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8660)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8916 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8916)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8960 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8960)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8996 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8996)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8X74 (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8X74)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_QCOM_SPMI_PMIC (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_QCOM_SPMI_PMIC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_QCOM_SSBI_PMIC (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_QCOM_SSBI_PMIC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PINCTRL_QDF2XXX (renamed from baseconfig/arm/arm64/CONFIG_PINCTRL_QDF2XXX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PMIC_OPREGION (renamed from baseconfig/arm/arm64/CONFIG_PMIC_OPREGION)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PNP_DEBUG_MESSAGES (renamed from baseconfig/arm/arm64/CONFIG_PNP_DEBUG_MESSAGES)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_POWER_RESET_HISI (renamed from baseconfig/arm/arm64/CONFIG_POWER_RESET_HISI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_POWER_RESET_MSM (renamed from baseconfig/arm/arm64/CONFIG_POWER_RESET_MSM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_POWER_RESET_XGENE (renamed from baseconfig/arm/arm64/CONFIG_POWER_RESET_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_PWM_SUN4I (renamed from baseconfig/arm/arm64/CONFIG_PWM_SUN4I)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_ADSP_PIL (renamed from baseconfig/arm/arm64/CONFIG_QCOM_ADSP_PIL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_APCS_IPC (renamed from baseconfig/arm/arm64/CONFIG_QCOM_APCS_IPC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_BAM_DMA (renamed from baseconfig/arm/arm64/CONFIG_QCOM_BAM_DMA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_CLK_RPM (renamed from baseconfig/arm/arm64/CONFIG_QCOM_CLK_RPM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_CLK_SMD_RPM (renamed from baseconfig/arm/arm64/CONFIG_QCOM_CLK_SMD_RPM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_COINCELL (renamed from baseconfig/arm/arm64/CONFIG_QCOM_COINCELL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_EBI2 (renamed from baseconfig/arm/arm64/CONFIG_QCOM_EBI2)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_EMAC (renamed from baseconfig/arm/arm64/CONFIG_QCOM_EMAC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_1003 (renamed from baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1003)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_1009 (renamed from baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1009)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_E10411
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_GSBI (renamed from baseconfig/arm/arm64/CONFIG_QCOM_GSBI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_HIDMA (renamed from baseconfig/arm/arm64/CONFIG_QCOM_HIDMA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_HIDMA_MGMT (renamed from baseconfig/arm/arm64/CONFIG_QCOM_HIDMA_MGMT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_IOMMU (renamed from baseconfig/arm/arm64/CONFIG_QCOM_IOMMU)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_IRQ_COMBINER (renamed from baseconfig/arm/arm64/CONFIG_QCOM_IRQ_COMBINER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_L2_PMU (renamed from baseconfig/arm/arm64/CONFIG_QCOM_L2_PMU)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_L3_PMU (renamed from baseconfig/arm/arm64/CONFIG_QCOM_L3_PMU)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_Q6V5_PIL (renamed from baseconfig/arm/arm64/CONFIG_QCOM_Q6V5_PIL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_QDF2400_ERRATUM_0065 (renamed from baseconfig/arm/arm64/CONFIG_QCOM_QDF2400_ERRATUM_0065)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_QFPROM (renamed from baseconfig/arm/arm64/CONFIG_QCOM_QFPROM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_SMD_RPM (renamed from baseconfig/arm/arm64/CONFIG_QCOM_SMD_RPM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_SMEM (renamed from baseconfig/arm/arm64/CONFIG_QCOM_SMEM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_SMP2P (renamed from baseconfig/arm/arm64/CONFIG_QCOM_SMP2P)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_SMSM (renamed from baseconfig/arm/arm64/CONFIG_QCOM_SMSM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_IADC (renamed from baseconfig/arm/arm64/CONFIG_QCOM_SPMI_IADC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_TEMP_ALARM (renamed from baseconfig/arm/arm64/CONFIG_QCOM_SPMI_TEMP_ALARM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_VADC (renamed from baseconfig/arm/arm64/CONFIG_QCOM_SPMI_VADC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_TSENS (renamed from baseconfig/arm/arm64/CONFIG_QCOM_TSENS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_WCNSS_CTRL (renamed from baseconfig/arm/arm64/CONFIG_QCOM_WCNSS_CTRL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_WCNSS_PIL (renamed from baseconfig/arm/arm64/CONFIG_QCOM_WCNSS_PIL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_QCOM_WDT (renamed from baseconfig/arm/arm64/CONFIG_QCOM_WDT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RANDOMIZE_BASE (renamed from baseconfig/arm/arm64/CONFIG_RANDOMIZE_BASE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RANDOMIZE_MODULE_REGION_FULL (renamed from baseconfig/arm/arm64/CONFIG_RANDOMIZE_MODULE_REGION_FULL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RCU_FANOUT (renamed from baseconfig/arm/arm64/CONFIG_RCU_FANOUT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_REFCOUNT_FULL1
-rw-r--r--baseconfig/arm/aarch64/CONFIG_REGMAP_SPMI (renamed from baseconfig/arm/arm64/CONFIG_REGMAP_SPMI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_REGULATOR_AXP20X (renamed from baseconfig/arm/arm64/CONFIG_REGULATOR_AXP20X)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_REGULATOR_HI655X (renamed from baseconfig/arm/arm64/CONFIG_REGULATOR_HI655X)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_REGULATOR_MAX77620 (renamed from baseconfig/arm/arm64/CONFIG_REGULATOR_MAX77620)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_RPM (renamed from baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_RPM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_SMD_RPM (renamed from baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_SMD_RPM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_SPMI (renamed from baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_SPMI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RELOCATABLE (renamed from baseconfig/arm/arm64/CONFIG_RELOCATABLE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RESET_HISI (renamed from baseconfig/arm/arm64/CONFIG_RESET_HISI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RPMSG (renamed from baseconfig/arm/arm64/CONFIG_RPMSG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RPMSG_QCOM_GLINK_RPM (renamed from baseconfig/arm/arm64/CONFIG_RPMSG_QCOM_GLINK_RPM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RPMSG_QCOM_SMD (renamed from baseconfig/arm/arm64/CONFIG_RPMSG_QCOM_SMD)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RTC_DRV_EFI (renamed from baseconfig/arm/arm64/CONFIG_RTC_DRV_EFI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RTC_DRV_PL030 (renamed from baseconfig/arm/arm64/CONFIG_RTC_DRV_PL030)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RTC_DRV_PM8XXX (renamed from baseconfig/arm/arm64/CONFIG_RTC_DRV_PM8XXX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RTC_DRV_SUN6I (renamed from baseconfig/arm/arm64/CONFIG_RTC_DRV_SUN6I)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_RTC_DRV_XGENE (renamed from baseconfig/arm/arm64/CONFIG_RTC_DRV_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SATA_AHCI_SEATTLE (renamed from baseconfig/arm/arm64/CONFIG_SATA_AHCI_SEATTLE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SENSORS_ACPI_POWER (renamed from baseconfig/arm/arm64/CONFIG_SENSORS_ACPI_POWER)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SENSORS_LTC2978_REGULATOR (renamed from baseconfig/arm/arm64/CONFIG_SENSORS_LTC2978_REGULATOR)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SENSORS_XGENE (renamed from baseconfig/arm/arm64/CONFIG_SENSORS_XGENE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SERIAL_AMBA_PL010 (renamed from baseconfig/arm/arm64/CONFIG_SERIAL_AMBA_PL010)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SERIAL_MSM (renamed from baseconfig/arm/arm64/CONFIG_SERIAL_MSM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SERIAL_MSM_CONSOLE (renamed from baseconfig/arm/arm64/CONFIG_SERIAL_MSM_CONSOLE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SERIO_SUN4I_PS2 (renamed from baseconfig/arm/arm64/CONFIG_SERIO_SUN4I_PS2)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_KIRKWOOD_SOC (renamed from baseconfig/arm/arm64/CONFIG_SND_KIRKWOOD_SOC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_APQ8016_SBC (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_APQ8016_SBC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_MSM8916_WCD_ANALOG (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_MSM8916_WCD_ANALOG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_MSM8916_WCD_DIGITAL (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_MSM8916_WCD_DIGITAL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_QCOM (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_QCOM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_SGTL5000 (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_SGTL5000)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_STORM (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_STORM)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_MAX98090 (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_MAX98090)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_RT5640 (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5640)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_RT5677 (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5677)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_SGTL5000 (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_SGTL5000)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_WM8753 (renamed from baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_WM8753)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SUN4I_CODEC (renamed from baseconfig/arm/arm64/CONFIG_SND_SUN4I_CODEC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SUN4I_I2S (renamed from baseconfig/arm/arm64/CONFIG_SND_SUN4I_I2S)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SUN4I_SPDIF (renamed from baseconfig/arm/arm64/CONFIG_SND_SUN4I_SPDIF)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SUN8I_CODEC (renamed from baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SND_SUN8I_CODEC_ANALOG (renamed from baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC_ANALOG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SNI_NETSEC (renamed from baseconfig/arm/arm64/CONFIG_SNI_NETSEC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SOCIONEXT_SYNQUACER_PREITS (renamed from baseconfig/arm/arm64/CONFIG_SOCIONEXT_SYNQUACER_PREITS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SOC_TEGRA_FLOWCTRL (renamed from baseconfig/arm/arm64/CONFIG_SOC_TEGRA_FLOWCTRL)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SPARSEMEM_VMEMMAP (renamed from baseconfig/arm/arm64/CONFIG_SPARSEMEM_VMEMMAP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SPARSE_IRQ (renamed from baseconfig/arm/arm64/CONFIG_SPARSE_IRQ)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SPI_QUP (renamed from baseconfig/arm/arm64/CONFIG_SPI_QUP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SPI_SUN6I (renamed from baseconfig/arm/arm64/CONFIG_SPI_SUN6I)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SPI_THUNDERX (renamed from baseconfig/arm/arm64/CONFIG_SPI_THUNDERX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SPI_XLP (renamed from baseconfig/arm/arm64/CONFIG_SPI_XLP)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SPMI (renamed from baseconfig/arm/arm64/CONFIG_SPMI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SPMI_MSM_PMIC_ARB (renamed from baseconfig/arm/arm64/CONFIG_SPMI_MSM_PMIC_ARB)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_STUB_CLK_HI6220 (renamed from baseconfig/arm/arm64/CONFIG_STUB_CLK_HI6220)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SUN4I_EMAC (renamed from baseconfig/arm/arm64/CONFIG_SUN4I_EMAC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SUN4I_GPADC (renamed from baseconfig/arm/arm64/CONFIG_SUN4I_GPADC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SUN50I_A64_CCU (renamed from baseconfig/arm/arm64/CONFIG_SUN50I_A64_CCU)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SUNXI_CCU (renamed from baseconfig/arm/arm64/CONFIG_SUNXI_CCU)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SUNXI_WATCHDOG (renamed from baseconfig/arm/arm64/CONFIG_SUNXI_WATCHDOG)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_SYS_HYPERVISOR (renamed from baseconfig/arm/arm64/CONFIG_SYS_HYPERVISOR)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_TEGRA210_ADMA (renamed from baseconfig/arm/arm64/CONFIG_TEGRA210_ADMA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_TEGRA_ACONNECT (renamed from baseconfig/arm/arm64/CONFIG_TEGRA_ACONNECT)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_TEGRA_GMI (renamed from baseconfig/arm/arm64/CONFIG_TEGRA_GMI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_TEGRA_IVC (renamed from baseconfig/arm/arm64/CONFIG_TEGRA_IVC)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_BGX (renamed from baseconfig/arm/arm64/CONFIG_THUNDER_NIC_BGX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_PF (renamed from baseconfig/arm/arm64/CONFIG_THUNDER_NIC_PF)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_RGX (renamed from baseconfig/arm/arm64/CONFIG_THUNDER_NIC_RGX)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_VF (renamed from baseconfig/arm/arm64/CONFIG_THUNDER_NIC_VF)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_TOUCHSCREEN_SUN4I (renamed from baseconfig/arm/arm64/CONFIG_TOUCHSCREEN_SUN4I)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_USB_CONFIGFS_F_LB_SS (renamed from baseconfig/arm/arm64/CONFIG_USB_CONFIGFS_F_LB_SS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_USB_MUSB_SUNXI (renamed from baseconfig/arm/arm64/CONFIG_USB_MUSB_SUNXI)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_USB_SPEEDTOUCH (renamed from baseconfig/arm/arm64/CONFIG_USB_SPEEDTOUCH)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_VDSO (renamed from baseconfig/arm/arm64/CONFIG_VDSO)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_VFIO_PLATFORM_AMDXGBE_RESET (renamed from baseconfig/arm/arm64/CONFIG_VFIO_PLATFORM_AMDXGBE_RESET)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_VGA_CONSOLE (renamed from baseconfig/arm/arm64/CONFIG_VGA_CONSOLE)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_VIDEO_QCOM_CAMSS (renamed from baseconfig/arm/arm64/CONFIG_VIDEO_QCOM_CAMSS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_VIDEO_QCOM_VENUS (renamed from baseconfig/arm/arm64/CONFIG_VIDEO_QCOM_VENUS)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_VMAP_STACK (renamed from baseconfig/arm/arm64/CONFIG_VMAP_STACK)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_XGENE_DMA (renamed from baseconfig/arm/arm64/CONFIG_XGENE_DMA)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_XGENE_PMU (renamed from baseconfig/arm/arm64/CONFIG_XGENE_PMU)0
-rw-r--r--baseconfig/arm/aarch64/CONFIG_XGENE_SLIMPRO_MBOX (renamed from baseconfig/arm/arm64/CONFIG_XGENE_SLIMPRO_MBOX)0
-rw-r--r--baseconfig/arm/aarch64/README (renamed from baseconfig/arm/arm64/README)0
-rw-r--r--baseconfig/arm/arm64/CONFIG_USB_EHCI_MSM1
-rw-r--r--baseconfig/arm/arm64/CONFIG_USB_MSM_OTG1
-rw-r--r--baseconfig/arm/arm64/CONFIG_USB_QCOM_8X16_PHY1
-rw-r--r--baseconfig/arm/armv7/CONFIG_DRM_SUN4I_HDMI_CEC1
-rw-r--r--baseconfig/arm/armv7/CONFIG_DRM_TVE2001
-rw-r--r--baseconfig/arm/armv7/CONFIG_OMAP4_DSS_HDMI_CEC1
-rw-r--r--baseconfig/arm/armv7/CONFIG_PCI_V3_SEMI1
-rw-r--r--baseconfig/arm/armv7/armv7/CONFIG_USB_EHCI_MSM1
-rw-r--r--baseconfig/arm/armv7/armv7/CONFIG_USB_MSM_OTG1
-rw-r--r--baseconfig/arm/armv7/armv7/CONFIG_USB_QCOM_8X16_PHY1
-rw-r--r--baseconfig/powerpc/CONFIG_CRYPTO_DEV_NX2
-rw-r--r--baseconfig/powerpc/CONFIG_PPC_FAST_ENDIAN_SWITCH1
-rw-r--r--baseconfig/powerpc/CONFIG_PPC_RADIX_MMU_DEFAULT1
-rw-r--r--baseconfig/s390x/CONFIG_ALTERNATIVES1
-rw-r--r--baseconfig/s390x/CONFIG_IRDA1
-rw-r--r--baseconfig/x86/CONFIG_ACPI_REV_OVERRIDE_POSSIBLE2
-rw-r--r--baseconfig/x86/CONFIG_DELL_SMBIOS_SMM1
-rw-r--r--baseconfig/x86/CONFIG_DELL_SMBIOS_WMI1
-rw-r--r--baseconfig/x86/CONFIG_DRM_AMD_DC_DCN1_01
-rw-r--r--baseconfig/x86/CONFIG_INTEL_WMI_THUNDERBOLT1
-rw-r--r--baseconfig/x86/CONFIG_LEDS_APU1
-rw-r--r--baseconfig/x86/CONFIG_RETPOLINE1
-rw-r--r--baseconfig/x86/CONFIG_SND_SOC_INTEL_HASWELL1
-rw-r--r--baseconfig/x86/CONFIG_SND_SOC_INTEL_SKYLAKE1
-rw-r--r--baseconfig/x86/CONFIG_SND_SOC_INTEL_SST_TOPLEVEL1
-rw-r--r--baseconfig/x86/CONFIG_SND_SST_ATOM_HIFI2_PLATFORM1
-rw-r--r--baseconfig/x86/CONFIG_THUNDERBOLT_NET1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_CHARGER_MANAGER1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_CPU_ISOLATION1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_INPUT_REGULATOR_HAPTIC1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_LEDS_REGULATOR1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_PAGE_TABLE_ISOLATION1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_ACT88651
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_AD53981
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_AXP20X1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_BD9571MWV1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_DA92101
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_DA92111
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_FAN535551
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_FIXED_VOLTAGE1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_GPIO1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_ISL6271A1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_ISL93051
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_LP39711
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_LP39721
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_LP872X1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_LP87551
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_LTC35891
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_LTC36761
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX15861
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX86491
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX86601
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX89521
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_MT63111
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_PFUZE1001
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_PV880601
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_PV880801
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_PV880901
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_PWM1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS516321
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS623601
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS650231
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS6507X1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS6524X1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_USERSPACE_CONSUMER1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_REGULATOR_VIRTUAL_CONSUMER1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_SENSORS_LTC2978_REGULATOR1
-rw-r--r--baseconfig/x86/x86_64/CONFIG_SND_HDA_POWER_SAVE_DEFAULT1
-rw-r--r--bcm2835-clk-audio-jitter-issues.patch206
-rw-r--r--bcm2835-fix-potential-null-pointer-dereferences.patch70
-rw-r--r--bcm2835-pinctrl-Avoid-warning-from-__irq_do_set_handler.patch70
-rw-r--r--bcm2837-arm32-support.patch48
-rw-r--r--bcm2837-bluetooth-support.patch36
-rw-r--r--bcm2837-sdhost-fixes.patch83
-rw-r--r--bcm283x-Define-UART-pinmuxing-on-board-level.patch171
-rw-r--r--bcm283x-drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch42
-rw-r--r--bcm283x-vc4-fix-vblank.patch123
-rw-r--r--bt-bcm.patch32
-rw-r--r--config_generation4
-rwxr-xr-xconfigs/build_configs.sh137
-rw-r--r--configs/config_generation41
-rwxr-xr-xconfigs/process_configs.sh136
-rw-r--r--criu-no-expert.patch26
-rw-r--r--debugconfig/CONFIG_NOUVEAU_DEBUG_MMU1
-rw-r--r--dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch62
-rw-r--r--drm-cma-reduce-dmesg-logs.patch43
-rw-r--r--drm-i915-Boost-GPU-clocks-if-we-miss-the-pageflip-s-vblank.patch200
-rw-r--r--efi-lockdown.patch45
-rw-r--r--input-rmi4-remove-the-need-for-artifical-IRQ.patch94
-rw-r--r--kernel-aarch64-debug.config153
-rw-r--r--kernel-aarch64.config155
-rw-r--r--kernel-armv7hl-debug.config148
-rw-r--r--kernel-armv7hl-lpae-debug.config145
-rw-r--r--kernel-armv7hl-lpae.config145
-rw-r--r--kernel-armv7hl.config148
-rw-r--r--kernel-i686-PAE.config140
-rw-r--r--kernel-i686-PAEdebug.config140
-rw-r--r--kernel-i686-debug.config140
-rw-r--r--kernel-i686.config140
-rw-r--r--kernel-ppc64-debug.config131
-rw-r--r--kernel-ppc64.config131
-rw-r--r--kernel-ppc64le-debug.config131
-rw-r--r--kernel-ppc64le.config131
-rw-r--r--kernel-s390x-debug.config126
-rw-r--r--kernel-s390x.config126
-rw-r--r--kernel-x86_64-debug.config181
-rw-r--r--kernel-x86_64.config181
-rw-r--r--kernel.spec438
-rw-r--r--media-cec-Fix-runtime-BUG-when-CONFIG_RC_CORE-CEC_CAP_RC.patch45
-rw-r--r--netfilter-x_tables-deal-with-bogus-nextoffset-values.patch109
-rw-r--r--powerpc-prom-Increase-RMA-size-to-512MB.patch52
-rw-r--r--prevent-bounds-check-bypass-via-speculative-execution.patch1399
-rw-r--r--qxl-fixes.patch376
-rw-r--r--rpi-graphics-fix.patch46
-rw-r--r--sources4
-rw-r--r--ti-bluetooth.patch2480
-rw-r--r--v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch2
-rw-r--r--vc4-fix-vblank-cursor-update-issue.patch59
725 files changed, 5272 insertions, 13436 deletions
diff --git a/0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch b/0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch
new file mode 100644
index 000000000..1f94c3d70
--- /dev/null
+++ b/0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch
@@ -0,0 +1,90 @@
+From 20eeb02a0a489e35de0830b2d61f09d43763c982 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Mon, 13 Nov 2017 09:23:19 +0100
+Subject: [PATCH] Bluetooth: btusb: Add a Kconfig option to enable USB
+ autosuspend by default
+
+On many laptops the btusb device is the only USB device not having USB
+autosuspend enabled, this causes not only the HCI but also the USB
+controller to stay awake, together using aprox. 0.4W of power.
+
+Modern ultrabooks idle around 6W (at 50% screen brightness), 3.5W for
+Apollo Lake devices. 0.4W is a significant chunk of this (7 / 11%).
+
+The btusb driver already contains code to allow enabling USB autosuspend,
+but currently leaves it up to the user / userspace to enable it. This
+means that for most people it will not be enabled, leading to an
+unnecessarily high power consumption.
+
+Since enabling it is not entirely without risk of regressions, this
+commit adds a Kconfig option so that Linux distributions can choose to
+enable it by default. This commit also adds a module option so that when
+distros receive bugs they can easily ask the user to disable it again
+for easy debugging.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+Changes in v2:
+-s/BT_USB_AUTOSUSPEND/BT_HCIBTUSB_AUTOSUSPEND/
+-s/enable_usb_autosuspend/enable_autosuspend/
+---
+ drivers/bluetooth/Kconfig | 10 ++++++++++
+ drivers/bluetooth/btusb.c | 7 +++++++
+ 2 files changed, 17 insertions(+)
+
+diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig
+index 6475f8c0d3b2..20940417d937 100644
+--- a/drivers/bluetooth/Kconfig
++++ b/drivers/bluetooth/Kconfig
+@@ -30,6 +30,16 @@ config BT_HCIBTUSB
+ Say Y here to compile support for Bluetooth USB devices into the
+ kernel or say M to compile it as module (btusb).
+
++config BT_HCIBTUSB_AUTOSUSPEND
++ bool "Enable USB autosuspend for Bluetooth USB devices by default"
++ depends on BT_HCIBTUSB
++ help
++ Say Y here to enable USB autosuspend for Bluetooth USB devices by
++ default.
++
++ This can be overridden by passing btusb.enable_autosuspend=[y|n]
++ on the kernel commandline.
++
+ config BT_HCIBTUSB_BCM
+ bool "Broadcom protocol support"
+ depends on BT_HCIBTUSB
+diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
+index c054d7bce490..3386034a44aa 100644
+--- a/drivers/bluetooth/btusb.c
++++ b/drivers/bluetooth/btusb.c
+@@ -40,6 +40,7 @@
+
+ static bool disable_scofix;
+ static bool force_scofix;
++static bool enable_autosuspend = IS_ENABLED(CONFIG_BT_HCIBTUSB_AUTOSUSPEND);
+
+ static bool reset = true;
+
+@@ -3175,6 +3176,9 @@ static int btusb_probe(struct usb_interface *intf,
+ }
+ #endif
+
++ if (enable_autosuspend)
++ usb_enable_autosuspend(data->udev);
++
+ err = hci_register_dev(hdev);
+ if (err < 0)
+ goto out_free_dev;
+@@ -3387,6 +3391,9 @@ MODULE_PARM_DESC(disable_scofix, "Disable fixup of wrong SCO buffer size");
+ module_param(force_scofix, bool, 0644);
+ MODULE_PARM_DESC(force_scofix, "Force fixup of wrong SCO buffers size");
+
++module_param(enable_autosuspend, bool, 0644);
++MODULE_PARM_DESC(enable_autosuspend, "Enable USB autosuspend by default");
++
+ module_param(reset, bool, 0644);
+ MODULE_PARM_DESC(reset, "Send HCI reset command on initialization");
+
+--
+2.14.3
+
diff --git a/0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch b/0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch
new file mode 100644
index 000000000..cc1af2ceb
--- /dev/null
+++ b/0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch
@@ -0,0 +1,47 @@
+From a5ffa27c07e06900fcfc50b08de6d11e45830168 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Wed, 3 Jan 2018 12:49:44 +0100
+Subject: [PATCH v2] Bluetooth: btusb: Disable autosuspend on QCA Rome devices
+
+Commit fd865802c66b ("Bluetooth: btusb: fix QCA Rome suspend/resume") fixes
+a suspend/resume problem on QCA devices by doing a full reset on resume,
+reloading the firmware.
+
+A similar problem happens when using runtime-pm / autosuspend, when this is
+enabled by the user the QCA Rome device stops working. Reloading the
+firmware after a runtime suspend is not really an option since the latency
+caused by this is unacceptable.
+
+To fix the runtime-pm issues, this commit disables runtime-pm on QCA Rome
+HCIs, by getting (and not releasing) an usb autopm reference on the btusb
+interface.
+
+BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1514836
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ drivers/bluetooth/btusb.c | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c
+index 808c249845db..6ed3a0e5b8f6 100644
+--- a/drivers/bluetooth/btusb.c
++++ b/drivers/bluetooth/btusb.c
+@@ -3122,8 +3122,15 @@ static int btusb_probe(struct usb_interface *intf,
+ /* QCA Rome devices lose their updated firmware over suspend,
+ * but the USB hub doesn't notice any status change.
+ * Explicitly request a device reset on resume.
++ * And disable runtime pm by getting a pm reference, the USB
++ * core will drop our reference on disconnect.
+ */
+ set_bit(BTUSB_RESET_RESUME, &data->flags);
++ err = usb_autopm_get_interface(data->intf);
++ if (err < 0) {
++ BT_ERR("failed to get pm reference %d", err);
++ goto out_free_dev;
++ }
+ }
+
+ #ifdef CONFIG_BT_HCIBTUSB_RTL
+--
+2.14.3
+
diff --git a/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch b/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch
new file mode 100644
index 000000000..e15ec6bb1
--- /dev/null
+++ b/0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch
@@ -0,0 +1,106 @@
+From f5c1da991de077420fda17a236342de5a0068f5d Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Wed, 22 Nov 2017 12:57:08 +0100
+Subject: [PATCH v2 1/3] HID: multitouch: Properly deal with Win8 PTP reports
+ with 0 touches
+
+The Windows Precision Touchpad spec "Figure 4 Button Only Down and Up"
+and "Table 9 Report Sequence for Button Only Down and Up" indicate
+that the first packet of a (possibly hybrid mode multi-packet) frame
+may contain a contact-count of 0 if only a button is pressed and no
+fingers are detected.
+
+This means that a value of 0 for contact-count is a valid value and
+should be used as expected contact count when it is the first packet
+(num_received == 0), as extra check to make sure that this is the first
+packet of a buttons only frame, we also check that the timestamp is
+different.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+---
+ drivers/hid/hid-multitouch.c | 32 ++++++++++++++++++++++++++++++--
+ 1 file changed, 30 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
+index 9ef24b518f12..d8b1cad74faf 100644
+--- a/drivers/hid/hid-multitouch.c
++++ b/drivers/hid/hid-multitouch.c
+@@ -119,6 +119,9 @@ struct mt_device {
+ unsigned long mt_io_flags; /* mt flags (MT_IO_FLAGS_*) */
+ int cc_index; /* contact count field index in the report */
+ int cc_value_index; /* contact count value index in the field */
++ int scantime_index; /* scantime field index in the report */
++ int scantime_val_index; /* scantime value index in the field */
++ int prev_scantime; /* scantime reported in the previous packet */
+ unsigned last_slot_field; /* the last field of a slot */
+ unsigned mt_report_id; /* the report ID of the multitouch device */
+ unsigned long initial_quirks; /* initial quirks state */
+@@ -599,6 +602,12 @@ static int mt_touch_input_mapping(struct hid_device *hdev, struct hid_input *hi,
+ EV_MSC, MSC_TIMESTAMP);
+ input_set_capability(hi->input, EV_MSC, MSC_TIMESTAMP);
+ mt_store_field(usage, td, hi);
++ /* Ignore if indexes are out of bounds. */
++ if (field->index >= field->report->maxfield ||
++ usage->usage_index >= field->report_count)
++ return 1;
++ td->scantime_index = field->index;
++ td->scantime_val_index = usage->usage_index;
+ return 1;
+ case HID_DG_CONTACTCOUNT:
+ /* Ignore if indexes are out of bounds. */
+@@ -855,9 +864,10 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,
+ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
+ {
+ struct mt_device *td = hid_get_drvdata(hid);
++ __s32 cls = td->mtclass.name;
+ struct hid_field *field;
+ unsigned count;
+- int r, n;
++ int r, n, scantime = 0;
+
+ /* sticky fingers release in progress, abort */
+ if (test_and_set_bit(MT_IO_FLAGS_RUNNING, &td->mt_io_flags))
+@@ -867,12 +877,29 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
+ * Includes multi-packet support where subsequent
+ * packets are sent with zero contactcount.
+ */
++ if (td->scantime_index >= 0) {
++ field = report->field[td->scantime_index];
++ scantime = field->value[td->scantime_val_index];
++ }
+ if (td->cc_index >= 0) {
+ struct hid_field *field = report->field[td->cc_index];
+ int value = field->value[td->cc_value_index];
+- if (value)
++
++ /*
++ * For Win8 PTPs the first packet (td->num_received == 0) may
++ * have a contactcount of 0 if there only is a button event.
++ * We double check that this is not a continuation packet
++ * of a possible multi-packet frame be checking that the
++ * timestamp has changed.
++ */
++ if ((cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL) &&
++ td->num_received == 0 && td->prev_scantime != scantime)
++ td->num_expected = value;
++ /* A non 0 contact count always indicates a first packet */
++ else if (value)
+ td->num_expected = value;
+ }
++ td->prev_scantime = scantime;
+
+ for (r = 0; r < report->maxfield; r++) {
+ field = report->field[r];
+@@ -1329,6 +1356,7 @@ static int mt_probe(struct hid_device *hdev, const struct hid_device_id *id)
+ td->maxcontact_report_id = -1;
+ td->inputmode_value = MT_INPUTMODE_TOUCHSCREEN;
+ td->cc_index = -1;
++ td->scantime_index = -1;
+ td->mt_report_id = -1;
+ hid_set_drvdata(hdev, td);
+
+--
+2.14.3
+
diff --git a/0001-Input-gpio_keys-Allow-suppression-of-input-events-fo.patch b/0001-Input-gpio_keys-Allow-suppression-of-input-events-fo.patch
deleted file mode 100644
index 1f03d710b..000000000
--- a/0001-Input-gpio_keys-Allow-suppression-of-input-events-fo.patch
+++ /dev/null
@@ -1,163 +0,0 @@
-From 25bb14c1e78e641049fd1ee0c404a9ccd2755e44 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Sat, 22 Jul 2017 13:00:05 +0200
-Subject: [PATCH 1/2] Input: gpio_keys - Allow suppression of input events for
- wakeup button presses
-
-In some cases it is undesirable for a wakeup button to send input events
-to userspace if pressed to wakeup the system (if pressed during suspend).
-
-A typical example of this is the power-button on laptops / tablets,
-sending a KEY_POWER event to userspace when woken up with the power-button
-will cause userspace to immediately suspend the system again which is
-undesirable.
-
-For power-buttons attached to a PMIC, or handled by e.g. ACPI, not sending
-an input event in this case is take care of by the PMIC / ACPI hardware /
-code. But in the case of a GPIO button we need to explicitly suppress the
-sending of the input event.
-
-This commit adds support for this by adding a no_wakeup_events bool to
-struct gpio_keys_button, which platform code can set to suppress the
-input events for presses of wakeup keys during suspend.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
-Changes in v2:
--This is a rewrite if my "Input: gpio_keys - Do not report wake button
- presses as evdev events" patch.
--Instead of unconditionally ignoring presses of all wake-up buttons during
- suspend, this rewrite makes this configurable per button
--This version uses a timer to delay clearing the suspended flag for software
- debouncing, rather then jiffy compare magic
----
- drivers/input/keyboard/gpio_keys.c | 33 +++++++++++++++++++++++++++++++--
- include/linux/gpio_keys.h | 3 +++
- 2 files changed, 34 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c
-index a047b9af8369..fa3a58620407 100644
---- a/drivers/input/keyboard/gpio_keys.c
-+++ b/drivers/input/keyboard/gpio_keys.c
-@@ -38,6 +38,7 @@ struct gpio_button_data {
-
- unsigned short *code;
-
-+ struct timer_list unsuspend_timer;
- struct timer_list release_timer;
- unsigned int release_delay; /* in msecs, for IRQ-only buttons */
-
-@@ -371,6 +372,9 @@ static void gpio_keys_gpio_report_event(struct gpio_button_data *bdata)
- return;
- }
-
-+ if (state && bdata->button->no_wakeup_events && bdata->suspended)
-+ return;
-+
- if (type == EV_ABS) {
- if (state)
- input_event(input, type, button->code, button->value);
-@@ -400,6 +404,9 @@ static irqreturn_t gpio_keys_gpio_isr(int irq, void *dev_id)
- if (bdata->button->wakeup) {
- const struct gpio_keys_button *button = bdata->button;
-
-+ if (bdata->button->no_wakeup_events && bdata->suspended)
-+ return IRQ_HANDLED;
-+
- pm_stay_awake(bdata->input->dev.parent);
- if (bdata->suspended &&
- (button->type == 0 || button->type == EV_KEY)) {
-@@ -445,9 +452,13 @@ static irqreturn_t gpio_keys_irq_isr(int irq, void *dev_id)
- spin_lock_irqsave(&bdata->lock, flags);
-
- if (!bdata->key_pressed) {
-- if (bdata->button->wakeup)
-+ if (bdata->button->wakeup) {
- pm_wakeup_event(bdata->input->dev.parent, 0);
-
-+ if (bdata->button->no_wakeup_events && bdata->suspended)
-+ goto out;
-+ }
-+
- input_event(input, EV_KEY, *bdata->code, 1);
- input_sync(input);
-
-@@ -468,6 +479,13 @@ static irqreturn_t gpio_keys_irq_isr(int irq, void *dev_id)
- return IRQ_HANDLED;
- }
-
-+static void gpio_keys_unsuspend_timer(unsigned long _data)
-+{
-+ struct gpio_button_data *bdata = (struct gpio_button_data *)_data;
-+
-+ bdata->suspended = false;
-+}
-+
- static void gpio_keys_quiesce_key(void *data)
- {
- struct gpio_button_data *bdata = data;
-@@ -476,6 +494,8 @@ static void gpio_keys_quiesce_key(void *data)
- cancel_delayed_work_sync(&bdata->work);
- else
- del_timer_sync(&bdata->release_timer);
-+
-+ del_timer_sync(&bdata->unsuspend_timer);
- }
-
- static int gpio_keys_setup_key(struct platform_device *pdev,
-@@ -496,6 +516,8 @@ static int gpio_keys_setup_key(struct platform_device *pdev,
- bdata->input = input;
- bdata->button = button;
- spin_lock_init(&bdata->lock);
-+ setup_timer(&bdata->unsuspend_timer, gpio_keys_unsuspend_timer,
-+ (unsigned long)bdata);
-
- if (child) {
- bdata->gpiod = devm_fwnode_get_gpiod_from_child(dev, NULL,
-@@ -868,6 +890,7 @@ static int __maybe_unused gpio_keys_suspend(struct device *dev)
- struct gpio_button_data *bdata = &ddata->data[i];
- if (bdata->button->wakeup)
- enable_irq_wake(bdata->irq);
-+ del_timer_sync(&bdata->unsuspend_timer);
- bdata->suspended = true;
- }
- } else {
-@@ -892,7 +915,13 @@ static int __maybe_unused gpio_keys_resume(struct device *dev)
- struct gpio_button_data *bdata = &ddata->data[i];
- if (bdata->button->wakeup)
- disable_irq_wake(bdata->irq);
-- bdata->suspended = false;
-+ if (bdata->button->no_wakeup_events) {
-+ mod_timer(&bdata->unsuspend_timer, jiffies +
-+ msecs_to_jiffies(
-+ bdata->software_debounce));
-+ } else {
-+ bdata->suspended = false;
-+ }
- }
- } else {
- mutex_lock(&input->mutex);
-diff --git a/include/linux/gpio_keys.h b/include/linux/gpio_keys.h
-index 0b71024c082c..d8a85e52b6bb 100644
---- a/include/linux/gpio_keys.h
-+++ b/include/linux/gpio_keys.h
-@@ -15,6 +15,8 @@ struct device;
- * @debounce_interval: debounce ticks interval in msecs
- * @can_disable: %true indicates that userspace is allowed to
- * disable button via sysfs
-+ * @no_wakeup_events: For wake-up source buttons only, if %true then no input
-+ * events will be generated if pressed while suspended
- * @value: axis value for %EV_ABS
- * @irq: Irq number in case of interrupt keys
- */
-@@ -27,6 +29,7 @@ struct gpio_keys_button {
- int wakeup;
- int debounce_interval;
- bool can_disable;
-+ bool no_wakeup_events;
- int value;
- unsigned int irq;
- };
---
-2.13.4
-
diff --git a/0001-Make-get_cert_list-not-complain-about-cert-lists-tha.patch b/0001-Make-get_cert_list-not-complain-about-cert-lists-tha.patch
new file mode 100644
index 000000000..6e8a2e039
--- /dev/null
+++ b/0001-Make-get_cert_list-not-complain-about-cert-lists-tha.patch
@@ -0,0 +1,109 @@
+From 3ce5852ec6add45a28fe1706e9163351940e905c Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Mon, 2 Oct 2017 18:25:29 -0400
+Subject: [PATCH 1/3] Make get_cert_list() not complain about cert lists that
+ aren't present.
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+---
+ certs/load_uefi.c | 37 ++++++++++++++++++++++---------------
+ 1 file changed, 22 insertions(+), 15 deletions(-)
+
+diff --git a/certs/load_uefi.c b/certs/load_uefi.c
+index 3d884598601..9ef34c44fd1 100644
+--- a/certs/load_uefi.c
++++ b/certs/load_uefi.c
+@@ -35,8 +35,8 @@ static __init bool uefi_check_ignore_db(void)
+ /*
+ * Get a certificate list blob from the named EFI variable.
+ */
+-static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid,
+- unsigned long *size)
++static __init int get_cert_list(efi_char16_t *name, efi_guid_t *guid,
++ unsigned long *size, void **cert_list)
+ {
+ efi_status_t status;
+ unsigned long lsize = 4;
+@@ -44,26 +44,33 @@ static __init void *get_cert_list(efi_char16_t *name, efi_guid_t *guid,
+ void *db;
+
+ status = efi.get_variable(name, guid, NULL, &lsize, &tmpdb);
++ if (status == EFI_NOT_FOUND) {
++ *size = 0;
++ *cert_list = NULL;
++ return 0;
++ }
++
+ if (status != EFI_BUFFER_TOO_SMALL) {
+ pr_err("Couldn't get size: 0x%lx\n", status);
+- return NULL;
++ return efi_status_to_err(status);
+ }
+
+ db = kmalloc(lsize, GFP_KERNEL);
+ if (!db) {
+ pr_err("Couldn't allocate memory for uefi cert list\n");
+- return NULL;
++ return -ENOMEM;
+ }
+
+ status = efi.get_variable(name, guid, NULL, &lsize, db);
+ if (status != EFI_SUCCESS) {
+ kfree(db);
+ pr_err("Error reading db var: 0x%lx\n", status);
+- return NULL;
++ return efi_status_to_err(status);
+ }
+
+ *size = lsize;
+- return db;
++ *cert_list = db;
++ return 0;
+ }
+
+ /*
+@@ -152,10 +159,10 @@ static int __init load_uefi_certs(void)
+ * an error if we can't get them.
+ */
+ if (!uefi_check_ignore_db()) {
+- db = get_cert_list(L"db", &secure_var, &dbsize);
+- if (!db) {
++ rc = get_cert_list(L"db", &secure_var, &dbsize, &db);
++ if (rc < 0) {
+ pr_err("MODSIGN: Couldn't get UEFI db list\n");
+- } else {
++ } else if (dbsize != 0) {
+ rc = parse_efi_signature_list("UEFI:db",
+ db, dbsize, get_handler_for_db);
+ if (rc)
+@@ -164,10 +171,10 @@ static int __init load_uefi_certs(void)
+ }
+ }
+
+- mok = get_cert_list(L"MokListRT", &mok_var, &moksize);
+- if (!mok) {
++ rc = get_cert_list(L"MokListRT", &mok_var, &moksize, &mok);
++ if (rc < 0) {
+ pr_info("MODSIGN: Couldn't get UEFI MokListRT\n");
+- } else {
++ } else if (moksize != 0) {
+ rc = parse_efi_signature_list("UEFI:MokListRT",
+ mok, moksize, get_handler_for_db);
+ if (rc)
+@@ -175,10 +182,10 @@ static int __init load_uefi_certs(void)
+ kfree(mok);
+ }
+
+- dbx = get_cert_list(L"dbx", &secure_var, &dbxsize);
+- if (!dbx) {
++ rc = get_cert_list(L"dbx", &secure_var, &dbxsize, &dbx);
++ if (rc < 0) {
+ pr_info("MODSIGN: Couldn't get UEFI dbx list\n");
+- } else {
++ } else if (dbxsize != 0) {
+ rc = parse_efi_signature_list("UEFI:dbx",
+ dbx, dbxsize,
+ get_handler_for_dbx);
+--
+2.15.0
+
diff --git a/0001-PATCH-staging-rtl8822be-fix-wrong-dma-unmap-len.patch b/0001-PATCH-staging-rtl8822be-fix-wrong-dma-unmap-len.patch
deleted file mode 100644
index 540b925eb..000000000
--- a/0001-PATCH-staging-rtl8822be-fix-wrong-dma-unmap-len.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 37af97ef14c201b1db8dd341aabd262da23e48aa Mon Sep 17 00:00:00 2001
-From: Fedora Kernel Team <kernel-team@fedoraproject.org>
-Date: Mon, 30 Oct 2017 11:38:27 -0500
-Subject: [PATCH] [PATCH] staging: rtl8822be: fix wrong dma unmap len
-
-Patch fixes splat:
-
-r8822be 0000:04:00.0: DMA-API: device driver frees DMA memory with different size
-[device address=0x0000000078477000] [map size=4096 bytes] [unmap size=424 bytes]
-<snip>
-Call Trace:
- debug_dma_unmap_page+0xa5/0xb0
- ? unmap_single+0x2f/0x40
- _rtl8822be_send_bcn_or_cmd_packet+0x2c5/0x300 [r8822be]
- ? _rtl8822be_send_bcn_or_cmd_packet+0x2c5/0x300 [r8822be]
- rtl8822b_halmac_cb_write_data_rsvd_page+0x51/0xc0 [r8822be]
- _halmac_write_data_rsvd_page+0x22/0x30 [r8822be]
- halmac_download_rsvd_page_88xx+0xee/0x1f0 [r8822be]
- halmac_dlfw_to_mem_88xx+0x80/0x120 [r8822be]
- halmac_download_firmware_88xx.part.47+0x477/0x600 [r8822be]
- halmac_download_firmware_88xx+0x32/0x40 [r8822be]
- rtl_halmac_dlfw+0x70/0x120 [r8822be]
- rtl_halmac_init_hal+0x5f/0x1b0 [r8822be]
- rtl8822be_hw_init+0x8a2/0x1040 [r8822be]
-
-Signed-off-by: Stanislaw Gruszka <sgruszka at redhat.com>
----
- drivers/staging/rtlwifi/rtl8822be/fw.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/drivers/staging/rtlwifi/rtl8822be/fw.c b/drivers/staging/rtlwifi/rtl8822be/fw.c
-index 8e24da1..a2cc548 100644
---- a/drivers/staging/rtlwifi/rtl8822be/fw.c
-+++ b/drivers/staging/rtlwifi/rtl8822be/fw.c
-@@ -419,7 +419,7 @@ static bool _rtl8822be_send_bcn_or_cmd_packet(struct ieee80211_hw *hw,
- dma_addr = rtlpriv->cfg->ops->get_desc(
- hw, (u8 *)pbd_desc, true, HW_DESC_TXBUFF_ADDR);
-
-- pci_unmap_single(rtlpci->pdev, dma_addr, skb->len,
-+ pci_unmap_single(rtlpci->pdev, dma_addr, pskb->len,
- PCI_DMA_TODEVICE);
- kfree_skb(pskb);
-
---
-2.13.6
-
diff --git a/0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch b/0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch
new file mode 100644
index 000000000..d73ce05c6
--- /dev/null
+++ b/0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch
@@ -0,0 +1,106 @@
+From cb1072f66e72eda65a8f7ac37d32c9f4217af6ba Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Tue, 21 Nov 2017 14:44:15 +0100
+Subject: [PATCH 1/3] ahci: Annotate PCI ids for mobile Intel chipsets as such
+
+Intel uses different SATA PCI ids for the Desktop and Mobile SKUs of their
+chipsets. For older models the comment describing which chipset the PCI id
+is for, aksi indicates when we're dealing with a mobile SKU. Extend the
+comments for recent chipsets to also indicate mobile SKUs.
+
+The information this commit adds comes from Intel's chipset datasheets.
+
+This commit is a preparation patch for allowing a different default
+sata link powermanagement policy for mobile chipsets.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ drivers/ata/ahci.c | 32 ++++++++++++++++----------------
+ 1 file changed, 16 insertions(+), 16 deletions(-)
+
+diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
+index 5443cb71d7ba..9d842ff6ec51 100644
+--- a/drivers/ata/ahci.c
++++ b/drivers/ata/ahci.c
+@@ -268,9 +268,9 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x3b23), board_ahci }, /* PCH AHCI */
+ { PCI_VDEVICE(INTEL, 0x3b24), board_ahci }, /* PCH RAID */
+ { PCI_VDEVICE(INTEL, 0x3b25), board_ahci }, /* PCH RAID */
+- { PCI_VDEVICE(INTEL, 0x3b29), board_ahci }, /* PCH AHCI */
++ { PCI_VDEVICE(INTEL, 0x3b29), board_ahci }, /* PCH M AHCI */
+ { PCI_VDEVICE(INTEL, 0x3b2b), board_ahci }, /* PCH RAID */
+- { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci }, /* PCH RAID */
++ { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci }, /* PCH M RAID */
+ { PCI_VDEVICE(INTEL, 0x3b2f), board_ahci }, /* PCH AHCI */
+ { PCI_VDEVICE(INTEL, 0x19b0), board_ahci }, /* DNV AHCI */
+ { PCI_VDEVICE(INTEL, 0x19b1), board_ahci }, /* DNV AHCI */
+@@ -293,9 +293,9 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x19cE), board_ahci }, /* DNV AHCI */
+ { PCI_VDEVICE(INTEL, 0x19cF), board_ahci }, /* DNV AHCI */
+ { PCI_VDEVICE(INTEL, 0x1c02), board_ahci }, /* CPT AHCI */
+- { PCI_VDEVICE(INTEL, 0x1c03), board_ahci }, /* CPT AHCI */
++ { PCI_VDEVICE(INTEL, 0x1c03), board_ahci }, /* CPT M AHCI */
+ { PCI_VDEVICE(INTEL, 0x1c04), board_ahci }, /* CPT RAID */
+- { PCI_VDEVICE(INTEL, 0x1c05), board_ahci }, /* CPT RAID */
++ { PCI_VDEVICE(INTEL, 0x1c05), board_ahci }, /* CPT M RAID */
+ { PCI_VDEVICE(INTEL, 0x1c06), board_ahci }, /* CPT RAID */
+ { PCI_VDEVICE(INTEL, 0x1c07), board_ahci }, /* CPT RAID */
+ { PCI_VDEVICE(INTEL, 0x1d02), board_ahci }, /* PBG AHCI */
+@@ -304,20 +304,20 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x2826), board_ahci }, /* PBG RAID */
+ { PCI_VDEVICE(INTEL, 0x2323), board_ahci }, /* DH89xxCC AHCI */
+ { PCI_VDEVICE(INTEL, 0x1e02), board_ahci }, /* Panther Point AHCI */
+- { PCI_VDEVICE(INTEL, 0x1e03), board_ahci }, /* Panther Point AHCI */
++ { PCI_VDEVICE(INTEL, 0x1e03), board_ahci }, /* Panther Point M AHCI */
+ { PCI_VDEVICE(INTEL, 0x1e04), board_ahci }, /* Panther Point RAID */
+ { PCI_VDEVICE(INTEL, 0x1e05), board_ahci }, /* Panther Point RAID */
+ { PCI_VDEVICE(INTEL, 0x1e06), board_ahci }, /* Panther Point RAID */
+- { PCI_VDEVICE(INTEL, 0x1e07), board_ahci }, /* Panther Point RAID */
++ { PCI_VDEVICE(INTEL, 0x1e07), board_ahci }, /* Panther Point M RAID */
+ { PCI_VDEVICE(INTEL, 0x1e0e), board_ahci }, /* Panther Point RAID */
+ { PCI_VDEVICE(INTEL, 0x8c02), board_ahci }, /* Lynx Point AHCI */
+- { PCI_VDEVICE(INTEL, 0x8c03), board_ahci }, /* Lynx Point AHCI */
++ { PCI_VDEVICE(INTEL, 0x8c03), board_ahci }, /* Lynx Point M AHCI */
+ { PCI_VDEVICE(INTEL, 0x8c04), board_ahci }, /* Lynx Point RAID */
+- { PCI_VDEVICE(INTEL, 0x8c05), board_ahci }, /* Lynx Point RAID */
++ { PCI_VDEVICE(INTEL, 0x8c05), board_ahci }, /* Lynx Point M RAID */
+ { PCI_VDEVICE(INTEL, 0x8c06), board_ahci }, /* Lynx Point RAID */
+- { PCI_VDEVICE(INTEL, 0x8c07), board_ahci }, /* Lynx Point RAID */
++ { PCI_VDEVICE(INTEL, 0x8c07), board_ahci }, /* Lynx Point M RAID */
+ { PCI_VDEVICE(INTEL, 0x8c0e), board_ahci }, /* Lynx Point RAID */
+- { PCI_VDEVICE(INTEL, 0x8c0f), board_ahci }, /* Lynx Point RAID */
++ { PCI_VDEVICE(INTEL, 0x8c0f), board_ahci }, /* Lynx Point M RAID */
+ { PCI_VDEVICE(INTEL, 0x9c02), board_ahci }, /* Lynx Point-LP AHCI */
+ { PCI_VDEVICE(INTEL, 0x9c03), board_ahci }, /* Lynx Point-LP AHCI */
+ { PCI_VDEVICE(INTEL, 0x9c04), board_ahci }, /* Lynx Point-LP RAID */
+@@ -358,21 +358,21 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x9c87), board_ahci }, /* Wildcat Point-LP RAID */
+ { PCI_VDEVICE(INTEL, 0x9c8f), board_ahci }, /* Wildcat Point-LP RAID */
+ { PCI_VDEVICE(INTEL, 0x8c82), board_ahci }, /* 9 Series AHCI */
+- { PCI_VDEVICE(INTEL, 0x8c83), board_ahci }, /* 9 Series AHCI */
++ { PCI_VDEVICE(INTEL, 0x8c83), board_ahci }, /* 9 Series M AHCI */
+ { PCI_VDEVICE(INTEL, 0x8c84), board_ahci }, /* 9 Series RAID */
+- { PCI_VDEVICE(INTEL, 0x8c85), board_ahci }, /* 9 Series RAID */
++ { PCI_VDEVICE(INTEL, 0x8c85), board_ahci }, /* 9 Series M RAID */
+ { PCI_VDEVICE(INTEL, 0x8c86), board_ahci }, /* 9 Series RAID */
+- { PCI_VDEVICE(INTEL, 0x8c87), board_ahci }, /* 9 Series RAID */
++ { PCI_VDEVICE(INTEL, 0x8c87), board_ahci }, /* 9 Series M RAID */
+ { PCI_VDEVICE(INTEL, 0x8c8e), board_ahci }, /* 9 Series RAID */
+- { PCI_VDEVICE(INTEL, 0x8c8f), board_ahci }, /* 9 Series RAID */
++ { PCI_VDEVICE(INTEL, 0x8c8f), board_ahci }, /* 9 Series M RAID */
+ { PCI_VDEVICE(INTEL, 0x9d03), board_ahci }, /* Sunrise Point-LP AHCI */
+ { PCI_VDEVICE(INTEL, 0x9d05), board_ahci }, /* Sunrise Point-LP RAID */
+ { PCI_VDEVICE(INTEL, 0x9d07), board_ahci }, /* Sunrise Point-LP RAID */
+ { PCI_VDEVICE(INTEL, 0xa102), board_ahci }, /* Sunrise Point-H AHCI */
+- { PCI_VDEVICE(INTEL, 0xa103), board_ahci }, /* Sunrise Point-H AHCI */
++ { PCI_VDEVICE(INTEL, 0xa103), board_ahci }, /* Sunrise Point-H M AHCI */
+ { PCI_VDEVICE(INTEL, 0xa105), board_ahci }, /* Sunrise Point-H RAID */
+ { PCI_VDEVICE(INTEL, 0xa106), board_ahci }, /* Sunrise Point-H RAID */
+- { PCI_VDEVICE(INTEL, 0xa107), board_ahci }, /* Sunrise Point-H RAID */
++ { PCI_VDEVICE(INTEL, 0xa107), board_ahci }, /* Sunrise Point-H M RAID */
+ { PCI_VDEVICE(INTEL, 0xa10f), board_ahci }, /* Sunrise Point-H RAID */
+ { PCI_VDEVICE(INTEL, 0x2822), board_ahci }, /* Lewisburg RAID*/
+ { PCI_VDEVICE(INTEL, 0x2823), board_ahci }, /* Lewisburg AHCI*/
+--
+2.14.3
+
diff --git a/0001-ipv6-avoid-overflow-of-offset-in-ip6_find_1stfragopt.patch b/0001-ipv6-avoid-overflow-of-offset-in-ip6_find_1stfragopt.patch
deleted file mode 100644
index be8b6c6a0..000000000
--- a/0001-ipv6-avoid-overflow-of-offset-in-ip6_find_1stfragopt.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 6399f1fae4ec29fab5ec76070435555e256ca3a6 Mon Sep 17 00:00:00 2001
-From: Sabrina Dubroca <sd@queasysnail.net>
-Date: Wed, 19 Jul 2017 22:28:55 +0200
-Subject: [PATCH] ipv6: avoid overflow of offset in ip6_find_1stfragopt
-
-In some cases, offset can overflow and can cause an infinite loop in
-ip6_find_1stfragopt(). Make it unsigned int to prevent the overflow, and
-cap it at IPV6_MAXPLEN, since packets larger than that should be invalid.
-
-This problem has been here since before the beginning of git history.
-
-Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
-Acked-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
-Signed-off-by: David S. Miller <davem@davemloft.net>
----
- net/ipv6/output_core.c | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/net/ipv6/output_core.c b/net/ipv6/output_core.c
-index e9065b8..abb2c30 100644
---- a/net/ipv6/output_core.c
-+++ b/net/ipv6/output_core.c
-@@ -78,7 +78,7 @@ EXPORT_SYMBOL(ipv6_select_ident);
-
- int ip6_find_1stfragopt(struct sk_buff *skb, u8 **nexthdr)
- {
-- u16 offset = sizeof(struct ipv6hdr);
-+ unsigned int offset = sizeof(struct ipv6hdr);
- unsigned int packet_len = skb_tail_pointer(skb) -
- skb_network_header(skb);
- int found_rhdr = 0;
-@@ -86,6 +86,7 @@ int ip6_find_1stfragopt(struct sk_buff *skb, u8 **nexthdr)
-
- while (offset <= packet_len) {
- struct ipv6_opt_hdr *exthdr;
-+ unsigned int len;
-
- switch (**nexthdr) {
-
-@@ -111,7 +112,10 @@ int ip6_find_1stfragopt(struct sk_buff *skb, u8 **nexthdr)
-
- exthdr = (struct ipv6_opt_hdr *)(skb_network_header(skb) +
- offset);
-- offset += ipv6_optlen(exthdr);
-+ len = ipv6_optlen(exthdr);
-+ if (len + offset >= IPV6_MAXPLEN)
-+ return -EINVAL;
-+ offset += len;
- *nexthdr = &exthdr->nexthdr;
- }
-
---
-2.9.4
-
diff --git a/0001-mm-thp-Do-not-make-page-table-dirty-unconditionally-.patch b/0001-mm-thp-Do-not-make-page-table-dirty-unconditionally-.patch
deleted file mode 100644
index 2a1d7b719..000000000
--- a/0001-mm-thp-Do-not-make-page-table-dirty-unconditionally-.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From a8f97366452ed491d13cf1e44241bc0b5740b1f0 Mon Sep 17 00:00:00 2001
-From: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>
-Date: Mon, 27 Nov 2017 06:21:25 +0300
-Subject: [PATCH] mm, thp: Do not make page table dirty unconditionally in
- touch_p[mu]d()
-
-Currently, we unconditionally make page table dirty in touch_pmd().
-It may result in false-positive can_follow_write_pmd().
-
-We may avoid the situation, if we would only make the page table entry
-dirty if caller asks for write access -- FOLL_WRITE.
-
-The patch also changes touch_pud() in the same way.
-
-Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
-Cc: Michal Hocko <mhocko@suse.com>
-Cc: Hugh Dickins <hughd@google.com>
-Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
----
- mm/huge_memory.c | 36 +++++++++++++-----------------------
- 1 file changed, 13 insertions(+), 23 deletions(-)
-
-diff --git a/mm/huge_memory.c b/mm/huge_memory.c
-index 86fe697e8bfb..0e7ded98d114 100644
---- a/mm/huge_memory.c
-+++ b/mm/huge_memory.c
-@@ -842,20 +842,15 @@ EXPORT_SYMBOL_GPL(vmf_insert_pfn_pud);
- #endif /* CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD */
-
- static void touch_pmd(struct vm_area_struct *vma, unsigned long addr,
-- pmd_t *pmd)
-+ pmd_t *pmd, int flags)
- {
- pmd_t _pmd;
-
-- /*
-- * We should set the dirty bit only for FOLL_WRITE but for now
-- * the dirty bit in the pmd is meaningless. And if the dirty
-- * bit will become meaningful and we'll only set it with
-- * FOLL_WRITE, an atomic set_bit will be required on the pmd to
-- * set the young bit, instead of the current set_pmd_at.
-- */
-- _pmd = pmd_mkyoung(pmd_mkdirty(*pmd));
-+ _pmd = pmd_mkyoung(*pmd);
-+ if (flags & FOLL_WRITE)
-+ _pmd = pmd_mkdirty(_pmd);
- if (pmdp_set_access_flags(vma, addr & HPAGE_PMD_MASK,
-- pmd, _pmd, 1))
-+ pmd, _pmd, flags & FOLL_WRITE))
- update_mmu_cache_pmd(vma, addr, pmd);
- }
-
-@@ -884,7 +879,7 @@ struct page *follow_devmap_pmd(struct vm_area_struct *vma, unsigned long addr,
- return NULL;
-
- if (flags & FOLL_TOUCH)
-- touch_pmd(vma, addr, pmd);
-+ touch_pmd(vma, addr, pmd, flags);
-
- /*
- * device mapped pages can only be returned if the
-@@ -995,20 +990,15 @@ int copy_huge_pmd(struct mm_struct *dst_mm, struct mm_struct *src_mm,
-
- #ifdef CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD
- static void touch_pud(struct vm_area_struct *vma, unsigned long addr,
-- pud_t *pud)
-+ pud_t *pud, int flags)
- {
- pud_t _pud;
-
-- /*
-- * We should set the dirty bit only for FOLL_WRITE but for now
-- * the dirty bit in the pud is meaningless. And if the dirty
-- * bit will become meaningful and we'll only set it with
-- * FOLL_WRITE, an atomic set_bit will be required on the pud to
-- * set the young bit, instead of the current set_pud_at.
-- */
-- _pud = pud_mkyoung(pud_mkdirty(*pud));
-+ _pud = pud_mkyoung(*pud);
-+ if (flags & FOLL_WRITE)
-+ _pud = pud_mkdirty(_pud);
- if (pudp_set_access_flags(vma, addr & HPAGE_PUD_MASK,
-- pud, _pud, 1))
-+ pud, _pud, flags & FOLL_WRITE))
- update_mmu_cache_pud(vma, addr, pud);
- }
-
-@@ -1031,7 +1021,7 @@ struct page *follow_devmap_pud(struct vm_area_struct *vma, unsigned long addr,
- return NULL;
-
- if (flags & FOLL_TOUCH)
-- touch_pud(vma, addr, pud);
-+ touch_pud(vma, addr, pud, flags);
-
- /*
- * device mapped pages can only be returned if the
-@@ -1424,7 +1414,7 @@ struct page *follow_trans_huge_pmd(struct vm_area_struct *vma,
- page = pmd_page(*pmd);
- VM_BUG_ON_PAGE(!PageHead(page) && !is_zone_device_page(page), page);
- if (flags & FOLL_TOUCH)
-- touch_pmd(vma, addr, pmd);
-+ touch_pmd(vma, addr, pmd, flags);
- if ((flags & FOLL_MLOCK) && (vma->vm_flags & VM_LOCKED)) {
- /*
- * We don't mlock() pte-mapped THPs. This way we can avoid
---
-2.14.3
-
diff --git a/0001-platform-x86-Add-driver-for-ACPI-INT0002-Virtual-GPI.patch b/0001-platform-x86-Add-driver-for-ACPI-INT0002-Virtual-GPI.patch
deleted file mode 100644
index a0b6ff03e..000000000
--- a/0001-platform-x86-Add-driver-for-ACPI-INT0002-Virtual-GPI.patch
+++ /dev/null
@@ -1,339 +0,0 @@
-From 3bbfe49a1d965b951527cde0da48f5d7677db264 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Sun, 21 May 2017 13:15:11 +0200
-Subject: [PATCH 01/16] platform/x86: Add driver for ACPI INT0002 Virtual GPIO
- device
-
-Some peripherals on Bay Trail and Cherry Trail platforms signal a
-Power Management Event (PME) to the Power Management Controller (PMC)
-to wakeup the system. When this happens software needs to explicitly
-clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
-IRQ storm on IRQ 9.
-
-This is modelled in ACPI through the INT0002 ACPI device, which is
-called a "Virtual GPIO controller" in ACPI because it defines the
-event handler to call when the PME triggers through _AEI and _L02
-methods as would be done for a real GPIO interrupt in ACPI.
-
-This commit adds a driver which registers the Virtual GPIOs expected
-by the DSDT on these devices, letting gpiolib-acpi claim the
-virtual GPIO and install a GPIO-interrupt handler which call the _L02
-handler as it would for a real GPIO controller.
-
-Cc: joeyli <jlee@suse.com>
-Cc: Takashi Iwai <tiwai@suse.de>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
-Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
----
-Changes in v2:
--Remove dev_err after malloc failure
--Remove unused empty runtime pm callbacks
--s/GPE0A_PME_/GPE0A_PME_B0_/
--Fixed some checkpatch warnings (I forgot to run checkpatch on v1)
-
-Changes in v3:
--Rewrite as gpiochip driver letting gpiolib-acpi deal with claiming the pin
- 0x0002 and calling the _L02 event handler when the virtual gpio-irq triggers
--Rebase on 4.12-rc1
-
-Changes in v4:
--Drop device_init_wakeup() from _probe(), use pm_system_wakeup() instead
- of pm_wakeup_hard_event(chip->parent)
--Improve commit message
-
-Changes in v5:
--Use BIT() macro for FOO_BIT defines
--Drop unneeded ACPI_PTR macro usage
-
-Changes in v6:
--Move back to drivers/platform/x86
--Expand certain acronyms (PME, PMC)
--Use linux/gpio/driver.h include instead of linux/gpio.h
--Document why the get / set / direction_output functions are dummys
--No functional changes
-
-Changes in v7:
--Some minor cleanups from Andy:
- -Move asm/ includes below linux/ includes
- -s/APCI/ACPI/
- -Use bitmap_clear on chip->irq_valid_mask
--Add Linus Walleij's Reviewed-by
----
- drivers/platform/x86/Kconfig | 19 +++
- drivers/platform/x86/Makefile | 1 +
- drivers/platform/x86/intel_int0002_vgpio.c | 219 +++++++++++++++++++++++++++++
- 3 files changed, 239 insertions(+)
- create mode 100644 drivers/platform/x86/intel_int0002_vgpio.c
-
-diff --git a/drivers/platform/x86/Kconfig b/drivers/platform/x86/Kconfig
-index 8489020ecf44..a3ccc3c795a5 100644
---- a/drivers/platform/x86/Kconfig
-+++ b/drivers/platform/x86/Kconfig
-@@ -794,6 +794,25 @@ config INTEL_CHT_INT33FE
- This driver instantiates i2c-clients for these, so that standard
- i2c drivers for these chips can bind to the them.
-
-+config INTEL_INT0002_VGPIO
-+ tristate "Intel ACPI INT0002 Virtual GPIO driver"
-+ depends on GPIOLIB && ACPI
-+ select GPIOLIB_IRQCHIP
-+ ---help---
-+ Some peripherals on Bay Trail and Cherry Trail platforms signal a
-+ Power Management Event (PME) to the Power Management Controller (PMC)
-+ to wakeup the system. When this happens software needs to explicitly
-+ clear the PME bus 0 status bit in the GPE0a_STS register to avoid an
-+ IRQ storm on IRQ 9.
-+
-+ This is modelled in ACPI through the INT0002 ACPI device, which is
-+ called a "Virtual GPIO controller" in ACPI because it defines the
-+ event handler to call when the PME triggers through _AEI and _L02
-+ methods as would be done for a real GPIO interrupt in ACPI.
-+
-+ To compile this driver as a module, choose M here: the module will
-+ be called intel_int0002_vgpio.
-+
- config INTEL_HID_EVENT
- tristate "INTEL HID Event"
- depends on ACPI
-diff --git a/drivers/platform/x86/Makefile b/drivers/platform/x86/Makefile
-index 182a3ed6605a..ab22ce77fb66 100644
---- a/drivers/platform/x86/Makefile
-+++ b/drivers/platform/x86/Makefile
-@@ -46,6 +46,7 @@ obj-$(CONFIG_TOSHIBA_BT_RFKILL) += toshiba_bluetooth.o
- obj-$(CONFIG_TOSHIBA_HAPS) += toshiba_haps.o
- obj-$(CONFIG_TOSHIBA_WMI) += toshiba-wmi.o
- obj-$(CONFIG_INTEL_CHT_INT33FE) += intel_cht_int33fe.o
-+obj-$(CONFIG_INTEL_INT0002_VGPIO) += intel_int0002_vgpio.o
- obj-$(CONFIG_INTEL_HID_EVENT) += intel-hid.o
- obj-$(CONFIG_INTEL_VBTN) += intel-vbtn.o
- obj-$(CONFIG_INTEL_SCU_IPC) += intel_scu_ipc.o
-diff --git a/drivers/platform/x86/intel_int0002_vgpio.c b/drivers/platform/x86/intel_int0002_vgpio.c
-new file mode 100644
-index 000000000000..92dc230ef5b2
---- /dev/null
-+++ b/drivers/platform/x86/intel_int0002_vgpio.c
-@@ -0,0 +1,219 @@
-+/*
-+ * Intel INT0002 "Virtual GPIO" driver
-+ *
-+ * Copyright (C) 2017 Hans de Goede <hdegoede@redhat.com>
-+ *
-+ * Loosely based on android x86 kernel code which is:
-+ *
-+ * Copyright (c) 2014, Intel Corporation.
-+ *
-+ * Author: Dyut Kumar Sil <dyut.k.sil@intel.com>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ *
-+ * Some peripherals on Bay Trail and Cherry Trail platforms signal a Power
-+ * Management Event (PME) to the Power Management Controller (PMC) to wakeup
-+ * the system. When this happens software needs to clear the PME bus 0 status
-+ * bit in the GPE0a_STS register to avoid an IRQ storm on IRQ 9.
-+ *
-+ * This is modelled in ACPI through the INT0002 ACPI device, which is
-+ * called a "Virtual GPIO controller" in ACPI because it defines the event
-+ * handler to call when the PME triggers through _AEI and _L02 / _E02
-+ * methods as would be done for a real GPIO interrupt in ACPI. Note this
-+ * is a hack to define an AML event handler for the PME while using existing
-+ * ACPI mechanisms, this is not a real GPIO at all.
-+ *
-+ * This driver will bind to the INT0002 device, and register as a GPIO
-+ * controller, letting gpiolib-acpi.c call the _L02 handler as it would
-+ * for a real GPIO controller.
-+ */
-+
-+#include <linux/acpi.h>
-+#include <linux/bitmap.h>
-+#include <linux/gpio/driver.h>
-+#include <linux/interrupt.h>
-+#include <linux/io.h>
-+#include <linux/kernel.h>
-+#include <linux/module.h>
-+#include <linux/platform_device.h>
-+#include <linux/slab.h>
-+#include <linux/suspend.h>
-+
-+#include <asm/cpu_device_id.h>
-+#include <asm/intel-family.h>
-+
-+#define DRV_NAME "INT0002 Virtual GPIO"
-+
-+/* For some reason the virtual GPIO pin tied to the GPE is numbered pin 2 */
-+#define GPE0A_PME_B0_VIRT_GPIO_PIN 2
-+
-+#define GPE0A_PME_B0_STS_BIT BIT(13)
-+#define GPE0A_PME_B0_EN_BIT BIT(13)
-+#define GPE0A_STS_PORT 0x420
-+#define GPE0A_EN_PORT 0x428
-+
-+#define ICPU(model) { X86_VENDOR_INTEL, 6, model, X86_FEATURE_ANY, }
-+
-+static const struct x86_cpu_id int0002_cpu_ids[] = {
-+/*
-+ * Limit ourselves to Cherry Trail for now, until testing shows we
-+ * need to handle the INT0002 device on Baytrail too.
-+ * ICPU(INTEL_FAM6_ATOM_SILVERMONT1), * Valleyview, Bay Trail *
-+ */
-+ ICPU(INTEL_FAM6_ATOM_AIRMONT), /* Braswell, Cherry Trail */
-+ {}
-+};
-+
-+/*
-+ * As this is not a real GPIO at all, but just a hack to model an event in
-+ * ACPI the get / set functions are dummy functions.
-+ */
-+
-+static int int0002_gpio_get(struct gpio_chip *chip, unsigned int offset)
-+{
-+ return 0;
-+}
-+
-+static void int0002_gpio_set(struct gpio_chip *chip, unsigned int offset,
-+ int value)
-+{
-+}
-+
-+static int int0002_gpio_direction_output(struct gpio_chip *chip,
-+ unsigned int offset, int value)
-+{
-+ return 0;
-+}
-+
-+static void int0002_irq_ack(struct irq_data *data)
-+{
-+ outl(GPE0A_PME_B0_STS_BIT, GPE0A_STS_PORT);
-+}
-+
-+static void int0002_irq_unmask(struct irq_data *data)
-+{
-+ u32 gpe_en_reg;
-+
-+ gpe_en_reg = inl(GPE0A_EN_PORT);
-+ gpe_en_reg |= GPE0A_PME_B0_EN_BIT;
-+ outl(gpe_en_reg, GPE0A_EN_PORT);
-+}
-+
-+static void int0002_irq_mask(struct irq_data *data)
-+{
-+ u32 gpe_en_reg;
-+
-+ gpe_en_reg = inl(GPE0A_EN_PORT);
-+ gpe_en_reg &= ~GPE0A_PME_B0_EN_BIT;
-+ outl(gpe_en_reg, GPE0A_EN_PORT);
-+}
-+
-+static irqreturn_t int0002_irq(int irq, void *data)
-+{
-+ struct gpio_chip *chip = data;
-+ u32 gpe_sts_reg;
-+
-+ gpe_sts_reg = inl(GPE0A_STS_PORT);
-+ if (!(gpe_sts_reg & GPE0A_PME_B0_STS_BIT))
-+ return IRQ_NONE;
-+
-+ generic_handle_irq(irq_find_mapping(chip->irqdomain,
-+ GPE0A_PME_B0_VIRT_GPIO_PIN));
-+
-+ pm_system_wakeup();
-+
-+ return IRQ_HANDLED;
-+}
-+
-+static struct irq_chip int0002_irqchip = {
-+ .name = DRV_NAME,
-+ .irq_ack = int0002_irq_ack,
-+ .irq_mask = int0002_irq_mask,
-+ .irq_unmask = int0002_irq_unmask,
-+};
-+
-+static int int0002_probe(struct platform_device *pdev)
-+{
-+ struct device *dev = &pdev->dev;
-+ const struct x86_cpu_id *cpu_id;
-+ struct gpio_chip *chip;
-+ int irq, ret;
-+
-+ /* Menlow has a different INT0002 device? <sigh> */
-+ cpu_id = x86_match_cpu(int0002_cpu_ids);
-+ if (!cpu_id)
-+ return -ENODEV;
-+
-+ irq = platform_get_irq(pdev, 0);
-+ if (irq < 0) {
-+ dev_err(dev, "Error getting IRQ: %d\n", irq);
-+ return irq;
-+ }
-+
-+ chip = devm_kzalloc(dev, sizeof(*chip), GFP_KERNEL);
-+ if (!chip)
-+ return -ENOMEM;
-+
-+ chip->label = DRV_NAME;
-+ chip->parent = dev;
-+ chip->owner = THIS_MODULE;
-+ chip->get = int0002_gpio_get;
-+ chip->set = int0002_gpio_set;
-+ chip->direction_input = int0002_gpio_get;
-+ chip->direction_output = int0002_gpio_direction_output;
-+ chip->base = -1;
-+ chip->ngpio = GPE0A_PME_B0_VIRT_GPIO_PIN + 1;
-+ chip->irq_need_valid_mask = true;
-+
-+ ret = devm_gpiochip_add_data(&pdev->dev, chip, NULL);
-+ if (ret) {
-+ dev_err(dev, "Error adding gpio chip: %d\n", ret);
-+ return ret;
-+ }
-+
-+ bitmap_clear(chip->irq_valid_mask, 0, GPE0A_PME_B0_VIRT_GPIO_PIN);
-+
-+ /*
-+ * We manually request the irq here instead of passing a flow-handler
-+ * to gpiochip_set_chained_irqchip, because the irq is shared.
-+ */
-+ ret = devm_request_irq(dev, irq, int0002_irq,
-+ IRQF_SHARED | IRQF_NO_THREAD, "INT0002", chip);
-+ if (ret) {
-+ dev_err(dev, "Error requesting IRQ %d: %d\n", irq, ret);
-+ return ret;
-+ }
-+
-+ ret = gpiochip_irqchip_add(chip, &int0002_irqchip, 0, handle_edge_irq,
-+ IRQ_TYPE_NONE);
-+ if (ret) {
-+ dev_err(dev, "Error adding irqchip: %d\n", ret);
-+ return ret;
-+ }
-+
-+ gpiochip_set_chained_irqchip(chip, &int0002_irqchip, irq, NULL);
-+
-+ return 0;
-+}
-+
-+static const struct acpi_device_id int0002_acpi_ids[] = {
-+ { "INT0002", 0 },
-+ { },
-+};
-+MODULE_DEVICE_TABLE(acpi, int0002_acpi_ids);
-+
-+static struct platform_driver int0002_driver = {
-+ .driver = {
-+ .name = DRV_NAME,
-+ .acpi_match_table = int0002_acpi_ids,
-+ },
-+ .probe = int0002_probe,
-+};
-+
-+module_platform_driver(int0002_driver);
-+
-+MODULE_AUTHOR("Hans de Goede <hdegoede@redhat.com>");
-+MODULE_DESCRIPTION("Intel INT0002 Virtual GPIO driver");
-+MODULE_LICENSE("GPL");
---
-2.13.0
-
diff --git a/0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch b/0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch
new file mode 100644
index 000000000..926487b3d
--- /dev/null
+++ b/0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch
@@ -0,0 +1,99 @@
+From 714fe15daa07e7691c9731c88de71aa57f84b6c2 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Wed, 3 Jan 2018 11:13:54 +0100
+Subject: [PATCH] platform/x86: dell-laptop: Filter out spurious keyboard
+ backlight change events
+
+On some Dell XPS models WMI events of type 0x0000 reporting a keycode of
+0xe00c get reported when the brightness of the LCD panel changes.
+
+This leads to us reporting false-positive kbd_led change events to
+userspace which in turn leads to the kbd backlight OSD showing when it
+should not.
+
+We already read the current keyboard backlight brightness value when
+reporting events because the led_classdev_notify_brightness_hw_changed
+API requires this. Compare this value to the last known value and filter
+out duplicate events, fixing this.
+
+Note the fixed issue is esp. a problem on XPS models with an ambient light
+sensor and automatic brightness adjustments turned on, this causes the kbd
+backlight OSD to show all the time there.
+
+BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1514969
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ drivers/platform/x86/dell-laptop.c | 24 ++++++++++++++++++++++--
+ 1 file changed, 22 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c
+index cd4725e7e0b5..2ef3297a9efc 100644
+--- a/drivers/platform/x86/dell-laptop.c
++++ b/drivers/platform/x86/dell-laptop.c
+@@ -1133,6 +1133,7 @@ static u8 kbd_previous_mode_bit;
+
+ static bool kbd_led_present;
+ static DEFINE_MUTEX(kbd_led_mutex);
++static enum led_brightness kbd_led_level;
+
+ /*
+ * NOTE: there are three ways to set the keyboard backlight level.
+@@ -1947,6 +1948,7 @@ static enum led_brightness kbd_led_level_get(struct led_classdev *led_cdev)
+ static int kbd_led_level_set(struct led_classdev *led_cdev,
+ enum led_brightness value)
+ {
++ enum led_brightness new_value = value;
+ struct kbd_state state;
+ struct kbd_state new_state;
+ u16 num;
+@@ -1976,6 +1978,9 @@ static int kbd_led_level_set(struct led_classdev *led_cdev,
+ }
+
+ out:
++ if (ret == 0)
++ kbd_led_level = new_value;
++
+ mutex_unlock(&kbd_led_mutex);
+ return ret;
+ }
+@@ -2003,6 +2008,9 @@ static int __init kbd_led_init(struct device *dev)
+ if (kbd_led.max_brightness)
+ kbd_led.max_brightness--;
+ }
++
++ kbd_led_level = kbd_led_level_get(NULL);
++
+ ret = led_classdev_register(dev, &kbd_led);
+ if (ret)
+ kbd_led_present = false;
+@@ -2027,13 +2035,25 @@ static void kbd_led_exit(void)
+ static int dell_laptop_notifier_call(struct notifier_block *nb,
+ unsigned long action, void *data)
+ {
++ bool changed = false;
++ enum led_brightness new_kbd_led_level;
++
+ switch (action) {
+ case DELL_LAPTOP_KBD_BACKLIGHT_BRIGHTNESS_CHANGED:
+ if (!kbd_led_present)
+ break;
+
+- led_classdev_notify_brightness_hw_changed(&kbd_led,
+- kbd_led_level_get(&kbd_led));
++ mutex_lock(&kbd_led_mutex);
++ new_kbd_led_level = kbd_led_level_get(&kbd_led);
++ if (kbd_led_level != new_kbd_led_level) {
++ kbd_led_level = new_kbd_led_level;
++ changed = true;
++ }
++ mutex_unlock(&kbd_led_mutex);
++
++ if (changed)
++ led_classdev_notify_brightness_hw_changed(&kbd_led,
++ kbd_led_level);
+ break;
+ }
+
+--
+2.14.3
+
diff --git a/0002-Add-efi_status_to_str-and-rework-efi_status_to_err.patch b/0002-Add-efi_status_to_str-and-rework-efi_status_to_err.patch
new file mode 100644
index 000000000..0844550b6
--- /dev/null
+++ b/0002-Add-efi_status_to_str-and-rework-efi_status_to_err.patch
@@ -0,0 +1,183 @@
+From c8218e9b3c38fcd36a2d06eec09952a0c6cee9e0 Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Mon, 2 Oct 2017 18:22:13 -0400
+Subject: [PATCH 2/3] Add efi_status_to_str() and rework efi_status_to_err().
+
+This adds efi_status_to_str() for use when printing efi_status_t
+messages, and reworks efi_status_to_err() so that the two use a common
+list of errors.
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+---
+ include/linux/efi.h | 3 ++
+ drivers/firmware/efi/efi.c | 122 ++++++++++++++++++++++++++++++++++-----------
+ 2 files changed, 95 insertions(+), 30 deletions(-)
+
+diff --git a/include/linux/efi.h b/include/linux/efi.h
+index 18b16bf5ce1..436b3c93c3d 100644
+--- a/include/linux/efi.h
++++ b/include/linux/efi.h
+@@ -42,6 +42,8 @@
+ #define EFI_ABORTED (21 | (1UL << (BITS_PER_LONG-1)))
+ #define EFI_SECURITY_VIOLATION (26 | (1UL << (BITS_PER_LONG-1)))
+
++#define EFI_IS_ERROR(x) ((x) & (1UL << (BITS_PER_LONG-1)))
++
+ typedef unsigned long efi_status_t;
+ typedef u8 efi_bool_t;
+ typedef u16 efi_char16_t; /* UNICODE character */
+@@ -1183,6 +1185,7 @@ static inline void efi_set_secure_boot(enum efi_secureboot_mode mode) {}
+ #endif
+
+ extern int efi_status_to_err(efi_status_t status);
++extern const char *efi_status_to_str(efi_status_t status);
+
+ /*
+ * Variable Attributes
+diff --git a/drivers/firmware/efi/efi.c b/drivers/firmware/efi/efi.c
+index 557a47829d0..e8f9c7d84e9 100644
+--- a/drivers/firmware/efi/efi.c
++++ b/drivers/firmware/efi/efi.c
+@@ -31,6 +31,7 @@
+ #include <linux/acpi.h>
+ #include <linux/ucs2_string.h>
+ #include <linux/memblock.h>
++#include <linux/bsearch.h>
+
+ #include <asm/early_ioremap.h>
+
+@@ -865,40 +866,101 @@ int efi_mem_type(unsigned long phys_addr)
+ }
+ #endif
+
++struct efi_error_code {
++ efi_status_t status;
++ int errno;
++ const char *description;
++};
++
++static const struct efi_error_code efi_error_codes[] = {
++ { EFI_SUCCESS, 0, "Success"},
++#if 0
++ { EFI_LOAD_ERROR, -EPICK_AN_ERRNO, "Load Error"},
++#endif
++ { EFI_INVALID_PARAMETER, -EINVAL, "Invalid Parameter"},
++ { EFI_UNSUPPORTED, -ENOSYS, "Unsupported"},
++ { EFI_BAD_BUFFER_SIZE, -ENOSPC, "Bad Buffer Size"},
++ { EFI_BUFFER_TOO_SMALL, -ENOSPC, "Buffer Too Small"},
++ { EFI_NOT_READY, -EAGAIN, "Not Ready"},
++ { EFI_DEVICE_ERROR, -EIO, "Device Error"},
++ { EFI_WRITE_PROTECTED, -EROFS, "Write Protected"},
++ { EFI_OUT_OF_RESOURCES, -ENOMEM, "Out of Resources"},
++#if 0
++ { EFI_VOLUME_CORRUPTED, -EPICK_AN_ERRNO, "Volume Corrupt"},
++ { EFI_VOLUME_FULL, -EPICK_AN_ERRNO, "Volume Full"},
++ { EFI_NO_MEDIA, -EPICK_AN_ERRNO, "No Media"},
++ { EFI_MEDIA_CHANGED, -EPICK_AN_ERRNO, "Media changed"},
++#endif
++ { EFI_NOT_FOUND, -ENOENT, "Not Found"},
++#if 0
++ { EFI_ACCESS_DENIED, -EPICK_AN_ERRNO, "Access Denied"},
++ { EFI_NO_RESPONSE, -EPICK_AN_ERRNO, "No Response"},
++ { EFI_NO_MAPPING, -EPICK_AN_ERRNO, "No mapping"},
++ { EFI_TIMEOUT, -EPICK_AN_ERRNO, "Time out"},
++ { EFI_NOT_STARTED, -EPICK_AN_ERRNO, "Not started"},
++ { EFI_ALREADY_STARTED, -EPICK_AN_ERRNO, "Already started"},
++#endif
++ { EFI_ABORTED, -EINTR, "Aborted"},
++#if 0
++ { EFI_ICMP_ERROR, -EPICK_AN_ERRNO, "ICMP Error"},
++ { EFI_TFTP_ERROR, -EPICK_AN_ERRNO, "TFTP Error"},
++ { EFI_PROTOCOL_ERROR, -EPICK_AN_ERRNO, "Protocol Error"},
++ { EFI_INCOMPATIBLE_VERSION, -EPICK_AN_ERRNO, "Incompatible Version"},
++#endif
++ { EFI_SECURITY_VIOLATION, -EACCES, "Security Policy Violation"},
++#if 0
++ { EFI_CRC_ERROR, -EPICK_AN_ERRNO, "CRC Error"},
++ { EFI_END_OF_MEDIA, -EPICK_AN_ERRNO, "End of Media"},
++ { EFI_END_OF_FILE, -EPICK_AN_ERRNO, "End of File"},
++ { EFI_INVALID_LANGUAGE, -EPICK_AN_ERRNO, "Invalid Languages"},
++ { EFI_COMPROMISED_DATA, -EPICK_AN_ERRNO, "Compromised Data"},
++
++ // warnings
++ { EFI_WARN_UNKOWN_GLYPH, -EPICK_AN_ERRNO, "Warning Unknown Glyph"},
++ { EFI_WARN_DELETE_FAILURE, -EPICK_AN_ERRNO, "Warning Delete Failure"},
++ { EFI_WARN_WRITE_FAILURE, -EPICK_AN_ERRNO, "Warning Write Failure"},
++ { EFI_WARN_BUFFER_TOO_SMALL, -EPICK_AN_ERRNO, "Warning Buffer Too Small"},
++#endif
++};
++
++static int
++efi_status_cmp_bsearch(const void *key, const void *item)
++{
++ u64 status = (u64)(uintptr_t)key;
++ struct efi_error_code *code = (struct efi_error_code *)item;
++
++ if (status < code->status)
++ return -1;
++ if (status > code->status)
++ return 1;
++ return 0;
++}
++
+ int efi_status_to_err(efi_status_t status)
+ {
+- int err;
++ struct efi_error_code *found;
++ size_t num = sizeof(efi_error_codes) / sizeof(struct efi_error_code);
+
+- switch (status) {
+- case EFI_SUCCESS:
+- err = 0;
+- break;
+- case EFI_INVALID_PARAMETER:
+- err = -EINVAL;
+- break;
+- case EFI_OUT_OF_RESOURCES:
+- err = -ENOSPC;
+- break;
+- case EFI_DEVICE_ERROR:
+- err = -EIO;
+- break;
+- case EFI_WRITE_PROTECTED:
+- err = -EROFS;
+- break;
+- case EFI_SECURITY_VIOLATION:
+- err = -EACCES;
+- break;
+- case EFI_NOT_FOUND:
+- err = -ENOENT;
+- break;
+- case EFI_ABORTED:
+- err = -EINTR;
+- break;
+- default:
+- err = -EINVAL;
+- }
++ found = bsearch((void *)(uintptr_t)status, efi_error_codes,
++ sizeof(struct efi_error_code), num,
++ efi_status_cmp_bsearch);
++ if (!found)
++ return -EINVAL;
++ return found->errno;
++}
+
+- return err;
++const char *
++efi_status_to_str(efi_status_t status)
++{
++ struct efi_error_code *found;
++ size_t num = sizeof(efi_error_codes) / sizeof(struct efi_error_code);
++
++ found = bsearch((void *)(uintptr_t)status, efi_error_codes,
++ sizeof(struct efi_error_code), num,
++ efi_status_cmp_bsearch);
++ if (!found)
++ return "Unknown error code";
++ return found->description;
+ }
+
+ bool efi_is_table_address(unsigned long phys_addr)
+--
+2.15.0
+
diff --git a/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch b/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch
new file mode 100644
index 000000000..3ea374ff5
--- /dev/null
+++ b/0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch
@@ -0,0 +1,84 @@
+From c25d877f4ee97deb92170129eee4777a5d5997d9 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Wed, 22 Nov 2017 12:57:09 +0100
+Subject: [PATCH v2 2/3] HID: multitouch: Only look at non touch fields in
+ first packet of a frame
+
+Devices in "single finger hybrid mode" will send one report per finger,
+on some devices only the first report of such a multi-packet frame will
+contain a value for BTN_LEFT, in subsequent reports (if multiple fingers
+are down) the value is always 0, causing hid-mt to report BTN_LEFT going
+1 - 0 - 1 - 0 when pressing a clickpad and putting down a second finger.
+This happens for example on USB 0603:0002 mt touchpads.
+
+This commit fixes this by only reporting non touch fields for the first
+packet of a (possibly) multi-packet frame.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+---
+ drivers/hid/hid-multitouch.c | 17 +++++++++++++++--
+ 1 file changed, 15 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
+index d8b1cad74faf..760c4a042e6a 100644
+--- a/drivers/hid/hid-multitouch.c
++++ b/drivers/hid/hid-multitouch.c
+@@ -787,9 +787,11 @@ static int mt_touch_event(struct hid_device *hid, struct hid_field *field,
+ }
+
+ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,
+- struct hid_usage *usage, __s32 value)
++ struct hid_usage *usage, __s32 value,
++ bool first_packet)
+ {
+ struct mt_device *td = hid_get_drvdata(hid);
++ __s32 cls = td->mtclass.name;
+ __s32 quirks = td->mtclass.quirks;
+ struct input_dev *input = field->hidinput->input;
+
+@@ -846,6 +848,15 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,
+ break;
+
+ default:
++ /*
++ * For Win8 PTP touchpads we should only look at
++ * non finger/touch events in the first_packet of
++ * a (possible) multi-packet frame.
++ */
++ if ((cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL) &&
++ !first_packet)
++ return;
++
+ if (usage->type)
+ input_event(input, usage->type, usage->code,
+ value);
+@@ -866,6 +877,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
+ struct mt_device *td = hid_get_drvdata(hid);
+ __s32 cls = td->mtclass.name;
+ struct hid_field *field;
++ bool first_packet;
+ unsigned count;
+ int r, n, scantime = 0;
+
+@@ -901,6 +913,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
+ }
+ td->prev_scantime = scantime;
+
++ first_packet = td->num_received == 0;
+ for (r = 0; r < report->maxfield; r++) {
+ field = report->field[r];
+ count = field->report_count;
+@@ -910,7 +923,7 @@ static void mt_touch_report(struct hid_device *hid, struct hid_report *report)
+
+ for (n = 0; n < count; n++)
+ mt_process_mt_event(hid, field, &field->usage[n],
+- field->value[n]);
++ field->value[n], first_packet);
+ }
+
+ if (td->num_received >= td->num_expected)
+--
+2.14.3
+
diff --git a/0002-Input-soc_button_array-Suppress-power-button-presses.patch b/0002-Input-soc_button_array-Suppress-power-button-presses.patch
deleted file mode 100644
index d95aeb36c..000000000
--- a/0002-Input-soc_button_array-Suppress-power-button-presses.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-From d561f0543506bc12e7b3355efddb0bfd7ca83c74 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Sat, 22 Jul 2017 13:17:36 +0200
-Subject: [PATCH 2/2] Input: soc_button_array - Suppress power button presses
- during suspend
-
-If the power-button is pressed to wakeup the laptop/tablet from suspend
-and we report a KEY_POWER event to userspace when woken up this will cause
-userspace to immediately suspend the system again which is undesirable.
-
-This commit sets the new no_wakeup_events flag in the gpio_keys_button
-struct for the power-button suppressing the undesirable KEY_POWER input
-events on wake-up.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
-Changes in v2:
--New patch in v2 of this patch-set
----
- drivers/input/misc/soc_button_array.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/input/misc/soc_button_array.c b/drivers/input/misc/soc_button_array.c
-index f600f3a7a3c6..27b99831cb97 100644
---- a/drivers/input/misc/soc_button_array.c
-+++ b/drivers/input/misc/soc_button_array.c
-@@ -27,6 +27,7 @@ struct soc_button_info {
- unsigned int event_code;
- bool autorepeat;
- bool wakeup;
-+ bool no_wakeup_events;
- };
-
- /*
-@@ -100,6 +101,7 @@ soc_button_device_create(struct platform_device *pdev,
- gpio_keys[n_buttons].active_low = 1;
- gpio_keys[n_buttons].desc = info->name;
- gpio_keys[n_buttons].wakeup = info->wakeup;
-+ gpio_keys[n_buttons].no_wakeup_events = info->no_wakeup_events;
- /* These devices often use cheap buttons, use 50 ms debounce */
- gpio_keys[n_buttons].debounce_interval = 50;
- n_buttons++;
-@@ -185,6 +187,7 @@ static int soc_button_parse_btn_desc(struct device *dev,
- info->name = "power";
- info->event_code = KEY_POWER;
- info->wakeup = true;
-+ info->no_wakeup_events = true;
- } else if (upage == 0x07 && usage == 0xe3) {
- info->name = "home";
- info->event_code = KEY_LEFTMETA;
-@@ -369,7 +372,7 @@ static int soc_button_probe(struct platform_device *pdev)
- * Platforms"
- */
- static struct soc_button_info soc_button_PNP0C40[] = {
-- { "power", 0, EV_KEY, KEY_POWER, false, true },
-+ { "power", 0, EV_KEY, KEY_POWER, false, true, true },
- { "home", 1, EV_KEY, KEY_LEFTMETA, false, true },
- { "volume_up", 2, EV_KEY, KEY_VOLUMEUP, true, false },
- { "volume_down", 3, EV_KEY, KEY_VOLUMEDOWN, true, false },
---
-2.13.4
-
diff --git a/0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch b/0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch
new file mode 100644
index 000000000..f27812b85
--- /dev/null
+++ b/0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch
@@ -0,0 +1,33 @@
+From eab582db4b6c04a20a8bd792faa9ebf7adf1ec17 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Mon, 27 Nov 2017 12:07:34 +0100
+Subject: [PATCH 2/3] ahci: Add PCI ids for Intel Bay Trail, Cherry Trail and
+ Apollo Lake AHCI
+
+Add PCI ids for Intel Bay Trail, Cherry Trail and Apollo Lake AHCI
+SATA controllers. This commit is a preparation patch for allowing a
+different default sata link powermanagement policy for mobile chipsets.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+ drivers/ata/ahci.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
+index 9d842ff6ec51..844f697bedbf 100644
+--- a/drivers/ata/ahci.c
++++ b/drivers/ata/ahci.c
+@@ -386,6 +386,10 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0xa206), board_ahci }, /* Lewisburg RAID*/
+ { PCI_VDEVICE(INTEL, 0xa252), board_ahci }, /* Lewisburg RAID*/
+ { PCI_VDEVICE(INTEL, 0xa256), board_ahci }, /* Lewisburg RAID*/
++ { PCI_VDEVICE(INTEL, 0x0f22), board_ahci }, /* Bay Trail AHCI */
++ { PCI_VDEVICE(INTEL, 0x0f23), board_ahci }, /* Bay Trail AHCI */
++ { PCI_VDEVICE(INTEL, 0x22a3), board_ahci }, /* Cherry Trail AHCI */
++ { PCI_VDEVICE(INTEL, 0x5ae3), board_ahci }, /* Apollo Lake AHCI */
+
+ /* JMicron 360/1/3/5/6, match class to avoid IDE function */
+ { PCI_VENDOR_ID_JMICRON, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
+--
+2.14.3
+
diff --git a/0002-mfd-Add-Cherry-Trail-Whiskey-Cove-PMIC-driver.patch b/0002-mfd-Add-Cherry-Trail-Whiskey-Cove-PMIC-driver.patch
deleted file mode 100644
index 49975811b..000000000
--- a/0002-mfd-Add-Cherry-Trail-Whiskey-Cove-PMIC-driver.patch
+++ /dev/null
@@ -1,355 +0,0 @@
-From c0f9254fdd0703ade018b2ff3a8cca433f781a11 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Sun, 26 Feb 2017 21:07:29 +0100
-Subject: [PATCH 02/16] mfd: Add Cherry Trail Whiskey Cove PMIC driver
-
-Add mfd driver for Intel CHT Whiskey Cove PMIC, based on various non
-upstreamed CHT Whiskey Cove PMIC patches.
-
-This is a somewhat minimal version which adds irqchip support and cells
-for: ACPI PMIC opregion support, the i2c-controller driving the external
-charger irc and the pwrsrc/extcon block.
-
-Further cells can be added in the future if/when drivers are upstreamed
-for them.
-
-Cc: Bin Gao <bin.gao@intel.com>
-Cc: Felipe Balbi <felipe.balbi@linux.intel.com>
-Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
----
-Changes in v2:
--Since this uses plain mfd and not the intel_soc_pmic stuff give it
- its own Kconfig and allow this to be built as a module
--Add missing #include <acpi/acpi_bus.h>
-
-Changes in v3:
--Drop #include <acpi/acpi_bus.h> again, not the right fix for the build errors
--Error out when the upper byte of the register-address passed to the regmap
- functions is 0 rather then hardcoding an address in that case
--Various minor style tweaks / cleanups
--Move defines of regulator register addresses to intel_pmic_chtwc.c,
- it is the only place where they are used
--Drop now empty include/linux/mfd/intel_chtwc.h
--Rename intel_soc_pmic_chtwc.c to intel_cht_wc.c to match Kconfig option name
--Add irqchip support
--Add external charger cell
--Add pwrsrc cell
-
-Changes in v4:
--Use PLATFORM_DEVID_NONE
-
-Changes in v5:
--Change Kconfig option from tristate to boolean and add a select for the
- i2c-bus driver, this is necessary because the chtwc PMIC provides an ACPI
- OPRegion handler, which must be available before other drivers using it
- are loaded, which can only be ensured if the mfd, opregion and i2c-bus
- drivers are built in. This fixes errors like these during boot:
- mmc0: SDHCI controller on ACPI [80860F14:00] using ADMA
- ACPI Error: No handler for Region [REGS] (ffff93543b0cc3a8) [UserDefinedRegion] (20170119/evregion-166)
- ACPI Error: Region UserDefinedRegion (ID=143) has no handler (20170119/exfldio-299)
- ACPI Error: Method parse/execution failed [\_SB.PCI0.I2C7.PMI5.GET] (Node ffff93543b0cde10), AE_NOT_EXIST (20170119/psparse-543)
- ACPI Error: Method parse/execution failed [\_SB.PCI0.SHC1._PS0] (Node ffff93543b0b5cd0), AE_NOT_EXIST (20170119/psparse-543)
- acpi 80860F14:02: Failed to change power state to D0
--Some minor style and capitalization fixes from review by Lee Jones
-
-Changes in v6:
--Fix Kconfig depends and selects to fix warning reported by kbuild test robot
-
-Changes in v7:
--Add explanation why this is a bool and why it selects i2c-designwaree
- to the help text rather then as comments in the Kconfig
-
-Changes in v8:
--Remove MODULE macros, etc. now that this driver is a bool in Kconfig
-
-Changes in v9:
--Some whitespace tweaks
--Return -EINVAL from probe on invalid irq
--Use probe_new i2c_driver callback
----
- drivers/mfd/Kconfig | 16 +++
- drivers/mfd/Makefile | 1 +
- drivers/mfd/intel_soc_pmic_chtwc.c | 230 +++++++++++++++++++++++++++++++++++++
- 3 files changed, 247 insertions(+)
- create mode 100644 drivers/mfd/intel_soc_pmic_chtwc.c
-
-diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
-index 3eb5c93595f6..5203a86b8f6c 100644
---- a/drivers/mfd/Kconfig
-+++ b/drivers/mfd/Kconfig
-@@ -470,6 +470,22 @@ config INTEL_SOC_PMIC_BXTWC
- thermal, charger and related power management functions
- on these systems.
-
-+config INTEL_SOC_PMIC_CHTWC
-+ bool "Support for Intel Cherry Trail Whiskey Cove PMIC"
-+ depends on ACPI && HAS_IOMEM && I2C=y && COMMON_CLK
-+ depends on X86 || COMPILE_TEST
-+ select MFD_CORE
-+ select REGMAP_I2C
-+ select REGMAP_IRQ
-+ select I2C_DESIGNWARE_PLATFORM
-+ help
-+ Select this option to enable support for the Intel Cherry Trail
-+ Whiskey Cove PMIC found on some Intel Cherry Trail systems.
-+
-+ This option is a bool as it provides an ACPI OpRegion which must be
-+ available before any devices using it are probed. This option also
-+ causes the designware-i2c driver to be builtin for the same reason.
-+
- config MFD_INTEL_LPSS
- tristate
- select COMMON_CLK
-diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile
-index c16bf1ea0ea9..6f6aed8cfccc 100644
---- a/drivers/mfd/Makefile
-+++ b/drivers/mfd/Makefile
-@@ -214,6 +214,7 @@ obj-$(CONFIG_MFD_SKY81452) += sky81452.o
- intel-soc-pmic-objs := intel_soc_pmic_core.o intel_soc_pmic_crc.o
- obj-$(CONFIG_INTEL_SOC_PMIC) += intel-soc-pmic.o
- obj-$(CONFIG_INTEL_SOC_PMIC_BXTWC) += intel_soc_pmic_bxtwc.o
-+obj-$(CONFIG_INTEL_SOC_PMIC_CHTWC) += intel_soc_pmic_chtwc.o
- obj-$(CONFIG_MFD_MT6397) += mt6397-core.o
-
- obj-$(CONFIG_MFD_ALTERA_A10SR) += altera-a10sr.o
-diff --git a/drivers/mfd/intel_soc_pmic_chtwc.c b/drivers/mfd/intel_soc_pmic_chtwc.c
-new file mode 100644
-index 000000000000..b35da01d5bcf
---- /dev/null
-+++ b/drivers/mfd/intel_soc_pmic_chtwc.c
-@@ -0,0 +1,230 @@
-+/*
-+ * MFD core driver for Intel Cherrytrail Whiskey Cove PMIC
-+ *
-+ * Copyright (C) 2017 Hans de Goede <hdegoede@redhat.com>
-+ *
-+ * Based on various non upstream patches to support the CHT Whiskey Cove PMIC:
-+ * Copyright (C) 2013-2015 Intel Corporation. All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ */
-+
-+#include <linux/acpi.h>
-+#include <linux/delay.h>
-+#include <linux/err.h>
-+#include <linux/i2c.h>
-+#include <linux/interrupt.h>
-+#include <linux/kernel.h>
-+#include <linux/mfd/core.h>
-+#include <linux/mfd/intel_soc_pmic.h>
-+#include <linux/regmap.h>
-+
-+/* PMIC device registers */
-+#define REG_OFFSET_MASK GENMASK(7, 0)
-+#define REG_ADDR_MASK GENMASK(15, 8)
-+#define REG_ADDR_SHIFT 8
-+
-+#define CHT_WC_IRQLVL1 0x6e02
-+#define CHT_WC_IRQLVL1_MASK 0x6e0e
-+
-+/* Whiskey Cove PMIC share same ACPI ID between different platforms */
-+#define CHT_WC_HRV 3
-+
-+/* Level 1 IRQs (level 2 IRQs are handled in the child device drivers) */
-+enum {
-+ CHT_WC_PWRSRC_IRQ = 0,
-+ CHT_WC_THRM_IRQ,
-+ CHT_WC_BCU_IRQ,
-+ CHT_WC_ADC_IRQ,
-+ CHT_WC_EXT_CHGR_IRQ,
-+ CHT_WC_GPIO_IRQ,
-+ /* There is no irq 6 */
-+ CHT_WC_CRIT_IRQ = 7,
-+};
-+
-+static struct resource cht_wc_pwrsrc_resources[] = {
-+ DEFINE_RES_IRQ(CHT_WC_PWRSRC_IRQ),
-+};
-+
-+static struct resource cht_wc_ext_charger_resources[] = {
-+ DEFINE_RES_IRQ(CHT_WC_EXT_CHGR_IRQ),
-+};
-+
-+static struct mfd_cell cht_wc_dev[] = {
-+ {
-+ .name = "cht_wcove_pwrsrc",
-+ .num_resources = ARRAY_SIZE(cht_wc_pwrsrc_resources),
-+ .resources = cht_wc_pwrsrc_resources,
-+ }, {
-+ .name = "cht_wcove_ext_chgr",
-+ .num_resources = ARRAY_SIZE(cht_wc_ext_charger_resources),
-+ .resources = cht_wc_ext_charger_resources,
-+ },
-+ { .name = "cht_wcove_region", },
-+};
-+
-+/*
-+ * The CHT Whiskey Cove covers multiple I2C addresses, with a 1 Byte
-+ * register address space per I2C address, so we use 16 bit register
-+ * addresses where the high 8 bits contain the I2C client address.
-+ */
-+static int cht_wc_byte_reg_read(void *context, unsigned int reg,
-+ unsigned int *val)
-+{
-+ struct i2c_client *client = context;
-+ int ret, orig_addr = client->addr;
-+
-+ if (!(reg & REG_ADDR_MASK)) {
-+ dev_err(&client->dev, "Error I2C address not specified\n");
-+ return -EINVAL;
-+ }
-+
-+ client->addr = (reg & REG_ADDR_MASK) >> REG_ADDR_SHIFT;
-+ ret = i2c_smbus_read_byte_data(client, reg & REG_OFFSET_MASK);
-+ client->addr = orig_addr;
-+
-+ if (ret < 0)
-+ return ret;
-+
-+ *val = ret;
-+ return 0;
-+}
-+
-+static int cht_wc_byte_reg_write(void *context, unsigned int reg,
-+ unsigned int val)
-+{
-+ struct i2c_client *client = context;
-+ int ret, orig_addr = client->addr;
-+
-+ if (!(reg & REG_ADDR_MASK)) {
-+ dev_err(&client->dev, "Error I2C address not specified\n");
-+ return -EINVAL;
-+ }
-+
-+ client->addr = (reg & REG_ADDR_MASK) >> REG_ADDR_SHIFT;
-+ ret = i2c_smbus_write_byte_data(client, reg & REG_OFFSET_MASK, val);
-+ client->addr = orig_addr;
-+
-+ return ret;
-+}
-+
-+static const struct regmap_config cht_wc_regmap_cfg = {
-+ .reg_bits = 16,
-+ .val_bits = 8,
-+ .reg_write = cht_wc_byte_reg_write,
-+ .reg_read = cht_wc_byte_reg_read,
-+};
-+
-+static const struct regmap_irq cht_wc_regmap_irqs[] = {
-+ REGMAP_IRQ_REG(CHT_WC_PWRSRC_IRQ, 0, BIT(CHT_WC_PWRSRC_IRQ)),
-+ REGMAP_IRQ_REG(CHT_WC_THRM_IRQ, 0, BIT(CHT_WC_THRM_IRQ)),
-+ REGMAP_IRQ_REG(CHT_WC_BCU_IRQ, 0, BIT(CHT_WC_BCU_IRQ)),
-+ REGMAP_IRQ_REG(CHT_WC_ADC_IRQ, 0, BIT(CHT_WC_ADC_IRQ)),
-+ REGMAP_IRQ_REG(CHT_WC_EXT_CHGR_IRQ, 0, BIT(CHT_WC_EXT_CHGR_IRQ)),
-+ REGMAP_IRQ_REG(CHT_WC_GPIO_IRQ, 0, BIT(CHT_WC_GPIO_IRQ)),
-+ REGMAP_IRQ_REG(CHT_WC_CRIT_IRQ, 0, BIT(CHT_WC_CRIT_IRQ)),
-+};
-+
-+static const struct regmap_irq_chip cht_wc_regmap_irq_chip = {
-+ .name = "cht_wc_irq_chip",
-+ .status_base = CHT_WC_IRQLVL1,
-+ .mask_base = CHT_WC_IRQLVL1_MASK,
-+ .irqs = cht_wc_regmap_irqs,
-+ .num_irqs = ARRAY_SIZE(cht_wc_regmap_irqs),
-+ .num_regs = 1,
-+};
-+
-+static int cht_wc_probe(struct i2c_client *client)
-+{
-+ struct device *dev = &client->dev;
-+ struct intel_soc_pmic *pmic;
-+ acpi_status status;
-+ unsigned long long hrv;
-+ int ret;
-+
-+ status = acpi_evaluate_integer(ACPI_HANDLE(dev), "_HRV", NULL, &hrv);
-+ if (ACPI_FAILURE(status)) {
-+ dev_err(dev, "Failed to get PMIC hardware revision\n");
-+ return -ENODEV;
-+ }
-+ if (hrv != CHT_WC_HRV) {
-+ dev_err(dev, "Invalid PMIC hardware revision: %llu\n", hrv);
-+ return -ENODEV;
-+ }
-+ if (client->irq < 0) {
-+ dev_err(dev, "Invalid IRQ\n");
-+ return -EINVAL;
-+ }
-+
-+ pmic = devm_kzalloc(dev, sizeof(*pmic), GFP_KERNEL);
-+ if (!pmic)
-+ return -ENOMEM;
-+
-+ pmic->irq = client->irq;
-+ pmic->dev = dev;
-+ i2c_set_clientdata(client, pmic);
-+
-+ pmic->regmap = devm_regmap_init(dev, NULL, client, &cht_wc_regmap_cfg);
-+ if (IS_ERR(pmic->regmap))
-+ return PTR_ERR(pmic->regmap);
-+
-+ ret = devm_regmap_add_irq_chip(dev, pmic->regmap, pmic->irq,
-+ IRQF_ONESHOT | IRQF_SHARED, 0,
-+ &cht_wc_regmap_irq_chip,
-+ &pmic->irq_chip_data);
-+ if (ret)
-+ return ret;
-+
-+ return devm_mfd_add_devices(dev, PLATFORM_DEVID_NONE,
-+ cht_wc_dev, ARRAY_SIZE(cht_wc_dev), NULL, 0,
-+ regmap_irq_get_domain(pmic->irq_chip_data));
-+}
-+
-+static void cht_wc_shutdown(struct i2c_client *client)
-+{
-+ struct intel_soc_pmic *pmic = i2c_get_clientdata(client);
-+
-+ disable_irq(pmic->irq);
-+}
-+
-+static int __maybe_unused cht_wc_suspend(struct device *dev)
-+{
-+ struct intel_soc_pmic *pmic = dev_get_drvdata(dev);
-+
-+ disable_irq(pmic->irq);
-+
-+ return 0;
-+}
-+
-+static int __maybe_unused cht_wc_resume(struct device *dev)
-+{
-+ struct intel_soc_pmic *pmic = dev_get_drvdata(dev);
-+
-+ enable_irq(pmic->irq);
-+
-+ return 0;
-+}
-+static SIMPLE_DEV_PM_OPS(cht_wc_pm_ops, cht_wc_suspend, cht_wc_resume);
-+
-+static const struct i2c_device_id cht_wc_i2c_id[] = {
-+ { }
-+};
-+
-+static const struct acpi_device_id cht_wc_acpi_ids[] = {
-+ { "INT34D3", },
-+ { }
-+};
-+
-+static struct i2c_driver cht_wc_driver = {
-+ .driver = {
-+ .name = "CHT Whiskey Cove PMIC",
-+ .pm = &cht_wc_pm_ops,
-+ .acpi_match_table = cht_wc_acpi_ids,
-+ },
-+ .probe_new = cht_wc_probe,
-+ .shutdown = cht_wc_shutdown,
-+ .id_table = cht_wc_i2c_id,
-+};
-+builtin_i2c_driver(cht_wc_driver);
---
-2.13.0
-
diff --git a/0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch b/0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch
new file mode 100644
index 000000000..7fda714cb
--- /dev/null
+++ b/0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch
@@ -0,0 +1,78 @@
+From 1719566899e5a69b4ba767beb07dab7ceb9ae5a8 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Wed, 22 Nov 2017 12:57:10 +0100
+Subject: [PATCH v2 3/3] HID: multitouch: Combine all left-button events in a
+ frame
+
+According to the Win8 Precision Touchpad spec, inside the HID_UP_BUTTON
+usage-page usage 1 is for a clickpad getting clicked, 2 for an external
+left button and 3 for an external right button. Since Linux uses
+BTN_LEFT for a clickpad being clicked we end up mapping both usage 1
+and 2 to BTN_LEFT and if a single report contains both then we ended
+up always reporting the value of both in a single SYN, e.g. :
+BTN_LEFT 1, BTN_LEFT 0, SYN. This happens for example with Hantick
+HTT5288 i2c mt touchpads.
+
+This commit fixes this by not immediately reporting left button when we
+parse the report, but instead storing or-ing together the values and
+reporting the result from mt_sync_frame() when we've a complete frame.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
+Signed-off-by: Jiri Kosina <jkosina@suse.cz>
+---
+ drivers/hid/hid-multitouch.c | 20 ++++++++++++++++++++
+ 1 file changed, 20 insertions(+)
+
+diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
+index 760c4a042e6a..76088f2cf598 100644
+--- a/drivers/hid/hid-multitouch.c
++++ b/drivers/hid/hid-multitouch.c
+@@ -122,6 +122,7 @@ struct mt_device {
+ int scantime_index; /* scantime field index in the report */
+ int scantime_val_index; /* scantime value index in the field */
+ int prev_scantime; /* scantime reported in the previous packet */
++ int left_button_state; /* left button state */
+ unsigned last_slot_field; /* the last field of a slot */
+ unsigned mt_report_id; /* the report ID of the multitouch device */
+ unsigned long initial_quirks; /* initial quirks state */
+@@ -743,10 +744,16 @@ static void mt_complete_slot(struct mt_device *td, struct input_dev *input)
+ */
+ static void mt_sync_frame(struct mt_device *td, struct input_dev *input)
+ {
++ __s32 cls = td->mtclass.name;
++
++ if (cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL)
++ input_event(input, EV_KEY, BTN_LEFT, td->left_button_state);
++
+ input_mt_sync_frame(input);
+ input_event(input, EV_MSC, MSC_TIMESTAMP, td->timestamp);
+ input_sync(input);
+ td->num_received = 0;
++ td->left_button_state = 0;
+ if (test_bit(MT_IO_FLAGS_ACTIVE_SLOTS, &td->mt_io_flags))
+ set_bit(MT_IO_FLAGS_PENDING_SLOTS, &td->mt_io_flags);
+ else
+@@ -857,6 +864,19 @@ static void mt_process_mt_event(struct hid_device *hid, struct hid_field *field,
+ !first_packet)
+ return;
+
++ /*
++ * For Win8 PTP touchpads we map both the clickpad click
++ * and any "external" left buttons to BTN_LEFT if a
++ * device claims to have both we need to report 1 for
++ * BTN_LEFT if either is pressed, so we or all values
++ * together and report the result in mt_sync_frame().
++ */
++ if ((cls == MT_CLS_WIN_8 || cls == MT_CLS_WIN_8_DUAL) &&
++ usage->type == EV_KEY && usage->code == BTN_LEFT) {
++ td->left_button_state |= value;
++ return;
++ }
++
+ if (usage->type)
+ input_event(input, usage->type, usage->code,
+ value);
+--
+2.14.3
+
diff --git a/0003-Make-get_cert_list-use-efi_status_to_str-to-print-er.patch b/0003-Make-get_cert_list-use-efi_status_to_str-to-print-er.patch
new file mode 100644
index 000000000..abb313a29
--- /dev/null
+++ b/0003-Make-get_cert_list-use-efi_status_to_str-to-print-er.patch
@@ -0,0 +1,38 @@
+From 520e902d864930e2d4f329983d9ae9781a24231f Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Mon, 2 Oct 2017 18:18:30 -0400
+Subject: [PATCH 3/3] Make get_cert_list() use efi_status_to_str() to print
+ error messages.
+
+Signed-off-by: Peter Jones <pjones@redhat.com>
+---
+ certs/load_uefi.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/certs/load_uefi.c b/certs/load_uefi.c
+index 9ef34c44fd1..13a2826715d 100644
+--- a/certs/load_uefi.c
++++ b/certs/load_uefi.c
+@@ -51,7 +51,8 @@ static __init int get_cert_list(efi_char16_t *name, efi_guid_t *guid,
+ }
+
+ if (status != EFI_BUFFER_TOO_SMALL) {
+- pr_err("Couldn't get size: 0x%lx\n", status);
++ pr_err("Couldn't get size: %s (0x%lx)\n",
++ efi_status_to_str(status), status);
+ return efi_status_to_err(status);
+ }
+
+@@ -64,7 +65,8 @@ static __init int get_cert_list(efi_char16_t *name, efi_guid_t *guid,
+ status = efi.get_variable(name, guid, NULL, &lsize, db);
+ if (status != EFI_SUCCESS) {
+ kfree(db);
+- pr_err("Error reading db var: 0x%lx\n", status);
++ pr_err("Error reading db var: %s (0x%lx)\n",
++ efi_status_to_str(status), status);
+ return efi_status_to_err(status);
+ }
+
+--
+2.15.0
+
diff --git a/0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch b/0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch
new file mode 100644
index 000000000..fe7edde8f
--- /dev/null
+++ b/0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch
@@ -0,0 +1,274 @@
+From 262135cf058c28d248b997bd11b2c124e27d8d47 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <hdegoede@redhat.com>
+Date: Mon, 27 Nov 2017 15:32:01 +0100
+Subject: [PATCH 3/3] ahci: Allow setting a default LPM policy for mobile
+ chipsets
+
+On many laptops setting a different LPM policy then unknown /
+max_performance can lead to power-savings of 1.0 - 1.5 Watts (when idle).
+
+Modern ultrabooks idle around 6W (at 50% screen brightness), 1.0 - 1.5W
+is a significant chunk of this.
+
+There are some performance / latency costs to enabling LPM by default,
+so it is desirable to make it possible to set a different LPM policy
+for mobile / laptop variants of chipsets / "South Bridges" vs their
+desktop / server counterparts. Also enabling LPM by default is not
+entirely without risk of regressions. At least min_power is known to
+cause issues with some disks, including some reports of data corruption.
+
+This commits adds a new ahci.mobile_lpm_policy kernel cmdline option,
+which defaults to a new SATA_MOBILE_LPM_POLICY Kconfig option so that
+Linux distributions can choose to set a LPM policy for mobile chipsets
+by default.
+
+The reason to have both a kernel cmdline option and a Kconfig default
+value for it, is to allow easy overriding of the default to allow
+trouble-shooting without needing to rebuild the kernel.
+
+Signed-off-by: Hans de Goede <hdegoede@redhat.com>
+---
+Changes in v2:
+-Remove .config changes from the patch
+---
+ drivers/ata/Kconfig | 19 +++++++++++
+ drivers/ata/ahci.c | 97 +++++++++++++++++++++++++++++++----------------------
+ drivers/ata/ahci.h | 3 ++
+ 3 files changed, 78 insertions(+), 41 deletions(-)
+
+diff --git a/drivers/ata/Kconfig b/drivers/ata/Kconfig
+index cb5339166563..b3fad5663aeb 100644
+--- a/drivers/ata/Kconfig
++++ b/drivers/ata/Kconfig
+@@ -92,6 +92,25 @@ config SATA_AHCI
+
+ If unsure, say N.
+
++config SATA_MOBILE_LPM_POLICY
++ int "Default SATA Link Power Management policy for mobile chipsets"
++ range 0 4
++ default 0
++ depends on SATA_AHCI
++ help
++ Select the Default SATA Link Power Management (LPM) policy to use
++ for mobile / laptop variants of chipsets / "South Bridges".
++
++ The value set has the following meanings:
++ 0 => Keep firmware settings
++ 1 => Maximum performance
++ 2 => Medium power
++ 3 => Medium power with Device Initiated PM enabled
++ 4 => Minimum power
++
++ Note "Minimum power" is known to cause issues, including disk
++ corruption, with some disks and should not be used.
++
+ config SATA_AHCI_PLATFORM
+ tristate "Platform AHCI SATA support"
+ help
+diff --git a/drivers/ata/ahci.c b/drivers/ata/ahci.c
+index 844f697bedbf..8e910fae8892 100644
+--- a/drivers/ata/ahci.c
++++ b/drivers/ata/ahci.c
+@@ -65,6 +65,7 @@ enum board_ids {
+ /* board IDs by feature in alphabetical order */
+ board_ahci,
+ board_ahci_ign_iferr,
++ board_ahci_mobile,
+ board_ahci_nomsi,
+ board_ahci_noncq,
+ board_ahci_nosntf,
+@@ -140,6 +141,13 @@ static const struct ata_port_info ahci_port_info[] = {
+ .udma_mask = ATA_UDMA6,
+ .port_ops = &ahci_ops,
+ },
++ [board_ahci_mobile] = {
++ AHCI_HFLAGS (AHCI_HFLAG_IS_MOBILE),
++ .flags = AHCI_FLAG_COMMON,
++ .pio_mask = ATA_PIO4,
++ .udma_mask = ATA_UDMA6,
++ .port_ops = &ahci_ops,
++ },
+ [board_ahci_nomsi] = {
+ AHCI_HFLAGS (AHCI_HFLAG_NO_MSI),
+ .flags = AHCI_FLAG_COMMON,
+@@ -252,13 +260,13 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x2924), board_ahci }, /* ICH9 */
+ { PCI_VDEVICE(INTEL, 0x2925), board_ahci }, /* ICH9 */
+ { PCI_VDEVICE(INTEL, 0x2927), board_ahci }, /* ICH9 */
+- { PCI_VDEVICE(INTEL, 0x2929), board_ahci }, /* ICH9M */
+- { PCI_VDEVICE(INTEL, 0x292a), board_ahci }, /* ICH9M */
+- { PCI_VDEVICE(INTEL, 0x292b), board_ahci }, /* ICH9M */
+- { PCI_VDEVICE(INTEL, 0x292c), board_ahci }, /* ICH9M */
+- { PCI_VDEVICE(INTEL, 0x292f), board_ahci }, /* ICH9M */
++ { PCI_VDEVICE(INTEL, 0x2929), board_ahci_mobile }, /* ICH9M */
++ { PCI_VDEVICE(INTEL, 0x292a), board_ahci_mobile }, /* ICH9M */
++ { PCI_VDEVICE(INTEL, 0x292b), board_ahci_mobile }, /* ICH9M */
++ { PCI_VDEVICE(INTEL, 0x292c), board_ahci_mobile }, /* ICH9M */
++ { PCI_VDEVICE(INTEL, 0x292f), board_ahci_mobile }, /* ICH9M */
+ { PCI_VDEVICE(INTEL, 0x294d), board_ahci }, /* ICH9 */
+- { PCI_VDEVICE(INTEL, 0x294e), board_ahci }, /* ICH9M */
++ { PCI_VDEVICE(INTEL, 0x294e), board_ahci_mobile }, /* ICH9M */
+ { PCI_VDEVICE(INTEL, 0x502a), board_ahci }, /* Tolapai */
+ { PCI_VDEVICE(INTEL, 0x502b), board_ahci }, /* Tolapai */
+ { PCI_VDEVICE(INTEL, 0x3a05), board_ahci }, /* ICH10 */
+@@ -268,9 +276,9 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x3b23), board_ahci }, /* PCH AHCI */
+ { PCI_VDEVICE(INTEL, 0x3b24), board_ahci }, /* PCH RAID */
+ { PCI_VDEVICE(INTEL, 0x3b25), board_ahci }, /* PCH RAID */
+- { PCI_VDEVICE(INTEL, 0x3b29), board_ahci }, /* PCH M AHCI */
++ { PCI_VDEVICE(INTEL, 0x3b29), board_ahci_mobile }, /* PCH M AHCI */
+ { PCI_VDEVICE(INTEL, 0x3b2b), board_ahci }, /* PCH RAID */
+- { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci }, /* PCH M RAID */
++ { PCI_VDEVICE(INTEL, 0x3b2c), board_ahci_mobile }, /* PCH M RAID */
+ { PCI_VDEVICE(INTEL, 0x3b2f), board_ahci }, /* PCH AHCI */
+ { PCI_VDEVICE(INTEL, 0x19b0), board_ahci }, /* DNV AHCI */
+ { PCI_VDEVICE(INTEL, 0x19b1), board_ahci }, /* DNV AHCI */
+@@ -293,9 +301,9 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x19cE), board_ahci }, /* DNV AHCI */
+ { PCI_VDEVICE(INTEL, 0x19cF), board_ahci }, /* DNV AHCI */
+ { PCI_VDEVICE(INTEL, 0x1c02), board_ahci }, /* CPT AHCI */
+- { PCI_VDEVICE(INTEL, 0x1c03), board_ahci }, /* CPT M AHCI */
++ { PCI_VDEVICE(INTEL, 0x1c03), board_ahci_mobile }, /* CPT M AHCI */
+ { PCI_VDEVICE(INTEL, 0x1c04), board_ahci }, /* CPT RAID */
+- { PCI_VDEVICE(INTEL, 0x1c05), board_ahci }, /* CPT M RAID */
++ { PCI_VDEVICE(INTEL, 0x1c05), board_ahci_mobile }, /* CPT M RAID */
+ { PCI_VDEVICE(INTEL, 0x1c06), board_ahci }, /* CPT RAID */
+ { PCI_VDEVICE(INTEL, 0x1c07), board_ahci }, /* CPT RAID */
+ { PCI_VDEVICE(INTEL, 0x1d02), board_ahci }, /* PBG AHCI */
+@@ -304,28 +312,28 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x2826), board_ahci }, /* PBG RAID */
+ { PCI_VDEVICE(INTEL, 0x2323), board_ahci }, /* DH89xxCC AHCI */
+ { PCI_VDEVICE(INTEL, 0x1e02), board_ahci }, /* Panther Point AHCI */
+- { PCI_VDEVICE(INTEL, 0x1e03), board_ahci }, /* Panther Point M AHCI */
++ { PCI_VDEVICE(INTEL, 0x1e03), board_ahci_mobile }, /* Panther M AHCI */
+ { PCI_VDEVICE(INTEL, 0x1e04), board_ahci }, /* Panther Point RAID */
+ { PCI_VDEVICE(INTEL, 0x1e05), board_ahci }, /* Panther Point RAID */
+ { PCI_VDEVICE(INTEL, 0x1e06), board_ahci }, /* Panther Point RAID */
+- { PCI_VDEVICE(INTEL, 0x1e07), board_ahci }, /* Panther Point M RAID */
++ { PCI_VDEVICE(INTEL, 0x1e07), board_ahci_mobile }, /* Panther M RAID */
+ { PCI_VDEVICE(INTEL, 0x1e0e), board_ahci }, /* Panther Point RAID */
+ { PCI_VDEVICE(INTEL, 0x8c02), board_ahci }, /* Lynx Point AHCI */
+- { PCI_VDEVICE(INTEL, 0x8c03), board_ahci }, /* Lynx Point M AHCI */
++ { PCI_VDEVICE(INTEL, 0x8c03), board_ahci_mobile }, /* Lynx M AHCI */
+ { PCI_VDEVICE(INTEL, 0x8c04), board_ahci }, /* Lynx Point RAID */
+- { PCI_VDEVICE(INTEL, 0x8c05), board_ahci }, /* Lynx Point M RAID */
++ { PCI_VDEVICE(INTEL, 0x8c05), board_ahci_mobile }, /* Lynx M RAID */
+ { PCI_VDEVICE(INTEL, 0x8c06), board_ahci }, /* Lynx Point RAID */
+- { PCI_VDEVICE(INTEL, 0x8c07), board_ahci }, /* Lynx Point M RAID */
++ { PCI_VDEVICE(INTEL, 0x8c07), board_ahci_mobile }, /* Lynx M RAID */
+ { PCI_VDEVICE(INTEL, 0x8c0e), board_ahci }, /* Lynx Point RAID */
+- { PCI_VDEVICE(INTEL, 0x8c0f), board_ahci }, /* Lynx Point M RAID */
+- { PCI_VDEVICE(INTEL, 0x9c02), board_ahci }, /* Lynx Point-LP AHCI */
+- { PCI_VDEVICE(INTEL, 0x9c03), board_ahci }, /* Lynx Point-LP AHCI */
+- { PCI_VDEVICE(INTEL, 0x9c04), board_ahci }, /* Lynx Point-LP RAID */
+- { PCI_VDEVICE(INTEL, 0x9c05), board_ahci }, /* Lynx Point-LP RAID */
+- { PCI_VDEVICE(INTEL, 0x9c06), board_ahci }, /* Lynx Point-LP RAID */
+- { PCI_VDEVICE(INTEL, 0x9c07), board_ahci }, /* Lynx Point-LP RAID */
+- { PCI_VDEVICE(INTEL, 0x9c0e), board_ahci }, /* Lynx Point-LP RAID */
+- { PCI_VDEVICE(INTEL, 0x9c0f), board_ahci }, /* Lynx Point-LP RAID */
++ { PCI_VDEVICE(INTEL, 0x8c0f), board_ahci_mobile }, /* Lynx M RAID */
++ { PCI_VDEVICE(INTEL, 0x9c02), board_ahci_mobile }, /* Lynx LP AHCI */
++ { PCI_VDEVICE(INTEL, 0x9c03), board_ahci_mobile }, /* Lynx LP AHCI */
++ { PCI_VDEVICE(INTEL, 0x9c04), board_ahci_mobile }, /* Lynx LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9c05), board_ahci_mobile }, /* Lynx LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9c06), board_ahci_mobile }, /* Lynx LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9c07), board_ahci_mobile }, /* Lynx LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9c0e), board_ahci_mobile }, /* Lynx LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9c0f), board_ahci_mobile }, /* Lynx LP RAID */
+ { PCI_VDEVICE(INTEL, 0x1f22), board_ahci }, /* Avoton AHCI */
+ { PCI_VDEVICE(INTEL, 0x1f23), board_ahci }, /* Avoton AHCI */
+ { PCI_VDEVICE(INTEL, 0x1f24), board_ahci }, /* Avoton RAID */
+@@ -353,26 +361,26 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0x8d66), board_ahci }, /* Wellsburg RAID */
+ { PCI_VDEVICE(INTEL, 0x8d6e), board_ahci }, /* Wellsburg RAID */
+ { PCI_VDEVICE(INTEL, 0x23a3), board_ahci }, /* Coleto Creek AHCI */
+- { PCI_VDEVICE(INTEL, 0x9c83), board_ahci }, /* Wildcat Point-LP AHCI */
+- { PCI_VDEVICE(INTEL, 0x9c85), board_ahci }, /* Wildcat Point-LP RAID */
+- { PCI_VDEVICE(INTEL, 0x9c87), board_ahci }, /* Wildcat Point-LP RAID */
+- { PCI_VDEVICE(INTEL, 0x9c8f), board_ahci }, /* Wildcat Point-LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9c83), board_ahci_mobile }, /* Wildcat LP AHCI */
++ { PCI_VDEVICE(INTEL, 0x9c85), board_ahci_mobile }, /* Wildcat LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9c87), board_ahci_mobile }, /* Wildcat LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9c8f), board_ahci_mobile }, /* Wildcat LP RAID */
+ { PCI_VDEVICE(INTEL, 0x8c82), board_ahci }, /* 9 Series AHCI */
+- { PCI_VDEVICE(INTEL, 0x8c83), board_ahci }, /* 9 Series M AHCI */
++ { PCI_VDEVICE(INTEL, 0x8c83), board_ahci_mobile }, /* 9 Series M AHCI */
+ { PCI_VDEVICE(INTEL, 0x8c84), board_ahci }, /* 9 Series RAID */
+- { PCI_VDEVICE(INTEL, 0x8c85), board_ahci }, /* 9 Series M RAID */
++ { PCI_VDEVICE(INTEL, 0x8c85), board_ahci_mobile }, /* 9 Series M RAID */
+ { PCI_VDEVICE(INTEL, 0x8c86), board_ahci }, /* 9 Series RAID */
+- { PCI_VDEVICE(INTEL, 0x8c87), board_ahci }, /* 9 Series M RAID */
++ { PCI_VDEVICE(INTEL, 0x8c87), board_ahci_mobile }, /* 9 Series M RAID */
+ { PCI_VDEVICE(INTEL, 0x8c8e), board_ahci }, /* 9 Series RAID */
+- { PCI_VDEVICE(INTEL, 0x8c8f), board_ahci }, /* 9 Series M RAID */
+- { PCI_VDEVICE(INTEL, 0x9d03), board_ahci }, /* Sunrise Point-LP AHCI */
+- { PCI_VDEVICE(INTEL, 0x9d05), board_ahci }, /* Sunrise Point-LP RAID */
+- { PCI_VDEVICE(INTEL, 0x9d07), board_ahci }, /* Sunrise Point-LP RAID */
++ { PCI_VDEVICE(INTEL, 0x8c8f), board_ahci_mobile }, /* 9 Series M RAID */
++ { PCI_VDEVICE(INTEL, 0x9d03), board_ahci_mobile }, /* Sunrise LP AHCI */
++ { PCI_VDEVICE(INTEL, 0x9d05), board_ahci_mobile }, /* Sunrise LP RAID */
++ { PCI_VDEVICE(INTEL, 0x9d07), board_ahci_mobile }, /* Sunrise LP RAID */
+ { PCI_VDEVICE(INTEL, 0xa102), board_ahci }, /* Sunrise Point-H AHCI */
+- { PCI_VDEVICE(INTEL, 0xa103), board_ahci }, /* Sunrise Point-H M AHCI */
++ { PCI_VDEVICE(INTEL, 0xa103), board_ahci_mobile }, /* Sunrise M AHCI */
+ { PCI_VDEVICE(INTEL, 0xa105), board_ahci }, /* Sunrise Point-H RAID */
+ { PCI_VDEVICE(INTEL, 0xa106), board_ahci }, /* Sunrise Point-H RAID */
+- { PCI_VDEVICE(INTEL, 0xa107), board_ahci }, /* Sunrise Point-H M RAID */
++ { PCI_VDEVICE(INTEL, 0xa107), board_ahci_mobile }, /* Sunrise M RAID */
+ { PCI_VDEVICE(INTEL, 0xa10f), board_ahci }, /* Sunrise Point-H RAID */
+ { PCI_VDEVICE(INTEL, 0x2822), board_ahci }, /* Lewisburg RAID*/
+ { PCI_VDEVICE(INTEL, 0x2823), board_ahci }, /* Lewisburg AHCI*/
+@@ -386,10 +394,10 @@ static const struct pci_device_id ahci_pci_tbl[] = {
+ { PCI_VDEVICE(INTEL, 0xa206), board_ahci }, /* Lewisburg RAID*/
+ { PCI_VDEVICE(INTEL, 0xa252), board_ahci }, /* Lewisburg RAID*/
+ { PCI_VDEVICE(INTEL, 0xa256), board_ahci }, /* Lewisburg RAID*/
+- { PCI_VDEVICE(INTEL, 0x0f22), board_ahci }, /* Bay Trail AHCI */
+- { PCI_VDEVICE(INTEL, 0x0f23), board_ahci }, /* Bay Trail AHCI */
+- { PCI_VDEVICE(INTEL, 0x22a3), board_ahci }, /* Cherry Trail AHCI */
+- { PCI_VDEVICE(INTEL, 0x5ae3), board_ahci }, /* Apollo Lake AHCI */
++ { PCI_VDEVICE(INTEL, 0x0f22), board_ahci_mobile }, /* Bay Trail AHCI */
++ { PCI_VDEVICE(INTEL, 0x0f23), board_ahci_mobile }, /* Bay Trail AHCI */
++ { PCI_VDEVICE(INTEL, 0x22a3), board_ahci_mobile }, /* Cherry Tr. AHCI */
++ { PCI_VDEVICE(INTEL, 0x5ae3), board_ahci_mobile }, /* ApolloLake AHCI */
+
+ /* JMicron 360/1/3/5/6, match class to avoid IDE function */
+ { PCI_VENDOR_ID_JMICRON, PCI_ANY_ID, PCI_ANY_ID, PCI_ANY_ID,
+@@ -597,6 +605,9 @@ static int marvell_enable = 1;
+ module_param(marvell_enable, int, 0644);
+ MODULE_PARM_DESC(marvell_enable, "Marvell SATA via AHCI (1 = enabled)");
+
++static int mobile_lpm_policy = CONFIG_SATA_MOBILE_LPM_POLICY;
++module_param(mobile_lpm_policy, int, 0644);
++MODULE_PARM_DESC(mobile_lpm_policy, "Default LPM policy for mobile chipsets");
+
+ static void ahci_pci_save_initial_config(struct pci_dev *pdev,
+ struct ahci_host_priv *hpriv)
+@@ -1732,6 +1743,10 @@ static int ahci_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
+ if (ap->flags & ATA_FLAG_EM)
+ ap->em_message_type = hpriv->em_msg_type;
+
++ if ((hpriv->flags & AHCI_HFLAG_IS_MOBILE) &&
++ mobile_lpm_policy >= ATA_LPM_UNKNOWN &&
++ mobile_lpm_policy <= ATA_LPM_MIN_POWER)
++ ap->target_lpm_policy = mobile_lpm_policy;
+
+ /* disabled/not-implemented port */
+ if (!(hpriv->port_map & (1 << i)))
+diff --git a/drivers/ata/ahci.h b/drivers/ata/ahci.h
+index 749fd94441b0..a9d996e17d75 100644
+--- a/drivers/ata/ahci.h
++++ b/drivers/ata/ahci.h
+@@ -251,6 +251,9 @@ enum {
+ AHCI_HFLAG_YES_ALPM = (1 << 23), /* force ALPM cap on */
+ AHCI_HFLAG_NO_WRITE_TO_RO = (1 << 24), /* don't write to read
+ only registers */
++ AHCI_HFLAG_IS_MOBILE = (1 << 25), /* mobile chipset, use
++ SATA_MOBILE_LPM_POLICY
++ as default lpm_policy */
+
+ /* ap->flags bits */
+
+--
+2.14.3
+
diff --git a/0003-power-supply-core-Add-support-for-supplied-from-devi.patch b/0003-power-supply-core-Add-support-for-supplied-from-devi.patch
deleted file mode 100644
index ab646e2e5..000000000
--- a/0003-power-supply-core-Add-support-for-supplied-from-devi.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 69dd0606a0d8680fe0a5e9b959f6662e582e1674 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Tue, 2 May 2017 13:43:34 +0200
-Subject: [PATCH 03/16] power: supply: core: Add support for supplied-from
- device-property
-
-On devicetree using platforms the devicetree can provide info on which
-power-supplies supply another power-supply through phandles.
-
-This commit adds support for providing this info on non devicetree
-platforms through the platform code setting a supplied-from
-device-property on the power-supplies parent device.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
- drivers/power/supply/power_supply_core.c | 24 +++++++++++++++++++++++-
- 1 file changed, 23 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/power/supply/power_supply_core.c b/drivers/power/supply/power_supply_core.c
-index 7ec7c7c202bd..0c09144193a6 100644
---- a/drivers/power/supply/power_supply_core.c
-+++ b/drivers/power/supply/power_supply_core.c
-@@ -274,8 +274,30 @@ static int power_supply_check_supplies(struct power_supply *psy)
- return power_supply_populate_supplied_from(psy);
- }
- #else
--static inline int power_supply_check_supplies(struct power_supply *psy)
-+static int power_supply_check_supplies(struct power_supply *psy)
- {
-+ int nval, ret;
-+
-+ if (!psy->dev.parent)
-+ return 0;
-+
-+ nval = device_property_read_string_array(psy->dev.parent,
-+ "supplied-from", NULL, 0);
-+ if (nval <= 0)
-+ return 0;
-+
-+ psy->supplied_from = devm_kmalloc_array(&psy->dev, nval,
-+ sizeof(char *), GFP_KERNEL);
-+ if (!psy->supplied_from)
-+ return -ENOMEM;
-+
-+ ret = device_property_read_string_array(psy->dev.parent,
-+ "supplied-from", (const char **)psy->supplied_from, nval);
-+ if (ret < 0)
-+ return ret;
-+
-+ psy->num_supplies = nval;
-+
- return 0;
- }
- #endif
---
-2.13.0
-
diff --git a/0004-platform-x86-intel_cht_int33fe-Set-supplied-from-pro.patch b/0004-platform-x86-intel_cht_int33fe-Set-supplied-from-pro.patch
deleted file mode 100644
index 342a48c54..000000000
--- a/0004-platform-x86-intel_cht_int33fe-Set-supplied-from-pro.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 99c44df299d96db6a170ccce9b8108fc2e7f8bae Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Tue, 2 May 2017 13:40:44 +0200
-Subject: [PATCH 04/16] platform/x86: intel_cht_int33fe: Set supplied-from
- property on max17047 dev
-
-Devices with the intel_cht_int33fe ACPI device use a max17047 fuel-gauge
-combined with a bq24272i charger, in order for the fuel-gauge driver to
-correctly display charging / discharging status it needs to know which
-charger is supplying the battery.
-
-This commit sets the supplied-from device property to the name of the
-bq24272i charger for this.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
- drivers/platform/x86/intel_cht_int33fe.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/drivers/platform/x86/intel_cht_int33fe.c b/drivers/platform/x86/intel_cht_int33fe.c
-index 6a1b2ca5b6fe..da706e2c4232 100644
---- a/drivers/platform/x86/intel_cht_int33fe.c
-+++ b/drivers/platform/x86/intel_cht_int33fe.c
-@@ -34,6 +34,13 @@ struct cht_int33fe_data {
- struct i2c_client *pi3usb30532;
- };
-
-+static const char * const max17047_suppliers[] = { "bq24190-charger" };
-+
-+static const struct property_entry max17047_props[] = {
-+ PROPERTY_ENTRY_STRING_ARRAY("supplied-from", max17047_suppliers),
-+ { }
-+};
-+
- static int cht_int33fe_probe(struct i2c_client *client)
- {
- struct device *dev = &client->dev;
-@@ -70,6 +77,7 @@ static int cht_int33fe_probe(struct i2c_client *client)
-
- memset(&board_info, 0, sizeof(board_info));
- strlcpy(board_info.type, "max17047", I2C_NAME_SIZE);
-+ board_info.properties = max17047_props;
-
- data->max17047 = i2c_acpi_new_device(dev, 1, &board_info);
- if (!data->max17047)
---
-2.13.0
-
diff --git a/0005-ACPI-PMIC-xpower-Add-support-for-the-GPI1-regulator-.patch b/0005-ACPI-PMIC-xpower-Add-support-for-the-GPI1-regulator-.patch
deleted file mode 100644
index c6f299c29..000000000
--- a/0005-ACPI-PMIC-xpower-Add-support-for-the-GPI1-regulator-.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From cc2b0e2c164d02ab42efa736f91f53baf8d8bc36 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Thu, 20 Apr 2017 22:41:20 +0200
-Subject: [PATCH 05/16] ACPI / PMIC: xpower: Add support for the GPI1 regulator
- to the OpRegion handler
-
-Some Bay Trail devices use a GPI1 regulator field (address 0x4c) in
-their 0x8d power OpRegion, add support for this.
-
-This fixes AE_BAD_PARAMETER errors getting thrown on these devices and
-fixes these errors causing these devices to not suspend.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
-Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
----
-Changes in v2:
--Simplify reg == 0x92 handling (suggested by Andy Shevchenko)
--Add special handling for reg == 0x92 to intel_xpower_pmic_get_power() too
-Changes in v3:
--Use defines for GPI1 reg and bits, rather then hardcoded hex values
----
- drivers/acpi/pmic/intel_pmic_xpower.c | 21 ++++++++++++++++++++-
- 1 file changed, 20 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/acpi/pmic/intel_pmic_xpower.c b/drivers/acpi/pmic/intel_pmic_xpower.c
-index 1a76c784cd4c..3b7d5be5b7ed 100644
---- a/drivers/acpi/pmic/intel_pmic_xpower.c
-+++ b/drivers/acpi/pmic/intel_pmic_xpower.c
-@@ -21,6 +21,11 @@
- #include "intel_pmic.h"
-
- #define XPOWER_GPADC_LOW 0x5b
-+#define XPOWER_GPI1_CTRL 0x92
-+
-+#define GPI1_LDO_MASK GENMASK(2, 0)
-+#define GPI1_LDO_ON (3 << 0)
-+#define GPI1_LDO_OFF (4 << 0)
-
- static struct pmic_table power_table[] = {
- {
-@@ -118,6 +123,10 @@ static struct pmic_table power_table[] = {
- .reg = 0x10,
- .bit = 0x00
- }, /* BUC6 */
-+ {
-+ .address = 0x4c,
-+ .reg = 0x92,
-+ }, /* GPI1 */
- };
-
- /* TMP0 - TMP5 are the same, all from GPADC */
-@@ -156,7 +165,12 @@ static int intel_xpower_pmic_get_power(struct regmap *regmap, int reg,
- if (regmap_read(regmap, reg, &data))
- return -EIO;
-
-- *value = (data & BIT(bit)) ? 1 : 0;
-+ /* GPIO1 LDO regulator needs special handling */
-+ if (reg == XPOWER_GPI1_CTRL)
-+ *value = ((data & GPI1_LDO_MASK) == GPI1_LDO_ON);
-+ else
-+ *value = (data & BIT(bit)) ? 1 : 0;
-+
- return 0;
- }
-
-@@ -165,6 +179,11 @@ static int intel_xpower_pmic_update_power(struct regmap *regmap, int reg,
- {
- int data;
-
-+ /* GPIO1 LDO regulator needs special handling */
-+ if (reg == XPOWER_GPI1_CTRL)
-+ return regmap_update_bits(regmap, reg, GPI1_LDO_MASK,
-+ on ? GPI1_LDO_ON : GPI1_LDO_OFF);
-+
- if (regmap_read(regmap, reg, &data))
- return -EIO;
-
---
-2.13.0
-
diff --git a/0006-Input-axp20x-pek-Add-wakeup-support.patch b/0006-Input-axp20x-pek-Add-wakeup-support.patch
deleted file mode 100644
index 1ec9659bd..000000000
--- a/0006-Input-axp20x-pek-Add-wakeup-support.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From fbac4c05ec1d7c2d949f50baf1e934cbfbb6a494 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Mon, 17 Apr 2017 22:06:25 +0200
-Subject: [PATCH 06/16] Input: axp20x-pek - Add wakeup support
-
-At least on devices with the AXP288 PMIC the device is expected to
-wakeup from suspend when the power-button gets pressed, add support
-for this.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
- drivers/input/misc/axp20x-pek.c | 28 ++++++++++++++++++++++++++++
- 1 file changed, 28 insertions(+)
-
-diff --git a/drivers/input/misc/axp20x-pek.c b/drivers/input/misc/axp20x-pek.c
-index 400869e61a06..5f16fceaae83 100644
---- a/drivers/input/misc/axp20x-pek.c
-+++ b/drivers/input/misc/axp20x-pek.c
-@@ -253,6 +253,9 @@ static int axp20x_pek_probe_input_device(struct axp20x_pek *axp20x_pek,
- return error;
- }
-
-+ if (axp20x_pek->axp20x->variant == AXP288_ID)
-+ enable_irq_wake(axp20x_pek->irq_dbr);
-+
- return 0;
- }
-
-@@ -331,10 +334,35 @@ static int axp20x_pek_probe(struct platform_device *pdev)
- return 0;
- }
-
-+static int __maybe_unused axp20x_pek_resume_noirq(struct device *dev)
-+{
-+ struct axp20x_pek *axp20x_pek = dev_get_drvdata(dev);
-+
-+ if (axp20x_pek->axp20x->variant != AXP288_ID)
-+ return 0;
-+
-+ /*
-+ * Clear interrupts from button presses during suspend, to avoid
-+ * a wakeup power-button press getting reported to userspace.
-+ */
-+ regmap_write(axp20x_pek->axp20x->regmap,
-+ AXP20X_IRQ1_STATE + AXP288_IRQ_POKN / 8,
-+ BIT(AXP288_IRQ_POKN % 8));
-+
-+ return 0;
-+}
-+
-+const struct dev_pm_ops axp20x_pek_pm_ops = {
-+#ifdef CONFIG_PM_SLEEP
-+ .resume_noirq = axp20x_pek_resume_noirq,
-+#endif
-+};
-+
- static struct platform_driver axp20x_pek_driver = {
- .probe = axp20x_pek_probe,
- .driver = {
- .name = "axp20x-pek",
-+ .pm = &axp20x_pek_pm_ops,
- },
- };
- module_platform_driver(axp20x_pek_driver);
---
-2.13.0
-
diff --git a/0007-platform-x86-silead_dmi-Add-touchscreen-info-for-GP-.patch b/0007-platform-x86-silead_dmi-Add-touchscreen-info-for-GP-.patch
deleted file mode 100644
index 0b7633459..000000000
--- a/0007-platform-x86-silead_dmi-Add-touchscreen-info-for-GP-.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From d95c127c48ef784214671359a41ac505ac30098a Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Sun, 7 May 2017 12:32:11 +0200
-Subject: [PATCH 07/16] platform/x86: silead_dmi: Add touchscreen info for
- GP-electronic T701
-
-Add touchscreen info for the GP-electronic T701 tablet.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
- drivers/platform/x86/silead_dmi.c | 22 ++++++++++++++++++++++
- 1 file changed, 22 insertions(+)
-
-diff --git a/drivers/platform/x86/silead_dmi.c b/drivers/platform/x86/silead_dmi.c
-index a3a57d93cf06..db3a877d2160 100644
---- a/drivers/platform/x86/silead_dmi.c
-+++ b/drivers/platform/x86/silead_dmi.c
-@@ -80,6 +80,19 @@ static const struct silead_ts_dmi_data surftab_wintron70_st70416_6_data = {
- .properties = surftab_wintron70_st70416_6_props,
- };
-
-+static const struct property_entry gp_electronic_t701_props[] = {
-+ PROPERTY_ENTRY_U32("touchscreen-size-x", 960),
-+ PROPERTY_ENTRY_U32("touchscreen-size-y", 640),
-+ PROPERTY_ENTRY_STRING("firmware-name",
-+ "gsl1680-gp-electronic-t701.fw"),
-+ { }
-+};
-+
-+static const struct silead_ts_dmi_data gp_electronic_t701_data = {
-+ .acpi_name = "MSSL1680:00",
-+ .properties = gp_electronic_t701_props,
-+};
-+
- static const struct dmi_system_id silead_ts_dmi_table[] = {
- {
- /* CUBE iwork8 Air */
-@@ -117,6 +130,15 @@ static const struct dmi_system_id silead_ts_dmi_table[] = {
- DMI_MATCH(DMI_BIOS_VERSION, "TREK.G.WI71C.JGBMRBA04"),
- },
- },
-+ {
-+ /* GP-electronic T701 */
-+ .driver_data = (void *)&gp_electronic_t701_data,
-+ .matches = {
-+ DMI_MATCH(DMI_SYS_VENDOR, "Insyde"),
-+ DMI_MATCH(DMI_PRODUCT_NAME, "T701"),
-+ DMI_MATCH(DMI_BIOS_VERSION, "BYT70A.YNCHENG.WIN.007"),
-+ },
-+ },
- { },
- };
-
---
-2.13.0
-
diff --git a/0008-platform-x86-silead_dmi-Add-touchscreen-info-for-PoV.patch b/0008-platform-x86-silead_dmi-Add-touchscreen-info-for-PoV.patch
deleted file mode 100644
index 975deb8f0..000000000
--- a/0008-platform-x86-silead_dmi-Add-touchscreen-info-for-PoV.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 55b347c61b2850d1e11e159ab02dc71f13b06481 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Sun, 11 Jun 2017 17:42:31 +0200
-Subject: [PATCH 08/16] platform/x86: silead_dmi: Add touchscreen info for PoV
- mobii wintab p800w
-
-Add touchscreen info for the Point of View mobii wintab p800w tablet.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
- drivers/platform/x86/silead_dmi.c | 25 +++++++++++++++++++++++++
- 1 file changed, 25 insertions(+)
-
-diff --git a/drivers/platform/x86/silead_dmi.c b/drivers/platform/x86/silead_dmi.c
-index db3a877d2160..46c5e1ebfb53 100644
---- a/drivers/platform/x86/silead_dmi.c
-+++ b/drivers/platform/x86/silead_dmi.c
-@@ -93,6 +93,20 @@ static const struct silead_ts_dmi_data gp_electronic_t701_data = {
- .properties = gp_electronic_t701_props,
- };
-
-+static const struct property_entry pov_mobii_wintab_p800w_props[] = {
-+ PROPERTY_ENTRY_U32("touchscreen-size-x", 1800),
-+ PROPERTY_ENTRY_U32("touchscreen-size-y", 1150),
-+ PROPERTY_ENTRY_BOOL("touchscreen-swapped-x-y"),
-+ PROPERTY_ENTRY_STRING("firmware-name",
-+ "gsl3692-pov-mobii-wintab-p800w.fw"),
-+ { }
-+};
-+
-+static const struct silead_ts_dmi_data pov_mobii_wintab_p800w_data = {
-+ .acpi_name = "MSSL1680:00",
-+ .properties = pov_mobii_wintab_p800w_props,
-+};
-+
- static const struct dmi_system_id silead_ts_dmi_table[] = {
- {
- /* CUBE iwork8 Air */
-@@ -139,6 +153,17 @@ static const struct dmi_system_id silead_ts_dmi_table[] = {
- DMI_MATCH(DMI_BIOS_VERSION, "BYT70A.YNCHENG.WIN.007"),
- },
- },
-+ {
-+ /* Point of View mobii wintab p800w */
-+ .driver_data = (void *)&pov_mobii_wintab_p800w_data,
-+ .matches = {
-+ DMI_MATCH(DMI_BOARD_VENDOR, "AMI Corporation"),
-+ DMI_MATCH(DMI_BOARD_NAME, "Aptio CRB"),
-+ DMI_MATCH(DMI_BIOS_VERSION, "3BAIR1013"),
-+ /* Above matches are too generic, add bios-date match */
-+ DMI_MATCH(DMI_BIOS_DATE, "08/22/2014"),
-+ },
-+ },
- { },
- };
-
---
-2.13.0
-
diff --git a/0009-platform-x86-silead_dmi-Add-touchscreen-info-for-Pip.patch b/0009-platform-x86-silead_dmi-Add-touchscreen-info-for-Pip.patch
deleted file mode 100644
index 0770395d9..000000000
--- a/0009-platform-x86-silead_dmi-Add-touchscreen-info-for-Pip.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From b239a7a0c2a1435aa5cbab3f233e0c37e82943dd Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Tue, 13 Jun 2017 18:17:07 +0200
-Subject: [PATCH 09/16] platform/x86: silead_dmi: Add touchscreen info for Pipo
- W2S tablet
-
-Add touchscreen info for Pipo W2S tablet.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
- drivers/platform/x86/silead_dmi.c | 23 +++++++++++++++++++++++
- 1 file changed, 23 insertions(+)
-
-diff --git a/drivers/platform/x86/silead_dmi.c b/drivers/platform/x86/silead_dmi.c
-index 46c5e1ebfb53..25cbea307a5e 100644
---- a/drivers/platform/x86/silead_dmi.c
-+++ b/drivers/platform/x86/silead_dmi.c
-@@ -107,6 +107,21 @@ static const struct silead_ts_dmi_data pov_mobii_wintab_p800w_data = {
- .properties = pov_mobii_wintab_p800w_props,
- };
-
-+static const struct property_entry pipo_w2s_props[] = {
-+ PROPERTY_ENTRY_U32("touchscreen-size-x", 1660),
-+ PROPERTY_ENTRY_U32("touchscreen-size-y", 880),
-+ PROPERTY_ENTRY_BOOL("touchscreen-inverted-x"),
-+ PROPERTY_ENTRY_BOOL("touchscreen-swapped-x-y"),
-+ PROPERTY_ENTRY_STRING("firmware-name",
-+ "gsl1680-pipo-w2s.fw"),
-+ { }
-+};
-+
-+static const struct silead_ts_dmi_data pipo_w2s_data = {
-+ .acpi_name = "MSSL1680:00",
-+ .properties = pipo_w2s_props,
-+};
-+
- static const struct dmi_system_id silead_ts_dmi_table[] = {
- {
- /* CUBE iwork8 Air */
-@@ -164,6 +179,14 @@ static const struct dmi_system_id silead_ts_dmi_table[] = {
- DMI_MATCH(DMI_BIOS_DATE, "08/22/2014"),
- },
- },
-+ {
-+ /* Pipo W2S */
-+ .driver_data = (void *)&pipo_w2s_data,
-+ .matches = {
-+ DMI_MATCH(DMI_SYS_VENDOR, "PIPO"),
-+ DMI_MATCH(DMI_PRODUCT_NAME, "W2S"),
-+ },
-+ },
- { },
- };
-
---
-2.13.0
-
diff --git a/0012-Input-gpio_keys-Do-not-report-wake-button-presses-as.patch b/0012-Input-gpio_keys-Do-not-report-wake-button-presses-as.patch
deleted file mode 100644
index 9b52e3908..000000000
--- a/0012-Input-gpio_keys-Do-not-report-wake-button-presses-as.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-From 02b823a4d28ffb5fde5192799abd934d9de95630 Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Fri, 6 Jan 2017 20:08:11 +0100
-Subject: [PATCH 12/16] Input: gpio_keys - Do not report wake button presses as
- evdev events
-
-If a button is a wake button, it may still be bouncing from the press
-to wakeup the device by the time the gpio interrupts get enabled again
-and / or the gpio_keys_report_state call from gpio_keys_resume may
-find the button still pressed and report this as a new press.
-
-This is undesirable, esp. since the powerbutton on tablets is typically
-a wakeup source and uses the gpio_keys driver on some tablets, leading
-to userspace immediately re-suspending the tablet after the powerbutton
-is pressed, due to it seeing a powerbutton press.
-
-This commit ignores wakeup button presses for the first 1 second after
-resume (and while resumed, as the workqueue may run before the resume
-function runs), avoiding this problem.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
-Note: maybe we should make WAKE_DEBOUNCE part of gpio_keys_button and
-only do this when drivers / platform-data set this to a non-zero value ?
----
- drivers/input/keyboard/gpio_keys.c | 49 ++++++++++++++++++++++++++++++++++++--
- 1 file changed, 47 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c
-index da3d362f21b1..e1488b534e7d 100644
---- a/drivers/input/keyboard/gpio_keys.c
-+++ b/drivers/input/keyboard/gpio_keys.c
-@@ -31,6 +31,8 @@
- #include <linux/of_irq.h>
- #include <linux/spinlock.h>
-
-+#define WAKE_DEBOUNCE msecs_to_jiffies(1000)
-+
- struct gpio_button_data {
- const struct gpio_keys_button *button;
- struct input_dev *input;
-@@ -44,10 +46,14 @@ struct gpio_button_data {
- struct delayed_work work;
- unsigned int software_debounce; /* in msecs, for GPIO-driven buttons */
-
-+ unsigned long resume_time; /* in jiffies, for wakeup buttons */
-+
- unsigned int irq;
- spinlock_t lock;
- bool disabled;
- bool key_pressed;
-+ bool suspended;
-+ bool resume_time_valid;
- };
-
- struct gpio_keys_drvdata {
-@@ -356,6 +362,27 @@ static struct attribute_group gpio_keys_attr_group = {
- .attrs = gpio_keys_attrs,
- };
-
-+static bool gpio_keys_ignore_wakeup_button_press(struct gpio_button_data *bdata)
-+{
-+ unsigned long flags;
-+ bool ret = false;
-+
-+ if (!bdata->button->wakeup)
-+ return ret;
-+
-+ spin_lock_irqsave(&bdata->lock, flags);
-+
-+ if (bdata->suspended)
-+ ret = true; /* Our resume method did not run yet */
-+ else if (bdata->resume_time_valid &&
-+ time_before(jiffies, bdata->resume_time + WAKE_DEBOUNCE))
-+ ret = true; /* Assume this is a wakeup press and ignore */
-+
-+ spin_unlock_irqrestore(&bdata->lock, flags);
-+
-+ return ret;
-+}
-+
- static void gpio_keys_gpio_report_event(struct gpio_button_data *bdata)
- {
- const struct gpio_keys_button *button = bdata->button;
-@@ -370,6 +397,9 @@ static void gpio_keys_gpio_report_event(struct gpio_button_data *bdata)
- return;
- }
-
-+ if (state && gpio_keys_ignore_wakeup_button_press(bdata))
-+ return;
-+
- if (type == EV_ABS) {
- if (state)
- input_event(input, type, button->code, button->value);
-@@ -429,6 +459,9 @@ static irqreturn_t gpio_keys_irq_isr(int irq, void *dev_id)
-
- BUG_ON(irq != bdata->irq);
-
-+ if (gpio_keys_ignore_wakeup_button_press(bdata))
-+ return IRQ_HANDLED;
-+
- spin_lock_irqsave(&bdata->lock, flags);
-
- if (!bdata->key_pressed) {
-@@ -848,13 +881,18 @@ static int __maybe_unused gpio_keys_suspend(struct device *dev)
- {
- struct gpio_keys_drvdata *ddata = dev_get_drvdata(dev);
- struct input_dev *input = ddata->input;
-+ unsigned long flags;
- int i;
-
- if (device_may_wakeup(dev)) {
- for (i = 0; i < ddata->pdata->nbuttons; i++) {
- struct gpio_button_data *bdata = &ddata->data[i];
-- if (bdata->button->wakeup)
-+ if (bdata->button->wakeup) {
-+ spin_lock_irqsave(&bdata->lock, flags);
-+ bdata->suspended = true;
-+ spin_unlock_irqrestore(&bdata->lock, flags);
- enable_irq_wake(bdata->irq);
-+ }
- }
- } else {
- mutex_lock(&input->mutex);
-@@ -870,14 +908,21 @@ static int __maybe_unused gpio_keys_resume(struct device *dev)
- {
- struct gpio_keys_drvdata *ddata = dev_get_drvdata(dev);
- struct input_dev *input = ddata->input;
-+ unsigned long flags;
- int error = 0;
- int i;
-
- if (device_may_wakeup(dev)) {
- for (i = 0; i < ddata->pdata->nbuttons; i++) {
- struct gpio_button_data *bdata = &ddata->data[i];
-- if (bdata->button->wakeup)
-+ if (bdata->button->wakeup) {
- disable_irq_wake(bdata->irq);
-+ spin_lock_irqsave(&bdata->lock, flags);
-+ bdata->resume_time = jiffies;
-+ bdata->resume_time_valid = true;
-+ bdata->suspended = false;
-+ spin_unlock_irqrestore(&bdata->lock, flags);
-+ }
- }
- } else {
- mutex_lock(&input->mutex);
---
-2.13.0
-
diff --git a/0014-mmc-sdhci-acpi-Workaround-conflict-with-PCI-wifi-on-.patch b/0014-mmc-sdhci-acpi-Workaround-conflict-with-PCI-wifi-on-.patch
deleted file mode 100644
index b5c717c64..000000000
--- a/0014-mmc-sdhci-acpi-Workaround-conflict-with-PCI-wifi-on-.patch
+++ /dev/null
@@ -1,143 +0,0 @@
-From 51eb7454942c68c84b82782e47637de3ba37f113 Mon Sep 17 00:00:00 2001
-From: Adrian Hunter <adrian.hunter@intel.com>
-Date: Wed, 21 Jun 2017 15:08:39 +0300
-Subject: [PATCH 14/16] mmc: sdhci-acpi: Workaround conflict with PCI wifi on
- GPD Win handheld
-
-GPDwin uses PCI wifi which conflicts with SDIO's use of
-acpi_device_fix_up_power() on child device nodes. Specifically
-acpi_device_fix_up_power() causes the wifi module to get turned off.
-Identifying GPDwin is problematic, but since SDIO is only used for wifi,
-the presence of the PCI wifi card in the expected slot with an ACPI
-companion node, is used to indicate that acpi_device_fix_up_power() should
-be avoided.
-
-Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
-Acked-by: Hans de Goede <hdegoede@redhat.com>
-Tested-by: Hans de Goede <hdegoede@redhat.com>
-Cc: stable@vger.kernel.org
----
- drivers/mmc/host/sdhci-acpi.c | 70 +++++++++++++++++++++++++++++++++++++++----
- 1 file changed, 64 insertions(+), 6 deletions(-)
-
-diff --git a/drivers/mmc/host/sdhci-acpi.c b/drivers/mmc/host/sdhci-acpi.c
-index c6a9a1bfaa22..b3fb155f50e4 100644
---- a/drivers/mmc/host/sdhci-acpi.c
-+++ b/drivers/mmc/host/sdhci-acpi.c
-@@ -45,6 +45,7 @@
- #include <asm/cpu_device_id.h>
- #include <asm/intel-family.h>
- #include <asm/iosf_mbi.h>
-+#include <linux/pci.h>
- #endif
-
- #include "sdhci.h"
-@@ -134,6 +135,16 @@ static bool sdhci_acpi_byt(void)
- return x86_match_cpu(byt);
- }
-
-+static bool sdhci_acpi_cht(void)
-+{
-+ static const struct x86_cpu_id cht[] = {
-+ { X86_VENDOR_INTEL, 6, INTEL_FAM6_ATOM_AIRMONT },
-+ {}
-+ };
-+
-+ return x86_match_cpu(cht);
-+}
-+
- #define BYT_IOSF_SCCEP 0x63
- #define BYT_IOSF_OCP_NETCTRL0 0x1078
- #define BYT_IOSF_OCP_TIMEOUT_BASE GENMASK(10, 8)
-@@ -178,6 +189,45 @@ static bool sdhci_acpi_byt_defer(struct device *dev)
- return false;
- }
-
-+static bool sdhci_acpi_cht_pci_wifi(unsigned int vendor, unsigned int device,
-+ unsigned int slot, unsigned int parent_slot)
-+{
-+ struct pci_dev *dev, *parent, *from = NULL;
-+
-+ while (1) {
-+ dev = pci_get_device(vendor, device, from);
-+ pci_dev_put(from);
-+ if (!dev)
-+ break;
-+ parent = pci_upstream_bridge(dev);
-+ if (ACPI_COMPANION(&dev->dev) && PCI_SLOT(dev->devfn) == slot &&
-+ parent && PCI_SLOT(parent->devfn) == parent_slot &&
-+ !pci_upstream_bridge(parent)) {
-+ pci_dev_put(dev);
-+ return true;
-+ }
-+ from = dev;
-+ }
-+
-+ return false;
-+}
-+
-+/*
-+ * GPDwin uses PCI wifi which conflicts with SDIO's use of
-+ * acpi_device_fix_up_power() on child device nodes. Identifying GPDwin is
-+ * problematic, but since SDIO is only used for wifi, the presence of the PCI
-+ * wifi card in the expected slot with an ACPI companion node, is used to
-+ * indicate that acpi_device_fix_up_power() should be avoided.
-+ */
-+static inline bool sdhci_acpi_no_fixup_child_power(const char *hid,
-+ const char *uid)
-+{
-+ return sdhci_acpi_cht() &&
-+ !strcmp(hid, "80860F14") &&
-+ !strcmp(uid, "2") &&
-+ sdhci_acpi_cht_pci_wifi(0x14e4, 0x43ec, 0, 28);
-+}
-+
- #else
-
- static inline void sdhci_acpi_byt_setting(struct device *dev)
-@@ -189,6 +239,12 @@ static inline bool sdhci_acpi_byt_defer(struct device *dev)
- return false;
- }
-
-+static inline bool sdhci_acpi_no_fixup_child_power(const char *hid,
-+ const char *uid)
-+{
-+ return false;
-+}
-+
- #endif
-
- static int bxt_get_cd(struct mmc_host *mmc)
-@@ -390,11 +446,16 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
- if (acpi_bus_get_device(handle, &device))
- return -ENODEV;
-
-+ hid = acpi_device_hid(device);
-+ uid = device->pnp.unique_id;
-+
- /* Power on the SDHCI controller and its children */
- acpi_device_fix_up_power(device);
-- list_for_each_entry(child, &device->children, node)
-- if (child->status.present && child->status.enabled)
-- acpi_device_fix_up_power(child);
-+ if (!sdhci_acpi_no_fixup_child_power(hid, uid)) {
-+ list_for_each_entry(child, &device->children, node)
-+ if (child->status.present && child->status.enabled)
-+ acpi_device_fix_up_power(child);
-+ }
-
- if (acpi_bus_get_status(device) || !device->status.present)
- return -ENODEV;
-@@ -402,9 +463,6 @@ static int sdhci_acpi_probe(struct platform_device *pdev)
- if (sdhci_acpi_byt_defer(dev))
- return -EPROBE_DEFER;
-
-- hid = acpi_device_hid(device);
-- uid = device->pnp.unique_id;
--
- iomem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- if (!iomem)
- return -ENOMEM;
---
-2.13.0
-
diff --git a/0016-Input-silead-Do-not-try-to-directly-access-the-GPIO-.patch b/0016-Input-silead-Do-not-try-to-directly-access-the-GPIO-.patch
deleted file mode 100644
index 14b4c27bf..000000000
--- a/0016-Input-silead-Do-not-try-to-directly-access-the-GPIO-.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From fd4fb1f6633b21042ff084868323e15e708fe1cd Mon Sep 17 00:00:00 2001
-From: Hans de Goede <hdegoede@redhat.com>
-Date: Sun, 1 Jan 2017 22:11:20 +0100
-Subject: [PATCH 16/16] Input: silead: Do not try to directly access the GPIO
- when using ACPI pm
-
-On some x86 tablets we cannot directly access the GPIOs as they are
-claimed by the ACPI tables, so check it the i2c client is not being
-power-managed by ACPI before trying to get the power pin GPIO.
-
-Note this is a workaround patch to fix this until Andy' gpiolib-ACPI
-patches which make gpiolib more strict land, once those are landed this
-patch is no longer needed.
-
-Signed-off-by: Hans de Goede <hdegoede@redhat.com>
----
- drivers/input/touchscreen/silead.c | 22 ++++++++++++++++------
- 1 file changed, 16 insertions(+), 6 deletions(-)
-
-diff --git a/drivers/input/touchscreen/silead.c b/drivers/input/touchscreen/silead.c
-index c0ba40c09699..30fba3cbe277 100644
---- a/drivers/input/touchscreen/silead.c
-+++ b/drivers/input/touchscreen/silead.c
-@@ -517,12 +518,21 @@ static int silead_ts_probe(struct i2c_client *client,
- if (error)
- return error;
-
-- /* Power GPIO pin */
-- data->gpio_power = devm_gpiod_get_optional(dev, "power", GPIOD_OUT_LOW);
-- if (IS_ERR(data->gpio_power)) {
-- if (PTR_ERR(data->gpio_power) != -EPROBE_DEFER)
-- dev_err(dev, "Shutdown GPIO request failed\n");
-- return PTR_ERR(data->gpio_power);
-+ /*
-+ * If device power is not managed by ACPI, get the power_gpio
-+ * and manage it ourselves.
-+ */
-+#ifdef CONFIG_ACPI
-+ if (!acpi_bus_power_manageable(ACPI_HANDLE(dev)))
-+#endif
-+ {
-+ data->gpio_power = devm_gpiod_get_optional(dev, "power",
-+ GPIOD_OUT_LOW);
-+ if (IS_ERR(data->gpio_power)) {
-+ if (PTR_ERR(data->gpio_power) != -EPROBE_DEFER)
-+ dev_err(dev, "Power GPIO request failed\n");
-+ return PTR_ERR(data->gpio_power);
-+ }
- }
-
- error = silead_ts_setup(client);
---
-2.13.0
-
diff --git a/AllWinner-net-emac.patch b/AllWinner-net-emac.patch
deleted file mode 100644
index 591b2350f..000000000
--- a/AllWinner-net-emac.patch
+++ /dev/null
@@ -1,2554 +0,0 @@
-From patchwork Mon May 1 12:45:01 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,
- 01/20] net: stmmac: export stmmac_set_mac_addr/stmmac_get_mac_addr
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706455
-Message-Id: <20170501124520.3769-2-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:01 +0200
-
-Thoses symbol will be needed for the dwmac-sun8i ethernet driver.
-For letting it to be build as module, they need to be exported.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c b/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c
-index 38f9430..67af0bd 100644
---- a/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac_lib.c
-@@ -248,6 +248,7 @@ void stmmac_set_mac_addr(void __iomem *ioaddr, u8 addr[6],
- data = (addr[3] << 24) | (addr[2] << 16) | (addr[1] << 8) | addr[0];
- writel(data, ioaddr + low);
- }
-+EXPORT_SYMBOL_GPL(stmmac_set_mac_addr);
-
- /* Enable disable MAC RX/TX */
- void stmmac_set_mac(void __iomem *ioaddr, bool enable)
-@@ -279,4 +280,4 @@ void stmmac_get_mac_addr(void __iomem *ioaddr, unsigned char *addr,
- addr[4] = hi_addr & 0xff;
- addr[5] = (hi_addr >> 8) & 0xff;
- }
--
-+EXPORT_SYMBOL_GPL(stmmac_get_mac_addr);
-
-From patchwork Mon May 1 12:45:02 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,02/20] net: stmmac: add optional setup function
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706501
-Message-Id: <20170501124520.3769-3-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:02 +0200
-
-Instead of adding more ifthen logic for adding a new mac_device_info
-setup function, it is easier to add a function pointer to the function
-needed.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 4 +++-
- include/linux/stmmac.h | 1 +
- 2 files changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-index cd8c601..b82ab64 100644
---- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-@@ -3947,7 +3947,9 @@ static int stmmac_hw_init(struct stmmac_priv *priv)
- struct mac_device_info *mac;
-
- /* Identify the MAC HW device */
-- if (priv->plat->has_gmac) {
-+ if (priv->plat->setup) {
-+ mac = priv->plat->setup(priv);
-+ } else if (priv->plat->has_gmac) {
- priv->dev->priv_flags |= IFF_UNICAST_FLT;
- mac = dwmac1000_setup(priv->ioaddr,
- priv->plat->multicast_filter_bins,
-diff --git a/include/linux/stmmac.h b/include/linux/stmmac.h
-index 3921cb9..8bb550b 100644
---- a/include/linux/stmmac.h
-+++ b/include/linux/stmmac.h
-@@ -177,6 +177,7 @@ struct plat_stmmacenet_data {
- void (*fix_mac_speed)(void *priv, unsigned int speed);
- int (*init)(struct platform_device *pdev, void *priv);
- void (*exit)(struct platform_device *pdev, void *priv);
-+ struct mac_device_info *(*setup)(void *priv);
- void *bsp_priv;
- struct clk *stmmac_clk;
- struct clk *pclk;
-
-From patchwork Mon May 1 12:45:03 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,
- 03/20] dt-bindings: net: Add DT bindings documentation for Allwinner
- dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706457
-Message-Id: <20170501124520.3769-4-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:03 +0200
-
-This patch adds documentation for Device-Tree bindings for the
-Allwinner dwmac-sun8i driver.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Rob Herring <robh@kernel.org>
----
- .../devicetree/bindings/net/dwmac-sun8i.txt | 77 ++++++++++++++++++++++
- 1 file changed, 77 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-
-diff --git a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-new file mode 100644
-index 0000000..05cd067
---- /dev/null
-+++ b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-@@ -0,0 +1,77 @@
-+* Allwinner sun8i GMAC ethernet controller
-+
-+This device is a platform glue layer for stmmac.
-+Please see stmmac.txt for the other unchanged properties.
-+
-+Required properties:
-+- compatible: should be one of the following string:
-+ "allwinner,sun8i-a83t-emac"
-+ "allwinner,sun8i-h3-emac"
-+ "allwinner,sun50i-a64-emac"
-+- reg: address and length of the register for the device.
-+- interrupts: interrupt for the device
-+- interrupt-names: should be "macirq"
-+- clocks: A phandle to the reference clock for this device
-+- clock-names: should be "stmmaceth"
-+- resets: A phandle to the reset control for this device
-+- reset-names: should be "stmmaceth"
-+- phy-mode: See ethernet.txt
-+- phy-handle: See ethernet.txt
-+- #address-cells: shall be 1
-+- #size-cells: shall be 0
-+- syscon: A phandle to the syscon of the SoC with one of the following
-+ compatible string:
-+ - allwinner,sun8i-h3-system-controller
-+ - allwinner,sun50i-a64-system-controller
-+ - allwinner,sun8i-a83t-system-controller
-+
-+Optional properties:
-+- allwinner,tx-delay-ps: TX clock delay chain value in ps. Range value is 0-700. Default is 0)
-+- allwinner,rx-delay-ps: RX clock delay chain value in ps. Range value is 0-3100. Default is 0)
-+Both delay properties need to be a multiple of 100.
-+
-+Optional properties for "allwinner,sun8i-h3-emac":
-+- allwinner,leds-active-low: EPHY LEDs are active low
-+
-+Required child node of emac:
-+- mdio bus node: should be named mdio
-+
-+Required properties of the mdio node:
-+- #address-cells: shall be 1
-+- #size-cells: shall be 0
-+
-+The device node referenced by "phy" or "phy-handle" should be a child node
-+of the mdio node. See phy.txt for the generic PHY bindings.
-+
-+Required properties of the phy node with "allwinner,sun8i-h3-emac":
-+- clocks: a phandle to the reference clock for the EPHY
-+- resets: a phandle to the reset control for the EPHY
-+
-+Example:
-+
-+emac: ethernet@1c0b000 {
-+ compatible = "allwinner,sun8i-h3-emac";
-+ syscon = <&syscon>;
-+ reg = <0x01c0b000 0x104>;
-+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupt-names = "macirq";
-+ resets = <&ccu RST_BUS_EMAC>;
-+ reset-names = "stmmaceth";
-+ clocks = <&ccu CLK_BUS_EMAC>;
-+ clock-names = "stmmaceth";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ phy = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ mdio: mdio {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ int_mii_phy: ethernet-phy@1 {
-+ reg = <1>;
-+ clocks = <&ccu CLK_BUS_EPHY>;
-+ resets = <&ccu RST_BUS_EPHY>;
-+ };
-+ };
-+};
-
-From patchwork Mon May 1 12:45:04 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5, 04/20] dt-bindings: syscon: Add DT bindings documentation for
- Allwinner syscon
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706469
-Message-Id: <20170501124520.3769-5-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:04 +0200
-
-This patch adds documentation for Device-Tree bindings for the
-syscon present in allwinner devices.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- .../devicetree/bindings/misc/allwinner,syscon.txt | 19 +++++++++++++++++++
- 1 file changed, 19 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/misc/allwinner,syscon.txt
-
-diff --git a/Documentation/devicetree/bindings/misc/allwinner,syscon.txt b/Documentation/devicetree/bindings/misc/allwinner,syscon.txt
-new file mode 100644
-index 0000000..cb57691
---- /dev/null
-+++ b/Documentation/devicetree/bindings/misc/allwinner,syscon.txt
-@@ -0,0 +1,19 @@
-+* Allwinner sun8i system controller
-+
-+This file describes the bindings for the system controller present in
-+Allwinner SoC H3, A83T and A64.
-+The principal function of this syscon is to control EMAC PHY choice and
-+config.
-+
-+Required properties for the system controller:
-+- reg: address and length of the register for the device.
-+- compatible: should be "syscon" and one of the following string:
-+ "allwinner,sun8i-h3-system-controller"
-+ "allwinner,sun50i-a64-system-controller"
-+ "allwinner,sun8i-a83t-system-controller"
-+
-+Example:
-+syscon: syscon@1c00000 {
-+ compatible = "allwinner,sun8i-h3-system-controller", "syscon";
-+ reg = <0x01c00000 0x1000>;
-+};
-
-From patchwork Mon May 1 12:45:05 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,05/20] net: stmmac: Add dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706473
-Message-Id: <20170501124520.3769-6-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:05 +0200
-
-The dwmac-sun8i is a heavy hacked version of stmmac hardware by
-allwinner.
-In fact the only common part is the descriptor management and the first
-register function.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- drivers/net/ethernet/stmicro/stmmac/Kconfig | 11 +
- drivers/net/ethernet/stmicro/stmmac/Makefile | 1 +
- drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 973 +++++++++++++++++++++
- drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 29 +
- .../net/ethernet/stmicro/stmmac/stmmac_platform.c | 9 +-
- include/linux/stmmac.h | 1 +
- 6 files changed, 1022 insertions(+), 2 deletions(-)
- create mode 100644 drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-
-diff --git a/drivers/net/ethernet/stmicro/stmmac/Kconfig b/drivers/net/ethernet/stmicro/stmmac/Kconfig
-index cfbe363..85c0e41 100644
---- a/drivers/net/ethernet/stmicro/stmmac/Kconfig
-+++ b/drivers/net/ethernet/stmicro/stmmac/Kconfig
-@@ -145,6 +145,17 @@ config DWMAC_SUNXI
- This selects Allwinner SoC glue layer support for the
- stmmac device driver. This driver is used for A20/A31
- GMAC ethernet controller.
-+
-+config DWMAC_SUN8I
-+ tristate "Allwinner sun8i GMAC support"
-+ default ARCH_SUNXI
-+ depends on OF && (ARCH_SUNXI || COMPILE_TEST)
-+ ---help---
-+ Support for Allwinner H3 A83T A64 EMAC ethernet controllers.
-+
-+ This selects Allwinner SoC glue layer support for the
-+ stmmac device driver. This driver is used for H3/A83T/A64
-+ EMAC ethernet controller.
- endif
-
- config STMMAC_PCI
-diff --git a/drivers/net/ethernet/stmicro/stmmac/Makefile b/drivers/net/ethernet/stmicro/stmmac/Makefile
-index 700c603..fd4937a 100644
---- a/drivers/net/ethernet/stmicro/stmmac/Makefile
-+++ b/drivers/net/ethernet/stmicro/stmmac/Makefile
-@@ -16,6 +16,7 @@ obj-$(CONFIG_DWMAC_SOCFPGA) += dwmac-altr-socfpga.o
- obj-$(CONFIG_DWMAC_STI) += dwmac-sti.o
- obj-$(CONFIG_DWMAC_STM32) += dwmac-stm32.o
- obj-$(CONFIG_DWMAC_SUNXI) += dwmac-sunxi.o
-+obj-$(CONFIG_DWMAC_SUN8I) += dwmac-sun8i.o
- obj-$(CONFIG_DWMAC_DWC_QOS_ETH) += dwmac-dwc-qos-eth.o
- obj-$(CONFIG_DWMAC_GENERIC) += dwmac-generic.o
- stmmac-platform-objs:= stmmac_platform.o
-diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-new file mode 100644
-index 0000000..66eb980
---- /dev/null
-+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-@@ -0,0 +1,973 @@
-+/*
-+ * dwmac-sun8i.c - Allwinner sun8i DWMAC specific glue layer
-+ *
-+ * Copyright (C) 2017 Corentin Labbe <clabbe.montjoie@gmail.com>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ */
-+
-+#include <linux/clk.h>
-+#include <linux/io.h>
-+#include <linux/iopoll.h>
-+#include <linux/mfd/syscon.h>
-+#include <linux/module.h>
-+#include <linux/of_device.h>
-+#include <linux/of_mdio.h>
-+#include <linux/of_net.h>
-+#include <linux/phy.h>
-+#include <linux/platform_device.h>
-+#include <linux/regulator/consumer.h>
-+#include <linux/regmap.h>
-+#include <linux/stmmac.h>
-+
-+#include "stmmac.h"
-+#include "stmmac_platform.h"
-+
-+/* General notes on dwmac-sun8i:
-+ * Locking: no locking is necessary in this file because all necessary locking
-+ * is done in the "stmmac files"
-+ */
-+
-+/* struct emac_variant - Descrive dwmac-sun8i hardware variant
-+ * @default_syscon_value: The default value of the EMAC register in syscon
-+ * This value is used for disabling properly EMAC
-+ * and used as a good starting value in case of the
-+ * boot process(uboot) leave some stuff.
-+ * @internal_phy: Does the MAC embed an internal PHY
-+ * @support_mii: Does the MAC handle MII
-+ * @support_rmii: Does the MAC handle RMII
-+ * @support_rgmii: Does the MAC handle RGMII
-+ */
-+struct emac_variant {
-+ u32 default_syscon_value;
-+ int internal_phy;
-+ bool support_mii;
-+ bool support_rmii;
-+ bool support_rgmii;
-+};
-+
-+/* struct sunxi_priv_data - hold all sunxi private data
-+ * @tx_clk: reference to MAC TX clock
-+ * @ephy_clk: reference to the optional EPHY clock for the internal PHY
-+ * @regulator: reference to the optional regulator
-+ * @rst_ephy: reference to the optional EPHY reset for the internal PHY
-+ * @variant: reference to the current board variant
-+ * @regmap: regmap for using the syscon
-+ * @use_internal_phy: Does the current PHY choice imply using the internal PHY
-+ */
-+struct sunxi_priv_data {
-+ struct clk *tx_clk;
-+ struct clk *ephy_clk;
-+ struct regulator *regulator;
-+ struct reset_control *rst_ephy;
-+ const struct emac_variant *variant;
-+ struct regmap *regmap;
-+ bool use_internal_phy;
-+};
-+
-+static const struct emac_variant emac_variant_h3 = {
-+ .default_syscon_value = 0x58000,
-+ .internal_phy = PHY_INTERFACE_MODE_MII,
-+ .support_mii = true,
-+ .support_rmii = true,
-+ .support_rgmii = true
-+};
-+
-+static const struct emac_variant emac_variant_a83t = {
-+ .default_syscon_value = 0,
-+ .internal_phy = 0,
-+ .support_mii = true,
-+ .support_rgmii = true
-+};
-+
-+static const struct emac_variant emac_variant_a64 = {
-+ .default_syscon_value = 0,
-+ .internal_phy = 0,
-+ .support_mii = true,
-+ .support_rmii = true,
-+ .support_rgmii = true
-+};
-+
-+#define EMAC_BASIC_CTL0 0x00
-+#define EMAC_BASIC_CTL1 0x04
-+#define EMAC_INT_STA 0x08
-+#define EMAC_INT_EN 0x0C
-+#define EMAC_TX_CTL0 0x10
-+#define EMAC_TX_CTL1 0x14
-+#define EMAC_TX_FLOW_CTL 0x1C
-+#define EMAC_TX_DESC_LIST 0x20
-+#define EMAC_RX_CTL0 0x24
-+#define EMAC_RX_CTL1 0x28
-+#define EMAC_RX_DESC_LIST 0x34
-+#define EMAC_RX_FRM_FLT 0x38
-+#define EMAC_MDIO_CMD 0x48
-+#define EMAC_MDIO_DATA 0x4C
-+#define EMAC_MACADDR_HI(reg) (0x50 + (reg) * 8)
-+#define EMAC_MACADDR_LO(reg) (0x54 + (reg) * 8)
-+#define EMAC_TX_DMA_STA 0xB0
-+#define EMAC_TX_CUR_DESC 0xB4
-+#define EMAC_TX_CUR_BUF 0xB8
-+#define EMAC_RX_DMA_STA 0xC0
-+#define EMAC_RX_CUR_DESC 0xC4
-+#define EMAC_RX_CUR_BUF 0xC8
-+
-+/* Use in EMAC_BASIC_CTL1 */
-+#define EMAC_BURSTLEN_SHIFT 24
-+
-+/* Used in EMAC_RX_FRM_FLT */
-+#define EMAC_FRM_FLT_RXALL BIT(0)
-+#define EMAC_FRM_FLT_CTL BIT(13)
-+#define EMAC_FRM_FLT_MULTICAST BIT(16)
-+
-+/* Used in RX_CTL1*/
-+#define EMAC_RX_MD BIT(1)
-+#define EMAC_RX_TH_MASK GENMASK(4, 5)
-+#define EMAC_RX_TH_32 0
-+#define EMAC_RX_TH_64 (0x1 << 4)
-+#define EMAC_RX_TH_96 (0x2 << 4)
-+#define EMAC_RX_TH_128 (0x3 << 4)
-+#define EMAC_RX_DMA_EN BIT(30)
-+#define EMAC_RX_DMA_START BIT(31)
-+
-+/* Used in TX_CTL1*/
-+#define EMAC_TX_MD BIT(1)
-+#define EMAC_TX_NEXT_FRM BIT(2)
-+#define EMAC_TX_TH_MASK GENMASK(8, 10)
-+#define EMAC_TX_TH_64 0
-+#define EMAC_TX_TH_128 (0x1 << 8)
-+#define EMAC_TX_TH_192 (0x2 << 8)
-+#define EMAC_TX_TH_256 (0x3 << 8)
-+#define EMAC_TX_DMA_EN BIT(30)
-+#define EMAC_TX_DMA_START BIT(31)
-+
-+/* Used in RX_CTL0 */
-+#define EMAC_RX_RECEIVER_EN BIT(31)
-+#define EMAC_RX_DO_CRC BIT(27)
-+#define EMAC_RX_FLOW_CTL_EN BIT(16)
-+
-+/* Used in TX_CTL0 */
-+#define EMAC_TX_TRANSMITTER_EN BIT(31)
-+
-+/* Used in EMAC_TX_FLOW_CTL */
-+#define EMAC_TX_FLOW_CTL_EN BIT(0)
-+
-+/* Used in EMAC_INT_STA */
-+#define EMAC_TX_INT BIT(0)
-+#define EMAC_TX_DMA_STOP_INT BIT(1)
-+#define EMAC_TX_BUF_UA_INT BIT(2)
-+#define EMAC_TX_TIMEOUT_INT BIT(3)
-+#define EMAC_TX_UNDERFLOW_INT BIT(4)
-+#define EMAC_TX_EARLY_INT BIT(5)
-+#define EMAC_RX_INT BIT(8)
-+#define EMAC_RX_BUF_UA_INT BIT(9)
-+#define EMAC_RX_DMA_STOP_INT BIT(10)
-+#define EMAC_RX_TIMEOUT_INT BIT(11)
-+#define EMAC_RX_OVERFLOW_INT BIT(12)
-+#define EMAC_RX_EARLY_INT BIT(13)
-+#define EMAC_RGMII_STA_INT BIT(16)
-+
-+#define MAC_ADDR_TYPE_DST BIT(31)
-+
-+/* H3 specific bits for EPHY */
-+#define H3_EPHY_ADDR_SHIFT 20
-+#define H3_EPHY_LED_POL BIT(17) /* 1: active low, 0: active high */
-+#define H3_EPHY_SHUTDOWN BIT(16) /* 1: shutdown, 0: power up */
-+#define H3_EPHY_SELECT BIT(15) /* 1: internal PHY, 0: external PHY */
-+
-+/* H3/A64 specific bits */
-+#define SYSCON_RMII_EN BIT(13) /* 1: enable RMII (overrides EPIT) */
-+
-+/* Generic system control EMAC_CLK bits */
-+#define SYSCON_ETXDC_MASK GENMASK(2, 0)
-+#define SYSCON_ETXDC_SHIFT 10
-+#define SYSCON_ERXDC_MASK GENMASK(4, 0)
-+#define SYSCON_ERXDC_SHIFT 5
-+/* EMAC PHY Interface Type */
-+#define SYSCON_EPIT BIT(2) /* 1: RGMII, 0: MII */
-+#define SYSCON_ETCS_MASK GENMASK(1, 0)
-+#define SYSCON_ETCS_MII 0x0
-+#define SYSCON_ETCS_EXT_GMII 0x1
-+#define SYSCON_ETCS_INT_GMII 0x2
-+#define SYSCON_EMAC_REG 0x30
-+
-+/* sun8i_dwmac_dma_reset() - reset the EMAC
-+ * Called from stmmac via stmmac_dma_ops->reset
-+ */
-+static int sun8i_dwmac_dma_reset(void __iomem *ioaddr)
-+{
-+ writel(0, ioaddr + EMAC_RX_CTL1);
-+ writel(0, ioaddr + EMAC_TX_CTL1);
-+ writel(0, ioaddr + EMAC_RX_FRM_FLT);
-+ writel(0, ioaddr + EMAC_RX_DESC_LIST);
-+ writel(0, ioaddr + EMAC_TX_DESC_LIST);
-+ writel(0, ioaddr + EMAC_INT_EN);
-+ writel(0x1FFFFFF, ioaddr + EMAC_INT_STA);
-+ return 0;
-+}
-+
-+/* sun8i_dwmac_dma_init() - initialize the EMAC
-+ * Called from stmmac via stmmac_dma_ops->init
-+ */
-+static void sun8i_dwmac_dma_init(void __iomem *ioaddr,
-+ struct stmmac_dma_cfg *dma_cfg,
-+ u32 dma_tx, u32 dma_rx, int atds)
-+{
-+ /* Write TX and RX descriptors address */
-+ writel(dma_rx, ioaddr + EMAC_RX_DESC_LIST);
-+ writel(dma_tx, ioaddr + EMAC_TX_DESC_LIST);
-+
-+ writel(EMAC_RX_INT | EMAC_TX_INT, ioaddr + EMAC_INT_EN);
-+ writel(0x1FFFFFF, ioaddr + EMAC_INT_STA);
-+}
-+
-+/* sun8i_dwmac_dump_regs() - Dump EMAC address space
-+ * Called from stmmac_dma_ops->dump_regs
-+ * Used for ethtool
-+ */
-+static void sun8i_dwmac_dump_regs(void __iomem *ioaddr, u32 *reg_space)
-+{
-+ int i;
-+
-+ for (i = 0; i < 0xC8; i += 4) {
-+ if (i == 0x32 || i == 0x3C)
-+ continue;
-+ reg_space[i / 4] = readl(ioaddr + i);
-+ }
-+}
-+
-+/* sun8i_dwmac_dump_mac_regs() - Dump EMAC address space
-+ * Called from stmmac_ops->dump_regs
-+ * Used for ethtool
-+ */
-+static void sun8i_dwmac_dump_mac_regs(struct mac_device_info *hw,
-+ u32 *reg_space)
-+{
-+ int i;
-+ void __iomem *ioaddr = hw->pcsr;
-+
-+ for (i = 0; i < 0xC8; i += 4) {
-+ if (i == 0x32 || i == 0x3C)
-+ continue;
-+ reg_space[i / 4] = readl(ioaddr + i);
-+ }
-+}
-+
-+static void sun8i_dwmac_enable_dma_irq(void __iomem *ioaddr, u32 chan)
-+{
-+ writel(EMAC_RX_INT | EMAC_TX_INT, ioaddr + EMAC_INT_EN);
-+}
-+
-+static void sun8i_dwmac_disable_dma_irq(void __iomem *ioaddr, u32 chan)
-+{
-+ writel(0, ioaddr + EMAC_INT_EN);
-+}
-+
-+static void sun8i_dwmac_dma_start_tx(void __iomem *ioaddr, u32 chan)
-+{
-+ u32 v;
-+
-+ v = readl(ioaddr + EMAC_TX_CTL1);
-+ v |= EMAC_TX_DMA_START;
-+ v |= EMAC_TX_DMA_EN;
-+ writel(v, ioaddr + EMAC_TX_CTL1);
-+}
-+
-+static void sun8i_dwmac_enable_dma_transmission(void __iomem *ioaddr)
-+{
-+ u32 v;
-+
-+ v = readl(ioaddr + EMAC_TX_CTL1);
-+ v |= EMAC_TX_DMA_START;
-+ v |= EMAC_TX_DMA_EN;
-+ writel(v, ioaddr + EMAC_TX_CTL1);
-+}
-+
-+static void sun8i_dwmac_dma_stop_tx(void __iomem *ioaddr, u32 chan)
-+{
-+ u32 v;
-+
-+ v = readl(ioaddr + EMAC_TX_CTL1);
-+ v &= ~EMAC_TX_DMA_EN;
-+ writel(v, ioaddr + EMAC_TX_CTL1);
-+}
-+
-+static void sun8i_dwmac_dma_start_rx(void __iomem *ioaddr, u32 chan)
-+{
-+ u32 v;
-+
-+ v = readl(ioaddr + EMAC_RX_CTL1);
-+ v |= EMAC_RX_DMA_START;
-+ v |= EMAC_RX_DMA_EN;
-+ writel(v, ioaddr + EMAC_RX_CTL1);
-+}
-+
-+static void sun8i_dwmac_dma_stop_rx(void __iomem *ioaddr, u32 chan)
-+{
-+ u32 v;
-+
-+ v = readl(ioaddr + EMAC_RX_CTL1);
-+ v &= ~EMAC_RX_DMA_EN;
-+ writel(v, ioaddr + EMAC_RX_CTL1);
-+}
-+
-+static int sun8i_dwmac_dma_interrupt(void __iomem *ioaddr,
-+ struct stmmac_extra_stats *x, u32 chan)
-+{
-+ u32 v;
-+ int ret = 0;
-+
-+ v = readl(ioaddr + EMAC_INT_STA);
-+
-+ if (v & EMAC_TX_INT) {
-+ ret |= handle_tx;
-+ x->tx_normal_irq_n++;
-+ }
-+
-+ if (v & EMAC_TX_DMA_STOP_INT)
-+ x->tx_process_stopped_irq++;
-+
-+ if (v & EMAC_TX_BUF_UA_INT)
-+ x->tx_process_stopped_irq++;
-+
-+ if (v & EMAC_TX_TIMEOUT_INT)
-+ ret |= tx_hard_error;
-+
-+ if (v & EMAC_TX_UNDERFLOW_INT) {
-+ ret |= tx_hard_error;
-+ x->tx_undeflow_irq++;
-+ }
-+
-+ if (v & EMAC_TX_EARLY_INT)
-+ x->tx_early_irq++;
-+
-+ if (v & EMAC_RX_INT) {
-+ ret |= handle_rx;
-+ x->rx_normal_irq_n++;
-+ }
-+
-+ if (v & EMAC_RX_BUF_UA_INT)
-+ x->rx_buf_unav_irq++;
-+
-+ if (v & EMAC_RX_DMA_STOP_INT)
-+ x->rx_process_stopped_irq++;
-+
-+ if (v & EMAC_RX_TIMEOUT_INT)
-+ ret |= tx_hard_error;
-+
-+ if (v & EMAC_RX_OVERFLOW_INT) {
-+ ret |= tx_hard_error;
-+ x->rx_overflow_irq++;
-+ }
-+
-+ if (v & EMAC_RX_EARLY_INT)
-+ x->rx_early_irq++;
-+
-+ if (v & EMAC_RGMII_STA_INT)
-+ x->irq_rgmii_n++;
-+
-+ writel(v, ioaddr + EMAC_INT_STA);
-+
-+ return ret;
-+}
-+
-+static void sun8i_dwmac_dma_operation_mode(void __iomem *ioaddr, int txmode,
-+ int rxmode, int rxfifosz)
-+{
-+ u32 v;
-+
-+ v = readl(ioaddr + EMAC_TX_CTL1);
-+ if (txmode == SF_DMA_MODE) {
-+ v |= EMAC_TX_MD;
-+ /* Undocumented bit (called TX_NEXT_FRM in BSP), the original
-+ * comment is
-+ * "Operating on second frame increase the performance
-+ * especially when transmit store-and-forward is used."
-+ */
-+ v |= EMAC_TX_NEXT_FRM;
-+ } else {
-+ v &= ~EMAC_TX_MD;
-+ v &= ~EMAC_TX_TH_MASK;
-+ if (txmode < 64)
-+ v |= EMAC_TX_TH_64;
-+ else if (txmode < 128)
-+ v |= EMAC_TX_TH_128;
-+ else if (txmode < 192)
-+ v |= EMAC_TX_TH_192;
-+ else if (txmode < 256)
-+ v |= EMAC_TX_TH_256;
-+ }
-+ writel(v, ioaddr + EMAC_TX_CTL1);
-+
-+ v = readl(ioaddr + EMAC_RX_CTL1);
-+ if (rxmode == SF_DMA_MODE) {
-+ v |= EMAC_RX_MD;
-+ } else {
-+ v &= ~EMAC_RX_MD;
-+ v &= ~EMAC_RX_TH_MASK;
-+ if (rxmode < 32)
-+ v |= EMAC_RX_TH_32;
-+ else if (rxmode < 64)
-+ v |= EMAC_RX_TH_64;
-+ else if (rxmode < 96)
-+ v |= EMAC_RX_TH_96;
-+ else if (rxmode < 128)
-+ v |= EMAC_RX_TH_128;
-+ }
-+ writel(v, ioaddr + EMAC_RX_CTL1);
-+}
-+
-+static const struct stmmac_dma_ops sun8i_dwmac_dma_ops = {
-+ .reset = sun8i_dwmac_dma_reset,
-+ .init = sun8i_dwmac_dma_init,
-+ .dump_regs = sun8i_dwmac_dump_regs,
-+ .dma_mode = sun8i_dwmac_dma_operation_mode,
-+ .enable_dma_transmission = sun8i_dwmac_enable_dma_transmission,
-+ .enable_dma_irq = sun8i_dwmac_enable_dma_irq,
-+ .disable_dma_irq = sun8i_dwmac_disable_dma_irq,
-+ .start_tx = sun8i_dwmac_dma_start_tx,
-+ .stop_tx = sun8i_dwmac_dma_stop_tx,
-+ .start_rx = sun8i_dwmac_dma_start_rx,
-+ .stop_rx = sun8i_dwmac_dma_stop_rx,
-+ .dma_interrupt = sun8i_dwmac_dma_interrupt,
-+};
-+
-+static int sun8i_dwmac_init(struct platform_device *pdev, void *priv)
-+{
-+ struct sunxi_priv_data *gmac = priv;
-+ int ret;
-+
-+ if (gmac->regulator) {
-+ ret = regulator_enable(gmac->regulator);
-+ if (ret) {
-+ dev_err(&pdev->dev, "Fail to enable regulator\n");
-+ return ret;
-+ }
-+ }
-+
-+ ret = clk_prepare_enable(gmac->tx_clk);
-+ if (ret) {
-+ if (gmac->regulator)
-+ regulator_disable(gmac->regulator);
-+ dev_err(&pdev->dev, "Could not enable AHB clock\n");
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+
-+static void sun8i_dwmac_core_init(struct mac_device_info *hw, int mtu)
-+{
-+ void __iomem *ioaddr = hw->pcsr;
-+ u32 v;
-+
-+ v = (8 << EMAC_BURSTLEN_SHIFT); /* burst len */
-+ writel(v, ioaddr + EMAC_BASIC_CTL1);
-+}
-+
-+static void sun8i_dwmac_set_mac(void __iomem *ioaddr, bool enable)
-+{
-+ u32 t, r;
-+
-+ t = readl(ioaddr + EMAC_TX_CTL0);
-+ r = readl(ioaddr + EMAC_RX_CTL0);
-+ if (enable) {
-+ t |= EMAC_TX_TRANSMITTER_EN;
-+ r |= EMAC_RX_RECEIVER_EN;
-+ } else {
-+ t &= ~EMAC_TX_TRANSMITTER_EN;
-+ r &= ~EMAC_RX_RECEIVER_EN;
-+ }
-+ writel(t, ioaddr + EMAC_TX_CTL0);
-+ writel(r, ioaddr + EMAC_RX_CTL0);
-+}
-+
-+/* Set MAC address at slot reg_n
-+ * All slot > 0 need to be enabled with MAC_ADDR_TYPE_DST
-+ * If addr is NULL, clear the slot
-+ */
-+static void sun8i_dwmac_set_umac_addr(struct mac_device_info *hw,
-+ unsigned char *addr,
-+ unsigned int reg_n)
-+{
-+ void __iomem *ioaddr = hw->pcsr;
-+ u32 v;
-+
-+ if (!addr) {
-+ writel(0, ioaddr + EMAC_MACADDR_HI(reg_n));
-+ return;
-+ }
-+
-+ stmmac_set_mac_addr(ioaddr, addr, EMAC_MACADDR_HI(reg_n),
-+ EMAC_MACADDR_LO(reg_n));
-+ if (reg_n > 0) {
-+ v = readl(ioaddr + EMAC_MACADDR_HI(reg_n));
-+ v |= MAC_ADDR_TYPE_DST;
-+ writel(v, ioaddr + EMAC_MACADDR_HI(reg_n));
-+ }
-+}
-+
-+static void sun8i_dwmac_get_umac_addr(struct mac_device_info *hw,
-+ unsigned char *addr,
-+ unsigned int reg_n)
-+{
-+ void __iomem *ioaddr = hw->pcsr;
-+
-+ stmmac_get_mac_addr(ioaddr, addr, EMAC_MACADDR_HI(reg_n),
-+ EMAC_MACADDR_LO(reg_n));
-+}
-+
-+/* caution this function must return non 0 to work */
-+static int sun8i_dwmac_rx_ipc_enable(struct mac_device_info *hw)
-+{
-+ void __iomem *ioaddr = hw->pcsr;
-+ u32 v;
-+
-+ v = readl(ioaddr + EMAC_RX_CTL0);
-+ v |= EMAC_RX_DO_CRC;
-+ writel(v, ioaddr + EMAC_RX_CTL0);
-+
-+ return 1;
-+}
-+
-+static void sun8i_dwmac_set_filter(struct mac_device_info *hw,
-+ struct net_device *dev)
-+{
-+ void __iomem *ioaddr = hw->pcsr;
-+ u32 v;
-+ int i = 1;
-+ struct netdev_hw_addr *ha;
-+ int macaddrs = netdev_uc_count(dev) + netdev_mc_count(dev) + 1;
-+
-+ v = EMAC_FRM_FLT_CTL;
-+
-+ if (dev->flags & IFF_PROMISC) {
-+ v = EMAC_FRM_FLT_RXALL;
-+ } else if (dev->flags & IFF_ALLMULTI) {
-+ v |= EMAC_FRM_FLT_MULTICAST;
-+ } else if (macaddrs <= hw->unicast_filter_entries) {
-+ if (!netdev_mc_empty(dev)) {
-+ netdev_for_each_mc_addr(ha, dev) {
-+ sun8i_dwmac_set_umac_addr(hw, ha->addr, i);
-+ i++;
-+ }
-+ }
-+ if (!netdev_uc_empty(dev)) {
-+ netdev_for_each_uc_addr(ha, dev) {
-+ sun8i_dwmac_set_umac_addr(hw, ha->addr, i);
-+ i++;
-+ }
-+ }
-+ } else {
-+ netdev_info(dev, "Too many address, switching to promiscuous\n");
-+ v = EMAC_FRM_FLT_RXALL;
-+ }
-+
-+ /* Disable unused address filter slots */
-+ while (i < hw->unicast_filter_entries)
-+ sun8i_dwmac_set_umac_addr(hw, NULL, i++);
-+
-+ writel(v, ioaddr + EMAC_RX_FRM_FLT);
-+}
-+
-+static void sun8i_dwmac_flow_ctrl(struct mac_device_info *hw,
-+ unsigned int duplex, unsigned int fc,
-+ unsigned int pause_time, u32 tx_cnt)
-+{
-+ void __iomem *ioaddr = hw->pcsr;
-+ u32 v;
-+
-+ v = readl(ioaddr + EMAC_RX_CTL0);
-+ if (fc == FLOW_AUTO)
-+ v |= EMAC_RX_FLOW_CTL_EN;
-+ else
-+ v &= ~EMAC_RX_FLOW_CTL_EN;
-+ writel(v, ioaddr + EMAC_RX_CTL0);
-+
-+ v = readl(ioaddr + EMAC_TX_FLOW_CTL);
-+ if (fc == FLOW_AUTO)
-+ v |= EMAC_TX_FLOW_CTL_EN;
-+ else
-+ v &= ~EMAC_TX_FLOW_CTL_EN;
-+ writel(v, ioaddr + EMAC_TX_FLOW_CTL);
-+}
-+
-+static int sun8i_dwmac_reset(struct stmmac_priv *priv)
-+{
-+ u32 v;
-+ int err;
-+
-+ v = readl(priv->ioaddr + EMAC_BASIC_CTL1);
-+ writel(v | 0x01, priv->ioaddr + EMAC_BASIC_CTL1);
-+
-+ err = readl_poll_timeout(priv->ioaddr + EMAC_BASIC_CTL1, v,
-+ !(v & 0x01), 100, 10000);
-+
-+ if (err) {
-+ dev_err(priv->device, "EMAC reset timeout\n");
-+ return -EFAULT;
-+ }
-+ return 0;
-+}
-+
-+static int sun8i_dwmac_set_syscon(struct stmmac_priv *priv)
-+{
-+ struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-+ struct device_node *node = priv->device->of_node;
-+ int ret;
-+ u32 reg, val;
-+
-+ regmap_read(gmac->regmap, SYSCON_EMAC_REG, &val);
-+ reg = gmac->variant->default_syscon_value;
-+ if (reg != val)
-+ dev_warn(priv->device,
-+ "Current syscon value is not the default %x (expect %x)\n",
-+ val, reg);
-+
-+ if (gmac->variant->internal_phy) {
-+ if (!gmac->use_internal_phy) {
-+ /* switch to external PHY interface */
-+ reg &= ~H3_EPHY_SELECT;
-+ } else {
-+ reg |= H3_EPHY_SELECT;
-+ reg &= ~H3_EPHY_SHUTDOWN;
-+ dev_dbg(priv->device, "Select internal_phy %x\n", reg);
-+
-+ if (of_property_read_bool(priv->plat->phy_node,
-+ "allwinner,leds-active-low"))
-+ reg |= H3_EPHY_LED_POL;
-+ else
-+ reg &= ~H3_EPHY_LED_POL;
-+
-+ ret = of_mdio_parse_addr(priv->device,
-+ priv->plat->phy_node);
-+ if (ret < 0) {
-+ dev_err(priv->device, "Could not parse MDIO addr\n");
-+ return ret;
-+ }
-+ /* of_mdio_parse_addr returns a valid (0 ~ 31) PHY
-+ * address. No need to mask it again.
-+ */
-+ reg |= ret << H3_EPHY_ADDR_SHIFT;
-+ }
-+ }
-+
-+ if (!of_property_read_u32(node, "allwinner,tx-delay-ps", &val)) {
-+ if (val % 100) {
-+ dev_err(priv->device, "tx-delay must be a multiple of 100\n");
-+ return -EINVAL;
-+ }
-+ val /= 100;
-+ dev_dbg(priv->device, "set tx-delay to %x\n", val);
-+ if (val <= SYSCON_ETXDC_MASK) {
-+ reg &= ~(SYSCON_ETXDC_MASK << SYSCON_ETXDC_SHIFT);
-+ reg |= (val << SYSCON_ETXDC_SHIFT);
-+ } else {
-+ dev_err(priv->device, "Invalid TX clock delay: %d\n",
-+ val);
-+ return -EINVAL;
-+ }
-+ }
-+
-+ if (!of_property_read_u32(node, "allwinner,rx-delay-ps", &val)) {
-+ if (val % 100) {
-+ dev_err(priv->device, "rx-delay must be a multiple of 100\n");
-+ return -EINVAL;
-+ }
-+ val /= 100;
-+ dev_dbg(priv->device, "set rx-delay to %x\n", val);
-+ if (val <= SYSCON_ERXDC_MASK) {
-+ reg &= ~(SYSCON_ERXDC_MASK << SYSCON_ERXDC_SHIFT);
-+ reg |= (val << SYSCON_ERXDC_SHIFT);
-+ } else {
-+ dev_err(priv->device, "Invalid RX clock delay: %d\n",
-+ val);
-+ return -EINVAL;
-+ }
-+ }
-+
-+ /* Clear interface mode bits */
-+ reg &= ~(SYSCON_ETCS_MASK | SYSCON_EPIT);
-+ if (gmac->variant->support_rmii)
-+ reg &= ~SYSCON_RMII_EN;
-+
-+ switch (priv->plat->interface) {
-+ case PHY_INTERFACE_MODE_MII:
-+ /* default */
-+ break;
-+ case PHY_INTERFACE_MODE_RGMII:
-+ reg |= SYSCON_EPIT | SYSCON_ETCS_INT_GMII;
-+ break;
-+ case PHY_INTERFACE_MODE_RMII:
-+ reg |= SYSCON_RMII_EN | SYSCON_ETCS_EXT_GMII;
-+ break;
-+ default:
-+ dev_err(priv->device, "Unsupported interface mode: %s",
-+ phy_modes(priv->plat->interface));
-+ return -EINVAL;
-+ }
-+
-+ regmap_write(gmac->regmap, SYSCON_EMAC_REG, reg);
-+
-+ return 0;
-+}
-+
-+static void sun8i_dwmac_unset_syscon(struct sunxi_priv_data *gmac)
-+{
-+ u32 reg = gmac->variant->default_syscon_value;
-+
-+ regmap_write(gmac->regmap, SYSCON_EMAC_REG, reg);
-+}
-+
-+static int sun8i_dwmac_power_internal_phy(struct stmmac_priv *priv)
-+{
-+ struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-+ int ret;
-+
-+ if (!gmac->use_internal_phy)
-+ return 0;
-+
-+ ret = clk_prepare_enable(gmac->ephy_clk);
-+ if (ret) {
-+ dev_err(priv->device, "Cannot enable ephy\n");
-+ return ret;
-+ }
-+
-+ ret = reset_control_deassert(gmac->rst_ephy);
-+ if (ret) {
-+ dev_err(priv->device, "Cannot deassert ephy\n");
-+ clk_disable_unprepare(gmac->ephy_clk);
-+ return ret;
-+ }
-+
-+ return 0;
-+}
-+
-+static int sun8i_dwmac_unpower_internal_phy(struct sunxi_priv_data *gmac)
-+{
-+ if (!gmac->use_internal_phy)
-+ return 0;
-+
-+ clk_disable_unprepare(gmac->ephy_clk);
-+ reset_control_assert(gmac->rst_ephy);
-+ return 0;
-+}
-+
-+static int sun8i_power_phy(struct stmmac_priv *priv)
-+{
-+ struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-+ int ret;
-+
-+ ret = sun8i_dwmac_power_internal_phy(priv);
-+ if (ret)
-+ return ret;
-+
-+ ret = sun8i_dwmac_set_syscon(priv);
-+ if (ret)
-+ goto error_phy;
-+
-+ ret = sun8i_dwmac_reset(priv);
-+ if (ret)
-+ goto error_phy;
-+ return 0;
-+
-+error_phy:
-+ sun8i_dwmac_unset_syscon(gmac);
-+ sun8i_dwmac_unpower_internal_phy(gmac);
-+ return ret;
-+}
-+
-+static void sun8i_unpower_phy(struct sunxi_priv_data *gmac)
-+{
-+ sun8i_dwmac_unset_syscon(gmac);
-+ sun8i_dwmac_unpower_internal_phy(gmac);
-+}
-+
-+static void sun8i_dwmac_exit(struct platform_device *pdev, void *priv)
-+{
-+ struct sunxi_priv_data *gmac = priv;
-+
-+ sun8i_unpower_phy(gmac);
-+
-+ clk_disable_unprepare(gmac->tx_clk);
-+
-+ if (gmac->regulator)
-+ regulator_disable(gmac->regulator);
-+}
-+
-+static const struct stmmac_ops sun8i_dwmac_ops = {
-+ .core_init = sun8i_dwmac_core_init,
-+ .set_mac = sun8i_dwmac_set_mac,
-+ .dump_regs = sun8i_dwmac_dump_mac_regs,
-+ .rx_ipc = sun8i_dwmac_rx_ipc_enable,
-+ .set_filter = sun8i_dwmac_set_filter,
-+ .flow_ctrl = sun8i_dwmac_flow_ctrl,
-+ .set_umac_addr = sun8i_dwmac_set_umac_addr,
-+ .get_umac_addr = sun8i_dwmac_get_umac_addr,
-+};
-+
-+static struct mac_device_info *sun8i_dwmac_setup(void *ppriv)
-+{
-+ struct mac_device_info *mac;
-+ struct stmmac_priv *priv = ppriv;
-+ int ret;
-+
-+ mac = devm_kzalloc(priv->device, sizeof(*mac), GFP_KERNEL);
-+ if (!mac)
-+ return NULL;
-+
-+ ret = sun8i_power_phy(priv);
-+ if (ret)
-+ return NULL;
-+
-+ mac->pcsr = priv->ioaddr;
-+ mac->mac = &sun8i_dwmac_ops;
-+ mac->dma = &sun8i_dwmac_dma_ops;
-+
-+ mac->link.port = 0;
-+ mac->link.duplex = BIT(0);
-+ mac->link.speed = 1;
-+ mac->mii.addr = EMAC_MDIO_CMD;
-+ mac->mii.data = EMAC_MDIO_DATA;
-+ mac->mii.reg_shift = 4;
-+ mac->mii.reg_mask = GENMASK(8, 4);
-+ mac->mii.addr_shift = 12;
-+ mac->mii.addr_mask = GENMASK(16, 12);
-+ mac->mii.clk_csr_shift = 20;
-+ mac->mii.clk_csr_mask = GENMASK(22, 20);
-+ mac->unicast_filter_entries = 8;
-+
-+ /* Synopsys Id is not available */
-+ priv->synopsys_id = 0;
-+
-+ return mac;
-+}
-+
-+static int sun8i_dwmac_probe(struct platform_device *pdev)
-+{
-+ struct plat_stmmacenet_data *plat_dat;
-+ struct stmmac_resources stmmac_res;
-+ struct sunxi_priv_data *gmac;
-+ struct device *dev = &pdev->dev;
-+ int ret;
-+
-+ ret = stmmac_get_platform_resources(pdev, &stmmac_res);
-+ if (ret)
-+ return ret;
-+
-+ plat_dat = stmmac_probe_config_dt(pdev, &stmmac_res.mac);
-+ if (IS_ERR(plat_dat))
-+ return PTR_ERR(plat_dat);
-+
-+ gmac = devm_kzalloc(dev, sizeof(*gmac), GFP_KERNEL);
-+ if (!gmac)
-+ return -ENOMEM;
-+
-+ gmac->variant = of_device_get_match_data(&pdev->dev);
-+ if (!gmac->variant) {
-+ dev_err(&pdev->dev, "Missing dwmac-sun8i variant\n");
-+ return -EINVAL;
-+ }
-+
-+ gmac->tx_clk = devm_clk_get(dev, "stmmaceth");
-+ if (IS_ERR(gmac->tx_clk)) {
-+ dev_err(dev, "Could not get TX clock\n");
-+ return PTR_ERR(gmac->tx_clk);
-+ }
-+
-+ /* Optional regulator for PHY */
-+ gmac->regulator = devm_regulator_get_optional(dev, "phy");
-+ if (IS_ERR(gmac->regulator)) {
-+ if (PTR_ERR(gmac->regulator) == -EPROBE_DEFER)
-+ return -EPROBE_DEFER;
-+ dev_info(dev, "No regulator found\n");
-+ gmac->regulator = NULL;
-+ }
-+
-+ gmac->regmap = syscon_regmap_lookup_by_phandle(pdev->dev.of_node,
-+ "syscon");
-+ if (IS_ERR(gmac->regmap)) {
-+ ret = PTR_ERR(gmac->regmap);
-+ dev_err(&pdev->dev, "Unable to map syscon: %d\n", ret);
-+ return ret;
-+ }
-+
-+ plat_dat->interface = of_get_phy_mode(dev->of_node);
-+ if (plat_dat->interface == gmac->variant->internal_phy) {
-+ dev_info(&pdev->dev, "Will use internal PHY\n");
-+ gmac->use_internal_phy = true;
-+ gmac->ephy_clk = of_clk_get(plat_dat->phy_node, 0);
-+ if (IS_ERR(gmac->ephy_clk)) {
-+ ret = PTR_ERR(gmac->ephy_clk);
-+ dev_err(&pdev->dev, "Cannot get EPHY clock: %d\n", ret);
-+ return -EINVAL;
-+ }
-+
-+ gmac->rst_ephy = of_reset_control_get(plat_dat->phy_node, NULL);
-+ if (IS_ERR(gmac->rst_ephy)) {
-+ ret = PTR_ERR(gmac->rst_ephy);
-+ if (ret == -EPROBE_DEFER)
-+ return ret;
-+ dev_err(&pdev->dev, "No EPHY reset control found %d\n",
-+ ret);
-+ return -EINVAL;
-+ }
-+ } else {
-+ dev_info(&pdev->dev, "Will use external PHY\n");
-+ gmac->use_internal_phy = false;
-+ }
-+
-+ /* platform data specifying hardware features and callbacks.
-+ * hardware features were copied from Allwinner drivers.
-+ */
-+ plat_dat->rx_coe = STMMAC_RX_COE_TYPE2;
-+ plat_dat->tx_coe = 1;
-+ plat_dat->has_sun8i = true;
-+ plat_dat->bsp_priv = gmac;
-+ plat_dat->init = sun8i_dwmac_init;
-+ plat_dat->exit = sun8i_dwmac_exit;
-+ plat_dat->setup = sun8i_dwmac_setup;
-+
-+ ret = sun8i_dwmac_init(pdev, plat_dat->bsp_priv);
-+ if (ret)
-+ return ret;
-+
-+ ret = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res);
-+ if (ret)
-+ sun8i_dwmac_exit(pdev, plat_dat->bsp_priv);
-+
-+ return ret;
-+}
-+
-+static const struct of_device_id sun8i_dwmac_match[] = {
-+ { .compatible = "allwinner,sun8i-h3-emac",
-+ .data = &emac_variant_h3 },
-+ { .compatible = "allwinner,sun8i-a83t-emac",
-+ .data = &emac_variant_a83t },
-+ { .compatible = "allwinner,sun50i-a64-emac",
-+ .data = &emac_variant_a64 },
-+ { }
-+};
-+MODULE_DEVICE_TABLE(of, sun8i_dwmac_match);
-+
-+static struct platform_driver sun8i_dwmac_driver = {
-+ .probe = sun8i_dwmac_probe,
-+ .remove = stmmac_pltfr_remove,
-+ .driver = {
-+ .name = "dwmac-sun8i",
-+ .pm = &stmmac_pltfr_pm_ops,
-+ .of_match_table = sun8i_dwmac_match,
-+ },
-+};
-+module_platform_driver(sun8i_dwmac_driver);
-+
-+MODULE_AUTHOR("Corentin Labbe <clabbe.montjoie@gmail.com>");
-+MODULE_DESCRIPTION("Allwinner sun8i DWMAC specific glue layer");
-+MODULE_LICENSE("GPL");
-diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-index b82ab64..39777a7 100644
---- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-@@ -235,6 +235,17 @@ static void stmmac_clk_csr_set(struct stmmac_priv *priv)
- else if ((clk_rate >= CSR_F_250M) && (clk_rate < CSR_F_300M))
- priv->clk_csr = STMMAC_CSR_250_300M;
- }
-+
-+ if (priv->plat->has_sun8i) {
-+ if (clk_rate > 160000000)
-+ priv->clk_csr = 0x03;
-+ else if (clk_rate > 80000000)
-+ priv->clk_csr = 0x02;
-+ else if (clk_rate > 40000000)
-+ priv->clk_csr = 0x01;
-+ else
-+ priv->clk_csr = 0;
-+ }
- }
-
- static void print_pkt(unsigned char *buf, int len)
-@@ -784,6 +795,14 @@ static void stmmac_adjust_link(struct net_device *dev)
- if (phydev->link) {
- u32 ctrl = readl(priv->ioaddr + MAC_CTRL_REG);
-
-+ /* dwmac-sun8i handle loopback in MAC_CTRL_REG */
-+ if (priv->plat->has_sun8i) {
-+ if (dev->features & NETIF_F_LOOPBACK)
-+ ctrl |= BIT(1);
-+ else
-+ ctrl &= ~BIT(1);
-+ }
-+
- /* Now we make sure that we can be in full duplex mode.
- * If not, we operate in half-duplex mode. */
- if (phydev->duplex != priv->oldduplex) {
-@@ -800,6 +819,8 @@ static void stmmac_adjust_link(struct net_device *dev)
-
- if (phydev->speed != priv->speed) {
- new_state = 1;
-+ if (priv->plat->has_sun8i)
-+ ctrl &= ~GENMASK(3, 2);
- switch (phydev->speed) {
- case 1000:
- if (priv->plat->has_gmac ||
-@@ -811,6 +832,8 @@ static void stmmac_adjust_link(struct net_device *dev)
- priv->plat->has_gmac4) {
- ctrl |= priv->hw->link.port;
- ctrl |= priv->hw->link.speed;
-+ } else if (priv->plat->has_sun8i) {
-+ ctrl |= 3 << 2;
- } else {
- ctrl &= ~priv->hw->link.port;
- }
-@@ -820,6 +843,8 @@ static void stmmac_adjust_link(struct net_device *dev)
- priv->plat->has_gmac4) {
- ctrl |= priv->hw->link.port;
- ctrl &= ~(priv->hw->link.speed);
-+ } else if (priv->plat->has_sun8i) {
-+ ctrl |= 2 << 2;
- } else {
- ctrl &= ~priv->hw->link.port;
- }
-@@ -3969,6 +3994,10 @@ static int stmmac_hw_init(struct stmmac_priv *priv)
-
- priv->hw = mac;
-
-+ /* dwmac-sun8i only work in chain mode */
-+ if (priv->plat->has_sun8i)
-+ chain_mode = 1;
-+
- /* To use the chained or ring mode */
- if (priv->synopsys_id >= DWMAC_CORE_4_00) {
- priv->hw->mode = &dwmac4_ring_mode_ops;
-diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-index 7fc3a1e..3840529 100644
---- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-@@ -309,6 +309,12 @@ static int stmmac_dt_phy(struct plat_stmmacenet_data *plat,
- struct device_node *np, struct device *dev)
- {
- bool mdio = true;
-+ static const struct of_device_id need_mdio_ids[] = {
-+ { .compatible = "snps,dwc-qos-ethernet-4.10" },
-+ { .compatible = "allwinner,sun8i-a83t-emac" },
-+ { .compatible = "allwinner,sun8i-h3-emac" },
-+ { .compatible = "allwinner,sun50i-a64-emac" },
-+ };
-
- /* If phy-handle property is passed from DT, use it as the PHY */
- plat->phy_node = of_parse_phandle(np, "phy-handle", 0);
-@@ -325,8 +331,7 @@ static int stmmac_dt_phy(struct plat_stmmacenet_data *plat,
- mdio = false;
- }
-
-- /* exception for dwmac-dwc-qos-eth glue logic */
-- if (of_device_is_compatible(np, "snps,dwc-qos-ethernet-4.10")) {
-+ if (of_match_node(need_mdio_ids, np)) {
- plat->mdio_node = of_get_child_by_name(np, "mdio");
- } else {
- /**
-diff --git a/include/linux/stmmac.h b/include/linux/stmmac.h
-index 8bb550b..108739f 100644
---- a/include/linux/stmmac.h
-+++ b/include/linux/stmmac.h
-@@ -186,6 +186,7 @@ struct plat_stmmacenet_data {
- struct reset_control *stmmac_rst;
- struct stmmac_axi *axi;
- int has_gmac4;
-+ bool has_sun8i;
- bool tso_en;
- int mac_port_sel_speed;
- bool en_tx_lpi_clockgating;
-
-From patchwork Mon May 1 12:45:06 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,
- 06/20] arm: sun8i: sunxi-h3-h5: Add dt node for the syscon control
- module
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706459
-Message-Id: <20170501124520.3769-7-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:06 +0200
-
-This patch add the dt node for the syscon register present on the
-Allwinner H3/H5
-
-Only two register are present in this syscon and the only one useful is
-the one dedicated to EMAC clock..
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sunxi-h3-h5.dtsi | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-index 1aeeacb..d9691fc 100644
---- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-@@ -83,6 +83,12 @@
- #size-cells = <1>;
- ranges;
-
-+ syscon: syscon@1c00000 {
-+ compatible = "allwinner,sun8i-h3-system-controller",
-+ "syscon";
-+ reg = <0x01c00000 0x1000>;
-+ };
-+
- dma: dma-controller@01c02000 {
- compatible = "allwinner,sun8i-h3-dma";
- reg = <0x01c02000 0x1000>;
-
-From patchwork Mon May 1 12:45:07 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,07/20] arm: sun8i: sunxi-h3-h5: add dwmac-sun8i ethernet driver
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706465
-Message-Id: <20170501124520.3769-8-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:07 +0200
-
-The dwmac-sun8i is an ethernet MAC hardware that support 10/100/1000
-speed.
-
-This patch enable the dwmac-sun8i on Allwinner H3/H5 SoC Device-tree.
-SoC H3/H5 have an internal PHY, so optionals syscon and ephy are set.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sunxi-h3-h5.dtsi | 34 ++++++++++++++++++++++++++++++++++
- 1 file changed, 34 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-index d9691fc..45a9a30 100644
---- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-@@ -285,6 +285,14 @@
- interrupt-controller;
- #interrupt-cells = <3>;
-
-+ emac_rgmii_pins: emac0 {
-+ pins = "PD0", "PD1", "PD2", "PD3", "PD4",
-+ "PD5", "PD7", "PD8", "PD9", "PD10",
-+ "PD12", "PD13", "PD15", "PD16", "PD17";
-+ function = "emac";
-+ drive-strength = <40>;
-+ };
-+
- i2c0_pins: i2c0 {
- pins = "PA11", "PA12";
- function = "i2c0";
-@@ -381,6 +389,32 @@
- clocks = <&osc24M>;
- };
-
-+ emac: ethernet@1c30000 {
-+ compatible = "allwinner,sun8i-h3-emac";
-+ syscon = <&syscon>;
-+ reg = <0x01c30000 0x104>;
-+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupt-names = "macirq";
-+ resets = <&ccu RST_BUS_EMAC>;
-+ reset-names = "stmmaceth";
-+ clocks = <&ccu CLK_BUS_EMAC>;
-+ clock-names = "stmmaceth";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "disabled";
-+
-+ mdio: mdio {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ int_mii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ clocks = <&ccu CLK_BUS_EPHY>;
-+ resets = <&ccu RST_BUS_EPHY>;
-+ };
-+ };
-+ };
-+
- spi0: spi@01c68000 {
- compatible = "allwinner,sun8i-h3-spi";
- reg = <0x01c68000 0x1000>;
-
-From patchwork Mon May 1 12:45:08 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,08/20] arm: sun8i: orangepi-pc: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706463
-Message-Id: <20170501124520.3769-9-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:08 +0200
-
-The dwmac-sun8i hardware is present on the Orange PI PC.
-It uses the internal PHY.
-
-This patch create the needed emac node.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts
-index f148111..52e6575 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts
-@@ -52,6 +52,7 @@
- compatible = "xunlong,orangepi-pc", "allwinner,sun8i-h3";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -109,6 +110,13 @@
- status = "okay";
- };
-
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
-
-From patchwork Mon May 1 12:45:09 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,09/20] arm: sun8i: orangepi-zero: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706461
-Message-Id: <20170501124520.3769-10-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:09 +0200
-
-The dwmac-sun8i hardware is present on the Orange PI Zero.
-It uses the internal PHY.
-
-This patch create the needed emac node.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
-index 9e8b082..dd3525a 100644
---- a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
-+++ b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
-@@ -57,6 +57,7 @@
- aliases {
- serial0 = &uart0;
- /* ethernet0 is the H3 emac, defined in sun8i-h3.dtsi */
-+ ethernet0 = &emac;
- ethernet1 = &xr819;
- };
-
-@@ -103,6 +104,13 @@
- status = "okay";
- };
-
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>;
-
-From patchwork Mon May 1 12:45:10 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,10/20] arm: sun8i: orangepi-one: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706471
-Message-Id: <20170501124520.3769-11-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:10 +0200
-
-The dwmac-sun8i hardware is present on the Orange PI One.
-It uses the internal PHY.
-
-This patch create the needed emac node.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h3-orangepi-one.dts | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
-index 5fea430..6880268 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
-@@ -52,6 +52,7 @@
- compatible = "xunlong,orangepi-one", "allwinner,sun8i-h3";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -97,6 +98,13 @@
- status = "okay";
- };
-
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
-
-From patchwork Mon May 1 12:45:11 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,11/20] arm: sun8i: orangepi-2: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706467
-Message-Id: <20170501124520.3769-12-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:11 +0200
-
-The dwmac-sun8i hardware is present on the Orange PI 2.
-It uses the internal PHY.
-
-This patch create the needed emac node.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h3-orangepi-2.dts | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts
-index 5b6d145..cedd326 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts
-@@ -54,6 +54,7 @@
- aliases {
- serial0 = &uart0;
- /* ethernet0 is the H3 emac, defined in sun8i-h3.dtsi */
-+ ethernet0 = &emac;
- ethernet1 = &rtl8189;
- };
-
-@@ -108,6 +109,13 @@
- status = "okay";
- };
-
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
-
-From patchwork Mon May 1 12:45:12 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,
- 12/20] arm: sun8i: orangepi-pc-plus: Set EMAC activity LEDs to active
- high
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706481
-Message-Id: <20170501124520.3769-13-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:12 +0200
-
-On the Orange Pi PC Plus, the polarity of the LEDs on the RJ45 Ethernet
-port were changed from active low to active high.
-
-Signed-off-by: Chen-Yu Tsai <wens@csie.org>
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts
-index 8b93f5c..a10281b 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts
-@@ -53,6 +53,11 @@
- };
- };
-
-+&emac {
-+ /* LEDs changed to active high on the plus */
-+ /delete-property/ allwinner,leds-active-low;
-+};
-+
- &mmc1 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc1_pins_a>;
-
-From patchwork Mon May 1 12:45:13 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5, 13/20] arm64: allwinner: sun50i-a64: Add dt node for the syscon
- control module
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706477
-Message-Id: <20170501124520.3769-14-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:13 +0200
-
-This patch add the dt node for the syscon register present on the
-Allwinner A64.
-
-Only two register are present in this syscon and the only one useful is
-the one dedicated to EMAC clock.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-index c7f669f..d7341ba 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-@@ -129,6 +129,12 @@
- #size-cells = <1>;
- ranges;
-
-+ syscon: syscon@1c00000 {
-+ compatible = "allwinner,sun50i-a64-system-controller",
-+ "syscon";
-+ reg = <0x01c00000 0x1000>;
-+ };
-+
- mmc0: mmc@1c0f000 {
- compatible = "allwinner,sun50i-a64-mmc";
- reg = <0x01c0f000 0x1000>;
-
-From patchwork Mon May 1 12:45:14 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,
- 14/20] arm64: allwinner: sun50i-a64: add dwmac-sun8i Ethernet driver
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706485
-Message-Id: <20170501124520.3769-15-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:14 +0200
-
-The dwmac-sun8i is an Ethernet MAC that supports 10/100/1000 Mbit
-connections. It is very similar to the device found in the Allwinner
-H3, but lacks the internal 100 Mbit PHY and its associated control
-bits.
-This adds the necessary bits to the Allwinner A64 SoC .dtsi, but keeps
-it disabled at this level.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 35 +++++++++++++++++++++++++++
- 1 file changed, 35 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-index d7341ba..18b3642 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-@@ -287,6 +287,21 @@
- bias-pull-up;
- };
-
-+ rmii_pins: rmii_pins {
-+ pins = "PD10", "PD11", "PD13", "PD14", "PD17",
-+ "PD18", "PD19", "PD20", "PD22", "PD23";
-+ function = "emac";
-+ drive-strength = <40>;
-+ };
-+
-+ rgmii_pins: rgmii_pins {
-+ pins = "PD8", "PD9", "PD10", "PD11", "PD12",
-+ "PD13", "PD15", "PD16", "PD17", "PD18",
-+ "PD19", "PD20", "PD21", "PD22", "PD23";
-+ function = "emac";
-+ drive-strength = <40>;
-+ };
-+
- uart0_pins_a: uart0@0 {
- pins = "PB8", "PB9";
- function = "uart0";
-@@ -391,6 +406,26 @@
- #size-cells = <0>;
- };
-
-+ emac: ethernet@1c30000 {
-+ compatible = "allwinner,sun50i-a64-emac";
-+ syscon = <&syscon>;
-+ reg = <0x01c30000 0x100>;
-+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupt-names = "macirq";
-+ resets = <&ccu RST_BUS_EMAC>;
-+ reset-names = "stmmaceth";
-+ clocks = <&ccu CLK_BUS_EMAC>;
-+ clock-names = "stmmaceth";
-+ status = "disabled";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ mdio: mdio {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ };
-+ };
-+
- gic: interrupt-controller@1c81000 {
- compatible = "arm,gic-400";
- reg = <0x01c81000 0x1000>,
-
-From patchwork Mon May 1 12:45:15 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,15/20] arm64: allwinner: pine64: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706489
-Message-Id: <20170501124520.3769-16-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:15 +0200
-
-The dwmac-sun8i hardware is present on the pine64
-It uses an external PHY via RMII.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 16 ++++++++++++++++
- 1 file changed, 16 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-index c680ed3..3b491c0 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-@@ -70,6 +70,15 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rmii_pins>;
-+ phy-mode = "rmii";
-+ phy-handle = <&ext_rmii_phy1>;
-+ status = "okay";
-+
-+};
-+
- &i2c1 {
- pinctrl-names = "default";
- pinctrl-0 = <&i2c1_pins>;
-@@ -80,6 +89,13 @@
- bias-pull-up;
- };
-
-+&mdio {
-+ ext_rmii_phy1: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins>;
-
-From patchwork Mon May 1 12:45:16 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,16/20] arm64: allwinner: pine64-plus: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706511
-Message-Id: <20170501124520.3769-17-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:16 +0200
-
-The dwmac-sun8i hardware is present on the pine64 plus.
-It uses an external PHY rtl8211e via RGMII.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- .../arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts | 17 ++++++++++++++++-
- 1 file changed, 16 insertions(+), 1 deletion(-)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts
-index 790d14d..24f1aac 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts
-@@ -46,5 +46,20 @@
- model = "Pine64+";
- compatible = "pine64,pine64-plus", "allwinner,sun50i-a64";
-
-- /* TODO: Camera, Ethernet PHY, touchscreen, etc. */
-+ /* TODO: Camera, touchscreen, etc. */
-+};
-+
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rgmii_pins>;
-+ phy-mode = "rgmii";
-+ phy-handle = <&ext_rgmii_phy>;
-+ status = "okay";
-+};
-+
-+&mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
- };
-
-From patchwork Mon May 1 12:45:17 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,17/20] arm64: allwinner: bananapi-m64: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706509
-Message-Id: <20170501124520.3769-18-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:17 +0200
-
-The dwmac-sun8i hardware is present on the BananaPi M64.
-It uses an external PHY rtl8211e via RGMII.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 15 +++++++++++++++
- 1 file changed, 15 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-index 6872135..0d1f026 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-@@ -67,6 +67,14 @@
- };
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rgmii_pins>;
-+ phy-mode = "rgmii";
-+ phy-handle = <&ext_rgmii_phy>;
-+ status = "okay";
-+};
-+
- &i2c1 {
- pinctrl-names = "default";
- pinctrl-0 = <&i2c1_pins>;
-@@ -77,6 +85,13 @@
- bias-pull-up;
- };
-
-+&mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins>;
-
-From patchwork Mon May 1 12:45:18 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,18/20] arm: sunxi: Enable dwmac-sun8i driver on sunxi_defconfig
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706507
-Message-Id: <20170501124520.3769-19-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:18 +0200
-
-Enable the dwmac-sun8i driver in the sunxi default configuration
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/configs/sunxi_defconfig | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/arch/arm/configs/sunxi_defconfig b/arch/arm/configs/sunxi_defconfig
-index 5cd5dd70..504e022 100644
---- a/arch/arm/configs/sunxi_defconfig
-+++ b/arch/arm/configs/sunxi_defconfig
-@@ -40,6 +40,7 @@ CONFIG_ATA=y
- CONFIG_AHCI_SUNXI=y
- CONFIG_NETDEVICES=y
- CONFIG_SUN4I_EMAC=y
-+CONFIG_DWMAC_SUN8I=y
- # CONFIG_NET_VENDOR_ARC is not set
- # CONFIG_NET_CADENCE is not set
- # CONFIG_NET_VENDOR_BROADCOM is not set
-
-From patchwork Mon May 1 12:45:19 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,
- 19/20] arm: multi_v7: Enable dwmac-sun8i driver on multi_v7_defconfig
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706513
-Message-Id: <20170501124520.3769-20-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:19 +0200
-
-Enable the dwmac-sun8i driver in the multi_v7 default configuration
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/configs/multi_v7_defconfig | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/arch/arm/configs/multi_v7_defconfig b/arch/arm/configs/multi_v7_defconfig
-index 2685e03..6da6af8 100644
---- a/arch/arm/configs/multi_v7_defconfig
-+++ b/arch/arm/configs/multi_v7_defconfig
-@@ -257,6 +257,7 @@ CONFIG_SMSC911X=y
- CONFIG_STMMAC_ETH=y
- CONFIG_STMMAC_PLATFORM=y
- CONFIG_DWMAC_DWC_QOS_ETH=y
-+CONFIG_DWMAC_SUN8I=y
- CONFIG_TI_CPSW=y
- CONFIG_XILINX_EMACLITE=y
- CONFIG_AT803X_PHY=y
-
-From patchwork Mon May 1 12:45:20 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v5,20/20] arm64: defconfig: Enable dwmac-sun8i driver on defconfig
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9706505
-Message-Id: <20170501124520.3769-21-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com, wens@csie.org,
- linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
- netdev@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
- Corentin Labbe <clabbe.montjoie@gmail.com>
-Date: Mon, 1 May 2017 14:45:20 +0200
-
-Enable the dwmac-sun8i ethernet driver as a module in the ARM64 defconfig.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm64/configs/defconfig | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
-index ce07285..4575fbb 100644
---- a/arch/arm64/configs/defconfig
-+++ b/arch/arm64/configs/defconfig
-@@ -193,6 +193,7 @@ CONFIG_RAVB=y
- CONFIG_SMC91X=y
- CONFIG_SMSC911X=y
- CONFIG_STMMAC_ETH=m
-+CONFIG_DWMAC_SUN8I=m
- CONFIG_MDIO_BUS_MUX_MMIOREG=y
- CONFIG_MESON_GXL_PHY=m
- CONFIG_MICREL_PHY=y
-From patchwork Mon Jun 5 19:21:26 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [1/5] ARM: sun8i: orangepi-plus: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9767313
-Message-Id: <20170605192130.25320-2-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com, linux@armlinux.org.uk,
- maxime.ripard@free-electrons.com, wens@csie.org,
- catalin.marinas@arm.com, will.deacon@arm.com
-Cc: devicetree@vger.kernel.org, linux-sunxi@googlegroups.com,
- Corentin Labbe <clabbe.montjoie@gmail.com>,
- linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org
-Date: Mon, 5 Jun 2017 21:21:26 +0200
-
-The dwmac-sun8i hardware is present on the Orange PI plus.
-It uses an external PHY rtl8211e via RGMII.
-
-This patch create the needed regulator, emac and phy nodes.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts | 32 ++++++++++++++++++++++++++++
- 1 file changed, 32 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts
-index 8c40ab7bfa72..331ed683ac62 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts
-@@ -47,6 +47,20 @@
- model = "Xunlong Orange Pi Plus / Plus 2";
- compatible = "xunlong,orangepi-plus", "allwinner,sun8i-h3";
-
-+ aliases {
-+ ethernet0 = &emac;
-+ };
-+
-+ reg_gmac_3v3: gmac-3v3 {
-+ compatible = "regulator-fixed";
-+ regulator-name = "gmac-3v3";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ startup-delay-us = <100000>;
-+ enable-active-high;
-+ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>;
-+ };
-+
- reg_usb3_vbus: usb3-vbus {
- compatible = "regulator-fixed";
- pinctrl-names = "default";
-@@ -64,6 +78,24 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
-+&mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <0>;
-+ };
-+};
-+
- &mmc2 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc2_8bit_pins>;
-From patchwork Mon Jun 5 19:21:27 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [2/5] ARM: sun8i: bananapi-m2-plus: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9767321
-Message-Id: <20170605192130.25320-3-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com, linux@armlinux.org.uk,
- maxime.ripard@free-electrons.com, wens@csie.org,
- catalin.marinas@arm.com, will.deacon@arm.com
-Cc: devicetree@vger.kernel.org, linux-sunxi@googlegroups.com,
- Corentin Labbe <clabbe.montjoie@gmail.com>,
- linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org
-Date: Mon, 5 Jun 2017 21:21:27 +0200
-
-The dwmac-sun8i hardware is present on the Banana Pi M2+
-It uses an external PHY rtl8211e via RGMII.
-
-This patch create the needed regulator, emac and phy nodes.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts | 29 +++++++++++++++++++++++++
- 1 file changed, 29 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts b/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts
-index 883072b611fa..d756ff825116 100644
---- a/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts
-@@ -52,6 +52,7 @@
- compatible = "sinovoip,bpi-m2-plus", "allwinner,sun8i-h3";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- serial1 = &uart1;
- };
-@@ -84,6 +85,16 @@
- };
- };
-
-+ reg_gmac_3v3: gmac-3v3 {
-+ compatible = "regulator-fixed";
-+ regulator-name = "gmac-3v3";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ startup-delay-us = <100000>;
-+ enable-active-high;
-+ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>;
-+ };
-+
- wifi_pwrseq: wifi_pwrseq {
- compatible = "mmc-pwrseq-simple";
- pinctrl-names = "default";
-@@ -104,12 +115,30 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
- status = "okay";
- };
-
-+&mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <0>;
-+ };
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
-From patchwork Mon Jun 5 19:21:28 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [3/5] ARM: sun50i: orangepi-pc2: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9767347
-Message-Id: <20170605192130.25320-4-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com, linux@armlinux.org.uk,
- maxime.ripard@free-electrons.com, wens@csie.org,
- catalin.marinas@arm.com, will.deacon@arm.com
-Cc: devicetree@vger.kernel.org, linux-sunxi@googlegroups.com,
- Corentin Labbe <clabbe.montjoie@gmail.com>,
- linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org
-Date: Mon, 5 Jun 2017 21:21:28 +0200
-
-The dwmac-sun8i hardware is present on the Orange PI PC2.
-It uses an external PHY rtl8211e via RGMII.
-
-This patch create the needed regulator, emac and phy nodes.
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- .../boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts | 27 ++++++++++++++++++++++
- 1 file changed, 27 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
-index dfecc17dcc92..a8296feee884 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
-@@ -59,6 +59,7 @@
- };
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -91,6 +92,16 @@
- };
- };
-
-+ reg_gmac_3v3: gmac-3v3 {
-+ compatible = "regulator-fixed";
-+ regulator-name = "gmac-3v3";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ startup-delay-us = <100000>;
-+ enable-active-high;
-+ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>;
-+ };
-+
- reg_usb0_vbus: usb0-vbus {
- compatible = "regulator-fixed";
- regulator-name = "usb0-vbus";
-@@ -126,12 +137,28 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+ status = "okay";
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
- status = "okay";
- };
-
-+&mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
-From patchwork Wed May 31 07:18:44 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v6,13/21] arm: sun8i: nanopi-neo: Enable dwmac-sun8i
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-X-Patchwork-Id: 9756089
-Message-Id: <20170531071852.12422-14-clabbe.montjoie@gmail.com>
-To: robh+dt@kernel.org, mark.rutland@arm.com,
- maxime.ripard@free-electrons.com,
- wens@csie.org, linux@armlinux.org.uk, catalin.marinas@arm.com,
- will.deacon@arm.com, peppe.cavallaro@st.com, alexandre.torgue@st.com
-Cc: devicetree@vger.kernel.org, netdev@vger.kernel.org,
- linux-kernel@vger.kernel.org, linux-sunxi@googlegroups.com,
- Corentin Labbe <clabbe.montjoie@gmail.com>,
- linux-arm-kernel@lists.infradead.org
-Date: Wed, 31 May 2017 09:18:44 +0200
-
-The dwmac-sun8i hardware is present on the NanoPi Neo.
-It uses the internal PHY.
-This patch create the needed emac node.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts b/arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts
-index 8d2cc6e9a03f..78f6c24952dd 100644
---- a/arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts
-@@ -46,3 +46,10 @@
- model = "FriendlyARM NanoPi NEO";
- compatible = "friendlyarm,nanopi-neo", "allwinner,sun8i-h3";
- };
-+
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-From 051516f1c20c7d7c274c91b4c2fa73bc8d7fc372 Mon Sep 17 00:00:00 2001
-From: Peter Robinson <pbrobinson@gmail.com>
-Date: Sat, 22 Jul 2017 15:08:12 +0100
-Subject: [PATCH] fix mac assignment so we get static not dynamic MACs
-
----
- arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 1 +
- arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-index 0d1f026d831a..ba2fde2909f9 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-@@ -51,6 +51,7 @@
- compatible = "sinovoip,bananapi-m64", "allwinner,sun50i-a64";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- serial1 = &uart1;
- };
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-index 3b491c0e3b0d..8442eb6c9244 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-@@ -51,6 +51,7 @@
- compatible = "pine64,pine64", "allwinner,sun50i-a64";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
---
-2.13.3
-
diff --git a/CVE-2017-11473.patch b/CVE-2017-11473.patch
deleted file mode 100644
index e3e0658a4..000000000
--- a/CVE-2017-11473.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From 70ac67826602edf8c0ccb413e5ba7eacf597a60c Mon Sep 17 00:00:00 2001
-From: Seunghun Han <kkamagui@gmail.com>
-Date: Tue, 18 Jul 2017 20:03:51 +0900
-Subject: x86/acpi: Prevent out of bound access caused by broken ACPI tables
-
-The bus_irq argument of mp_override_legacy_irq() is used as the index into
-the isa_irq_to_gsi[] array. The bus_irq argument originates from
-ACPI_MADT_TYPE_IO_APIC and ACPI_MADT_TYPE_INTERRUPT items in the ACPI
-tables, but is nowhere sanity checked.
-
-That allows broken or malicious ACPI tables to overwrite memory, which
-might cause malfunction, panic or arbitrary code execution.
-
-Add a sanity check and emit a warning when that triggers.
-
-[ tglx: Added warning and rewrote changelog ]
-
-Signed-off-by: Seunghun Han <kkamagui@gmail.com>
-Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-Cc: security@kernel.org
-Cc: "Rafael J. Wysocki" <rjw@rjwysocki.net>
-Cc: stable@vger.kernel.org
----
- arch/x86/kernel/acpi/boot.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
-index 6bb6806..7491e73 100644
---- a/arch/x86/kernel/acpi/boot.c
-+++ b/arch/x86/kernel/acpi/boot.c
-@@ -347,6 +347,14 @@ static void __init mp_override_legacy_irq(u8 bus_irq, u8 polarity, u8 trigger,
- struct mpc_intsrc mp_irq;
-
- /*
-+ * Check bus_irq boundary.
-+ */
-+ if (bus_irq >= NR_IRQS_LEGACY) {
-+ pr_warn("Invalid bus_irq %u for legacy override\n", bus_irq);
-+ return;
-+ }
-+
-+ /*
- * Convert 'gsi' to 'ioapic.pin'.
- */
- ioapic = mp_find_ioapic(gsi);
---
-cgit v1.1
-
diff --git a/KEYS-Add-a-system-blacklist-keyring.patch b/KEYS-Add-a-system-blacklist-keyring.patch
deleted file mode 100644
index 262c960b8..000000000
--- a/KEYS-Add-a-system-blacklist-keyring.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From 2a54526850121cd0d7cf649a321488b4dab5731d Mon Sep 17 00:00:00 2001
-From: Josh Boyer <jwboyer@fedoraproject.org>
-Date: Fri, 26 Oct 2012 12:36:24 -0400
-Subject: [PATCH 17/20] KEYS: Add a system blacklist keyring
-
-This adds an additional keyring that is used to store certificates that
-are blacklisted. This keyring is searched first when loading signed modules
-and if the module's certificate is found, it will refuse to load. This is
-useful in cases where third party certificates are used for module signing.
-
-Signed-off-by: Josh Boyer <jwboyer@fedoraproject.org>
----
- certs/system_keyring.c | 22 ++++++++++++++++++++++
- include/keys/system_keyring.h | 4 ++++
- init/Kconfig | 9 +++++++++
- 3 files changed, 35 insertions(+)
-
-diff --git a/certs/system_keyring.c b/certs/system_keyring.c
-index 50979d6dcecd..787eeead2f57 100644
---- a/certs/system_keyring.c
-+++ b/certs/system_keyring.c
-@@ -22,6 +22,9 @@ static struct key *builtin_trusted_keys;
- #ifdef CONFIG_SECONDARY_TRUSTED_KEYRING
- static struct key *secondary_trusted_keys;
- #endif
-+#ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING
-+struct key *system_blacklist_keyring;
-+#endif
-
- extern __initconst const u8 system_certificate_list[];
- extern __initconst const unsigned long system_certificate_list_size;
-@@ -99,6 +102,16 @@ static __init int system_trusted_keyring_init(void)
- if (key_link(secondary_trusted_keys, builtin_trusted_keys) < 0)
- panic("Can't link trusted keyrings\n");
- #endif
-+#ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING
-+ system_blacklist_keyring = keyring_alloc(".system_blacklist_keyring",
-+ KUIDT_INIT(0), KGIDT_INIT(0), current_cred(),
-+ ((KEY_POS_ALL & ~KEY_POS_SETATTR) |
-+ KEY_USR_VIEW | KEY_USR_READ | KEY_USR_SEARCH),
-+ KEY_ALLOC_NOT_IN_QUOTA,
-+ NULL, NULL);
-+ if (IS_ERR(system_blacklist_keyring))
-+ panic("Can't allocate system blacklist keyring\n");
-+#endif
-
- return 0;
- }
-@@ -214,6 +227,15 @@ int verify_pkcs7_signature(const void *data, size_t len,
- trusted_keys = builtin_trusted_keys;
- #endif
- }
-+#ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING
-+ ret = pkcs7_validate_trust(pkcs7, system_blacklist_keyring);
-+ if (!ret) {
-+ /* module is signed with a cert in the blacklist. reject */
-+ pr_err("Module key is in the blacklist\n");
-+ ret = -EKEYREJECTED;
-+ goto error;
-+ }
-+#endif
- ret = pkcs7_validate_trust(pkcs7, trusted_keys);
- if (ret < 0) {
- if (ret == -ENOKEY)
-diff --git a/include/keys/system_keyring.h b/include/keys/system_keyring.h
-index fbd4647767e9..5bc291a3d261 100644
---- a/include/keys/system_keyring.h
-+++ b/include/keys/system_keyring.h
-@@ -33,6 +33,10 @@ extern int restrict_link_by_builtin_and_secondary_trusted(
- #define restrict_link_by_builtin_and_secondary_trusted restrict_link_by_builtin_trusted
- #endif
-
-+#ifdef CONFIG_SYSTEM_BLACKLIST_KEYRING
-+extern struct key *system_blacklist_keyring;
-+#endif
-+
- #ifdef CONFIG_IMA_BLACKLIST_KEYRING
- extern struct key *ima_blacklist_keyring;
-
-diff --git a/init/Kconfig b/init/Kconfig
-index 34407f15e6d3..461ad575a608 100644
---- a/init/Kconfig
-+++ b/init/Kconfig
-@@ -1859,6 +1859,15 @@ config SYSTEM_DATA_VERIFICATION
- module verification, kexec image verification and firmware blob
- verification.
-
-+config SYSTEM_BLACKLIST_KEYRING
-+ bool "Provide system-wide ring of blacklisted keys"
-+ depends on KEYS
-+ help
-+ Provide a system keyring to which blacklisted keys can be added.
-+ Keys in the keyring are considered entirely untrusted. Keys in this
-+ keyring are used by the module signature checking to reject loading
-+ of modules signed with a blacklisted key.
-+
- config PROFILING
- bool "Profiling support"
- help
---
-2.9.3
-
diff --git a/MODSIGN-Don-t-try-secure-boot-if-EFI-runtime-is-disa.patch b/MODSIGN-Don-t-try-secure-boot-if-EFI-runtime-is-disa.patch
deleted file mode 100644
index 6f5d8b6ab..000000000
--- a/MODSIGN-Don-t-try-secure-boot-if-EFI-runtime-is-disa.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 71db1b222ecdf6cb4356f6f1e2bd45cd2f0e85e1 Mon Sep 17 00:00:00 2001
-From: Laura Abbott <labbott@redhat.com>
-Date: Tue, 18 Oct 2016 13:58:44 -0700
-Subject: [PATCH] MODSIGN: Don't try secure boot if EFI runtime is disabled
-
-Secure boot depends on having EFI runtime variable access. The code
-does not handle a lack of runtime variables gracefully. Add a check
-to just bail out of EFI runtime is disabled.
-
-Signed-off-by: Laura Abbott <labbott@redhat.com>
----
- kernel/modsign_uefi.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/kernel/modsign_uefi.c b/kernel/modsign_uefi.c
-index a41da14..2bdaf76 100644
---- a/kernel/modsign_uefi.c
-+++ b/kernel/modsign_uefi.c
-@@ -71,6 +71,10 @@ static int __init load_uefi_certs(void)
- if (!efi_enabled(EFI_SECURE_BOOT))
- return 0;
-
-+ /* Things blow up if efi runtime is disabled */
-+ if (efi_runtime_disabled())
-+ return 0;
-+
- keyring = get_system_keyring();
- if (!keyring) {
- pr_err("MODSIGN: Couldn't get system keyring\n");
---
-2.7.4
-
diff --git a/PCI-aspm-deal-with-missing-root-ports-in-link-state-handling.patch b/PCI-aspm-deal-with-missing-root-ports-in-link-state-handling.patch
deleted file mode 100644
index 03b011561..000000000
--- a/PCI-aspm-deal-with-missing-root-ports-in-link-state-handling.patch
+++ /dev/null
@@ -1,55 +0,0 @@
-From patchwork Mon Oct 2 14:08:40 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: PCI: aspm: deal with missing root ports in link state handling
-From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
-X-Patchwork-Id: 9980861
-Message-Id: <20171002140840.7767-1-ard.biesheuvel@linaro.org>
-To: linux-pci@vger.kernel.org, bhelgaas@google.com
-Cc: graeme.gregory@linaro.org, leif.lindholm@linaro.org,
- daniel.thompson@Linaro.org, Ard Biesheuvel <ard.biesheuvel@linaro.org>
-Date: Mon, 2 Oct 2017 15:08:40 +0100
-
-Even though it is unconventional, some PCIe host implementations omit
-the root ports entirely, and simply consist of a host bridge (which
-is not modeled as a device in the PCI hierarchy) and a link.
-
-When the downstream device is an endpoint, our current code does not
-seem to mind this unusual configuration. However, when PCIe switches
-are involved, the ASPM code assumes that any downstream switch port
-has a parent, and blindly derefences the bus->parent->self field of
-the pci_dev struct to chain the downstream link state to the link
-state of the root port. Given that the root port is missing, the link
-is not modeled at all, and nor is the link state, and attempting to
-access it results in a NULL pointer dereference and a crash.
-
-So let's avoid this by allowing the link state chain to terminate at
-the downstream port if no root port exists.
-
-Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
----
- drivers/pci/pcie/aspm.c | 8 ++++++--
- 1 file changed, 6 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/pci/pcie/aspm.c b/drivers/pci/pcie/aspm.c
-index 1dfa10cc566b..0bea8498b5a5 100644
---- a/drivers/pci/pcie/aspm.c
-+++ b/drivers/pci/pcie/aspm.c
-@@ -802,10 +802,14 @@ static struct pcie_link_state *alloc_pcie_link_state(struct pci_dev *pdev)
-
- /*
- * Root Ports and PCI/PCI-X to PCIe Bridges are roots of PCIe
-- * hierarchies.
-+ * hierarchies. Note that some PCIe host implementations omit
-+ * the root ports entirely, in which case a downstream port on
-+ * a switch may become the root of the link state chain for all
-+ * its subordinate endpoints.
- */
- if (pci_pcie_type(pdev) == PCI_EXP_TYPE_ROOT_PORT ||
-- pci_pcie_type(pdev) == PCI_EXP_TYPE_PCIE_BRIDGE) {
-+ pci_pcie_type(pdev) == PCI_EXP_TYPE_PCIE_BRIDGE ||
-+ !pdev->bus->parent->self) {
- link->root = link;
- } else {
- struct pcie_link_state *parent;
diff --git a/RFC-audit-fix-a-race-condition-with-the-auditd-tracking-code.patch b/RFC-audit-fix-a-race-condition-with-the-auditd-tracking-code.patch
deleted file mode 100644
index d79fd256f..000000000
--- a/RFC-audit-fix-a-race-condition-with-the-auditd-tracking-code.patch
+++ /dev/null
@@ -1,156 +0,0 @@
-From patchwork Thu Jun 15 15:28:58 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [RFC] audit: fix a race condition with the auditd tracking code
-From: Paul Moore <pmoore@redhat.com>
-X-Patchwork-Id: 9789009
-Message-Id: <149754053819.11365.5047864735077505545.stgit@sifl>
-To: linux-audit@redhat.com
-Cc: Dusty Mabe <dustymabe@redhat.com>
-Date: Thu, 15 Jun 2017 11:28:58 -0400
-
-From: Paul Moore <paul@paul-moore.com>
-
-Originally reported by Adam and Dusty, it appears we have a small
-race window in kauditd_thread(), as documented in the Fedora BZ:
-
- * https://bugzilla.redhat.com/show_bug.cgi?id=1459326#c35
-
- "This issue is partly due to the read-copy nature of RCU, and
- partly due to how we sync the auditd_connection state across
- kauditd_thread and the audit control channel. The kauditd_thread
- thread is always running so it can service the record queues and
- emit the multicast messages, if it happens to be just past the
- "main_queue" label, but before the "if (sk == NULL || ...)"
- if-statement which calls auditd_reset() when the new auditd
- connection is registered it could end up resetting the auditd
- connection, regardless of if it is valid or not. This is a rather
- small window and the variable nature of multi-core scheduling
- explains why this is proving rather difficult to reproduce."
-
-The fix is to have functions only call auditd_reset() when they
-believe that the kernel/auditd connection is still valid, e.g.
-non-NULL, and to have these callers pass their local copy of the
-auditd_connection pointer to auditd_reset() where it can be compared
-with the current connection state before resetting. If the caller
-has a stale state tracking pointer then the reset is ignored.
-
-We also make a small change to kauditd_thread() so that if the
-kernel/auditd connection is dead we skip the retry queue and send the
-records straight to the hold queue. This is necessary as we used to
-rely on auditd_reset() to occasionally purge the retry queue but we
-are going to be calling the reset function much less now and we want
-to make sure the retry queue doesn't grow unbounded.
-
-Reported-by: Adam Williamson <awilliam@redhat.com>
-Reported-by: Dusty Mabe <dustymabe@redhat.com>
-Signed-off-by: Paul Moore <paul@paul-moore.com>
-Reviewed-by: Richard Guy Briggs <rgb@redhat.com>
----
- kernel/audit.c | 36 +++++++++++++++++++++++-------------
- 1 file changed, 23 insertions(+), 13 deletions(-)
-
-
---
-Linux-audit mailing list
-Linux-audit@redhat.com
-https://www.redhat.com/mailman/listinfo/linux-audit
-
-diff --git a/kernel/audit.c b/kernel/audit.c
-index b2e877100242..e1e2b3abfb93 100644
---- a/kernel/audit.c
-+++ b/kernel/audit.c
-@@ -575,12 +575,16 @@ static void kauditd_retry_skb(struct sk_buff *skb)
-
- /**
- * auditd_reset - Disconnect the auditd connection
-+ * @ac: auditd connection state
- *
- * Description:
- * Break the auditd/kauditd connection and move all the queued records into the
-- * hold queue in case auditd reconnects.
-+ * hold queue in case auditd reconnects. It is important to note that the @ac
-+ * pointer should never be dereferenced inside this function as it may be NULL
-+ * or invalid, you can only compare the memory address! If @ac is NULL then
-+ * the connection will always be reset.
- */
--static void auditd_reset(void)
-+static void auditd_reset(const struct auditd_connection *ac)
- {
- unsigned long flags;
- struct sk_buff *skb;
-@@ -590,6 +594,11 @@ static void auditd_reset(void)
- spin_lock_irqsave(&auditd_conn_lock, flags);
- ac_old = rcu_dereference_protected(auditd_conn,
- lockdep_is_held(&auditd_conn_lock));
-+ if (ac && ac != ac_old) {
-+ /* someone already registered a new auditd connection */
-+ spin_unlock_irqrestore(&auditd_conn_lock, flags);
-+ return;
-+ }
- rcu_assign_pointer(auditd_conn, NULL);
- spin_unlock_irqrestore(&auditd_conn_lock, flags);
-
-@@ -649,8 +658,8 @@ static int auditd_send_unicast_skb(struct sk_buff *skb)
- return rc;
-
- err:
-- if (rc == -ECONNREFUSED)
-- auditd_reset();
-+ if (ac && rc == -ECONNREFUSED)
-+ auditd_reset(ac);
- return rc;
- }
-
-@@ -795,9 +804,9 @@ static int kauditd_thread(void *dummy)
- rc = kauditd_send_queue(sk, portid,
- &audit_hold_queue, UNICAST_RETRIES,
- NULL, kauditd_rehold_skb);
-- if (rc < 0) {
-+ if (ac && rc < 0) {
- sk = NULL;
-- auditd_reset();
-+ auditd_reset(ac);
- goto main_queue;
- }
-
-@@ -805,9 +814,9 @@ static int kauditd_thread(void *dummy)
- rc = kauditd_send_queue(sk, portid,
- &audit_retry_queue, UNICAST_RETRIES,
- NULL, kauditd_hold_skb);
-- if (rc < 0) {
-+ if (ac && rc < 0) {
- sk = NULL;
-- auditd_reset();
-+ auditd_reset(ac);
- goto main_queue;
- }
-
-@@ -815,12 +824,13 @@ static int kauditd_thread(void *dummy)
- /* process the main queue - do the multicast send and attempt
- * unicast, dump failed record sends to the retry queue; if
- * sk == NULL due to previous failures we will just do the
-- * multicast send and move the record to the retry queue */
-+ * multicast send and move the record to the hold queue */
- rc = kauditd_send_queue(sk, portid, &audit_queue, 1,
- kauditd_send_multicast_skb,
-- kauditd_retry_skb);
-- if (sk == NULL || rc < 0)
-- auditd_reset();
-+ (sk ?
-+ kauditd_retry_skb : kauditd_hold_skb));
-+ if (ac && rc < 0)
-+ auditd_reset(ac);
- sk = NULL;
-
- /* drop our netns reference, no auditd sends past this line */
-@@ -1230,7 +1240,7 @@ static int audit_receive_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
- auditd_pid, 1);
-
- /* unregister the auditd connection */
-- auditd_reset();
-+ auditd_reset(NULL);
- }
- }
- if (s.mask & AUDIT_STATUS_RATE_LIMIT) {
diff --git a/USB-ulpi-fix-bus-node-lookup.patch b/USB-ulpi-fix-bus-node-lookup.patch
deleted file mode 100644
index 835cf2ab6..000000000
--- a/USB-ulpi-fix-bus-node-lookup.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From patchwork Sat Nov 11 15:31:18 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: USB: ulpi: fix bus-node lookup
-From: Johan Hovold <johan@kernel.org>
-X-Patchwork-Id: 10054387
-Message-Id: <20171111153118.16038-1-johan@kernel.org>
-To: Heikki Krogerus <heikki.krogerus@linux.intel.com>
-Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
- linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org,
- linux-arm-msm@vger.kernel.org, Rob Clark <robdclark@gmail.com>,
- Peter Robinson <pbrobinson@gmail.com>, Johan Hovold <johan@kernel.org>,
- stable <stable@vger.kernel.org>
-Date: Sat, 11 Nov 2017 16:31:18 +0100
-
-Fix bus-node lookup during registration, which ended up searching the whole
-device tree depth-first starting at the parent (or grand parent) rather
-than just matching on its children.
-
-To make things worse, the parent (or grand-parent) node could end being
-prematurely freed as well.
-
-Fixes: ef6a7bcfb01c ("usb: ulpi: Support device discovery via DT")
-Reported-by: Peter Robinson <pbrobinson@gmail.com>
-Reported-by: Stephen Boyd <sboyd@codeaurora.org>
-Cc: stable <stable@vger.kernel.org> # 4.10
-Signed-off-by: Johan Hovold <johan@kernel.org>
----
- drivers/usb/common/ulpi.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/usb/common/ulpi.c b/drivers/usb/common/ulpi.c
-index 8b351444cc40..9a2ab6751a23 100644
---- a/drivers/usb/common/ulpi.c
-+++ b/drivers/usb/common/ulpi.c
-@@ -180,9 +180,9 @@ static int ulpi_of_register(struct ulpi *ulpi)
- /* Find a ulpi bus underneath the parent or the grandparent */
- parent = ulpi->dev.parent;
- if (parent->of_node)
-- np = of_find_node_by_name(parent->of_node, "ulpi");
-+ np = of_get_child_by_name(parent->of_node, "ulpi");
- else if (parent->parent && parent->parent->of_node)
-- np = of_find_node_by_name(parent->parent->of_node, "ulpi");
-+ np = of_get_child_by_name(parent->parent->of_node, "ulpi");
- if (!np)
- return 0;
-
diff --git a/allwinner-net-emac.patch b/allwinner-net-emac.patch
deleted file mode 100644
index 6d4f11d90..000000000
--- a/allwinner-net-emac.patch
+++ /dev/null
@@ -1,1791 +0,0 @@
-From 1b28a544627ddce094091946f06f99bc41d0098f Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 24 Oct 2017 19:57:12 +0200
-Subject: [PATCH 01/11] net: stmmac: snps, dwmac-mdio MDIOs are automatically
- registered
-
-stmmac bindings docs said that its mdio node must have
-compatible = "snps,dwmac-mdio";
-Since dwmac-sun8i does not have any good reasons to not doing it, all
-their MDIO node must have it.
-
-Since these compatible is automatically registered, dwmac-sun8i compatible
-does not need to be in need_mdio_ids.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-index 6383695004a5..645ef949705f 100644
---- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
-@@ -318,10 +318,6 @@ static int stmmac_dt_phy(struct plat_stmmacenet_data *plat,
- bool mdio = true;
- static const struct of_device_id need_mdio_ids[] = {
- { .compatible = "snps,dwc-qos-ethernet-4.10" },
-- { .compatible = "allwinner,sun8i-a83t-emac" },
-- { .compatible = "allwinner,sun8i-h3-emac" },
-- { .compatible = "allwinner,sun8i-v3s-emac" },
-- { .compatible = "allwinner,sun50i-a64-emac" },
- {},
- };
-
---
-2.14.3
-
-From 9a5b1d9a7614b022512744896d889e76f687e90a Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 24 Oct 2017 19:57:13 +0200
-Subject: [PATCH 02/11] net: stmmac: dwmac-sun8i: Handle integrated/external
- MDIOs
-
-The Allwinner H3 SoC have two distinct MDIO bus, only one could be
-active at the same time.
-The selection of the active MDIO bus are done via some bits in the EMAC
-register of the system controller.
-
-This patch implement this MDIO switch via a custom MDIO-mux.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Reviewed-by: Andrew Lunn <andrew@lunn.ch>
----
- drivers/net/ethernet/stmicro/stmmac/Kconfig | 1 +
- drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 353 ++++++++++++++--------
- 2 files changed, 224 insertions(+), 130 deletions(-)
-
-diff --git a/drivers/net/ethernet/stmicro/stmmac/Kconfig b/drivers/net/ethernet/stmicro/stmmac/Kconfig
-index 97035766c291..e28c0d2c58e9 100644
---- a/drivers/net/ethernet/stmicro/stmmac/Kconfig
-+++ b/drivers/net/ethernet/stmicro/stmmac/Kconfig
-@@ -159,6 +159,7 @@ config DWMAC_SUN8I
- tristate "Allwinner sun8i GMAC support"
- default ARCH_SUNXI
- depends on OF && (ARCH_SUNXI || COMPILE_TEST)
-+ select MDIO_BUS_MUX
- ---help---
- Support for Allwinner H3 A83T A64 EMAC ethernet controllers.
-
-diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-index 39c2122a4f26..b3eb344bb158 100644
---- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-@@ -17,6 +17,7 @@
- #include <linux/clk.h>
- #include <linux/io.h>
- #include <linux/iopoll.h>
-+#include <linux/mdio-mux.h>
- #include <linux/mfd/syscon.h>
- #include <linux/module.h>
- #include <linux/of_device.h>
-@@ -41,14 +42,14 @@
- * This value is used for disabling properly EMAC
- * and used as a good starting value in case of the
- * boot process(uboot) leave some stuff.
-- * @internal_phy: Does the MAC embed an internal PHY
-+ * @soc_has_internal_phy: Does the MAC embed an internal PHY
- * @support_mii: Does the MAC handle MII
- * @support_rmii: Does the MAC handle RMII
- * @support_rgmii: Does the MAC handle RGMII
- */
- struct emac_variant {
- u32 default_syscon_value;
-- int internal_phy;
-+ bool soc_has_internal_phy;
- bool support_mii;
- bool support_rmii;
- bool support_rgmii;
-@@ -61,7 +62,8 @@ struct emac_variant {
- * @rst_ephy: reference to the optional EPHY reset for the internal PHY
- * @variant: reference to the current board variant
- * @regmap: regmap for using the syscon
-- * @use_internal_phy: Does the current PHY choice imply using the internal PHY
-+ * @internal_phy_powered: Does the internal PHY is enabled
-+ * @mux_handle: Internal pointer used by mdio-mux lib
- */
- struct sunxi_priv_data {
- struct clk *tx_clk;
-@@ -70,12 +72,13 @@ struct sunxi_priv_data {
- struct reset_control *rst_ephy;
- const struct emac_variant *variant;
- struct regmap *regmap;
-- bool use_internal_phy;
-+ bool internal_phy_powered;
-+ void *mux_handle;
- };
-
- static const struct emac_variant emac_variant_h3 = {
- .default_syscon_value = 0x58000,
-- .internal_phy = PHY_INTERFACE_MODE_MII,
-+ .soc_has_internal_phy = true,
- .support_mii = true,
- .support_rmii = true,
- .support_rgmii = true
-@@ -83,20 +86,20 @@ static const struct emac_variant emac_variant_h3 = {
-
- static const struct emac_variant emac_variant_v3s = {
- .default_syscon_value = 0x38000,
-- .internal_phy = PHY_INTERFACE_MODE_MII,
-+ .soc_has_internal_phy = true,
- .support_mii = true
- };
-
- static const struct emac_variant emac_variant_a83t = {
- .default_syscon_value = 0,
-- .internal_phy = 0,
-+ .soc_has_internal_phy = false,
- .support_mii = true,
- .support_rgmii = true
- };
-
- static const struct emac_variant emac_variant_a64 = {
- .default_syscon_value = 0,
-- .internal_phy = 0,
-+ .soc_has_internal_phy = false,
- .support_mii = true,
- .support_rmii = true,
- .support_rgmii = true
-@@ -195,6 +198,9 @@ static const struct emac_variant emac_variant_a64 = {
- #define H3_EPHY_LED_POL BIT(17) /* 1: active low, 0: active high */
- #define H3_EPHY_SHUTDOWN BIT(16) /* 1: shutdown, 0: power up */
- #define H3_EPHY_SELECT BIT(15) /* 1: internal PHY, 0: external PHY */
-+#define H3_EPHY_MUX_MASK (H3_EPHY_SHUTDOWN | H3_EPHY_SELECT)
-+#define DWMAC_SUN8I_MDIO_MUX_INTERNAL_ID 1
-+#define DWMAC_SUN8I_MDIO_MUX_EXTERNAL_ID 2
-
- /* H3/A64 specific bits */
- #define SYSCON_RMII_EN BIT(13) /* 1: enable RMII (overrides EPIT) */
-@@ -634,6 +640,159 @@ static int sun8i_dwmac_reset(struct stmmac_priv *priv)
- return 0;
- }
-
-+/* Search in mdio-mux node for internal PHY node and get its clk/reset */
-+static int get_ephy_nodes(struct stmmac_priv *priv)
-+{
-+ struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-+ struct device_node *mdio_mux, *iphynode;
-+ struct device_node *mdio_internal;
-+ int ret;
-+
-+ mdio_mux = of_get_child_by_name(priv->device->of_node, "mdio-mux");
-+ if (!mdio_mux) {
-+ dev_err(priv->device, "Cannot get mdio-mux node\n");
-+ return -ENODEV;
-+ }
-+
-+ mdio_internal = of_find_compatible_node(mdio_mux, NULL,
-+ "allwinner,sun8i-h3-mdio-internal");
-+ if (!mdio_internal) {
-+ dev_err(priv->device, "Cannot get internal_mdio node\n");
-+ return -ENODEV;
-+ }
-+
-+ /* Seek for internal PHY */
-+ for_each_child_of_node(mdio_internal, iphynode) {
-+ gmac->ephy_clk = of_clk_get(iphynode, 0);
-+ if (IS_ERR(gmac->ephy_clk))
-+ continue;
-+ gmac->rst_ephy = of_reset_control_get_exclusive(iphynode, NULL);
-+ if (IS_ERR(gmac->rst_ephy)) {
-+ ret = PTR_ERR(gmac->rst_ephy);
-+ if (ret == -EPROBE_DEFER)
-+ return ret;
-+ continue;
-+ }
-+ dev_info(priv->device, "Found internal PHY node\n");
-+ return 0;
-+ }
-+ return -ENODEV;
-+}
-+
-+static int sun8i_dwmac_power_internal_phy(struct stmmac_priv *priv)
-+{
-+ struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-+ int ret;
-+
-+ if (gmac->internal_phy_powered) {
-+ dev_warn(priv->device, "Internal PHY already powered\n");
-+ return 0;
-+ }
-+
-+ dev_info(priv->device, "Powering internal PHY\n");
-+ ret = clk_prepare_enable(gmac->ephy_clk);
-+ if (ret) {
-+ dev_err(priv->device, "Cannot enable internal PHY\n");
-+ return ret;
-+ }
-+
-+ /* Make sure the EPHY is properly reseted, as U-Boot may leave
-+ * it at deasserted state, and thus it may fail to reset EMAC.
-+ */
-+ reset_control_assert(gmac->rst_ephy);
-+
-+ ret = reset_control_deassert(gmac->rst_ephy);
-+ if (ret) {
-+ dev_err(priv->device, "Cannot deassert internal phy\n");
-+ clk_disable_unprepare(gmac->ephy_clk);
-+ return ret;
-+ }
-+
-+ gmac->internal_phy_powered = true;
-+
-+ return 0;
-+}
-+
-+static int sun8i_dwmac_unpower_internal_phy(struct sunxi_priv_data *gmac)
-+{
-+ if (!gmac->internal_phy_powered)
-+ return 0;
-+
-+ clk_disable_unprepare(gmac->ephy_clk);
-+ reset_control_assert(gmac->rst_ephy);
-+ gmac->internal_phy_powered = false;
-+ return 0;
-+}
-+
-+/* MDIO multiplexing switch function
-+ * This function is called by the mdio-mux layer when it thinks the mdio bus
-+ * multiplexer needs to switch.
-+ * 'current_child' is the current value of the mux register
-+ * 'desired_child' is the value of the 'reg' property of the target child MDIO
-+ * node.
-+ * The first time this function is called, current_child == -1.
-+ * If current_child == desired_child, then the mux is already set to the
-+ * correct bus.
-+ */
-+static int mdio_mux_syscon_switch_fn(int current_child, int desired_child,
-+ void *data)
-+{
-+ struct stmmac_priv *priv = data;
-+ struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-+ u32 reg, val;
-+ int ret = 0;
-+ bool need_power_ephy = false;
-+
-+ if (current_child ^ desired_child) {
-+ regmap_read(gmac->regmap, SYSCON_EMAC_REG, &reg);
-+ switch (desired_child) {
-+ case DWMAC_SUN8I_MDIO_MUX_INTERNAL_ID:
-+ dev_info(priv->device, "Switch mux to internal PHY");
-+ val = (reg & ~H3_EPHY_MUX_MASK) | H3_EPHY_SELECT;
-+
-+ need_power_ephy = true;
-+ break;
-+ case DWMAC_SUN8I_MDIO_MUX_EXTERNAL_ID:
-+ dev_info(priv->device, "Switch mux to external PHY");
-+ val = (reg & ~H3_EPHY_MUX_MASK) | H3_EPHY_SHUTDOWN;
-+ need_power_ephy = false;
-+ break;
-+ default:
-+ dev_err(priv->device, "Invalid child ID %x\n",
-+ desired_child);
-+ return -EINVAL;
-+ }
-+ regmap_write(gmac->regmap, SYSCON_EMAC_REG, val);
-+ if (need_power_ephy) {
-+ ret = sun8i_dwmac_power_internal_phy(priv);
-+ if (ret)
-+ return ret;
-+ } else {
-+ sun8i_dwmac_unpower_internal_phy(gmac);
-+ }
-+ /* After changing syscon value, the MAC need reset or it will
-+ * use the last value (and so the last PHY set).
-+ */
-+ ret = sun8i_dwmac_reset(priv);
-+ }
-+ return ret;
-+}
-+
-+static int sun8i_dwmac_register_mdio_mux(struct stmmac_priv *priv)
-+{
-+ int ret;
-+ struct device_node *mdio_mux;
-+ struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-+
-+ mdio_mux = of_get_child_by_name(priv->device->of_node, "mdio-mux");
-+ if (!mdio_mux)
-+ return -ENODEV;
-+
-+ ret = mdio_mux_init(priv->device, mdio_mux, mdio_mux_syscon_switch_fn,
-+ &gmac->mux_handle, priv, priv->mii);
-+ return ret;
-+}
-+
- static int sun8i_dwmac_set_syscon(struct stmmac_priv *priv)
- {
- struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-@@ -648,35 +807,25 @@ static int sun8i_dwmac_set_syscon(struct stmmac_priv *priv)
- "Current syscon value is not the default %x (expect %x)\n",
- val, reg);
-
-- if (gmac->variant->internal_phy) {
-- if (!gmac->use_internal_phy) {
-- /* switch to external PHY interface */
-- reg &= ~H3_EPHY_SELECT;
-- } else {
-- reg |= H3_EPHY_SELECT;
-- reg &= ~H3_EPHY_SHUTDOWN;
-- dev_dbg(priv->device, "Select internal_phy %x\n", reg);
--
-- if (of_property_read_bool(priv->plat->phy_node,
-- "allwinner,leds-active-low"))
-- reg |= H3_EPHY_LED_POL;
-- else
-- reg &= ~H3_EPHY_LED_POL;
--
-- /* Force EPHY xtal frequency to 24MHz. */
-- reg |= H3_EPHY_CLK_SEL;
--
-- ret = of_mdio_parse_addr(priv->device,
-- priv->plat->phy_node);
-- if (ret < 0) {
-- dev_err(priv->device, "Could not parse MDIO addr\n");
-- return ret;
-- }
-- /* of_mdio_parse_addr returns a valid (0 ~ 31) PHY
-- * address. No need to mask it again.
-- */
-- reg |= ret << H3_EPHY_ADDR_SHIFT;
-+ if (gmac->variant->soc_has_internal_phy) {
-+ if (of_property_read_bool(priv->plat->phy_node,
-+ "allwinner,leds-active-low"))
-+ reg |= H3_EPHY_LED_POL;
-+ else
-+ reg &= ~H3_EPHY_LED_POL;
-+
-+ /* Force EPHY xtal frequency to 24MHz. */
-+ reg |= H3_EPHY_CLK_SEL;
-+
-+ ret = of_mdio_parse_addr(priv->device, priv->plat->phy_node);
-+ if (ret < 0) {
-+ dev_err(priv->device, "Could not parse MDIO addr\n");
-+ return ret;
- }
-+ /* of_mdio_parse_addr returns a valid (0 ~ 31) PHY
-+ * address. No need to mask it again.
-+ */
-+ reg |= 1 << H3_EPHY_ADDR_SHIFT;
- }
-
- if (!of_property_read_u32(node, "allwinner,tx-delay-ps", &val)) {
-@@ -746,81 +895,21 @@ static void sun8i_dwmac_unset_syscon(struct sunxi_priv_data *gmac)
- regmap_write(gmac->regmap, SYSCON_EMAC_REG, reg);
- }
-
--static int sun8i_dwmac_power_internal_phy(struct stmmac_priv *priv)
-+static void sun8i_dwmac_exit(struct platform_device *pdev, void *priv)
- {
-- struct sunxi_priv_data *gmac = priv->plat->bsp_priv;
-- int ret;
--
-- if (!gmac->use_internal_phy)
-- return 0;
--
-- ret = clk_prepare_enable(gmac->ephy_clk);
-- if (ret) {
-- dev_err(priv->device, "Cannot enable ephy\n");
-- return ret;
-- }
--
-- /* Make sure the EPHY is properly reseted, as U-Boot may leave
-- * it at deasserted state, and thus it may fail to reset EMAC.
-- */
-- reset_control_assert(gmac->rst_ephy);
-+ struct sunxi_priv_data *gmac = priv;
-
-- ret = reset_control_deassert(gmac->rst_ephy);
-- if (ret) {
-- dev_err(priv->device, "Cannot deassert ephy\n");
-- clk_disable_unprepare(gmac->ephy_clk);
-- return ret;
-+ if (gmac->variant->soc_has_internal_phy) {
-+ /* sun8i_dwmac_exit could be called with mdiomux uninit */
-+ if (gmac->mux_handle)
-+ mdio_mux_uninit(gmac->mux_handle);
-+ if (gmac->internal_phy_powered)
-+ sun8i_dwmac_unpower_internal_phy(gmac);
- }
-
-- return 0;
--}
--
--static int sun8i_dwmac_unpower_internal_phy(struct sunxi_priv_data *gmac)
--{
-- if (!gmac->use_internal_phy)
-- return 0;
--
-- clk_disable_unprepare(gmac->ephy_clk);
-- reset_control_assert(gmac->rst_ephy);
-- return 0;
--}
--
--/* sun8i_power_phy() - Activate the PHY:
-- * In case of error, no need to call sun8i_unpower_phy(),
-- * it will be called anyway by sun8i_dwmac_exit()
-- */
--static int sun8i_power_phy(struct stmmac_priv *priv)
--{
-- int ret;
--
-- ret = sun8i_dwmac_power_internal_phy(priv);
-- if (ret)
-- return ret;
--
-- ret = sun8i_dwmac_set_syscon(priv);
-- if (ret)
-- return ret;
--
-- /* After changing syscon value, the MAC need reset or it will use
-- * the last value (and so the last PHY set.
-- */
-- ret = sun8i_dwmac_reset(priv);
-- if (ret)
-- return ret;
-- return 0;
--}
--
--static void sun8i_unpower_phy(struct sunxi_priv_data *gmac)
--{
- sun8i_dwmac_unset_syscon(gmac);
-- sun8i_dwmac_unpower_internal_phy(gmac);
--}
--
--static void sun8i_dwmac_exit(struct platform_device *pdev, void *priv)
--{
-- struct sunxi_priv_data *gmac = priv;
-
-- sun8i_unpower_phy(gmac);
-+ reset_control_put(gmac->rst_ephy);
-
- clk_disable_unprepare(gmac->tx_clk);
-
-@@ -849,7 +938,7 @@ static struct mac_device_info *sun8i_dwmac_setup(void *ppriv)
- if (!mac)
- return NULL;
-
-- ret = sun8i_power_phy(priv);
-+ ret = sun8i_dwmac_set_syscon(priv);
- if (ret)
- return NULL;
-
-@@ -889,6 +978,8 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
- struct sunxi_priv_data *gmac;
- struct device *dev = &pdev->dev;
- int ret;
-+ struct stmmac_priv *priv;
-+ struct net_device *ndev;
-
- ret = stmmac_get_platform_resources(pdev, &stmmac_res);
- if (ret)
-@@ -932,29 +1023,6 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
- }
-
- plat_dat->interface = of_get_phy_mode(dev->of_node);
-- if (plat_dat->interface == gmac->variant->internal_phy) {
-- dev_info(&pdev->dev, "Will use internal PHY\n");
-- gmac->use_internal_phy = true;
-- gmac->ephy_clk = of_clk_get(plat_dat->phy_node, 0);
-- if (IS_ERR(gmac->ephy_clk)) {
-- ret = PTR_ERR(gmac->ephy_clk);
-- dev_err(&pdev->dev, "Cannot get EPHY clock: %d\n", ret);
-- return -EINVAL;
-- }
--
-- gmac->rst_ephy = of_reset_control_get(plat_dat->phy_node, NULL);
-- if (IS_ERR(gmac->rst_ephy)) {
-- ret = PTR_ERR(gmac->rst_ephy);
-- if (ret == -EPROBE_DEFER)
-- return ret;
-- dev_err(&pdev->dev, "No EPHY reset control found %d\n",
-- ret);
-- return -EINVAL;
-- }
-- } else {
-- dev_info(&pdev->dev, "Will use external PHY\n");
-- gmac->use_internal_phy = false;
-- }
-
- /* platform data specifying hardware features and callbacks.
- * hardware features were copied from Allwinner drivers.
-@@ -973,9 +1041,34 @@ static int sun8i_dwmac_probe(struct platform_device *pdev)
-
- ret = stmmac_dvr_probe(&pdev->dev, plat_dat, &stmmac_res);
- if (ret)
-- sun8i_dwmac_exit(pdev, plat_dat->bsp_priv);
-+ goto dwmac_exit;
-+
-+ ndev = dev_get_drvdata(&pdev->dev);
-+ priv = netdev_priv(ndev);
-+ /* The mux must be registered after parent MDIO
-+ * so after stmmac_dvr_probe()
-+ */
-+ if (gmac->variant->soc_has_internal_phy) {
-+ ret = get_ephy_nodes(priv);
-+ if (ret)
-+ goto dwmac_exit;
-+ ret = sun8i_dwmac_register_mdio_mux(priv);
-+ if (ret) {
-+ dev_err(&pdev->dev, "Failed to register mux\n");
-+ goto dwmac_mux;
-+ }
-+ } else {
-+ ret = sun8i_dwmac_reset(priv);
-+ if (ret)
-+ goto dwmac_exit;
-+ }
-
- return ret;
-+dwmac_mux:
-+ sun8i_dwmac_unset_syscon(gmac);
-+dwmac_exit:
-+ sun8i_dwmac_exit(pdev, plat_dat->bsp_priv);
-+return ret;
- }
-
- static const struct of_device_id sun8i_dwmac_match[] = {
---
-2.14.3
-
-From f58f11ebb67468471ed8f232c576f348dd1a32b1 Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 24 Oct 2017 19:57:14 +0200
-Subject: [PATCH 03/11] net: stmmac: sun8i: Restore the compatibles
-
-The original dwmac-sun8i DT bindings have some issue on how to handle
-integrated PHY and was reverted in last RC of 4.13.
-But now we have a solution so we need to get back that was reverted.
-
-This patch restore compatibles about dwmac-sun8i
-This reverts commit ad4540cc5aa3 ("net: stmmac: sun8i: Remove the compatibles")
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-index b3eb344bb158..e5ff734d4f9b 100644
---- a/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-sun8i.c
-@@ -1072,6 +1072,14 @@ return ret;
- }
-
- static const struct of_device_id sun8i_dwmac_match[] = {
-+ { .compatible = "allwinner,sun8i-h3-emac",
-+ .data = &emac_variant_h3 },
-+ { .compatible = "allwinner,sun8i-v3s-emac",
-+ .data = &emac_variant_v3s },
-+ { .compatible = "allwinner,sun8i-a83t-emac",
-+ .data = &emac_variant_a83t },
-+ { .compatible = "allwinner,sun50i-a64-emac",
-+ .data = &emac_variant_a64 },
- { }
- };
- MODULE_DEVICE_TABLE(of, sun8i_dwmac_match);
---
-2.14.3
-
-From 54678636d98cd9625f342c831015e302642bf104 Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 31 Oct 2017 09:19:08 +0100
-Subject: [PATCH 04/11] dt-bindings: net: Restore sun8i dwmac binding
-
-The original dwmac-sun8i DT bindings have some issue on how to handle
-integrated PHY and was reverted in last RC of 4.13.
-But now we have a solution so we need to get back that was reverted.
-
-This patch restore dt-bindings documentation about dwmac-sun8i
-This reverts commit 8aa33ec2f481 ("dt-bindings: net: Revert sun8i dwmac binding")
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Rob Herring <robh@kernel.org>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
----
- .../devicetree/bindings/net/dwmac-sun8i.txt | 84 ++++++++++++++++++++++
- 1 file changed, 84 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-
-diff --git a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-new file mode 100644
-index 000000000000..725f3b187886
---- /dev/null
-+++ b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-@@ -0,0 +1,84 @@
-+* Allwinner sun8i GMAC ethernet controller
-+
-+This device is a platform glue layer for stmmac.
-+Please see stmmac.txt for the other unchanged properties.
-+
-+Required properties:
-+- compatible: should be one of the following string:
-+ "allwinner,sun8i-a83t-emac"
-+ "allwinner,sun8i-h3-emac"
-+ "allwinner,sun8i-v3s-emac"
-+ "allwinner,sun50i-a64-emac"
-+- reg: address and length of the register for the device.
-+- interrupts: interrupt for the device
-+- interrupt-names: should be "macirq"
-+- clocks: A phandle to the reference clock for this device
-+- clock-names: should be "stmmaceth"
-+- resets: A phandle to the reset control for this device
-+- reset-names: should be "stmmaceth"
-+- phy-mode: See ethernet.txt
-+- phy-handle: See ethernet.txt
-+- #address-cells: shall be 1
-+- #size-cells: shall be 0
-+- syscon: A phandle to the syscon of the SoC with one of the following
-+ compatible string:
-+ - allwinner,sun8i-h3-system-controller
-+ - allwinner,sun8i-v3s-system-controller
-+ - allwinner,sun50i-a64-system-controller
-+ - allwinner,sun8i-a83t-system-controller
-+
-+Optional properties:
-+- allwinner,tx-delay-ps: TX clock delay chain value in ps. Range value is 0-700. Default is 0)
-+- allwinner,rx-delay-ps: RX clock delay chain value in ps. Range value is 0-3100. Default is 0)
-+Both delay properties need to be a multiple of 100. They control the delay for
-+external PHY.
-+
-+Optional properties for the following compatibles:
-+ - "allwinner,sun8i-h3-emac",
-+ - "allwinner,sun8i-v3s-emac":
-+- allwinner,leds-active-low: EPHY LEDs are active low
-+
-+Required child node of emac:
-+- mdio bus node: should be named mdio
-+
-+Required properties of the mdio node:
-+- #address-cells: shall be 1
-+- #size-cells: shall be 0
-+
-+The device node referenced by "phy" or "phy-handle" should be a child node
-+of the mdio node. See phy.txt for the generic PHY bindings.
-+
-+Required properties of the phy node with the following compatibles:
-+ - "allwinner,sun8i-h3-emac",
-+ - "allwinner,sun8i-v3s-emac":
-+- clocks: a phandle to the reference clock for the EPHY
-+- resets: a phandle to the reset control for the EPHY
-+
-+Example:
-+
-+emac: ethernet@1c0b000 {
-+ compatible = "allwinner,sun8i-h3-emac";
-+ syscon = <&syscon>;
-+ reg = <0x01c0b000 0x104>;
-+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupt-names = "macirq";
-+ resets = <&ccu RST_BUS_EMAC>;
-+ reset-names = "stmmaceth";
-+ clocks = <&ccu CLK_BUS_EMAC>;
-+ clock-names = "stmmaceth";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ mdio: mdio {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ int_mii_phy: ethernet-phy@1 {
-+ reg = <1>;
-+ clocks = <&ccu CLK_BUS_EPHY>;
-+ resets = <&ccu RST_BUS_EPHY>;
-+ };
-+ };
-+};
---
-2.14.3
-
-From 227bc8c6bfad58c32c7a6c3bbc13d99eb6d266c0 Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 31 Oct 2017 09:19:09 +0100
-Subject: [PATCH 05/11] dt-bindings: net: dwmac-sun8i: update documentation
- about integrated PHY
-
-This patch add documentation about the MDIO switch used on sun8i-h3-emac
-for integrated PHY.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
-Reviewed-by: Andrew Lunn <andrew@lunn.ch>
----
- .../devicetree/bindings/net/dwmac-sun8i.txt | 147 +++++++++++++++++++--
- 1 file changed, 135 insertions(+), 12 deletions(-)
-
-diff --git a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-index 725f3b187886..3d6d5fa0c4d5 100644
---- a/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-+++ b/Documentation/devicetree/bindings/net/dwmac-sun8i.txt
-@@ -4,18 +4,18 @@ This device is a platform glue layer for stmmac.
- Please see stmmac.txt for the other unchanged properties.
-
- Required properties:
--- compatible: should be one of the following string:
-+- compatible: must be one of the following string:
- "allwinner,sun8i-a83t-emac"
- "allwinner,sun8i-h3-emac"
- "allwinner,sun8i-v3s-emac"
- "allwinner,sun50i-a64-emac"
- - reg: address and length of the register for the device.
- - interrupts: interrupt for the device
--- interrupt-names: should be "macirq"
-+- interrupt-names: must be "macirq"
- - clocks: A phandle to the reference clock for this device
--- clock-names: should be "stmmaceth"
-+- clock-names: must be "stmmaceth"
- - resets: A phandle to the reset control for this device
--- reset-names: should be "stmmaceth"
-+- reset-names: must be "stmmaceth"
- - phy-mode: See ethernet.txt
- - phy-handle: See ethernet.txt
- - #address-cells: shall be 1
-@@ -39,23 +39,42 @@ Optional properties for the following compatibles:
- - allwinner,leds-active-low: EPHY LEDs are active low
-
- Required child node of emac:
--- mdio bus node: should be named mdio
-+- mdio bus node: should be named mdio with compatible "snps,dwmac-mdio"
-
- Required properties of the mdio node:
- - #address-cells: shall be 1
- - #size-cells: shall be 0
-
--The device node referenced by "phy" or "phy-handle" should be a child node
-+The device node referenced by "phy" or "phy-handle" must be a child node
- of the mdio node. See phy.txt for the generic PHY bindings.
-
--Required properties of the phy node with the following compatibles:
-+The following compatibles require that the emac node have a mdio-mux child
-+node called "mdio-mux":
-+ - "allwinner,sun8i-h3-emac"
-+ - "allwinner,sun8i-v3s-emac":
-+Required properties for the mdio-mux node:
-+ - compatible = "allwinner,sun8i-h3-mdio-mux"
-+ - mdio-parent-bus: a phandle to EMAC mdio
-+ - one child mdio for the integrated mdio with the compatible
-+ "allwinner,sun8i-h3-mdio-internal"
-+ - one child mdio for the external mdio if present (V3s have none)
-+Required properties for the mdio-mux children node:
-+ - reg: 1 for internal MDIO bus, 2 for external MDIO bus
-+
-+The following compatibles require a PHY node representing the integrated
-+PHY, under the integrated MDIO bus node if an mdio-mux node is used:
- - "allwinner,sun8i-h3-emac",
- - "allwinner,sun8i-v3s-emac":
-+
-+Additional information regarding generic multiplexer properties can be found
-+at Documentation/devicetree/bindings/net/mdio-mux.txt
-+
-+Required properties of the integrated phy node:
- - clocks: a phandle to the reference clock for the EPHY
- - resets: a phandle to the reset control for the EPHY
-+- Must be a child of the integrated mdio
-
--Example:
--
-+Example with integrated PHY:
- emac: ethernet@1c0b000 {
- compatible = "allwinner,sun8i-h3-emac";
- syscon = <&syscon>;
-@@ -72,13 +91,117 @@ emac: ethernet@1c0b000 {
- phy-handle = <&int_mii_phy>;
- phy-mode = "mii";
- allwinner,leds-active-low;
-+
-+ mdio: mdio {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ compatible = "snps,dwmac-mdio";
-+ };
-+
-+ mdio-mux {
-+ compatible = "mdio-mux", "allwinner,sun8i-h3-mdio-mux";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ mdio-parent-bus = <&mdio>;
-+
-+ int_mdio: mdio@1 {
-+ compatible = "allwinner,sun8i-h3-mdio-internal";
-+ reg = <1>;
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ int_mii_phy: ethernet-phy@1 {
-+ reg = <1>;
-+ clocks = <&ccu CLK_BUS_EPHY>;
-+ resets = <&ccu RST_BUS_EPHY>;
-+ phy-is-integrated;
-+ };
-+ };
-+ ext_mdio: mdio@2 {
-+ reg = <2>;
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ };
-+ };
-+};
-+
-+Example with external PHY:
-+emac: ethernet@1c0b000 {
-+ compatible = "allwinner,sun8i-h3-emac";
-+ syscon = <&syscon>;
-+ reg = <0x01c0b000 0x104>;
-+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupt-names = "macirq";
-+ resets = <&ccu RST_BUS_EMAC>;
-+ reset-names = "stmmaceth";
-+ clocks = <&ccu CLK_BUS_EMAC>;
-+ clock-names = "stmmaceth";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+ allwinner,leds-active-low;
-+
-+ mdio: mdio {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ compatible = "snps,dwmac-mdio";
-+ };
-+
-+ mdio-mux {
-+ compatible = "allwinner,sun8i-h3-mdio-mux";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ mdio-parent-bus = <&mdio>;
-+
-+ int_mdio: mdio@1 {
-+ compatible = "allwinner,sun8i-h3-mdio-internal";
-+ reg = <1>;
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ int_mii_phy: ethernet-phy@1 {
-+ reg = <1>;
-+ clocks = <&ccu CLK_BUS_EPHY>;
-+ resets = <&ccu RST_BUS_EPHY>;
-+ };
-+ };
-+ ext_mdio: mdio@2 {
-+ reg = <2>;
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ reg = <1>;
-+ };
-+ }:
-+ };
-+};
-+
-+Example with SoC without integrated PHY
-+
-+emac: ethernet@1c0b000 {
-+ compatible = "allwinner,sun8i-a83t-emac";
-+ syscon = <&syscon>;
-+ reg = <0x01c0b000 0x104>;
-+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupt-names = "macirq";
-+ resets = <&ccu RST_BUS_EMAC>;
-+ reset-names = "stmmaceth";
-+ clocks = <&ccu CLK_BUS_EMAC>;
-+ clock-names = "stmmaceth";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+
- mdio: mdio {
-+ compatible = "snps,dwmac-mdio";
- #address-cells = <1>;
- #size-cells = <0>;
-- int_mii_phy: ethernet-phy@1 {
-+ ext_rgmii_phy: ethernet-phy@1 {
- reg = <1>;
-- clocks = <&ccu CLK_BUS_EPHY>;
-- resets = <&ccu RST_BUS_EPHY>;
- };
- };
- };
---
-2.14.3
-
-From 1de79efa35a1130c7a085f62b9d9b666d79b9a89 Mon Sep 17 00:00:00 2001
-From: Peter Robinson <pbrobinson@gmail.com>
-Date: Wed, 1 Nov 2017 14:04:20 +0000
-Subject: [PATCH 06/11] arm: dts: sunxi: h3/h5: Restore EMAC changes
-
-The original dwmac-sun8i DT bindings have some issue on how to handle
-integrated PHY and was reverted in last RC of 4.13.
-But now we have a solution so we need to get back that was reverted.
-
-This patch restore sunxi-h3-h5.dtsi
-This reverts partially commit fe45174b72ae ("arm: dts: sunxi: Revert EMAC changes")
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm/boot/dts/sunxi-h3-h5.dtsi | 26 ++++++++++++++++++++++++++
- 1 file changed, 26 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-index 11240a8313c2..d38282b9e5d4 100644
---- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-@@ -391,6 +391,32 @@
- clocks = <&osc24M>;
- };
-
-+ emac: ethernet@1c30000 {
-+ compatible = "allwinner,sun8i-h3-emac";
-+ syscon = <&syscon>;
-+ reg = <0x01c30000 0x10000>;
-+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupt-names = "macirq";
-+ resets = <&ccu RST_BUS_EMAC>;
-+ reset-names = "stmmaceth";
-+ clocks = <&ccu CLK_BUS_EMAC>;
-+ clock-names = "stmmaceth";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ status = "disabled";
-+
-+ mdio: mdio {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ int_mii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ clocks = <&ccu CLK_BUS_EPHY>;
-+ resets = <&ccu RST_BUS_EPHY>;
-+ };
-+ };
-+ };
-+
- spi0: spi@01c68000 {
- compatible = "allwinner,sun8i-h3-spi";
- reg = <0x01c68000 0x1000>;
---
-2.14.3
-
-From 65233cba93184e0efa8d94f907d65af947d197a1 Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 31 Oct 2017 09:19:11 +0100
-Subject: [PATCH 07/11] ARM: dts: sunxi: h3/h5: represent the mdio switch used
- by sun8i-h3-emac
-
-Since dwmac-sun8i could use either an integrated PHY or an external PHY
-(which could be at same MDIO address), we need to represent this selection
-by a MDIO switch.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
-Reviewed-by: Andrew Lunn <andrew@lunn.ch>
----
- arch/arm/boot/dts/sunxi-h3-h5.dtsi | 31 +++++++++++++++++++++++++++----
- 1 file changed, 27 insertions(+), 4 deletions(-)
-
-diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-index d38282b9e5d4..2721b39c1875 100644
---- a/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-+++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi
-@@ -408,11 +408,34 @@
- mdio: mdio {
- #address-cells = <1>;
- #size-cells = <0>;
-- int_mii_phy: ethernet-phy@1 {
-- compatible = "ethernet-phy-ieee802.3-c22";
-+ compatible = "snps,dwmac-mdio";
-+ };
-+
-+ mdio-mux {
-+ compatible = "allwinner,sun8i-h3-mdio-mux";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ mdio-parent-bus = <&mdio>;
-+ /* Only one MDIO is usable at the time */
-+ internal_mdio: mdio@1 {
-+ compatible = "allwinner,sun8i-h3-mdio-internal";
- reg = <1>;
-- clocks = <&ccu CLK_BUS_EPHY>;
-- resets = <&ccu RST_BUS_EPHY>;
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ int_mii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ clocks = <&ccu CLK_BUS_EPHY>;
-+ resets = <&ccu RST_BUS_EPHY>;
-+ };
-+ };
-+
-+ external_mdio: mdio@2 {
-+ reg = <2>;
-+ #address-cells = <1>;
-+ #size-cells = <0>;
- };
- };
- };
---
-2.14.3
-
-From b705315d36dbe1b31062f30c987b3a502b437c85 Mon Sep 17 00:00:00 2001
-From: Peter Robinson <pbrobinson@gmail.com>
-Date: Wed, 1 Nov 2017 14:08:45 +0000
-Subject: [PATCH 08/11] ARM: dts: sunxi: Restore EMAC changes (boards)
-
-The original dwmac-sun8i DT bindings have some issue on how to handle
-integrated PHY and was reverted in last RC of 4.13.
-But now we have a solution so we need to get back that was reverted.
-
-This patch restore all boards DT about dwmac-sun8i
-This reverts partially commit fe45174b72ae ("arm: dts: sunxi: Revert EMAC changes")
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts | 9 +++++++++
- arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts | 19 +++++++++++++++++++
- arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts | 19 +++++++++++++++++++
- arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts | 7 +++++++
- arch/arm/boot/dts/sun8i-h3-orangepi-2.dts | 8 ++++++++
- arch/arm/boot/dts/sun8i-h3-orangepi-one.dts | 8 ++++++++
- arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts | 5 +++++
- arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts | 8 ++++++++
- arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts | 22 ++++++++++++++++++++++
- arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dts | 16 ++++++++++++++++
- 10 files changed, 121 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
-index b1502df7b509..6713d0f2b3f4 100644
---- a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
-+++ b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts
-@@ -56,6 +56,8 @@
-
- aliases {
- serial0 = &uart0;
-+ /* ethernet0 is the H3 emac, defined in sun8i-h3.dtsi */
-+ ethernet0 = &emac;
- ethernet1 = &xr819;
- };
-
-@@ -102,6 +104,13 @@
- status = "okay";
- };
-
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>;
-diff --git a/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts b/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts
-index a337af1de322..3f95d806355b 100644
---- a/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts
-@@ -52,6 +52,7 @@
- compatible = "sinovoip,bpi-m2-plus", "allwinner,sun8i-h3";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- serial1 = &uart1;
- };
-@@ -114,6 +115,24 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
-+&external_mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <0>;
-+ };
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
-diff --git a/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts b/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts
-index 8ddd1b2cc097..ef0371811296 100644
---- a/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts
-@@ -62,3 +62,22 @@
- &ohci2 {
- status = "okay";
- };
-+
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+
-+ allwinner,leds-active-low;
-+
-+ status = "okay";
-+};
-+
-+&external_mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <7>;
-+ };
-+};
-diff --git a/arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts b/arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts
-index 8d2cc6e9a03f..78f6c24952dd 100644
---- a/arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-nanopi-neo.dts
-@@ -46,3 +46,10 @@
- model = "FriendlyARM NanoPi NEO";
- compatible = "friendlyarm,nanopi-neo", "allwinner,sun8i-h3";
- };
-+
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts
-index 8ff71b1bb45b..17cdeae19c6f 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts
-@@ -54,6 +54,7 @@
- aliases {
- serial0 = &uart0;
- /* ethernet0 is the H3 emac, defined in sun8i-h3.dtsi */
-+ ethernet0 = &emac;
- ethernet1 = &rtl8189;
- };
-
-@@ -117,6 +118,13 @@
- status = "okay";
- };
-
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
-index 5fea430e0eb1..6880268e8b87 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts
-@@ -52,6 +52,7 @@
- compatible = "xunlong,orangepi-one", "allwinner,sun8i-h3";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -97,6 +98,13 @@
- status = "okay";
- };
-
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts
-index 8b93f5c781a7..a10281b455f5 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-pc-plus.dts
-@@ -53,6 +53,11 @@
- };
- };
-
-+&emac {
-+ /* LEDs changed to active high on the plus */
-+ /delete-property/ allwinner,leds-active-low;
-+};
-+
- &mmc1 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc1_pins_a>;
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts
-index 1a044b17d6c6..998b60f8d295 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts
-@@ -52,6 +52,7 @@
- compatible = "xunlong,orangepi-pc", "allwinner,sun8i-h3";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -113,6 +114,13 @@
- status = "okay";
- };
-
-+&emac {
-+ phy-handle = <&int_mii_phy>;
-+ phy-mode = "mii";
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts
-index 828ae7a526d9..3002c025e187 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-plus.dts
-@@ -47,6 +47,10 @@
- model = "Xunlong Orange Pi Plus / Plus 2";
- compatible = "xunlong,orangepi-plus", "allwinner,sun8i-h3";
-
-+ aliases {
-+ ethernet0 = &emac;
-+ };
-+
- reg_gmac_3v3: gmac-3v3 {
- compatible = "regulator-fixed";
- regulator-name = "gmac-3v3";
-@@ -74,6 +78,24 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+
-+ allwinner,leds-active-low;
-+ status = "okay";
-+};
-+
-+&external_mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <0>;
-+ };
-+};
-+
- &mmc2 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc2_8bit_pins>;
-diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dts
-index 97920b12a944..6dbf7b2e0c13 100644
---- a/arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-orangepi-plus2e.dts
-@@ -61,3 +61,19 @@
- gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>; /* PD6 */
- };
- };
-+
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+ status = "okay";
-+};
-+
-+&external_mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
---
-2.14.3
-
-From 516b88bfa40cf54732d2ba5e689fdf592a742ec3 Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 31 Oct 2017 09:19:13 +0100
-Subject: [PATCH 09/11] arm64: dts: allwinner: A64: Restore EMAC changes
-
-The original dwmac-sun8i DT bindings have some issue on how to handle
-integrated PHY and was reverted in last RC of 4.13.
-But now we have a solution so we need to get back that was reverted.
-
-This patch restore arm64 DT about dwmac-sun8i for A64
-This reverts commit 87e1f5e8bb4b ("arm64: dts: allwinner: Revert EMAC changes")
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
----
- .../boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 16 ++++++++++++++++
- .../boot/dts/allwinner/sun50i-a64-pine64-plus.dts | 15 +++++++++++++++
- arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 17 +++++++++++++++++
- .../dts/allwinner/sun50i-a64-sopine-baseboard.dts | 16 ++++++++++++++++
- arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 20 ++++++++++++++++++++
- 5 files changed, 84 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-index d347f52e27f6..45bdbfb96126 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-@@ -51,6 +51,7 @@
- compatible = "sinovoip,bananapi-m64", "allwinner,sun50i-a64";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- serial1 = &uart1;
- };
-@@ -69,6 +70,14 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rgmii_pins>;
-+ phy-mode = "rgmii";
-+ phy-handle = <&ext_rgmii_phy>;
-+ status = "okay";
-+};
-+
- &i2c1 {
- pinctrl-names = "default";
- pinctrl-0 = <&i2c1_pins>;
-@@ -79,6 +88,13 @@
- bias-pull-up;
- };
-
-+&mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins>;
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts
-index f82ccf332c0f..24f1aac366d6 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64-plus.dts
-@@ -48,3 +48,18 @@
-
- /* TODO: Camera, touchscreen, etc. */
- };
-+
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rgmii_pins>;
-+ phy-mode = "rgmii";
-+ phy-handle = <&ext_rgmii_phy>;
-+ status = "okay";
-+};
-+
-+&mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-index d06e34b5d192..806442d3e846 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-@@ -51,6 +51,7 @@
- compatible = "pine64,pine64", "allwinner,sun50i-a64";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- serial1 = &uart1;
- serial2 = &uart2;
-@@ -71,6 +72,15 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rmii_pins>;
-+ phy-mode = "rmii";
-+ phy-handle = <&ext_rmii_phy1>;
-+ status = "okay";
-+
-+};
-+
- &i2c1 {
- pinctrl-names = "default";
- pinctrl-0 = <&i2c1_pins>;
-@@ -81,6 +91,13 @@
- bias-pull-up;
- };
-
-+&mdio {
-+ ext_rmii_phy1: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins>;
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
-index 17ccc12b58df..0eb2acedf8c3 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
-@@ -53,6 +53,7 @@
- "allwinner,sun50i-a64";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -76,6 +77,21 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&rgmii_pins>;
-+ phy-mode = "rgmii";
-+ phy-handle = <&ext_rgmii_phy>;
-+ status = "okay";
-+};
-+
-+&mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
- &mmc2 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc2_pins>;
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-index 8c8db1b057df..50f17bab0c07 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-@@ -449,6 +449,26 @@
- #size-cells = <0>;
- };
-
-+ emac: ethernet@1c30000 {
-+ compatible = "allwinner,sun50i-a64-emac";
-+ syscon = <&syscon>;
-+ reg = <0x01c30000 0x10000>;
-+ interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
-+ interrupt-names = "macirq";
-+ resets = <&ccu RST_BUS_EMAC>;
-+ reset-names = "stmmaceth";
-+ clocks = <&ccu CLK_BUS_EMAC>;
-+ clock-names = "stmmaceth";
-+ status = "disabled";
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+
-+ mdio: mdio {
-+ #address-cells = <1>;
-+ #size-cells = <0>;
-+ };
-+ };
-+
- gic: interrupt-controller@1c81000 {
- compatible = "arm,gic-400";
- reg = <0x01c81000 0x1000>,
---
-2.14.3
-
-From 070173449eb88e9cf9c91889c77f53616911f4d0 Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 31 Oct 2017 09:19:14 +0100
-Subject: [PATCH 10/11] arm64: dts: allwinner: H5: Restore EMAC changes
-
-The original dwmac-sun8i DT bindings have some issue on how to handle
-integrated PHY and was reverted in last RC of 4.13.
-But now we have a solution so we need to get back that was reverted.
-
-This patch restore arm64 DT about dwmac-sun8i for H5
-This reverts a part of commit 87e1f5e8bb4b ("arm64: dts: allwinner: Revert EMAC changes")
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dts | 17 +++++++++++++++++
- .../arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts | 17 +++++++++++++++++
- .../boot/dts/allwinner/sun50i-h5-orangepi-prime.dts | 17 +++++++++++++++++
- 3 files changed, 51 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dts
-index 1c2387bd5df6..6eb8092d8e57 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-nanopi-neo2.dts
-@@ -50,6 +50,7 @@
- compatible = "friendlyarm,nanopi-neo2", "allwinner,sun50i-h5";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -108,6 +109,22 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+ status = "okay";
-+};
-+
-+&external_mdio {
-+ ext_rgmii_phy: ethernet-phy@7 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <7>;
-+ };
-+};
-+
- &mmc0 {
- pinctrl-names = "default";
- pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
-index 4f77c8470f6c..a0ca925175aa 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-pc2.dts
-@@ -59,6 +59,7 @@
- };
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -136,6 +137,22 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+ status = "okay";
-+};
-+
-+&external_mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dts b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dts
-index 6be06873e5af..b47790650144 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-h5-orangepi-prime.dts
-@@ -54,6 +54,7 @@
- compatible = "xunlong,orangepi-prime", "allwinner,sun50i-h5";
-
- aliases {
-+ ethernet0 = &emac;
- serial0 = &uart0;
- };
-
-@@ -143,6 +144,22 @@
- status = "okay";
- };
-
-+&emac {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emac_rgmii_pins>;
-+ phy-supply = <&reg_gmac_3v3>;
-+ phy-handle = <&ext_rgmii_phy>;
-+ phy-mode = "rgmii";
-+ status = "okay";
-+};
-+
-+&external_mdio {
-+ ext_rgmii_phy: ethernet-phy@1 {
-+ compatible = "ethernet-phy-ieee802.3-c22";
-+ reg = <1>;
-+ };
-+};
-+
- &ir {
- pinctrl-names = "default";
- pinctrl-0 = <&ir_pins_a>;
---
-2.14.3
-
-From 63118a9f7808a0a67c23e7d276138c996e094eae Mon Sep 17 00:00:00 2001
-From: Corentin LABBE <clabbe.montjoie@gmail.com>
-Date: Tue, 31 Oct 2017 09:19:15 +0100
-Subject: [PATCH 11/11] arm64: dts: allwinner: add snps, dwmac-mdio compatible
- to emac/mdio
-
-stmmac bindings docs said that its mdio node must have
-compatible = "snps,dwmac-mdio";
-Since dwmac-sun8i does not have any good reasons to not doing it, all
-their MDIO node must have it.
-
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
-Acked-by: Florian Fainelli <f.fainelli@gmail.com>
----
- arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-index 50f17bab0c07..8fd75c95937a 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
-@@ -464,6 +464,7 @@
- #size-cells = <0>;
-
- mdio: mdio {
-+ compatible = "snps,dwmac-mdio";
- #address-cells = <1>;
- #size-cells = <0>;
- };
---
-2.14.3
-
-From patchwork Fri Nov 10 09:26:54 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: arm64: allwinner: a64: add Ethernet PHY regulator for several boards
-From: Icenowy Zheng <icenowy@aosc.io>
-X-Patchwork-Id: 10052659
-Message-Id: <20171110092654.10746-1-icenowy@aosc.io>
-To: Maxime Ripard <maxime.ripard@free-electrons.com>,
- Chen-Yu Tsai <wens@csie.org>
-Cc: linux-sunxi@googlegroups.com, linux-kernel@vger.kernel.org,
- linux-arm-kernel@lists.infradead.org, Icenowy Zheng <icenowy@aosc.io>
-Date: Fri, 10 Nov 2017 17:26:54 +0800
-
-On several A64 boards the Ethernet PHY is powered by the DC1SW regulator
-on the AXP803 PMIC.
-
-Add phy-handle property to these boards' emac node.
-
-Signed-off-by: Icenowy Zheng <icenowy@aosc.io>
-Acked-by: Corentin LABBE <clabbe.montjoie@gmail.com>
-Tested-by: Corentin LABBE <clabbe.montjoie@gmail.com>
----
- arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts | 1 +
- arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts | 1 +
- arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts | 1 +
- 3 files changed, 3 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-index 45bdbfb96126..4a8d3f83a36e 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-bananapi-m64.dts
-@@ -75,6 +75,7 @@
- pinctrl-0 = <&rgmii_pins>;
- phy-mode = "rgmii";
- phy-handle = <&ext_rgmii_phy>;
-+ phy-supply = <&reg_dc1sw>;
- status = "okay";
- };
-
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-index 806442d3e846..604cdaedac38 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-pine64.dts
-@@ -77,6 +77,7 @@
- pinctrl-0 = <&rmii_pins>;
- phy-mode = "rmii";
- phy-handle = <&ext_rmii_phy1>;
-+ phy-supply = <&reg_dc1sw>;
- status = "okay";
-
- };
-diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
-index 0eb2acedf8c3..a053a6ac5267 100644
---- a/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
-+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64-sopine-baseboard.dts
-@@ -82,6 +82,7 @@
- pinctrl-0 = <&rgmii_pins>;
- phy-mode = "rgmii";
- phy-handle = <&ext_rgmii_phy>;
-+ phy-supply = <&reg_dc1sw>;
- status = "okay";
- };
-
-From 79e7d6c8bfe67fce8c8fe4953e74ce7f420dd732 Mon Sep 17 00:00:00 2001
-From: Peter Robinson <pbrobinson@gmail.com>
-Date: Tue, 21 Nov 2017 15:43:19 +0000
-Subject: [PATCH] ARM: dts: sunxi: sun8i-h3-nanopi-m1-plus: Add missing
- regulator
-
-This patch add the missing regulator for sun8i-h3-nanopi-m1-plus.
-
-Fixes: ("ARM: dts: sunxi: Restore EMAC changes (boards)")
-Signed-off-by: Corentin Labbe <clabbe.montjoie@gmail.com>
----
- arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts | 11 +++++++++++
- 1 file changed, 11 insertions(+)
-
-diff --git a/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts b/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts
-index ef0371811296..738ef1d9e844 100644
---- a/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts
-+++ b/arch/arm/boot/dts/sun8i-h3-nanopi-m1-plus.dts
-@@ -45,6 +45,17 @@
- / {
- model = "FriendlyArm NanoPi M1 Plus";
- compatible = "friendlyarm,nanopi-m1-plus", "allwinner,sun8i-h3";
-+
-+ reg_gmac_3v3: gmac-3v3 {
-+ compatible = "regulator-fixed";
-+ regulator-name = "gmac-3v3";
-+ regulator-min-microvolt = <3300000>;
-+ regulator-max-microvolt = <3300000>;
-+ startup-delay-us = <100000>;
-+ enable-active-high;
-+ gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>;
-+ };
-+
- };
-
- &ehci1 {
---
-2.14.3
-
diff --git a/arm-dts-boneblack-wireless-add-WL1835-Bluetooth-device-node.patch b/arm-dts-boneblack-wireless-add-WL1835-Bluetooth-device-node.patch
deleted file mode 100644
index b4c945697..000000000
--- a/arm-dts-boneblack-wireless-add-WL1835-Bluetooth-device-node.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From patchwork Mon May 22 14:51:38 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: arm: dts: boneblack-wireless: add WL1835 Bluetooth device node
-From: Ricardo Salveti <ricardo.salveti@linaro.org>
-X-Patchwork-Id: 9740719
-Message-Id: <1495464701-12046-1-git-send-email-ricardo.salveti@linaro.org>
-To: linux-omap@vger.kernel.org
-Cc: Mark Rutland <mark.rutland@arm.com>,
- Ricardo Salveti <ricardo.salveti@linaro.org>, devicetree@vger.kernel.org,
- Tony Lindgren <tony@atomide.com>, Russell King <linux@armlinux.org.uk>,
- linux-kernel@vger.kernel.org, Rob Herring <robh+dt@kernel.org>,
- =?UTF-8?q?Beno=C3=AEt=20Cousson?= <bcousson@baylibre.com>,
- robertcnelson@gmail.com, linux-arm-kernel@lists.infradead.org
-Date: Mon, 22 May 2017 11:51:38 -0300
-
-This adds the serial slave device for the WL1835 Bluetooth interface.
-
-Signed-off-by: Ricardo Salveti <ricardo.salveti@linaro.org>
----
- arch/arm/boot/dts/am335x-boneblack-wireless.dts | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/arch/arm/boot/dts/am335x-boneblack-wireless.dts b/arch/arm/boot/dts/am335x-boneblack-wireless.dts
-index 105bd10..83f49f6 100644
---- a/arch/arm/boot/dts/am335x-boneblack-wireless.dts
-+++ b/arch/arm/boot/dts/am335x-boneblack-wireless.dts
-@@ -97,6 +97,11 @@
- pinctrl-names = "default";
- pinctrl-0 = <&uart3_pins &bt_pins>;
- status = "okay";
-+
-+ bluetooth {
-+ compatible = "ti,wl1835-st";
-+ enable-gpios = <&gpio0 28 GPIO_ACTIVE_HIGH>;
-+ };
- };
-
- &gpio3 {
diff --git a/arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch b/arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch
new file mode 100644
index 000000000..1100a148a
--- /dev/null
+++ b/arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch
@@ -0,0 +1,41 @@
+From patchwork Thu Jan 18 12:34:18 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 7bit
+Subject: ARM: dts: imx6qdl-udoo: Disable usbh1 to avoid kernel hang
+From: Fabio Estevam <fabio.estevam@nxp.com>
+X-Patchwork-Id: 10173115
+Message-Id: <1516278858-15464-1-git-send-email-fabio.estevam@nxp.com>
+To: <shawnguo@kernel.org>
+Cc: maggu2810@gmail.com, peter.chen@nxp.com, mail@maciej.szmigiero.name,
+ Fabio Estevam <fabio.estevam@nxp.com>, linux-arm-kernel@lists.infradead.org
+Date: Thu, 18 Jan 2018 10:34:18 -0200
+
+Currently the kernel hangs when USB Host1 is enabled due to the lack of
+support for controlling the USB hub clock and GPIO reset line.
+
+Peter Chen has made several attempts to fix this problem, but his series
+has not been applied yet, so better disable USB host1 for now to avoid
+the kernel hang.
+
+Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com>
+Acked-by: Maciej S. Szmigiero <mail@maciej.szmigiero.name>
+Tested-by: Markus Rathgeb <maggu2810@gmail.com>
+---
+ arch/arm/boot/dts/imx6qdl-udoo.dtsi | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/dts/imx6qdl-udoo.dtsi b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
+index 4161b7d..1f0b9f6 100644
+--- a/arch/arm/boot/dts/imx6qdl-udoo.dtsi
++++ b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
+@@ -274,7 +274,8 @@
+ pinctrl-0 = <&pinctrl_usbh>;
+ vbus-supply = <&reg_usb_h1_vbus>;
+ clocks = <&clks IMX6QDL_CLK_CKO>;
+- status = "okay";
++ /* currently USB support causes a kernel hang. Disable it for now */
++ status = "disabled";
+ };
+
+ &usdhc3 {
diff --git a/arm-exynos-fix-usb3.patch b/arm-exynos-fix-usb3.patch
deleted file mode 100644
index cb5828acf..000000000
--- a/arm-exynos-fix-usb3.patch
+++ /dev/null
@@ -1,411 +0,0 @@
-From patchwork Mon Oct 9 12:00:50 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [PATCHv4,1/2] drivers: phy: add calibrate method
-From: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
-X-Patchwork-Id: 9992829
-Message-Id: <1507550451-21324-2-git-send-email-andrzej.p@samsung.com>
-To: linux-samsung-soc@vger.kernel.org, linux-usb@vger.kernel.org,
- linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org
-Cc: Mark Rutland <mark.rutland@arm.com>, Felipe Balbi <balbi@kernel.org>,
- Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
- Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
- Russell King <linux@armlinux.org.uk>,
- Krzysztof Kozlowski <krzk@kernel.org>,
- Kishon Vijay Abraham I <kishon@ti.com>,
- Rob Herring <robh+dt@kernel.org>, Kukjin Kim <kgene@kernel.org>,
- Andrzej Pietrasiewicz <andrzej.p@samsung.com>,
- Marek Szyprowski <m.szyprowski@samsung.com>
-Date: Mon, 09 Oct 2017 14:00:50 +0200
-
-Some quirky UDCs (like dwc3 on Exynos) need to have their phys calibrated e.g.
-for using super speed. This patch adds a new phy_calibrate() method.
-When the calibration should be used is dependent on actual chip.
-
-In case of dwc3 on Exynos the calibration must happen after usb_add_hcd()
-(while in host mode), because certain phy parameters like Tx LOS levels
-and boost levels need to be calibrated further post initialization of xHCI
-controller, to get SuperSpeed operations working. But an hcd must be
-prepared first in order to pass it to usb_add_hcd(), so, in particular, dwc3
-registers must be available first, and in order for the latter to happen
-the phys must be initialized. This poses a chicken and egg problem if
-the calibration were to be performed in phy_init(). To break the circular
-dependency a separate method is added which can be called at a desired
-moment after phy intialization.
-
-Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
----
- drivers/phy/phy-core.c | 15 +++++++++++++++
- include/linux/phy/phy.h | 10 ++++++++++
- 2 files changed, 25 insertions(+)
-
-diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c
-index a268f4d..b4964b0 100644
---- a/drivers/phy/phy-core.c
-+++ b/drivers/phy/phy-core.c
-@@ -372,6 +372,21 @@ int phy_reset(struct phy *phy)
- }
- EXPORT_SYMBOL_GPL(phy_reset);
-
-+int phy_calibrate(struct phy *phy)
-+{
-+ int ret;
-+
-+ if (!phy || !phy->ops->calibrate)
-+ return 0;
-+
-+ mutex_lock(&phy->mutex);
-+ ret = phy->ops->calibrate(phy);
-+ mutex_unlock(&phy->mutex);
-+
-+ return ret;
-+}
-+EXPORT_SYMBOL_GPL(phy_calibrate);
-+
- /**
- * _of_phy_get() - lookup and obtain a reference to a phy by phandle
- * @np: device_node for which to get the phy
-diff --git a/include/linux/phy/phy.h b/include/linux/phy/phy.h
-index e694d40..87580c8 100644
---- a/include/linux/phy/phy.h
-+++ b/include/linux/phy/phy.h
-@@ -39,6 +39,7 @@ enum phy_mode {
- * @power_off: powering off the phy
- * @set_mode: set the mode of the phy
- * @reset: resetting the phy
-+ * @calibrate: calibrate the phy
- * @owner: the module owner containing the ops
- */
- struct phy_ops {
-@@ -48,6 +49,7 @@ struct phy_ops {
- int (*power_off)(struct phy *phy);
- int (*set_mode)(struct phy *phy, enum phy_mode mode);
- int (*reset)(struct phy *phy);
-+ int (*calibrate)(struct phy *phy);
- struct module *owner;
- };
-
-@@ -141,6 +143,7 @@ static inline void *phy_get_drvdata(struct phy *phy)
- int phy_power_off(struct phy *phy);
- int phy_set_mode(struct phy *phy, enum phy_mode mode);
- int phy_reset(struct phy *phy);
-+int phy_calibrate(struct phy *phy);
- static inline int phy_get_bus_width(struct phy *phy)
- {
- return phy->attrs.bus_width;
-@@ -262,6 +265,13 @@ static inline int phy_reset(struct phy *phy)
- return -ENOSYS;
- }
-
-+static inline int phy_calibrate(struct phy *phy)
-+{
-+ if (!phy)
-+ return 0;
-+ return -ENOSYS;
-+}
-+
- static inline int phy_get_bus_width(struct phy *phy)
- {
- return -ENOSYS;
-From patchwork Mon Oct 9 12:00:51 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [PATCHv4,
- 2/2] phy: exynos5-usbdrd: Calibrate LOS levels for exynos5420/5800
-From: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
-X-Patchwork-Id: 9992809
-Message-Id: <1507550451-21324-3-git-send-email-andrzej.p@samsung.com>
-To: linux-samsung-soc@vger.kernel.org, linux-usb@vger.kernel.org,
- linux-arm-kernel@lists.infradead.org, devicetree@vger.kernel.org
-Cc: Mark Rutland <mark.rutland@arm.com>, Felipe Balbi <balbi@kernel.org>,
- Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
- Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
- Russell King <linux@armlinux.org.uk>,
- Krzysztof Kozlowski <krzk@kernel.org>,
- Kishon Vijay Abraham I <kishon@ti.com>,
- Rob Herring <robh+dt@kernel.org>, Kukjin Kim <kgene@kernel.org>,
- Andrzej Pietrasiewicz <andrzej.p@samsung.com>,
- Marek Szyprowski <m.szyprowski@samsung.com>
-Date: Mon, 09 Oct 2017 14:00:51 +0200
-
-From: Vivek Gautam <gautam.vivek@samsung.com>
-
-Adding phy calibration sequence for USB 3.0 DRD PHY present on
-Exynos5420/5800 systems.
-This calibration facilitates setting certain PHY parameters viz.
-the Loss-of-Signal (LOS) Detector Threshold Level, as well as
-Tx-Vboost-Level for Super-Speed operations.
-Additionally we also set proper time to wait for RxDetect measurement,
-for desired PHY reference clock, so as to solve issue with enumeration
-of few USB 3.0 devices, like Samsung SUM-TSB16S 3.0 USB drive
-on the controller.
-
-We are using CR_port for this purpose to send required data
-to override the LOS values.
-
-On testing with USB 3.0 devices on USB 3.0 port present on
-SMDK5420, and peach-pit boards should see following message:
-usb 2-1: new SuperSpeed USB device number 2 using xhci-hcd
-
-and without this patch, should see below shown message:
-usb 1-1: new high-speed USB device number 2 using xhci-hcd
-
-[Also removed unnecessary extra lines in the register macro definitions]
-
-Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>
-[adapted to use phy_calibrate as entry point]
-Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
----
- drivers/phy/samsung/phy-exynos5-usbdrd.c | 183 +++++++++++++++++++++++++++++++
- drivers/usb/dwc3/core.c | 7 +-
- 2 files changed, 188 insertions(+), 2 deletions(-)
-
-diff --git a/drivers/phy/samsung/phy-exynos5-usbdrd.c b/drivers/phy/samsung/phy-exynos5-usbdrd.c
-index 22c68f5..9e83c15 100644
---- a/drivers/phy/samsung/phy-exynos5-usbdrd.c
-+++ b/drivers/phy/samsung/phy-exynos5-usbdrd.c
-@@ -90,7 +90,17 @@
- #define PHYCLKRST_COMMONONN BIT(0)
-
- #define EXYNOS5_DRD_PHYREG0 0x14
-+#define PHYREG0_SSC_REF_CLK_SEL BIT(21)
-+#define PHYREG0_SSC_RANGE BIT(20)
-+#define PHYREG0_CR_WRITE BIT(19)
-+#define PHYREG0_CR_READ BIT(18)
-+#define PHYREG0_CR_DATA_IN(_x) ((_x) << 2)
-+#define PHYREG0_CR_CAP_DATA BIT(1)
-+#define PHYREG0_CR_CAP_ADDR BIT(0)
-+
- #define EXYNOS5_DRD_PHYREG1 0x18
-+#define PHYREG1_CR_DATA_OUT(_x) ((_x) << 1)
-+#define PHYREG1_CR_ACK BIT(0)
-
- #define EXYNOS5_DRD_PHYPARAM0 0x1c
-
-@@ -119,6 +129,25 @@
- #define EXYNOS5_DRD_PHYRESUME 0x34
- #define EXYNOS5_DRD_LINKPORT 0x44
-
-+/* USB 3.0 DRD PHY SS Function Control Reg; accessed by CR_PORT */
-+#define EXYNOS5_DRD_PHYSS_LOSLEVEL_OVRD_IN (0x15)
-+#define LOSLEVEL_OVRD_IN_LOS_BIAS_5420 (0x5 << 13)
-+#define LOSLEVEL_OVRD_IN_LOS_BIAS_DEFAULT (0x0 << 13)
-+#define LOSLEVEL_OVRD_IN_EN (0x1 << 10)
-+#define LOSLEVEL_OVRD_IN_LOS_LEVEL_DEFAULT (0x9 << 0)
-+
-+#define EXYNOS5_DRD_PHYSS_TX_VBOOSTLEVEL_OVRD_IN (0x12)
-+#define TX_VBOOSTLEVEL_OVRD_IN_VBOOST_5420 (0x5 << 13)
-+#define TX_VBOOSTLEVEL_OVRD_IN_VBOOST_DEFAULT (0x4 << 13)
-+
-+#define EXYNOS5_DRD_PHYSS_LANE0_TX_DEBUG (0x1010)
-+#define LANE0_TX_DEBUG_RXDET_MEAS_TIME_19M2_20M (0x4 << 4)
-+#define LANE0_TX_DEBUG_RXDET_MEAS_TIME_24M (0x8 << 4)
-+#define LANE0_TX_DEBUG_RXDET_MEAS_TIME_25M_26M (0x8 << 4)
-+#define LANE0_TX_DEBUG_RXDET_MEAS_TIME_48M_50M_52M (0x20 << 4)
-+#define LANE0_TX_DEBUG_RXDET_MEAS_TIME_62M5 (0x20 << 4)
-+#define LANE0_TX_DEBUG_RXDET_MEAS_TIME_96M_100M (0x40 << 4)
-+
- #define KHZ 1000
- #define MHZ (KHZ * KHZ)
-
-@@ -527,6 +556,151 @@ static int exynos5_usbdrd_phy_power_off(struct phy *phy)
- return 0;
- }
-
-+static int crport_handshake(struct exynos5_usbdrd_phy *phy_drd,
-+ u32 val, u32 cmd)
-+{
-+ u32 usec = 100;
-+ unsigned int result;
-+
-+ writel(val | cmd, phy_drd->reg_phy + EXYNOS5_DRD_PHYREG0);
-+
-+ do {
-+ result = readl(phy_drd->reg_phy + EXYNOS5_DRD_PHYREG1);
-+ if (result & PHYREG1_CR_ACK)
-+ break;
-+
-+ udelay(1);
-+ } while (usec-- > 0);
-+
-+ if (!usec) {
-+ dev_err(phy_drd->dev,
-+ "CRPORT handshake timeout1 (0x%08x)\n", val);
-+ return -ETIME;
-+ }
-+
-+ usec = 100;
-+
-+ writel(val, phy_drd->reg_phy + EXYNOS5_DRD_PHYREG0);
-+
-+ do {
-+ result = readl(phy_drd->reg_phy + EXYNOS5_DRD_PHYREG1);
-+ if (!(result & PHYREG1_CR_ACK))
-+ break;
-+
-+ udelay(1);
-+ } while (usec-- > 0);
-+
-+ if (!usec) {
-+ dev_err(phy_drd->dev,
-+ "CRPORT handshake timeout2 (0x%08x)\n", val);
-+ return -ETIME;
-+ }
-+
-+ return 0;
-+}
-+
-+static int crport_ctrl_write(struct exynos5_usbdrd_phy *phy_drd,
-+ u32 addr, u32 data)
-+{
-+ int ret;
-+
-+ /* Write Address */
-+ writel(PHYREG0_CR_DATA_IN(addr),
-+ phy_drd->reg_phy + EXYNOS5_DRD_PHYREG0);
-+ ret = crport_handshake(phy_drd, PHYREG0_CR_DATA_IN(addr),
-+ PHYREG0_CR_CAP_ADDR);
-+ if (ret)
-+ return ret;
-+
-+ /* Write Data */
-+ writel(PHYREG0_CR_DATA_IN(data),
-+ phy_drd->reg_phy + EXYNOS5_DRD_PHYREG0);
-+ ret = crport_handshake(phy_drd, PHYREG0_CR_DATA_IN(data),
-+ PHYREG0_CR_CAP_DATA);
-+ if (ret)
-+ return ret;
-+
-+ ret = crport_handshake(phy_drd, PHYREG0_CR_DATA_IN(data),
-+ PHYREG0_CR_WRITE);
-+
-+ return ret;
-+}
-+
-+/*
-+ * Calibrate few PHY parameters using CR_PORT register to meet
-+ * SuperSpeed requirements on Exynos5420 and Exynos5800 systems,
-+ * which have 28nm USB 3.0 DRD PHY.
-+ */
-+static int exynos5420_usbdrd_phy_calibrate(struct exynos5_usbdrd_phy *phy_drd)
-+{
-+ unsigned int temp;
-+ int ret = 0;
-+
-+ /*
-+ * Change los_bias to (0x5) for 28nm PHY from a
-+ * default value (0x0); los_level is set as default
-+ * (0x9) as also reflected in los_level[30:26] bits
-+ * of PHYPARAM0 register.
-+ */
-+ temp = LOSLEVEL_OVRD_IN_LOS_BIAS_5420 |
-+ LOSLEVEL_OVRD_IN_EN |
-+ LOSLEVEL_OVRD_IN_LOS_LEVEL_DEFAULT;
-+ ret = crport_ctrl_write(phy_drd,
-+ EXYNOS5_DRD_PHYSS_LOSLEVEL_OVRD_IN,
-+ temp);
-+ if (ret) {
-+ dev_err(phy_drd->dev,
-+ "Failed setting Loss-of-Signal level for SuperSpeed\n");
-+ return ret;
-+ }
-+
-+ /*
-+ * Set tx_vboost_lvl to (0x5) for 28nm PHY Tuning,
-+ * to raise Tx signal level from its default value of (0x4)
-+ */
-+ temp = TX_VBOOSTLEVEL_OVRD_IN_VBOOST_5420;
-+ ret = crport_ctrl_write(phy_drd,
-+ EXYNOS5_DRD_PHYSS_TX_VBOOSTLEVEL_OVRD_IN,
-+ temp);
-+ if (ret) {
-+ dev_err(phy_drd->dev,
-+ "Failed setting Tx-Vboost-Level for SuperSpeed\n");
-+ return ret;
-+ }
-+
-+ /*
-+ * Set proper time to wait for RxDetect measurement, for
-+ * desired reference clock of PHY, by tuning the CR_PORT
-+ * register LANE0.TX_DEBUG which is internal to PHY.
-+ * This fixes issue with few USB 3.0 devices, which are
-+ * not detected (not even generate interrupts on the bus
-+ * on insertion) without this change.
-+ * e.g. Samsung SUM-TSB16S 3.0 USB drive.
-+ */
-+ switch (phy_drd->extrefclk) {
-+ case EXYNOS5_FSEL_50MHZ:
-+ temp = LANE0_TX_DEBUG_RXDET_MEAS_TIME_48M_50M_52M;
-+ break;
-+ case EXYNOS5_FSEL_20MHZ:
-+ case EXYNOS5_FSEL_19MHZ2:
-+ temp = LANE0_TX_DEBUG_RXDET_MEAS_TIME_19M2_20M;
-+ break;
-+ case EXYNOS5_FSEL_24MHZ:
-+ default:
-+ temp = LANE0_TX_DEBUG_RXDET_MEAS_TIME_24M;
-+ break;
-+ }
-+
-+ ret = crport_ctrl_write(phy_drd,
-+ EXYNOS5_DRD_PHYSS_LANE0_TX_DEBUG,
-+ temp);
-+ if (ret)
-+ dev_err(phy_drd->dev,
-+ "Failed setting RxDetect measurement time for SuperSpeed\n");
-+
-+ return ret;
-+}
-+
- static struct phy *exynos5_usbdrd_phy_xlate(struct device *dev,
- struct of_phandle_args *args)
- {
-@@ -538,11 +712,20 @@ static struct phy *exynos5_usbdrd_phy_xlate(struct device *dev,
- return phy_drd->phys[args->args[0]].phy;
- }
-
-+static int exynos5_usbdrd_phy_calibrate(struct phy *phy)
-+{
-+ struct phy_usb_instance *inst = phy_get_drvdata(phy);
-+ struct exynos5_usbdrd_phy *phy_drd = to_usbdrd_phy(inst);
-+
-+ return exynos5420_usbdrd_phy_calibrate(phy_drd);
-+}
-+
- static const struct phy_ops exynos5_usbdrd_phy_ops = {
- .init = exynos5_usbdrd_phy_init,
- .exit = exynos5_usbdrd_phy_exit,
- .power_on = exynos5_usbdrd_phy_power_on,
- .power_off = exynos5_usbdrd_phy_power_off,
-+ .calibrate = exynos5_usbdrd_phy_calibrate,
- .owner = THIS_MODULE,
- };
-
-diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
-index 03474d3..224e0dd 100644
---- a/drivers/usb/dwc3/core.c
-+++ b/drivers/usb/dwc3/core.c
-@@ -156,9 +156,10 @@ static void __dwc3_set_mode(struct work_struct *work)
- } else {
- if (dwc->usb2_phy)
- otg_set_vbus(dwc->usb2_phy->otg, true);
-- if (dwc->usb2_generic_phy)
-+ if (dwc->usb2_generic_phy) {
- phy_set_mode(dwc->usb2_generic_phy, PHY_MODE_USB_HOST);
--
-+ phy_calibrate(dwc->usb2_generic_phy);
-+ }
- }
- break;
- case DWC3_GCTL_PRTCAP_DEVICE:
-@@ -955,6 +956,8 @@ static int dwc3_core_init_mode(struct dwc3 *dwc)
- dev_err(dev, "failed to initialize host\n");
- return ret;
- }
-+ if (dwc->usb2_generic_phy)
-+ phy_calibrate(dwc->usb2_generic_phy);
- break;
- case USB_DR_MODE_OTG:
- INIT_WORK(&dwc->drd_work, __dwc3_set_mode);
diff --git a/arm-thermal-fixes.patch b/arm-thermal-fixes.patch
deleted file mode 100644
index 547731e79..000000000
--- a/arm-thermal-fixes.patch
+++ /dev/null
@@ -1,224 +0,0 @@
-From 0fe4d2181cc4cb3eba303c0e03f878d2558d0f3a Mon Sep 17 00:00:00 2001
-From: Stefan Wahren <stefan.wahren@i2se.com>
-Date: Fri, 31 Mar 2017 20:03:04 +0000
-Subject: [PATCH] ARM: dts: bcm283x: Add CPU thermal zone with 1
- trip point
-
-As suggested by Eduardo Valentin this adds the thermal zone for
-the bcm2835 SoC with its single thermal sensor. We start with
-the criticial trip point and leave the cooling devices empty
-since we don't have any at the moment. Since the coefficients
-could vary depending on the SoC we need to define them separate.
-
-Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
-Signed-off-by: Eric Anholt <eric@anholt.net>
-Acked-by: Eduardo Valentin <edubezval@gmail.com>
----
- arch/arm/boot/dts/bcm2835.dtsi | 4 ++++
- arch/arm/boot/dts/bcm2836.dtsi | 4 ++++
- arch/arm/boot/dts/bcm283x.dtsi | 21 +++++++++++++++++++++
- 3 files changed, 29 insertions(+)
-
-diff --git a/arch/arm/boot/dts/bcm2835.dtsi b/arch/arm/boot/dts/bcm2835.dtsi
-index 0890d97e674d..659b6e9513b1 100644
---- a/arch/arm/boot/dts/bcm2835.dtsi
-+++ b/arch/arm/boot/dts/bcm2835.dtsi
-@@ -24,6 +24,10 @@
- };
- };
-
-+&cpu_thermal {
-+ coefficients = <(-538) 407000>;
-+};
-+
- /* enable thermal sensor with the correct compatible property set */
- &thermal {
- compatible = "brcm,bcm2835-thermal";
-diff --git a/arch/arm/boot/dts/bcm2836.dtsi b/arch/arm/boot/dts/bcm2836.dtsi
-index 519a44f5d25a..da3deeb42592 100644
---- a/arch/arm/boot/dts/bcm2836.dtsi
-+++ b/arch/arm/boot/dts/bcm2836.dtsi
-@@ -77,6 +77,10 @@
- interrupts = <8>;
- };
-
-+&cpu_thermal {
-+ coefficients = <(-538) 407000>;
-+};
-+
- /* enable thermal sensor with the correct compatible property set */
- &thermal {
- compatible = "brcm,bcm2836-thermal";
-diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi
-index 561f27d8d922..86a5db53da8f 100644
---- a/arch/arm/boot/dts/bcm283x.dtsi
-+++ b/arch/arm/boot/dts/bcm283x.dtsi
-@@ -19,6 +19,26 @@
- bootargs = "earlyprintk console=ttyAMA0";
- };
-
-+ thermal-zones {
-+ cpu_thermal: cpu-thermal {
-+ polling-delay-passive = <0>;
-+ polling-delay = <1000>;
-+
-+ thermal-sensors = <&thermal>;
-+
-+ trips {
-+ cpu-crit {
-+ temperature = <80000>;
-+ hysteresis = <0>;
-+ type = "critical";
-+ };
-+ };
-+
-+ cooling-maps {
-+ };
-+ };
-+ };
-+
- soc {
- compatible = "simple-bus";
- #address-cells = <1>;
-@@ -430,6 +450,7 @@
- compatible = "brcm,bcm2835-thermal";
- reg = <0x7e212000 0x8>;
- clocks = <&clocks BCM2835_CLOCK_TSENS>;
-+ #thermal-sensor-cells = <0>;
- status = "disabled";
- };
-
---
-2.13.3
-
-From 4ae6f954b96c1fea86c6f21ae8fc413f5fc3444e Mon Sep 17 00:00:00 2001
-From: Stefan Wahren <stefan.wahren@i2se.com>
-Date: Fri, 31 Mar 2017 20:03:05 +0000
-Subject: [PATCH] ARM64: dts: bcm2837: Define CPU thermal coefficients
-
-This defines the bcm2837 SoC specific thermal coefficients in
-order to initialize the thermal driver correctly.
-
-Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
-Signed-off-by: Eric Anholt <eric@anholt.net>
-Acked-by: Eduardo Valentin <edubezval@gmail.com>
----
- arch/arm64/boot/dts/broadcom/bcm2837.dtsi | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/broadcom/bcm2837.dtsi b/arch/arm64/boot/dts/broadcom/bcm2837.dtsi
-index 19f2fe620a21..2d5de6f0f78d 100644
---- a/arch/arm64/boot/dts/broadcom/bcm2837.dtsi
-+++ b/arch/arm64/boot/dts/broadcom/bcm2837.dtsi
-@@ -75,6 +75,10 @@
- interrupts = <8>;
- };
-
-+&cpu_thermal {
-+ coefficients = <(-538) 412000>;
-+};
-+
- /* enable thermal sensor with the correct compatible property set */
- &thermal {
- compatible = "brcm,bcm2837-thermal";
---
-2.13.3
-
-From 1fe3854a83b580727c9464b37b62ba77ead1d6f6 Mon Sep 17 00:00:00 2001
-From: Dan Carpenter <dan.carpenter@oracle.com>
-Date: Wed, 14 Jun 2017 12:13:27 +0300
-Subject: [PATCH] thermal: bcm2835: fix an error code in probe()
-
-This causes a static checker because we're passing a valid pointer to
-PTR_ERR(). "err" is already the correct error code, so we can just
-delete this line.
-
-Fixes: bcb7dd9ef206 ("thermal: bcm2835: add thermal driver for bcm2835 SoC")
-Acked-by: Stefan Wahren <stefan.wahren@i2se.com>
-Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
-Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
----
- drivers/thermal/broadcom/bcm2835_thermal.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/drivers/thermal/broadcom/bcm2835_thermal.c b/drivers/thermal/broadcom/bcm2835_thermal.c
-index 0ecf80890c84..e6863c841662 100644
---- a/drivers/thermal/broadcom/bcm2835_thermal.c
-+++ b/drivers/thermal/broadcom/bcm2835_thermal.c
-@@ -245,7 +245,6 @@ static int bcm2835_thermal_probe(struct platform_device *pdev)
- */
- err = tz->ops->get_trip_temp(tz, 0, &trip_temp);
- if (err < 0) {
-- err = PTR_ERR(tz);
- dev_err(&pdev->dev,
- "Not able to read trip_temp: %d\n",
- err);
---
-2.13.3
-
-From e3bdc8d7623d5875403ad40443e7b049ae200fcd Mon Sep 17 00:00:00 2001
-From: Arvind Yadav <arvind.yadav.cs@gmail.com>
-Date: Tue, 6 Jun 2017 15:12:37 +0530
-Subject: [PATCH] thermal: imx: Handle return value of clk_prepare_enable
-
-clk_prepare_enable() can fail here and we must check its return value.
-
-Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
-Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
----
- drivers/thermal/imx_thermal.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
-index f7ec39f46ee4..4798b4b1fd77 100644
---- a/drivers/thermal/imx_thermal.c
-+++ b/drivers/thermal/imx_thermal.c
-@@ -660,8 +660,11 @@ static int imx_thermal_resume(struct device *dev)
- {
- struct imx_thermal_data *data = dev_get_drvdata(dev);
- struct regmap *map = data->tempmon;
-+ int ret;
-
-- clk_prepare_enable(data->thermal_clk);
-+ ret = clk_prepare_enable(data->thermal_clk);
-+ if (ret)
-+ return ret;
- /* Enabled thermal sensor after resume */
- regmap_write(map, TEMPSENSE0 + REG_CLR, TEMPSENSE0_POWER_DOWN);
- regmap_write(map, TEMPSENSE0 + REG_SET, TEMPSENSE0_MEASURE_TEMP);
---
-2.13.3
-
-From 919054fdfc8adf58c5512fe9872eb53ea0f5525d Mon Sep 17 00:00:00 2001
-From: Arvind Yadav <arvind.yadav.cs@gmail.com>
-Date: Tue, 6 Jun 2017 15:04:46 +0530
-Subject: [PATCH] thermal: hisilicon: Handle return value of clk_prepare_enable
-
-clk_prepare_enable() can fail here and we must check its return value.
-
-Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
-Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
----
- drivers/thermal/hisi_thermal.c | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/thermal/hisi_thermal.c b/drivers/thermal/hisi_thermal.c
-index f6429666a1cf..9c3ce341eb97 100644
---- a/drivers/thermal/hisi_thermal.c
-+++ b/drivers/thermal/hisi_thermal.c
-@@ -397,8 +397,11 @@ static int hisi_thermal_suspend(struct device *dev)
- static int hisi_thermal_resume(struct device *dev)
- {
- struct hisi_thermal_data *data = dev_get_drvdata(dev);
-+ int ret;
-
-- clk_prepare_enable(data->clk);
-+ ret = clk_prepare_enable(data->clk);
-+ if (ret)
-+ return ret;
-
- data->irq_enabled = true;
- hisi_thermal_enable_bind_irq_sensor(data);
---
-2.13.3
-
diff --git a/arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch b/arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch
new file mode 100644
index 000000000..4eaf67e33
--- /dev/null
+++ b/arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch
@@ -0,0 +1,146 @@
+From patchwork Mon Jan 8 15:44:19 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 7bit
+Subject: [v2] mmc: sdhci_f_sdh30: add ACPI support
+From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
+X-Patchwork-Id: 10149775
+Message-Id: <20180108154419.2821-1-ard.biesheuvel@linaro.org>
+To: linux-mmc@vger.kernel.org
+Cc: adrian.hunter@intel.com, ulf.hansson@linaro.org,
+ Ard Biesheuvel <ard.biesheuvel@linaro.org>
+Date: Mon, 8 Jan 2018 15:44:19 +0000
+
+The Fujitsu SDH30 SDHCI controller may be described as a SCX0002 ACPI
+device on ACPI platforms incorporating the Socionext SynQuacer SoC.
+
+Given that mmc_of_parse() has already been made ACPI/DT agnostic,
+making the SDH30 driver ACPI capable is actually rather simple:
+all we need to do is make the call to sdhci_get_of_property() [which
+does not set any properties we care about] and the clock handling
+dependent on whether we are dealing with a DT device, and exposing
+the ACPI id via the platform_driver struct and the module metadata.
+
+Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
+Acked-by: Adrian Hunter <adrian.hunter@intel.com>
+---
+v2: make OF optional now that ACPI is supported
+ drop dev_of_node() check when disabling the clocks - those routines
+ tolerate NULL pointers so there's no need
+
+ drivers/mmc/host/Kconfig | 2 +-
+ drivers/mmc/host/sdhci_f_sdh30.c | 52 +++++++++++++-------
+ 2 files changed, 35 insertions(+), 19 deletions(-)
+
+diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig
+index 567028c9219a..07ed947ed10b 100644
+--- a/drivers/mmc/host/Kconfig
++++ b/drivers/mmc/host/Kconfig
+@@ -320,7 +320,7 @@ config MMC_SDHCI_BCM_KONA
+ config MMC_SDHCI_F_SDH30
+ tristate "SDHCI support for Fujitsu Semiconductor F_SDH30"
+ depends on MMC_SDHCI_PLTFM
+- depends on OF
++ depends on OF || ACPI
+ help
+ This selects the Secure Digital Host Controller Interface (SDHCI)
+ Needed by some Fujitsu SoC for MMC / SD / SDIO support.
+diff --git a/drivers/mmc/host/sdhci_f_sdh30.c b/drivers/mmc/host/sdhci_f_sdh30.c
+index 04ca0d33a521..485f7591fae4 100644
+--- a/drivers/mmc/host/sdhci_f_sdh30.c
++++ b/drivers/mmc/host/sdhci_f_sdh30.c
+@@ -10,9 +10,11 @@
+ * the Free Software Foundation, version 2 of the License.
+ */
+
++#include <linux/acpi.h>
+ #include <linux/err.h>
+ #include <linux/delay.h>
+ #include <linux/module.h>
++#include <linux/of.h>
+ #include <linux/property.h>
+ #include <linux/clk.h>
+
+@@ -146,7 +148,6 @@ static int sdhci_f_sdh30_probe(struct platform_device *pdev)
+
+ platform_set_drvdata(pdev, host);
+
+- sdhci_get_of_property(pdev);
+ host->hw_name = "f_sdh30";
+ host->ops = &sdhci_f_sdh30_ops;
+ host->irq = irq;
+@@ -158,25 +159,29 @@ static int sdhci_f_sdh30_probe(struct platform_device *pdev)
+ goto err;
+ }
+
+- priv->clk_iface = devm_clk_get(&pdev->dev, "iface");
+- if (IS_ERR(priv->clk_iface)) {
+- ret = PTR_ERR(priv->clk_iface);
+- goto err;
+- }
++ if (dev_of_node(dev)) {
++ sdhci_get_of_property(pdev);
+
+- ret = clk_prepare_enable(priv->clk_iface);
+- if (ret)
+- goto err;
++ priv->clk_iface = devm_clk_get(&pdev->dev, "iface");
++ if (IS_ERR(priv->clk_iface)) {
++ ret = PTR_ERR(priv->clk_iface);
++ goto err;
++ }
+
+- priv->clk = devm_clk_get(&pdev->dev, "core");
+- if (IS_ERR(priv->clk)) {
+- ret = PTR_ERR(priv->clk);
+- goto err_clk;
+- }
++ ret = clk_prepare_enable(priv->clk_iface);
++ if (ret)
++ goto err;
+
+- ret = clk_prepare_enable(priv->clk);
+- if (ret)
+- goto err_clk;
++ priv->clk = devm_clk_get(&pdev->dev, "core");
++ if (IS_ERR(priv->clk)) {
++ ret = PTR_ERR(priv->clk);
++ goto err_clk;
++ }
++
++ ret = clk_prepare_enable(priv->clk);
++ if (ret)
++ goto err_clk;
++ }
+
+ /* init vendor specific regs */
+ ctrl = sdhci_readw(host, F_SDH30_AHB_CONFIG);
+@@ -226,16 +231,27 @@ static int sdhci_f_sdh30_remove(struct platform_device *pdev)
+ return 0;
+ }
+
++#ifdef CONFIG_OF
+ static const struct of_device_id f_sdh30_dt_ids[] = {
+ { .compatible = "fujitsu,mb86s70-sdhci-3.0" },
+ { /* sentinel */ }
+ };
+ MODULE_DEVICE_TABLE(of, f_sdh30_dt_ids);
++#endif
++
++#ifdef CONFIG_ACPI
++static const struct acpi_device_id f_sdh30_acpi_ids[] = {
++ { "SCX0002" },
++ { /* sentinel */ }
++};
++MODULE_DEVICE_TABLE(acpi, f_sdh30_acpi_ids);
++#endif
+
+ static struct platform_driver sdhci_f_sdh30_driver = {
+ .driver = {
+ .name = "f_sdh30",
+- .of_match_table = f_sdh30_dt_ids,
++ .of_match_table = of_match_ptr(f_sdh30_dt_ids),
++ .acpi_match_table = ACPI_PTR(f_sdh30_acpi_ids),
+ .pm = &sdhci_pltfm_pmops,
+ },
+ .probe = sdhci_f_sdh30_probe,
diff --git a/arm64-socionext-96b-enablement.patch b/arm64-socionext-96b-enablement.patch
index 0a7df3a19..d5d6cda86 100644
--- a/arm64-socionext-96b-enablement.patch
+++ b/arm64-socionext-96b-enablement.patch
@@ -1,423 +1,3 @@
-From 58be18a7bbf9dca67f4260ac172a44baa59d0ee9 Mon Sep 17 00:00:00 2001
-From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
-Date: Mon, 21 Aug 2017 10:47:48 +0100
-Subject: arm64: acpi/gtdt: validate CNTFRQ after having enabled the frame
-
-The ACPI GTDT code validates the CNTFRQ field of each MMIO timer
-frame against the CNTFRQ system register of the current CPU, to
-ensure that they are equal, which is mandated by the architecture.
-
-However, reading the CNTFRQ field of a frame is not possible until
-the RFRQ bit in the frame's CNTACRn register is set, and doing so
-before that willl produce the following error:
-
- arch_timer: [Firmware Bug]: CNTFRQ mismatch: frame @ 0x00000000e0be0000: (0x00000000), CPU: (0x0ee6b280)
- arch_timer: Disabling MMIO timers due to CNTFRQ mismatch
- arch_timer: Failed to initialize memory-mapped timer.
-
-The reason is that the CNTFRQ field is RES0 if access is not enabled.
-
-So move the validation of CNTFRQ into the loop that iterates over the
-timers to find the best frame, but defer it until after we have selected
-the best frame, which should also have enabled the RFRQ bit.
-
-Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
----
- drivers/clocksource/arm_arch_timer.c | 38 ++++++++++++++++++++----------------
- 1 file changed, 21 insertions(+), 17 deletions(-)
-
-diff --git a/drivers/clocksource/arm_arch_timer.c b/drivers/clocksource/arm_arch_timer.c
-index fd4b7f6..14e2419 100644
---- a/drivers/clocksource/arm_arch_timer.c
-+++ b/drivers/clocksource/arm_arch_timer.c
-@@ -1268,10 +1268,6 @@ arch_timer_mem_find_best_frame(struct arch_timer_mem *timer_mem)
-
- iounmap(cntctlbase);
-
-- if (!best_frame)
-- pr_err("Unable to find a suitable frame in timer @ %pa\n",
-- &timer_mem->cntctlbase);
--
- return best_frame;
- }
-
-@@ -1372,6 +1368,8 @@ static int __init arch_timer_mem_of_init(struct device_node *np)
-
- frame = arch_timer_mem_find_best_frame(timer_mem);
- if (!frame) {
-+ pr_err("Unable to find a suitable frame in timer @ %pa\n",
-+ &timer_mem->cntctlbase);
- ret = -EINVAL;
- goto out;
- }
-@@ -1420,7 +1418,7 @@ arch_timer_mem_verify_cntfrq(struct arch_timer_mem *timer_mem)
- static int __init arch_timer_mem_acpi_init(int platform_timer_count)
- {
- struct arch_timer_mem *timers, *timer;
-- struct arch_timer_mem_frame *frame;
-+ struct arch_timer_mem_frame *frame, *best_frame = NULL;
- int timer_count, i, ret = 0;
-
- timers = kcalloc(platform_timer_count, sizeof(*timers),
-@@ -1432,14 +1430,6 @@ static int __init arch_timer_mem_acpi_init(int platform_timer_count)
- if (ret || !timer_count)
- goto out;
-
-- for (i = 0; i < timer_count; i++) {
-- ret = arch_timer_mem_verify_cntfrq(&timers[i]);
-- if (ret) {
-- pr_err("Disabling MMIO timers due to CNTFRQ mismatch\n");
-- goto out;
-- }
-- }
--
- /*
- * While unlikely, it's theoretically possible that none of the frames
- * in a timer expose the combination of feature we want.
-@@ -1448,12 +1438,26 @@ static int __init arch_timer_mem_acpi_init(int platform_timer_count)
- timer = &timers[i];
-
- frame = arch_timer_mem_find_best_frame(timer);
-- if (frame)
-- break;
-+ if (!best_frame)
-+ best_frame = frame;
-+
-+ ret = arch_timer_mem_verify_cntfrq(timer);
-+ if (ret) {
-+ pr_err("Disabling MMIO timers due to CNTFRQ mismatch\n");
-+ goto out;
-+ }
-+
-+ if (!best_frame) /* implies !frame */
-+ /*
-+ * Only complain about missing suitable frames if we
-+ * haven't already found one in a previous iteration.
-+ */
-+ pr_err("Unable to find a suitable frame in timer @ %pa\n",
-+ &timer->cntctlbase);
- }
-
-- if (frame)
-- ret = arch_timer_mem_frame_register(frame);
-+ if (best_frame)
-+ ret = arch_timer_mem_frame_register(best_frame);
- out:
- kfree(timers);
- return ret;
---
-cgit v1.1
-
-From 33d983b5bb2929ae242606925e708092b1dfdd8f Mon Sep 17 00:00:00 2001
-From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
-Date: Sat, 2 Sep 2017 11:01:22 +0100
-Subject: drivers/irqchip: gicv3: add workaround for Synquacer pre-ITS
-
-In their infinite wisdom, the Socionext engineers have decided
-that ITS device IDs should not be hardwired, but it should be
-left up to the software to assign them, by allowing it to
-redirect MSI doorbell writes via a separate hardware block
-that issues the doorbell write with a device ID that is
-derived from the memory address. This completely breaks any
-kind of isolation, or virtualization in general, for that
-matter, but add support for it nonetheless.
-
-Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
----
- arch/arm64/Kconfig | 8 +++++++
- drivers/irqchip/irq-gic-v3-its.c | 48 +++++++++++++++++++++++++++++++++++-----
- 2 files changed, 51 insertions(+), 5 deletions(-)
-
-diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
-index 0df64a6..c4361df 100644
---- a/arch/arm64/Kconfig
-+++ b/arch/arm64/Kconfig
-@@ -539,6 +539,14 @@ config QCOM_QDF2400_ERRATUM_0065
-
- If unsure, say Y.
-
-+config SOCIONEXT_SYNQUACER_PREITS
-+ bool "Socionext Synquacer: Workaround for GICv3 pre-ITS"
-+ default y
-+ help
-+ Socionext Synquacer SoCs implement a separate h/w block to generate
-+ MSI doorbell writes with non-zero values for the device ID.
-+
-+ If unsure, say Y.
- endmenu
-
-
-diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
-index e8d8934..0d372f1 100644
---- a/drivers/irqchip/irq-gic-v3-its.c
-+++ b/drivers/irqchip/irq-gic-v3-its.c
-@@ -46,6 +46,7 @@
- #define ITS_FLAGS_CMDQ_NEEDS_FLUSHING (1ULL << 0)
- #define ITS_FLAGS_WORKAROUND_CAVIUM_22375 (1ULL << 1)
- #define ITS_FLAGS_WORKAROUND_CAVIUM_23144 (1ULL << 2)
-+#define ITS_FLAGS_WORKAROUND_SOCIONEXT_PREITS (1ULL << 3)
-
- #define RDIST_FLAGS_PROPBASE_NEEDS_FLUSHING (1 << 0)
-
-@@ -99,6 +100,10 @@ struct its_node {
- struct its_collection *collections;
- struct list_head its_device_list;
- u64 flags;
-+#ifdef CONFIG_SOCIONEXT_SYNQUACER_PREITS
-+ u64 pre_its_base;
-+ u64 pre_its_size;
-+#endif
- u32 ite_size;
- u32 device_ids;
- int numa_node;
-@@ -1102,13 +1107,29 @@ static void its_irq_compose_msi_msg(struct irq_data *d, struct msi_msg *msg)
- u64 addr;
-
- its = its_dev->its;
-- addr = its->phys_base + GITS_TRANSLATER;
-+
-+#ifdef CONFIG_SOCIONEXT_SYNQUACER_PREITS
-+ if (its->flags & ITS_FLAGS_WORKAROUND_SOCIONEXT_PREITS)
-+
-+ /*
-+ * The Socionext Synquacer SoC has a so-called 'pre-ITS',
-+ * which maps 32-bit writes into a separate window of size
-+ * '4 << device_id_bits' onto writes to GITS_TRANSLATER with
-+ * device ID taken from bits [device_id_bits + 1:2] of the
-+ * window offset.
-+ */
-+ addr = its->pre_its_base + (its_dev->device_id << 2);
-+ else
-+#endif
-+ addr = its->phys_base + GITS_TRANSLATER;
-
- msg->address_lo = lower_32_bits(addr);
- msg->address_hi = upper_32_bits(addr);
- msg->data = its_get_event_id(d);
-
-- iommu_dma_map_msi_msg(d->irq, msg);
-+ if (!IS_ENABLED(CONFIG_SOCIONEXT_SYNQUACER_PREITS) ||
-+ !(its->flags & ITS_FLAGS_WORKAROUND_SOCIONEXT_PREITS))
-+ iommu_dma_map_msi_msg(d->irq, msg);
- }
-
- static int its_irq_set_irqchip_state(struct irq_data *d,
-@@ -1666,6 +1687,11 @@ static int its_alloc_tables(struct its_node *its)
- ids = 0x14; /* 20 bits, 8MB */
- }
-
-+#ifdef CONFIG_SOCIONEXT_SYNQUACER_PREITS
-+ if (its->flags & ITS_FLAGS_WORKAROUND_SOCIONEXT_PREITS)
-+ ids = ilog2(its->pre_its_size) - 2;
-+#endif
-+
- its->device_ids = ids;
-
- for (i = 0; i < GITS_BASER_NR_REGS; i++) {
-@@ -2788,11 +2814,21 @@ static const struct gic_quirk its_quirks[] = {
- }
- };
-
--static void its_enable_quirks(struct its_node *its)
-+static void its_enable_quirks(struct its_node *its,
-+ struct fwnode_handle *handle)
- {
- u32 iidr = readl_relaxed(its->base + GITS_IIDR);
-
- gic_enable_quirks(iidr, its_quirks, its);
-+
-+#ifdef CONFIG_SOCIONEXT_SYNQUACER_PREITS
-+ if (!fwnode_property_read_u64_array(handle,
-+ "socionext,synquacer-pre-its",
-+ &its->pre_its_base, 2)) {
-+ its->flags |= ITS_FLAGS_WORKAROUND_SOCIONEXT_PREITS;
-+ pr_info("ITS: enabling workaround for Socionext Synquacer pre-ITS\n");
-+ }
-+#endif
- }
-
- static int its_init_domain(struct fwnode_handle *handle, struct its_node *its)
-@@ -2812,7 +2848,9 @@ static int its_init_domain(struct fwnode_handle *handle, struct its_node *its)
-
- inner_domain->parent = its_parent;
- irq_domain_update_bus_token(inner_domain, DOMAIN_BUS_NEXUS);
-- inner_domain->flags |= IRQ_DOMAIN_FLAG_MSI_REMAP;
-+
-+ if (!(its->flags & ITS_FLAGS_WORKAROUND_SOCIONEXT_PREITS))
-+ inner_domain->flags |= IRQ_DOMAIN_FLAG_MSI_REMAP;
- info->ops = &its_msi_domain_ops;
- info->data = its;
- inner_domain->host_data = info;
-@@ -2966,7 +3004,7 @@ static int __init its_probe_one(struct resource *res,
- }
- its->cmd_write = its->cmd_base;
-
-- its_enable_quirks(its);
-+ its_enable_quirks(its, handle);
-
- err = its_alloc_tables(its);
- if (err)
---
-cgit v1.1
-
-From 26e7bb47b0fb03a01be1e391a08c7375b45335a2 Mon Sep 17 00:00:00 2001
-From: Ard Biesheuvel <ard.biesheuvel@linaro.org>
-Date: Mon, 21 Aug 2017 20:29:05 +0100
-Subject: pci: designware: add driver for DWC controller in ECAM shift mode
-
-Some implementations of the Synopsys Designware PCIe controller implement
-a so-called ECAM shift mode, which allows a static memory window to be
-configured that covers the configuration space of the entire bus range.
-
-If the firmware performs all the low level configuration that is required
-to expose this controller in a fully ECAM compatible manner, we can
-simply describe it as "pci-host-ecam-generic" and be done with it.
-However, it appears that in some cases (one of which is the Armada 80x0),
-the IP is synthesized with an ATU window size that does not allow the
-first bus to be mapped in a way that prevents the device on the
-downstream port from appearing more than once.
-
-So implement a driver that relies on the firmware to perform all low
-level initialization, and drives the controller in ECAM mode, but
-overrides the config space accessors to take the above quirk into
-account.
-
-Note that, unlike most drivers for this IP, this driver does not expose
-a fake bridge device at B/D/F 00:00.0. There is no point in doing so,
-given that this is not a true bridge, and does not require any windows
-to be configured in order for the downstream device to operate correctly.
-Omitting it also prevents the PCI resource allocation routines from
-handing out BAR space to it unnecessarily.
-
-Cc: Bjorn Helgaas <bhelgaas@google.com>
-Cc: Jingoo Han <jingoohan1@gmail.com>
-Cc: Joao Pinto <Joao.Pinto@synopsys.com>
-Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
----
- drivers/pci/dwc/Kconfig | 11 +++++
- drivers/pci/dwc/Makefile | 1 +
- drivers/pci/dwc/pcie-designware-ecam.c | 77 ++++++++++++++++++++++++++++++++++
- 3 files changed, 89 insertions(+)
- create mode 100644 drivers/pci/dwc/pcie-designware-ecam.c
-
-diff --git a/drivers/pci/dwc/Kconfig b/drivers/pci/dwc/Kconfig
-index 22ec82f..19856b1 100644
---- a/drivers/pci/dwc/Kconfig
-+++ b/drivers/pci/dwc/Kconfig
-@@ -169,4 +169,15 @@ config PCIE_KIRIN
- Say Y here if you want PCIe controller support
- on HiSilicon Kirin series SoCs.
-
-+config PCIE_DW_HOST_ECAM
-+ bool "Synopsys DesignWare PCIe controller in ECAM mode"
-+ depends on OF && PCI
-+ select PCI_HOST_COMMON
-+ select IRQ_DOMAIN
-+ help
-+ Add support for Synopsys DesignWare PCIe controllers configured
-+ by the firmware into ECAM shift mode. In some cases, these are
-+ fully ECAM compliant, in which case the pci-host-generic driver
-+ may be used instead.
-+
- endmenu
-diff --git a/drivers/pci/dwc/Makefile b/drivers/pci/dwc/Makefile
-index c61be97..7d5a23e 100644
---- a/drivers/pci/dwc/Makefile
-+++ b/drivers/pci/dwc/Makefile
-@@ -1,5 +1,6 @@
- # SPDX-License-Identifier: GPL-2.0
- obj-$(CONFIG_PCIE_DW) += pcie-designware.o
- obj-$(CONFIG_PCIE_DW_HOST) += pcie-designware-host.o
-+obj-$(CONFIG_PCIE_DW_HOST_ECAM) += pcie-designware-ecam.o
- obj-$(CONFIG_PCIE_DW_EP) += pcie-designware-ep.o
- obj-$(CONFIG_PCIE_DW_PLAT) += pcie-designware-plat.o
- ifneq ($(filter y,$(CONFIG_PCI_DRA7XX_HOST) $(CONFIG_PCI_DRA7XX_EP)),)
-diff --git a/drivers/pci/dwc/pcie-designware-ecam.c b/drivers/pci/dwc/pcie-designware-ecam.c
-new file mode 100644
-index 0000000..ede627d
---- /dev/null
-+++ b/drivers/pci/dwc/pcie-designware-ecam.c
-@@ -0,0 +1,77 @@
-+/*
-+ * Driver for mostly ECAM compatible Synopsys dw PCIe controllers
-+ * configured by the firmware into RC mode
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ *
-+ * Copyright (C) 2014 ARM Limited
-+ * Copyright (C) 2017 Linaro Limited
-+ *
-+ * Authors: Will Deacon <will.deacon@arm.com>
-+ * Ard Biesheuvel <ard.biesheuvel@linaro.org>
-+ */
-+
-+#include <linux/kernel.h>
-+#include <linux/init.h>
-+#include <linux/of_address.h>
-+#include <linux/of_pci.h>
-+#include <linux/pci-ecam.h>
-+#include <linux/platform_device.h>
-+
-+static int pci_dw_ecam_config_read(struct pci_bus *bus, u32 devfn, int where,
-+ int size, u32 *val)
-+{
-+ struct pci_config_window *cfg = bus->sysdata;
-+
-+ /*
-+ * The Synopsys dw PCIe controller in RC mode will not filter type 0
-+ * config TLPs sent to devices 1 and up on its downstream port,
-+ * resulting in devices appearing multiple times on bus 0 unless we
-+ * filter them here.
-+ */
-+ if (bus->number == cfg->busr.start && PCI_SLOT(devfn) > 0) {
-+ *val = 0xffffffff;
-+ return PCIBIOS_DEVICE_NOT_FOUND;
-+ }
-+ return pci_generic_config_read(bus, devfn, where, size, val);
-+}
-+
-+static int pci_dw_ecam_config_write(struct pci_bus *bus, u32 devfn, int where,
-+ int size, u32 val)
-+{
-+ struct pci_config_window *cfg = bus->sysdata;
-+
-+ if (bus->number == cfg->busr.start && PCI_SLOT(devfn) > 0)
-+ return PCIBIOS_DEVICE_NOT_FOUND;
-+
-+ return pci_generic_config_write(bus, devfn, where, size, val);
-+}
-+
-+static struct pci_ecam_ops pci_dw_ecam_bus_ops = {
-+ .pci_ops.map_bus = pci_ecam_map_bus,
-+ .pci_ops.read = pci_dw_ecam_config_read,
-+ .pci_ops.write = pci_dw_ecam_config_write,
-+ .bus_shift = 20,
-+};
-+
-+static const struct of_device_id pci_dw_ecam_of_match[] = {
-+ { .compatible = "marvell,armada8k-pcie-ecam" },
-+ { .compatible = "socionext,synquacer-pcie-ecam" },
-+ { .compatible = "snps,dw-pcie-ecam" },
-+ { },
-+};
-+
-+static int pci_dw_ecam_probe(struct platform_device *pdev)
-+{
-+ return pci_host_common_probe(pdev, &pci_dw_ecam_bus_ops);
-+}
-+
-+static struct platform_driver pci_dw_ecam_driver = {
-+ .driver.name = "pcie-designware-ecam",
-+ .driver.of_match_table = pci_dw_ecam_of_match,
-+ .driver.suppress_bind_attrs = true,
-+ .probe = pci_dw_ecam_probe,
-+};
-+builtin_platform_driver(pci_dw_ecam_driver);
---
-cgit v1.1
-
From e3dff048a10f16aa0fd32438442ce39558bbdbef Mon Sep 17 00:00:00 2001
From: Jassi Brar <jaswinder.singh@linaro.org>
Date: Tue, 29 Aug 2017 22:45:59 +0530
diff --git a/baseconfig/CONFIG_ACT200L_DONGLE b/baseconfig/CONFIG_ACT200L_DONGLE
deleted file mode 100644
index ea14a0dd3..000000000
--- a/baseconfig/CONFIG_ACT200L_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_ACT200L_DONGLE=m
diff --git a/baseconfig/CONFIG_ACTISYS_DONGLE b/baseconfig/CONFIG_ACTISYS_DONGLE
deleted file mode 100644
index 5180ba7e1..000000000
--- a/baseconfig/CONFIG_ACTISYS_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_ACTISYS_DONGLE=m
diff --git a/baseconfig/CONFIG_ALI_FIR b/baseconfig/CONFIG_ALI_FIR
deleted file mode 100644
index 524b1f1c0..000000000
--- a/baseconfig/CONFIG_ALI_FIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_ALI_FIR=m
diff --git a/baseconfig/CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK b/baseconfig/CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK
new file mode 100644
index 000000000..9839ac072
--- /dev/null
+++ b/baseconfig/CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK
@@ -0,0 +1 @@
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
diff --git a/baseconfig/CONFIG_BPF_JIT_ALWAYS_ON b/baseconfig/CONFIG_BPF_JIT_ALWAYS_ON
new file mode 100644
index 000000000..45aacb434
--- /dev/null
+++ b/baseconfig/CONFIG_BPF_JIT_ALWAYS_ON
@@ -0,0 +1 @@
+CONFIG_BPF_JIT_ALWAYS_ON=y
diff --git a/baseconfig/CONFIG_BTRFS_FS_REF_VERIFY b/baseconfig/CONFIG_BTRFS_FS_REF_VERIFY
new file mode 100644
index 000000000..2fb0f884e
--- /dev/null
+++ b/baseconfig/CONFIG_BTRFS_FS_REF_VERIFY
@@ -0,0 +1 @@
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
diff --git a/baseconfig/CONFIG_BT_HCIBTUSB_AUTOSUSPEND b/baseconfig/CONFIG_BT_HCIBTUSB_AUTOSUSPEND
new file mode 100644
index 000000000..76c0b541b
--- /dev/null
+++ b/baseconfig/CONFIG_BT_HCIBTUSB_AUTOSUSPEND
@@ -0,0 +1 @@
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
diff --git a/baseconfig/CONFIG_CHASH_SELFTEST b/baseconfig/CONFIG_CHASH_SELFTEST
new file mode 100644
index 000000000..d53ef14d0
--- /dev/null
+++ b/baseconfig/CONFIG_CHASH_SELFTEST
@@ -0,0 +1 @@
+# CONFIG_CHASH_SELFTEST is not set
diff --git a/baseconfig/CONFIG_CHASH_STATS b/baseconfig/CONFIG_CHASH_STATS
new file mode 100644
index 000000000..26edbafe8
--- /dev/null
+++ b/baseconfig/CONFIG_CHASH_STATS
@@ -0,0 +1 @@
+# CONFIG_CHASH_STATS is not set
diff --git a/baseconfig/CONFIG_CHT_DC_TI_PMIC_OPREGION b/baseconfig/CONFIG_CHT_DC_TI_PMIC_OPREGION
new file mode 100644
index 000000000..1bb32a12a
--- /dev/null
+++ b/baseconfig/CONFIG_CHT_DC_TI_PMIC_OPREGION
@@ -0,0 +1 @@
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
diff --git a/baseconfig/CONFIG_CPU_ISOLATION b/baseconfig/CONFIG_CPU_ISOLATION
new file mode 100644
index 000000000..1753f3076
--- /dev/null
+++ b/baseconfig/CONFIG_CPU_ISOLATION
@@ -0,0 +1 @@
+# CONFIG_CPU_ISOLATION is not set
diff --git a/baseconfig/CONFIG_CRAMFS_MTD b/baseconfig/CONFIG_CRAMFS_MTD
new file mode 100644
index 000000000..d5c14020f
--- /dev/null
+++ b/baseconfig/CONFIG_CRAMFS_MTD
@@ -0,0 +1 @@
+# CONFIG_CRAMFS_MTD is not set
diff --git a/baseconfig/CONFIG_CRYPTO_SM3 b/baseconfig/CONFIG_CRYPTO_SM3
new file mode 100644
index 000000000..6c7e68386
--- /dev/null
+++ b/baseconfig/CONFIG_CRYPTO_SM3
@@ -0,0 +1 @@
+CONFIG_CRYPTO_SM3=m
diff --git a/baseconfig/CONFIG_DEBUG_KERNEL_DC b/baseconfig/CONFIG_DEBUG_KERNEL_DC
new file mode 100644
index 000000000..8cd6a5085
--- /dev/null
+++ b/baseconfig/CONFIG_DEBUG_KERNEL_DC
@@ -0,0 +1 @@
+# CONFIG_DEBUG_KERNEL_DC is not set
diff --git a/baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible b/baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible
deleted file mode 100644
index fbc8aaef8..000000000
--- a/baseconfig/CONFIG_DEBUG_VM_RB revisit this if performance isn't horrible
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_DEBUG_VM_RB is not set # revisit this if performance isn't horrible
diff --git a/baseconfig/CONFIG_DONGLE b/baseconfig/CONFIG_DONGLE
deleted file mode 100644
index e78b38f81..000000000
--- a/baseconfig/CONFIG_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_DONGLE=y
diff --git a/baseconfig/CONFIG_DP83822_PHY b/baseconfig/CONFIG_DP83822_PHY
new file mode 100644
index 000000000..e97e5ab0d
--- /dev/null
+++ b/baseconfig/CONFIG_DP83822_PHY
@@ -0,0 +1 @@
+CONFIG_DP83822_PHY=m
diff --git a/baseconfig/CONFIG_DPM_WATCHDOG revisit this in debug b/baseconfig/CONFIG_DPM_WATCHDOG
index c12b35c43..c12b35c43 100644
--- a/baseconfig/CONFIG_DPM_WATCHDOG revisit this in debug
+++ b/baseconfig/CONFIG_DPM_WATCHDOG
diff --git a/baseconfig/CONFIG_DRM_AMD_DC b/baseconfig/CONFIG_DRM_AMD_DC
new file mode 100644
index 000000000..a642bb05a
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_AMD_DC
@@ -0,0 +1 @@
+CONFIG_DRM_AMD_DC=y
diff --git a/baseconfig/CONFIG_DRM_AMD_DC_FBC b/baseconfig/CONFIG_DRM_AMD_DC_FBC
new file mode 100644
index 000000000..51e570f30
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_AMD_DC_FBC
@@ -0,0 +1 @@
+# CONFIG_DRM_AMD_DC_FBC is not set
diff --git a/baseconfig/CONFIG_DRM_AMD_DC_PRE_VEGA b/baseconfig/CONFIG_DRM_AMD_DC_PRE_VEGA
new file mode 100644
index 000000000..00ff6c3a2
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_AMD_DC_PRE_VEGA
@@ -0,0 +1 @@
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
diff --git a/baseconfig/CONFIG_DRM_I2C_ADV7511 b/baseconfig/CONFIG_DRM_I2C_ADV7511
index 2d931f712..18208c93f 100644
--- a/baseconfig/CONFIG_DRM_I2C_ADV7511
+++ b/baseconfig/CONFIG_DRM_I2C_ADV7511
@@ -1 +1 @@
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511 is not set
diff --git a/baseconfig/CONFIG_DRM_I2C_ADV7511_CEC b/baseconfig/CONFIG_DRM_I2C_ADV7511_CEC
new file mode 100644
index 000000000..25530967a
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_I2C_ADV7511_CEC
@@ -0,0 +1 @@
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
diff --git a/baseconfig/CONFIG_DRM_PANEL_ORISETECH_OTM8009A b/baseconfig/CONFIG_DRM_PANEL_ORISETECH_OTM8009A
new file mode 100644
index 000000000..34a2378c0
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_PANEL_ORISETECH_OTM8009A
@@ -0,0 +1 @@
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
diff --git a/baseconfig/CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN b/baseconfig/CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN
new file mode 100644
index 000000000..474a0460f
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN
@@ -0,0 +1 @@
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
diff --git a/baseconfig/CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 b/baseconfig/CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03
new file mode 100644
index 000000000..d9e23b754
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03
@@ -0,0 +1 @@
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
diff --git a/baseconfig/CONFIG_DRM_PANEL_SEIKO_43WVF1G b/baseconfig/CONFIG_DRM_PANEL_SEIKO_43WVF1G
new file mode 100644
index 000000000..471d28fa8
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_PANEL_SEIKO_43WVF1G
@@ -0,0 +1 @@
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
diff --git a/baseconfig/CONFIG_DRM_SII9234 b/baseconfig/CONFIG_DRM_SII9234
new file mode 100644
index 000000000..3edd48165
--- /dev/null
+++ b/baseconfig/CONFIG_DRM_SII9234
@@ -0,0 +1 @@
+CONFIG_DRM_SII9234=m
diff --git a/baseconfig/CONFIG_DRM_SIL_SII8620 b/baseconfig/CONFIG_DRM_SIL_SII8620
index 9aa2a3752..651ddf007 100644
--- a/baseconfig/CONFIG_DRM_SIL_SII8620
+++ b/baseconfig/CONFIG_DRM_SIL_SII8620
@@ -1 +1 @@
-CONFIG_DRM_SIL_SII8620=m
+# CONFIG_DRM_SIL_SII8620 is not set
diff --git a/baseconfig/CONFIG_DS4424 b/baseconfig/CONFIG_DS4424
new file mode 100644
index 000000000..199b37762
--- /dev/null
+++ b/baseconfig/CONFIG_DS4424
@@ -0,0 +1 @@
+# CONFIG_DS4424 is not set
diff --git a/baseconfig/CONFIG_ESI_DONGLE b/baseconfig/CONFIG_ESI_DONGLE
deleted file mode 100644
index 08f59c82e..000000000
--- a/baseconfig/CONFIG_ESI_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_ESI_DONGLE=m
diff --git a/baseconfig/CONFIG_GIRBIL_DONGLE b/baseconfig/CONFIG_GIRBIL_DONGLE
deleted file mode 100644
index 108bafcbd..000000000
--- a/baseconfig/CONFIG_GIRBIL_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_GIRBIL_DONGLE=m
diff --git a/baseconfig/CONFIG_GPIO_MAX3191X b/baseconfig/CONFIG_GPIO_MAX3191X
new file mode 100644
index 000000000..b0cd128e8
--- /dev/null
+++ b/baseconfig/CONFIG_GPIO_MAX3191X
@@ -0,0 +1 @@
+# CONFIG_GPIO_MAX3191X is not set
diff --git a/baseconfig/CONFIG_GPIO_MB86S7X b/baseconfig/CONFIG_GPIO_MB86S7X
new file mode 100644
index 000000000..1b3c1acc1
--- /dev/null
+++ b/baseconfig/CONFIG_GPIO_MB86S7X
@@ -0,0 +1 @@
+# CONFIG_GPIO_MB86S7X is not set
diff --git a/baseconfig/CONFIG_GPIO_TEGRA186 b/baseconfig/CONFIG_GPIO_TEGRA186
new file mode 100644
index 000000000..ff21c5964
--- /dev/null
+++ b/baseconfig/CONFIG_GPIO_TEGRA186
@@ -0,0 +1 @@
+# CONFIG_GPIO_TEGRA186 is not set
diff --git a/baseconfig/CONFIG_GUP_BENCHMARK b/baseconfig/CONFIG_GUP_BENCHMARK
new file mode 100644
index 000000000..f978e4899
--- /dev/null
+++ b/baseconfig/CONFIG_GUP_BENCHMARK
@@ -0,0 +1 @@
+# CONFIG_GUP_BENCHMARK is not set
diff --git a/baseconfig/CONFIG_HID_CP2112 b/baseconfig/CONFIG_HID_CP2112
index 3f9425d1d..d0f72fae1 100644
--- a/baseconfig/CONFIG_HID_CP2112
+++ b/baseconfig/CONFIG_HID_CP2112
@@ -1 +1 @@
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
diff --git a/baseconfig/CONFIG_HWSPINLOCK b/baseconfig/CONFIG_HWSPINLOCK
index e35b793e2..6b531e93f 100644
--- a/baseconfig/CONFIG_HWSPINLOCK
+++ b/baseconfig/CONFIG_HWSPINLOCK
@@ -1 +1 @@
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
diff --git a/baseconfig/CONFIG_IIO_CROS_EC_ACCEL_LEGACY b/baseconfig/CONFIG_IIO_CROS_EC_ACCEL_LEGACY
new file mode 100644
index 000000000..9c05b971e
--- /dev/null
+++ b/baseconfig/CONFIG_IIO_CROS_EC_ACCEL_LEGACY
@@ -0,0 +1 @@
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
diff --git a/baseconfig/CONFIG_INTEL_SOC_PMIC_CHTDC_TI b/baseconfig/CONFIG_INTEL_SOC_PMIC_CHTDC_TI
new file mode 100644
index 000000000..4a724aabc
--- /dev/null
+++ b/baseconfig/CONFIG_INTEL_SOC_PMIC_CHTDC_TI
@@ -0,0 +1 @@
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
diff --git a/baseconfig/CONFIG_IP6_NF_TARGET_NPT b/baseconfig/CONFIG_IP6_NF_TARGET_NPT
index bb6d2f77a..e9a67d4fe 100644
--- a/baseconfig/CONFIG_IP6_NF_TARGET_NPT
+++ b/baseconfig/CONFIG_IP6_NF_TARGET_NPT
@@ -1 +1 @@
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
diff --git a/baseconfig/CONFIG_IPMI_PROC_INTERFACE b/baseconfig/CONFIG_IPMI_PROC_INTERFACE
new file mode 100644
index 000000000..c3def049f
--- /dev/null
+++ b/baseconfig/CONFIG_IPMI_PROC_INTERFACE
@@ -0,0 +1 @@
+# CONFIG_IPMI_PROC_INTERFACE is not set
diff --git a/baseconfig/CONFIG_IPX b/baseconfig/CONFIG_IPX
index 42770d9a6..1712b4f38 100644
--- a/baseconfig/CONFIG_IPX
+++ b/baseconfig/CONFIG_IPX
@@ -1 +1 @@
-CONFIG_IPX=m
+# CONFIG_IPX is not set
diff --git a/baseconfig/CONFIG_IRCOMM b/baseconfig/CONFIG_IRCOMM
deleted file mode 100644
index ff705e2aa..000000000
--- a/baseconfig/CONFIG_IRCOMM
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_IRCOMM=m
diff --git a/baseconfig/CONFIG_IRDA b/baseconfig/CONFIG_IRDA
index 1df4b8c1b..54366a325 100644
--- a/baseconfig/CONFIG_IRDA
+++ b/baseconfig/CONFIG_IRDA
@@ -1 +1 @@
-CONFIG_IRDA=m
+# CONFIG_IRDA is not set
diff --git a/baseconfig/CONFIG_IRDA_CACHE_LAST_LSAP b/baseconfig/CONFIG_IRDA_CACHE_LAST_LSAP
deleted file mode 100644
index 111fb584f..000000000
--- a/baseconfig/CONFIG_IRDA_CACHE_LAST_LSAP
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_IRDA_CACHE_LAST_LSAP=y
diff --git a/baseconfig/CONFIG_IRDA_DEBUG b/baseconfig/CONFIG_IRDA_DEBUG
deleted file mode 100644
index c2c9a8911..000000000
--- a/baseconfig/CONFIG_IRDA_DEBUG
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_IRDA_DEBUG is not set
diff --git a/baseconfig/CONFIG_IRDA_FAST_RR b/baseconfig/CONFIG_IRDA_FAST_RR
deleted file mode 100644
index 01803e322..000000000
--- a/baseconfig/CONFIG_IRDA_FAST_RR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_IRDA_FAST_RR=y
diff --git a/baseconfig/CONFIG_IRDA_ULTRA b/baseconfig/CONFIG_IRDA_ULTRA
deleted file mode 100644
index 7da5a957e..000000000
--- a/baseconfig/CONFIG_IRDA_ULTRA
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_IRDA_ULTRA is not set
diff --git a/baseconfig/CONFIG_IRLAN b/baseconfig/CONFIG_IRLAN
deleted file mode 100644
index ce8f69c7c..000000000
--- a/baseconfig/CONFIG_IRLAN
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_IRLAN=m
diff --git a/baseconfig/CONFIG_IRNET b/baseconfig/CONFIG_IRNET
deleted file mode 100644
index 03ad3739c..000000000
--- a/baseconfig/CONFIG_IRNET
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_IRNET=m
diff --git a/baseconfig/CONFIG_IRTTY_SIR b/baseconfig/CONFIG_IRTTY_SIR
deleted file mode 100644
index 530f3c775..000000000
--- a/baseconfig/CONFIG_IRTTY_SIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_IRTTY_SIR=m
diff --git a/baseconfig/CONFIG_IR_SIR b/baseconfig/CONFIG_IR_SIR
index 34ff7a809..58ea0b9e1 100644
--- a/baseconfig/CONFIG_IR_SIR
+++ b/baseconfig/CONFIG_IR_SIR
@@ -1 +1 @@
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
diff --git a/baseconfig/CONFIG_KINGSUN_DONGLE b/baseconfig/CONFIG_KINGSUN_DONGLE
deleted file mode 100644
index b3a114f5c..000000000
--- a/baseconfig/CONFIG_KINGSUN_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_KINGSUN_DONGLE=m
diff --git a/baseconfig/CONFIG_KS959_DONGLE b/baseconfig/CONFIG_KS959_DONGLE
deleted file mode 100644
index e89a9e0c6..000000000
--- a/baseconfig/CONFIG_KS959_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_KS959_DONGLE=m
diff --git a/baseconfig/CONFIG_KSDAZZLE_DONGLE b/baseconfig/CONFIG_KSDAZZLE_DONGLE
deleted file mode 100644
index 22be27940..000000000
--- a/baseconfig/CONFIG_KSDAZZLE_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_KSDAZZLE_DONGLE=m
diff --git a/baseconfig/CONFIG_LEDS_TRIGGER_ACTIVITY b/baseconfig/CONFIG_LEDS_TRIGGER_ACTIVITY
new file mode 100644
index 000000000..286a244c4
--- /dev/null
+++ b/baseconfig/CONFIG_LEDS_TRIGGER_ACTIVITY
@@ -0,0 +1 @@
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
diff --git a/baseconfig/CONFIG_LIRC_SIR b/baseconfig/CONFIG_LIRC_SIR
deleted file mode 100644
index 8b3414e95..000000000
--- a/baseconfig/CONFIG_LIRC_SIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_LIRC_SIR=m
diff --git a/baseconfig/CONFIG_LITELINK_DONGLE b/baseconfig/CONFIG_LITELINK_DONGLE
deleted file mode 100644
index 0695e018d..000000000
--- a/baseconfig/CONFIG_LITELINK_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_LITELINK_DONGLE=m
diff --git a/baseconfig/CONFIG_MA600_DONGLE b/baseconfig/CONFIG_MA600_DONGLE
deleted file mode 100644
index d32eaff57..000000000
--- a/baseconfig/CONFIG_MA600_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_MA600_DONGLE=m
diff --git a/baseconfig/CONFIG_MANAGER_SBS b/baseconfig/CONFIG_MANAGER_SBS
new file mode 100644
index 000000000..aae8258e3
--- /dev/null
+++ b/baseconfig/CONFIG_MANAGER_SBS
@@ -0,0 +1 @@
+# CONFIG_MANAGER_SBS is not set
diff --git a/baseconfig/CONFIG_MCP2120_DONGLE b/baseconfig/CONFIG_MCP2120_DONGLE
deleted file mode 100644
index ca4f23a8a..000000000
--- a/baseconfig/CONFIG_MCP2120_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_MCP2120_DONGLE=m
diff --git a/baseconfig/CONFIG_MCS_FIR b/baseconfig/CONFIG_MCS_FIR
deleted file mode 100644
index bb7384a2b..000000000
--- a/baseconfig/CONFIG_MCS_FIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_MCS_FIR=m
diff --git a/baseconfig/CONFIG_MESON_GX_PM_DOMAINS b/baseconfig/CONFIG_MESON_GX_PM_DOMAINS
new file mode 100644
index 000000000..5d71bc0bc
--- /dev/null
+++ b/baseconfig/CONFIG_MESON_GX_PM_DOMAINS
@@ -0,0 +1 @@
+# CONFIG_MESON_GX_PM_DOMAINS is not set
diff --git a/baseconfig/CONFIG_MESON_MX_EFUSE b/baseconfig/CONFIG_MESON_MX_EFUSE
new file mode 100644
index 000000000..b289cb9dd
--- /dev/null
+++ b/baseconfig/CONFIG_MESON_MX_EFUSE
@@ -0,0 +1 @@
+# CONFIG_MESON_MX_EFUSE is not set
diff --git a/baseconfig/CONFIG_MESON_MX_SOCINFO b/baseconfig/CONFIG_MESON_MX_SOCINFO
new file mode 100644
index 000000000..63f558a2c
--- /dev/null
+++ b/baseconfig/CONFIG_MESON_MX_SOCINFO
@@ -0,0 +1 @@
+# CONFIG_MESON_MX_SOCINFO is not set
diff --git a/baseconfig/CONFIG_MLX4_CORE_GEN2 b/baseconfig/CONFIG_MLX4_CORE_GEN2
new file mode 100644
index 000000000..a6f01dac1
--- /dev/null
+++ b/baseconfig/CONFIG_MLX4_CORE_GEN2
@@ -0,0 +1 @@
+CONFIG_MLX4_CORE_GEN2=y
diff --git a/baseconfig/CONFIG_MMC_SDHCI_OMAP b/baseconfig/CONFIG_MMC_SDHCI_OMAP
new file mode 100644
index 000000000..c5c370b12
--- /dev/null
+++ b/baseconfig/CONFIG_MMC_SDHCI_OMAP
@@ -0,0 +1 @@
+# CONFIG_MMC_SDHCI_OMAP is not set
diff --git a/baseconfig/CONFIG_MTD_SHARPSL_PARTS b/baseconfig/CONFIG_MTD_SHARPSL_PARTS
new file mode 100644
index 000000000..ca1894677
--- /dev/null
+++ b/baseconfig/CONFIG_MTD_SHARPSL_PARTS
@@ -0,0 +1 @@
+# CONFIG_MTD_SHARPSL_PARTS is not set
diff --git a/baseconfig/CONFIG_NCP_FS b/baseconfig/CONFIG_NCP_FS
index 520727796..62eb3bdd0 100644
--- a/baseconfig/CONFIG_NCP_FS
+++ b/baseconfig/CONFIG_NCP_FS
@@ -1 +1 @@
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
diff --git a/baseconfig/CONFIG_NET_SCH_CBS b/baseconfig/CONFIG_NET_SCH_CBS
new file mode 100644
index 000000000..8d0583974
--- /dev/null
+++ b/baseconfig/CONFIG_NET_SCH_CBS
@@ -0,0 +1 @@
+CONFIG_NET_SCH_CBS=m
diff --git a/baseconfig/CONFIG_NOUVEAU_DEBUG_MMU b/baseconfig/CONFIG_NOUVEAU_DEBUG_MMU
new file mode 100644
index 000000000..5d30f4588
--- /dev/null
+++ b/baseconfig/CONFIG_NOUVEAU_DEBUG_MMU
@@ -0,0 +1 @@
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
diff --git a/baseconfig/CONFIG_NSC_FIR b/baseconfig/CONFIG_NSC_FIR
deleted file mode 100644
index fcc795e63..000000000
--- a/baseconfig/CONFIG_NSC_FIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_NSC_FIR=m
diff --git a/baseconfig/CONFIG_NTB_SWITCHTEC b/baseconfig/CONFIG_NTB_SWITCHTEC
new file mode 100644
index 000000000..36258733e
--- /dev/null
+++ b/baseconfig/CONFIG_NTB_SWITCHTEC
@@ -0,0 +1 @@
+CONFIG_NTB_SWITCHTEC=m
diff --git a/baseconfig/CONFIG_NVME_MULTIPATH b/baseconfig/CONFIG_NVME_MULTIPATH
new file mode 100644
index 000000000..7eb14dd07
--- /dev/null
+++ b/baseconfig/CONFIG_NVME_MULTIPATH
@@ -0,0 +1 @@
+CONFIG_NVME_MULTIPATH=y
diff --git a/baseconfig/CONFIG_OLD_BELKIN_DONGLE b/baseconfig/CONFIG_OLD_BELKIN_DONGLE
deleted file mode 100644
index 92a72ab40..000000000
--- a/baseconfig/CONFIG_OLD_BELKIN_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_OLD_BELKIN_DONGLE=m
diff --git a/baseconfig/CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW b/baseconfig/CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW
new file mode 100644
index 000000000..23e8ade16
--- /dev/null
+++ b/baseconfig/CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW
@@ -0,0 +1 @@
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
diff --git a/baseconfig/CONFIG_PINCTRL_CEDARFORK b/baseconfig/CONFIG_PINCTRL_CEDARFORK
new file mode 100644
index 000000000..b723950b2
--- /dev/null
+++ b/baseconfig/CONFIG_PINCTRL_CEDARFORK
@@ -0,0 +1 @@
+CONFIG_PINCTRL_CEDARFORK=m
diff --git a/baseconfig/CONFIG_PINCTRL_MESON_GXBB b/baseconfig/CONFIG_PINCTRL_MESON_GXBB
new file mode 100644
index 000000000..1c1b910ae
--- /dev/null
+++ b/baseconfig/CONFIG_PINCTRL_MESON_GXBB
@@ -0,0 +1 @@
+# CONFIG_PINCTRL_MESON_GXBB is not set
diff --git a/baseconfig/CONFIG_PINCTRL_MESON_GXL b/baseconfig/CONFIG_PINCTRL_MESON_GXL
new file mode 100644
index 000000000..5e0dcb654
--- /dev/null
+++ b/baseconfig/CONFIG_PINCTRL_MESON_GXL
@@ -0,0 +1 @@
+# CONFIG_PINCTRL_MESON_GXL is not set
diff --git a/baseconfig/CONFIG_PREEMPTIRQ_EVENTS b/baseconfig/CONFIG_PREEMPTIRQ_EVENTS
new file mode 100644
index 000000000..a7fcee823
--- /dev/null
+++ b/baseconfig/CONFIG_PREEMPTIRQ_EVENTS
@@ -0,0 +1 @@
+# CONFIG_PREEMPTIRQ_EVENTS is not set
diff --git a/baseconfig/CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT b/baseconfig/CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT
new file mode 100644
index 000000000..8f9c32859
--- /dev/null
+++ b/baseconfig/CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT
@@ -0,0 +1 @@
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
diff --git a/baseconfig/CONFIG_RENESAS_PHY b/baseconfig/CONFIG_RENESAS_PHY
new file mode 100644
index 000000000..2314e0cf2
--- /dev/null
+++ b/baseconfig/CONFIG_RENESAS_PHY
@@ -0,0 +1 @@
+CONFIG_RENESAS_PHY=m
diff --git a/baseconfig/CONFIG_RESET_ATTACK_MITIGATION b/baseconfig/CONFIG_RESET_ATTACK_MITIGATION
index 8202a7865..eea15dd52 100644
--- a/baseconfig/CONFIG_RESET_ATTACK_MITIGATION
+++ b/baseconfig/CONFIG_RESET_ATTACK_MITIGATION
@@ -1 +1 @@
-CONFIG_RESET_ATTACK_MITIGATION=y
+# CONFIG_RESET_ATTACK_MITIGATION is not set
diff --git a/baseconfig/CONFIG_RFD77402 b/baseconfig/CONFIG_RFD77402
new file mode 100644
index 000000000..00383ffd2
--- /dev/null
+++ b/baseconfig/CONFIG_RFD77402
@@ -0,0 +1 @@
+# CONFIG_RFD77402 is not set
diff --git a/baseconfig/CONFIG_RPMSG_VIRTIO b/baseconfig/CONFIG_RPMSG_VIRTIO
new file mode 100644
index 000000000..78f0867f1
--- /dev/null
+++ b/baseconfig/CONFIG_RPMSG_VIRTIO
@@ -0,0 +1 @@
+CONFIG_RPMSG_VIRTIO=m
diff --git a/baseconfig/CONFIG_RTC_DRV_PCF85363 b/baseconfig/CONFIG_RTC_DRV_PCF85363
new file mode 100644
index 000000000..115d491a4
--- /dev/null
+++ b/baseconfig/CONFIG_RTC_DRV_PCF85363
@@ -0,0 +1 @@
+# CONFIG_RTC_DRV_PCF85363 is not set
diff --git a/baseconfig/CONFIG_SATA_MOBILE_LPM_POLICY b/baseconfig/CONFIG_SATA_MOBILE_LPM_POLICY
new file mode 100644
index 000000000..17ae48a01
--- /dev/null
+++ b/baseconfig/CONFIG_SATA_MOBILE_LPM_POLICY
@@ -0,0 +1 @@
+CONFIG_SATA_MOBILE_LPM_POLICY=3
diff --git a/baseconfig/CONFIG_SENSORS_MAX31785 b/baseconfig/CONFIG_SENSORS_MAX31785
new file mode 100644
index 000000000..071991fe5
--- /dev/null
+++ b/baseconfig/CONFIG_SENSORS_MAX31785
@@ -0,0 +1 @@
+# CONFIG_SENSORS_MAX31785 is not set
diff --git a/baseconfig/CONFIG_SENSORS_MAX6621 b/baseconfig/CONFIG_SENSORS_MAX6621
new file mode 100644
index 000000000..cc3cdefc6
--- /dev/null
+++ b/baseconfig/CONFIG_SENSORS_MAX6621
@@ -0,0 +1 @@
+# CONFIG_SENSORS_MAX6621 is not set
diff --git a/baseconfig/CONFIG_SIGMATEL_FIR b/baseconfig/CONFIG_SIGMATEL_FIR
deleted file mode 100644
index 0483fa10a..000000000
--- a/baseconfig/CONFIG_SIGMATEL_FIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_SIGMATEL_FIR=m
diff --git a/baseconfig/CONFIG_SMC_IRCC_FIR b/baseconfig/CONFIG_SMC_IRCC_FIR
deleted file mode 100644
index 2b996d8b9..000000000
--- a/baseconfig/CONFIG_SMC_IRCC_FIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_SMC_IRCC_FIR=m
diff --git a/baseconfig/CONFIG_SND_BCD2000 b/baseconfig/CONFIG_SND_BCD2000
index 0a60c490b..b56c9162f 100644
--- a/baseconfig/CONFIG_SND_BCD2000
+++ b/baseconfig/CONFIG_SND_BCD2000
@@ -1 +1 @@
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
diff --git a/baseconfig/CONFIG_SND_HDA_POWER_SAVE_DEFAULT b/baseconfig/CONFIG_SND_HDA_POWER_SAVE_DEFAULT
index ba018972d..ce02ec981 100644
--- a/baseconfig/CONFIG_SND_HDA_POWER_SAVE_DEFAULT
+++ b/baseconfig/CONFIG_SND_HDA_POWER_SAVE_DEFAULT
@@ -1 +1 @@
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
diff --git a/baseconfig/CONFIG_SND_SOC_AMD_CZ_RT5645_MACH b/baseconfig/CONFIG_SND_SOC_AMD_CZ_RT5645_MACH
new file mode 100644
index 000000000..063f93a99
--- /dev/null
+++ b/baseconfig/CONFIG_SND_SOC_AMD_CZ_RT5645_MACH
@@ -0,0 +1 @@
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
diff --git a/baseconfig/CONFIG_SOUND_PRIME b/baseconfig/CONFIG_SOUND_PRIME
deleted file mode 100644
index 7a8a0ab6b..000000000
--- a/baseconfig/CONFIG_SOUND_PRIME
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_SOUND_PRIME is not set
diff --git a/baseconfig/CONFIG_TEGRA_BPMP_THERMAL b/baseconfig/CONFIG_TEGRA_BPMP_THERMAL
new file mode 100644
index 000000000..e1e1b80f4
--- /dev/null
+++ b/baseconfig/CONFIG_TEGRA_BPMP_THERMAL
@@ -0,0 +1 @@
+# CONFIG_TEGRA_BPMP_THERMAL is not set
diff --git a/baseconfig/CONFIG_TEKRAM_DONGLE b/baseconfig/CONFIG_TEKRAM_DONGLE
deleted file mode 100644
index b68cfc30c..000000000
--- a/baseconfig/CONFIG_TEKRAM_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_TEKRAM_DONGLE=m
diff --git a/baseconfig/CONFIG_TEST_FIND_BIT b/baseconfig/CONFIG_TEST_FIND_BIT
new file mode 100644
index 000000000..23788bfbd
--- /dev/null
+++ b/baseconfig/CONFIG_TEST_FIND_BIT
@@ -0,0 +1 @@
+# CONFIG_TEST_FIND_BIT is not set
diff --git a/baseconfig/CONFIG_TI_DAC082S085 b/baseconfig/CONFIG_TI_DAC082S085
new file mode 100644
index 000000000..90397f5e3
--- /dev/null
+++ b/baseconfig/CONFIG_TI_DAC082S085
@@ -0,0 +1 @@
+# CONFIG_TI_DAC082S085 is not set
diff --git a/baseconfig/CONFIG_TOIM3232_DONGLE b/baseconfig/CONFIG_TOIM3232_DONGLE
deleted file mode 100644
index a657c0499..000000000
--- a/baseconfig/CONFIG_TOIM3232_DONGLE
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_TOIM3232_DONGLE=m
diff --git a/baseconfig/CONFIG_TOSHIBA_FIR b/baseconfig/CONFIG_TOSHIBA_FIR
deleted file mode 100644
index fd5cda6bb..000000000
--- a/baseconfig/CONFIG_TOSHIBA_FIR
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_TOSHIBA_FIR is not set
diff --git a/baseconfig/CONFIG_TOUCHSCREEN_EXC3000 b/baseconfig/CONFIG_TOUCHSCREEN_EXC3000
new file mode 100644
index 000000000..99f4f0f0f
--- /dev/null
+++ b/baseconfig/CONFIG_TOUCHSCREEN_EXC3000
@@ -0,0 +1 @@
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
diff --git a/baseconfig/CONFIG_TOUCHSCREEN_HIDEEP b/baseconfig/CONFIG_TOUCHSCREEN_HIDEEP
new file mode 100644
index 000000000..95f913e6f
--- /dev/null
+++ b/baseconfig/CONFIG_TOUCHSCREEN_HIDEEP
@@ -0,0 +1 @@
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
diff --git a/baseconfig/CONFIG_TOUCHSCREEN_S6SY761 b/baseconfig/CONFIG_TOUCHSCREEN_S6SY761
new file mode 100644
index 000000000..3b9b34f03
--- /dev/null
+++ b/baseconfig/CONFIG_TOUCHSCREEN_S6SY761
@@ -0,0 +1 @@
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
diff --git a/baseconfig/CONFIG_TPS68470_PMIC_OPREGION b/baseconfig/CONFIG_TPS68470_PMIC_OPREGION
new file mode 100644
index 000000000..1668945e0
--- /dev/null
+++ b/baseconfig/CONFIG_TPS68470_PMIC_OPREGION
@@ -0,0 +1 @@
+# CONFIG_TPS68470_PMIC_OPREGION is not set
diff --git a/baseconfig/CONFIG_TYPEC b/baseconfig/CONFIG_TYPEC
new file mode 100644
index 000000000..d8e689e93
--- /dev/null
+++ b/baseconfig/CONFIG_TYPEC
@@ -0,0 +1 @@
+CONFIG_TYPEC=m
diff --git a/baseconfig/CONFIG_TYPEC_TPS6598X b/baseconfig/CONFIG_TYPEC_TPS6598X
new file mode 100644
index 000000000..b6ef0d699
--- /dev/null
+++ b/baseconfig/CONFIG_TYPEC_TPS6598X
@@ -0,0 +1 @@
+CONFIG_TYPEC_TPS6598X=m
diff --git a/baseconfig/CONFIG_USB_GADGET_LEGACY b/baseconfig/CONFIG_USB_GADGET_LEGACY
new file mode 100644
index 000000000..9c3130405
--- /dev/null
+++ b/baseconfig/CONFIG_USB_GADGET_LEGACY
@@ -0,0 +1 @@
+# CONFIG_USB_GADGET_LEGACY is not set
diff --git a/baseconfig/CONFIG_USB_IRDA b/baseconfig/CONFIG_USB_IRDA
deleted file mode 100644
index 320b0d8b0..000000000
--- a/baseconfig/CONFIG_USB_IRDA
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_USB_IRDA=m
diff --git a/baseconfig/CONFIG_VIA_FIR b/baseconfig/CONFIG_VIA_FIR
deleted file mode 100644
index a123178c8..000000000
--- a/baseconfig/CONFIG_VIA_FIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_VIA_FIR=m
diff --git a/baseconfig/CONFIG_VLSI_FIR b/baseconfig/CONFIG_VLSI_FIR
deleted file mode 100644
index fbade657a..000000000
--- a/baseconfig/CONFIG_VLSI_FIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_VLSI_FIR=m
diff --git a/baseconfig/CONFIG_VSOCKETS_DIAG b/baseconfig/CONFIG_VSOCKETS_DIAG
new file mode 100644
index 000000000..89432b02b
--- /dev/null
+++ b/baseconfig/CONFIG_VSOCKETS_DIAG
@@ -0,0 +1 @@
+CONFIG_VSOCKETS_DIAG=m
diff --git a/baseconfig/CONFIG_W1_SLAVE_DS28E17 b/baseconfig/CONFIG_W1_SLAVE_DS28E17
new file mode 100644
index 000000000..2349a7bea
--- /dev/null
+++ b/baseconfig/CONFIG_W1_SLAVE_DS28E17
@@ -0,0 +1 @@
+# CONFIG_W1_SLAVE_DS28E17 is not set
diff --git a/baseconfig/CONFIG_WINBOND_FIR b/baseconfig/CONFIG_WINBOND_FIR
deleted file mode 100644
index 672756266..000000000
--- a/baseconfig/CONFIG_WINBOND_FIR
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_WINBOND_FIR=m
diff --git a/baseconfig/CONFIG_XEN_PVCALLS_FRONTEND b/baseconfig/CONFIG_XEN_PVCALLS_FRONTEND
new file mode 100644
index 000000000..057a41318
--- /dev/null
+++ b/baseconfig/CONFIG_XEN_PVCALLS_FRONTEND
@@ -0,0 +1 @@
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
diff --git a/baseconfig/CONFIG_XFS_ONLINE_SCRUB b/baseconfig/CONFIG_XFS_ONLINE_SCRUB
new file mode 100644
index 000000000..dd4ff1f48
--- /dev/null
+++ b/baseconfig/CONFIG_XFS_ONLINE_SCRUB
@@ -0,0 +1 @@
+# CONFIG_XFS_ONLINE_SCRUB is not set
diff --git a/baseconfig/arm/CONFIG_ARCH_BCM_HR2 b/baseconfig/arm/CONFIG_ARCH_BCM_HR2
new file mode 100644
index 000000000..e7a5a2028
--- /dev/null
+++ b/baseconfig/arm/CONFIG_ARCH_BCM_HR2
@@ -0,0 +1 @@
+# CONFIG_ARCH_BCM_HR2 is not set
diff --git a/baseconfig/arm/CONFIG_ARM_SPE_PMU b/baseconfig/arm/CONFIG_ARM_SPE_PMU
new file mode 100644
index 000000000..c7f32cf49
--- /dev/null
+++ b/baseconfig/arm/CONFIG_ARM_SPE_PMU
@@ -0,0 +1 @@
+CONFIG_ARM_SPE_PMU=m
diff --git a/baseconfig/arm/CONFIG_BINFMT_ELF_FDPIC b/baseconfig/arm/CONFIG_BINFMT_ELF_FDPIC
new file mode 100644
index 000000000..f399e3a85
--- /dev/null
+++ b/baseconfig/arm/CONFIG_BINFMT_ELF_FDPIC
@@ -0,0 +1 @@
+# CONFIG_BINFMT_ELF_FDPIC is not set
diff --git a/baseconfig/arm/armv7/CONFIG_DRM_SUN4I_HDMI b/baseconfig/arm/CONFIG_DRM_SUN4I_HDMI
index cda1f60f8..cda1f60f8 100644
--- a/baseconfig/arm/armv7/CONFIG_DRM_SUN4I_HDMI
+++ b/baseconfig/arm/CONFIG_DRM_SUN4I_HDMI
diff --git a/baseconfig/arm/CONFIG_DRM_SUN4I_HDMI_CEC b/baseconfig/arm/CONFIG_DRM_SUN4I_HDMI_CEC
new file mode 100644
index 000000000..146d9409f
--- /dev/null
+++ b/baseconfig/arm/CONFIG_DRM_SUN4I_HDMI_CEC
@@ -0,0 +1 @@
+CONFIG_DRM_SUN4I_HDMI_CEC=y
diff --git a/baseconfig/arm/armv7/CONFIG_GPIO_PCF857X b/baseconfig/arm/CONFIG_GPIO_PCF857X
index a5a82a6b0..a5a82a6b0 100644
--- a/baseconfig/arm/armv7/CONFIG_GPIO_PCF857X
+++ b/baseconfig/arm/CONFIG_GPIO_PCF857X
diff --git a/baseconfig/arm/CONFIG_HISI_PMU b/baseconfig/arm/CONFIG_HISI_PMU
new file mode 100644
index 000000000..7bd6395da
--- /dev/null
+++ b/baseconfig/arm/CONFIG_HISI_PMU
@@ -0,0 +1 @@
+CONFIG_HISI_PMU=y
diff --git a/baseconfig/arm/CONFIG_MESON_IRQ_GPIO b/baseconfig/arm/CONFIG_MESON_IRQ_GPIO
new file mode 100644
index 000000000..ee5500285
--- /dev/null
+++ b/baseconfig/arm/CONFIG_MESON_IRQ_GPIO
@@ -0,0 +1 @@
+CONFIG_MESON_IRQ_GPIO=y
diff --git a/baseconfig/arm/CONFIG_MMC_MESON_MX_SDIO b/baseconfig/arm/CONFIG_MMC_MESON_MX_SDIO
new file mode 100644
index 000000000..4b58af460
--- /dev/null
+++ b/baseconfig/arm/CONFIG_MMC_MESON_MX_SDIO
@@ -0,0 +1 @@
+CONFIG_MMC_MESON_MX_SDIO=m
diff --git a/baseconfig/arm/CONFIG_MMC_SDHCI_OMAP b/baseconfig/arm/CONFIG_MMC_SDHCI_OMAP
new file mode 100644
index 000000000..293bf33c5
--- /dev/null
+++ b/baseconfig/arm/CONFIG_MMC_SDHCI_OMAP
@@ -0,0 +1 @@
+CONFIG_MMC_SDHCI_OMAP=m
diff --git a/baseconfig/arm/CONFIG_NVMEM_SNVS_LPGPR b/baseconfig/arm/CONFIG_NVMEM_SNVS_LPGPR
new file mode 100644
index 000000000..be81f38c4
--- /dev/null
+++ b/baseconfig/arm/CONFIG_NVMEM_SNVS_LPGPR
@@ -0,0 +1 @@
+# CONFIG_NVMEM_SNVS_LPGPR is not set
diff --git a/baseconfig/arm/CONFIG_PCIE_HISI_STB b/baseconfig/arm/CONFIG_PCIE_HISI_STB
new file mode 100644
index 000000000..40c67db5f
--- /dev/null
+++ b/baseconfig/arm/CONFIG_PCIE_HISI_STB
@@ -0,0 +1 @@
+CONFIG_PCIE_HISI_STB=y
diff --git a/baseconfig/arm/CONFIG_PINCTRL_MESON8 b/baseconfig/arm/CONFIG_PINCTRL_MESON8
new file mode 100644
index 000000000..49f6d3fc4
--- /dev/null
+++ b/baseconfig/arm/CONFIG_PINCTRL_MESON8
@@ -0,0 +1 @@
+# CONFIG_PINCTRL_MESON8 is not set
diff --git a/baseconfig/arm/CONFIG_PINCTRL_MESON8B b/baseconfig/arm/CONFIG_PINCTRL_MESON8B
new file mode 100644
index 000000000..fe5151cbd
--- /dev/null
+++ b/baseconfig/arm/CONFIG_PINCTRL_MESON8B
@@ -0,0 +1 @@
+# CONFIG_PINCTRL_MESON8B is not set
diff --git a/baseconfig/arm/CONFIG_QCOM_RMTFS_MEM b/baseconfig/arm/CONFIG_QCOM_RMTFS_MEM
new file mode 100644
index 000000000..3d1c319a9
--- /dev/null
+++ b/baseconfig/arm/CONFIG_QCOM_RMTFS_MEM
@@ -0,0 +1 @@
+CONFIG_QCOM_RMTFS_MEM=m
diff --git a/baseconfig/arm/CONFIG_RESET_SIMPLE b/baseconfig/arm/CONFIG_RESET_SIMPLE
new file mode 100644
index 000000000..663fbe2ec
--- /dev/null
+++ b/baseconfig/arm/CONFIG_RESET_SIMPLE
@@ -0,0 +1 @@
+CONFIG_RESET_SIMPLE=y
diff --git a/baseconfig/arm/CONFIG_ROCKCHIP_LVDS b/baseconfig/arm/CONFIG_ROCKCHIP_LVDS
new file mode 100644
index 000000000..8ea9897b8
--- /dev/null
+++ b/baseconfig/arm/CONFIG_ROCKCHIP_LVDS
@@ -0,0 +1 @@
+CONFIG_ROCKCHIP_LVDS=y
diff --git a/baseconfig/arm/CONFIG_SIMPLE_PM_BUS b/baseconfig/arm/CONFIG_SIMPLE_PM_BUS
new file mode 100644
index 000000000..3cc21476a
--- /dev/null
+++ b/baseconfig/arm/CONFIG_SIMPLE_PM_BUS
@@ -0,0 +1 @@
+CONFIG_SIMPLE_PM_BUS=y
diff --git a/baseconfig/arm/CONFIG_VIDEO_ROCKCHIP_RGA b/baseconfig/arm/CONFIG_VIDEO_ROCKCHIP_RGA
new file mode 100644
index 000000000..433e78fa5
--- /dev/null
+++ b/baseconfig/arm/CONFIG_VIDEO_ROCKCHIP_RGA
@@ -0,0 +1 @@
+CONFIG_VIDEO_ROCKCHIP_RGA=m
diff --git a/baseconfig/arm/CONFIG_VIDEO_TEGRA_HDMI_CEC b/baseconfig/arm/CONFIG_VIDEO_TEGRA_HDMI_CEC
new file mode 100644
index 000000000..01064a677
--- /dev/null
+++ b/baseconfig/arm/CONFIG_VIDEO_TEGRA_HDMI_CEC
@@ -0,0 +1 @@
+CONFIG_VIDEO_TEGRA_HDMI_CEC=m
diff --git a/baseconfig/arm/arm64/CONFIG_64BIT b/baseconfig/arm/aarch64/CONFIG_64BIT
index 06a94e48b..06a94e48b 100644
--- a/baseconfig/arm/arm64/CONFIG_64BIT
+++ b/baseconfig/arm/aarch64/CONFIG_64BIT
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI b/baseconfig/arm/aarch64/CONFIG_ACPI
index 839566bae..839566bae 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_APEI b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI
index 9ab33facf..9ab33facf 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_APEI
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_EINJ b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_EINJ
index 2d03b69a1..2d03b69a1 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_EINJ
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_EINJ
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_ERST_DEBUG b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_ERST_DEBUG
index 235760d40..235760d40 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_ERST_DEBUG
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_ERST_DEBUG
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_GHES b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_GHES
index 8fd037d8f..8fd037d8f 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_GHES
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_GHES
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_MEMORY_FAILURE b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_MEMORY_FAILURE
index 46aa1579f..46aa1579f 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_MEMORY_FAILURE
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_MEMORY_FAILURE
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_PCIEAER b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_PCIEAER
index 26f3e9129..26f3e9129 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_PCIEAER
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_PCIEAER
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_SEA b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_SEA
index db573ffb8..db573ffb8 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_APEI_SEA
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_APEI_SEA
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_BGRT b/baseconfig/arm/aarch64/CONFIG_ACPI_BGRT
index 13035dd82..13035dd82 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_BGRT
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_BGRT
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_BUTTON b/baseconfig/arm/aarch64/CONFIG_ACPI_BUTTON
index e40dff40b..e40dff40b 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_BUTTON
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_BUTTON
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_CONFIGFS b/baseconfig/arm/aarch64/CONFIG_ACPI_CONFIGFS
index fc2af2c0b..fc2af2c0b 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_CONFIGFS
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_CONFIGFS
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_CONTAINER b/baseconfig/arm/aarch64/CONFIG_ACPI_CONTAINER
index 24287daf8..24287daf8 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_CONTAINER
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_CONTAINER
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_CPPC_CPUFREQ b/baseconfig/arm/aarch64/CONFIG_ACPI_CPPC_CPUFREQ
index 5cc88132a..5cc88132a 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_CPPC_CPUFREQ
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_CPPC_CPUFREQ
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_CUSTOM_METHOD b/baseconfig/arm/aarch64/CONFIG_ACPI_CUSTOM_METHOD
index 76853b6d8..76853b6d8 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_CUSTOM_METHOD
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_CUSTOM_METHOD
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_DOCK b/baseconfig/arm/aarch64/CONFIG_ACPI_DOCK
index e4d916353..e4d916353 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_DOCK
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_DOCK
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_EC_DEBUGFS b/baseconfig/arm/aarch64/CONFIG_ACPI_EC_DEBUGFS
index df1424cee..df1424cee 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_EC_DEBUGFS
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_EC_DEBUGFS
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_FAN b/baseconfig/arm/aarch64/CONFIG_ACPI_FAN
index f45a96673..f45a96673 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_FAN
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_FAN
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_HED b/baseconfig/arm/aarch64/CONFIG_ACPI_HED
index 06042df5a..06042df5a 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_HED
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_HED
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_I2C_OPREGION b/baseconfig/arm/aarch64/CONFIG_ACPI_I2C_OPREGION
index 92036b975..92036b975 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_I2C_OPREGION
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_I2C_OPREGION
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_IPMI b/baseconfig/arm/aarch64/CONFIG_ACPI_IPMI
index e40fb9aea..e40fb9aea 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_IPMI
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_IPMI
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_NFIT b/baseconfig/arm/aarch64/CONFIG_ACPI_NFIT
index 922b719bf..922b719bf 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_NFIT
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_NFIT
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_NFIT_DEBUG b/baseconfig/arm/aarch64/CONFIG_ACPI_NFIT_DEBUG
index fc829324f..fc829324f 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_NFIT_DEBUG
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_NFIT_DEBUG
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_NUMA b/baseconfig/arm/aarch64/CONFIG_ACPI_NUMA
index 19881f440..19881f440 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_NUMA
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_NUMA
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_PROCESSOR b/baseconfig/arm/aarch64/CONFIG_ACPI_PROCESSOR
index a24416dcf..a24416dcf 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_PROCESSOR
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_PROCESSOR
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_PROCFS_POWER b/baseconfig/arm/aarch64/CONFIG_ACPI_PROCFS_POWER
index 26cea3179..26cea3179 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_PROCFS_POWER
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_PROCFS_POWER
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_TABLE_UPGRADE b/baseconfig/arm/aarch64/CONFIG_ACPI_TABLE_UPGRADE
index 276233fba..276233fba 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_TABLE_UPGRADE
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_TABLE_UPGRADE
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_THERMAL b/baseconfig/arm/aarch64/CONFIG_ACPI_THERMAL
index 1bd7964b4..1bd7964b4 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_THERMAL
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_THERMAL
diff --git a/baseconfig/arm/arm64/CONFIG_ACPI_WATCHDOG b/baseconfig/arm/aarch64/CONFIG_ACPI_WATCHDOG
index d82966e07..d82966e07 100644
--- a/baseconfig/arm/arm64/CONFIG_ACPI_WATCHDOG
+++ b/baseconfig/arm/aarch64/CONFIG_ACPI_WATCHDOG
diff --git a/baseconfig/arm/arm64/CONFIG_AHCI_SUNXI b/baseconfig/arm/aarch64/CONFIG_AHCI_SUNXI
index 91560d628..91560d628 100644
--- a/baseconfig/arm/arm64/CONFIG_AHCI_SUNXI
+++ b/baseconfig/arm/aarch64/CONFIG_AHCI_SUNXI
diff --git a/baseconfig/arm/arm64/CONFIG_AHCI_XGENE b/baseconfig/arm/aarch64/CONFIG_AHCI_XGENE
index 7e02b9914..7e02b9914 100644
--- a/baseconfig/arm/arm64/CONFIG_AHCI_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_AHCI_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_AMBA_PL08X b/baseconfig/arm/aarch64/CONFIG_AMBA_PL08X
index a13d91b90..a13d91b90 100644
--- a/baseconfig/arm/arm64/CONFIG_AMBA_PL08X
+++ b/baseconfig/arm/aarch64/CONFIG_AMBA_PL08X
diff --git a/baseconfig/arm/arm64/CONFIG_AMD_XGBE b/baseconfig/arm/aarch64/CONFIG_AMD_XGBE
index 27be1a7ee..27be1a7ee 100644
--- a/baseconfig/arm/arm64/CONFIG_AMD_XGBE
+++ b/baseconfig/arm/aarch64/CONFIG_AMD_XGBE
diff --git a/baseconfig/arm/arm64/CONFIG_AMD_XGBE_DCB b/baseconfig/arm/aarch64/CONFIG_AMD_XGBE_DCB
index f3cdcca89..f3cdcca89 100644
--- a/baseconfig/arm/arm64/CONFIG_AMD_XGBE_DCB
+++ b/baseconfig/arm/aarch64/CONFIG_AMD_XGBE_DCB
diff --git a/baseconfig/arm/arm64/CONFIG_APQ_GCC_8084 b/baseconfig/arm/aarch64/CONFIG_APQ_GCC_8084
index bacb61e5e..bacb61e5e 100644
--- a/baseconfig/arm/arm64/CONFIG_APQ_GCC_8084
+++ b/baseconfig/arm/aarch64/CONFIG_APQ_GCC_8084
diff --git a/baseconfig/arm/arm64/CONFIG_APQ_MMCC_8084 b/baseconfig/arm/aarch64/CONFIG_APQ_MMCC_8084
index 05c8d0c7b..05c8d0c7b 100644
--- a/baseconfig/arm/arm64/CONFIG_APQ_MMCC_8084
+++ b/baseconfig/arm/aarch64/CONFIG_APQ_MMCC_8084
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_ALPINE b/baseconfig/arm/aarch64/CONFIG_ARCH_ALPINE
index a347a04fc..a347a04fc 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_ALPINE
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_ALPINE
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_BERLIN b/baseconfig/arm/aarch64/CONFIG_ARCH_BERLIN
index 9a647a4a1..9a647a4a1 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_BERLIN
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_BERLIN
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_EXYNOS b/baseconfig/arm/aarch64/CONFIG_ARCH_EXYNOS
index 1ee894dd8..1ee894dd8 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_EXYNOS
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_EXYNOS
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_HAS_HOLES_MEMORYMODEL b/baseconfig/arm/aarch64/CONFIG_ARCH_HAS_HOLES_MEMORYMODEL
index e87b4da10..e87b4da10 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_HAS_HOLES_MEMORYMODEL
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_HAS_HOLES_MEMORYMODEL
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_HISI b/baseconfig/arm/aarch64/CONFIG_ARCH_HISI
index 9afa5dcee..9afa5dcee 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_HISI
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_HISI
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_LAYERSCAPE b/baseconfig/arm/aarch64/CONFIG_ARCH_LAYERSCAPE
index 257f6f91d..257f6f91d 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_LAYERSCAPE
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_LAYERSCAPE
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_LG1K b/baseconfig/arm/aarch64/CONFIG_ARCH_LG1K
index 0d73af4e2..0d73af4e2 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_LG1K
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_LG1K
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_MEDIATEK b/baseconfig/arm/aarch64/CONFIG_ARCH_MEDIATEK
index 62b0a1f19..62b0a1f19 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_MEDIATEK
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_MEDIATEK
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_QCOM b/baseconfig/arm/aarch64/CONFIG_ARCH_QCOM
index e51a38aa6..e51a38aa6 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_QCOM
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_QCOM
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_REALTEK b/baseconfig/arm/aarch64/CONFIG_ARCH_REALTEK
index 49536f6d5..49536f6d5 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_REALTEK
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_REALTEK
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_RENESAS b/baseconfig/arm/aarch64/CONFIG_ARCH_RENESAS
index 0fa3a2ec3..0fa3a2ec3 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_RENESAS
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_RENESAS
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_SEATTLE b/baseconfig/arm/aarch64/CONFIG_ARCH_SEATTLE
index 83c1e8bc4..83c1e8bc4 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_SEATTLE
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_SEATTLE
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_SPRD b/baseconfig/arm/aarch64/CONFIG_ARCH_SPRD
index a090576de..a090576de 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_SPRD
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_SPRD
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_STRATIX10 b/baseconfig/arm/aarch64/CONFIG_ARCH_STRATIX10
index ef575bb37..ef575bb37 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_STRATIX10
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_STRATIX10
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_SUNXI b/baseconfig/arm/aarch64/CONFIG_ARCH_SUNXI
index 6cf4026fd..6cf4026fd 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_SUNXI
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_SUNXI
diff --git a/baseconfig/arm/aarch64/CONFIG_ARCH_SYNQUACER b/baseconfig/arm/aarch64/CONFIG_ARCH_SYNQUACER
new file mode 100644
index 000000000..e1902121d
--- /dev/null
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_SYNQUACER
@@ -0,0 +1 @@
+CONFIG_ARCH_SYNQUACER=y
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_TEGRA b/baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA
index 3b74d56f4..3b74d56f4 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_TEGRA
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_132_SOC b/baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_132_SOC
index b6d3de856..b6d3de856 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_132_SOC
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_132_SOC
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_186_SOC b/baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_186_SOC
index 1cafdb24f..1cafdb24f 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_186_SOC
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_186_SOC
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_210_SOC b/baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_210_SOC
index 0750c3ec0..0750c3ec0 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_TEGRA_210_SOC
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_TEGRA_210_SOC
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_THUNDER b/baseconfig/arm/aarch64/CONFIG_ARCH_THUNDER
index fc1527e5e..fc1527e5e 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_THUNDER
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_THUNDER
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_THUNDER2 b/baseconfig/arm/aarch64/CONFIG_ARCH_THUNDER2
index aa0f1f319..aa0f1f319 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_THUNDER2
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_THUNDER2
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_UNIPHIER b/baseconfig/arm/aarch64/CONFIG_ARCH_UNIPHIER
index 2c1103337..2c1103337 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_UNIPHIER
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_UNIPHIER
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_XGENE b/baseconfig/arm/aarch64/CONFIG_ARCH_XGENE
index c1bd4d116..c1bd4d116 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_ZX b/baseconfig/arm/aarch64/CONFIG_ARCH_ZX
index ec10bbf1d..ec10bbf1d 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_ZX
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_ZX
diff --git a/baseconfig/arm/arm64/CONFIG_ARCH_ZYNQMP b/baseconfig/arm/aarch64/CONFIG_ARCH_ZYNQMP
index f92a386c6..f92a386c6 100644
--- a/baseconfig/arm/arm64/CONFIG_ARCH_ZYNQMP
+++ b/baseconfig/arm/aarch64/CONFIG_ARCH_ZYNQMP
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64 b/baseconfig/arm/aarch64/CONFIG_ARM64
index e40393f9a..e40393f9a 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_4K_PAGES b/baseconfig/arm/aarch64/CONFIG_ARM64_4K_PAGES
index 5df91df1a..5df91df1a 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_4K_PAGES
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_4K_PAGES
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_ACPI_PARKING_PROTOCOL b/baseconfig/arm/aarch64/CONFIG_ARM64_ACPI_PARKING_PROTOCOL
index bdb51423d..bdb51423d 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_ACPI_PARKING_PROTOCOL
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_ACPI_PARKING_PROTOCOL
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_CRYPTO b/baseconfig/arm/aarch64/CONFIG_ARM64_CRYPTO
index 3e9856e5e..3e9856e5e 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_CRYPTO
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_CRYPTO
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_819472 b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_819472
index e53fbbbe5..e53fbbbe5 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_819472
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_819472
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_824069 b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_824069
index 2b4897f44..2b4897f44 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_824069
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_824069
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_826319 b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_826319
index 8a3b9aaaf..8a3b9aaaf 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_826319
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_826319
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_827319 b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_827319
index d341b420c..d341b420c 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_827319
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_827319
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_832075 b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_832075
index 9d1f8fcd7..9d1f8fcd7 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_832075
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_832075
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_834220 b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_834220
index a4bf47d17..a4bf47d17 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_834220
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_834220
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_843419 b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_843419
index 303cae762..303cae762 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_ERRATUM_843419
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_ERRATUM_843419
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_HW_AFDBM b/baseconfig/arm/aarch64/CONFIG_ARM64_HW_AFDBM
index 4fc9f03d7..4fc9f03d7 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_HW_AFDBM
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_HW_AFDBM
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_LSE_ATOMICS b/baseconfig/arm/aarch64/CONFIG_ARM64_LSE_ATOMICS
index a54d60033..a54d60033 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_LSE_ATOMICS
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_LSE_ATOMICS
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_PAN b/baseconfig/arm/aarch64/CONFIG_ARM64_PAN
index ac8c85ac7..ac8c85ac7 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_PAN
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_PAN
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_PMEM b/baseconfig/arm/aarch64/CONFIG_ARM64_PMEM
index 9325600d1..9325600d1 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_PMEM
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_PMEM
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_PTDUMP b/baseconfig/arm/aarch64/CONFIG_ARM64_PTDUMP
index 5090299f2..5090299f2 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_PTDUMP
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_PTDUMP
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_PTDUMP_DEBUGFS b/baseconfig/arm/aarch64/CONFIG_ARM64_PTDUMP_DEBUGFS
index 2d698a99e..2d698a99e 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_PTDUMP_DEBUGFS
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_PTDUMP_DEBUGFS
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET b/baseconfig/arm/aarch64/CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET
index a7f7cd778..a7f7cd778 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_RELOC_TEST b/baseconfig/arm/aarch64/CONFIG_ARM64_RELOC_TEST
index 864fc6a6b..864fc6a6b 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_RELOC_TEST
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_RELOC_TEST
diff --git a/baseconfig/arm/aarch64/CONFIG_ARM64_SVE b/baseconfig/arm/aarch64/CONFIG_ARM64_SVE
new file mode 100644
index 000000000..cbb647e27
--- /dev/null
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_SVE
@@ -0,0 +1 @@
+CONFIG_ARM64_SVE=y
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_SW_TTBR0_PAN b/baseconfig/arm/aarch64/CONFIG_ARM64_SW_TTBR0_PAN
index 294c8ec50..294c8ec50 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_SW_TTBR0_PAN
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_SW_TTBR0_PAN
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_UAO b/baseconfig/arm/aarch64/CONFIG_ARM64_UAO
index 1b63cd45c..1b63cd45c 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_UAO
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_UAO
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_VA_BITS b/baseconfig/arm/aarch64/CONFIG_ARM64_VA_BITS
index 3a2764df2..3a2764df2 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_VA_BITS
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_VA_BITS
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_VA_BITS_48 b/baseconfig/arm/aarch64/CONFIG_ARM64_VA_BITS_48
index 1bafe6e58..1bafe6e58 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_VA_BITS_48
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_VA_BITS_48
diff --git a/baseconfig/arm/arm64/CONFIG_ARM64_VHE b/baseconfig/arm/aarch64/CONFIG_ARM64_VHE
index 340b2bf98..340b2bf98 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM64_VHE
+++ b/baseconfig/arm/aarch64/CONFIG_ARM64_VHE
diff --git a/baseconfig/arm/arm64/CONFIG_ARMADA_AP806_SYSCON b/baseconfig/arm/aarch64/CONFIG_ARMADA_AP806_SYSCON
index c0741cab5..c0741cab5 100644
--- a/baseconfig/arm/arm64/CONFIG_ARMADA_AP806_SYSCON
+++ b/baseconfig/arm/aarch64/CONFIG_ARMADA_AP806_SYSCON
diff --git a/baseconfig/arm/arm64/CONFIG_ARM_SBSA_WATCHDOG b/baseconfig/arm/aarch64/CONFIG_ARM_SBSA_WATCHDOG
index 01aa8f152..01aa8f152 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM_SBSA_WATCHDOG
+++ b/baseconfig/arm/aarch64/CONFIG_ARM_SBSA_WATCHDOG
diff --git a/baseconfig/arm/arm64/CONFIG_ARM_SMMU_V3 b/baseconfig/arm/aarch64/CONFIG_ARM_SMMU_V3
index 83d144ae0..83d144ae0 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM_SMMU_V3
+++ b/baseconfig/arm/aarch64/CONFIG_ARM_SMMU_V3
diff --git a/baseconfig/arm/arm64/CONFIG_ARM_TEGRA186_CPUFREQ b/baseconfig/arm/aarch64/CONFIG_ARM_TEGRA186_CPUFREQ
index f0e165dfb..f0e165dfb 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM_TEGRA186_CPUFREQ
+++ b/baseconfig/arm/aarch64/CONFIG_ARM_TEGRA186_CPUFREQ
diff --git a/baseconfig/arm/arm64/CONFIG_ARM_TEGRA_DEVFREQ b/baseconfig/arm/aarch64/CONFIG_ARM_TEGRA_DEVFREQ
index d64e3e373..d64e3e373 100644
--- a/baseconfig/arm/arm64/CONFIG_ARM_TEGRA_DEVFREQ
+++ b/baseconfig/arm/aarch64/CONFIG_ARM_TEGRA_DEVFREQ
diff --git a/baseconfig/arm/arm64/CONFIG_ATA_ACPI b/baseconfig/arm/aarch64/CONFIG_ATA_ACPI
index a0be76e56..a0be76e56 100644
--- a/baseconfig/arm/arm64/CONFIG_ATA_ACPI
+++ b/baseconfig/arm/aarch64/CONFIG_ATA_ACPI
diff --git a/baseconfig/arm/arm64/CONFIG_AXP20X_ADC b/baseconfig/arm/aarch64/CONFIG_AXP20X_ADC
index 025239f25..025239f25 100644
--- a/baseconfig/arm/arm64/CONFIG_AXP20X_ADC
+++ b/baseconfig/arm/aarch64/CONFIG_AXP20X_ADC
diff --git a/baseconfig/arm/arm64/CONFIG_AXP20X_POWER b/baseconfig/arm/aarch64/CONFIG_AXP20X_POWER
index ddf89f551..ddf89f551 100644
--- a/baseconfig/arm/arm64/CONFIG_AXP20X_POWER
+++ b/baseconfig/arm/aarch64/CONFIG_AXP20X_POWER
diff --git a/baseconfig/arm/arm64/CONFIG_AXP288_ADC b/baseconfig/arm/aarch64/CONFIG_AXP288_ADC
index e138f36af..e138f36af 100644
--- a/baseconfig/arm/arm64/CONFIG_AXP288_ADC
+++ b/baseconfig/arm/aarch64/CONFIG_AXP288_ADC
diff --git a/baseconfig/arm/arm64/CONFIG_AXP288_CHARGER b/baseconfig/arm/aarch64/CONFIG_AXP288_CHARGER
index 0418f962c..0418f962c 100644
--- a/baseconfig/arm/arm64/CONFIG_AXP288_CHARGER
+++ b/baseconfig/arm/aarch64/CONFIG_AXP288_CHARGER
diff --git a/baseconfig/arm/arm64/CONFIG_AXP288_FUEL_GAUGE b/baseconfig/arm/aarch64/CONFIG_AXP288_FUEL_GAUGE
index e171b954b..e171b954b 100644
--- a/baseconfig/arm/arm64/CONFIG_AXP288_FUEL_GAUGE
+++ b/baseconfig/arm/aarch64/CONFIG_AXP288_FUEL_GAUGE
diff --git a/baseconfig/arm/arm64/CONFIG_BATTERY_AXP20X b/baseconfig/arm/aarch64/CONFIG_BATTERY_AXP20X
index 75591a277..75591a277 100644
--- a/baseconfig/arm/arm64/CONFIG_BATTERY_AXP20X
+++ b/baseconfig/arm/aarch64/CONFIG_BATTERY_AXP20X
diff --git a/baseconfig/arm/arm64/CONFIG_BCMA_POSSIBLE b/baseconfig/arm/aarch64/CONFIG_BCMA_POSSIBLE
index aa4a92690..aa4a92690 100644
--- a/baseconfig/arm/arm64/CONFIG_BCMA_POSSIBLE
+++ b/baseconfig/arm/aarch64/CONFIG_BCMA_POSSIBLE
diff --git a/baseconfig/arm/arm64/CONFIG_BCM_PDC_MBOX b/baseconfig/arm/aarch64/CONFIG_BCM_PDC_MBOX
index 23c2457df..23c2457df 100644
--- a/baseconfig/arm/arm64/CONFIG_BCM_PDC_MBOX
+++ b/baseconfig/arm/aarch64/CONFIG_BCM_PDC_MBOX
diff --git a/baseconfig/arm/arm64/CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE b/baseconfig/arm/aarch64/CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE
index 71343dc66..71343dc66 100644
--- a/baseconfig/arm/arm64/CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE
+++ b/baseconfig/arm/aarch64/CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE
diff --git a/baseconfig/arm/arm64/CONFIG_BRCMUTIL b/baseconfig/arm/aarch64/CONFIG_BRCMUTIL
index 66c5eac06..66c5eac06 100644
--- a/baseconfig/arm/arm64/CONFIG_BRCMUTIL
+++ b/baseconfig/arm/aarch64/CONFIG_BRCMUTIL
diff --git a/baseconfig/arm/arm64/CONFIG_BTT b/baseconfig/arm/aarch64/CONFIG_BTT
index 9cfddf1b9..9cfddf1b9 100644
--- a/baseconfig/arm/arm64/CONFIG_BTT
+++ b/baseconfig/arm/aarch64/CONFIG_BTT
diff --git a/baseconfig/arm/arm64/CONFIG_BT_QCOMSMD b/baseconfig/arm/aarch64/CONFIG_BT_QCOMSMD
index 9f36fb6a8..9f36fb6a8 100644
--- a/baseconfig/arm/arm64/CONFIG_BT_QCOMSMD
+++ b/baseconfig/arm/aarch64/CONFIG_BT_QCOMSMD
diff --git a/baseconfig/arm/arm64/CONFIG_BUG b/baseconfig/arm/aarch64/CONFIG_BUG
index 7a3a7bf96..7a3a7bf96 100644
--- a/baseconfig/arm/arm64/CONFIG_BUG
+++ b/baseconfig/arm/aarch64/CONFIG_BUG
diff --git a/baseconfig/arm/arm64/CONFIG_CAN_SUN4I b/baseconfig/arm/aarch64/CONFIG_CAN_SUN4I
index 925f02a15..925f02a15 100644
--- a/baseconfig/arm/arm64/CONFIG_CAN_SUN4I
+++ b/baseconfig/arm/aarch64/CONFIG_CAN_SUN4I
diff --git a/baseconfig/arm/arm64/CONFIG_CAVIUM_CPT b/baseconfig/arm/aarch64/CONFIG_CAVIUM_CPT
index 183805687..183805687 100644
--- a/baseconfig/arm/arm64/CONFIG_CAVIUM_CPT
+++ b/baseconfig/arm/aarch64/CONFIG_CAVIUM_CPT
diff --git a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_22375 b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_22375
index e173734bd..e173734bd 100644
--- a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_22375
+++ b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_22375
diff --git a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_23144 b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_23144
index 59e70bcee..59e70bcee 100644
--- a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_23144
+++ b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_23144
diff --git a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_23154 b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_23154
index 04080e787..04080e787 100644
--- a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_23154
+++ b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_23154
diff --git a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_27456 b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_27456
index 540c84307..540c84307 100644
--- a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_27456
+++ b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_27456
diff --git a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_30115 b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_30115
index e3f4218af..e3f4218af 100644
--- a/baseconfig/arm/arm64/CONFIG_CAVIUM_ERRATUM_30115
+++ b/baseconfig/arm/aarch64/CONFIG_CAVIUM_ERRATUM_30115
diff --git a/baseconfig/arm/arm64/CONFIG_CHARGER_AXP20X b/baseconfig/arm/aarch64/CONFIG_CHARGER_AXP20X
index 2e64e7733..2e64e7733 100644
--- a/baseconfig/arm/arm64/CONFIG_CHARGER_AXP20X
+++ b/baseconfig/arm/aarch64/CONFIG_CHARGER_AXP20X
diff --git a/baseconfig/arm/arm64/CONFIG_CHARGER_MANAGER b/baseconfig/arm/aarch64/CONFIG_CHARGER_MANAGER
index 51fe252eb..51fe252eb 100644
--- a/baseconfig/arm/arm64/CONFIG_CHARGER_MANAGER
+++ b/baseconfig/arm/aarch64/CONFIG_CHARGER_MANAGER
diff --git a/baseconfig/arm/arm64/CONFIG_CHARGER_QCOM_SMBB b/baseconfig/arm/aarch64/CONFIG_CHARGER_QCOM_SMBB
index 43a91eb0e..43a91eb0e 100644
--- a/baseconfig/arm/arm64/CONFIG_CHARGER_QCOM_SMBB
+++ b/baseconfig/arm/aarch64/CONFIG_CHARGER_QCOM_SMBB
diff --git a/baseconfig/arm/arm64/CONFIG_CLKDEV_LOOKUP b/baseconfig/arm/aarch64/CONFIG_CLKDEV_LOOKUP
index 90b1babeb..90b1babeb 100644
--- a/baseconfig/arm/arm64/CONFIG_CLKDEV_LOOKUP
+++ b/baseconfig/arm/aarch64/CONFIG_CLKDEV_LOOKUP
diff --git a/baseconfig/arm/arm64/CONFIG_CMDLINE b/baseconfig/arm/aarch64/CONFIG_CMDLINE
index f218410dc..f218410dc 100644
--- a/baseconfig/arm/arm64/CONFIG_CMDLINE
+++ b/baseconfig/arm/aarch64/CONFIG_CMDLINE
diff --git a/baseconfig/arm/arm64/CONFIG_CMDLINE_FORCE b/baseconfig/arm/aarch64/CONFIG_CMDLINE_FORCE
index db59f3770..db59f3770 100644
--- a/baseconfig/arm/arm64/CONFIG_CMDLINE_FORCE
+++ b/baseconfig/arm/aarch64/CONFIG_CMDLINE_FORCE
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3516CV300 b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3516CV300
index 2c50858a5..2c50858a5 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3516CV300
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3516CV300
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3519 b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3519
index 5484a59ba..5484a59ba 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3519
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3519
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3660 b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3660
index 44693544d..44693544d 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3660
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3660
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3798CV200 b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3798CV200
index 8d91e10e1..8d91e10e1 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI3798CV200
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI3798CV200
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI6220 b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI6220
index 440b714f5..440b714f5 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI6220
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI6220
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI655X b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI655X
index 18ddc0770..18ddc0770 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_HI655X
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_HI655X
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_PWM b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_PWM
index 08193dd2c..08193dd2c 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_PWM
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_PWM
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_QCOM b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_QCOM
index 2b7c64357..2b7c64357 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_QCOM
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_QCOM
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_XGENE b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_XGENE
index 44d0a9d9b..44d0a9d9b 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_CLK_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_CLK_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_COMMON_RESET_HI6220 b/baseconfig/arm/aarch64/CONFIG_COMMON_RESET_HI6220
index a603d7319..a603d7319 100644
--- a/baseconfig/arm/arm64/CONFIG_COMMON_RESET_HI6220
+++ b/baseconfig/arm/aarch64/CONFIG_COMMON_RESET_HI6220
diff --git a/baseconfig/arm/arm64/CONFIG_COMPAT b/baseconfig/arm/aarch64/CONFIG_COMPAT
index 3e041f1b6..3e041f1b6 100644
--- a/baseconfig/arm/arm64/CONFIG_COMPAT
+++ b/baseconfig/arm/aarch64/CONFIG_COMPAT
diff --git a/baseconfig/arm/arm64/CONFIG_CONSOLE_TRANSLATIONS b/baseconfig/arm/aarch64/CONFIG_CONSOLE_TRANSLATIONS
index 983fcc993..983fcc993 100644
--- a/baseconfig/arm/arm64/CONFIG_CONSOLE_TRANSLATIONS
+++ b/baseconfig/arm/aarch64/CONFIG_CONSOLE_TRANSLATIONS
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64 b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64
index dd0ae2c1d..dd0ae2c1d 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_BS b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_BS
index 6e0427353..6e0427353 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_BS
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_BS
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE
index 720099599..720099599 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE_BLK b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE_BLK
index b07b273c0..b07b273c0 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE_BLK
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE_BLK
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE_CCM b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE_CCM
index 20ef5afff..20ef5afff 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_CE_CCM
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_CE_CCM
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_NEON_BLK b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_NEON_BLK
index 2ac813860..2ac813860 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_AES_ARM64_NEON_BLK
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_AES_ARM64_NEON_BLK
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_CRC32_ARM64 b/baseconfig/arm/aarch64/CONFIG_CRYPTO_CRC32_ARM64
index 845ef5159..845ef5159 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_CRC32_ARM64
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_CRC32_ARM64
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CAVIUM_ZIP b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CAVIUM_ZIP
index d5226e157..d5226e157 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CAVIUM_ZIP
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CAVIUM_ZIP
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP
index d2f5497f2..d2f5497f2 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP_CRYPTO b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP_CRYPTO
index 4887c6d76..4887c6d76 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP_CRYPTO
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP_CRYPTO
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP_DD b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP_DD
index 18c7b900e..18c7b900e 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_CCP_DD
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_CCP_DD
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_QCE b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_QCE
index 27a3f7204..27a3f7204 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_QCE
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_QCE
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_SAFEXCEL b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_SAFEXCEL
index 61cb97435..61cb97435 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_DEV_SAFEXCEL
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_DEV_SAFEXCEL
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_GHASH_ARM64_CE b/baseconfig/arm/aarch64/CONFIG_CRYPTO_GHASH_ARM64_CE
index f2db2f21a..f2db2f21a 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_GHASH_ARM64_CE
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_GHASH_ARM64_CE
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_SHA1_ARM64_CE b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA1_ARM64_CE
index 3fe882cad..3fe882cad 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_SHA1_ARM64_CE
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA1_ARM64_CE
diff --git a/baseconfig/arm/arm64/CONFIG_CRYPTO_SHA2_ARM64_CE b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA2_ARM64_CE
index 5d79a86a6..5d79a86a6 100644
--- a/baseconfig/arm/arm64/CONFIG_CRYPTO_SHA2_ARM64_CE
+++ b/baseconfig/arm/aarch64/CONFIG_CRYPTO_SHA2_ARM64_CE
diff --git a/baseconfig/arm/arm64/CONFIG_DEBUG_ALIGN_RODATA b/baseconfig/arm/aarch64/CONFIG_DEBUG_ALIGN_RODATA
index 4b5ff5066..4b5ff5066 100644
--- a/baseconfig/arm/arm64/CONFIG_DEBUG_ALIGN_RODATA
+++ b/baseconfig/arm/aarch64/CONFIG_DEBUG_ALIGN_RODATA
diff --git a/baseconfig/arm/arm64/CONFIG_DEBUG_EFI b/baseconfig/arm/aarch64/CONFIG_DEBUG_EFI
index 68b7b8a1e..68b7b8a1e 100644
--- a/baseconfig/arm/arm64/CONFIG_DEBUG_EFI
+++ b/baseconfig/arm/aarch64/CONFIG_DEBUG_EFI
diff --git a/baseconfig/arm/arm64/CONFIG_DEBUG_SECTION_MISMATCH b/baseconfig/arm/aarch64/CONFIG_DEBUG_SECTION_MISMATCH
index 441e3464c..441e3464c 100644
--- a/baseconfig/arm/arm64/CONFIG_DEBUG_SECTION_MISMATCH
+++ b/baseconfig/arm/aarch64/CONFIG_DEBUG_SECTION_MISMATCH
diff --git a/baseconfig/arm/arm64/CONFIG_DEBUG_WX b/baseconfig/arm/aarch64/CONFIG_DEBUG_WX
index 95e08f44b..95e08f44b 100644
--- a/baseconfig/arm/arm64/CONFIG_DEBUG_WX
+++ b/baseconfig/arm/aarch64/CONFIG_DEBUG_WX
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_HISI_KIRIN b/baseconfig/arm/aarch64/CONFIG_DRM_HISI_KIRIN
index 271def0dd..271def0dd 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_HISI_KIRIN
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_HISI_KIRIN
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM b/baseconfig/arm/aarch64/CONFIG_DRM_MSM
index 0a1adfc20..0a1adfc20 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI
index 87b627906..87b627906 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_14NM_PHY b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_14NM_PHY
index 397f69094..397f69094 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_14NM_PHY
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_14NM_PHY
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_20NM_PHY b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_20NM_PHY
index 7595ae205..7595ae205 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_20NM_PHY
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_20NM_PHY
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_28NM_8960_PHY b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_28NM_8960_PHY
index 5d86a4597..5d86a4597 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_28NM_8960_PHY
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_28NM_8960_PHY
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_28NM_PHY b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_28NM_PHY
index ea1c4f918..ea1c4f918 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_28NM_PHY
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_28NM_PHY
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_PLL b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_PLL
index 16ac280e6..16ac280e6 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM_DSI_PLL
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_DSI_PLL
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM_HDMI_HDCP b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_HDMI_HDCP
index 2adc35b99..2adc35b99 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM_HDMI_HDCP
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_HDMI_HDCP
diff --git a/baseconfig/arm/arm64/CONFIG_DRM_MSM_REGISTER_LOGGING b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_REGISTER_LOGGING
index 83c03d92d..83c03d92d 100644
--- a/baseconfig/arm/arm64/CONFIG_DRM_MSM_REGISTER_LOGGING
+++ b/baseconfig/arm/aarch64/CONFIG_DRM_MSM_REGISTER_LOGGING
diff --git a/baseconfig/arm/arm64/CONFIG_DVB_B2C2_FLEXCOP_USB b/baseconfig/arm/aarch64/CONFIG_DVB_B2C2_FLEXCOP_USB
index 5f48affe6..5f48affe6 100644
--- a/baseconfig/arm/arm64/CONFIG_DVB_B2C2_FLEXCOP_USB
+++ b/baseconfig/arm/aarch64/CONFIG_DVB_B2C2_FLEXCOP_USB
diff --git a/baseconfig/arm/arm64/CONFIG_DWMAC_IPQ806X b/baseconfig/arm/aarch64/CONFIG_DWMAC_IPQ806X
index 49177a6db..49177a6db 100644
--- a/baseconfig/arm/arm64/CONFIG_DWMAC_IPQ806X
+++ b/baseconfig/arm/aarch64/CONFIG_DWMAC_IPQ806X
diff --git a/baseconfig/arm/arm64/CONFIG_DWMAC_SUN8I b/baseconfig/arm/aarch64/CONFIG_DWMAC_SUN8I
index ce05f93b3..ce05f93b3 100644
--- a/baseconfig/arm/arm64/CONFIG_DWMAC_SUN8I
+++ b/baseconfig/arm/aarch64/CONFIG_DWMAC_SUN8I
diff --git a/baseconfig/arm/arm64/CONFIG_DWMAC_SUNXI b/baseconfig/arm/aarch64/CONFIG_DWMAC_SUNXI
index 254fc7d8a..254fc7d8a 100644
--- a/baseconfig/arm/arm64/CONFIG_DWMAC_SUNXI
+++ b/baseconfig/arm/aarch64/CONFIG_DWMAC_SUNXI
diff --git a/baseconfig/arm/arm64/CONFIG_EDAC_THUNDERX b/baseconfig/arm/aarch64/CONFIG_EDAC_THUNDERX
index dae44bb02..dae44bb02 100644
--- a/baseconfig/arm/arm64/CONFIG_EDAC_THUNDERX
+++ b/baseconfig/arm/aarch64/CONFIG_EDAC_THUNDERX
diff --git a/baseconfig/arm/arm64/CONFIG_EDAC_XGENE b/baseconfig/arm/aarch64/CONFIG_EDAC_XGENE
index dbadc3572..dbadc3572 100644
--- a/baseconfig/arm/arm64/CONFIG_EDAC_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_EDAC_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_EXTCON_AXP288 b/baseconfig/arm/aarch64/CONFIG_EXTCON_AXP288
index 7fadeb58d..7fadeb58d 100644
--- a/baseconfig/arm/arm64/CONFIG_EXTCON_AXP288
+++ b/baseconfig/arm/aarch64/CONFIG_EXTCON_AXP288
diff --git a/baseconfig/arm/arm64/CONFIG_EXTCON_QCOM_SPMI_MISC b/baseconfig/arm/aarch64/CONFIG_EXTCON_QCOM_SPMI_MISC
index b52487909..b52487909 100644
--- a/baseconfig/arm/arm64/CONFIG_EXTCON_QCOM_SPMI_MISC
+++ b/baseconfig/arm/aarch64/CONFIG_EXTCON_QCOM_SPMI_MISC
diff --git a/baseconfig/arm/arm64/CONFIG_FB_MODE_HELPERS b/baseconfig/arm/aarch64/CONFIG_FB_MODE_HELPERS
index 84f515748..84f515748 100644
--- a/baseconfig/arm/arm64/CONFIG_FB_MODE_HELPERS
+++ b/baseconfig/arm/aarch64/CONFIG_FB_MODE_HELPERS
diff --git a/baseconfig/arm/arm64/CONFIG_FORCE_MAX_ZONEORDER b/baseconfig/arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER
index 6d42a47fc..6d42a47fc 100644
--- a/baseconfig/arm/arm64/CONFIG_FORCE_MAX_ZONEORDER
+++ b/baseconfig/arm/aarch64/CONFIG_FORCE_MAX_ZONEORDER
diff --git a/baseconfig/arm/arm64/CONFIG_FSL_ERRATUM_A008585 b/baseconfig/arm/aarch64/CONFIG_FSL_ERRATUM_A008585
index 8dce0afd8..8dce0afd8 100644
--- a/baseconfig/arm/arm64/CONFIG_FSL_ERRATUM_A008585
+++ b/baseconfig/arm/aarch64/CONFIG_FSL_ERRATUM_A008585
diff --git a/baseconfig/arm/arm64/CONFIG_FSL_MC_BUS b/baseconfig/arm/aarch64/CONFIG_FSL_MC_BUS
index dddc2f1f3..dddc2f1f3 100644
--- a/baseconfig/arm/arm64/CONFIG_FSL_MC_BUS
+++ b/baseconfig/arm/aarch64/CONFIG_FSL_MC_BUS
diff --git a/baseconfig/arm/arm64/CONFIG_FUJITSU_ES b/baseconfig/arm/aarch64/CONFIG_FUJITSU_ES
index 39b50c904..39b50c904 100644
--- a/baseconfig/arm/arm64/CONFIG_FUJITSU_ES
+++ b/baseconfig/arm/aarch64/CONFIG_FUJITSU_ES
diff --git a/baseconfig/arm/arm64/CONFIG_GPIO_AXP209 b/baseconfig/arm/aarch64/CONFIG_GPIO_AXP209
index 2365ae707..2365ae707 100644
--- a/baseconfig/arm/arm64/CONFIG_GPIO_AXP209
+++ b/baseconfig/arm/aarch64/CONFIG_GPIO_AXP209
diff --git a/baseconfig/arm/arm64/CONFIG_GPIO_MAX77620 b/baseconfig/arm/aarch64/CONFIG_GPIO_MAX77620
index fd5e22a31..fd5e22a31 100644
--- a/baseconfig/arm/arm64/CONFIG_GPIO_MAX77620
+++ b/baseconfig/arm/aarch64/CONFIG_GPIO_MAX77620
diff --git a/baseconfig/arm/arm64/CONFIG_GPIO_THUNDERX b/baseconfig/arm/aarch64/CONFIG_GPIO_THUNDERX
index 6895cc045..6895cc045 100644
--- a/baseconfig/arm/arm64/CONFIG_GPIO_THUNDERX
+++ b/baseconfig/arm/aarch64/CONFIG_GPIO_THUNDERX
diff --git a/baseconfig/arm/arm64/CONFIG_GPIO_XGENE b/baseconfig/arm/aarch64/CONFIG_GPIO_XGENE
index f210ebcce..f210ebcce 100644
--- a/baseconfig/arm/arm64/CONFIG_GPIO_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_GPIO_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_GPIO_XGENE_SB b/baseconfig/arm/aarch64/CONFIG_GPIO_XGENE_SB
index 01e294075..01e294075 100644
--- a/baseconfig/arm/arm64/CONFIG_GPIO_XGENE_SB
+++ b/baseconfig/arm/aarch64/CONFIG_GPIO_XGENE_SB
diff --git a/baseconfig/arm/arm64/CONFIG_GPIO_XLP b/baseconfig/arm/aarch64/CONFIG_GPIO_XLP
index f99cd41f3..f99cd41f3 100644
--- a/baseconfig/arm/arm64/CONFIG_GPIO_XLP
+++ b/baseconfig/arm/aarch64/CONFIG_GPIO_XLP
diff --git a/baseconfig/arm/arm64/CONFIG_HI6220_MBOX b/baseconfig/arm/aarch64/CONFIG_HI6220_MBOX
index 5fd48c60e..5fd48c60e 100644
--- a/baseconfig/arm/arm64/CONFIG_HI6220_MBOX
+++ b/baseconfig/arm/aarch64/CONFIG_HI6220_MBOX
diff --git a/baseconfig/arm/arm64/CONFIG_HISILICON_ERRATUM_161010101 b/baseconfig/arm/aarch64/CONFIG_HISILICON_ERRATUM_161010101
index b5914254a..b5914254a 100644
--- a/baseconfig/arm/arm64/CONFIG_HISILICON_ERRATUM_161010101
+++ b/baseconfig/arm/aarch64/CONFIG_HISILICON_ERRATUM_161010101
diff --git a/baseconfig/arm/aarch64/CONFIG_HISILICON_ERRATUM_161600802 b/baseconfig/arm/aarch64/CONFIG_HISILICON_ERRATUM_161600802
new file mode 100644
index 000000000..86ef85f43
--- /dev/null
+++ b/baseconfig/arm/aarch64/CONFIG_HISILICON_ERRATUM_161600802
@@ -0,0 +1 @@
+CONFIG_HISILICON_ERRATUM_161600802=y
diff --git a/baseconfig/arm/arm64/CONFIG_HISILICON_IRQ_MBIGEN b/baseconfig/arm/aarch64/CONFIG_HISILICON_IRQ_MBIGEN
index 5ca6d30d1..5ca6d30d1 100644
--- a/baseconfig/arm/arm64/CONFIG_HISILICON_IRQ_MBIGEN
+++ b/baseconfig/arm/aarch64/CONFIG_HISILICON_IRQ_MBIGEN
diff --git a/baseconfig/arm/arm64/CONFIG_HISI_KIRIN_DW_DSI b/baseconfig/arm/aarch64/CONFIG_HISI_KIRIN_DW_DSI
index cef60968e..cef60968e 100644
--- a/baseconfig/arm/arm64/CONFIG_HISI_KIRIN_DW_DSI
+++ b/baseconfig/arm/aarch64/CONFIG_HISI_KIRIN_DW_DSI
diff --git a/baseconfig/arm/arm64/CONFIG_HISI_THERMAL b/baseconfig/arm/aarch64/CONFIG_HISI_THERMAL
index 05fc96b89..05fc96b89 100644
--- a/baseconfig/arm/arm64/CONFIG_HISI_THERMAL
+++ b/baseconfig/arm/aarch64/CONFIG_HISI_THERMAL
diff --git a/baseconfig/arm/arm64/CONFIG_HOTPLUG_PCI_SHPC b/baseconfig/arm/aarch64/CONFIG_HOTPLUG_PCI_SHPC
index f03be8a8f..f03be8a8f 100644
--- a/baseconfig/arm/arm64/CONFIG_HOTPLUG_PCI_SHPC
+++ b/baseconfig/arm/aarch64/CONFIG_HOTPLUG_PCI_SHPC
diff --git a/baseconfig/arm/arm64/CONFIG_HVC_DCC b/baseconfig/arm/aarch64/CONFIG_HVC_DCC
index b2e800764..b2e800764 100644
--- a/baseconfig/arm/arm64/CONFIG_HVC_DCC
+++ b/baseconfig/arm/aarch64/CONFIG_HVC_DCC
diff --git a/baseconfig/arm/arm64/CONFIG_HVC_DRIVER b/baseconfig/arm/aarch64/CONFIG_HVC_DRIVER
index 2b13a0cc9..2b13a0cc9 100644
--- a/baseconfig/arm/arm64/CONFIG_HVC_DRIVER
+++ b/baseconfig/arm/aarch64/CONFIG_HVC_DRIVER
diff --git a/baseconfig/arm/arm64/CONFIG_HWSPINLOCK_QCOM b/baseconfig/arm/aarch64/CONFIG_HWSPINLOCK_QCOM
index 5dfdf858e..5dfdf858e 100644
--- a/baseconfig/arm/arm64/CONFIG_HWSPINLOCK_QCOM
+++ b/baseconfig/arm/aarch64/CONFIG_HWSPINLOCK_QCOM
diff --git a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_CAVIUM b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_CAVIUM
index e3bec9744..e3bec9744 100644
--- a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_CAVIUM
+++ b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_CAVIUM
diff --git a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_HISI b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_HISI
index 3f6b707f6..3f6b707f6 100644
--- a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_HISI
+++ b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_HISI
diff --git a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_MSM b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_MSM
index b95d5cb24..b95d5cb24 100644
--- a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_MSM
+++ b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_MSM
diff --git a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_OMAP b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_OMAP
index cf37a6e35..cf37a6e35 100644
--- a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_OMAP
+++ b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_OMAP
diff --git a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_XGENE b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_XGENE
index 85af60d35..85af60d35 100644
--- a/baseconfig/arm/arm64/CONFIG_HW_RANDOM_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_HW_RANDOM_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_HZ b/baseconfig/arm/aarch64/CONFIG_HZ
index bfc405e03..bfc405e03 100644
--- a/baseconfig/arm/arm64/CONFIG_HZ
+++ b/baseconfig/arm/aarch64/CONFIG_HZ
diff --git a/baseconfig/arm/arm64/CONFIG_HZ_100 b/baseconfig/arm/aarch64/CONFIG_HZ_100
index 11bd2afa2..11bd2afa2 100644
--- a/baseconfig/arm/arm64/CONFIG_HZ_100
+++ b/baseconfig/arm/aarch64/CONFIG_HZ_100
diff --git a/baseconfig/arm/arm64/CONFIG_HZ_1000 b/baseconfig/arm/aarch64/CONFIG_HZ_1000
index c211724d6..c211724d6 100644
--- a/baseconfig/arm/arm64/CONFIG_HZ_1000
+++ b/baseconfig/arm/aarch64/CONFIG_HZ_1000
diff --git a/baseconfig/arm/arm64/CONFIG_I2C_HIX5HD2 b/baseconfig/arm/aarch64/CONFIG_I2C_HIX5HD2
index 7b16fe2e5..7b16fe2e5 100644
--- a/baseconfig/arm/arm64/CONFIG_I2C_HIX5HD2
+++ b/baseconfig/arm/aarch64/CONFIG_I2C_HIX5HD2
diff --git a/baseconfig/arm/arm64/CONFIG_I2C_QUP b/baseconfig/arm/aarch64/CONFIG_I2C_QUP
index 7fb7cd350..7fb7cd350 100644
--- a/baseconfig/arm/arm64/CONFIG_I2C_QUP
+++ b/baseconfig/arm/aarch64/CONFIG_I2C_QUP
diff --git a/baseconfig/arm/arm64/CONFIG_I2C_SCMI b/baseconfig/arm/aarch64/CONFIG_I2C_SCMI
index 6e60bd4e1..6e60bd4e1 100644
--- a/baseconfig/arm/arm64/CONFIG_I2C_SCMI
+++ b/baseconfig/arm/aarch64/CONFIG_I2C_SCMI
diff --git a/baseconfig/arm/arm64/CONFIG_I2C_THUNDERX b/baseconfig/arm/aarch64/CONFIG_I2C_THUNDERX
index c544a8c68..c544a8c68 100644
--- a/baseconfig/arm/arm64/CONFIG_I2C_THUNDERX
+++ b/baseconfig/arm/aarch64/CONFIG_I2C_THUNDERX
diff --git a/baseconfig/arm/arm64/CONFIG_I2C_XGENE_SLIMPRO b/baseconfig/arm/aarch64/CONFIG_I2C_XGENE_SLIMPRO
index 44af582d4..44af582d4 100644
--- a/baseconfig/arm/arm64/CONFIG_I2C_XGENE_SLIMPRO
+++ b/baseconfig/arm/aarch64/CONFIG_I2C_XGENE_SLIMPRO
diff --git a/baseconfig/arm/arm64/CONFIG_I2C_XLP9XX b/baseconfig/arm/aarch64/CONFIG_I2C_XLP9XX
index bcc41c376..bcc41c376 100644
--- a/baseconfig/arm/arm64/CONFIG_I2C_XLP9XX
+++ b/baseconfig/arm/aarch64/CONFIG_I2C_XLP9XX
diff --git a/baseconfig/arm/arm64/CONFIG_INPUT_AXP20X_PEK b/baseconfig/arm/aarch64/CONFIG_INPUT_AXP20X_PEK
index e2fbdf907..e2fbdf907 100644
--- a/baseconfig/arm/arm64/CONFIG_INPUT_AXP20X_PEK
+++ b/baseconfig/arm/aarch64/CONFIG_INPUT_AXP20X_PEK
diff --git a/baseconfig/arm/arm64/CONFIG_INPUT_HISI_POWERKEY b/baseconfig/arm/aarch64/CONFIG_INPUT_HISI_POWERKEY
index bd59856f3..bd59856f3 100644
--- a/baseconfig/arm/arm64/CONFIG_INPUT_HISI_POWERKEY
+++ b/baseconfig/arm/aarch64/CONFIG_INPUT_HISI_POWERKEY
diff --git a/baseconfig/arm/arm64/CONFIG_INPUT_PM8941_PWRKEY b/baseconfig/arm/aarch64/CONFIG_INPUT_PM8941_PWRKEY
index 24fb62b20..24fb62b20 100644
--- a/baseconfig/arm/arm64/CONFIG_INPUT_PM8941_PWRKEY
+++ b/baseconfig/arm/aarch64/CONFIG_INPUT_PM8941_PWRKEY
diff --git a/baseconfig/arm/arm64/CONFIG_INPUT_REGULATOR_HAPTIC b/baseconfig/arm/aarch64/CONFIG_INPUT_REGULATOR_HAPTIC
index 4230eab6f..4230eab6f 100644
--- a/baseconfig/arm/arm64/CONFIG_INPUT_REGULATOR_HAPTIC
+++ b/baseconfig/arm/aarch64/CONFIG_INPUT_REGULATOR_HAPTIC
diff --git a/baseconfig/arm/arm64/CONFIG_IR_SUNXI b/baseconfig/arm/aarch64/CONFIG_IR_SUNXI
index fe2dc68a6..fe2dc68a6 100644
--- a/baseconfig/arm/arm64/CONFIG_IR_SUNXI
+++ b/baseconfig/arm/aarch64/CONFIG_IR_SUNXI
diff --git a/baseconfig/arm/arm64/CONFIG_K3_DMA b/baseconfig/arm/aarch64/CONFIG_K3_DMA
index c64ec401c..c64ec401c 100644
--- a/baseconfig/arm/arm64/CONFIG_K3_DMA
+++ b/baseconfig/arm/aarch64/CONFIG_K3_DMA
diff --git a/baseconfig/arm/arm64/CONFIG_KEYBOARD_SUN4I_LRADC b/baseconfig/arm/aarch64/CONFIG_KEYBOARD_SUN4I_LRADC
index 8fcbd86b6..8fcbd86b6 100644
--- a/baseconfig/arm/arm64/CONFIG_KEYBOARD_SUN4I_LRADC
+++ b/baseconfig/arm/aarch64/CONFIG_KEYBOARD_SUN4I_LRADC
diff --git a/baseconfig/arm/arm64/CONFIG_KVM b/baseconfig/arm/aarch64/CONFIG_KVM
index 14f90d8d6..14f90d8d6 100644
--- a/baseconfig/arm/arm64/CONFIG_KVM
+++ b/baseconfig/arm/aarch64/CONFIG_KVM
diff --git a/baseconfig/arm/arm64/CONFIG_LIBNVDIMM b/baseconfig/arm/aarch64/CONFIG_LIBNVDIMM
index aeaaefec7..aeaaefec7 100644
--- a/baseconfig/arm/arm64/CONFIG_LIBNVDIMM
+++ b/baseconfig/arm/aarch64/CONFIG_LIBNVDIMM
diff --git a/baseconfig/arm/arm64/CONFIG_LIQUIDIO b/baseconfig/arm/aarch64/CONFIG_LIQUIDIO
index 75356625e..75356625e 100644
--- a/baseconfig/arm/arm64/CONFIG_LIQUIDIO
+++ b/baseconfig/arm/aarch64/CONFIG_LIQUIDIO
diff --git a/baseconfig/arm/arm64/CONFIG_MAX77620_THERMAL b/baseconfig/arm/aarch64/CONFIG_MAX77620_THERMAL
index d334d3f90..d334d3f90 100644
--- a/baseconfig/arm/arm64/CONFIG_MAX77620_THERMAL
+++ b/baseconfig/arm/aarch64/CONFIG_MAX77620_THERMAL
diff --git a/baseconfig/arm/arm64/CONFIG_MAX77620_WATCHDOG b/baseconfig/arm/aarch64/CONFIG_MAX77620_WATCHDOG
index f998244fd..f998244fd 100644
--- a/baseconfig/arm/arm64/CONFIG_MAX77620_WATCHDOG
+++ b/baseconfig/arm/aarch64/CONFIG_MAX77620_WATCHDOG
diff --git a/baseconfig/arm/arm64/CONFIG_MDIO_HISI_FEMAC b/baseconfig/arm/aarch64/CONFIG_MDIO_HISI_FEMAC
index 6e4c16cf9..6e4c16cf9 100644
--- a/baseconfig/arm/arm64/CONFIG_MDIO_HISI_FEMAC
+++ b/baseconfig/arm/aarch64/CONFIG_MDIO_HISI_FEMAC
diff --git a/baseconfig/arm/arm64/CONFIG_MDIO_OCTEON b/baseconfig/arm/aarch64/CONFIG_MDIO_OCTEON
index e14c4b041..e14c4b041 100644
--- a/baseconfig/arm/arm64/CONFIG_MDIO_OCTEON
+++ b/baseconfig/arm/aarch64/CONFIG_MDIO_OCTEON
diff --git a/baseconfig/arm/arm64/CONFIG_MDIO_SUN4I b/baseconfig/arm/aarch64/CONFIG_MDIO_SUN4I
index 5bf147832..5bf147832 100644
--- a/baseconfig/arm/arm64/CONFIG_MDIO_SUN4I
+++ b/baseconfig/arm/aarch64/CONFIG_MDIO_SUN4I
diff --git a/baseconfig/arm/arm64/CONFIG_MDIO_THUNDER b/baseconfig/arm/aarch64/CONFIG_MDIO_THUNDER
index 00eb9a6ba..00eb9a6ba 100644
--- a/baseconfig/arm/arm64/CONFIG_MDIO_THUNDER
+++ b/baseconfig/arm/aarch64/CONFIG_MDIO_THUNDER
diff --git a/baseconfig/arm/arm64/CONFIG_MDIO_XGENE b/baseconfig/arm/aarch64/CONFIG_MDIO_XGENE
index 8a6b53a5b..8a6b53a5b 100644
--- a/baseconfig/arm/arm64/CONFIG_MDIO_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_MDIO_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_MDM_GCC_9615 b/baseconfig/arm/aarch64/CONFIG_MDM_GCC_9615
index 4d972aff3..4d972aff3 100644
--- a/baseconfig/arm/arm64/CONFIG_MDM_GCC_9615
+++ b/baseconfig/arm/aarch64/CONFIG_MDM_GCC_9615
diff --git a/baseconfig/arm/arm64/CONFIG_MDM_LCC_9615 b/baseconfig/arm/aarch64/CONFIG_MDM_LCC_9615
index 72f159f99..72f159f99 100644
--- a/baseconfig/arm/arm64/CONFIG_MDM_LCC_9615
+++ b/baseconfig/arm/aarch64/CONFIG_MDM_LCC_9615
diff --git a/baseconfig/arm/arm64/CONFIG_MESON_GXBB_WATCHDOG b/baseconfig/arm/aarch64/CONFIG_MESON_GXBB_WATCHDOG
index a9c8de737..a9c8de737 100644
--- a/baseconfig/arm/arm64/CONFIG_MESON_GXBB_WATCHDOG
+++ b/baseconfig/arm/aarch64/CONFIG_MESON_GXBB_WATCHDOG
diff --git a/baseconfig/arm/arm64/CONFIG_MESON_GXL_PHY b/baseconfig/arm/aarch64/CONFIG_MESON_GXL_PHY
index cc59580cc..cc59580cc 100644
--- a/baseconfig/arm/arm64/CONFIG_MESON_GXL_PHY
+++ b/baseconfig/arm/aarch64/CONFIG_MESON_GXL_PHY
diff --git a/baseconfig/arm/arm64/CONFIG_MESON_WATCHDOG b/baseconfig/arm/aarch64/CONFIG_MESON_WATCHDOG
index 2e5c153a9..2e5c153a9 100644
--- a/baseconfig/arm/arm64/CONFIG_MESON_WATCHDOG
+++ b/baseconfig/arm/aarch64/CONFIG_MESON_WATCHDOG
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_AXP20X b/baseconfig/arm/aarch64/CONFIG_MFD_AXP20X
index ada79c0d1..ada79c0d1 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_AXP20X
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_AXP20X
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_AXP20X_I2C b/baseconfig/arm/aarch64/CONFIG_MFD_AXP20X_I2C
index 22c60295b..22c60295b 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_AXP20X_I2C
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_AXP20X_I2C
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_AXP20X_RSB b/baseconfig/arm/aarch64/CONFIG_MFD_AXP20X_RSB
index 29150d51b..29150d51b 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_AXP20X_RSB
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_AXP20X_RSB
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_HI655X_PMIC b/baseconfig/arm/aarch64/CONFIG_MFD_HI655X_PMIC
index 650829c00..650829c00 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_HI655X_PMIC
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_HI655X_PMIC
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_MAX77620 b/baseconfig/arm/aarch64/CONFIG_MFD_MAX77620
index be2ba084b..be2ba084b 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_MAX77620
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_MAX77620
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_QCOM_RPM b/baseconfig/arm/aarch64/CONFIG_MFD_QCOM_RPM
index d88a4c4c7..d88a4c4c7 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_QCOM_RPM
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_QCOM_RPM
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_SPMI_PMIC b/baseconfig/arm/aarch64/CONFIG_MFD_SPMI_PMIC
index 6360fee39..6360fee39 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_SPMI_PMIC
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_SPMI_PMIC
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_SUN4I_GPADC b/baseconfig/arm/aarch64/CONFIG_MFD_SUN4I_GPADC
index d156cb188..d156cb188 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_SUN4I_GPADC
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_SUN4I_GPADC
diff --git a/baseconfig/arm/arm64/CONFIG_MFD_SUN6I_PRCM b/baseconfig/arm/aarch64/CONFIG_MFD_SUN6I_PRCM
index 1784bb288..1784bb288 100644
--- a/baseconfig/arm/arm64/CONFIG_MFD_SUN6I_PRCM
+++ b/baseconfig/arm/aarch64/CONFIG_MFD_SUN6I_PRCM
diff --git a/baseconfig/arm/arm64/CONFIG_MMC_CAVIUM_THUNDERX b/baseconfig/arm/aarch64/CONFIG_MMC_CAVIUM_THUNDERX
index 8c4640a79..8c4640a79 100644
--- a/baseconfig/arm/arm64/CONFIG_MMC_CAVIUM_THUNDERX
+++ b/baseconfig/arm/aarch64/CONFIG_MMC_CAVIUM_THUNDERX
diff --git a/baseconfig/arm/arm64/CONFIG_MMC_MESON_GX b/baseconfig/arm/aarch64/CONFIG_MMC_MESON_GX
index f6d05988f..f6d05988f 100644
--- a/baseconfig/arm/arm64/CONFIG_MMC_MESON_GX
+++ b/baseconfig/arm/aarch64/CONFIG_MMC_MESON_GX
diff --git a/baseconfig/arm/arm64/CONFIG_MMC_QCOM_DML b/baseconfig/arm/aarch64/CONFIG_MMC_QCOM_DML
index 48facf367..48facf367 100644
--- a/baseconfig/arm/arm64/CONFIG_MMC_QCOM_DML
+++ b/baseconfig/arm/aarch64/CONFIG_MMC_QCOM_DML
diff --git a/baseconfig/arm/aarch64/CONFIG_MMC_SDHCI_F_SDH30 b/baseconfig/arm/aarch64/CONFIG_MMC_SDHCI_F_SDH30
new file mode 100644
index 000000000..e026d18c2
--- /dev/null
+++ b/baseconfig/arm/aarch64/CONFIG_MMC_SDHCI_F_SDH30
@@ -0,0 +1 @@
+CONFIG_MMC_SDHCI_F_SDH30=m
diff --git a/baseconfig/arm/arm64/CONFIG_MMC_SDHCI_MSM b/baseconfig/arm/aarch64/CONFIG_MMC_SDHCI_MSM
index 512d452ed..512d452ed 100644
--- a/baseconfig/arm/arm64/CONFIG_MMC_SDHCI_MSM
+++ b/baseconfig/arm/aarch64/CONFIG_MMC_SDHCI_MSM
diff --git a/baseconfig/arm/arm64/CONFIG_MMC_SUNXI b/baseconfig/arm/aarch64/CONFIG_MMC_SUNXI
index 0f6eda36b..0f6eda36b 100644
--- a/baseconfig/arm/arm64/CONFIG_MMC_SUNXI
+++ b/baseconfig/arm/aarch64/CONFIG_MMC_SUNXI
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8660 b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8660
index 9effe8611..9effe8611 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8660
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8660
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8916 b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8916
index 87cf3fd89..87cf3fd89 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8916
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8916
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8960 b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8960
index 03ba44b34..03ba44b34 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8960
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8960
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8974 b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8974
index 8ffbd8055..8ffbd8055 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8974
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8974
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8996 b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8996
index 4b01d318d..4b01d318d 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_GCC_8996
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_GCC_8996
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_LCC_8960 b/baseconfig/arm/aarch64/CONFIG_MSM_LCC_8960
index 696554428..696554428 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_LCC_8960
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_LCC_8960
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_MMCC_8960 b/baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8960
index c2ccb9997..c2ccb9997 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_MMCC_8960
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8960
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_MMCC_8974 b/baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8974
index 04b9f7550..04b9f7550 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_MMCC_8974
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8974
diff --git a/baseconfig/arm/arm64/CONFIG_MSM_MMCC_8996 b/baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8996
index e40293af5..e40293af5 100644
--- a/baseconfig/arm/arm64/CONFIG_MSM_MMCC_8996
+++ b/baseconfig/arm/aarch64/CONFIG_MSM_MMCC_8996
diff --git a/baseconfig/arm/arm64/CONFIG_MV_XOR_V2 b/baseconfig/arm/aarch64/CONFIG_MV_XOR_V2
index a6e590eb8..a6e590eb8 100644
--- a/baseconfig/arm/arm64/CONFIG_MV_XOR_V2
+++ b/baseconfig/arm/aarch64/CONFIG_MV_XOR_V2
diff --git a/baseconfig/arm/arm64/CONFIG_ND_BLK b/baseconfig/arm/aarch64/CONFIG_ND_BLK
index 8a6c237d7..8a6c237d7 100644
--- a/baseconfig/arm/arm64/CONFIG_ND_BLK
+++ b/baseconfig/arm/aarch64/CONFIG_ND_BLK
diff --git a/baseconfig/arm/arm64/CONFIG_ND_BTT b/baseconfig/arm/aarch64/CONFIG_ND_BTT
index d4e20e237..d4e20e237 100644
--- a/baseconfig/arm/arm64/CONFIG_ND_BTT
+++ b/baseconfig/arm/aarch64/CONFIG_ND_BTT
diff --git a/baseconfig/arm/arm64/CONFIG_NET_SB1000 b/baseconfig/arm/aarch64/CONFIG_NET_SB1000
index 53ead8cd1..53ead8cd1 100644
--- a/baseconfig/arm/arm64/CONFIG_NET_SB1000
+++ b/baseconfig/arm/aarch64/CONFIG_NET_SB1000
diff --git a/baseconfig/arm/arm64/CONFIG_NET_VENDOR_ALLWINNER b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_ALLWINNER
index 2ff45074a..2ff45074a 100644
--- a/baseconfig/arm/arm64/CONFIG_NET_VENDOR_ALLWINNER
+++ b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_ALLWINNER
diff --git a/baseconfig/arm/arm64/CONFIG_NET_VENDOR_CAVIUM b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_CAVIUM
index 5ae580523..5ae580523 100644
--- a/baseconfig/arm/arm64/CONFIG_NET_VENDOR_CAVIUM
+++ b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_CAVIUM
diff --git a/baseconfig/arm/arm64/CONFIG_NET_VENDOR_QUALCOMM b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_QUALCOMM
index 46be71a90..46be71a90 100644
--- a/baseconfig/arm/arm64/CONFIG_NET_VENDOR_QUALCOMM
+++ b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_QUALCOMM
diff --git a/baseconfig/arm/arm64/CONFIG_NET_VENDOR_SNI b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_SNI
index bb77206de..bb77206de 100644
--- a/baseconfig/arm/arm64/CONFIG_NET_VENDOR_SNI
+++ b/baseconfig/arm/aarch64/CONFIG_NET_VENDOR_SNI
diff --git a/baseconfig/arm/arm64/CONFIG_NET_XGENE b/baseconfig/arm/aarch64/CONFIG_NET_XGENE
index 57527a616..57527a616 100644
--- a/baseconfig/arm/arm64/CONFIG_NET_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_NET_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_NET_XGENE_V2 b/baseconfig/arm/aarch64/CONFIG_NET_XGENE_V2
index 7d5cbcdbf..7d5cbcdbf 100644
--- a/baseconfig/arm/arm64/CONFIG_NET_XGENE_V2
+++ b/baseconfig/arm/aarch64/CONFIG_NET_XGENE_V2
diff --git a/baseconfig/arm/arm64/CONFIG_NODES_SHIFT b/baseconfig/arm/aarch64/CONFIG_NODES_SHIFT
index 7647492ca..7647492ca 100644
--- a/baseconfig/arm/arm64/CONFIG_NODES_SHIFT
+++ b/baseconfig/arm/aarch64/CONFIG_NODES_SHIFT
diff --git a/baseconfig/arm/arm64/CONFIG_NR_CPUS b/baseconfig/arm/aarch64/CONFIG_NR_CPUS
index 0c4b1d904..0c4b1d904 100644
--- a/baseconfig/arm/arm64/CONFIG_NR_CPUS
+++ b/baseconfig/arm/aarch64/CONFIG_NR_CPUS
diff --git a/baseconfig/arm/arm64/CONFIG_NUMA b/baseconfig/arm/aarch64/CONFIG_NUMA
index e480f0c04..e480f0c04 100644
--- a/baseconfig/arm/arm64/CONFIG_NUMA
+++ b/baseconfig/arm/aarch64/CONFIG_NUMA
diff --git a/baseconfig/arm/arm64/CONFIG_NUMA_BALANCING b/baseconfig/arm/aarch64/CONFIG_NUMA_BALANCING
index 9de89d51d..9de89d51d 100644
--- a/baseconfig/arm/arm64/CONFIG_NUMA_BALANCING
+++ b/baseconfig/arm/aarch64/CONFIG_NUMA_BALANCING
diff --git a/baseconfig/arm/arm64/CONFIG_NUMA_BALANCING_DEFAULT_ENABLED b/baseconfig/arm/aarch64/CONFIG_NUMA_BALANCING_DEFAULT_ENABLED
index 5f7402180..5f7402180 100644
--- a/baseconfig/arm/arm64/CONFIG_NUMA_BALANCING_DEFAULT_ENABLED
+++ b/baseconfig/arm/aarch64/CONFIG_NUMA_BALANCING_DEFAULT_ENABLED
diff --git a/baseconfig/arm/arm64/CONFIG_NVMEM_SUNXI_SID b/baseconfig/arm/aarch64/CONFIG_NVMEM_SUNXI_SID
index 454644aac..454644aac 100644
--- a/baseconfig/arm/arm64/CONFIG_NVMEM_SUNXI_SID
+++ b/baseconfig/arm/aarch64/CONFIG_NVMEM_SUNXI_SID
diff --git a/baseconfig/arm/arm64/CONFIG_PATA_ACPI b/baseconfig/arm/aarch64/CONFIG_PATA_ACPI
index c3bc7866f..c3bc7866f 100644
--- a/baseconfig/arm/arm64/CONFIG_PATA_ACPI
+++ b/baseconfig/arm/aarch64/CONFIG_PATA_ACPI
diff --git a/baseconfig/arm/arm64/CONFIG_PCC b/baseconfig/arm/aarch64/CONFIG_PCC
index 36eb8c2ab..36eb8c2ab 100644
--- a/baseconfig/arm/arm64/CONFIG_PCC
+++ b/baseconfig/arm/aarch64/CONFIG_PCC
diff --git a/baseconfig/arm/arm64/CONFIG_PCIE_DW_HOST_ECAM b/baseconfig/arm/aarch64/CONFIG_PCIE_DW_HOST_ECAM
index cdb6169bd..cdb6169bd 100644
--- a/baseconfig/arm/arm64/CONFIG_PCIE_DW_HOST_ECAM
+++ b/baseconfig/arm/aarch64/CONFIG_PCIE_DW_HOST_ECAM
diff --git a/baseconfig/arm/arm64/CONFIG_PCIE_KIRIN b/baseconfig/arm/aarch64/CONFIG_PCIE_KIRIN
index be6e297ea..be6e297ea 100644
--- a/baseconfig/arm/arm64/CONFIG_PCIE_KIRIN
+++ b/baseconfig/arm/aarch64/CONFIG_PCIE_KIRIN
diff --git a/baseconfig/arm/arm64/CONFIG_PCIE_QCOM b/baseconfig/arm/aarch64/CONFIG_PCIE_QCOM
index 61886f19a..61886f19a 100644
--- a/baseconfig/arm/arm64/CONFIG_PCIE_QCOM
+++ b/baseconfig/arm/aarch64/CONFIG_PCIE_QCOM
diff --git a/baseconfig/arm/arm64/CONFIG_PCI_HISI b/baseconfig/arm/aarch64/CONFIG_PCI_HISI
index 468f3e431..468f3e431 100644
--- a/baseconfig/arm/arm64/CONFIG_PCI_HISI
+++ b/baseconfig/arm/aarch64/CONFIG_PCI_HISI
diff --git a/baseconfig/arm/arm64/CONFIG_PCI_HOST_THUNDER_ECAM b/baseconfig/arm/aarch64/CONFIG_PCI_HOST_THUNDER_ECAM
index a812c3179..a812c3179 100644
--- a/baseconfig/arm/arm64/CONFIG_PCI_HOST_THUNDER_ECAM
+++ b/baseconfig/arm/aarch64/CONFIG_PCI_HOST_THUNDER_ECAM
diff --git a/baseconfig/arm/arm64/CONFIG_PCI_HOST_THUNDER_PEM b/baseconfig/arm/aarch64/CONFIG_PCI_HOST_THUNDER_PEM
index 6c45e0930..6c45e0930 100644
--- a/baseconfig/arm/arm64/CONFIG_PCI_HOST_THUNDER_PEM
+++ b/baseconfig/arm/aarch64/CONFIG_PCI_HOST_THUNDER_PEM
diff --git a/baseconfig/arm/arm64/CONFIG_PCI_XGENE b/baseconfig/arm/aarch64/CONFIG_PCI_XGENE
index 85317304c..85317304c 100644
--- a/baseconfig/arm/arm64/CONFIG_PCI_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_PCI_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_PCI_XGENE_MSI b/baseconfig/arm/aarch64/CONFIG_PCI_XGENE_MSI
index ce07c62c8..ce07c62c8 100644
--- a/baseconfig/arm/arm64/CONFIG_PCI_XGENE_MSI
+++ b/baseconfig/arm/aarch64/CONFIG_PCI_XGENE_MSI
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_HI6220_USB b/baseconfig/arm/aarch64/CONFIG_PHY_HI6220_USB
index 462bb7c31..462bb7c31 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_HI6220_USB
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_HI6220_USB
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_MVEBU_CP110_COMPHY b/baseconfig/arm/aarch64/CONFIG_PHY_MVEBU_CP110_COMPHY
index 1902b0c1f..1902b0c1f 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_MVEBU_CP110_COMPHY
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_MVEBU_CP110_COMPHY
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_APQ8064_SATA b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_APQ8064_SATA
index bb25b4634..bb25b4634 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_APQ8064_SATA
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_APQ8064_SATA
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_QMP b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_QMP
index cba57faf8..cba57faf8 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_QMP
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_QMP
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_QUSB2 b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_QUSB2
index 6512e59d2..6512e59d2 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_QUSB2
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_QUSB2
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_UFS b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_UFS
index 50ac1d830..50ac1d830 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_UFS
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_UFS
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_USB_HS b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_USB_HS
index 61e98f856..61e98f856 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_USB_HS
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_USB_HS
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_USB_HSIC b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_USB_HSIC
index 0b25aa233..0b25aa233 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_QCOM_USB_HSIC
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_QCOM_USB_HSIC
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_SUN4I_USB b/baseconfig/arm/aarch64/CONFIG_PHY_SUN4I_USB
index f619228c3..f619228c3 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_SUN4I_USB
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_SUN4I_USB
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_SUN9I_USB b/baseconfig/arm/aarch64/CONFIG_PHY_SUN9I_USB
index 98d002535..98d002535 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_SUN9I_USB
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_SUN9I_USB
diff --git a/baseconfig/arm/arm64/CONFIG_PHY_XGENE b/baseconfig/arm/aarch64/CONFIG_PHY_XGENE
index 8d9f368f3..8d9f368f3 100644
--- a/baseconfig/arm/arm64/CONFIG_PHY_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_PHY_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_AMD b/baseconfig/arm/aarch64/CONFIG_PINCTRL_AMD
index 41cff133f..41cff133f 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_AMD
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_AMD
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_APQ8064 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_APQ8064
index 0c95df841..0c95df841 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_APQ8064
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_APQ8064
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_APQ8084 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_APQ8084
index dc701bb1f..dc701bb1f 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_APQ8084
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_APQ8084
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_MAX77620 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MAX77620
index 3b44d6941..3b44d6941 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_MAX77620
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MAX77620
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_MDM9615 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MDM9615
index aa3be1054..aa3be1054 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_MDM9615
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MDM9615
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM
index b042dc93b..b042dc93b 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8660 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8660
index 905c9f434..905c9f434 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8660
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8660
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8916 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8916
index a7a8bd9d4..a7a8bd9d4 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8916
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8916
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8960 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8960
index 167d89960..167d89960 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8960
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8960
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8996 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8996
index 805a439d5..805a439d5 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8996
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8996
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8X74 b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8X74
index 2d68ec700..2d68ec700 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_MSM8X74
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_MSM8X74
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_QCOM_SPMI_PMIC b/baseconfig/arm/aarch64/CONFIG_PINCTRL_QCOM_SPMI_PMIC
index d24825e16..d24825e16 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_QCOM_SPMI_PMIC
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_QCOM_SPMI_PMIC
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_QCOM_SSBI_PMIC b/baseconfig/arm/aarch64/CONFIG_PINCTRL_QCOM_SSBI_PMIC
index bc00fae73..bc00fae73 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_QCOM_SSBI_PMIC
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_QCOM_SSBI_PMIC
diff --git a/baseconfig/arm/arm64/CONFIG_PINCTRL_QDF2XXX b/baseconfig/arm/aarch64/CONFIG_PINCTRL_QDF2XXX
index e8dca820d..e8dca820d 100644
--- a/baseconfig/arm/arm64/CONFIG_PINCTRL_QDF2XXX
+++ b/baseconfig/arm/aarch64/CONFIG_PINCTRL_QDF2XXX
diff --git a/baseconfig/arm/arm64/CONFIG_PMIC_OPREGION b/baseconfig/arm/aarch64/CONFIG_PMIC_OPREGION
index 15102fe45..15102fe45 100644
--- a/baseconfig/arm/arm64/CONFIG_PMIC_OPREGION
+++ b/baseconfig/arm/aarch64/CONFIG_PMIC_OPREGION
diff --git a/baseconfig/arm/arm64/CONFIG_PNP_DEBUG_MESSAGES b/baseconfig/arm/aarch64/CONFIG_PNP_DEBUG_MESSAGES
index cb591885f..cb591885f 100644
--- a/baseconfig/arm/arm64/CONFIG_PNP_DEBUG_MESSAGES
+++ b/baseconfig/arm/aarch64/CONFIG_PNP_DEBUG_MESSAGES
diff --git a/baseconfig/arm/arm64/CONFIG_POWER_RESET_HISI b/baseconfig/arm/aarch64/CONFIG_POWER_RESET_HISI
index c5516db40..c5516db40 100644
--- a/baseconfig/arm/arm64/CONFIG_POWER_RESET_HISI
+++ b/baseconfig/arm/aarch64/CONFIG_POWER_RESET_HISI
diff --git a/baseconfig/arm/arm64/CONFIG_POWER_RESET_MSM b/baseconfig/arm/aarch64/CONFIG_POWER_RESET_MSM
index a7db0a2e3..a7db0a2e3 100644
--- a/baseconfig/arm/arm64/CONFIG_POWER_RESET_MSM
+++ b/baseconfig/arm/aarch64/CONFIG_POWER_RESET_MSM
diff --git a/baseconfig/arm/arm64/CONFIG_POWER_RESET_XGENE b/baseconfig/arm/aarch64/CONFIG_POWER_RESET_XGENE
index 4e363c24d..4e363c24d 100644
--- a/baseconfig/arm/arm64/CONFIG_POWER_RESET_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_POWER_RESET_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_PWM_SUN4I b/baseconfig/arm/aarch64/CONFIG_PWM_SUN4I
index d4f562f3f..d4f562f3f 100644
--- a/baseconfig/arm/arm64/CONFIG_PWM_SUN4I
+++ b/baseconfig/arm/aarch64/CONFIG_PWM_SUN4I
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_ADSP_PIL b/baseconfig/arm/aarch64/CONFIG_QCOM_ADSP_PIL
index 0aa258124..0aa258124 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_ADSP_PIL
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_ADSP_PIL
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_APCS_IPC b/baseconfig/arm/aarch64/CONFIG_QCOM_APCS_IPC
index f8a0514ba..f8a0514ba 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_APCS_IPC
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_APCS_IPC
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_BAM_DMA b/baseconfig/arm/aarch64/CONFIG_QCOM_BAM_DMA
index 84fb1a98e..84fb1a98e 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_BAM_DMA
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_BAM_DMA
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_CLK_RPM b/baseconfig/arm/aarch64/CONFIG_QCOM_CLK_RPM
index 5650c8603..5650c8603 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_CLK_RPM
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_CLK_RPM
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_CLK_SMD_RPM b/baseconfig/arm/aarch64/CONFIG_QCOM_CLK_SMD_RPM
index d355533c9..d355533c9 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_CLK_SMD_RPM
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_CLK_SMD_RPM
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_COINCELL b/baseconfig/arm/aarch64/CONFIG_QCOM_COINCELL
index 6b43aa0aa..6b43aa0aa 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_COINCELL
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_COINCELL
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_EBI2 b/baseconfig/arm/aarch64/CONFIG_QCOM_EBI2
index e96b3544e..e96b3544e 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_EBI2
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_EBI2
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_EMAC b/baseconfig/arm/aarch64/CONFIG_QCOM_EMAC
index 4e3fa019b..4e3fa019b 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_EMAC
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_EMAC
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1003 b/baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_1003
index 94d6b177a..94d6b177a 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1003
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_1003
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1009 b/baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_1009
index 1449efafb..1449efafb 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_FALKOR_ERRATUM_1009
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_1009
diff --git a/baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_E1041 b/baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_E1041
new file mode 100644
index 000000000..f0d31a87b
--- /dev/null
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_FALKOR_ERRATUM_E1041
@@ -0,0 +1 @@
+CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_GSBI b/baseconfig/arm/aarch64/CONFIG_QCOM_GSBI
index 2711cb77b..2711cb77b 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_GSBI
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_GSBI
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_HIDMA b/baseconfig/arm/aarch64/CONFIG_QCOM_HIDMA
index a5442952f..a5442952f 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_HIDMA
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_HIDMA
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_HIDMA_MGMT b/baseconfig/arm/aarch64/CONFIG_QCOM_HIDMA_MGMT
index 8085b2ae4..8085b2ae4 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_HIDMA_MGMT
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_HIDMA_MGMT
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_IOMMU b/baseconfig/arm/aarch64/CONFIG_QCOM_IOMMU
index b7e99b882..b7e99b882 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_IOMMU
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_IOMMU
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_IRQ_COMBINER b/baseconfig/arm/aarch64/CONFIG_QCOM_IRQ_COMBINER
index 6c23d15f7..6c23d15f7 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_IRQ_COMBINER
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_IRQ_COMBINER
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_L2_PMU b/baseconfig/arm/aarch64/CONFIG_QCOM_L2_PMU
index 2a553c8b1..2a553c8b1 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_L2_PMU
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_L2_PMU
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_L3_PMU b/baseconfig/arm/aarch64/CONFIG_QCOM_L3_PMU
index ed899d66b..ed899d66b 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_L3_PMU
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_L3_PMU
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_Q6V5_PIL b/baseconfig/arm/aarch64/CONFIG_QCOM_Q6V5_PIL
index 18d8fb792..18d8fb792 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_Q6V5_PIL
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_Q6V5_PIL
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_QDF2400_ERRATUM_0065 b/baseconfig/arm/aarch64/CONFIG_QCOM_QDF2400_ERRATUM_0065
index dec9be970..dec9be970 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_QDF2400_ERRATUM_0065
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_QDF2400_ERRATUM_0065
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_QFPROM b/baseconfig/arm/aarch64/CONFIG_QCOM_QFPROM
index 9df0fc659..9df0fc659 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_QFPROM
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_QFPROM
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_SMD_RPM b/baseconfig/arm/aarch64/CONFIG_QCOM_SMD_RPM
index 4610581b9..4610581b9 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_SMD_RPM
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_SMD_RPM
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_SMEM b/baseconfig/arm/aarch64/CONFIG_QCOM_SMEM
index f91ef8cda..f91ef8cda 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_SMEM
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_SMEM
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_SMP2P b/baseconfig/arm/aarch64/CONFIG_QCOM_SMP2P
index 5fa221f74..5fa221f74 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_SMP2P
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_SMP2P
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_SMSM b/baseconfig/arm/aarch64/CONFIG_QCOM_SMSM
index 210a649f7..210a649f7 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_SMSM
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_SMSM
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_SPMI_IADC b/baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_IADC
index d8601ce79..d8601ce79 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_SPMI_IADC
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_IADC
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_SPMI_TEMP_ALARM b/baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_TEMP_ALARM
index 7155372b9..7155372b9 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_SPMI_TEMP_ALARM
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_TEMP_ALARM
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_SPMI_VADC b/baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_VADC
index fcc1196df..fcc1196df 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_SPMI_VADC
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_SPMI_VADC
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_TSENS b/baseconfig/arm/aarch64/CONFIG_QCOM_TSENS
index 0d43fc907..0d43fc907 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_TSENS
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_TSENS
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_WCNSS_CTRL b/baseconfig/arm/aarch64/CONFIG_QCOM_WCNSS_CTRL
index e5469ca8a..e5469ca8a 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_WCNSS_CTRL
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_WCNSS_CTRL
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_WCNSS_PIL b/baseconfig/arm/aarch64/CONFIG_QCOM_WCNSS_PIL
index b13cefb38..b13cefb38 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_WCNSS_PIL
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_WCNSS_PIL
diff --git a/baseconfig/arm/arm64/CONFIG_QCOM_WDT b/baseconfig/arm/aarch64/CONFIG_QCOM_WDT
index e4c7f9d37..e4c7f9d37 100644
--- a/baseconfig/arm/arm64/CONFIG_QCOM_WDT
+++ b/baseconfig/arm/aarch64/CONFIG_QCOM_WDT
diff --git a/baseconfig/arm/arm64/CONFIG_RANDOMIZE_BASE b/baseconfig/arm/aarch64/CONFIG_RANDOMIZE_BASE
index 20610a95a..20610a95a 100644
--- a/baseconfig/arm/arm64/CONFIG_RANDOMIZE_BASE
+++ b/baseconfig/arm/aarch64/CONFIG_RANDOMIZE_BASE
diff --git a/baseconfig/arm/arm64/CONFIG_RANDOMIZE_MODULE_REGION_FULL b/baseconfig/arm/aarch64/CONFIG_RANDOMIZE_MODULE_REGION_FULL
index 7645a371e..7645a371e 100644
--- a/baseconfig/arm/arm64/CONFIG_RANDOMIZE_MODULE_REGION_FULL
+++ b/baseconfig/arm/aarch64/CONFIG_RANDOMIZE_MODULE_REGION_FULL
diff --git a/baseconfig/arm/arm64/CONFIG_RCU_FANOUT b/baseconfig/arm/aarch64/CONFIG_RCU_FANOUT
index e95447c12..e95447c12 100644
--- a/baseconfig/arm/arm64/CONFIG_RCU_FANOUT
+++ b/baseconfig/arm/aarch64/CONFIG_RCU_FANOUT
diff --git a/baseconfig/arm/aarch64/CONFIG_REFCOUNT_FULL b/baseconfig/arm/aarch64/CONFIG_REFCOUNT_FULL
new file mode 100644
index 000000000..c7e4a167a
--- /dev/null
+++ b/baseconfig/arm/aarch64/CONFIG_REFCOUNT_FULL
@@ -0,0 +1 @@
+CONFIG_REFCOUNT_FULL=y
diff --git a/baseconfig/arm/arm64/CONFIG_REGMAP_SPMI b/baseconfig/arm/aarch64/CONFIG_REGMAP_SPMI
index eba374b73..eba374b73 100644
--- a/baseconfig/arm/arm64/CONFIG_REGMAP_SPMI
+++ b/baseconfig/arm/aarch64/CONFIG_REGMAP_SPMI
diff --git a/baseconfig/arm/arm64/CONFIG_REGULATOR_AXP20X b/baseconfig/arm/aarch64/CONFIG_REGULATOR_AXP20X
index 6694810a6..6694810a6 100644
--- a/baseconfig/arm/arm64/CONFIG_REGULATOR_AXP20X
+++ b/baseconfig/arm/aarch64/CONFIG_REGULATOR_AXP20X
diff --git a/baseconfig/arm/arm64/CONFIG_REGULATOR_HI655X b/baseconfig/arm/aarch64/CONFIG_REGULATOR_HI655X
index c267fff85..c267fff85 100644
--- a/baseconfig/arm/arm64/CONFIG_REGULATOR_HI655X
+++ b/baseconfig/arm/aarch64/CONFIG_REGULATOR_HI655X
diff --git a/baseconfig/arm/arm64/CONFIG_REGULATOR_MAX77620 b/baseconfig/arm/aarch64/CONFIG_REGULATOR_MAX77620
index db0158399..db0158399 100644
--- a/baseconfig/arm/arm64/CONFIG_REGULATOR_MAX77620
+++ b/baseconfig/arm/aarch64/CONFIG_REGULATOR_MAX77620
diff --git a/baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_RPM b/baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_RPM
index 3d002cac5..3d002cac5 100644
--- a/baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_RPM
+++ b/baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_RPM
diff --git a/baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_SMD_RPM b/baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_SMD_RPM
index aae961c4b..aae961c4b 100644
--- a/baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_SMD_RPM
+++ b/baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_SMD_RPM
diff --git a/baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_SPMI b/baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_SPMI
index c83be7aec..c83be7aec 100644
--- a/baseconfig/arm/arm64/CONFIG_REGULATOR_QCOM_SPMI
+++ b/baseconfig/arm/aarch64/CONFIG_REGULATOR_QCOM_SPMI
diff --git a/baseconfig/arm/arm64/CONFIG_RELOCATABLE b/baseconfig/arm/aarch64/CONFIG_RELOCATABLE
index 36808edb3..36808edb3 100644
--- a/baseconfig/arm/arm64/CONFIG_RELOCATABLE
+++ b/baseconfig/arm/aarch64/CONFIG_RELOCATABLE
diff --git a/baseconfig/arm/arm64/CONFIG_RESET_HISI b/baseconfig/arm/aarch64/CONFIG_RESET_HISI
index af17d8a85..af17d8a85 100644
--- a/baseconfig/arm/arm64/CONFIG_RESET_HISI
+++ b/baseconfig/arm/aarch64/CONFIG_RESET_HISI
diff --git a/baseconfig/arm/arm64/CONFIG_RPMSG b/baseconfig/arm/aarch64/CONFIG_RPMSG
index 7cc8785d0..7cc8785d0 100644
--- a/baseconfig/arm/arm64/CONFIG_RPMSG
+++ b/baseconfig/arm/aarch64/CONFIG_RPMSG
diff --git a/baseconfig/arm/arm64/CONFIG_RPMSG_QCOM_GLINK_RPM b/baseconfig/arm/aarch64/CONFIG_RPMSG_QCOM_GLINK_RPM
index 1f5ac58f2..1f5ac58f2 100644
--- a/baseconfig/arm/arm64/CONFIG_RPMSG_QCOM_GLINK_RPM
+++ b/baseconfig/arm/aarch64/CONFIG_RPMSG_QCOM_GLINK_RPM
diff --git a/baseconfig/arm/arm64/CONFIG_RPMSG_QCOM_SMD b/baseconfig/arm/aarch64/CONFIG_RPMSG_QCOM_SMD
index f65af3d10..f65af3d10 100644
--- a/baseconfig/arm/arm64/CONFIG_RPMSG_QCOM_SMD
+++ b/baseconfig/arm/aarch64/CONFIG_RPMSG_QCOM_SMD
diff --git a/baseconfig/arm/arm64/CONFIG_RTC_DRV_EFI b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_EFI
index e2a2dcd64..e2a2dcd64 100644
--- a/baseconfig/arm/arm64/CONFIG_RTC_DRV_EFI
+++ b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_EFI
diff --git a/baseconfig/arm/arm64/CONFIG_RTC_DRV_PL030 b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_PL030
index 6f6f4ec88..6f6f4ec88 100644
--- a/baseconfig/arm/arm64/CONFIG_RTC_DRV_PL030
+++ b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_PL030
diff --git a/baseconfig/arm/arm64/CONFIG_RTC_DRV_PM8XXX b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_PM8XXX
index adc778ea4..adc778ea4 100644
--- a/baseconfig/arm/arm64/CONFIG_RTC_DRV_PM8XXX
+++ b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_PM8XXX
diff --git a/baseconfig/arm/arm64/CONFIG_RTC_DRV_SUN6I b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_SUN6I
index 54410db09..54410db09 100644
--- a/baseconfig/arm/arm64/CONFIG_RTC_DRV_SUN6I
+++ b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_SUN6I
diff --git a/baseconfig/arm/arm64/CONFIG_RTC_DRV_XGENE b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_XGENE
index f6897ba60..f6897ba60 100644
--- a/baseconfig/arm/arm64/CONFIG_RTC_DRV_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_RTC_DRV_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_SATA_AHCI_SEATTLE b/baseconfig/arm/aarch64/CONFIG_SATA_AHCI_SEATTLE
index dfcf03f07..dfcf03f07 100644
--- a/baseconfig/arm/arm64/CONFIG_SATA_AHCI_SEATTLE
+++ b/baseconfig/arm/aarch64/CONFIG_SATA_AHCI_SEATTLE
diff --git a/baseconfig/arm/arm64/CONFIG_SENSORS_ACPI_POWER b/baseconfig/arm/aarch64/CONFIG_SENSORS_ACPI_POWER
index dbb45c01b..dbb45c01b 100644
--- a/baseconfig/arm/arm64/CONFIG_SENSORS_ACPI_POWER
+++ b/baseconfig/arm/aarch64/CONFIG_SENSORS_ACPI_POWER
diff --git a/baseconfig/arm/arm64/CONFIG_SENSORS_LTC2978_REGULATOR b/baseconfig/arm/aarch64/CONFIG_SENSORS_LTC2978_REGULATOR
index 54d82ddb6..54d82ddb6 100644
--- a/baseconfig/arm/arm64/CONFIG_SENSORS_LTC2978_REGULATOR
+++ b/baseconfig/arm/aarch64/CONFIG_SENSORS_LTC2978_REGULATOR
diff --git a/baseconfig/arm/arm64/CONFIG_SENSORS_XGENE b/baseconfig/arm/aarch64/CONFIG_SENSORS_XGENE
index 84ffdf1e9..84ffdf1e9 100644
--- a/baseconfig/arm/arm64/CONFIG_SENSORS_XGENE
+++ b/baseconfig/arm/aarch64/CONFIG_SENSORS_XGENE
diff --git a/baseconfig/arm/arm64/CONFIG_SERIAL_AMBA_PL010 b/baseconfig/arm/aarch64/CONFIG_SERIAL_AMBA_PL010
index ee4b9d52a..ee4b9d52a 100644
--- a/baseconfig/arm/arm64/CONFIG_SERIAL_AMBA_PL010
+++ b/baseconfig/arm/aarch64/CONFIG_SERIAL_AMBA_PL010
diff --git a/baseconfig/arm/arm64/CONFIG_SERIAL_MSM b/baseconfig/arm/aarch64/CONFIG_SERIAL_MSM
index d9bd71619..d9bd71619 100644
--- a/baseconfig/arm/arm64/CONFIG_SERIAL_MSM
+++ b/baseconfig/arm/aarch64/CONFIG_SERIAL_MSM
diff --git a/baseconfig/arm/arm64/CONFIG_SERIAL_MSM_CONSOLE b/baseconfig/arm/aarch64/CONFIG_SERIAL_MSM_CONSOLE
index 5aeaebb23..5aeaebb23 100644
--- a/baseconfig/arm/arm64/CONFIG_SERIAL_MSM_CONSOLE
+++ b/baseconfig/arm/aarch64/CONFIG_SERIAL_MSM_CONSOLE
diff --git a/baseconfig/arm/arm64/CONFIG_SERIO_SUN4I_PS2 b/baseconfig/arm/aarch64/CONFIG_SERIO_SUN4I_PS2
index aa105b326..aa105b326 100644
--- a/baseconfig/arm/arm64/CONFIG_SERIO_SUN4I_PS2
+++ b/baseconfig/arm/aarch64/CONFIG_SERIO_SUN4I_PS2
diff --git a/baseconfig/arm/arm64/CONFIG_SND_KIRKWOOD_SOC b/baseconfig/arm/aarch64/CONFIG_SND_KIRKWOOD_SOC
index 05e82f2e9..05e82f2e9 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_KIRKWOOD_SOC
+++ b/baseconfig/arm/aarch64/CONFIG_SND_KIRKWOOD_SOC
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_APQ8016_SBC b/baseconfig/arm/aarch64/CONFIG_SND_SOC_APQ8016_SBC
index dfe53b84d..dfe53b84d 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_APQ8016_SBC
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_APQ8016_SBC
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_MSM8916_WCD_ANALOG b/baseconfig/arm/aarch64/CONFIG_SND_SOC_MSM8916_WCD_ANALOG
index 207a5e523..207a5e523 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_MSM8916_WCD_ANALOG
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_MSM8916_WCD_ANALOG
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_MSM8916_WCD_DIGITAL b/baseconfig/arm/aarch64/CONFIG_SND_SOC_MSM8916_WCD_DIGITAL
index db12f036e..db12f036e 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_MSM8916_WCD_DIGITAL
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_MSM8916_WCD_DIGITAL
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_QCOM b/baseconfig/arm/aarch64/CONFIG_SND_SOC_QCOM
index 719eb4e3d..719eb4e3d 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_QCOM
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_QCOM
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_SGTL5000 b/baseconfig/arm/aarch64/CONFIG_SND_SOC_SGTL5000
index ea71dece1..ea71dece1 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_SGTL5000
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_SGTL5000
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_STORM b/baseconfig/arm/aarch64/CONFIG_SND_SOC_STORM
index adab3ae82..adab3ae82 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_STORM
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_STORM
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA
index b32a04ff3..b32a04ff3 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_MAX98090 b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_MAX98090
index 55f327a38..55f327a38 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_MAX98090
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_MAX98090
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5640 b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_RT5640
index 3370b8ec2..3370b8ec2 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5640
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_RT5640
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5677 b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_RT5677
index 24298d93b..24298d93b 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_RT5677
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_RT5677
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_SGTL5000 b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_SGTL5000
index 4706a31c1..4706a31c1 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_SGTL5000
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_SGTL5000
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_WM8753 b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_WM8753
index 9039b1695..9039b1695 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SOC_TEGRA_WM8753
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SOC_TEGRA_WM8753
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SUN4I_CODEC b/baseconfig/arm/aarch64/CONFIG_SND_SUN4I_CODEC
index 6cce5a1f7..6cce5a1f7 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SUN4I_CODEC
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SUN4I_CODEC
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SUN4I_I2S b/baseconfig/arm/aarch64/CONFIG_SND_SUN4I_I2S
index d9270e25b..d9270e25b 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SUN4I_I2S
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SUN4I_I2S
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SUN4I_SPDIF b/baseconfig/arm/aarch64/CONFIG_SND_SUN4I_SPDIF
index c0b108aba..c0b108aba 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SUN4I_SPDIF
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SUN4I_SPDIF
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC b/baseconfig/arm/aarch64/CONFIG_SND_SUN8I_CODEC
index c30f94369..c30f94369 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SUN8I_CODEC
diff --git a/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC_ANALOG b/baseconfig/arm/aarch64/CONFIG_SND_SUN8I_CODEC_ANALOG
index 28ea30190..28ea30190 100644
--- a/baseconfig/arm/arm64/CONFIG_SND_SUN8I_CODEC_ANALOG
+++ b/baseconfig/arm/aarch64/CONFIG_SND_SUN8I_CODEC_ANALOG
diff --git a/baseconfig/arm/arm64/CONFIG_SNI_NETSEC b/baseconfig/arm/aarch64/CONFIG_SNI_NETSEC
index c348519ff..c348519ff 100644
--- a/baseconfig/arm/arm64/CONFIG_SNI_NETSEC
+++ b/baseconfig/arm/aarch64/CONFIG_SNI_NETSEC
diff --git a/baseconfig/arm/arm64/CONFIG_SOCIONEXT_SYNQUACER_PREITS b/baseconfig/arm/aarch64/CONFIG_SOCIONEXT_SYNQUACER_PREITS
index ded5c358e..ded5c358e 100644
--- a/baseconfig/arm/arm64/CONFIG_SOCIONEXT_SYNQUACER_PREITS
+++ b/baseconfig/arm/aarch64/CONFIG_SOCIONEXT_SYNQUACER_PREITS
diff --git a/baseconfig/arm/arm64/CONFIG_SOC_TEGRA_FLOWCTRL b/baseconfig/arm/aarch64/CONFIG_SOC_TEGRA_FLOWCTRL
index 00413d459..00413d459 100644
--- a/baseconfig/arm/arm64/CONFIG_SOC_TEGRA_FLOWCTRL
+++ b/baseconfig/arm/aarch64/CONFIG_SOC_TEGRA_FLOWCTRL
diff --git a/baseconfig/arm/arm64/CONFIG_SPARSEMEM_VMEMMAP b/baseconfig/arm/aarch64/CONFIG_SPARSEMEM_VMEMMAP
index a2826dacd..a2826dacd 100644
--- a/baseconfig/arm/arm64/CONFIG_SPARSEMEM_VMEMMAP
+++ b/baseconfig/arm/aarch64/CONFIG_SPARSEMEM_VMEMMAP
diff --git a/baseconfig/arm/arm64/CONFIG_SPARSE_IRQ b/baseconfig/arm/aarch64/CONFIG_SPARSE_IRQ
index 943900f63..943900f63 100644
--- a/baseconfig/arm/arm64/CONFIG_SPARSE_IRQ
+++ b/baseconfig/arm/aarch64/CONFIG_SPARSE_IRQ
diff --git a/baseconfig/arm/arm64/CONFIG_SPI_QUP b/baseconfig/arm/aarch64/CONFIG_SPI_QUP
index 4cfdd1db0..4cfdd1db0 100644
--- a/baseconfig/arm/arm64/CONFIG_SPI_QUP
+++ b/baseconfig/arm/aarch64/CONFIG_SPI_QUP
diff --git a/baseconfig/arm/arm64/CONFIG_SPI_SUN6I b/baseconfig/arm/aarch64/CONFIG_SPI_SUN6I
index 031cd17b9..031cd17b9 100644
--- a/baseconfig/arm/arm64/CONFIG_SPI_SUN6I
+++ b/baseconfig/arm/aarch64/CONFIG_SPI_SUN6I
diff --git a/baseconfig/arm/arm64/CONFIG_SPI_THUNDERX b/baseconfig/arm/aarch64/CONFIG_SPI_THUNDERX
index 054a83114..054a83114 100644
--- a/baseconfig/arm/arm64/CONFIG_SPI_THUNDERX
+++ b/baseconfig/arm/aarch64/CONFIG_SPI_THUNDERX
diff --git a/baseconfig/arm/arm64/CONFIG_SPI_XLP b/baseconfig/arm/aarch64/CONFIG_SPI_XLP
index 6026d5f51..6026d5f51 100644
--- a/baseconfig/arm/arm64/CONFIG_SPI_XLP
+++ b/baseconfig/arm/aarch64/CONFIG_SPI_XLP
diff --git a/baseconfig/arm/arm64/CONFIG_SPMI b/baseconfig/arm/aarch64/CONFIG_SPMI
index 4ce4dfde9..4ce4dfde9 100644
--- a/baseconfig/arm/arm64/CONFIG_SPMI
+++ b/baseconfig/arm/aarch64/CONFIG_SPMI
diff --git a/baseconfig/arm/arm64/CONFIG_SPMI_MSM_PMIC_ARB b/baseconfig/arm/aarch64/CONFIG_SPMI_MSM_PMIC_ARB
index bd46b497a..bd46b497a 100644
--- a/baseconfig/arm/arm64/CONFIG_SPMI_MSM_PMIC_ARB
+++ b/baseconfig/arm/aarch64/CONFIG_SPMI_MSM_PMIC_ARB
diff --git a/baseconfig/arm/arm64/CONFIG_STUB_CLK_HI6220 b/baseconfig/arm/aarch64/CONFIG_STUB_CLK_HI6220
index 89a60a424..89a60a424 100644
--- a/baseconfig/arm/arm64/CONFIG_STUB_CLK_HI6220
+++ b/baseconfig/arm/aarch64/CONFIG_STUB_CLK_HI6220
diff --git a/baseconfig/arm/arm64/CONFIG_SUN4I_EMAC b/baseconfig/arm/aarch64/CONFIG_SUN4I_EMAC
index 7c44fecee..7c44fecee 100644
--- a/baseconfig/arm/arm64/CONFIG_SUN4I_EMAC
+++ b/baseconfig/arm/aarch64/CONFIG_SUN4I_EMAC
diff --git a/baseconfig/arm/arm64/CONFIG_SUN4I_GPADC b/baseconfig/arm/aarch64/CONFIG_SUN4I_GPADC
index 97139c216..97139c216 100644
--- a/baseconfig/arm/arm64/CONFIG_SUN4I_GPADC
+++ b/baseconfig/arm/aarch64/CONFIG_SUN4I_GPADC
diff --git a/baseconfig/arm/arm64/CONFIG_SUN50I_A64_CCU b/baseconfig/arm/aarch64/CONFIG_SUN50I_A64_CCU
index 7b6c7a687..7b6c7a687 100644
--- a/baseconfig/arm/arm64/CONFIG_SUN50I_A64_CCU
+++ b/baseconfig/arm/aarch64/CONFIG_SUN50I_A64_CCU
diff --git a/baseconfig/arm/arm64/CONFIG_SUNXI_CCU b/baseconfig/arm/aarch64/CONFIG_SUNXI_CCU
index 30e6d69d1..30e6d69d1 100644
--- a/baseconfig/arm/arm64/CONFIG_SUNXI_CCU
+++ b/baseconfig/arm/aarch64/CONFIG_SUNXI_CCU
diff --git a/baseconfig/arm/arm64/CONFIG_SUNXI_WATCHDOG b/baseconfig/arm/aarch64/CONFIG_SUNXI_WATCHDOG
index 9b58f97fb..9b58f97fb 100644
--- a/baseconfig/arm/arm64/CONFIG_SUNXI_WATCHDOG
+++ b/baseconfig/arm/aarch64/CONFIG_SUNXI_WATCHDOG
diff --git a/baseconfig/arm/arm64/CONFIG_SYS_HYPERVISOR b/baseconfig/arm/aarch64/CONFIG_SYS_HYPERVISOR
index b5668db06..b5668db06 100644
--- a/baseconfig/arm/arm64/CONFIG_SYS_HYPERVISOR
+++ b/baseconfig/arm/aarch64/CONFIG_SYS_HYPERVISOR
diff --git a/baseconfig/arm/arm64/CONFIG_TEGRA210_ADMA b/baseconfig/arm/aarch64/CONFIG_TEGRA210_ADMA
index 7f82adad1..7f82adad1 100644
--- a/baseconfig/arm/arm64/CONFIG_TEGRA210_ADMA
+++ b/baseconfig/arm/aarch64/CONFIG_TEGRA210_ADMA
diff --git a/baseconfig/arm/arm64/CONFIG_TEGRA_ACONNECT b/baseconfig/arm/aarch64/CONFIG_TEGRA_ACONNECT
index 251550c81..251550c81 100644
--- a/baseconfig/arm/arm64/CONFIG_TEGRA_ACONNECT
+++ b/baseconfig/arm/aarch64/CONFIG_TEGRA_ACONNECT
diff --git a/baseconfig/arm/arm64/CONFIG_TEGRA_GMI b/baseconfig/arm/aarch64/CONFIG_TEGRA_GMI
index 5def3e891..5def3e891 100644
--- a/baseconfig/arm/arm64/CONFIG_TEGRA_GMI
+++ b/baseconfig/arm/aarch64/CONFIG_TEGRA_GMI
diff --git a/baseconfig/arm/arm64/CONFIG_TEGRA_IVC b/baseconfig/arm/aarch64/CONFIG_TEGRA_IVC
index cdcacbec2..cdcacbec2 100644
--- a/baseconfig/arm/arm64/CONFIG_TEGRA_IVC
+++ b/baseconfig/arm/aarch64/CONFIG_TEGRA_IVC
diff --git a/baseconfig/arm/arm64/CONFIG_THUNDER_NIC_BGX b/baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_BGX
index 123fe6f48..123fe6f48 100644
--- a/baseconfig/arm/arm64/CONFIG_THUNDER_NIC_BGX
+++ b/baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_BGX
diff --git a/baseconfig/arm/arm64/CONFIG_THUNDER_NIC_PF b/baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_PF
index 6b047a13c..6b047a13c 100644
--- a/baseconfig/arm/arm64/CONFIG_THUNDER_NIC_PF
+++ b/baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_PF
diff --git a/baseconfig/arm/arm64/CONFIG_THUNDER_NIC_RGX b/baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_RGX
index c50ae013f..c50ae013f 100644
--- a/baseconfig/arm/arm64/CONFIG_THUNDER_NIC_RGX
+++ b/baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_RGX
diff --git a/baseconfig/arm/arm64/CONFIG_THUNDER_NIC_VF b/baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_VF
index 5fdfca5db..5fdfca5db 100644
--- a/baseconfig/arm/arm64/CONFIG_THUNDER_NIC_VF
+++ b/baseconfig/arm/aarch64/CONFIG_THUNDER_NIC_VF
diff --git a/baseconfig/arm/arm64/CONFIG_TOUCHSCREEN_SUN4I b/baseconfig/arm/aarch64/CONFIG_TOUCHSCREEN_SUN4I
index af15c1f8c..af15c1f8c 100644
--- a/baseconfig/arm/arm64/CONFIG_TOUCHSCREEN_SUN4I
+++ b/baseconfig/arm/aarch64/CONFIG_TOUCHSCREEN_SUN4I
diff --git a/baseconfig/arm/arm64/CONFIG_USB_CONFIGFS_F_LB_SS b/baseconfig/arm/aarch64/CONFIG_USB_CONFIGFS_F_LB_SS
index 213edb5a1..213edb5a1 100644
--- a/baseconfig/arm/arm64/CONFIG_USB_CONFIGFS_F_LB_SS
+++ b/baseconfig/arm/aarch64/CONFIG_USB_CONFIGFS_F_LB_SS
diff --git a/baseconfig/arm/arm64/CONFIG_USB_MUSB_SUNXI b/baseconfig/arm/aarch64/CONFIG_USB_MUSB_SUNXI
index 258e716ab..258e716ab 100644
--- a/baseconfig/arm/arm64/CONFIG_USB_MUSB_SUNXI
+++ b/baseconfig/arm/aarch64/CONFIG_USB_MUSB_SUNXI
diff --git a/baseconfig/arm/arm64/CONFIG_USB_SPEEDTOUCH b/baseconfig/arm/aarch64/CONFIG_USB_SPEEDTOUCH
index e34bebc62..e34bebc62 100644
--- a/baseconfig/arm/arm64/CONFIG_USB_SPEEDTOUCH
+++ b/baseconfig/arm/aarch64/CONFIG_USB_SPEEDTOUCH
diff --git a/baseconfig/arm/arm64/CONFIG_VDSO b/baseconfig/arm/aarch64/CONFIG_VDSO
index cab5ebafb..cab5ebafb 100644
--- a/baseconfig/arm/arm64/CONFIG_VDSO
+++ b/baseconfig/arm/aarch64/CONFIG_VDSO
diff --git a/baseconfig/arm/arm64/CONFIG_VFIO_PLATFORM_AMDXGBE_RESET b/baseconfig/arm/aarch64/CONFIG_VFIO_PLATFORM_AMDXGBE_RESET
index b6b1ee3b0..b6b1ee3b0 100644
--- a/baseconfig/arm/arm64/CONFIG_VFIO_PLATFORM_AMDXGBE_RESET
+++ b/baseconfig/arm/aarch64/CONFIG_VFIO_PLATFORM_AMDXGBE_RESET
diff --git a/baseconfig/arm/arm64/CONFIG_VGA_CONSOLE b/baseconfig/arm/aarch64/CONFIG_VGA_CONSOLE
index 5b00b2f22..5b00b2f22 100644
--- a/baseconfig/arm/arm64/CONFIG_VGA_CONSOLE
+++ b/baseconfig/arm/aarch64/CONFIG_VGA_CONSOLE
diff --git a/baseconfig/arm/arm64/CONFIG_VIDEO_QCOM_CAMSS b/baseconfig/arm/aarch64/CONFIG_VIDEO_QCOM_CAMSS
index 5e2512c4c..5e2512c4c 100644
--- a/baseconfig/arm/arm64/CONFIG_VIDEO_QCOM_CAMSS
+++ b/baseconfig/arm/aarch64/CONFIG_VIDEO_QCOM_CAMSS
diff --git a/baseconfig/arm/arm64/CONFIG_VIDEO_QCOM_VENUS b/baseconfig/arm/aarch64/CONFIG_VIDEO_QCOM_VENUS
index 68082fdff..68082fdff 100644
--- a/baseconfig/arm/arm64/CONFIG_VIDEO_QCOM_VENUS
+++ b/baseconfig/arm/aarch64/CONFIG_VIDEO_QCOM_VENUS
diff --git a/baseconfig/arm/arm64/CONFIG_VMAP_STACK b/baseconfig/arm/aarch64/CONFIG_VMAP_STACK
index 8bd986875..8bd986875 100644
--- a/baseconfig/arm/arm64/CONFIG_VMAP_STACK
+++ b/baseconfig/arm/aarch64/CONFIG_VMAP_STACK
diff --git a/baseconfig/arm/arm64/CONFIG_XGENE_DMA b/baseconfig/arm/aarch64/CONFIG_XGENE_DMA
index 7c67d5b57..7c67d5b57 100644
--- a/baseconfig/arm/arm64/CONFIG_XGENE_DMA
+++ b/baseconfig/arm/aarch64/CONFIG_XGENE_DMA
diff --git a/baseconfig/arm/arm64/CONFIG_XGENE_PMU b/baseconfig/arm/aarch64/CONFIG_XGENE_PMU
index df5afee9f..df5afee9f 100644
--- a/baseconfig/arm/arm64/CONFIG_XGENE_PMU
+++ b/baseconfig/arm/aarch64/CONFIG_XGENE_PMU
diff --git a/baseconfig/arm/arm64/CONFIG_XGENE_SLIMPRO_MBOX b/baseconfig/arm/aarch64/CONFIG_XGENE_SLIMPRO_MBOX
index cbc486395..cbc486395 100644
--- a/baseconfig/arm/arm64/CONFIG_XGENE_SLIMPRO_MBOX
+++ b/baseconfig/arm/aarch64/CONFIG_XGENE_SLIMPRO_MBOX
diff --git a/baseconfig/arm/arm64/README b/baseconfig/arm/aarch64/README
index c2aec64b2..c2aec64b2 100644
--- a/baseconfig/arm/arm64/README
+++ b/baseconfig/arm/aarch64/README
diff --git a/baseconfig/arm/arm64/CONFIG_USB_EHCI_MSM b/baseconfig/arm/arm64/CONFIG_USB_EHCI_MSM
deleted file mode 100644
index 7397a0f15..000000000
--- a/baseconfig/arm/arm64/CONFIG_USB_EHCI_MSM
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_USB_EHCI_MSM=m
diff --git a/baseconfig/arm/arm64/CONFIG_USB_MSM_OTG b/baseconfig/arm/arm64/CONFIG_USB_MSM_OTG
deleted file mode 100644
index 043abcf37..000000000
--- a/baseconfig/arm/arm64/CONFIG_USB_MSM_OTG
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_USB_MSM_OTG=m
diff --git a/baseconfig/arm/arm64/CONFIG_USB_QCOM_8X16_PHY b/baseconfig/arm/arm64/CONFIG_USB_QCOM_8X16_PHY
deleted file mode 100644
index 79fac4fdc..000000000
--- a/baseconfig/arm/arm64/CONFIG_USB_QCOM_8X16_PHY
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_USB_QCOM_8X16_PHY=m
diff --git a/baseconfig/arm/armv7/CONFIG_DRM_SUN4I_HDMI_CEC b/baseconfig/arm/armv7/CONFIG_DRM_SUN4I_HDMI_CEC
deleted file mode 100644
index 8ba73409c..000000000
--- a/baseconfig/arm/armv7/CONFIG_DRM_SUN4I_HDMI_CEC
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_DRM_SUN4I_HDMI_CEC is not set
diff --git a/baseconfig/arm/armv7/CONFIG_DRM_TVE200 b/baseconfig/arm/armv7/CONFIG_DRM_TVE200
new file mode 100644
index 000000000..9e6b9770d
--- /dev/null
+++ b/baseconfig/arm/armv7/CONFIG_DRM_TVE200
@@ -0,0 +1 @@
+CONFIG_DRM_TVE200=m
diff --git a/baseconfig/arm/armv7/CONFIG_OMAP4_DSS_HDMI_CEC b/baseconfig/arm/armv7/CONFIG_OMAP4_DSS_HDMI_CEC
new file mode 100644
index 000000000..56ceebfd5
--- /dev/null
+++ b/baseconfig/arm/armv7/CONFIG_OMAP4_DSS_HDMI_CEC
@@ -0,0 +1 @@
+CONFIG_OMAP4_DSS_HDMI_CEC=y
diff --git a/baseconfig/arm/armv7/CONFIG_PCI_V3_SEMI b/baseconfig/arm/armv7/CONFIG_PCI_V3_SEMI
new file mode 100644
index 000000000..8aeccd6e6
--- /dev/null
+++ b/baseconfig/arm/armv7/CONFIG_PCI_V3_SEMI
@@ -0,0 +1 @@
+CONFIG_PCI_V3_SEMI=y
diff --git a/baseconfig/arm/armv7/armv7/CONFIG_USB_EHCI_MSM b/baseconfig/arm/armv7/armv7/CONFIG_USB_EHCI_MSM
deleted file mode 100644
index 7397a0f15..000000000
--- a/baseconfig/arm/armv7/armv7/CONFIG_USB_EHCI_MSM
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_USB_EHCI_MSM=m
diff --git a/baseconfig/arm/armv7/armv7/CONFIG_USB_MSM_OTG b/baseconfig/arm/armv7/armv7/CONFIG_USB_MSM_OTG
deleted file mode 100644
index 043abcf37..000000000
--- a/baseconfig/arm/armv7/armv7/CONFIG_USB_MSM_OTG
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_USB_MSM_OTG=m
diff --git a/baseconfig/arm/armv7/armv7/CONFIG_USB_QCOM_8X16_PHY b/baseconfig/arm/armv7/armv7/CONFIG_USB_QCOM_8X16_PHY
deleted file mode 100644
index 79fac4fdc..000000000
--- a/baseconfig/arm/armv7/armv7/CONFIG_USB_QCOM_8X16_PHY
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_USB_QCOM_8X16_PHY=m
diff --git a/baseconfig/powerpc/CONFIG_CRYPTO_DEV_NX b/baseconfig/powerpc/CONFIG_CRYPTO_DEV_NX
index fd145f04f..47b9dbe8a 100644
--- a/baseconfig/powerpc/CONFIG_CRYPTO_DEV_NX
+++ b/baseconfig/powerpc/CONFIG_CRYPTO_DEV_NX
@@ -1 +1 @@
-CONFIG_CRYPTO_DEV_NX=y
+# CONFIG_CRYPTO_DEV_NX is not set
diff --git a/baseconfig/powerpc/CONFIG_PPC_FAST_ENDIAN_SWITCH b/baseconfig/powerpc/CONFIG_PPC_FAST_ENDIAN_SWITCH
new file mode 100644
index 000000000..9a031362f
--- /dev/null
+++ b/baseconfig/powerpc/CONFIG_PPC_FAST_ENDIAN_SWITCH
@@ -0,0 +1 @@
+# CONFIG_PPC_FAST_ENDIAN_SWITCH is not set
diff --git a/baseconfig/powerpc/CONFIG_PPC_RADIX_MMU_DEFAULT b/baseconfig/powerpc/CONFIG_PPC_RADIX_MMU_DEFAULT
new file mode 100644
index 000000000..fe2d46f23
--- /dev/null
+++ b/baseconfig/powerpc/CONFIG_PPC_RADIX_MMU_DEFAULT
@@ -0,0 +1 @@
+CONFIG_PPC_RADIX_MMU_DEFAULT=y
diff --git a/baseconfig/s390x/CONFIG_ALTERNATIVES b/baseconfig/s390x/CONFIG_ALTERNATIVES
new file mode 100644
index 000000000..ae7823029
--- /dev/null
+++ b/baseconfig/s390x/CONFIG_ALTERNATIVES
@@ -0,0 +1 @@
+CONFIG_ALTERNATIVES=y
diff --git a/baseconfig/s390x/CONFIG_IRDA b/baseconfig/s390x/CONFIG_IRDA
deleted file mode 100644
index 54366a325..000000000
--- a/baseconfig/s390x/CONFIG_IRDA
+++ /dev/null
@@ -1 +0,0 @@
-# CONFIG_IRDA is not set
diff --git a/baseconfig/x86/CONFIG_ACPI_REV_OVERRIDE_POSSIBLE b/baseconfig/x86/CONFIG_ACPI_REV_OVERRIDE_POSSIBLE
index 22e6b36cf..021ea2f25 100644
--- a/baseconfig/x86/CONFIG_ACPI_REV_OVERRIDE_POSSIBLE
+++ b/baseconfig/x86/CONFIG_ACPI_REV_OVERRIDE_POSSIBLE
@@ -1 +1 @@
-# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set
+CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
diff --git a/baseconfig/x86/CONFIG_DELL_SMBIOS_SMM b/baseconfig/x86/CONFIG_DELL_SMBIOS_SMM
new file mode 100644
index 000000000..2ba638248
--- /dev/null
+++ b/baseconfig/x86/CONFIG_DELL_SMBIOS_SMM
@@ -0,0 +1 @@
+CONFIG_DELL_SMBIOS_SMM=m
diff --git a/baseconfig/x86/CONFIG_DELL_SMBIOS_WMI b/baseconfig/x86/CONFIG_DELL_SMBIOS_WMI
new file mode 100644
index 000000000..0e3f3d8de
--- /dev/null
+++ b/baseconfig/x86/CONFIG_DELL_SMBIOS_WMI
@@ -0,0 +1 @@
+CONFIG_DELL_SMBIOS_WMI=m
diff --git a/baseconfig/x86/CONFIG_DRM_AMD_DC_DCN1_0 b/baseconfig/x86/CONFIG_DRM_AMD_DC_DCN1_0
new file mode 100644
index 000000000..5d7cf50f6
--- /dev/null
+++ b/baseconfig/x86/CONFIG_DRM_AMD_DC_DCN1_0
@@ -0,0 +1 @@
+CONFIG_DRM_AMD_DC_DCN1_0=y
diff --git a/baseconfig/x86/CONFIG_INTEL_WMI_THUNDERBOLT b/baseconfig/x86/CONFIG_INTEL_WMI_THUNDERBOLT
new file mode 100644
index 000000000..05356f742
--- /dev/null
+++ b/baseconfig/x86/CONFIG_INTEL_WMI_THUNDERBOLT
@@ -0,0 +1 @@
+CONFIG_INTEL_WMI_THUNDERBOLT=m
diff --git a/baseconfig/x86/CONFIG_LEDS_APU b/baseconfig/x86/CONFIG_LEDS_APU
new file mode 100644
index 000000000..3c8087068
--- /dev/null
+++ b/baseconfig/x86/CONFIG_LEDS_APU
@@ -0,0 +1 @@
+CONFIG_LEDS_APU=m
diff --git a/baseconfig/x86/CONFIG_RETPOLINE b/baseconfig/x86/CONFIG_RETPOLINE
new file mode 100644
index 000000000..c46e12644
--- /dev/null
+++ b/baseconfig/x86/CONFIG_RETPOLINE
@@ -0,0 +1 @@
+CONFIG_RETPOLINE=y
diff --git a/baseconfig/x86/CONFIG_SND_SOC_INTEL_HASWELL b/baseconfig/x86/CONFIG_SND_SOC_INTEL_HASWELL
new file mode 100644
index 000000000..0ad1d94ac
--- /dev/null
+++ b/baseconfig/x86/CONFIG_SND_SOC_INTEL_HASWELL
@@ -0,0 +1 @@
+CONFIG_SND_SOC_INTEL_HASWELL=m
diff --git a/baseconfig/x86/CONFIG_SND_SOC_INTEL_SKYLAKE b/baseconfig/x86/CONFIG_SND_SOC_INTEL_SKYLAKE
new file mode 100644
index 000000000..f0a5748de
--- /dev/null
+++ b/baseconfig/x86/CONFIG_SND_SOC_INTEL_SKYLAKE
@@ -0,0 +1 @@
+CONFIG_SND_SOC_INTEL_SKYLAKE=m
diff --git a/baseconfig/x86/CONFIG_SND_SOC_INTEL_SST_TOPLEVEL b/baseconfig/x86/CONFIG_SND_SOC_INTEL_SST_TOPLEVEL
new file mode 100644
index 000000000..b5dc6477a
--- /dev/null
+++ b/baseconfig/x86/CONFIG_SND_SOC_INTEL_SST_TOPLEVEL
@@ -0,0 +1 @@
+CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m
diff --git a/baseconfig/x86/CONFIG_SND_SST_ATOM_HIFI2_PLATFORM b/baseconfig/x86/CONFIG_SND_SST_ATOM_HIFI2_PLATFORM
new file mode 100644
index 000000000..5770b3626
--- /dev/null
+++ b/baseconfig/x86/CONFIG_SND_SST_ATOM_HIFI2_PLATFORM
@@ -0,0 +1 @@
+CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
diff --git a/baseconfig/x86/CONFIG_THUNDERBOLT_NET b/baseconfig/x86/CONFIG_THUNDERBOLT_NET
new file mode 100644
index 000000000..1cfc06a79
--- /dev/null
+++ b/baseconfig/x86/CONFIG_THUNDERBOLT_NET
@@ -0,0 +1 @@
+CONFIG_THUNDERBOLT_NET=m
diff --git a/baseconfig/x86/x86_64/CONFIG_CHARGER_MANAGER b/baseconfig/x86/x86_64/CONFIG_CHARGER_MANAGER
new file mode 100644
index 000000000..51fe252eb
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_CHARGER_MANAGER
@@ -0,0 +1 @@
+# CONFIG_CHARGER_MANAGER is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_CPU_ISOLATION b/baseconfig/x86/x86_64/CONFIG_CPU_ISOLATION
new file mode 100644
index 000000000..da3a02c10
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_CPU_ISOLATION
@@ -0,0 +1 @@
+CONFIG_CPU_ISOLATION=y
diff --git a/baseconfig/x86/x86_64/CONFIG_INPUT_REGULATOR_HAPTIC b/baseconfig/x86/x86_64/CONFIG_INPUT_REGULATOR_HAPTIC
new file mode 100644
index 000000000..4230eab6f
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_INPUT_REGULATOR_HAPTIC
@@ -0,0 +1 @@
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_LEDS_REGULATOR b/baseconfig/x86/x86_64/CONFIG_LEDS_REGULATOR
new file mode 100644
index 000000000..b190ec3a8
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_LEDS_REGULATOR
@@ -0,0 +1 @@
+# CONFIG_LEDS_REGULATOR is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_PAGE_TABLE_ISOLATION b/baseconfig/x86/x86_64/CONFIG_PAGE_TABLE_ISOLATION
new file mode 100644
index 000000000..6881a7757
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_PAGE_TABLE_ISOLATION
@@ -0,0 +1 @@
+CONFIG_PAGE_TABLE_ISOLATION=y
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR b/baseconfig/x86/x86_64/CONFIG_REGULATOR
new file mode 100644
index 000000000..5b7c35c8f
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR
@@ -0,0 +1 @@
+CONFIG_REGULATOR=y
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_ACT8865 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_ACT8865
new file mode 100644
index 000000000..f1e82abd5
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_ACT8865
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_ACT8865 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_AD5398 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_AD5398
new file mode 100644
index 000000000..83b596823
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_AD5398
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_AD5398 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_AXP20X b/baseconfig/x86/x86_64/CONFIG_REGULATOR_AXP20X
new file mode 100644
index 000000000..e44a842fd
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_AXP20X
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_AXP20X is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_BD9571MWV b/baseconfig/x86/x86_64/CONFIG_REGULATOR_BD9571MWV
new file mode 100644
index 000000000..aee7f5a0e
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_BD9571MWV
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_BD9571MWV is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_DA9210 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_DA9210
new file mode 100644
index 000000000..ed858d92d
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_DA9210
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_DA9210 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_DA9211 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_DA9211
new file mode 100644
index 000000000..5f4b883da
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_DA9211
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_DA9211 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_FAN53555 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_FAN53555
new file mode 100644
index 000000000..d62314c7d
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_FAN53555
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_FAN53555 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_FIXED_VOLTAGE b/baseconfig/x86/x86_64/CONFIG_REGULATOR_FIXED_VOLTAGE
new file mode 100644
index 000000000..63c1bd929
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_FIXED_VOLTAGE
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_GPIO b/baseconfig/x86/x86_64/CONFIG_REGULATOR_GPIO
new file mode 100644
index 000000000..91c099fda
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_GPIO
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_GPIO is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_ISL6271A b/baseconfig/x86/x86_64/CONFIG_REGULATOR_ISL6271A
new file mode 100644
index 000000000..f2507c882
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_ISL6271A
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_ISL6271A is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_ISL9305 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_ISL9305
new file mode 100644
index 000000000..70ade2e4d
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_ISL9305
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_ISL9305 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP3971 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP3971
new file mode 100644
index 000000000..e5bd8a9e8
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP3971
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_LP3971 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP3972 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP3972
new file mode 100644
index 000000000..3820f4be8
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP3972
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_LP3972 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP872X b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP872X
new file mode 100644
index 000000000..a41e5d369
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP872X
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_LP872X is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP8755 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP8755
new file mode 100644
index 000000000..3d3d38b77
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LP8755
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_LP8755 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_LTC3589 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LTC3589
new file mode 100644
index 000000000..d14c63b54
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LTC3589
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_LTC3589 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_LTC3676 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LTC3676
new file mode 100644
index 000000000..a8f50af1c
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_LTC3676
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_LTC3676 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX1586 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX1586
new file mode 100644
index 000000000..a97539613
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX1586
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_MAX1586 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8649 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8649
new file mode 100644
index 000000000..79620946a
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8649
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_MAX8649 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8660 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8660
new file mode 100644
index 000000000..6b033e3b6
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8660
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_MAX8660 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8952 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8952
new file mode 100644
index 000000000..f8346c0fc
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MAX8952
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_MAX8952 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_MT6311 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MT6311
new file mode 100644
index 000000000..884c0d452
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_MT6311
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_MT6311 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_PFUZE100 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PFUZE100
new file mode 100644
index 000000000..726541598
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PFUZE100
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_PFUZE100 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88060 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88060
new file mode 100644
index 000000000..6c69caa24
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88060
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_PV88060 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88080 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88080
new file mode 100644
index 000000000..4b024f4ba
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88080
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_PV88080 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88090 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88090
new file mode 100644
index 000000000..009707021
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PV88090
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_PV88090 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_PWM b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PWM
new file mode 100644
index 000000000..81698143a
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_PWM
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_PWM is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS51632 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS51632
new file mode 100644
index 000000000..b586678e3
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS51632
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_TPS51632 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS62360 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS62360
new file mode 100644
index 000000000..b6904c247
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS62360
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_TPS62360 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS65023 b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS65023
new file mode 100644
index 000000000..7e5697b53
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS65023
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_TPS65023 is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS6507X b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS6507X
new file mode 100644
index 000000000..bcb7b9d40
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS6507X
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_TPS6507X is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS6524X b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS6524X
new file mode 100644
index 000000000..a7363878b
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_TPS6524X
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_TPS6524X is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_USERSPACE_CONSUMER b/baseconfig/x86/x86_64/CONFIG_REGULATOR_USERSPACE_CONSUMER
new file mode 100644
index 000000000..f6a6e11df
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_USERSPACE_CONSUMER
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_REGULATOR_VIRTUAL_CONSUMER b/baseconfig/x86/x86_64/CONFIG_REGULATOR_VIRTUAL_CONSUMER
new file mode 100644
index 000000000..cfdfe491c
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_REGULATOR_VIRTUAL_CONSUMER
@@ -0,0 +1 @@
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_SENSORS_LTC2978_REGULATOR b/baseconfig/x86/x86_64/CONFIG_SENSORS_LTC2978_REGULATOR
new file mode 100644
index 000000000..54d82ddb6
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_SENSORS_LTC2978_REGULATOR
@@ -0,0 +1 @@
+# CONFIG_SENSORS_LTC2978_REGULATOR is not set
diff --git a/baseconfig/x86/x86_64/CONFIG_SND_HDA_POWER_SAVE_DEFAULT b/baseconfig/x86/x86_64/CONFIG_SND_HDA_POWER_SAVE_DEFAULT
new file mode 100644
index 000000000..ba018972d
--- /dev/null
+++ b/baseconfig/x86/x86_64/CONFIG_SND_HDA_POWER_SAVE_DEFAULT
@@ -0,0 +1 @@
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
diff --git a/bcm2835-clk-audio-jitter-issues.patch b/bcm2835-clk-audio-jitter-issues.patch
deleted file mode 100644
index 91304d64b..000000000
--- a/bcm2835-clk-audio-jitter-issues.patch
+++ /dev/null
@@ -1,206 +0,0 @@
-From patchwork Thu Jun 1 14:14:16 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v4,1/2] clk: bcm2835: Limit PCM clock to OSC and PLLD_PER
-From: Phil Elwell <phil@raspberrypi.org>
-X-Patchwork-Id: 9759641
-Message-Id: <8cc0ba82-d33e-127b-7b86-ac595ef416d1@raspberrypi.org>
-To: Michael Turquette <mturquette@baylibre.com>,
- Stephen Boyd <sboyd@codeaurora.org>, Eric Anholt <eric@anholt.net>,
- Stefan Wahren <stefan.wahren@i2se.com>,
- Florian Fainelli <f.fainelli@gmail.com>,
- linux-clk@vger.kernel.org, linux-rpi-kernel@lists.infradead.org,
- linux-kernel@vger.kernel.org
-Date: Thu, 1 Jun 2017 15:14:16 +0100
-
-Restrict clock sources for the PCM peripheral to the oscillator and
-PLLD_PER because other source may have varying rates or be switched off.
-Prevent other sources from being selected by replacing their names in
-the list of potential parents with dummy entries (entry index is
-significant).
-
-Signed-off-by: Phil Elwell <phil@raspberrypi.org>
-Reviewed-by: Eric Anholt <eric@anholt.net>
-Acked-by: Stefan Wahren <stefan.wahren@i2se.com>
----
- drivers/clk/bcm/clk-bcm2835.c | 27 ++++++++++++++++++++++++++-
- 1 file changed, 26 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
-index 0258538..49867d2 100644
---- a/drivers/clk/bcm/clk-bcm2835.c
-+++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -1516,6 +1516,31 @@ struct bcm2835_clk_desc {
- .parents = bcm2835_clock_per_parents, \
- __VA_ARGS__)
-
-+/*
-+ * Restrict clock sources for the PCM peripheral to the oscillator and
-+ * PLLD_PER because other source may have varying rates or be switched
-+ * off.
-+ *
-+ * Prevent other sources from being selected by replacing their names in
-+ * the list of potential parents with dummy entries (entry index is
-+ * significant).
-+ */
-+static const char *const bcm2835_pcm_per_parents[] = {
-+ "-",
-+ "xosc",
-+ "-",
-+ "-",
-+ "-",
-+ "-",
-+ "plld_per",
-+ "-",
-+};
-+
-+#define REGISTER_PCM_CLK(...) REGISTER_CLK( \
-+ .num_mux_parents = ARRAY_SIZE(bcm2835_pcm_per_parents), \
-+ .parents = bcm2835_pcm_per_parents, \
-+ __VA_ARGS__)
-+
- /* main vpu parent mux */
- static const char *const bcm2835_clock_vpu_parents[] = {
- "gnd",
-@@ -1993,7 +2018,7 @@ struct bcm2835_clk_desc {
- .int_bits = 4,
- .frac_bits = 8,
- .tcnt_mux = 22),
-- [BCM2835_CLOCK_PCM] = REGISTER_PER_CLK(
-+ [BCM2835_CLOCK_PCM] = REGISTER_PCM_CLK(
- .name = "pcm",
- .ctl_reg = CM_PCMCTL,
- .div_reg = CM_PCMDIV,
-From patchwork Thu Jun 1 14:14:22 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v4,2/2] clk: bcm2835: Minimise clock jitter for PCM clock
-From: Phil Elwell <phil@raspberrypi.org>
-X-Patchwork-Id: 9759643
-Message-Id: <9989244b-ca4d-9081-95d9-b24f51099222@raspberrypi.org>
-To: Michael Turquette <mturquette@baylibre.com>,
- Stephen Boyd <sboyd@codeaurora.org>, Eric Anholt <eric@anholt.net>,
- Stefan Wahren <stefan.wahren@i2se.com>,
- Florian Fainelli <f.fainelli@gmail.com>,
- linux-clk@vger.kernel.org, linux-rpi-kernel@lists.infradead.org,
- linux-kernel@vger.kernel.org
-Date: Thu, 1 Jun 2017 15:14:22 +0100
-
-Fractional clock dividers generate accurate average frequencies but
-with jitter, particularly when the integer divisor is small.
-
-Introduce a new metric of clock accuracy to penalise clocks with a good
-average but worse jitter compared to clocks with an average which is no
-better but with lower jitter. The metric is the ideal rate minus the
-worse deviation from that ideal using the nearest integer divisors.
-
-Use this metric for parent selection for clocks requiring low jitter
-(currently just PCM).
-
-Signed-off-by: Phil Elwell <phil@raspberrypi.org>
-Reviewed-by: Eric Anholt <eric@anholt.net>
-Acked-by: Stefan Wahren <stefan.wahren@i2se.com>
----
- drivers/clk/bcm/clk-bcm2835.c | 34 +++++++++++++++++++++++++++++-----
- 1 file changed, 29 insertions(+), 5 deletions(-)
-
-diff --git a/drivers/clk/bcm/clk-bcm2835.c b/drivers/clk/bcm/clk-bcm2835.c
-index 49867d2..0bc56a0 100644
---- a/drivers/clk/bcm/clk-bcm2835.c
-+++ b/drivers/clk/bcm/clk-bcm2835.c
-@@ -530,6 +530,7 @@ struct bcm2835_clock_data {
-
- bool is_vpu_clock;
- bool is_mash_clock;
-+ bool low_jitter;
-
- u32 tcnt_mux;
- };
-@@ -1124,7 +1125,8 @@ static unsigned long bcm2835_clock_choose_div_and_prate(struct clk_hw *hw,
- int parent_idx,
- unsigned long rate,
- u32 *div,
-- unsigned long *prate)
-+ unsigned long *prate,
-+ unsigned long *avgrate)
- {
- struct bcm2835_clock *clock = bcm2835_clock_from_hw(hw);
- struct bcm2835_cprman *cprman = clock->cprman;
-@@ -1139,8 +1141,25 @@ static unsigned long bcm2835_clock_choose_div_and_prate(struct clk_hw *hw,
- *prate = clk_hw_get_rate(parent);
- *div = bcm2835_clock_choose_div(hw, rate, *prate, true);
-
-- return bcm2835_clock_rate_from_divisor(clock, *prate,
-- *div);
-+ *avgrate = bcm2835_clock_rate_from_divisor(clock, *prate, *div);
-+
-+ if (data->low_jitter && (*div & CM_DIV_FRAC_MASK)) {
-+ unsigned long high, low;
-+ u32 int_div = *div & ~CM_DIV_FRAC_MASK;
-+
-+ high = bcm2835_clock_rate_from_divisor(clock, *prate,
-+ int_div);
-+ int_div += CM_DIV_FRAC_MASK + 1;
-+ low = bcm2835_clock_rate_from_divisor(clock, *prate,
-+ int_div);
-+
-+ /*
-+ * Return a value which is the maximum deviation
-+ * below the ideal rate, for use as a metric.
-+ */
-+ return *avgrate - max(*avgrate - low, high - *avgrate);
-+ }
-+ return *avgrate;
- }
-
- if (data->frac_bits)
-@@ -1167,6 +1186,7 @@ static unsigned long bcm2835_clock_choose_div_and_prate(struct clk_hw *hw,
-
- *div = curdiv << CM_DIV_FRAC_BITS;
- *prate = curdiv * best_rate;
-+ *avgrate = best_rate;
-
- return best_rate;
- }
-@@ -1178,6 +1198,7 @@ static int bcm2835_clock_determine_rate(struct clk_hw *hw,
- bool current_parent_is_pllc;
- unsigned long rate, best_rate = 0;
- unsigned long prate, best_prate = 0;
-+ unsigned long avgrate, best_avgrate = 0;
- size_t i;
- u32 div;
-
-@@ -1202,11 +1223,13 @@ static int bcm2835_clock_determine_rate(struct clk_hw *hw,
- continue;
-
- rate = bcm2835_clock_choose_div_and_prate(hw, i, req->rate,
-- &div, &prate);
-+ &div, &prate,
-+ &avgrate);
- if (rate > best_rate && rate <= req->rate) {
- best_parent = parent;
- best_prate = prate;
- best_rate = rate;
-+ best_avgrate = avgrate;
- }
- }
-
-@@ -1216,7 +1239,7 @@ static int bcm2835_clock_determine_rate(struct clk_hw *hw,
- req->best_parent_hw = best_parent;
- req->best_parent_rate = best_prate;
-
-- req->rate = best_rate;
-+ req->rate = best_avgrate;
-
- return 0;
- }
-@@ -2025,6 +2048,7 @@ struct bcm2835_clk_desc {
- .int_bits = 12,
- .frac_bits = 12,
- .is_mash_clock = true,
-+ .low_jitter = true,
- .tcnt_mux = 23),
- [BCM2835_CLOCK_PWM] = REGISTER_PER_CLK(
- .name = "pwm",
diff --git a/bcm2835-fix-potential-null-pointer-dereferences.patch b/bcm2835-fix-potential-null-pointer-dereferences.patch
deleted file mode 100644
index 862e77fe8..000000000
--- a/bcm2835-fix-potential-null-pointer-dereferences.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From patchwork Thu May 25 17:04:55 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v2] mmc: bcm2835: fix potential null pointer dereferences
-From: "Gustavo A. R. Silva" <garsilva@embeddedor.com>
-X-Patchwork-Id: 9748761
-Message-Id: <20170525170455.GA6904@embeddedgus>
-To: Stefan Wahren <stefan.wahren@i2se.com>,
- Ulf Hansson <ulf.hansson@linaro.org>,
- Florian Fainelli <f.fainelli@gmail.com>,
- Ray Jui <rjui@broadcom.com>, Scott Branden <sbranden@broadcom.com>,
- bcm-kernel-feedback-list@broadcom.com, Eric Anholt <eric@anholt.net>
-Cc: "Gustavo A. R. Silva" <garsilva@embeddedor.com>,
- linux-mmc@vger.kernel.org, linux-rpi-kernel@lists.infradead.org,
- linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org
-Date: Thu, 25 May 2017 12:04:55 -0500
-
-Null check at line 1165: if (mrq->cmd), implies that mrq->cmd might
-be NULL.
-Add null checks before dereferencing pointer mrq->cmd in order to avoid
-any potential NULL pointer dereference.
-
-Addresses-Coverity-ID: 1408740
-Tested-by: Stefan Wahren <stefan.wahren@i2se.com>
-Signed-off-by: Gustavo A. R. Silva <garsilva@embeddedor.com>
----
-Changes in v2:
- Change subject to make it clear the patch is bcm2835 related.
-
- drivers/mmc/host/bcm2835.c | 12 +++++++++---
- 1 file changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/drivers/mmc/host/bcm2835.c b/drivers/mmc/host/bcm2835.c
-index 1f343a4..abba9a2 100644
---- a/drivers/mmc/host/bcm2835.c
-+++ b/drivers/mmc/host/bcm2835.c
-@@ -1172,7 +1172,10 @@ static void bcm2835_request(struct mmc_host *mmc, struct mmc_request *mrq)
- if (mrq->data && !is_power_of_2(mrq->data->blksz)) {
- dev_err(dev, "unsupported block size (%d bytes)\n",
- mrq->data->blksz);
-- mrq->cmd->error = -EINVAL;
-+
-+ if (mrq->cmd)
-+ mrq->cmd->error = -EINVAL;
-+
- mmc_request_done(mmc, mrq);
- return;
- }
-@@ -1194,7 +1197,10 @@ static void bcm2835_request(struct mmc_host *mmc, struct mmc_request *mrq)
- readl(host->ioaddr + SDCMD) & SDCMD_CMD_MASK,
- edm);
- bcm2835_dumpregs(host);
-- mrq->cmd->error = -EILSEQ;
-+
-+ if (mrq->cmd)
-+ mrq->cmd->error = -EILSEQ;
-+
- bcm2835_finish_request(host);
- mutex_unlock(&host->mutex);
- return;
-@@ -1207,7 +1213,7 @@ static void bcm2835_request(struct mmc_host *mmc, struct mmc_request *mrq)
- if (!host->use_busy)
- bcm2835_finish_command(host);
- }
-- } else if (bcm2835_send_command(host, mrq->cmd)) {
-+ } else if (mrq->cmd && bcm2835_send_command(host, mrq->cmd)) {
- if (host->data && host->dma_desc) {
- /* DMA transfer starts now, PIO starts after irq */
- bcm2835_start_dma(host);
diff --git a/bcm2835-pinctrl-Avoid-warning-from-__irq_do_set_handler.patch b/bcm2835-pinctrl-Avoid-warning-from-__irq_do_set_handler.patch
deleted file mode 100644
index 258d3b210..000000000
--- a/bcm2835-pinctrl-Avoid-warning-from-__irq_do_set_handler.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From patchwork Wed Jun 21 18:20:04 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: pinctrl: bcm2835: Avoid warning from __irq_do_set_handler
-From: Stefan Wahren <stefan.wahren@i2se.com>
-X-Patchwork-Id: 9802555
-Message-Id: <1498069204-28154-1-git-send-email-stefan.wahren@i2se.com>
-To: Linus Walleij <linus.walleij@linaro.org>, Eric Anholt <eric@anholt.net>
-Cc: Stefan Wahren <stefan.wahren@i2se.com>, linux-gpio@vger.kernel.org,
- Phil Elwell <phil@raspberrypi.org>, linux-rpi-kernel@lists.infradead.org,
- linux-arm-kernel@lists.infradead.org
-Date: Wed, 21 Jun 2017 20:20:04 +0200
-
-We get a warning during boot with enabled EARLY_PRINTK that
-we try to set a irq_chip without data. This is caused by ignoring
-the return value of irq_of_parse_and_map(). So avoid calling
-gpiochip_set_chained_irqchip() in error case.
-
-Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
-Fixes: 85ae9e512f43 ("pinctrl: bcm2835: switch to GPIOLIB_IRQCHIP")
----
- drivers/pinctrl/bcm/pinctrl-bcm2835.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/drivers/pinctrl/bcm/pinctrl-bcm2835.c b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
-index 1eb7a1a..2308831 100644
---- a/drivers/pinctrl/bcm/pinctrl-bcm2835.c
-+++ b/drivers/pinctrl/bcm/pinctrl-bcm2835.c
-@@ -1048,6 +1048,10 @@ static int bcm2835_pinctrl_probe(struct platform_device *pdev)
- for (i = 0; i < BCM2835_NUM_IRQS; i++) {
- pc->irq[i] = irq_of_parse_and_map(np, i);
- pc->irq_group[i] = i;
-+
-+ if (pc->irq[i] == 0)
-+ continue;
-+
- /*
- * Use the same handler for all groups: this is necessary
- * since we use one gpiochip to cover all lines - the
-From 8aa99fe688734f249b07314cdd7c5e25651c9c6d Mon Sep 17 00:00:00 2001
-From: Phil Elwell <phil@raspberrypi.org>
-Date: Thu, 27 Oct 2016 16:21:19 +0100
-Subject: irq-bcm2836: Prevent spurious interrupts, and trap them early
-
-The old arch-specific IRQ macros included a dsb to ensure the
-write to clear the mailbox interrupt completed before returning
-from the interrupt. The BCM2836 irqchip driver needs the same
-precaution to avoid spurious interrupts.
-
-Signed-off-by: Phil Elwell <phil@raspberrypi.org>
----
- drivers/irqchip/irq-bcm2836.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/irqchip/irq-bcm2836.c b/drivers/irqchip/irq-bcm2836.c
-index e7463e3..a8db33b 100644
---- a/drivers/irqchip/irq-bcm2836.c
-+++ b/drivers/irqchip/irq-bcm2836.c
-@@ -175,6 +175,7 @@ __exception_irq_entry bcm2836_arm_irqchip_handle_irq(struct pt_regs *regs)
- u32 ipi = ffs(mbox_val) - 1;
-
- writel(1 << ipi, mailbox0);
-+ dsb(sy);
- handle_IPI(ipi, regs);
- #endif
- } else if (stat) {
---
-cgit v0.12
-
diff --git a/bcm2837-arm32-support.patch b/bcm2837-arm32-support.patch
deleted file mode 100644
index 021ae1069..000000000
--- a/bcm2837-arm32-support.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From patchwork Tue Apr 25 16:45:08 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: ARM: dts: Add devicetree for the Raspberry Pi 3, for arm32 (v6)
-From: Eric Anholt <eric@anholt.net>
-X-Patchwork-Id: 9698781
-Message-Id: <20170425164508.32242-1-eric@anholt.net>
-To: Lee Jones <lee@kernel.org>, Florian Fainelli <f.fainelli@gmail.com>,
- Olof Johansson <olof@lixom.net>, Rob Herring <robh+dt@kernel.org>,
- Mark Rutland <mark.rutland@arm.com>, devicetree@vger.kernel.org
-Cc: Stefan Wahren <stefan.wahren@i2se.com>, linux-kernel@vger.kernel.org,
- Eric Anholt <eric@anholt.net>, bcm-kernel-feedback-list@broadcom.com,
- Gerd Hoffmann <kraxel@redhat.com>, linux-arm-kernel@lists.infradead.org,
- linux-rpi-kernel@lists.infradead.org
-Date: Tue, 25 Apr 2017 09:45:08 -0700
-
-Raspbian and Fedora have decided to support the Pi3 in 32-bit mode for
-now, so it's useful to be able to test that mode on an upstream
-kernel. It's also been useful for me to use the same board for 32-bit
-and 64-bit development.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
----
- arch/arm/boot/dts/Makefile | 1 +
- arch/arm/boot/dts/bcm2837-rpi-3-b.dts | 1 +
- 2 files changed, 2 insertions(+)
- create mode 100644 arch/arm/boot/dts/bcm2837-rpi-3-b.dts
-
-diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
-index 011808490fed..eded842d9978 100644
---- a/arch/arm/boot/dts/Makefile
-+++ b/arch/arm/boot/dts/Makefile
-@@ -72,6 +72,7 @@ dtb-$(CONFIG_ARCH_BCM2835) += \
- bcm2835-rpi-b-plus.dtb \
- bcm2835-rpi-a-plus.dtb \
- bcm2836-rpi-2-b.dtb \
-+ bcm2837-rpi-3-b.dtb \
- bcm2835-rpi-zero.dtb
- dtb-$(CONFIG_ARCH_BCM_5301X) += \
- bcm4708-asus-rt-ac56u.dtb \
-diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
-new file mode 100644
-index 000000000000..c72a27d908b6
---- /dev/null
-+++ b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
-@@ -0,0 +1 @@
-+#include "../../../arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts"
diff --git a/bcm2837-bluetooth-support.patch b/bcm2837-bluetooth-support.patch
deleted file mode 100644
index c272c1efe..000000000
--- a/bcm2837-bluetooth-support.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 50252c318fe2fcfcbd0832fa835e7fd1fafd7d2d Mon Sep 17 00:00:00 2001
-From: Peter Robinson <pbrobinson@gmail.com>
-Date: Sun, 10 Sep 2017 19:30:02 +0100
-Subject: [PATCH 2/2] ARM: dts: bcm2837-rpi-3-b: Add bcm43438 serial slave
-
-Add BCM43438 (bluetooth) as a slave device of uart0 (pl011/ttyAMA0).
-This allows to automatically insert the bcm43438 to the bluetooth
-subsystem instead of relying on userspace helpers (hciattach).
-
-Overwrite chosen/stdout-path to use 8250 aux uart as console.
-
-Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxx>
-Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
----
- arch/arm/boot/dts/bcm2837-rpi-3-b.dts | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
-index 20725ca487f3..e4488cb3067e 100644
---- a/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
-+++ b/arch/arm/boot/dts/bcm2837-rpi-3-b.dts
-@@ -24,6 +29,11 @@
- pinctrl-names = "default";
- pinctrl-0 = <&uart0_gpio32 &gpclk2_gpio43>;
- status = "okay";
-+
-+ bluetooth {
-+ compatible = "brcm,bcm43438-bt";
-+ max-speed = <2000000>;
-+ };
- };
-
- /* uart1 is mapped to the pin header */
---
-2.13.5
-
diff --git a/bcm2837-sdhost-fixes.patch b/bcm2837-sdhost-fixes.patch
deleted file mode 100644
index 9b81005ad..000000000
--- a/bcm2837-sdhost-fixes.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From e199a012a0fb0be11ccd26b4a502ae830eb10db0 Mon Sep 17 00:00:00 2001
-From: Gerd Hoffmann <kraxel@redhat.com>
-Date: Tue, 21 Jun 2016 11:47:56 +0200
-Subject: arm64: dts: bcm2837: add &sdhci and &sdhost
-
-For the raspberry pi 3 we'll need both sdhci (handles sdio wifi) and
-sdhost (handles sdcard).
-
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-Acked-by: Eric Anholt <eric@anholt.net>
----
- arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts | 17 +++++++++++++++++
- 1 file changed, 17 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
-index c309633..972f14d 100644
---- a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
-@@ -22,3 +22,20 @@
- &uart1 {
- status = "okay";
- };
-+
-+/* SDHCI is used to control the SDIO for wireless */
-+&sdhci {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&emmc_gpio34>;
-+ status = "okay";
-+ bus-width = <4>;
-+ non-removable;
-+};
-+
-+/* SDHOST is used to drive the SD card */
-+&sdhost {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&sdhost_gpio48>;
-+ status = "okay";
-+ bus-width = <4>;
-+};
---
-cgit v0.12
-
-From 0c1759bc4fc8884d790d4ab99b5276132559b5a1 Mon Sep 17 00:00:00 2001
-From: Gerd Hoffmann <kraxel@redhat.com>
-Date: Tue, 21 Jun 2016 10:00:58 +0200
-Subject: arm: dts: bcm283x: switch from &sdhci to &sdhost
-
-sdcard access with the sdhost controller is faster.
-
-Read access (dd with 64k blocks on rpi2):
- CONFIG_MMC_SDHCI_IPROC: 11-12 MB/s
- CONFIG_MMC_BCM2835: 19-20 MB/s
-
-Differences on write access are pretty much in the noise.
-
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-Acked-by: Eric Anholt <eric@anholt.net>
----
- arch/arm/boot/dts/bcm2835-rpi.dtsi | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/arch/arm/boot/dts/bcm2835-rpi.dtsi b/arch/arm/boot/dts/bcm2835-rpi.dtsi
-index 8b95832..e36c392 100644
---- a/arch/arm/boot/dts/bcm2835-rpi.dtsi
-+++ b/arch/arm/boot/dts/bcm2835-rpi.dtsi
-@@ -65,13 +65,13 @@
- &sdhci {
- pinctrl-names = "default";
- pinctrl-0 = <&emmc_gpio48>;
-- status = "okay";
- bus-width = <4>;
- };
-
- &sdhost {
- pinctrl-names = "default";
- pinctrl-0 = <&sdhost_gpio48>;
-+ status = "okay";
- bus-width = <4>;
- };
-
---
-cgit v0.12
-
diff --git a/bcm283x-Define-UART-pinmuxing-on-board-level.patch b/bcm283x-Define-UART-pinmuxing-on-board-level.patch
deleted file mode 100644
index 26efe9007..000000000
--- a/bcm283x-Define-UART-pinmuxing-on-board-level.patch
+++ /dev/null
@@ -1,171 +0,0 @@
-From patchwork Thu Jul 20 19:37:07 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [1/3] ARM: bcm283x: Define UART pinmuxing on board level
-From: Stefan Wahren <stefan.wahren@i2se.com>
-X-Patchwork-Id: 9855625
-Message-Id: <1500579429-9101-2-git-send-email-stefan.wahren@i2se.com>
-To: Eric Anholt <eric@anholt.net>, Rob Herring <robh+dt@kernel.org>,
- Mark Rutland <mark.rutland@arm.com>
-Cc: Stefan Wahren <stefan.wahren@i2se.com>, devicetree@vger.kernel.org,
- Florian Fainelli <f.fainelli@gmail.com>,
- Scott Branden <sbranden@broadcom.com>,
- linux-rpi-kernel@lists.infradead.org,
- linux-arm-kernel@lists.infradead.org, Gerd Hoffmann <kraxel@redhat.com>
-Date: Thu, 20 Jul 2017 21:37:07 +0200
-
-Until RPI 3 and Zero W the pl011 (uart0) was always on pin 14/15. So in
-order to take care of them and other boards in the future,
-we need to define UART pinmuxing on board level.
-
-This work based on Eric Anholt's patch "ARM: bcm2385: Don't force pl011
-onto pins 14/15." and Fabian Vogt's patch "ARM64: dts: bcm2837: assign
-uart0 to BT and uart1 to pin headers".
-
-Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
----
- arch/arm/boot/dts/bcm2835-rpi-a-plus.dts | 6 ++++++
- arch/arm/boot/dts/bcm2835-rpi-a.dts | 6 ++++++
- arch/arm/boot/dts/bcm2835-rpi-b-plus.dts | 6 ++++++
- arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts | 6 ++++++
- arch/arm/boot/dts/bcm2835-rpi-b.dts | 6 ++++++
- arch/arm/boot/dts/bcm2835-rpi-zero.dts | 6 ++++++
- arch/arm/boot/dts/bcm2835-rpi.dtsi | 2 +-
- arch/arm/boot/dts/bcm2836-rpi-2-b.dts | 6 ++++++
- arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts | 10 ++++++++++
- 9 files changed, 53 insertions(+), 1 deletion(-)
-
-diff --git a/arch/arm/boot/dts/bcm2835-rpi-a-plus.dts b/arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
-index d070454..9f86649 100644
---- a/arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
-+++ b/arch/arm/boot/dts/bcm2835-rpi-a-plus.dts
-@@ -99,3 +99,9 @@
- &hdmi {
- hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
- };
-+
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_gpio14>;
-+ status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/bcm2835-rpi-a.dts b/arch/arm/boot/dts/bcm2835-rpi-a.dts
-index 46d078e..4b1af06 100644
---- a/arch/arm/boot/dts/bcm2835-rpi-a.dts
-+++ b/arch/arm/boot/dts/bcm2835-rpi-a.dts
-@@ -94,3 +94,9 @@
- &hdmi {
- hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
- };
-+
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_gpio14>;
-+ status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/bcm2835-rpi-b-plus.dts b/arch/arm/boot/dts/bcm2835-rpi-b-plus.dts
-index 432088e..a846f1e 100644
---- a/arch/arm/boot/dts/bcm2835-rpi-b-plus.dts
-+++ b/arch/arm/boot/dts/bcm2835-rpi-b-plus.dts
-@@ -101,3 +101,9 @@
- &hdmi {
- hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
- };
-+
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_gpio14>;
-+ status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts b/arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts
-index 4133bc2..e860964 100644
---- a/arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts
-+++ b/arch/arm/boot/dts/bcm2835-rpi-b-rev2.dts
-@@ -94,3 +94,9 @@
- &hdmi {
- hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
- };
-+
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_gpio14>;
-+ status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/bcm2835-rpi-b.dts b/arch/arm/boot/dts/bcm2835-rpi-b.dts
-index 4d56fe3..5d77f3f 100644
---- a/arch/arm/boot/dts/bcm2835-rpi-b.dts
-+++ b/arch/arm/boot/dts/bcm2835-rpi-b.dts
-@@ -89,3 +89,9 @@
- &hdmi {
- hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
- };
-+
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_gpio14>;
-+ status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/bcm2835-rpi-zero.dts b/arch/arm/boot/dts/bcm2835-rpi-zero.dts
-index 79a20d5..7036240 100644
---- a/arch/arm/boot/dts/bcm2835-rpi-zero.dts
-+++ b/arch/arm/boot/dts/bcm2835-rpi-zero.dts
-@@ -103,3 +103,9 @@
- &hdmi {
- hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
- };
-+
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_gpio14>;
-+ status = "okay";
-+};
-diff --git a/arch/arm/boot/dts/bcm2835-rpi.dtsi b/arch/arm/boot/dts/bcm2835-rpi.dtsi
-index e55b362..e36c392 100644
---- a/arch/arm/boot/dts/bcm2835-rpi.dtsi
-+++ b/arch/arm/boot/dts/bcm2835-rpi.dtsi
-@@ -39,7 +39,7 @@
- };
-
- alt0: alt0 {
-- brcm,pins = <4 5 7 8 9 10 11 14 15>;
-+ brcm,pins = <4 5 7 8 9 10 11>;
- brcm,function = <BCM2835_FSEL_ALT0>;
- };
- };
-diff --git a/arch/arm/boot/dts/bcm2836-rpi-2-b.dts b/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
-index bf19e8c..e8de414 100644
---- a/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
-+++ b/arch/arm/boot/dts/bcm2836-rpi-2-b.dts
-@@ -39,3 +39,9 @@
- &hdmi {
- hpd-gpios = <&gpio 46 GPIO_ACTIVE_LOW>;
- };
-+
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_gpio14>;
-+ status = "okay";
-+};
-diff --git a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
-index 972f14d..20725ca 100644
---- a/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
-+++ b/arch/arm64/boot/dts/broadcom/bcm2837-rpi-3-b.dts
-@@ -19,7 +19,17 @@
- };
- };
-
-+/* uart0 communicates with the BT module */
-+&uart0 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart0_ctsrts_gpio30 &gpclk2_gpio43>;
-+ status = "okay";
-+};
-+
-+/* uart1 is mapped to the pin header */
- &uart1 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart1_gpio14>;
- status = "okay";
- };
-
diff --git a/bcm283x-drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch b/bcm283x-drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch
deleted file mode 100644
index 70a528253..000000000
--- a/bcm283x-drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From patchwork Thu Feb 9 18:16:00 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: drm/vc4: Fix OOPSes from trying to cache a partially constructed BO.
-From: Eric Anholt <eric@anholt.net>
-X-Patchwork-Id: 138087
-Message-Id: <20170209181600.24048-1-eric@anholt.net>
-To: dri-devel@lists.freedesktop.org
-Cc: linux-kernel@vger.kernel.org, pbrobinson@gmail.com
-Date: Thu, 9 Feb 2017 10:16:00 -0800
-
-If a CMA allocation failed, the partially constructed BO would be
-unreferenced through the normal path, and we might choose to put it in
-the BO cache. If we then reused it before it expired from the cache,
-the kernel would OOPS.
-
-Signed-off-by: Eric Anholt <eric@anholt.net>
-Fixes: c826a6e10644 ("drm/vc4: Add a BO cache.")
----
- drivers/gpu/drm/vc4/vc4_bo.c | 8 ++++++++
- 1 file changed, 8 insertions(+)
-
-diff --git a/drivers/gpu/drm/vc4/vc4_bo.c b/drivers/gpu/drm/vc4/vc4_bo.c
-index 5ec14f25625d..fd83a2807656 100644
---- a/drivers/gpu/drm/vc4/vc4_bo.c
-+++ b/drivers/gpu/drm/vc4/vc4_bo.c
-@@ -314,6 +314,14 @@ void vc4_free_object(struct drm_gem_object *gem_bo)
- goto out;
- }
-
-+ /* If this object was partially constructed but CMA allocation
-+ * had failed, just free it.
-+ */
-+ if (!bo->base.vaddr) {
-+ vc4_bo_destroy(bo);
-+ goto out;
-+ }
-+
- cache_list = vc4_get_cache_list_for_size(dev, gem_bo->size);
- if (!cache_list) {
- vc4_bo_destroy(bo);
diff --git a/bcm283x-vc4-fix-vblank.patch b/bcm283x-vc4-fix-vblank.patch
deleted file mode 100644
index ce4f8b16f..000000000
--- a/bcm283x-vc4-fix-vblank.patch
+++ /dev/null
@@ -1,123 +0,0 @@
-From d40a5938a10a3ba73bce6395729fefd8b8bb1c07 Mon Sep 17 00:00:00 2001
-From: Peter Robinson <pbrobinson@gmail.com>
-Date: Thu, 29 Jun 2017 10:05:05 +0100
-Subject: [PATCH] drm/vc4: Fix VBLANK handling in crtc->enable() path
-
-When we are enabling a CRTC, drm_crtc_vblank_get() is called before
-drm_crtc_vblank_on(), which is not supposed to happen (hence the
-WARN_ON() in the code). To solve the problem, we delay the 'update
-display list' operation after the CRTC is actually enabled.
-
-Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
----
- drivers/gpu/drm/vc4/vc4_crtc.c | 66 +++++++++++++++++++++++++++---------------
- 1 file changed, 43 insertions(+), 23 deletions(-)
-
-diff --git a/drivers/gpu/drm/vc4/vc4_crtc.c b/drivers/gpu/drm/vc4/vc4_crtc.c
-index d86c8cce3182..316bd6210d69 100644
---- a/drivers/gpu/drm/vc4/vc4_crtc.c
-+++ b/drivers/gpu/drm/vc4/vc4_crtc.c
-@@ -530,6 +530,34 @@ static void vc4_crtc_disable(struct drm_crtc *crtc)
- SCALER_DISPSTATX_EMPTY);
- }
-
-+static void vc4_crtc_update_dlist(struct drm_crtc *crtc)
-+{
-+ struct drm_device *dev = crtc->dev;
-+ struct vc4_dev *vc4 = to_vc4_dev(dev);
-+ struct vc4_crtc *vc4_crtc = to_vc4_crtc(crtc);
-+ struct vc4_crtc_state *vc4_state = to_vc4_crtc_state(crtc->state);
-+
-+ if (crtc->state->event) {
-+ unsigned long flags;
-+
-+ crtc->state->event->pipe = drm_crtc_index(crtc);
-+
-+ WARN_ON(drm_crtc_vblank_get(crtc) != 0);
-+
-+ spin_lock_irqsave(&dev->event_lock, flags);
-+ vc4_crtc->event = crtc->state->event;
-+ crtc->state->event = NULL;
-+
-+ HVS_WRITE(SCALER_DISPLISTX(vc4_crtc->channel),
-+ vc4_state->mm.start);
-+
-+ spin_unlock_irqrestore(&dev->event_lock, flags);
-+ } else {
-+ HVS_WRITE(SCALER_DISPLISTX(vc4_crtc->channel),
-+ vc4_state->mm.start);
-+ }
-+}
-+
- static void vc4_crtc_enable(struct drm_crtc *crtc)
- {
- struct drm_device *dev = crtc->dev;
-@@ -540,6 +568,12 @@ static void vc4_crtc_enable(struct drm_crtc *crtc)
-
- require_hvs_enabled(dev);
-
-+ /* Enable vblank irq handling before crtc is started otherwise
-+ * drm_crtc_get_vblank() fails in vc4_crtc_update_dlist().
-+ */
-+ drm_crtc_vblank_on(crtc);
-+ vc4_crtc_update_dlist(crtc);
-+
- /* Turn on the scaler, which will wait for vstart to start
- * compositing.
- */
-@@ -551,9 +585,6 @@ static void vc4_crtc_enable(struct drm_crtc *crtc)
- /* Turn on the pixel valve, which will emit the vstart signal. */
- CRTC_WRITE(PV_V_CONTROL,
- CRTC_READ(PV_V_CONTROL) | PV_VCONTROL_VIDEN);
--
-- /* Enable vblank irq handling after crtc is started. */
-- drm_crtc_vblank_on(crtc);
- }
-
- static bool vc4_crtc_mode_fixup(struct drm_crtc *crtc,
-@@ -608,7 +639,6 @@ static void vc4_crtc_atomic_flush(struct drm_crtc *crtc,
- {
- struct drm_device *dev = crtc->dev;
- struct vc4_dev *vc4 = to_vc4_dev(dev);
-- struct vc4_crtc *vc4_crtc = to_vc4_crtc(crtc);
- struct vc4_crtc_state *vc4_state = to_vc4_crtc_state(crtc->state);
- struct drm_plane *plane;
- bool debug_dump_regs = false;
-@@ -630,25 +660,15 @@ static void vc4_crtc_atomic_flush(struct drm_crtc *crtc,
-
- WARN_ON_ONCE(dlist_next - dlist_start != vc4_state->mm.size);
-
-- if (crtc->state->event) {
-- unsigned long flags;
--
-- crtc->state->event->pipe = drm_crtc_index(crtc);
--
-- WARN_ON(drm_crtc_vblank_get(crtc) != 0);
--
-- spin_lock_irqsave(&dev->event_lock, flags);
-- vc4_crtc->event = crtc->state->event;
-- crtc->state->event = NULL;
--
-- HVS_WRITE(SCALER_DISPLISTX(vc4_crtc->channel),
-- vc4_state->mm.start);
--
-- spin_unlock_irqrestore(&dev->event_lock, flags);
-- } else {
-- HVS_WRITE(SCALER_DISPLISTX(vc4_crtc->channel),
-- vc4_state->mm.start);
-- }
-+ /* Only update DISPLIST if the CRTC was already running and is not
-+ * being disabled.
-+ * vc4_crtc_enable() takes care of updating the dlist just after
-+ * re-enabling VBLANK interrupts and before enabling the engine.
-+ * If the CRTC is being disabled, there's no point in updating this
-+ * information.
-+ */
-+ if (crtc->state->active && old_state->active)
-+ vc4_crtc_update_dlist(crtc);
-
- if (debug_dump_regs) {
- DRM_INFO("CRTC %d HVS after:\n", drm_crtc_index(crtc));
---
-2.13.0
-
diff --git a/bt-bcm.patch b/bt-bcm.patch
deleted file mode 100644
index aa5334b2b..000000000
--- a/bt-bcm.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From feb16722b5d5f05b7ae1278a43e717c3d35cd512 Mon Sep 17 00:00:00 2001
-From: Ian Molton <ian@mnementh.co.uk>
-Date: Wed, 28 Jun 2017 20:10:55 +0100
-Subject: Bluetooth: btbcm: Add entry for BCM43430 UART bluetooth
-
-This patch adds the device ID for the bluetooth chip used in the
-Broadcom BCM43430 SDIO WiFi / UART BT chip.
-
-Successfully tested using Firmware version 0x0182
-
-Signed-off-by: Ian Molton <ian@mnementh.co.uk>
-Reported-by: Loic Poulain <loic.poulain@intel.com>
-Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
----
- drivers/bluetooth/btbcm.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/drivers/bluetooth/btbcm.c b/drivers/bluetooth/btbcm.c
-index 24f8c4e..9ab6cfb 100644
---- a/drivers/bluetooth/btbcm.c
-+++ b/drivers/bluetooth/btbcm.c
-@@ -295,6 +295,7 @@ static const struct {
- { 0x410e, "BCM43341B0" }, /* 002.001.014 */
- { 0x4406, "BCM4324B3" }, /* 002.004.006 */
- { 0x610c, "BCM4354" }, /* 003.001.012 */
-+ { 0x2209, "BCM43430A1" }, /* 001.002.009 */
- { }
- };
-
---
-cgit v1.1
-
diff --git a/config_generation b/config_generation
index 64ae444f4..fdb94b216 100644
--- a/config_generation
+++ b/config_generation
@@ -26,8 +26,8 @@ s390x=baseconfig:baseconfig-s390x
s390x-debug=baseconfig:baseconfig-s390x:debugconfig
# aarch64
-aarch64=baseconfig:baseconfig-arm:baseconfig-arm-arm64
-aarch64-debug=baseconfig:baseconfig-arm:baseconfig-arm-arm64:debugconfig:debugconfig-arm
+aarch64=baseconfig:baseconfig-arm:baseconfig-arm-aarch64
+aarch64-debug=baseconfig:baseconfig-arm:baseconfig-arm-aarch64:debugconfig:debugconfig-arm
# arm
armv7hl=baseconfig:baseconfig-arm:baseconfig-arm-armv7:baseconfig-arm-armv7-armv7
diff --git a/configs/build_configs.sh b/configs/build_configs.sh
new file mode 100755
index 000000000..15ab6b380
--- /dev/null
+++ b/configs/build_configs.sh
@@ -0,0 +1,137 @@
+#!/bin/bash
+#
+# This script merges together the hierarchy of CONFIG_* files under generic
+# and debug to form the necessary $PACKAGE_NAME<version>-<arch>-<variant>.config
+# files for building RHEL kernels, based on the contents of a control file
+
+PACKAGE_NAME="${1:-kernel}" # defines the package name used
+KVERREL="${2:-}"
+SUBARCH="${3:-}" # defines a specific arch
+SCRIPT="$(readlink -f $0)"
+OUTPUT_DIR="$PWD"
+SCRIPT_DIR="$(dirname $SCRIPT)"
+
+# to handle this script being a symlink
+cd $SCRIPT_DIR
+
+set errexit
+set nounset
+
+control_file="config_generation"
+
+cleanup()
+{
+ rm -f config-*
+}
+
+die()
+{
+ echo "$1"
+ cleanup
+ exit 1
+}
+
+function combine_config_layer()
+{
+ dir=$1
+ file="config-$(echo $dir | sed -e 's|/|-|g')"
+
+ if [ $(ls $dir/ | grep -c "^CONFIG_") -eq 0 ]; then
+ touch $file
+ return
+ fi
+
+ cat $dir/CONFIG_* > $file
+}
+
+function merge_configs()
+{
+ archvar=$1
+ arch=$(echo "$archvar" | cut -f1 -d"-")
+ configs=$2
+ order=$3
+ name=$OUTPUT_DIR/$PACKAGE_NAME-$archvar.config
+ echo -n "Building $name ... "
+ touch config-merging config-merged
+
+ # apply based on order
+ skip_if_missing=""
+ for o in $order
+ do
+ for config in $(echo $configs | sed -e 's/:/ /g')
+ do
+ cfile="config-$o-$config"
+
+ test -n "$skip_if_missing" && test ! -e $cfile && continue
+
+ perl merge.pl $cfile config-merging > config-merged
+ if [ ! $? -eq 0 ]; then
+ die "Failed to merge $cfile"
+ fi
+ mv config-merged config-merging
+ done
+
+ # first configs in $order is baseline, all files should be
+ # there. second pass is overrides and can be missing.
+ skip_if_missing="1"
+ done
+ if [ "x$arch" == "xaarch64" ]; then
+ echo "# arm64" > $name
+ elif [ "x$arch" == "xppc64" ]; then
+ echo "# powerpc" > $name
+ elif [ "x$arch" == "xppc64le" ]; then
+ echo "# powerpc" > $name
+ elif [ "x$arch" == "xs390x" ]; then
+ echo "# s390" > $name
+ elif [ "x$arch" == "xarmv7hl" ]; then
+ echo "# arm" > $name
+ elif [ "x$arch" == "xi686" ]; then
+ echo "# i386" > $name
+ else
+ echo "# $arch" > $name
+ fi
+ sort config-merging >> $name
+ rm -f config-merged config-merging
+ echo "done"
+}
+
+while read line
+do
+ if [ $(echo "$line" | grep -c "^#") -ne 0 ]; then
+ continue
+ elif [ $(echo "$line" | grep -c "^$") -ne 0 ]; then
+ continue
+ elif [ $(echo "$line" | grep -c "^ORDER") -ne 0 ]; then
+ order=$(echo "$line" | cut -f2 -d"=")
+ for o in $order
+ do
+ glist=$(find $o -type d)
+ for d in $glist
+ do
+ combine_config_layer $d
+ done
+ done
+ else
+ arch=$(echo "$line" | cut -f1 -d"=")
+ configs=$(echo "$line" | cut -f2 -d"=")
+
+ if [ -n "$SUBARCH" -a "$SUBARCH" != "$arch" ]; then
+ continue
+ fi
+
+ merge_configs $arch $configs "$order"
+ fi
+done < $control_file
+
+# A passed in kernel version implies copy to final location
+# otherwise defer to another script
+if test -n "$KVERREL"
+then
+ for i in kernel-*.config
+ do
+ NEW="$(echo $i | sed "s/$PACKAGE_NAME-$SUBARCH/$PACKAGE_NAME-$KVERREL-$SUBARCH/")"
+ mv $i $NEW
+ done
+fi
+
+cleanup
diff --git a/configs/config_generation b/configs/config_generation
new file mode 100644
index 000000000..e8614c43f
--- /dev/null
+++ b/configs/config_generation
@@ -0,0 +1,41 @@
+# config-variant=config:config:config
+# kernel.config files are build on the fly based on this config,
+# the first arg is arch and variant, the second is a hierarchy of
+# config options, lowest priority to highest
+
+# tells the build_configs.sh which order to build the configs.
+# this is useful when providing a separate overrides directory.
+# do not use quotes and space separate the directories.
+ORDER=fedora
+
+# x86_64
+x86_64=generic:generic-x86:generic-x86-x86_64
+x86_64-debug=generic:generic-x86:generic-x86-x86_64:debug:debug-x86:debug-x86-x86_64
+
+# i686
+i686=generic:generic-x86:generic-x86-i686
+i686-debug=generic:generic-x86:generic-x86-i686:debug:debug-x86
+i686-PAE=generic:generic-x86:generic-x86-i686PAE
+i686-PAEdebug=generic:generic-x86:generic-x86-i686PAE:debug:debug-x86
+
+# ppc64
+ppc64=generic:generic-powerpc:generic-powerpc-powerpc64
+ppc64-debug=generic:generic-powerpc:generic-powerpc-powerpc64:debug
+
+# ppc64le
+ppc64le=generic:generic-powerpc:generic-powerpc-powerpc64le
+ppc64le-debug=generic:generic-powerpc:generic-powerpc-powerpc64le:debug
+
+# s390x
+s390x=generic:generic-s390x
+s390x-debug=generic:generic-s390x:debug
+
+# aarch64
+aarch64=generic:generic-arm:generic-arm-aarch64
+aarch64-debug=generic:generic-arm:generic-arm-aarch64:debug:debug-arm
+
+# arm
+armv7hl=generic:generic-arm:generic-arm-armv7:generic-arm-armv7-armv7
+armv7hl-debug=generic:generic-arm:generic-arm-armv7:generic-arm-armv7-armv7:debug:debug-arm
+armv7hl-lpae=generic:generic-arm:generic-arm-armv7:generic-arm-armv7-lpae
+armv7hl-lpae-debug=generic:generic-arm:generic-arm-armv7:generic-arm-armv7-lpae:debug:debug-arm
diff --git a/configs/process_configs.sh b/configs/process_configs.sh
new file mode 100755
index 000000000..4de45d65a
--- /dev/null
+++ b/configs/process_configs.sh
@@ -0,0 +1,136 @@
+#!/bin/bash
+#
+# This script takes the merged config files and processes them through oldconfig
+# and listnewconfig
+
+
+die()
+{
+ echo "$1"
+ exit 1
+}
+
+# stupid function to find top of tree to do kernel make configs
+switch_to_toplevel()
+{
+ path="$(pwd)"
+ while test -n "$path"
+ do
+ test -d $path/firmware && \
+ test -e $path/MAINTAINERS && \
+ test -d $path/drivers && \
+ break
+
+ path="$(dirname $path)"
+ done
+
+ test -n "$path" || die "Can't find toplevel"
+ echo "$path"
+}
+
+checkoptions()
+{
+ /usr/bin/awk '
+
+ /is not set/ {
+ split ($0, a, "#");
+ split(a[2], b);
+ if (NR==FNR) {
+ configs[b[1]]="is not set";
+ } else {
+ if (configs[b[1]] != "" && configs[b[1]] != "is not set")
+ print "Found # "b[1] " is not set, after generation, had " b[1] " " configs[b[1]] " in Source tree";
+ }
+ }
+
+ /=/ {
+ split ($0, a, "=");
+ if (NR==FNR) {
+ configs[a[1]]=a[2];
+ } else {
+ if (configs[a[1]] != "" && configs[a[1]] != a[2])
+ print "Found "a[1]"="configs[a[1]]" after generation, had " a[1]"="a[2]" in Source tree";
+ }
+ }
+ ' $1 $2 > .mismatches
+
+ if test -s .mismatches
+ then
+ echo "Error: Mismatches found in configuration files"
+ cat .mismatches
+ exit 1
+ fi
+}
+
+function process_configs()
+{
+ # assume we are in $source_tree/configs, need to get to top level
+ pushd $(switch_to_toplevel)
+
+ for cfg in $SCRIPT_DIR/${PACKAGE_NAME}${KVERREL}${SUBARCH}*.config
+ do
+ arch=$(head -1 $cfg | cut -b 3-)
+ cfgtmp="${cfg}.tmp"
+ cfgorig="${cfg}.orig"
+ cat $cfg > $cfgorig
+
+ echo -n "Processing $cfg ... "
+
+ # an empty grep is good but leaves a return value, so use # 'true' to bypass
+ make ARCH=$arch KCONFIG_CONFIG=$cfg listnewconfig | grep -E 'CONFIG_' > .newoptions || true
+ if test -n "$NEWOPTIONS" && test -s .newoptions
+ then
+ echo "Found unset config items, please set them to an appropriate value"
+ cat .newoptions
+ rm .newoptions
+ exit 1
+ fi
+ rm .newoptions
+
+ make ARCH=$arch KCONFIG_CONFIG=$cfg oldnoconfig > /dev/null || exit 1
+ echo "# $arch" > ${cfgtmp}
+ cat "${cfg}" >> ${cfgtmp}
+ if test -n "$CHECKOPTIONS"
+ then
+ checkoptions $cfgtmp $cfgorig
+ fi
+ mv ${cfgtmp} ${cfg}
+ rm ${cfgorig}
+ echo "done"
+ done
+ rm "$SCRIPT_DIR"/*.config.old
+ popd > /dev/null
+
+ echo "Processed config files are in $SCRIPT_DIR"
+}
+
+NEWOPTIONS=""
+CHECKOPTIONS=""
+
+while [[ $# -gt 0 ]]
+do
+ key="$1"
+ case $key in
+ -n)
+ NEWOPTIONS="x"
+ ;;
+ -c)
+ CHECKOPTIONS="x"
+ ;;
+ *)
+ break;;
+ esac
+ shift
+done
+
+PACKAGE_NAME="${1:-kernel}" # defines the package name used
+KVERREL="$(test -n "$2" && echo "-$2" || echo "")"
+SUBARCH="$(test -n "$3" && echo "-$3" || echo "")"
+SCRIPT="$(readlink -f $0)"
+OUTPUT_DIR="$PWD"
+SCRIPT_DIR="$(dirname $SCRIPT)"
+
+# to handle this script being a symlink
+cd $SCRIPT_DIR
+
+process_configs
diff --git a/criu-no-expert.patch b/criu-no-expert.patch
index f7e1ffff1..430bfd095 100644
--- a/criu-no-expert.patch
+++ b/criu-no-expert.patch
@@ -1,3 +1,4 @@
+From 235b02d70a6a9837896c2ff4ca9d03f172cc4281 Mon Sep 17 00:00:00 2001
From: "kernel-team@fedoraproject.org" <kernel-team@fedoraproject.org>
Date: Wed, 30 Jan 2013 10:55:31 -0500
Subject: [PATCH] criu: no expert
@@ -9,24 +10,27 @@ Upstream-status: Fedora mustard
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/init/Kconfig b/init/Kconfig
-index 648bb79d6b73..860ca236975f 100644
+index 2934249fba46..19d9ee8c120b 100644
--- a/init/Kconfig
+++ b/init/Kconfig
-@@ -1137,7 +1137,7 @@ config CGROUP_WRITEBACK
+@@ -871,7 +871,7 @@ config SOCK_CGROUP_DATA
endif # CGROUPS
- config CHECKPOINT_RESTORE
-- bool "Checkpoint/restore support" if EXPERT
-+ bool "Checkpoint/restore support"
- select PROC_CHILDREN
- default n
- help
-@@ -1149,7 +1149,7 @@ config CHECKPOINT_RESTORE
- If unsure, say N here.
-
menuconfig NAMESPACES
- bool "Namespaces support" if EXPERT
+ bool "Namespaces support"
depends on MULTIUSER
default !EXPERT
help
+@@ -1321,7 +1321,7 @@ config MEMBARRIER
+ If unsure, say Y.
+
+ config CHECKPOINT_RESTORE
+- bool "Checkpoint/restore support" if EXPERT
++ bool "Checkpoint/restore support"
+ select PROC_CHILDREN
+ default n
+ help
+--
+2.14.3
+
diff --git a/debugconfig/CONFIG_NOUVEAU_DEBUG_MMU b/debugconfig/CONFIG_NOUVEAU_DEBUG_MMU
new file mode 100644
index 000000000..9b69dee5f
--- /dev/null
+++ b/debugconfig/CONFIG_NOUVEAU_DEBUG_MMU
@@ -0,0 +1 @@
+CONFIG_NOUVEAU_DEBUG_MMU=y
diff --git a/dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch b/dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch
new file mode 100644
index 000000000..6e40c3da3
--- /dev/null
+++ b/dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch
@@ -0,0 +1,62 @@
+From patchwork Mon Jan 22 20:00:03 2018
+Content-Type: text/plain; charset="utf-8"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 8bit
+Subject: dma-buf: fix reservation_object_wait_timeout_rcu once more v2
+From: =?UTF-8?q?Christian=20K=C3=B6nig?= <ckoenig.leichtzumerken@gmail.com>
+X-Patchwork-Id: 199865
+Message-Id: <20180122200003.6665-1-christian.koenig@amd.com>
+To: dri-devel@lists.freedesktop.org, chris@chris-wilson.co.uk, lyude@redhat.com
+Date: Mon, 22 Jan 2018 21:00:03 +0100
+
+We need to set shared_count even if we already have a fence to wait for.
+
+v2: init i to -1 as well
+
+Signed-off-by: Christian König <christian.koenig@amd.com>
+Cc: stable@vger.kernel.org
+Tested-by: Lyude Paul <lyude@redhat.com>
+Reviewed-by: Lyude Paul <lyude@redhat.com>
+Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
+---
+ drivers/dma-buf/reservation.c | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/dma-buf/reservation.c b/drivers/dma-buf/reservation.c
+index 461afa9febd4..314eb1071cce 100644
+--- a/drivers/dma-buf/reservation.c
++++ b/drivers/dma-buf/reservation.c
+@@ -484,13 +484,15 @@ long reservation_object_wait_timeout_rcu(struct reservation_object *obj,
+ unsigned long timeout)
+ {
+ struct dma_fence *fence;
+- unsigned seq, shared_count, i = 0;
++ unsigned seq, shared_count;
+ long ret = timeout ? timeout : 1;
++ int i;
+
+ retry:
+ shared_count = 0;
+ seq = read_seqcount_begin(&obj->seq);
+ rcu_read_lock();
++ i = -1;
+
+ fence = rcu_dereference(obj->fence_excl);
+ if (fence && !test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &fence->flags)) {
+@@ -506,14 +508,14 @@ long reservation_object_wait_timeout_rcu(struct reservation_object *obj,
+ fence = NULL;
+ }
+
+- if (!fence && wait_all) {
++ if (wait_all) {
+ struct reservation_object_list *fobj =
+ rcu_dereference(obj->fence);
+
+ if (fobj)
+ shared_count = fobj->shared_count;
+
+- for (i = 0; i < shared_count; ++i) {
++ for (i = 0; !fence && i < shared_count; ++i) {
+ struct dma_fence *lfence = rcu_dereference(fobj->shared[i]);
+
+ if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT,
diff --git a/drm-cma-reduce-dmesg-logs.patch b/drm-cma-reduce-dmesg-logs.patch
deleted file mode 100644
index d7252c498..000000000
--- a/drm-cma-reduce-dmesg-logs.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From patchwork Thu Oct 5 11:29:17 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [v2] drm/gem-cma-helper: Change the level of the allocation failure
- message
-From: Boris Brezillon <boris.brezillon@free-electrons.com>
-X-Patchwork-Id: 180737
-Message-Id: <20171005112917.15949-1-boris.brezillon@free-electrons.com>
-To: David Airlie <airlied@linux.ie>, Daniel Vetter <daniel@ffwll.ch>,
- dri-devel@lists.freedesktop.org
-Cc: Boris Brezillon <boris.brezillon@free-electrons.com>
-Date: Thu, 5 Oct 2017 13:29:17 +0200
-
-drm_gem_cma_create() prints an error message when dma_alloc_wc() fails to
-allocate the amount of memory we requested. This can lead to annoying
-error messages when CMA is only one possible source of memory for the BO
-allocation. Turn this error message into a debug one.
-
-Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
-Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
-Reviewed-by: Eric Anholt <eric@anholt.net>
----
-Changes in v2:
-- Remove __must_check attribute
----
- drivers/gpu/drm/drm_gem_cma_helper.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/drivers/gpu/drm/drm_gem_cma_helper.c b/drivers/gpu/drm/drm_gem_cma_helper.c
-index 373e33f22be4..020e7668dfab 100644
---- a/drivers/gpu/drm/drm_gem_cma_helper.c
-+++ b/drivers/gpu/drm/drm_gem_cma_helper.c
-@@ -112,7 +112,7 @@ struct drm_gem_cma_object *drm_gem_cma_create(struct drm_device *drm,
- cma_obj->vaddr = dma_alloc_wc(drm->dev, size, &cma_obj->paddr,
- GFP_KERNEL | __GFP_NOWARN);
- if (!cma_obj->vaddr) {
-- dev_err(drm->dev, "failed to allocate buffer with size %zu\n",
-+ dev_dbg(drm->dev, "failed to allocate buffer with size %zu\n",
- size);
- ret = -ENOMEM;
- goto error;
diff --git a/drm-i915-Boost-GPU-clocks-if-we-miss-the-pageflip-s-vblank.patch b/drm-i915-Boost-GPU-clocks-if-we-miss-the-pageflip-s-vblank.patch
deleted file mode 100644
index 07f81116a..000000000
--- a/drm-i915-Boost-GPU-clocks-if-we-miss-the-pageflip-s-vblank.patch
+++ /dev/null
@@ -1,200 +0,0 @@
-From patchwork Thu Aug 17 12:37:06 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 8bit
-Subject: drm/i915: Boost GPU clocks if we miss the pageflip's vblank
-From: Chris Wilson <chris@chris-wilson.co.uk>
-X-Patchwork-Id: 172204
-Message-Id: <20170817123706.6777-1-chris@chris-wilson.co.uk>
-To: intel-gfx@lists.freedesktop.org
-Cc: Daniel Vetter <daniel.vetter@intel.com>
-Date: Thu, 17 Aug 2017 13:37:06 +0100
-
-If we miss the current vblank because the gpu was busy, that may cause a
-jitter as the frame rate temporarily drops. We try to limit the impact
-of this by then boosting the GPU clock to deliver the frame as quickly
-as possible. Originally done in commit 6ad790c0f5ac ("drm/i915: Boost GPU
-frequency if we detect outstanding pageflips") but was never forward
-ported to atomic and finally dropped in commit fd3a40242e87 ("drm/i915:
-Rip out legacy page_flip completion/irq handling").
-
-References: https://bugs.freedesktop.org/show_bug.cgi?id=102199
-Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
-Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
-Cc: Daniel Vetter <daniel.vetter@intel.com>
-Tested-by: Lyude Paul <lyude@redhat.com>
-Reviewed-by: Radoslaw Szwichtenberg <radoslaw.szwichtenberg@intel.com>
----
- drivers/gpu/drm/i915/intel_display.c | 59 ++++++++++++++++++++++++++++++++++++
- drivers/gpu/drm/i915/intel_drv.h | 1 -
- drivers/gpu/drm/i915/intel_pm.c | 42 ++-----------------------
- 3 files changed, 62 insertions(+), 40 deletions(-)
-
-diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
-index 0e93ec201fe3..7d5b19553637 100644
---- a/drivers/gpu/drm/i915/intel_display.c
-+++ b/drivers/gpu/drm/i915/intel_display.c
-@@ -12636,6 +12636,55 @@ static const struct drm_crtc_funcs intel_crtc_funcs = {
- .set_crc_source = intel_crtc_set_crc_source,
- };
-
-+struct wait_rps_boost {
-+ struct wait_queue_entry wait;
-+
-+ struct drm_crtc *crtc;
-+ struct drm_i915_gem_request *request;
-+};
-+
-+static int do_rps_boost(struct wait_queue_entry *_wait,
-+ unsigned mode, int sync, void *key)
-+{
-+ struct wait_rps_boost *wait = container_of(_wait, typeof(*wait), wait);
-+ struct drm_i915_gem_request *rq = wait->request;
-+
-+ gen6_rps_boost(rq, NULL);
-+ i915_gem_request_put(rq);
-+
-+ drm_crtc_vblank_put(wait->crtc);
-+
-+ list_del(&wait->wait.entry);
-+ kfree(wait);
-+ return 1;
-+}
-+
-+static void add_rps_boost_after_vblank(struct drm_crtc *crtc,
-+ struct dma_fence *fence)
-+{
-+ struct wait_rps_boost *wait;
-+
-+ if (!dma_fence_is_i915(fence))
-+ return;
-+
-+ if (drm_crtc_vblank_get(crtc))
-+ return;
-+
-+ wait = kmalloc(sizeof(*wait), GFP_KERNEL);
-+ if (!wait) {
-+ drm_crtc_vblank_put(crtc);
-+ return;
-+ }
-+
-+ wait->request = to_request(dma_fence_get(fence));
-+ wait->crtc = crtc;
-+
-+ wait->wait.func = do_rps_boost;
-+ wait->wait.flags = 0;
-+
-+ add_wait_queue(drm_crtc_vblank_waitqueue(crtc), &wait->wait);
-+}
-+
- /**
- * intel_prepare_plane_fb - Prepare fb for usage on plane
- * @plane: drm plane to prepare for
-@@ -12733,12 +12782,22 @@ intel_prepare_plane_fb(struct drm_plane *plane,
- return ret;
-
- if (!new_state->fence) { /* implicit fencing */
-+ struct dma_fence *fence;
-+
- ret = i915_sw_fence_await_reservation(&intel_state->commit_ready,
- obj->resv, NULL,
- false, I915_FENCE_TIMEOUT,
- GFP_KERNEL);
- if (ret < 0)
- return ret;
-+
-+ fence = reservation_object_get_excl_rcu(obj->resv);
-+ if (fence) {
-+ add_rps_boost_after_vblank(new_state->crtc, fence);
-+ dma_fence_put(fence);
-+ }
-+ } else {
-+ add_rps_boost_after_vblank(new_state->crtc, new_state->fence);
- }
-
- return 0;
-diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
-index fa47285918f4..e092354b4d63 100644
---- a/drivers/gpu/drm/i915/intel_drv.h
-+++ b/drivers/gpu/drm/i915/intel_drv.h
-@@ -1844,7 +1844,6 @@ void gen6_rps_reset_ei(struct drm_i915_private *dev_priv);
- void gen6_rps_idle(struct drm_i915_private *dev_priv);
- void gen6_rps_boost(struct drm_i915_gem_request *rq,
- struct intel_rps_client *rps);
--void intel_queue_rps_boost_for_request(struct drm_i915_gem_request *req);
- void g4x_wm_get_hw_state(struct drm_device *dev);
- void vlv_wm_get_hw_state(struct drm_device *dev);
- void ilk_wm_get_hw_state(struct drm_device *dev);
-diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
-index ed662937ec3c..c9fa2eb1903c 100644
---- a/drivers/gpu/drm/i915/intel_pm.c
-+++ b/drivers/gpu/drm/i915/intel_pm.c
-@@ -6169,6 +6169,7 @@ void gen6_rps_boost(struct drm_i915_gem_request *rq,
- struct intel_rps_client *rps)
- {
- struct drm_i915_private *i915 = rq->i915;
-+ unsigned long flags;
- bool boost;
-
- /* This is intentionally racy! We peek at the state here, then
-@@ -6178,13 +6179,13 @@ void gen6_rps_boost(struct drm_i915_gem_request *rq,
- return;
-
- boost = false;
-- spin_lock_irq(&rq->lock);
-+ spin_lock_irqsave(&rq->lock, flags);
- if (!rq->waitboost && !i915_gem_request_completed(rq)) {
- atomic_inc(&i915->rps.num_waiters);
- rq->waitboost = true;
- boost = true;
- }
-- spin_unlock_irq(&rq->lock);
-+ spin_unlock_irqrestore(&rq->lock, flags);
- if (!boost)
- return;
-
-@@ -9132,43 +9133,6 @@ int intel_freq_opcode(struct drm_i915_private *dev_priv, int val)
- return DIV_ROUND_CLOSEST(val, GT_FREQUENCY_MULTIPLIER);
- }
-
--struct request_boost {
-- struct work_struct work;
-- struct drm_i915_gem_request *req;
--};
--
--static void __intel_rps_boost_work(struct work_struct *work)
--{
-- struct request_boost *boost = container_of(work, struct request_boost, work);
-- struct drm_i915_gem_request *req = boost->req;
--
-- if (!i915_gem_request_completed(req))
-- gen6_rps_boost(req, NULL);
--
-- i915_gem_request_put(req);
-- kfree(boost);
--}
--
--void intel_queue_rps_boost_for_request(struct drm_i915_gem_request *req)
--{
-- struct request_boost *boost;
--
-- if (req == NULL || INTEL_GEN(req->i915) < 6)
-- return;
--
-- if (i915_gem_request_completed(req))
-- return;
--
-- boost = kmalloc(sizeof(*boost), GFP_ATOMIC);
-- if (boost == NULL)
-- return;
--
-- boost->req = i915_gem_request_get(req);
--
-- INIT_WORK(&boost->work, __intel_rps_boost_work);
-- queue_work(req->i915->wq, &boost->work);
--}
--
- void intel_pm_setup(struct drm_i915_private *dev_priv)
- {
- mutex_init(&dev_priv->rps.hw_lock);
diff --git a/efi-lockdown.patch b/efi-lockdown.patch
index 4ac65fd5d..c99d85c12 100644
--- a/efi-lockdown.patch
+++ b/efi-lockdown.patch
@@ -205,17 +205,17 @@ index a65cf544686a..863f77582c09 100644
#include <linux/pfn.h>
diff --git a/drivers/input/misc/uinput.c b/drivers/input/misc/uinput.c
-index 443151de90c6..45a1f5460805 100644
+index 39ddd9a73feb..0afeef1672bc 100644
--- a/drivers/input/misc/uinput.c
+++ b/drivers/input/misc/uinput.c
-@@ -408,6 +408,7 @@ static int uinput_allocate_device(struct uinput_device *udev)
- if (!udev->dev)
- return -ENOMEM;
-
-+ udev->dev->flags |= INPUTDEV_FLAGS_SYNTHETIC;
- udev->dev->event = uinput_dev_event;
+@@ -362,6 +362,7 @@ static int uinput_create_device(struct uinput_device *udev)
+ dev->flush = uinput_dev_flush;
+ }
+
++ dev->flags |= INPUTDEV_FLAGS_SYNTHETIC;
+ dev->event = uinput_dev_event;
+
input_set_drvdata(udev->dev, udev);
-
diff --git a/drivers/tty/sysrq.c b/drivers/tty/sysrq.c
index 3ffc1ce29023..8b766dbad6dd 100644
--- a/drivers/tty/sysrq.c
@@ -1403,32 +1403,33 @@ cc: Matthew Garrett <matthew.garrett@nebula.com>
cc: Thomas Gleixner <tglx@linutronix.de>
---
fs/debugfs/file.c | 6 ++++++
- 1 file changed, 6 insertions(+)
+ 1 file changed, 6 insertions(+)
diff --git a/fs/debugfs/file.c b/fs/debugfs/file.c
-index 6dabc4a10396..32b5168a7e91 100644
+index cd12e6576b48..097be2a59c51 100644
--- a/fs/debugfs/file.c
+++ b/fs/debugfs/file.c
-@@ -103,6 +103,9 @@ static int open_proxy_open(struct inode *inode, struct file *filp)
+@@ -142,6 +142,10 @@ static int open_proxy_open(struct inode *inode, struct file *filp)
const struct file_operations *real_fops = NULL;
- int srcu_idx, r;
-
+ int r;
+
+ if (kernel_is_locked_down("debugfs"))
+ return -EPERM;
+
- r = debugfs_use_file_start(dentry, &srcu_idx);
- if (r) {
- r = -ENOENT;
-@@ -232,6 +235,9 @@ static int full_proxy_open(struct inode *inode, struct file *filp)
++
+ r = debugfs_file_get(dentry);
+ if (r)
+ return r == -EIO ? -ENOENT : r;
+@@ -267,6 +271,9 @@ static int full_proxy_open(struct inode *inode, struct file *filp)
struct file_operations *proxy_fops = NULL;
- int srcu_idx, r;
-
+ int r;
+
+ if (kernel_is_locked_down("debugfs"))
+ return -EPERM;
+
- r = debugfs_use_file_start(dentry, &srcu_idx);
- if (r) {
- r = -ENOENT;
+ r = debugfs_file_get(dentry);
+ if (r)
+ return r == -EIO ? -ENOENT : r;
--
2.13.6
diff --git a/input-rmi4-remove-the-need-for-artifical-IRQ.patch b/input-rmi4-remove-the-need-for-artifical-IRQ.patch
index 01b1a4660..75e45dcb9 100644
--- a/input-rmi4-remove-the-need-for-artifical-IRQ.patch
+++ b/input-rmi4-remove-the-need-for-artifical-IRQ.patch
@@ -22,7 +22,7 @@ Signed-off-by: Lyude <lyude@redhat.com>
3 files changed, 75 insertions(+), 112 deletions(-)
diff --git a/drivers/hid/hid-rmi.c b/drivers/hid/hid-rmi.c
-index 5b40c26..4aa882c 100644
+index 0f43c42..3f38872 100644
--- a/drivers/hid/hid-rmi.c
+++ b/drivers/hid/hid-rmi.c
@@ -316,19 +316,12 @@ static int rmi_input_event(struct hid_device *hdev, u8 *data, int size)
@@ -30,25 +30,25 @@ index 5b40c26..4aa882c 100644
struct rmi_data *hdata = hid_get_drvdata(hdev);
struct rmi_device *rmi_dev = hdata->xport.rmi_dev;
- unsigned long flags;
-
+
if (!(test_bit(RMI_STARTED, &hdata->flags)))
return 0;
-
+
- local_irq_save(flags);
-
rmi_set_attn_data(rmi_dev, data[1], &data[2], size - 2);
-
+
- generic_handle_irq(hdata->rmi_irq);
-
- local_irq_restore(flags);
-
return 1;
}
-
-@@ -556,56 +549,6 @@ static const struct rmi_transport_ops hid_rmi_ops = {
+
+@@ -568,56 +561,6 @@ static const struct rmi_transport_ops hid_rmi_ops = {
.reset = rmi_hid_reset,
};
-
+
-static void rmi_irq_teardown(void *data)
-{
- struct rmi_data *hdata = data;
@@ -102,10 +102,10 @@ index 5b40c26..4aa882c 100644
static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
{
struct rmi_data *data = NULL;
-@@ -677,18 +620,11 @@ static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
-
+@@ -689,18 +632,11 @@ static int rmi_probe(struct hid_device *hdev, const struct hid_device_id *id)
+
mutex_init(&data->page_mutex);
-
+
- ret = rmi_setup_irq_domain(hdev);
- if (ret) {
- hid_err(hdev, "failed to allocate IRQ domain\n");
@@ -114,26 +114,26 @@ index 5b40c26..4aa882c 100644
-
if (data->device_flags & RMI_DEVICE_HAS_PHYS_BUTTONS)
rmi_hid_pdata.f30_data.disable = true;
-
+
data->xport.dev = hdev->dev.parent;
data->xport.pdata = rmi_hid_pdata;
- data->xport.pdata.irq = data->rmi_irq;
data->xport.proto_name = "hid";
data->xport.ops = &hid_rmi_ops;
-
+
diff --git a/drivers/input/rmi4/rmi_driver.c b/drivers/input/rmi4/rmi_driver.c
-index 4f2bb59..6d7da84 100644
+index 141ea22..15b22db 100644
--- a/drivers/input/rmi4/rmi_driver.c
+++ b/drivers/input/rmi4/rmi_driver.c
-@@ -209,32 +209,46 @@ void rmi_set_attn_data(struct rmi_device *rmi_dev, unsigned long irq_status,
+@@ -209,34 +209,47 @@ void rmi_set_attn_data(struct rmi_device *rmi_dev, unsigned long irq_status,
attn_data.data = fifo_data;
-
+
kfifo_put(&drvdata->attn_fifo, attn_data);
+
+ schedule_work(&drvdata->attn_work);
}
EXPORT_SYMBOL_GPL(rmi_set_attn_data);
-
+
-static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
+static void attn_callback(struct work_struct *work)
{
@@ -144,7 +144,7 @@ index 4f2bb59..6d7da84 100644
+ attn_work);
struct rmi4_attn_data attn_data = {0};
int ret, count;
-
+
count = kfifo_get(&drvdata->attn_fifo, &attn_data);
- if (count) {
- *(drvdata->irq_status) = attn_data.irq_status;
@@ -152,7 +152,7 @@ index 4f2bb59..6d7da84 100644
- }
+ if (!count)
+ return;
-
+
- ret = rmi_process_interrupt_requests(rmi_dev);
+ *(drvdata->irq_status) = attn_data.irq_status;
+ drvdata->attn_data = attn_data;
@@ -162,11 +162,14 @@ index 4f2bb59..6d7da84 100644
- rmi_dbg(RMI_DEBUG_CORE, &rmi_dev->dev,
+ rmi_dbg(RMI_DEBUG_CORE, &drvdata->rmi_dev->dev,
"Failed to process interrupt request: %d\n", ret);
-
-- if (count)
+
+- if (count) {
- kfree(attn_data.data);
+- attn_data.data = NULL;
+- }
+ kfree(attn_data.data);
-
++ attn_data.data = NULL;
+
if (!kfifo_is_empty(&drvdata->attn_fifo))
- return rmi_irq_fn(irq, dev_id);
+ schedule_work(&drvdata->attn_work);
@@ -181,30 +184,30 @@ index 4f2bb59..6d7da84 100644
+ if (ret)
+ rmi_dbg(RMI_DEBUG_CORE, &rmi_dev->dev,
+ "Failed to process interrupt request: %d\n", ret);
-
+
return IRQ_HANDLED;
}
-@@ -242,7 +256,6 @@ static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
+@@ -244,7 +257,6 @@ static irqreturn_t rmi_irq_fn(int irq, void *dev_id)
static int rmi_irq_init(struct rmi_device *rmi_dev)
{
struct rmi_device_platform_data *pdata = rmi_get_platform_data(rmi_dev);
- struct rmi_driver_data *data = dev_get_drvdata(&rmi_dev->dev);
int irq_flags = irq_get_trigger_type(pdata->irq);
int ret;
-
-@@ -260,8 +273,6 @@ static int rmi_irq_init(struct rmi_device *rmi_dev)
+
+@@ -262,8 +274,6 @@ static int rmi_irq_init(struct rmi_device *rmi_dev)
return ret;
}
-
+
- data->enabled = true;
-
return 0;
}
-
-@@ -910,23 +921,27 @@ void rmi_enable_irq(struct rmi_device *rmi_dev, bool clear_wake)
+
+@@ -912,23 +922,27 @@ void rmi_enable_irq(struct rmi_device *rmi_dev, bool clear_wake)
if (data->enabled)
goto out;
-
+
- enable_irq(irq);
- data->enabled = true;
- if (clear_wake && device_may_wakeup(rmi_dev->xport->dev)) {
@@ -224,7 +227,7 @@ index 4f2bb59..6d7da84 100644
+ "Failed to disable irq for wake: %d\n",
+ retval);
+ }
-
+
- /*
- * Call rmi_process_interrupt_requests() after enabling irq,
- * otherwise we may lose interrupt on edge-triggered systems.
@@ -242,12 +245,12 @@ index 4f2bb59..6d7da84 100644
+ } else {
+ data->enabled = true;
+ }
-
+
out:
mutex_unlock(&data->enabled_mutex);
-@@ -946,20 +961,22 @@ void rmi_disable_irq(struct rmi_device *rmi_dev, bool enable_wake)
+@@ -948,20 +962,22 @@ void rmi_disable_irq(struct rmi_device *rmi_dev, bool enable_wake)
goto out;
-
+
data->enabled = false;
- disable_irq(irq);
- if (enable_wake && device_may_wakeup(rmi_dev->xport->dev)) {
@@ -280,25 +283,25 @@ index 4f2bb59..6d7da84 100644
+ kfree(attn_data.data);
+ }
}
-
+
out:
-@@ -998,9 +1015,12 @@ EXPORT_SYMBOL_GPL(rmi_driver_resume);
+@@ -1000,9 +1016,12 @@ EXPORT_SYMBOL_GPL(rmi_driver_resume);
static int rmi_driver_remove(struct device *dev)
{
struct rmi_device *rmi_dev = to_rmi_device(dev);
+ struct rmi_driver_data *data = dev_get_drvdata(&rmi_dev->dev);
-
+
rmi_disable_irq(rmi_dev, false);
-
+
+ cancel_work_sync(&data->attn_work);
+
rmi_f34_remove_sysfs(rmi_dev);
rmi_free_function_list(rmi_dev);
-
-@@ -1230,9 +1250,15 @@ static int rmi_driver_probe(struct device *dev)
+
+@@ -1232,9 +1251,15 @@ static int rmi_driver_probe(struct device *dev)
}
}
-
+
- retval = rmi_irq_init(rmi_dev);
- if (retval < 0)
- goto err_destroy_functions;
@@ -311,21 +314,18 @@ index 4f2bb59..6d7da84 100644
+ data->enabled = true;
+
+ INIT_WORK(&data->attn_work, attn_callback);
-
+
if (data->f01_container->dev.driver) {
/* Driver already bound, so enable ATTN now. */
diff --git a/include/linux/rmi.h b/include/linux/rmi.h
-index 64125443..dc90178 100644
+index 6412544..dc90178 100644
--- a/include/linux/rmi.h
+++ b/include/linux/rmi.h
@@ -364,6 +364,7 @@ struct rmi_driver_data {
-
+
struct rmi4_attn_data attn_data;
DECLARE_KFIFO(attn_fifo, struct rmi4_attn_data, 16);
+ struct work_struct attn_work;
};
-
- int rmi_register_transport_device(struct rmi_transport_dev *xport);
---
-2.9.4
+ int rmi_register_transport_device(struct rmi_transport_dev *xport);
diff --git a/kernel-aarch64-debug.config b/kernel-aarch64-debug.config
index 11c2b05ee..a3152a988 100644
--- a/kernel-aarch64-debug.config
+++ b/kernel-aarch64-debug.config
@@ -72,8 +72,6 @@ CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_WATCHDOG=y
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -175,7 +173,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
CONFIG_AK8975=m
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -212,6 +209,7 @@ CONFIG_ARCH_BCM2835=y
# CONFIG_ARCH_BCM_53573 is not set
# CONFIG_ARCH_BCM_63XX is not set
# CONFIG_ARCH_BCM_CYGNUS is not set
+# CONFIG_ARCH_BCM_HR2 is not set
# CONFIG_ARCH_BCM_IPROC is not set
# CONFIG_ARCH_BCM_NSP is not set
CONFIG_ARCH_BCM=y
@@ -233,6 +231,7 @@ CONFIG_ARCH_SEATTLE=y
# CONFIG_ARCH_SPRD is not set
# CONFIG_ARCH_STRATIX10 is not set
CONFIG_ARCH_SUNXI=y
+CONFIG_ARCH_SYNQUACER=y
CONFIG_ARCH_TEGRA_132_SOC=y
CONFIG_ARCH_TEGRA_186_SOC=y
CONFIG_ARCH_TEGRA_210_SOC=y
@@ -264,6 +263,7 @@ CONFIG_ARM64_PTDUMP_DEBUGFS=y
CONFIG_ARM64_PTDUMP=y
# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set
# CONFIG_ARM64_RELOC_TEST is not set
+CONFIG_ARM64_SVE=y
CONFIG_ARM64_SW_TTBR0_PAN=y
CONFIG_ARM64_UAO=y
CONFIG_ARM64_VA_BITS=48
@@ -305,6 +305,7 @@ CONFIG_ARM_SCPI_PROTOCOL=m
CONFIG_ARM_SMMU_V3=y
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_ARM_SPE_PMU=m
CONFIG_ARM_TEGRA124_CPUFREQ=m
CONFIG_ARM_TEGRA186_CPUFREQ=m
# CONFIG_ARM_TEGRA20_CPUFREQ is not set
@@ -518,6 +519,7 @@ CONFIG_BH1750=m
CONFIG_BIG_KEYS=y
# CONFIG_BIG_LITTLE is not set
# CONFIG_BINFMT_AOUT is not set
+# CONFIG_BINFMT_ELF_FDPIC is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_FLAT is not set
CONFIG_BINFMT_MISC=m
@@ -588,10 +590,12 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -649,6 +653,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -683,6 +688,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
CONFIG_BTT=y
@@ -819,6 +825,8 @@ CONFIG_CHARGER_QCOM_SMBB=m
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -832,6 +840,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -934,11 +943,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
CONFIG_CPU_THERMAL=y
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -1066,6 +1077,7 @@ CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512_ARM=y
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -1115,6 +1127,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1239,8 +1252,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1248,6 +1261,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1275,7 +1291,8 @@ CONFIG_DRM_HDLCD=m
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_HISI_KIRIN=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1307,10 +1324,14 @@ CONFIG_DRM_NXP_PTN3460=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
CONFIG_DRM_PANEL_LG_LG4573=m
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2=m
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m
CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m
CONFIG_DRM_PANEL_SIMPLE=m
@@ -1326,9 +1347,12 @@ CONFIG_DRM_RADEON_USERPTR=y
CONFIG_DRM_ROCKCHIP=m
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_STM is not set
+CONFIG_DRM_SUN4I_HDMI_CEC=y
+CONFIG_DRM_SUN4I_HDMI=m
CONFIG_DRM_SUN8I_MIXER=m
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TEGRA_DEBUG is not set
@@ -1346,6 +1370,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTC=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1497,7 +1522,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1721,7 +1745,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1746,10 +1769,12 @@ CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
CONFIG_GPIO_MAX77620=m
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1757,7 +1782,7 @@ CONFIG_GPIO_MAX77620=m
CONFIG_GPIO_MVEBU=y
CONFIG_GPIO_PCA953X_IRQ=y
CONFIG_GPIO_PCA953X=y
-# CONFIG_GPIO_PCF857X is not set
+CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_PCH is not set
CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_PISOSR is not set
@@ -1767,6 +1792,7 @@ CONFIG_GPIO_PL061=y
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
CONFIG_GPIO_TEGRA=y
CONFIG_GPIO_THUNDERX=m
# CONFIG_GPIO_TPIC2810 is not set
@@ -1785,6 +1811,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1820,7 +1847,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1938,7 +1965,9 @@ CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_W6692=y
CONFIG_HISI_KIRIN_DW_DSI=m
CONFIG_HISILICON_ERRATUM_161010101=y
+CONFIG_HISILICON_ERRATUM_161600802=y
CONFIG_HISILICON_IRQ_MBIGEN=y
+CONFIG_HISI_PMU=y
CONFIG_HISI_THERMAL=m
CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
@@ -1990,8 +2019,8 @@ CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM_XGENE=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
CONFIG_HWSPINLOCK_QCOM=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -2117,6 +2146,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
@@ -2270,6 +2300,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2304,7 +2335,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2323,6 +2354,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2431,13 +2463,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2449,13 +2476,11 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_MESON=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
# CONFIG_IRQ_DOMAIN_DEBUG is not set
@@ -2468,13 +2493,12 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_SUNXI=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2643,7 +2667,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2655,8 +2678,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KUSER_HELPERS=y
@@ -2731,6 +2752,7 @@ CONFIG_LEDS_REGULATOR=m
CONFIG_LEDS_SYSCON=y
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
CONFIG_LEDS_TRIGGER_CPU=y
@@ -2776,10 +2798,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2826,7 +2846,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2853,6 +2872,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_MAILBOX=y
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2878,14 +2898,12 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -2951,7 +2969,11 @@ CONFIG_MEMSTICK_TIFM_MS=m
CONFIG_MESON_EFUSE=m
CONFIG_MESON_GXBB_WATCHDOG=m
CONFIG_MESON_GXL_PHY=m
+# CONFIG_MESON_GX_PM_DOMAINS is not set
CONFIG_MESON_GX_SOCINFO=y
+CONFIG_MESON_IRQ_GPIO=y
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESON_SARADC=m
CONFIG_MESON_SM=y
# CONFIG_MESON_WATCHDOG is not set
@@ -3084,6 +3106,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3131,6 +3154,7 @@ CONFIG_MMC_DW_PCI=m
CONFIG_MMC_DW_PLTFM=m
CONFIG_MMC_DW_ROCKCHIP=m
CONFIG_MMC_MESON_GX=m
+CONFIG_MMC_MESON_MX_SDIO=m
# CONFIG_MMC_MTK is not set
CONFIG_MMC_MVSDIO=m
CONFIG_MMC_QCOM_DML=y
@@ -3139,13 +3163,14 @@ CONFIG_MMC_REALTEK_USB=m
CONFIG_MMC_RICOH_MMC=y
CONFIG_MMC_SDHCI_ACPI=m
CONFIG_MMC_SDHCI_CADENCE=m
-# CONFIG_MMC_SDHCI_F_SDH30 is not set
+CONFIG_MMC_SDHCI_F_SDH30=m
CONFIG_MMC_SDHCI_IPROC=m
CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_MSM=m
CONFIG_MMC_SDHCI_OF_ARASAN=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+CONFIG_MMC_SDHCI_OMAP=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_PXAV3=m
@@ -3281,6 +3306,7 @@ CONFIG_MTD_PHYSMAP_OF_VERSATILE=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3514,6 +3540,7 @@ CONFIG_NETROM=m
CONFIG_NET_SB1000=y
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3830,14 +3857,15 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
CONFIG_NOUVEAU_PLATFORM_DRIVER=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=256
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
@@ -3845,7 +3873,9 @@ CONFIG_NUMA_BALANCING=y
CONFIG_NUMA=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+# CONFIG_NVMEM_SNVS_LPGPR is not set
CONFIG_NVMEM_SUNXI_SID=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3876,7 +3906,6 @@ CONFIG_OF_RESERVED_MEM=y
CONFIG_OF_RESOLVE=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMAP_GPMC_DEBUG is not set
# CONFIG_OMFS_FS is not set
CONFIG_OPENVSWITCH_GENEVE=m
@@ -3892,6 +3921,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3983,6 +4013,7 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCIE_DW_PLAT is not set
CONFIG_PCIE_DW=y
CONFIG_PCIE_ECRC=y
+CONFIG_PCIE_HISI_STB=y
CONFIG_PCIE_KIRIN=y
# CONFIG_PCI_ENDPOINT is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
@@ -4079,6 +4110,7 @@ CONFIG_PINCTRL_AMD=y
# CONFIG_PINCTRL_BAYTRAIL is not set
# CONFIG_PINCTRL_BROXTON is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_CHERRYVIEW is not set
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_IPQ4019 is not set
@@ -4087,6 +4119,10 @@ CONFIG_PINCTRL_AMD=y
CONFIG_PINCTRL_MAX77620=m
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MDM9615 is not set
+# CONFIG_PINCTRL_MESON8B is not set
+# CONFIG_PINCTRL_MESON8 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
# CONFIG_PINCTRL_MSM8660 is not set
CONFIG_PINCTRL_MSM8916=y
# CONFIG_PINCTRL_MSM8960 is not set
@@ -4172,6 +4208,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4227,6 +4264,7 @@ CONFIG_QCOM_COINCELL=m
CONFIG_QCOM_EMAC=m
# CONFIG_QCOM_FALKOR_ERRATUM_1003 is not set
CONFIG_QCOM_FALKOR_ERRATUM_1009=y
+CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
# CONFIG_QCOM_GLINK_SSR is not set
CONFIG_QCOM_GSBI=y
CONFIG_QCOM_HIDMA=m
@@ -4238,6 +4276,8 @@ CONFIG_QCOM_L3_PMU=y
CONFIG_QCOM_Q6V5_PIL=m
CONFIG_QCOM_QDF2400_ERRATUM_0065=y
CONFIG_QCOM_QFPROM=m
+CONFIG_QCOM_RMTFS_MEM=m
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QCOM_SMD_RPM=m
CONFIG_QCOM_SMEM=m
CONFIG_QCOM_SMP2P=m
@@ -4410,13 +4450,16 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_GPIO=y
CONFIG_RESET_HISI=y
# CONFIG_RESET_HSDK_V1 is not set
+CONFIG_RESET_SIMPLE=y
# CONFIG_RESET_TI_SCI is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4444,6 +4487,7 @@ CONFIG_ROCKCHIP_EFUSE=m
CONFIG_ROCKCHIP_INNO_HDMI=y
CONFIG_ROCKCHIP_IODOMAIN=m
CONFIG_ROCKCHIP_IOMMU=y
+CONFIG_ROCKCHIP_LVDS=y
CONFIG_ROCKCHIP_MBOX=y
CONFIG_ROCKCHIP_PHY=m
CONFIG_ROCKCHIP_PM_DOMAINS=y
@@ -4459,6 +4503,7 @@ CONFIG_RPMSG=m
CONFIG_RPMSG_QCOM_GLINK_RPM=m
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
CONFIG_RPMSG_QCOM_SMD=m
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4544,6 +4589,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
# CONFIG_RTC_DRV_PL030 is not set
@@ -4622,6 +4668,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
# CONFIG_SATA_NV is not set
CONFIG_SATA_PMP=y
@@ -4884,8 +4931,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -5031,7 +5080,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_PM_BUS=y
CONFIG_SIS190=m
@@ -5057,7 +5105,6 @@ CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -5088,7 +5135,7 @@ CONFIG_SND_AUDIO_GRAPH_CARD=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BCM2835_SOC_I2S=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
@@ -5152,7 +5199,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -5227,6 +5274,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
CONFIG_SND_SOC_APQ8016_SBC=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
@@ -5404,7 +5452,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSEMEM_VMEMMAP=y
CONFIG_SPARSE_RCU_POINTER=y
@@ -5610,6 +5657,7 @@ CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA210_ADMA=y
CONFIG_TEGRA_ACONNECT=m
CONFIG_TEGRA_AHB=y
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEGRA_BPMP=y
CONFIG_TEGRA_GMI=m
CONFIG_TEGRA_HOST1X_FIREWALL=y
@@ -5621,12 +5669,12 @@ CONFIG_TEGRA_MC=y
CONFIG_TEGRA_SOCTHERM=m
CONFIG_TEGRA_WATCHDOG=m
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5675,6 +5723,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5701,8 +5750,6 @@ CONFIG_TMP006=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5724,11 +5771,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5742,6 +5791,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5775,6 +5825,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5803,8 +5854,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5909,7 +5962,6 @@ CONFIG_USB_DWC3_ULPI=y
CONFIG_USB_EHCI_HCD_ORION=m
CONFIG_USB_EHCI_HCD_PLATFORM=m
CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_MSM=m
# CONFIG_USB_EHCI_MV is not set
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TEGRA=m
@@ -5928,6 +5980,7 @@ CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGET_DEBUG_FS is not set
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGETFS is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GADGET=m
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
CONFIG_USB_GADGET_VBUS_DRAW=100
@@ -6004,7 +6057,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -6028,7 +6080,6 @@ CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
CONFIG_USB_MON=y
CONFIG_USB_MR800=m
-CONFIG_USB_MSM_OTG=m
CONFIG_USB_MUSB_DSPS=m
CONFIG_USB_MUSB_DUAL_ROLE=y
CONFIG_USB_MUSB_HDRC=m
@@ -6082,7 +6133,6 @@ CONFIG_USB_PULSE8_CEC=m
CONFIG_USB_PWC_INPUT_EVDEV=y
CONFIG_USB_PWC=m
# CONFIG_USB_PXA27X is not set
-CONFIG_USB_QCOM_8X16_PHY=m
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_R8A66597 is not set
CONFIG_USB_RAINSHADOW_CEC=m
@@ -6260,7 +6310,6 @@ CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -6319,6 +6368,7 @@ CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_SYSFS=y
CONFIG_VIDEO_QCOM_CAMSS=m
CONFIG_VIDEO_QCOM_VENUS=m
+CONFIG_VIDEO_ROCKCHIP_RGA=m
CONFIG_VIDEO_SAA6588=m
CONFIG_VIDEO_SAA7134_ALSA=m
CONFIG_VIDEO_SAA7134_DVB=m
@@ -6336,6 +6386,7 @@ CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_AC97=y
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+CONFIG_VIDEO_TEGRA_HDMI_CEC=m
CONFIG_VIDEO_TM6000_ALSA=m
CONFIG_VIDEO_TM6000_DVB=m
CONFIG_VIDEO_TM6000=m
@@ -6378,11 +6429,11 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMAP_STACK=y
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6418,6 +6469,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6445,7 +6497,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6488,6 +6539,7 @@ CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
CONFIG_X86_MCELOG_LEGACY=y
CONFIG_X86_PTDUMP=y
# CONFIG_XEN is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -6495,6 +6547,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-aarch64.config b/kernel-aarch64.config
index 075621dc1..00f82def1 100644
--- a/kernel-aarch64.config
+++ b/kernel-aarch64.config
@@ -72,8 +72,6 @@ CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_WATCHDOG=y
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -175,7 +173,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
CONFIG_AK8975=m
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -212,6 +209,7 @@ CONFIG_ARCH_BCM2835=y
# CONFIG_ARCH_BCM_53573 is not set
# CONFIG_ARCH_BCM_63XX is not set
# CONFIG_ARCH_BCM_CYGNUS is not set
+# CONFIG_ARCH_BCM_HR2 is not set
# CONFIG_ARCH_BCM_IPROC is not set
# CONFIG_ARCH_BCM_NSP is not set
CONFIG_ARCH_BCM=y
@@ -233,6 +231,7 @@ CONFIG_ARCH_SEATTLE=y
# CONFIG_ARCH_SPRD is not set
# CONFIG_ARCH_STRATIX10 is not set
CONFIG_ARCH_SUNXI=y
+CONFIG_ARCH_SYNQUACER=y
CONFIG_ARCH_TEGRA_132_SOC=y
CONFIG_ARCH_TEGRA_186_SOC=y
CONFIG_ARCH_TEGRA_210_SOC=y
@@ -264,6 +263,7 @@ CONFIG_ARM64_PTDUMP_DEBUGFS=y
# CONFIG_ARM64_PTDUMP is not set
# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set
# CONFIG_ARM64_RELOC_TEST is not set
+CONFIG_ARM64_SVE=y
CONFIG_ARM64_SW_TTBR0_PAN=y
CONFIG_ARM64_UAO=y
CONFIG_ARM64_VA_BITS=48
@@ -305,6 +305,7 @@ CONFIG_ARM_SCPI_PROTOCOL=m
CONFIG_ARM_SMMU_V3=y
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_ARM_SPE_PMU=m
CONFIG_ARM_TEGRA124_CPUFREQ=m
CONFIG_ARM_TEGRA186_CPUFREQ=m
# CONFIG_ARM_TEGRA20_CPUFREQ is not set
@@ -518,6 +519,7 @@ CONFIG_BH1750=m
CONFIG_BIG_KEYS=y
# CONFIG_BIG_LITTLE is not set
# CONFIG_BINFMT_AOUT is not set
+# CONFIG_BINFMT_ELF_FDPIC is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_FLAT is not set
CONFIG_BINFMT_MISC=m
@@ -588,10 +590,12 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -649,6 +653,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -683,6 +688,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
CONFIG_BTT=y
@@ -819,6 +825,8 @@ CONFIG_CHARGER_QCOM_SMBB=m
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -832,6 +840,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -934,10 +943,12 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
CONFIG_CPU_THERMAL=y
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -1065,6 +1076,7 @@ CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512_ARM=y
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -1114,6 +1126,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1229,8 +1242,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1238,6 +1251,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1265,7 +1281,8 @@ CONFIG_DRM_HDLCD=m
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_HISI_KIRIN=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1297,10 +1314,14 @@ CONFIG_DRM_NXP_PTN3460=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
CONFIG_DRM_PANEL_LG_LG4573=m
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2=m
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m
CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m
CONFIG_DRM_PANEL_SIMPLE=m
@@ -1316,9 +1337,12 @@ CONFIG_DRM_RADEON_USERPTR=y
CONFIG_DRM_ROCKCHIP=m
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_STM is not set
+CONFIG_DRM_SUN4I_HDMI_CEC=y
+CONFIG_DRM_SUN4I_HDMI=m
CONFIG_DRM_SUN8I_MIXER=m
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TEGRA_DEBUG is not set
@@ -1336,6 +1360,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTC=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1487,7 +1512,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1704,7 +1728,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1729,10 +1752,12 @@ CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
CONFIG_GPIO_MAX77620=m
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1740,7 +1765,7 @@ CONFIG_GPIO_MAX77620=m
CONFIG_GPIO_MVEBU=y
CONFIG_GPIO_PCA953X_IRQ=y
CONFIG_GPIO_PCA953X=y
-# CONFIG_GPIO_PCF857X is not set
+CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_PCH is not set
CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_PISOSR is not set
@@ -1750,6 +1775,7 @@ CONFIG_GPIO_PL061=y
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
CONFIG_GPIO_TEGRA=y
CONFIG_GPIO_THUNDERX=m
# CONFIG_GPIO_TPIC2810 is not set
@@ -1768,6 +1794,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1803,7 +1830,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1921,7 +1948,9 @@ CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_W6692=y
CONFIG_HISI_KIRIN_DW_DSI=m
CONFIG_HISILICON_ERRATUM_161010101=y
+CONFIG_HISILICON_ERRATUM_161600802=y
CONFIG_HISILICON_IRQ_MBIGEN=y
+CONFIG_HISI_PMU=y
CONFIG_HISI_THERMAL=m
CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
@@ -1973,8 +2002,8 @@ CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM_XGENE=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
CONFIG_HWSPINLOCK_QCOM=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -2100,6 +2129,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
@@ -2253,6 +2283,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2287,7 +2318,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2306,6 +2337,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2414,13 +2446,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2432,13 +2459,11 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_MESON=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
# CONFIG_IRQ_DOMAIN_DEBUG is not set
@@ -2451,13 +2476,12 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_SUNXI=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2624,7 +2648,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2636,8 +2659,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KUSER_HELPERS=y
@@ -2712,6 +2733,7 @@ CONFIG_LEDS_REGULATOR=m
CONFIG_LEDS_SYSCON=y
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
CONFIG_LEDS_TRIGGER_CPU=y
@@ -2757,10 +2779,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2807,7 +2827,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2834,6 +2853,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_MAILBOX=y
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2858,14 +2878,12 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -2931,7 +2949,11 @@ CONFIG_MEMSTICK_TIFM_MS=m
CONFIG_MESON_EFUSE=m
CONFIG_MESON_GXBB_WATCHDOG=m
CONFIG_MESON_GXL_PHY=m
+# CONFIG_MESON_GX_PM_DOMAINS is not set
CONFIG_MESON_GX_SOCINFO=y
+CONFIG_MESON_IRQ_GPIO=y
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESON_SARADC=m
CONFIG_MESON_SM=y
# CONFIG_MESON_WATCHDOG is not set
@@ -3064,6 +3086,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3111,6 +3134,7 @@ CONFIG_MMC_DW_PCI=m
CONFIG_MMC_DW_PLTFM=m
CONFIG_MMC_DW_ROCKCHIP=m
CONFIG_MMC_MESON_GX=m
+CONFIG_MMC_MESON_MX_SDIO=m
# CONFIG_MMC_MTK is not set
CONFIG_MMC_MVSDIO=m
CONFIG_MMC_QCOM_DML=y
@@ -3119,13 +3143,14 @@ CONFIG_MMC_REALTEK_USB=m
CONFIG_MMC_RICOH_MMC=y
CONFIG_MMC_SDHCI_ACPI=m
CONFIG_MMC_SDHCI_CADENCE=m
-# CONFIG_MMC_SDHCI_F_SDH30 is not set
+CONFIG_MMC_SDHCI_F_SDH30=m
CONFIG_MMC_SDHCI_IPROC=m
CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_MSM=m
CONFIG_MMC_SDHCI_OF_ARASAN=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+CONFIG_MMC_SDHCI_OMAP=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_PXAV3=m
@@ -3260,6 +3285,7 @@ CONFIG_MTD_PHYSMAP_OF_VERSATILE=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3493,6 +3519,7 @@ CONFIG_NETROM=m
CONFIG_NET_SB1000=y
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3809,14 +3836,15 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_NOUVEAU_PLATFORM_DRIVER=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=256
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
@@ -3824,7 +3852,9 @@ CONFIG_NUMA_BALANCING=y
CONFIG_NUMA=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+# CONFIG_NVMEM_SNVS_LPGPR is not set
CONFIG_NVMEM_SUNXI_SID=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3855,7 +3885,6 @@ CONFIG_OF_RESERVED_MEM=y
CONFIG_OF_RESOLVE=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMAP_GPMC_DEBUG is not set
# CONFIG_OMFS_FS is not set
CONFIG_OPENVSWITCH_GENEVE=m
@@ -3871,6 +3900,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3962,6 +3992,7 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCIE_DW_PLAT is not set
CONFIG_PCIE_DW=y
CONFIG_PCIE_ECRC=y
+CONFIG_PCIE_HISI_STB=y
CONFIG_PCIE_KIRIN=y
# CONFIG_PCI_ENDPOINT is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
@@ -4058,6 +4089,7 @@ CONFIG_PINCTRL_AMD=y
# CONFIG_PINCTRL_BAYTRAIL is not set
# CONFIG_PINCTRL_BROXTON is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_CHERRYVIEW is not set
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_IPQ4019 is not set
@@ -4066,6 +4098,10 @@ CONFIG_PINCTRL_AMD=y
CONFIG_PINCTRL_MAX77620=m
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MDM9615 is not set
+# CONFIG_PINCTRL_MESON8B is not set
+# CONFIG_PINCTRL_MESON8 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
# CONFIG_PINCTRL_MSM8660 is not set
CONFIG_PINCTRL_MSM8916=y
# CONFIG_PINCTRL_MSM8960 is not set
@@ -4151,6 +4187,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4205,6 +4242,7 @@ CONFIG_QCOM_COINCELL=m
CONFIG_QCOM_EMAC=m
# CONFIG_QCOM_FALKOR_ERRATUM_1003 is not set
CONFIG_QCOM_FALKOR_ERRATUM_1009=y
+CONFIG_QCOM_FALKOR_ERRATUM_E1041=y
# CONFIG_QCOM_GLINK_SSR is not set
CONFIG_QCOM_GSBI=y
CONFIG_QCOM_HIDMA=m
@@ -4216,6 +4254,8 @@ CONFIG_QCOM_L3_PMU=y
CONFIG_QCOM_Q6V5_PIL=m
CONFIG_QCOM_QDF2400_ERRATUM_0065=y
CONFIG_QCOM_QFPROM=m
+CONFIG_QCOM_RMTFS_MEM=m
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QCOM_SMD_RPM=m
CONFIG_QCOM_SMEM=m
CONFIG_QCOM_SMP2P=m
@@ -4325,7 +4365,7 @@ CONFIG_RD_XZ=y
# CONFIG_READABLE_ASM is not set
CONFIG_REALTEK_AUTOPM=y
CONFIG_REALTEK_PHY=m
-# CONFIG_REFCOUNT_FULL is not set
+CONFIG_REFCOUNT_FULL=y
CONFIG_REGMAP_I2C=y
CONFIG_REGMAP_SPMI=y
CONFIG_REGMAP=y
@@ -4388,13 +4428,16 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_GPIO=y
CONFIG_RESET_HISI=y
# CONFIG_RESET_HSDK_V1 is not set
+CONFIG_RESET_SIMPLE=y
# CONFIG_RESET_TI_SCI is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4422,6 +4465,7 @@ CONFIG_ROCKCHIP_EFUSE=m
CONFIG_ROCKCHIP_INNO_HDMI=y
CONFIG_ROCKCHIP_IODOMAIN=m
CONFIG_ROCKCHIP_IOMMU=y
+CONFIG_ROCKCHIP_LVDS=y
CONFIG_ROCKCHIP_MBOX=y
CONFIG_ROCKCHIP_PHY=m
CONFIG_ROCKCHIP_PM_DOMAINS=y
@@ -4437,6 +4481,7 @@ CONFIG_RPMSG=m
CONFIG_RPMSG_QCOM_GLINK_RPM=m
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
CONFIG_RPMSG_QCOM_SMD=m
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4522,6 +4567,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
# CONFIG_RTC_DRV_PL030 is not set
@@ -4600,6 +4646,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
# CONFIG_SATA_NV is not set
CONFIG_SATA_PMP=y
@@ -4862,8 +4909,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -5009,7 +5058,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_PM_BUS=y
CONFIG_SIS190=m
@@ -5035,7 +5083,6 @@ CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -5066,7 +5113,7 @@ CONFIG_SND_AUDIO_GRAPH_CARD=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BCM2835_SOC_I2S=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
@@ -5130,7 +5177,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -5204,6 +5251,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
CONFIG_SND_SOC_APQ8016_SBC=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
@@ -5381,7 +5429,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSEMEM_VMEMMAP=y
CONFIG_SPARSE_RCU_POINTER=y
@@ -5587,6 +5634,7 @@ CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA210_ADMA=y
CONFIG_TEGRA_ACONNECT=m
CONFIG_TEGRA_AHB=y
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEGRA_BPMP=y
CONFIG_TEGRA_GMI=m
CONFIG_TEGRA_HOST1X_FIREWALL=y
@@ -5598,12 +5646,12 @@ CONFIG_TEGRA_MC=y
CONFIG_TEGRA_SOCTHERM=m
CONFIG_TEGRA_WATCHDOG=m
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5652,6 +5700,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5678,8 +5727,6 @@ CONFIG_TMP006=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5701,11 +5748,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5719,6 +5768,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5752,6 +5802,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5780,8 +5831,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5886,7 +5939,6 @@ CONFIG_USB_DWC3_ULPI=y
CONFIG_USB_EHCI_HCD_ORION=m
CONFIG_USB_EHCI_HCD_PLATFORM=m
CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_MSM=m
# CONFIG_USB_EHCI_MV is not set
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_EHCI_TEGRA=m
@@ -5905,6 +5957,7 @@ CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGET_DEBUG_FS is not set
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGETFS is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GADGET=m
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
CONFIG_USB_GADGET_VBUS_DRAW=100
@@ -5981,7 +6034,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -6005,7 +6057,6 @@ CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
CONFIG_USB_MON=y
CONFIG_USB_MR800=m
-CONFIG_USB_MSM_OTG=m
CONFIG_USB_MUSB_DSPS=m
CONFIG_USB_MUSB_DUAL_ROLE=y
CONFIG_USB_MUSB_HDRC=m
@@ -6059,7 +6110,6 @@ CONFIG_USB_PULSE8_CEC=m
CONFIG_USB_PWC_INPUT_EVDEV=y
CONFIG_USB_PWC=m
# CONFIG_USB_PXA27X is not set
-CONFIG_USB_QCOM_8X16_PHY=m
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_R8A66597 is not set
CONFIG_USB_RAINSHADOW_CEC=m
@@ -6237,7 +6287,6 @@ CONFIG_VGACON_SOFT_SCROLLBACK=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -6296,6 +6345,7 @@ CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_SYSFS=y
CONFIG_VIDEO_QCOM_CAMSS=m
CONFIG_VIDEO_QCOM_VENUS=m
+CONFIG_VIDEO_ROCKCHIP_RGA=m
CONFIG_VIDEO_SAA6588=m
CONFIG_VIDEO_SAA7134_ALSA=m
CONFIG_VIDEO_SAA7134_DVB=m
@@ -6313,6 +6363,7 @@ CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_AC97=y
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+CONFIG_VIDEO_TEGRA_HDMI_CEC=m
CONFIG_VIDEO_TM6000_ALSA=m
CONFIG_VIDEO_TM6000_DVB=m
CONFIG_VIDEO_TM6000=m
@@ -6355,11 +6406,11 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMAP_STACK=y
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6395,6 +6446,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6422,7 +6474,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6465,6 +6516,7 @@ CONFIG_WM8350_WATCHDOG=m
CONFIG_X86_MCELOG_LEGACY=y
# CONFIG_X86_PTDUMP is not set
# CONFIG_XEN is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -6472,6 +6524,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-armv7hl-debug.config b/kernel-armv7hl-debug.config
index a15451fad..44809c3e7 100644
--- a/kernel-armv7hl-debug.config
+++ b/kernel-armv7hl-debug.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_DEBUG=y
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -153,7 +151,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
CONFIG_AK8975=m
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -195,6 +192,7 @@ CONFIG_ARCH_BCM2835=y
# CONFIG_ARCH_BCM_53573 is not set
# CONFIG_ARCH_BCM_63XX is not set
# CONFIG_ARCH_BCM_CYGNUS is not set
+# CONFIG_ARCH_BCM_HR2 is not set
# CONFIG_ARCH_BCM_IPROC is not set
# CONFIG_ARCH_BCM_NSP is not set
CONFIG_ARCH_BCM=y
@@ -326,6 +324,7 @@ CONFIG_ARM_SCPI_POWER_DOMAIN=m
CONFIG_ARM_SCPI_PROTOCOL=m
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_ARM_SPE_PMU=m
CONFIG_ARM_STI_CPUFREQ=m
CONFIG_ARM_TEGRA124_CPUFREQ=m
# CONFIG_ARM_TEGRA20_CPUFREQ is not set
@@ -559,6 +558,7 @@ CONFIG_BH1750=m
CONFIG_BIG_KEYS=y
CONFIG_BIG_LITTLE=y
# CONFIG_BINFMT_AOUT is not set
+# CONFIG_BINFMT_ELF_FDPIC is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_FLAT is not set
CONFIG_BINFMT_MISC=m
@@ -631,9 +631,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -690,6 +692,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -724,6 +727,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -864,6 +868,8 @@ CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
CONFIG_CHARGER_TPS65217=m
CONFIG_CHARGER_TWL4030=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -877,6 +883,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -976,12 +983,14 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_ICACHE_DISABLE is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
CONFIG_CPU_SW_DOMAIN_PAN=y
CONFIG_CPU_THERMAL=y
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -1119,6 +1128,7 @@ CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512_ARM=y
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -1170,6 +1180,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1302,9 +1313,9 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DOVE_THERMAL=m
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1312,6 +1323,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1358,7 +1372,8 @@ CONFIG_DRM_HDLCD=m
# CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1412,10 +1427,14 @@ CONFIG_DRM_OMAP_PANEL_TPO_TD043MTEA1=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
CONFIG_DRM_PANEL_LG_LG4573=m
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2=m
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m
CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m
CONFIG_DRM_PANEL_SIMPLE=m
@@ -1431,12 +1450,13 @@ CONFIG_DRM_RADEON_USERPTR=y
CONFIG_DRM_ROCKCHIP=m
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
CONFIG_DRM_STI=m
# CONFIG_DRM_STM is not set
CONFIG_DRM_SUN4I_BACKEND=m
-# CONFIG_DRM_SUN4I_HDMI_CEC is not set
+CONFIG_DRM_SUN4I_HDMI_CEC=y
CONFIG_DRM_SUN4I_HDMI=m
CONFIG_DRM_SUN4I=m
CONFIG_DRM_SUN8I_MIXER=m
@@ -1449,6 +1469,7 @@ CONFIG_DRM_TILCDC_SLAVE_COMPAT=y
CONFIG_DRM_TINYDRM=m
CONFIG_DRM_TI_TFP410=m
CONFIG_DRM_TOSHIBA_TC358767=m
+CONFIG_DRM_TVE200=m
CONFIG_DRM_UDL=m
# CONFIG_DRM_VBOXVIDEO is not set
CONFIG_DRM_VC4_HDMI_CEC=y
@@ -1458,6 +1479,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTC=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1611,7 +1633,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1847,7 +1868,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1874,9 +1894,11 @@ CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
CONFIG_GPIO_MAX7301=m
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
CONFIG_GPIO_MC33880=m
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1897,6 +1919,7 @@ CONFIG_GPIO_STMPE=y
# CONFIG_GPIO_SX150X is not set
CONFIG_GPIO_SYSCON=m
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS65218=m
@@ -1921,6 +1944,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
CONFIG_GS_FPGABOOT=m
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1958,7 +1982,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -2077,6 +2101,7 @@ CONFIG_HISAX_TELES_CS=m
CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_W6692=y
# CONFIG_HISILICON_IRQ_MBIGEN is not set
+CONFIG_HISI_PMU=y
CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
# CONFIG_HMC_DRV is not set
@@ -2126,9 +2151,9 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
CONFIG_HWSPINLOCK_OMAP=m
CONFIG_HWSPINLOCK_QCOM=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -2254,6 +2279,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
@@ -2426,6 +2452,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2460,7 +2487,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2479,6 +2506,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2587,13 +2615,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2605,13 +2628,11 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_MESON=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_CROSSBAR=y
@@ -2626,13 +2647,12 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_SUNXI=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2820,7 +2840,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2832,8 +2851,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
CONFIG_KS8851=m
CONFIG_KS8851_MLL=m
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KUSER_HELPERS=y
@@ -2913,6 +2930,7 @@ CONFIG_LEDS_REGULATOR=m
CONFIG_LEDS_SYSCON=y
CONFIG_LEDS_TCA6507=m
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
CONFIG_LEDS_TRIGGER_CPU=y
@@ -2957,10 +2975,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -3007,7 +3023,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -3056,6 +3071,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_MAILBOX=y
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -3079,7 +3095,6 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
@@ -3087,7 +3102,6 @@ CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
CONFIG_MCPM=y
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -3152,7 +3166,11 @@ CONFIG_MEMSTICK_TIFM_MS=m
CONFIG_MESON_EFUSE=m
# CONFIG_MESON_GXBB_WATCHDOG is not set
# CONFIG_MESON_GXL_PHY is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
CONFIG_MESON_GX_SOCINFO=y
+CONFIG_MESON_IRQ_GPIO=y
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESON_SARADC=m
CONFIG_MESON_SM=y
CONFIG_MESON_WATCHDOG=m
@@ -3288,6 +3306,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3334,6 +3353,7 @@ CONFIG_MMC_DW_PCI=m
CONFIG_MMC_DW_PLTFM=m
CONFIG_MMC_DW_ROCKCHIP=m
# CONFIG_MMC_MESON_GX is not set
+CONFIG_MMC_MESON_MX_SDIO=m
# CONFIG_MMC_MTK is not set
CONFIG_MMC_MVSDIO=m
CONFIG_MMC_MXC=m
@@ -3354,6 +3374,7 @@ CONFIG_MMC_SDHCI_MSM=m
CONFIG_MMC_SDHCI_OF_ARASAN=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
CONFIG_MMC_SDHCI_OF_ESDHC=m
+CONFIG_MMC_SDHCI_OMAP=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_PXAV2=m
@@ -3520,6 +3541,7 @@ CONFIG_MTD_PHYSMAP_OF_VERSATILE=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
CONFIG_MTD_SPINAND_MT29F=m
CONFIG_MTD_SPINAND_ONDIEECC=y
@@ -3759,6 +3781,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -4076,14 +4099,15 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
CONFIG_NOUVEAU_PLATFORM_DRIVER=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=32
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NVEC_PAZ00=y
@@ -4092,7 +4116,9 @@ CONFIG_NVME_FC=m
CONFIG_NVMEM_IMX_IIM=m
CONFIG_NVMEM_IMX_OCOTP=m
CONFIG_NVMEM=m
+# CONFIG_NVMEM_SNVS_LPGPR is not set
CONFIG_NVMEM_SUNXI_SID=m
+CONFIG_NVME_MULTIPATH=y
# CONFIG_NVME_RDMA is not set
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -4124,7 +4150,6 @@ CONFIG_OF_RESERVED_MEM=y
CONFIG_OF_RESOLVE=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMAP2_DSS_COLLECT_IRQ_STATS is not set
# CONFIG_OMAP2_DSS_DEBUGFS is not set
# CONFIG_OMAP2_DSS_DEBUG is not set
@@ -4142,6 +4167,7 @@ CONFIG_OMAP_32K_TIMER=y
# CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set
# CONFIG_OMAP3_SDRC_AC_TIMING is not set
# CONFIG_OMAP3_THERMAL is not set
+CONFIG_OMAP4_DSS_HDMI_CEC=y
CONFIG_OMAP4_DSS_HDMI=y
CONFIG_OMAP4_THERMAL=y
CONFIG_OMAP5_DSS_HDMI=y
@@ -4177,6 +4203,7 @@ CONFIG_ORION_WATCHDOG=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -4273,6 +4300,7 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCIE_DW_PLAT is not set
CONFIG_PCIE_DW=y
CONFIG_PCIE_ECRC=y
+CONFIG_PCIE_HISI_STB=y
# CONFIG_PCI_ENDPOINT is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
CONFIG_PCIEPORTBUS=y
@@ -4297,6 +4325,7 @@ CONFIG_PCI_PRI=y
CONFIG_PCI_STUB=y
CONFIG_PCI_SW_SWITCHTEC=m
CONFIG_PCI_TEGRA=y
+CONFIG_PCI_V3_SEMI=y
CONFIG_PCI=y
CONFIG_PCMCIA_3C574=m
CONFIG_PCMCIA_3C589=m
@@ -4378,6 +4407,7 @@ CONFIG_PINCTRL_AS3722=y
# CONFIG_PINCTRL_BAYTRAIL is not set
# CONFIG_PINCTRL_BROXTON is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_CHERRYVIEW is not set
CONFIG_PINCTRL_DOVE=y
# CONFIG_PINCTRL_GEMINILAKE is not set
@@ -4387,6 +4417,10 @@ CONFIG_PINCTRL_IMX6SL=y
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MDM9615 is not set
+# CONFIG_PINCTRL_MESON8B is not set
+# CONFIG_PINCTRL_MESON8 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_MSM8660=m
CONFIG_PINCTRL_MSM8916=m
CONFIG_PINCTRL_MSM8960=m
@@ -4481,6 +4515,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4554,6 +4589,8 @@ CONFIG_QCOM_PM8XXX_XOADC=m
CONFIG_QCOM_PM=y
CONFIG_QCOM_Q6V5_PIL=m
CONFIG_QCOM_QFPROM=m
+CONFIG_QCOM_RMTFS_MEM=m
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QCOM_SMD_RPM=m
CONFIG_QCOM_SMEM=m
CONFIG_QCOM_SMP2P=m
@@ -4748,12 +4785,15 @@ CONFIG_REISERFS_PROC_INFO=y
CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_GPIO=y
# CONFIG_RESET_HSDK_V1 is not set
+CONFIG_RESET_SIMPLE=y
# CONFIG_RESET_TI_SCI is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4781,6 +4821,7 @@ CONFIG_ROCKCHIP_EFUSE=m
CONFIG_ROCKCHIP_INNO_HDMI=y
CONFIG_ROCKCHIP_IODOMAIN=m
CONFIG_ROCKCHIP_IOMMU=y
+CONFIG_ROCKCHIP_LVDS=y
CONFIG_ROCKCHIP_MBOX=y
CONFIG_ROCKCHIP_PHY=m
CONFIG_ROCKCHIP_PM_DOMAINS=y
@@ -4796,6 +4837,7 @@ CONFIG_RPMSG=m
CONFIG_RPMSG_QCOM_GLINK_RPM=m
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
CONFIG_RPMSG_QCOM_SMD=m
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4891,6 +4933,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PL030=y
@@ -4979,6 +5022,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
CONFIG_SATA_HIGHBANK=m
# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
# CONFIG_SATA_NV is not set
CONFIG_SATA_PMP=y
@@ -5242,8 +5286,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -5410,7 +5456,6 @@ CONFIG_SH_ETH=m
CONFIG_SI7005=m
CONFIG_SI7020=m
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_PM_BUS=y
CONFIG_SIS190=m
@@ -5436,7 +5481,6 @@ CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP_ON_UP=y
@@ -5471,7 +5515,7 @@ CONFIG_SND_AUDIO_GRAPH_CARD=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BCM2835_SOC_I2S=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
@@ -5540,7 +5584,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -5635,6 +5679,7 @@ CONFIG_SND_SOC_ADI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_APQ8016_SBC is not set
CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631=m
# CONFIG_SND_SOC_BT_SCO is not set
@@ -5865,7 +5910,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPARSE_RCU_POINTER=y
# CONFIG_SPEAKUP is not set
# CONFIG_SPI_ALTERA is not set
@@ -6091,6 +6135,7 @@ CONFIG_TEGRA124_EMC=y
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA20_MC=y
CONFIG_TEGRA_AHB=y
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEGRA_BPMP=y
CONFIG_TEGRA_GMI=m
CONFIG_TEGRA_HOST1X_FIREWALL=y
@@ -6103,12 +6148,12 @@ CONFIG_TEGRA_MC=y
CONFIG_TEGRA_SOCTHERM=m
CONFIG_TEGRA_WATCHDOG=m
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -6160,6 +6205,7 @@ CONFIG_TI_CPSW=m
CONFIG_TI_CPSW_PHY_SEL=y
CONFIG_TI_CPTS_MOD=m
CONFIG_TI_CPTS=y
+# CONFIG_TI_DAC082S085 is not set
CONFIG_TI_DAC7512=m
CONFIG_TI_DAVINCI_CPDMA=m
CONFIG_TI_DAVINCI_EMAC=m
@@ -6194,8 +6240,6 @@ CONFIG_TMP006=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOUCHSCREEN_AD7877=m
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -6218,11 +6262,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
CONFIG_TOUCHSCREEN_IMX6UL_TSC=m
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -6237,6 +6283,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -6271,6 +6318,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -6305,8 +6353,10 @@ CONFIG_TWL6030_GPADC=m
CONFIG_TWL6030_USB=m
CONFIG_TWL6040_CORE=y
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -6418,7 +6468,6 @@ CONFIG_USB_EHCI_HCD_ORION=m
CONFIG_USB_EHCI_HCD_PLATFORM=m
CONFIG_USB_EHCI_HCD_STI=m
CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_MSM=m
# CONFIG_USB_EHCI_MV is not set
CONFIG_USB_EHCI_MXC=m
CONFIG_USB_EHCI_ROOT_HUB_TT=y
@@ -6439,6 +6488,7 @@ CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGET_DEBUG_FS is not set
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGETFS is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GADGET=m
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
CONFIG_USB_GADGET_VBUS_DRAW=100
@@ -6517,7 +6567,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -6541,7 +6590,6 @@ CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
CONFIG_USB_MON=y
CONFIG_USB_MR800=m
-CONFIG_USB_MSM_OTG=m
CONFIG_USB_MUSB_AM335X_CHILD=m
CONFIG_USB_MUSB_AM35X=m
CONFIG_USB_MUSB_DSPS=m
@@ -6602,7 +6650,6 @@ CONFIG_USB_PULSE8_CEC=m
CONFIG_USB_PWC_INPUT_EVDEV=y
CONFIG_USB_PWC=m
# CONFIG_USB_PXA27X is not set
-CONFIG_USB_QCOM_8X16_PHY=m
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_R8A66597 is not set
CONFIG_USB_RAINSHADOW_CEC=m
@@ -6784,7 +6831,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -6858,6 +6904,7 @@ CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_SYSFS=y
CONFIG_VIDEO_QCOM_CAMSS=m
CONFIG_VIDEO_QCOM_VENUS=m
+CONFIG_VIDEO_ROCKCHIP_RGA=m
CONFIG_VIDEO_S5P_FIMC=m
CONFIG_VIDEO_S5P_MIPI_CSIS=m
CONFIG_VIDEO_SAA6588=m
@@ -6891,6 +6938,7 @@ CONFIG_VIDEO_STI_HVA=m
CONFIG_VIDEO_STK1160_AC97=y
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+CONFIG_VIDEO_TEGRA_HDMI_CEC=m
CONFIG_VIDEO_TM6000_ALSA=m
CONFIG_VIDEO_TM6000_DVB=m
CONFIG_VIDEO_TM6000=m
@@ -6933,10 +6981,10 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6973,6 +7021,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -7000,7 +7049,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -7045,6 +7093,7 @@ CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
CONFIG_X86_MCELOG_LEGACY=y
CONFIG_X86_PTDUMP=y
# CONFIG_XEN is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -7052,6 +7101,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-armv7hl-lpae-debug.config b/kernel-armv7hl-lpae-debug.config
index b038d0752..3f63064dd 100644
--- a/kernel-armv7hl-lpae-debug.config
+++ b/kernel-armv7hl-lpae-debug.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_DEBUG=y
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -151,7 +149,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
CONFIG_AK8975=m
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -191,6 +188,7 @@ CONFIG_ARCH_BCM2835=y
# CONFIG_ARCH_BCM_53573 is not set
# CONFIG_ARCH_BCM_63XX is not set
# CONFIG_ARCH_BCM_CYGNUS is not set
+# CONFIG_ARCH_BCM_HR2 is not set
# CONFIG_ARCH_BCM_IPROC is not set
# CONFIG_ARCH_BCM_NSP is not set
CONFIG_ARCH_BCM=y
@@ -315,6 +313,7 @@ CONFIG_ARM_SCPI_POWER_DOMAIN=m
CONFIG_ARM_SCPI_PROTOCOL=m
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_ARM_SPE_PMU=m
CONFIG_ARM_TEGRA124_CPUFREQ=m
# CONFIG_ARM_TEGRA20_CPUFREQ is not set
CONFIG_ARM_TEGRA_DEVFREQ=m
@@ -535,6 +534,7 @@ CONFIG_BH1750=m
CONFIG_BIG_KEYS=y
CONFIG_BIG_LITTLE=y
# CONFIG_BINFMT_AOUT is not set
+# CONFIG_BINFMT_ELF_FDPIC is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_FLAT is not set
CONFIG_BINFMT_MISC=m
@@ -607,9 +607,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -666,6 +668,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -699,6 +702,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -836,6 +840,8 @@ CONFIG_CHARGER_MAX8997=m
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -849,6 +855,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -943,12 +950,14 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_ICACHE_DISABLE is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
# CONFIG_CPU_SW_DOMAIN_PAN is not set
CONFIG_CPU_THERMAL=y
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -1066,6 +1075,7 @@ CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512_ARM=y
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -1116,6 +1126,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1247,9 +1258,9 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DOVE_THERMAL=m
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1257,6 +1268,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1301,7 +1315,8 @@ CONFIG_DRM_HDLCD=m
# CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1326,10 +1341,14 @@ CONFIG_DRM_NXP_PTN3460=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
CONFIG_DRM_PANEL_LG_LG4573=m
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2=m
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m
CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m
CONFIG_DRM_PANEL_SIMPLE=m
@@ -1345,12 +1364,13 @@ CONFIG_DRM_RADEON_USERPTR=y
CONFIG_DRM_ROCKCHIP=m
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
CONFIG_DRM_STI=m
# CONFIG_DRM_STM is not set
CONFIG_DRM_SUN4I_BACKEND=m
-# CONFIG_DRM_SUN4I_HDMI_CEC is not set
+CONFIG_DRM_SUN4I_HDMI_CEC=y
CONFIG_DRM_SUN4I_HDMI=m
CONFIG_DRM_SUN4I=m
CONFIG_DRM_SUN8I_MIXER=m
@@ -1362,6 +1382,7 @@ CONFIG_DRM_TEGRA_STAGING=y
CONFIG_DRM_TINYDRM=m
CONFIG_DRM_TI_TFP410=m
CONFIG_DRM_TOSHIBA_TC358767=m
+CONFIG_DRM_TVE200=m
CONFIG_DRM_UDL=m
# CONFIG_DRM_VBOXVIDEO is not set
CONFIG_DRM_VC4_HDMI_CEC=y
@@ -1371,6 +1392,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTC=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1521,7 +1543,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1751,7 +1772,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1777,9 +1797,11 @@ CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
CONFIG_GPIO_MAX7301=m
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
CONFIG_GPIO_MC33880=m
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1797,6 +1819,7 @@ CONFIG_GPIO_PL061=y
# CONFIG_GPIO_SX150X is not set
CONFIG_GPIO_SYSCON=m
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS65910=y
@@ -1815,6 +1838,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1852,7 +1876,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1971,6 +1995,7 @@ CONFIG_HISAX_TELES_CS=m
CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_W6692=y
# CONFIG_HISILICON_IRQ_MBIGEN is not set
+CONFIG_HISI_PMU=y
CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
# CONFIG_HMC_DRV is not set
@@ -2018,7 +2043,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -2140,6 +2165,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
@@ -2295,6 +2321,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2329,7 +2356,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2348,6 +2375,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2456,13 +2484,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2474,13 +2497,11 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_MESON=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_CROSSBAR=y
@@ -2494,13 +2515,12 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_SUNXI=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2683,7 +2703,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2695,8 +2714,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
CONFIG_KS8851=m
CONFIG_KS8851_MLL=m
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KUSER_HELPERS=y
@@ -2775,6 +2792,7 @@ CONFIG_LEDS_REGULATOR=m
CONFIG_LEDS_SYSCON=y
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
CONFIG_LEDS_TRIGGER_CPU=y
@@ -2819,10 +2837,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2869,7 +2885,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2911,6 +2926,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_MAILBOX=y
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2934,7 +2950,6 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
@@ -2942,7 +2957,6 @@ CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
CONFIG_MCPM=y
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -3005,7 +3019,11 @@ CONFIG_MEMSTICK_TIFM_MS=m
CONFIG_MESON_EFUSE=m
# CONFIG_MESON_GXBB_WATCHDOG is not set
# CONFIG_MESON_GXL_PHY is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
CONFIG_MESON_GX_SOCINFO=y
+CONFIG_MESON_IRQ_GPIO=y
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESON_SARADC=m
CONFIG_MESON_SM=y
CONFIG_MESON_WATCHDOG=m
@@ -3138,6 +3156,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3184,6 +3203,7 @@ CONFIG_MMC_DW_PCI=m
CONFIG_MMC_DW_PLTFM=m
CONFIG_MMC_DW_ROCKCHIP=m
# CONFIG_MMC_MESON_GX is not set
+CONFIG_MMC_MESON_MX_SDIO=m
# CONFIG_MMC_MTK is not set
CONFIG_MMC_MVSDIO=m
CONFIG_MMC_OMAP_HS=m
@@ -3199,6 +3219,7 @@ CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_OF_ARASAN=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+CONFIG_MMC_SDHCI_OMAP=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_PXAV3=m
@@ -3348,6 +3369,7 @@ CONFIG_MTD_PHYSMAP_OF_VERSATILE=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
CONFIG_MTD_SPINAND_MT29F=m
CONFIG_MTD_SPINAND_ONDIEECC=y
@@ -3583,6 +3605,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3897,20 +3920,23 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
CONFIG_NOUVEAU_PLATFORM_DRIVER=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=32
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NVME_FC=m
CONFIG_NVMEM_IMX_IIM=m
CONFIG_NVMEM=m
+# CONFIG_NVMEM_SNVS_LPGPR is not set
CONFIG_NVMEM_SUNXI_SID=m
+CONFIG_NVME_MULTIPATH=y
# CONFIG_NVME_RDMA is not set
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3942,8 +3968,8 @@ CONFIG_OF_RESERVED_MEM=y
CONFIG_OF_RESOLVE=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMAP3_THERMAL is not set
+CONFIG_OMAP4_DSS_HDMI_CEC=y
# CONFIG_OMAP_GPMC_DEBUG is not set
# CONFIG_OMFS_FS is not set
CONFIG_OPENVSWITCH_GENEVE=m
@@ -3960,6 +3986,7 @@ CONFIG_ORION_WATCHDOG=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -4054,6 +4081,7 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCIE_DW_PLAT is not set
CONFIG_PCIE_DW=y
CONFIG_PCIE_ECRC=y
+CONFIG_PCIE_HISI_STB=y
# CONFIG_PCI_ENDPOINT is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
CONFIG_PCIEPORTBUS=y
@@ -4076,6 +4104,7 @@ CONFIG_PCI_PRI=y
CONFIG_PCI_STUB=y
CONFIG_PCI_SW_SWITCHTEC=m
CONFIG_PCI_TEGRA=y
+CONFIG_PCI_V3_SEMI=y
CONFIG_PCI=y
CONFIG_PCMCIA_3C574=m
CONFIG_PCMCIA_3C589=m
@@ -4146,6 +4175,7 @@ CONFIG_PINCTRL_AS3722=y
# CONFIG_PINCTRL_BAYTRAIL is not set
# CONFIG_PINCTRL_BROXTON is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_CHERRYVIEW is not set
CONFIG_PINCTRL_DOVE=y
# CONFIG_PINCTRL_GEMINILAKE is not set
@@ -4154,6 +4184,10 @@ CONFIG_PINCTRL_DOVE=y
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MDM9615 is not set
+# CONFIG_PINCTRL_MESON8B is not set
+# CONFIG_PINCTRL_MESON8 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
# CONFIG_PINCTRL_MSM8994 is not set
# CONFIG_PINCTRL_MSM8996 is not set
CONFIG_PINCTRL_MVEBU=y
@@ -4236,6 +4270,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4289,6 +4324,8 @@ CONFIG_PWRSEQ_SIMPLE=y
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
CONFIG_QCOM_PM8XXX_XOADC=m
+CONFIG_QCOM_RMTFS_MEM=m
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -4456,12 +4493,15 @@ CONFIG_REISERFS_PROC_INFO=y
CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_GPIO=y
# CONFIG_RESET_HSDK_V1 is not set
+CONFIG_RESET_SIMPLE=y
# CONFIG_RESET_TI_SCI is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4489,6 +4529,7 @@ CONFIG_ROCKCHIP_EFUSE=m
CONFIG_ROCKCHIP_INNO_HDMI=y
CONFIG_ROCKCHIP_IODOMAIN=m
CONFIG_ROCKCHIP_IOMMU=y
+CONFIG_ROCKCHIP_LVDS=y
CONFIG_ROCKCHIP_MBOX=y
CONFIG_ROCKCHIP_PHY=m
CONFIG_ROCKCHIP_PM_DOMAINS=y
@@ -4502,6 +4543,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4589,6 +4631,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PL030=y
@@ -4673,6 +4716,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
CONFIG_SATA_HIGHBANK=m
# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
# CONFIG_SATA_NV is not set
CONFIG_SATA_PMP=y
@@ -4934,8 +4978,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -5087,7 +5133,6 @@ CONFIG_SH_ETH=m
CONFIG_SI7005=m
CONFIG_SI7020=m
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_PM_BUS=y
CONFIG_SIS190=m
@@ -5113,7 +5158,6 @@ CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP_ON_UP=y
@@ -5147,7 +5191,7 @@ CONFIG_SND_AUDIO_GRAPH_CARD=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BCM2835_SOC_I2S=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
@@ -5211,7 +5255,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -5290,6 +5334,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_APQ8016_SBC is not set
CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631=m
# CONFIG_SND_SOC_BT_SCO is not set
@@ -5481,7 +5526,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPARSE_RCU_POINTER=y
# CONFIG_SPEAKUP is not set
# CONFIG_SPI_ALTERA is not set
@@ -5691,6 +5735,7 @@ CONFIG_TEGRA124_EMC=y
CONFIG_TEGRA20_APB_DMA=y
# CONFIG_TEGRA20_MC is not set
CONFIG_TEGRA_AHB=y
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEGRA_BPMP=y
CONFIG_TEGRA_GMI=m
CONFIG_TEGRA_HOST1X_FIREWALL=y
@@ -5703,12 +5748,12 @@ CONFIG_TEGRA_MC=y
CONFIG_TEGRA_SOCTHERM=m
CONFIG_TEGRA_WATCHDOG=m
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5755,6 +5800,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS8688 is not set
CONFIG_TI_AEMIF=m
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TI_DAVINCI_MDIO=m
CONFIG_TI_EDMA=y
@@ -5786,8 +5832,6 @@ CONFIG_TMP006=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOUCHSCREEN_AD7877=m
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5809,11 +5853,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5828,6 +5874,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5861,6 +5908,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5889,8 +5937,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -6017,6 +6067,7 @@ CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGET_DEBUG_FS is not set
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGETFS is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GADGET=m
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
CONFIG_USB_GADGET_VBUS_DRAW=100
@@ -6093,7 +6144,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -6351,7 +6401,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -6413,6 +6462,7 @@ CONFIG_VIDEO_NOON010PC30=m
CONFIG_VIDEO_PVRUSB2_DVB=y
CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_SYSFS=y
+CONFIG_VIDEO_ROCKCHIP_RGA=m
CONFIG_VIDEO_S5P_FIMC=m
CONFIG_VIDEO_S5P_MIPI_CSIS=m
CONFIG_VIDEO_SAA6588=m
@@ -6439,6 +6489,7 @@ CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_AC97=y
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+CONFIG_VIDEO_TEGRA_HDMI_CEC=m
CONFIG_VIDEO_TM6000_ALSA=m
CONFIG_VIDEO_TM6000_DVB=m
CONFIG_VIDEO_TM6000=m
@@ -6481,10 +6532,10 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6520,6 +6571,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6547,7 +6599,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6602,6 +6653,7 @@ CONFIG_XEN_GRANT_DEV_ALLOC=m
# CONFIG_XEN is not set
CONFIG_XEN_NETDEV_BACKEND=m
CONFIG_XEN_NETDEV_FRONTEND=m
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_SYS_HYPERVISOR=y
CONFIG_XEN_WDT=m
CONFIG_XFRM_MIGRATE=y
@@ -6611,6 +6663,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-armv7hl-lpae.config b/kernel-armv7hl-lpae.config
index db5f03bf1..b42356542 100644
--- a/kernel-armv7hl-lpae.config
+++ b/kernel-armv7hl-lpae.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_ALS=m
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -151,7 +149,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
CONFIG_AK8975=m
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -191,6 +188,7 @@ CONFIG_ARCH_BCM2835=y
# CONFIG_ARCH_BCM_53573 is not set
# CONFIG_ARCH_BCM_63XX is not set
# CONFIG_ARCH_BCM_CYGNUS is not set
+# CONFIG_ARCH_BCM_HR2 is not set
# CONFIG_ARCH_BCM_IPROC is not set
# CONFIG_ARCH_BCM_NSP is not set
CONFIG_ARCH_BCM=y
@@ -314,6 +312,7 @@ CONFIG_ARM_SCPI_POWER_DOMAIN=m
CONFIG_ARM_SCPI_PROTOCOL=m
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_ARM_SPE_PMU=m
CONFIG_ARM_TEGRA124_CPUFREQ=m
# CONFIG_ARM_TEGRA20_CPUFREQ is not set
CONFIG_ARM_TEGRA_DEVFREQ=m
@@ -534,6 +533,7 @@ CONFIG_BH1750=m
CONFIG_BIG_KEYS=y
CONFIG_BIG_LITTLE=y
# CONFIG_BINFMT_AOUT is not set
+# CONFIG_BINFMT_ELF_FDPIC is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_FLAT is not set
CONFIG_BINFMT_MISC=m
@@ -606,9 +606,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -665,6 +667,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -698,6 +701,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -835,6 +839,8 @@ CONFIG_CHARGER_MAX8997=m
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -848,6 +854,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -942,11 +949,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_ICACHE_DISABLE is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_SW_DOMAIN_PAN is not set
CONFIG_CPU_THERMAL=y
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -1064,6 +1073,7 @@ CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512_ARM=y
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -1114,6 +1124,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1237,9 +1248,9 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DOVE_THERMAL=m
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1247,6 +1258,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1291,7 +1305,8 @@ CONFIG_DRM_HDLCD=m
# CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1316,10 +1331,14 @@ CONFIG_DRM_NXP_PTN3460=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
CONFIG_DRM_PANEL_LG_LG4573=m
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2=m
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m
CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m
CONFIG_DRM_PANEL_SIMPLE=m
@@ -1335,12 +1354,13 @@ CONFIG_DRM_RADEON_USERPTR=y
CONFIG_DRM_ROCKCHIP=m
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
CONFIG_DRM_STI=m
# CONFIG_DRM_STM is not set
CONFIG_DRM_SUN4I_BACKEND=m
-# CONFIG_DRM_SUN4I_HDMI_CEC is not set
+CONFIG_DRM_SUN4I_HDMI_CEC=y
CONFIG_DRM_SUN4I_HDMI=m
CONFIG_DRM_SUN4I=m
CONFIG_DRM_SUN8I_MIXER=m
@@ -1352,6 +1372,7 @@ CONFIG_DRM_TEGRA_STAGING=y
CONFIG_DRM_TINYDRM=m
CONFIG_DRM_TI_TFP410=m
CONFIG_DRM_TOSHIBA_TC358767=m
+CONFIG_DRM_TVE200=m
CONFIG_DRM_UDL=m
# CONFIG_DRM_VBOXVIDEO is not set
CONFIG_DRM_VC4_HDMI_CEC=y
@@ -1361,6 +1382,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTC=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1511,7 +1533,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1734,7 +1755,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1760,9 +1780,11 @@ CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
CONFIG_GPIO_MAX7301=m
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
CONFIG_GPIO_MC33880=m
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1780,6 +1802,7 @@ CONFIG_GPIO_PL061=y
# CONFIG_GPIO_SX150X is not set
CONFIG_GPIO_SYSCON=m
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS65910=y
@@ -1798,6 +1821,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1835,7 +1859,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1954,6 +1978,7 @@ CONFIG_HISAX_TELES_CS=m
CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_W6692=y
# CONFIG_HISILICON_IRQ_MBIGEN is not set
+CONFIG_HISI_PMU=y
CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
# CONFIG_HMC_DRV is not set
@@ -2001,7 +2026,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -2123,6 +2148,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
@@ -2278,6 +2304,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2312,7 +2339,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2331,6 +2358,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2439,13 +2467,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2457,13 +2480,11 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_MESON=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_CROSSBAR=y
@@ -2477,13 +2498,12 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_SUNXI=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2664,7 +2684,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2676,8 +2695,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
CONFIG_KS8851=m
CONFIG_KS8851_MLL=m
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KUSER_HELPERS=y
@@ -2756,6 +2773,7 @@ CONFIG_LEDS_REGULATOR=m
CONFIG_LEDS_SYSCON=y
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
CONFIG_LEDS_TRIGGER_CPU=y
@@ -2800,10 +2818,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2850,7 +2866,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2892,6 +2907,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_MAILBOX=y
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2914,7 +2930,6 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
@@ -2922,7 +2937,6 @@ CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
CONFIG_MCPM=y
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -2985,7 +2999,11 @@ CONFIG_MEMSTICK_TIFM_MS=m
CONFIG_MESON_EFUSE=m
# CONFIG_MESON_GXBB_WATCHDOG is not set
# CONFIG_MESON_GXL_PHY is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
CONFIG_MESON_GX_SOCINFO=y
+CONFIG_MESON_IRQ_GPIO=y
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESON_SARADC=m
CONFIG_MESON_SM=y
CONFIG_MESON_WATCHDOG=m
@@ -3118,6 +3136,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3164,6 +3183,7 @@ CONFIG_MMC_DW_PCI=m
CONFIG_MMC_DW_PLTFM=m
CONFIG_MMC_DW_ROCKCHIP=m
# CONFIG_MMC_MESON_GX is not set
+CONFIG_MMC_MESON_MX_SDIO=m
# CONFIG_MMC_MTK is not set
CONFIG_MMC_MVSDIO=m
CONFIG_MMC_OMAP_HS=m
@@ -3179,6 +3199,7 @@ CONFIG_MMC_SDHCI=m
CONFIG_MMC_SDHCI_OF_ARASAN=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+CONFIG_MMC_SDHCI_OMAP=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_PXAV3=m
@@ -3327,6 +3348,7 @@ CONFIG_MTD_PHYSMAP_OF_VERSATILE=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
CONFIG_MTD_SPINAND_MT29F=m
CONFIG_MTD_SPINAND_ONDIEECC=y
@@ -3562,6 +3584,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3876,20 +3899,23 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_NOUVEAU_PLATFORM_DRIVER=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=32
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NVME_FC=m
CONFIG_NVMEM_IMX_IIM=m
CONFIG_NVMEM=m
+# CONFIG_NVMEM_SNVS_LPGPR is not set
CONFIG_NVMEM_SUNXI_SID=m
+CONFIG_NVME_MULTIPATH=y
# CONFIG_NVME_RDMA is not set
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3921,8 +3947,8 @@ CONFIG_OF_RESERVED_MEM=y
CONFIG_OF_RESOLVE=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMAP3_THERMAL is not set
+CONFIG_OMAP4_DSS_HDMI_CEC=y
# CONFIG_OMAP_GPMC_DEBUG is not set
# CONFIG_OMFS_FS is not set
CONFIG_OPENVSWITCH_GENEVE=m
@@ -3939,6 +3965,7 @@ CONFIG_ORION_WATCHDOG=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -4033,6 +4060,7 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCIE_DW_PLAT is not set
CONFIG_PCIE_DW=y
CONFIG_PCIE_ECRC=y
+CONFIG_PCIE_HISI_STB=y
# CONFIG_PCI_ENDPOINT is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
CONFIG_PCIEPORTBUS=y
@@ -4055,6 +4083,7 @@ CONFIG_PCI_PRI=y
CONFIG_PCI_STUB=y
CONFIG_PCI_SW_SWITCHTEC=m
CONFIG_PCI_TEGRA=y
+CONFIG_PCI_V3_SEMI=y
CONFIG_PCI=y
CONFIG_PCMCIA_3C574=m
CONFIG_PCMCIA_3C589=m
@@ -4125,6 +4154,7 @@ CONFIG_PINCTRL_AS3722=y
# CONFIG_PINCTRL_BAYTRAIL is not set
# CONFIG_PINCTRL_BROXTON is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_CHERRYVIEW is not set
CONFIG_PINCTRL_DOVE=y
# CONFIG_PINCTRL_GEMINILAKE is not set
@@ -4133,6 +4163,10 @@ CONFIG_PINCTRL_DOVE=y
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MDM9615 is not set
+# CONFIG_PINCTRL_MESON8B is not set
+# CONFIG_PINCTRL_MESON8 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
# CONFIG_PINCTRL_MSM8994 is not set
# CONFIG_PINCTRL_MSM8996 is not set
CONFIG_PINCTRL_MVEBU=y
@@ -4215,6 +4249,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4267,6 +4302,8 @@ CONFIG_PWRSEQ_SIMPLE=y
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
CONFIG_QCOM_PM8XXX_XOADC=m
+CONFIG_QCOM_RMTFS_MEM=m
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -4434,12 +4471,15 @@ CONFIG_REISERFS_PROC_INFO=y
CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_GPIO=y
# CONFIG_RESET_HSDK_V1 is not set
+CONFIG_RESET_SIMPLE=y
# CONFIG_RESET_TI_SCI is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4467,6 +4507,7 @@ CONFIG_ROCKCHIP_EFUSE=m
CONFIG_ROCKCHIP_INNO_HDMI=y
CONFIG_ROCKCHIP_IODOMAIN=m
CONFIG_ROCKCHIP_IOMMU=y
+CONFIG_ROCKCHIP_LVDS=y
CONFIG_ROCKCHIP_MBOX=y
CONFIG_ROCKCHIP_PHY=m
CONFIG_ROCKCHIP_PM_DOMAINS=y
@@ -4480,6 +4521,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4567,6 +4609,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PL030=y
@@ -4651,6 +4694,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
CONFIG_SATA_HIGHBANK=m
# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
# CONFIG_SATA_NV is not set
CONFIG_SATA_PMP=y
@@ -4912,8 +4956,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -5065,7 +5111,6 @@ CONFIG_SH_ETH=m
CONFIG_SI7005=m
CONFIG_SI7020=m
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_PM_BUS=y
CONFIG_SIS190=m
@@ -5091,7 +5136,6 @@ CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP_ON_UP=y
@@ -5125,7 +5169,7 @@ CONFIG_SND_AUDIO_GRAPH_CARD=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BCM2835_SOC_I2S=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
@@ -5189,7 +5233,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -5267,6 +5311,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_APQ8016_SBC is not set
CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631=m
# CONFIG_SND_SOC_BT_SCO is not set
@@ -5458,7 +5503,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPARSE_RCU_POINTER=y
# CONFIG_SPEAKUP is not set
# CONFIG_SPI_ALTERA is not set
@@ -5668,6 +5712,7 @@ CONFIG_TEGRA124_EMC=y
CONFIG_TEGRA20_APB_DMA=y
# CONFIG_TEGRA20_MC is not set
CONFIG_TEGRA_AHB=y
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEGRA_BPMP=y
CONFIG_TEGRA_GMI=m
CONFIG_TEGRA_HOST1X_FIREWALL=y
@@ -5680,12 +5725,12 @@ CONFIG_TEGRA_MC=y
CONFIG_TEGRA_SOCTHERM=m
CONFIG_TEGRA_WATCHDOG=m
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5732,6 +5777,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS8688 is not set
CONFIG_TI_AEMIF=m
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TI_DAVINCI_MDIO=m
CONFIG_TI_EDMA=y
@@ -5763,8 +5809,6 @@ CONFIG_TMP006=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOUCHSCREEN_AD7877=m
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5786,11 +5830,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5805,6 +5851,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5838,6 +5885,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5866,8 +5914,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5994,6 +6044,7 @@ CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGET_DEBUG_FS is not set
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGETFS is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GADGET=m
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
CONFIG_USB_GADGET_VBUS_DRAW=100
@@ -6070,7 +6121,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -6328,7 +6378,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -6390,6 +6439,7 @@ CONFIG_VIDEO_NOON010PC30=m
CONFIG_VIDEO_PVRUSB2_DVB=y
CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_SYSFS=y
+CONFIG_VIDEO_ROCKCHIP_RGA=m
CONFIG_VIDEO_S5P_FIMC=m
CONFIG_VIDEO_S5P_MIPI_CSIS=m
CONFIG_VIDEO_SAA6588=m
@@ -6416,6 +6466,7 @@ CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_STK1160_AC97=y
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+CONFIG_VIDEO_TEGRA_HDMI_CEC=m
CONFIG_VIDEO_TM6000_ALSA=m
CONFIG_VIDEO_TM6000_DVB=m
CONFIG_VIDEO_TM6000=m
@@ -6458,10 +6509,10 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6497,6 +6548,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6524,7 +6576,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6579,6 +6630,7 @@ CONFIG_XEN_GRANT_DEV_ALLOC=m
# CONFIG_XEN is not set
CONFIG_XEN_NETDEV_BACKEND=m
CONFIG_XEN_NETDEV_FRONTEND=m
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_SYS_HYPERVISOR=y
CONFIG_XEN_WDT=m
CONFIG_XFRM_MIGRATE=y
@@ -6588,6 +6640,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-armv7hl.config b/kernel-armv7hl.config
index 83e475fde..8f496beb2 100644
--- a/kernel-armv7hl.config
+++ b/kernel-armv7hl.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_ALS=m
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -153,7 +151,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
CONFIG_AK8975=m
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -195,6 +192,7 @@ CONFIG_ARCH_BCM2835=y
# CONFIG_ARCH_BCM_53573 is not set
# CONFIG_ARCH_BCM_63XX is not set
# CONFIG_ARCH_BCM_CYGNUS is not set
+# CONFIG_ARCH_BCM_HR2 is not set
# CONFIG_ARCH_BCM_IPROC is not set
# CONFIG_ARCH_BCM_NSP is not set
CONFIG_ARCH_BCM=y
@@ -325,6 +323,7 @@ CONFIG_ARM_SCPI_POWER_DOMAIN=m
CONFIG_ARM_SCPI_PROTOCOL=m
CONFIG_ARM_SMMU=y
CONFIG_ARM_SP805_WATCHDOG=m
+CONFIG_ARM_SPE_PMU=m
CONFIG_ARM_STI_CPUFREQ=m
CONFIG_ARM_TEGRA124_CPUFREQ=m
# CONFIG_ARM_TEGRA20_CPUFREQ is not set
@@ -558,6 +557,7 @@ CONFIG_BH1750=m
CONFIG_BIG_KEYS=y
CONFIG_BIG_LITTLE=y
# CONFIG_BINFMT_AOUT is not set
+# CONFIG_BINFMT_ELF_FDPIC is not set
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_FLAT is not set
CONFIG_BINFMT_MISC=m
@@ -630,9 +630,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -689,6 +691,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -723,6 +726,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -863,6 +867,8 @@ CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
CONFIG_CHARGER_TPS65217=m
CONFIG_CHARGER_TWL4030=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -876,6 +882,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -975,11 +982,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_ICACHE_DISABLE is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
CONFIG_CPU_SW_DOMAIN_PAN=y
CONFIG_CPU_THERMAL=y
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -1117,6 +1126,7 @@ CONFIG_CRYPTO_SHA512_ARM64=m
CONFIG_CRYPTO_SHA512_ARM=y
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -1168,6 +1178,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1292,9 +1303,9 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DOVE_THERMAL=m
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1302,6 +1313,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1348,7 +1362,8 @@ CONFIG_DRM_HDLCD=m
# CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1402,10 +1417,14 @@ CONFIG_DRM_OMAP_PANEL_TPO_TD043MTEA1=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
CONFIG_DRM_PANEL_LG_LG4573=m
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00=m
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
CONFIG_DRM_PANEL_SAMSUNG_LD9040=m
CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2=m
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m
CONFIG_DRM_PANEL_SHARP_LS043T1LE01=m
CONFIG_DRM_PANEL_SIMPLE=m
@@ -1421,12 +1440,13 @@ CONFIG_DRM_RADEON_USERPTR=y
CONFIG_DRM_ROCKCHIP=m
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
CONFIG_DRM_STI=m
# CONFIG_DRM_STM is not set
CONFIG_DRM_SUN4I_BACKEND=m
-# CONFIG_DRM_SUN4I_HDMI_CEC is not set
+CONFIG_DRM_SUN4I_HDMI_CEC=y
CONFIG_DRM_SUN4I_HDMI=m
CONFIG_DRM_SUN4I=m
CONFIG_DRM_SUN8I_MIXER=m
@@ -1439,6 +1459,7 @@ CONFIG_DRM_TILCDC_SLAVE_COMPAT=y
CONFIG_DRM_TINYDRM=m
CONFIG_DRM_TI_TFP410=m
CONFIG_DRM_TOSHIBA_TC358767=m
+CONFIG_DRM_TVE200=m
CONFIG_DRM_UDL=m
# CONFIG_DRM_VBOXVIDEO is not set
CONFIG_DRM_VC4_HDMI_CEC=y
@@ -1448,6 +1469,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTC=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1601,7 +1623,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1830,7 +1851,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1857,9 +1877,11 @@ CONFIG_GPIO_GENERIC=y
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
CONFIG_GPIO_MAX7301=m
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
CONFIG_GPIO_MC33880=m
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1880,6 +1902,7 @@ CONFIG_GPIO_STMPE=y
# CONFIG_GPIO_SX150X is not set
CONFIG_GPIO_SYSCON=m
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
CONFIG_GPIO_TEGRA=y
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS65218=m
@@ -1904,6 +1927,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
CONFIG_GS_FPGABOOT=m
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1941,7 +1965,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -2060,6 +2084,7 @@ CONFIG_HISAX_TELES_CS=m
CONFIG_HISAX_TELESPCI=y
CONFIG_HISAX_W6692=y
# CONFIG_HISILICON_IRQ_MBIGEN is not set
+CONFIG_HISI_PMU=y
CONFIG_HIST_TRIGGERS=y
# CONFIG_HMC6352 is not set
# CONFIG_HMC_DRV is not set
@@ -2109,9 +2134,9 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
CONFIG_HWSPINLOCK_OMAP=m
CONFIG_HWSPINLOCK_QCOM=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -2237,6 +2262,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
CONFIG_IIO_CROS_EC_BARO=m
CONFIG_IIO_CROS_EC_LIGHT_PROX=m
CONFIG_IIO_CROS_EC_SENSORS_CORE=m
@@ -2409,6 +2435,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2443,7 +2470,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2462,6 +2489,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2570,13 +2598,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2588,13 +2611,11 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_MESON=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_CROSSBAR=y
@@ -2609,13 +2630,12 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_SUNXI=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2801,7 +2821,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2813,8 +2832,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
CONFIG_KS8851=m
CONFIG_KS8851_MLL=m
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KUSER_HELPERS=y
@@ -2894,6 +2911,7 @@ CONFIG_LEDS_REGULATOR=m
CONFIG_LEDS_SYSCON=y
CONFIG_LEDS_TCA6507=m
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
CONFIG_LEDS_TRIGGER_CPU=y
@@ -2938,10 +2956,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2988,7 +3004,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -3037,6 +3052,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_MAILBOX=y
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -3059,7 +3075,6 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
@@ -3067,7 +3082,6 @@ CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
CONFIG_MCPM=y
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -3132,7 +3146,11 @@ CONFIG_MEMSTICK_TIFM_MS=m
CONFIG_MESON_EFUSE=m
# CONFIG_MESON_GXBB_WATCHDOG is not set
# CONFIG_MESON_GXL_PHY is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
CONFIG_MESON_GX_SOCINFO=y
+CONFIG_MESON_IRQ_GPIO=y
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESON_SARADC=m
CONFIG_MESON_SM=y
CONFIG_MESON_WATCHDOG=m
@@ -3268,6 +3286,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3314,6 +3333,7 @@ CONFIG_MMC_DW_PCI=m
CONFIG_MMC_DW_PLTFM=m
CONFIG_MMC_DW_ROCKCHIP=m
# CONFIG_MMC_MESON_GX is not set
+CONFIG_MMC_MESON_MX_SDIO=m
# CONFIG_MMC_MTK is not set
CONFIG_MMC_MVSDIO=m
CONFIG_MMC_MXC=m
@@ -3334,6 +3354,7 @@ CONFIG_MMC_SDHCI_MSM=m
CONFIG_MMC_SDHCI_OF_ARASAN=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
CONFIG_MMC_SDHCI_OF_ESDHC=m
+CONFIG_MMC_SDHCI_OMAP=m
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_PXAV2=m
@@ -3499,6 +3520,7 @@ CONFIG_MTD_PHYSMAP_OF_VERSATILE=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
CONFIG_MTD_SPINAND_MT29F=m
CONFIG_MTD_SPINAND_ONDIEECC=y
@@ -3738,6 +3760,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -4055,14 +4078,15 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_NOUVEAU_PLATFORM_DRIVER=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=32
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NVEC_PAZ00=y
@@ -4071,7 +4095,9 @@ CONFIG_NVME_FC=m
CONFIG_NVMEM_IMX_IIM=m
CONFIG_NVMEM_IMX_OCOTP=m
CONFIG_NVMEM=m
+# CONFIG_NVMEM_SNVS_LPGPR is not set
CONFIG_NVMEM_SUNXI_SID=m
+CONFIG_NVME_MULTIPATH=y
# CONFIG_NVME_RDMA is not set
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -4103,7 +4129,6 @@ CONFIG_OF_RESERVED_MEM=y
CONFIG_OF_RESOLVE=y
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMAP2_DSS_COLLECT_IRQ_STATS is not set
# CONFIG_OMAP2_DSS_DEBUGFS is not set
# CONFIG_OMAP2_DSS_DEBUG is not set
@@ -4121,6 +4146,7 @@ CONFIG_OMAP_32K_TIMER=y
# CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set
# CONFIG_OMAP3_SDRC_AC_TIMING is not set
# CONFIG_OMAP3_THERMAL is not set
+CONFIG_OMAP4_DSS_HDMI_CEC=y
CONFIG_OMAP4_DSS_HDMI=y
CONFIG_OMAP4_THERMAL=y
CONFIG_OMAP5_DSS_HDMI=y
@@ -4156,6 +4182,7 @@ CONFIG_ORION_WATCHDOG=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -4252,6 +4279,7 @@ CONFIG_PCIE_DW_HOST=y
# CONFIG_PCIE_DW_PLAT is not set
CONFIG_PCIE_DW=y
CONFIG_PCIE_ECRC=y
+CONFIG_PCIE_HISI_STB=y
# CONFIG_PCI_ENDPOINT is not set
# CONFIG_PCI_ENDPOINT_TEST is not set
CONFIG_PCIEPORTBUS=y
@@ -4276,6 +4304,7 @@ CONFIG_PCI_PRI=y
CONFIG_PCI_STUB=y
CONFIG_PCI_SW_SWITCHTEC=m
CONFIG_PCI_TEGRA=y
+CONFIG_PCI_V3_SEMI=y
CONFIG_PCI=y
CONFIG_PCMCIA_3C574=m
CONFIG_PCMCIA_3C589=m
@@ -4357,6 +4386,7 @@ CONFIG_PINCTRL_AS3722=y
# CONFIG_PINCTRL_BAYTRAIL is not set
# CONFIG_PINCTRL_BROXTON is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_CHERRYVIEW is not set
CONFIG_PINCTRL_DOVE=y
# CONFIG_PINCTRL_GEMINILAKE is not set
@@ -4366,6 +4396,10 @@ CONFIG_PINCTRL_IMX6SL=y
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL_MCP23S08 is not set
# CONFIG_PINCTRL_MDM9615 is not set
+# CONFIG_PINCTRL_MESON8B is not set
+# CONFIG_PINCTRL_MESON8 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_MSM8660=m
CONFIG_PINCTRL_MSM8916=m
CONFIG_PINCTRL_MSM8960=m
@@ -4460,6 +4494,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4532,6 +4567,8 @@ CONFIG_QCOM_PM8XXX_XOADC=m
CONFIG_QCOM_PM=y
CONFIG_QCOM_Q6V5_PIL=m
CONFIG_QCOM_QFPROM=m
+CONFIG_QCOM_RMTFS_MEM=m
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QCOM_SMD_RPM=m
CONFIG_QCOM_SMEM=m
CONFIG_QCOM_SMP2P=m
@@ -4726,12 +4763,15 @@ CONFIG_REISERFS_PROC_INFO=y
CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
CONFIG_RESET_CONTROLLER=y
CONFIG_RESET_GPIO=y
# CONFIG_RESET_HSDK_V1 is not set
+CONFIG_RESET_SIMPLE=y
# CONFIG_RESET_TI_SCI is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4759,6 +4799,7 @@ CONFIG_ROCKCHIP_EFUSE=m
CONFIG_ROCKCHIP_INNO_HDMI=y
CONFIG_ROCKCHIP_IODOMAIN=m
CONFIG_ROCKCHIP_IOMMU=y
+CONFIG_ROCKCHIP_LVDS=y
CONFIG_ROCKCHIP_MBOX=y
CONFIG_ROCKCHIP_PHY=m
CONFIG_ROCKCHIP_PM_DOMAINS=y
@@ -4774,6 +4815,7 @@ CONFIG_RPMSG=m
CONFIG_RPMSG_QCOM_GLINK_RPM=m
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
CONFIG_RPMSG_QCOM_SMD=m
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4869,6 +4911,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PL030=y
@@ -4957,6 +5000,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
CONFIG_SATA_HIGHBANK=m
# CONFIG_SATA_INIC162X is not set
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
# CONFIG_SATA_NV is not set
CONFIG_SATA_PMP=y
@@ -5220,8 +5264,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -5388,7 +5434,6 @@ CONFIG_SH_ETH=m
CONFIG_SI7005=m
CONFIG_SI7020=m
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_PM_BUS=y
CONFIG_SIS190=m
@@ -5414,7 +5459,6 @@ CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
CONFIG_SMC911X=m
CONFIG_SMC91X=m
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP_ON_UP=y
@@ -5449,7 +5493,7 @@ CONFIG_SND_AUDIO_GRAPH_CARD=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BCM2835_SOC_I2S=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
@@ -5518,7 +5562,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -5612,6 +5656,7 @@ CONFIG_SND_SOC_ADI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_APQ8016_SBC is not set
CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631=m
# CONFIG_SND_SOC_BT_SCO is not set
@@ -5842,7 +5887,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPARSE_RCU_POINTER=y
# CONFIG_SPEAKUP is not set
# CONFIG_SPI_ALTERA is not set
@@ -6068,6 +6112,7 @@ CONFIG_TEGRA124_EMC=y
CONFIG_TEGRA20_APB_DMA=y
CONFIG_TEGRA20_MC=y
CONFIG_TEGRA_AHB=y
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEGRA_BPMP=y
CONFIG_TEGRA_GMI=m
CONFIG_TEGRA_HOST1X_FIREWALL=y
@@ -6080,12 +6125,12 @@ CONFIG_TEGRA_MC=y
CONFIG_TEGRA_SOCTHERM=m
CONFIG_TEGRA_WATCHDOG=m
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -6137,6 +6182,7 @@ CONFIG_TI_CPSW=m
CONFIG_TI_CPSW_PHY_SEL=y
CONFIG_TI_CPTS_MOD=m
CONFIG_TI_CPTS=y
+# CONFIG_TI_DAC082S085 is not set
CONFIG_TI_DAC7512=m
CONFIG_TI_DAVINCI_CPDMA=m
CONFIG_TI_DAVINCI_EMAC=m
@@ -6171,8 +6217,6 @@ CONFIG_TMP006=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOUCHSCREEN_AD7877=m
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -6195,11 +6239,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
CONFIG_TOUCHSCREEN_IMX6UL_TSC=m
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -6214,6 +6260,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -6248,6 +6295,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -6282,8 +6330,10 @@ CONFIG_TWL6030_GPADC=m
CONFIG_TWL6030_USB=m
CONFIG_TWL6040_CORE=y
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -6395,7 +6445,6 @@ CONFIG_USB_EHCI_HCD_ORION=m
CONFIG_USB_EHCI_HCD_PLATFORM=m
CONFIG_USB_EHCI_HCD_STI=m
CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_EHCI_MSM=m
# CONFIG_USB_EHCI_MV is not set
CONFIG_USB_EHCI_MXC=m
CONFIG_USB_EHCI_ROOT_HUB_TT=y
@@ -6416,6 +6465,7 @@ CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGET_DEBUG_FS is not set
# CONFIG_USB_GADGET_DEBUG is not set
# CONFIG_USB_GADGETFS is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GADGET=m
CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2
CONFIG_USB_GADGET_VBUS_DRAW=100
@@ -6494,7 +6544,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -6518,7 +6567,6 @@ CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
CONFIG_USB_MON=y
CONFIG_USB_MR800=m
-CONFIG_USB_MSM_OTG=m
CONFIG_USB_MUSB_AM335X_CHILD=m
CONFIG_USB_MUSB_AM35X=m
CONFIG_USB_MUSB_DSPS=m
@@ -6579,7 +6627,6 @@ CONFIG_USB_PULSE8_CEC=m
CONFIG_USB_PWC_INPUT_EVDEV=y
CONFIG_USB_PWC=m
# CONFIG_USB_PXA27X is not set
-CONFIG_USB_QCOM_8X16_PHY=m
# CONFIG_USB_R8A66597_HCD is not set
# CONFIG_USB_R8A66597 is not set
CONFIG_USB_RAINSHADOW_CEC=m
@@ -6761,7 +6808,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -6835,6 +6881,7 @@ CONFIG_VIDEO_PVRUSB2=m
CONFIG_VIDEO_PVRUSB2_SYSFS=y
CONFIG_VIDEO_QCOM_CAMSS=m
CONFIG_VIDEO_QCOM_VENUS=m
+CONFIG_VIDEO_ROCKCHIP_RGA=m
CONFIG_VIDEO_S5P_FIMC=m
CONFIG_VIDEO_S5P_MIPI_CSIS=m
CONFIG_VIDEO_SAA6588=m
@@ -6868,6 +6915,7 @@ CONFIG_VIDEO_STI_HVA=m
CONFIG_VIDEO_STK1160_AC97=y
CONFIG_VIDEO_STK1160_COMMON=m
CONFIG_VIDEO_STK1160=m
+CONFIG_VIDEO_TEGRA_HDMI_CEC=m
CONFIG_VIDEO_TM6000_ALSA=m
CONFIG_VIDEO_TM6000_DVB=m
CONFIG_VIDEO_TM6000=m
@@ -6910,10 +6958,10 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6950,6 +6998,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6977,7 +7026,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -7022,6 +7070,7 @@ CONFIG_WM8350_WATCHDOG=m
CONFIG_X86_MCELOG_LEGACY=y
# CONFIG_X86_PTDUMP is not set
# CONFIG_XEN is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -7029,6 +7078,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-i686-PAE.config b/kernel-i686-PAE.config
index 45918b967..7d2eeff10 100644
--- a/kernel-i686-PAE.config
+++ b/kernel-i686-PAE.config
@@ -72,7 +72,7 @@ CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_PROCFS=y
-# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set
+CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
CONFIG_ACPI_SBS=m
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_TABLE_UPGRADE=y
@@ -82,8 +82,6 @@ CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_WMI=m
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -193,7 +191,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
CONFIG_ALIENWARE_WMI=m
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
# CONFIG_ALIX is not set
@@ -499,9 +496,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -558,6 +557,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -591,6 +591,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -715,6 +716,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -730,6 +733,7 @@ CONFIG_CHR_DEV_ST=m
CONFIG_CHROMEOS_LAPTOP=m
CONFIG_CHROMEOS_PSTORE=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -802,10 +806,12 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -916,6 +922,7 @@ CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -968,6 +975,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1022,6 +1030,8 @@ CONFIG_DELL_LAPTOP=m
CONFIG_DELL_RBTN=m
# CONFIG_DELL_RBU is not set
CONFIG_DELL_SMBIOS=m
+CONFIG_DELL_SMBIOS_SMM=m
+CONFIG_DELL_SMBIOS_WMI=m
CONFIG_DELL_SMO8800=m
CONFIG_DELL_WMI_AIO=m
CONFIG_DELL_WMI_LED=m
@@ -1088,8 +1098,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1098,6 +1108,10 @@ CONFIG_DPTF_POWER=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+CONFIG_DRM_AMD_DC_DCN1_0=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1121,7 +1135,8 @@ CONFIG_DRM_GMA500=m
# CONFIG_DRM_GMA600 is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1150,10 +1165,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1167,7 +1186,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1182,6 +1202,7 @@ CONFIG_DRM_VMWGFX_FBCON=y
CONFIG_DRM_VMWGFX=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@@ -1353,7 +1374,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1585,7 +1605,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1615,9 +1634,11 @@ CONFIG_GPIO_ICH=m
CONFIG_GPIO_IT87=m
CONFIG_GPIOLIB=y
# CONFIG_GPIO_LYNXPOINT is not set
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_ML_IOH is not set
@@ -1635,6 +1656,7 @@ CONFIG_GPIO_SCH=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1650,6 +1672,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1684,7 +1707,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1861,7 +1884,7 @@ CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYPERV_BALLOON=m
CONFIG_HYPERVISOR_GUEST=y
@@ -1989,6 +2012,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -2164,11 +2188,13 @@ CONFIG_INTEL_RST=m
# CONFIG_INTEL_SCU_IPC is not set
CONFIG_INTEL_SMARTCONNECT=y
CONFIG_INTEL_SOC_DTS_THERMAL=m
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC_CHTWC is not set
CONFIG_INTEL_SOC_PMIC=y
# CONFIG_INTEL_TH is not set
# CONFIG_INTEL_TXT is not set
CONFIG_INTEL_VBTN=m
+CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_INTEL_XWAY_PHY=m
# CONFIG_INTERVAL_TREE_TEST is not set
# CONFIG_INV_MPU6050_I2C is not set
@@ -2200,7 +2226,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2219,6 +2245,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2328,13 +2355,8 @@ CONFIG_IPW2200_QOS=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2346,12 +2368,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
# CONFIG_IRQ_DOMAIN_DEBUG is not set
@@ -2364,12 +2384,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2534,7 +2553,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2546,8 +2564,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_AMD=m
@@ -2585,6 +2601,7 @@ CONFIG_LCD_PLATFORM=m
# CONFIG_LDM_DEBUG is not set
CONFIG_LDM_PARTITION=y
# CONFIG_LEDS_AAT1290 is not set
+CONFIG_LEDS_APU=m
CONFIG_LEDS_AS3645A=m
# CONFIG_LEDS_BCM6328 is not set
# CONFIG_LEDS_BCM6358 is not set
@@ -2626,6 +2643,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2672,10 +2690,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2727,7 +2743,6 @@ CONFIG_LXT_PHY=m
# CONFIG_M586TSC is not set
# CONFIG_M62332 is not set
CONFIG_M686=y
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2755,6 +2770,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2779,7 +2795,6 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
@@ -2787,7 +2802,6 @@ CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
# CONFIG_MCRUSOE is not set
-CONFIG_MCS_FIR=m
# CONFIG_MCYRIXIII is not set
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
@@ -2847,6 +2861,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2973,6 +2990,7 @@ CONFIG_MISDN_W6692=m
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3022,6 +3040,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_ARASAN is not set
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -3146,6 +3165,7 @@ CONFIG_MTD_PHYSMAP_OF=m
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3187,7 +3207,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3375,6 +3395,7 @@ CONFIG_NETROM=m
# CONFIG_NET_SB1000 is not set
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3692,19 +3713,21 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=32
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NSC_GPIO=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
# CONFIG_NUMA is not set
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3723,7 +3746,6 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF_OVERLAY is not set
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
CONFIG_OLPC_XO15_SCI=y
CONFIG_OLPC_XO1=m
CONFIG_OLPC_XO1_PM=y
@@ -3744,6 +3766,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3919,12 +3942,15 @@ CONFIG_PINCONF=y
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_BROXTON=m
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_DENVERTON=m
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_IPQ8074 is not set
CONFIG_PINCTRL_LEWISBURG=m
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SINGLE is not set
# CONFIG_PINCTRL_SPRD is not set
@@ -3993,6 +4019,7 @@ CONFIG_PPS_CLIENT_PARPORT=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4042,6 +4069,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -4153,9 +4181,12 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+CONFIG_RETPOLINE=y
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4184,6 +4215,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4264,6 +4296,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4337,6 +4370,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4613,8 +4647,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4749,7 +4785,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
# CONFIG_SILEAD_DMI is not set
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4774,7 +4809,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4806,7 +4840,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4869,7 +4903,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4941,6 +4975,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -4997,14 +5032,17 @@ CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
+CONFIG_SND_SOC_INTEL_HASWELL=m
CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
+CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_SST_ACPI=m
CONFIG_SND_SOC_INTEL_SST=m
+CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m
CONFIG_SND_SOC=m
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9860 is not set
@@ -5070,6 +5108,7 @@ CONFIG_SND_SOC_WM8524=m
# CONFIG_SND_SOC_ZX_AUD96P22 is not set
CONFIG_SND_SONICVIBES=m
# CONFIG_SND_SPI is not set
+CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_TRIDENT=m
CONFIG_SND_USB_6FIRE=m
@@ -5107,7 +5146,6 @@ CONFIG_SONYPI_COMPAT=y
CONFIG_SONYPI=m
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SP5100_TCO=m
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSE_RCU_POINTER=y
@@ -5277,13 +5315,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5323,6 +5362,7 @@ CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THRUSTMASTER_FF=y
# CONFIG_THUNDERBOLT is not set
+CONFIG_THUNDERBOLT_NET=m
# CONFIG_TI_ADC081C is not set
# CONFIG_TI_ADC0832 is not set
# CONFIG_TI_ADC084S021 is not set
@@ -5334,6 +5374,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5355,10 +5396,8 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
CONFIG_TOPSTAR_LAPTOP=m
CONFIG_TOSHIBA_BT_RFKILL=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOSHIBA_HAPS=m
CONFIG_TOSHIBA=m
CONFIG_TOSHIBA_WMI=m
@@ -5383,11 +5422,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5402,6 +5443,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5434,6 +5476,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5461,8 +5504,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5548,6 +5593,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5619,7 +5665,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5853,7 +5898,6 @@ CONFIG_VGA_SWITCHEROO=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5969,7 +6013,6 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMD=m
# CONFIG_VME_BUS is not set
CONFIG_VMWARE_BALLOON=m
@@ -5978,6 +6021,7 @@ CONFIG_VMWARE_VMCI=m
CONFIG_VMWARE_VMCI_VSOCKETS=m
CONFIG_VMXNET3=m
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6013,6 +6057,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6040,7 +6085,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6156,6 +6200,7 @@ CONFIG_XEN_NETDEV_FRONTEND=m
CONFIG_XEN_PCIDEV_BACKEND=m
CONFIG_XEN_PCIDEV_FRONTEND=m
# CONFIG_XEN_PVCALLS_BACKEND is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM=y
CONFIG_XEN_PVH=y
CONFIG_XEN_PV=y
@@ -6175,6 +6220,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-i686-PAEdebug.config b/kernel-i686-PAEdebug.config
index 9bb1564fc..66eff4bd4 100644
--- a/kernel-i686-PAEdebug.config
+++ b/kernel-i686-PAEdebug.config
@@ -72,7 +72,7 @@ CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_PROCFS=y
-# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set
+CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
CONFIG_ACPI_SBS=m
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_TABLE_UPGRADE=y
@@ -82,8 +82,6 @@ CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_WMI=m
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -193,7 +191,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
CONFIG_ALIENWARE_WMI=m
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
# CONFIG_ALIX is not set
@@ -500,9 +497,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -559,6 +558,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -592,6 +592,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -716,6 +717,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -731,6 +734,7 @@ CONFIG_CHR_DEV_ST=m
CONFIG_CHROMEOS_LAPTOP=m
CONFIG_CHROMEOS_PSTORE=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -803,11 +807,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -918,6 +924,7 @@ CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -970,6 +977,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1032,6 +1040,8 @@ CONFIG_DELL_LAPTOP=m
CONFIG_DELL_RBTN=m
# CONFIG_DELL_RBU is not set
CONFIG_DELL_SMBIOS=m
+CONFIG_DELL_SMBIOS_SMM=m
+CONFIG_DELL_SMBIOS_WMI=m
CONFIG_DELL_SMO8800=m
CONFIG_DELL_WMI_AIO=m
CONFIG_DELL_WMI_LED=m
@@ -1099,8 +1109,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1109,6 +1119,10 @@ CONFIG_DPTF_POWER=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+CONFIG_DRM_AMD_DC_DCN1_0=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1132,7 +1146,8 @@ CONFIG_DRM_GMA500=m
# CONFIG_DRM_GMA600 is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1161,10 +1176,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1178,7 +1197,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1193,6 +1213,7 @@ CONFIG_DRM_VMWGFX_FBCON=y
CONFIG_DRM_VMWGFX=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@@ -1364,7 +1385,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1603,7 +1623,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1633,9 +1652,11 @@ CONFIG_GPIO_ICH=m
CONFIG_GPIO_IT87=m
CONFIG_GPIOLIB=y
# CONFIG_GPIO_LYNXPOINT is not set
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_ML_IOH is not set
@@ -1653,6 +1674,7 @@ CONFIG_GPIO_SCH=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1668,6 +1690,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1702,7 +1725,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1879,7 +1902,7 @@ CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYPERV_BALLOON=m
CONFIG_HYPERVISOR_GUEST=y
@@ -2007,6 +2030,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -2182,11 +2206,13 @@ CONFIG_INTEL_RST=m
# CONFIG_INTEL_SCU_IPC is not set
CONFIG_INTEL_SMARTCONNECT=y
CONFIG_INTEL_SOC_DTS_THERMAL=m
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC_CHTWC is not set
CONFIG_INTEL_SOC_PMIC=y
# CONFIG_INTEL_TH is not set
# CONFIG_INTEL_TXT is not set
CONFIG_INTEL_VBTN=m
+CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_INTEL_XWAY_PHY=m
# CONFIG_INTERVAL_TREE_TEST is not set
# CONFIG_INV_MPU6050_I2C is not set
@@ -2218,7 +2244,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2237,6 +2263,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2346,13 +2373,8 @@ CONFIG_IPW2200_QOS=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2364,12 +2386,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
# CONFIG_IRQ_DOMAIN_DEBUG is not set
@@ -2382,12 +2402,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2554,7 +2573,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2566,8 +2584,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_AMD=m
@@ -2605,6 +2621,7 @@ CONFIG_LCD_PLATFORM=m
# CONFIG_LDM_DEBUG is not set
CONFIG_LDM_PARTITION=y
# CONFIG_LEDS_AAT1290 is not set
+CONFIG_LEDS_APU=m
CONFIG_LEDS_AS3645A=m
# CONFIG_LEDS_BCM6328 is not set
# CONFIG_LEDS_BCM6358 is not set
@@ -2646,6 +2663,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2692,10 +2710,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2747,7 +2763,6 @@ CONFIG_LXT_PHY=m
# CONFIG_M586TSC is not set
# CONFIG_M62332 is not set
CONFIG_M686=y
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2775,6 +2790,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2799,7 +2815,6 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
@@ -2807,7 +2822,6 @@ CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
# CONFIG_MCRUSOE is not set
-CONFIG_MCS_FIR=m
# CONFIG_MCYRIXIII is not set
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
@@ -2867,6 +2881,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2993,6 +3010,7 @@ CONFIG_MISDN_W6692=m
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3042,6 +3060,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_ARASAN is not set
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -3166,6 +3185,7 @@ CONFIG_MTD_PHYSMAP_OF=m
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3207,7 +3227,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3395,6 +3415,7 @@ CONFIG_NETROM=m
# CONFIG_NET_SB1000 is not set
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3712,19 +3733,21 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=32
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NSC_GPIO=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
# CONFIG_NUMA is not set
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3743,7 +3766,6 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF_OVERLAY is not set
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
CONFIG_OLPC_XO15_SCI=y
CONFIG_OLPC_XO1=m
CONFIG_OLPC_XO1_PM=y
@@ -3764,6 +3786,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3939,12 +3962,15 @@ CONFIG_PINCONF=y
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_BROXTON=m
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_DENVERTON=m
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_IPQ8074 is not set
CONFIG_PINCTRL_LEWISBURG=m
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SINGLE is not set
# CONFIG_PINCTRL_SPRD is not set
@@ -4013,6 +4039,7 @@ CONFIG_PPS_CLIENT_PARPORT=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4063,6 +4090,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -4174,9 +4202,12 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+CONFIG_RETPOLINE=y
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4205,6 +4236,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4285,6 +4317,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4358,6 +4391,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4634,8 +4668,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4770,7 +4806,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
# CONFIG_SILEAD_DMI is not set
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4795,7 +4830,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4827,7 +4861,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4890,7 +4924,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4963,6 +4997,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -5019,14 +5054,17 @@ CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
+CONFIG_SND_SOC_INTEL_HASWELL=m
CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
+CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_SST_ACPI=m
CONFIG_SND_SOC_INTEL_SST=m
+CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m
CONFIG_SND_SOC=m
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9860 is not set
@@ -5092,6 +5130,7 @@ CONFIG_SND_SOC_WM8524=m
# CONFIG_SND_SOC_ZX_AUD96P22 is not set
CONFIG_SND_SONICVIBES=m
# CONFIG_SND_SPI is not set
+CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_TRIDENT=m
CONFIG_SND_USB_6FIRE=m
@@ -5129,7 +5168,6 @@ CONFIG_SONYPI_COMPAT=y
CONFIG_SONYPI=m
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SP5100_TCO=m
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSE_RCU_POINTER=y
@@ -5299,13 +5337,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5345,6 +5384,7 @@ CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THRUSTMASTER_FF=y
# CONFIG_THUNDERBOLT is not set
+CONFIG_THUNDERBOLT_NET=m
# CONFIG_TI_ADC081C is not set
# CONFIG_TI_ADC0832 is not set
# CONFIG_TI_ADC084S021 is not set
@@ -5356,6 +5396,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5377,10 +5418,8 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
CONFIG_TOPSTAR_LAPTOP=m
CONFIG_TOSHIBA_BT_RFKILL=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOSHIBA_HAPS=m
CONFIG_TOSHIBA=m
CONFIG_TOSHIBA_WMI=m
@@ -5405,11 +5444,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5424,6 +5465,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5456,6 +5498,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5483,8 +5526,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5570,6 +5615,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5641,7 +5687,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5875,7 +5920,6 @@ CONFIG_VGA_SWITCHEROO=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5991,7 +6035,6 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMD=m
# CONFIG_VME_BUS is not set
CONFIG_VMWARE_BALLOON=m
@@ -6000,6 +6043,7 @@ CONFIG_VMWARE_VMCI=m
CONFIG_VMWARE_VMCI_VSOCKETS=m
CONFIG_VMXNET3=m
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6035,6 +6079,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6062,7 +6107,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6178,6 +6222,7 @@ CONFIG_XEN_NETDEV_FRONTEND=m
CONFIG_XEN_PCIDEV_BACKEND=m
CONFIG_XEN_PCIDEV_FRONTEND=m
# CONFIG_XEN_PVCALLS_BACKEND is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM=y
CONFIG_XEN_PVH=y
CONFIG_XEN_PV=y
@@ -6197,6 +6242,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-i686-debug.config b/kernel-i686-debug.config
index 1a81d84c1..ae3147718 100644
--- a/kernel-i686-debug.config
+++ b/kernel-i686-debug.config
@@ -72,7 +72,7 @@ CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_PROCFS=y
-# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set
+CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
CONFIG_ACPI_SBS=m
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_TABLE_UPGRADE=y
@@ -82,8 +82,6 @@ CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_WMI=m
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -193,7 +191,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
CONFIG_ALIENWARE_WMI=m
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
# CONFIG_ALIX is not set
@@ -500,9 +497,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -559,6 +558,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -592,6 +592,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -716,6 +717,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -731,6 +734,7 @@ CONFIG_CHR_DEV_ST=m
CONFIG_CHROMEOS_LAPTOP=m
CONFIG_CHROMEOS_PSTORE=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -803,11 +807,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -918,6 +924,7 @@ CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -970,6 +977,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1032,6 +1040,8 @@ CONFIG_DELL_LAPTOP=m
CONFIG_DELL_RBTN=m
# CONFIG_DELL_RBU is not set
CONFIG_DELL_SMBIOS=m
+CONFIG_DELL_SMBIOS_SMM=m
+CONFIG_DELL_SMBIOS_WMI=m
CONFIG_DELL_SMO8800=m
CONFIG_DELL_WMI_AIO=m
CONFIG_DELL_WMI_LED=m
@@ -1099,8 +1109,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1109,6 +1119,10 @@ CONFIG_DPTF_POWER=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+CONFIG_DRM_AMD_DC_DCN1_0=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1132,7 +1146,8 @@ CONFIG_DRM_GMA500=m
# CONFIG_DRM_GMA600 is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1161,10 +1176,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1178,7 +1197,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1193,6 +1213,7 @@ CONFIG_DRM_VMWGFX_FBCON=y
CONFIG_DRM_VMWGFX=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@@ -1364,7 +1385,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1603,7 +1623,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1633,9 +1652,11 @@ CONFIG_GPIO_ICH=m
CONFIG_GPIO_IT87=m
CONFIG_GPIOLIB=y
# CONFIG_GPIO_LYNXPOINT is not set
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_ML_IOH is not set
@@ -1653,6 +1674,7 @@ CONFIG_GPIO_SCH=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1668,6 +1690,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1702,7 +1725,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1879,7 +1902,7 @@ CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYPERV_BALLOON=m
CONFIG_HYPERVISOR_GUEST=y
@@ -2007,6 +2030,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -2182,11 +2206,13 @@ CONFIG_INTEL_RST=m
# CONFIG_INTEL_SCU_IPC is not set
CONFIG_INTEL_SMARTCONNECT=y
CONFIG_INTEL_SOC_DTS_THERMAL=m
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC_CHTWC is not set
CONFIG_INTEL_SOC_PMIC=y
# CONFIG_INTEL_TH is not set
# CONFIG_INTEL_TXT is not set
CONFIG_INTEL_VBTN=m
+CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_INTEL_XWAY_PHY=m
# CONFIG_INTERVAL_TREE_TEST is not set
# CONFIG_INV_MPU6050_I2C is not set
@@ -2218,7 +2244,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2237,6 +2263,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2346,13 +2373,8 @@ CONFIG_IPW2200_QOS=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2364,12 +2386,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
# CONFIG_IRQ_DOMAIN_DEBUG is not set
@@ -2382,12 +2402,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2554,7 +2573,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2566,8 +2584,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_AMD=m
@@ -2605,6 +2621,7 @@ CONFIG_LCD_PLATFORM=m
# CONFIG_LDM_DEBUG is not set
CONFIG_LDM_PARTITION=y
# CONFIG_LEDS_AAT1290 is not set
+CONFIG_LEDS_APU=m
CONFIG_LEDS_AS3645A=m
# CONFIG_LEDS_BCM6328 is not set
# CONFIG_LEDS_BCM6358 is not set
@@ -2646,6 +2663,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2692,10 +2710,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2747,7 +2763,6 @@ CONFIG_LXT_PHY=m
# CONFIG_M586TSC is not set
# CONFIG_M62332 is not set
CONFIG_M686=y
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2775,6 +2790,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2799,7 +2815,6 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
@@ -2807,7 +2822,6 @@ CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
# CONFIG_MCRUSOE is not set
-CONFIG_MCS_FIR=m
# CONFIG_MCYRIXIII is not set
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
@@ -2867,6 +2881,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2993,6 +3010,7 @@ CONFIG_MISDN_W6692=m
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3042,6 +3060,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_ARASAN is not set
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -3166,6 +3185,7 @@ CONFIG_MTD_PHYSMAP_OF=m
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3207,7 +3227,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3395,6 +3415,7 @@ CONFIG_NETROM=m
# CONFIG_NET_SB1000 is not set
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3712,19 +3733,21 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=32
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NSC_GPIO=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
# CONFIG_NUMA is not set
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3743,7 +3766,6 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF_OVERLAY is not set
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
CONFIG_OLPC_XO15_SCI=y
CONFIG_OLPC_XO1=m
CONFIG_OLPC_XO1_PM=y
@@ -3764,6 +3786,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3939,12 +3962,15 @@ CONFIG_PINCONF=y
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_BROXTON=m
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_DENVERTON=m
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_IPQ8074 is not set
CONFIG_PINCTRL_LEWISBURG=m
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SINGLE is not set
# CONFIG_PINCTRL_SPRD is not set
@@ -4013,6 +4039,7 @@ CONFIG_PPS_CLIENT_PARPORT=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4063,6 +4090,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -4174,9 +4202,12 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+CONFIG_RETPOLINE=y
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4205,6 +4236,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4285,6 +4317,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4358,6 +4391,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4634,8 +4668,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4770,7 +4806,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
# CONFIG_SILEAD_DMI is not set
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4795,7 +4830,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4827,7 +4861,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4890,7 +4924,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4963,6 +4997,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -5019,14 +5054,17 @@ CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
+CONFIG_SND_SOC_INTEL_HASWELL=m
CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
+CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_SST_ACPI=m
CONFIG_SND_SOC_INTEL_SST=m
+CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m
CONFIG_SND_SOC=m
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9860 is not set
@@ -5092,6 +5130,7 @@ CONFIG_SND_SOC_WM8524=m
# CONFIG_SND_SOC_ZX_AUD96P22 is not set
CONFIG_SND_SONICVIBES=m
# CONFIG_SND_SPI is not set
+CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_TRIDENT=m
CONFIG_SND_USB_6FIRE=m
@@ -5129,7 +5168,6 @@ CONFIG_SONYPI_COMPAT=y
CONFIG_SONYPI=m
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SP5100_TCO=m
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSE_RCU_POINTER=y
@@ -5299,13 +5337,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5345,6 +5384,7 @@ CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THRUSTMASTER_FF=y
# CONFIG_THUNDERBOLT is not set
+CONFIG_THUNDERBOLT_NET=m
# CONFIG_TI_ADC081C is not set
# CONFIG_TI_ADC0832 is not set
# CONFIG_TI_ADC084S021 is not set
@@ -5356,6 +5396,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5377,10 +5418,8 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
CONFIG_TOPSTAR_LAPTOP=m
CONFIG_TOSHIBA_BT_RFKILL=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOSHIBA_HAPS=m
CONFIG_TOSHIBA=m
CONFIG_TOSHIBA_WMI=m
@@ -5405,11 +5444,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5424,6 +5465,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5456,6 +5498,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5483,8 +5526,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5570,6 +5615,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5641,7 +5687,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5875,7 +5920,6 @@ CONFIG_VGA_SWITCHEROO=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5991,7 +6035,6 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMD=m
# CONFIG_VME_BUS is not set
CONFIG_VMWARE_BALLOON=m
@@ -6000,6 +6043,7 @@ CONFIG_VMWARE_VMCI=m
CONFIG_VMWARE_VMCI_VSOCKETS=m
CONFIG_VMXNET3=m
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6035,6 +6079,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6062,7 +6107,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6177,6 +6221,7 @@ CONFIG_XEN_NETDEV_FRONTEND=m
CONFIG_XEN_PCIDEV_BACKEND=m
CONFIG_XEN_PCIDEV_FRONTEND=m
# CONFIG_XEN_PVCALLS_BACKEND is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM=y
CONFIG_XEN_PVH=y
CONFIG_XEN_PV=y
@@ -6195,6 +6240,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-i686.config b/kernel-i686.config
index 6549136f6..e6a81c4fb 100644
--- a/kernel-i686.config
+++ b/kernel-i686.config
@@ -72,7 +72,7 @@ CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_PROCFS=y
-# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set
+CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
CONFIG_ACPI_SBS=m
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_TABLE_UPGRADE=y
@@ -82,8 +82,6 @@ CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_WMI=m
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -193,7 +191,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
CONFIG_ALIENWARE_WMI=m
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
# CONFIG_ALIX is not set
@@ -499,9 +496,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -558,6 +557,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -591,6 +591,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -715,6 +716,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -730,6 +733,7 @@ CONFIG_CHR_DEV_ST=m
CONFIG_CHROMEOS_LAPTOP=m
CONFIG_CHROMEOS_PSTORE=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -802,10 +806,12 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -916,6 +922,7 @@ CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -968,6 +975,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1022,6 +1030,8 @@ CONFIG_DELL_LAPTOP=m
CONFIG_DELL_RBTN=m
# CONFIG_DELL_RBU is not set
CONFIG_DELL_SMBIOS=m
+CONFIG_DELL_SMBIOS_SMM=m
+CONFIG_DELL_SMBIOS_WMI=m
CONFIG_DELL_SMO8800=m
CONFIG_DELL_WMI_AIO=m
CONFIG_DELL_WMI_LED=m
@@ -1088,8 +1098,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1098,6 +1108,10 @@ CONFIG_DPTF_POWER=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+CONFIG_DRM_AMD_DC_DCN1_0=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1121,7 +1135,8 @@ CONFIG_DRM_GMA500=m
# CONFIG_DRM_GMA600 is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1150,10 +1165,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1167,7 +1186,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1182,6 +1202,7 @@ CONFIG_DRM_VMWGFX_FBCON=y
CONFIG_DRM_VMWGFX=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@@ -1353,7 +1374,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1585,7 +1605,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1615,9 +1634,11 @@ CONFIG_GPIO_ICH=m
CONFIG_GPIO_IT87=m
CONFIG_GPIOLIB=y
# CONFIG_GPIO_LYNXPOINT is not set
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_ML_IOH is not set
@@ -1635,6 +1656,7 @@ CONFIG_GPIO_SCH=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1650,6 +1672,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1684,7 +1707,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1861,7 +1884,7 @@ CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYPERV_BALLOON=m
CONFIG_HYPERVISOR_GUEST=y
@@ -1989,6 +2012,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -2164,11 +2188,13 @@ CONFIG_INTEL_RST=m
# CONFIG_INTEL_SCU_IPC is not set
CONFIG_INTEL_SMARTCONNECT=y
CONFIG_INTEL_SOC_DTS_THERMAL=m
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC_CHTWC is not set
CONFIG_INTEL_SOC_PMIC=y
# CONFIG_INTEL_TH is not set
# CONFIG_INTEL_TXT is not set
CONFIG_INTEL_VBTN=m
+CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_INTEL_XWAY_PHY=m
# CONFIG_INTERVAL_TREE_TEST is not set
# CONFIG_INV_MPU6050_I2C is not set
@@ -2200,7 +2226,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2219,6 +2245,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2328,13 +2355,8 @@ CONFIG_IPW2200_QOS=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2346,12 +2368,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
# CONFIG_IRQ_DOMAIN_DEBUG is not set
@@ -2364,12 +2384,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2534,7 +2553,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2546,8 +2564,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_AMD=m
@@ -2585,6 +2601,7 @@ CONFIG_LCD_PLATFORM=m
# CONFIG_LDM_DEBUG is not set
CONFIG_LDM_PARTITION=y
# CONFIG_LEDS_AAT1290 is not set
+CONFIG_LEDS_APU=m
CONFIG_LEDS_AS3645A=m
# CONFIG_LEDS_BCM6328 is not set
# CONFIG_LEDS_BCM6358 is not set
@@ -2626,6 +2643,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2672,10 +2690,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2727,7 +2743,6 @@ CONFIG_LXT_PHY=m
# CONFIG_M586TSC is not set
# CONFIG_M62332 is not set
CONFIG_M686=y
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2755,6 +2770,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2779,7 +2795,6 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
@@ -2787,7 +2802,6 @@ CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
# CONFIG_MCRUSOE is not set
-CONFIG_MCS_FIR=m
# CONFIG_MCYRIXIII is not set
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
@@ -2847,6 +2861,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2973,6 +2990,7 @@ CONFIG_MISDN_W6692=m
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3022,6 +3040,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_ARASAN is not set
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -3146,6 +3165,7 @@ CONFIG_MTD_PHYSMAP_OF=m
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3187,7 +3207,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3375,6 +3395,7 @@ CONFIG_NETROM=m
# CONFIG_NET_SB1000 is not set
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3692,19 +3713,21 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=32
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NSC_GPIO=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
# CONFIG_NUMA is not set
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3723,7 +3746,6 @@ CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF_OVERLAY is not set
# CONFIG_OF_UNITTEST is not set
CONFIG_OF=y
-CONFIG_OLD_BELKIN_DONGLE=m
CONFIG_OLPC_XO15_SCI=y
CONFIG_OLPC_XO1=m
CONFIG_OLPC_XO1_PM=y
@@ -3744,6 +3766,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3919,12 +3942,15 @@ CONFIG_PINCONF=y
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_BROXTON=m
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_DENVERTON=m
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_IPQ8074 is not set
CONFIG_PINCTRL_LEWISBURG=m
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SINGLE is not set
# CONFIG_PINCTRL_SPRD is not set
@@ -3993,6 +4019,7 @@ CONFIG_PPS_CLIENT_PARPORT=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4042,6 +4069,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -4153,9 +4181,12 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+CONFIG_RETPOLINE=y
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4184,6 +4215,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4264,6 +4296,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4337,6 +4370,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4613,8 +4647,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4749,7 +4785,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
# CONFIG_SILEAD_DMI is not set
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4774,7 +4809,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4806,7 +4840,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4869,7 +4903,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4941,6 +4975,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -4997,14 +5032,17 @@ CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
+CONFIG_SND_SOC_INTEL_HASWELL=m
CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
+CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_SST_ACPI=m
CONFIG_SND_SOC_INTEL_SST=m
+CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m
CONFIG_SND_SOC=m
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9860 is not set
@@ -5070,6 +5108,7 @@ CONFIG_SND_SOC_WM8524=m
# CONFIG_SND_SOC_ZX_AUD96P22 is not set
CONFIG_SND_SONICVIBES=m
# CONFIG_SND_SPI is not set
+CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_TRIDENT=m
CONFIG_SND_USB_6FIRE=m
@@ -5107,7 +5146,6 @@ CONFIG_SONYPI_COMPAT=y
CONFIG_SONYPI=m
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SP5100_TCO=m
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSE_RCU_POINTER=y
@@ -5277,13 +5315,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5323,6 +5362,7 @@ CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THRUSTMASTER_FF=y
# CONFIG_THUNDERBOLT is not set
+CONFIG_THUNDERBOLT_NET=m
# CONFIG_TI_ADC081C is not set
# CONFIG_TI_ADC0832 is not set
# CONFIG_TI_ADC084S021 is not set
@@ -5334,6 +5374,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5355,10 +5396,8 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
CONFIG_TOPSTAR_LAPTOP=m
CONFIG_TOSHIBA_BT_RFKILL=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOSHIBA_HAPS=m
CONFIG_TOSHIBA=m
CONFIG_TOSHIBA_WMI=m
@@ -5383,11 +5422,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5402,6 +5443,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5434,6 +5476,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5461,8 +5504,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5548,6 +5593,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5619,7 +5665,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5853,7 +5898,6 @@ CONFIG_VGA_SWITCHEROO=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5969,7 +6013,6 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMD=m
# CONFIG_VME_BUS is not set
CONFIG_VMWARE_BALLOON=m
@@ -5978,6 +6021,7 @@ CONFIG_VMWARE_VMCI=m
CONFIG_VMWARE_VMCI_VSOCKETS=m
CONFIG_VMXNET3=m
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6013,6 +6057,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6040,7 +6085,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6155,6 +6199,7 @@ CONFIG_XEN_NETDEV_FRONTEND=m
CONFIG_XEN_PCIDEV_BACKEND=m
CONFIG_XEN_PCIDEV_FRONTEND=m
# CONFIG_XEN_PVCALLS_BACKEND is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM=y
CONFIG_XEN_PVH=y
CONFIG_XEN_PV=y
@@ -6173,6 +6218,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-ppc64-debug.config b/kernel-ppc64-debug.config
index 06bb87cad..1d25295e0 100644
--- a/kernel-ppc64-debug.config
+++ b/kernel-ppc64-debug.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_DEBUG=y
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -150,7 +148,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -484,10 +481,12 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOOTX_TEXT=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -544,6 +543,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -577,6 +577,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -701,6 +702,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -714,6 +717,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -791,12 +795,14 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
# CONFIG_CPU_LITTLE_ENDIAN is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -847,7 +853,7 @@ CONFIG_CRYPTO_DEV_NX_COMPRESS=m
CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV=m
CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES=m
CONFIG_CRYPTO_DEV_NX_ENCRYPT=m
-CONFIG_CRYPTO_DEV_NX=y
+# CONFIG_CRYPTO_DEV_NX is not set
# CONFIG_CRYPTO_DEV_SP_CCP is not set
CONFIG_CRYPTO_DEV_VIRTIO=m
CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
@@ -899,6 +905,7 @@ CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -950,6 +957,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1068,8 +1076,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1077,6 +1085,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1097,7 +1108,8 @@ CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1117,10 +1129,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
# CONFIG_DRM_PANEL_LVDS is not set
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1134,7 +1150,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1147,6 +1164,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTL=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1284,7 +1302,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1520,7 +1537,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1542,9 +1558,11 @@ CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1559,6 +1577,7 @@ CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1574,6 +1593,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1609,7 +1629,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1777,7 +1797,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -1901,6 +1921,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -2042,6 +2063,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2073,7 +2095,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2093,6 +2115,7 @@ CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWERNV=m
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2197,13 +2220,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2215,12 +2233,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_ALL_CPUS=y
@@ -2235,12 +2251,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2404,7 +2419,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2416,8 +2430,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_BOOK3S_64_HV=m
@@ -2496,6 +2508,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2540,10 +2553,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2591,7 +2602,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2619,6 +2629,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2643,14 +2654,12 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
# CONFIG_MCU_MPC8349EMITX is not set
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
@@ -2714,6 +2723,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2832,6 +2844,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -2882,6 +2895,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
# CONFIG_MMC_SDHCI_OF_HLWD is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -2998,6 +3012,7 @@ CONFIG_MTD_POWERNV_FLASH=m
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3032,7 +3047,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3218,6 +3233,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3534,14 +3550,15 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=1024
CONFIG_NR_DEV_DAX=32768
CONFIG_NR_IRQS=512
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
@@ -3549,6 +3566,7 @@ CONFIG_NUMA_BALANCING=y
CONFIG_NUMA=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3565,7 +3583,6 @@ CONFIG_OCFS2_FS_O2CB=m
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF_OVERLAY is not set
# CONFIG_OF_UNITTEST is not set
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMFS_FS is not set
CONFIG_OPAL_PRD=m
CONFIG_OPENVSWITCH_GENEVE=m
@@ -3581,6 +3598,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3724,9 +3742,12 @@ CONFIG_PHYLINK=m
CONFIG_PID_NS=y
# CONFIG_PINCONF is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL is not set
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SPRD is not set
# CONFIG_PINCTRL_SPRD_SC9860 is not set
@@ -3789,6 +3810,7 @@ CONFIG_PPC_DT_CPU_FTRS=y
# CONFIG_PPC_EARLY_DEBUG is not set
CONFIG_PPC_EMULATED_STATS=y
# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set
+# CONFIG_PPC_FAST_ENDIAN_SWITCH is not set
# CONFIG_PPC_IBM_CELL_BLADE is not set
# CONFIG_PPC_ICSWX_PID is not set
# CONFIG_PPC_ICSWX_USE_SIGILL is not set
@@ -3804,6 +3826,7 @@ CONFIG_PPC_POWERNV=y
# CONFIG_PPC_PS3 is not set
CONFIG_PPC_PSERIES=y
# CONFIG_PPC_PTDUMP is not set
+CONFIG_PPC_RADIX_MMU_DEFAULT=y
CONFIG_PPC_RADIX_MMU=y
CONFIG_PPC_SMLPAR=y
CONFIG_PPC_SPLPAR=y
@@ -3829,6 +3852,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -3875,6 +3899,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -3985,9 +4010,11 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4016,6 +4043,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4100,6 +4128,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4171,6 +4200,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4438,8 +4468,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4576,7 +4608,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_GPIO=y
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4601,7 +4632,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4639,7 +4669,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4702,7 +4732,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
# CONFIG_SND_HDA_INTEL is not set
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4777,6 +4807,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -4915,7 +4946,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPAPR_TCE_IOMMU=y
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSEMEM_VMEMMAP=y
@@ -5081,13 +5111,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5132,6 +5163,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5153,8 +5185,6 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5176,11 +5206,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5194,6 +5226,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5226,6 +5259,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5254,8 +5288,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5344,6 +5380,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5415,7 +5452,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5649,7 +5685,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5763,10 +5798,10 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
CONFIG_VSX=y
@@ -5803,6 +5838,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -5831,7 +5867,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WINDFARM_PM112=m
CONFIG_WINDFARM_PM121=m
CONFIG_WINDFARM_PM72=m
@@ -5880,6 +5915,7 @@ CONFIG_WQ_WATCHDOG=y
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
CONFIG_X86_MCELOG_LEGACY=y
CONFIG_X86_PTDUMP=y
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -5887,6 +5923,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-ppc64.config b/kernel-ppc64.config
index e6e9c4e43..d5d3f5d0d 100644
--- a/kernel-ppc64.config
+++ b/kernel-ppc64.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_ALS=m
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -150,7 +148,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -483,10 +480,12 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOOTX_TEXT=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -543,6 +542,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -576,6 +576,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -700,6 +701,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
# CONFIG_CHECKPOINT_RESTORE is not set
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -713,6 +716,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -790,11 +794,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
# CONFIG_CPU_LITTLE_ENDIAN is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -845,7 +851,7 @@ CONFIG_CRYPTO_DEV_NX_COMPRESS=m
CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV=m
CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES=m
CONFIG_CRYPTO_DEV_NX_ENCRYPT=m
-CONFIG_CRYPTO_DEV_NX=y
+# CONFIG_CRYPTO_DEV_NX is not set
# CONFIG_CRYPTO_DEV_SP_CCP is not set
CONFIG_CRYPTO_DEV_VIRTIO=m
CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
@@ -897,6 +903,7 @@ CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -948,6 +955,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1057,8 +1065,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1066,6 +1074,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1086,7 +1097,8 @@ CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1106,10 +1118,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
# CONFIG_DRM_PANEL_LVDS is not set
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1123,7 +1139,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1136,6 +1153,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTL=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1273,7 +1291,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1502,7 +1519,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1524,9 +1540,11 @@ CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1541,6 +1559,7 @@ CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1556,6 +1575,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1591,7 +1611,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1759,7 +1779,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -1883,6 +1903,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -2024,6 +2045,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2055,7 +2077,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2075,6 +2097,7 @@ CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWERNV=m
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2179,13 +2202,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2197,12 +2215,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_ALL_CPUS=y
@@ -2217,12 +2233,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2384,7 +2399,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2396,8 +2410,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_BOOK3S_64_HV=m
@@ -2476,6 +2488,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2520,10 +2533,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2571,7 +2582,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2599,6 +2609,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2622,14 +2633,12 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
# CONFIG_MCU_MPC8349EMITX is not set
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
@@ -2693,6 +2702,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2811,6 +2823,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -2861,6 +2874,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
# CONFIG_MMC_SDHCI_OF_HLWD is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -2976,6 +2990,7 @@ CONFIG_MTD_POWERNV_FLASH=m
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3010,7 +3025,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3196,6 +3211,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3512,14 +3528,15 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=1024
CONFIG_NR_DEV_DAX=32768
CONFIG_NR_IRQS=512
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
@@ -3527,6 +3544,7 @@ CONFIG_NUMA_BALANCING=y
CONFIG_NUMA=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3543,7 +3561,6 @@ CONFIG_OCFS2_FS_O2CB=m
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF_OVERLAY is not set
# CONFIG_OF_UNITTEST is not set
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMFS_FS is not set
CONFIG_OPAL_PRD=m
CONFIG_OPENVSWITCH_GENEVE=m
@@ -3559,6 +3576,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3702,9 +3720,12 @@ CONFIG_PHYLINK=m
CONFIG_PID_NS=y
# CONFIG_PINCONF is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL is not set
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SPRD is not set
# CONFIG_PINCTRL_SPRD_SC9860 is not set
@@ -3767,6 +3788,7 @@ CONFIG_PPC_DT_CPU_FTRS=y
# CONFIG_PPC_EARLY_DEBUG is not set
CONFIG_PPC_EMULATED_STATS=y
# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set
+# CONFIG_PPC_FAST_ENDIAN_SWITCH is not set
# CONFIG_PPC_IBM_CELL_BLADE is not set
# CONFIG_PPC_ICSWX_PID is not set
# CONFIG_PPC_ICSWX_USE_SIGILL is not set
@@ -3782,6 +3804,7 @@ CONFIG_PPC_POWERNV=y
# CONFIG_PPC_PS3 is not set
CONFIG_PPC_PSERIES=y
# CONFIG_PPC_PTDUMP is not set
+CONFIG_PPC_RADIX_MMU_DEFAULT=y
CONFIG_PPC_RADIX_MMU=y
CONFIG_PPC_SMLPAR=y
CONFIG_PPC_SPLPAR=y
@@ -3807,6 +3830,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -3852,6 +3876,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -3962,9 +3987,11 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -3993,6 +4020,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4077,6 +4105,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4148,6 +4177,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4415,8 +4445,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4553,7 +4585,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_GPIO=y
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4578,7 +4609,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4616,7 +4646,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4679,7 +4709,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
# CONFIG_SND_HDA_INTEL is not set
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4753,6 +4783,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -4891,7 +4922,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPAPR_TCE_IOMMU=y
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSEMEM_VMEMMAP=y
@@ -5057,13 +5087,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5108,6 +5139,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5129,8 +5161,6 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5152,11 +5182,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5170,6 +5202,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5202,6 +5235,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5230,8 +5264,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5320,6 +5356,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5391,7 +5428,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5625,7 +5661,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5739,10 +5774,10 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
CONFIG_VSX=y
@@ -5779,6 +5814,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -5807,7 +5843,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WINDFARM_PM112=m
CONFIG_WINDFARM_PM121=m
CONFIG_WINDFARM_PM72=m
@@ -5856,6 +5891,7 @@ CONFIG_WM8350_WATCHDOG=m
# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
CONFIG_X86_MCELOG_LEGACY=y
# CONFIG_X86_PTDUMP is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -5863,6 +5899,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-ppc64le-debug.config b/kernel-ppc64le-debug.config
index 66c67d2c5..6d5162f79 100644
--- a/kernel-ppc64le-debug.config
+++ b/kernel-ppc64le-debug.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_DEBUG=y
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -145,7 +143,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -440,10 +437,12 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOOTX_TEXT=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -500,6 +499,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -533,6 +533,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -657,6 +658,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -670,6 +673,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -745,12 +749,14 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPU_LITTLE_ENDIAN=y
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -801,7 +807,7 @@ CONFIG_CRYPTO_DEV_NX_COMPRESS=m
CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV=m
CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES=m
CONFIG_CRYPTO_DEV_NX_ENCRYPT=m
-CONFIG_CRYPTO_DEV_NX=y
+# CONFIG_CRYPTO_DEV_NX is not set
# CONFIG_CRYPTO_DEV_SP_CCP is not set
CONFIG_CRYPTO_DEV_VIRTIO=m
CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
@@ -853,6 +859,7 @@ CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -904,6 +911,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1023,8 +1031,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1032,6 +1040,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1052,7 +1063,8 @@ CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1072,10 +1084,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
# CONFIG_DRM_PANEL_LVDS is not set
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1089,7 +1105,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1102,6 +1119,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTL=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1237,7 +1255,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1473,7 +1490,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1495,9 +1511,11 @@ CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1512,6 +1530,7 @@ CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1527,6 +1546,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1562,7 +1582,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1729,7 +1749,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -1846,6 +1866,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -1987,6 +2008,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2018,7 +2040,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2038,6 +2060,7 @@ CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWERNV=m
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2142,13 +2165,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2160,12 +2178,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_ALL_CPUS=y
@@ -2180,12 +2196,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2349,7 +2364,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2361,8 +2375,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_BOOK3S_64_HV=m
@@ -2441,6 +2453,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2485,10 +2498,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2536,7 +2547,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2564,6 +2574,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2588,14 +2599,12 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
# CONFIG_MCU_MPC8349EMITX is not set
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
@@ -2659,6 +2668,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2777,6 +2789,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -2827,6 +2840,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
# CONFIG_MMC_SDHCI_OF_HLWD is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -2942,6 +2956,7 @@ CONFIG_MTD_POWERNV_FLASH=m
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -2976,7 +2991,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3162,6 +3177,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3478,14 +3494,15 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=1024
CONFIG_NR_DEV_DAX=32768
CONFIG_NR_IRQS=512
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
@@ -3493,6 +3510,7 @@ CONFIG_NUMA_BALANCING=y
CONFIG_NUMA=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3509,7 +3527,6 @@ CONFIG_OCFS2_FS_O2CB=m
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF_OVERLAY is not set
# CONFIG_OF_UNITTEST is not set
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMFS_FS is not set
CONFIG_OPAL_PRD=m
CONFIG_OPENVSWITCH_GENEVE=m
@@ -3525,6 +3542,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3666,9 +3684,12 @@ CONFIG_PHYLINK=m
CONFIG_PID_NS=y
# CONFIG_PINCONF is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL is not set
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SPRD is not set
# CONFIG_PINCTRL_SPRD_SC9860 is not set
@@ -3728,6 +3749,7 @@ CONFIG_PPC_DT_CPU_FTRS=y
# CONFIG_PPC_EARLY_DEBUG is not set
CONFIG_PPC_EMULATED_STATS=y
# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set
+# CONFIG_PPC_FAST_ENDIAN_SWITCH is not set
# CONFIG_PPC_IBM_CELL_BLADE is not set
# CONFIG_PPC_ICSWX_PID is not set
# CONFIG_PPC_ICSWX_USE_SIGILL is not set
@@ -3743,6 +3765,7 @@ CONFIG_PPC_POWERNV=y
# CONFIG_PPC_PS3 is not set
CONFIG_PPC_PSERIES=y
# CONFIG_PPC_PTDUMP is not set
+CONFIG_PPC_RADIX_MMU_DEFAULT=y
CONFIG_PPC_RADIX_MMU=y
CONFIG_PPC_SMLPAR=y
CONFIG_PPC_SPLPAR=y
@@ -3768,6 +3791,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -3814,6 +3838,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -3924,9 +3949,11 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -3955,6 +3982,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4039,6 +4067,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4110,6 +4139,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4377,8 +4407,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4513,7 +4545,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_GPIO=y
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4538,7 +4569,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4569,7 +4599,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4632,7 +4662,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
# CONFIG_SND_HDA_INTEL is not set
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4705,6 +4735,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -4843,7 +4874,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPAPR_TCE_IOMMU=y
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSEMEM_VMEMMAP=y
@@ -5009,13 +5039,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5060,6 +5091,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5081,8 +5113,6 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5104,11 +5134,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5122,6 +5154,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5154,6 +5187,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5182,8 +5216,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5272,6 +5308,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5343,7 +5380,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5577,7 +5613,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5691,10 +5726,10 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
CONFIG_VSX=y
@@ -5731,6 +5766,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -5759,7 +5795,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
# CONFIG_WINDFARM is not set
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
@@ -5802,6 +5837,7 @@ CONFIG_WQ_WATCHDOG=y
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
CONFIG_X86_MCELOG_LEGACY=y
CONFIG_X86_PTDUMP=y
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -5809,6 +5845,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-ppc64le.config b/kernel-ppc64le.config
index 0d18af253..6b1a70787 100644
--- a/kernel-ppc64le.config
+++ b/kernel-ppc64le.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_ALS=m
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -145,7 +143,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -439,10 +436,12 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOOTX_TEXT=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -499,6 +498,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -532,6 +532,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -656,6 +657,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -669,6 +672,7 @@ CONFIG_CHR_DEV_SCH=m
CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -744,11 +748,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPU_LITTLE_ENDIAN=y
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -799,7 +805,7 @@ CONFIG_CRYPTO_DEV_NX_COMPRESS=m
CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV=m
CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES=m
CONFIG_CRYPTO_DEV_NX_ENCRYPT=m
-CONFIG_CRYPTO_DEV_NX=y
+# CONFIG_CRYPTO_DEV_NX is not set
# CONFIG_CRYPTO_DEV_SP_CCP is not set
CONFIG_CRYPTO_DEV_VIRTIO=m
CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m
@@ -851,6 +857,7 @@ CONFIG_CRYPTO_SHA256=y
CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -902,6 +909,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1012,8 +1020,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1021,6 +1029,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1041,7 +1052,8 @@ CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1061,10 +1073,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
# CONFIG_DRM_PANEL_LVDS is not set
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1078,7 +1094,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1091,6 +1108,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DTL=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@@ -1226,7 +1244,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1455,7 +1472,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1477,9 +1493,11 @@ CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
CONFIG_GPIOLIB=y
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1494,6 +1512,7 @@ CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1509,6 +1528,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1544,7 +1564,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1711,7 +1731,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -1828,6 +1848,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -1969,6 +1990,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -2000,7 +2022,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2020,6 +2042,7 @@ CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWERNV=m
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2124,13 +2147,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2142,12 +2160,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_ALL_CPUS=y
@@ -2162,12 +2178,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2329,7 +2344,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2341,8 +2355,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_BOOK3S_64_HV=m
@@ -2421,6 +2433,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2465,10 +2478,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2516,7 +2527,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2544,6 +2554,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2567,14 +2578,12 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
# CONFIG_MCU_MPC8349EMITX is not set
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
@@ -2638,6 +2647,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2756,6 +2768,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -2806,6 +2819,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
# CONFIG_MMC_SDHCI_OF_HLWD is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -2920,6 +2934,7 @@ CONFIG_MTD_POWERNV_FLASH=m
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -2954,7 +2969,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3140,6 +3155,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3456,14 +3472,15 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=1024
CONFIG_NR_DEV_DAX=32768
CONFIG_NR_IRQS=512
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y
@@ -3471,6 +3488,7 @@ CONFIG_NUMA_BALANCING=y
CONFIG_NUMA=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3487,7 +3505,6 @@ CONFIG_OCFS2_FS_O2CB=m
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF_OVERLAY is not set
# CONFIG_OF_UNITTEST is not set
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMFS_FS is not set
CONFIG_OPAL_PRD=m
CONFIG_OPENVSWITCH_GENEVE=m
@@ -3503,6 +3520,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3644,9 +3662,12 @@ CONFIG_PHYLINK=m
CONFIG_PID_NS=y
# CONFIG_PINCONF is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL is not set
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SPRD is not set
# CONFIG_PINCTRL_SPRD_SC9860 is not set
@@ -3706,6 +3727,7 @@ CONFIG_PPC_DT_CPU_FTRS=y
# CONFIG_PPC_EARLY_DEBUG is not set
CONFIG_PPC_EMULATED_STATS=y
# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set
+# CONFIG_PPC_FAST_ENDIAN_SWITCH is not set
# CONFIG_PPC_IBM_CELL_BLADE is not set
# CONFIG_PPC_ICSWX_PID is not set
# CONFIG_PPC_ICSWX_USE_SIGILL is not set
@@ -3721,6 +3743,7 @@ CONFIG_PPC_POWERNV=y
# CONFIG_PPC_PS3 is not set
CONFIG_PPC_PSERIES=y
# CONFIG_PPC_PTDUMP is not set
+CONFIG_PPC_RADIX_MMU_DEFAULT=y
CONFIG_PPC_RADIX_MMU=y
CONFIG_PPC_SMLPAR=y
CONFIG_PPC_SPLPAR=y
@@ -3746,6 +3769,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -3791,6 +3815,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -3901,9 +3926,11 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -3932,6 +3959,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4016,6 +4044,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4087,6 +4116,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4354,8 +4384,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4490,7 +4522,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SIMPLE_GPIO=y
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4515,7 +4546,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4546,7 +4576,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4609,7 +4639,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
# CONFIG_SND_HDA_INTEL is not set
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4681,6 +4711,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -4819,7 +4850,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPAPR_TCE_IOMMU=y
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSEMEM_VMEMMAP=y
@@ -4985,13 +5015,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5036,6 +5067,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5057,8 +5089,6 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5080,11 +5110,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5098,6 +5130,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5130,6 +5163,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5158,8 +5192,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5248,6 +5284,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5319,7 +5356,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5553,7 +5589,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5667,10 +5702,10 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
# CONFIG_VME_BUS is not set
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
CONFIG_VSX=y
@@ -5707,6 +5742,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -5735,7 +5771,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
# CONFIG_WINDFARM is not set
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
@@ -5778,6 +5813,7 @@ CONFIG_WM8350_WATCHDOG=m
# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
CONFIG_X86_MCELOG_LEGACY=y
# CONFIG_X86_PTDUMP is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -5785,6 +5821,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-s390x-debug.config b/kernel-s390x-debug.config
index acca1bb10..598d7165f 100644
--- a/kernel-s390x-debug.config
+++ b/kernel-s390x-debug.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_DEBUG=y
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -145,7 +143,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
# CONFIG_ALIM7101_WDT is not set
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -153,6 +150,7 @@ CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
CONFIG_ALTERA_MSGDMA=m
# CONFIG_ALTERA_STAPL is not set
# CONFIG_ALTERA_TSE is not set
+CONFIG_ALTERNATIVES=y
CONFIG_ALX=m
# CONFIG_AM2315 is not set
CONFIG_AMD8111_ETH=m
@@ -441,9 +439,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -500,6 +500,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -533,6 +534,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -657,6 +659,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
# CONFIG_CHARGER_SMB347 is not set
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHECK_STACK=y
CONFIG_CHELSIO_T1_1G=y
@@ -672,6 +676,7 @@ CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
CONFIG_CHSC_SCH=m
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -746,11 +751,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE is not set
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -850,6 +857,7 @@ CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SHA512_S390=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -906,6 +914,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1022,8 +1031,8 @@ CONFIG_DM_ZONED=m
# CONFIG_DNET is not set
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
# CONFIG_DP83640_PHY is not set
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1031,6 +1040,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1051,7 +1063,8 @@ CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1072,10 +1085,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
# CONFIG_DRM_PANEL_LVDS is not set
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1088,7 +1105,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1101,6 +1119,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@@ -1234,7 +1253,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
# CONFIG_ETHOC is not set
@@ -1448,7 +1466,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1469,9 +1486,11 @@ CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
# CONFIG_GPIOLIB is not set
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1486,6 +1505,7 @@ CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1499,6 +1519,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1531,7 +1552,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1689,7 +1710,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -1798,6 +1819,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
# CONFIG_IIO is not set
@@ -1939,6 +1961,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -1970,7 +1993,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -1990,6 +2013,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2094,13 +2118,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
+# CONFIG_IPX is not set
# CONFIG_IRDA is not set
-# CONFIG_IRDA_ULTRA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2112,12 +2131,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_DOMAIN_DEBUG=y
@@ -2130,12 +2147,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2298,7 +2314,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2310,8 +2325,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM=m
@@ -2384,6 +2397,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2428,10 +2442,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2478,7 +2490,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2505,6 +2516,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARCH_ZEC12=y
@@ -2530,14 +2542,12 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -2601,6 +2611,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2718,6 +2731,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -2767,6 +2781,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_ARASAN is not set
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -2878,6 +2893,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -2912,7 +2928,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3099,6 +3115,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3411,13 +3428,14 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
# CONFIG_NOZOMI is not set
CONFIG_NR_CPUS=64
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
# CONFIG_NUMA_BALANCING_DEFAULT_ENABLED is not set
@@ -3426,6 +3444,7 @@ CONFIG_NUMA_EMU=y
CONFIG_NUMA=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3441,7 +3460,6 @@ CONFIG_OCFS2_FS_O2CB=m
# CONFIG_OCFS2_FS_STATS is not set
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF is not set
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMFS_FS is not set
CONFIG_OPENVSWITCH_GENEVE=m
CONFIG_OPENVSWITCH_GRE=m
@@ -3456,6 +3474,7 @@ CONFIG_ORINOCO_USB=m
# CONFIG_OSF_PARTITION is not set
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3599,9 +3618,12 @@ CONFIG_PHYLINK=m
CONFIG_PID_NS=y
# CONFIG_PINCONF is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL is not set
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SPRD is not set
# CONFIG_PINCTRL_SPRD_SC9860 is not set
@@ -3661,6 +3683,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_TRACER is not set
@@ -3704,6 +3727,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QDIO=m
CONFIG_QEDE=m
CONFIG_QEDF=m
@@ -3817,10 +3841,12 @@ CONFIG_REISERFS_PROC_INFO=y
CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_CONTROLLER is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -3849,6 +3875,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -3929,6 +3956,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4010,6 +4038,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4280,8 +4309,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4412,7 +4443,6 @@ CONFIG_SHARED_KERNEL=y
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
# CONFIG_SIMPLE_PM_BUS is not set
CONFIG_SIS190=m
@@ -4436,7 +4466,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4469,7 +4498,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4532,7 +4561,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4604,6 +4633,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -4742,7 +4772,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
# CONFIG_SOUND is not set
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPARSE_RCU_POINTER=y
# CONFIG_SPEAKUP is not set
# CONFIG_SPI_ALTERA is not set
@@ -4904,13 +4933,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -4955,6 +4985,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
# CONFIG_TIFM_CORE is not set
@@ -4982,8 +5013,6 @@ CONFIG_TN3270_CONSOLE=y
CONFIG_TN3270_FS=m
CONFIG_TN3270_TTY=y
CONFIG_TN3270=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -5005,11 +5034,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5023,6 +5054,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5055,6 +5087,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5082,8 +5115,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5168,6 +5203,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5239,7 +5275,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5471,7 +5506,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5585,13 +5619,13 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMCP_CMA_SIZE=4
CONFIG_VMCP=y
# CONFIG_VME_BUS is not set
CONFIG_VMLOGRDR=m
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -5627,6 +5661,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -5655,7 +5690,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
# CONFIG_WIRELESS_EXT is not set
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -5697,6 +5731,7 @@ CONFIG_WQ_WATCHDOG=y
CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y
CONFIG_X86_MCELOG_LEGACY=y
CONFIG_X86_PTDUMP=y
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -5704,6 +5739,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-s390x.config b/kernel-s390x.config
index b5c7f851f..1f7a53fa7 100644
--- a/kernel-s390x.config
+++ b/kernel-s390x.config
@@ -45,8 +45,6 @@ CONFIG_ACPI_ALS=m
# CONFIG_ACPI_NFIT is not set
CONFIG_ACPI_PCI_SLOT=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -145,7 +143,6 @@ CONFIG_AIX_PARTITION=y
# CONFIG_AK8974 is not set
# CONFIG_AK8975 is not set
# CONFIG_AL3320A is not set
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
# CONFIG_ALIM7101_WDT is not set
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -153,6 +150,7 @@ CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
CONFIG_ALTERA_MSGDMA=m
# CONFIG_ALTERA_STAPL is not set
# CONFIG_ALTERA_TSE is not set
+CONFIG_ALTERNATIVES=y
CONFIG_ALX=m
# CONFIG_AM2315 is not set
CONFIG_AMD8111_ETH=m
@@ -440,9 +438,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -499,6 +499,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -532,6 +533,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
# CONFIG_BTT is not set
@@ -656,6 +658,8 @@ CONFIG_CGROUPS=y
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
# CONFIG_CHARGER_SMB347 is not set
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHECK_STACK=y
CONFIG_CHELSIO_T1_1G=y
@@ -671,6 +675,7 @@ CONFIG_CHR_DEV_SG=y
CONFIG_CHR_DEV_ST=m
CONFIG_CHROME_PLATFORMS=y
CONFIG_CHSC_SCH=m
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
# CONFIG_CIFS_DEBUG2 is not set
@@ -745,10 +750,12 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
# CONFIG_CPU_IDLE is not set
+# CONFIG_CPU_ISOLATION is not set
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -848,6 +855,7 @@ CONFIG_CRYPTO_SHA3=m
CONFIG_CRYPTO_SHA512=m
CONFIG_CRYPTO_SHA512_S390=m
CONFIG_CRYPTO_SIMD=y
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -904,6 +912,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1011,8 +1020,8 @@ CONFIG_DM_ZONED=m
# CONFIG_DNET is not set
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
# CONFIG_DP83640_PHY is not set
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1020,6 +1029,9 @@ CONFIG_DPOT_DAC=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1040,7 +1052,8 @@ CONFIG_DRM_FBDEV_EMULATION=y
CONFIG_DRM_FBDEV_OVERALLOC=100
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1061,10 +1074,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
# CONFIG_DRM_PANEL_LVDS is not set
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1077,7 +1094,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1090,6 +1108,7 @@ CONFIG_DRM_VIA=m
CONFIG_DRM_VIRTIO_GPU=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@@ -1223,7 +1242,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
# CONFIG_ETHOC is not set
@@ -1430,7 +1448,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1451,9 +1468,11 @@ CONFIG_GPIO_EXAR=m
# CONFIG_GPIO_GRGPIO is not set
# CONFIG_GPIO_IT87 is not set
# CONFIG_GPIOLIB is not set
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_MOCKUP is not set
@@ -1468,6 +1487,7 @@ CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1481,6 +1501,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1513,7 +1534,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1671,7 +1692,7 @@ CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYSDN_CAPI=y
CONFIG_HYSDN=m
@@ -1780,6 +1801,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
# CONFIG_IIO is not set
@@ -1921,6 +1943,7 @@ CONFIG_INPUT=y
CONFIG_INPUT_YEALINK=m
# CONFIG_INTEGRITY is not set
# CONFIG_INTEL_IDMA64 is not set
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
# CONFIG_INTEL_SOC_PMIC is not set
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_XWAY_PHY=m
@@ -1952,7 +1975,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -1972,6 +1995,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2076,13 +2100,8 @@ CONFIG_IPVTAP=m
# CONFIG_IPW2200 is not set
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
+# CONFIG_IPX is not set
# CONFIG_IRDA is not set
-# CONFIG_IRDA_ULTRA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2094,12 +2113,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
CONFIG_IRQ_DOMAIN_DEBUG=y
@@ -2112,12 +2129,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2278,7 +2294,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2290,8 +2305,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM=m
@@ -2364,6 +2377,7 @@ CONFIG_LEDS_REGULATOR=m
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2408,10 +2422,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2458,7 +2470,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2485,6 +2496,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX is not set
# CONFIG_MAILBOX_TEST is not set
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARCH_ZEC12=y
@@ -2509,14 +2521,12 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -2580,6 +2590,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -2697,6 +2710,7 @@ CONFIG_MISDN_NETJET=m
CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -2746,6 +2760,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_ARASAN is not set
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -2856,6 +2871,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -2890,7 +2906,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3077,6 +3093,7 @@ CONFIG_NET_POLL_CONTROLLER=y
CONFIG_NETROM=m
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3389,13 +3406,14 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
# CONFIG_NOZOMI is not set
CONFIG_NR_CPUS=64
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_IDT=m
# CONFIG_NTB is not set
+CONFIG_NTB_SWITCHTEC=m
# CONFIG_NTFS_FS is not set
CONFIG_NTP_PPS=y
# CONFIG_NUMA_BALANCING_DEFAULT_ENABLED is not set
@@ -3404,6 +3422,7 @@ CONFIG_NUMA_EMU=y
CONFIG_NUMA=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3419,7 +3438,6 @@ CONFIG_OCFS2_FS_O2CB=m
# CONFIG_OCFS2_FS_STATS is not set
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF is not set
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMFS_FS is not set
CONFIG_OPENVSWITCH_GENEVE=m
CONFIG_OPENVSWITCH_GRE=m
@@ -3434,6 +3452,7 @@ CONFIG_ORINOCO_USB=m
# CONFIG_OSF_PARTITION is not set
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3577,9 +3596,12 @@ CONFIG_PHYLINK=m
CONFIG_PID_NS=y
# CONFIG_PINCONF is not set
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
# CONFIG_PINCTRL_IPQ8074 is not set
# CONFIG_PINCTRL is not set
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SPRD is not set
# CONFIG_PINCTRL_SPRD_SC9860 is not set
@@ -3639,6 +3661,7 @@ CONFIG_PPS_CLIENT_LDISC=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_TRACER is not set
@@ -3681,6 +3704,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QDIO=m
CONFIG_QEDE=m
CONFIG_QEDF=m
@@ -3794,10 +3818,12 @@ CONFIG_REISERFS_PROC_INFO=y
CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_CONTROLLER is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -3826,6 +3852,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -3906,6 +3933,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -3987,6 +4015,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4257,8 +4286,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4389,7 +4420,6 @@ CONFIG_SHARED_KERNEL=y
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
# CONFIG_SIMPLE_PM_BUS is not set
CONFIG_SIS190=m
@@ -4413,7 +4443,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4446,7 +4475,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4509,7 +4538,7 @@ CONFIG_SND_HDA_INPUT_BEEP_MODE=0
CONFIG_SND_HDA_INPUT_BEEP=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_PATCH_LOADER=y
-CONFIG_SND_HDA_POWER_SAVE_DEFAULT=1
+CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_POWER_SAVE=y
CONFIG_SND_HDA_PREALLOC_SIZE=4096
CONFIG_SND_HDA_RECONFIG=y
@@ -4580,6 +4609,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -4718,7 +4748,6 @@ CONFIG_SONY_FF=y
# CONFIG_SONYPI is not set
# CONFIG_SOUND is not set
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SPARSE_RCU_POINTER=y
# CONFIG_SPEAKUP is not set
# CONFIG_SPI_ALTERA is not set
@@ -4880,13 +4909,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -4931,6 +4961,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
# CONFIG_TIFM_CORE is not set
@@ -4958,8 +4989,6 @@ CONFIG_TN3270_CONSOLE=y
CONFIG_TN3270_FS=m
CONFIG_TN3270_TTY=y
CONFIG_TN3270=y
-CONFIG_TOIM3232_DONGLE=m
-# CONFIG_TOSHIBA_FIR is not set
# CONFIG_TOUCHSCREEN_AD7877 is not set
CONFIG_TOUCHSCREEN_AD7879_I2C=m
# CONFIG_TOUCHSCREEN_AD7879 is not set
@@ -4981,11 +5010,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
# CONFIG_TOUCHSCREEN_GOODIX is not set
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -4999,6 +5030,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5031,6 +5063,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5058,8 +5091,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5144,6 +5179,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5215,7 +5251,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5447,7 +5482,6 @@ CONFIG_VGA_CONSOLE=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -5561,13 +5595,13 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMCP_CMA_SIZE=4
CONFIG_VMCP=y
# CONFIG_VME_BUS is not set
CONFIG_VMLOGRDR=m
# CONFIG_VMXNET3 is not set
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -5603,6 +5637,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -5631,7 +5666,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
# CONFIG_WIRELESS_EXT is not set
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -5673,6 +5707,7 @@ CONFIG_WM8350_WATCHDOG=m
# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
CONFIG_X86_MCELOG_LEGACY=y
# CONFIG_X86_PTDUMP is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XFRM_MIGRATE=y
CONFIG_XFRM_STATISTICS=y
CONFIG_XFRM_SUB_POLICY=y
@@ -5680,6 +5715,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-x86_64-debug.config b/kernel-x86_64-debug.config
index 99f92b549..a9ce3a5a6 100644
--- a/kernel-x86_64-debug.config
+++ b/kernel-x86_64-debug.config
@@ -75,7 +75,7 @@ CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_PROCFS=y
-# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set
+CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
CONFIG_ACPI_SBS=m
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_TABLE_UPGRADE=y
@@ -85,8 +85,6 @@ CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_WMI=m
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -196,7 +194,6 @@ CONFIG_AIX_PARTITION=y
CONFIG_AK8975=m
# CONFIG_AL3320A is not set
CONFIG_ALIENWARE_WMI=m
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -512,9 +509,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -571,6 +570,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -604,6 +604,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
CONFIG_BTT=y
@@ -724,11 +725,14 @@ CONFIG_CHARGER_BQ24190=m
# CONFIG_CHARGER_ISP1704 is not set
# CONFIG_CHARGER_LP8727 is not set
# CONFIG_CHARGER_LTC3651 is not set
+# CONFIG_CHARGER_MANAGER is not set
# CONFIG_CHARGER_MAX8903 is not set
# CONFIG_CHARGER_PCF50633 is not set
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -744,6 +748,7 @@ CONFIG_CHR_DEV_ST=m
CONFIG_CHROMEOS_LAPTOP=m
CONFIG_CHROMEOS_PSTORE=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CHT_WC_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
@@ -821,11 +826,13 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+CONFIG_CPU_ISOLATION=y
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -957,6 +964,7 @@ CONFIG_CRYPTO_SHA512_MB=m
CONFIG_CRYPTO_SHA512_SSSE3=m
CONFIG_CRYPTO_SIMD=y
# CONFIG_CRYPTO_SKEIN is not set
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -1009,6 +1017,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y
CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=4096
@@ -1071,6 +1080,8 @@ CONFIG_DELL_LAPTOP=m
CONFIG_DELL_RBTN=m
# CONFIG_DELL_RBU is not set
CONFIG_DELL_SMBIOS=m
+CONFIG_DELL_SMBIOS_SMM=m
+CONFIG_DELL_SMBIOS_WMI=m
CONFIG_DELL_SMO8800=m
CONFIG_DELL_WMI_AIO=m
CONFIG_DELL_WMI_LED=m
@@ -1144,8 +1155,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1154,6 +1165,10 @@ CONFIG_DPTF_POWER=m
CONFIG_DRAGONRISE_FF=y
CONFIG_DRBD_FAULT_INJECTION=y
CONFIG_DRM_AMD_ACP=y
+CONFIG_DRM_AMD_DC_DCN1_0=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1177,7 +1192,8 @@ CONFIG_DRM_GMA500=m
# CONFIG_DRM_GMA600 is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1206,10 +1222,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1223,7 +1243,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1238,6 +1259,7 @@ CONFIG_DRM_VMWGFX_FBCON=y
CONFIG_DRM_VMWGFX=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@@ -1409,7 +1431,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1645,7 +1666,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1675,9 +1695,11 @@ CONFIG_GPIO_ICH=m
CONFIG_GPIO_IT87=m
CONFIG_GPIOLIB=y
# CONFIG_GPIO_LYNXPOINT is not set
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_ML_IOH is not set
@@ -1694,6 +1716,7 @@ CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1709,6 +1732,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1746,7 +1770,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1920,7 +1944,7 @@ CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYPERV_BALLOON=m
CONFIG_HYPERVISOR_GUEST=y
@@ -2052,6 +2076,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -2184,6 +2209,7 @@ CONFIG_INPUT_POLLDEV=m
CONFIG_INPUT_POWERMATE=m
# CONFIG_INPUT_PWM_BEEPER is not set
# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
CONFIG_INPUT_RETU_PWRBUTTON=m
CONFIG_INPUT_RK805_PWRKEY=m
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
@@ -2235,12 +2261,14 @@ CONFIG_INTEL_RST=m
# CONFIG_INTEL_SCU_IPC is not set
CONFIG_INTEL_SMARTCONNECT=y
CONFIG_INTEL_SOC_DTS_THERMAL=m
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
CONFIG_INTEL_SOC_PMIC_CHTWC=y
CONFIG_INTEL_SOC_PMIC=y
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_TURBO_MAX_3=y
CONFIG_INTEL_TXT=y
CONFIG_INTEL_VBTN=m
+CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_INTEL_XWAY_PHY=m
# CONFIG_INTERVAL_TREE_TEST is not set
CONFIG_INV_MPU6050_I2C=m
@@ -2273,7 +2301,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2292,6 +2320,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2401,13 +2430,8 @@ CONFIG_IPW2200_QOS=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2419,12 +2443,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
# CONFIG_IRQ_DOMAIN_DEBUG is not set
@@ -2438,12 +2460,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2610,7 +2631,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2622,8 +2642,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_AMD=m
@@ -2660,6 +2678,7 @@ CONFIG_LCD_PLATFORM=m
# CONFIG_LDM_DEBUG is not set
CONFIG_LDM_PARTITION=y
# CONFIG_LEDS_AAT1290 is not set
+CONFIG_LEDS_APU=m
CONFIG_LEDS_AS3645A=m
# CONFIG_LEDS_BCM6328 is not set
# CONFIG_LEDS_BCM6358 is not set
@@ -2696,11 +2715,12 @@ CONFIG_LEDS_NIC78BX=m
# CONFIG_LEDS_PCA955X is not set
# CONFIG_LEDS_PCA963X is not set
# CONFIG_LEDS_PWM is not set
-CONFIG_LEDS_REGULATOR=m
+# CONFIG_LEDS_REGULATOR is not set
# CONFIG_LEDS_S3C24XX is not set
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2747,10 +2767,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2797,7 +2815,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2825,6 +2842,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_MAILBOX=y
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2848,14 +2866,12 @@ CONFIG_MAXSMP=y
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -2918,6 +2934,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -3043,6 +3062,7 @@ CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
# CONFIG_MK8 is not set
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3093,6 +3113,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_ARASAN is not set
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -3210,6 +3231,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3248,7 +3270,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3437,6 +3459,7 @@ CONFIG_NETROM=m
# CONFIG_NET_SB1000 is not set
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3758,11 +3781,11 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+CONFIG_NOUVEAU_DEBUG_MMU=y
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=8192
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_AMD=m
CONFIG_NTB_IDT=m
CONFIG_NTB_INTEL=m
@@ -3770,6 +3793,7 @@ CONFIG_NTB=m
CONFIG_NTB_NETDEV=m
CONFIG_NTB_PERF=m
CONFIG_NTB_PINGPONG=m
+CONFIG_NTB_SWITCHTEC=m
CONFIG_NTB_TOOL=m
CONFIG_NTB_TRANSPORT=m
# CONFIG_NTFS_FS is not set
@@ -3782,6 +3806,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3798,7 +3823,6 @@ CONFIG_OCFS2_FS_O2CB=m
# CONFIG_OCFS2_FS_STATS is not set
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF is not set
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMFS_FS is not set
CONFIG_OPENVSWITCH_GENEVE=m
CONFIG_OPENVSWITCH_GRE=m
@@ -3813,6 +3837,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3824,6 +3849,7 @@ CONFIG_PACKET=y
# CONFIG_PAGE_EXTENSION is not set
# CONFIG_PAGE_OWNER is not set
# CONFIG_PAGE_POISONING is not set
+CONFIG_PAGE_TABLE_ISOLATION=y
CONFIG_PANASONIC_LAPTOP=m
# CONFIG_PANEL is not set
# CONFIG_PANIC_ON_OOPS is not set
@@ -3983,12 +4009,15 @@ CONFIG_PINCONF=y
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_BROXTON=m
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_DENVERTON=m
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_IPQ8074 is not set
CONFIG_PINCTRL_LEWISBURG=m
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SPRD is not set
# CONFIG_PINCTRL_SPRD_SC9860 is not set
@@ -4054,6 +4083,7 @@ CONFIG_PPS_CLIENT_PARPORT=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4104,6 +4134,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -4201,11 +4232,44 @@ CONFIG_REALTEK_PHY=m
CONFIG_REFCOUNT_FULL=y
CONFIG_REGMAP_I2C=y
CONFIG_REGMAP=y
-CONFIG_REGULATOR_BD9571MWV=m
+# CONFIG_REGULATOR_ACT8865 is not set
+# CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_AXP20X is not set
+# CONFIG_REGULATOR_BD9571MWV is not set
+# CONFIG_REGULATOR_DA9210 is not set
+# CONFIG_REGULATOR_DA9211 is not set
# CONFIG_REGULATOR_DEBUG is not set
-# CONFIG_REGULATOR is not set
+# CONFIG_REGULATOR_FAN53555 is not set
+# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
+# CONFIG_REGULATOR_GPIO is not set
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_ISL9305 is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_LTC3589 is not set
+# CONFIG_REGULATOR_LTC3676 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+# CONFIG_REGULATOR_MT6311 is not set
+# CONFIG_REGULATOR_PFUZE100 is not set
+# CONFIG_REGULATOR_PV88060 is not set
+# CONFIG_REGULATOR_PV88080 is not set
+# CONFIG_REGULATOR_PV88090 is not set
+# CONFIG_REGULATOR_PWM is not set
+# CONFIG_REGULATOR_TPS51632 is not set
+# CONFIG_REGULATOR_TPS62360 is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
# CONFIG_REGULATOR_TPS65132 is not set
+# CONFIG_REGULATOR_TPS6524X is not set
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
CONFIG_REGULATOR_VCTRL=m
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+CONFIG_REGULATOR=y
# CONFIG_REISERFS_CHECK is not set
CONFIG_REISERFS_FS=m
CONFIG_REISERFS_FS_POSIX_ACL=y
@@ -4216,9 +4280,12 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+CONFIG_RETPOLINE=y
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4247,6 +4314,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4327,6 +4395,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4400,6 +4469,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4661,6 +4731,7 @@ CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2978=m
+# CONFIG_SENSORS_LTC2978_REGULATOR is not set
CONFIG_SENSORS_LTC2990=m
CONFIG_SENSORS_LTC3815=m
CONFIG_SENSORS_LTC4151=m
@@ -4677,8 +4748,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4818,7 +4891,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SILEAD_DMI=y
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4843,7 +4915,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4875,7 +4946,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -5011,6 +5082,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -5067,14 +5139,17 @@ CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
+CONFIG_SND_SOC_INTEL_HASWELL=m
CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
+CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_SST_ACPI=m
CONFIG_SND_SOC_INTEL_SST=m
+CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m
CONFIG_SND_SOC=m
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9860 is not set
@@ -5140,6 +5215,7 @@ CONFIG_SND_SOC_WM8524=m
# CONFIG_SND_SOC_ZX_AUD96P22 is not set
CONFIG_SND_SONICVIBES=m
# CONFIG_SND_SPI is not set
+CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_TRIDENT=m
CONFIG_SND_USB_6FIRE=m
@@ -5177,7 +5253,6 @@ CONFIG_SONYPI_COMPAT=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SP5100_TCO=m
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSEMEM_EXTREME=y
@@ -5350,13 +5425,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5396,6 +5472,7 @@ CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THRUSTMASTER_FF=y
CONFIG_THUNDERBOLT=m
+CONFIG_THUNDERBOLT_NET=m
# CONFIG_TI_ADC081C is not set
# CONFIG_TI_ADC0832 is not set
# CONFIG_TI_ADC084S021 is not set
@@ -5407,6 +5484,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5428,10 +5506,8 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
CONFIG_TOPSTAR_LAPTOP=m
CONFIG_TOSHIBA_BT_RFKILL=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOSHIBA_HAPS=m
CONFIG_TOSHIBA_WMI=m
# CONFIG_TOUCHSCREEN_AD7877 is not set
@@ -5455,11 +5531,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5474,6 +5552,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5506,6 +5585,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5534,8 +5614,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5621,6 +5703,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5692,7 +5775,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5927,7 +6009,6 @@ CONFIG_VGA_SWITCHEROO=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -6043,7 +6124,6 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMAP_STACK=y
CONFIG_VMD=m
# CONFIG_VME_BUS is not set
@@ -6055,6 +6135,7 @@ CONFIG_VMXNET3=m
CONFIG_VOP_BUS=m
CONFIG_VOP=m
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6090,6 +6171,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6117,7 +6199,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6225,6 +6306,7 @@ CONFIG_XEN_NETDEV_FRONTEND=m
CONFIG_XEN_PCIDEV_BACKEND=m
CONFIG_XEN_PCIDEV_FRONTEND=m
# CONFIG_XEN_PVCALLS_BACKEND is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM=y
CONFIG_XEN_PVH=y
CONFIG_XEN_PV=y
@@ -6245,6 +6327,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel-x86_64.config b/kernel-x86_64.config
index 7f94bd96e..e35b4df4c 100644
--- a/kernel-x86_64.config
+++ b/kernel-x86_64.config
@@ -75,7 +75,7 @@ CONFIG_ACPI_PROCESSOR_AGGREGATOR=m
CONFIG_ACPI_PROCESSOR=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_PROCFS=y
-# CONFIG_ACPI_REV_OVERRIDE_POSSIBLE is not set
+CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
CONFIG_ACPI_SBS=m
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_TABLE_UPGRADE=y
@@ -85,8 +85,6 @@ CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_WMI=m
CONFIG_ACPI=y
# CONFIG_ACQUIRE_WDT is not set
-CONFIG_ACT200L_DONGLE=m
-CONFIG_ACTISYS_DONGLE=m
# CONFIG_AD2S1200 is not set
# CONFIG_AD2S1210 is not set
# CONFIG_AD2S90 is not set
@@ -196,7 +194,6 @@ CONFIG_AIX_PARTITION=y
CONFIG_AK8975=m
# CONFIG_AL3320A is not set
CONFIG_ALIENWARE_WMI=m
-CONFIG_ALI_FIR=m
CONFIG_ALIM1535_WDT=m
CONFIG_ALIM7101_WDT=m
CONFIG_ALLOW_LOCKDOWN_LIFT_BY_SYSRQ=y
@@ -511,9 +508,11 @@ CONFIG_BONDING=m
# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set
# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set
+# CONFIG_BOOTPARAM_LOCKDEP_CROSSRELEASE_FULLSTACK is not set
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOT_PRINTK_DELAY=y
CONFIG_BOUNCE=y
+CONFIG_BPF_JIT_ALWAYS_ON=y
CONFIG_BPF_JIT=y
CONFIG_BPF_STREAM_PARSER=y
CONFIG_BPF_SYSCALL=y
@@ -570,6 +569,7 @@ CONFIG_BT_HCIBPA10X=m
CONFIG_BT_HCIBT3C=m
CONFIG_BT_HCIBTSDIO=m
CONFIG_BT_HCIBTUART=m
+CONFIG_BT_HCIBTUSB_AUTOSUSPEND=y
CONFIG_BT_HCIBTUSB_BCM=y
CONFIG_BT_HCIBTUSB=m
CONFIG_BT_HCIBTUSB_RTL=y
@@ -603,6 +603,7 @@ CONFIG_BT_RFCOMM_TTY=y
# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set
CONFIG_BTRFS_FS=m
CONFIG_BTRFS_FS_POSIX_ACL=y
+# CONFIG_BTRFS_FS_REF_VERIFY is not set
# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set
# CONFIG_BT_SELFTEST is not set
CONFIG_BTT=y
@@ -723,11 +724,14 @@ CONFIG_CHARGER_BQ24190=m
# CONFIG_CHARGER_ISP1704 is not set
# CONFIG_CHARGER_LP8727 is not set
# CONFIG_CHARGER_LTC3651 is not set
+# CONFIG_CHARGER_MANAGER is not set
# CONFIG_CHARGER_MAX8903 is not set
# CONFIG_CHARGER_PCF50633 is not set
# CONFIG_CHARGER_RT9455 is not set
# CONFIG_CHARGER_SBS is not set
CONFIG_CHARGER_SMB347=m
+# CONFIG_CHASH_SELFTEST is not set
+# CONFIG_CHASH_STATS is not set
CONFIG_CHECKPOINT_RESTORE=y
CONFIG_CHELSIO_T1_1G=y
CONFIG_CHELSIO_T1=m
@@ -743,6 +747,7 @@ CONFIG_CHR_DEV_ST=m
CONFIG_CHROMEOS_LAPTOP=m
CONFIG_CHROMEOS_PSTORE=m
CONFIG_CHROME_PLATFORMS=y
+CONFIG_CHT_DC_TI_PMIC_OPREGION=y
CONFIG_CHT_WC_PMIC_OPREGION=y
CONFIG_CICADA_PHY=m
CONFIG_CIFS_ACL=y
@@ -820,10 +825,12 @@ CONFIG_CPU_FREQ=y
# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set
# CONFIG_CPU_IDLE_GOV_LADDER is not set
CONFIG_CPU_IDLE=y
+CONFIG_CPU_ISOLATION=y
CONFIG_CPUMASK_OFFSTACK=y
CONFIG_CPUSETS=y
# CONFIG_CPU_THERMAL is not set
CONFIG_CRAMFS=m
+# CONFIG_CRAMFS_MTD is not set
CONFIG_CRASH_DUMP=y
CONFIG_CRASH=m
CONFIG_CRC16=y
@@ -955,6 +962,7 @@ CONFIG_CRYPTO_SHA512_MB=m
CONFIG_CRYPTO_SHA512_SSSE3=m
CONFIG_CRYPTO_SIMD=y
# CONFIG_CRYPTO_SKEIN is not set
+CONFIG_CRYPTO_SM3=m
CONFIG_CRYPTO_TEA=m
CONFIG_CRYPTO_TEST=m
CONFIG_CRYPTO_TGR192=m
@@ -1007,6 +1015,7 @@ CONFIG_DEBUG_HIGHMEM=y
# CONFIG_DEBUG_INFO_SPLIT is not set
CONFIG_DEBUG_INFO_VTA=y
CONFIG_DEBUG_INFO=y
+# CONFIG_DEBUG_KERNEL_DC is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_KMEMLEAK is not set
# CONFIG_DEBUG_KMEMLEAK_TEST is not set
@@ -1061,6 +1070,8 @@ CONFIG_DELL_LAPTOP=m
CONFIG_DELL_RBTN=m
# CONFIG_DELL_RBU is not set
CONFIG_DELL_SMBIOS=m
+CONFIG_DELL_SMBIOS_SMM=m
+CONFIG_DELL_SMBIOS_WMI=m
CONFIG_DELL_SMO8800=m
CONFIG_DELL_WMI_AIO=m
CONFIG_DELL_WMI_LED=m
@@ -1133,8 +1144,8 @@ CONFIG_DM_ZONED=m
CONFIG_DNET=m
CONFIG_DNOTIFY=y
CONFIG_DNS_RESOLVER=m
-CONFIG_DONGLE=y
CONFIG_DP83640_PHY=m
+CONFIG_DP83822_PHY=m
CONFIG_DP83848_PHY=m
# CONFIG_DP83867_PHY is not set
# CONFIG_DPM_WATCHDOG is not set # revisit this in debug
@@ -1143,6 +1154,10 @@ CONFIG_DPTF_POWER=m
CONFIG_DRAGONRISE_FF=y
# CONFIG_DRBD_FAULT_INJECTION is not set
CONFIG_DRM_AMD_ACP=y
+CONFIG_DRM_AMD_DC_DCN1_0=y
+# CONFIG_DRM_AMD_DC_FBC is not set
+# CONFIG_DRM_AMD_DC_PRE_VEGA is not set
+CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMDGPU_CIK=y
# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set
CONFIG_DRM_AMDGPU=m
@@ -1166,7 +1181,8 @@ CONFIG_DRM_GMA500=m
# CONFIG_DRM_GMA600 is not set
CONFIG_DRM_HISI_HIBMC=m
CONFIG_DRM_I2C_ADV7511_AUDIO=y
-CONFIG_DRM_I2C_ADV7511=m
+# CONFIG_DRM_I2C_ADV7511_CEC is not set
+# CONFIG_DRM_I2C_ADV7511 is not set
CONFIG_DRM_I2C_ADV7533=y
CONFIG_DRM_I2C_CH7006=m
CONFIG_DRM_I2C_NXP_TDA998X=m
@@ -1195,10 +1211,14 @@ CONFIG_DRM_NOUVEAU=m
# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set
# CONFIG_DRM_PANEL_LG_LG4573 is not set
CONFIG_DRM_PANEL_LVDS=m
+CONFIG_DRM_PANEL_ORISETECH_OTM8009A=m
# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set
+CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
+CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03=m
# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set
+CONFIG_DRM_PANEL_SEIKO_43WVF1G=m
# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SIMPLE is not set
@@ -1212,7 +1232,8 @@ CONFIG_DRM_RADEON_USERPTR=y
# CONFIG_DRM_RCAR_DW_HDMI is not set
# CONFIG_DRM_SAVAGE is not set
# CONFIG_DRM_SII902X is not set
-CONFIG_DRM_SIL_SII8620=m
+CONFIG_DRM_SII9234=m
+# CONFIG_DRM_SIL_SII8620 is not set
# CONFIG_DRM_SIS is not set
# CONFIG_DRM_TDFX is not set
# CONFIG_DRM_TINYDRM is not set
@@ -1227,6 +1248,7 @@ CONFIG_DRM_VMWGFX_FBCON=y
CONFIG_DRM_VMWGFX=m
# CONFIG_DS1682 is not set
# CONFIG_DS1803 is not set
+# CONFIG_DS4424 is not set
# CONFIG_DT3155 is not set
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@@ -1398,7 +1420,6 @@ CONFIG_ENVELOPE_DETECTOR=m
CONFIG_EPIC100=m
CONFIG_EPOLL=y
CONFIG_EQUALIZER=m
-CONFIG_ESI_DONGLE=m
CONFIG_ET131X=m
CONFIG_ETHERNET=y
CONFIG_ETHOC=m
@@ -1627,7 +1648,6 @@ CONFIG_GIGASET_CAPI=y
# CONFIG_GIGASET_DEBUG is not set
CONFIG_GIGASET_M101=m
CONFIG_GIGASET_M105=m
-CONFIG_GIRBIL_DONGLE=m
# CONFIG_GLOB_SELFTEST is not set
# CONFIG_GOLDFISH is not set
# CONFIG_GOOGLE_FIRMWARE is not set
@@ -1657,9 +1677,11 @@ CONFIG_GPIO_ICH=m
CONFIG_GPIO_IT87=m
CONFIG_GPIOLIB=y
# CONFIG_GPIO_LYNXPOINT is not set
+# CONFIG_GPIO_MAX3191X is not set
# CONFIG_GPIO_MAX7300 is not set
# CONFIG_GPIO_MAX7301 is not set
# CONFIG_GPIO_MAX732X is not set
+# CONFIG_GPIO_MB86S7X is not set
# CONFIG_GPIO_MC33880 is not set
# CONFIG_GPIO_MCP23S08 is not set
# CONFIG_GPIO_ML_IOH is not set
@@ -1676,6 +1698,7 @@ CONFIG_GPIO_PCI_IDIO_16=m
# CONFIG_GPIO_SX150X is not set
# CONFIG_GPIO_SYSCON is not set
# CONFIG_GPIO_SYSFS is not set
+# CONFIG_GPIO_TEGRA186 is not set
# CONFIG_GPIO_TPIC2810 is not set
CONFIG_GPIO_TPS68470=y
# CONFIG_GPIO_TS4900 is not set
@@ -1691,6 +1714,7 @@ CONFIG_GREENASIA_FF=y
# CONFIG_GREYBUS is not set
# CONFIG_GS_FPGABOOT is not set
CONFIG_GTP=m
+# CONFIG_GUP_BENCHMARK is not set
CONFIG_HAMACHI=m
CONFIG_HAMRADIO=y
CONFIG_HANGCHECK_TIMER=m
@@ -1728,7 +1752,7 @@ CONFIG_HID_CHERRY=m
CONFIG_HID_CHICONY=m
CONFIG_HID_CMEDIA=m
CONFIG_HID_CORSAIR=m
-# CONFIG_HID_CP2112 is not set
+CONFIG_HID_CP2112=m
CONFIG_HID_CYPRESS=m
CONFIG_HID_DRAGONRISE=m
CONFIG_HID_ELECOM=m
@@ -1902,7 +1926,7 @@ CONFIG_HW_RANDOM_TPM=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_HW_RANDOM=y
-CONFIG_HWSPINLOCK=m
+CONFIG_HWSPINLOCK=y
# CONFIG_HX711 is not set
CONFIG_HYPERV_BALLOON=m
CONFIG_HYPERVISOR_GUEST=y
@@ -2034,6 +2058,7 @@ CONFIG_IIO_BUFFER_CB=m
CONFIG_IIO_BUFFER=y
CONFIG_IIO_CONFIGFS=m
CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
+CONFIG_IIO_CROS_EC_ACCEL_LEGACY=m
# CONFIG_IIO_HRTIMER_TRIGGER is not set
CONFIG_IIO_INTERRUPT_TRIGGER=m
CONFIG_IIO_KFIFO_BUF=m
@@ -2166,6 +2191,7 @@ CONFIG_INPUT_POLLDEV=m
CONFIG_INPUT_POWERMATE=m
# CONFIG_INPUT_PWM_BEEPER is not set
# CONFIG_INPUT_PWM_VIBRA is not set
+# CONFIG_INPUT_REGULATOR_HAPTIC is not set
CONFIG_INPUT_RETU_PWRBUTTON=m
CONFIG_INPUT_RK805_PWRKEY=m
CONFIG_INPUT_SOC_BUTTON_ARRAY=m
@@ -2217,12 +2243,14 @@ CONFIG_INTEL_RST=m
# CONFIG_INTEL_SCU_IPC is not set
CONFIG_INTEL_SMARTCONNECT=y
CONFIG_INTEL_SOC_DTS_THERMAL=m
+CONFIG_INTEL_SOC_PMIC_CHTDC_TI=m
CONFIG_INTEL_SOC_PMIC_CHTWC=y
CONFIG_INTEL_SOC_PMIC=y
# CONFIG_INTEL_TH is not set
CONFIG_INTEL_TURBO_MAX_3=y
CONFIG_INTEL_TXT=y
CONFIG_INTEL_VBTN=m
+CONFIG_INTEL_WMI_THUNDERBOLT=m
CONFIG_INTEL_XWAY_PHY=m
# CONFIG_INTERVAL_TREE_TEST is not set
CONFIG_INV_MPU6050_I2C=m
@@ -2255,7 +2283,7 @@ CONFIG_IP6_NF_RAW=m
CONFIG_IP6_NF_SECURITY=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_MASQUERADE=m
-# CONFIG_IP6_NF_TARGET_NPT is not set
+CONFIG_IP6_NF_TARGET_NPT=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_TARGET_SYNPROXY=m
# CONFIG_IPACK_BUS is not set
@@ -2274,6 +2302,7 @@ CONFIG_IPMI_DEVICE_INTERFACE=m
CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not set
CONFIG_IPMI_POWEROFF=m
+# CONFIG_IPMI_PROC_INTERFACE is not set
CONFIG_IPMI_SI=m
CONFIG_IPMI_SSIF=m
CONFIG_IPMI_WATCHDOG=m
@@ -2383,13 +2412,8 @@ CONFIG_IPW2200_QOS=y
CONFIG_IPW2200_RADIOTAP=y
CONFIG_IPWIRELESS=m
# CONFIG_IPX_INTERN is not set
-CONFIG_IPX=m
-CONFIG_IRCOMM=m
-CONFIG_IRDA_CACHE_LAST_LSAP=y
-# CONFIG_IRDA_DEBUG is not set
-CONFIG_IRDA_FAST_RR=y
-CONFIG_IRDA=m
-# CONFIG_IRDA_ULTRA is not set
+# CONFIG_IPX is not set
+# CONFIG_IRDA is not set
CONFIG_IR_ENE=m
CONFIG_IR_FINTEK=m
CONFIG_IR_GPIO_CIR=m
@@ -2401,12 +2425,10 @@ CONFIG_IR_IGUANA=m
CONFIG_IR_IMON=m
CONFIG_IR_ITE_CIR=m
CONFIG_IR_JVC_DECODER=m
-CONFIG_IRLAN=m
CONFIG_IR_LIRC_CODEC=m
CONFIG_IR_MCE_KBD_DECODER=m
CONFIG_IR_MCEUSB=m
CONFIG_IR_NEC_DECODER=m
-CONFIG_IRNET=m
CONFIG_IR_NUVOTON=m
CONFIG_IR_PWM_TX=m
# CONFIG_IRQ_DOMAIN_DEBUG is not set
@@ -2420,12 +2442,11 @@ CONFIG_IR_SANYO_DECODER=m
CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SHARP_DECODER=m
-CONFIG_IR_SIR=m
+# CONFIG_IR_SIR is not set
CONFIG_IR_SONY_DECODER=m
CONFIG_IR_SPI=m
CONFIG_IR_STREAMZAP=m
CONFIG_IR_TTUSBIR=m
-CONFIG_IRTTY_SIR=m
CONFIG_IR_WINBOND_CIR=m
CONFIG_IR_XMP_DECODER=m
# CONFIG_ISA is not set
@@ -2590,7 +2611,6 @@ CONFIG_KGDB_SERIAL_CONSOLE=y
# CONFIG_KGDB_TESTS_ON_BOOT is not set
CONFIG_KGDB_TESTS=y
CONFIG_KGDB=y
-CONFIG_KINGSUN_DONGLE=m
# CONFIG_KMX61 is not set
CONFIG_KPROBE_EVENTS=y
# CONFIG_KPROBES_SANITY_TEST is not set
@@ -2602,8 +2622,6 @@ CONFIG_KS0108_PORT=0x378
# CONFIG_KS8842 is not set
# CONFIG_KS8851 is not set
# CONFIG_KS8851_MLL is not set
-CONFIG_KS959_DONGLE=m
-CONFIG_KSDAZZLE_DONGLE=m
CONFIG_KSM=y
CONFIG_KSZ884X_PCI=m
CONFIG_KVM_AMD=m
@@ -2640,6 +2658,7 @@ CONFIG_LCD_PLATFORM=m
# CONFIG_LDM_DEBUG is not set
CONFIG_LDM_PARTITION=y
# CONFIG_LEDS_AAT1290 is not set
+CONFIG_LEDS_APU=m
CONFIG_LEDS_AS3645A=m
# CONFIG_LEDS_BCM6328 is not set
# CONFIG_LEDS_BCM6358 is not set
@@ -2676,11 +2695,12 @@ CONFIG_LEDS_NIC78BX=m
# CONFIG_LEDS_PCA955X is not set
# CONFIG_LEDS_PCA963X is not set
# CONFIG_LEDS_PWM is not set
-CONFIG_LEDS_REGULATOR=m
+# CONFIG_LEDS_REGULATOR is not set
# CONFIG_LEDS_S3C24XX is not set
# CONFIG_LEDS_SYSCON is not set
# CONFIG_LEDS_TCA6507 is not set
# CONFIG_LEDS_TLC591XX is not set
+CONFIG_LEDS_TRIGGER_ACTIVITY=m
CONFIG_LEDS_TRIGGER_BACKLIGHT=m
CONFIG_LEDS_TRIGGER_CAMERA=m
# CONFIG_LEDS_TRIGGER_CPU is not set
@@ -2727,10 +2747,8 @@ CONFIG_LIRC=m
CONFIG_LIRC_PARALLEL=m
CONFIG_LIRC_SERIAL=m
CONFIG_LIRC_SERIAL_TRANSMITTER=y
-CONFIG_LIRC_SIR=m
CONFIG_LIRC_STAGING=y
CONFIG_LIRC_ZILOG=m
-CONFIG_LITELINK_DONGLE=m
# CONFIG_LIVEPATCH is not set
# CONFIG_LKDTM is not set
# CONFIG_LLC2 is not set
@@ -2777,7 +2795,6 @@ CONFIG_LWTUNNEL_BPF=y
CONFIG_LWTUNNEL=y
CONFIG_LXT_PHY=m
# CONFIG_M62332 is not set
-CONFIG_MA600_DONGLE=m
CONFIG_MAC80211_DEBUGFS=y
# CONFIG_MAC80211_DEBUG_MENU is not set
CONFIG_MAC80211_HWSIM=m
@@ -2805,6 +2822,7 @@ CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_MAILBOX_TEST is not set
CONFIG_MAILBOX=y
+# CONFIG_MANAGER_SBS is not set
# CONFIG_MANDATORY_FILE_LOCKING is not set
CONFIG_MANTIS_CORE=m
CONFIG_MARVELL_10G_PHY=m
@@ -2828,14 +2846,12 @@ CONFIG_MAX_RAW_DEVS=8192
# CONFIG_MC3230 is not set
# CONFIG_MCB is not set
# CONFIG_MCE_AMD_INJ is not set
-CONFIG_MCP2120_DONGLE=m
# CONFIG_MCP320X is not set
# CONFIG_MCP3422 is not set
# CONFIG_MCP4131 is not set
# CONFIG_MCP4531 is not set
# CONFIG_MCP4725 is not set
# CONFIG_MCP4922 is not set
-CONFIG_MCS_FIR=m
CONFIG_MD_AUTODETECT=y
# CONFIG_MD_CLUSTER is not set
CONFIG_MD_FAULTY=m
@@ -2898,6 +2914,9 @@ CONFIG_MEMSTICK_TIFM_MS=m
# CONFIG_MEMSTICK_UNSAFE_RESUME is not set
# CONFIG_MEMTEST is not set
# CONFIG_MEN_A21_WDT is not set
+# CONFIG_MESON_GX_PM_DOMAINS is not set
+# CONFIG_MESON_MX_EFUSE is not set
+# CONFIG_MESON_MX_SOCINFO is not set
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4
# CONFIG_MFD_88PM800 is not set
# CONFIG_MFD_88PM805 is not set
@@ -3023,6 +3042,7 @@ CONFIG_MISDN_SPEEDFAX=m
CONFIG_MISDN_W6692=m
# CONFIG_MK8 is not set
CONFIG_MKISS=m
+CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX4_CORE=m
CONFIG_MLX4_EN_DCB=y
CONFIG_MLX4_EN=m
@@ -3073,6 +3093,7 @@ CONFIG_MMC_SDHCI=m
# CONFIG_MMC_SDHCI_OF_ARASAN is not set
# CONFIG_MMC_SDHCI_OF_AT91 is not set
# CONFIG_MMC_SDHCI_OF_ESDHC is not set
+# CONFIG_MMC_SDHCI_OMAP is not set
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI_PLTFM=m
CONFIG_MMC_SDHCI_XENON=m
@@ -3190,6 +3211,7 @@ CONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_RAM is not set
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_ROM is not set
+# CONFIG_MTD_SHARPSL_PARTS is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_SPI_NOR is not set
# CONFIG_MTD_SST25L is not set
@@ -3228,7 +3250,7 @@ CONFIG_NATSEMI=m
# CONFIG_NBPFAXI_DMA is not set
CONFIG_NCPFS_EXTRAS=y
CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
CONFIG_NCPFS_NFS_NS=y
CONFIG_NCPFS_NLS=y
CONFIG_NCPFS_OS2_NS=y
@@ -3417,6 +3439,7 @@ CONFIG_NETROM=m
# CONFIG_NET_SB1000 is not set
CONFIG_NET_SCH_ATM=m
CONFIG_NET_SCH_CBQ=m
+CONFIG_NET_SCH_CBS=m
CONFIG_NET_SCH_CHOKE=m
CONFIG_NET_SCH_CODEL=m
# CONFIG_NET_SCH_DEFAULT is not set
@@ -3738,11 +3761,11 @@ CONFIG_NORTEL_HERMES=m
# CONFIG_NOTIFIER_ERROR_INJECTION is not set
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
+# CONFIG_NOUVEAU_DEBUG_MMU is not set
CONFIG_NOZOMI=m
CONFIG_NR_CPUS=1024
CONFIG_NR_DEV_DAX=32768
CONFIG_NS83820=m
-CONFIG_NSC_FIR=m
CONFIG_NTB_AMD=m
CONFIG_NTB_IDT=m
CONFIG_NTB_INTEL=m
@@ -3750,6 +3773,7 @@ CONFIG_NTB=m
CONFIG_NTB_NETDEV=m
CONFIG_NTB_PERF=m
CONFIG_NTB_PINGPONG=m
+CONFIG_NTB_SWITCHTEC=m
CONFIG_NTB_TOOL=m
CONFIG_NTB_TRANSPORT=m
# CONFIG_NTFS_FS is not set
@@ -3762,6 +3786,7 @@ CONFIG_NVDIMM_DAX=y
CONFIG_NVDIMM_PFN=y
CONFIG_NVME_FC=m
CONFIG_NVMEM=m
+CONFIG_NVME_MULTIPATH=y
CONFIG_NVME_RDMA=m
CONFIG_NVME_TARGET_FCLOOP=m
CONFIG_NVME_TARGET_FC=m
@@ -3778,7 +3803,6 @@ CONFIG_OCFS2_FS_O2CB=m
# CONFIG_OCFS2_FS_STATS is not set
CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m
# CONFIG_OF is not set
-CONFIG_OLD_BELKIN_DONGLE=m
# CONFIG_OMFS_FS is not set
CONFIG_OPENVSWITCH_GENEVE=m
CONFIG_OPENVSWITCH_GRE=m
@@ -3793,6 +3817,7 @@ CONFIG_ORINOCO_USB=m
CONFIG_OSF_PARTITION=y
# CONFIG_OVERLAY_FS_INDEX is not set
CONFIG_OVERLAY_FS=m
+CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y
# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set
CONFIG_P54_COMMON=m
CONFIG_P54_PCI=m
@@ -3804,6 +3829,7 @@ CONFIG_PACKET=y
# CONFIG_PAGE_EXTENSION is not set
# CONFIG_PAGE_OWNER is not set
# CONFIG_PAGE_POISONING is not set
+CONFIG_PAGE_TABLE_ISOLATION=y
CONFIG_PANASONIC_LAPTOP=m
# CONFIG_PANEL is not set
# CONFIG_PANIC_ON_OOPS is not set
@@ -3963,12 +3989,15 @@ CONFIG_PINCONF=y
CONFIG_PINCTRL_BAYTRAIL=y
CONFIG_PINCTRL_BROXTON=m
# CONFIG_PINCTRL_CANNONLAKE is not set
+CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_CHERRYVIEW=y
CONFIG_PINCTRL_DENVERTON=m
# CONFIG_PINCTRL_GEMINILAKE is not set
# CONFIG_PINCTRL_IPQ8074 is not set
CONFIG_PINCTRL_LEWISBURG=m
# CONFIG_PINCTRL_MCP23S08 is not set
+# CONFIG_PINCTRL_MESON_GXBB is not set
+# CONFIG_PINCTRL_MESON_GXL is not set
CONFIG_PINCTRL_RK805=m
# CONFIG_PINCTRL_SPRD is not set
# CONFIG_PINCTRL_SPRD_SC9860 is not set
@@ -4034,6 +4063,7 @@ CONFIG_PPS_CLIENT_PARPORT=m
# CONFIG_PPS_DEBUG is not set
CONFIG_PPS=m
CONFIG_PPTP=m
+# CONFIG_PREEMPTIRQ_EVENTS is not set
# CONFIG_PREEMPT is not set
# CONFIG_PREEMPT_NONE is not set
CONFIG_PREEMPT_VOLUNTARY=y
@@ -4083,6 +4113,7 @@ CONFIG_PWRSEQ_SIMPLE=m
# CONFIG_QCOM_GLINK_SSR is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_QCOM_HIDMA_MGMT is not set
+# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set
CONFIG_QEDE=m
CONFIG_QEDF=m
CONFIG_QEDI=m
@@ -4180,11 +4211,44 @@ CONFIG_REALTEK_PHY=m
# CONFIG_REFCOUNT_FULL is not set
CONFIG_REGMAP_I2C=y
CONFIG_REGMAP=y
-CONFIG_REGULATOR_BD9571MWV=m
+# CONFIG_REGULATOR_ACT8865 is not set
+# CONFIG_REGULATOR_AD5398 is not set
+# CONFIG_REGULATOR_AXP20X is not set
+# CONFIG_REGULATOR_BD9571MWV is not set
+# CONFIG_REGULATOR_DA9210 is not set
+# CONFIG_REGULATOR_DA9211 is not set
# CONFIG_REGULATOR_DEBUG is not set
-# CONFIG_REGULATOR is not set
+# CONFIG_REGULATOR_FAN53555 is not set
+# CONFIG_REGULATOR_FIXED_VOLTAGE is not set
+# CONFIG_REGULATOR_GPIO is not set
+# CONFIG_REGULATOR_ISL6271A is not set
+# CONFIG_REGULATOR_ISL9305 is not set
+# CONFIG_REGULATOR_LP3971 is not set
+# CONFIG_REGULATOR_LP3972 is not set
+# CONFIG_REGULATOR_LP872X is not set
+# CONFIG_REGULATOR_LP8755 is not set
+# CONFIG_REGULATOR_LTC3589 is not set
+# CONFIG_REGULATOR_LTC3676 is not set
+# CONFIG_REGULATOR_MAX1586 is not set
+# CONFIG_REGULATOR_MAX8649 is not set
+# CONFIG_REGULATOR_MAX8660 is not set
+# CONFIG_REGULATOR_MAX8952 is not set
+# CONFIG_REGULATOR_MT6311 is not set
+# CONFIG_REGULATOR_PFUZE100 is not set
+# CONFIG_REGULATOR_PV88060 is not set
+# CONFIG_REGULATOR_PV88080 is not set
+# CONFIG_REGULATOR_PV88090 is not set
+# CONFIG_REGULATOR_PWM is not set
+# CONFIG_REGULATOR_TPS51632 is not set
+# CONFIG_REGULATOR_TPS62360 is not set
+# CONFIG_REGULATOR_TPS65023 is not set
+# CONFIG_REGULATOR_TPS6507X is not set
# CONFIG_REGULATOR_TPS65132 is not set
+# CONFIG_REGULATOR_TPS6524X is not set
+# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set
CONFIG_REGULATOR_VCTRL=m
+# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set
+CONFIG_REGULATOR=y
# CONFIG_REISERFS_CHECK is not set
CONFIG_REISERFS_FS=m
CONFIG_REISERFS_FS_POSIX_ACL=y
@@ -4195,9 +4259,12 @@ CONFIG_RELAY=y
# CONFIG_RELOCATABLE_TEST is not set
CONFIG_RELOCATABLE=y
CONFIG_REMOTEPROC=m
-CONFIG_RESET_ATTACK_MITIGATION=y
+CONFIG_RENESAS_PHY=m
+# CONFIG_RESET_ATTACK_MITIGATION is not set
# CONFIG_RESET_HSDK_V1 is not set
# CONFIG_RESET_TI_SYSCON is not set
+CONFIG_RETPOLINE=y
+# CONFIG_RFD77402 is not set
# CONFIG_RFD_FTL is not set
CONFIG_RFKILL_GPIO=m
CONFIG_RFKILL_INPUT=y
@@ -4226,6 +4293,7 @@ CONFIG_RPCSEC_GSS_KRB5=m
# CONFIG_RPMSG_CHAR is not set
# CONFIG_RPMSG_QCOM_GLINK_RPM is not set
# CONFIG_RPMSG_QCOM_GLINK_SMEM is not set
+CONFIG_RPMSG_VIRTIO=m
CONFIG_RPR0521=m
CONFIG_RSI_91X=m
CONFIG_RSI_DEBUGFS=y
@@ -4306,6 +4374,7 @@ CONFIG_RTC_DRV_PCF2127=m
CONFIG_RTC_DRV_PCF50633=m
CONFIG_RTC_DRV_PCF85063=m
CONFIG_RTC_DRV_PCF8523=m
+# CONFIG_RTC_DRV_PCF85363 is not set
CONFIG_RTC_DRV_PCF8563=m
CONFIG_RTC_DRV_PCF8583=m
CONFIG_RTC_DRV_PM8XXX=m
@@ -4379,6 +4448,7 @@ CONFIG_SATA_AHCI=y
# CONFIG_SATA_DWC is not set
# CONFIG_SATA_HIGHBANK is not set
CONFIG_SATA_INIC162X=m
+CONFIG_SATA_MOBILE_LPM_POLICY=3
CONFIG_SATA_MV=m
CONFIG_SATA_NV=m
CONFIG_SATA_PMP=y
@@ -4640,6 +4710,7 @@ CONFIG_SENSORS_LM95241=m
CONFIG_SENSORS_LM95245=m
CONFIG_SENSORS_LTC2945=m
CONFIG_SENSORS_LTC2978=m
+# CONFIG_SENSORS_LTC2978_REGULATOR is not set
CONFIG_SENSORS_LTC2990=m
CONFIG_SENSORS_LTC3815=m
CONFIG_SENSORS_LTC4151=m
@@ -4656,8 +4727,10 @@ CONFIG_SENSORS_MAX1668=m
CONFIG_SENSORS_MAX197=m
CONFIG_SENSORS_MAX20751=m
CONFIG_SENSORS_MAX31722=m
+# CONFIG_SENSORS_MAX31785 is not set
CONFIG_SENSORS_MAX31790=m
CONFIG_SENSORS_MAX34440=m
+# CONFIG_SENSORS_MAX6621 is not set
CONFIG_SENSORS_MAX6639=m
CONFIG_SENSORS_MAX6642=m
CONFIG_SENSORS_MAX6650=m
@@ -4797,7 +4870,6 @@ CONFIG_SH_ETH=m
# CONFIG_SI7005 is not set
# CONFIG_SI7020 is not set
# CONFIG_SIGMA is not set
-CONFIG_SIGMATEL_FIR=m
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_SILEAD_DMI=y
# CONFIG_SIMPLE_PM_BUS is not set
@@ -4822,7 +4894,6 @@ CONFIG_SLUB_CPU_PARTIAL=y
# CONFIG_SLUB_STATS is not set
CONFIG_SLUB=y
CONFIG_SMARTJOYPLUS_FF=y
-CONFIG_SMC_IRCC_FIR=m
# CONFIG_SMC is not set
# CONFIG_SM_FTL is not set
CONFIG_SMP=y
@@ -4854,7 +4925,7 @@ CONFIG_SND_AU8830=m
# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set
# CONFIG_SND_AW2 is not set
CONFIG_SND_AZT3328=m
-# CONFIG_SND_BCD2000 is not set
+CONFIG_SND_BCD2000=m
CONFIG_SND_BEBOB=m
CONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not set
@@ -4989,6 +5060,7 @@ CONFIG_SND_SOC_ADAU1761_SPI=m
# CONFIG_SND_SOC_ALC5623 is not set
CONFIG_SND_SOC_ALL_CODECS=m
CONFIG_SND_SOC_AMD_ACP=m
+CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m
# CONFIG_SND_SOC_ARNDALE_RT5631_ALC5631 is not set
# CONFIG_SND_SOC_BT_SCO is not set
# CONFIG_SND_SOC_CS35L32 is not set
@@ -5045,14 +5117,17 @@ CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m
CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m
+CONFIG_SND_SOC_INTEL_HASWELL=m
CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH=m
CONFIG_SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH=m
CONFIG_SND_SOC_INTEL_SKL_RT286_MACH=m
+CONFIG_SND_SOC_INTEL_SKYLAKE=m
CONFIG_SND_SOC_INTEL_SST_ACPI=m
CONFIG_SND_SOC_INTEL_SST=m
+CONFIG_SND_SOC_INTEL_SST_TOPLEVEL=m
CONFIG_SND_SOC=m
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9860 is not set
@@ -5118,6 +5193,7 @@ CONFIG_SND_SOC_WM8524=m
# CONFIG_SND_SOC_ZX_AUD96P22 is not set
CONFIG_SND_SONICVIBES=m
# CONFIG_SND_SPI is not set
+CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m
# CONFIG_SND_SUPPORT_OLD_API is not set
CONFIG_SND_TRIDENT=m
CONFIG_SND_USB_6FIRE=m
@@ -5155,7 +5231,6 @@ CONFIG_SONYPI_COMPAT=y
# CONFIG_SONYPI is not set
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE_PRECLAIM=y
-# CONFIG_SOUND_PRIME is not set
CONFIG_SP5100_TCO=m
CONFIG_SPARSE_IRQ=y
CONFIG_SPARSEMEM_EXTREME=y
@@ -5328,13 +5403,14 @@ CONFIG_TCP_MD5SIG=y
# CONFIG_TCS3414 is not set
# CONFIG_TCS3472 is not set
# CONFIG_TEE is not set
+# CONFIG_TEGRA_BPMP_THERMAL is not set
CONFIG_TEHUTI=m
-CONFIG_TEKRAM_DONGLE=m
CONFIG_TELCLOCK=m
CONFIG_TERANETICS_PHY=m
CONFIG_TEST_ASYNC_DRIVER_PROBE=m
# CONFIG_TEST_BITMAP is not set
# CONFIG_TEST_BPF is not set
+# CONFIG_TEST_FIND_BIT is not set
# CONFIG_TEST_FIRMWARE is not set
# CONFIG_TEST_HASH is not set
# CONFIG_TEST_HEXDUMP is not set
@@ -5374,6 +5450,7 @@ CONFIG_THINKPAD_ACPI=m
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THRUSTMASTER_FF=y
CONFIG_THUNDERBOLT=m
+CONFIG_THUNDERBOLT_NET=m
# CONFIG_TI_ADC081C is not set
# CONFIG_TI_ADC0832 is not set
# CONFIG_TI_ADC084S021 is not set
@@ -5385,6 +5462,7 @@ CONFIG_TI_ADS1015=m
# CONFIG_TI_ADS7950 is not set
# CONFIG_TI_ADS8688 is not set
# CONFIG_TI_CPSW_ALE is not set
+# CONFIG_TI_DAC082S085 is not set
# CONFIG_TI_DAC7512 is not set
CONFIG_TIFM_7XX1=m
CONFIG_TIFM_CORE=m
@@ -5406,10 +5484,8 @@ CONFIG_TLS=m
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
CONFIG_TMPFS=y
-CONFIG_TOIM3232_DONGLE=m
CONFIG_TOPSTAR_LAPTOP=m
CONFIG_TOSHIBA_BT_RFKILL=m
-# CONFIG_TOSHIBA_FIR is not set
CONFIG_TOSHIBA_HAPS=m
CONFIG_TOSHIBA_WMI=m
# CONFIG_TOUCHSCREEN_AD7877 is not set
@@ -5433,11 +5509,13 @@ CONFIG_TOUCHSCREEN_EGALAX_SERIAL=m
# CONFIG_TOUCHSCREEN_EKTF2127 is not set
CONFIG_TOUCHSCREEN_ELAN=m
CONFIG_TOUCHSCREEN_ELO=m
+# CONFIG_TOUCHSCREEN_EXC3000 is not set
# CONFIG_TOUCHSCREEN_FT6236 is not set
CONFIG_TOUCHSCREEN_FUJITSU=m
CONFIG_TOUCHSCREEN_GOODIX=m
CONFIG_TOUCHSCREEN_GUNZE=m
# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set
+# CONFIG_TOUCHSCREEN_HIDEEP is not set
CONFIG_TOUCHSCREEN_ILI210X=m
# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set
CONFIG_TOUCHSCREEN_INEXIO=m
@@ -5452,6 +5530,7 @@ CONFIG_TOUCHSCREEN_PENMOUNT=m
CONFIG_TOUCHSCREEN_PIXCIR=m
CONFIG_TOUCHSCREEN_RM_TS=m
# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set
+# CONFIG_TOUCHSCREEN_S6SY761 is not set
CONFIG_TOUCHSCREEN_SILEAD=m
CONFIG_TOUCHSCREEN_SIS_I2C=m
CONFIG_TOUCHSCREEN_ST1232=m
@@ -5484,6 +5563,7 @@ CONFIG_TOUCHSCREEN_ZFORCE=m
# CONFIG_TPS6105X is not set
# CONFIG_TPS65010 is not set
# CONFIG_TPS6507X is not set
+# CONFIG_TPS68470_PMIC_OPREGION is not set
# CONFIG_TRACE_BRANCH_PROFILING is not set
# CONFIG_TRACE_ENUM_MAP_FILE is not set
CONFIG_TRACE_EVAL_MAP_FILE=y
@@ -5512,8 +5592,10 @@ CONFIG_TUN=m
# CONFIG_TWL4030_CORE is not set
# CONFIG_TWL6040_CORE is not set
CONFIG_TYPEC_FUSB302=m
+CONFIG_TYPEC=m
CONFIG_TYPEC_TCPCI=m
CONFIG_TYPEC_TCPM=m
+CONFIG_TYPEC_TPS6598X=m
CONFIG_TYPEC_UCSI=m
CONFIG_TYPEC_WCOVE=m
CONFIG_TYPHOON=m
@@ -5599,6 +5681,7 @@ CONFIG_USB_EZUSB=y
CONFIG_USB_FTDI_ELAN=m
# CONFIG_USB_GADGETFS is not set
# CONFIG_USB_GADGET is not set
+# CONFIG_USB_GADGET_LEGACY is not set
CONFIG_USB_GL860=m
# CONFIG_USB_GPIO_VBUS is not set
# CONFIG_USB_GR_UDC is not set
@@ -5670,7 +5753,6 @@ CONFIG_USBIP_VHCI_HCD=m
CONFIG_USBIP_VHCI_HC_PORTS=8
CONFIG_USBIP_VHCI_NR_HCS=1
CONFIG_USBIP_VUDC=m
-CONFIG_USB_IRDA=m
CONFIG_USB_ISIGHTFW=m
# CONFIG_USB_ISP116X_HCD is not set
# CONFIG_USB_ISP1301 is not set
@@ -5905,7 +5987,6 @@ CONFIG_VGA_SWITCHEROO=y
CONFIG_VHOST_NET=m
CONFIG_VHOST_SCSI=m
CONFIG_VHOST_VSOCK=m
-CONFIG_VIA_FIR=m
CONFIG_VIA_RHINE=m
CONFIG_VIA_RHINE_MMIO=y
CONFIG_VIA_VELOCITY=m
@@ -6021,7 +6102,6 @@ CONFIG_VL6180=m
CONFIG_VLAN_8021Q_GVRP=y
CONFIG_VLAN_8021Q=m
CONFIG_VLAN_8021Q_MVRP=y
-CONFIG_VLSI_FIR=m
CONFIG_VMAP_STACK=y
CONFIG_VMD=m
# CONFIG_VME_BUS is not set
@@ -6033,6 +6113,7 @@ CONFIG_VMXNET3=m
CONFIG_VOP_BUS=m
CONFIG_VOP=m
CONFIG_VORTEX=m
+CONFIG_VSOCKETS_DIAG=m
CONFIG_VSOCKETS=m
CONFIG_VSOCKMON=m
# CONFIG_VT6655 is not set
@@ -6068,6 +6149,7 @@ CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_DS2805=m
CONFIG_W1_SLAVE_DS28E04=m
+# CONFIG_W1_SLAVE_DS28E17 is not set
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_THERM=m
CONFIG_W83627HF_WDT=m
@@ -6095,7 +6177,6 @@ CONFIG_WIL6210=m
CONFIG_WILINK_PLATFORM_DATA=y
# CONFIG_WIMAX is not set
CONFIG_WINBOND_840=m
-CONFIG_WINBOND_FIR=m
CONFIG_WIRELESS_EXT=y
CONFIG_WIRELESS=y
CONFIG_WIZNET_W5100=m
@@ -6203,6 +6284,7 @@ CONFIG_XEN_NETDEV_FRONTEND=m
CONFIG_XEN_PCIDEV_BACKEND=m
CONFIG_XEN_PCIDEV_FRONTEND=m
# CONFIG_XEN_PVCALLS_BACKEND is not set
+# CONFIG_XEN_PVCALLS_FRONTEND is not set
CONFIG_XEN_PVHVM=y
CONFIG_XEN_PVH=y
CONFIG_XEN_PV=y
@@ -6223,6 +6305,7 @@ CONFIG_XFRM_USER=y
CONFIG_XFRM=y
# CONFIG_XFS_DEBUG is not set
CONFIG_XFS_FS=m
+# CONFIG_XFS_ONLINE_SCRUB is not set
CONFIG_XFS_POSIX_ACL=y
CONFIG_XFS_QUOTA=y
# CONFIG_XFS_RT is not set
diff --git a/kernel.spec b/kernel.spec
index faac07516..7021f271e 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -48,13 +48,13 @@ Summary: The Linux kernel
# base_sublevel is the kernel version we're starting with and patching
# on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base,
# which yields a base_sublevel of 0.
-%define base_sublevel 14
+%define base_sublevel 15
## If this is a released kernel ##
%if 0%{?released_kernel}
# Do we have a -stable update to apply?
-%define stable_update 3
+%define stable_update 0
# Set rpm version accordingly
%if 0%{?stable_update}
%define stablerev %{stable_update}
@@ -93,10 +93,6 @@ Summary: The Linux kernel
# kernel-headers
%define with_headers %{?_without_headers: 0} %{?!_without_headers: 1}
%define with_cross_headers %{?_without_cross_headers: 0} %{?!_without_cross_headers: 1}
-# perf
-%define with_perf %{?_without_perf: 0} %{?!_without_perf: 1}
-# tools
-%define with_tools %{?_without_tools: 0} %{?!_without_tools: 1}
# kernel-debuginfo
%define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1}
# kernel-bootwrapper (for creating zImages from kernel + initrd)
@@ -122,11 +118,20 @@ Summary: The Linux kernel
# build a release kernel on rawhide
%define with_release %{?_with_release: 1} %{?!_with_release: 0}
+# verbose build, i.e. no silent rules and V=1
+%define with_verbose %{?_with_verbose: 1} %{?!_with_verbose: 0}
+
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
# and 0 for rawhide (all kernels are debug kernels).
# See also 'make debug' and 'make release'.
%define debugbuildsenabled 1
+%if %{with_verbose}
+%define make_opts V=1
+%else
+%define make_opts -s
+%endif
+
# Want to build a vanilla kernel build without any non-upstream patches?
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
@@ -213,8 +218,6 @@ Summary: The Linux kernel
%define with_pae 0
%endif
%define with_pae 0
-%define with_tools 0
-%define with_perf 0
%endif
%define all_x86 i386 i686
@@ -235,8 +238,6 @@ Summary: The Linux kernel
%define with_up 0
%define with_headers 0
%define with_cross_headers 0
-%define with_tools 0
-%define with_perf 0
%define all_arch_configs kernel-%{version}-*.config
%endif
@@ -283,7 +284,6 @@ Summary: The Linux kernel
%define all_arch_configs kernel-%{version}-s390x.config
%define make_target image
%define kernel_image arch/s390/boot/image
-%define with_tools 0
%endif
%ifarch %{arm}
@@ -301,8 +301,6 @@ Summary: The Linux kernel
%ifnarch armv7hl
%define with_headers 0
%define with_cross_headers 0
-%define with_perf 0
-%define with_tools 0
%endif
%endif
@@ -337,8 +335,6 @@ Summary: The Linux kernel
%define with_up 0
%define with_pae 0
%define with_debuginfo 0
-%define with_perf 0
-%define with_tools 0
%define _enable_debug_packages 0
%endif
@@ -397,16 +393,6 @@ BuildRequires: net-tools, hostname, bc, elfutils-devel
%if %{with_sparse}
BuildRequires: sparse
%endif
-%if %{with_perf}
-BuildRequires: zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison flex xz-devel
-BuildRequires: audit-libs-devel
-%ifnarch s390x %{arm}
-BuildRequires: numactl-devel
-%endif
-%endif
-%if %{with_tools}
-BuildRequires: pciutils-devel gettext ncurses-devel
-%endif
BuildConflicts: rhbuildsys(DiskFree) < 500Mb
%if %{with_debuginfo}
BuildRequires: rpm-build, elfutils
@@ -439,7 +425,6 @@ BuildRequires: binutils-%{_build_arch}-linux-gnu, gcc-%{_build_arch}-linux-gnu
Source0: https://www.kernel.org/pub/linux/kernel/v4.x/linux-%{kversion}.tar.xz
-Source10: perf-man-%{kversion}.tar.gz
Source11: x509.genkey
Source12: remove-binary-diff.pl
Source15: merge.pl
@@ -571,16 +556,17 @@ Patch205: MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
Patch206: MODSIGN-Support-not-importing-certs-from-db.patch
+# bz 1497559 - Make kernel MODSIGN code not error on missing variables
+Patch207: 0001-Make-get_cert_list-not-complain-about-cert-lists-tha.patch
+Patch208: 0002-Add-efi_status_to_str-and-rework-efi_status_to_err.patch
+Patch209: 0003-Make-get_cert_list-use-efi_status_to_str-to-print-er.patch
+
Patch210: disable-i8042-check-on-apple-mac.patch
Patch211: drm-i915-hush-check-crtc-state.patch
# 300 - ARM patches
-
-# Reduces a number of primarily info logs to dmesg
-# https://patchwork.freedesktop.org/patch/180737/
-# https://patchwork.freedesktop.org/patch/180554/
-Patch300: drm-cma-reduce-dmesg-logs.patch
+Patch300: arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch
# http://www.spinics.net/lists/linux-tegra/msg26029.html
Patch301: usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch
@@ -591,49 +577,32 @@ Patch302: arm-revert-mmc-omap_hsmmc-Use-dma_request_chan-for-reque.patch
# http://patchwork.ozlabs.org/patch/587554/
Patch303: ARM-tegra-usb-no-reset.patch
-Patch304: allwinner-net-emac.patch
-
-Patch305: arm64-Revert-allwinner-a64-pine64-Use-dcdc1-regulato.patch
-
# https://www.spinics.net/lists/arm-kernel/msg554183.html
-Patch306: arm-imx6-hummingboard2.patch
+Patch304: arm-imx6-hummingboard2.patch
-Patch307: arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch
+Patch305: arm64-Revert-allwinner-a64-pine64-Use-dcdc1-regulato.patch
# https://patchwork.kernel.org/patch/9820417/
-Patch310: qcom-msm89xx-fixes.patch
+Patch306: qcom-msm89xx-fixes.patch
-# https://patchwork.kernel.org/patch/10054387/
-Patch311: USB-ulpi-fix-bus-node-lookup.patch
+# https://patchwork.kernel.org/patch/10173115/
+Patch307: arm-dts-imx6qdl-udoo-Disable-usbh1-to-avoid-kernel-hang.patch
# Fix USB on the RPi https://patchwork.kernel.org/patch/9879371/
-Patch321: bcm283x-dma-mapping-skip-USB-devices-when-configuring-DMA-during-probe.patch
-
-# bcm2837 bluetooth support
-Patch323: bcm2837-bluetooth-support.patch
-
-Patch324: rpi-graphics-fix.patch
-
-# Generic fixes and enablement for Socionext SoC and 96board
-# https://patchwork.kernel.org/patch/9980861/
-Patch331: PCI-aspm-deal-with-missing-root-ports-in-link-state-handling.patch
+Patch308: bcm283x-dma-mapping-skip-USB-devices-when-configuring-DMA-during-probe.patch
# https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/log/?h=synquacer-netsec
-Patch332: arm64-socionext-96b-enablement.patch
+Patch330: arm64-socionext-96b-enablement.patch
-Patch335: arm-exynos-fix-usb3.patch
+# https://patchwork.kernel.org/patch/10149775/ MMC support for Synquacer
+Patch331: arm64-mmc-sdhci_f_sdh30-add-ACPI-support.patch
# 400 - IBM (ppc/s390x) patches
# 500 - Temp fixes/CVEs etc
-# rhbz 1498016 1498017
-#Patch503: KEYS-don-t-let-add_key-update-an-uninstantiated-key.patch
-
# 600 - Patches for improved Bay and Cherry Trail device support
# Below patches are submitted upstream, awaiting review / merging
-Patch601: 0001-Input-gpio_keys-Allow-suppression-of-input-events-fo.patch
-Patch602: 0002-Input-soc_button_array-Suppress-power-button-presses.patch
Patch610: 0010-Input-silead-Add-support-for-capactive-home-button-f.patch
# rhbz 1476467
@@ -642,19 +611,38 @@ Patch617: Fix-for-module-sig-verification.patch
# rhbz 1431375
Patch619: input-rmi4-remove-the-need-for-artifical-IRQ.patch
-# Headed upstream
-Patch621: drm-i915-Boost-GPU-clocks-if-we-miss-the-pageflip-s-vblank.patch
-
-Patch623: 0001-PATCH-staging-rtl8822be-fix-wrong-dma-unmap-len.patch
-
# rhbz 1509461
Patch625: v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch
-# Fixes for QXL issues
-Patch627: qxl-fixes.patch
+# For https://fedoraproject.org/wiki/Changes/ImprovedLaptopBatteryLife
+# Queued in bluetooth-next for merging into 4.16
+Patch628: 0001-Bluetooth-btusb-Add-a-Kconfig-option-to-enable-USB-a.patch
+
+# Fix left-button not working with some hid-multitouch touchpads
+# Adding these suggested by Benjamin Tissoires
+# Queued in hid.git/for-4.16/hid-quirks-cleanup/multitouch for merging into 4.16
+Patch630: 0001-HID-multitouch-Properly-deal-with-Win8-PTP-reports-w.patch
+Patch631: 0002-HID-multitouch-Only-look-at-non-touch-fields-in-firs.patch
+Patch632: 0003-HID-multitouch-Combine-all-left-button-events-in-a-f.patch
+
+# Make SATA link powermanagement policy configurable for:
+# https://fedoraproject.org/wiki/Changes/ImprovedLaptopBatteryLife
+# Queued upstream for merging into 4.16
+Patch636: 0001-ahci-Annotate-PCI-ids-for-mobile-Intel-chipsets-as-s.patch
+Patch637: 0002-ahci-Add-PCI-ids-for-Intel-Bay-Trail-Cherry-Trail-an.patch
+Patch638: 0003-ahci-Allow-setting-a-default-LPM-policy-for-mobile-c.patch
+
+# rhbz1514969, submitted upstream
+Patch640: 0001-platform-x86-dell-laptop-Filter-out-spurious-keyboar.patch
+
+# rhbz1514836, submitted upstream
+Patch641: 0001-Bluetooth-btusb-Disable-autosuspend-on-QCA-Rome-devi.patch
+
+# Speculative Execution patches
+Patch642: prevent-bounds-check-bypass-via-speculative-execution.patch
-# CVE-2017-1000405 rhbz 1516514 1519115
-Patch628: 0001-mm-thp-Do-not-make-page-table-dirty-unconditionally-.patch
+# Fix crash on Xwayland using nouveau
+Patch650: dma-buf-fix-reservation_object_wait_timeout_rcu-once-more-v2.patch
# END OF PATCH DEFINITIONS
@@ -735,109 +723,6 @@ Provides: installonlypkg(kernel)
This package is required by %{name}-debuginfo subpackages.
It provides the kernel source files common to all builds.
-%if %{with_perf}
-%package -n perf
-Summary: Performance monitoring for the Linux kernel
-Group: Development/System
-License: GPLv2
-%description -n perf
-This package contains the perf tool, which enables performance monitoring
-of the Linux kernel.
-
-%package -n perf-debuginfo
-Summary: Debug information for package perf
-Group: Development/Debug
-Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
-AutoReqProv: no
-%description -n perf-debuginfo
-This package provides debug information for the perf package.
-
-# Note that this pattern only works right to match the .build-id
-# symlinks because of the trailing nonmatching alternation and
-# the leading .*, because of find-debuginfo.sh's buggy handling
-# of matching the pattern against the symlinks file.
-%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_bindir}/perf(\.debug)?|.*%%{_libexecdir}/perf-core/.*|.*%%{_libdir}/traceevent/plugins/.*|XXX' -o perf-debuginfo.list}
-
-%package -n python-perf
-Summary: Python bindings for apps which will manipulate perf events
-Group: Development/Libraries
-%description -n python-perf
-The python-perf package contains a module that permits applications
-written in the Python programming language to use the interface
-to manipulate perf events.
-
-%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
-
-%package -n python-perf-debuginfo
-Summary: Debug information for package perf python bindings
-Group: Development/Debug
-Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
-AutoReqProv: no
-%description -n python-perf-debuginfo
-This package provides debug information for the perf python bindings.
-
-# the python_sitearch macro should already be defined from above
-%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{python_sitearch}/perf.so(\.debug)?|XXX' -o python-perf-debuginfo.list}
-
-
-%endif # with_perf
-
-%if %{with_tools}
-%package -n kernel-tools
-Summary: Assortment of tools for the Linux kernel
-Group: Development/System
-License: GPLv2
-Provides: cpupowerutils = 1:009-0.6.p1
-Obsoletes: cpupowerutils < 1:009-0.6.p1
-Provides: cpufreq-utils = 1:009-0.6.p1
-Provides: cpufrequtils = 1:009-0.6.p1
-Obsoletes: cpufreq-utils < 1:009-0.6.p1
-Obsoletes: cpufrequtils < 1:009-0.6.p1
-Obsoletes: cpuspeed < 1:1.5-16
-Requires: kernel-tools-libs = %{version}-%{release}
-%define __requires_exclude ^%{_bindir}/python
-%description -n kernel-tools
-This package contains the tools/ directory from the kernel source
-and the supporting documentation.
-
-%package -n kernel-tools-libs
-Summary: Libraries for the kernels-tools
-Group: Development/System
-License: GPLv2
-%description -n kernel-tools-libs
-This package contains the libraries built from the tools/ directory
-from the kernel source.
-
-%package -n kernel-tools-libs-devel
-Summary: Assortment of tools for the Linux kernel
-Group: Development/System
-License: GPLv2
-Requires: kernel-tools = %{version}-%{release}
-Provides: cpupowerutils-devel = 1:009-0.6.p1
-Obsoletes: cpupowerutils-devel < 1:009-0.6.p1
-Requires: kernel-tools-libs = %{version}-%{release}
-Provides: kernel-tools-devel
-%description -n kernel-tools-libs-devel
-This package contains the development files for the tools/ directory from
-the kernel source.
-
-%package -n kernel-tools-debuginfo
-Summary: Debug information for package kernel-tools
-Group: Development/Debug
-Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
-AutoReqProv: no
-%description -n kernel-tools-debuginfo
-This package provides debug information for package kernel-tools.
-
-# Note that this pattern only works right to match the .build-id
-# symlinks because of the trailing nonmatching alternation and
-# the leading .*, because of find-debuginfo.sh's buggy handling
-# of matching the pattern against the symlinks file.
-%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_bindir}/centrino-decode(\.debug)?|.*%%{_bindir}/powernow-k8-decode(\.debug)?|.*%%{_bindir}/cpupower(\.debug)?|.*%%{_libdir}/libcpupower.*|.*%%{_bindir}/turbostat(\.debug)?|.*%%{_bindir}/x86_energy_perf_policy(\.debug)?|.*%%{_bindir}/tmon(\.debug)?|.*%%{_bindir}/lsgpio(\.debug)?|.*%%{_bindir}/gpio-hammer(\.debug)?|.*%%{_bindir}/gpio-event-mon(\.debug)?|.*%%{_bindir}/iio_event_monitor(\.debug)?|.*%%{_bindir}/iio_generic_buffer(\.debug)?|.*%%{_bindir}/lsiio(\.debug)?|XXX' -o kernel-tools-debuginfo.list}
-
-%endif # with_tools
-
-
#
# This macro creates a kernel-<subpackage>-debuginfo package.
# %%kernel_debuginfo_package <subpackage>
@@ -956,6 +841,7 @@ Provides: installonlypkg(kernel)\
# Now, each variant package.
+%if %{with_pae}
%ifnarch armv7hl
%define variant_summary The Linux kernel compiled for PAE capable machines
%kernel_variant_package %{pae}
@@ -985,7 +871,7 @@ Install the kernel-PAE package if your machine has more than 4GB of memory.
This variant of the kernel has numerous debugging options enabled.
It should only be installed when trying to gather additional information
on kernel bugs, as some of these options impact performance noticably.
-
+%endif
%define variant_summary The Linux kernel compiled with extra debugging enabled
%kernel_variant_package debug
@@ -1379,7 +1265,7 @@ BuildKernel() {
# and now to start the build process
- make -s mrproper
+ make %{?make_opts} mrproper
cp configs/$Config .config
%if %{signkernel}%{signmodules}
@@ -1389,9 +1275,9 @@ BuildKernel() {
Arch=`head -1 .config | cut -b 3-`
echo USING ARCH=$Arch
- make -s ARCH=$Arch oldnoconfig >/dev/null
- %{make} -s ARCH=$Arch V=1 %{?_smp_mflags} $MakeTarget %{?sparse_mflags} %{?kernel_mflags}
- %{make} -s ARCH=$Arch V=1 %{?_smp_mflags} modules %{?sparse_mflags} || exit 1
+ make %{?make_opts} ARCH=$Arch olddefconfig >/dev/null
+ %{make} %{?make_opts} ARCH=$Arch %{?_smp_mflags} $MakeTarget %{?sparse_mflags} %{?kernel_mflags}
+ %{make} %{?make_opts} ARCH=$Arch %{?_smp_mflags} modules %{?sparse_mflags} || exit 1
mkdir -p $RPM_BUILD_ROOT/%{image_install_path}
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer
@@ -1400,7 +1286,7 @@ BuildKernel() {
%endif
%ifarch %{arm} aarch64
- %{make} -s ARCH=$Arch V=1 dtbs dtbs_install INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
+ %{make} %{?make_opts} ARCH=$Arch dtbs dtbs_install INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
cp -r $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/dtb
find arch/$Arch/boot/dts -name '*.dtb' -type f | xargs rm -f
%endif
@@ -1441,10 +1327,10 @@ BuildKernel() {
# Override $(mod-fw) because we don't want it to install any firmware
# we'll get it from the linux-firmware package and we don't want conflicts
- %{make} -s ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer mod-fw=
+ %{make} %{?make_opts} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer mod-fw=
if [ $DoVDSO -ne 0 ]; then
- %{make} -s ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT vdso_install KERNELRELEASE=$KernelVer
+ %{make} %{?make_opts} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT vdso_install KERNELRELEASE=$KernelVer
if [ ! -s ldconfig-kernel.conf ]; then
echo > ldconfig-kernel.conf "\
# Placeholder file, no vDSO hwcap entries used in this kernel."
@@ -1499,6 +1385,8 @@ BuildKernel() {
cp -a --parents arch/%{asmarch}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
fi
%ifarch aarch64
+ # Needed for systemtap
+ cp -a --parents arch/arm64/kernel/module.lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
# arch/arm64/include/asm/xen references arch/arm
cp -a --parents arch/arm/include/asm/xen $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
# arch/arm64/include/asm/opcodes.h references arch/arm
@@ -1700,51 +1588,6 @@ BuildKernel %make_target %kernel_image %{use_vdso} %{pae}
BuildKernel %make_target %kernel_image %{_use_vdso}
%endif
-%global perf_make \
- make -s EXTRA_CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" %{?cross_opts} -C tools/perf V=1 NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1 WERROR=0 NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_STRLCPY=1 NO_BIONIC=1 NO_JVMTI=1 prefix=%{_prefix}
-%if %{with_perf}
-# perf
-# make sure check-headers.sh is executable
-chmod +x tools/perf/check-headers.sh
-%{perf_make} DESTDIR=$RPM_BUILD_ROOT all
-%endif
-
-%if %{with_tools}
-%ifarch %{cpupowerarchs}
-# cpupower
-# make sure version-gen.sh is executable.
-chmod +x tools/power/cpupower/utils/version-gen.sh
-%{make} %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false
-%ifarch %{ix86}
- pushd tools/power/cpupower/debug/i386
- %{make} %{?_smp_mflags} centrino-decode powernow-k8-decode
- popd
-%endif
-%ifarch x86_64
- pushd tools/power/cpupower/debug/x86_64
- %{make} %{?_smp_mflags} centrino-decode powernow-k8-decode
- popd
-%endif
-%ifarch %{ix86} x86_64
- pushd tools/power/x86/x86_energy_perf_policy/
- %{make}
- popd
- pushd tools/power/x86/turbostat
- %{make}
- popd
-%endif #turbostat/x86_energy_perf_policy
-%endif
-pushd tools/thermal/tmon/
-%{make}
-popd
-pushd tools/iio/
-%{make}
-popd
-pushd tools/gpio/
-%{make}
-popd
-%endif
-
# In the modsign case, we do 3 things. 1) We check the "flavour" and hard
# code the value in the following invocations. This is somewhat sub-optimal
# but we're doing this inside of an RPM macro and it isn't as easy as it
@@ -1853,73 +1696,6 @@ done
rm -rf $RPM_BUILD_ROOT/usr/tmp-headers
%endif
-%if %{with_perf}
-# perf tool binary and supporting scripts/binaries
-%{perf_make} DESTDIR=$RPM_BUILD_ROOT lib=%{_lib} install-bin install-traceevent-plugins
-# remove the 'trace' symlink.
-rm -f %{buildroot}%{_bindir}/trace
-# remove the perf-tips
-rm -rf %{buildroot}%{_docdir}/perf-tip
-
-# python-perf extension
-%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-python_ext
-
-# perf man pages (note: implicit rpm magic compresses them later)
-mkdir -p %{buildroot}/%{_mandir}/man1
-pushd %{buildroot}/%{_mandir}/man1
-tar -xf %{SOURCE10}
-%if !%{with_tools}
- rm -f kvm_stat.1
-%endif
-popd
-%endif
-
-%if %{with_tools}
-%ifarch %{cpupowerarchs}
-%{make} -C tools/power/cpupower DESTDIR=$RPM_BUILD_ROOT libdir=%{_libdir} mandir=%{_mandir} CPUFREQ_BENCH=false install
-rm -f %{buildroot}%{_libdir}/*.{a,la}
-%find_lang cpupower
-mv cpupower.lang ../
-%ifarch %{ix86}
- pushd tools/power/cpupower/debug/i386
- install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
- install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
- popd
-%endif
-%ifarch x86_64
- pushd tools/power/cpupower/debug/x86_64
- install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
- install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
- popd
-%endif
-chmod 0755 %{buildroot}%{_libdir}/libcpupower.so*
-mkdir -p %{buildroot}%{_unitdir} %{buildroot}%{_sysconfdir}/sysconfig
-install -m644 %{SOURCE2000} %{buildroot}%{_unitdir}/cpupower.service
-install -m644 %{SOURCE2001} %{buildroot}%{_sysconfdir}/sysconfig/cpupower
-%endif
-%ifarch %{ix86} x86_64
- mkdir -p %{buildroot}%{_mandir}/man8
- pushd tools/power/x86/x86_energy_perf_policy
- make DESTDIR=%{buildroot} install
- popd
- pushd tools/power/x86/turbostat
- make DESTDIR=%{buildroot} install
- popd
-%endif #turbostat/x86_energy_perf_policy
-pushd tools/thermal/tmon
-make INSTALL_ROOT=%{buildroot} install
-popd
-pushd tools/iio
-make DESTDIR=%{buildroot} install
-popd
-pushd tools/gpio
-make DESTDIR=%{buildroot} install
-popd
-pushd tools/kvm/kvm_stat
-make INSTALL_ROOT=%{buildroot} install-tools
-popd
-%endif
-
%if %{with_bootwrapper}
make DESTDIR=$RPM_BUILD_ROOT bootwrapper_install WRAPPER_OBJDIR=%{_libdir}/kernel-wrapper WRAPPER_DTSDIR=%{_libdir}/kernel-wrapper/dts
%endif
@@ -1935,14 +1711,6 @@ rm -rf $RPM_BUILD_ROOT
### scripts
###
-%if %{with_tools}
-%post -n kernel-tools-libs
-/sbin/ldconfig
-
-%postun -n kernel-tools-libs
-/sbin/ldconfig
-%endif
-
#
# This macro defines a %%post script for a kernel*-devel package.
# %%kernel_devel_post [<subpackage>]
@@ -2027,11 +1795,13 @@ fi}\
%kernel_variant_preun
%kernel_variant_post -r kernel-smp
+%if %{with_pae}
%kernel_variant_preun %{pae}
%kernel_variant_post -v %{pae} -r (kernel|kernel-smp)
%kernel_variant_post -v %{pae}debug -r (kernel|kernel-smp)
%kernel_variant_preun %{pae}debug
+%endif
%kernel_variant_preun debug
%kernel_variant_post -v debug
@@ -2064,77 +1834,6 @@ fi
%{_libdir}/kernel-wrapper
%endif
-%if %{with_perf}
-%files -n perf
-%defattr(-,root,root)
-%{_bindir}/perf
-%dir %{_libdir}/traceevent/plugins
-%{_libdir}/traceevent/plugins/*
-%dir %{_libexecdir}/perf-core
-%{_libexecdir}/perf-core/*
-%{_datadir}/perf-core/*
-%{_mandir}/man[1-8]/perf*
-%{_sysconfdir}/bash_completion.d/perf
-%doc linux-%{KVERREL}/tools/perf/Documentation/examples.txt
-
-%files -n python-perf
-%defattr(-,root,root)
-%{python_sitearch}
-
-%if %{with_debuginfo}
-%files -f perf-debuginfo.list -n perf-debuginfo
-%defattr(-,root,root)
-
-%files -f python-perf-debuginfo.list -n python-perf-debuginfo
-%defattr(-,root,root)
-%endif
-%endif # with_perf
-
-%if %{with_tools}
-%files -n kernel-tools -f cpupower.lang
-%defattr(-,root,root)
-%ifarch %{cpupowerarchs}
-%{_bindir}/cpupower
-%ifarch %{ix86} x86_64
-%{_bindir}/centrino-decode
-%{_bindir}/powernow-k8-decode
-%endif
-%{_unitdir}/cpupower.service
-%{_mandir}/man[1-8]/cpupower*
-%config(noreplace) %{_sysconfdir}/sysconfig/cpupower
-%ifarch %{ix86} x86_64
-%{_bindir}/x86_energy_perf_policy
-%{_mandir}/man8/x86_energy_perf_policy*
-%{_bindir}/turbostat
-%{_mandir}/man8/turbostat*
-%endif
-%{_bindir}/tmon
-%{_bindir}/iio_event_monitor
-%{_bindir}/iio_generic_buffer
-%{_bindir}/lsiio
-%{_bindir}/lsgpio
-%{_bindir}/gpio-hammer
-%{_bindir}/gpio-event-mon
-%{_mandir}/man1/kvm_stat*
-%{_bindir}/kvm_stat
-%endif
-
-%if %{with_debuginfo}
-%files -f kernel-tools-debuginfo.list -n kernel-tools-debuginfo
-%defattr(-,root,root)
-%endif
-
-%ifarch %{cpupowerarchs}
-%files -n kernel-tools-libs
-%{_libdir}/libcpupower.so.0
-%{_libdir}/libcpupower.so.0.0.1
-
-%files -n kernel-tools-libs-devel
-%{_libdir}/libcpupower.so
-%{_includedir}/cpufreq.h
-%endif
-%endif # with_perf
-
# empty meta-package
%files
%defattr(-,root,root)
@@ -2210,6 +1909,9 @@ fi
#
#
%changelog
+* Mon Feb 05 2018 Laura Abbott <labbott@redhat.com> - 4.15.0-300
+- Linux v4.15
+
* Thu Nov 30 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.3-300
- Linux v4.14.3
- Fix CVE-2017-1000405 (rhbz 1516514 1519115)
diff --git a/media-cec-Fix-runtime-BUG-when-CONFIG_RC_CORE-CEC_CAP_RC.patch b/media-cec-Fix-runtime-BUG-when-CONFIG_RC_CORE-CEC_CAP_RC.patch
deleted file mode 100644
index 7a29d72bf..000000000
--- a/media-cec-Fix-runtime-BUG-when-CONFIG_RC_CORE-CEC_CAP_RC.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From patchwork Tue Apr 4 12:32:19 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [2/2, media] cec: Fix runtime BUG when (CONFIG_RC_CORE && !CEC_CAP_RC)
-From: Lee Jones <lee.jones@linaro.org>
-X-Patchwork-Id: 9661691
-Message-Id: <20170404123219.22040-2-lee.jones@linaro.org>
-To: hans.verkuil@cisco.com,
- mchehab@kernel.org
-Cc: benjamin.gaignard@st.com, patrice.chotard@st.com,
- linux-kernel@vger.kernel.org, kernel@stlinux.com,
- Lee Jones <lee.jones@linaro.org>, linux-arm-kernel@lists.infradead.org,
- linux-media@vger.kernel.org
-Date: Tue, 4 Apr 2017 13:32:19 +0100
-
-Currently when the RC Core is enabled (reachable) core code located
-in cec_register_adapter() attempts to populate the RC structure with
-a pointer to the 'parent' passed in by the caller.
-
-Unfortunately if the caller did not specify RC capibility when calling
-cec_allocate_adapter(), then there will be no RC structure to populate.
-
-This causes a "NULL pointer dereference" error.
-
-Fixes: f51e80804f0 ("[media] cec: pass parent device in register(), not allocate()")
-Signed-off-by: Lee Jones <lee.jones@linaro.org>
----
- drivers/media/cec/cec-core.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/drivers/media/cec/cec-core.c b/drivers/media/cec/cec-core.c
-index 06a312c..d64937b 100644
---- a/drivers/media/cec/cec-core.c
-+++ b/drivers/media/cec/cec-core.c
-@@ -286,8 +286,8 @@ int cec_register_adapter(struct cec_adapter *adap,
- adap->devnode.dev.parent = parent;
-
- #if IS_REACHABLE(CONFIG_RC_CORE)
-- adap->rc->dev.parent = parent;
- if (adap->capabilities & CEC_CAP_RC) {
-+ adap->rc->dev.parent = parent;
- res = rc_register_device(adap->rc);
-
- if (res) {
diff --git a/netfilter-x_tables-deal-with-bogus-nextoffset-values.patch b/netfilter-x_tables-deal-with-bogus-nextoffset-values.patch
deleted file mode 100644
index e6f5fa6f5..000000000
--- a/netfilter-x_tables-deal-with-bogus-nextoffset-values.patch
+++ /dev/null
@@ -1,109 +0,0 @@
-From 2b32a7d82223d76ace432305b18c5816cadff878 Mon Sep 17 00:00:00 2001
-From: Florian Westphal <fw () strlen ! de>
-Date: Thu, 10 Mar 2016 00:56:02 -0800
-Subject: [PATCH] netfilter: x_tables: deal with bogus nextoffset values
-
-Ben Hawkes says:
-
- In the mark_source_chains function (net/ipv4/netfilter/ip_tables.c) it
- is possible for a user-supplied ipt_entry structure to have a large
- next_offset field. This field is not bounds checked prior to writing a
- counter value at the supplied offset.
-
-Problem is that xt_entry_foreach() macro stops iterating once e->next_offset
-is out of bounds, assuming this is the last entry.
-
-With malformed data thats not necessarily the case so we can
-write outside of allocated area later as we might not have walked the
-entire blob.
-
-Fix this by simplifying mark_source_chains -- it already has to check
-if nextoff is in range to catch invalid jumps, so just do the check
-when we move to a next entry as well.
-
-Signed-off-by: Florian Westphal <fw@strlen.de>
----
- net/ipv4/netfilter/arp_tables.c | 8 ++++++++
- net/ipv4/netfilter/ip_tables.c | 8 ++++++++
- net/ipv6/netfilter/ip6_tables.c | 6 ++++++
- 3 files changed, 22 insertions(+)
-
-diff --git a/net/ipv4/netfilter/arp_tables.c b/net/ipv4/netfilter/arp_tables.c
-index 2033f92..a9b6c76 100644
---- a/net/ipv4/netfilter/arp_tables.c
-+++ b/net/ipv4/netfilter/arp_tables.c
-@@ -376,6 +376,10 @@ static int mark_source_chains(const struct xt_table_info *newinfo,
-
- /* Move along one */
- size = e->next_offset;
-+
-+ if (pos + size > newinfo->size - sizeof(*e))
-+ return 0;
-+
- e = (struct arpt_entry *)
- (entry0 + pos + size);
- if (pos + size >= newinfo->size)
-@@ -399,6 +403,10 @@ static int mark_source_chains(const struct xt_table_info *newinfo,
- if (newpos >= newinfo->size)
- return 0;
- }
-+
-+ if (newpos > newinfo->size - sizeof(*e))
-+ return 0;
-+
- e = (struct arpt_entry *)
- (entry0 + newpos);
- e->counters.pcnt = pos;
-diff --git a/net/ipv4/netfilter/ip_tables.c b/net/ipv4/netfilter/ip_tables.c
-index 54906e0..7530ecd 100644
---- a/net/ipv4/netfilter/ip_tables.c
-+++ b/net/ipv4/netfilter/ip_tables.c
-@@ -447,6 +447,10 @@ mark_source_chains(const struct xt_table_info *newinfo,
-
- /* Move along one */
- size = e->next_offset;
-+
-+ if (pos + size > newinfo->size - sizeof(*e))
-+ return 0;
-+
- e = (struct ipt_entry *)
- (entry0 + pos + size);
- if (pos + size >= newinfo->size)
-@@ -470,6 +474,10 @@ mark_source_chains(const struct xt_table_info *newinfo,
- if (newpos >= newinfo->size)
- return 0;
- }
-+
-+ if (newpos > newinfo->size - sizeof(*e))
-+ return 0;
-+
- e = (struct ipt_entry *)
- (entry0 + newpos);
- e->counters.pcnt = pos;
-diff --git a/net/ipv6/netfilter/ip6_tables.c b/net/ipv6/netfilter/ip6_tables.c
-index 63e06c3..894da69 100644
---- a/net/ipv6/netfilter/ip6_tables.c
-+++ b/net/ipv6/netfilter/ip6_tables.c
-@@ -474,6 +474,8 @@ mark_source_chains(const struct xt_table_info *newinfo,
-
- /* Move along one */
- size = e->next_offset;
-+ if (pos + size > newinfo->size - sizeof(*e))
-+ return 0;
- e = (struct ip6t_entry *)
- (entry0 + pos + size);
- if (pos + size >= newinfo->size)
-@@ -497,6 +499,10 @@ mark_source_chains(const struct xt_table_info *newinfo,
- if (newpos >= newinfo->size)
- return 0;
- }
-+
-+ if (newpos > newinfo->size - sizeof(*e))
-+ return 0;
-+
- e = (struct ip6t_entry *)
- (entry0 + newpos);
- e->counters.pcnt = pos;
---
-2.5.5
-
diff --git a/powerpc-prom-Increase-RMA-size-to-512MB.patch b/powerpc-prom-Increase-RMA-size-to-512MB.patch
deleted file mode 100644
index 422f0a9ec..000000000
--- a/powerpc-prom-Increase-RMA-size-to-512MB.patch
+++ /dev/null
@@ -1,52 +0,0 @@
-From patchwork Thu Mar 30 04:03:49 2017
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: powerpc/prom: Increase RMA size to 512MB
-From: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
-X-Patchwork-Id: 745044
-Message-Id: <20170330040349.GA31756@us.ibm.com>
-To: Michael Ellerman <mpe@ellerman.id.au>
-Cc: praveen.pandey@in.ibm.com, linuxppc-dev@lists.ozlabs.org,
- linux-kernel@vger.kernel.org
-Date: Wed, 29 Mar 2017 21:03:49 -0700
-
->From 3ae8d1ed31b01b92b172fe20e4560cfbfab135ec Mon Sep 17 00:00:00 2001
-From: root <root@furatripa-lp2.aus.stglabs.ibm.com>
-Date: Mon, 27 Mar 2017 19:43:14 -0400
-Subject: [PATCH] powerpc/prom: Increase RMA size to 512MB
-
-When booting very large systems with a large initrd, we run out of
-space for either the RTAS or the flattened device tree (FDT). Boot
-fails with messages like:
-
- Could not allocate memory for RTAS
-or
- No memory for flatten_device_tree (no room)
-
-Increasing the minimum RMA size to 512MB fixes the problem. This
-should not have an impact on smaller LPARs (with 256MB memory),
-as the firmware will cap the RMA to the memory assigned to the LPAR.
-
-Fix is based on input/discussions with Michael Ellerman. Thanks to
-Praveen K. Pandey for testing on a large system.
-
-Reported-by: Praveen K. Pandey <preveen.pandey@in.ibm.com>
-Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
----
- arch/powerpc/kernel/prom_init.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
-index 1c1b44e..dd8a04f 100644
---- a/arch/powerpc/kernel/prom_init.c
-+++ b/arch/powerpc/kernel/prom_init.c
-@@ -815,7 +815,7 @@ struct ibm_arch_vec __cacheline_aligned ibm_architecture_vec = {
- .virt_base = cpu_to_be32(0xffffffff),
- .virt_size = cpu_to_be32(0xffffffff),
- .load_base = cpu_to_be32(0xffffffff),
-- .min_rma = cpu_to_be32(256), /* 256MB min RMA */
-+ .min_rma = cpu_to_be32(512), /* 512MB min RMA */
- .min_load = cpu_to_be32(0xffffffff), /* full client load */
- .min_rma_percent = 0, /* min RMA percentage of total RAM */
- .max_pft_size = 48, /* max log_2(hash table size) */
diff --git a/prevent-bounds-check-bypass-via-speculative-execution.patch b/prevent-bounds-check-bypass-via-speculative-execution.patch
new file mode 100644
index 000000000..890efc149
--- /dev/null
+++ b/prevent-bounds-check-bypass-via-speculative-execution.patch
@@ -0,0 +1,1399 @@
+From 1d115042dde79e3c0fcc18af548342b172e749e1 Mon Sep 17 00:00:00 2001
+From: Mark Rutland <mark.rutland@arm.com>
+Date: Thu, 7 Dec 2017 17:14:24 +0000
+Subject: [PATCH 01/19] asm-generic/barrier: add generic nospec helpers
+
+Under speculation, CPUs may mis-predict branches in bounds checks. Thus,
+memory accesses under a bounds check may be speculated even if the
+bounds check fails, providing a primitive for building a side channel.
+
+This patch adds helpers which can be used to inhibit the use of
+out-of-bounds pointers under speculation.
+
+A generic implementation is provided for compatibility, but does not
+guarantee safety under speculation. Architectures are expected to
+override these helpers as necessary.
+
+Signed-off-by: Mark Rutland <mark.rutland@arm.com>
+Signed-off-by: Will Deacon <will.deacon@arm.com>
+Cc: Daniel Willams <dan.j.williams@intel.com>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ include/asm-generic/barrier.h | 68 +++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 68 insertions(+)
+
+diff --git a/include/asm-generic/barrier.h b/include/asm-generic/barrier.h
+index fe297b599b0a..91c3071f49e5 100644
+--- a/include/asm-generic/barrier.h
++++ b/include/asm-generic/barrier.h
+@@ -54,6 +54,74 @@
+ #define read_barrier_depends() do { } while (0)
+ #endif
+
++/*
++ * Inhibit subsequent speculative memory accesses.
++ *
++ * Architectures with a suitable memory barrier should provide an
++ * implementation. This is non-portable, and generic code should use
++ * nospec_ptr().
++ */
++#ifndef __nospec_barrier
++#define __nospec_barrier() do { } while (0)
++#endif
++
++/**
++ * nospec_ptr() - Ensure a pointer is bounded, even under speculation.
++ *
++ * @ptr: the pointer to test
++ * @lo: the lower valid bound for @ptr, inclusive
++ * @hi: the upper valid bound for @ptr, exclusive
++ *
++ * If @ptr falls in the interval [@lo, @i), returns @ptr, otherwise returns
++ * NULL.
++ *
++ * Architectures which do not provide __nospec_barrier() should override this
++ * to ensure that ptr falls in the [lo, hi) interval both under architectural
++ * execution and under speculation, preventing propagation of an out-of-bounds
++ * pointer to code which is speculatively executed.
++ */
++#ifndef nospec_ptr
++#define nospec_ptr(ptr, lo, hi) \
++({ \
++ typeof (ptr) __ret; \
++ typeof (ptr) __ptr = (ptr); \
++ typeof (ptr) __lo = (lo); \
++ typeof (ptr) __hi = (hi); \
++ \
++ __ret = (__lo <= __ptr && __ptr < __hi) ? __ptr : NULL; \
++ \
++ __nospec_barrier(); \
++ \
++ __ret; \
++})
++#endif
++
++/**
++ * nospec_array_ptr - Generate a pointer to an array element, ensuring the
++ * pointer is bounded under speculation.
++ *
++ * @arr: the base of the array
++ * @idx: the index of the element
++ * @sz: the number of elements in the array
++ *
++ * If @idx falls in the interval [0, @sz), returns the pointer to @arr[@idx],
++ * otherwise returns NULL.
++ *
++ * This is a wrapper around nospec_ptr(), provided for convenience.
++ * Architectures should implement nospec_ptr() to ensure this is the case
++ * under speculation.
++ */
++#define nospec_array_ptr(arr, idx, sz) \
++({ \
++ typeof(*(arr)) *__arr = (arr); \
++ typeof(idx) __idx = (idx); \
++ typeof(sz) __sz = (sz); \
++ \
++ nospec_ptr(__arr + __idx, __arr, __arr + __sz); \
++})
++
++#undef __nospec_barrier
++
+ #ifndef __smp_mb
+ #define __smp_mb() mb()
+ #endif
+--
+2.14.3
+
+From 0a9659964052448903985b38f08b3912ab65f1a9 Mon Sep 17 00:00:00 2001
+From: Mark Rutland <mark.rutland@arm.com>
+Date: Wed, 3 Jan 2018 19:47:06 +0000
+Subject: [PATCH 02/19] Documentation: document nospec helpers
+
+Document the rationale and usage of the new nospec*() helpers.
+
+Signed-off-by: Mark Rutland <mark.rutland@arm.com>
+Signed-off-by: Will Deacon <will.deacon@arm.com>
+Cc: Dan Williams <dan.j.williams@intel.com>
+Cc: Jonathan Corbet <corbet@lwn.net>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ Documentation/speculation.txt | 166 ++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 166 insertions(+)
+ create mode 100644 Documentation/speculation.txt
+
+diff --git a/Documentation/speculation.txt b/Documentation/speculation.txt
+new file mode 100644
+index 000000000000..748fcd4dcda4
+--- /dev/null
++++ b/Documentation/speculation.txt
+@@ -0,0 +1,166 @@
++This document explains potential effects of speculation, and how undesirable
++effects can be mitigated portably using common APIs.
++
++===========
++Speculation
++===========
++
++To improve performance and minimize average latencies, many contemporary CPUs
++employ speculative execution techniques such as branch prediction, performing
++work which may be discarded at a later stage.
++
++Typically speculative execution cannot be observed from architectural state,
++such as the contents of registers. However, in some cases it is possible to
++observe its impact on microarchitectural state, such as the presence or
++absence of data in caches. Such state may form side-channels which can be
++observed to extract secret information.
++
++For example, in the presence of branch prediction, it is possible for bounds
++checks to be ignored by code which is speculatively executed. Consider the
++following code:
++
++ int load_array(int *array, unsigned int idx) {
++ if (idx >= MAX_ARRAY_ELEMS)
++ return 0;
++ else
++ return array[idx];
++ }
++
++Which, on arm64, may be compiled to an assembly sequence such as:
++
++ CMP <idx>, #MAX_ARRAY_ELEMS
++ B.LT less
++ MOV <returnval>, #0
++ RET
++ less:
++ LDR <returnval>, [<array>, <idx>]
++ RET
++
++It is possible that a CPU mis-predicts the conditional branch, and
++speculatively loads array[idx], even if idx >= MAX_ARRAY_ELEMS. This value
++will subsequently be discarded, but the speculated load may affect
++microarchitectural state which can be subsequently measured.
++
++More complex sequences involving multiple dependent memory accesses may result
++in sensitive information being leaked. Consider the following code, building on
++the prior example:
++
++ int load_dependent_arrays(int *arr1, int *arr2, int idx) {
++ int val1, val2,
++
++ val1 = load_array(arr1, idx);
++ val2 = load_array(arr2, val1);
++
++ return val2;
++ }
++
++Under speculation, the first call to load_array() may return the value of an
++out-of-bounds address, while the second call will influence microarchitectural
++state dependent on this value. This may provide an arbitrary read primitive.
++
++====================================
++Mitigating speculation side-channels
++====================================
++
++The kernel provides a generic API to ensure that bounds checks are respected
++even under speculation. Architectures which are affected by speculation-based
++side-channels are expected to implement these primitives.
++
++The following helpers found in <asm/barrier.h> can be used to prevent
++information from being leaked via side-channels.
++
++* nospec_ptr(ptr, lo, hi)
++
++ Returns a sanitized pointer that is bounded by the [lo, hi) interval. When
++ ptr < lo, or ptr >= hi, NULL is returned. Prevents an out-of-bounds pointer
++ being propagated to code which is speculatively executed.
++
++ This is expected to be used by code which computes pointers to data
++ structures, where part of the address (such as an array index) may be
++ user-controlled.
++
++ This can be used to protect the earlier load_array() example:
++
++ int load_array(int *array, unsigned int idx)
++ {
++ int *elem;
++
++ if ((elem = nospec_ptr(array + idx, array, array + MAX_ARRAY_ELEMS)))
++ return *elem;
++ else
++ return 0;
++ }
++
++ This can also be used in situations where multiple fields on a structure are
++ accessed:
++
++ struct foo array[SIZE];
++ int a, b;
++
++ void do_thing(int idx)
++ {
++ struct foo *elem;
++
++ if ((elem = nospec_ptr(array + idx, array, array + SIZE)) {
++ a = elem->field_a;
++ b = elem->field_b;
++ }
++ }
++
++ It is imperative that the returned pointer is used. Pointers which are
++ generated separately are subject to a number of potential CPU and compiler
++ optimizations, and may still be used speculatively. For example, this means
++ that the following sequence is unsafe:
++
++ struct foo array[SIZE];
++ int a, b;
++
++ void do_thing(int idx)
++ {
++ if (nospec_ptr(array + idx, array, array + SIZE) != NULL) {
++ // unsafe as wrong pointer is used
++ a = array[idx].field_a;
++ b = array[idx].field_b;
++ }
++ }
++
++ Similarly, it is unsafe to compare the returned pointer with other pointers,
++ as this may permit the compiler to substitute one pointer with another,
++ permitting speculation. For example, the following sequence is unsafe:
++
++ struct foo array[SIZE];
++ int a, b;
++
++ void do_thing(int idx)
++ {
++ struct foo *elem = nospec_ptr(array + idx, array, array + size);
++
++ // unsafe due to pointer substitution
++ if (elem == &array[idx]) {
++ a = elem->field_a;
++ b = elem->field_b;
++ }
++ }
++
++* nospec_array_ptr(arr, idx, sz)
++
++ Returns a sanitized pointer to arr[idx] only if idx falls in the [0, sz)
++ interval. When idx < 0 or idx > sz, NULL is returned. Prevents an
++ out-of-bounds pointer being propagated to code which is speculatively
++ executed.
++
++ This is a convenience function which wraps nospec_ptr(), and has the same
++ caveats w.r.t. the use of the returned pointer.
++
++ For example, this may be used as follows:
++
++ int load_array(int *array, unsigned int idx)
++ {
++ int *elem;
++
++ if ((elem = nospec_array_ptr(array, idx, MAX_ARRAY_ELEMS)))
++ return *elem;
++ else
++ return 0;
++ }
++
+--
+2.14.3
+
+From 2b98026ffeeb0b4a06c80fe39bfebd5cef4a8fa6 Mon Sep 17 00:00:00 2001
+From: Mark Rutland <mark.rutland@arm.com>
+Date: Thu, 7 Dec 2017 17:15:01 +0000
+Subject: [PATCH 03/19] arm64: implement nospec_ptr()
+
+This patch implements nospec_ptr() for arm64, following the recommended
+architectural sequence.
+
+Signed-off-by: Mark Rutland <mark.rutland@arm.com>
+Signed-off-by: Will Deacon <will.deacon@arm.com>
+Cc: Dan Williams <dan.j.williams@intel.com>
+Cc: Peter Zijlstra <peterz@infradead.org>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ arch/arm64/include/asm/barrier.h | 55 ++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 55 insertions(+)
+
+diff --git a/arch/arm64/include/asm/barrier.h b/arch/arm64/include/asm/barrier.h
+index 77651c49ef44..b4819f6a0e5c 100644
+--- a/arch/arm64/include/asm/barrier.h
++++ b/arch/arm64/include/asm/barrier.h
+@@ -40,6 +40,61 @@
+ #define dma_rmb() dmb(oshld)
+ #define dma_wmb() dmb(oshst)
+
++#define __load_no_speculate_n(ptr, lo, hi, failval, cmpptr, w, sz) \
++({ \
++ typeof(*ptr) __nln_val; \
++ typeof(*ptr) __failval = \
++ (typeof(*ptr))(unsigned long)(failval); \
++ \
++ asm volatile ( \
++ " cmp %[c], %[l]\n" \
++ " ccmp %[c], %[h], 2, cs\n" \
++ " b.cs 1f\n" \
++ " ldr" #sz " %" #w "[v], %[p]\n" \
++ "1: csel %" #w "[v], %" #w "[v], %" #w "[f], cc\n" \
++ " hint #0x14 // CSDB\n" \
++ : [v] "=&r" (__nln_val) \
++ : [p] "m" (*(ptr)), [l] "r" (lo), [h] "r" (hi), \
++ [f] "rZ" (__failval), [c] "r" (cmpptr) \
++ : "cc"); \
++ \
++ __nln_val; \
++})
++
++#define __load_no_speculate(ptr, lo, hi, failval, cmpptr) \
++({ \
++ typeof(*(ptr)) __nl_val; \
++ \
++ switch (sizeof(__nl_val)) { \
++ case 1: \
++ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \
++ cmpptr, w, b); \
++ break; \
++ case 2: \
++ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \
++ cmpptr, w, h); \
++ break; \
++ case 4: \
++ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \
++ cmpptr, w, ); \
++ break; \
++ case 8: \
++ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \
++ cmpptr, x, ); \
++ break; \
++ default: \
++ BUILD_BUG(); \
++ } \
++ \
++ __nl_val; \
++})
++
++#define nospec_ptr(ptr, lo, hi) \
++({ \
++ typeof(ptr) __np_ptr = (ptr); \
++ __load_no_speculate(&__np_ptr, lo, hi, 0, __np_ptr); \
++})
++
+ #define __smp_mb() dmb(ish)
+ #define __smp_rmb() dmb(ishld)
+ #define __smp_wmb() dmb(ishst)
+--
+2.14.3
+
+From cedaed8d38108dc6b68c1418d9b942f64b2be488 Mon Sep 17 00:00:00 2001
+From: Mark Rutland <mark.rutland@arm.com>
+Date: Fri, 5 Jan 2018 16:44:36 +0000
+Subject: [PATCH 04/19] arm: implement nospec_ptr()
+
+This patch implements nospec_ptr() for arm, following the recommended
+architectural sequences for the arm and thumb instruction sets.
+
+Signed-off-by: Mark Rutland <mark.rutland@arm.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ arch/arm/include/asm/barrier.h | 75 ++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 75 insertions(+)
+
+diff --git a/arch/arm/include/asm/barrier.h b/arch/arm/include/asm/barrier.h
+index 40f5c410fd8c..6384c90e4b72 100644
+--- a/arch/arm/include/asm/barrier.h
++++ b/arch/arm/include/asm/barrier.h
+@@ -37,6 +37,81 @@
+ #define dmb(x) __asm__ __volatile__ ("" : : : "memory")
+ #endif
+
++#ifdef CONFIG_THUMB2_KERNEL
++#define __load_no_speculate_n(ptr, lo, hi, failval, cmpptr, sz) \
++({ \
++ typeof(*ptr) __nln_val; \
++ typeof(*ptr) __failval = \
++ (typeof(*ptr))(unsigned long)(failval); \
++ \
++ asm volatile ( \
++ " cmp %[c], %[l]\n" \
++ " it hs\n" \
++ " cmphs %[h], %[c]\n" \
++ " blo 1f\n" \
++ " ld" #sz " %[v], %[p]\n" \
++ "1: it lo\n" \
++ " movlo %[v], %[f]\n" \
++ " .inst 0xf3af8014 @ CSDB\n" \
++ : [v] "=&r" (__nln_val) \
++ : [p] "m" (*(ptr)), [l] "r" (lo), [h] "r" (hi), \
++ [f] "r" (__failval), [c] "r" (cmpptr) \
++ : "cc"); \
++ \
++ __nln_val; \
++})
++#else
++#define __load_no_speculate_n(ptr, lo, hi, failval, cmpptr, sz) \
++({ \
++ typeof(*ptr) __nln_val; \
++ typeof(*ptr) __failval = \
++ (typeof(*ptr))(unsigned long)(failval); \
++ \
++ asm volatile ( \
++ " cmp %[c], %[l]\n" \
++ " cmphs %[h], %[c]\n" \
++ " ldr" #sz "hi %[v], %[p]\n" \
++ " movls %[v], %[f]\n" \
++ " .inst 0xe320f014 @ CSDB\n" \
++ : [v] "=&r" (__nln_val) \
++ : [p] "m" (*(ptr)), [l] "r" (lo), [h] "r" (hi), \
++ [f] "r" (__failval), [c] "r" (cmpptr) \
++ : "cc"); \
++ \
++ __nln_val; \
++})
++#endif
++
++#define __load_no_speculate(ptr, lo, hi, failval, cmpptr) \
++({ \
++ typeof(*(ptr)) __nl_val; \
++ \
++ switch (sizeof(__nl_val)) { \
++ case 1: \
++ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \
++ cmpptr, b); \
++ break; \
++ case 2: \
++ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \
++ cmpptr, h); \
++ break; \
++ case 4: \
++ __nl_val = __load_no_speculate_n(ptr, lo, hi, failval, \
++ cmpptr, ); \
++ break; \
++ default: \
++ BUILD_BUG(); \
++ } \
++ \
++ __nl_val; \
++})
++
++#define nospec_ptr(ptr, lo, hi) \
++({ \
++ typeof(ptr) __np_ptr = (ptr); \
++ __load_no_speculate(&__np_ptr, lo, hi, 0, __np_ptr); \
++})
++
+ #ifdef CONFIG_ARM_HEAVY_MB
+ extern void (*soc_mb)(void);
+ extern void arm_heavy_mb(void);
+--
+2.14.3
+
+From d14a4150a2f74a068247cf3846405904e21a8d2c Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 14:51:58 -0800
+Subject: [PATCH 05/19] x86: implement nospec_barrier()
+
+The new speculative execution barrier, nospec_barrier(), ensures
+that any userspace controllable speculation doesn't cross the boundary.
+
+Any user observable speculative activity on this CPU thread before this
+point either completes, reaches a state it can no longer cause an
+observable activity, or is aborted before instructions after the barrier
+execute.
+
+In the x86 case nospec_barrier() resolves to an lfence if
+X86_FEATURE_LFENCE_RDTSC is present. Other architectures can define
+their variants.
+
+Note the expectation is that this barrier is never used directly, at
+least outside of architecture specific code. It is implied by the
+nospec_{array_ptr,ptr} macros.
+
+x86, for now, depends on the barrier for protection while other
+architectures place their speculation prevention in
+nospec_{ptr,array_ptr} when a barrier instruction is not available or
+too heavy-weight. In the x86 case lfence is not a fully serializing
+instruction so it is not as expensive as other barriers.
+
+Suggested-by: Peter Zijlstra <peterz@infradead.org>
+Suggested-by: Arjan van de Ven <arjan@linux.intel.com>
+Suggested-by: Alan Cox <alan.cox@intel.com>
+Cc: Mark Rutland <mark.rutland@arm.com>
+Cc: Greg KH <gregkh@linuxfoundation.org>
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: Alan Cox <alan@linux.intel.com>
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ arch/x86/include/asm/barrier.h | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/arch/x86/include/asm/barrier.h b/arch/x86/include/asm/barrier.h
+index 7fb336210e1b..1148cd9f5ae7 100644
+--- a/arch/x86/include/asm/barrier.h
++++ b/arch/x86/include/asm/barrier.h
+@@ -24,6 +24,12 @@
+ #define wmb() asm volatile("sfence" ::: "memory")
+ #endif
+
++/*
++ * CPUs without LFENCE don't really speculate much. Possibly fall back to IRET-to-self.
++ */
++#define __nospec_barrier() alternative("", "lfence", X86_FEATURE_LFENCE_RDTSC)
++#define nospec_barrier __nospec_barrier
++
+ #ifdef CONFIG_X86_PPRO_FENCE
+ #define dma_rmb() rmb()
+ #else
+--
+2.14.3
+
+From d077f11b7fcb697af0c9419cc2273d179e6f51ad Mon Sep 17 00:00:00 2001
+From: Andi Kleen <ak@linux.intel.com>
+Date: Thu, 4 Jan 2018 13:36:20 -0800
+Subject: [PATCH 06/19] x86, barrier: stop speculation for failed access_ok
+
+When access_ok fails we should always stop speculating.
+Add the required barriers to the x86 access_ok macro.
+
+Cc: Thomas Gleixner <tglx@linutronix.de>
+Cc: Ingo Molnar <mingo@redhat.com>
+Cc: "H. Peter Anvin" <hpa@zytor.com>
+Cc: Arnd Bergmann <arnd@arndb.de>
+Cc: x86@kernel.org
+Signed-off-by: Andi Kleen <ak@linux.intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ arch/x86/include/asm/uaccess.h | 17 +++++++++++++----
+ include/asm-generic/barrier.h | 6 +++---
+ 2 files changed, 16 insertions(+), 7 deletions(-)
+
+diff --git a/arch/x86/include/asm/uaccess.h b/arch/x86/include/asm/uaccess.h
+index 574dff4d2913..9b6f20cfaeb9 100644
+--- a/arch/x86/include/asm/uaccess.h
++++ b/arch/x86/include/asm/uaccess.h
+@@ -43,6 +43,8 @@ static inline void set_fs(mm_segment_t fs)
+ /*
+ * Test whether a block of memory is a valid user space address.
+ * Returns 0 if the range is valid, nonzero otherwise.
++ *
++ * We also disable speculation when a check fails.
+ */
+ static inline bool __chk_range_not_ok(unsigned long addr, unsigned long size, unsigned long limit)
+ {
+@@ -53,14 +55,19 @@ static inline bool __chk_range_not_ok(unsigned long addr, unsigned long size, un
+ * important to subtract the size from the
+ * limit, not add it to the address).
+ */
+- if (__builtin_constant_p(size))
+- return unlikely(addr > limit - size);
++ if (__builtin_constant_p(size)) {
++ if (unlikely(addr > limit - size))
++ return true;
++ nospec_barrier();
++ return false;
++ }
+
+ /* Arbitrary sizes? Be careful about overflow */
+ addr += size;
+- if (unlikely(addr < size))
++ if (unlikely(addr < size || addr > limit))
+ return true;
+- return unlikely(addr > limit);
++ nospec_barrier();
++ return false;
+ }
+
+ #define __range_not_ok(addr, size, limit) \
+@@ -94,6 +101,8 @@ static inline bool __chk_range_not_ok(unsigned long addr, unsigned long size, un
+ * Note that, depending on architecture, this function probably just
+ * checks that the pointer is in the user space range - after calling
+ * this function, memory access functions may still return -EFAULT.
++ *
++ * Stops speculation automatically
+ */
+ #define access_ok(type, addr, size) \
+ ({ \
+diff --git a/include/asm-generic/barrier.h b/include/asm-generic/barrier.h
+index 91c3071f49e5..a11765eba860 100644
+--- a/include/asm-generic/barrier.h
++++ b/include/asm-generic/barrier.h
+@@ -59,7 +59,9 @@
+ *
+ * Architectures with a suitable memory barrier should provide an
+ * implementation. This is non-portable, and generic code should use
+- * nospec_ptr().
++ * nospec_{array_ptr,ptr}. Arch-specific code should define and use
++ * nospec_barrier() for usages where nospec_{array_ptr,ptr} is
++ * unsuitable.
+ */
+ #ifndef __nospec_barrier
+ #define __nospec_barrier() do { } while (0)
+@@ -120,8 +122,6 @@
+ nospec_ptr(__arr + __idx, __arr, __arr + __sz); \
+ })
+
+-#undef __nospec_barrier
+-
+ #ifndef __smp_mb
+ #define __smp_mb() mb()
+ #endif
+--
+2.14.3
+
+From bb10d660be01a93f19d258260dd25444e14e5889 Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:53:55 -0800
+Subject: [PATCH 07/19] [media] uvcvideo: prevent bounds-check bypass via
+ speculative execution
+
+Static analysis reports that 'index' may be a user controlled value that
+is used as a data dependency to read 'pin' from the
+'selector->baSourceID' array. In order to avoid potential leaks of
+kernel memory values, block speculative execution of the instruction
+stream that could issue reads based on an invalid value of 'pin'.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
+Cc: Mauro Carvalho Chehab <mchehab@kernel.org>
+Cc: linux-media@vger.kernel.org
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ drivers/media/usb/uvc/uvc_v4l2.c | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/media/usb/uvc/uvc_v4l2.c b/drivers/media/usb/uvc/uvc_v4l2.c
+index 3e7e283a44a8..7442626dc20e 100644
+--- a/drivers/media/usb/uvc/uvc_v4l2.c
++++ b/drivers/media/usb/uvc/uvc_v4l2.c
+@@ -22,6 +22,7 @@
+ #include <linux/mm.h>
+ #include <linux/wait.h>
+ #include <linux/atomic.h>
++#include <linux/compiler.h>
+
+ #include <media/v4l2-common.h>
+ #include <media/v4l2-ctrls.h>
+@@ -810,6 +811,7 @@ static int uvc_ioctl_enum_input(struct file *file, void *fh,
+ struct uvc_entity *iterm = NULL;
+ u32 index = input->index;
+ int pin = 0;
++ __u8 *elem;
+
+ if (selector == NULL ||
+ (chain->dev->quirks & UVC_QUIRK_IGNORE_SELECTOR_UNIT)) {
+@@ -820,8 +822,9 @@ static int uvc_ioctl_enum_input(struct file *file, void *fh,
+ break;
+ }
+ pin = iterm->id;
+- } else if (index < selector->bNrInPins) {
+- pin = selector->baSourceID[index];
++ } else if ((elem = nospec_array_ptr(selector->baSourceID, index,
++ selector->bNrInPins))) {
++ pin = *elem;
+ list_for_each_entry(iterm, &chain->entities, chain) {
+ if (!UVC_ENTITY_IS_ITERM(iterm))
+ continue;
+--
+2.14.3
+
+From 8a4e4e1e674b9aaf0d2ca95c3fa5117ab5aa2987 Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:53:56 -0800
+Subject: [PATCH 08/19] carl9170: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'queue' may be a user controlled value that
+is used as a data dependency to read from the 'ar9170_qmap' array. In
+order to avoid potential leaks of kernel memory values, block
+speculative execution of the instruction stream that could issue reads
+based on an invalid result of 'ar9170_qmap[queue]'. In this case the
+value of 'ar9170_qmap[queue]' is immediately reused as an index to the
+'ar->edcf' array.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: Christian Lamparter <chunkeey@googlemail.com>
+Cc: Kalle Valo <kvalo@codeaurora.org>
+Cc: linux-wireless@vger.kernel.org
+Cc: netdev@vger.kernel.org
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ drivers/net/wireless/ath/carl9170/main.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c
+index 988c8857d78c..0ff34cbe2b62 100644
+--- a/drivers/net/wireless/ath/carl9170/main.c
++++ b/drivers/net/wireless/ath/carl9170/main.c
+@@ -41,6 +41,7 @@
+ #include <linux/module.h>
+ #include <linux/etherdevice.h>
+ #include <linux/random.h>
++#include <linux/compiler.h>
+ #include <net/mac80211.h>
+ #include <net/cfg80211.h>
+ #include "hw.h"
+@@ -1384,11 +1385,12 @@ static int carl9170_op_conf_tx(struct ieee80211_hw *hw,
+ const struct ieee80211_tx_queue_params *param)
+ {
+ struct ar9170 *ar = hw->priv;
++ const u8 *elem;
+ int ret;
+
+ mutex_lock(&ar->mutex);
+- if (queue < ar->hw->queues) {
+- memcpy(&ar->edcf[ar9170_qmap[queue]], param, sizeof(*param));
++ if ((elem = nospec_array_ptr(ar9170_qmap, queue, ar->hw->queues))) {
++ memcpy(&ar->edcf[*elem], param, sizeof(*param));
+ ret = carl9170_set_qos(ar);
+ } else {
+ ret = -EINVAL;
+--
+2.14.3
+
+From b2134ba6dc16b4e6a232e34179c3489c3e51ba89 Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:53:57 -0800
+Subject: [PATCH 09/19] p54: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'queue' may be a user controlled value that
+is used as a data dependency to read from the 'priv->qos_params' array.
+In order to avoid potential leaks of kernel memory values, block
+speculative execution of the instruction stream that could issue reads
+based on an invalid result of 'priv->qos_params[queue]'.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: Christian Lamparter <chunkeey@googlemail.com>
+Cc: Kalle Valo <kvalo@codeaurora.org>
+Cc: linux-wireless@vger.kernel.org
+Cc: netdev@vger.kernel.org
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ drivers/net/wireless/intersil/p54/main.c | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/drivers/net/wireless/intersil/p54/main.c b/drivers/net/wireless/intersil/p54/main.c
+index ab6d39e12069..85c9cbee35fc 100644
+--- a/drivers/net/wireless/intersil/p54/main.c
++++ b/drivers/net/wireless/intersil/p54/main.c
+@@ -20,6 +20,7 @@
+ #include <linux/firmware.h>
+ #include <linux/etherdevice.h>
+ #include <linux/module.h>
++#include <linux/compiler.h>
+
+ #include <net/mac80211.h>
+
+@@ -411,12 +412,13 @@ static int p54_conf_tx(struct ieee80211_hw *dev,
+ const struct ieee80211_tx_queue_params *params)
+ {
+ struct p54_common *priv = dev->priv;
++ struct p54_edcf_queue_param *p54_q;
+ int ret;
+
+ mutex_lock(&priv->conf_mutex);
+- if (queue < dev->queues) {
+- P54_SET_QUEUE(priv->qos_params[queue], params->aifs,
+- params->cw_min, params->cw_max, params->txop);
++ if ((p54_q = nospec_array_ptr(priv->qos_params, queue, dev->queues))) {
++ P54_SET_QUEUE(p54_q[0], params->aifs, params->cw_min,
++ params->cw_max, params->txop);
+ ret = p54_set_edcf(priv);
+ } else
+ ret = -EINVAL;
+--
+2.14.3
+
+From addb69e8d90a79887aa369398e73b9b64fb9e910 Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:53:58 -0800
+Subject: [PATCH 10/19] qla2xxx: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'handle' may be a user controlled value
+that is used as a data dependency to read 'sp' from the
+'req->outstanding_cmds' array. In order to avoid potential leaks of
+kernel memory values, block speculative execution of the instruction
+stream that could issue reads based on an invalid value of 'sp'. In this
+case 'sp' is directly dereferenced later in the function.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: qla2xxx-upstream@qlogic.com
+Cc: "James E.J. Bottomley" <jejb@linux.vnet.ibm.com>
+Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
+Cc: linux-scsi@vger.kernel.org
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ drivers/scsi/qla2xxx/qla_mr.c | 15 +++++++++------
+ 1 file changed, 9 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/scsi/qla2xxx/qla_mr.c b/drivers/scsi/qla2xxx/qla_mr.c
+index d5da3981cefe..128b41de3784 100644
+--- a/drivers/scsi/qla2xxx/qla_mr.c
++++ b/drivers/scsi/qla2xxx/qla_mr.c
+@@ -9,6 +9,7 @@
+ #include <linux/ktime.h>
+ #include <linux/pci.h>
+ #include <linux/ratelimit.h>
++#include <linux/compiler.h>
+ #include <linux/vmalloc.h>
+ #include <linux/bsg-lib.h>
+ #include <scsi/scsi_tcq.h>
+@@ -2275,7 +2276,7 @@ qlafx00_ioctl_iosb_entry(scsi_qla_host_t *vha, struct req_que *req,
+ static void
+ qlafx00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt)
+ {
+- srb_t *sp;
++ srb_t *sp, **elem;
+ fc_port_t *fcport;
+ struct scsi_cmnd *cp;
+ struct sts_entry_fx00 *sts;
+@@ -2304,8 +2305,9 @@ qlafx00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt)
+ req = ha->req_q_map[que];
+
+ /* Validate handle. */
+- if (handle < req->num_outstanding_cmds)
+- sp = req->outstanding_cmds[handle];
++ if ((elem = nospec_array_ptr(req->outstanding_cmds, handle,
++ req->num_outstanding_cmds)))
++ sp = *elem;
+ else
+ sp = NULL;
+
+@@ -2626,7 +2628,7 @@ static void
+ qlafx00_multistatus_entry(struct scsi_qla_host *vha,
+ struct rsp_que *rsp, void *pkt)
+ {
+- srb_t *sp;
++ srb_t *sp, **elem;
+ struct multi_sts_entry_fx00 *stsmfx;
+ struct qla_hw_data *ha = vha->hw;
+ uint32_t handle, hindex, handle_count, i;
+@@ -2655,8 +2657,9 @@ qlafx00_multistatus_entry(struct scsi_qla_host *vha,
+ req = ha->req_q_map[que];
+
+ /* Validate handle. */
+- if (handle < req->num_outstanding_cmds)
+- sp = req->outstanding_cmds[handle];
++ if ((elem = nospec_array_ptr(req->outstanding_cmds, handle,
++ req->num_outstanding_cmds)))
++ sp = *elem;
+ else
+ sp = NULL;
+
+--
+2.14.3
+
+From 18e5e10139f6a04e00f6522c4b0091f167eb6c1d Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:54:00 -0800
+Subject: [PATCH 11/19] cw1200: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'queue' may be a user controlled value that
+is used as a data dependency to read 'txq_params' from the
+'priv->tx_queue_params.params' array. In order to avoid potential leaks
+of kernel memory values, block speculative execution of the instruction
+stream that could issue reads based on an invalid value of 'txq_params'.
+In this case 'txq_params' is referenced later in the function.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: Solomon Peachy <pizza@shaftnet.org>
+Cc: Kalle Valo <kvalo@codeaurora.org>
+Cc: linux-wireless@vger.kernel.org
+Cc: netdev@vger.kernel.org
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ drivers/net/wireless/st/cw1200/sta.c | 10 ++++++----
+ drivers/net/wireless/st/cw1200/wsm.h | 4 +---
+ 2 files changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/drivers/net/wireless/st/cw1200/sta.c b/drivers/net/wireless/st/cw1200/sta.c
+index 38678e9a0562..886942617f14 100644
+--- a/drivers/net/wireless/st/cw1200/sta.c
++++ b/drivers/net/wireless/st/cw1200/sta.c
+@@ -14,6 +14,7 @@
+ #include <linux/firmware.h>
+ #include <linux/module.h>
+ #include <linux/etherdevice.h>
++#include <linux/compiler.h>
+
+ #include "cw1200.h"
+ #include "sta.h"
+@@ -612,18 +613,19 @@ int cw1200_conf_tx(struct ieee80211_hw *dev, struct ieee80211_vif *vif,
+ u16 queue, const struct ieee80211_tx_queue_params *params)
+ {
+ struct cw1200_common *priv = dev->priv;
++ struct wsm_set_tx_queue_params *txq_params;
+ int ret = 0;
+ /* To prevent re-applying PM request OID again and again*/
+ bool old_uapsd_flags;
+
+ mutex_lock(&priv->conf_mutex);
+
+- if (queue < dev->queues) {
++ if ((txq_params = nospec_array_ptr(priv->tx_queue_params.params,
++ queue, dev->queues))) {
+ old_uapsd_flags = le16_to_cpu(priv->uapsd_info.uapsd_flags);
+
+- WSM_TX_QUEUE_SET(&priv->tx_queue_params, queue, 0, 0, 0);
+- ret = wsm_set_tx_queue_params(priv,
+- &priv->tx_queue_params.params[queue], queue);
++ WSM_TX_QUEUE_SET(txq_params, 0, 0, 0);
++ ret = wsm_set_tx_queue_params(priv, txq_params, queue);
+ if (ret) {
+ ret = -EINVAL;
+ goto out;
+diff --git a/drivers/net/wireless/st/cw1200/wsm.h b/drivers/net/wireless/st/cw1200/wsm.h
+index 48086e849515..8c8d9191e233 100644
+--- a/drivers/net/wireless/st/cw1200/wsm.h
++++ b/drivers/net/wireless/st/cw1200/wsm.h
+@@ -1099,10 +1099,8 @@ struct wsm_tx_queue_params {
+ };
+
+
+-#define WSM_TX_QUEUE_SET(queue_params, queue, ack_policy, allowed_time,\
+- max_life_time) \
++#define WSM_TX_QUEUE_SET(p, ack_policy, allowed_time, max_life_time) \
+ do { \
+- struct wsm_set_tx_queue_params *p = &(queue_params)->params[queue]; \
+ p->ackPolicy = (ack_policy); \
+ p->allowedMediumTime = (allowed_time); \
+ p->maxTransmitLifetime = (max_life_time); \
+--
+2.14.3
+
+From 0096694093529628e2a855812a5111358d1e952d Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:54:01 -0800
+Subject: [PATCH 12/19] Thermal/int340x: prevent bounds-check bypass via
+ speculative execution
+
+Static analysis reports that 'trip' may be a user controlled value that
+is used as a data dependency to read '*temp' from the 'd->aux_trips'
+array. In order to avoid potential leaks of kernel memory values, block
+speculative execution of the instruction stream that could issue reads
+based on an invalid value of '*temp'.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
+Cc: Zhang Rui <rui.zhang@intel.com>
+Cc: Eduardo Valentin <edubezval@gmail.com>
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ drivers/thermal/int340x_thermal/int340x_thermal_zone.c | 14 ++++++++------
+ 1 file changed, 8 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/thermal/int340x_thermal/int340x_thermal_zone.c b/drivers/thermal/int340x_thermal/int340x_thermal_zone.c
+index 145a5c53ff5c..442a1d9bf7ad 100644
+--- a/drivers/thermal/int340x_thermal/int340x_thermal_zone.c
++++ b/drivers/thermal/int340x_thermal/int340x_thermal_zone.c
+@@ -17,6 +17,7 @@
+ #include <linux/init.h>
+ #include <linux/acpi.h>
+ #include <linux/thermal.h>
++#include <linux/compiler.h>
+ #include "int340x_thermal_zone.h"
+
+ static int int340x_thermal_get_zone_temp(struct thermal_zone_device *zone,
+@@ -52,20 +53,21 @@ static int int340x_thermal_get_trip_temp(struct thermal_zone_device *zone,
+ int trip, int *temp)
+ {
+ struct int34x_thermal_zone *d = zone->devdata;
++ unsigned long *elem;
+ int i;
+
+ if (d->override_ops && d->override_ops->get_trip_temp)
+ return d->override_ops->get_trip_temp(zone, trip, temp);
+
+- if (trip < d->aux_trip_nr)
+- *temp = d->aux_trips[trip];
+- else if (trip == d->crt_trip_id)
++ if ((elem = nospec_array_ptr(d->aux_trips, trip, d->aux_trip_nr))) {
++ *temp = *elem;
++ } else if (trip == d->crt_trip_id) {
+ *temp = d->crt_temp;
+- else if (trip == d->psv_trip_id)
++ } else if (trip == d->psv_trip_id) {
+ *temp = d->psv_temp;
+- else if (trip == d->hot_trip_id)
++ } else if (trip == d->hot_trip_id) {
+ *temp = d->hot_temp;
+- else {
++ } else {
+ for (i = 0; i < INT340X_THERMAL_MAX_ACT_TRIP_COUNT; i++) {
+ if (d->act_trips[i].valid &&
+ d->act_trips[i].id == trip) {
+--
+2.14.3
+
+From 2a5a165ff05df37c3f4d02ab70ddee1e9329401c Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:54:03 -0800
+Subject: [PATCH 13/19] ipv6: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'offset' may be a user controlled value
+that is used as a data dependency reading from a raw6_frag_vec buffer.
+In order to avoid potential leaks of kernel memory values, block
+speculative execution of the instruction stream that could issue further
+reads based on an invalid '*(rfv->c + offset)' value.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: "David S. Miller" <davem@davemloft.net>
+Cc: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
+Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
+Cc: netdev@vger.kernel.org
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ net/ipv6/raw.c | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/net/ipv6/raw.c b/net/ipv6/raw.c
+index 761a473a07c5..384e3d59d148 100644
+--- a/net/ipv6/raw.c
++++ b/net/ipv6/raw.c
+@@ -33,6 +33,7 @@
+ #include <linux/skbuff.h>
+ #include <linux/compat.h>
+ #include <linux/uaccess.h>
++#include <linux/compiler.h>
+ #include <asm/ioctls.h>
+
+ #include <net/net_namespace.h>
+@@ -725,17 +726,17 @@ static int raw6_getfrag(void *from, char *to, int offset, int len, int odd,
+ struct sk_buff *skb)
+ {
+ struct raw6_frag_vec *rfv = from;
++ char *rfv_buf;
+
+- if (offset < rfv->hlen) {
++ if ((rfv_buf = nospec_array_ptr(rfv->c, offset, rfv->hlen))) {
+ int copy = min(rfv->hlen - offset, len);
+
+ if (skb->ip_summed == CHECKSUM_PARTIAL)
+- memcpy(to, rfv->c + offset, copy);
++ memcpy(to, rfv_buf, copy);
+ else
+ skb->csum = csum_block_add(
+ skb->csum,
+- csum_partial_copy_nocheck(rfv->c + offset,
+- to, copy, 0),
++ csum_partial_copy_nocheck(rfv_buf, to, copy, 0),
+ odd);
+
+ odd = 0;
+--
+2.14.3
+
+From f38cdd5d461ce686d201e41242fd626641e7253d Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:54:02 -0800
+Subject: [PATCH 14/19] ipv4: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'offset' may be a user controlled value
+that is used as a data dependency reading from a raw_frag_vec buffer.
+In order to avoid potential leaks of kernel memory values, block
+speculative execution of the instruction stream that could issue further
+reads based on an invalid '*(rfv->c + offset)' value.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: "David S. Miller" <davem@davemloft.net>
+Cc: Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>
+Cc: Hideaki YOSHIFUJI <yoshfuji@linux-ipv6.org>
+Cc: netdev@vger.kernel.org
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ net/ipv4/raw.c | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/net/ipv4/raw.c b/net/ipv4/raw.c
+index 125c1eab3eaa..f72b20131a15 100644
+--- a/net/ipv4/raw.c
++++ b/net/ipv4/raw.c
+@@ -57,6 +57,7 @@
+ #include <linux/in_route.h>
+ #include <linux/route.h>
+ #include <linux/skbuff.h>
++#include <linux/compiler.h>
+ #include <linux/igmp.h>
+ #include <net/net_namespace.h>
+ #include <net/dst.h>
+@@ -472,17 +473,17 @@ static int raw_getfrag(void *from, char *to, int offset, int len, int odd,
+ struct sk_buff *skb)
+ {
+ struct raw_frag_vec *rfv = from;
++ char *rfv_buf;
+
+- if (offset < rfv->hlen) {
++ if ((rfv_buf = nospec_array_ptr(rfv->hdr.c, offset, rfv->hlen))) {
+ int copy = min(rfv->hlen - offset, len);
+
+ if (skb->ip_summed == CHECKSUM_PARTIAL)
+- memcpy(to, rfv->hdr.c + offset, copy);
++ memcpy(to, rfv_buf, copy);
+ else
+ skb->csum = csum_block_add(
+ skb->csum,
+- csum_partial_copy_nocheck(rfv->hdr.c + offset,
+- to, copy, 0),
++ csum_partial_copy_nocheck(rfv_buf, to, copy, 0),
+ odd);
+
+ odd = 0;
+--
+2.14.3
+
+From 07a715cb9cd9e4e8bac7204a2462803bfe7ae259 Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:54:04 -0800
+Subject: [PATCH 15/19] vfs, fdtable: prevent bounds-check bypass via
+ speculative execution
+
+Expectedly, static analysis reports that 'fd' is a user controlled value
+that is used as a data dependency to read from the 'fdt->fd' array. In
+order to avoid potential leaks of kernel memory values, block
+speculative execution of the instruction stream that could issue reads
+based on an invalid 'file *' returned from __fcheck_files.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: Al Viro <viro@zeniv.linux.org.uk>
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ include/linux/fdtable.h | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/include/linux/fdtable.h b/include/linux/fdtable.h
+index 1c65817673db..4a147c5c2533 100644
+--- a/include/linux/fdtable.h
++++ b/include/linux/fdtable.h
+@@ -81,9 +81,10 @@ struct dentry;
+ static inline struct file *__fcheck_files(struct files_struct *files, unsigned int fd)
+ {
+ struct fdtable *fdt = rcu_dereference_raw(files->fdt);
++ struct file __rcu **fdp;
+
+- if (fd < fdt->max_fds)
+- return rcu_dereference_raw(fdt->fd[fd]);
++ if ((fdp = nospec_array_ptr(fdt->fd, fd, fdt->max_fds)))
++ return rcu_dereference_raw(*fdp);
+ return NULL;
+ }
+
+--
+2.14.3
+
+From e5ef1fdb08b0d2ae0af3f725a6c4a3394af538fe Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:54:05 -0800
+Subject: [PATCH 16/19] net: mpls: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'index' may be a user controlled value that
+is used as a data dependency reading 'rt' from the 'platform_label'
+array. In order to avoid potential leaks of kernel memory values, block
+speculative execution of the instruction stream that could issue further
+reads based on an invalid 'rt' value.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: "David S. Miller" <davem@davemloft.net>
+Cc: Eric W. Biederman <ebiederm@xmission.com>
+Cc: netdev@vger.kernel.org
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ net/mpls/af_mpls.c | 12 +++++++-----
+ 1 file changed, 7 insertions(+), 5 deletions(-)
+
+diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c
+index 8ca9915befc8..ebcf0e246cfe 100644
+--- a/net/mpls/af_mpls.c
++++ b/net/mpls/af_mpls.c
+@@ -8,6 +8,7 @@
+ #include <linux/ipv6.h>
+ #include <linux/mpls.h>
+ #include <linux/netconf.h>
++#include <linux/compiler.h>
+ #include <linux/vmalloc.h>
+ #include <linux/percpu.h>
+ #include <net/ip.h>
+@@ -77,12 +78,13 @@ static void rtmsg_lfib(int event, u32 label, struct mpls_route *rt,
+ static struct mpls_route *mpls_route_input_rcu(struct net *net, unsigned index)
+ {
+ struct mpls_route *rt = NULL;
++ struct mpls_route __rcu **platform_label =
++ rcu_dereference(net->mpls.platform_label);
++ struct mpls_route __rcu **rtp;
+
+- if (index < net->mpls.platform_labels) {
+- struct mpls_route __rcu **platform_label =
+- rcu_dereference(net->mpls.platform_label);
+- rt = rcu_dereference(platform_label[index]);
+- }
++ if ((rtp = nospec_array_ptr(platform_label, index,
++ net->mpls.platform_labels)))
++ rt = rcu_dereference(*rtp);
+ return rt;
+ }
+
+--
+2.14.3
+
+From 276b18c636de3afc89571198b22b518473ce2b2a Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:54:07 -0800
+Subject: [PATCH 17/19] udf: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'eahd->appAttrLocation' and
+'eahd->impAttrLocation' may be a user controlled values that are used as
+data dependencies for calculating source and destination buffers for
+memmove operations. In order to avoid potential leaks of kernel memory
+values, block speculative execution of the instruction stream that could
+issue further reads based on invalid 'aal' or 'ial' values.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: Jan Kara <jack@suse.com>
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ fs/udf/misc.c | 39 +++++++++++++++++++++------------------
+ 1 file changed, 21 insertions(+), 18 deletions(-)
+
+diff --git a/fs/udf/misc.c b/fs/udf/misc.c
+index 401e64cde1be..9403160822de 100644
+--- a/fs/udf/misc.c
++++ b/fs/udf/misc.c
+@@ -51,6 +51,8 @@ struct genericFormat *udf_add_extendedattr(struct inode *inode, uint32_t size,
+ int offset;
+ uint16_t crclen;
+ struct udf_inode_info *iinfo = UDF_I(inode);
++ uint8_t *ea_dst, *ea_src;
++ uint32_t aal, ial;
+
+ ea = iinfo->i_ext.i_data;
+ if (iinfo->i_lenEAttr) {
+@@ -100,33 +102,34 @@ struct genericFormat *udf_add_extendedattr(struct inode *inode, uint32_t size,
+
+ offset = iinfo->i_lenEAttr;
+ if (type < 2048) {
+- if (le32_to_cpu(eahd->appAttrLocation) <
+- iinfo->i_lenEAttr) {
+- uint32_t aal =
+- le32_to_cpu(eahd->appAttrLocation);
+- memmove(&ea[offset - aal + size],
+- &ea[aal], offset - aal);
++ aal = le32_to_cpu(eahd->appAttrLocation);
++ if ((ea_dst = nospec_array_ptr(ea, offset - aal + size,
++ iinfo->i_lenEAttr)) &&
++ (ea_src = nospec_array_ptr(ea, aal,
++ iinfo->i_lenEAttr))) {
++ memmove(ea_dst, ea_src, offset - aal);
+ offset -= aal;
+ eahd->appAttrLocation =
+ cpu_to_le32(aal + size);
+ }
+- if (le32_to_cpu(eahd->impAttrLocation) <
+- iinfo->i_lenEAttr) {
+- uint32_t ial =
+- le32_to_cpu(eahd->impAttrLocation);
+- memmove(&ea[offset - ial + size],
+- &ea[ial], offset - ial);
++
++ ial = le32_to_cpu(eahd->impAttrLocation);
++ if ((ea_dst = nospec_array_ptr(ea, offset - ial + size,
++ iinfo->i_lenEAttr)) &&
++ (ea_src = nospec_array_ptr(ea, ial,
++ iinfo->i_lenEAttr))) {
++ memmove(ea_dst, ea_src, offset - ial);
+ offset -= ial;
+ eahd->impAttrLocation =
+ cpu_to_le32(ial + size);
+ }
+ } else if (type < 65536) {
+- if (le32_to_cpu(eahd->appAttrLocation) <
+- iinfo->i_lenEAttr) {
+- uint32_t aal =
+- le32_to_cpu(eahd->appAttrLocation);
+- memmove(&ea[offset - aal + size],
+- &ea[aal], offset - aal);
++ aal = le32_to_cpu(eahd->appAttrLocation);
++ if ((ea_dst = nospec_array_ptr(ea, offset - aal + size,
++ iinfo->i_lenEAttr)) &&
++ (ea_src = nospec_array_ptr(ea, aal,
++ iinfo->i_lenEAttr))) {
++ memmove(ea_dst, ea_src, offset - aal);
+ offset -= aal;
+ eahd->appAttrLocation =
+ cpu_to_le32(aal + size);
+--
+2.14.3
+
+From e13d6b8e1e65dc93044b72a84990094bb4f7b94c Mon Sep 17 00:00:00 2001
+From: Dan Williams <dan.j.williams@intel.com>
+Date: Wed, 3 Jan 2018 13:54:09 -0800
+Subject: [PATCH 18/19] userns: prevent bounds-check bypass via speculative
+ execution
+
+Static analysis reports that 'pos' may be a user controlled value that
+is used as a data dependency determining which extent to return out of
+'map'. In order to avoid potential leaks of kernel memory values, block
+speculative execution of the instruction stream that could issue further
+reads based on an invalid speculative result from 'm_start()'.
+
+Based on an original patch by Elena Reshetova.
+
+Cc: "Eric W. Biederman" <ebiederm@xmission.com>
+Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
+Signed-off-by: Dan Williams <dan.j.williams@intel.com>
+---
+ kernel/user_namespace.c | 10 ++++------
+ 1 file changed, 4 insertions(+), 6 deletions(-)
+
+diff --git a/kernel/user_namespace.c b/kernel/user_namespace.c
+index 246d4d4ce5c7..e958f2e5c061 100644
+--- a/kernel/user_namespace.c
++++ b/kernel/user_namespace.c
+@@ -648,15 +648,13 @@ static void *m_start(struct seq_file *seq, loff_t *ppos,
+ {
+ loff_t pos = *ppos;
+ unsigned extents = map->nr_extents;
+- smp_rmb();
+
+- if (pos >= extents)
+- return NULL;
++ /* paired with smp_wmb in map_write */
++ smp_rmb();
+
+ if (extents <= UID_GID_MAP_MAX_BASE_EXTENTS)
+- return &map->extent[pos];
+-
+- return &map->forward[pos];
++ return nospec_array_ptr(map->extent, pos, extents);
++ return nospec_array_ptr(map->forward, pos, extents);
+ }
+
+ static void *uid_m_start(struct seq_file *seq, loff_t *ppos)
+--
+2.14.3
diff --git a/qxl-fixes.patch b/qxl-fixes.patch
deleted file mode 100644
index 933f27c4a..000000000
--- a/qxl-fixes.patch
+++ /dev/null
@@ -1,376 +0,0 @@
-From 56cbcb6c41932b19ef0d838f1ff25a662a2e403d Mon Sep 17 00:00:00 2001
-From: Gerd Hoffmann <kraxel@redhat.com>
-Date: Thu, 19 Oct 2017 08:21:49 +0200
-Subject: [PATCH] drm/qxl: replace QXL_INFO with DRM_DEBUG_DRIVER
-
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-Reviewed-by: Dave Airlie <airlied@redhat.com>
-Link: http://patchwork.freedesktop.org/patch/msgid/20171019062150.28090-2-kraxel@redhat.com
----
- drivers/gpu/drm/qxl/qxl_cmd.c | 16 +++++++---------
- drivers/gpu/drm/qxl/qxl_drv.h | 26 +-------------------------
- drivers/gpu/drm/qxl/qxl_fb.c | 13 +++++--------
- drivers/gpu/drm/qxl/qxl_release.c | 5 ++---
- drivers/gpu/drm/qxl/qxl_ttm.c | 4 ++--
- 5 files changed, 17 insertions(+), 47 deletions(-)
-
-diff --git a/drivers/gpu/drm/qxl/qxl_cmd.c b/drivers/gpu/drm/qxl/qxl_cmd.c
-index 74fc9362ecf9..8ec53d5abd62 100644
---- a/drivers/gpu/drm/qxl/qxl_cmd.c
-+++ b/drivers/gpu/drm/qxl/qxl_cmd.c
-@@ -219,7 +219,7 @@ int qxl_garbage_collect(struct qxl_device *qdev)
- union qxl_release_info *info;
-
- while (qxl_ring_pop(qdev->release_ring, &id)) {
-- QXL_INFO(qdev, "popped %lld\n", id);
-+ DRM_DEBUG_DRIVER("popped %lld\n", id);
- while (id) {
- release = qxl_release_from_id_locked(qdev, id);
- if (release == NULL)
-@@ -229,8 +229,8 @@ int qxl_garbage_collect(struct qxl_device *qdev)
- next_id = info->next;
- qxl_release_unmap(qdev, release, info);
-
-- QXL_INFO(qdev, "popped %lld, next %lld\n", id,
-- next_id);
-+ DRM_DEBUG_DRIVER("popped %lld, next %lld\n", id,
-+ next_id);
-
- switch (release->type) {
- case QXL_RELEASE_DRAWABLE:
-@@ -248,7 +248,7 @@ int qxl_garbage_collect(struct qxl_device *qdev)
- }
- }
-
-- QXL_INFO(qdev, "%s: %d\n", __func__, i);
-+ DRM_DEBUG_DRIVER("%d\n", i);
-
- return i;
- }
-@@ -381,8 +381,7 @@ void qxl_io_create_primary(struct qxl_device *qdev,
- {
- struct qxl_surface_create *create;
-
-- QXL_INFO(qdev, "%s: qdev %p, ram_header %p\n", __func__, qdev,
-- qdev->ram_header);
-+ DRM_DEBUG_DRIVER("qdev %p, ram_header %p\n", qdev, qdev->ram_header);
- create = &qdev->ram_header->create_surface;
- create->format = bo->surf.format;
- create->width = bo->surf.width;
-@@ -390,8 +389,7 @@ void qxl_io_create_primary(struct qxl_device *qdev,
- create->stride = bo->surf.stride;
- create->mem = qxl_bo_physical_address(qdev, bo, offset);
-
-- QXL_INFO(qdev, "%s: mem = %llx, from %p\n", __func__, create->mem,
-- bo->kptr);
-+ DRM_DEBUG_DRIVER("mem = %llx, from %p\n", create->mem, bo->kptr);
-
- create->flags = QXL_SURF_FLAG_KEEP_DATA;
- create->type = QXL_SURF_TYPE_PRIMARY;
-@@ -401,7 +399,7 @@ void qxl_io_create_primary(struct qxl_device *qdev,
-
- void qxl_io_memslot_add(struct qxl_device *qdev, uint8_t id)
- {
-- QXL_INFO(qdev, "qxl_memslot_add %d\n", id);
-+ DRM_DEBUG_DRIVER("qxl_memslot_add %d\n", id);
- wait_for_io_cmd(qdev, id, QXL_IO_MEMSLOT_ADD_ASYNC);
- }
-
-diff --git a/drivers/gpu/drm/qxl/qxl_drv.h b/drivers/gpu/drm/qxl/qxl_drv.h
-index 3397a1907336..d707b351875c 100644
---- a/drivers/gpu/drm/qxl/qxl_drv.h
-+++ b/drivers/gpu/drm/qxl/qxl_drv.h
-@@ -62,33 +62,9 @@
-
- #define QXL_DEBUGFS_MAX_COMPONENTS 32
-
--extern int qxl_log_level;
- extern int qxl_num_crtc;
- extern int qxl_max_ioctls;
-
--enum {
-- QXL_INFO_LEVEL = 1,
-- QXL_DEBUG_LEVEL = 2,
--};
--
--#define QXL_INFO(qdev, fmt, ...) do { \
-- if (qxl_log_level >= QXL_INFO_LEVEL) { \
-- qxl_io_log(qdev, fmt, __VA_ARGS__); \
-- } \
-- } while (0)
--#define QXL_DEBUG(qdev, fmt, ...) do { \
-- if (qxl_log_level >= QXL_DEBUG_LEVEL) { \
-- qxl_io_log(qdev, fmt, __VA_ARGS__); \
-- } \
-- } while (0)
--#define QXL_INFO_ONCE(qdev, fmt, ...) do { \
-- static int done; \
-- if (!done) { \
-- done = 1; \
-- QXL_INFO(qdev, fmt, __VA_ARGS__); \
-- } \
-- } while (0)
--
- #define DRM_FILE_OFFSET 0x100000000ULL
- #define DRM_FILE_PAGE_OFFSET (DRM_FILE_OFFSET >> PAGE_SHIFT)
-
-@@ -351,7 +327,7 @@ int qxl_check_idle(struct qxl_ring *ring);
- static inline void *
- qxl_fb_virtual_address(struct qxl_device *qdev, unsigned long physical)
- {
-- QXL_INFO(qdev, "not implemented (%lu)\n", physical);
-+ DRM_DEBUG_DRIVER("not implemented (%lu)\n", physical);
- return 0;
- }
-
-diff --git a/drivers/gpu/drm/qxl/qxl_fb.c b/drivers/gpu/drm/qxl/qxl_fb.c
-index 844c4a31ca13..23af3e352673 100644
---- a/drivers/gpu/drm/qxl/qxl_fb.c
-+++ b/drivers/gpu/drm/qxl/qxl_fb.c
-@@ -240,18 +240,15 @@ static int qxlfb_create(struct qxl_fbdev *qfbdev,
- return ret;
-
- qbo = gem_to_qxl_bo(gobj);
-- QXL_INFO(qdev, "%s: %dx%d %d\n", __func__, mode_cmd.width,
-- mode_cmd.height, mode_cmd.pitches[0]);
-+ DRM_DEBUG_DRIVER("%dx%d %d\n", mode_cmd.width,
-+ mode_cmd.height, mode_cmd.pitches[0]);
-
- shadow = vmalloc(mode_cmd.pitches[0] * mode_cmd.height);
- /* TODO: what's the usual response to memory allocation errors? */
- BUG_ON(!shadow);
-- QXL_INFO(qdev,
-- "surface0 at gpu offset %lld, mmap_offset %lld (virt %p, shadow %p)\n",
-- qxl_bo_gpu_offset(qbo),
-- qxl_bo_mmap_offset(qbo),
-- qbo->kptr,
-- shadow);
-+ DRM_DEBUG_DRIVER("surface0 at gpu offset %lld, mmap_offset %lld (virt %p, shadow %p)\n",
-+ qxl_bo_gpu_offset(qbo), qxl_bo_mmap_offset(qbo),
-+ qbo->kptr, shadow);
- size = mode_cmd.pitches[0] * mode_cmd.height;
-
- info = drm_fb_helper_alloc_fbi(&qfbdev->helper);
-diff --git a/drivers/gpu/drm/qxl/qxl_release.c b/drivers/gpu/drm/qxl/qxl_release.c
-index e6ec845b5be0..a6da6fa6ad58 100644
---- a/drivers/gpu/drm/qxl/qxl_release.c
-+++ b/drivers/gpu/drm/qxl/qxl_release.c
-@@ -154,7 +154,7 @@ qxl_release_alloc(struct qxl_device *qdev, int type,
- return handle;
- }
- *ret = release;
-- QXL_INFO(qdev, "allocated release %d\n", handle);
-+ DRM_DEBUG_DRIVER("allocated release %d\n", handle);
- release->id = handle;
- return handle;
- }
-@@ -179,8 +179,7 @@ void
- qxl_release_free(struct qxl_device *qdev,
- struct qxl_release *release)
- {
-- QXL_INFO(qdev, "release %d, type %d\n", release->id,
-- release->type);
-+ DRM_DEBUG_DRIVER("release %d, type %d\n", release->id, release->type);
-
- if (release->surface_release_id)
- qxl_surface_id_dealloc(qdev, release->surface_release_id);
-diff --git a/drivers/gpu/drm/qxl/qxl_ttm.c b/drivers/gpu/drm/qxl/qxl_ttm.c
-index 7ecf8a4b9fe6..ab4823875311 100644
---- a/drivers/gpu/drm/qxl/qxl_ttm.c
-+++ b/drivers/gpu/drm/qxl/qxl_ttm.c
-@@ -136,8 +136,8 @@ int qxl_mmap(struct file *filp, struct vm_area_struct *vma)
- "filp->private_data->minor->dev->dev_private == NULL\n");
- return -EINVAL;
- }
-- QXL_INFO(qdev, "%s: filp->private_data = 0x%p, vma->vm_pgoff = %lx\n",
-- __func__, filp->private_data, vma->vm_pgoff);
-+ DRM_DEBUG_DRIVER("filp->private_data = 0x%p, vma->vm_pgoff = %lx\n",
-+ filp->private_data, vma->vm_pgoff);
-
- r = ttm_bo_mmap(filp, vma, &qdev->mman.bdev);
- if (unlikely(r != 0))
---
-2.14.3
-
-From 62676d10b483a2ff6e8b08c5e7c7d63a831343f5 Mon Sep 17 00:00:00 2001
-From: Gerd Hoffmann <kraxel@redhat.com>
-Date: Thu, 19 Oct 2017 08:21:50 +0200
-Subject: [PATCH] qxl: alloc & use shadow for dumb buffers
-
-This patch changes the way the primary surface is used for dumb
-framebuffers. Instead of configuring the bo itself as primary surface
-a shadow bo is created and used instead. Framebuffers can share the
-shadow bo in case they have the same format and resolution.
-
-On atomic plane updates we don't have to update the primary surface in
-case we pageflip from one framebuffer to another framebuffer which
-shares the same shadow. This in turn avoids the flicker caused by the
-primary-destroy + primary-create cycle, which is very annonying when
-running wayland on qxl.
-
-The qxl driver never actually writes to the shadow bo. It sends qxl
-blit commands which update it though, and the spice server might
-actually execute them (and thereby write to the shadow) in case the
-local rendering is kicked for some reason. This happens for example in
-case qemu is asked to write out a dump of the guest display (screendump
-monitor command).
-
-Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-Reviewed-by: Dave Airlie <airlied@redhat.com>
-Link: http://patchwork.freedesktop.org/patch/msgid/20171019062150.28090-3-kraxel@redhat.com
----
- drivers/gpu/drm/qxl/qxl_cmd.c | 6 ++++-
- drivers/gpu/drm/qxl/qxl_display.c | 49 ++++++++++++++++++++++++++++++++++++---
- drivers/gpu/drm/qxl/qxl_drv.h | 2 ++
- drivers/gpu/drm/qxl/qxl_dumb.c | 1 +
- 4 files changed, 54 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/gpu/drm/qxl/qxl_cmd.c b/drivers/gpu/drm/qxl/qxl_cmd.c
-index 8ec53d5abd62..c0fb52c6d4ca 100644
---- a/drivers/gpu/drm/qxl/qxl_cmd.c
-+++ b/drivers/gpu/drm/qxl/qxl_cmd.c
-@@ -387,7 +387,11 @@ void qxl_io_create_primary(struct qxl_device *qdev,
- create->width = bo->surf.width;
- create->height = bo->surf.height;
- create->stride = bo->surf.stride;
-- create->mem = qxl_bo_physical_address(qdev, bo, offset);
-+ if (bo->shadow) {
-+ create->mem = qxl_bo_physical_address(qdev, bo->shadow, offset);
-+ } else {
-+ create->mem = qxl_bo_physical_address(qdev, bo, offset);
-+ }
-
- DRM_DEBUG_DRIVER("mem = %llx, from %p\n", create->mem, bo->kptr);
-
-diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c
-index afbf50d0c08f..4756b3c9bf2c 100644
---- a/drivers/gpu/drm/qxl/qxl_display.c
-+++ b/drivers/gpu/drm/qxl/qxl_display.c
-@@ -305,7 +305,9 @@ static const struct drm_crtc_funcs qxl_crtc_funcs = {
- void qxl_user_framebuffer_destroy(struct drm_framebuffer *fb)
- {
- struct qxl_framebuffer *qxl_fb = to_qxl_framebuffer(fb);
-+ struct qxl_bo *bo = gem_to_qxl_bo(qxl_fb->obj);
-
-+ WARN_ON(bo->shadow);
- drm_gem_object_unreference_unlocked(qxl_fb->obj);
- drm_framebuffer_cleanup(fb);
- kfree(qxl_fb);
-@@ -508,6 +510,7 @@ static void qxl_primary_atomic_update(struct drm_plane *plane,
- .x2 = qfb->base.width,
- .y2 = qfb->base.height
- };
-+ bool same_shadow = false;
-
- if (old_state->fb) {
- qfb_old = to_qxl_framebuffer(old_state->fb);
-@@ -519,15 +522,23 @@ static void qxl_primary_atomic_update(struct drm_plane *plane,
- if (bo == bo_old)
- return;
-
-+ if (bo_old && bo_old->shadow && bo->shadow &&
-+ bo_old->shadow == bo->shadow) {
-+ same_shadow = true;
-+ }
-+
- if (bo_old && bo_old->is_primary) {
-- qxl_io_destroy_primary(qdev);
-+ if (!same_shadow)
-+ qxl_io_destroy_primary(qdev);
- bo_old->is_primary = false;
- }
-
- if (!bo->is_primary) {
-- qxl_io_create_primary(qdev, 0, bo);
-+ if (!same_shadow)
-+ qxl_io_create_primary(qdev, 0, bo);
- bo->is_primary = true;
- }
-+
- qxl_draw_dirty_fb(qdev, qfb, bo, 0, 0, &norect, 1, 1);
- }
-
-@@ -679,8 +690,9 @@ static void qxl_cursor_atomic_disable(struct drm_plane *plane,
- static int qxl_plane_prepare_fb(struct drm_plane *plane,
- struct drm_plane_state *new_state)
- {
-+ struct qxl_device *qdev = plane->dev->dev_private;
- struct drm_gem_object *obj;
-- struct qxl_bo *user_bo;
-+ struct qxl_bo *user_bo, *old_bo = NULL;
- int ret;
-
- if (!new_state->fb)
-@@ -689,6 +701,32 @@ static int qxl_plane_prepare_fb(struct drm_plane *plane,
- obj = to_qxl_framebuffer(new_state->fb)->obj;
- user_bo = gem_to_qxl_bo(obj);
-
-+ if (plane->type == DRM_PLANE_TYPE_PRIMARY &&
-+ user_bo->is_dumb && !user_bo->shadow) {
-+ if (plane->state->fb) {
-+ obj = to_qxl_framebuffer(plane->state->fb)->obj;
-+ old_bo = gem_to_qxl_bo(obj);
-+ }
-+ if (old_bo && old_bo->shadow &&
-+ user_bo->gem_base.size == old_bo->gem_base.size &&
-+ plane->state->crtc == new_state->crtc &&
-+ plane->state->crtc_w == new_state->crtc_w &&
-+ plane->state->crtc_h == new_state->crtc_h &&
-+ plane->state->src_x == new_state->src_x &&
-+ plane->state->src_y == new_state->src_y &&
-+ plane->state->src_w == new_state->src_w &&
-+ plane->state->src_h == new_state->src_h &&
-+ plane->state->rotation == new_state->rotation &&
-+ plane->state->zpos == new_state->zpos) {
-+ drm_gem_object_get(&old_bo->shadow->gem_base);
-+ user_bo->shadow = old_bo->shadow;
-+ } else {
-+ qxl_bo_create(qdev, user_bo->gem_base.size,
-+ true, true, QXL_GEM_DOMAIN_VRAM, NULL,
-+ &user_bo->shadow);
-+ }
-+ }
-+
- ret = qxl_bo_pin(user_bo, QXL_GEM_DOMAIN_CPU, NULL);
- if (ret)
- return ret;
-@@ -713,6 +751,11 @@ static void qxl_plane_cleanup_fb(struct drm_plane *plane,
- obj = to_qxl_framebuffer(old_state->fb)->obj;
- user_bo = gem_to_qxl_bo(obj);
- qxl_bo_unpin(user_bo);
-+
-+ if (user_bo->shadow && !user_bo->is_primary) {
-+ drm_gem_object_put_unlocked(&user_bo->shadow->gem_base);
-+ user_bo->shadow = NULL;
-+ }
- }
-
- static const uint32_t qxl_cursor_plane_formats[] = {
-diff --git a/drivers/gpu/drm/qxl/qxl_drv.h b/drivers/gpu/drm/qxl/qxl_drv.h
-index d707b351875c..08752c0ffb35 100644
---- a/drivers/gpu/drm/qxl/qxl_drv.h
-+++ b/drivers/gpu/drm/qxl/qxl_drv.h
-@@ -89,6 +89,8 @@ struct qxl_bo {
- /* Constant after initialization */
- struct drm_gem_object gem_base;
- bool is_primary; /* is this now a primary surface */
-+ bool is_dumb;
-+ struct qxl_bo *shadow;
- bool hw_surf_alloc;
- struct qxl_surface surf;
- uint32_t surface_id;
-diff --git a/drivers/gpu/drm/qxl/qxl_dumb.c b/drivers/gpu/drm/qxl/qxl_dumb.c
-index 5e65d5d2d937..11085ab01374 100644
---- a/drivers/gpu/drm/qxl/qxl_dumb.c
-+++ b/drivers/gpu/drm/qxl/qxl_dumb.c
-@@ -63,6 +63,7 @@ int qxl_mode_dumb_create(struct drm_file *file_priv,
- &handle);
- if (r)
- return r;
-+ qobj->is_dumb = true;
- args->pitch = pitch;
- args->handle = handle;
- return 0;
---
-2.14.3
-
diff --git a/rpi-graphics-fix.patch b/rpi-graphics-fix.patch
deleted file mode 100644
index 89bfaf9a5..000000000
--- a/rpi-graphics-fix.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 253696ccd613fbdaa5aba1de44c461a058e0a114 Mon Sep 17 00:00:00 2001
-From: Stefan Schake <stschake@gmail.com>
-Date: Fri, 10 Nov 2017 02:05:06 +0100
-Subject: drm/vc4: Account for interrupts in flight
-
-Synchronously disable the IRQ to make the following cancel_work_sync
-invocation effective.
-
-An interrupt in flight could enqueue further overflow mem work. As we
-free the binner BO immediately following vc4_irq_uninstall this caused
-a NULL pointer dereference in the work callback vc4_overflow_mem_work.
-
-Link: https://github.com/anholt/linux/issues/114
-Signed-off-by: Stefan Schake <stschake@gmail.com>
-Fixes: d5b1a78a772f ("drm/vc4: Add support for drawing 3D frames.")
-Signed-off-by: Eric Anholt <eric@anholt.net>
-Reviewed-by: Eric Anholt <eric@anholt.net>
-Link: https://patchwork.freedesktop.org/patch/msgid/1510275907-993-2-git-send-email-stschake@gmail.com
-
-diff --git a/drivers/gpu/drm/vc4/vc4_irq.c b/drivers/gpu/drm/vc4/vc4_irq.c
-index 7d7af3a..61b2e53 100644
---- a/drivers/gpu/drm/vc4/vc4_irq.c
-+++ b/drivers/gpu/drm/vc4/vc4_irq.c
-@@ -208,6 +208,9 @@ vc4_irq_postinstall(struct drm_device *dev)
- {
- struct vc4_dev *vc4 = to_vc4_dev(dev);
-
-+ /* Undo the effects of a previous vc4_irq_uninstall. */
-+ enable_irq(dev->irq);
-+
- /* Enable both the render done and out of memory interrupts. */
- V3D_WRITE(V3D_INTENA, V3D_DRIVER_IRQS);
-
-@@ -225,6 +228,9 @@ vc4_irq_uninstall(struct drm_device *dev)
- /* Clear any pending interrupts we might have left. */
- V3D_WRITE(V3D_INTCTL, V3D_DRIVER_IRQS);
-
-+ /* Finish any interrupt handler still in flight. */
-+ disable_irq(dev->irq);
-+
- cancel_work_sync(&vc4->overflow_mem_work);
- }
-
---
-cgit v0.10.2
-
diff --git a/sources b/sources
index 5cfd93eb5..927241666 100644
--- a/sources
+++ b/sources
@@ -1,3 +1 @@
-SHA512 (linux-4.14.tar.xz) = 77e43a02d766c3d73b7e25c4aafb2e931d6b16e870510c22cef0cdb05c3acb7952b8908ebad12b10ef982c6efbe286364b1544586e715cf38390e483927904d8
-SHA512 (perf-man-4.14.tar.gz) = 76a9d8adc284cdffd4b3fbb060e7f9a14109267707ce1d03f4c3239cd70d8d164f697da3a0f90a363fbcac42a61d3c378afbcc2a86f112c501b9cb5ce74ef9f8
-SHA512 (patch-4.14.3.xz) = 36a08a4c1c93c4fefb95273f3bfe4cac724d8e7c4f90d6e42a11c3afbbdd35b537f3380985a730c9aca491359f9bbdc4747ac444dd6b2625443c28df285cf74a
+SHA512 (linux-4.15.tar.xz) = c00d92659df815a53dcac7dde145b742b1f20867d380c07cb09ddb3295d6ff10f8931b21ef0b09d7156923a3957b39d74d87c883300173b2e20690d2b4ec35ea
diff --git a/ti-bluetooth.patch b/ti-bluetooth.patch
deleted file mode 100644
index 288eb7c94..000000000
--- a/ti-bluetooth.patch
+++ /dev/null
@@ -1,2480 +0,0 @@
-From patchwork Sat Aug 13 03:14:32 2016
-Content-Type: text/plain; charset="utf-8"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [RFC,1/7] tty: serial: omap: add UPF_BOOT_AUTOCONF flag for DT init
-From: Sebastian Reichel <sre@kernel.org>
-X-Patchwork-Id: 9278297
-Message-Id: <1471058078-5579-2-git-send-email-sre@kernel.org>
-To: Sebastian Reichel <sre@kernel.org>, Tony Lindgren <tony@atomide.com>,
- Rob Herring <robh+dt@kernel.org>, Mark Rutland <mark.rutland@arm.com>,
- Marcel Holtmann <marcel@holtmann.org>,
- Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
- Jiri Slaby <jslaby@suse.com>
-Cc: Ville Tervo <ville.tervo@iki.fi>,
- =?UTF-8?q?Filip=20Matijevi=C4=87?= <filip.matijevic.pz@gmail.com>,
- Aaro Koskinen <aaro.koskinen@iki.fi>, Pavel Machek <pavel@ucw.cz>,
- =?UTF-8?q?Pali=20Roh=C3=A1r?= <pali.rohar@gmail.com>,
- ivo.g.dimitrov.75@gmail.com, linux-bluetooth@vger.kernel.org,
- linux-serial@vger.kernel.org, linux-omap@vger.kernel.org,
- devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
-Date: Sat, 13 Aug 2016 05:14:32 +0200
-
----
- drivers/tty/serial/omap-serial.c | 3 +++
- 1 file changed, 3 insertions(+)
-Acked-by: Pavel Machek <pavel@ucw.cz>
-
-diff --git a/drivers/tty/serial/omap-serial.c b/drivers/tty/serial/omap-serial.c
-index a2a529994ba5..7c2c77789c2c 100644
---- a/drivers/tty/serial/omap-serial.c
-+++ b/drivers/tty/serial/omap-serial.c
-@@ -1542,6 +1542,9 @@ static struct omap_uart_port_info *of_get_uart_port_info(struct device *dev)
-
- of_property_read_u32(dev->of_node, "clock-frequency",
- &omap_up_info->uartclk);
-+
-+ omap_up_info->flags = UPF_BOOT_AUTOCONF;
-+
- return omap_up_info;
- }
-
-From 6102245c5711e73b83ad79ab0f2c3ec040262a87 Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel <sre@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:31 +0200
-Subject: [PATCH 01/13] serdev: add serdev_device_wait_until_sent
-
-Add method, which waits until the transmission buffer has been sent.
-Note, that the change in ttyport_write_wakeup is related, since
-tty_wait_until_sent will hang without that change.
-
-Acked-by: Rob Herring <robh@kernel.org>
-Acked-by: Pavel Machek <pavel@ucw.cz>
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- drivers/tty/serdev/core.c | 11 +++++++++++
- drivers/tty/serdev/serdev-ttyport.c | 18 ++++++++++++++----
- include/linux/serdev.h | 3 +++
- 3 files changed, 28 insertions(+), 4 deletions(-)
-
-diff --git a/drivers/tty/serdev/core.c b/drivers/tty/serdev/core.c
-index f4c6c90add78..a63b74031e22 100644
---- a/drivers/tty/serdev/core.c
-+++ b/drivers/tty/serdev/core.c
-@@ -173,6 +173,17 @@ void serdev_device_set_flow_control(struct serdev_device *serdev, bool enable)
- }
- EXPORT_SYMBOL_GPL(serdev_device_set_flow_control);
-
-+void serdev_device_wait_until_sent(struct serdev_device *serdev, long timeout)
-+{
-+ struct serdev_controller *ctrl = serdev->ctrl;
-+
-+ if (!ctrl || !ctrl->ops->wait_until_sent)
-+ return;
-+
-+ ctrl->ops->wait_until_sent(ctrl, timeout);
-+}
-+EXPORT_SYMBOL_GPL(serdev_device_wait_until_sent);
-+
- static int serdev_drv_probe(struct device *dev)
- {
- const struct serdev_device_driver *sdrv = to_serdev_device_driver(dev->driver);
-diff --git a/drivers/tty/serdev/serdev-ttyport.c b/drivers/tty/serdev/serdev-ttyport.c
-index d05393594f15..50dc75c4d204 100644
---- a/drivers/tty/serdev/serdev-ttyport.c
-+++ b/drivers/tty/serdev/serdev-ttyport.c
-@@ -14,6 +14,7 @@
- #include <linux/serdev.h>
- #include <linux/tty.h>
- #include <linux/tty_driver.h>
-+#include <linux/poll.h>
-
- #define SERPORT_ACTIVE 1
-
-@@ -46,11 +47,11 @@ static void ttyport_write_wakeup(struct tty_port *port)
- struct serdev_controller *ctrl = port->client_data;
- struct serport *serport = serdev_controller_get_drvdata(ctrl);
-
-- if (!test_and_clear_bit(TTY_DO_WRITE_WAKEUP, &port->tty->flags))
-- return;
--
-- if (test_bit(SERPORT_ACTIVE, &serport->flags))
-+ if (test_and_clear_bit(TTY_DO_WRITE_WAKEUP, &port->tty->flags) &&
-+ test_bit(SERPORT_ACTIVE, &serport->flags))
- serdev_controller_write_wakeup(ctrl);
-+
-+ wake_up_interruptible_poll(&port->tty->write_wait, POLLOUT);
- }
-
- static const struct tty_port_client_operations client_ops = {
-@@ -167,6 +168,14 @@ static void ttyport_set_flow_control(struct serdev_controller *ctrl, bool enable
- tty_set_termios(tty, &ktermios);
- }
-
-+static void ttyport_wait_until_sent(struct serdev_controller *ctrl, long timeout)
-+{
-+ struct serport *serport = serdev_controller_get_drvdata(ctrl);
-+ struct tty_struct *tty = serport->tty;
-+
-+ tty_wait_until_sent(tty, timeout);
-+}
-+
- static const struct serdev_controller_ops ctrl_ops = {
- .write_buf = ttyport_write_buf,
- .write_flush = ttyport_write_flush,
-@@ -175,6 +184,7 @@ static const struct serdev_controller_ops ctrl_ops = {
- .close = ttyport_close,
- .set_flow_control = ttyport_set_flow_control,
- .set_baudrate = ttyport_set_baudrate,
-+ .wait_until_sent = ttyport_wait_until_sent,
- };
-
- struct device *serdev_tty_port_register(struct tty_port *port,
-diff --git a/include/linux/serdev.h b/include/linux/serdev.h
-index 9519da6253a8..a308b206d204 100644
---- a/include/linux/serdev.h
-+++ b/include/linux/serdev.h
-@@ -81,6 +81,7 @@ struct serdev_controller_ops {
- void (*close)(struct serdev_controller *);
- void (*set_flow_control)(struct serdev_controller *, bool);
- unsigned int (*set_baudrate)(struct serdev_controller *, unsigned int);
-+ void (*wait_until_sent)(struct serdev_controller *, long);
- };
-
- /**
-@@ -186,6 +187,7 @@ int serdev_device_open(struct serdev_device *);
- void serdev_device_close(struct serdev_device *);
- unsigned int serdev_device_set_baudrate(struct serdev_device *, unsigned int);
- void serdev_device_set_flow_control(struct serdev_device *, bool);
-+void serdev_device_wait_until_sent(struct serdev_device *, long);
- int serdev_device_write_buf(struct serdev_device *, const unsigned char *, size_t);
- void serdev_device_write_flush(struct serdev_device *);
- int serdev_device_write_room(struct serdev_device *);
-@@ -223,6 +225,7 @@ static inline unsigned int serdev_device_set_baudrate(struct serdev_device *sdev
- return 0;
- }
- static inline void serdev_device_set_flow_control(struct serdev_device *sdev, bool enable) {}
-+static inline void serdev_device_wait_until_sent(struct serdev_device *sdev, long timeout) {}
- static inline int serdev_device_write_buf(struct serdev_device *sdev, const unsigned char *buf, size_t count)
- {
- return -ENODEV;
---
-2.12.2
-
-From 6e1713b03eab6f42251bad76ab05e7e1aa28b199 Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel <sre@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:32 +0200
-Subject: [PATCH 02/13] serdev: implement get/set tiocm
-
-Add method for getting and setting tiocm.
-
-Acked-by: Pavel Machek <pavel@ucw.cz>
-Acked-by: Rob Herring <robh@kernel.org>
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- drivers/tty/serdev/core.c | 22 ++++++++++++++++++++++
- drivers/tty/serdev/serdev-ttyport.c | 24 ++++++++++++++++++++++++
- include/linux/serdev.h | 13 +++++++++++++
- 3 files changed, 59 insertions(+)
-
-diff --git a/drivers/tty/serdev/core.c b/drivers/tty/serdev/core.c
-index a63b74031e22..1e1cbae3a0ea 100644
---- a/drivers/tty/serdev/core.c
-+++ b/drivers/tty/serdev/core.c
-@@ -184,6 +184,28 @@ void serdev_device_wait_until_sent(struct serdev_device *serdev, long timeout)
- }
- EXPORT_SYMBOL_GPL(serdev_device_wait_until_sent);
-
-+int serdev_device_get_tiocm(struct serdev_device *serdev)
-+{
-+ struct serdev_controller *ctrl = serdev->ctrl;
-+
-+ if (!ctrl || !ctrl->ops->get_tiocm)
-+ return -ENOTSUPP;
-+
-+ return ctrl->ops->get_tiocm(ctrl);
-+}
-+EXPORT_SYMBOL_GPL(serdev_device_get_tiocm);
-+
-+int serdev_device_set_tiocm(struct serdev_device *serdev, int set, int clear)
-+{
-+ struct serdev_controller *ctrl = serdev->ctrl;
-+
-+ if (!ctrl || !ctrl->ops->set_tiocm)
-+ return -ENOTSUPP;
-+
-+ return ctrl->ops->set_tiocm(ctrl, set, clear);
-+}
-+EXPORT_SYMBOL_GPL(serdev_device_set_tiocm);
-+
- static int serdev_drv_probe(struct device *dev)
- {
- const struct serdev_device_driver *sdrv = to_serdev_device_driver(dev->driver);
-diff --git a/drivers/tty/serdev/serdev-ttyport.c b/drivers/tty/serdev/serdev-ttyport.c
-index 50dc75c4d204..487c88f6aa0e 100644
---- a/drivers/tty/serdev/serdev-ttyport.c
-+++ b/drivers/tty/serdev/serdev-ttyport.c
-@@ -176,6 +176,28 @@ static void ttyport_wait_until_sent(struct serdev_controller *ctrl, long timeout
- tty_wait_until_sent(tty, timeout);
- }
-
-+static int ttyport_get_tiocm(struct serdev_controller *ctrl)
-+{
-+ struct serport *serport = serdev_controller_get_drvdata(ctrl);
-+ struct tty_struct *tty = serport->tty;
-+
-+ if (!tty->ops->tiocmget)
-+ return -ENOTSUPP;
-+
-+ return tty->driver->ops->tiocmget(tty);
-+}
-+
-+static int ttyport_set_tiocm(struct serdev_controller *ctrl, unsigned int set, unsigned int clear)
-+{
-+ struct serport *serport = serdev_controller_get_drvdata(ctrl);
-+ struct tty_struct *tty = serport->tty;
-+
-+ if (!tty->ops->tiocmset)
-+ return -ENOTSUPP;
-+
-+ return tty->driver->ops->tiocmset(tty, set, clear);
-+}
-+
- static const struct serdev_controller_ops ctrl_ops = {
- .write_buf = ttyport_write_buf,
- .write_flush = ttyport_write_flush,
-@@ -185,6 +207,8 @@ static const struct serdev_controller_ops ctrl_ops = {
- .set_flow_control = ttyport_set_flow_control,
- .set_baudrate = ttyport_set_baudrate,
- .wait_until_sent = ttyport_wait_until_sent,
-+ .get_tiocm = ttyport_get_tiocm,
-+ .set_tiocm = ttyport_set_tiocm,
- };
-
- struct device *serdev_tty_port_register(struct tty_port *port,
-diff --git a/include/linux/serdev.h b/include/linux/serdev.h
-index a308b206d204..e29a270f603c 100644
---- a/include/linux/serdev.h
-+++ b/include/linux/serdev.h
-@@ -15,6 +15,7 @@
-
- #include <linux/types.h>
- #include <linux/device.h>
-+#include <linux/termios.h>
-
- struct serdev_controller;
- struct serdev_device;
-@@ -82,6 +83,8 @@ struct serdev_controller_ops {
- void (*set_flow_control)(struct serdev_controller *, bool);
- unsigned int (*set_baudrate)(struct serdev_controller *, unsigned int);
- void (*wait_until_sent)(struct serdev_controller *, long);
-+ int (*get_tiocm)(struct serdev_controller *);
-+ int (*set_tiocm)(struct serdev_controller *, unsigned int, unsigned int);
- };
-
- /**
-@@ -188,6 +191,8 @@ void serdev_device_close(struct serdev_device *);
- unsigned int serdev_device_set_baudrate(struct serdev_device *, unsigned int);
- void serdev_device_set_flow_control(struct serdev_device *, bool);
- void serdev_device_wait_until_sent(struct serdev_device *, long);
-+int serdev_device_get_tiocm(struct serdev_device *);
-+int serdev_device_set_tiocm(struct serdev_device *, int, int);
- int serdev_device_write_buf(struct serdev_device *, const unsigned char *, size_t);
- void serdev_device_write_flush(struct serdev_device *);
- int serdev_device_write_room(struct serdev_device *);
-@@ -226,6 +231,14 @@ static inline unsigned int serdev_device_set_baudrate(struct serdev_device *sdev
- }
- static inline void serdev_device_set_flow_control(struct serdev_device *sdev, bool enable) {}
- static inline void serdev_device_wait_until_sent(struct serdev_device *sdev, long timeout) {}
-+static inline int serdev_device_get_tiocm(struct serdev_device *serdev)
-+{
-+ return -ENOTSUPP;
-+}
-+static inline int serdev_device_set_tiocm(struct serdev_device *serdev, int set, int clear)
-+{
-+ return -ENOTSUPP;
-+}
- static inline int serdev_device_write_buf(struct serdev_device *sdev, const unsigned char *buf, size_t count)
- {
- return -ENODEV;
---
-2.12.2
-
-From 9425a7e94dba6d5585c542c50f253f8fbf764a81 Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel <sre@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:33 +0200
-Subject: [PATCH 03/13] serdev: add helpers for cts and rts handling
-
-Add serdev helper functions for handling of cts and rts
-lines using the serdev's tiocm functions.
-
-Acked-by: Rob Herring <robh@kernel.org>
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- include/linux/serdev.h | 31 +++++++++++++++++++++++++++++++
- 1 file changed, 31 insertions(+)
-
-diff --git a/include/linux/serdev.h b/include/linux/serdev.h
-index e29a270f603c..37395b8eb8f1 100644
---- a/include/linux/serdev.h
-+++ b/include/linux/serdev.h
-@@ -16,6 +16,7 @@
- #include <linux/types.h>
- #include <linux/device.h>
- #include <linux/termios.h>
-+#include <linux/delay.h>
-
- struct serdev_controller;
- struct serdev_device;
-@@ -254,6 +255,36 @@ static inline int serdev_device_write_room(struct serdev_device *sdev)
-
- #endif /* CONFIG_SERIAL_DEV_BUS */
-
-+static inline bool serdev_device_get_cts(struct serdev_device *serdev)
-+{
-+ int status = serdev_device_get_tiocm(serdev);
-+ return !!(status & TIOCM_CTS);
-+}
-+
-+static inline int serdev_device_wait_for_cts(struct serdev_device *serdev, bool state, int timeout_ms)
-+{
-+ unsigned long timeout;
-+ bool signal;
-+
-+ timeout = jiffies + msecs_to_jiffies(timeout_ms);
-+ while (time_is_after_jiffies(timeout)) {
-+ signal = serdev_device_get_cts(serdev);
-+ if (signal == state)
-+ return 0;
-+ usleep_range(1000, 2000);
-+ }
-+
-+ return -ETIMEDOUT;
-+}
-+
-+static inline int serdev_device_set_rts(struct serdev_device *serdev, bool enable)
-+{
-+ if (enable)
-+ return serdev_device_set_tiocm(serdev, TIOCM_RTS, 0);
-+ else
-+ return serdev_device_set_tiocm(serdev, 0, TIOCM_RTS);
-+}
-+
- /*
- * serdev hooks into TTY core
- */
---
-2.12.2
-
-From 8656be75e893514bac2aa817f1c1b35e8dbd9e5b Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel <sre@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:34 +0200
-Subject: [PATCH 04/13] Bluetooth: hci_uart: add support for word alignment
-
-This will be used by Nokia's H4+ protocol, which
-uses 2-byte aligned packets.
-
-Acked-by: Pavel Machek <pavel@ucw.cz>
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- drivers/bluetooth/hci_h4.c | 17 +++++++++++++++++
- drivers/bluetooth/hci_ldisc.c | 4 ++++
- drivers/bluetooth/hci_uart.h | 3 +++
- 3 files changed, 24 insertions(+)
-
-diff --git a/drivers/bluetooth/hci_h4.c b/drivers/bluetooth/hci_h4.c
-index 635597b6e168..82e5a32b87a4 100644
---- a/drivers/bluetooth/hci_h4.c
-+++ b/drivers/bluetooth/hci_h4.c
-@@ -171,9 +171,20 @@ struct sk_buff *h4_recv_buf(struct hci_dev *hdev, struct sk_buff *skb,
- const unsigned char *buffer, int count,
- const struct h4_recv_pkt *pkts, int pkts_count)
- {
-+ struct hci_uart *hu = hci_get_drvdata(hdev);
-+ u8 alignment = hu->alignment;
-+
- while (count) {
- int i, len;
-
-+ /* remove padding bytes from buffer */
-+ for (; hu->padding && count > 0; hu->padding--) {
-+ count--;
-+ buffer++;
-+ }
-+ if (!count)
-+ break;
-+
- if (!skb) {
- for (i = 0; i < pkts_count; i++) {
- if (buffer[0] != (&pkts[i])->type)
-@@ -253,11 +264,17 @@ struct sk_buff *h4_recv_buf(struct hci_dev *hdev, struct sk_buff *skb,
- }
-
- if (!dlen) {
-+ hu->padding = (skb->len - 1) % alignment;
-+ hu->padding = (alignment - hu->padding) % alignment;
-+
- /* No more data, complete frame */
- (&pkts[i])->recv(hdev, skb);
- skb = NULL;
- }
- } else {
-+ hu->padding = (skb->len - 1) % alignment;
-+ hu->padding = (alignment - hu->padding) % alignment;
-+
- /* Complete frame */
- (&pkts[i])->recv(hdev, skb);
- skb = NULL;
-diff --git a/drivers/bluetooth/hci_ldisc.c b/drivers/bluetooth/hci_ldisc.c
-index 9497c469efd2..0ec8a94bd712 100644
---- a/drivers/bluetooth/hci_ldisc.c
-+++ b/drivers/bluetooth/hci_ldisc.c
-@@ -459,6 +459,10 @@ static int hci_uart_tty_open(struct tty_struct *tty)
- hu->tty = tty;
- tty->receive_room = 65536;
-
-+ /* disable alignment support by default */
-+ hu->alignment = 1;
-+ hu->padding = 0;
-+
- INIT_WORK(&hu->init_ready, hci_uart_init_work);
- INIT_WORK(&hu->write_work, hci_uart_write_work);
-
-diff --git a/drivers/bluetooth/hci_uart.h b/drivers/bluetooth/hci_uart.h
-index 070139513e65..4aff50960cac 100644
---- a/drivers/bluetooth/hci_uart.h
-+++ b/drivers/bluetooth/hci_uart.h
-@@ -92,6 +92,9 @@ struct hci_uart {
-
- unsigned int init_speed;
- unsigned int oper_speed;
-+
-+ u8 alignment;
-+ u8 padding;
- };
-
- /* HCI_UART proto flag bits */
---
-2.12.2
-
-From f2d830b35ce8c834eaa895ff29c461455024f05e Mon Sep 17 00:00:00 2001
-From: Rob Herring <robh@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:35 +0200
-Subject: [PATCH 05/13] Bluetooth: hci_uart: add serdev driver support library
-
-This adds library functions for serdev based BT drivers. This is largely
-copied from hci_ldisc.c and modified to use serdev calls. There's a little
-bit of duplication, but I avoided intermixing this as the ldisc code should
-eventually go away.
-
-Signed-off-by: Rob Herring <robh@kernel.org>
-Cc: Marcel Holtmann <marcel@holtmann.org>
-Cc: Gustavo Padovan <gustavo@padovan.org>
-Cc: Johan Hedberg <johan.hedberg@gmail.com>
-Cc: linux-bluetooth@vger.kernel.org
-Acked-by: Pavel Machek <pavel@ucw.cz>
-[Fix style issues reported by Pavel]
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- drivers/bluetooth/Makefile | 1 +
- drivers/bluetooth/hci_serdev.c | 361 +++++++++++++++++++++++++++++++++++++++++
- drivers/bluetooth/hci_uart.h | 4 +
- 3 files changed, 366 insertions(+)
- create mode 100644 drivers/bluetooth/hci_serdev.c
-
-diff --git a/drivers/bluetooth/Makefile b/drivers/bluetooth/Makefile
-index 80627187c8b6..fd571689eed6 100644
---- a/drivers/bluetooth/Makefile
-+++ b/drivers/bluetooth/Makefile
-@@ -29,6 +29,7 @@ btmrvl-y := btmrvl_main.o
- btmrvl-$(CONFIG_DEBUG_FS) += btmrvl_debugfs.o
-
- hci_uart-y := hci_ldisc.o
-+hci_uart-$(CONFIG_SERIAL_DEV_BUS) += hci_serdev.o
- hci_uart-$(CONFIG_BT_HCIUART_H4) += hci_h4.o
- hci_uart-$(CONFIG_BT_HCIUART_BCSP) += hci_bcsp.o
- hci_uart-$(CONFIG_BT_HCIUART_LL) += hci_ll.o
-diff --git a/drivers/bluetooth/hci_serdev.c b/drivers/bluetooth/hci_serdev.c
-new file mode 100644
-index 000000000000..f5ccb2c7ef92
---- /dev/null
-+++ b/drivers/bluetooth/hci_serdev.c
-@@ -0,0 +1,361 @@
-+/*
-+ * Bluetooth HCI serdev driver lib
-+ *
-+ * Copyright (C) 2017 Linaro, Ltd., Rob Herring <robh@kernel.org>
-+ *
-+ * Based on hci_ldisc.c:
-+ *
-+ * Copyright (C) 2000-2001 Qualcomm Incorporated
-+ * Copyright (C) 2002-2003 Maxim Krasnyansky <maxk@qualcomm.com>
-+ * Copyright (C) 2004-2005 Marcel Holtmann <marcel@holtmann.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ */
-+
-+#include <linux/kernel.h>
-+#include <linux/types.h>
-+#include <linux/serdev.h>
-+#include <linux/skbuff.h>
-+
-+#include <net/bluetooth/bluetooth.h>
-+#include <net/bluetooth/hci_core.h>
-+
-+#include "hci_uart.h"
-+
-+struct serdev_device_ops hci_serdev_client_ops;
-+
-+static inline void hci_uart_tx_complete(struct hci_uart *hu, int pkt_type)
-+{
-+ struct hci_dev *hdev = hu->hdev;
-+
-+ /* Update HCI stat counters */
-+ switch (pkt_type) {
-+ case HCI_COMMAND_PKT:
-+ hdev->stat.cmd_tx++;
-+ break;
-+
-+ case HCI_ACLDATA_PKT:
-+ hdev->stat.acl_tx++;
-+ break;
-+
-+ case HCI_SCODATA_PKT:
-+ hdev->stat.sco_tx++;
-+ break;
-+ }
-+}
-+
-+static inline struct sk_buff *hci_uart_dequeue(struct hci_uart *hu)
-+{
-+ struct sk_buff *skb = hu->tx_skb;
-+
-+ if (!skb)
-+ skb = hu->proto->dequeue(hu);
-+ else
-+ hu->tx_skb = NULL;
-+
-+ return skb;
-+}
-+
-+static void hci_uart_write_work(struct work_struct *work)
-+{
-+ struct hci_uart *hu = container_of(work, struct hci_uart, write_work);
-+ struct serdev_device *serdev = hu->serdev;
-+ struct hci_dev *hdev = hu->hdev;
-+ struct sk_buff *skb;
-+
-+ /* REVISIT:
-+ * should we cope with bad skbs or ->write() returning an error value?
-+ */
-+ do {
-+ clear_bit(HCI_UART_TX_WAKEUP, &hu->tx_state);
-+
-+ while ((skb = hci_uart_dequeue(hu))) {
-+ int len;
-+
-+ len = serdev_device_write_buf(serdev,
-+ skb->data, skb->len);
-+ hdev->stat.byte_tx += len;
-+
-+ skb_pull(skb, len);
-+ if (skb->len) {
-+ hu->tx_skb = skb;
-+ break;
-+ }
-+
-+ hci_uart_tx_complete(hu, hci_skb_pkt_type(skb));
-+ kfree_skb(skb);
-+ }
-+ } while(test_bit(HCI_UART_TX_WAKEUP, &hu->tx_state));
-+
-+ clear_bit(HCI_UART_SENDING, &hu->tx_state);
-+}
-+
-+/* ------- Interface to HCI layer ------ */
-+
-+/* Initialize device */
-+static int hci_uart_open(struct hci_dev *hdev)
-+{
-+ struct hci_uart *hu = hci_get_drvdata(hdev);
-+
-+ BT_DBG("%s %p", hdev->name, hdev);
-+
-+ serdev_device_set_client_ops(hu->serdev, &hci_serdev_client_ops);
-+
-+ return serdev_device_open(hu->serdev);
-+}
-+
-+/* Reset device */
-+static int hci_uart_flush(struct hci_dev *hdev)
-+{
-+ struct hci_uart *hu = hci_get_drvdata(hdev);
-+
-+ BT_DBG("hdev %p serdev %p", hdev, hu->serdev);
-+
-+ if (hu->tx_skb) {
-+ kfree_skb(hu->tx_skb); hu->tx_skb = NULL;
-+ }
-+
-+ /* Flush any pending characters in the driver and discipline. */
-+ serdev_device_write_flush(hu->serdev);
-+
-+ if (test_bit(HCI_UART_PROTO_READY, &hu->flags))
-+ hu->proto->flush(hu);
-+
-+ return 0;
-+}
-+
-+/* Close device */
-+static int hci_uart_close(struct hci_dev *hdev)
-+{
-+ struct hci_uart *hu = hci_get_drvdata(hdev);
-+
-+ BT_DBG("hdev %p", hdev);
-+
-+ hci_uart_flush(hdev);
-+ hdev->flush = NULL;
-+
-+ serdev_device_close(hu->serdev);
-+
-+ return 0;
-+}
-+
-+/* Send frames from HCI layer */
-+static int hci_uart_send_frame(struct hci_dev *hdev, struct sk_buff *skb)
-+{
-+ struct hci_uart *hu = hci_get_drvdata(hdev);
-+
-+ BT_DBG("%s: type %d len %d", hdev->name, hci_skb_pkt_type(skb),
-+ skb->len);
-+
-+ hu->proto->enqueue(hu, skb);
-+
-+ hci_uart_tx_wakeup(hu);
-+
-+ return 0;
-+}
-+
-+static int hci_uart_setup(struct hci_dev *hdev)
-+{
-+ struct hci_uart *hu = hci_get_drvdata(hdev);
-+ struct hci_rp_read_local_version *ver;
-+ struct sk_buff *skb;
-+ unsigned int speed;
-+ int err;
-+
-+ /* Init speed if any */
-+ if (hu->init_speed)
-+ speed = hu->init_speed;
-+ else if (hu->proto->init_speed)
-+ speed = hu->proto->init_speed;
-+ else
-+ speed = 0;
-+
-+ if (speed)
-+ serdev_device_set_baudrate(hu->serdev, speed);
-+
-+ /* Operational speed if any */
-+ if (hu->oper_speed)
-+ speed = hu->oper_speed;
-+ else if (hu->proto->oper_speed)
-+ speed = hu->proto->oper_speed;
-+ else
-+ speed = 0;
-+
-+ if (hu->proto->set_baudrate && speed) {
-+ err = hu->proto->set_baudrate(hu, speed);
-+ if (err)
-+ BT_ERR("%s: failed to set baudrate", hdev->name);
-+ else
-+ serdev_device_set_baudrate(hu->serdev, speed);
-+ }
-+
-+ if (hu->proto->setup)
-+ return hu->proto->setup(hu);
-+
-+ if (!test_bit(HCI_UART_VND_DETECT, &hu->hdev_flags))
-+ return 0;
-+
-+ skb = __hci_cmd_sync(hdev, HCI_OP_READ_LOCAL_VERSION, 0, NULL,
-+ HCI_INIT_TIMEOUT);
-+ if (IS_ERR(skb)) {
-+ BT_ERR("%s: Reading local version information failed (%ld)",
-+ hdev->name, PTR_ERR(skb));
-+ return 0;
-+ }
-+
-+ if (skb->len != sizeof(*ver)) {
-+ BT_ERR("%s: Event length mismatch for version information",
-+ hdev->name);
-+ }
-+
-+ kfree_skb(skb);
-+ return 0;
-+}
-+
-+/** hci_uart_write_wakeup - transmit buffer wakeup
-+ * @serdev: serial device
-+ *
-+ * This function is called by the serdev framework when it accepts
-+ * more data being sent.
-+ */
-+static void hci_uart_write_wakeup(struct serdev_device *serdev)
-+{
-+ struct hci_uart *hu = serdev_device_get_drvdata(serdev);
-+
-+ BT_DBG("");
-+
-+ if (!hu || serdev != hu->serdev) {
-+ WARN_ON(1);
-+ return;
-+ }
-+
-+ if (test_bit(HCI_UART_PROTO_READY, &hu->flags))
-+ hci_uart_tx_wakeup(hu);
-+}
-+
-+/** hci_uart_receive_buf - receive buffer wakeup
-+ * @serdev: serial device
-+ * @data: pointer to received data
-+ * @count: count of received data in bytes
-+ *
-+ * This function is called by the serdev framework when it received data
-+ * in the RX buffer.
-+ *
-+ * Return: number of processed bytes
-+ */
-+static int hci_uart_receive_buf(struct serdev_device *serdev, const u8 *data,
-+ size_t count)
-+{
-+ struct hci_uart *hu = serdev_device_get_drvdata(serdev);
-+
-+ if (!hu || serdev != hu->serdev) {
-+ WARN_ON(1);
-+ return 0;
-+ }
-+
-+ if (!test_bit(HCI_UART_PROTO_READY, &hu->flags))
-+ return 0;
-+
-+ /* It does not need a lock here as it is already protected by a mutex in
-+ * tty caller
-+ */
-+ hu->proto->recv(hu, data, count);
-+
-+ if (hu->hdev)
-+ hu->hdev->stat.byte_rx += count;
-+
-+ return count;
-+}
-+
-+struct serdev_device_ops hci_serdev_client_ops = {
-+ .receive_buf = hci_uart_receive_buf,
-+ .write_wakeup = hci_uart_write_wakeup,
-+};
-+
-+int hci_uart_register_device(struct hci_uart *hu,
-+ const struct hci_uart_proto *p)
-+{
-+ int err;
-+ struct hci_dev *hdev;
-+
-+ BT_DBG("");
-+
-+ err = p->open(hu);
-+ if (err)
-+ return err;
-+
-+ hu->proto = p;
-+ set_bit(HCI_UART_PROTO_READY, &hu->flags);
-+
-+ /* Initialize and register HCI device */
-+ hdev = hci_alloc_dev();
-+ if (!hdev) {
-+ BT_ERR("Can't allocate HCI device");
-+ err = -ENOMEM;
-+ goto err_alloc;
-+ }
-+
-+ hu->hdev = hdev;
-+
-+ hdev->bus = HCI_UART;
-+ hci_set_drvdata(hdev, hu);
-+
-+ INIT_WORK(&hu->write_work, hci_uart_write_work);
-+
-+ /* Only when vendor specific setup callback is provided, consider
-+ * the manufacturer information valid. This avoids filling in the
-+ * value for Ericsson when nothing is specified.
-+ */
-+ if (hu->proto->setup)
-+ hdev->manufacturer = hu->proto->manufacturer;
-+
-+ hdev->open = hci_uart_open;
-+ hdev->close = hci_uart_close;
-+ hdev->flush = hci_uart_flush;
-+ hdev->send = hci_uart_send_frame;
-+ hdev->setup = hci_uart_setup;
-+ SET_HCIDEV_DEV(hdev, &hu->serdev->dev);
-+
-+ if (test_bit(HCI_UART_RAW_DEVICE, &hu->hdev_flags))
-+ set_bit(HCI_QUIRK_RAW_DEVICE, &hdev->quirks);
-+
-+ if (test_bit(HCI_UART_EXT_CONFIG, &hu->hdev_flags))
-+ set_bit(HCI_QUIRK_EXTERNAL_CONFIG, &hdev->quirks);
-+
-+ if (!test_bit(HCI_UART_RESET_ON_INIT, &hu->hdev_flags))
-+ set_bit(HCI_QUIRK_RESET_ON_CLOSE, &hdev->quirks);
-+
-+ if (test_bit(HCI_UART_CREATE_AMP, &hu->hdev_flags))
-+ hdev->dev_type = HCI_AMP;
-+ else
-+ hdev->dev_type = HCI_PRIMARY;
-+
-+ if (test_bit(HCI_UART_INIT_PENDING, &hu->hdev_flags))
-+ return 0;
-+
-+ if (hci_register_dev(hdev) < 0) {
-+ BT_ERR("Can't register HCI device");
-+ err = -ENODEV;
-+ goto err_register;
-+ }
-+
-+ set_bit(HCI_UART_REGISTERED, &hu->flags);
-+
-+ return 0;
-+
-+err_register:
-+ hci_free_dev(hdev);
-+err_alloc:
-+ clear_bit(HCI_UART_PROTO_READY, &hu->flags);
-+ p->close(hu);
-+ return err;
-+}
-diff --git a/drivers/bluetooth/hci_uart.h b/drivers/bluetooth/hci_uart.h
-index 4aff50960cac..1b41c661bbb8 100644
---- a/drivers/bluetooth/hci_uart.h
-+++ b/drivers/bluetooth/hci_uart.h
-@@ -58,6 +58,7 @@
- #define HCI_UART_VND_DETECT 5
-
- struct hci_uart;
-+struct serdev_device;
-
- struct hci_uart_proto {
- unsigned int id;
-@@ -77,6 +78,7 @@ struct hci_uart_proto {
-
- struct hci_uart {
- struct tty_struct *tty;
-+ struct serdev_device *serdev;
- struct hci_dev *hdev;
- unsigned long flags;
- unsigned long hdev_flags;
-@@ -108,6 +110,8 @@ struct hci_uart {
-
- int hci_uart_register_proto(const struct hci_uart_proto *p);
- int hci_uart_unregister_proto(const struct hci_uart_proto *p);
-+int hci_uart_register_device(struct hci_uart *hu, const struct hci_uart_proto *p);
-+
- int hci_uart_tx_wakeup(struct hci_uart *hu);
- int hci_uart_init_ready(struct hci_uart *hu);
- void hci_uart_init_tty(struct hci_uart *hu);
---
-2.12.2
-
-From c76b6c5106713b00e183ccb757bc15732d369a33 Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel <sre@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:36 +0200
-Subject: [PATCH 06/13] Bluetooth: hci_serdev: do not open device in hci open
-
-The device driver may need to communicate with the UART
-device while the Bluetooth device is closed (e.g. due
-to interrupts).
-
-Acked-by: Pavel Machek <pavel@ucw.cz>
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- drivers/bluetooth/hci_serdev.c | 12 +++---------
- 1 file changed, 3 insertions(+), 9 deletions(-)
-
-diff --git a/drivers/bluetooth/hci_serdev.c b/drivers/bluetooth/hci_serdev.c
-index f5ccb2c7ef92..3b8ac0ece3fb 100644
---- a/drivers/bluetooth/hci_serdev.c
-+++ b/drivers/bluetooth/hci_serdev.c
-@@ -104,13 +104,9 @@ static void hci_uart_write_work(struct work_struct *work)
- /* Initialize device */
- static int hci_uart_open(struct hci_dev *hdev)
- {
-- struct hci_uart *hu = hci_get_drvdata(hdev);
--
- BT_DBG("%s %p", hdev->name, hdev);
-
-- serdev_device_set_client_ops(hu->serdev, &hci_serdev_client_ops);
--
-- return serdev_device_open(hu->serdev);
-+ return 0;
- }
-
- /* Reset device */
-@@ -136,15 +132,11 @@ static int hci_uart_flush(struct hci_dev *hdev)
- /* Close device */
- static int hci_uart_close(struct hci_dev *hdev)
- {
-- struct hci_uart *hu = hci_get_drvdata(hdev);
--
- BT_DBG("hdev %p", hdev);
-
- hci_uart_flush(hdev);
- hdev->flush = NULL;
-
-- serdev_device_close(hu->serdev);
--
- return 0;
- }
-
-@@ -289,6 +281,8 @@ int hci_uart_register_device(struct hci_uart *hu,
-
- BT_DBG("");
-
-+ serdev_device_set_client_ops(hu->serdev, &hci_serdev_client_ops);
-+
- err = p->open(hu);
- if (err)
- return err;
---
-2.12.2
-
-From 7fe8800d90c5e0f614e72c475687a68a76592241 Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel <sre@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:37 +0200
-Subject: [PATCH 07/13] Bluetooth: hci_serdev: allow modular drivers
-
-For bluetooth protocol driver only supporting serdev it makes
-sense to follow common practice and built them into their own
-module.
-
-Such modules need access to hci_uart_register_device and
-hci_uart_tx_wakeup for using the common protocol helpers.
-
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- drivers/bluetooth/hci_ldisc.c | 1 +
- drivers/bluetooth/hci_serdev.c | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/drivers/bluetooth/hci_ldisc.c b/drivers/bluetooth/hci_ldisc.c
-index 0ec8a94bd712..17bcbc13623f 100644
---- a/drivers/bluetooth/hci_ldisc.c
-+++ b/drivers/bluetooth/hci_ldisc.c
-@@ -134,6 +134,7 @@ int hci_uart_tx_wakeup(struct hci_uart *hu)
-
- return 0;
- }
-+EXPORT_SYMBOL_GPL(hci_uart_tx_wakeup);
-
- static void hci_uart_write_work(struct work_struct *work)
- {
-diff --git a/drivers/bluetooth/hci_serdev.c b/drivers/bluetooth/hci_serdev.c
-index 3b8ac0ece3fb..7de0edc0ff8c 100644
---- a/drivers/bluetooth/hci_serdev.c
-+++ b/drivers/bluetooth/hci_serdev.c
-@@ -353,3 +353,4 @@ int hci_uart_register_device(struct hci_uart *hu,
- p->close(hu);
- return err;
- }
-+EXPORT_SYMBOL_GPL(hci_uart_register_device);
---
-2.12.2
-
-From 68bfebdd86741d45508148c6fa13b5bd21116c7e Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel <sre@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:38 +0200
-Subject: [PATCH 08/13] dt-bindings: net: bluetooth: Add nokia-bluetooth
-
-Add binding document for serial bluetooth chips using
-Nokia H4+ protocol.
-
-Acked-by: Rob Herring <robh@kernel.org>
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-
-Changes since PATCHv1:
- * change compatible strings
- * mention active high/low state for GPIOs
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- .../devicetree/bindings/net/nokia-bluetooth.txt | 51 ++++++++++++++++++++++
- 1 file changed, 51 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/net/nokia-bluetooth.txt
-
-diff --git a/Documentation/devicetree/bindings/net/nokia-bluetooth.txt b/Documentation/devicetree/bindings/net/nokia-bluetooth.txt
-new file mode 100644
-index 000000000000..42be7dc9a70b
---- /dev/null
-+++ b/Documentation/devicetree/bindings/net/nokia-bluetooth.txt
-@@ -0,0 +1,51 @@
-+Nokia Bluetooth Chips
-+---------------------
-+
-+Nokia phones often come with UART connected bluetooth chips from different
-+vendors and modified device API. Those devices speak a protocol named H4+
-+(also known as h4p) by Nokia, which is similar to the H4 protocol from the
-+Bluetooth standard. In addition to the H4 protocol it specifies two more
-+UART status lines for wakeup of UART transceivers to improve power management
-+and a few new packet types used to negotiate uart speed.
-+
-+Required properties:
-+
-+ - compatible: should contain "nokia,h4p-bluetooth" as well as one of the following:
-+ * "brcm,bcm2048-nokia"
-+ * "ti,wl1271-bluetooth-nokia"
-+ - reset-gpios: GPIO specifier, used to reset the BT module (active low)
-+ - bluetooth-wakeup-gpios: GPIO specifier, used to wakeup the BT module (active high)
-+ - host-wakeup-gpios: GPIO specifier, used to wakeup the host processor (active high)
-+ - clock-names: should be "sysclk"
-+ - clocks: should contain a clock specifier for every name in clock-names
-+
-+Optional properties:
-+
-+ - None
-+
-+Example:
-+
-+/ {
-+ /* controlled (enabled/disabled) directly by BT module */
-+ bluetooth_clk: vctcxo {
-+ compatible = "fixed-clock";
-+ #clock-cells = <0>;
-+ clock-frequency = <38400000>;
-+ };
-+};
-+
-+&uart2 {
-+ pinctrl-names = "default";
-+ pinctrl-0 = <&uart2_pins>;
-+
-+ bluetooth {
-+ compatible = "ti,wl1271-bluetooth-nokia", "nokia,h4p-bluetooth";
-+
-+ reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>; /* gpio26 */
-+ host-wakeup-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* gpio101 */
-+ bluetooth-wakeup-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* gpio37 */
-+
-+ clocks = <&bluetooth_clk>;
-+ clock-names = "sysclk";
-+ };
-+};
---
-2.12.2
-
-From 90753299ed56ee7c5807c09b2185094a91a2cbbe Mon Sep 17 00:00:00 2001
-From: Sebastian Reichel <sre@kernel.org>
-Date: Tue, 28 Mar 2017 17:59:39 +0200
-Subject: [PATCH 09/13] Bluetooth: add nokia driver
-
-This adds a driver for the Nokia H4+ protocol, which is used
-at least on the Nokia N9, N900 & N950.
-
-Signed-off-by: Sebastian Reichel <sre@kernel.org>
-Signed-off-by: Rob Herring <robh@kernel.org>
----
- drivers/bluetooth/Kconfig | 12 +
- drivers/bluetooth/Makefile | 2 +
- drivers/bluetooth/hci_nokia.c | 819 ++++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 833 insertions(+)
- create mode 100644 drivers/bluetooth/hci_nokia.c
-
-diff --git a/drivers/bluetooth/Kconfig b/drivers/bluetooth/Kconfig
-index 08e054507d0b..479e2eacd1aa 100644
---- a/drivers/bluetooth/Kconfig
-+++ b/drivers/bluetooth/Kconfig
-@@ -86,6 +86,18 @@ config BT_HCIUART_H4
-
- Say Y here to compile support for HCI UART (H4) protocol.
-
-+config BT_HCIUART_NOKIA
-+ tristate "UART Nokia H4+ protocol support"
-+ depends on BT_HCIUART
-+ depends on SERIAL_DEV_BUS
-+ depends on PM
-+ help
-+ Nokia H4+ is serial protocol for communication between Bluetooth
-+ device and host. This protocol is required for Bluetooth devices
-+ with UART interface in Nokia devices.
-+
-+ Say Y here to compile support for Nokia's H4+ protocol.
-+
- config BT_HCIUART_BCSP
- bool "BCSP protocol support"
- depends on BT_HCIUART
-diff --git a/drivers/bluetooth/Makefile b/drivers/bluetooth/Makefile
-index fd571689eed6..a7f237320f4b 100644
---- a/drivers/bluetooth/Makefile
-+++ b/drivers/bluetooth/Makefile
-@@ -25,6 +25,8 @@ obj-$(CONFIG_BT_BCM) += btbcm.o
- obj-$(CONFIG_BT_RTL) += btrtl.o
- obj-$(CONFIG_BT_QCA) += btqca.o
-
-+obj-$(CONFIG_BT_HCIUART_NOKIA) += hci_nokia.o
-+
- btmrvl-y := btmrvl_main.o
- btmrvl-$(CONFIG_DEBUG_FS) += btmrvl_debugfs.o
-
-diff --git a/drivers/bluetooth/hci_nokia.c b/drivers/bluetooth/hci_nokia.c
-new file mode 100644
-index 000000000000..c77f04af01bf
---- /dev/null
-+++ b/drivers/bluetooth/hci_nokia.c
-@@ -0,0 +1,819 @@
-+/*
-+ * Bluetooth HCI UART H4 driver with Nokia Extensions AKA Nokia H4+
-+ *
-+ * Copyright (C) 2015 Marcel Holtmann <marcel@holtmann.org>
-+ * Copyright (C) 2015-2017 Sebastian Reichel <sre@kernel.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ */
-+
-+#include <linux/module.h>
-+#include <linux/clk.h>
-+#include <linux/kernel.h>
-+#include <linux/types.h>
-+#include <linux/interrupt.h>
-+#include <linux/pm_runtime.h>
-+#include <linux/firmware.h>
-+#include <linux/slab.h>
-+#include <linux/string.h>
-+#include <linux/errno.h>
-+#include <linux/skbuff.h>
-+#include <linux/gpio/consumer.h>
-+#include <linux/unaligned/le_struct.h>
-+#include <net/bluetooth/bluetooth.h>
-+#include <net/bluetooth/hci_core.h>
-+#include <linux/serdev.h>
-+
-+#include "hci_uart.h"
-+#include "btbcm.h"
-+
-+#define NOKIA_ID_BCM2048 0x04
-+#define NOKIA_ID_TI1271 0x31
-+
-+#define FIRMWARE_BCM2048 "nokia/bcmfw.bin"
-+#define FIRMWARE_TI1271 "nokia/ti1273.bin"
-+
-+#define HCI_NOKIA_NEG_PKT 0x06
-+#define HCI_NOKIA_ALIVE_PKT 0x07
-+#define HCI_NOKIA_RADIO_PKT 0x08
-+
-+#define HCI_NOKIA_NEG_HDR_SIZE 1
-+#define HCI_NOKIA_MAX_NEG_SIZE 255
-+#define HCI_NOKIA_ALIVE_HDR_SIZE 1
-+#define HCI_NOKIA_MAX_ALIVE_SIZE 255
-+#define HCI_NOKIA_RADIO_HDR_SIZE 2
-+#define HCI_NOKIA_MAX_RADIO_SIZE 255
-+
-+#define NOKIA_PROTO_PKT 0x44
-+#define NOKIA_PROTO_BYTE 0x4c
-+
-+#define NOKIA_NEG_REQ 0x00
-+#define NOKIA_NEG_ACK 0x20
-+#define NOKIA_NEG_NAK 0x40
-+
-+#define H4_TYPE_SIZE 1
-+
-+#define NOKIA_RECV_ALIVE \
-+ .type = HCI_NOKIA_ALIVE_PKT, \
-+ .hlen = HCI_NOKIA_ALIVE_HDR_SIZE, \
-+ .loff = 0, \
-+ .lsize = 1, \
-+ .maxlen = HCI_NOKIA_MAX_ALIVE_SIZE \
-+
-+#define NOKIA_RECV_NEG \
-+ .type = HCI_NOKIA_NEG_PKT, \
-+ .hlen = HCI_NOKIA_NEG_HDR_SIZE, \
-+ .loff = 0, \
-+ .lsize = 1, \
-+ .maxlen = HCI_NOKIA_MAX_NEG_SIZE \
-+
-+#define NOKIA_RECV_RADIO \
-+ .type = HCI_NOKIA_RADIO_PKT, \
-+ .hlen = HCI_NOKIA_RADIO_HDR_SIZE, \
-+ .loff = 1, \
-+ .lsize = 1, \
-+ .maxlen = HCI_NOKIA_MAX_RADIO_SIZE \
-+
-+struct hci_nokia_neg_hdr {
-+ u8 dlen;
-+} __packed;
-+
-+struct hci_nokia_neg_cmd {
-+ u8 ack;
-+ u16 baud;
-+ u16 unused1;
-+ u8 proto;
-+ u16 sys_clk;
-+ u16 unused2;
-+} __packed;
-+
-+#define NOKIA_ALIVE_REQ 0x55
-+#define NOKIA_ALIVE_RESP 0xcc
-+
-+struct hci_nokia_alive_hdr {
-+ u8 dlen;
-+} __packed;
-+
-+struct hci_nokia_alive_pkt {
-+ u8 mid;
-+ u8 unused;
-+} __packed;
-+
-+struct hci_nokia_neg_evt {
-+ u8 ack;
-+ u16 baud;
-+ u16 unused1;
-+ u8 proto;
-+ u16 sys_clk;
-+ u16 unused2;
-+ u8 man_id;
-+ u8 ver_id;
-+} __packed;
-+
-+#define MAX_BAUD_RATE 3692300
-+#define SETUP_BAUD_RATE 921600
-+#define INIT_BAUD_RATE 120000
-+
-+struct hci_nokia_radio_hdr {
-+ u8 evt;
-+ u8 dlen;
-+} __packed;
-+
-+struct nokia_bt_dev {
-+ struct hci_uart hu;
-+ struct serdev_device *serdev;
-+
-+ struct gpio_desc *reset;
-+ struct gpio_desc *wakeup_host;
-+ struct gpio_desc *wakeup_bt;
-+ unsigned long sysclk_speed;
-+
-+ int wake_irq;
-+ struct sk_buff *rx_skb;
-+ struct sk_buff_head txq;
-+ bdaddr_t bdaddr;
-+
-+ int init_error;
-+ struct completion init_completion;
-+
-+ u8 man_id;
-+ u8 ver_id;
-+
-+ bool initialized;
-+ bool tx_enabled;
-+ bool rx_enabled;
-+};
-+
-+static int nokia_enqueue(struct hci_uart *hu, struct sk_buff *skb);
-+
-+static void nokia_flow_control(struct serdev_device *serdev, bool enable)
-+{
-+ if (enable) {
-+ serdev_device_set_rts(serdev, true);
-+ serdev_device_set_flow_control(serdev, true);
-+ } else {
-+ serdev_device_set_flow_control(serdev, false);
-+ serdev_device_set_rts(serdev, false);
-+ }
-+}
-+
-+static irqreturn_t wakeup_handler(int irq, void *data)
-+{
-+ struct nokia_bt_dev *btdev = data;
-+ struct device *dev = &btdev->serdev->dev;
-+ int wake_state = gpiod_get_value(btdev->wakeup_host);
-+
-+ if (btdev->rx_enabled == wake_state)
-+ return IRQ_HANDLED;
-+
-+ if (wake_state)
-+ pm_runtime_get(dev);
-+ else
-+ pm_runtime_put(dev);
-+
-+ btdev->rx_enabled = wake_state;
-+
-+ return IRQ_HANDLED;
-+}
-+
-+static int nokia_reset(struct hci_uart *hu)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ int err;
-+
-+ /* reset routine */
-+ gpiod_set_value_cansleep(btdev->reset, 1);
-+ gpiod_set_value_cansleep(btdev->wakeup_bt, 1);
-+
-+ msleep(100);
-+
-+ /* safety check */
-+ err = gpiod_get_value_cansleep(btdev->wakeup_host);
-+ if (err == 1) {
-+ dev_err(dev, "reset: host wakeup not low!");
-+ return -EPROTO;
-+ }
-+
-+ /* flush queue */
-+ serdev_device_write_flush(btdev->serdev);
-+
-+ /* init uart */
-+ nokia_flow_control(btdev->serdev, false);
-+ serdev_device_set_baudrate(btdev->serdev, INIT_BAUD_RATE);
-+
-+ gpiod_set_value_cansleep(btdev->reset, 0);
-+
-+ /* wait for cts */
-+ err = serdev_device_wait_for_cts(btdev->serdev, true, 200);
-+ if (err < 0) {
-+ dev_err(dev, "CTS not received: %d", err);
-+ return err;
-+ }
-+
-+ nokia_flow_control(btdev->serdev, true);
-+
-+ return 0;
-+}
-+
-+static int nokia_send_alive_packet(struct hci_uart *hu)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ struct hci_nokia_alive_hdr *hdr;
-+ struct hci_nokia_alive_pkt *pkt;
-+ struct sk_buff *skb;
-+ int len;
-+
-+ init_completion(&btdev->init_completion);
-+
-+ len = H4_TYPE_SIZE + sizeof(*hdr) + sizeof(*pkt);
-+ skb = bt_skb_alloc(len, GFP_KERNEL);
-+ if (!skb)
-+ return -ENOMEM;
-+
-+ hci_skb_pkt_type(skb) = HCI_NOKIA_ALIVE_PKT;
-+ memset(skb->data, 0x00, len);
-+
-+ hdr = (struct hci_nokia_alive_hdr *)skb_put(skb, sizeof(*hdr));
-+ hdr->dlen = sizeof(*pkt);
-+ pkt = (struct hci_nokia_alive_pkt *)skb_put(skb, sizeof(*pkt));
-+ pkt->mid = NOKIA_ALIVE_REQ;
-+
-+ nokia_enqueue(hu, skb);
-+ hci_uart_tx_wakeup(hu);
-+
-+ dev_dbg(dev, "Alive sent");
-+
-+ if (!wait_for_completion_interruptible_timeout(&btdev->init_completion,
-+ msecs_to_jiffies(1000))) {
-+ return -ETIMEDOUT;
-+ }
-+
-+ if (btdev->init_error < 0)
-+ return btdev->init_error;
-+
-+ return 0;
-+}
-+
-+static int nokia_send_negotiation(struct hci_uart *hu)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ struct hci_nokia_neg_cmd *neg_cmd;
-+ struct hci_nokia_neg_hdr *neg_hdr;
-+ struct sk_buff *skb;
-+ int len, err;
-+ u16 baud = DIV_ROUND_CLOSEST(btdev->sysclk_speed * 10, SETUP_BAUD_RATE);
-+ int sysclk = btdev->sysclk_speed / 1000;
-+
-+ len = H4_TYPE_SIZE + sizeof(*neg_hdr) + sizeof(*neg_cmd);
-+ skb = bt_skb_alloc(len, GFP_KERNEL);
-+ if (!skb)
-+ return -ENOMEM;
-+
-+ hci_skb_pkt_type(skb) = HCI_NOKIA_NEG_PKT;
-+
-+ neg_hdr = (struct hci_nokia_neg_hdr *)skb_put(skb, sizeof(*neg_hdr));
-+ neg_hdr->dlen = sizeof(*neg_cmd);
-+
-+ neg_cmd = (struct hci_nokia_neg_cmd *)skb_put(skb, sizeof(*neg_cmd));
-+ neg_cmd->ack = NOKIA_NEG_REQ;
-+ neg_cmd->baud = cpu_to_le16(baud);
-+ neg_cmd->unused1 = 0x0000;
-+ neg_cmd->proto = NOKIA_PROTO_BYTE;
-+ neg_cmd->sys_clk = cpu_to_le16(sysclk);
-+ neg_cmd->unused2 = 0x0000;
-+
-+ btdev->init_error = 0;
-+ init_completion(&btdev->init_completion);
-+
-+ nokia_enqueue(hu, skb);
-+ hci_uart_tx_wakeup(hu);
-+
-+ dev_dbg(dev, "Negotiation sent");
-+
-+ if (!wait_for_completion_interruptible_timeout(&btdev->init_completion,
-+ msecs_to_jiffies(10000))) {
-+ return -ETIMEDOUT;
-+ }
-+
-+ if (btdev->init_error < 0)
-+ return btdev->init_error;
-+
-+ /* Change to previously negotiated speed. Flow Control
-+ * is disabled until bluetooth adapter is ready to avoid
-+ * broken bytes being received.
-+ */
-+ nokia_flow_control(btdev->serdev, false);
-+ serdev_device_set_baudrate(btdev->serdev, SETUP_BAUD_RATE);
-+ err = serdev_device_wait_for_cts(btdev->serdev, true, 200);
-+ if (err < 0) {
-+ dev_err(dev, "CTS not received: %d", err);
-+ return err;
-+ }
-+ nokia_flow_control(btdev->serdev, true);
-+
-+ dev_dbg(dev, "Negotiation successful");
-+
-+ return 0;
-+}
-+
-+static int nokia_setup_fw(struct hci_uart *hu)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ const char *fwname;
-+ const struct firmware *fw;
-+ const u8 *fw_ptr;
-+ size_t fw_size;
-+ int err;
-+
-+ dev_dbg(dev, "setup firmware");
-+
-+ if (btdev->man_id == NOKIA_ID_BCM2048) {
-+ fwname = FIRMWARE_BCM2048;
-+ } else if (btdev->man_id == NOKIA_ID_TI1271) {
-+ fwname = FIRMWARE_TI1271;
-+ } else {
-+ dev_err(dev, "Unsupported bluetooth device!");
-+ return -ENODEV;
-+ }
-+
-+ err = request_firmware(&fw, fwname, dev);
-+ if (err < 0) {
-+ dev_err(dev, "%s: Failed to load Nokia firmware file (%d)",
-+ hu->hdev->name, err);
-+ return err;
-+ }
-+
-+ fw_ptr = fw->data;
-+ fw_size = fw->size;
-+
-+ while (fw_size >= 4) {
-+ u16 pkt_size = get_unaligned_le16(fw_ptr);
-+ u8 pkt_type = fw_ptr[2];
-+ const struct hci_command_hdr *cmd;
-+ u16 opcode;
-+ struct sk_buff *skb;
-+
-+ switch (pkt_type) {
-+ case HCI_COMMAND_PKT:
-+ cmd = (struct hci_command_hdr *)(fw_ptr + 3);
-+ opcode = le16_to_cpu(cmd->opcode);
-+
-+ skb = __hci_cmd_sync(hu->hdev, opcode, cmd->plen,
-+ fw_ptr + 3 + HCI_COMMAND_HDR_SIZE,
-+ HCI_INIT_TIMEOUT);
-+ if (IS_ERR(skb)) {
-+ err = PTR_ERR(skb);
-+ dev_err(dev, "%s: FW command %04x failed (%d)",
-+ hu->hdev->name, opcode, err);
-+ goto done;
-+ }
-+ kfree_skb(skb);
-+ break;
-+ case HCI_NOKIA_RADIO_PKT:
-+ case HCI_NOKIA_NEG_PKT:
-+ case HCI_NOKIA_ALIVE_PKT:
-+ break;
-+ }
-+
-+ fw_ptr += pkt_size + 2;
-+ fw_size -= pkt_size + 2;
-+ }
-+
-+done:
-+ release_firmware(fw);
-+ return err;
-+}
-+
-+static int nokia_setup(struct hci_uart *hu)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ int err;
-+
-+ btdev->initialized = false;
-+
-+ nokia_flow_control(btdev->serdev, false);
-+
-+ pm_runtime_get_sync(dev);
-+
-+ if (btdev->tx_enabled) {
-+ gpiod_set_value_cansleep(btdev->wakeup_bt, 0);
-+ pm_runtime_put(&btdev->serdev->dev);
-+ btdev->tx_enabled = false;
-+ }
-+
-+ dev_dbg(dev, "protocol setup");
-+
-+ /* 0. reset connection */
-+ err = nokia_reset(hu);
-+ if (err < 0) {
-+ dev_err(dev, "Reset failed: %d", err);
-+ goto out;
-+ }
-+
-+ /* 1. negotiate speed etc */
-+ err = nokia_send_negotiation(hu);
-+ if (err < 0) {
-+ dev_err(dev, "Negotiation failed: %d", err);
-+ goto out;
-+ }
-+
-+ /* 2. verify correct setup using alive packet */
-+ err = nokia_send_alive_packet(hu);
-+ if (err < 0) {
-+ dev_err(dev, "Alive check failed: %d", err);
-+ goto out;
-+ }
-+
-+ /* 3. send firmware */
-+ err = nokia_setup_fw(hu);
-+ if (err < 0) {
-+ dev_err(dev, "Could not setup FW: %d", err);
-+ goto out;
-+ }
-+
-+ nokia_flow_control(btdev->serdev, false);
-+ serdev_device_set_baudrate(btdev->serdev, MAX_BAUD_RATE);
-+ nokia_flow_control(btdev->serdev, true);
-+
-+ if (btdev->man_id == NOKIA_ID_BCM2048) {
-+ hu->hdev->set_bdaddr = btbcm_set_bdaddr;
-+ set_bit(HCI_QUIRK_INVALID_BDADDR, &hu->hdev->quirks);
-+ dev_dbg(dev, "bcm2048 has invalid bluetooth address!");
-+ }
-+
-+ dev_dbg(dev, "protocol setup done!");
-+
-+ gpiod_set_value_cansleep(btdev->wakeup_bt, 0);
-+ pm_runtime_put(dev);
-+ btdev->tx_enabled = false;
-+ btdev->initialized = true;
-+
-+ return 0;
-+out:
-+ pm_runtime_put(dev);
-+
-+ return err;
-+}
-+
-+static int nokia_open(struct hci_uart *hu)
-+{
-+ struct device *dev = &hu->serdev->dev;
-+
-+ dev_dbg(dev, "protocol open");
-+
-+ serdev_device_open(hu->serdev);
-+
-+ pm_runtime_enable(dev);
-+
-+ return 0;
-+}
-+
-+static int nokia_flush(struct hci_uart *hu)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+
-+ dev_dbg(&btdev->serdev->dev, "flush device");
-+
-+ skb_queue_purge(&btdev->txq);
-+
-+ return 0;
-+}
-+
-+static int nokia_close(struct hci_uart *hu)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+
-+ dev_dbg(dev, "close device");
-+
-+ btdev->initialized = false;
-+
-+ skb_queue_purge(&btdev->txq);
-+
-+ kfree_skb(btdev->rx_skb);
-+
-+ /* disable module */
-+ gpiod_set_value(btdev->reset, 1);
-+ gpiod_set_value(btdev->wakeup_bt, 0);
-+
-+ pm_runtime_disable(&btdev->serdev->dev);
-+ serdev_device_close(btdev->serdev);
-+
-+ return 0;
-+}
-+
-+/* Enqueue frame for transmittion (padding, crc, etc) */
-+static int nokia_enqueue(struct hci_uart *hu, struct sk_buff *skb)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ int err;
-+
-+ /* Prepend skb with frame type */
-+ memcpy(skb_push(skb, 1), &bt_cb(skb)->pkt_type, 1);
-+
-+ /* Packets must be word aligned */
-+ if (skb->len % 2) {
-+ err = skb_pad(skb, 1);
-+ if (err)
-+ return err;
-+ *skb_put(skb, 1) = 0x00;
-+ }
-+
-+ skb_queue_tail(&btdev->txq, skb);
-+
-+ return 0;
-+}
-+
-+static int nokia_recv_negotiation_packet(struct hci_dev *hdev,
-+ struct sk_buff *skb)
-+{
-+ struct hci_uart *hu = hci_get_drvdata(hdev);
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ struct hci_nokia_neg_hdr *hdr;
-+ struct hci_nokia_neg_evt *evt;
-+ int ret = 0;
-+
-+ hdr = (struct hci_nokia_neg_hdr *)skb->data;
-+ if (hdr->dlen != sizeof(*evt)) {
-+ btdev->init_error = -EIO;
-+ ret = -EIO;
-+ goto finish_neg;
-+ }
-+
-+ evt = (struct hci_nokia_neg_evt *)skb_pull(skb, sizeof(*hdr));
-+
-+ if (evt->ack != NOKIA_NEG_ACK) {
-+ dev_err(dev, "Negotiation received: wrong reply");
-+ btdev->init_error = -EINVAL;
-+ ret = -EINVAL;
-+ goto finish_neg;
-+ }
-+
-+ btdev->man_id = evt->man_id;
-+ btdev->ver_id = evt->ver_id;
-+
-+ dev_dbg(dev, "Negotiation received: baud=%u:clk=%u:manu=%u:vers=%u",
-+ evt->baud, evt->sys_clk, evt->man_id, evt->ver_id);
-+
-+finish_neg:
-+ complete(&btdev->init_completion);
-+ kfree_skb(skb);
-+ return ret;
-+}
-+
-+static int nokia_recv_alive_packet(struct hci_dev *hdev, struct sk_buff *skb)
-+{
-+ struct hci_uart *hu = hci_get_drvdata(hdev);
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ struct hci_nokia_alive_hdr *hdr;
-+ struct hci_nokia_alive_pkt *pkt;
-+ int ret = 0;
-+
-+ hdr = (struct hci_nokia_alive_hdr *)skb->data;
-+ if (hdr->dlen != sizeof(*pkt)) {
-+ dev_err(dev, "Corrupted alive message");
-+ btdev->init_error = -EIO;
-+ ret = -EIO;
-+ goto finish_alive;
-+ }
-+
-+ pkt = (struct hci_nokia_alive_pkt *)skb_pull(skb, sizeof(*hdr));
-+
-+ if (pkt->mid != NOKIA_ALIVE_RESP) {
-+ dev_err(dev, "Alive received: invalid response: 0x%02x!",
-+ pkt->mid);
-+ btdev->init_error = -EINVAL;
-+ ret = -EINVAL;
-+ goto finish_alive;
-+ }
-+
-+ dev_dbg(dev, "Alive received");
-+
-+finish_alive:
-+ complete(&btdev->init_completion);
-+ kfree_skb(skb);
-+ return ret;
-+}
-+
-+static int nokia_recv_radio(struct hci_dev *hdev, struct sk_buff *skb)
-+{
-+ /* Packets received on the dedicated radio channel are
-+ * HCI events and so feed them back into the core.
-+ */
-+ hci_skb_pkt_type(skb) = HCI_EVENT_PKT;
-+ return hci_recv_frame(hdev, skb);
-+}
-+
-+/* Recv data */
-+static const struct h4_recv_pkt nokia_recv_pkts[] = {
-+ { H4_RECV_ACL, .recv = hci_recv_frame },
-+ { H4_RECV_SCO, .recv = hci_recv_frame },
-+ { H4_RECV_EVENT, .recv = hci_recv_frame },
-+ { NOKIA_RECV_ALIVE, .recv = nokia_recv_alive_packet },
-+ { NOKIA_RECV_NEG, .recv = nokia_recv_negotiation_packet },
-+ { NOKIA_RECV_RADIO, .recv = nokia_recv_radio },
-+};
-+
-+static int nokia_recv(struct hci_uart *hu, const void *data, int count)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ int err;
-+
-+ if (!test_bit(HCI_UART_REGISTERED, &hu->flags))
-+ return -EUNATCH;
-+
-+ btdev->rx_skb = h4_recv_buf(hu->hdev, btdev->rx_skb, data, count,
-+ nokia_recv_pkts, ARRAY_SIZE(nokia_recv_pkts));
-+ if (IS_ERR(btdev->rx_skb)) {
-+ err = PTR_ERR(btdev->rx_skb);
-+ dev_err(dev, "Frame reassembly failed (%d)", err);
-+ btdev->rx_skb = NULL;
-+ return err;
-+ }
-+
-+ return count;
-+}
-+
-+static struct sk_buff *nokia_dequeue(struct hci_uart *hu)
-+{
-+ struct nokia_bt_dev *btdev = hu->priv;
-+ struct device *dev = &btdev->serdev->dev;
-+ struct sk_buff *result = skb_dequeue(&btdev->txq);
-+
-+ if (!btdev->initialized)
-+ return result;
-+
-+ if (btdev->tx_enabled == !!result)
-+ return result;
-+
-+ if (result) {
-+ pm_runtime_get_sync(dev);
-+ gpiod_set_value_cansleep(btdev->wakeup_bt, 1);
-+ } else {
-+ serdev_device_wait_until_sent(btdev->serdev, 0);
-+ gpiod_set_value_cansleep(btdev->wakeup_bt, 0);
-+ pm_runtime_put(dev);
-+ }
-+
-+ btdev->tx_enabled = !!result;
-+
-+ return result;
-+}
-+
-+static const struct hci_uart_proto nokia_proto = {
-+ .id = HCI_UART_NOKIA,
-+ .name = "Nokia",
-+ .open = nokia_open,
-+ .close = nokia_close,
-+ .recv = nokia_recv,
-+ .enqueue = nokia_enqueue,
-+ .dequeue = nokia_dequeue,
-+ .flush = nokia_flush,
-+ .setup = nokia_setup,
-+ .manufacturer = 1,
-+};
-+
-+static int nokia_bluetooth_serdev_probe(struct serdev_device *serdev)
-+{
-+ struct device *dev = &serdev->dev;
-+ struct nokia_bt_dev *btdev;
-+ struct clk *sysclk;
-+ int err = 0;
-+
-+ btdev = devm_kzalloc(dev, sizeof(*btdev), GFP_KERNEL);
-+ if (!btdev)
-+ return -ENOMEM;
-+
-+ btdev->hu.serdev = btdev->serdev = serdev;
-+ serdev_device_set_drvdata(serdev, btdev);
-+
-+ btdev->reset = devm_gpiod_get(dev, "reset", GPIOD_OUT_HIGH);
-+ if (IS_ERR(btdev->reset)) {
-+ err = PTR_ERR(btdev->reset);
-+ dev_err(dev, "could not get reset gpio: %d", err);
-+ return err;
-+ }
-+
-+ btdev->wakeup_host = devm_gpiod_get(dev, "host-wakeup", GPIOD_IN);
-+ if (IS_ERR(btdev->wakeup_host)) {
-+ err = PTR_ERR(btdev->wakeup_host);
-+ dev_err(dev, "could not get host wakeup gpio: %d", err);
-+ return err;
-+ }
-+
-+ btdev->wake_irq = gpiod_to_irq(btdev->wakeup_host);
-+
-+ err = devm_request_threaded_irq(dev, btdev->wake_irq, NULL,
-+ wakeup_handler,
-+ IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING | IRQF_ONESHOT,
-+ "wakeup", btdev);
-+ if (err) {
-+ dev_err(dev, "could request wakeup irq: %d", err);
-+ return err;
-+ }
-+
-+ btdev->wakeup_bt = devm_gpiod_get(dev, "bluetooth-wakeup",
-+ GPIOD_OUT_LOW);
-+ if (IS_ERR(btdev->wakeup_bt)) {
-+ err = PTR_ERR(btdev->wakeup_bt);
-+ dev_err(dev, "could not get BT wakeup gpio: %d", err);
-+ return err;
-+ }
-+
-+ sysclk = devm_clk_get(dev, "sysclk");
-+ if (IS_ERR(sysclk)) {
-+ err = PTR_ERR(sysclk);
-+ dev_err(dev, "could not get sysclk: %d", err);
-+ return err;
-+ }
-+
-+ clk_prepare_enable(sysclk);
-+ btdev->sysclk_speed = clk_get_rate(sysclk);
-+ clk_disable_unprepare(sysclk);
-+
-+ skb_queue_head_init(&btdev->txq);
-+
-+ btdev->hu.priv = btdev;
-+ btdev->hu.alignment = 2; /* Nokia H4+ is word aligned */
-+
-+ err = hci_uart_register_device(&btdev->hu, &nokia_proto);
-+ if (err) {
-+ dev_err(dev, "could not register bluetooth uart: %d", err);
-+ return err;
-+ }
-+
-+ return 0;
-+}
-+
-+static void nokia_bluetooth_serdev_remove(struct serdev_device *serdev)
-+{
-+ struct nokia_bt_dev *btdev = serdev_device_get_drvdata(serdev);
-+ struct hci_uart *hu = &btdev->hu;
-+ struct hci_dev *hdev = hu->hdev;
-+
-+ cancel_work_sync(&hu->write_work);
-+
-+ hci_unregister_dev(hdev);
-+ hci_free_dev(hdev);
-+ hu->proto->close(hu);
-+
-+ pm_runtime_disable(&btdev->serdev->dev);
-+}
-+
-+static int nokia_bluetooth_runtime_suspend(struct device *dev)
-+{
-+ struct serdev_device *serdev = to_serdev_device(dev);
-+
-+ nokia_flow_control(serdev, false);
-+ return 0;
-+}
-+
-+static int nokia_bluetooth_runtime_resume(struct device *dev)
-+{
-+ struct serdev_device *serdev = to_serdev_device(dev);
-+
-+ nokia_flow_control(serdev, true);
-+ return 0;
-+}
-+
-+static const struct dev_pm_ops nokia_bluetooth_pm_ops = {
-+ SET_RUNTIME_PM_OPS(nokia_bluetooth_runtime_suspend,
-+ nokia_bluetooth_runtime_resume,
-+ NULL)
-+};
-+
-+#ifdef CONFIG_OF
-+static const struct of_device_id nokia_bluetooth_of_match[] = {
-+ { .compatible = "nokia,h4p-bluetooth", },
-+ {},
-+};
-+MODULE_DEVICE_TABLE(of, nokia_bluetooth_of_match);
-+#endif
-+
-+static struct serdev_device_driver nokia_bluetooth_serdev_driver = {
-+ .probe = nokia_bluetooth_serdev_probe,
-+ .remove = nokia_bluetooth_serdev_remove,
-+ .driver = {
-+ .name = "nokia-bluetooth",
-+ .pm = &nokia_bluetooth_pm_ops,
-+ .of_match_table = of_match_ptr(nokia_bluetooth_of_match),
-+ },
-+};
-+
-+module_serdev_device_driver(nokia_bluetooth_serdev_driver);
---
-2.12.2
-
-From 5593378d18f2487bdce87a687b4263c9626510cb Mon Sep 17 00:00:00 2001
-From: Rob Herring <robh@kernel.org>
-Date: Wed, 5 Apr 2017 12:10:13 -0500
-Subject: [PATCH 10/13] dt-bindings: net: Add TI WiLink shared transport
- binding
-
-Add serial slave device binding for the TI WiLink series of Bluetooth/FM/GPS
-devices.
-
-Signed-off-by: Rob Herring <robh@kernel.org>
-Cc: Mark Rutland <mark.rutland@arm.com>
-Cc: netdev@vger.kernel.org
-Cc: devicetree@vger.kernel.org
----
- .../devicetree/bindings/net/ti,wilink-st.txt | 35 ++++++++++++++++++++++
- 1 file changed, 35 insertions(+)
- create mode 100644 Documentation/devicetree/bindings/net/ti,wilink-st.txt
-
-diff --git a/Documentation/devicetree/bindings/net/ti,wilink-st.txt b/Documentation/devicetree/bindings/net/ti,wilink-st.txt
-new file mode 100644
-index 000000000000..cbad73a84ac4
---- /dev/null
-+++ b/Documentation/devicetree/bindings/net/ti,wilink-st.txt
-@@ -0,0 +1,35 @@
-+TI WiLink 7/8 (wl12xx/wl18xx) Shared Transport BT/FM/GPS devices
-+
-+TI WiLink devices have a UART interface for providing Bluetooth, FM radio,
-+and GPS over what's called "shared transport". The shared transport is
-+standard BT HCI protocol with additional channels for the other functions.
-+
-+These devices also have a separate WiFi interface as described in
-+wireless/ti,wlcore.txt.
-+
-+This bindings follows the UART slave device binding in
-+../serial/slave-device.txt.
-+
-+Required properties:
-+ - compatible: should be one of the following:
-+ "ti,wl1271-st"
-+ "ti,wl1273-st"
-+ "ti,wl1831-st"
-+ "ti,wl1835-st"
-+ "ti,wl1837-st"
-+
-+Optional properties:
-+ - enable-gpios : GPIO signal controlling enabling of BT. Active high.
-+ - vio-supply : Vio input supply (1.8V)
-+ - vbat-supply : Vbat input supply (2.9-4.8V)
-+
-+Example:
-+
-+&serial0 {
-+ compatible = "ns16550a";
-+ ...
-+ bluetooth {
-+ compatible = "ti,wl1835-st";
-+ enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
-+ };
-+};
---
-2.12.2
-
-From d22a4564d1b8e1eeb7c442171cedcc3ae809cfff Mon Sep 17 00:00:00 2001
-From: Rob Herring <robh@kernel.org>
-Date: Tue, 17 Jan 2017 09:58:10 -0600
-Subject: [PATCH 11/13] bluetooth: hci_uart: remove unused hci_uart_init_tty
-
-There are no users of hci_uart_init_tty, so remove it.
-
-Signed-off-by: Rob Herring <robh@kernel.org>
-Cc: Marcel Holtmann <marcel@holtmann.org>
-Cc: Gustavo Padovan <gustavo@padovan.org>
-Cc: Johan Hedberg <johan.hedberg@gmail.com>
-Cc: linux-bluetooth@vger.kernel.org
----
- drivers/bluetooth/hci_ldisc.c | 19 -------------------
- drivers/bluetooth/hci_uart.h | 1 -
- 2 files changed, 20 deletions(-)
-
-diff --git a/drivers/bluetooth/hci_ldisc.c b/drivers/bluetooth/hci_ldisc.c
-index 17bcbc13623f..cec4438ede01 100644
---- a/drivers/bluetooth/hci_ldisc.c
-+++ b/drivers/bluetooth/hci_ldisc.c
-@@ -319,25 +319,6 @@ void hci_uart_set_speeds(struct hci_uart *hu, unsigned int init_speed,
- hu->oper_speed = oper_speed;
- }
-
--void hci_uart_init_tty(struct hci_uart *hu)
--{
-- struct tty_struct *tty = hu->tty;
-- struct ktermios ktermios;
--
-- /* Bring the UART into a known 8 bits no parity hw fc state */
-- ktermios = tty->termios;
-- ktermios.c_iflag &= ~(IGNBRK | BRKINT | PARMRK | ISTRIP |
-- INLCR | IGNCR | ICRNL | IXON);
-- ktermios.c_oflag &= ~OPOST;
-- ktermios.c_lflag &= ~(ECHO | ECHONL | ICANON | ISIG | IEXTEN);
-- ktermios.c_cflag &= ~(CSIZE | PARENB);
-- ktermios.c_cflag |= CS8;
-- ktermios.c_cflag |= CRTSCTS;
--
-- /* tty_set_termios() return not checked as it is always 0 */
-- tty_set_termios(tty, &ktermios);
--}
--
- void hci_uart_set_baudrate(struct hci_uart *hu, unsigned int speed)
- {
- struct tty_struct *tty = hu->tty;
-diff --git a/drivers/bluetooth/hci_uart.h b/drivers/bluetooth/hci_uart.h
-index 1b41c661bbb8..2b05e557fad0 100644
---- a/drivers/bluetooth/hci_uart.h
-+++ b/drivers/bluetooth/hci_uart.h
-@@ -114,7 +114,6 @@ int hci_uart_register_device(struct hci_uart *hu, const struct hci_uart_proto *p
-
- int hci_uart_tx_wakeup(struct hci_uart *hu);
- int hci_uart_init_ready(struct hci_uart *hu);
--void hci_uart_init_tty(struct hci_uart *hu);
- void hci_uart_set_baudrate(struct hci_uart *hu, unsigned int speed);
- void hci_uart_set_flow_control(struct hci_uart *hu, bool enable);
- void hci_uart_set_speeds(struct hci_uart *hu, unsigned int init_speed,
---
-2.12.2
-
-From 4664fe8eb293288c1fba2ebc50ac50131f6125cf Mon Sep 17 00:00:00 2001
-From: Rob Herring <robh@kernel.org>
-Date: Wed, 18 Jan 2017 11:41:25 -0600
-Subject: [PATCH 12/13] bluetooth: hci_uart: add LL protocol serdev driver
- support
-
-Turns out that the LL protocol and the TI-ST are the same thing AFAICT.
-The TI-ST adds firmware loading, GPIO control, and shared access for
-NFC, FM radio, etc. For now, we're only implementing what is needed for
-BT. This mirrors other drivers like BCM and Intel, but uses the new
-serdev bus.
-
-The firmware loading is greatly simplified by using existing
-infrastructure to send commands. It may be a bit slower than the
-original code using synchronous functions, but the real bottleneck is
-likely doing firmware load at 115.2kbps.
-
-Signed-off-by: Rob Herring <robh@kernel.org>
-Cc: Marcel Holtmann <marcel@holtmann.org>
-Cc: Gustavo Padovan <gustavo@padovan.org>
-Cc: Johan Hedberg <johan.hedberg@gmail.com>
-Cc: linux-bluetooth@vger.kernel.org
----
- drivers/bluetooth/hci_ll.c | 261 ++++++++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 260 insertions(+), 1 deletion(-)
-
-diff --git a/drivers/bluetooth/hci_ll.c b/drivers/bluetooth/hci_ll.c
-index 02692fe30279..9b2054f5502d 100644
---- a/drivers/bluetooth/hci_ll.c
-+++ b/drivers/bluetooth/hci_ll.c
-@@ -34,20 +34,23 @@
- #include <linux/sched.h>
- #include <linux/types.h>
- #include <linux/fcntl.h>
-+#include <linux/firmware.h>
- #include <linux/interrupt.h>
- #include <linux/ptrace.h>
- #include <linux/poll.h>
-
- #include <linux/slab.h>
--#include <linux/tty.h>
- #include <linux/errno.h>
- #include <linux/string.h>
- #include <linux/signal.h>
- #include <linux/ioctl.h>
-+#include <linux/serdev.h>
- #include <linux/skbuff.h>
-+#include <linux/ti_wilink_st.h>
-
- #include <net/bluetooth/bluetooth.h>
- #include <net/bluetooth/hci_core.h>
-+#include <linux/gpio/consumer.h>
-
- #include "hci_uart.h"
-
-@@ -76,6 +79,12 @@ struct hcill_cmd {
- u8 cmd;
- } __packed;
-
-+struct ll_device {
-+ struct hci_uart hu;
-+ struct serdev_device *serdev;
-+ struct gpio_desc *enable_gpio;
-+};
-+
- struct ll_struct {
- unsigned long rx_state;
- unsigned long rx_count;
-@@ -136,6 +145,9 @@ static int ll_open(struct hci_uart *hu)
-
- hu->priv = ll;
-
-+ if (hu->serdev)
-+ serdev_device_open(hu->serdev);
-+
- return 0;
- }
-
-@@ -164,6 +176,13 @@ static int ll_close(struct hci_uart *hu)
-
- kfree_skb(ll->rx_skb);
-
-+ if (hu->serdev) {
-+ struct ll_device *lldev = serdev_device_get_drvdata(hu->serdev);
-+ gpiod_set_value_cansleep(lldev->enable_gpio, 0);
-+
-+ serdev_device_close(hu->serdev);
-+ }
-+
- hu->priv = NULL;
-
- kfree(ll);
-@@ -505,9 +524,245 @@ static struct sk_buff *ll_dequeue(struct hci_uart *hu)
- return skb_dequeue(&ll->txq);
- }
-
-+#ifdef CONFIG_SERIAL_DEV_BUS
-+static int read_local_version(struct hci_dev *hdev)
-+{
-+ int err = 0;
-+ unsigned short version = 0;
-+ struct sk_buff *skb;
-+ struct hci_rp_read_local_version *ver;
-+
-+ skb = __hci_cmd_sync(hdev, HCI_OP_READ_LOCAL_VERSION, 0, NULL, HCI_INIT_TIMEOUT);
-+ if (IS_ERR(skb)) {
-+ bt_dev_err(hdev, "Reading TI version information failed (%ld)",
-+ PTR_ERR(skb));
-+ err = PTR_ERR(skb);
-+ goto out;
-+ }
-+ if (skb->len != sizeof(*ver)) {
-+ err = -EILSEQ;
-+ goto out;
-+ }
-+
-+ ver = (struct hci_rp_read_local_version *)skb->data;
-+ if (le16_to_cpu(ver->manufacturer) != 13) {
-+ err = -ENODEV;
-+ goto out;
-+ }
-+
-+ version = le16_to_cpu(ver->lmp_subver);
-+
-+out:
-+ if (err) bt_dev_err(hdev, "Failed to read TI version info: %d", err);
-+ kfree_skb(skb);
-+ return err ? err : version;
-+}
-+
-+/**
-+ * download_firmware -
-+ * internal function which parses through the .bts firmware
-+ * script file intreprets SEND, DELAY actions only as of now
-+ */
-+static int download_firmware(struct ll_device *lldev)
-+{
-+ unsigned short chip, min_ver, maj_ver;
-+ int version, err, len;
-+ unsigned char *ptr, *action_ptr;
-+ unsigned char bts_scr_name[40]; /* 40 char long bts scr name? */
-+ const struct firmware *fw;
-+ struct sk_buff *skb;
-+ struct hci_command *cmd;
-+
-+ version = read_local_version(lldev->hu.hdev);
-+ if (version < 0)
-+ return version;
-+
-+ chip = (version & 0x7C00) >> 10;
-+ min_ver = (version & 0x007F);
-+ maj_ver = (version & 0x0380) >> 7;
-+ if (version & 0x8000)
-+ maj_ver |= 0x0008;
-+
-+ snprintf(bts_scr_name, sizeof(bts_scr_name),
-+ "ti-connectivity/TIInit_%d.%d.%d.bts",
-+ chip, maj_ver, min_ver);
-+
-+ err = request_firmware(&fw, bts_scr_name, &lldev->serdev->dev);
-+ if (err || !fw->data || !fw->size) {
-+ bt_dev_err(lldev->hu.hdev, "request_firmware failed(errno %d) for %s",
-+ err, bts_scr_name);
-+ return -EINVAL;
-+ }
-+ ptr = (void *)fw->data;
-+ len = fw->size;
-+ /* bts_header to remove out magic number and
-+ * version
-+ */
-+ ptr += sizeof(struct bts_header);
-+ len -= sizeof(struct bts_header);
-+
-+ while (len > 0 && ptr) {
-+ bt_dev_dbg(lldev->hu.hdev, " action size %d, type %d ",
-+ ((struct bts_action *)ptr)->size,
-+ ((struct bts_action *)ptr)->type);
-+
-+ action_ptr = &(((struct bts_action *)ptr)->data[0]);
-+
-+ switch (((struct bts_action *)ptr)->type) {
-+ case ACTION_SEND_COMMAND: /* action send */
-+ bt_dev_dbg(lldev->hu.hdev, "S");
-+ cmd = (struct hci_command *)action_ptr;
-+ if (cmd->opcode == 0xff36) {
-+ /* ignore remote change
-+ * baud rate HCI VS command */
-+ bt_dev_warn(lldev->hu.hdev, "change remote baud rate command in firmware");
-+ break;
-+ }
-+ if (cmd->prefix != 1)
-+ bt_dev_dbg(lldev->hu.hdev, "command type %d\n", cmd->prefix);
-+
-+ skb = __hci_cmd_sync(lldev->hu.hdev, cmd->opcode, cmd->plen, &cmd->speed, HCI_INIT_TIMEOUT);
-+ if (IS_ERR(skb)) {
-+ bt_dev_err(lldev->hu.hdev, "send command failed\n");
-+ goto out_rel_fw;
-+ }
-+ kfree_skb(skb);
-+ break;
-+ case ACTION_WAIT_EVENT: /* wait */
-+ /* no need to wait as command was synchronous */
-+ bt_dev_dbg(lldev->hu.hdev, "W");
-+ break;
-+ case ACTION_DELAY: /* sleep */
-+ bt_dev_info(lldev->hu.hdev, "sleep command in scr");
-+ mdelay(((struct bts_action_delay *)action_ptr)->msec);
-+ break;
-+ }
-+ len -= (sizeof(struct bts_action) +
-+ ((struct bts_action *)ptr)->size);
-+ ptr += sizeof(struct bts_action) +
-+ ((struct bts_action *)ptr)->size;
-+ }
-+
-+out_rel_fw:
-+ /* fw download complete */
-+ release_firmware(fw);
-+ return err;
-+}
-+
-+static int ll_setup(struct hci_uart *hu)
-+{
-+ int err, retry = 3;
-+ struct ll_device *lldev;
-+ struct serdev_device *serdev = hu->serdev;
-+ u32 speed;
-+
-+ if (!serdev)
-+ return 0;
-+
-+ lldev = serdev_device_get_drvdata(serdev);
-+
-+ serdev_device_set_flow_control(serdev, true);
-+
-+ do {
-+ /* Configure BT_EN to HIGH state */
-+ gpiod_set_value_cansleep(lldev->enable_gpio, 0);
-+ msleep(5);
-+ gpiod_set_value_cansleep(lldev->enable_gpio, 1);
-+ msleep(100);
-+
-+ err = download_firmware(lldev);
-+ if (!err)
-+ break;
-+
-+ /* Toggle BT_EN and retry */
-+ bt_dev_err(hu->hdev, "download firmware failed, retrying...");
-+ } while (retry--);
-+
-+ if (err)
-+ return err;
-+
-+ /* Operational speed if any */
-+ if (hu->oper_speed)
-+ speed = hu->oper_speed;
-+ else if (hu->proto->oper_speed)
-+ speed = hu->proto->oper_speed;
-+ else
-+ speed = 0;
-+
-+ if (speed) {
-+ struct sk_buff *skb = __hci_cmd_sync(hu->hdev, 0xff36, sizeof(speed), &speed, HCI_INIT_TIMEOUT);
-+ if (!IS_ERR(skb)) {
-+ kfree_skb(skb);
-+ serdev_device_set_baudrate(serdev, speed);
-+ }
-+ }
-+
-+ return 0;
-+}
-+
-+static const struct hci_uart_proto llp;
-+
-+static int hci_ti_probe(struct serdev_device *serdev)
-+{
-+ struct hci_uart *hu;
-+ struct ll_device *lldev;
-+ u32 max_speed = 3000000;
-+
-+ lldev = devm_kzalloc(&serdev->dev, sizeof(struct ll_device), GFP_KERNEL);
-+ if (!lldev)
-+ return -ENOMEM;
-+ hu = &lldev->hu;
-+
-+ serdev_device_set_drvdata(serdev, lldev);
-+ lldev->serdev = hu->serdev = serdev;
-+
-+ lldev->enable_gpio = devm_gpiod_get_optional(&serdev->dev, "enable", GPIOD_OUT_LOW);
-+ if (IS_ERR(lldev->enable_gpio))
-+ return PTR_ERR(lldev->enable_gpio);
-+
-+ of_property_read_u32(serdev->dev.of_node, "max-speed", &max_speed);
-+ hci_uart_set_speeds(hu, 115200, max_speed);
-+
-+ return hci_uart_register_device(hu, &llp);
-+}
-+
-+static void hci_ti_remove(struct serdev_device *serdev)
-+{
-+ struct ll_device *lldev = serdev_device_get_drvdata(serdev);
-+ struct hci_uart *hu = &lldev->hu;
-+ struct hci_dev *hdev = hu->hdev;
-+
-+ cancel_work_sync(&hu->write_work);
-+
-+ hci_unregister_dev(hdev);
-+ hci_free_dev(hdev);
-+ hu->proto->close(hu);
-+}
-+
-+static const struct of_device_id hci_ti_of_match[] = {
-+ { .compatible = "ti,wl1831-st" },
-+ { .compatible = "ti,wl1835-st" },
-+ { .compatible = "ti,wl1837-st" },
-+ {},
-+};
-+MODULE_DEVICE_TABLE(of, hci_ti_of_match);
-+
-+static struct serdev_device_driver hci_ti_drv = {
-+ .driver = {
-+ .name = "hci-ti",
-+ .of_match_table = of_match_ptr(hci_ti_of_match),
-+ },
-+ .probe = hci_ti_probe,
-+ .remove = hci_ti_remove,
-+};
-+#else
-+#define ll_setup NULL
-+#endif
-+
- static const struct hci_uart_proto llp = {
- .id = HCI_UART_LL,
- .name = "LL",
-+ .setup = ll_setup,
- .open = ll_open,
- .close = ll_close,
- .recv = ll_recv,
-@@ -518,10 +773,14 @@ static const struct hci_uart_proto llp = {
-
- int __init ll_init(void)
- {
-+ serdev_device_driver_register(&hci_ti_drv);
-+
- return hci_uart_register_proto(&llp);
- }
-
- int __exit ll_deinit(void)
- {
-+ serdev_device_driver_unregister(&hci_ti_drv);
-+
- return hci_uart_unregister_proto(&llp);
- }
---
-2.12.2
-
-From 33bbcaa7b1a4639a5e149e725a674324e7487b17 Mon Sep 17 00:00:00 2001
-From: Rob Herring <robh@kernel.org>
-Date: Mon, 21 Nov 2016 15:21:56 -0600
-Subject: [PATCH 13/13] arm64: dts: hikey: add WL1835 Bluetooth device node
-
-This adds the serial slave device for the WL1835 Bluetooth interface.
-
-Signed-off-by: Rob Herring <robh@kernel.org>
-Cc: Wei Xu <xuwei5@hisilicon.com>
-Cc: Mark Rutland <mark.rutland@arm.com>
----
- arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
-index dba3c131c62c..9b4ba7169210 100644
---- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
-+++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
-@@ -98,6 +98,11 @@
- assigned-clocks = <&sys_ctrl HI6220_UART1_SRC>;
- assigned-clock-rates = <150000000>;
- status = "ok";
-+
-+ bluetooth {
-+ compatible = "ti,wl1835-st";
-+ enable-gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>;
-+ };
- };
-
- uart2: uart@f7112000 {
---
-2.12.2
-
diff --git a/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch b/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch
index a37b15ec7..7e22e3669 100644
--- a/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch
+++ b/v3-2-2-Input-synaptics---Lenovo-X1-Carbon-5-should-use-SMBUS-RMI.patch
@@ -25,5 +25,5 @@ index ee5466a374bf..b3c683a84d3f 100644
"LEN004a", /* W541 */
+ "LEN0073", /* X1 Carbon 5 */
"LEN200f", /* T450s */
+ "LEN2018", /* T460p */
NULL
- };
diff --git a/vc4-fix-vblank-cursor-update-issue.patch b/vc4-fix-vblank-cursor-update-issue.patch
deleted file mode 100644
index 8537d67ca..000000000
--- a/vc4-fix-vblank-cursor-update-issue.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From 6d24c1c5918907ab78a5729b78c0d165deb3cc2b Mon Sep 17 00:00:00 2001
-From: Michael Zoran <mzoran@crowfest.net>
-Date: Thu, 23 Feb 2017 17:54:31 -0800
-Subject: drm/vc4: Don't wait for vblank when updating the cursor
-
-Commonly used desktop environments such as xfce4 and gnome
-on debian sid can flood the graphics drivers with cursor
-updates. Because the current implementation is waiting
-for a vblank between cursor updates, this will cause the
-display to hang for a long time since a typical refresh
-rate is only 60Hz.
-
-This is unnecessary and unexpected by user mode software,
-so simply swap out the cursor frame buffer without waiting.
-
-Signed-off-by: Michael Zoran <mzoran@crowfest.net>
-Reviewed-by: Eric Anholt <eric@anholt.net>
-Link: http://patchwork.freedesktop.org/patch/msgid/20170224015431.24583-1-mzoran@crowfest.net
-
-diff --git a/drivers/gpu/drm/vc4/vc4_plane.c b/drivers/gpu/drm/vc4/vc4_plane.c
-index f7a229d..110224c 100644
---- a/drivers/gpu/drm/vc4/vc4_plane.c
-+++ b/drivers/gpu/drm/vc4/vc4_plane.c
-@@ -20,6 +20,7 @@
-
- #include "vc4_drv.h"
- #include "vc4_regs.h"
-+#include "drm_atomic.h"
- #include "drm_atomic_helper.h"
- #include "drm_fb_cma_helper.h"
- #include "drm_plane_helper.h"
-@@ -769,12 +770,6 @@ vc4_update_plane(struct drm_plane *plane,
- if (!plane_state)
- goto out;
-
-- /* If we're changing the cursor contents, do that in the
-- * normal vblank-synced atomic path.
-- */
-- if (fb != plane_state->fb)
-- goto out;
--
- /* No configuring new scaling in the fast path. */
- if (crtc_w != plane_state->crtc_w ||
- crtc_h != plane_state->crtc_h ||
-@@ -783,6 +778,11 @@ vc4_update_plane(struct drm_plane *plane,
- goto out;
- }
-
-+ if (fb != plane_state->fb) {
-+ drm_atomic_set_fb_for_plane(plane->state, fb);
-+ vc4_plane_async_set_fb(plane, fb);
-+ }
-+
- /* Set the cursor's position on the screen. This is the
- * expected change from the drm_mode_cursor_universal()
- * helper.
---
-cgit v0.10.2
-