--- zzzz-none-000/linux-5.15.111/arch/x86/Kconfig 2023-05-11 14:00:40.000000000 +0000 +++ puma7-atom-6670-761/linux-5.15.111/arch/x86/Kconfig 2024-02-07 10:22:34.000000000 +0000 @@ -1,4 +1,10 @@ # SPDX-License-Identifier: GPL-2.0 + +# +# Includes Intel Corporation's changes/modifications dated: 2017-2019. +# Changed/modified portions - Copyright (c) 2017-2019 Intel Corporation. +# + # Select 32 or 64 bit config 64BIT bool "64-bit kernel" if "$(ARCH)" = "x86" @@ -200,7 +206,6 @@ select HAVE_FUNCTION_GRAPH_TRACER select HAVE_FUNCTION_TRACER select HAVE_GCC_PLUGINS - select HAVE_HW_BREAKPOINT select HAVE_IOREMAP_PROT select HAVE_IRQ_EXIT_ON_IRQ_STACK if X86_64 select HAVE_IRQ_TIME_ACCOUNTING @@ -217,7 +222,6 @@ select HAVE_KRETPROBES select HAVE_KVM select HAVE_LIVEPATCH if X86_64 - select HAVE_MIXED_BREAKPOINTS_REGS select HAVE_MOD_ARCH_SPECIFIC select HAVE_MOVE_PMD select HAVE_MOVE_PUD @@ -251,7 +255,6 @@ select NEED_SG_DMA_LENGTH select PCI_DOMAINS if PCI select PCI_LOCKLESS_CONFIG if PCI - select PERF_EVENTS select RTC_LIB select RTC_MC146818_LIB select SPARSE_IRQ @@ -259,18 +262,16 @@ select STACK_VALIDATION if HAVE_STACK_VALIDATION && (HAVE_STATIC_CALL_INLINE || RETPOLINE) select SYSCTL_EXCEPTION_TRACE select THREAD_INFO_IN_TASK - select TRACE_IRQFLAGS_SUPPORT - select TRACE_IRQFLAGS_NMI_SUPPORT select USER_STACKTRACE_SUPPORT select VIRT_TO_BUS select HAVE_ARCH_KCSAN if X86_64 select X86_FEATURE_NAMES if PROC_FS select PROC_PID_ARCH_STATUS if PROC_FS + select OF_EARLY_FLATTREE if OF imply IMA_SECURE_AND_OR_TRUSTED_BOOT if EFI config INSTRUCTION_DECODER def_bool y - depends on KPROBES || PERF_EVENTS || UPROBES config OUTPUT_FORMAT string @@ -593,6 +594,254 @@ This option compiles in support for the CE4100 SOC for settop boxes and media devices. +config NET_SUBSYSTEM + bool "Net IP controller support for Intel CE2600 platform" + depends on X86_PUMA7 + select NET + select ACPI + select HW_MAILBOX + default y + help + This is the NET-IP subsystem support for Intel CE2600 platform. + +config NET_SUBSYSTEM_SYSFS + bool "Sysfs interface for Net IP controller" + depends on NET_SUBSYSTEM + depends on NETDEVICES + default y + help + Exposes sysfs interface to get and set NET-IP subsystem attributes. + +config NETIP_SERVICES_ON_ATOM + bool "Net IP services controlled by Atom SW components" + depends on NET_SUBSYSTEM + help + Enables including of Net IP services in configure message that are + running on Atom. + + +# +# WiFi Proxy network device driver configuration +# + +menu "Intel Puma7 WiFi proxy support" +config WIFI_PROXY + bool "WiFi proxy network device driver" + default n + depends on X86_PUMA7 && INTEL_KERNEL_PP_DRIVER_LOCAL + help + If PP to WiFi devices communication is needed + then select yes. + else, select no. + +config WIFI_PROXY_DEBUG + bool "Enable WiFi proxy FW debugging" + default n + depends on WIFI_PROXY + help + Enable WiFi proxy FW debugging + +config WIFI_PROXY_DEBUG_BUFF_SIZE + int "Debug buffer size, number of debug messages" + default 256 + depends on WIFI_PROXY_DEBUG + help + Configure extra shared memory for debugging, default 2MB for PUMA6_SOC, 512KB for PUMA5_SOC + +config WIFI_PROXY_EMULATOR + tristate "WiFi proxy emulator" + default n + depends on WIFI_PROXY_DEBUG + help + If wifi proxy emulator is needed + then select yes. + else, select no. +endmenu + +# +# WiFi Debug network device driver configuration +# + +menu "Intel Puma7 WiFi Debug support" +config WIFI_DEBUG + bool "WiFi Debug network device driver" + default n + depends on X86_PUMA7 + help + If want enable WiFi debug then select yes. + else, select no. +endmenu + +menu "Intel Puma7 LitePath Support" + config PUMA_LITEPATH + bool "Configures Partial Offload feature in LitePath" + depends on X86_PUMA7 + default n + help + Configures the Partial Offload features in the LitePath. + This feature turns on the LitePath support logic for + WiFi Access Point driver that wishes to use Partial + Offload feature. +endmenu + +menu "Intel PUMA7 AVALANCHE support" +config ARM_AVALANCHE_PDSP + bool "PDSP General Driver" + default n + config ARM_AVALANCHE_PDSP_PP + bool "TI Packet processor support for net-infra structure" + depends on X86_PUMA7 + depends on ARM_AVALANCHE_PDSP + default n + config TI_PACKET_PROCESSOR + bool "Packet processor data pipe" + depends on ARM_AVALANCHE_PDSP_PP + select INET + default n + help + Say yes here to enable the TI packet processor + The TIPP implements packet filtering and logging rules + and is part of the netfilter framework. + Package is part of the P7 platform netfiltering capabilities. + config TI_PACKET_PROCESSOR_STATS + bool "Packet processor stats" + depends on TI_PACKET_PROCESSOR + default n + help + Say yes here to enable the TI packet processor stats feature + TIPP_STATS implements a feature that allows the reading of + TIPP filters. + Package is part of the P7 platform netfiltering capabilities. + config INTEL_KERNEL_SKB_COOKIE + bool "Support Aggregated SKB Cookie" + depends on TI_PACKET_PROCESSOR + default n + help + Allow support of the aggregated cookie inside SKB + + config X86_AVALANCHE_SOC + bool "Packet processor data pipe support" + depends on TI_PACKET_PROCESSOR + default n + help + Say yes here to enable X86_AVALANCHE_SOC support + X86_AVALANCHE_SOC implements packet processing features + used by the Puma7 SoC. + Package is part of the P7 platform packet processing capabilities. + config TI_META_DATA + bool "Packet processor meta data support" + depends on X86_AVALANCHE_SOC + default n + + + +endmenu + +choice + prompt "Intel PUMA7 AVALANCHE SOC Type" + depends on X86_PUMA7 + default MACH_PUMA7 + help + Select the Intel BoardBand SoC Type that you want the kernel port for. + If unsure, contact your software vendor. + +config MACH_PUMA5 + bool "Puma5 SOC" + +config MACH_PUMA6 + bool "Puma6 SOC" + +config MACH_PUMA7 + bool "Puma7 SOC" + +endchoice + +# Get to know the reference board the user wants to compile for +choice + prompt "Puma7 reference board type" + depends on MACH_PUMA7 + default MACH_PUMA7_BOARD + help + Select the Puma7 Ref. Design Board that you are using. If you + are not using any of these, choose the one closest to your + design and make modifications to the kernel as required. + +config MACH_PUMA7_FPGA + bool "Puma7 FPGA Board" + +config MACH_PUMA7_BOARD + bool "Puma7 Board" + +endchoice +config HW_MUTEXES + bool "MUTEX controller support for Intel Puma7 platform" + depends on X86_PUMA7 + default y + help + This is the MUTEX controller support for Intel CE2600 platform. + If unsure, say Y. +choice + depends on HW_MUTEXES + prompt "MUTEX controller support for Intel CE2600 platform" + default MUTEX_FIFO + help + Allows the configuration of the MUTEX controller working mode in Intel CE platform + +config MUTEX_FIFO + bool "FIFO scheduler" + help + Mutex works in FIFO scheduler mode, which is the default behaviour + +config MUTEX_NULL + bool "Null scheduler" + help + Mutex works in Null scheduler mode + +config MUTEX_POLLING + bool "Polling mode" + help + works in polling mode, interrupt is disabled +endchoice + +config X86_PUMA7 + bool "Puma7 Architecture Support" + select PCI + select REGULATOR + select IOSF_MBI + select HW_MUTEXES + select NET_SUBSYSTEM + select HPET_TIMER_NONSTOP + default y + help + Enables all config options necessary for Puma7 SoC support. + Features include but are not limited to: + HW_MUTEXES, DWC_QOS, NET_SUBSYSTEM, HW_MAILBOX, CE_MAILBOX, MRPC, + ARM_AVALANCHE, INTEL_CHT_PHY, INTEL_ISS, MMC_SDHCI_ACPI_POWER_ON, + GMIN_INTEL_MID, GPIO_INTELCE2700, INTEL_MEI_TXE, REGULATOR_INT34D9, + PUMA_THERMAL, BRIDGE_EBT_FORWARD, SPI_INTEL_SPI_PLATFORM + +config HW_MAILBOX + bool "HW Mailbox support for Intel CE2600 platform" + depends on NET_SUBSYSTEM + default y + help + This is the HW Mailbox support for Intel CE2600 platform. + If unsure, say Y. + +config INTEL_DEBUG_HW_MBOX_KINFO + bool "Enable additional procfs files for HW_MAILBOX" + depends on HW_MAILBOX + default n + help + This enables additional procfs files in HW_MAILBOX module. + +config X86_INTEL_CE2700 + bool "Intel CE2700 Platform Support" + depends on X86_PUMA7 + default y + help + Select to build a kernel capable of supporting CE2700 platform drivers. + config X86_INTEL_MID bool "Intel MID platform support" depends on X86_EXTENDED_PLATFORM @@ -630,6 +879,14 @@ Say Y here if you have a Quark based system such as the Arduino compatible Intel Galileo. +config GMIN_INTEL_MID + bool "G-Min minimal INTEL_MID support" + depends on X86_PUMA7 + help + Select Y to build a kernel capable of booting on G-Min + enabled devices without the full INTEL_MID/SFI firmware + stack. + config X86_INTEL_LPSS bool "Intel Low Power Subsystem Support" depends on X86 && ACPI && PCI @@ -656,6 +913,8 @@ config IOSF_MBI tristate "Intel SoC IOSF Sideband support for SoC platforms" depends on PCI + select PUMA_ACPI + default y help This option enables sideband register access support for Intel SoC platforms. On these platforms the IOSF sideband is used in lieu of @@ -753,6 +1012,15 @@ If in doubt, say "Y". +config HW_BREAKPOINTS + bool "Enable hardware breakpoints support" if EXPERT + default y + select HAVE_HW_BREAKPOINT + select HAVE_MIXED_BREAKPOINTS_REGS + help + Enable support for x86 hardware breakpoints for debuggers + and perf. This will implicitly enable perf-events. + menuconfig HYPERVISOR_GUEST bool "Linux guest support" help @@ -885,6 +1153,19 @@ Choose N to continue using the legacy 8254 timer. +# HPET does not stop in C-States +config HPET_TIMER_NONSTOP + bool + +config HPET_NMI_TIMER + def_bool AVM_WATCHDOG + prompt "HPET NMI timer support" + depends on HPET_TIMER + help + Add support for configuring a HPET timer to fire an NMI. + + This is an AVM extension. + config HPET_EMULATE_RTC def_bool y depends on HPET_TIMER && (RTC_DRV_CMOS=m || RTC_DRV_CMOS=y) @@ -1066,6 +1347,15 @@ def_bool y depends on X86_LOCAL_APIC || X86_UP_IOAPIC +config INTEL_PCI_MULTI_MSI + bool "PCI multiple MSI support for x86 (EXPERIMENTAL)" + depends on X86 && PCI_MSI + default n + help + This allows device drivers use multiple MSIs + + If unsure, say N. + config X86_REROUTE_FOR_BROKEN_BOOT_IRQS bool "Reroute for broken boot IRQs" depends on X86_IO_APIC @@ -2914,3 +3204,5 @@ source "arch/x86/kvm/Kconfig" source "arch/x86/Kconfig.assembler" + +source "arch/x86/pp_init/Kconfig"