diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.19.8/2740-drm-amdkfd-Copy-in-KFD-related-files.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.19.8/2740-drm-amdkfd-Copy-in-KFD-related-files.patch | 35780 |
1 files changed, 35780 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.19.8/2740-drm-amdkfd-Copy-in-KFD-related-files.patch b/common/recipes-kernel/linux/linux-yocto-4.19.8/2740-drm-amdkfd-Copy-in-KFD-related-files.patch new file mode 100644 index 00000000..0b0ad62f --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.19.8/2740-drm-amdkfd-Copy-in-KFD-related-files.patch @@ -0,0 +1,35780 @@ +From 36a04f978362dd53409d2bcaffe28662099ea746 Mon Sep 17 00:00:00 2001 +From: Kent Russell <kent.russell@amd.com> +Date: Tue, 22 Jan 2019 07:52:36 -0500 +Subject: [PATCH 2740/2940] drm/amdkfd: Copy in KFD-related files + +This includes kernel configs, README.md, includes, and +amdgpu/*kfd* files + +Change-Id: If18b468aeb974b19f1bad4ea4271fe3a29b1551d +Signed-off-by: Kent Russell <kent.russell@amd.com> +Signed-off-by: Chaudhary Amit Kumar <Chaudharyamit.Kumar@amd.com> +--- + arch/arm64/configs/rock-dbg_defconfig | 5233 +++++++++ + arch/powerpc/configs/rock-dbg_defconfig | 8635 +++++++++++++++ + arch/x86/configs/rock-dbg_defconfig | 4367 ++++++++ + arch/x86/configs/rock-rel_defconfig | 9307 +++++++++++++++++ + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 55 +- + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 17 +- + .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 6 +- + .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 99 +- + .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.h | 62 + + .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c | 274 +- + .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 281 +- + drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 8 + + drivers/gpu/drm/amd/amdkfd/Makefile | 6 +- + .../gpu/drm/amd/amdkfd/cwsr_trap_handler.h | 9 +- + .../drm/amd/amdkfd/cwsr_trap_handler_gfx8.asm | 13 - + drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 1245 ++- + drivers/gpu/drm/amd/amdkfd/kfd_crat.c | 14 +- + drivers/gpu/drm/amd/amdkfd/kfd_crat.h | 2 + + drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c | 109 +- + drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.h | 30 + + drivers/gpu/drm/amd/amdkfd/kfd_device.c | 4 +- + .../drm/amd/amdkfd/kfd_device_queue_manager.c | 378 +- + .../drm/amd/amdkfd/kfd_device_queue_manager.h | 21 +- + .../amd/amdkfd/kfd_device_queue_manager_cik.c | 2 + + .../amd/amdkfd/kfd_device_queue_manager_v9.c | 1 + + .../amd/amdkfd/kfd_device_queue_manager_vi.c | 2 + + drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c | 116 +- + drivers/gpu/drm/amd/amdkfd/kfd_events.c | 9 +- + drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 11 +- + drivers/gpu/drm/amd/amdkfd/kfd_ipc.c | 270 + + drivers/gpu/drm/amd/amdkfd/kfd_ipc.h | 51 + + drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 39 +- + drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.h | 10 + + .../gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c | 6 + + drivers/gpu/drm/amd/amdkfd/kfd_module.c | 8 + + drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c | 90 +- + drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.h | 12 +- + .../gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c | 100 +- + .../gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c | 148 +- + .../gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c | 114 +- + drivers/gpu/drm/amd/amdkfd/kfd_peerdirect.c | 523 + + .../gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h | 15 +- + .../gpu/drm/amd/amdkfd/kfd_pm4_headers_diq.h | 97 - + drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 155 +- + drivers/gpu/drm/amd/amdkfd/kfd_process.c | 306 +- + .../amd/amdkfd/kfd_process_queue_manager.c | 9 +- + drivers/gpu/drm/amd/amdkfd/kfd_rdma.c | 296 + + drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 96 +- + drivers/gpu/drm/amd/amdkfd/kfd_topology.h | 12 +- + drivers/gpu/drm/amd/amdkfd/kfd_trace.c | 26 + + drivers/gpu/drm/amd/amdkfd/kfd_trace.h | 151 + + .../gpu/drm/amd/include/kgd_kfd_interface.h | 18 +- + include/drm/amd_rdma.h | 70 + + include/uapi/drm/amdgpu_drm.h | 2 + + include/uapi/linux/kfd_ioctl.h | 144 +- + 55 files changed, 32516 insertions(+), 568 deletions(-) + create mode 100644 arch/arm64/configs/rock-dbg_defconfig + create mode 100644 arch/powerpc/configs/rock-dbg_defconfig + create mode 100644 arch/x86/configs/rock-dbg_defconfig + create mode 100644 arch/x86/configs/rock-rel_defconfig + create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.h + create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_ipc.c + create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_ipc.h + create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_peerdirect.c + create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_rdma.c + create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_trace.c + create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_trace.h + create mode 100644 include/drm/amd_rdma.h + +diff --git a/arch/arm64/configs/rock-dbg_defconfig b/arch/arm64/configs/rock-dbg_defconfig +new file mode 100644 +index 000000000000..03045b59b650 +--- /dev/null ++++ b/arch/arm64/configs/rock-dbg_defconfig +@@ -0,0 +1,5233 @@ ++# ++# Automatically generated file; DO NOT EDIT. ++# Linux/arm64 5.0.0-rc1 Kernel Configuration ++# ++ ++# ++# Compiler: gcc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0 ++# ++CONFIG_CC_IS_GCC=y ++CONFIG_GCC_VERSION=70300 ++CONFIG_CLANG_VERSION=0 ++CONFIG_CC_HAS_ASM_GOTO=y ++CONFIG_IRQ_WORK=y ++CONFIG_BUILDTIME_EXTABLE_SORT=y ++CONFIG_THREAD_INFO_IN_TASK=y ++ ++# ++# General setup ++# ++CONFIG_INIT_ENV_ARG_LIMIT=32 ++# CONFIG_COMPILE_TEST is not set ++CONFIG_LOCALVERSION="-kfd" ++# CONFIG_LOCALVERSION_AUTO is not set ++CONFIG_BUILD_SALT="" ++CONFIG_DEFAULT_HOSTNAME="(none)" ++CONFIG_SWAP=y ++CONFIG_SYSVIPC=y ++CONFIG_SYSVIPC_SYSCTL=y ++CONFIG_POSIX_MQUEUE=y ++CONFIG_POSIX_MQUEUE_SYSCTL=y ++CONFIG_CROSS_MEMORY_ATTACH=y ++CONFIG_USELIB=y ++CONFIG_AUDIT=y ++CONFIG_HAVE_ARCH_AUDITSYSCALL=y ++CONFIG_AUDITSYSCALL=y ++ ++# ++# IRQ subsystem ++# ++CONFIG_GENERIC_IRQ_PROBE=y ++CONFIG_GENERIC_IRQ_SHOW=y ++CONFIG_GENERIC_IRQ_SHOW_LEVEL=y ++CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y ++CONFIG_GENERIC_IRQ_MIGRATION=y ++CONFIG_HARDIRQS_SW_RESEND=y ++CONFIG_GENERIC_IRQ_CHIP=y ++CONFIG_IRQ_DOMAIN=y ++CONFIG_IRQ_DOMAIN_HIERARCHY=y ++CONFIG_GENERIC_MSI_IRQ=y ++CONFIG_GENERIC_MSI_IRQ_DOMAIN=y ++CONFIG_HANDLE_DOMAIN_IRQ=y ++CONFIG_IRQ_FORCED_THREADING=y ++CONFIG_SPARSE_IRQ=y ++# CONFIG_GENERIC_IRQ_DEBUGFS is not set ++CONFIG_GENERIC_IRQ_MULTI_HANDLER=y ++CONFIG_ARCH_CLOCKSOURCE_DATA=y ++CONFIG_GENERIC_TIME_VSYSCALL=y ++CONFIG_GENERIC_CLOCKEVENTS=y ++CONFIG_ARCH_HAS_TICK_BROADCAST=y ++CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y ++ ++# ++# Timers subsystem ++# ++CONFIG_TICK_ONESHOT=y ++CONFIG_NO_HZ_COMMON=y ++# CONFIG_HZ_PERIODIC is not set ++CONFIG_NO_HZ_IDLE=y ++# CONFIG_NO_HZ_FULL is not set ++CONFIG_NO_HZ=y ++CONFIG_HIGH_RES_TIMERS=y ++# CONFIG_PREEMPT_NONE is not set ++CONFIG_PREEMPT_VOLUNTARY=y ++# CONFIG_PREEMPT is not set ++ ++# ++# CPU/Task time and stats accounting ++# ++CONFIG_TICK_CPU_ACCOUNTING=y ++# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set ++# CONFIG_IRQ_TIME_ACCOUNTING is not set ++CONFIG_BSD_PROCESS_ACCT=y ++CONFIG_BSD_PROCESS_ACCT_V3=y ++CONFIG_TASKSTATS=y ++CONFIG_TASK_DELAY_ACCT=y ++CONFIG_TASK_XACCT=y ++CONFIG_TASK_IO_ACCOUNTING=y ++# CONFIG_PSI is not set ++CONFIG_CPU_ISOLATION=y ++ ++# ++# RCU Subsystem ++# ++CONFIG_TREE_RCU=y ++# CONFIG_RCU_EXPERT is not set ++CONFIG_SRCU=y ++CONFIG_TREE_SRCU=y ++CONFIG_RCU_STALL_COMMON=y ++CONFIG_RCU_NEED_SEGCBLIST=y ++CONFIG_BUILD_BIN2C=y ++CONFIG_IKCONFIG=m ++# CONFIG_IKCONFIG_PROC is not set ++CONFIG_LOG_BUF_SHIFT=14 ++CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 ++CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 ++CONFIG_GENERIC_SCHED_CLOCK=y ++CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y ++CONFIG_ARCH_SUPPORTS_INT128=y ++CONFIG_CGROUPS=y ++CONFIG_PAGE_COUNTER=y ++CONFIG_MEMCG=y ++CONFIG_MEMCG_SWAP=y ++# CONFIG_MEMCG_SWAP_ENABLED is not set ++CONFIG_MEMCG_KMEM=y ++CONFIG_BLK_CGROUP=y ++# CONFIG_DEBUG_BLK_CGROUP is not set ++CONFIG_CGROUP_WRITEBACK=y ++CONFIG_CGROUP_SCHED=y ++CONFIG_FAIR_GROUP_SCHED=y ++CONFIG_CFS_BANDWIDTH=y ++# CONFIG_RT_GROUP_SCHED is not set ++CONFIG_CGROUP_PIDS=y ++# CONFIG_CGROUP_RDMA is not set ++CONFIG_CGROUP_FREEZER=y ++CONFIG_CGROUP_HUGETLB=y ++CONFIG_CPUSETS=y ++CONFIG_PROC_PID_CPUSET=y ++CONFIG_CGROUP_DEVICE=y ++CONFIG_CGROUP_CPUACCT=y ++CONFIG_CGROUP_PERF=y ++# CONFIG_CGROUP_BPF is not set ++# CONFIG_CGROUP_DEBUG is not set ++CONFIG_SOCK_CGROUP_DATA=y ++CONFIG_NAMESPACES=y ++CONFIG_UTS_NS=y ++CONFIG_IPC_NS=y ++CONFIG_USER_NS=y ++CONFIG_PID_NS=y ++CONFIG_NET_NS=y ++CONFIG_CHECKPOINT_RESTORE=y ++CONFIG_SCHED_AUTOGROUP=y ++# CONFIG_SYSFS_DEPRECATED is not set ++CONFIG_RELAY=y ++CONFIG_BLK_DEV_INITRD=y ++CONFIG_INITRAMFS_SOURCE="" ++CONFIG_RD_GZIP=y ++CONFIG_RD_BZIP2=y ++CONFIG_RD_LZMA=y ++CONFIG_RD_XZ=y ++CONFIG_RD_LZO=y ++CONFIG_RD_LZ4=y ++CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y ++# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set ++CONFIG_SYSCTL=y ++CONFIG_ANON_INODES=y ++CONFIG_HAVE_UID16=y ++CONFIG_SYSCTL_EXCEPTION_TRACE=y ++CONFIG_BPF=y ++CONFIG_EXPERT=y ++CONFIG_UID16=y ++CONFIG_MULTIUSER=y ++CONFIG_SGETMASK_SYSCALL=y ++CONFIG_SYSFS_SYSCALL=y ++CONFIG_SYSCTL_SYSCALL=y ++CONFIG_FHANDLE=y ++CONFIG_POSIX_TIMERS=y ++CONFIG_PRINTK=y ++CONFIG_PRINTK_NMI=y ++CONFIG_BUG=y ++CONFIG_ELF_CORE=y ++CONFIG_BASE_FULL=y ++CONFIG_FUTEX=y ++CONFIG_FUTEX_PI=y ++CONFIG_EPOLL=y ++CONFIG_SIGNALFD=y ++CONFIG_TIMERFD=y ++CONFIG_EVENTFD=y ++CONFIG_SHMEM=y ++CONFIG_AIO=y ++CONFIG_ADVISE_SYSCALLS=y ++CONFIG_MEMBARRIER=y ++CONFIG_KALLSYMS=y ++CONFIG_KALLSYMS_ALL=y ++CONFIG_KALLSYMS_BASE_RELATIVE=y ++CONFIG_BPF_SYSCALL=y ++# CONFIG_BPF_JIT_ALWAYS_ON is not set ++CONFIG_USERFAULTFD=y ++CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y ++CONFIG_RSEQ=y ++# CONFIG_DEBUG_RSEQ is not set ++# CONFIG_EMBEDDED is not set ++CONFIG_HAVE_PERF_EVENTS=y ++# CONFIG_PC104 is not set ++ ++# ++# Kernel Performance Events And Counters ++# ++CONFIG_PERF_EVENTS=y ++# CONFIG_DEBUG_PERF_USE_VMALLOC is not set ++CONFIG_VM_EVENT_COUNTERS=y ++CONFIG_SLUB_DEBUG=y ++# CONFIG_SLUB_MEMCG_SYSFS_ON is not set ++# CONFIG_COMPAT_BRK is not set ++# CONFIG_SLAB is not set ++CONFIG_SLUB=y ++# CONFIG_SLOB is not set ++CONFIG_SLAB_MERGE_DEFAULT=y ++# CONFIG_SLAB_FREELIST_RANDOM is not set ++# CONFIG_SLAB_FREELIST_HARDENED is not set ++CONFIG_SLUB_CPU_PARTIAL=y ++CONFIG_SYSTEM_DATA_VERIFICATION=y ++CONFIG_PROFILING=y ++CONFIG_TRACEPOINTS=y ++CONFIG_ARM64=y ++CONFIG_64BIT=y ++CONFIG_MMU=y ++CONFIG_ARM64_PAGE_SHIFT=12 ++CONFIG_ARM64_CONT_SHIFT=4 ++CONFIG_ARCH_MMAP_RND_BITS_MIN=18 ++CONFIG_ARCH_MMAP_RND_BITS_MAX=33 ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 ++CONFIG_STACKTRACE_SUPPORT=y ++CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 ++CONFIG_LOCKDEP_SUPPORT=y ++CONFIG_TRACE_IRQFLAGS_SUPPORT=y ++CONFIG_RWSEM_XCHGADD_ALGORITHM=y ++CONFIG_GENERIC_BUG=y ++CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y ++CONFIG_GENERIC_HWEIGHT=y ++CONFIG_GENERIC_CSUM=y ++CONFIG_GENERIC_CALIBRATE_DELAY=y ++CONFIG_ZONE_DMA32=y ++CONFIG_HAVE_GENERIC_GUP=y ++CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y ++CONFIG_SMP=y ++CONFIG_KERNEL_MODE_NEON=y ++CONFIG_FIX_EARLYCON_MEM=y ++CONFIG_PGTABLE_LEVELS=4 ++CONFIG_ARCH_SUPPORTS_UPROBES=y ++CONFIG_ARCH_PROC_KCORE_TEXT=y ++ ++# ++# Platform selection ++# ++# CONFIG_ARCH_ACTIONS is not set ++# CONFIG_ARCH_SUNXI is not set ++# CONFIG_ARCH_ALPINE is not set ++# CONFIG_ARCH_BCM2835 is not set ++CONFIG_ARCH_BCM_IPROC=y ++CONFIG_ARCH_BERLIN=y ++# CONFIG_ARCH_BRCMSTB is not set ++# CONFIG_ARCH_EXYNOS is not set ++# CONFIG_ARCH_K3 is not set ++CONFIG_ARCH_LAYERSCAPE=y ++# CONFIG_ARCH_LG1K is not set ++CONFIG_ARCH_HISI=y ++CONFIG_ARCH_MEDIATEK=y ++# CONFIG_ARCH_MESON is not set ++# CONFIG_ARCH_MVEBU is not set ++# CONFIG_ARCH_MXC is not set ++CONFIG_ARCH_QCOM=y ++# CONFIG_ARCH_REALTEK is not set ++# CONFIG_ARCH_RENESAS is not set ++# CONFIG_ARCH_ROCKCHIP is not set ++# CONFIG_ARCH_SEATTLE is not set ++CONFIG_ARCH_STRATIX10=y ++# CONFIG_ARCH_SYNQUACER is not set ++# CONFIG_ARCH_TEGRA is not set ++CONFIG_ARCH_SPRD=y ++CONFIG_ARCH_THUNDER=y ++# CONFIG_ARCH_THUNDER2 is not set ++# CONFIG_ARCH_UNIPHIER is not set ++CONFIG_ARCH_VEXPRESS=y ++CONFIG_ARCH_XGENE=y ++# CONFIG_ARCH_ZX is not set ++CONFIG_ARCH_ZYNQMP=y ++ ++# ++# Kernel Features ++# ++ ++# ++# ARM errata workarounds via the alternatives framework ++# ++CONFIG_ARM64_WORKAROUND_CLEAN_CACHE=y ++CONFIG_ARM64_ERRATUM_826319=y ++CONFIG_ARM64_ERRATUM_827319=y ++CONFIG_ARM64_ERRATUM_824069=y ++CONFIG_ARM64_ERRATUM_819472=y ++CONFIG_ARM64_ERRATUM_832075=y ++CONFIG_ARM64_ERRATUM_834220=y ++CONFIG_ARM64_ERRATUM_845719=y ++CONFIG_ARM64_ERRATUM_843419=y ++CONFIG_ARM64_ERRATUM_1024718=y ++CONFIG_ARM64_ERRATUM_1188873=y ++CONFIG_ARM64_ERRATUM_1165522=y ++CONFIG_ARM64_ERRATUM_1286807=y ++CONFIG_CAVIUM_ERRATUM_22375=y ++CONFIG_CAVIUM_ERRATUM_23154=y ++CONFIG_CAVIUM_ERRATUM_27456=y ++CONFIG_CAVIUM_ERRATUM_30115=y ++CONFIG_QCOM_FALKOR_ERRATUM_1003=y ++CONFIG_ARM64_WORKAROUND_REPEAT_TLBI=y ++CONFIG_QCOM_FALKOR_ERRATUM_1009=y ++CONFIG_QCOM_QDF2400_ERRATUM_0065=y ++CONFIG_SOCIONEXT_SYNQUACER_PREITS=y ++CONFIG_HISILICON_ERRATUM_161600802=y ++CONFIG_QCOM_FALKOR_ERRATUM_E1041=y ++CONFIG_ARM64_4K_PAGES=y ++# CONFIG_ARM64_16K_PAGES is not set ++# CONFIG_ARM64_64K_PAGES is not set ++# CONFIG_ARM64_VA_BITS_39 is not set ++CONFIG_ARM64_VA_BITS_48=y ++CONFIG_ARM64_VA_BITS=48 ++CONFIG_ARM64_PA_BITS_48=y ++CONFIG_ARM64_PA_BITS=48 ++# CONFIG_CPU_BIG_ENDIAN is not set ++CONFIG_SCHED_MC=y ++CONFIG_SCHED_SMT=y ++CONFIG_NR_CPUS=128 ++CONFIG_HOTPLUG_CPU=y ++# CONFIG_NUMA is not set ++CONFIG_HOLES_IN_ZONE=y ++# CONFIG_HZ_100 is not set ++CONFIG_HZ_250=y ++# CONFIG_HZ_300 is not set ++# CONFIG_HZ_1000 is not set ++CONFIG_HZ=250 ++CONFIG_SCHED_HRTICK=y ++CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y ++CONFIG_ARCH_SPARSEMEM_ENABLE=y ++CONFIG_ARCH_SPARSEMEM_DEFAULT=y ++CONFIG_ARCH_SELECT_MEMORY_MODEL=y ++CONFIG_ARCH_FLATMEM_ENABLE=y ++CONFIG_HAVE_ARCH_PFN_VALID=y ++CONFIG_HW_PERF_EVENTS=y ++CONFIG_SYS_SUPPORTS_HUGETLBFS=y ++CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y ++CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y ++CONFIG_SECCOMP=y ++CONFIG_PARAVIRT=y ++# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set ++# CONFIG_KEXEC is not set ++# CONFIG_KEXEC_FILE is not set ++# CONFIG_CRASH_DUMP is not set ++CONFIG_XEN_DOM0=y ++CONFIG_XEN=y ++CONFIG_FORCE_MAX_ZONEORDER=11 ++CONFIG_UNMAP_KERNEL_AT_EL0=y ++CONFIG_HARDEN_BRANCH_PREDICTOR=y ++CONFIG_HARDEN_EL2_VECTORS=y ++CONFIG_ARM64_SSBD=y ++CONFIG_RODATA_FULL_DEFAULT_ENABLED=y ++CONFIG_ARMV8_DEPRECATED=y ++CONFIG_SWP_EMULATION=y ++CONFIG_CP15_BARRIER_EMULATION=y ++CONFIG_SETEND_EMULATION=y ++# CONFIG_ARM64_SW_TTBR0_PAN is not set ++ ++# ++# ARMv8.1 architectural features ++# ++CONFIG_ARM64_HW_AFDBM=y ++CONFIG_ARM64_PAN=y ++# CONFIG_ARM64_LSE_ATOMICS is not set ++CONFIG_ARM64_VHE=y ++ ++# ++# ARMv8.2 architectural features ++# ++CONFIG_ARM64_UAO=y ++# CONFIG_ARM64_PMEM is not set ++CONFIG_ARM64_RAS_EXTN=y ++CONFIG_ARM64_CNP=y ++ ++# ++# ARMv8.3 architectural features ++# ++CONFIG_ARM64_PTR_AUTH=y ++CONFIG_ARM64_SVE=y ++CONFIG_ARM64_MODULE_PLTS=y ++# CONFIG_RANDOMIZE_BASE is not set ++ ++# ++# Boot options ++# ++CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y ++CONFIG_CMDLINE="console=ttyAMA0" ++# CONFIG_CMDLINE_FORCE is not set ++CONFIG_EFI_STUB=y ++CONFIG_EFI=y ++CONFIG_DMI=y ++CONFIG_COMPAT=y ++CONFIG_SYSVIPC_COMPAT=y ++ ++# ++# Power management options ++# ++CONFIG_SUSPEND=y ++CONFIG_SUSPEND_FREEZER=y ++# CONFIG_SUSPEND_SKIP_SYNC is not set ++# CONFIG_HIBERNATION is not set ++CONFIG_PM_SLEEP=y ++CONFIG_PM_SLEEP_SMP=y ++# CONFIG_PM_AUTOSLEEP is not set ++CONFIG_PM_WAKELOCKS=y ++CONFIG_PM_WAKELOCKS_LIMIT=100 ++CONFIG_PM_WAKELOCKS_GC=y ++CONFIG_PM=y ++CONFIG_PM_DEBUG=y ++CONFIG_PM_ADVANCED_DEBUG=y ++# CONFIG_PM_TEST_SUSPEND is not set ++CONFIG_PM_SLEEP_DEBUG=y ++# CONFIG_DPM_WATCHDOG is not set ++CONFIG_PM_CLK=y ++CONFIG_PM_GENERIC_DOMAINS=y ++CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y ++CONFIG_PM_GENERIC_DOMAINS_SLEEP=y ++CONFIG_PM_GENERIC_DOMAINS_OF=y ++CONFIG_CPU_PM=y ++# CONFIG_ENERGY_MODEL is not set ++CONFIG_ARCH_HIBERNATION_POSSIBLE=y ++CONFIG_ARCH_SUSPEND_POSSIBLE=y ++ ++# ++# CPU Power Management ++# ++ ++# ++# CPU Idle ++# ++CONFIG_CPU_IDLE=y ++CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y ++CONFIG_CPU_IDLE_GOV_LADDER=y ++CONFIG_CPU_IDLE_GOV_MENU=y ++CONFIG_DT_IDLE_STATES=y ++ ++# ++# ARM CPU Idle Drivers ++# ++CONFIG_ARM_CPUIDLE=y ++ ++# ++# CPU Frequency scaling ++# ++CONFIG_CPU_FREQ=y ++CONFIG_CPU_FREQ_GOV_ATTR_SET=y ++CONFIG_CPU_FREQ_GOV_COMMON=y ++CONFIG_CPU_FREQ_STAT=y ++CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y ++# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set ++CONFIG_CPU_FREQ_GOV_PERFORMANCE=y ++CONFIG_CPU_FREQ_GOV_POWERSAVE=y ++CONFIG_CPU_FREQ_GOV_USERSPACE=y ++CONFIG_CPU_FREQ_GOV_ONDEMAND=y ++CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y ++# CONFIG_CPU_FREQ_GOV_SCHEDUTIL is not set ++ ++# ++# CPU frequency scaling drivers ++# ++CONFIG_CPUFREQ_DT=y ++CONFIG_CPUFREQ_DT_PLATDEV=y ++# CONFIG_ACPI_CPPC_CPUFREQ is not set ++# CONFIG_ARM_MEDIATEK_CPUFREQ is not set ++# CONFIG_ARM_QCOM_CPUFREQ_HW is not set ++# CONFIG_QORIQ_CPUFREQ is not set ++ ++# ++# Firmware Drivers ++# ++CONFIG_ARM_PSCI_FW=y ++# CONFIG_ARM_PSCI_CHECKER is not set ++# CONFIG_ARM_SCMI_PROTOCOL is not set ++# CONFIG_ARM_SCPI_PROTOCOL is not set ++# CONFIG_ARM_SDE_INTERFACE is not set ++CONFIG_FIRMWARE_MEMMAP=y ++CONFIG_DMIID=y ++# CONFIG_DMI_SYSFS is not set ++# CONFIG_FW_CFG_SYSFS is not set ++# CONFIG_INTEL_STRATIX10_SERVICE is not set ++CONFIG_HAVE_ARM_SMCCC=y ++# CONFIG_GOOGLE_FIRMWARE is not set ++ ++# ++# EFI (Extensible Firmware Interface) Support ++# ++CONFIG_EFI_VARS=y ++CONFIG_EFI_ESRT=y ++# CONFIG_EFI_VARS_PSTORE is not set ++CONFIG_EFI_PARAMS_FROM_FDT=y ++CONFIG_EFI_RUNTIME_WRAPPERS=y ++CONFIG_EFI_ARMSTUB=y ++# CONFIG_EFI_ARMSTUB_DTB_LOADER is not set ++# CONFIG_EFI_BOOTLOADER_CONTROL is not set ++# CONFIG_EFI_CAPSULE_LOADER is not set ++# CONFIG_EFI_TEST is not set ++# CONFIG_RESET_ATTACK_MITIGATION is not set ++ ++# ++# Tegra firmware driver ++# ++ ++# ++# Zynq MPSoC Firmware Drivers ++# ++CONFIG_ZYNQMP_FIRMWARE=y ++# CONFIG_ZYNQMP_FIRMWARE_DEBUG is not set ++CONFIG_ARCH_SUPPORTS_ACPI=y ++CONFIG_ACPI=y ++CONFIG_ACPI_GENERIC_GSI=y ++CONFIG_ACPI_CCA_REQUIRED=y ++# CONFIG_ACPI_DEBUGGER is not set ++CONFIG_ACPI_SPCR_TABLE=y ++# CONFIG_ACPI_EC_DEBUGFS is not set ++CONFIG_ACPI_BUTTON=y ++CONFIG_ACPI_FAN=y ++# CONFIG_ACPI_TAD is not set ++CONFIG_ACPI_DOCK=y ++CONFIG_ACPI_PROCESSOR_IDLE=y ++CONFIG_ACPI_MCFG=y ++CONFIG_ACPI_PROCESSOR=y ++# CONFIG_ACPI_IPMI is not set ++CONFIG_ACPI_HOTPLUG_CPU=y ++CONFIG_ACPI_THERMAL=y ++CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y ++CONFIG_ACPI_TABLE_UPGRADE=y ++# CONFIG_ACPI_DEBUG is not set ++CONFIG_ACPI_PCI_SLOT=y ++CONFIG_ACPI_CONTAINER=y ++CONFIG_ACPI_HED=y ++# CONFIG_ACPI_CUSTOM_METHOD is not set ++# CONFIG_ACPI_BGRT is not set ++CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y ++CONFIG_HAVE_ACPI_APEI=y ++# CONFIG_ACPI_APEI is not set ++# CONFIG_PMIC_OPREGION is not set ++# CONFIG_ACPI_CONFIGFS is not set ++CONFIG_ACPI_IORT=y ++CONFIG_ACPI_GTDT=y ++CONFIG_ACPI_PPTT=y ++CONFIG_HAVE_KVM_IRQCHIP=y ++CONFIG_HAVE_KVM_IRQFD=y ++CONFIG_HAVE_KVM_IRQ_ROUTING=y ++CONFIG_HAVE_KVM_EVENTFD=y ++CONFIG_KVM_MMIO=y ++CONFIG_HAVE_KVM_MSI=y ++CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y ++CONFIG_KVM_VFIO=y ++CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y ++CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y ++CONFIG_HAVE_KVM_IRQ_BYPASS=y ++CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y ++CONFIG_IRQ_BYPASS_MANAGER=y ++CONFIG_VIRTUALIZATION=y ++CONFIG_KVM=y ++CONFIG_KVM_ARM_HOST=y ++CONFIG_KVM_ARM_PMU=y ++CONFIG_KVM_INDIRECT_VECTORS=y ++# CONFIG_VHOST_NET is not set ++# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set ++CONFIG_ARM64_CRYPTO=y ++CONFIG_CRYPTO_SHA256_ARM64=m ++# CONFIG_CRYPTO_SHA512_ARM64 is not set ++CONFIG_CRYPTO_SHA1_ARM64_CE=m ++CONFIG_CRYPTO_SHA2_ARM64_CE=m ++# CONFIG_CRYPTO_SHA512_ARM64_CE is not set ++# CONFIG_CRYPTO_SHA3_ARM64 is not set ++# CONFIG_CRYPTO_SM3_ARM64_CE is not set ++# CONFIG_CRYPTO_SM4_ARM64_CE is not set ++CONFIG_CRYPTO_GHASH_ARM64_CE=m ++# CONFIG_CRYPTO_CRCT10DIF_ARM64_CE is not set ++CONFIG_CRYPTO_AES_ARM64=m ++# CONFIG_CRYPTO_AES_ARM64_CE is not set ++# CONFIG_CRYPTO_AES_ARM64_CE_CCM is not set ++# CONFIG_CRYPTO_AES_ARM64_CE_BLK is not set ++# CONFIG_CRYPTO_AES_ARM64_NEON_BLK is not set ++# CONFIG_CRYPTO_CHACHA20_NEON is not set ++# CONFIG_CRYPTO_NHPOLY1305_NEON is not set ++# CONFIG_CRYPTO_AES_ARM64_BS is not set ++ ++# ++# General architecture-dependent options ++# ++CONFIG_CRASH_CORE=y ++# CONFIG_KPROBES is not set ++CONFIG_JUMP_LABEL=y ++# CONFIG_STATIC_KEYS_SELFTEST is not set ++CONFIG_UPROBES=y ++CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y ++CONFIG_HAVE_KPROBES=y ++CONFIG_HAVE_KRETPROBES=y ++CONFIG_HAVE_NMI=y ++CONFIG_HAVE_ARCH_TRACEHOOK=y ++CONFIG_HAVE_DMA_CONTIGUOUS=y ++CONFIG_GENERIC_SMP_IDLE_THREAD=y ++CONFIG_GENERIC_IDLE_POLL_SETUP=y ++CONFIG_ARCH_HAS_FORTIFY_SOURCE=y ++CONFIG_ARCH_HAS_SET_MEMORY=y ++CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y ++CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y ++CONFIG_HAVE_RSEQ=y ++CONFIG_HAVE_CLK=y ++CONFIG_HAVE_HW_BREAKPOINT=y ++CONFIG_HAVE_PERF_REGS=y ++CONFIG_HAVE_PERF_USER_STACK_DUMP=y ++CONFIG_HAVE_ARCH_JUMP_LABEL=y ++CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y ++CONFIG_HAVE_RCU_TABLE_FREE=y ++CONFIG_HAVE_RCU_TABLE_INVALIDATE=y ++CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y ++CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y ++CONFIG_HAVE_CMPXCHG_LOCAL=y ++CONFIG_HAVE_CMPXCHG_DOUBLE=y ++CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y ++CONFIG_HAVE_ARCH_SECCOMP_FILTER=y ++CONFIG_SECCOMP_FILTER=y ++CONFIG_HAVE_ARCH_STACKLEAK=y ++CONFIG_HAVE_STACKPROTECTOR=y ++CONFIG_CC_HAS_STACKPROTECTOR_NONE=y ++CONFIG_STACKPROTECTOR=y ++CONFIG_STACKPROTECTOR_STRONG=y ++CONFIG_HAVE_CONTEXT_TRACKING=y ++CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y ++CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y ++CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y ++CONFIG_HAVE_ARCH_HUGE_VMAP=y ++CONFIG_HAVE_MOD_ARCH_SPECIFIC=y ++CONFIG_MODULES_USE_ELF_RELA=y ++CONFIG_ARCH_HAS_ELF_RANDOMIZE=y ++CONFIG_HAVE_ARCH_MMAP_RND_BITS=y ++CONFIG_ARCH_MMAP_RND_BITS=18 ++CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 ++CONFIG_CLONE_BACKWARDS=y ++CONFIG_OLD_SIGSUSPEND3=y ++CONFIG_COMPAT_OLD_SIGACTION=y ++CONFIG_COMPAT_32BIT_TIME=y ++CONFIG_HAVE_ARCH_VMAP_STACK=y ++CONFIG_VMAP_STACK=y ++CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y ++CONFIG_STRICT_KERNEL_RWX=y ++CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y ++CONFIG_STRICT_MODULE_RWX=y ++CONFIG_REFCOUNT_FULL=y ++CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y ++ ++# ++# GCOV-based kernel profiling ++# ++# CONFIG_GCOV_KERNEL is not set ++CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y ++CONFIG_PLUGIN_HOSTCC="" ++CONFIG_HAVE_GCC_PLUGINS=y ++CONFIG_RT_MUTEXES=y ++CONFIG_BASE_SMALL=0 ++CONFIG_MODULES=y ++# CONFIG_MODULE_FORCE_LOAD is not set ++CONFIG_MODULE_UNLOAD=y ++# CONFIG_MODULE_FORCE_UNLOAD is not set ++CONFIG_MODVERSIONS=y ++CONFIG_MODULE_SRCVERSION_ALL=y ++CONFIG_MODULE_SIG=y ++# CONFIG_MODULE_SIG_FORCE is not set ++CONFIG_MODULE_SIG_ALL=y ++# CONFIG_MODULE_SIG_SHA1 is not set ++# CONFIG_MODULE_SIG_SHA224 is not set ++# CONFIG_MODULE_SIG_SHA256 is not set ++# CONFIG_MODULE_SIG_SHA384 is not set ++CONFIG_MODULE_SIG_SHA512=y ++CONFIG_MODULE_SIG_HASH="sha512" ++# CONFIG_MODULE_COMPRESS is not set ++CONFIG_MODULES_TREE_LOOKUP=y ++CONFIG_BLOCK=y ++CONFIG_BLK_SCSI_REQUEST=y ++CONFIG_BLK_DEV_BSG=y ++CONFIG_BLK_DEV_BSGLIB=y ++CONFIG_BLK_DEV_INTEGRITY=y ++# CONFIG_BLK_DEV_ZONED is not set ++CONFIG_BLK_DEV_THROTTLING=y ++# CONFIG_BLK_DEV_THROTTLING_LOW is not set ++CONFIG_BLK_CMDLINE_PARSER=y ++# CONFIG_BLK_WBT is not set ++# CONFIG_BLK_CGROUP_IOLATENCY is not set ++CONFIG_BLK_DEBUG_FS=y ++# CONFIG_BLK_SED_OPAL is not set ++ ++# ++# Partition Types ++# ++CONFIG_PARTITION_ADVANCED=y ++# CONFIG_ACORN_PARTITION is not set ++CONFIG_AIX_PARTITION=y ++CONFIG_OSF_PARTITION=y ++CONFIG_AMIGA_PARTITION=y ++CONFIG_ATARI_PARTITION=y ++CONFIG_MAC_PARTITION=y ++CONFIG_MSDOS_PARTITION=y ++CONFIG_BSD_DISKLABEL=y ++CONFIG_MINIX_SUBPARTITION=y ++CONFIG_SOLARIS_X86_PARTITION=y ++CONFIG_UNIXWARE_DISKLABEL=y ++CONFIG_LDM_PARTITION=y ++# CONFIG_LDM_DEBUG is not set ++CONFIG_SGI_PARTITION=y ++CONFIG_ULTRIX_PARTITION=y ++CONFIG_SUN_PARTITION=y ++CONFIG_KARMA_PARTITION=y ++CONFIG_EFI_PARTITION=y ++CONFIG_SYSV68_PARTITION=y ++CONFIG_CMDLINE_PARTITION=y ++CONFIG_BLOCK_COMPAT=y ++CONFIG_BLK_MQ_PCI=y ++CONFIG_BLK_MQ_VIRTIO=y ++CONFIG_BLK_PM=y ++ ++# ++# IO Schedulers ++# ++CONFIG_MQ_IOSCHED_DEADLINE=y ++CONFIG_MQ_IOSCHED_KYBER=y ++# CONFIG_IOSCHED_BFQ is not set ++CONFIG_PREEMPT_NOTIFIERS=y ++CONFIG_ASN1=y ++CONFIG_ARCH_INLINE_SPIN_TRYLOCK=y ++CONFIG_ARCH_INLINE_SPIN_TRYLOCK_BH=y ++CONFIG_ARCH_INLINE_SPIN_LOCK=y ++CONFIG_ARCH_INLINE_SPIN_LOCK_BH=y ++CONFIG_ARCH_INLINE_SPIN_LOCK_IRQ=y ++CONFIG_ARCH_INLINE_SPIN_LOCK_IRQSAVE=y ++CONFIG_ARCH_INLINE_SPIN_UNLOCK=y ++CONFIG_ARCH_INLINE_SPIN_UNLOCK_BH=y ++CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQ=y ++CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE=y ++CONFIG_ARCH_INLINE_READ_LOCK=y ++CONFIG_ARCH_INLINE_READ_LOCK_BH=y ++CONFIG_ARCH_INLINE_READ_LOCK_IRQ=y ++CONFIG_ARCH_INLINE_READ_LOCK_IRQSAVE=y ++CONFIG_ARCH_INLINE_READ_UNLOCK=y ++CONFIG_ARCH_INLINE_READ_UNLOCK_BH=y ++CONFIG_ARCH_INLINE_READ_UNLOCK_IRQ=y ++CONFIG_ARCH_INLINE_READ_UNLOCK_IRQRESTORE=y ++CONFIG_ARCH_INLINE_WRITE_LOCK=y ++CONFIG_ARCH_INLINE_WRITE_LOCK_BH=y ++CONFIG_ARCH_INLINE_WRITE_LOCK_IRQ=y ++CONFIG_ARCH_INLINE_WRITE_LOCK_IRQSAVE=y ++CONFIG_ARCH_INLINE_WRITE_UNLOCK=y ++CONFIG_ARCH_INLINE_WRITE_UNLOCK_BH=y ++CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQ=y ++CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE=y ++CONFIG_INLINE_SPIN_TRYLOCK=y ++CONFIG_INLINE_SPIN_TRYLOCK_BH=y ++CONFIG_INLINE_SPIN_LOCK=y ++CONFIG_INLINE_SPIN_LOCK_BH=y ++CONFIG_INLINE_SPIN_LOCK_IRQ=y ++CONFIG_INLINE_SPIN_LOCK_IRQSAVE=y ++CONFIG_INLINE_SPIN_UNLOCK_BH=y ++CONFIG_INLINE_SPIN_UNLOCK_IRQ=y ++CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE=y ++CONFIG_INLINE_READ_LOCK=y ++CONFIG_INLINE_READ_LOCK_BH=y ++CONFIG_INLINE_READ_LOCK_IRQ=y ++CONFIG_INLINE_READ_LOCK_IRQSAVE=y ++CONFIG_INLINE_READ_UNLOCK=y ++CONFIG_INLINE_READ_UNLOCK_BH=y ++CONFIG_INLINE_READ_UNLOCK_IRQ=y ++CONFIG_INLINE_READ_UNLOCK_IRQRESTORE=y ++CONFIG_INLINE_WRITE_LOCK=y ++CONFIG_INLINE_WRITE_LOCK_BH=y ++CONFIG_INLINE_WRITE_LOCK_IRQ=y ++CONFIG_INLINE_WRITE_LOCK_IRQSAVE=y ++CONFIG_INLINE_WRITE_UNLOCK=y ++CONFIG_INLINE_WRITE_UNLOCK_BH=y ++CONFIG_INLINE_WRITE_UNLOCK_IRQ=y ++CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y ++CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y ++CONFIG_MUTEX_SPIN_ON_OWNER=y ++CONFIG_RWSEM_SPIN_ON_OWNER=y ++CONFIG_LOCK_SPIN_ON_OWNER=y ++CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y ++CONFIG_QUEUED_SPINLOCKS=y ++CONFIG_ARCH_USE_QUEUED_RWLOCKS=y ++CONFIG_QUEUED_RWLOCKS=y ++CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y ++CONFIG_FREEZER=y ++ ++# ++# Executable file formats ++# ++CONFIG_BINFMT_ELF=y ++CONFIG_COMPAT_BINFMT_ELF=y ++CONFIG_ELFCORE=y ++CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y ++CONFIG_BINFMT_SCRIPT=y ++# CONFIG_BINFMT_MISC is not set ++CONFIG_COREDUMP=y ++ ++# ++# Memory Management options ++# ++CONFIG_SELECT_MEMORY_MODEL=y ++# CONFIG_FLATMEM_MANUAL is not set ++CONFIG_SPARSEMEM_MANUAL=y ++CONFIG_SPARSEMEM=y ++CONFIG_HAVE_MEMORY_PRESENT=y ++CONFIG_SPARSEMEM_EXTREME=y ++CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y ++CONFIG_SPARSEMEM_VMEMMAP=y ++CONFIG_MEMORY_ISOLATION=y ++# CONFIG_MEMORY_HOTPLUG is not set ++CONFIG_SPLIT_PTLOCK_CPUS=4 ++CONFIG_MEMORY_BALLOON=y ++CONFIG_BALLOON_COMPACTION=y ++CONFIG_COMPACTION=y ++CONFIG_MIGRATION=y ++CONFIG_PHYS_ADDR_T_64BIT=y ++CONFIG_MMU_NOTIFIER=y ++CONFIG_KSM=y ++CONFIG_DEFAULT_MMAP_MIN_ADDR=32768 ++CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y ++# CONFIG_MEMORY_FAILURE is not set ++CONFIG_TRANSPARENT_HUGEPAGE=y ++CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y ++# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set ++CONFIG_TRANSPARENT_HUGE_PAGECACHE=y ++CONFIG_CLEANCACHE=y ++CONFIG_FRONTSWAP=y ++CONFIG_CMA=y ++# CONFIG_CMA_DEBUG is not set ++# CONFIG_CMA_DEBUGFS is not set ++CONFIG_CMA_AREAS=7 ++CONFIG_ZSWAP=y ++CONFIG_ZPOOL=y ++CONFIG_ZBUD=y ++# CONFIG_Z3FOLD is not set ++CONFIG_ZSMALLOC=y ++CONFIG_PGTABLE_MAPPING=y ++# CONFIG_ZSMALLOC_STAT is not set ++CONFIG_GENERIC_EARLY_IOREMAP=y ++# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set ++CONFIG_IDLE_PAGE_TRACKING=y ++# CONFIG_PERCPU_STATS is not set ++# CONFIG_GUP_BENCHMARK is not set ++CONFIG_ARCH_HAS_PTE_SPECIAL=y ++CONFIG_NET=y ++CONFIG_NET_INGRESS=y ++ ++# ++# Networking options ++# ++CONFIG_PACKET=y ++# CONFIG_PACKET_DIAG is not set ++CONFIG_UNIX=y ++# CONFIG_UNIX_DIAG is not set ++# CONFIG_TLS is not set ++# CONFIG_XFRM_USER is not set ++# CONFIG_NET_KEY is not set ++# CONFIG_XDP_SOCKETS is not set ++CONFIG_INET=y ++CONFIG_IP_MULTICAST=y ++CONFIG_IP_ADVANCED_ROUTER=y ++CONFIG_IP_FIB_TRIE_STATS=y ++CONFIG_IP_MULTIPLE_TABLES=y ++CONFIG_IP_ROUTE_MULTIPATH=y ++CONFIG_IP_ROUTE_VERBOSE=y ++# CONFIG_IP_PNP is not set ++# CONFIG_NET_IPIP is not set ++# CONFIG_NET_IPGRE_DEMUX is not set ++CONFIG_IP_MROUTE_COMMON=y ++CONFIG_IP_MROUTE=y ++# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set ++CONFIG_IP_PIMSM_V1=y ++CONFIG_IP_PIMSM_V2=y ++CONFIG_SYN_COOKIES=y ++# CONFIG_NET_FOU is not set ++# CONFIG_INET_AH is not set ++# CONFIG_INET_ESP is not set ++# CONFIG_INET_IPCOMP is not set ++# CONFIG_INET_XFRM_MODE_TRANSPORT is not set ++# CONFIG_INET_XFRM_MODE_TUNNEL is not set ++# CONFIG_INET_XFRM_MODE_BEET is not set ++# CONFIG_INET_DIAG is not set ++CONFIG_TCP_CONG_ADVANCED=y ++# CONFIG_TCP_CONG_BIC is not set ++CONFIG_TCP_CONG_CUBIC=y ++# CONFIG_TCP_CONG_WESTWOOD is not set ++# CONFIG_TCP_CONG_HTCP is not set ++# CONFIG_TCP_CONG_HSTCP is not set ++# CONFIG_TCP_CONG_HYBLA is not set ++# CONFIG_TCP_CONG_VEGAS is not set ++# CONFIG_TCP_CONG_NV is not set ++# CONFIG_TCP_CONG_SCALABLE is not set ++# CONFIG_TCP_CONG_LP is not set ++# CONFIG_TCP_CONG_VENO is not set ++# CONFIG_TCP_CONG_YEAH is not set ++# CONFIG_TCP_CONG_ILLINOIS is not set ++# CONFIG_TCP_CONG_DCTCP is not set ++# CONFIG_TCP_CONG_CDG is not set ++# CONFIG_TCP_CONG_BBR is not set ++CONFIG_DEFAULT_CUBIC=y ++# CONFIG_DEFAULT_RENO is not set ++CONFIG_DEFAULT_TCP_CONG="cubic" ++CONFIG_TCP_MD5SIG=y ++CONFIG_IPV6=y ++CONFIG_IPV6_ROUTER_PREF=y ++CONFIG_IPV6_ROUTE_INFO=y ++# CONFIG_IPV6_OPTIMISTIC_DAD is not set ++# CONFIG_INET6_AH is not set ++# CONFIG_INET6_ESP is not set ++# CONFIG_INET6_IPCOMP is not set ++# CONFIG_IPV6_MIP6 is not set ++# CONFIG_IPV6_ILA is not set ++# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set ++# CONFIG_INET6_XFRM_MODE_TUNNEL is not set ++# CONFIG_INET6_XFRM_MODE_BEET is not set ++# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set ++# CONFIG_IPV6_SIT is not set ++# CONFIG_IPV6_TUNNEL is not set ++CONFIG_IPV6_MULTIPLE_TABLES=y ++CONFIG_IPV6_SUBTREES=y ++CONFIG_IPV6_MROUTE=y ++CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y ++CONFIG_IPV6_PIMSM_V2=y ++# CONFIG_IPV6_SEG6_LWTUNNEL is not set ++# CONFIG_IPV6_SEG6_HMAC is not set ++CONFIG_NETLABEL=y ++CONFIG_NETWORK_SECMARK=y ++CONFIG_NET_PTP_CLASSIFY=y ++# CONFIG_NETWORK_PHY_TIMESTAMPING is not set ++CONFIG_NETFILTER=y ++CONFIG_NETFILTER_ADVANCED=y ++ ++# ++# Core Netfilter Configuration ++# ++CONFIG_NETFILTER_INGRESS=y ++# CONFIG_NETFILTER_NETLINK_ACCT is not set ++# CONFIG_NETFILTER_NETLINK_QUEUE is not set ++# CONFIG_NETFILTER_NETLINK_LOG is not set ++# CONFIG_NETFILTER_NETLINK_OSF is not set ++# CONFIG_NF_CONNTRACK is not set ++# CONFIG_NF_LOG_NETDEV is not set ++# CONFIG_NF_TABLES is not set ++# CONFIG_NETFILTER_XTABLES is not set ++# CONFIG_IP_SET is not set ++# CONFIG_IP_VS is not set ++ ++# ++# IP: Netfilter Configuration ++# ++# CONFIG_NF_SOCKET_IPV4 is not set ++# CONFIG_NF_TPROXY_IPV4 is not set ++# CONFIG_NF_DUP_IPV4 is not set ++# CONFIG_NF_LOG_ARP is not set ++# CONFIG_NF_LOG_IPV4 is not set ++# CONFIG_NF_REJECT_IPV4 is not set ++# CONFIG_IP_NF_IPTABLES is not set ++# CONFIG_IP_NF_ARPTABLES is not set ++ ++# ++# IPv6: Netfilter Configuration ++# ++# CONFIG_NF_SOCKET_IPV6 is not set ++# CONFIG_NF_TPROXY_IPV6 is not set ++# CONFIG_NF_DUP_IPV6 is not set ++# CONFIG_NF_REJECT_IPV6 is not set ++# CONFIG_NF_LOG_IPV6 is not set ++# CONFIG_IP6_NF_IPTABLES is not set ++# CONFIG_BPFILTER is not set ++# CONFIG_IP_DCCP is not set ++# CONFIG_IP_SCTP is not set ++# CONFIG_RDS is not set ++# CONFIG_TIPC is not set ++# CONFIG_ATM is not set ++# CONFIG_L2TP is not set ++# CONFIG_BRIDGE is not set ++CONFIG_HAVE_NET_DSA=y ++# CONFIG_NET_DSA is not set ++# CONFIG_VLAN_8021Q is not set ++# CONFIG_DECNET is not set ++# CONFIG_LLC2 is not set ++# CONFIG_ATALK is not set ++# CONFIG_X25 is not set ++# CONFIG_LAPB is not set ++# CONFIG_PHONET is not set ++# CONFIG_6LOWPAN is not set ++# CONFIG_IEEE802154 is not set ++CONFIG_NET_SCHED=y ++ ++# ++# Queueing/Scheduling ++# ++# CONFIG_NET_SCH_CBQ is not set ++# CONFIG_NET_SCH_HTB is not set ++# CONFIG_NET_SCH_HFSC is not set ++# CONFIG_NET_SCH_PRIO is not set ++# CONFIG_NET_SCH_MULTIQ is not set ++# CONFIG_NET_SCH_RED is not set ++# CONFIG_NET_SCH_SFB is not set ++# CONFIG_NET_SCH_SFQ is not set ++# CONFIG_NET_SCH_TEQL is not set ++# CONFIG_NET_SCH_TBF is not set ++# CONFIG_NET_SCH_CBS is not set ++# CONFIG_NET_SCH_ETF is not set ++# CONFIG_NET_SCH_TAPRIO is not set ++# CONFIG_NET_SCH_GRED is not set ++# CONFIG_NET_SCH_DSMARK is not set ++# CONFIG_NET_SCH_NETEM is not set ++# CONFIG_NET_SCH_DRR is not set ++# CONFIG_NET_SCH_MQPRIO is not set ++# CONFIG_NET_SCH_SKBPRIO is not set ++# CONFIG_NET_SCH_CHOKE is not set ++# CONFIG_NET_SCH_QFQ is not set ++# CONFIG_NET_SCH_CODEL is not set ++# CONFIG_NET_SCH_FQ_CODEL is not set ++# CONFIG_NET_SCH_CAKE is not set ++# CONFIG_NET_SCH_FQ is not set ++# CONFIG_NET_SCH_HHF is not set ++# CONFIG_NET_SCH_PIE is not set ++# CONFIG_NET_SCH_INGRESS is not set ++# CONFIG_NET_SCH_PLUG is not set ++# CONFIG_NET_SCH_DEFAULT is not set ++ ++# ++# Classification ++# ++CONFIG_NET_CLS=y ++# CONFIG_NET_CLS_BASIC is not set ++# CONFIG_NET_CLS_TCINDEX is not set ++# CONFIG_NET_CLS_ROUTE4 is not set ++# CONFIG_NET_CLS_FW is not set ++# CONFIG_NET_CLS_U32 is not set ++# CONFIG_NET_CLS_RSVP is not set ++# CONFIG_NET_CLS_RSVP6 is not set ++# CONFIG_NET_CLS_FLOW is not set ++# CONFIG_NET_CLS_CGROUP is not set ++# CONFIG_NET_CLS_BPF is not set ++# CONFIG_NET_CLS_FLOWER is not set ++# CONFIG_NET_CLS_MATCHALL is not set ++CONFIG_NET_EMATCH=y ++CONFIG_NET_EMATCH_STACK=32 ++# CONFIG_NET_EMATCH_CMP is not set ++# CONFIG_NET_EMATCH_NBYTE is not set ++# CONFIG_NET_EMATCH_U32 is not set ++# CONFIG_NET_EMATCH_META is not set ++# CONFIG_NET_EMATCH_TEXT is not set ++CONFIG_NET_CLS_ACT=y ++# CONFIG_NET_ACT_POLICE is not set ++# CONFIG_NET_ACT_GACT is not set ++# CONFIG_NET_ACT_MIRRED is not set ++# CONFIG_NET_ACT_SAMPLE is not set ++# CONFIG_NET_ACT_NAT is not set ++# CONFIG_NET_ACT_PEDIT is not set ++# CONFIG_NET_ACT_SIMP is not set ++# CONFIG_NET_ACT_SKBEDIT is not set ++# CONFIG_NET_ACT_CSUM is not set ++# CONFIG_NET_ACT_VLAN is not set ++# CONFIG_NET_ACT_BPF is not set ++# CONFIG_NET_ACT_SKBMOD is not set ++# CONFIG_NET_ACT_IFE is not set ++# CONFIG_NET_ACT_TUNNEL_KEY is not set ++CONFIG_NET_SCH_FIFO=y ++CONFIG_DCB=y ++CONFIG_DNS_RESOLVER=y ++# CONFIG_BATMAN_ADV is not set ++# CONFIG_OPENVSWITCH is not set ++# CONFIG_VSOCKETS is not set ++# CONFIG_NETLINK_DIAG is not set ++CONFIG_MPLS=y ++# CONFIG_NET_MPLS_GSO is not set ++# CONFIG_MPLS_ROUTING is not set ++# CONFIG_NET_NSH is not set ++# CONFIG_HSR is not set ++# CONFIG_NET_SWITCHDEV is not set ++CONFIG_NET_L3_MASTER_DEV=y ++# CONFIG_QRTR is not set ++# CONFIG_NET_NCSI is not set ++CONFIG_RPS=y ++CONFIG_RFS_ACCEL=y ++CONFIG_XPS=y ++CONFIG_CGROUP_NET_PRIO=y ++CONFIG_CGROUP_NET_CLASSID=y ++CONFIG_NET_RX_BUSY_POLL=y ++CONFIG_BQL=y ++CONFIG_BPF_JIT=y ++CONFIG_NET_FLOW_LIMIT=y ++ ++# ++# Network testing ++# ++# CONFIG_NET_PKTGEN is not set ++# CONFIG_NET_DROP_MONITOR is not set ++CONFIG_HAMRADIO=y ++ ++# ++# Packet Radio protocols ++# ++# CONFIG_AX25 is not set ++# CONFIG_CAN is not set ++# CONFIG_BT is not set ++# CONFIG_AF_RXRPC is not set ++# CONFIG_AF_KCM is not set ++CONFIG_FIB_RULES=y ++CONFIG_WIRELESS=y ++# CONFIG_CFG80211 is not set ++ ++# ++# CFG80211 needs to be enabled for MAC80211 ++# ++CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 ++# CONFIG_WIMAX is not set ++CONFIG_RFKILL=y ++CONFIG_RFKILL_LEDS=y ++CONFIG_RFKILL_INPUT=y ++# CONFIG_RFKILL_GPIO is not set ++# CONFIG_NET_9P is not set ++# CONFIG_CAIF is not set ++# CONFIG_CEPH_LIB is not set ++# CONFIG_NFC is not set ++# CONFIG_PSAMPLE is not set ++# CONFIG_NET_IFE is not set ++CONFIG_LWTUNNEL=y ++CONFIG_LWTUNNEL_BPF=y ++# CONFIG_NET_DEVLINK is not set ++CONFIG_MAY_USE_DEVLINK=y ++CONFIG_FAILOVER=y ++CONFIG_HAVE_EBPF_JIT=y ++ ++# ++# Device Drivers ++# ++CONFIG_ARM_AMBA=y ++CONFIG_HAVE_PCI=y ++CONFIG_PCI=y ++CONFIG_PCI_DOMAINS=y ++CONFIG_PCI_DOMAINS_GENERIC=y ++CONFIG_PCI_SYSCALL=y ++CONFIG_PCIEPORTBUS=y ++CONFIG_HOTPLUG_PCI_PCIE=y ++CONFIG_PCIEAER=y ++# CONFIG_PCIEAER_INJECT is not set ++# CONFIG_PCIE_ECRC is not set ++CONFIG_PCIEASPM=y ++CONFIG_PCIEASPM_DEBUG=y ++CONFIG_PCIEASPM_DEFAULT=y ++# CONFIG_PCIEASPM_POWERSAVE is not set ++# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set ++# CONFIG_PCIEASPM_PERFORMANCE is not set ++CONFIG_PCIE_PME=y ++# CONFIG_PCIE_DPC is not set ++# CONFIG_PCIE_PTM is not set ++CONFIG_PCI_MSI=y ++CONFIG_PCI_MSI_IRQ_DOMAIN=y ++CONFIG_PCI_QUIRKS=y ++# CONFIG_PCI_DEBUG is not set ++CONFIG_PCI_REALLOC_ENABLE_AUTO=y ++# CONFIG_PCI_STUB is not set ++# CONFIG_PCI_PF_STUB is not set ++CONFIG_PCI_ATS=y ++CONFIG_PCI_ECAM=y ++CONFIG_PCI_IOV=y ++CONFIG_PCI_PRI=y ++CONFIG_PCI_PASID=y ++CONFIG_PCI_LABEL=y ++CONFIG_HOTPLUG_PCI=y ++CONFIG_HOTPLUG_PCI_ACPI=y ++# CONFIG_HOTPLUG_PCI_ACPI_IBM is not set ++CONFIG_HOTPLUG_PCI_CPCI=y ++# CONFIG_HOTPLUG_PCI_SHPC is not set ++ ++# ++# PCI controller drivers ++# ++ ++# ++# Cadence PCIe controllers support ++# ++# CONFIG_PCIE_CADENCE_HOST is not set ++# CONFIG_PCIE_XILINX_NWL is not set ++# CONFIG_PCI_FTPCI100 is not set ++CONFIG_PCI_HOST_COMMON=y ++CONFIG_PCI_HOST_GENERIC=y ++# CONFIG_PCIE_XILINX is not set ++CONFIG_PCI_XGENE=y ++CONFIG_PCI_XGENE_MSI=y ++# CONFIG_PCIE_IPROC_PLATFORM is not set ++CONFIG_PCI_HOST_THUNDER_PEM=y ++CONFIG_PCI_HOST_THUNDER_ECAM=y ++# CONFIG_PCIE_MEDIATEK is not set ++# CONFIG_PCIE_MOBIVEIL is not set ++ ++# ++# DesignWare PCI Core Support ++# ++CONFIG_PCIE_DW=y ++CONFIG_PCIE_DW_HOST=y ++# CONFIG_PCIE_DW_PLAT_HOST is not set ++# CONFIG_PCI_LAYERSCAPE is not set ++CONFIG_PCI_HISI=y ++# CONFIG_PCIE_QCOM is not set ++# CONFIG_PCIE_KIRIN is not set ++# CONFIG_PCIE_HISI_STB is not set ++# CONFIG_PCI_MESON is not set ++ ++# ++# PCI Endpoint ++# ++# CONFIG_PCI_ENDPOINT is not set ++ ++# ++# PCI switch controller drivers ++# ++# CONFIG_PCI_SW_SWITCHTEC is not set ++# CONFIG_PCCARD is not set ++# CONFIG_RAPIDIO is not set ++ ++# ++# Generic Driver Options ++# ++CONFIG_UEVENT_HELPER=y ++CONFIG_UEVENT_HELPER_PATH="" ++CONFIG_DEVTMPFS=y ++CONFIG_DEVTMPFS_MOUNT=y ++CONFIG_STANDALONE=y ++CONFIG_PREVENT_FIRMWARE_BUILD=y ++ ++# ++# Firmware loader ++# ++CONFIG_FW_LOADER=y ++CONFIG_EXTRA_FIRMWARE="" ++# CONFIG_FW_LOADER_USER_HELPER is not set ++CONFIG_ALLOW_DEV_COREDUMP=y ++# CONFIG_DEBUG_DRIVER is not set ++# CONFIG_DEBUG_DEVRES is not set ++# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set ++# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set ++CONFIG_SYS_HYPERVISOR=y ++CONFIG_GENERIC_CPU_AUTOPROBE=y ++CONFIG_REGMAP=y ++CONFIG_REGMAP_I2C=y ++CONFIG_REGMAP_SPI=y ++CONFIG_REGMAP_MMIO=y ++CONFIG_REGMAP_IRQ=y ++CONFIG_DMA_SHARED_BUFFER=y ++# CONFIG_DMA_FENCE_TRACE is not set ++# CONFIG_DMA_CMA is not set ++CONFIG_GENERIC_ARCH_TOPOLOGY=y ++ ++# ++# Bus devices ++# ++CONFIG_ARM_CCI=y ++CONFIG_ARM_CCI400_COMMON=y ++# CONFIG_BRCMSTB_GISB_ARB is not set ++# CONFIG_HISILICON_LPC is not set ++CONFIG_QCOM_EBI2=y ++# CONFIG_SIMPLE_PM_BUS is not set ++CONFIG_VEXPRESS_CONFIG=y ++# CONFIG_FSL_MC_BUS is not set ++CONFIG_CONNECTOR=y ++CONFIG_PROC_EVENTS=y ++# CONFIG_GNSS is not set ++# CONFIG_MTD is not set ++CONFIG_DTC=y ++CONFIG_OF=y ++# CONFIG_OF_UNITTEST is not set ++CONFIG_OF_FLATTREE=y ++CONFIG_OF_EARLY_FLATTREE=y ++CONFIG_OF_KOBJ=y ++CONFIG_OF_DYNAMIC=y ++CONFIG_OF_ADDRESS=y ++CONFIG_OF_IRQ=y ++CONFIG_OF_NET=y ++CONFIG_OF_MDIO=y ++CONFIG_OF_RESERVED_MEM=y ++CONFIG_OF_RESOLVE=y ++CONFIG_OF_OVERLAY=y ++# CONFIG_PARPORT is not set ++CONFIG_PNP=y ++# CONFIG_PNP_DEBUG_MESSAGES is not set ++ ++# ++# Protocols ++# ++CONFIG_PNPACPI=y ++CONFIG_BLK_DEV=y ++# CONFIG_BLK_DEV_NULL_BLK is not set ++CONFIG_CDROM=y ++# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set ++# CONFIG_ZRAM is not set ++# CONFIG_BLK_DEV_UMEM is not set ++CONFIG_BLK_DEV_LOOP=y ++CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 ++# CONFIG_BLK_DEV_CRYPTOLOOP is not set ++# CONFIG_BLK_DEV_DRBD is not set ++# CONFIG_BLK_DEV_NBD is not set ++# CONFIG_BLK_DEV_SKD is not set ++# CONFIG_BLK_DEV_SX8 is not set ++CONFIG_BLK_DEV_RAM=y ++CONFIG_BLK_DEV_RAM_COUNT=16 ++CONFIG_BLK_DEV_RAM_SIZE=65536 ++# CONFIG_CDROM_PKTCDVD is not set ++# CONFIG_ATA_OVER_ETH is not set ++CONFIG_XEN_BLKDEV_FRONTEND=y ++# CONFIG_XEN_BLKDEV_BACKEND is not set ++CONFIG_VIRTIO_BLK=y ++# CONFIG_VIRTIO_BLK_SCSI is not set ++# CONFIG_BLK_DEV_RBD is not set ++# CONFIG_BLK_DEV_RSXX is not set ++ ++# ++# NVME Support ++# ++CONFIG_NVME_CORE=y ++CONFIG_BLK_DEV_NVME=y ++# CONFIG_NVME_MULTIPATH is not set ++# CONFIG_NVME_FC is not set ++# CONFIG_NVME_TCP is not set ++ ++# ++# Misc devices ++# ++# CONFIG_AD525X_DPOT is not set ++# CONFIG_DUMMY_IRQ is not set ++# CONFIG_PHANTOM is not set ++# CONFIG_SGI_IOC4 is not set ++# CONFIG_TIFM_CORE is not set ++# CONFIG_ICS932S401 is not set ++# CONFIG_ENCLOSURE_SERVICES is not set ++# CONFIG_HP_ILO is not set ++# CONFIG_APDS9802ALS is not set ++# CONFIG_ISL29003 is not set ++# CONFIG_ISL29020 is not set ++# CONFIG_SENSORS_TSL2550 is not set ++# CONFIG_SENSORS_BH1770 is not set ++# CONFIG_SENSORS_APDS990X is not set ++# CONFIG_HMC6352 is not set ++# CONFIG_DS1682 is not set ++# CONFIG_USB_SWITCH_FSA9480 is not set ++# CONFIG_LATTICE_ECP3_CONFIG is not set ++CONFIG_SRAM=y ++CONFIG_VEXPRESS_SYSCFG=y ++# CONFIG_PCI_ENDPOINT_TEST is not set ++# CONFIG_PVPANIC is not set ++# CONFIG_C2PORT is not set ++ ++# ++# EEPROM support ++# ++# CONFIG_EEPROM_AT24 is not set ++# CONFIG_EEPROM_AT25 is not set ++# CONFIG_EEPROM_LEGACY is not set ++# CONFIG_EEPROM_MAX6875 is not set ++# CONFIG_EEPROM_93CX6 is not set ++# CONFIG_EEPROM_93XX46 is not set ++# CONFIG_EEPROM_IDT_89HPESX is not set ++# CONFIG_EEPROM_EE1004 is not set ++# CONFIG_CB710_CORE is not set ++ ++# ++# Texas Instruments shared transport line discipline ++# ++# CONFIG_TI_ST is not set ++# CONFIG_SENSORS_LIS3_I2C is not set ++# CONFIG_ALTERA_STAPL is not set ++ ++# ++# Intel MIC & related support ++# ++ ++# ++# Intel MIC Bus Driver ++# ++ ++# ++# SCIF Bus Driver ++# ++ ++# ++# VOP Bus Driver ++# ++ ++# ++# Intel MIC Host Driver ++# ++ ++# ++# Intel MIC Card Driver ++# ++ ++# ++# SCIF Driver ++# ++ ++# ++# Intel MIC Coprocessor State Management (COSM) Drivers ++# ++ ++# ++# VOP Driver ++# ++# CONFIG_GENWQE is not set ++# CONFIG_ECHO is not set ++# CONFIG_MISC_ALCOR_PCI is not set ++# CONFIG_MISC_RTSX_PCI is not set ++# CONFIG_MISC_RTSX_USB is not set ++ ++# ++# SCSI device support ++# ++CONFIG_SCSI_MOD=y ++# CONFIG_RAID_ATTRS is not set ++CONFIG_SCSI=y ++CONFIG_SCSI_DMA=y ++CONFIG_SCSI_PROC_FS=y ++ ++# ++# SCSI support type (disk, tape, CD-ROM) ++# ++CONFIG_BLK_DEV_SD=y ++# CONFIG_CHR_DEV_ST is not set ++# CONFIG_CHR_DEV_OSST is not set ++CONFIG_BLK_DEV_SR=y ++# CONFIG_BLK_DEV_SR_VENDOR is not set ++CONFIG_CHR_DEV_SG=y ++# CONFIG_CHR_DEV_SCH is not set ++CONFIG_SCSI_CONSTANTS=y ++CONFIG_SCSI_LOGGING=y ++CONFIG_SCSI_SCAN_ASYNC=y ++ ++# ++# SCSI Transports ++# ++# CONFIG_SCSI_SPI_ATTRS is not set ++# CONFIG_SCSI_FC_ATTRS is not set ++# CONFIG_SCSI_ISCSI_ATTRS is not set ++# CONFIG_SCSI_SAS_ATTRS is not set ++# CONFIG_SCSI_SAS_LIBSAS is not set ++# CONFIG_SCSI_SRP_ATTRS is not set ++CONFIG_SCSI_LOWLEVEL=y ++# CONFIG_ISCSI_TCP is not set ++# CONFIG_ISCSI_BOOT_SYSFS is not set ++# CONFIG_SCSI_CXGB3_ISCSI is not set ++# CONFIG_SCSI_CXGB4_ISCSI is not set ++# CONFIG_SCSI_BNX2_ISCSI is not set ++# CONFIG_BE2ISCSI is not set ++# CONFIG_BLK_DEV_3W_XXXX_RAID is not set ++# CONFIG_SCSI_HPSA is not set ++# CONFIG_SCSI_3W_9XXX is not set ++# CONFIG_SCSI_3W_SAS is not set ++# CONFIG_SCSI_ACARD is not set ++# CONFIG_SCSI_AACRAID is not set ++# CONFIG_SCSI_AIC7XXX is not set ++# CONFIG_SCSI_AIC79XX is not set ++# CONFIG_SCSI_AIC94XX is not set ++# CONFIG_SCSI_HISI_SAS is not set ++# CONFIG_SCSI_MVSAS is not set ++# CONFIG_SCSI_MVUMI is not set ++# CONFIG_SCSI_ADVANSYS is not set ++# CONFIG_SCSI_ARCMSR is not set ++# CONFIG_SCSI_ESAS2R is not set ++CONFIG_MEGARAID_NEWGEN=y ++# CONFIG_MEGARAID_MM is not set ++# CONFIG_MEGARAID_LEGACY is not set ++# CONFIG_MEGARAID_SAS is not set ++# CONFIG_SCSI_MPT3SAS is not set ++# CONFIG_SCSI_MPT2SAS is not set ++# CONFIG_SCSI_SMARTPQI is not set ++# CONFIG_SCSI_UFSHCD is not set ++# CONFIG_SCSI_HPTIOP is not set ++# CONFIG_SCSI_MYRB is not set ++# CONFIG_SCSI_MYRS is not set ++# CONFIG_XEN_SCSI_FRONTEND is not set ++# CONFIG_SCSI_SNIC is not set ++# CONFIG_SCSI_DMX3191D is not set ++# CONFIG_SCSI_IPS is not set ++# CONFIG_SCSI_INITIO is not set ++# CONFIG_SCSI_INIA100 is not set ++# CONFIG_SCSI_STEX is not set ++# CONFIG_SCSI_SYM53C8XX_2 is not set ++# CONFIG_SCSI_IPR is not set ++# CONFIG_SCSI_QLOGIC_1280 is not set ++# CONFIG_SCSI_QLA_ISCSI is not set ++# CONFIG_SCSI_DC395x is not set ++# CONFIG_SCSI_AM53C974 is not set ++# CONFIG_SCSI_WD719X is not set ++# CONFIG_SCSI_DEBUG is not set ++# CONFIG_SCSI_PMCRAID is not set ++# CONFIG_SCSI_PM8001 is not set ++# CONFIG_SCSI_VIRTIO is not set ++CONFIG_SCSI_DH=y ++# CONFIG_SCSI_DH_RDAC is not set ++# CONFIG_SCSI_DH_HP_SW is not set ++# CONFIG_SCSI_DH_EMC is not set ++# CONFIG_SCSI_DH_ALUA is not set ++# CONFIG_SCSI_OSD_INITIATOR is not set ++CONFIG_HAVE_PATA_PLATFORM=y ++CONFIG_ATA=y ++CONFIG_ATA_VERBOSE_ERROR=y ++CONFIG_ATA_ACPI=y ++CONFIG_SATA_ZPODD=y ++CONFIG_SATA_PMP=y ++ ++# ++# Controllers with non-SFF native interface ++# ++CONFIG_SATA_AHCI=m ++CONFIG_SATA_MOBILE_LPM_POLICY=0 ++CONFIG_SATA_AHCI_PLATFORM=m ++CONFIG_AHCI_CEVA=m ++# CONFIG_AHCI_MTK is not set ++CONFIG_AHCI_XGENE=m ++CONFIG_AHCI_QORIQ=m ++# CONFIG_SATA_INIC162X is not set ++CONFIG_SATA_ACARD_AHCI=m ++# CONFIG_SATA_SIL24 is not set ++CONFIG_ATA_SFF=y ++ ++# ++# SFF controllers with custom DMA interface ++# ++# CONFIG_PDC_ADMA is not set ++# CONFIG_SATA_QSTOR is not set ++# CONFIG_SATA_SX4 is not set ++CONFIG_ATA_BMDMA=y ++ ++# ++# SATA SFF controllers with BMDMA ++# ++# CONFIG_ATA_PIIX is not set ++# CONFIG_SATA_DWC is not set ++# CONFIG_SATA_MV is not set ++# CONFIG_SATA_NV is not set ++# CONFIG_SATA_PROMISE is not set ++# CONFIG_SATA_SIL is not set ++# CONFIG_SATA_SIS is not set ++# CONFIG_SATA_SVW is not set ++# CONFIG_SATA_ULI is not set ++# CONFIG_SATA_VIA is not set ++# CONFIG_SATA_VITESSE is not set ++ ++# ++# PATA SFF controllers with BMDMA ++# ++# CONFIG_PATA_ALI is not set ++# CONFIG_PATA_AMD is not set ++# CONFIG_PATA_ARTOP is not set ++# CONFIG_PATA_ATIIXP is not set ++# CONFIG_PATA_ATP867X is not set ++# CONFIG_PATA_CMD64X is not set ++# CONFIG_PATA_CYPRESS is not set ++# CONFIG_PATA_EFAR is not set ++# CONFIG_PATA_HPT366 is not set ++# CONFIG_PATA_HPT37X is not set ++# CONFIG_PATA_HPT3X2N is not set ++# CONFIG_PATA_HPT3X3 is not set ++# CONFIG_PATA_IT8213 is not set ++# CONFIG_PATA_IT821X is not set ++# CONFIG_PATA_JMICRON is not set ++# CONFIG_PATA_MARVELL is not set ++# CONFIG_PATA_NETCELL is not set ++# CONFIG_PATA_NINJA32 is not set ++# CONFIG_PATA_NS87415 is not set ++# CONFIG_PATA_OLDPIIX is not set ++# CONFIG_PATA_OPTIDMA is not set ++# CONFIG_PATA_PDC2027X is not set ++# CONFIG_PATA_PDC_OLD is not set ++# CONFIG_PATA_RADISYS is not set ++# CONFIG_PATA_RDC is not set ++# CONFIG_PATA_SCH is not set ++# CONFIG_PATA_SERVERWORKS is not set ++# CONFIG_PATA_SIL680 is not set ++# CONFIG_PATA_SIS is not set ++# CONFIG_PATA_TOSHIBA is not set ++# CONFIG_PATA_TRIFLEX is not set ++# CONFIG_PATA_VIA is not set ++# CONFIG_PATA_WINBOND is not set ++ ++# ++# PIO-only SFF controllers ++# ++# CONFIG_PATA_CMD640_PCI is not set ++# CONFIG_PATA_MPIIX is not set ++# CONFIG_PATA_NS87410 is not set ++# CONFIG_PATA_OPTI is not set ++# CONFIG_PATA_PLATFORM is not set ++# CONFIG_PATA_RZ1000 is not set ++ ++# ++# Generic fallback / legacy drivers ++# ++# CONFIG_PATA_ACPI is not set ++# CONFIG_ATA_GENERIC is not set ++# CONFIG_PATA_LEGACY is not set ++CONFIG_MD=y ++CONFIG_BLK_DEV_MD=y ++CONFIG_MD_AUTODETECT=y ++# CONFIG_MD_LINEAR is not set ++# CONFIG_MD_RAID0 is not set ++# CONFIG_MD_RAID1 is not set ++# CONFIG_MD_RAID10 is not set ++# CONFIG_MD_RAID456 is not set ++# CONFIG_MD_MULTIPATH is not set ++# CONFIG_MD_FAULTY is not set ++# CONFIG_BCACHE is not set ++CONFIG_BLK_DEV_DM_BUILTIN=y ++CONFIG_BLK_DEV_DM=y ++# CONFIG_DM_DEBUG is not set ++# CONFIG_DM_UNSTRIPED is not set ++# CONFIG_DM_CRYPT is not set ++# CONFIG_DM_SNAPSHOT is not set ++# CONFIG_DM_THIN_PROVISIONING is not set ++# CONFIG_DM_CACHE is not set ++# CONFIG_DM_WRITECACHE is not set ++# CONFIG_DM_ERA is not set ++# CONFIG_DM_MIRROR is not set ++# CONFIG_DM_RAID is not set ++# CONFIG_DM_ZERO is not set ++# CONFIG_DM_MULTIPATH is not set ++# CONFIG_DM_DELAY is not set ++CONFIG_DM_UEVENT=y ++# CONFIG_DM_FLAKEY is not set ++# CONFIG_DM_VERITY is not set ++# CONFIG_DM_SWITCH is not set ++# CONFIG_DM_LOG_WRITES is not set ++# CONFIG_DM_INTEGRITY is not set ++# CONFIG_TARGET_CORE is not set ++CONFIG_FUSION=y ++# CONFIG_FUSION_SPI is not set ++# CONFIG_FUSION_SAS is not set ++CONFIG_FUSION_MAX_SGE=128 ++CONFIG_FUSION_LOGGING=y ++ ++# ++# IEEE 1394 (FireWire) support ++# ++# CONFIG_FIREWIRE is not set ++# CONFIG_FIREWIRE_NOSY is not set ++CONFIG_NETDEVICES=y ++CONFIG_MII=y ++CONFIG_NET_CORE=y ++# CONFIG_BONDING is not set ++# CONFIG_DUMMY is not set ++# CONFIG_EQUALIZER is not set ++CONFIG_NET_FC=y ++# CONFIG_IFB is not set ++# CONFIG_NET_TEAM is not set ++# CONFIG_MACVLAN is not set ++# CONFIG_IPVLAN is not set ++# CONFIG_VXLAN is not set ++# CONFIG_MACSEC is not set ++CONFIG_NETCONSOLE=y ++CONFIG_NETPOLL=y ++CONFIG_NET_POLL_CONTROLLER=y ++CONFIG_TUN=y ++# CONFIG_TUN_VNET_CROSS_LE is not set ++# CONFIG_VETH is not set ++CONFIG_VIRTIO_NET=y ++# CONFIG_NLMON is not set ++# CONFIG_NET_VRF is not set ++# CONFIG_ARCNET is not set ++ ++# ++# CAIF transport drivers ++# ++ ++# ++# Distributed Switch Architecture drivers ++# ++CONFIG_ETHERNET=y ++CONFIG_MDIO=m ++CONFIG_NET_VENDOR_3COM=y ++# CONFIG_VORTEX is not set ++# CONFIG_TYPHOON is not set ++CONFIG_NET_VENDOR_ADAPTEC=y ++# CONFIG_ADAPTEC_STARFIRE is not set ++CONFIG_NET_VENDOR_AGERE=y ++# CONFIG_ET131X is not set ++CONFIG_NET_VENDOR_ALACRITECH=y ++# CONFIG_SLICOSS is not set ++CONFIG_NET_VENDOR_ALTEON=y ++# CONFIG_ACENIC is not set ++# CONFIG_ALTERA_TSE is not set ++CONFIG_NET_VENDOR_AMAZON=y ++# CONFIG_ENA_ETHERNET is not set ++CONFIG_NET_VENDOR_AMD=y ++# CONFIG_AMD8111_ETH is not set ++# CONFIG_PCNET32 is not set ++# CONFIG_AMD_XGBE is not set ++# CONFIG_NET_XGENE is not set ++# CONFIG_NET_XGENE_V2 is not set ++CONFIG_NET_VENDOR_AQUANTIA=y ++CONFIG_NET_VENDOR_ARC=y ++CONFIG_NET_VENDOR_ATHEROS=y ++# CONFIG_ATL2 is not set ++# CONFIG_ATL1 is not set ++# CONFIG_ATL1E is not set ++# CONFIG_ATL1C is not set ++# CONFIG_ALX is not set ++CONFIG_NET_VENDOR_AURORA=y ++# CONFIG_AURORA_NB8800 is not set ++CONFIG_NET_VENDOR_BROADCOM=y ++# CONFIG_B44 is not set ++# CONFIG_BCMGENET is not set ++# CONFIG_BNX2 is not set ++# CONFIG_CNIC is not set ++# CONFIG_TIGON3 is not set ++# CONFIG_BNX2X is not set ++CONFIG_BGMAC=y ++CONFIG_BGMAC_PLATFORM=y ++# CONFIG_SYSTEMPORT is not set ++# CONFIG_BNXT is not set ++CONFIG_NET_VENDOR_BROCADE=y ++# CONFIG_BNA is not set ++CONFIG_NET_VENDOR_CADENCE=y ++# CONFIG_MACB is not set ++CONFIG_NET_VENDOR_CAVIUM=y ++CONFIG_THUNDER_NIC_PF=m ++CONFIG_THUNDER_NIC_VF=m ++CONFIG_THUNDER_NIC_BGX=m ++CONFIG_THUNDER_NIC_RGX=m ++CONFIG_CAVIUM_PTP=y ++# CONFIG_LIQUIDIO is not set ++# CONFIG_LIQUIDIO_VF is not set ++CONFIG_NET_VENDOR_CHELSIO=y ++# CONFIG_CHELSIO_T1 is not set ++# CONFIG_CHELSIO_T3 is not set ++# CONFIG_CHELSIO_T4 is not set ++# CONFIG_CHELSIO_T4VF is not set ++CONFIG_NET_VENDOR_CISCO=y ++# CONFIG_ENIC is not set ++CONFIG_NET_VENDOR_CORTINA=y ++# CONFIG_GEMINI_ETHERNET is not set ++# CONFIG_DNET is not set ++CONFIG_NET_VENDOR_DEC=y ++CONFIG_NET_TULIP=y ++# CONFIG_DE2104X is not set ++# CONFIG_TULIP is not set ++# CONFIG_WINBOND_840 is not set ++# CONFIG_DM9102 is not set ++# CONFIG_ULI526X is not set ++CONFIG_NET_VENDOR_DLINK=y ++# CONFIG_DL2K is not set ++# CONFIG_SUNDANCE is not set ++CONFIG_NET_VENDOR_EMULEX=y ++# CONFIG_BE2NET is not set ++CONFIG_NET_VENDOR_EZCHIP=y ++# CONFIG_EZCHIP_NPS_MANAGEMENT_ENET is not set ++CONFIG_NET_VENDOR_FREESCALE=y ++# CONFIG_FSL_FMAN is not set ++# CONFIG_FSL_PQ_MDIO is not set ++CONFIG_FSL_XGMAC_MDIO=y ++# CONFIG_GIANFAR is not set ++CONFIG_NET_VENDOR_HISILICON=y ++# CONFIG_HIX5HD2_GMAC is not set ++# CONFIG_HISI_FEMAC is not set ++# CONFIG_HIP04_ETH is not set ++# CONFIG_HNS is not set ++# CONFIG_HNS_DSAF is not set ++# CONFIG_HNS_ENET is not set ++# CONFIG_HNS3 is not set ++CONFIG_NET_VENDOR_HP=y ++# CONFIG_HP100 is not set ++CONFIG_NET_VENDOR_HUAWEI=y ++# CONFIG_HINIC is not set ++CONFIG_NET_VENDOR_I825XX=y ++CONFIG_NET_VENDOR_INTEL=y ++# CONFIG_E100 is not set ++# CONFIG_E1000 is not set ++# CONFIG_E1000E is not set ++# CONFIG_IGB is not set ++# CONFIG_IGBVF is not set ++# CONFIG_IXGB is not set ++CONFIG_IXGBE=m ++CONFIG_IXGBE_HWMON=y ++CONFIG_IXGBE_DCB=y ++# CONFIG_IXGBEVF is not set ++# CONFIG_I40E is not set ++# CONFIG_I40EVF is not set ++# CONFIG_ICE is not set ++# CONFIG_FM10K is not set ++# CONFIG_IGC is not set ++# CONFIG_JME is not set ++CONFIG_NET_VENDOR_MARVELL=y ++# CONFIG_MVMDIO is not set ++# CONFIG_PXA168_ETH is not set ++# CONFIG_SKGE is not set ++# CONFIG_SKY2 is not set ++# CONFIG_OCTEONTX2_AF is not set ++# CONFIG_NET_VENDOR_MEDIATEK is not set ++CONFIG_NET_VENDOR_MELLANOX=y ++# CONFIG_MLX4_EN is not set ++# CONFIG_MLX5_CORE is not set ++# CONFIG_MLXSW_CORE is not set ++# CONFIG_MLXFW is not set ++CONFIG_NET_VENDOR_MICREL=y ++# CONFIG_KS8842 is not set ++# CONFIG_KS8851 is not set ++# CONFIG_KS8851_MLL is not set ++# CONFIG_KSZ884X_PCI is not set ++CONFIG_NET_VENDOR_MICROCHIP=y ++# CONFIG_ENC28J60 is not set ++# CONFIG_ENCX24J600 is not set ++# CONFIG_LAN743X is not set ++CONFIG_NET_VENDOR_MICROSEMI=y ++CONFIG_NET_VENDOR_MYRI=y ++# CONFIG_MYRI10GE is not set ++# CONFIG_FEALNX is not set ++CONFIG_NET_VENDOR_NATSEMI=y ++# CONFIG_NATSEMI is not set ++# CONFIG_NS83820 is not set ++CONFIG_NET_VENDOR_NETERION=y ++# CONFIG_S2IO is not set ++# CONFIG_VXGE is not set ++CONFIG_NET_VENDOR_NETRONOME=y ++# CONFIG_NFP is not set ++CONFIG_NET_VENDOR_NI=y ++# CONFIG_NI_XGE_MANAGEMENT_ENET is not set ++CONFIG_NET_VENDOR_8390=y ++# CONFIG_NE2K_PCI is not set ++CONFIG_NET_VENDOR_NVIDIA=y ++# CONFIG_FORCEDETH is not set ++CONFIG_NET_VENDOR_OKI=y ++# CONFIG_ETHOC is not set ++CONFIG_NET_VENDOR_PACKET_ENGINES=y ++# CONFIG_HAMACHI is not set ++# CONFIG_YELLOWFIN is not set ++CONFIG_NET_VENDOR_QLOGIC=y ++# CONFIG_QLA3XXX is not set ++# CONFIG_QLCNIC is not set ++# CONFIG_QLGE is not set ++# CONFIG_NETXEN_NIC is not set ++# CONFIG_QED is not set ++CONFIG_NET_VENDOR_QUALCOMM=y ++# CONFIG_QCA7000_SPI is not set ++# CONFIG_QCOM_EMAC is not set ++# CONFIG_RMNET is not set ++CONFIG_NET_VENDOR_RDC=y ++# CONFIG_R6040 is not set ++CONFIG_NET_VENDOR_REALTEK=y ++# CONFIG_8139CP is not set ++# CONFIG_8139TOO is not set ++# CONFIG_R8169 is not set ++CONFIG_NET_VENDOR_RENESAS=y ++CONFIG_NET_VENDOR_ROCKER=y ++CONFIG_NET_VENDOR_SAMSUNG=y ++# CONFIG_SXGBE_ETH is not set ++CONFIG_NET_VENDOR_SEEQ=y ++CONFIG_NET_VENDOR_SOLARFLARE=y ++# CONFIG_SFC is not set ++# CONFIG_SFC_FALCON is not set ++CONFIG_NET_VENDOR_SILAN=y ++# CONFIG_SC92031 is not set ++CONFIG_NET_VENDOR_SIS=y ++# CONFIG_SIS900 is not set ++# CONFIG_SIS190 is not set ++CONFIG_NET_VENDOR_SMSC=y ++CONFIG_SMC91X=y ++# CONFIG_EPIC100 is not set ++# CONFIG_SMSC911X is not set ++# CONFIG_SMSC9420 is not set ++CONFIG_NET_VENDOR_SOCIONEXT=y ++CONFIG_NET_VENDOR_STMICRO=y ++# CONFIG_STMMAC_ETH is not set ++CONFIG_NET_VENDOR_SUN=y ++# CONFIG_HAPPYMEAL is not set ++# CONFIG_SUNGEM is not set ++# CONFIG_CASSINI is not set ++# CONFIG_NIU is not set ++CONFIG_NET_VENDOR_SYNOPSYS=y ++# CONFIG_DWC_XLGMAC is not set ++CONFIG_NET_VENDOR_TEHUTI=y ++# CONFIG_TEHUTI is not set ++CONFIG_NET_VENDOR_TI=y ++# CONFIG_TI_CPSW_ALE is not set ++# CONFIG_TLAN is not set ++CONFIG_NET_VENDOR_VIA=y ++# CONFIG_VIA_RHINE is not set ++# CONFIG_VIA_VELOCITY is not set ++CONFIG_NET_VENDOR_WIZNET=y ++# CONFIG_WIZNET_W5100 is not set ++# CONFIG_WIZNET_W5300 is not set ++CONFIG_FDDI=y ++# CONFIG_DEFXX is not set ++# CONFIG_SKFP is not set ++# CONFIG_HIPPI is not set ++# CONFIG_NET_SB1000 is not set ++CONFIG_MDIO_DEVICE=y ++CONFIG_MDIO_BUS=y ++# CONFIG_MDIO_BCM_IPROC is not set ++# CONFIG_MDIO_BCM_UNIMAC is not set ++# CONFIG_MDIO_BITBANG is not set ++CONFIG_MDIO_BUS_MUX=y ++CONFIG_MDIO_BUS_MUX_BCM_IPROC=y ++# CONFIG_MDIO_BUS_MUX_GPIO is not set ++# CONFIG_MDIO_BUS_MUX_MMIOREG is not set ++CONFIG_MDIO_CAVIUM=m ++# CONFIG_MDIO_HISI_FEMAC is not set ++# CONFIG_MDIO_MSCC_MIIM is not set ++# CONFIG_MDIO_OCTEON is not set ++CONFIG_MDIO_THUNDER=m ++# CONFIG_MDIO_XGENE is not set ++CONFIG_PHYLIB=y ++CONFIG_SWPHY=y ++# CONFIG_LED_TRIGGER_PHY is not set ++ ++# ++# MII PHY device drivers ++# ++# CONFIG_AMD_PHY is not set ++# CONFIG_AQUANTIA_PHY is not set ++# CONFIG_ASIX_PHY is not set ++# CONFIG_AT803X_PHY is not set ++# CONFIG_BCM7XXX_PHY is not set ++# CONFIG_BCM87XX_PHY is not set ++# CONFIG_BROADCOM_PHY is not set ++# CONFIG_CICADA_PHY is not set ++# CONFIG_CORTINA_PHY is not set ++# CONFIG_DAVICOM_PHY is not set ++# CONFIG_DP83822_PHY is not set ++# CONFIG_DP83TC811_PHY is not set ++# CONFIG_DP83848_PHY is not set ++# CONFIG_DP83867_PHY is not set ++CONFIG_FIXED_PHY=y ++# CONFIG_ICPLUS_PHY is not set ++# CONFIG_INTEL_XWAY_PHY is not set ++# CONFIG_LSI_ET1011C_PHY is not set ++# CONFIG_LXT_PHY is not set ++# CONFIG_MARVELL_PHY is not set ++# CONFIG_MARVELL_10G_PHY is not set ++# CONFIG_MICREL_PHY is not set ++# CONFIG_MICROCHIP_PHY is not set ++# CONFIG_MICROCHIP_T1_PHY is not set ++# CONFIG_MICROSEMI_PHY is not set ++# CONFIG_NATIONAL_PHY is not set ++# CONFIG_QSEMI_PHY is not set ++# CONFIG_REALTEK_PHY is not set ++# CONFIG_RENESAS_PHY is not set ++# CONFIG_ROCKCHIP_PHY is not set ++# CONFIG_SMSC_PHY is not set ++# CONFIG_STE10XP is not set ++# CONFIG_TERANETICS_PHY is not set ++# CONFIG_VITESSE_PHY is not set ++# CONFIG_XILINX_GMII2RGMII is not set ++# CONFIG_MICREL_KS8995MA is not set ++CONFIG_PPP=y ++# CONFIG_PPP_BSDCOMP is not set ++# CONFIG_PPP_DEFLATE is not set ++CONFIG_PPP_FILTER=y ++# CONFIG_PPP_MPPE is not set ++CONFIG_PPP_MULTILINK=y ++# CONFIG_PPPOE is not set ++# CONFIG_PPP_ASYNC is not set ++# CONFIG_PPP_SYNC_TTY is not set ++# CONFIG_SLIP is not set ++CONFIG_SLHC=y ++CONFIG_USB_NET_DRIVERS=m ++# CONFIG_USB_CATC is not set ++# CONFIG_USB_KAWETH is not set ++# CONFIG_USB_PEGASUS is not set ++# CONFIG_USB_RTL8150 is not set ++# CONFIG_USB_RTL8152 is not set ++# CONFIG_USB_LAN78XX is not set ++CONFIG_USB_USBNET=m ++CONFIG_USB_NET_AX8817X=m ++# CONFIG_USB_NET_AX88179_178A is not set ++# CONFIG_USB_NET_CDCETHER is not set ++# CONFIG_USB_NET_CDC_EEM is not set ++# CONFIG_USB_NET_CDC_NCM is not set ++# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set ++# CONFIG_USB_NET_CDC_MBIM is not set ++# CONFIG_USB_NET_DM9601 is not set ++# CONFIG_USB_NET_SR9700 is not set ++# CONFIG_USB_NET_SR9800 is not set ++# CONFIG_USB_NET_SMSC75XX is not set ++# CONFIG_USB_NET_SMSC95XX is not set ++# CONFIG_USB_NET_GL620A is not set ++# CONFIG_USB_NET_NET1080 is not set ++# CONFIG_USB_NET_PLUSB is not set ++# CONFIG_USB_NET_MCS7830 is not set ++# CONFIG_USB_NET_RNDIS_HOST is not set ++# CONFIG_USB_NET_CDC_SUBSET is not set ++# CONFIG_USB_NET_ZAURUS is not set ++# CONFIG_USB_NET_CX82310_ETH is not set ++# CONFIG_USB_NET_KALMIA is not set ++# CONFIG_USB_NET_QMI_WWAN is not set ++# CONFIG_USB_HSO is not set ++# CONFIG_USB_NET_INT51X1 is not set ++# CONFIG_USB_IPHETH is not set ++# CONFIG_USB_SIERRA_NET is not set ++# CONFIG_USB_NET_CH9200 is not set ++# CONFIG_USB_NET_AQC111 is not set ++CONFIG_WLAN=y ++# CONFIG_WIRELESS_WDS is not set ++CONFIG_WLAN_VENDOR_ADMTEK=y ++CONFIG_WLAN_VENDOR_ATH=y ++# CONFIG_ATH_DEBUG is not set ++CONFIG_ATH5K_PCI=y ++CONFIG_WLAN_VENDOR_ATMEL=y ++CONFIG_WLAN_VENDOR_BROADCOM=y ++CONFIG_WLAN_VENDOR_CISCO=y ++CONFIG_WLAN_VENDOR_INTEL=y ++# CONFIG_IWLWIFI is not set ++CONFIG_WLAN_VENDOR_INTERSIL=y ++# CONFIG_HOSTAP is not set ++# CONFIG_PRISM54 is not set ++CONFIG_WLAN_VENDOR_MARVELL=y ++CONFIG_WLAN_VENDOR_MEDIATEK=y ++CONFIG_WLAN_VENDOR_RALINK=y ++CONFIG_WLAN_VENDOR_REALTEK=y ++CONFIG_WLAN_VENDOR_RSI=y ++CONFIG_WLAN_VENDOR_ST=y ++CONFIG_WLAN_VENDOR_TI=y ++CONFIG_WLAN_VENDOR_ZYDAS=y ++CONFIG_WLAN_VENDOR_QUANTENNA=y ++ ++# ++# Enable WiMAX (Networking options) to see the WiMAX drivers ++# ++CONFIG_WAN=y ++# CONFIG_HDLC is not set ++# CONFIG_SLIC_DS26522 is not set ++# CONFIG_DLCI is not set ++CONFIG_XEN_NETDEV_FRONTEND=y ++# CONFIG_XEN_NETDEV_BACKEND is not set ++# CONFIG_VMXNET3 is not set ++# CONFIG_FUJITSU_ES is not set ++# CONFIG_NETDEVSIM is not set ++CONFIG_NET_FAILOVER=y ++CONFIG_ISDN=y ++# CONFIG_ISDN_I4L is not set ++# CONFIG_ISDN_CAPI is not set ++# CONFIG_ISDN_DRV_GIGASET is not set ++# CONFIG_HYSDN is not set ++# CONFIG_MISDN is not set ++CONFIG_NVM=y ++# CONFIG_NVM_PBLK is not set ++ ++# ++# Input device support ++# ++CONFIG_INPUT=y ++CONFIG_INPUT_LEDS=m ++# CONFIG_INPUT_FF_MEMLESS is not set ++# CONFIG_INPUT_POLLDEV is not set ++# CONFIG_INPUT_SPARSEKMAP is not set ++# CONFIG_INPUT_MATRIXKMAP is not set ++ ++# ++# Userland interfaces ++# ++CONFIG_INPUT_MOUSEDEV=y ++CONFIG_INPUT_MOUSEDEV_PSAUX=y ++CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 ++CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 ++CONFIG_INPUT_JOYDEV=m ++CONFIG_INPUT_EVDEV=y ++# CONFIG_INPUT_EVBUG is not set ++ ++# ++# Input Device Drivers ++# ++CONFIG_INPUT_KEYBOARD=y ++# CONFIG_KEYBOARD_ADP5520 is not set ++# CONFIG_KEYBOARD_ADP5588 is not set ++# CONFIG_KEYBOARD_ADP5589 is not set ++CONFIG_KEYBOARD_ATKBD=y ++# CONFIG_KEYBOARD_QT1070 is not set ++# CONFIG_KEYBOARD_QT2160 is not set ++# CONFIG_KEYBOARD_DLINK_DIR685 is not set ++# CONFIG_KEYBOARD_LKKBD is not set ++CONFIG_KEYBOARD_GPIO=m ++# CONFIG_KEYBOARD_GPIO_POLLED is not set ++# CONFIG_KEYBOARD_TCA6416 is not set ++# CONFIG_KEYBOARD_TCA8418 is not set ++# CONFIG_KEYBOARD_MATRIX is not set ++# CONFIG_KEYBOARD_LM8323 is not set ++# CONFIG_KEYBOARD_LM8333 is not set ++# CONFIG_KEYBOARD_MAX7359 is not set ++# CONFIG_KEYBOARD_MCS is not set ++# CONFIG_KEYBOARD_MPR121 is not set ++# CONFIG_KEYBOARD_NEWTON is not set ++# CONFIG_KEYBOARD_OPENCORES is not set ++# CONFIG_KEYBOARD_SAMSUNG is not set ++# CONFIG_KEYBOARD_STOWAWAY is not set ++# CONFIG_KEYBOARD_SUNKBD is not set ++# CONFIG_KEYBOARD_STMPE is not set ++# CONFIG_KEYBOARD_OMAP4 is not set ++# CONFIG_KEYBOARD_TC3589X is not set ++# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set ++# CONFIG_KEYBOARD_TWL4030 is not set ++# CONFIG_KEYBOARD_XTKBD is not set ++# CONFIG_KEYBOARD_CAP11XX is not set ++# CONFIG_KEYBOARD_BCM is not set ++CONFIG_INPUT_MOUSE=y ++# CONFIG_MOUSE_PS2 is not set ++# CONFIG_MOUSE_SERIAL is not set ++# CONFIG_MOUSE_APPLETOUCH is not set ++# CONFIG_MOUSE_BCM5974 is not set ++# CONFIG_MOUSE_CYAPA is not set ++# CONFIG_MOUSE_ELAN_I2C is not set ++# CONFIG_MOUSE_VSXXXAA is not set ++# CONFIG_MOUSE_GPIO is not set ++# CONFIG_MOUSE_SYNAPTICS_I2C is not set ++# CONFIG_MOUSE_SYNAPTICS_USB is not set ++CONFIG_INPUT_JOYSTICK=y ++# CONFIG_JOYSTICK_ANALOG is not set ++# CONFIG_JOYSTICK_A3D is not set ++# CONFIG_JOYSTICK_ADI is not set ++# CONFIG_JOYSTICK_COBRA is not set ++# CONFIG_JOYSTICK_GF2K is not set ++# CONFIG_JOYSTICK_GRIP is not set ++# CONFIG_JOYSTICK_GRIP_MP is not set ++# CONFIG_JOYSTICK_GUILLEMOT is not set ++# CONFIG_JOYSTICK_INTERACT is not set ++# CONFIG_JOYSTICK_SIDEWINDER is not set ++# CONFIG_JOYSTICK_TMDC is not set ++# CONFIG_JOYSTICK_IFORCE is not set ++# CONFIG_JOYSTICK_WARRIOR is not set ++# CONFIG_JOYSTICK_MAGELLAN is not set ++# CONFIG_JOYSTICK_SPACEORB is not set ++# CONFIG_JOYSTICK_SPACEBALL is not set ++# CONFIG_JOYSTICK_STINGER is not set ++# CONFIG_JOYSTICK_TWIDJOY is not set ++# CONFIG_JOYSTICK_ZHENHUA is not set ++# CONFIG_JOYSTICK_AS5011 is not set ++# CONFIG_JOYSTICK_JOYDUMP is not set ++# CONFIG_JOYSTICK_XPAD is not set ++# CONFIG_JOYSTICK_PSXPAD_SPI is not set ++# CONFIG_JOYSTICK_PXRC is not set ++CONFIG_INPUT_TABLET=y ++# CONFIG_TABLET_USB_ACECAD is not set ++# CONFIG_TABLET_USB_AIPTEK is not set ++# CONFIG_TABLET_USB_GTCO is not set ++# CONFIG_TABLET_USB_HANWANG is not set ++# CONFIG_TABLET_USB_KBTAB is not set ++# CONFIG_TABLET_USB_PEGASUS is not set ++# CONFIG_TABLET_SERIAL_WACOM4 is not set ++CONFIG_INPUT_TOUCHSCREEN=y ++CONFIG_TOUCHSCREEN_PROPERTIES=y ++# CONFIG_TOUCHSCREEN_88PM860X is not set ++# CONFIG_TOUCHSCREEN_ADS7846 is not set ++# CONFIG_TOUCHSCREEN_AD7877 is not set ++# CONFIG_TOUCHSCREEN_AD7879 is not set ++# CONFIG_TOUCHSCREEN_AR1021_I2C is not set ++# CONFIG_TOUCHSCREEN_ATMEL_MXT is not set ++# CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set ++# CONFIG_TOUCHSCREEN_BU21013 is not set ++# CONFIG_TOUCHSCREEN_BU21029 is not set ++# CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set ++# CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 is not set ++# CONFIG_TOUCHSCREEN_CY8CTMG110 is not set ++# CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set ++# CONFIG_TOUCHSCREEN_CYTTSP4_CORE is not set ++# CONFIG_TOUCHSCREEN_DA9034 is not set ++# CONFIG_TOUCHSCREEN_DA9052 is not set ++# CONFIG_TOUCHSCREEN_DYNAPRO is not set ++# CONFIG_TOUCHSCREEN_HAMPSHIRE is not set ++# CONFIG_TOUCHSCREEN_EETI is not set ++# CONFIG_TOUCHSCREEN_EGALAX is not set ++# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set ++# CONFIG_TOUCHSCREEN_EXC3000 is not set ++# CONFIG_TOUCHSCREEN_FUJITSU is not set ++# CONFIG_TOUCHSCREEN_GOODIX is not set ++# CONFIG_TOUCHSCREEN_HIDEEP is not set ++# CONFIG_TOUCHSCREEN_ILI210X is not set ++# CONFIG_TOUCHSCREEN_IPROC is not set ++# CONFIG_TOUCHSCREEN_S6SY761 is not set ++# CONFIG_TOUCHSCREEN_GUNZE is not set ++# CONFIG_TOUCHSCREEN_EKTF2127 is not set ++# CONFIG_TOUCHSCREEN_ELAN is not set ++# CONFIG_TOUCHSCREEN_ELO is not set ++# CONFIG_TOUCHSCREEN_WACOM_W8001 is not set ++# CONFIG_TOUCHSCREEN_WACOM_I2C is not set ++# CONFIG_TOUCHSCREEN_MAX11801 is not set ++# CONFIG_TOUCHSCREEN_MCS5000 is not set ++# CONFIG_TOUCHSCREEN_MMS114 is not set ++# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set ++# CONFIG_TOUCHSCREEN_MTOUCH is not set ++# CONFIG_TOUCHSCREEN_IMX6UL_TSC is not set ++# CONFIG_TOUCHSCREEN_INEXIO is not set ++# CONFIG_TOUCHSCREEN_MK712 is not set ++# CONFIG_TOUCHSCREEN_PENMOUNT is not set ++# CONFIG_TOUCHSCREEN_EDT_FT5X06 is not set ++# CONFIG_TOUCHSCREEN_TOUCHRIGHT is not set ++# CONFIG_TOUCHSCREEN_TOUCHWIN is not set ++# CONFIG_TOUCHSCREEN_PIXCIR is not set ++# CONFIG_TOUCHSCREEN_WDT87XX_I2C is not set ++# CONFIG_TOUCHSCREEN_WM831X is not set ++# CONFIG_TOUCHSCREEN_USB_COMPOSITE is not set ++# CONFIG_TOUCHSCREEN_TOUCHIT213 is not set ++# CONFIG_TOUCHSCREEN_TSC_SERIO is not set ++# CONFIG_TOUCHSCREEN_TSC2004 is not set ++# CONFIG_TOUCHSCREEN_TSC2005 is not set ++# CONFIG_TOUCHSCREEN_TSC2007 is not set ++# CONFIG_TOUCHSCREEN_PCAP is not set ++# CONFIG_TOUCHSCREEN_RM_TS is not set ++# CONFIG_TOUCHSCREEN_SILEAD is not set ++# CONFIG_TOUCHSCREEN_SIS_I2C is not set ++# CONFIG_TOUCHSCREEN_ST1232 is not set ++# CONFIG_TOUCHSCREEN_STMFTS is not set ++# CONFIG_TOUCHSCREEN_STMPE is not set ++# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set ++# CONFIG_TOUCHSCREEN_SX8654 is not set ++# CONFIG_TOUCHSCREEN_TPS6507X is not set ++# CONFIG_TOUCHSCREEN_ZET6223 is not set ++# CONFIG_TOUCHSCREEN_ZFORCE is not set ++# CONFIG_TOUCHSCREEN_ROHM_BU21023 is not set ++CONFIG_INPUT_MISC=y ++# CONFIG_INPUT_88PM860X_ONKEY is not set ++# CONFIG_INPUT_AD714X is not set ++# CONFIG_INPUT_ATMEL_CAPTOUCH is not set ++# CONFIG_INPUT_BMA150 is not set ++# CONFIG_INPUT_E3X0_BUTTON is not set ++# CONFIG_INPUT_MAX77693_HAPTIC is not set ++# CONFIG_INPUT_MAX8925_ONKEY is not set ++# CONFIG_INPUT_MAX8997_HAPTIC is not set ++# CONFIG_INPUT_MMA8450 is not set ++# CONFIG_INPUT_GP2A is not set ++# CONFIG_INPUT_GPIO_BEEPER is not set ++# CONFIG_INPUT_GPIO_DECODER is not set ++# CONFIG_INPUT_ATI_REMOTE2 is not set ++# CONFIG_INPUT_KEYSPAN_REMOTE is not set ++# CONFIG_INPUT_KXTJ9 is not set ++# CONFIG_INPUT_POWERMATE is not set ++# CONFIG_INPUT_YEALINK is not set ++# CONFIG_INPUT_CM109 is not set ++# CONFIG_INPUT_REGULATOR_HAPTIC is not set ++# CONFIG_INPUT_TPS65218_PWRBUTTON is not set ++# CONFIG_INPUT_TWL4030_PWRBUTTON is not set ++# CONFIG_INPUT_TWL4030_VIBRA is not set ++# CONFIG_INPUT_TWL6040_VIBRA is not set ++CONFIG_INPUT_UINPUT=y ++# CONFIG_INPUT_PALMAS_PWRBUTTON is not set ++# CONFIG_INPUT_PCF8574 is not set ++# CONFIG_INPUT_PWM_BEEPER is not set ++# CONFIG_INPUT_PWM_VIBRA is not set ++# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set ++# CONFIG_INPUT_DA9052_ONKEY is not set ++# CONFIG_INPUT_DA9055_ONKEY is not set ++# CONFIG_INPUT_DA9063_ONKEY is not set ++# CONFIG_INPUT_WM831X_ON is not set ++# CONFIG_INPUT_PCAP is not set ++# CONFIG_INPUT_ADXL34X is not set ++# CONFIG_INPUT_IMS_PCU is not set ++# CONFIG_INPUT_CMA3000 is not set ++# CONFIG_INPUT_XEN_KBDDEV_FRONTEND is not set ++# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set ++# CONFIG_INPUT_DRV260X_HAPTICS is not set ++# CONFIG_INPUT_DRV2665_HAPTICS is not set ++# CONFIG_INPUT_DRV2667_HAPTICS is not set ++# CONFIG_INPUT_HISI_POWERKEY is not set ++# CONFIG_RMI4_CORE is not set ++ ++# ++# Hardware I/O ports ++# ++CONFIG_SERIO=y ++# CONFIG_SERIO_SERPORT is not set ++# CONFIG_SERIO_AMBAKMI is not set ++# CONFIG_SERIO_PCIPS2 is not set ++CONFIG_SERIO_LIBPS2=y ++# CONFIG_SERIO_RAW is not set ++# CONFIG_SERIO_ALTERA_PS2 is not set ++# CONFIG_SERIO_PS2MULT is not set ++# CONFIG_SERIO_ARC_PS2 is not set ++# CONFIG_SERIO_APBPS2 is not set ++# CONFIG_SERIO_OLPC_APSP is not set ++# CONFIG_SERIO_GPIO_PS2 is not set ++# CONFIG_USERIO is not set ++# CONFIG_GAMEPORT is not set ++ ++# ++# Character devices ++# ++CONFIG_TTY=y ++CONFIG_VT=y ++CONFIG_CONSOLE_TRANSLATIONS=y ++CONFIG_VT_CONSOLE=y ++CONFIG_VT_CONSOLE_SLEEP=y ++CONFIG_HW_CONSOLE=y ++CONFIG_VT_HW_CONSOLE_BINDING=y ++CONFIG_UNIX98_PTYS=y ++CONFIG_LEGACY_PTYS=y ++CONFIG_LEGACY_PTY_COUNT=0 ++CONFIG_SERIAL_NONSTANDARD=y ++# CONFIG_ROCKETPORT is not set ++# CONFIG_CYCLADES is not set ++# CONFIG_MOXA_INTELLIO is not set ++# CONFIG_MOXA_SMARTIO is not set ++# CONFIG_SYNCLINKMP is not set ++# CONFIG_SYNCLINK_GT is not set ++# CONFIG_NOZOMI is not set ++# CONFIG_ISI is not set ++# CONFIG_N_HDLC is not set ++# CONFIG_N_GSM is not set ++# CONFIG_TRACE_SINK is not set ++CONFIG_DEVMEM=y ++ ++# ++# Serial drivers ++# ++CONFIG_SERIAL_EARLYCON=y ++CONFIG_SERIAL_8250=y ++# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set ++CONFIG_SERIAL_8250_PNP=y ++# CONFIG_SERIAL_8250_FINTEK is not set ++CONFIG_SERIAL_8250_CONSOLE=y ++CONFIG_SERIAL_8250_DMA=y ++CONFIG_SERIAL_8250_PCI=y ++CONFIG_SERIAL_8250_EXAR=y ++CONFIG_SERIAL_8250_NR_UARTS=48 ++CONFIG_SERIAL_8250_RUNTIME_UARTS=32 ++CONFIG_SERIAL_8250_EXTENDED=y ++CONFIG_SERIAL_8250_MANY_PORTS=y ++# CONFIG_SERIAL_8250_ASPEED_VUART is not set ++CONFIG_SERIAL_8250_SHARE_IRQ=y ++# CONFIG_SERIAL_8250_DETECT_IRQ is not set ++CONFIG_SERIAL_8250_RSA=y ++CONFIG_SERIAL_8250_FSL=y ++CONFIG_SERIAL_8250_DW=y ++CONFIG_SERIAL_8250_RT288X=y ++CONFIG_SERIAL_8250_MT6577=y ++# CONFIG_SERIAL_8250_MOXA is not set ++CONFIG_SERIAL_OF_PLATFORM=y ++ ++# ++# Non-8250 serial port support ++# ++# CONFIG_SERIAL_AMBA_PL010 is not set ++CONFIG_SERIAL_AMBA_PL011=y ++CONFIG_SERIAL_AMBA_PL011_CONSOLE=y ++CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST=y ++CONFIG_SERIAL_KGDB_NMI=y ++# CONFIG_SERIAL_MAX3100 is not set ++CONFIG_SERIAL_MAX310X=y ++# CONFIG_SERIAL_UARTLITE is not set ++CONFIG_SERIAL_CORE=y ++CONFIG_SERIAL_CORE_CONSOLE=y ++CONFIG_CONSOLE_POLL=y ++# CONFIG_SERIAL_JSM is not set ++CONFIG_SERIAL_MSM=y ++CONFIG_SERIAL_MSM_CONSOLE=y ++CONFIG_SERIAL_SCCNXP=y ++CONFIG_SERIAL_SCCNXP_CONSOLE=y ++# CONFIG_SERIAL_SC16IS7XX is not set ++# CONFIG_SERIAL_ALTERA_JTAGUART is not set ++# CONFIG_SERIAL_ALTERA_UART is not set ++# CONFIG_SERIAL_IFX6X60 is not set ++# CONFIG_SERIAL_XILINX_PS_UART is not set ++# CONFIG_SERIAL_ARC is not set ++# CONFIG_SERIAL_RP2 is not set ++# CONFIG_SERIAL_FSL_LPUART is not set ++# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set ++# CONFIG_SERIAL_SPRD is not set ++# CONFIG_SERIAL_DEV_BUS is not set ++CONFIG_TTY_PRINTK=y ++CONFIG_TTY_PRINTK_LEVEL=6 ++CONFIG_HVC_DRIVER=y ++CONFIG_HVC_IRQ=y ++CONFIG_HVC_XEN=y ++CONFIG_HVC_XEN_FRONTEND=y ++# CONFIG_HVC_DCC is not set ++CONFIG_VIRTIO_CONSOLE=y ++CONFIG_IPMI_HANDLER=m ++CONFIG_IPMI_DMI_DECODE=y ++# CONFIG_IPMI_PANIC_EVENT is not set ++# CONFIG_IPMI_DEVICE_INTERFACE is not set ++# CONFIG_IPMI_SI is not set ++# CONFIG_IPMI_SSIF is not set ++# CONFIG_IPMI_WATCHDOG is not set ++# CONFIG_IPMI_POWEROFF is not set ++CONFIG_HW_RANDOM=y ++# CONFIG_HW_RANDOM_TIMERIOMEM is not set ++# CONFIG_HW_RANDOM_IPROC_RNG200 is not set ++# CONFIG_HW_RANDOM_VIRTIO is not set ++CONFIG_HW_RANDOM_HISI=y ++# CONFIG_HW_RANDOM_XGENE is not set ++CONFIG_HW_RANDOM_CAVIUM=y ++CONFIG_HW_RANDOM_MTK=y ++# CONFIG_R3964 is not set ++# CONFIG_APPLICOM is not set ++# CONFIG_RAW_DRIVER is not set ++CONFIG_TCG_TPM=y ++# CONFIG_HW_RANDOM_TPM is not set ++# CONFIG_TCG_TIS is not set ++# CONFIG_TCG_TIS_SPI is not set ++# CONFIG_TCG_TIS_I2C_ATMEL is not set ++# CONFIG_TCG_TIS_I2C_INFINEON is not set ++# CONFIG_TCG_TIS_I2C_NUVOTON is not set ++# CONFIG_TCG_ATMEL is not set ++# CONFIG_TCG_INFINEON is not set ++# CONFIG_TCG_XEN is not set ++CONFIG_TCG_CRB=y ++# CONFIG_TCG_VTPM_PROXY is not set ++# CONFIG_TCG_TIS_ST33ZP24_I2C is not set ++# CONFIG_TCG_TIS_ST33ZP24_SPI is not set ++CONFIG_DEVPORT=y ++# CONFIG_XILLYBUS is not set ++ ++# ++# I2C support ++# ++CONFIG_I2C=y ++CONFIG_ACPI_I2C_OPREGION=y ++CONFIG_I2C_BOARDINFO=y ++CONFIG_I2C_COMPAT=y ++CONFIG_I2C_CHARDEV=y ++# CONFIG_I2C_MUX is not set ++CONFIG_I2C_HELPER_AUTO=y ++CONFIG_I2C_ALGOBIT=m ++ ++# ++# I2C Hardware Bus support ++# ++ ++# ++# PC SMBus host controller drivers ++# ++# CONFIG_I2C_ALI1535 is not set ++# CONFIG_I2C_ALI1563 is not set ++# CONFIG_I2C_ALI15X3 is not set ++# CONFIG_I2C_AMD756 is not set ++# CONFIG_I2C_AMD8111 is not set ++# CONFIG_I2C_HIX5HD2 is not set ++# CONFIG_I2C_I801 is not set ++# CONFIG_I2C_ISCH is not set ++# CONFIG_I2C_PIIX4 is not set ++# CONFIG_I2C_NFORCE2 is not set ++# CONFIG_I2C_NVIDIA_GPU is not set ++# CONFIG_I2C_SIS5595 is not set ++# CONFIG_I2C_SIS630 is not set ++# CONFIG_I2C_SIS96X is not set ++# CONFIG_I2C_VIA is not set ++# CONFIG_I2C_VIAPRO is not set ++ ++# ++# ACPI drivers ++# ++# CONFIG_I2C_SCMI is not set ++ ++# ++# I2C system bus drivers (mostly embedded / system-on-chip) ++# ++# CONFIG_I2C_BCM_IPROC is not set ++# CONFIG_I2C_CADENCE is not set ++# CONFIG_I2C_CBUS_GPIO is not set ++# CONFIG_I2C_DESIGNWARE_PLATFORM is not set ++# CONFIG_I2C_DESIGNWARE_PCI is not set ++# CONFIG_I2C_EMEV2 is not set ++# CONFIG_I2C_GPIO is not set ++CONFIG_I2C_IMX=y ++# CONFIG_I2C_MT65XX is not set ++# CONFIG_I2C_NOMADIK is not set ++# CONFIG_I2C_OCORES is not set ++# CONFIG_I2C_PCA_PLATFORM is not set ++# CONFIG_I2C_QUP is not set ++# CONFIG_I2C_RK3X is not set ++# CONFIG_I2C_SIMTEC is not set ++# CONFIG_I2C_SPRD is not set ++# CONFIG_I2C_VERSATILE is not set ++# CONFIG_I2C_THUNDERX is not set ++# CONFIG_I2C_XILINX is not set ++ ++# ++# External I2C/SMBus adapter drivers ++# ++# CONFIG_I2C_DIOLAN_U2C is not set ++# CONFIG_I2C_PARPORT_LIGHT is not set ++# CONFIG_I2C_ROBOTFUZZ_OSIF is not set ++# CONFIG_I2C_TAOS_EVM is not set ++# CONFIG_I2C_TINY_USB is not set ++ ++# ++# Other I2C/SMBus bus drivers ++# ++# CONFIG_I2C_XGENE_SLIMPRO is not set ++# CONFIG_I2C_STUB is not set ++CONFIG_I2C_SLAVE=y ++# CONFIG_I2C_SLAVE_EEPROM is not set ++# CONFIG_I2C_DEBUG_CORE is not set ++# CONFIG_I2C_DEBUG_ALGO is not set ++# CONFIG_I2C_DEBUG_BUS is not set ++# CONFIG_I3C is not set ++CONFIG_SPI=y ++# CONFIG_SPI_DEBUG is not set ++CONFIG_SPI_MASTER=y ++# CONFIG_SPI_MEM is not set ++ ++# ++# SPI Master Controller Drivers ++# ++# CONFIG_SPI_ALTERA is not set ++# CONFIG_SPI_AXI_SPI_ENGINE is not set ++CONFIG_SPI_BCM_QSPI=y ++# CONFIG_SPI_BITBANG is not set ++# CONFIG_SPI_CADENCE is not set ++# CONFIG_SPI_DESIGNWARE is not set ++# CONFIG_SPI_GPIO is not set ++CONFIG_SPI_FSL_LIB=y ++CONFIG_SPI_FSL_SPI=y ++# CONFIG_SPI_FSL_DSPI is not set ++# CONFIG_SPI_MT65XX is not set ++# CONFIG_SPI_OC_TINY is not set ++# CONFIG_SPI_PL022 is not set ++# CONFIG_SPI_PXA2XX is not set ++# CONFIG_SPI_ROCKCHIP is not set ++# CONFIG_SPI_QCOM_QSPI is not set ++# CONFIG_SPI_QUP is not set ++# CONFIG_SPI_SC18IS602 is not set ++# CONFIG_SPI_SPRD is not set ++# CONFIG_SPI_MXIC is not set ++# CONFIG_SPI_THUNDERX is not set ++# CONFIG_SPI_XCOMM is not set ++# CONFIG_SPI_XILINX is not set ++# CONFIG_SPI_ZYNQMP_GQSPI is not set ++ ++# ++# SPI Protocol Masters ++# ++# CONFIG_SPI_SPIDEV is not set ++# CONFIG_SPI_LOOPBACK_TEST is not set ++# CONFIG_SPI_TLE62X0 is not set ++# CONFIG_SPI_SLAVE is not set ++# CONFIG_SPMI is not set ++# CONFIG_HSI is not set ++CONFIG_PPS=y ++# CONFIG_PPS_DEBUG is not set ++ ++# ++# PPS clients support ++# ++# CONFIG_PPS_CLIENT_KTIMER is not set ++# CONFIG_PPS_CLIENT_LDISC is not set ++# CONFIG_PPS_CLIENT_GPIO is not set ++ ++# ++# PPS generators support ++# ++ ++# ++# PTP clock support ++# ++CONFIG_PTP_1588_CLOCK=y ++CONFIG_PTP_1588_CLOCK_DTE=y ++ ++# ++# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. ++# ++CONFIG_PINCTRL=y ++CONFIG_GENERIC_PINCTRL_GROUPS=y ++CONFIG_PINMUX=y ++CONFIG_GENERIC_PINMUX_FUNCTIONS=y ++CONFIG_PINCONF=y ++CONFIG_GENERIC_PINCONF=y ++# CONFIG_DEBUG_PINCTRL is not set ++CONFIG_PINCTRL_AS3722=y ++CONFIG_PINCTRL_AMD=y ++# CONFIG_PINCTRL_MCP23S08 is not set ++CONFIG_PINCTRL_SINGLE=y ++# CONFIG_PINCTRL_SX150X is not set ++CONFIG_PINCTRL_PALMAS=y ++# CONFIG_PINCTRL_OCELOT is not set ++CONFIG_PINCTRL_IPROC_GPIO=y ++CONFIG_PINCTRL_NS2_MUX=y ++CONFIG_PINCTRL_BERLIN=y ++# CONFIG_PINCTRL_AS370 is not set ++CONFIG_PINCTRL_BERLIN_BG4CT=y ++# CONFIG_PINCTRL_APQ8064 is not set ++# CONFIG_PINCTRL_APQ8084 is not set ++# CONFIG_PINCTRL_IPQ4019 is not set ++# CONFIG_PINCTRL_IPQ8064 is not set ++# CONFIG_PINCTRL_IPQ8074 is not set ++# CONFIG_PINCTRL_MSM8660 is not set ++# CONFIG_PINCTRL_MSM8960 is not set ++# CONFIG_PINCTRL_MDM9615 is not set ++# CONFIG_PINCTRL_MSM8X74 is not set ++# CONFIG_PINCTRL_MSM8916 is not set ++# CONFIG_PINCTRL_MSM8994 is not set ++# CONFIG_PINCTRL_MSM8996 is not set ++# CONFIG_PINCTRL_MSM8998 is not set ++# CONFIG_PINCTRL_QCS404 is not set ++# CONFIG_PINCTRL_QDF2XXX is not set ++# CONFIG_PINCTRL_QCOM_SSBI_PMIC is not set ++# CONFIG_PINCTRL_SDM660 is not set ++# CONFIG_PINCTRL_SDM845 is not set ++# CONFIG_PINCTRL_SPRD is not set ++ ++# ++# MediaTek pinctrl drivers ++# ++CONFIG_EINT_MTK=y ++CONFIG_PINCTRL_MTK=y ++CONFIG_PINCTRL_MTK_MOORE=y ++CONFIG_PINCTRL_MTK_PARIS=y ++CONFIG_PINCTRL_MT2712=y ++CONFIG_PINCTRL_MT6765=y ++CONFIG_PINCTRL_MT6797=y ++CONFIG_PINCTRL_MT7622=y ++CONFIG_PINCTRL_MT8173=y ++CONFIG_PINCTRL_MT8183=y ++CONFIG_GPIOLIB=y ++CONFIG_GPIOLIB_FASTPATH_LIMIT=512 ++CONFIG_OF_GPIO=y ++CONFIG_GPIO_ACPI=y ++CONFIG_GPIOLIB_IRQCHIP=y ++# CONFIG_DEBUG_GPIO is not set ++CONFIG_GPIO_SYSFS=y ++CONFIG_GPIO_GENERIC=y ++ ++# ++# Memory mapped GPIO drivers ++# ++# CONFIG_GPIO_74XX_MMIO is not set ++# CONFIG_GPIO_ALTERA is not set ++# CONFIG_GPIO_AMDPT is not set ++# CONFIG_GPIO_CADENCE is not set ++# CONFIG_GPIO_DWAPB is not set ++# CONFIG_GPIO_EIC_SPRD is not set ++# CONFIG_GPIO_EXAR is not set ++# CONFIG_GPIO_FTGPIO010 is not set ++CONFIG_GPIO_GENERIC_PLATFORM=y ++# CONFIG_GPIO_GRGPIO is not set ++# CONFIG_GPIO_HLWD is not set ++# CONFIG_GPIO_MB86S7X is not set ++# CONFIG_GPIO_MOCKUP is not set ++# CONFIG_GPIO_MPC8XXX is not set ++CONFIG_GPIO_PL061=y ++# CONFIG_GPIO_SAMA5D2_PIOBU is not set ++# CONFIG_GPIO_SPRD is not set ++# CONFIG_GPIO_SYSCON is not set ++# CONFIG_GPIO_THUNDERX is not set ++CONFIG_GPIO_XGENE=y ++# CONFIG_GPIO_XGENE_SB is not set ++CONFIG_GPIO_XILINX=y ++# CONFIG_GPIO_ZYNQ is not set ++ ++# ++# I2C GPIO expanders ++# ++# CONFIG_GPIO_ADP5588 is not set ++# CONFIG_GPIO_ADNP is not set ++# CONFIG_GPIO_MAX7300 is not set ++# CONFIG_GPIO_MAX732X is not set ++# CONFIG_GPIO_PCA953X is not set ++# CONFIG_GPIO_PCF857X is not set ++# CONFIG_GPIO_TPIC2810 is not set ++ ++# ++# MFD GPIO expanders ++# ++# CONFIG_GPIO_ADP5520 is not set ++# CONFIG_GPIO_DA9052 is not set ++# CONFIG_GPIO_DA9055 is not set ++CONFIG_GPIO_PALMAS=y ++CONFIG_GPIO_RC5T583=y ++CONFIG_GPIO_STMPE=y ++CONFIG_GPIO_TC3589X=y ++CONFIG_GPIO_TPS6586X=y ++CONFIG_GPIO_TPS65910=y ++# CONFIG_GPIO_TPS65912 is not set ++# CONFIG_GPIO_TWL4030 is not set ++# CONFIG_GPIO_TWL6040 is not set ++# CONFIG_GPIO_WM831X is not set ++# CONFIG_GPIO_WM8350 is not set ++ ++# ++# PCI GPIO expanders ++# ++# CONFIG_GPIO_BT8XX is not set ++# CONFIG_GPIO_PCI_IDIO_16 is not set ++# CONFIG_GPIO_PCIE_IDIO_24 is not set ++# CONFIG_GPIO_RDC321X is not set ++ ++# ++# SPI GPIO expanders ++# ++# CONFIG_GPIO_74X164 is not set ++# CONFIG_GPIO_MAX3191X is not set ++# CONFIG_GPIO_MAX7301 is not set ++# CONFIG_GPIO_MC33880 is not set ++# CONFIG_GPIO_PISOSR is not set ++# CONFIG_GPIO_XRA1403 is not set ++ ++# ++# USB GPIO expanders ++# ++# CONFIG_W1 is not set ++CONFIG_POWER_AVS=y ++CONFIG_POWER_RESET=y ++CONFIG_POWER_RESET_AS3722=y ++# CONFIG_POWER_RESET_BRCMSTB is not set ++CONFIG_POWER_RESET_GPIO=y ++CONFIG_POWER_RESET_GPIO_RESTART=y ++CONFIG_POWER_RESET_HISI=y ++CONFIG_POWER_RESET_MSM=y ++CONFIG_POWER_RESET_LTC2952=y ++CONFIG_POWER_RESET_RESTART=y ++CONFIG_POWER_RESET_VEXPRESS=y ++# CONFIG_POWER_RESET_XGENE is not set ++CONFIG_POWER_RESET_SYSCON=y ++CONFIG_POWER_RESET_SYSCON_POWEROFF=y ++# CONFIG_SYSCON_REBOOT_MODE is not set ++CONFIG_POWER_SUPPLY=y ++# CONFIG_POWER_SUPPLY_DEBUG is not set ++# CONFIG_PDA_POWER is not set ++# CONFIG_MAX8925_POWER is not set ++# CONFIG_WM831X_BACKUP is not set ++# CONFIG_WM831X_POWER is not set ++# CONFIG_WM8350_POWER is not set ++# CONFIG_TEST_POWER is not set ++# CONFIG_BATTERY_88PM860X is not set ++# CONFIG_CHARGER_ADP5061 is not set ++# CONFIG_BATTERY_DS2780 is not set ++# CONFIG_BATTERY_DS2781 is not set ++# CONFIG_BATTERY_DS2782 is not set ++# CONFIG_BATTERY_SBS is not set ++# CONFIG_CHARGER_SBS is not set ++# CONFIG_BATTERY_BQ27XXX is not set ++# CONFIG_BATTERY_DA9030 is not set ++# CONFIG_BATTERY_DA9052 is not set ++# CONFIG_BATTERY_MAX17040 is not set ++# CONFIG_BATTERY_MAX17042 is not set ++# CONFIG_CHARGER_MAX8903 is not set ++# CONFIG_CHARGER_LP8727 is not set ++# CONFIG_CHARGER_GPIO is not set ++CONFIG_CHARGER_MANAGER=y ++# CONFIG_CHARGER_LTC3651 is not set ++# CONFIG_CHARGER_MAX14577 is not set ++# CONFIG_CHARGER_DETECTOR_MAX14656 is not set ++# CONFIG_CHARGER_MAX77693 is not set ++# CONFIG_CHARGER_BQ2415X is not set ++# CONFIG_CHARGER_BQ24190 is not set ++# CONFIG_CHARGER_BQ24257 is not set ++# CONFIG_CHARGER_BQ24735 is not set ++# CONFIG_CHARGER_BQ25890 is not set ++# CONFIG_CHARGER_SMB347 is not set ++# CONFIG_CHARGER_TPS65090 is not set ++# CONFIG_CHARGER_TPS65217 is not set ++# CONFIG_BATTERY_GAUGE_LTC2941 is not set ++# CONFIG_CHARGER_RT9455 is not set ++CONFIG_HWMON=y ++# CONFIG_HWMON_DEBUG_CHIP is not set ++ ++# ++# Native drivers ++# ++# CONFIG_SENSORS_AD7314 is not set ++# CONFIG_SENSORS_AD7414 is not set ++# CONFIG_SENSORS_AD7418 is not set ++# CONFIG_SENSORS_ADM1021 is not set ++# CONFIG_SENSORS_ADM1025 is not set ++# CONFIG_SENSORS_ADM1026 is not set ++# CONFIG_SENSORS_ADM1029 is not set ++# CONFIG_SENSORS_ADM1031 is not set ++# CONFIG_SENSORS_ADM9240 is not set ++# CONFIG_SENSORS_ADT7310 is not set ++# CONFIG_SENSORS_ADT7410 is not set ++# CONFIG_SENSORS_ADT7411 is not set ++# CONFIG_SENSORS_ADT7462 is not set ++# CONFIG_SENSORS_ADT7470 is not set ++# CONFIG_SENSORS_ADT7475 is not set ++# CONFIG_SENSORS_ASC7621 is not set ++# CONFIG_SENSORS_ASPEED is not set ++# CONFIG_SENSORS_ATXP1 is not set ++# CONFIG_SENSORS_DS620 is not set ++# CONFIG_SENSORS_DS1621 is not set ++# CONFIG_SENSORS_DA9052_ADC is not set ++# CONFIG_SENSORS_DA9055 is not set ++# CONFIG_SENSORS_I5K_AMB is not set ++# CONFIG_SENSORS_F71805F is not set ++# CONFIG_SENSORS_F71882FG is not set ++# CONFIG_SENSORS_F75375S is not set ++# CONFIG_SENSORS_FTSTEUTATES is not set ++# CONFIG_SENSORS_GL518SM is not set ++# CONFIG_SENSORS_GL520SM is not set ++# CONFIG_SENSORS_G760A is not set ++# CONFIG_SENSORS_G762 is not set ++# CONFIG_SENSORS_GPIO_FAN is not set ++# CONFIG_SENSORS_HIH6130 is not set ++# CONFIG_SENSORS_IBMAEM is not set ++# CONFIG_SENSORS_IBMPEX is not set ++# CONFIG_SENSORS_IT87 is not set ++# CONFIG_SENSORS_JC42 is not set ++# CONFIG_SENSORS_POWR1220 is not set ++# CONFIG_SENSORS_LINEAGE is not set ++# CONFIG_SENSORS_LTC2945 is not set ++# CONFIG_SENSORS_LTC2990 is not set ++# CONFIG_SENSORS_LTC4151 is not set ++# CONFIG_SENSORS_LTC4215 is not set ++# CONFIG_SENSORS_LTC4222 is not set ++# CONFIG_SENSORS_LTC4245 is not set ++# CONFIG_SENSORS_LTC4260 is not set ++# CONFIG_SENSORS_LTC4261 is not set ++# CONFIG_SENSORS_MAX1111 is not set ++# CONFIG_SENSORS_MAX16065 is not set ++# CONFIG_SENSORS_MAX1619 is not set ++# CONFIG_SENSORS_MAX1668 is not set ++# CONFIG_SENSORS_MAX197 is not set ++# CONFIG_SENSORS_MAX31722 is not set ++# CONFIG_SENSORS_MAX6621 is not set ++# CONFIG_SENSORS_MAX6639 is not set ++# CONFIG_SENSORS_MAX6642 is not set ++# CONFIG_SENSORS_MAX6650 is not set ++# CONFIG_SENSORS_MAX6697 is not set ++# CONFIG_SENSORS_MAX31790 is not set ++# CONFIG_SENSORS_MCP3021 is not set ++# CONFIG_SENSORS_TC654 is not set ++# CONFIG_SENSORS_ADCXX is not set ++# CONFIG_SENSORS_LM63 is not set ++# CONFIG_SENSORS_LM70 is not set ++# CONFIG_SENSORS_LM73 is not set ++# CONFIG_SENSORS_LM75 is not set ++# CONFIG_SENSORS_LM77 is not set ++# CONFIG_SENSORS_LM78 is not set ++# CONFIG_SENSORS_LM80 is not set ++# CONFIG_SENSORS_LM83 is not set ++# CONFIG_SENSORS_LM85 is not set ++# CONFIG_SENSORS_LM87 is not set ++# CONFIG_SENSORS_LM90 is not set ++# CONFIG_SENSORS_LM92 is not set ++# CONFIG_SENSORS_LM93 is not set ++# CONFIG_SENSORS_LM95234 is not set ++# CONFIG_SENSORS_LM95241 is not set ++# CONFIG_SENSORS_LM95245 is not set ++# CONFIG_SENSORS_PC87360 is not set ++# CONFIG_SENSORS_PC87427 is not set ++# CONFIG_SENSORS_NTC_THERMISTOR is not set ++# CONFIG_SENSORS_NCT6683 is not set ++# CONFIG_SENSORS_NCT6775 is not set ++# CONFIG_SENSORS_NCT7802 is not set ++# CONFIG_SENSORS_NCT7904 is not set ++# CONFIG_SENSORS_NPCM7XX is not set ++# CONFIG_SENSORS_OCC_P8_I2C is not set ++# CONFIG_SENSORS_PCF8591 is not set ++# CONFIG_PMBUS is not set ++# CONFIG_SENSORS_PWM_FAN is not set ++# CONFIG_SENSORS_SHT15 is not set ++# CONFIG_SENSORS_SHT21 is not set ++# CONFIG_SENSORS_SHT3x is not set ++# CONFIG_SENSORS_SHTC1 is not set ++# CONFIG_SENSORS_SIS5595 is not set ++# CONFIG_SENSORS_DME1737 is not set ++# CONFIG_SENSORS_EMC1403 is not set ++# CONFIG_SENSORS_EMC2103 is not set ++# CONFIG_SENSORS_EMC6W201 is not set ++# CONFIG_SENSORS_SMSC47M1 is not set ++# CONFIG_SENSORS_SMSC47M192 is not set ++# CONFIG_SENSORS_SMSC47B397 is not set ++# CONFIG_SENSORS_SCH5627 is not set ++# CONFIG_SENSORS_SCH5636 is not set ++# CONFIG_SENSORS_STTS751 is not set ++# CONFIG_SENSORS_SMM665 is not set ++# CONFIG_SENSORS_ADC128D818 is not set ++# CONFIG_SENSORS_ADS1015 is not set ++# CONFIG_SENSORS_ADS7828 is not set ++# CONFIG_SENSORS_ADS7871 is not set ++# CONFIG_SENSORS_AMC6821 is not set ++# CONFIG_SENSORS_INA209 is not set ++# CONFIG_SENSORS_INA2XX is not set ++# CONFIG_SENSORS_INA3221 is not set ++# CONFIG_SENSORS_TC74 is not set ++# CONFIG_SENSORS_THMC50 is not set ++# CONFIG_SENSORS_TMP102 is not set ++# CONFIG_SENSORS_TMP103 is not set ++# CONFIG_SENSORS_TMP108 is not set ++# CONFIG_SENSORS_TMP401 is not set ++# CONFIG_SENSORS_TMP421 is not set ++# CONFIG_SENSORS_VEXPRESS is not set ++# CONFIG_SENSORS_VIA686A is not set ++# CONFIG_SENSORS_VT1211 is not set ++# CONFIG_SENSORS_VT8231 is not set ++# CONFIG_SENSORS_W83773G is not set ++# CONFIG_SENSORS_W83781D is not set ++# CONFIG_SENSORS_W83791D is not set ++# CONFIG_SENSORS_W83792D is not set ++# CONFIG_SENSORS_W83793 is not set ++# CONFIG_SENSORS_W83795 is not set ++# CONFIG_SENSORS_W83L785TS is not set ++# CONFIG_SENSORS_W83L786NG is not set ++# CONFIG_SENSORS_W83627HF is not set ++# CONFIG_SENSORS_W83627EHF is not set ++# CONFIG_SENSORS_WM831X is not set ++# CONFIG_SENSORS_WM8350 is not set ++# CONFIG_SENSORS_XGENE is not set ++ ++# ++# ACPI drivers ++# ++# CONFIG_SENSORS_ACPI_POWER is not set ++CONFIG_THERMAL=y ++# CONFIG_THERMAL_STATISTICS is not set ++CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 ++CONFIG_THERMAL_HWMON=y ++CONFIG_THERMAL_OF=y ++CONFIG_THERMAL_WRITABLE_TRIPS=y ++CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y ++# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set ++# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set ++# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set ++CONFIG_THERMAL_GOV_FAIR_SHARE=y ++CONFIG_THERMAL_GOV_STEP_WISE=y ++CONFIG_THERMAL_GOV_BANG_BANG=y ++CONFIG_THERMAL_GOV_USER_SPACE=y ++CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y ++CONFIG_CPU_THERMAL=y ++# CONFIG_CLOCK_THERMAL is not set ++CONFIG_DEVFREQ_THERMAL=y ++CONFIG_THERMAL_EMULATION=y ++# CONFIG_HISI_THERMAL is not set ++# CONFIG_QORIQ_THERMAL is not set ++# CONFIG_MTK_THERMAL is not set ++ ++# ++# Qualcomm thermal drivers ++# ++CONFIG_WATCHDOG=y ++CONFIG_WATCHDOG_CORE=y ++# CONFIG_WATCHDOG_NOWAYOUT is not set ++CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y ++# CONFIG_WATCHDOG_SYSFS is not set ++ ++# ++# Watchdog Device Drivers ++# ++# CONFIG_SOFT_WATCHDOG is not set ++# CONFIG_DA9052_WATCHDOG is not set ++# CONFIG_DA9055_WATCHDOG is not set ++# CONFIG_DA9063_WATCHDOG is not set ++# CONFIG_GPIO_WATCHDOG is not set ++# CONFIG_WDAT_WDT is not set ++# CONFIG_WM831X_WATCHDOG is not set ++# CONFIG_WM8350_WATCHDOG is not set ++# CONFIG_XILINX_WATCHDOG is not set ++# CONFIG_ZIIRAVE_WATCHDOG is not set ++# CONFIG_ARM_SP805_WATCHDOG is not set ++# CONFIG_ARM_SBSA_WATCHDOG is not set ++# CONFIG_CADENCE_WATCHDOG is not set ++# CONFIG_DW_WATCHDOG is not set ++# CONFIG_TWL4030_WATCHDOG is not set ++# CONFIG_MAX63XX_WATCHDOG is not set ++# CONFIG_IMX2_WDT is not set ++# CONFIG_QCOM_WDT is not set ++# CONFIG_MEDIATEK_WATCHDOG is not set ++# CONFIG_SPRD_WATCHDOG is not set ++# CONFIG_ALIM7101_WDT is not set ++# CONFIG_I6300ESB_WDT is not set ++# CONFIG_MEN_A21_WDT is not set ++# CONFIG_XEN_WDT is not set ++ ++# ++# PCI-based Watchdog Cards ++# ++# CONFIG_PCIPCWATCHDOG is not set ++# CONFIG_WDTPCI is not set ++ ++# ++# USB-based Watchdog Cards ++# ++# CONFIG_USBPCWATCHDOG is not set ++ ++# ++# Watchdog Pretimeout Governors ++# ++# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set ++CONFIG_SSB_POSSIBLE=y ++# CONFIG_SSB is not set ++CONFIG_BCMA_POSSIBLE=y ++# CONFIG_BCMA is not set ++ ++# ++# Multifunction device drivers ++# ++CONFIG_MFD_CORE=y ++# CONFIG_MFD_ACT8945A is not set ++CONFIG_MFD_AS3711=y ++CONFIG_MFD_AS3722=y ++CONFIG_PMIC_ADP5520=y ++CONFIG_MFD_AAT2870_CORE=y ++# CONFIG_MFD_AT91_USART is not set ++# CONFIG_MFD_ATMEL_FLEXCOM is not set ++# CONFIG_MFD_ATMEL_HLCDC is not set ++# CONFIG_MFD_BCM590XX is not set ++# CONFIG_MFD_BD9571MWV is not set ++# CONFIG_MFD_AXP20X_I2C is not set ++# CONFIG_MFD_CROS_EC is not set ++# CONFIG_MFD_MADERA is not set ++CONFIG_PMIC_DA903X=y ++CONFIG_PMIC_DA9052=y ++CONFIG_MFD_DA9052_SPI=y ++CONFIG_MFD_DA9052_I2C=y ++CONFIG_MFD_DA9055=y ++# CONFIG_MFD_DA9062 is not set ++CONFIG_MFD_DA9063=y ++# CONFIG_MFD_DA9150 is not set ++# CONFIG_MFD_DLN2 is not set ++# CONFIG_MFD_MC13XXX_SPI is not set ++# CONFIG_MFD_MC13XXX_I2C is not set ++# CONFIG_MFD_HI6421_PMIC is not set ++# CONFIG_MFD_HI655X_PMIC is not set ++# CONFIG_HTC_PASIC3 is not set ++CONFIG_HTC_I2CPLD=y ++# CONFIG_LPC_ICH is not set ++# CONFIG_LPC_SCH is not set ++# CONFIG_MFD_JANZ_CMODIO is not set ++# CONFIG_MFD_KEMPLD is not set ++# CONFIG_MFD_88PM800 is not set ++# CONFIG_MFD_88PM805 is not set ++CONFIG_MFD_88PM860X=y ++CONFIG_MFD_MAX14577=y ++# CONFIG_MFD_MAX77620 is not set ++CONFIG_MFD_MAX77686=y ++CONFIG_MFD_MAX77693=y ++CONFIG_MFD_MAX77843=y ++# CONFIG_MFD_MAX8907 is not set ++CONFIG_MFD_MAX8925=y ++CONFIG_MFD_MAX8997=y ++CONFIG_MFD_MAX8998=y ++# CONFIG_MFD_MT6397 is not set ++# CONFIG_MFD_MENF21BMC is not set ++CONFIG_EZX_PCAP=y ++# CONFIG_MFD_CPCAP is not set ++# CONFIG_MFD_VIPERBOARD is not set ++# CONFIG_MFD_RETU is not set ++# CONFIG_MFD_PCF50633 is not set ++# CONFIG_MFD_QCOM_RPM is not set ++# CONFIG_MFD_RDC321X is not set ++# CONFIG_MFD_RT5033 is not set ++CONFIG_MFD_RC5T583=y ++# CONFIG_MFD_RK808 is not set ++# CONFIG_MFD_RN5T618 is not set ++CONFIG_MFD_SEC_CORE=y ++# CONFIG_MFD_SI476X_CORE is not set ++# CONFIG_MFD_SM501 is not set ++# CONFIG_MFD_SKY81452 is not set ++CONFIG_MFD_SMSC=y ++# CONFIG_MFD_SC27XX_PMIC is not set ++CONFIG_ABX500_CORE=y ++CONFIG_AB3100_CORE=y ++# CONFIG_AB3100_OTP is not set ++CONFIG_MFD_STMPE=y ++ ++# ++# STMicroelectronics STMPE Interface Drivers ++# ++CONFIG_STMPE_I2C=y ++CONFIG_STMPE_SPI=y ++CONFIG_MFD_SYSCON=y ++# CONFIG_MFD_TI_AM335X_TSCADC is not set ++# CONFIG_MFD_LP3943 is not set ++CONFIG_MFD_LP8788=y ++# CONFIG_MFD_TI_LMU is not set ++CONFIG_MFD_PALMAS=y ++# CONFIG_TPS6105X is not set ++# CONFIG_TPS65010 is not set ++# CONFIG_TPS6507X is not set ++# CONFIG_MFD_TPS65086 is not set ++CONFIG_MFD_TPS65090=y ++CONFIG_MFD_TPS65217=y ++# CONFIG_MFD_TPS68470 is not set ++# CONFIG_MFD_TI_LP873X is not set ++# CONFIG_MFD_TI_LP87565 is not set ++# CONFIG_MFD_TPS65218 is not set ++CONFIG_MFD_TPS6586X=y ++CONFIG_MFD_TPS65910=y ++CONFIG_MFD_TPS65912=y ++CONFIG_MFD_TPS65912_I2C=y ++CONFIG_MFD_TPS65912_SPI=y ++CONFIG_MFD_TPS80031=y ++CONFIG_TWL4030_CORE=y ++CONFIG_MFD_TWL4030_AUDIO=y ++CONFIG_TWL6040_CORE=y ++# CONFIG_MFD_WL1273_CORE is not set ++# CONFIG_MFD_LM3533 is not set ++CONFIG_MFD_TC3589X=y ++# CONFIG_MFD_VX855 is not set ++# CONFIG_MFD_ARIZONA_I2C is not set ++# CONFIG_MFD_ARIZONA_SPI is not set ++CONFIG_MFD_WM8400=y ++CONFIG_MFD_WM831X=y ++CONFIG_MFD_WM831X_I2C=y ++CONFIG_MFD_WM831X_SPI=y ++CONFIG_MFD_WM8350=y ++CONFIG_MFD_WM8350_I2C=y ++# CONFIG_MFD_WM8994 is not set ++# CONFIG_MFD_ROHM_BD718XX is not set ++CONFIG_MFD_VEXPRESS_SYSREG=y ++CONFIG_REGULATOR=y ++# CONFIG_REGULATOR_DEBUG is not set ++# CONFIG_REGULATOR_FIXED_VOLTAGE is not set ++# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set ++# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set ++# CONFIG_REGULATOR_88PG86X is not set ++# CONFIG_REGULATOR_88PM8607 is not set ++# CONFIG_REGULATOR_ACT8865 is not set ++# CONFIG_REGULATOR_AD5398 is not set ++# CONFIG_REGULATOR_ANATOP is not set ++# CONFIG_REGULATOR_AAT2870 is not set ++# CONFIG_REGULATOR_AB3100 is not set ++# CONFIG_REGULATOR_AS3711 is not set ++# CONFIG_REGULATOR_AS3722 is not set ++# CONFIG_REGULATOR_DA903X is not set ++# CONFIG_REGULATOR_DA9052 is not set ++# CONFIG_REGULATOR_DA9055 is not set ++# CONFIG_REGULATOR_DA9063 is not set ++# CONFIG_REGULATOR_DA9210 is not set ++# CONFIG_REGULATOR_DA9211 is not set ++# CONFIG_REGULATOR_FAN53555 is not set ++# CONFIG_REGULATOR_GPIO is not set ++# CONFIG_REGULATOR_ISL9305 is not set ++# CONFIG_REGULATOR_ISL6271A 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_LP8788 is not set ++# CONFIG_REGULATOR_LTC3589 is not set ++# CONFIG_REGULATOR_LTC3676 is not set ++# CONFIG_REGULATOR_MAX14577 is not set ++# CONFIG_REGULATOR_MAX1586 is not set ++# CONFIG_REGULATOR_MAX8649 is not set ++# CONFIG_REGULATOR_MAX8660 is not set ++# CONFIG_REGULATOR_MAX8925 is not set ++# CONFIG_REGULATOR_MAX8952 is not set ++# CONFIG_REGULATOR_MAX8973 is not set ++# CONFIG_REGULATOR_MAX8997 is not set ++# CONFIG_REGULATOR_MAX8998 is not set ++# CONFIG_REGULATOR_MAX77686 is not set ++# CONFIG_REGULATOR_MAX77693 is not set ++# CONFIG_REGULATOR_MAX77802 is not set ++# CONFIG_REGULATOR_MCP16502 is not set ++# CONFIG_REGULATOR_MT6311 is not set ++# CONFIG_REGULATOR_PALMAS is not set ++# CONFIG_REGULATOR_PCAP 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_RC5T583 is not set ++# CONFIG_REGULATOR_S2MPA01 is not set ++# CONFIG_REGULATOR_S2MPS11 is not set ++# CONFIG_REGULATOR_S5M8767 is not set ++# CONFIG_REGULATOR_SY8106A 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_TPS65090 is not set ++# CONFIG_REGULATOR_TPS65132 is not set ++CONFIG_REGULATOR_TPS65217=y ++# CONFIG_REGULATOR_TPS6524X is not set ++# CONFIG_REGULATOR_TPS6586X is not set ++# CONFIG_REGULATOR_TPS65910 is not set ++# CONFIG_REGULATOR_TPS65912 is not set ++# CONFIG_REGULATOR_TPS80031 is not set ++# CONFIG_REGULATOR_TWL4030 is not set ++# CONFIG_REGULATOR_VCTRL is not set ++# CONFIG_REGULATOR_VEXPRESS is not set ++# CONFIG_REGULATOR_WM831X is not set ++# CONFIG_REGULATOR_WM8350 is not set ++# CONFIG_REGULATOR_WM8400 is not set ++# CONFIG_RC_CORE is not set ++# CONFIG_MEDIA_SUPPORT is not set ++ ++# ++# Graphics support ++# ++CONFIG_VGA_ARB=y ++CONFIG_VGA_ARB_MAX_GPUS=16 ++CONFIG_DRM=m ++# CONFIG_DRM_DP_AUX_CHARDEV is not set ++# CONFIG_DRM_DEBUG_SELFTEST is not set ++CONFIG_DRM_KMS_HELPER=m ++CONFIG_DRM_KMS_FB_HELPER=y ++CONFIG_DRM_FBDEV_EMULATION=y ++CONFIG_DRM_FBDEV_OVERALLOC=100 ++# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set ++CONFIG_DRM_LOAD_EDID_FIRMWARE=y ++# CONFIG_DRM_DP_CEC is not set ++CONFIG_DRM_TTM=m ++CONFIG_DRM_SCHED=m ++ ++# ++# I2C encoder or helper chips ++# ++# CONFIG_DRM_I2C_CH7006 is not set ++# CONFIG_DRM_I2C_SIL164 is not set ++# CONFIG_DRM_I2C_NXP_TDA998X is not set ++# CONFIG_DRM_I2C_NXP_TDA9950 is not set ++# CONFIG_DRM_HDLCD is not set ++# CONFIG_DRM_MALI_DISPLAY is not set ++CONFIG_DRM_RADEON=m ++# CONFIG_DRM_RADEON_USERPTR is not set ++CONFIG_DRM_AMDGPU=m ++# CONFIG_DRM_AMDGPU_SI is not set ++# CONFIG_DRM_AMDGPU_CIK is not set ++CONFIG_DRM_AMDGPU_USERPTR=y ++# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set ++ ++# ++# ACP (Audio CoProcessor) Configuration ++# ++# CONFIG_DRM_AMD_ACP is not set ++ ++# ++# Display Engine Configuration ++# ++CONFIG_DRM_AMD_DC=y ++# CONFIG_DEBUG_KERNEL_DC is not set ++# CONFIG_HSA_AMD is not set ++ ++# ++# AMD Library routines ++# ++CONFIG_CHASH=m ++# CONFIG_CHASH_STATS is not set ++# CONFIG_CHASH_SELFTEST is not set ++# CONFIG_DRM_NOUVEAU is not set ++# CONFIG_DRM_VGEM is not set ++# CONFIG_DRM_VKMS is not set ++# CONFIG_DRM_UDL is not set ++# CONFIG_DRM_AST is not set ++# CONFIG_DRM_MGAG200 is not set ++# CONFIG_DRM_CIRRUS_QEMU is not set ++# CONFIG_DRM_RCAR_DW_HDMI is not set ++# CONFIG_DRM_RCAR_LVDS is not set ++# CONFIG_DRM_QXL is not set ++# CONFIG_DRM_BOCHS is not set ++# CONFIG_DRM_VIRTIO_GPU is not set ++# CONFIG_DRM_MSM is not set ++CONFIG_DRM_PANEL=y ++ ++# ++# Display Panels ++# ++# CONFIG_DRM_PANEL_ARM_VERSATILE is not set ++# CONFIG_DRM_PANEL_LVDS is not set ++# CONFIG_DRM_PANEL_SIMPLE is not set ++# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set ++# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set ++# CONFIG_DRM_PANEL_LG_LG4573 is not set ++# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set ++# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set ++# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set ++# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set ++CONFIG_DRM_BRIDGE=y ++CONFIG_DRM_PANEL_BRIDGE=y ++ ++# ++# Display Interface Bridges ++# ++# CONFIG_DRM_ANALOGIX_ANX78XX is not set ++# CONFIG_DRM_CDNS_DSI is not set ++# CONFIG_DRM_DUMB_VGA_DAC is not set ++# CONFIG_DRM_LVDS_ENCODER is not set ++# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set ++# CONFIG_DRM_NXP_PTN3460 is not set ++# CONFIG_DRM_PARADE_PS8622 is not set ++# CONFIG_DRM_SIL_SII8620 is not set ++# CONFIG_DRM_SII902X is not set ++# CONFIG_DRM_SII9234 is not set ++# CONFIG_DRM_THINE_THC63LVD1024 is not set ++# CONFIG_DRM_TOSHIBA_TC358764 is not set ++# CONFIG_DRM_TOSHIBA_TC358767 is not set ++# CONFIG_DRM_TI_TFP410 is not set ++# CONFIG_DRM_TI_SN65DSI86 is not set ++# CONFIG_DRM_I2C_ADV7511 is not set ++# CONFIG_DRM_ARCPGU is not set ++# CONFIG_DRM_HISI_HIBMC is not set ++# CONFIG_DRM_HISI_KIRIN is not set ++# CONFIG_DRM_MEDIATEK is not set ++# CONFIG_DRM_MXSFB is not set ++# CONFIG_DRM_TINYDRM is not set ++# CONFIG_DRM_PL111 is not set ++# CONFIG_DRM_XEN is not set ++# CONFIG_DRM_LEGACY is not set ++CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=m ++ ++# ++# Frame buffer Devices ++# ++CONFIG_FB_CMDLINE=y ++CONFIG_FB_NOTIFY=y ++CONFIG_FB=y ++CONFIG_FIRMWARE_EDID=y ++CONFIG_FB_CFB_FILLRECT=y ++CONFIG_FB_CFB_COPYAREA=y ++CONFIG_FB_CFB_IMAGEBLIT=y ++CONFIG_FB_SYS_FILLRECT=m ++CONFIG_FB_SYS_COPYAREA=m ++CONFIG_FB_SYS_IMAGEBLIT=m ++# CONFIG_FB_FOREIGN_ENDIAN is not set ++CONFIG_FB_SYS_FOPS=m ++CONFIG_FB_DEFERRED_IO=y ++CONFIG_FB_MODE_HELPERS=y ++CONFIG_FB_TILEBLITTING=y ++ ++# ++# Frame buffer hardware drivers ++# ++# CONFIG_FB_CIRRUS is not set ++# CONFIG_FB_PM2 is not set ++CONFIG_FB_ARMCLCD=y ++# CONFIG_FB_CYBER2000 is not set ++CONFIG_FB_ASILIANT=y ++CONFIG_FB_IMSTT=y ++# CONFIG_FB_UVESA is not set ++# CONFIG_FB_EFI is not set ++# CONFIG_FB_OPENCORES is not set ++# CONFIG_FB_S1D13XXX is not set ++# CONFIG_FB_NVIDIA is not set ++# CONFIG_FB_RIVA is not set ++# CONFIG_FB_I740 is not set ++# CONFIG_FB_MATROX is not set ++# CONFIG_FB_RADEON is not set ++# CONFIG_FB_ATY128 is not set ++# CONFIG_FB_ATY is not set ++# CONFIG_FB_S3 is not set ++# CONFIG_FB_SAVAGE is not set ++# CONFIG_FB_SIS is not set ++# CONFIG_FB_NEOMAGIC is not set ++# CONFIG_FB_KYRO is not set ++# CONFIG_FB_3DFX is not set ++# CONFIG_FB_VOODOO1 is not set ++# CONFIG_FB_VT8623 is not set ++# CONFIG_FB_TRIDENT is not set ++# CONFIG_FB_ARK is not set ++# CONFIG_FB_PM3 is not set ++# CONFIG_FB_CARMINE is not set ++# CONFIG_FB_SMSCUFX is not set ++# CONFIG_FB_UDL is not set ++# CONFIG_FB_IBM_GXT4500 is not set ++# CONFIG_FB_XILINX is not set ++# CONFIG_FB_VIRTUAL is not set ++# CONFIG_XEN_FBDEV_FRONTEND is not set ++# CONFIG_FB_METRONOME is not set ++# CONFIG_FB_MB862XX is not set ++CONFIG_FB_SIMPLE=y ++# CONFIG_FB_SSD1307 is not set ++# CONFIG_FB_SM712 is not set ++CONFIG_BACKLIGHT_LCD_SUPPORT=y ++# CONFIG_LCD_CLASS_DEVICE is not set ++CONFIG_BACKLIGHT_CLASS_DEVICE=y ++# CONFIG_BACKLIGHT_GENERIC is not set ++# CONFIG_BACKLIGHT_PWM is not set ++# CONFIG_BACKLIGHT_DA903X is not set ++# CONFIG_BACKLIGHT_DA9052 is not set ++# CONFIG_BACKLIGHT_MAX8925 is not set ++# CONFIG_BACKLIGHT_PM8941_WLED is not set ++# CONFIG_BACKLIGHT_WM831X is not set ++# CONFIG_BACKLIGHT_ADP5520 is not set ++# CONFIG_BACKLIGHT_ADP8860 is not set ++# CONFIG_BACKLIGHT_ADP8870 is not set ++# CONFIG_BACKLIGHT_88PM860X is not set ++# CONFIG_BACKLIGHT_AAT2870 is not set ++# CONFIG_BACKLIGHT_LM3630A is not set ++# CONFIG_BACKLIGHT_LM3639 is not set ++# CONFIG_BACKLIGHT_LP855X is not set ++# CONFIG_BACKLIGHT_LP8788 is not set ++# CONFIG_BACKLIGHT_PANDORA is not set ++# CONFIG_BACKLIGHT_TPS65217 is not set ++# CONFIG_BACKLIGHT_AS3711 is not set ++# CONFIG_BACKLIGHT_GPIO is not set ++# CONFIG_BACKLIGHT_LV5207LP is not set ++# CONFIG_BACKLIGHT_BD6107 is not set ++# CONFIG_BACKLIGHT_ARCXCNN is not set ++CONFIG_VIDEOMODE_HELPERS=y ++CONFIG_HDMI=y ++ ++# ++# Console display driver support ++# ++CONFIG_DUMMY_CONSOLE=y ++CONFIG_DUMMY_CONSOLE_COLUMNS=80 ++CONFIG_DUMMY_CONSOLE_ROWS=25 ++CONFIG_FRAMEBUFFER_CONSOLE=y ++CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y ++CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y ++# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set ++# CONFIG_LOGO is not set ++CONFIG_SOUND=m ++CONFIG_SND=m ++CONFIG_SND_TIMER=m ++CONFIG_SND_PCM=m ++CONFIG_SND_HWDEP=m ++CONFIG_SND_JACK=y ++CONFIG_SND_JACK_INPUT_DEV=y ++# CONFIG_SND_OSSEMUL is not set ++CONFIG_SND_PCM_TIMER=y ++# CONFIG_SND_HRTIMER is not set ++CONFIG_SND_DYNAMIC_MINORS=y ++CONFIG_SND_MAX_CARDS=32 ++CONFIG_SND_SUPPORT_OLD_API=y ++CONFIG_SND_PROC_FS=y ++CONFIG_SND_VERBOSE_PROCFS=y ++# CONFIG_SND_VERBOSE_PRINTK is not set ++# CONFIG_SND_DEBUG is not set ++CONFIG_SND_VMASTER=y ++# CONFIG_SND_SEQUENCER is not set ++CONFIG_SND_DRIVERS=y ++# CONFIG_SND_DUMMY is not set ++# CONFIG_SND_ALOOP is not set ++# CONFIG_SND_MTPAV is not set ++# CONFIG_SND_SERIAL_U16550 is not set ++# CONFIG_SND_MPU401 is not set ++CONFIG_SND_PCI=y ++# CONFIG_SND_AD1889 is not set ++# CONFIG_SND_ATIIXP is not set ++# CONFIG_SND_ATIIXP_MODEM is not set ++# CONFIG_SND_AU8810 is not set ++# CONFIG_SND_AU8820 is not set ++# CONFIG_SND_AU8830 is not set ++# CONFIG_SND_AW2 is not set ++# CONFIG_SND_BT87X is not set ++# CONFIG_SND_CA0106 is not set ++# CONFIG_SND_CMIPCI is not set ++# CONFIG_SND_OXYGEN is not set ++# CONFIG_SND_CS4281 is not set ++# CONFIG_SND_CS46XX is not set ++# CONFIG_SND_CTXFI is not set ++# CONFIG_SND_DARLA20 is not set ++# CONFIG_SND_GINA20 is not set ++# CONFIG_SND_LAYLA20 is not set ++# CONFIG_SND_DARLA24 is not set ++# CONFIG_SND_GINA24 is not set ++# CONFIG_SND_LAYLA24 is not set ++# CONFIG_SND_MONA is not set ++# CONFIG_SND_MIA is not set ++# CONFIG_SND_ECHO3G is not set ++# CONFIG_SND_INDIGO is not set ++# CONFIG_SND_INDIGOIO is not set ++# CONFIG_SND_INDIGODJ is not set ++# CONFIG_SND_INDIGOIOX is not set ++# CONFIG_SND_INDIGODJX is not set ++# CONFIG_SND_ENS1370 is not set ++# CONFIG_SND_ENS1371 is not set ++# CONFIG_SND_FM801 is not set ++# CONFIG_SND_HDSP is not set ++# CONFIG_SND_HDSPM is not set ++# CONFIG_SND_ICE1724 is not set ++# CONFIG_SND_INTEL8X0 is not set ++# CONFIG_SND_INTEL8X0M is not set ++# CONFIG_SND_KORG1212 is not set ++# CONFIG_SND_LOLA is not set ++# CONFIG_SND_LX6464ES is not set ++# CONFIG_SND_MIXART is not set ++# CONFIG_SND_NM256 is not set ++# CONFIG_SND_PCXHR is not set ++# CONFIG_SND_RIPTIDE is not set ++# CONFIG_SND_RME32 is not set ++# CONFIG_SND_RME96 is not set ++# CONFIG_SND_RME9652 is not set ++# CONFIG_SND_SE6X is not set ++# CONFIG_SND_VIA82XX is not set ++# CONFIG_SND_VIA82XX_MODEM is not set ++# CONFIG_SND_VIRTUOSO is not set ++# CONFIG_SND_VX222 is not set ++# CONFIG_SND_YMFPCI is not set ++ ++# ++# HD-Audio ++# ++CONFIG_SND_HDA=m ++CONFIG_SND_HDA_INTEL=m ++CONFIG_SND_HDA_HWDEP=y ++CONFIG_SND_HDA_RECONFIG=y ++CONFIG_SND_HDA_INPUT_BEEP=y ++CONFIG_SND_HDA_INPUT_BEEP_MODE=0 ++CONFIG_SND_HDA_PATCH_LOADER=y ++# CONFIG_SND_HDA_CODEC_REALTEK is not set ++# CONFIG_SND_HDA_CODEC_ANALOG is not set ++# CONFIG_SND_HDA_CODEC_SIGMATEL is not set ++# CONFIG_SND_HDA_CODEC_VIA is not set ++CONFIG_SND_HDA_CODEC_HDMI=m ++# CONFIG_SND_HDA_CODEC_CIRRUS is not set ++# CONFIG_SND_HDA_CODEC_CONEXANT is not set ++# CONFIG_SND_HDA_CODEC_CA0110 is not set ++# CONFIG_SND_HDA_CODEC_CA0132 is not set ++# CONFIG_SND_HDA_CODEC_CMEDIA is not set ++# CONFIG_SND_HDA_CODEC_SI3054 is not set ++# CONFIG_SND_HDA_GENERIC is not set ++CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 ++CONFIG_SND_HDA_CORE=m ++CONFIG_SND_HDA_PREALLOC_SIZE=64 ++CONFIG_SND_SPI=y ++CONFIG_SND_USB=y ++# CONFIG_SND_USB_AUDIO is not set ++# CONFIG_SND_USB_UA101 is not set ++# CONFIG_SND_USB_CAIAQ is not set ++# CONFIG_SND_USB_6FIRE is not set ++# CONFIG_SND_USB_HIFACE is not set ++# CONFIG_SND_BCD2000 is not set ++# CONFIG_SND_USB_POD is not set ++# CONFIG_SND_USB_PODHD is not set ++# CONFIG_SND_USB_TONEPORT is not set ++# CONFIG_SND_USB_VARIAX is not set ++# CONFIG_SND_SOC is not set ++# CONFIG_SND_XEN_FRONTEND is not set ++ ++# ++# HID support ++# ++CONFIG_HID=m ++CONFIG_HID_BATTERY_STRENGTH=y ++CONFIG_HIDRAW=y ++# CONFIG_UHID is not set ++CONFIG_HID_GENERIC=m ++ ++# ++# Special HID drivers ++# ++# CONFIG_HID_A4TECH is not set ++# CONFIG_HID_ACCUTOUCH is not set ++# CONFIG_HID_ACRUX is not set ++# CONFIG_HID_APPLE is not set ++# CONFIG_HID_APPLEIR is not set ++# CONFIG_HID_ASUS is not set ++# CONFIG_HID_AUREAL is not set ++# CONFIG_HID_BELKIN is not set ++# CONFIG_HID_BETOP_FF is not set ++# CONFIG_HID_BIGBEN_FF is not set ++# CONFIG_HID_CHERRY is not set ++# CONFIG_HID_CHICONY is not set ++# CONFIG_HID_CORSAIR is not set ++# CONFIG_HID_COUGAR is not set ++# CONFIG_HID_PRODIKEYS is not set ++# CONFIG_HID_CMEDIA is not set ++# CONFIG_HID_CP2112 is not set ++# CONFIG_HID_CYPRESS is not set ++# CONFIG_HID_DRAGONRISE is not set ++# CONFIG_HID_EMS_FF is not set ++# CONFIG_HID_ELAN is not set ++# CONFIG_HID_ELECOM is not set ++# CONFIG_HID_ELO is not set ++# CONFIG_HID_EZKEY is not set ++# CONFIG_HID_GEMBIRD is not set ++# CONFIG_HID_GFRM is not set ++# CONFIG_HID_HOLTEK is not set ++# CONFIG_HID_GT683R is not set ++# CONFIG_HID_KEYTOUCH is not set ++# CONFIG_HID_KYE is not set ++# CONFIG_HID_UCLOGIC is not set ++# CONFIG_HID_WALTOP is not set ++# CONFIG_HID_GYRATION is not set ++# CONFIG_HID_ICADE is not set ++# CONFIG_HID_ITE is not set ++# CONFIG_HID_JABRA is not set ++# CONFIG_HID_TWINHAN is not set ++# CONFIG_HID_KENSINGTON is not set ++# CONFIG_HID_LCPOWER is not set ++# CONFIG_HID_LED is not set ++# CONFIG_HID_LENOVO is not set ++# CONFIG_HID_LOGITECH is not set ++# CONFIG_HID_MAGICMOUSE is not set ++# CONFIG_HID_MAYFLASH is not set ++# CONFIG_HID_REDRAGON is not set ++# CONFIG_HID_MICROSOFT is not set ++# CONFIG_HID_MONTEREY is not set ++# CONFIG_HID_MULTITOUCH is not set ++# CONFIG_HID_NTI is not set ++# CONFIG_HID_NTRIG is not set ++# CONFIG_HID_ORTEK is not set ++# CONFIG_HID_PANTHERLORD is not set ++# CONFIG_HID_PENMOUNT is not set ++# CONFIG_HID_PETALYNX is not set ++# CONFIG_HID_PICOLCD is not set ++# CONFIG_HID_PLANTRONICS is not set ++# CONFIG_HID_PRIMAX is not set ++# CONFIG_HID_RETRODE is not set ++# CONFIG_HID_ROCCAT is not set ++# CONFIG_HID_SAITEK is not set ++# CONFIG_HID_SAMSUNG is not set ++# CONFIG_HID_SONY is not set ++# CONFIG_HID_SPEEDLINK is not set ++# CONFIG_HID_STEAM is not set ++# CONFIG_HID_STEELSERIES is not set ++# CONFIG_HID_SUNPLUS is not set ++# CONFIG_HID_RMI is not set ++# CONFIG_HID_GREENASIA is not set ++# CONFIG_HID_SMARTJOYPLUS is not set ++# CONFIG_HID_TIVO is not set ++# CONFIG_HID_TOPSEED is not set ++# CONFIG_HID_THINGM is not set ++# CONFIG_HID_THRUSTMASTER is not set ++# CONFIG_HID_UDRAW_PS3 is not set ++# CONFIG_HID_WACOM is not set ++# CONFIG_HID_WIIMOTE is not set ++# CONFIG_HID_XINMO is not set ++# CONFIG_HID_ZEROPLUS is not set ++# CONFIG_HID_ZYDACRON is not set ++# CONFIG_HID_SENSOR_HUB is not set ++# CONFIG_HID_ALPS is not set ++ ++# ++# USB HID support ++# ++CONFIG_USB_HID=m ++CONFIG_HID_PID=y ++CONFIG_USB_HIDDEV=y ++ ++# ++# USB HID Boot Protocol drivers ++# ++# CONFIG_USB_KBD is not set ++# CONFIG_USB_MOUSE is not set ++ ++# ++# I2C HID support ++# ++# CONFIG_I2C_HID is not set ++CONFIG_USB_OHCI_LITTLE_ENDIAN=y ++CONFIG_USB_SUPPORT=y ++CONFIG_USB_COMMON=y ++CONFIG_USB_ARCH_HAS_HCD=y ++CONFIG_USB=y ++CONFIG_USB_PCI=y ++CONFIG_USB_ANNOUNCE_NEW_DEVICES=y ++ ++# ++# Miscellaneous USB options ++# ++CONFIG_USB_DEFAULT_PERSIST=y ++CONFIG_USB_DYNAMIC_MINORS=y ++# CONFIG_USB_OTG is not set ++# CONFIG_USB_OTG_WHITELIST is not set ++# CONFIG_USB_OTG_BLACKLIST_HUB is not set ++# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set ++# CONFIG_USB_MON is not set ++# CONFIG_USB_WUSB_CBAF is not set ++ ++# ++# USB Host Controller Drivers ++# ++# CONFIG_USB_C67X00_HCD is not set ++CONFIG_USB_XHCI_HCD=y ++# CONFIG_USB_XHCI_DBGCAP is not set ++CONFIG_USB_XHCI_PCI=y ++# CONFIG_USB_XHCI_PLATFORM is not set ++# CONFIG_USB_XHCI_MTK is not set ++CONFIG_USB_EHCI_HCD=y ++CONFIG_USB_EHCI_ROOT_HUB_TT=y ++CONFIG_USB_EHCI_TT_NEWSCHED=y ++CONFIG_USB_EHCI_PCI=y ++# CONFIG_USB_EHCI_HCD_PLATFORM is not set ++# CONFIG_USB_OXU210HP_HCD is not set ++# CONFIG_USB_ISP116X_HCD is not set ++# CONFIG_USB_FOTG210_HCD is not set ++# CONFIG_USB_MAX3421_HCD is not set ++CONFIG_USB_OHCI_HCD=y ++CONFIG_USB_OHCI_HCD_PCI=y ++# CONFIG_USB_OHCI_HCD_PLATFORM is not set ++CONFIG_USB_UHCI_HCD=y ++# CONFIG_USB_SL811_HCD is not set ++# CONFIG_USB_R8A66597_HCD is not set ++# CONFIG_USB_HCD_TEST_MODE is not set ++ ++# ++# USB Device Class drivers ++# ++# CONFIG_USB_ACM is not set ++# CONFIG_USB_PRINTER is not set ++# CONFIG_USB_WDM is not set ++# CONFIG_USB_TMC is not set ++ ++# ++# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ++# ++ ++# ++# also be needed; see USB_STORAGE Help for more info ++# ++# CONFIG_USB_STORAGE is not set ++ ++# ++# USB Imaging devices ++# ++# CONFIG_USB_MDC800 is not set ++# CONFIG_USB_MICROTEK is not set ++# CONFIG_USBIP_CORE is not set ++# CONFIG_USB_MTU3 is not set ++# CONFIG_USB_MUSB_HDRC is not set ++# CONFIG_USB_DWC3 is not set ++CONFIG_USB_DWC2=y ++CONFIG_USB_DWC2_HOST=y ++ ++# ++# Gadget/Dual-role mode requires USB Gadget support to be enabled ++# ++# CONFIG_USB_DWC2_PCI is not set ++# CONFIG_USB_DWC2_DEBUG is not set ++# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set ++# CONFIG_USB_CHIPIDEA is not set ++# CONFIG_USB_ISP1760 is not set ++ ++# ++# USB port drivers ++# ++# CONFIG_USB_SERIAL is not set ++ ++# ++# USB Miscellaneous drivers ++# ++# CONFIG_USB_EMI62 is not set ++# CONFIG_USB_EMI26 is not set ++# CONFIG_USB_ADUTUX is not set ++# CONFIG_USB_SEVSEG is not set ++# CONFIG_USB_RIO500 is not set ++# CONFIG_USB_LEGOTOWER is not set ++# CONFIG_USB_LCD is not set ++# CONFIG_USB_CYPRESS_CY7C63 is not set ++# CONFIG_USB_CYTHERM is not set ++# CONFIG_USB_IDMOUSE is not set ++# CONFIG_USB_FTDI_ELAN is not set ++# CONFIG_USB_APPLEDISPLAY is not set ++# CONFIG_USB_SISUSBVGA is not set ++# CONFIG_USB_LD is not set ++# CONFIG_USB_TRANCEVIBRATOR is not set ++# CONFIG_USB_IOWARRIOR is not set ++# CONFIG_USB_TEST is not set ++# CONFIG_USB_EHSET_TEST_FIXTURE is not set ++# CONFIG_USB_ISIGHTFW is not set ++# CONFIG_USB_YUREX is not set ++# CONFIG_USB_EZUSB_FX2 is not set ++# CONFIG_USB_HUB_USB251XB is not set ++# CONFIG_USB_HSIC_USB3503 is not set ++# CONFIG_USB_HSIC_USB4604 is not set ++# CONFIG_USB_LINK_LAYER_TEST is not set ++# CONFIG_USB_CHAOSKEY is not set ++ ++# ++# USB Physical Layer drivers ++# ++# CONFIG_NOP_USB_XCEIV is not set ++# CONFIG_USB_GPIO_VBUS is not set ++# CONFIG_USB_ISP1301 is not set ++CONFIG_USB_ULPI=y ++CONFIG_USB_ULPI_VIEWPORT=y ++# CONFIG_USB_GADGET is not set ++# CONFIG_TYPEC is not set ++# CONFIG_USB_ROLE_SWITCH is not set ++CONFIG_USB_LED_TRIG=y ++# CONFIG_USB_ULPI_BUS is not set ++# CONFIG_UWB is not set ++CONFIG_MMC=y ++CONFIG_PWRSEQ_EMMC=y ++CONFIG_PWRSEQ_SIMPLE=y ++CONFIG_MMC_BLOCK=y ++CONFIG_MMC_BLOCK_MINORS=8 ++# CONFIG_SDIO_UART is not set ++# CONFIG_MMC_TEST is not set ++ ++# ++# MMC/SD/SDIO Host Controller Drivers ++# ++# CONFIG_MMC_DEBUG is not set ++CONFIG_MMC_ARMMMCI=y ++CONFIG_MMC_STM32_SDMMC=y ++# CONFIG_MMC_SDHCI is not set ++# CONFIG_MMC_TIFM_SD is not set ++# CONFIG_MMC_SPI is not set ++# CONFIG_MMC_CB710 is not set ++# CONFIG_MMC_VIA_SDMMC is not set ++# CONFIG_MMC_DW is not set ++# CONFIG_MMC_VUB300 is not set ++# CONFIG_MMC_USHC is not set ++# CONFIG_MMC_USDHI6ROL0 is not set ++# CONFIG_MMC_CQHCI is not set ++# CONFIG_MMC_TOSHIBA_PCI is not set ++# CONFIG_MMC_MTK is not set ++# CONFIG_MEMSTICK is not set ++CONFIG_NEW_LEDS=y ++CONFIG_LEDS_CLASS=y ++# CONFIG_LEDS_CLASS_FLASH is not set ++# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set ++ ++# ++# LED drivers ++# ++# CONFIG_LEDS_88PM860X is not set ++# CONFIG_LEDS_AN30259A is not set ++# CONFIG_LEDS_BCM6328 is not set ++# CONFIG_LEDS_BCM6358 is not set ++# CONFIG_LEDS_CR0014114 is not set ++# CONFIG_LEDS_LM3530 is not set ++# CONFIG_LEDS_LM3642 is not set ++# CONFIG_LEDS_LM3692X is not set ++# CONFIG_LEDS_PCA9532 is not set ++# CONFIG_LEDS_GPIO is not set ++# CONFIG_LEDS_LP3944 is not set ++# CONFIG_LEDS_LP3952 is not set ++# CONFIG_LEDS_LP5521 is not set ++# CONFIG_LEDS_LP5523 is not set ++# CONFIG_LEDS_LP5562 is not set ++# CONFIG_LEDS_LP8501 is not set ++# CONFIG_LEDS_LP8788 is not set ++# CONFIG_LEDS_LP8860 is not set ++# CONFIG_LEDS_PCA955X is not set ++# CONFIG_LEDS_PCA963X is not set ++# CONFIG_LEDS_WM831X_STATUS is not set ++# CONFIG_LEDS_WM8350 is not set ++# CONFIG_LEDS_DA903X is not set ++# CONFIG_LEDS_DA9052 is not set ++# CONFIG_LEDS_DAC124S085 is not set ++# CONFIG_LEDS_PWM is not set ++# CONFIG_LEDS_REGULATOR is not set ++# CONFIG_LEDS_BD2802 is not set ++# CONFIG_LEDS_LT3593 is not set ++# CONFIG_LEDS_ADP5520 is not set ++# CONFIG_LEDS_TCA6507 is not set ++# CONFIG_LEDS_TLC591XX is not set ++# CONFIG_LEDS_MAX8997 is not set ++# CONFIG_LEDS_LM355x is not set ++# CONFIG_LEDS_IS31FL319X is not set ++# CONFIG_LEDS_IS31FL32XX is not set ++ ++# ++# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) ++# ++# CONFIG_LEDS_BLINKM is not set ++CONFIG_LEDS_SYSCON=y ++# CONFIG_LEDS_MLXREG is not set ++# CONFIG_LEDS_USER is not set ++ ++# ++# LED Triggers ++# ++CONFIG_LEDS_TRIGGERS=y ++# CONFIG_LEDS_TRIGGER_TIMER is not set ++# CONFIG_LEDS_TRIGGER_ONESHOT is not set ++# CONFIG_LEDS_TRIGGER_DISK is not set ++# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set ++# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set ++CONFIG_LEDS_TRIGGER_CPU=y ++# CONFIG_LEDS_TRIGGER_ACTIVITY is not set ++# CONFIG_LEDS_TRIGGER_GPIO is not set ++# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set ++ ++# ++# iptables trigger is under Netfilter config (LED target) ++# ++# CONFIG_LEDS_TRIGGER_TRANSIENT is not set ++# CONFIG_LEDS_TRIGGER_CAMERA is not set ++# CONFIG_LEDS_TRIGGER_PANIC is not set ++# CONFIG_LEDS_TRIGGER_NETDEV is not set ++# CONFIG_LEDS_TRIGGER_PATTERN is not set ++# CONFIG_LEDS_TRIGGER_AUDIO is not set ++# CONFIG_ACCESSIBILITY is not set ++# CONFIG_INFINIBAND is not set ++CONFIG_EDAC_SUPPORT=y ++CONFIG_EDAC=y ++# CONFIG_EDAC_LEGACY_SYSFS is not set ++# CONFIG_EDAC_DEBUG is not set ++# CONFIG_EDAC_LAYERSCAPE is not set ++# CONFIG_EDAC_THUNDERX is not set ++# CONFIG_EDAC_ALTERA is not set ++# CONFIG_EDAC_SYNOPSYS is not set ++# CONFIG_EDAC_XGENE is not set ++CONFIG_RTC_LIB=y ++CONFIG_RTC_CLASS=y ++CONFIG_RTC_HCTOSYS=y ++CONFIG_RTC_HCTOSYS_DEVICE="rtc0" ++CONFIG_RTC_SYSTOHC=y ++CONFIG_RTC_SYSTOHC_DEVICE="rtc0" ++# CONFIG_RTC_DEBUG is not set ++CONFIG_RTC_NVMEM=y ++ ++# ++# RTC interfaces ++# ++CONFIG_RTC_INTF_SYSFS=y ++CONFIG_RTC_INTF_PROC=y ++CONFIG_RTC_INTF_DEV=y ++# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set ++# CONFIG_RTC_DRV_TEST is not set ++ ++# ++# I2C RTC drivers ++# ++# CONFIG_RTC_DRV_88PM860X is not set ++# CONFIG_RTC_DRV_ABB5ZES3 is not set ++# CONFIG_RTC_DRV_ABX80X is not set ++# CONFIG_RTC_DRV_AS3722 is not set ++# CONFIG_RTC_DRV_DS1307 is not set ++# CONFIG_RTC_DRV_DS1374 is not set ++# CONFIG_RTC_DRV_DS1672 is not set ++# CONFIG_RTC_DRV_HYM8563 is not set ++# CONFIG_RTC_DRV_LP8788 is not set ++# CONFIG_RTC_DRV_MAX6900 is not set ++# CONFIG_RTC_DRV_MAX8925 is not set ++# CONFIG_RTC_DRV_MAX8998 is not set ++# CONFIG_RTC_DRV_MAX8997 is not set ++# CONFIG_RTC_DRV_MAX77686 is not set ++# CONFIG_RTC_DRV_RS5C372 is not set ++# CONFIG_RTC_DRV_ISL1208 is not set ++# CONFIG_RTC_DRV_ISL12022 is not set ++# CONFIG_RTC_DRV_ISL12026 is not set ++# CONFIG_RTC_DRV_X1205 is not set ++# CONFIG_RTC_DRV_PCF8523 is not set ++# CONFIG_RTC_DRV_PCF85063 is not set ++# CONFIG_RTC_DRV_PCF85363 is not set ++# CONFIG_RTC_DRV_PCF8563 is not set ++# CONFIG_RTC_DRV_PCF8583 is not set ++# CONFIG_RTC_DRV_M41T80 is not set ++# CONFIG_RTC_DRV_BQ32K is not set ++# CONFIG_RTC_DRV_TWL4030 is not set ++# CONFIG_RTC_DRV_PALMAS is not set ++# CONFIG_RTC_DRV_TPS6586X is not set ++# CONFIG_RTC_DRV_TPS65910 is not set ++# CONFIG_RTC_DRV_TPS80031 is not set ++# CONFIG_RTC_DRV_RC5T583 is not set ++# CONFIG_RTC_DRV_S35390A is not set ++# CONFIG_RTC_DRV_FM3130 is not set ++# CONFIG_RTC_DRV_RX8010 is not set ++# CONFIG_RTC_DRV_RX8581 is not set ++# CONFIG_RTC_DRV_RX8025 is not set ++# CONFIG_RTC_DRV_EM3027 is not set ++# CONFIG_RTC_DRV_RV8803 is not set ++# CONFIG_RTC_DRV_S5M is not set ++ ++# ++# SPI RTC drivers ++# ++# CONFIG_RTC_DRV_M41T93 is not set ++# CONFIG_RTC_DRV_M41T94 is not set ++# CONFIG_RTC_DRV_DS1302 is not set ++# CONFIG_RTC_DRV_DS1305 is not set ++# CONFIG_RTC_DRV_DS1343 is not set ++# CONFIG_RTC_DRV_DS1347 is not set ++# CONFIG_RTC_DRV_DS1390 is not set ++# CONFIG_RTC_DRV_MAX6916 is not set ++# CONFIG_RTC_DRV_R9701 is not set ++# CONFIG_RTC_DRV_RX4581 is not set ++# CONFIG_RTC_DRV_RX6110 is not set ++# CONFIG_RTC_DRV_RS5C348 is not set ++# CONFIG_RTC_DRV_MAX6902 is not set ++# CONFIG_RTC_DRV_PCF2123 is not set ++# CONFIG_RTC_DRV_MCP795 is not set ++CONFIG_RTC_I2C_AND_SPI=y ++ ++# ++# SPI and I2C RTC drivers ++# ++# CONFIG_RTC_DRV_DS3232 is not set ++# CONFIG_RTC_DRV_PCF2127 is not set ++# CONFIG_RTC_DRV_RV3029C2 is not set ++ ++# ++# Platform RTC drivers ++# ++# CONFIG_RTC_DRV_DS1286 is not set ++# CONFIG_RTC_DRV_DS1511 is not set ++# CONFIG_RTC_DRV_DS1553 is not set ++# CONFIG_RTC_DRV_DS1685_FAMILY is not set ++# CONFIG_RTC_DRV_DS1742 is not set ++# CONFIG_RTC_DRV_DS2404 is not set ++# CONFIG_RTC_DRV_DA9052 is not set ++# CONFIG_RTC_DRV_DA9055 is not set ++# CONFIG_RTC_DRV_DA9063 is not set ++CONFIG_RTC_DRV_EFI=m ++# CONFIG_RTC_DRV_STK17TA8 is not set ++# CONFIG_RTC_DRV_M48T86 is not set ++# CONFIG_RTC_DRV_M48T35 is not set ++# CONFIG_RTC_DRV_M48T59 is not set ++# CONFIG_RTC_DRV_MSM6242 is not set ++# CONFIG_RTC_DRV_BQ4802 is not set ++# CONFIG_RTC_DRV_RP5C01 is not set ++# CONFIG_RTC_DRV_V3020 is not set ++# CONFIG_RTC_DRV_WM831X is not set ++# CONFIG_RTC_DRV_WM8350 is not set ++# CONFIG_RTC_DRV_AB3100 is not set ++# CONFIG_RTC_DRV_ZYNQMP is not set ++ ++# ++# on-CPU RTC drivers ++# ++# CONFIG_RTC_DRV_PL030 is not set ++# CONFIG_RTC_DRV_PL031 is not set ++# CONFIG_RTC_DRV_FTRTC010 is not set ++# CONFIG_RTC_DRV_PCAP is not set ++# CONFIG_RTC_DRV_SNVS is not set ++# CONFIG_RTC_DRV_MT7622 is not set ++CONFIG_RTC_DRV_XGENE=y ++# CONFIG_RTC_DRV_R7301 is not set ++ ++# ++# HID Sensor RTC drivers ++# ++# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set ++CONFIG_DMADEVICES=y ++# CONFIG_DMADEVICES_DEBUG is not set ++ ++# ++# DMA Devices ++# ++CONFIG_DMA_ENGINE=y ++CONFIG_DMA_VIRTUAL_CHANNELS=y ++CONFIG_DMA_ACPI=y ++CONFIG_DMA_OF=y ++# CONFIG_ALTERA_MSGDMA is not set ++CONFIG_AMBA_PL08X=y ++# CONFIG_DW_AXI_DMAC is not set ++# CONFIG_FSL_EDMA is not set ++# CONFIG_INTEL_IDMA64 is not set ++# CONFIG_K3_DMA is not set ++# CONFIG_MV_XOR_V2 is not set ++# CONFIG_PL330_DMA is not set ++# CONFIG_SPRD_DMA is not set ++# CONFIG_XGENE_DMA is not set ++# CONFIG_XILINX_DMA is not set ++# CONFIG_XILINX_ZYNQMP_DMA is not set ++# CONFIG_MTK_HSDMA is not set ++# CONFIG_MTK_CQDMA is not set ++# CONFIG_QCOM_BAM_DMA is not set ++# CONFIG_QCOM_HIDMA_MGMT is not set ++# CONFIG_QCOM_HIDMA is not set ++# CONFIG_DW_DMAC is not set ++# CONFIG_DW_DMAC_PCI is not set ++ ++# ++# DMA Clients ++# ++CONFIG_ASYNC_TX_DMA=y ++# CONFIG_DMATEST is not set ++ ++# ++# DMABUF options ++# ++CONFIG_SYNC_FILE=y ++# CONFIG_SW_SYNC is not set ++# CONFIG_UDMABUF is not set ++CONFIG_AUXDISPLAY=y ++# CONFIG_HD44780 is not set ++# CONFIG_IMG_ASCII_LCD is not set ++# CONFIG_HT16K33 is not set ++# CONFIG_UIO is not set ++# CONFIG_VFIO is not set ++CONFIG_VIRT_DRIVERS=y ++CONFIG_VIRTIO=y ++CONFIG_VIRTIO_MENU=y ++CONFIG_VIRTIO_PCI=y ++CONFIG_VIRTIO_PCI_LEGACY=y ++CONFIG_VIRTIO_BALLOON=y ++# CONFIG_VIRTIO_INPUT is not set ++CONFIG_VIRTIO_MMIO=y ++CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y ++ ++# ++# Microsoft Hyper-V guest support ++# ++ ++# ++# Xen driver support ++# ++CONFIG_XEN_BALLOON=y ++CONFIG_XEN_SCRUB_PAGES_DEFAULT=y ++# CONFIG_XEN_DEV_EVTCHN is not set ++CONFIG_XEN_BACKEND=y ++# CONFIG_XENFS is not set ++CONFIG_XEN_SYS_HYPERVISOR=y ++CONFIG_XEN_XENBUS_FRONTEND=y ++# CONFIG_XEN_GNTDEV is not set ++# CONFIG_XEN_GRANT_DEV_ALLOC is not set ++# CONFIG_XEN_GRANT_DMA_ALLOC is not set ++CONFIG_SWIOTLB_XEN=y ++# CONFIG_XEN_PVCALLS_FRONTEND is not set ++# CONFIG_XEN_PVCALLS_BACKEND is not set ++CONFIG_XEN_PRIVCMD=m ++CONFIG_XEN_EFI=y ++CONFIG_XEN_AUTO_XLATE=y ++CONFIG_STAGING=y ++# CONFIG_COMEDI is not set ++# CONFIG_RTL8192U is not set ++# CONFIG_RTLLIB is not set ++# CONFIG_R8712U is not set ++# CONFIG_RTS5208 is not set ++# CONFIG_FB_SM750 is not set ++# CONFIG_FB_XGI is not set ++ ++# ++# Speakup console speech ++# ++# CONFIG_SPEAKUP is not set ++CONFIG_STAGING_MEDIA=y ++ ++# ++# Android ++# ++# CONFIG_STAGING_BOARD is not set ++# CONFIG_LTE_GDM724X is not set ++# CONFIG_GS_FPGABOOT is not set ++# CONFIG_UNISYSSPAR is not set ++# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set ++# CONFIG_FB_TFT is not set ++# CONFIG_MOST is not set ++# CONFIG_KS7010 is not set ++# CONFIG_GREYBUS is not set ++# CONFIG_PI433 is not set ++# CONFIG_MTK_MMC is not set ++ ++# ++# Gasket devices ++# ++# CONFIG_STAGING_GASKET_FRAMEWORK is not set ++# CONFIG_XIL_AXIS_FIFO is not set ++# CONFIG_EROFS_FS is not set ++# CONFIG_GOLDFISH is not set ++CONFIG_CHROME_PLATFORMS=y ++# CONFIG_CHROMEOS_TBMC is not set ++# CONFIG_CROS_KBD_LED_BACKLIGHT is not set ++CONFIG_CLKDEV_LOOKUP=y ++CONFIG_HAVE_CLK_PREPARE=y ++CONFIG_COMMON_CLK=y ++ ++# ++# Common Clock Framework ++# ++# CONFIG_COMMON_CLK_WM831X is not set ++CONFIG_COMMON_CLK_VERSATILE=y ++CONFIG_CLK_SP810=y ++CONFIG_CLK_VEXPRESS_OSC=y ++# CONFIG_CLK_HSDK is not set ++# CONFIG_COMMON_CLK_MAX77686 is not set ++# CONFIG_COMMON_CLK_MAX9485 is not set ++# CONFIG_COMMON_CLK_SI5351 is not set ++# CONFIG_COMMON_CLK_SI514 is not set ++# CONFIG_COMMON_CLK_SI544 is not set ++# CONFIG_COMMON_CLK_SI570 is not set ++# CONFIG_COMMON_CLK_CDCE706 is not set ++# CONFIG_COMMON_CLK_CDCE925 is not set ++# CONFIG_COMMON_CLK_CS2000_CP is not set ++# CONFIG_COMMON_CLK_S2MPS11 is not set ++# CONFIG_CLK_TWL6040 is not set ++CONFIG_CLK_QORIQ=y ++CONFIG_COMMON_CLK_XGENE=y ++# CONFIG_COMMON_CLK_PALMAS is not set ++# CONFIG_COMMON_CLK_PWM is not set ++# CONFIG_COMMON_CLK_VC5 is not set ++CONFIG_COMMON_CLK_IPROC=y ++CONFIG_CLK_BCM_NS2=y ++CONFIG_CLK_BCM_SR=y ++CONFIG_COMMON_CLK_HI3516CV300=y ++CONFIG_COMMON_CLK_HI3519=y ++CONFIG_COMMON_CLK_HI3660=y ++CONFIG_COMMON_CLK_HI3670=y ++CONFIG_COMMON_CLK_HI3798CV200=y ++CONFIG_COMMON_CLK_HI6220=y ++CONFIG_RESET_HISI=y ++CONFIG_STUB_CLK_HI6220=y ++CONFIG_STUB_CLK_HI3660=y ++ ++# ++# Clock driver for MediaTek SoC ++# ++CONFIG_COMMON_CLK_MEDIATEK=y ++CONFIG_COMMON_CLK_MT2712=y ++# CONFIG_COMMON_CLK_MT2712_BDPSYS is not set ++# CONFIG_COMMON_CLK_MT2712_IMGSYS is not set ++# CONFIG_COMMON_CLK_MT2712_JPGDECSYS is not set ++# CONFIG_COMMON_CLK_MT2712_MFGCFG is not set ++# CONFIG_COMMON_CLK_MT2712_MMSYS is not set ++# CONFIG_COMMON_CLK_MT2712_VDECSYS is not set ++# CONFIG_COMMON_CLK_MT2712_VENCSYS is not set ++CONFIG_COMMON_CLK_MT6797=y ++# CONFIG_COMMON_CLK_MT6797_MMSYS is not set ++# CONFIG_COMMON_CLK_MT6797_IMGSYS is not set ++# CONFIG_COMMON_CLK_MT6797_VDECSYS is not set ++# CONFIG_COMMON_CLK_MT6797_VENCSYS is not set ++CONFIG_COMMON_CLK_MT7622=y ++# CONFIG_COMMON_CLK_MT7622_ETHSYS is not set ++# CONFIG_COMMON_CLK_MT7622_HIFSYS is not set ++# CONFIG_COMMON_CLK_MT7622_AUDSYS is not set ++CONFIG_COMMON_CLK_MT8173=y ++# CONFIG_COMMON_CLK_QCOM is not set ++CONFIG_SPRD_COMMON_CLK=y ++CONFIG_SPRD_SC9860_CLK=y ++# CONFIG_COMMON_CLK_ZYNQMP is not set ++# CONFIG_HWSPINLOCK is not set ++ ++# ++# Clock Source drivers ++# ++CONFIG_TIMER_OF=y ++CONFIG_TIMER_ACPI=y ++CONFIG_TIMER_PROBE=y ++CONFIG_CLKSRC_MMIO=y ++CONFIG_ARM_ARCH_TIMER=y ++CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y ++CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y ++CONFIG_FSL_ERRATUM_A008585=y ++CONFIG_HISILICON_ERRATUM_161010101=y ++CONFIG_ARM64_ERRATUM_858921=y ++CONFIG_ARM_TIMER_SP804=y ++CONFIG_MTK_TIMER=y ++CONFIG_SPRD_TIMER=y ++CONFIG_CLKSRC_VERSATILE=y ++CONFIG_MAILBOX=y ++# CONFIG_ARM_MHU is not set ++# CONFIG_PLATFORM_MHU is not set ++CONFIG_PL320_MBOX=y ++CONFIG_PCC=y ++# CONFIG_ALTERA_MBOX is not set ++CONFIG_HI3660_MBOX=y ++# CONFIG_HI6220_MBOX is not set ++# CONFIG_MAILBOX_TEST is not set ++# CONFIG_QCOM_APCS_IPC is not set ++# CONFIG_XGENE_SLIMPRO_MBOX is not set ++# CONFIG_BCM_PDC_MBOX is not set ++CONFIG_BCM_FLEXRM_MBOX=m ++# CONFIG_MTK_CMDQ_MBOX is not set ++CONFIG_IOMMU_API=y ++CONFIG_IOMMU_SUPPORT=y ++ ++# ++# Generic IOMMU Pagetable Support ++# ++CONFIG_IOMMU_IO_PGTABLE=y ++CONFIG_IOMMU_IO_PGTABLE_LPAE=y ++# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set ++# CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set ++# CONFIG_IOMMU_DEBUGFS is not set ++# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set ++CONFIG_IOMMU_IOVA=y ++CONFIG_OF_IOMMU=y ++CONFIG_IOMMU_DMA=y ++CONFIG_ARM_SMMU=y ++CONFIG_ARM_SMMU_V3=y ++# CONFIG_MTK_IOMMU is not set ++# CONFIG_QCOM_IOMMU is not set ++ ++# ++# Remoteproc drivers ++# ++# CONFIG_REMOTEPROC is not set ++ ++# ++# Rpmsg drivers ++# ++# CONFIG_RPMSG_QCOM_GLINK_RPM is not set ++# CONFIG_RPMSG_VIRTIO is not set ++# CONFIG_SOUNDWIRE is not set ++ ++# ++# SOC (System On Chip) specific Drivers ++# ++ ++# ++# Amlogic SoC drivers ++# ++ ++# ++# Broadcom SoC drivers ++# ++# CONFIG_SOC_BRCMSTB is not set ++ ++# ++# NXP/Freescale QorIQ SoC drivers ++# ++# CONFIG_FSL_DPAA is not set ++ ++# ++# i.MX SoC drivers ++# ++ ++# ++# MediaTek SoC drivers ++# ++# CONFIG_MTK_CMDQ is not set ++CONFIG_MTK_INFRACFG=y ++# CONFIG_MTK_PMIC_WRAP is not set ++CONFIG_MTK_SCPSYS=y ++ ++# ++# Qualcomm SoC drivers ++# ++# CONFIG_QCOM_COMMAND_DB is not set ++# CONFIG_QCOM_GENI_SE is not set ++# CONFIG_QCOM_GSBI is not set ++# CONFIG_QCOM_LLCC is not set ++# CONFIG_QCOM_RMTFS_MEM is not set ++# CONFIG_QCOM_RPMH is not set ++CONFIG_SOC_TI=y ++ ++# ++# Xilinx SoC drivers ++# ++# CONFIG_XILINX_VCU is not set ++CONFIG_PM_DEVFREQ=y ++ ++# ++# DEVFREQ Governors ++# ++CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y ++CONFIG_DEVFREQ_GOV_PERFORMANCE=y ++CONFIG_DEVFREQ_GOV_POWERSAVE=y ++CONFIG_DEVFREQ_GOV_USERSPACE=y ++# CONFIG_DEVFREQ_GOV_PASSIVE is not set ++ ++# ++# DEVFREQ Drivers ++# ++CONFIG_PM_DEVFREQ_EVENT=y ++CONFIG_EXTCON=y ++ ++# ++# Extcon Device Drivers ++# ++# CONFIG_EXTCON_GPIO is not set ++# CONFIG_EXTCON_MAX14577 is not set ++# CONFIG_EXTCON_MAX3355 is not set ++# CONFIG_EXTCON_MAX77693 is not set ++# CONFIG_EXTCON_MAX77843 is not set ++# CONFIG_EXTCON_MAX8997 is not set ++# CONFIG_EXTCON_PALMAS is not set ++# CONFIG_EXTCON_QCOM_SPMI_MISC is not set ++# CONFIG_EXTCON_RT8973A is not set ++# CONFIG_EXTCON_SM5502 is not set ++# CONFIG_EXTCON_USB_GPIO is not set ++CONFIG_MEMORY=y ++# CONFIG_ARM_PL172_MPMC is not set ++# CONFIG_IIO is not set ++# CONFIG_NTB is not set ++CONFIG_VME_BUS=y ++ ++# ++# VME Bridge Drivers ++# ++# CONFIG_VME_TSI148 is not set ++# CONFIG_VME_FAKE is not set ++ ++# ++# VME Board Drivers ++# ++# CONFIG_VMIVME_7805 is not set ++ ++# ++# VME Device Drivers ++# ++# CONFIG_VME_USER is not set ++CONFIG_PWM=y ++CONFIG_PWM_SYSFS=y ++CONFIG_PWM_BCM_IPROC=y ++# CONFIG_PWM_BERLIN is not set ++# CONFIG_PWM_FSL_FTM is not set ++# CONFIG_PWM_HIBVT is not set ++# CONFIG_PWM_MTK_DISP is not set ++# CONFIG_PWM_MEDIATEK is not set ++# CONFIG_PWM_PCA9685 is not set ++# CONFIG_PWM_STMPE is not set ++# CONFIG_PWM_TWL is not set ++# CONFIG_PWM_TWL_LED is not set ++ ++# ++# IRQ chip support ++# ++CONFIG_IRQCHIP=y ++CONFIG_ARM_GIC=y ++CONFIG_ARM_GIC_MAX_NR=1 ++CONFIG_ARM_GIC_V2M=y ++CONFIG_ARM_GIC_V3=y ++CONFIG_ARM_GIC_V3_ITS=y ++CONFIG_ARM_GIC_V3_ITS_PCI=y ++CONFIG_DW_APB_ICTL=y ++CONFIG_HISILICON_IRQ_MBIGEN=y ++CONFIG_LS_SCFG_MSI=y ++CONFIG_PARTITION_PERCPU=y ++# CONFIG_QCOM_IRQ_COMBINER is not set ++# CONFIG_QCOM_PDC is not set ++# CONFIG_IPACK_BUS is not set ++CONFIG_RESET_CONTROLLER=y ++CONFIG_RESET_BERLIN=y ++# CONFIG_RESET_QCOM_AOSS is not set ++# CONFIG_RESET_QCOM_PDC is not set ++CONFIG_RESET_SIMPLE=y ++# CONFIG_RESET_TI_SYSCON is not set ++CONFIG_COMMON_RESET_HI3660=y ++CONFIG_COMMON_RESET_HI6220=y ++# CONFIG_FMC is not set ++ ++# ++# PHY Subsystem ++# ++CONFIG_GENERIC_PHY=y ++CONFIG_PHY_XGENE=y ++# CONFIG_BCM_KONA_USB2_PHY is not set ++# CONFIG_PHY_BCM_NS_USB2 is not set ++# CONFIG_PHY_BCM_NS_USB3 is not set ++CONFIG_PHY_NS2_PCIE=y ++CONFIG_PHY_NS2_USB_DRD=y ++CONFIG_PHY_BRCM_SATA=y ++CONFIG_PHY_BCM_SR_PCIE=y ++# CONFIG_PHY_CADENCE_DP is not set ++# CONFIG_PHY_CADENCE_SIERRA is not set ++# CONFIG_PHY_FSL_IMX8MQ_USB is not set ++# CONFIG_PHY_HI6220_USB is not set ++# CONFIG_PHY_HISTB_COMBPHY is not set ++# CONFIG_PHY_HISI_INNO_USB2 is not set ++# CONFIG_PHY_BERLIN_SATA is not set ++# CONFIG_PHY_BERLIN_USB is not set ++# CONFIG_PHY_PXA_28NM_HSIC is not set ++# CONFIG_PHY_PXA_28NM_USB2 is not set ++# CONFIG_PHY_MTK_TPHY is not set ++# CONFIG_PHY_MTK_XSPHY is not set ++# CONFIG_PHY_MAPPHONE_MDM6600 is not set ++# CONFIG_PHY_OCELOT_SERDES is not set ++# CONFIG_PHY_QCOM_APQ8064_SATA is not set ++# CONFIG_PHY_QCOM_IPQ806X_SATA is not set ++# CONFIG_PHY_QCOM_QMP is not set ++# CONFIG_PHY_QCOM_QUSB2 is not set ++# CONFIG_PHY_QCOM_UFS is not set ++# CONFIG_PHY_SAMSUNG_USB2 is not set ++CONFIG_POWERCAP=y ++# CONFIG_IDLE_INJECT is not set ++# CONFIG_MCB is not set ++ ++# ++# Performance monitor support ++# ++CONFIG_ARM_CCI_PMU=y ++CONFIG_ARM_CCI400_PMU=y ++# CONFIG_ARM_CCI5xx_PMU is not set ++CONFIG_ARM_CCN=y ++CONFIG_ARM_PMU=y ++CONFIG_ARM_PMU_ACPI=y ++# CONFIG_ARM_DSU_PMU is not set ++# CONFIG_HISI_PMU is not set ++# CONFIG_QCOM_L2_PMU is not set ++# CONFIG_QCOM_L3_PMU is not set ++# CONFIG_XGENE_PMU is not set ++# CONFIG_ARM_SPE_PMU is not set ++CONFIG_RAS=y ++ ++# ++# Android ++# ++# CONFIG_ANDROID is not set ++CONFIG_LIBNVDIMM=y ++# CONFIG_BLK_DEV_PMEM is not set ++# CONFIG_ND_BLK is not set ++CONFIG_ND_CLAIM=y ++CONFIG_BTT=y ++CONFIG_OF_PMEM=y ++CONFIG_NVDIMM_KEYS=y ++CONFIG_DAX=y ++# CONFIG_DEV_DAX is not set ++CONFIG_NVMEM=y ++# CONFIG_MTK_EFUSE is not set ++# CONFIG_QCOM_QFPROM is not set ++CONFIG_NVMEM_BCM_OCOTP=y ++ ++# ++# HW tracing support ++# ++# CONFIG_STM is not set ++# CONFIG_INTEL_TH is not set ++# CONFIG_FPGA is not set ++# CONFIG_FSI is not set ++# CONFIG_TEE is not set ++CONFIG_PM_OPP=y ++# CONFIG_SIOX is not set ++# CONFIG_SLIMBUS is not set ++ ++# ++# File systems ++# ++CONFIG_DCACHE_WORD_ACCESS=y ++CONFIG_FS_IOMAP=y ++# CONFIG_EXT2_FS is not set ++# CONFIG_EXT3_FS is not set ++CONFIG_EXT4_FS=y ++CONFIG_EXT4_USE_FOR_EXT2=y ++CONFIG_EXT4_FS_POSIX_ACL=y ++CONFIG_EXT4_FS_SECURITY=y ++# CONFIG_EXT4_ENCRYPTION is not set ++# CONFIG_EXT4_DEBUG is not set ++CONFIG_JBD2=y ++# CONFIG_JBD2_DEBUG is not set ++CONFIG_FS_MBCACHE=y ++# CONFIG_REISERFS_FS is not set ++# CONFIG_JFS_FS is not set ++# CONFIG_XFS_FS is not set ++# CONFIG_GFS2_FS is not set ++# CONFIG_BTRFS_FS is not set ++# CONFIG_NILFS2_FS is not set ++# CONFIG_F2FS_FS is not set ++CONFIG_FS_DAX=y ++CONFIG_FS_POSIX_ACL=y ++CONFIG_EXPORTFS=y ++# CONFIG_EXPORTFS_BLOCK_OPS is not set ++CONFIG_FILE_LOCKING=y ++CONFIG_MANDATORY_FILE_LOCKING=y ++# CONFIG_FS_ENCRYPTION is not set ++CONFIG_FSNOTIFY=y ++CONFIG_DNOTIFY=y ++CONFIG_INOTIFY_USER=y ++CONFIG_FANOTIFY=y ++CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y ++CONFIG_QUOTA=y ++CONFIG_QUOTA_NETLINK_INTERFACE=y ++# CONFIG_PRINT_QUOTA_WARNING is not set ++# CONFIG_QUOTA_DEBUG is not set ++# CONFIG_QFMT_V1 is not set ++# CONFIG_QFMT_V2 is not set ++CONFIG_QUOTACTL=y ++CONFIG_AUTOFS4_FS=m ++CONFIG_AUTOFS_FS=m ++CONFIG_FUSE_FS=y ++# CONFIG_CUSE is not set ++# CONFIG_OVERLAY_FS is not set ++ ++# ++# Caches ++# ++# CONFIG_FSCACHE is not set ++ ++# ++# CD-ROM/DVD Filesystems ++# ++# CONFIG_ISO9660_FS is not set ++# CONFIG_UDF_FS is not set ++ ++# ++# DOS/FAT/NT Filesystems ++# ++CONFIG_FAT_FS=y ++# CONFIG_MSDOS_FS is not set ++CONFIG_VFAT_FS=y ++CONFIG_FAT_DEFAULT_CODEPAGE=437 ++CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" ++# CONFIG_FAT_DEFAULT_UTF8 is not set ++# CONFIG_NTFS_FS is not set ++ ++# ++# Pseudo filesystems ++# ++CONFIG_PROC_FS=y ++CONFIG_PROC_KCORE=y ++CONFIG_PROC_SYSCTL=y ++CONFIG_PROC_PAGE_MONITOR=y ++CONFIG_PROC_CHILDREN=y ++CONFIG_KERNFS=y ++CONFIG_SYSFS=y ++CONFIG_TMPFS=y ++CONFIG_TMPFS_POSIX_ACL=y ++CONFIG_TMPFS_XATTR=y ++CONFIG_HUGETLBFS=y ++CONFIG_HUGETLB_PAGE=y ++CONFIG_MEMFD_CREATE=y ++CONFIG_ARCH_HAS_GIGANTIC_PAGE=y ++# CONFIG_CONFIGFS_FS is not set ++CONFIG_EFIVAR_FS=y ++CONFIG_MISC_FILESYSTEMS=y ++# CONFIG_ORANGEFS_FS is not set ++# CONFIG_ADFS_FS is not set ++# CONFIG_AFFS_FS is not set ++CONFIG_ECRYPT_FS=y ++CONFIG_ECRYPT_FS_MESSAGING=y ++# CONFIG_HFS_FS is not set ++# CONFIG_HFSPLUS_FS is not set ++# CONFIG_BEFS_FS is not set ++# CONFIG_BFS_FS is not set ++# CONFIG_EFS_FS is not set ++# CONFIG_CRAMFS is not set ++# CONFIG_SQUASHFS is not set ++# CONFIG_VXFS_FS is not set ++# CONFIG_MINIX_FS is not set ++# CONFIG_OMFS_FS is not set ++# CONFIG_HPFS_FS is not set ++# CONFIG_QNX4FS_FS is not set ++# CONFIG_QNX6FS_FS is not set ++# CONFIG_ROMFS_FS is not set ++CONFIG_PSTORE=y ++CONFIG_PSTORE_DEFLATE_COMPRESS=y ++# CONFIG_PSTORE_LZO_COMPRESS is not set ++# CONFIG_PSTORE_LZ4_COMPRESS is not set ++# CONFIG_PSTORE_LZ4HC_COMPRESS is not set ++# CONFIG_PSTORE_842_COMPRESS is not set ++# CONFIG_PSTORE_ZSTD_COMPRESS is not set ++CONFIG_PSTORE_COMPRESS=y ++CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y ++CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" ++# CONFIG_PSTORE_CONSOLE is not set ++# CONFIG_PSTORE_PMSG is not set ++# CONFIG_PSTORE_FTRACE is not set ++# CONFIG_PSTORE_RAM is not set ++# CONFIG_SYSV_FS is not set ++# CONFIG_UFS_FS is not set ++CONFIG_NETWORK_FILESYSTEMS=y ++# CONFIG_NFS_FS is not set ++# CONFIG_NFSD is not set ++# CONFIG_CEPH_FS is not set ++# CONFIG_CIFS is not set ++# CONFIG_CODA_FS is not set ++# CONFIG_AFS_FS is not set ++CONFIG_NLS=y ++CONFIG_NLS_DEFAULT="utf8" ++CONFIG_NLS_CODEPAGE_437=y ++# CONFIG_NLS_CODEPAGE_737 is not set ++# CONFIG_NLS_CODEPAGE_775 is not set ++# CONFIG_NLS_CODEPAGE_850 is not set ++# CONFIG_NLS_CODEPAGE_852 is not set ++# CONFIG_NLS_CODEPAGE_855 is not set ++# CONFIG_NLS_CODEPAGE_857 is not set ++# CONFIG_NLS_CODEPAGE_860 is not set ++# CONFIG_NLS_CODEPAGE_861 is not set ++# CONFIG_NLS_CODEPAGE_862 is not set ++# CONFIG_NLS_CODEPAGE_863 is not set ++# CONFIG_NLS_CODEPAGE_864 is not set ++# CONFIG_NLS_CODEPAGE_865 is not set ++# CONFIG_NLS_CODEPAGE_866 is not set ++# CONFIG_NLS_CODEPAGE_869 is not set ++# CONFIG_NLS_CODEPAGE_936 is not set ++# CONFIG_NLS_CODEPAGE_950 is not set ++# CONFIG_NLS_CODEPAGE_932 is not set ++# CONFIG_NLS_CODEPAGE_949 is not set ++# CONFIG_NLS_CODEPAGE_874 is not set ++# CONFIG_NLS_ISO8859_8 is not set ++# CONFIG_NLS_CODEPAGE_1250 is not set ++# CONFIG_NLS_CODEPAGE_1251 is not set ++# CONFIG_NLS_ASCII is not set ++CONFIG_NLS_ISO8859_1=m ++# CONFIG_NLS_ISO8859_2 is not set ++# CONFIG_NLS_ISO8859_3 is not set ++# CONFIG_NLS_ISO8859_4 is not set ++# CONFIG_NLS_ISO8859_5 is not set ++# CONFIG_NLS_ISO8859_6 is not set ++# CONFIG_NLS_ISO8859_7 is not set ++# CONFIG_NLS_ISO8859_9 is not set ++# CONFIG_NLS_ISO8859_13 is not set ++# CONFIG_NLS_ISO8859_14 is not set ++# CONFIG_NLS_ISO8859_15 is not set ++# CONFIG_NLS_KOI8_R is not set ++# CONFIG_NLS_KOI8_U is not set ++# CONFIG_NLS_MAC_ROMAN is not set ++# CONFIG_NLS_MAC_CELTIC is not set ++# CONFIG_NLS_MAC_CENTEURO is not set ++# CONFIG_NLS_MAC_CROATIAN is not set ++# CONFIG_NLS_MAC_CYRILLIC is not set ++# CONFIG_NLS_MAC_GAELIC is not set ++# CONFIG_NLS_MAC_GREEK is not set ++# CONFIG_NLS_MAC_ICELAND is not set ++# CONFIG_NLS_MAC_INUIT is not set ++# CONFIG_NLS_MAC_ROMANIAN is not set ++# CONFIG_NLS_MAC_TURKISH is not set ++# CONFIG_NLS_UTF8 is not set ++ ++# ++# Security options ++# ++CONFIG_KEYS=y ++CONFIG_KEYS_COMPAT=y ++CONFIG_PERSISTENT_KEYRINGS=y ++CONFIG_BIG_KEYS=y ++CONFIG_TRUSTED_KEYS=y ++CONFIG_ENCRYPTED_KEYS=y ++# CONFIG_KEY_DH_OPERATIONS is not set ++# CONFIG_SECURITY_DMESG_RESTRICT is not set ++CONFIG_SECURITY=y ++CONFIG_SECURITY_WRITABLE_HOOKS=y ++CONFIG_SECURITYFS=y ++CONFIG_SECURITY_NETWORK=y ++CONFIG_SECURITY_PATH=y ++CONFIG_LSM_MMAP_MIN_ADDR=0 ++CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y ++# CONFIG_HARDENED_USERCOPY is not set ++# CONFIG_FORTIFY_SOURCE is not set ++# CONFIG_STATIC_USERMODEHELPER is not set ++CONFIG_SECURITY_SELINUX=y ++CONFIG_SECURITY_SELINUX_BOOTPARAM=y ++CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=0 ++CONFIG_SECURITY_SELINUX_DISABLE=y ++CONFIG_SECURITY_SELINUX_DEVELOP=y ++CONFIG_SECURITY_SELINUX_AVC_STATS=y ++CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 ++CONFIG_SECURITY_SMACK=y ++# CONFIG_SECURITY_SMACK_BRINGUP is not set ++CONFIG_SECURITY_SMACK_NETFILTER=y ++# CONFIG_SECURITY_SMACK_APPEND_SIGNALS is not set ++CONFIG_SECURITY_TOMOYO=y ++CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 ++CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 ++# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set ++CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" ++CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" ++CONFIG_SECURITY_APPARMOR=y ++CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 ++CONFIG_SECURITY_APPARMOR_HASH=y ++CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y ++# CONFIG_SECURITY_APPARMOR_DEBUG is not set ++# CONFIG_SECURITY_LOADPIN is not set ++CONFIG_SECURITY_YAMA=y ++CONFIG_INTEGRITY=y ++CONFIG_INTEGRITY_SIGNATURE=y ++CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y ++CONFIG_INTEGRITY_TRUSTED_KEYRING=y ++CONFIG_INTEGRITY_AUDIT=y ++CONFIG_IMA=y ++CONFIG_IMA_MEASURE_PCR_IDX=10 ++CONFIG_IMA_LSM_RULES=y ++# CONFIG_IMA_TEMPLATE is not set ++CONFIG_IMA_NG_TEMPLATE=y ++# CONFIG_IMA_SIG_TEMPLATE is not set ++CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" ++CONFIG_IMA_DEFAULT_HASH_SHA1=y ++# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set ++# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set ++CONFIG_IMA_DEFAULT_HASH="sha1" ++# CONFIG_IMA_WRITE_POLICY is not set ++# CONFIG_IMA_READ_POLICY is not set ++CONFIG_IMA_APPRAISE=y ++# CONFIG_IMA_ARCH_POLICY is not set ++# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set ++CONFIG_IMA_APPRAISE_BOOTPARAM=y ++CONFIG_IMA_TRUSTED_KEYRING=y ++# CONFIG_IMA_BLACKLIST_KEYRING is not set ++# CONFIG_IMA_LOAD_X509 is not set ++CONFIG_EVM=y ++CONFIG_EVM_ATTR_FSUUID=y ++CONFIG_EVM_EXTRA_SMACK_XATTRS=y ++# CONFIG_EVM_ADD_XATTRS is not set ++# CONFIG_EVM_LOAD_X509 is not set ++# CONFIG_DEFAULT_SECURITY_SELINUX is not set ++# CONFIG_DEFAULT_SECURITY_SMACK is not set ++# CONFIG_DEFAULT_SECURITY_TOMOYO is not set ++CONFIG_DEFAULT_SECURITY_APPARMOR=y ++# CONFIG_DEFAULT_SECURITY_DAC is not set ++CONFIG_DEFAULT_SECURITY="apparmor" ++CONFIG_CRYPTO=y ++ ++# ++# Crypto core or helper ++# ++CONFIG_CRYPTO_ALGAPI=y ++CONFIG_CRYPTO_ALGAPI2=y ++CONFIG_CRYPTO_AEAD=y ++CONFIG_CRYPTO_AEAD2=y ++CONFIG_CRYPTO_BLKCIPHER=y ++CONFIG_CRYPTO_BLKCIPHER2=y ++CONFIG_CRYPTO_HASH=y ++CONFIG_CRYPTO_HASH2=y ++CONFIG_CRYPTO_RNG=y ++CONFIG_CRYPTO_RNG2=y ++CONFIG_CRYPTO_RNG_DEFAULT=y ++CONFIG_CRYPTO_AKCIPHER2=y ++CONFIG_CRYPTO_AKCIPHER=y ++CONFIG_CRYPTO_KPP2=y ++CONFIG_CRYPTO_ACOMP2=y ++CONFIG_CRYPTO_RSA=y ++# CONFIG_CRYPTO_DH is not set ++# CONFIG_CRYPTO_ECDH is not set ++CONFIG_CRYPTO_MANAGER=y ++CONFIG_CRYPTO_MANAGER2=y ++# CONFIG_CRYPTO_USER is not set ++CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y ++CONFIG_CRYPTO_GF128MUL=y ++CONFIG_CRYPTO_NULL=y ++CONFIG_CRYPTO_NULL2=y ++# CONFIG_CRYPTO_PCRYPT is not set ++CONFIG_CRYPTO_WORKQUEUE=y ++# CONFIG_CRYPTO_CRYPTD is not set ++# CONFIG_CRYPTO_AUTHENC is not set ++# CONFIG_CRYPTO_TEST is not set ++CONFIG_CRYPTO_ENGINE=m ++ ++# ++# Authenticated Encryption with Associated Data ++# ++# CONFIG_CRYPTO_CCM is not set ++CONFIG_CRYPTO_GCM=y ++# CONFIG_CRYPTO_CHACHA20POLY1305 is not set ++# CONFIG_CRYPTO_AEGIS128 is not set ++# CONFIG_CRYPTO_AEGIS128L is not set ++# CONFIG_CRYPTO_AEGIS256 is not set ++# CONFIG_CRYPTO_MORUS640 is not set ++# CONFIG_CRYPTO_MORUS1280 is not set ++CONFIG_CRYPTO_SEQIV=y ++# CONFIG_CRYPTO_ECHAINIV is not set ++ ++# ++# Block modes ++# ++CONFIG_CRYPTO_CBC=y ++# CONFIG_CRYPTO_CFB is not set ++CONFIG_CRYPTO_CTR=y ++# CONFIG_CRYPTO_CTS is not set ++CONFIG_CRYPTO_ECB=y ++# CONFIG_CRYPTO_LRW is not set ++# CONFIG_CRYPTO_OFB is not set ++# CONFIG_CRYPTO_PCBC is not set ++# CONFIG_CRYPTO_XTS is not set ++# CONFIG_CRYPTO_KEYWRAP is not set ++# CONFIG_CRYPTO_ADIANTUM is not set ++ ++# ++# Hash modes ++# ++# CONFIG_CRYPTO_CMAC is not set ++CONFIG_CRYPTO_HMAC=y ++# CONFIG_CRYPTO_XCBC is not set ++# CONFIG_CRYPTO_VMAC is not set ++ ++# ++# Digest ++# ++CONFIG_CRYPTO_CRC32C=y ++# CONFIG_CRYPTO_CRC32 is not set ++CONFIG_CRYPTO_CRCT10DIF=y ++CONFIG_CRYPTO_GHASH=y ++# CONFIG_CRYPTO_POLY1305 is not set ++# CONFIG_CRYPTO_MD4 is not set ++CONFIG_CRYPTO_MD5=y ++# CONFIG_CRYPTO_MICHAEL_MIC is not set ++# CONFIG_CRYPTO_RMD128 is not set ++# CONFIG_CRYPTO_RMD160 is not set ++# CONFIG_CRYPTO_RMD256 is not set ++# CONFIG_CRYPTO_RMD320 is not set ++CONFIG_CRYPTO_SHA1=y ++CONFIG_CRYPTO_SHA256=y ++CONFIG_CRYPTO_SHA512=y ++# CONFIG_CRYPTO_SHA3 is not set ++# CONFIG_CRYPTO_SM3 is not set ++# CONFIG_CRYPTO_STREEBOG is not set ++# CONFIG_CRYPTO_TGR192 is not set ++# CONFIG_CRYPTO_WP512 is not set ++ ++# ++# Ciphers ++# ++CONFIG_CRYPTO_AES=y ++# CONFIG_CRYPTO_AES_TI is not set ++# CONFIG_CRYPTO_ANUBIS is not set ++# CONFIG_CRYPTO_ARC4 is not set ++# CONFIG_CRYPTO_BLOWFISH is not set ++# CONFIG_CRYPTO_CAMELLIA is not set ++# CONFIG_CRYPTO_CAST5 is not set ++# CONFIG_CRYPTO_CAST6 is not set ++CONFIG_CRYPTO_DES=m ++# CONFIG_CRYPTO_FCRYPT is not set ++# CONFIG_CRYPTO_KHAZAD is not set ++# CONFIG_CRYPTO_SALSA20 is not set ++# CONFIG_CRYPTO_CHACHA20 is not set ++# CONFIG_CRYPTO_SEED is not set ++# CONFIG_CRYPTO_SERPENT is not set ++# CONFIG_CRYPTO_SM4 is not set ++# CONFIG_CRYPTO_TEA is not set ++# CONFIG_CRYPTO_TWOFISH is not set ++ ++# ++# Compression ++# ++CONFIG_CRYPTO_DEFLATE=y ++CONFIG_CRYPTO_LZO=y ++# CONFIG_CRYPTO_842 is not set ++# CONFIG_CRYPTO_LZ4 is not set ++# CONFIG_CRYPTO_LZ4HC is not set ++# CONFIG_CRYPTO_ZSTD is not set ++ ++# ++# Random Number Generation ++# ++# CONFIG_CRYPTO_ANSI_CPRNG is not set ++CONFIG_CRYPTO_DRBG_MENU=y ++CONFIG_CRYPTO_DRBG_HMAC=y ++# CONFIG_CRYPTO_DRBG_HASH is not set ++# CONFIG_CRYPTO_DRBG_CTR is not set ++CONFIG_CRYPTO_DRBG=y ++CONFIG_CRYPTO_JITTERENTROPY=y ++# CONFIG_CRYPTO_USER_API_HASH is not set ++# CONFIG_CRYPTO_USER_API_SKCIPHER is not set ++# CONFIG_CRYPTO_USER_API_RNG is not set ++# CONFIG_CRYPTO_USER_API_AEAD is not set ++CONFIG_CRYPTO_HASH_INFO=y ++CONFIG_CRYPTO_HW=y ++# CONFIG_CRYPTO_DEV_FSL_CAAM is not set ++CONFIG_CRYPTO_DEV_CCP=y ++# CONFIG_CRYPTO_DEV_CCP_DD is not set ++# CONFIG_CAVIUM_CPT is not set ++# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set ++# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set ++# CONFIG_CRYPTO_DEV_QCE is not set ++# CONFIG_CRYPTO_DEV_QCOM_RNG is not set ++CONFIG_CRYPTO_DEV_VIRTIO=m ++CONFIG_CRYPTO_DEV_BCM_SPU=m ++# CONFIG_CRYPTO_DEV_CCREE is not set ++# CONFIG_CRYPTO_DEV_HISI_SEC is not set ++CONFIG_ASYMMETRIC_KEY_TYPE=y ++CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y ++# CONFIG_ASYMMETRIC_TPM_KEY_SUBTYPE is not set ++CONFIG_X509_CERTIFICATE_PARSER=y ++# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set ++CONFIG_PKCS7_MESSAGE_PARSER=y ++# CONFIG_PKCS7_TEST_KEY is not set ++CONFIG_SIGNED_PE_FILE_VERIFICATION=y ++ ++# ++# Certificates for signature checking ++# ++CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" ++CONFIG_SYSTEM_TRUSTED_KEYRING=y ++CONFIG_SYSTEM_TRUSTED_KEYS="" ++CONFIG_SYSTEM_EXTRA_CERTIFICATE=y ++CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096 ++# CONFIG_SECONDARY_TRUSTED_KEYRING is not set ++# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set ++CONFIG_BINARY_PRINTF=y ++ ++# ++# Library routines ++# ++CONFIG_BITREVERSE=y ++CONFIG_HAVE_ARCH_BITREVERSE=y ++CONFIG_RATIONAL=y ++CONFIG_GENERIC_STRNCPY_FROM_USER=y ++CONFIG_GENERIC_STRNLEN_USER=y ++CONFIG_GENERIC_NET_UTILS=y ++CONFIG_GENERIC_PCI_IOMAP=y ++CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y ++CONFIG_ARCH_HAS_FAST_MULTIPLIER=y ++# CONFIG_INDIRECT_PIO is not set ++CONFIG_CRC_CCITT=y ++CONFIG_CRC16=y ++CONFIG_CRC_T10DIF=y ++# CONFIG_CRC_ITU_T is not set ++CONFIG_CRC32=y ++# CONFIG_CRC32_SELFTEST is not set ++CONFIG_CRC32_SLICEBY8=y ++# CONFIG_CRC32_SLICEBY4 is not set ++# CONFIG_CRC32_SARWATE is not set ++# CONFIG_CRC32_BIT is not set ++# CONFIG_CRC64 is not set ++# CONFIG_CRC4 is not set ++# CONFIG_CRC7 is not set ++# CONFIG_LIBCRC32C is not set ++# CONFIG_CRC8 is not set ++CONFIG_XXHASH=y ++CONFIG_AUDIT_GENERIC=y ++CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y ++CONFIG_AUDIT_COMPAT_GENERIC=y ++# CONFIG_RANDOM32_SELFTEST is not set ++CONFIG_ZLIB_INFLATE=y ++CONFIG_ZLIB_DEFLATE=y ++CONFIG_LZO_COMPRESS=y ++CONFIG_LZO_DECOMPRESS=y ++CONFIG_LZ4_DECOMPRESS=y ++CONFIG_XZ_DEC=y ++CONFIG_XZ_DEC_X86=y ++CONFIG_XZ_DEC_POWERPC=y ++CONFIG_XZ_DEC_IA64=y ++CONFIG_XZ_DEC_ARM=y ++CONFIG_XZ_DEC_ARMTHUMB=y ++CONFIG_XZ_DEC_SPARC=y ++CONFIG_XZ_DEC_BCJ=y ++# CONFIG_XZ_DEC_TEST is not set ++CONFIG_DECOMPRESS_GZIP=y ++CONFIG_DECOMPRESS_BZIP2=y ++CONFIG_DECOMPRESS_LZMA=y ++CONFIG_DECOMPRESS_XZ=y ++CONFIG_DECOMPRESS_LZO=y ++CONFIG_DECOMPRESS_LZ4=y ++CONFIG_GENERIC_ALLOCATOR=y ++CONFIG_INTERVAL_TREE=y ++CONFIG_XARRAY_MULTI=y ++CONFIG_ASSOCIATIVE_ARRAY=y ++CONFIG_HAS_IOMEM=y ++CONFIG_HAS_IOPORT_MAP=y ++CONFIG_HAS_DMA=y ++CONFIG_NEED_SG_DMA_LENGTH=y ++CONFIG_NEED_DMA_MAP_STATE=y ++CONFIG_ARCH_DMA_ADDR_T_64BIT=y ++CONFIG_HAVE_GENERIC_DMA_COHERENT=y ++CONFIG_ARCH_HAS_SYNC_DMA_FOR_DEVICE=y ++CONFIG_ARCH_HAS_SYNC_DMA_FOR_CPU=y ++CONFIG_ARCH_HAS_DMA_COHERENT_TO_PFN=y ++CONFIG_ARCH_HAS_DMA_MMAP_PGPROT=y ++CONFIG_SWIOTLB=y ++CONFIG_DMA_REMAP=y ++CONFIG_DMA_DIRECT_REMAP=y ++CONFIG_SGL_ALLOC=y ++CONFIG_CPU_RMAP=y ++CONFIG_DQL=y ++CONFIG_GLOB=y ++# CONFIG_GLOB_SELFTEST is not set ++CONFIG_NLATTR=y ++CONFIG_CLZ_TAB=y ++# CONFIG_CORDIC is not set ++CONFIG_DDR=y ++CONFIG_IRQ_POLL=y ++CONFIG_MPILIB=y ++CONFIG_SIGNATURE=y ++CONFIG_LIBFDT=y ++CONFIG_OID_REGISTRY=y ++CONFIG_UCS2_STRING=y ++CONFIG_FONT_SUPPORT=y ++# CONFIG_FONTS is not set ++CONFIG_FONT_8x8=y ++CONFIG_FONT_8x16=y ++CONFIG_SG_POOL=y ++CONFIG_SBITMAP=y ++# CONFIG_STRING_SELFTEST is not set ++ ++# ++# Kernel hacking ++# ++ ++# ++# printk and dmesg options ++# ++CONFIG_PRINTK_TIME=y ++CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 ++CONFIG_CONSOLE_LOGLEVEL_QUIET=4 ++CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 ++CONFIG_BOOT_PRINTK_DELAY=y ++CONFIG_DYNAMIC_DEBUG=y ++ ++# ++# Compile-time checks and compiler options ++# ++CONFIG_DEBUG_INFO=y ++# CONFIG_DEBUG_INFO_REDUCED is not set ++# CONFIG_DEBUG_INFO_SPLIT is not set ++CONFIG_DEBUG_INFO_DWARF4=y ++CONFIG_GDB_SCRIPTS=y ++# CONFIG_ENABLE_MUST_CHECK is not set ++CONFIG_FRAME_WARN=1024 ++# CONFIG_STRIP_ASM_SYMS is not set ++# CONFIG_READABLE_ASM is not set ++CONFIG_UNUSED_SYMBOLS=y ++# CONFIG_PAGE_OWNER is not set ++CONFIG_DEBUG_FS=y ++# CONFIG_HEADERS_CHECK is not set ++# CONFIG_DEBUG_SECTION_MISMATCH is not set ++CONFIG_SECTION_MISMATCH_WARN_ONLY=y ++CONFIG_ARCH_WANT_FRAME_POINTERS=y ++CONFIG_FRAME_POINTER=y ++# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set ++CONFIG_MAGIC_SYSRQ=y ++CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 ++CONFIG_MAGIC_SYSRQ_SERIAL=y ++CONFIG_DEBUG_KERNEL=y ++ ++# ++# Memory Debugging ++# ++# CONFIG_PAGE_EXTENSION is not set ++# CONFIG_DEBUG_PAGEALLOC is not set ++# CONFIG_PAGE_POISONING is not set ++# CONFIG_DEBUG_PAGE_REF is not set ++# CONFIG_DEBUG_RODATA_TEST is not set ++# CONFIG_DEBUG_OBJECTS is not set ++# CONFIG_SLUB_DEBUG_ON is not set ++# CONFIG_SLUB_STATS is not set ++CONFIG_HAVE_DEBUG_KMEMLEAK=y ++# CONFIG_DEBUG_KMEMLEAK is not set ++# CONFIG_DEBUG_STACK_USAGE is not set ++# CONFIG_DEBUG_VM is not set ++CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y ++# CONFIG_DEBUG_VIRTUAL is not set ++# CONFIG_DEBUG_MEMORY_INIT is not set ++# CONFIG_DEBUG_PER_CPU_MAPS is not set ++CONFIG_HAVE_ARCH_KASAN=y ++CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y ++CONFIG_CC_HAS_KASAN_GENERIC=y ++# CONFIG_KASAN is not set ++CONFIG_ARCH_HAS_KCOV=y ++CONFIG_CC_HAS_SANCOV_TRACE_PC=y ++# CONFIG_KCOV is not set ++# CONFIG_DEBUG_SHIRQ is not set ++ ++# ++# Debug Lockups and Hangs ++# ++# CONFIG_SOFTLOCKUP_DETECTOR is not set ++CONFIG_DETECT_HUNG_TASK=y ++CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 ++# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set ++CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 ++# CONFIG_WQ_WATCHDOG is not set ++# CONFIG_PANIC_ON_OOPS is not set ++CONFIG_PANIC_ON_OOPS_VALUE=0 ++CONFIG_PANIC_TIMEOUT=0 ++CONFIG_SCHED_DEBUG=y ++CONFIG_SCHED_INFO=y ++CONFIG_SCHEDSTATS=y ++CONFIG_SCHED_STACK_END_CHECK=y ++# CONFIG_DEBUG_TIMEKEEPING is not set ++ ++# ++# Lock Debugging (spinlocks, mutexes, etc...) ++# ++CONFIG_LOCK_DEBUGGING_SUPPORT=y ++# CONFIG_PROVE_LOCKING is not set ++# CONFIG_LOCK_STAT is not set ++# CONFIG_DEBUG_RT_MUTEXES is not set ++# CONFIG_DEBUG_SPINLOCK is not set ++# CONFIG_DEBUG_MUTEXES is not set ++# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set ++# CONFIG_DEBUG_RWSEMS is not set ++# CONFIG_DEBUG_LOCK_ALLOC is not set ++# CONFIG_DEBUG_ATOMIC_SLEEP is not set ++# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set ++# CONFIG_LOCK_TORTURE_TEST is not set ++# CONFIG_WW_MUTEX_SELFTEST is not set ++CONFIG_STACKTRACE=y ++# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set ++# CONFIG_DEBUG_KOBJECT is not set ++CONFIG_HAVE_DEBUG_BUGVERBOSE=y ++CONFIG_DEBUG_BUGVERBOSE=y ++# CONFIG_DEBUG_LIST is not set ++# CONFIG_DEBUG_PI_LIST is not set ++# CONFIG_DEBUG_SG is not set ++# CONFIG_DEBUG_NOTIFIERS is not set ++# CONFIG_DEBUG_CREDENTIALS is not set ++ ++# ++# RCU Debugging ++# ++# CONFIG_RCU_PERF_TEST is not set ++# CONFIG_RCU_TORTURE_TEST is not set ++CONFIG_RCU_CPU_STALL_TIMEOUT=60 ++# CONFIG_RCU_TRACE is not set ++# CONFIG_RCU_EQS_DEBUG is not set ++# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set ++# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set ++# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set ++# CONFIG_NOTIFIER_ERROR_INJECTION is not set ++# CONFIG_FAULT_INJECTION is not set ++# CONFIG_LATENCYTOP is not set ++CONFIG_NOP_TRACER=y ++CONFIG_HAVE_FUNCTION_TRACER=y ++CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y ++CONFIG_HAVE_DYNAMIC_FTRACE=y ++CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y ++CONFIG_HAVE_SYSCALL_TRACEPOINTS=y ++CONFIG_HAVE_C_RECORDMCOUNT=y ++CONFIG_TRACER_MAX_TRACE=y ++CONFIG_TRACE_CLOCK=y ++CONFIG_RING_BUFFER=y ++CONFIG_EVENT_TRACING=y ++CONFIG_CONTEXT_SWITCH_TRACER=y ++CONFIG_TRACING=y ++CONFIG_GENERIC_TRACER=y ++CONFIG_TRACING_SUPPORT=y ++CONFIG_FTRACE=y ++CONFIG_FUNCTION_TRACER=y ++CONFIG_FUNCTION_GRAPH_TRACER=y ++# CONFIG_PREEMPTIRQ_EVENTS is not set ++# CONFIG_IRQSOFF_TRACER is not set ++CONFIG_SCHED_TRACER=y ++# CONFIG_HWLAT_TRACER is not set ++CONFIG_FTRACE_SYSCALLS=y ++CONFIG_TRACER_SNAPSHOT=y ++# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set ++CONFIG_BRANCH_PROFILE_NONE=y ++# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set ++# CONFIG_PROFILE_ALL_BRANCHES is not set ++CONFIG_STACK_TRACER=y ++CONFIG_BLK_DEV_IO_TRACE=y ++CONFIG_UPROBE_EVENTS=y ++CONFIG_BPF_EVENTS=y ++CONFIG_DYNAMIC_EVENTS=y ++CONFIG_PROBE_EVENTS=y ++CONFIG_DYNAMIC_FTRACE=y ++CONFIG_FUNCTION_PROFILER=y ++CONFIG_FTRACE_MCOUNT_RECORD=y ++# CONFIG_FTRACE_STARTUP_TEST is not set ++# CONFIG_HIST_TRIGGERS is not set ++# CONFIG_TRACEPOINT_BENCHMARK is not set ++# CONFIG_RING_BUFFER_BENCHMARK is not set ++# CONFIG_RING_BUFFER_STARTUP_TEST is not set ++# CONFIG_PREEMPTIRQ_DELAY_TEST is not set ++# CONFIG_TRACE_EVAL_MAP_FILE is not set ++CONFIG_TRACING_EVENTS_GPIO=y ++# CONFIG_DMA_API_DEBUG is not set ++CONFIG_RUNTIME_TESTING_MENU=y ++# CONFIG_LKDTM is not set ++# CONFIG_TEST_LIST_SORT is not set ++# CONFIG_TEST_SORT is not set ++# CONFIG_BACKTRACE_SELF_TEST is not set ++# CONFIG_RBTREE_TEST is not set ++# CONFIG_INTERVAL_TREE_TEST is not set ++# CONFIG_PERCPU_TEST is not set ++# CONFIG_ATOMIC64_SELFTEST is not set ++# CONFIG_TEST_HEXDUMP is not set ++# CONFIG_TEST_STRING_HELPERS is not set ++# CONFIG_TEST_KSTRTOX is not set ++# CONFIG_TEST_PRINTF is not set ++# CONFIG_TEST_BITMAP is not set ++# CONFIG_TEST_BITFIELD is not set ++# CONFIG_TEST_UUID is not set ++# CONFIG_TEST_XARRAY is not set ++# CONFIG_TEST_OVERFLOW is not set ++# CONFIG_TEST_RHASHTABLE is not set ++# CONFIG_TEST_HASH is not set ++# CONFIG_TEST_IDA is not set ++# CONFIG_TEST_LKM is not set ++# CONFIG_TEST_USER_COPY is not set ++# CONFIG_TEST_BPF is not set ++# CONFIG_FIND_BIT_BENCHMARK is not set ++# CONFIG_TEST_FIRMWARE is not set ++# CONFIG_TEST_SYSCTL is not set ++# CONFIG_TEST_UDELAY is not set ++# CONFIG_TEST_STATIC_KEYS is not set ++# CONFIG_TEST_KMOD is not set ++# CONFIG_TEST_MEMCAT_P is not set ++CONFIG_MEMTEST=y ++# CONFIG_BUG_ON_DATA_CORRUPTION is not set ++# CONFIG_SAMPLES is not set ++CONFIG_HAVE_ARCH_KGDB=y ++CONFIG_KGDB=y ++CONFIG_KGDB_SERIAL_CONSOLE=y ++# CONFIG_KGDB_TESTS is not set ++CONFIG_KGDB_KDB=y ++CONFIG_KDB_DEFAULT_ENABLE=0x1 ++CONFIG_KDB_KEYBOARD=y ++CONFIG_KDB_CONTINUE_CATASTROPHIC=0 ++CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y ++# CONFIG_UBSAN is not set ++CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y ++# CONFIG_STRICT_DEVMEM is not set ++# CONFIG_ARM64_PTDUMP_DEBUGFS is not set ++# CONFIG_PID_IN_CONTEXTIDR is not set ++# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set ++# CONFIG_DEBUG_WX is not set ++# CONFIG_DEBUG_ALIGN_RODATA is not set ++# CONFIG_DEBUG_EFI is not set ++# CONFIG_ARM64_RELOC_TEST is not set ++# CONFIG_CORESIGHT is not set +diff --git a/arch/powerpc/configs/rock-dbg_defconfig b/arch/powerpc/configs/rock-dbg_defconfig +new file mode 100644 +index 000000000000..288ec717bbfb +--- /dev/null ++++ b/arch/powerpc/configs/rock-dbg_defconfig +@@ -0,0 +1,8635 @@ ++# ++# Automatically generated file; DO NOT EDIT. ++# Linux/powerpc 5.0.0-rc1 Kernel Configuration ++# ++ ++# ++# Compiler: gcc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0 ++# ++CONFIG_CC_IS_GCC=y ++CONFIG_GCC_VERSION=70300 ++CONFIG_CLANG_VERSION=0 ++CONFIG_CC_HAS_ASM_GOTO=y ++CONFIG_IRQ_WORK=y ++CONFIG_BUILDTIME_EXTABLE_SORT=y ++ ++# ++# General setup ++# ++CONFIG_INIT_ENV_ARG_LIMIT=32 ++# CONFIG_COMPILE_TEST is not set ++CONFIG_LOCALVERSION="-kfd" ++# CONFIG_LOCALVERSION_AUTO is not set ++CONFIG_BUILD_SALT="" ++CONFIG_HAVE_KERNEL_GZIP=y ++CONFIG_HAVE_KERNEL_XZ=y ++CONFIG_KERNEL_GZIP=y ++# CONFIG_KERNEL_XZ is not set ++CONFIG_DEFAULT_HOSTNAME="(none)" ++CONFIG_SWAP=y ++CONFIG_SYSVIPC=y ++CONFIG_SYSVIPC_SYSCTL=y ++CONFIG_POSIX_MQUEUE=y ++CONFIG_POSIX_MQUEUE_SYSCTL=y ++CONFIG_CROSS_MEMORY_ATTACH=y ++CONFIG_USELIB=y ++CONFIG_AUDIT=y ++CONFIG_HAVE_ARCH_AUDITSYSCALL=y ++CONFIG_AUDITSYSCALL=y ++ ++# ++# IRQ subsystem ++# ++CONFIG_GENERIC_IRQ_SHOW=y ++CONFIG_GENERIC_IRQ_SHOW_LEVEL=y ++CONFIG_GENERIC_IRQ_MIGRATION=y ++CONFIG_HARDIRQS_SW_RESEND=y ++CONFIG_GENERIC_IRQ_CHIP=y ++CONFIG_IRQ_DOMAIN=y ++CONFIG_GENERIC_MSI_IRQ=y ++CONFIG_IRQ_FORCED_THREADING=y ++CONFIG_SPARSE_IRQ=y ++# CONFIG_GENERIC_IRQ_DEBUGFS is not set ++CONFIG_GENERIC_TIME_VSYSCALL=y ++CONFIG_GENERIC_CLOCKEVENTS=y ++CONFIG_ARCH_HAS_TICK_BROADCAST=y ++CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y ++CONFIG_GENERIC_CMOS_UPDATE=y ++ ++# ++# Timers subsystem ++# ++CONFIG_TICK_ONESHOT=y ++CONFIG_NO_HZ_COMMON=y ++# CONFIG_HZ_PERIODIC is not set ++CONFIG_NO_HZ_IDLE=y ++# CONFIG_NO_HZ_FULL is not set ++CONFIG_NO_HZ=y ++CONFIG_HIGH_RES_TIMERS=y ++# CONFIG_PREEMPT_NONE is not set ++CONFIG_PREEMPT_VOLUNTARY=y ++# CONFIG_PREEMPT is not set ++ ++# ++# CPU/Task time and stats accounting ++# ++CONFIG_TICK_CPU_ACCOUNTING=y ++# CONFIG_VIRT_CPU_ACCOUNTING_NATIVE is not set ++# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set ++# CONFIG_IRQ_TIME_ACCOUNTING is not set ++CONFIG_BSD_PROCESS_ACCT=y ++CONFIG_BSD_PROCESS_ACCT_V3=y ++CONFIG_TASKSTATS=y ++CONFIG_TASK_DELAY_ACCT=y ++CONFIG_TASK_XACCT=y ++CONFIG_TASK_IO_ACCOUNTING=y ++# CONFIG_PSI is not set ++CONFIG_CPU_ISOLATION=y ++ ++# ++# RCU Subsystem ++# ++CONFIG_TREE_RCU=y ++# CONFIG_RCU_EXPERT is not set ++CONFIG_SRCU=y ++CONFIG_TREE_SRCU=y ++CONFIG_RCU_STALL_COMMON=y ++CONFIG_RCU_NEED_SEGCBLIST=y ++CONFIG_BUILD_BIN2C=y ++# CONFIG_IKCONFIG is not set ++CONFIG_LOG_BUF_SHIFT=17 ++CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 ++CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 ++CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y ++CONFIG_NUMA_BALANCING=y ++CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y ++CONFIG_CGROUPS=y ++CONFIG_PAGE_COUNTER=y ++CONFIG_MEMCG=y ++CONFIG_MEMCG_SWAP=y ++# CONFIG_MEMCG_SWAP_ENABLED is not set ++CONFIG_MEMCG_KMEM=y ++CONFIG_BLK_CGROUP=y ++# CONFIG_DEBUG_BLK_CGROUP is not set ++CONFIG_CGROUP_WRITEBACK=y ++CONFIG_CGROUP_SCHED=y ++CONFIG_FAIR_GROUP_SCHED=y ++CONFIG_CFS_BANDWIDTH=y ++# CONFIG_RT_GROUP_SCHED is not set ++CONFIG_CGROUP_PIDS=y ++# CONFIG_CGROUP_RDMA is not set ++CONFIG_CGROUP_FREEZER=y ++CONFIG_CGROUP_HUGETLB=y ++CONFIG_CPUSETS=y ++CONFIG_PROC_PID_CPUSET=y ++CONFIG_CGROUP_DEVICE=y ++CONFIG_CGROUP_CPUACCT=y ++CONFIG_CGROUP_PERF=y ++# CONFIG_CGROUP_BPF is not set ++# CONFIG_CGROUP_DEBUG is not set ++CONFIG_SOCK_CGROUP_DATA=y ++CONFIG_NAMESPACES=y ++CONFIG_UTS_NS=y ++CONFIG_IPC_NS=y ++CONFIG_USER_NS=y ++CONFIG_PID_NS=y ++CONFIG_NET_NS=y ++CONFIG_CHECKPOINT_RESTORE=y ++CONFIG_SCHED_AUTOGROUP=y ++# CONFIG_SYSFS_DEPRECATED is not set ++CONFIG_RELAY=y ++CONFIG_BLK_DEV_INITRD=y ++CONFIG_INITRAMFS_SOURCE="" ++CONFIG_RD_GZIP=y ++CONFIG_RD_BZIP2=y ++CONFIG_RD_LZMA=y ++CONFIG_RD_XZ=y ++CONFIG_RD_LZO=y ++CONFIG_RD_LZ4=y ++CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y ++# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set ++CONFIG_HAVE_LD_DEAD_CODE_DATA_ELIMINATION=y ++# CONFIG_LD_DEAD_CODE_DATA_ELIMINATION is not set ++CONFIG_SYSCTL=y ++CONFIG_ANON_INODES=y ++CONFIG_SYSCTL_EXCEPTION_TRACE=y ++CONFIG_HAVE_PCSPKR_PLATFORM=y ++CONFIG_BPF=y ++CONFIG_EXPERT=y ++CONFIG_MULTIUSER=y ++CONFIG_SGETMASK_SYSCALL=y ++CONFIG_SYSFS_SYSCALL=y ++CONFIG_SYSCTL_SYSCALL=y ++CONFIG_FHANDLE=y ++CONFIG_POSIX_TIMERS=y ++CONFIG_PRINTK=y ++CONFIG_PRINTK_NMI=y ++CONFIG_BUG=y ++CONFIG_ELF_CORE=y ++CONFIG_PCSPKR_PLATFORM=y ++CONFIG_BASE_FULL=y ++CONFIG_FUTEX=y ++CONFIG_FUTEX_PI=y ++CONFIG_EPOLL=y ++CONFIG_SIGNALFD=y ++CONFIG_TIMERFD=y ++CONFIG_EVENTFD=y ++CONFIG_SHMEM=y ++CONFIG_AIO=y ++CONFIG_ADVISE_SYSCALLS=y ++CONFIG_MEMBARRIER=y ++CONFIG_KALLSYMS=y ++CONFIG_KALLSYMS_ALL=y ++CONFIG_KALLSYMS_BASE_RELATIVE=y ++CONFIG_BPF_SYSCALL=y ++# CONFIG_BPF_JIT_ALWAYS_ON is not set ++CONFIG_USERFAULTFD=y ++CONFIG_ARCH_HAS_MEMBARRIER_CALLBACKS=y ++CONFIG_RSEQ=y ++# CONFIG_DEBUG_RSEQ is not set ++# CONFIG_EMBEDDED is not set ++CONFIG_HAVE_PERF_EVENTS=y ++# CONFIG_PC104 is not set ++ ++# ++# Kernel Performance Events And Counters ++# ++CONFIG_PERF_EVENTS=y ++CONFIG_VM_EVENT_COUNTERS=y ++CONFIG_SLUB_DEBUG=y ++# CONFIG_SLUB_MEMCG_SYSFS_ON is not set ++# CONFIG_COMPAT_BRK is not set ++# CONFIG_SLAB is not set ++CONFIG_SLUB=y ++# CONFIG_SLOB is not set ++CONFIG_SLAB_MERGE_DEFAULT=y ++# CONFIG_SLAB_FREELIST_RANDOM is not set ++# CONFIG_SLAB_FREELIST_HARDENED is not set ++CONFIG_SLUB_CPU_PARTIAL=y ++CONFIG_SYSTEM_DATA_VERIFICATION=y ++CONFIG_PROFILING=y ++CONFIG_TRACEPOINTS=y ++CONFIG_PPC64=y ++ ++# ++# Processor support ++# ++CONFIG_PPC_BOOK3S_64=y ++# CONFIG_PPC_BOOK3E_64 is not set ++# CONFIG_GENERIC_CPU is not set ++CONFIG_POWER7_CPU=y ++# CONFIG_POWER8_CPU is not set ++# CONFIG_POWER9_CPU is not set ++CONFIG_TARGET_CPU_BOOL=y ++CONFIG_TARGET_CPU="power7" ++CONFIG_PPC_BOOK3S=y ++CONFIG_PPC_FPU=y ++CONFIG_ALTIVEC=y ++CONFIG_VSX=y ++CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y ++CONFIG_PPC_RADIX_MMU=y ++CONFIG_PPC_RADIX_MMU_DEFAULT=y ++CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y ++CONFIG_PPC_MM_SLICES=y ++CONFIG_PPC_HAVE_PMU_SUPPORT=y ++CONFIG_PPC_PERF_CTRS=y ++CONFIG_FORCE_SMP=y ++CONFIG_SMP=y ++CONFIG_NR_CPUS=2048 ++CONFIG_PPC_DOORBELL=y ++# CONFIG_CPU_BIG_ENDIAN is not set ++CONFIG_CPU_LITTLE_ENDIAN=y ++CONFIG_PPC64_BOOT_WRAPPER=y ++CONFIG_64BIT=y ++CONFIG_MMU=y ++CONFIG_ARCH_MMAP_RND_BITS_MAX=29 ++CONFIG_ARCH_MMAP_RND_BITS_MIN=14 ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=13 ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=7 ++CONFIG_HAVE_SETUP_PER_CPU_AREA=y ++CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y ++CONFIG_NR_IRQS=512 ++CONFIG_NMI_IPI=y ++CONFIG_PPC_WATCHDOG=y ++CONFIG_STACKTRACE_SUPPORT=y ++CONFIG_TRACE_IRQFLAGS_SUPPORT=y ++CONFIG_LOCKDEP_SUPPORT=y ++CONFIG_RWSEM_XCHGADD_ALGORITHM=y ++CONFIG_GENERIC_HWEIGHT=y ++CONFIG_ARCH_HAS_DMA_SET_COHERENT_MASK=y ++CONFIG_PPC=y ++CONFIG_PPC_BARRIER_NOSPEC=y ++CONFIG_EARLY_PRINTK=y ++CONFIG_PANIC_TIMEOUT=0 ++CONFIG_COMPAT=y ++CONFIG_SYSVIPC_COMPAT=y ++CONFIG_SCHED_OMIT_FRAME_POINTER=y ++CONFIG_ARCH_MAY_HAVE_PC_FDC=y ++CONFIG_PPC_UDBG_16550=y ++CONFIG_AUDIT_ARCH=y ++CONFIG_GENERIC_BUG=y ++CONFIG_EPAPR_BOOT=y ++CONFIG_ARCH_HIBERNATION_POSSIBLE=y ++CONFIG_ARCH_SUSPEND_POSSIBLE=y ++CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y ++CONFIG_ARCH_SUPPORTS_UPROBES=y ++CONFIG_PGTABLE_LEVELS=4 ++CONFIG_PPC_MSI_BITMAP=y ++CONFIG_PPC_XICS=y ++CONFIG_PPC_ICP_NATIVE=y ++CONFIG_PPC_ICP_HV=y ++CONFIG_PPC_ICS_RTAS=y ++CONFIG_PPC_XIVE=y ++CONFIG_PPC_XIVE_NATIVE=y ++CONFIG_PPC_XIVE_SPAPR=y ++CONFIG_PPC_SCOM=y ++CONFIG_SCOM_DEBUGFS=y ++ ++# ++# Platform support ++# ++CONFIG_PPC_POWERNV=y ++CONFIG_OPAL_PRD=m ++# CONFIG_PPC_MEMTRACE is not set ++CONFIG_PPC_VAS=y ++CONFIG_PPC_PSERIES=y ++CONFIG_PPC_SPLPAR=y ++CONFIG_DTL=y ++CONFIG_PSERIES_ENERGY=m ++CONFIG_SCANLOG=m ++CONFIG_IO_EVENT_IRQ=y ++CONFIG_LPARCFG=y ++CONFIG_PPC_SMLPAR=y ++CONFIG_CMM=m ++CONFIG_HV_PERF_CTRS=y ++CONFIG_IBMVIO=y ++# CONFIG_PAPR_SCM is not set ++CONFIG_KVM_GUEST=y ++CONFIG_EPAPR_PARAVIRT=y ++CONFIG_PPC_NATIVE=y ++CONFIG_PPC_OF_BOOT_TRAMPOLINE=y ++CONFIG_PPC_DT_CPU_FTRS=y ++# CONFIG_UDBG_RTAS_CONSOLE is not set ++CONFIG_PPC_SMP_MUXED_IPI=y ++CONFIG_MPIC=y ++# CONFIG_MPIC_MSGR is not set ++CONFIG_PPC_I8259=y ++CONFIG_PPC_RTAS=y ++CONFIG_RTAS_ERROR_LOGGING=y ++CONFIG_PPC_RTAS_DAEMON=y ++CONFIG_RTAS_PROC=y ++CONFIG_RTAS_FLASH=m ++CONFIG_EEH=y ++CONFIG_PPC_P7_NAP=y ++CONFIG_PPC_INDIRECT_PIO=y ++ ++# ++# CPU Frequency scaling ++# ++CONFIG_CPU_FREQ=y ++CONFIG_CPU_FREQ_GOV_ATTR_SET=y ++CONFIG_CPU_FREQ_GOV_COMMON=y ++CONFIG_CPU_FREQ_STAT=y ++CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y ++# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set ++CONFIG_CPU_FREQ_GOV_PERFORMANCE=y ++CONFIG_CPU_FREQ_GOV_POWERSAVE=y ++CONFIG_CPU_FREQ_GOV_USERSPACE=y ++CONFIG_CPU_FREQ_GOV_ONDEMAND=y ++CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y ++# CONFIG_CPU_FREQ_GOV_SCHEDUTIL is not set ++ ++# ++# CPU frequency scaling drivers ++# ++CONFIG_POWERNV_CPUFREQ=y ++ ++# ++# CPUIdle driver ++# ++ ++# ++# CPU Idle ++# ++CONFIG_CPU_IDLE=y ++CONFIG_CPU_IDLE_GOV_LADDER=y ++CONFIG_CPU_IDLE_GOV_MENU=y ++ ++# ++# POWERPC CPU Idle Drivers ++# ++CONFIG_PSERIES_CPUIDLE=y ++CONFIG_POWERNV_CPUIDLE=y ++# CONFIG_GEN_RTC is not set ++# CONFIG_SIMPLE_GPIO is not set ++ ++# ++# Kernel options ++# ++# CONFIG_HZ_100 is not set ++CONFIG_HZ_250=y ++# CONFIG_HZ_300 is not set ++# CONFIG_HZ_1000 is not set ++CONFIG_HZ=250 ++CONFIG_SCHED_HRTICK=y ++CONFIG_HUGETLB_PAGE_SIZE_VARIABLE=y ++CONFIG_PPC_TRANSACTIONAL_MEM=y ++# CONFIG_LD_HEAD_STUB_CATCH is not set ++CONFIG_HOTPLUG_CPU=y ++CONFIG_ARCH_CPU_PROBE_RELEASE=y ++CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y ++CONFIG_ARCH_HAS_WALK_MEMORY=y ++CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y ++CONFIG_PPC64_SUPPORTS_MEMORY_FAILURE=y ++CONFIG_KEXEC=y ++# CONFIG_KEXEC_FILE is not set ++CONFIG_RELOCATABLE=y ++# CONFIG_RELOCATABLE_TEST is not set ++CONFIG_CRASH_DUMP=y ++CONFIG_FA_DUMP=y ++CONFIG_IRQ_ALL_CPUS=y ++CONFIG_NUMA=y ++CONFIG_NODES_SHIFT=8 ++CONFIG_USE_PERCPU_NUMA_NODE_ID=y ++CONFIG_HAVE_MEMORYLESS_NODES=y ++CONFIG_ARCH_SELECT_MEMORY_MODEL=y ++CONFIG_ARCH_SPARSEMEM_ENABLE=y ++CONFIG_ARCH_SPARSEMEM_DEFAULT=y ++CONFIG_SYS_SUPPORTS_HUGETLBFS=y ++CONFIG_ILLEGAL_POINTER_VALUE=0x5deadbeef0000000 ++CONFIG_ARCH_MEMORY_PROBE=y ++CONFIG_NODES_SPAN_OTHER_NODES=y ++# CONFIG_PPC_4K_PAGES is not set ++CONFIG_PPC_64K_PAGES=y ++CONFIG_THREAD_SHIFT=14 ++CONFIG_FORCE_MAX_ZONEORDER=9 ++CONFIG_PPC_SUBPAGE_PROT=y ++CONFIG_PPC_COPRO_BASE=y ++CONFIG_SCHED_SMT=y ++CONFIG_PPC_DENORMALISATION=y ++# CONFIG_CMDLINE_BOOL is not set ++CONFIG_EXTRA_TARGETS="" ++CONFIG_SUSPEND=y ++CONFIG_SUSPEND_FREEZER=y ++# CONFIG_SUSPEND_SKIP_SYNC is not set ++# CONFIG_HIBERNATION is not set ++CONFIG_PM_SLEEP=y ++CONFIG_PM_SLEEP_SMP=y ++# CONFIG_PM_AUTOSLEEP is not set ++CONFIG_PM_WAKELOCKS=y ++CONFIG_PM_WAKELOCKS_LIMIT=100 ++CONFIG_PM_WAKELOCKS_GC=y ++CONFIG_PM=y ++CONFIG_PM_DEBUG=y ++CONFIG_PM_ADVANCED_DEBUG=y ++# CONFIG_PM_TEST_SUSPEND is not set ++CONFIG_PM_SLEEP_DEBUG=y ++# CONFIG_DPM_WATCHDOG is not set ++CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y ++# CONFIG_ENERGY_MODEL is not set ++CONFIG_SECCOMP=y ++CONFIG_PPC_MEM_KEYS=y ++CONFIG_ISA_DMA_API=y ++ ++# ++# Bus options ++# ++CONFIG_GENERIC_ISA_DMA=y ++CONFIG_FSL_LBC=y ++CONFIG_NONSTATIC_KERNEL=y ++CONFIG_PAGE_OFFSET=0xc000000000000000 ++CONFIG_KERNEL_START=0xc000000000000000 ++CONFIG_PHYSICAL_START=0x00000000 ++CONFIG_ARCH_RANDOM=y ++CONFIG_HAVE_KVM_IRQCHIP=y ++CONFIG_HAVE_KVM_IRQFD=y ++CONFIG_HAVE_KVM_EVENTFD=y ++CONFIG_KVM_MMIO=y ++CONFIG_KVM_VFIO=y ++CONFIG_KVM_COMPAT=y ++CONFIG_HAVE_KVM_IRQ_BYPASS=y ++CONFIG_HAVE_KVM_VCPU_ASYNC_IOCTL=y ++CONFIG_VIRTUALIZATION=y ++CONFIG_KVM=y ++CONFIG_KVM_BOOK3S_HANDLER=y ++CONFIG_KVM_BOOK3S_64_HANDLER=y ++CONFIG_KVM_BOOK3S_PR_POSSIBLE=y ++CONFIG_KVM_BOOK3S_HV_POSSIBLE=y ++CONFIG_KVM_BOOK3S_64=m ++CONFIG_KVM_BOOK3S_64_HV=m ++CONFIG_KVM_BOOK3S_64_PR=m ++# CONFIG_KVM_BOOK3S_HV_EXIT_TIMING is not set ++CONFIG_KVM_XICS=y ++CONFIG_KVM_XIVE=y ++CONFIG_VHOST_NET=m ++CONFIG_VHOST_SCSI=m ++# CONFIG_VHOST_VSOCK is not set ++CONFIG_VHOST=m ++# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set ++ ++# ++# General architecture-dependent options ++# ++CONFIG_CRASH_CORE=y ++CONFIG_KEXEC_CORE=y ++CONFIG_OPROFILE=m ++CONFIG_HAVE_OPROFILE=y ++CONFIG_KPROBES=y ++CONFIG_JUMP_LABEL=y ++# CONFIG_STATIC_KEYS_SELFTEST is not set ++CONFIG_OPTPROBES=y ++CONFIG_UPROBES=y ++CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y ++CONFIG_ARCH_USE_BUILTIN_BSWAP=y ++CONFIG_KRETPROBES=y ++CONFIG_HAVE_IOREMAP_PROT=y ++CONFIG_HAVE_KPROBES=y ++CONFIG_HAVE_KRETPROBES=y ++CONFIG_HAVE_OPTPROBES=y ++CONFIG_HAVE_KPROBES_ON_FTRACE=y ++CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y ++CONFIG_HAVE_NMI=y ++CONFIG_HAVE_ARCH_TRACEHOOK=y ++CONFIG_GENERIC_SMP_IDLE_THREAD=y ++CONFIG_ARCH_HAS_FORTIFY_SOURCE=y ++CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y ++CONFIG_HAVE_RSEQ=y ++CONFIG_HAVE_HW_BREAKPOINT=y ++CONFIG_HAVE_PERF_EVENTS_NMI=y ++CONFIG_HAVE_NMI_WATCHDOG=y ++CONFIG_HAVE_HARDLOCKUP_DETECTOR_ARCH=y ++CONFIG_HAVE_PERF_REGS=y ++CONFIG_HAVE_PERF_USER_STACK_DUMP=y ++CONFIG_HAVE_ARCH_JUMP_LABEL=y ++CONFIG_HAVE_RCU_TABLE_FREE=y ++CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y ++CONFIG_ARCH_WEAK_RELEASE_ACQUIRE=y ++CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y ++CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y ++CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y ++CONFIG_HAVE_ARCH_SECCOMP_FILTER=y ++CONFIG_SECCOMP_FILTER=y ++CONFIG_CC_HAS_STACKPROTECTOR_NONE=y ++CONFIG_HAVE_CONTEXT_TRACKING=y ++CONFIG_HAVE_VIRT_CPU_ACCOUNTING=y ++CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y ++CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y ++CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y ++CONFIG_HAVE_ARCH_SOFT_DIRTY=y ++CONFIG_HAVE_MOD_ARCH_SPECIFIC=y ++CONFIG_MODULES_USE_ELF_RELA=y ++CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y ++CONFIG_ARCH_HAS_ELF_RANDOMIZE=y ++CONFIG_HAVE_ARCH_MMAP_RND_BITS=y ++CONFIG_ARCH_MMAP_RND_BITS=14 ++CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS=7 ++CONFIG_HAVE_RELIABLE_STACKTRACE=y ++CONFIG_CLONE_BACKWARDS=y ++CONFIG_OLD_SIGSUSPEND=y ++CONFIG_COMPAT_OLD_SIGACTION=y ++CONFIG_COMPAT_32BIT_TIME=y ++CONFIG_ARCH_HAS_PHYS_TO_DMA=y ++# CONFIG_REFCOUNT_FULL is not set ++ ++# ++# GCOV-based kernel profiling ++# ++# CONFIG_GCOV_KERNEL is not set ++CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y ++CONFIG_PLUGIN_HOSTCC="" ++CONFIG_HAVE_GCC_PLUGINS=y ++CONFIG_RT_MUTEXES=y ++CONFIG_BASE_SMALL=0 ++CONFIG_MODULES=y ++# CONFIG_MODULE_FORCE_LOAD is not set ++CONFIG_MODULE_UNLOAD=y ++# CONFIG_MODULE_FORCE_UNLOAD is not set ++CONFIG_MODVERSIONS=y ++CONFIG_MODULE_REL_CRCS=y ++CONFIG_MODULE_SRCVERSION_ALL=y ++CONFIG_MODULE_SIG=y ++# CONFIG_MODULE_SIG_FORCE is not set ++CONFIG_MODULE_SIG_ALL=y ++# CONFIG_MODULE_SIG_SHA1 is not set ++# CONFIG_MODULE_SIG_SHA224 is not set ++# CONFIG_MODULE_SIG_SHA256 is not set ++# CONFIG_MODULE_SIG_SHA384 is not set ++CONFIG_MODULE_SIG_SHA512=y ++CONFIG_MODULE_SIG_HASH="sha512" ++# CONFIG_MODULE_COMPRESS is not set ++CONFIG_MODULES_TREE_LOOKUP=y ++CONFIG_BLOCK=y ++CONFIG_BLK_SCSI_REQUEST=y ++CONFIG_BLK_DEV_BSG=y ++CONFIG_BLK_DEV_BSGLIB=y ++CONFIG_BLK_DEV_INTEGRITY=y ++# CONFIG_BLK_DEV_ZONED is not set ++CONFIG_BLK_DEV_THROTTLING=y ++# CONFIG_BLK_DEV_THROTTLING_LOW is not set ++CONFIG_BLK_CMDLINE_PARSER=y ++# CONFIG_BLK_WBT is not set ++# CONFIG_BLK_CGROUP_IOLATENCY is not set ++CONFIG_BLK_DEBUG_FS=y ++# CONFIG_BLK_SED_OPAL is not set ++ ++# ++# Partition Types ++# ++CONFIG_PARTITION_ADVANCED=y ++# CONFIG_ACORN_PARTITION is not set ++CONFIG_AIX_PARTITION=y ++CONFIG_OSF_PARTITION=y ++CONFIG_AMIGA_PARTITION=y ++CONFIG_ATARI_PARTITION=y ++CONFIG_MAC_PARTITION=y ++CONFIG_MSDOS_PARTITION=y ++CONFIG_BSD_DISKLABEL=y ++CONFIG_MINIX_SUBPARTITION=y ++CONFIG_SOLARIS_X86_PARTITION=y ++CONFIG_UNIXWARE_DISKLABEL=y ++CONFIG_LDM_PARTITION=y ++# CONFIG_LDM_DEBUG is not set ++CONFIG_SGI_PARTITION=y ++CONFIG_ULTRIX_PARTITION=y ++CONFIG_SUN_PARTITION=y ++CONFIG_KARMA_PARTITION=y ++CONFIG_EFI_PARTITION=y ++CONFIG_SYSV68_PARTITION=y ++CONFIG_CMDLINE_PARTITION=y ++CONFIG_BLOCK_COMPAT=y ++CONFIG_BLK_MQ_PCI=y ++CONFIG_BLK_MQ_VIRTIO=y ++CONFIG_BLK_MQ_RDMA=y ++CONFIG_BLK_PM=y ++ ++# ++# IO Schedulers ++# ++CONFIG_MQ_IOSCHED_DEADLINE=y ++CONFIG_MQ_IOSCHED_KYBER=y ++# CONFIG_IOSCHED_BFQ is not set ++CONFIG_PREEMPT_NOTIFIERS=y ++CONFIG_PADATA=y ++CONFIG_ASN1=y ++CONFIG_INLINE_SPIN_UNLOCK_IRQ=y ++CONFIG_INLINE_READ_UNLOCK=y ++CONFIG_INLINE_READ_UNLOCK_IRQ=y ++CONFIG_INLINE_WRITE_UNLOCK=y ++CONFIG_INLINE_WRITE_UNLOCK_IRQ=y ++CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y ++CONFIG_MUTEX_SPIN_ON_OWNER=y ++CONFIG_RWSEM_SPIN_ON_OWNER=y ++CONFIG_LOCK_SPIN_ON_OWNER=y ++CONFIG_FREEZER=y ++ ++# ++# Executable file formats ++# ++CONFIG_BINFMT_ELF=y ++CONFIG_COMPAT_BINFMT_ELF=y ++CONFIG_ELFCORE=y ++CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y ++CONFIG_BINFMT_SCRIPT=y ++CONFIG_BINFMT_MISC=m ++CONFIG_COREDUMP=y ++ ++# ++# Memory Management options ++# ++CONFIG_SELECT_MEMORY_MODEL=y ++CONFIG_SPARSEMEM_MANUAL=y ++CONFIG_SPARSEMEM=y ++CONFIG_NEED_MULTIPLE_NODES=y ++CONFIG_HAVE_MEMORY_PRESENT=y ++CONFIG_SPARSEMEM_EXTREME=y ++CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y ++CONFIG_SPARSEMEM_VMEMMAP=y ++CONFIG_HAVE_MEMBLOCK_NODE_MAP=y ++CONFIG_HAVE_GENERIC_GUP=y ++CONFIG_MEMORY_ISOLATION=y ++CONFIG_HAVE_BOOTMEM_INFO_NODE=y ++CONFIG_MEMORY_HOTPLUG=y ++CONFIG_MEMORY_HOTPLUG_SPARSE=y ++# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set ++CONFIG_MEMORY_HOTREMOVE=y ++CONFIG_SPLIT_PTLOCK_CPUS=4 ++CONFIG_MEMORY_BALLOON=y ++CONFIG_BALLOON_COMPACTION=y ++CONFIG_COMPACTION=y ++CONFIG_MIGRATION=y ++CONFIG_ARCH_ENABLE_THP_MIGRATION=y ++CONFIG_PHYS_ADDR_T_64BIT=y ++CONFIG_MMU_NOTIFIER=y ++CONFIG_KSM=y ++CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 ++CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y ++CONFIG_MEMORY_FAILURE=y ++CONFIG_HWPOISON_INJECT=m ++CONFIG_TRANSPARENT_HUGEPAGE=y ++CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y ++# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set ++CONFIG_TRANSPARENT_HUGE_PAGECACHE=y ++CONFIG_CLEANCACHE=y ++CONFIG_FRONTSWAP=y ++CONFIG_CMA=y ++# CONFIG_CMA_DEBUG is not set ++# CONFIG_CMA_DEBUGFS is not set ++CONFIG_CMA_AREAS=7 ++# CONFIG_MEM_SOFT_DIRTY is not set ++CONFIG_ZSWAP=y ++CONFIG_ZPOOL=y ++CONFIG_ZBUD=y ++# CONFIG_Z3FOLD is not set ++CONFIG_ZSMALLOC=y ++CONFIG_PGTABLE_MAPPING=y ++# CONFIG_ZSMALLOC_STAT is not set ++# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set ++CONFIG_IDLE_PAGE_TRACKING=y ++CONFIG_ARCH_HAS_ZONE_DEVICE=y ++# CONFIG_ZONE_DEVICE is not set ++CONFIG_FRAME_VECTOR=y ++CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y ++CONFIG_ARCH_HAS_PKEYS=y ++# CONFIG_PERCPU_STATS is not set ++# CONFIG_GUP_BENCHMARK is not set ++CONFIG_ARCH_HAS_PTE_SPECIAL=y ++CONFIG_NET=y ++CONFIG_COMPAT_NETLINK_MESSAGES=y ++CONFIG_NET_INGRESS=y ++CONFIG_NET_EGRESS=y ++CONFIG_SKB_EXTENSIONS=y ++ ++# ++# Networking options ++# ++CONFIG_PACKET=y ++CONFIG_PACKET_DIAG=m ++CONFIG_UNIX=y ++CONFIG_UNIX_DIAG=m ++# CONFIG_TLS is not set ++CONFIG_XFRM=y ++CONFIG_XFRM_ALGO=m ++CONFIG_XFRM_USER=m ++# CONFIG_XFRM_INTERFACE is not set ++# CONFIG_XFRM_SUB_POLICY is not set ++# CONFIG_XFRM_MIGRATE is not set ++CONFIG_XFRM_STATISTICS=y ++CONFIG_XFRM_IPCOMP=m ++CONFIG_NET_KEY=m ++# CONFIG_NET_KEY_MIGRATE is not set ++# CONFIG_SMC is not set ++# CONFIG_XDP_SOCKETS is not set ++CONFIG_INET=y ++CONFIG_IP_MULTICAST=y ++CONFIG_IP_ADVANCED_ROUTER=y ++CONFIG_IP_FIB_TRIE_STATS=y ++CONFIG_IP_MULTIPLE_TABLES=y ++CONFIG_IP_ROUTE_MULTIPATH=y ++CONFIG_IP_ROUTE_VERBOSE=y ++CONFIG_IP_ROUTE_CLASSID=y ++# CONFIG_IP_PNP is not set ++CONFIG_NET_IPIP=m ++CONFIG_NET_IPGRE_DEMUX=m ++CONFIG_NET_IP_TUNNEL=m ++CONFIG_NET_IPGRE=m ++CONFIG_NET_IPGRE_BROADCAST=y ++CONFIG_IP_MROUTE_COMMON=y ++CONFIG_IP_MROUTE=y ++# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set ++CONFIG_IP_PIMSM_V1=y ++CONFIG_IP_PIMSM_V2=y ++CONFIG_SYN_COOKIES=y ++CONFIG_NET_IPVTI=m ++CONFIG_NET_UDP_TUNNEL=m ++CONFIG_NET_FOU=m ++CONFIG_NET_FOU_IP_TUNNELS=y ++CONFIG_INET_AH=m ++CONFIG_INET_ESP=m ++# CONFIG_INET_ESP_OFFLOAD is not set ++CONFIG_INET_IPCOMP=m ++CONFIG_INET_XFRM_TUNNEL=m ++CONFIG_INET_TUNNEL=m ++CONFIG_INET_XFRM_MODE_TRANSPORT=m ++CONFIG_INET_XFRM_MODE_TUNNEL=m ++CONFIG_INET_XFRM_MODE_BEET=m ++CONFIG_INET_DIAG=m ++CONFIG_INET_TCP_DIAG=m ++CONFIG_INET_UDP_DIAG=m ++# CONFIG_INET_RAW_DIAG is not set ++# CONFIG_INET_DIAG_DESTROY is not set ++CONFIG_TCP_CONG_ADVANCED=y ++CONFIG_TCP_CONG_BIC=m ++CONFIG_TCP_CONG_CUBIC=y ++CONFIG_TCP_CONG_WESTWOOD=m ++CONFIG_TCP_CONG_HTCP=m ++CONFIG_TCP_CONG_HSTCP=m ++CONFIG_TCP_CONG_HYBLA=m ++CONFIG_TCP_CONG_VEGAS=m ++# CONFIG_TCP_CONG_NV is not set ++CONFIG_TCP_CONG_SCALABLE=m ++CONFIG_TCP_CONG_LP=m ++CONFIG_TCP_CONG_VENO=m ++CONFIG_TCP_CONG_YEAH=m ++CONFIG_TCP_CONG_ILLINOIS=m ++CONFIG_TCP_CONG_DCTCP=m ++CONFIG_TCP_CONG_CDG=m ++# CONFIG_TCP_CONG_BBR is not set ++CONFIG_DEFAULT_CUBIC=y ++# CONFIG_DEFAULT_RENO is not set ++CONFIG_DEFAULT_TCP_CONG="cubic" ++CONFIG_TCP_MD5SIG=y ++CONFIG_IPV6=y ++CONFIG_IPV6_ROUTER_PREF=y ++CONFIG_IPV6_ROUTE_INFO=y ++# CONFIG_IPV6_OPTIMISTIC_DAD is not set ++CONFIG_INET6_AH=m ++CONFIG_INET6_ESP=m ++# CONFIG_INET6_ESP_OFFLOAD is not set ++CONFIG_INET6_IPCOMP=m ++CONFIG_IPV6_MIP6=m ++CONFIG_IPV6_ILA=m ++CONFIG_INET6_XFRM_TUNNEL=m ++CONFIG_INET6_TUNNEL=m ++CONFIG_INET6_XFRM_MODE_TRANSPORT=m ++CONFIG_INET6_XFRM_MODE_TUNNEL=m ++CONFIG_INET6_XFRM_MODE_BEET=m ++CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m ++CONFIG_IPV6_VTI=m ++CONFIG_IPV6_SIT=m ++CONFIG_IPV6_SIT_6RD=y ++CONFIG_IPV6_NDISC_NODETYPE=y ++CONFIG_IPV6_TUNNEL=m ++CONFIG_IPV6_GRE=m ++CONFIG_IPV6_FOU=m ++CONFIG_IPV6_FOU_TUNNEL=m ++CONFIG_IPV6_MULTIPLE_TABLES=y ++CONFIG_IPV6_SUBTREES=y ++CONFIG_IPV6_MROUTE=y ++CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y ++CONFIG_IPV6_PIMSM_V2=y ++# CONFIG_IPV6_SEG6_LWTUNNEL is not set ++# CONFIG_IPV6_SEG6_HMAC is not set ++CONFIG_NETLABEL=y ++CONFIG_NETWORK_SECMARK=y ++CONFIG_NET_PTP_CLASSIFY=y ++# CONFIG_NETWORK_PHY_TIMESTAMPING is not set ++CONFIG_NETFILTER=y ++CONFIG_NETFILTER_ADVANCED=y ++CONFIG_BRIDGE_NETFILTER=m ++ ++# ++# Core Netfilter Configuration ++# ++CONFIG_NETFILTER_INGRESS=y ++CONFIG_NETFILTER_NETLINK=m ++CONFIG_NETFILTER_FAMILY_BRIDGE=y ++CONFIG_NETFILTER_FAMILY_ARP=y ++CONFIG_NETFILTER_NETLINK_ACCT=m ++CONFIG_NETFILTER_NETLINK_QUEUE=m ++CONFIG_NETFILTER_NETLINK_LOG=m ++CONFIG_NETFILTER_NETLINK_OSF=m ++CONFIG_NF_CONNTRACK=m ++CONFIG_NF_LOG_COMMON=m ++# CONFIG_NF_LOG_NETDEV is not set ++CONFIG_NETFILTER_CONNCOUNT=m ++CONFIG_NF_CONNTRACK_MARK=y ++CONFIG_NF_CONNTRACK_SECMARK=y ++CONFIG_NF_CONNTRACK_ZONES=y ++# CONFIG_NF_CONNTRACK_PROCFS is not set ++CONFIG_NF_CONNTRACK_EVENTS=y ++CONFIG_NF_CONNTRACK_TIMEOUT=y ++CONFIG_NF_CONNTRACK_TIMESTAMP=y ++CONFIG_NF_CONNTRACK_LABELS=y ++CONFIG_NF_CT_PROTO_DCCP=y ++CONFIG_NF_CT_PROTO_GRE=m ++CONFIG_NF_CT_PROTO_SCTP=y ++CONFIG_NF_CT_PROTO_UDPLITE=y ++CONFIG_NF_CONNTRACK_AMANDA=m ++CONFIG_NF_CONNTRACK_FTP=m ++CONFIG_NF_CONNTRACK_H323=m ++CONFIG_NF_CONNTRACK_IRC=m ++CONFIG_NF_CONNTRACK_BROADCAST=m ++CONFIG_NF_CONNTRACK_NETBIOS_NS=m ++CONFIG_NF_CONNTRACK_SNMP=m ++CONFIG_NF_CONNTRACK_PPTP=m ++CONFIG_NF_CONNTRACK_SANE=m ++CONFIG_NF_CONNTRACK_SIP=m ++CONFIG_NF_CONNTRACK_TFTP=m ++CONFIG_NF_CT_NETLINK=m ++CONFIG_NF_CT_NETLINK_TIMEOUT=m ++CONFIG_NF_CT_NETLINK_HELPER=m ++CONFIG_NETFILTER_NETLINK_GLUE_CT=y ++CONFIG_NF_NAT=m ++CONFIG_NF_NAT_NEEDED=y ++CONFIG_NF_NAT_AMANDA=m ++CONFIG_NF_NAT_FTP=m ++CONFIG_NF_NAT_IRC=m ++CONFIG_NF_NAT_SIP=m ++CONFIG_NF_NAT_TFTP=m ++CONFIG_NF_NAT_REDIRECT=y ++CONFIG_NETFILTER_SYNPROXY=m ++CONFIG_NF_TABLES=m ++# CONFIG_NF_TABLES_SET is not set ++# CONFIG_NF_TABLES_INET is not set ++# CONFIG_NF_TABLES_NETDEV is not set ++# CONFIG_NFT_NUMGEN is not set ++CONFIG_NFT_CT=m ++CONFIG_NFT_COUNTER=m ++# CONFIG_NFT_CONNLIMIT is not set ++CONFIG_NFT_LOG=m ++CONFIG_NFT_LIMIT=m ++CONFIG_NFT_MASQ=m ++CONFIG_NFT_REDIR=m ++CONFIG_NFT_NAT=m ++# CONFIG_NFT_TUNNEL is not set ++# CONFIG_NFT_OBJREF is not set ++CONFIG_NFT_QUEUE=m ++# CONFIG_NFT_QUOTA is not set ++CONFIG_NFT_REJECT=m ++CONFIG_NFT_COMPAT=m ++CONFIG_NFT_HASH=m ++# CONFIG_NFT_XFRM is not set ++# CONFIG_NFT_SOCKET is not set ++# CONFIG_NFT_OSF is not set ++# CONFIG_NFT_TPROXY is not set ++# CONFIG_NF_FLOW_TABLE is not set ++CONFIG_NETFILTER_XTABLES=m ++ ++# ++# Xtables combined modules ++# ++CONFIG_NETFILTER_XT_MARK=m ++CONFIG_NETFILTER_XT_CONNMARK=m ++CONFIG_NETFILTER_XT_SET=m ++ ++# ++# Xtables targets ++# ++CONFIG_NETFILTER_XT_TARGET_AUDIT=m ++CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m ++CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m ++CONFIG_NETFILTER_XT_TARGET_CONNMARK=m ++CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m ++CONFIG_NETFILTER_XT_TARGET_CT=m ++CONFIG_NETFILTER_XT_TARGET_DSCP=m ++CONFIG_NETFILTER_XT_TARGET_HL=m ++CONFIG_NETFILTER_XT_TARGET_HMARK=m ++CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m ++CONFIG_NETFILTER_XT_TARGET_LED=m ++CONFIG_NETFILTER_XT_TARGET_LOG=m ++CONFIG_NETFILTER_XT_TARGET_MARK=m ++CONFIG_NETFILTER_XT_NAT=m ++CONFIG_NETFILTER_XT_TARGET_NETMAP=m ++CONFIG_NETFILTER_XT_TARGET_NFLOG=m ++CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m ++# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set ++CONFIG_NETFILTER_XT_TARGET_RATEEST=m ++CONFIG_NETFILTER_XT_TARGET_REDIRECT=m ++CONFIG_NETFILTER_XT_TARGET_TEE=m ++CONFIG_NETFILTER_XT_TARGET_TPROXY=m ++CONFIG_NETFILTER_XT_TARGET_TRACE=m ++CONFIG_NETFILTER_XT_TARGET_SECMARK=m ++CONFIG_NETFILTER_XT_TARGET_TCPMSS=m ++CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m ++ ++# ++# Xtables matches ++# ++CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m ++CONFIG_NETFILTER_XT_MATCH_BPF=m ++CONFIG_NETFILTER_XT_MATCH_CGROUP=m ++CONFIG_NETFILTER_XT_MATCH_CLUSTER=m ++CONFIG_NETFILTER_XT_MATCH_COMMENT=m ++CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m ++CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m ++CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m ++CONFIG_NETFILTER_XT_MATCH_CONNMARK=m ++CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m ++CONFIG_NETFILTER_XT_MATCH_CPU=m ++CONFIG_NETFILTER_XT_MATCH_DCCP=m ++CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m ++CONFIG_NETFILTER_XT_MATCH_DSCP=m ++CONFIG_NETFILTER_XT_MATCH_ECN=m ++CONFIG_NETFILTER_XT_MATCH_ESP=m ++CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m ++CONFIG_NETFILTER_XT_MATCH_HELPER=m ++CONFIG_NETFILTER_XT_MATCH_HL=m ++CONFIG_NETFILTER_XT_MATCH_IPCOMP=m ++CONFIG_NETFILTER_XT_MATCH_IPRANGE=m ++CONFIG_NETFILTER_XT_MATCH_IPVS=m ++CONFIG_NETFILTER_XT_MATCH_L2TP=m ++CONFIG_NETFILTER_XT_MATCH_LENGTH=m ++CONFIG_NETFILTER_XT_MATCH_LIMIT=m ++CONFIG_NETFILTER_XT_MATCH_MAC=m ++CONFIG_NETFILTER_XT_MATCH_MARK=m ++CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m ++CONFIG_NETFILTER_XT_MATCH_NFACCT=m ++CONFIG_NETFILTER_XT_MATCH_OSF=m ++CONFIG_NETFILTER_XT_MATCH_OWNER=m ++CONFIG_NETFILTER_XT_MATCH_POLICY=m ++CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m ++CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m ++CONFIG_NETFILTER_XT_MATCH_QUOTA=m ++CONFIG_NETFILTER_XT_MATCH_RATEEST=m ++CONFIG_NETFILTER_XT_MATCH_REALM=m ++CONFIG_NETFILTER_XT_MATCH_RECENT=m ++CONFIG_NETFILTER_XT_MATCH_SCTP=m ++CONFIG_NETFILTER_XT_MATCH_SOCKET=m ++CONFIG_NETFILTER_XT_MATCH_STATE=m ++CONFIG_NETFILTER_XT_MATCH_STATISTIC=m ++CONFIG_NETFILTER_XT_MATCH_STRING=m ++CONFIG_NETFILTER_XT_MATCH_TCPMSS=m ++CONFIG_NETFILTER_XT_MATCH_TIME=m ++CONFIG_NETFILTER_XT_MATCH_U32=m ++CONFIG_IP_SET=m ++CONFIG_IP_SET_MAX=256 ++CONFIG_IP_SET_BITMAP_IP=m ++CONFIG_IP_SET_BITMAP_IPMAC=m ++CONFIG_IP_SET_BITMAP_PORT=m ++CONFIG_IP_SET_HASH_IP=m ++CONFIG_IP_SET_HASH_IPMARK=m ++CONFIG_IP_SET_HASH_IPPORT=m ++CONFIG_IP_SET_HASH_IPPORTIP=m ++CONFIG_IP_SET_HASH_IPPORTNET=m ++# CONFIG_IP_SET_HASH_IPMAC is not set ++CONFIG_IP_SET_HASH_MAC=m ++CONFIG_IP_SET_HASH_NETPORTNET=m ++CONFIG_IP_SET_HASH_NET=m ++CONFIG_IP_SET_HASH_NETNET=m ++CONFIG_IP_SET_HASH_NETPORT=m ++CONFIG_IP_SET_HASH_NETIFACE=m ++CONFIG_IP_SET_LIST_SET=m ++CONFIG_IP_VS=m ++CONFIG_IP_VS_IPV6=y ++# CONFIG_IP_VS_DEBUG is not set ++CONFIG_IP_VS_TAB_BITS=12 ++ ++# ++# IPVS transport protocol load balancing support ++# ++CONFIG_IP_VS_PROTO_TCP=y ++CONFIG_IP_VS_PROTO_UDP=y ++CONFIG_IP_VS_PROTO_AH_ESP=y ++CONFIG_IP_VS_PROTO_ESP=y ++CONFIG_IP_VS_PROTO_AH=y ++CONFIG_IP_VS_PROTO_SCTP=y ++ ++# ++# IPVS scheduler ++# ++CONFIG_IP_VS_RR=m ++CONFIG_IP_VS_WRR=m ++CONFIG_IP_VS_LC=m ++CONFIG_IP_VS_WLC=m ++CONFIG_IP_VS_FO=m ++CONFIG_IP_VS_OVF=m ++CONFIG_IP_VS_LBLC=m ++CONFIG_IP_VS_LBLCR=m ++CONFIG_IP_VS_DH=m ++CONFIG_IP_VS_SH=m ++# CONFIG_IP_VS_MH is not set ++CONFIG_IP_VS_SED=m ++CONFIG_IP_VS_NQ=m ++ ++# ++# IPVS SH scheduler ++# ++CONFIG_IP_VS_SH_TAB_BITS=8 ++ ++# ++# IPVS MH scheduler ++# ++CONFIG_IP_VS_MH_TAB_INDEX=12 ++ ++# ++# IPVS application helper ++# ++CONFIG_IP_VS_FTP=m ++CONFIG_IP_VS_NFCT=y ++CONFIG_IP_VS_PE_SIP=m ++ ++# ++# IP: Netfilter Configuration ++# ++CONFIG_NF_DEFRAG_IPV4=m ++CONFIG_NF_SOCKET_IPV4=m ++CONFIG_NF_TPROXY_IPV4=m ++# CONFIG_NF_TABLES_IPV4 is not set ++# CONFIG_NF_TABLES_ARP is not set ++CONFIG_NF_DUP_IPV4=m ++CONFIG_NF_LOG_ARP=m ++CONFIG_NF_LOG_IPV4=m ++CONFIG_NF_REJECT_IPV4=m ++CONFIG_NF_NAT_IPV4=m ++CONFIG_NF_NAT_MASQUERADE_IPV4=y ++CONFIG_NF_NAT_SNMP_BASIC=m ++CONFIG_NF_NAT_PPTP=m ++CONFIG_NF_NAT_H323=m ++CONFIG_IP_NF_IPTABLES=m ++CONFIG_IP_NF_MATCH_AH=m ++CONFIG_IP_NF_MATCH_ECN=m ++CONFIG_IP_NF_MATCH_RPFILTER=m ++CONFIG_IP_NF_MATCH_TTL=m ++CONFIG_IP_NF_FILTER=m ++CONFIG_IP_NF_TARGET_REJECT=m ++CONFIG_IP_NF_TARGET_SYNPROXY=m ++CONFIG_IP_NF_NAT=m ++CONFIG_IP_NF_TARGET_MASQUERADE=m ++CONFIG_IP_NF_TARGET_NETMAP=m ++CONFIG_IP_NF_TARGET_REDIRECT=m ++CONFIG_IP_NF_MANGLE=m ++CONFIG_IP_NF_TARGET_CLUSTERIP=m ++CONFIG_IP_NF_TARGET_ECN=m ++CONFIG_IP_NF_TARGET_TTL=m ++CONFIG_IP_NF_RAW=m ++CONFIG_IP_NF_SECURITY=m ++CONFIG_IP_NF_ARPTABLES=m ++CONFIG_IP_NF_ARPFILTER=m ++CONFIG_IP_NF_ARP_MANGLE=m ++ ++# ++# IPv6: Netfilter Configuration ++# ++CONFIG_NF_SOCKET_IPV6=m ++CONFIG_NF_TPROXY_IPV6=m ++# CONFIG_NF_TABLES_IPV6 is not set ++CONFIG_NF_DUP_IPV6=m ++CONFIG_NF_REJECT_IPV6=m ++CONFIG_NF_LOG_IPV6=m ++CONFIG_NF_NAT_IPV6=m ++CONFIG_NF_NAT_MASQUERADE_IPV6=y ++CONFIG_IP6_NF_IPTABLES=m ++CONFIG_IP6_NF_MATCH_AH=m ++CONFIG_IP6_NF_MATCH_EUI64=m ++CONFIG_IP6_NF_MATCH_FRAG=m ++CONFIG_IP6_NF_MATCH_OPTS=m ++CONFIG_IP6_NF_MATCH_HL=m ++CONFIG_IP6_NF_MATCH_IPV6HEADER=m ++CONFIG_IP6_NF_MATCH_MH=m ++CONFIG_IP6_NF_MATCH_RPFILTER=m ++CONFIG_IP6_NF_MATCH_RT=m ++# CONFIG_IP6_NF_MATCH_SRH is not set ++CONFIG_IP6_NF_TARGET_HL=m ++CONFIG_IP6_NF_FILTER=m ++CONFIG_IP6_NF_TARGET_REJECT=m ++CONFIG_IP6_NF_TARGET_SYNPROXY=m ++CONFIG_IP6_NF_MANGLE=m ++CONFIG_IP6_NF_RAW=m ++CONFIG_IP6_NF_SECURITY=m ++CONFIG_IP6_NF_NAT=m ++CONFIG_IP6_NF_TARGET_MASQUERADE=m ++CONFIG_IP6_NF_TARGET_NPT=m ++CONFIG_NF_DEFRAG_IPV6=m ++ ++# ++# DECnet: Netfilter Configuration ++# ++CONFIG_DECNET_NF_GRABULATOR=m ++# CONFIG_NF_TABLES_BRIDGE is not set ++CONFIG_BRIDGE_NF_EBTABLES=m ++CONFIG_BRIDGE_EBT_BROUTE=m ++CONFIG_BRIDGE_EBT_T_FILTER=m ++CONFIG_BRIDGE_EBT_T_NAT=m ++CONFIG_BRIDGE_EBT_802_3=m ++CONFIG_BRIDGE_EBT_AMONG=m ++CONFIG_BRIDGE_EBT_ARP=m ++CONFIG_BRIDGE_EBT_IP=m ++CONFIG_BRIDGE_EBT_IP6=m ++CONFIG_BRIDGE_EBT_LIMIT=m ++CONFIG_BRIDGE_EBT_MARK=m ++CONFIG_BRIDGE_EBT_PKTTYPE=m ++CONFIG_BRIDGE_EBT_STP=m ++CONFIG_BRIDGE_EBT_VLAN=m ++CONFIG_BRIDGE_EBT_ARPREPLY=m ++CONFIG_BRIDGE_EBT_DNAT=m ++CONFIG_BRIDGE_EBT_MARK_T=m ++CONFIG_BRIDGE_EBT_REDIRECT=m ++CONFIG_BRIDGE_EBT_SNAT=m ++CONFIG_BRIDGE_EBT_LOG=m ++CONFIG_BRIDGE_EBT_NFLOG=m ++# CONFIG_BPFILTER is not set ++CONFIG_IP_DCCP=m ++CONFIG_INET_DCCP_DIAG=m ++ ++# ++# DCCP CCIDs Configuration ++# ++# CONFIG_IP_DCCP_CCID2_DEBUG is not set ++# CONFIG_IP_DCCP_CCID3 is not set ++ ++# ++# DCCP Kernel Hacking ++# ++# CONFIG_IP_DCCP_DEBUG is not set ++CONFIG_IP_SCTP=m ++# CONFIG_SCTP_DBG_OBJCNT is not set ++# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set ++CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y ++# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set ++CONFIG_SCTP_COOKIE_HMAC_MD5=y ++CONFIG_SCTP_COOKIE_HMAC_SHA1=y ++CONFIG_INET_SCTP_DIAG=m ++CONFIG_RDS=m ++CONFIG_RDS_RDMA=m ++CONFIG_RDS_TCP=m ++# CONFIG_RDS_DEBUG is not set ++CONFIG_TIPC=m ++CONFIG_TIPC_MEDIA_IB=y ++CONFIG_TIPC_MEDIA_UDP=y ++CONFIG_TIPC_DIAG=m ++CONFIG_ATM=m ++CONFIG_ATM_CLIP=m ++# CONFIG_ATM_CLIP_NO_ICMP is not set ++CONFIG_ATM_LANE=m ++CONFIG_ATM_MPOA=m ++CONFIG_ATM_BR2684=m ++# CONFIG_ATM_BR2684_IPFILTER is not set ++CONFIG_L2TP=m ++CONFIG_L2TP_DEBUGFS=m ++CONFIG_L2TP_V3=y ++CONFIG_L2TP_IP=m ++CONFIG_L2TP_ETH=m ++CONFIG_STP=m ++CONFIG_GARP=m ++CONFIG_MRP=m ++CONFIG_BRIDGE=m ++CONFIG_BRIDGE_IGMP_SNOOPING=y ++CONFIG_BRIDGE_VLAN_FILTERING=y ++CONFIG_HAVE_NET_DSA=y ++# CONFIG_NET_DSA is not set ++CONFIG_VLAN_8021Q=m ++CONFIG_VLAN_8021Q_GVRP=y ++CONFIG_VLAN_8021Q_MVRP=y ++CONFIG_DECNET=m ++# CONFIG_DECNET_ROUTER is not set ++CONFIG_LLC=m ++CONFIG_LLC2=m ++CONFIG_ATALK=m ++CONFIG_DEV_APPLETALK=m ++CONFIG_IPDDP=m ++CONFIG_IPDDP_ENCAP=y ++CONFIG_X25=m ++CONFIG_LAPB=m ++CONFIG_PHONET=m ++CONFIG_6LOWPAN=m ++# CONFIG_6LOWPAN_DEBUGFS is not set ++CONFIG_6LOWPAN_NHC=m ++CONFIG_6LOWPAN_NHC_DEST=m ++CONFIG_6LOWPAN_NHC_FRAGMENT=m ++CONFIG_6LOWPAN_NHC_HOP=m ++CONFIG_6LOWPAN_NHC_IPV6=m ++CONFIG_6LOWPAN_NHC_MOBILITY=m ++CONFIG_6LOWPAN_NHC_ROUTING=m ++CONFIG_6LOWPAN_NHC_UDP=m ++# CONFIG_6LOWPAN_GHC_EXT_HDR_HOP is not set ++# CONFIG_6LOWPAN_GHC_UDP is not set ++# CONFIG_6LOWPAN_GHC_ICMPV6 is not set ++# CONFIG_6LOWPAN_GHC_EXT_HDR_DEST is not set ++# CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG is not set ++# CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE is not set ++CONFIG_IEEE802154=m ++CONFIG_IEEE802154_NL802154_EXPERIMENTAL=y ++CONFIG_IEEE802154_SOCKET=m ++CONFIG_IEEE802154_6LOWPAN=m ++CONFIG_MAC802154=m ++CONFIG_NET_SCHED=y ++ ++# ++# Queueing/Scheduling ++# ++CONFIG_NET_SCH_CBQ=m ++CONFIG_NET_SCH_HTB=m ++CONFIG_NET_SCH_HFSC=m ++CONFIG_NET_SCH_ATM=m ++CONFIG_NET_SCH_PRIO=m ++CONFIG_NET_SCH_MULTIQ=m ++CONFIG_NET_SCH_RED=m ++CONFIG_NET_SCH_SFB=m ++CONFIG_NET_SCH_SFQ=m ++CONFIG_NET_SCH_TEQL=m ++CONFIG_NET_SCH_TBF=m ++# CONFIG_NET_SCH_CBS is not set ++# CONFIG_NET_SCH_ETF is not set ++# CONFIG_NET_SCH_TAPRIO is not set ++CONFIG_NET_SCH_GRED=m ++CONFIG_NET_SCH_DSMARK=m ++CONFIG_NET_SCH_NETEM=m ++CONFIG_NET_SCH_DRR=m ++CONFIG_NET_SCH_MQPRIO=m ++# CONFIG_NET_SCH_SKBPRIO is not set ++CONFIG_NET_SCH_CHOKE=m ++CONFIG_NET_SCH_QFQ=m ++CONFIG_NET_SCH_CODEL=m ++CONFIG_NET_SCH_FQ_CODEL=m ++# CONFIG_NET_SCH_CAKE is not set ++CONFIG_NET_SCH_FQ=m ++CONFIG_NET_SCH_HHF=m ++CONFIG_NET_SCH_PIE=m ++CONFIG_NET_SCH_INGRESS=m ++CONFIG_NET_SCH_PLUG=m ++# CONFIG_NET_SCH_DEFAULT is not set ++ ++# ++# Classification ++# ++CONFIG_NET_CLS=y ++CONFIG_NET_CLS_BASIC=m ++CONFIG_NET_CLS_TCINDEX=m ++CONFIG_NET_CLS_ROUTE4=m ++CONFIG_NET_CLS_FW=m ++CONFIG_NET_CLS_U32=m ++# CONFIG_CLS_U32_PERF is not set ++CONFIG_CLS_U32_MARK=y ++CONFIG_NET_CLS_RSVP=m ++CONFIG_NET_CLS_RSVP6=m ++CONFIG_NET_CLS_FLOW=m ++CONFIG_NET_CLS_CGROUP=m ++CONFIG_NET_CLS_BPF=m ++CONFIG_NET_CLS_FLOWER=m ++# CONFIG_NET_CLS_MATCHALL is not set ++CONFIG_NET_EMATCH=y ++CONFIG_NET_EMATCH_STACK=32 ++CONFIG_NET_EMATCH_CMP=m ++CONFIG_NET_EMATCH_NBYTE=m ++CONFIG_NET_EMATCH_U32=m ++CONFIG_NET_EMATCH_META=m ++CONFIG_NET_EMATCH_TEXT=m ++CONFIG_NET_EMATCH_CANID=m ++CONFIG_NET_EMATCH_IPSET=m ++# CONFIG_NET_EMATCH_IPT is not set ++CONFIG_NET_CLS_ACT=y ++CONFIG_NET_ACT_POLICE=m ++CONFIG_NET_ACT_GACT=m ++CONFIG_GACT_PROB=y ++CONFIG_NET_ACT_MIRRED=m ++# CONFIG_NET_ACT_SAMPLE is not set ++CONFIG_NET_ACT_IPT=m ++CONFIG_NET_ACT_NAT=m ++CONFIG_NET_ACT_PEDIT=m ++CONFIG_NET_ACT_SIMP=m ++CONFIG_NET_ACT_SKBEDIT=m ++CONFIG_NET_ACT_CSUM=m ++CONFIG_NET_ACT_VLAN=m ++CONFIG_NET_ACT_BPF=m ++CONFIG_NET_ACT_CONNMARK=m ++# CONFIG_NET_ACT_SKBMOD is not set ++# CONFIG_NET_ACT_IFE is not set ++# CONFIG_NET_ACT_TUNNEL_KEY is not set ++# CONFIG_NET_CLS_IND is not set ++CONFIG_NET_SCH_FIFO=y ++CONFIG_DCB=y ++CONFIG_DNS_RESOLVER=y ++CONFIG_BATMAN_ADV=m ++CONFIG_BATMAN_ADV_BATMAN_V=y ++CONFIG_BATMAN_ADV_BLA=y ++CONFIG_BATMAN_ADV_DAT=y ++CONFIG_BATMAN_ADV_NC=y ++CONFIG_BATMAN_ADV_MCAST=y ++# CONFIG_BATMAN_ADV_DEBUGFS is not set ++# CONFIG_BATMAN_ADV_DEBUG is not set ++# CONFIG_BATMAN_ADV_TRACING is not set ++CONFIG_OPENVSWITCH=m ++CONFIG_OPENVSWITCH_GRE=m ++CONFIG_OPENVSWITCH_VXLAN=m ++CONFIG_OPENVSWITCH_GENEVE=m ++CONFIG_VSOCKETS=m ++CONFIG_VSOCKETS_DIAG=m ++# CONFIG_VIRTIO_VSOCKETS is not set ++CONFIG_NETLINK_DIAG=m ++CONFIG_MPLS=y ++CONFIG_NET_MPLS_GSO=m ++CONFIG_MPLS_ROUTING=m ++CONFIG_MPLS_IPTUNNEL=m ++CONFIG_NET_NSH=m ++CONFIG_HSR=m ++# CONFIG_NET_SWITCHDEV is not set ++CONFIG_NET_L3_MASTER_DEV=y ++# CONFIG_NET_NCSI is not set ++CONFIG_RPS=y ++CONFIG_RFS_ACCEL=y ++CONFIG_XPS=y ++CONFIG_CGROUP_NET_PRIO=y ++CONFIG_CGROUP_NET_CLASSID=y ++CONFIG_NET_RX_BUSY_POLL=y ++CONFIG_BQL=y ++CONFIG_BPF_JIT=y ++CONFIG_NET_FLOW_LIMIT=y ++ ++# ++# Network testing ++# ++CONFIG_NET_PKTGEN=m ++# CONFIG_NET_DROP_MONITOR is not set ++CONFIG_HAMRADIO=y ++ ++# ++# Packet Radio protocols ++# ++CONFIG_AX25=m ++CONFIG_AX25_DAMA_SLAVE=y ++CONFIG_NETROM=m ++CONFIG_ROSE=m ++ ++# ++# AX.25 network device drivers ++# ++CONFIG_MKISS=m ++CONFIG_6PACK=m ++CONFIG_BPQETHER=m ++CONFIG_BAYCOM_SER_FDX=m ++CONFIG_BAYCOM_SER_HDX=m ++CONFIG_BAYCOM_PAR=m ++CONFIG_YAM=m ++CONFIG_CAN=m ++CONFIG_CAN_RAW=m ++CONFIG_CAN_BCM=m ++CONFIG_CAN_GW=m ++ ++# ++# CAN Device Drivers ++# ++CONFIG_CAN_VCAN=m ++# CONFIG_CAN_VXCAN is not set ++CONFIG_CAN_SLCAN=m ++CONFIG_CAN_DEV=m ++CONFIG_CAN_CALC_BITTIMING=y ++CONFIG_CAN_FLEXCAN=m ++CONFIG_CAN_GRCAN=m ++CONFIG_CAN_JANZ_ICAN3=m ++CONFIG_CAN_C_CAN=m ++CONFIG_CAN_C_CAN_PLATFORM=m ++CONFIG_CAN_C_CAN_PCI=m ++CONFIG_CAN_CC770=m ++CONFIG_CAN_CC770_ISA=m ++CONFIG_CAN_CC770_PLATFORM=m ++# CONFIG_CAN_IFI_CANFD is not set ++CONFIG_CAN_M_CAN=m ++CONFIG_CAN_MSCAN=m ++# CONFIG_CAN_PEAK_PCIEFD is not set ++CONFIG_CAN_SJA1000=m ++CONFIG_CAN_SJA1000_ISA=m ++CONFIG_CAN_SJA1000_PLATFORM=m ++CONFIG_CAN_EMS_PCI=m ++CONFIG_CAN_PEAK_PCI=m ++CONFIG_CAN_PEAK_PCIEC=y ++CONFIG_CAN_KVASER_PCI=m ++CONFIG_CAN_PLX_PCI=m ++CONFIG_CAN_SOFTING=m ++ ++# ++# CAN SPI interfaces ++# ++# CONFIG_CAN_HI311X is not set ++CONFIG_CAN_MCP251X=m ++ ++# ++# CAN USB interfaces ++# ++CONFIG_CAN_8DEV_USB=m ++CONFIG_CAN_EMS_USB=m ++CONFIG_CAN_ESD_USB2=m ++CONFIG_CAN_GS_USB=m ++CONFIG_CAN_KVASER_USB=m ++# CONFIG_CAN_MCBA_USB is not set ++CONFIG_CAN_PEAK_USB=m ++# CONFIG_CAN_UCAN is not set ++# CONFIG_CAN_DEBUG_DEVICES is not set ++CONFIG_BT=m ++CONFIG_BT_BREDR=y ++CONFIG_BT_RFCOMM=m ++CONFIG_BT_RFCOMM_TTY=y ++CONFIG_BT_BNEP=m ++CONFIG_BT_BNEP_MC_FILTER=y ++CONFIG_BT_BNEP_PROTO_FILTER=y ++CONFIG_BT_CMTP=m ++CONFIG_BT_HIDP=m ++CONFIG_BT_HS=y ++CONFIG_BT_LE=y ++CONFIG_BT_6LOWPAN=m ++# CONFIG_BT_LEDS is not set ++# CONFIG_BT_SELFTEST is not set ++CONFIG_BT_DEBUGFS=y ++ ++# ++# Bluetooth device drivers ++# ++CONFIG_BT_INTEL=m ++CONFIG_BT_BCM=m ++CONFIG_BT_RTL=m ++CONFIG_BT_HCIBTUSB=m ++# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set ++CONFIG_BT_HCIBTUSB_BCM=y ++CONFIG_BT_HCIBTUSB_RTL=y ++CONFIG_BT_HCIBTSDIO=m ++CONFIG_BT_HCIUART=m ++CONFIG_BT_HCIUART_H4=y ++CONFIG_BT_HCIUART_BCSP=y ++CONFIG_BT_HCIUART_ATH3K=y ++CONFIG_BT_HCIUART_INTEL=y ++# CONFIG_BT_HCIUART_AG6XX is not set ++# CONFIG_BT_HCIUART_MRVL is not set ++CONFIG_BT_HCIBCM203X=m ++CONFIG_BT_HCIBPA10X=m ++CONFIG_BT_HCIBFUSB=m ++CONFIG_BT_HCIVHCI=m ++CONFIG_BT_MRVL=m ++CONFIG_BT_MRVL_SDIO=m ++CONFIG_BT_ATH3K=m ++CONFIG_BT_WILINK=m ++CONFIG_BT_HCIRSI=m ++CONFIG_AF_RXRPC=m ++# CONFIG_AF_RXRPC_IPV6 is not set ++# CONFIG_AF_RXRPC_INJECT_LOSS is not set ++# CONFIG_AF_RXRPC_DEBUG is not set ++# CONFIG_RXKAD is not set ++# CONFIG_AF_KCM is not set ++CONFIG_FIB_RULES=y ++CONFIG_WIRELESS=y ++CONFIG_WIRELESS_EXT=y ++CONFIG_WEXT_CORE=y ++CONFIG_WEXT_PROC=y ++CONFIG_WEXT_SPY=y ++CONFIG_WEXT_PRIV=y ++CONFIG_CFG80211=m ++# CONFIG_NL80211_TESTMODE is not set ++# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set ++# CONFIG_CFG80211_CERTIFICATION_ONUS is not set ++CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y ++CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y ++CONFIG_CFG80211_DEFAULT_PS=y ++CONFIG_CFG80211_DEBUGFS=y ++CONFIG_CFG80211_CRDA_SUPPORT=y ++CONFIG_CFG80211_WEXT=y ++CONFIG_CFG80211_WEXT_EXPORT=y ++CONFIG_LIB80211=m ++CONFIG_LIB80211_CRYPT_WEP=m ++CONFIG_LIB80211_CRYPT_CCMP=m ++CONFIG_LIB80211_CRYPT_TKIP=m ++# CONFIG_LIB80211_DEBUG is not set ++CONFIG_MAC80211=m ++CONFIG_MAC80211_HAS_RC=y ++CONFIG_MAC80211_RC_MINSTREL=y ++CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y ++CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" ++CONFIG_MAC80211_MESH=y ++CONFIG_MAC80211_LEDS=y ++CONFIG_MAC80211_DEBUGFS=y ++CONFIG_MAC80211_MESSAGE_TRACING=y ++# CONFIG_MAC80211_DEBUG_MENU is not set ++CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 ++CONFIG_WIMAX=m ++CONFIG_WIMAX_DEBUG_LEVEL=8 ++CONFIG_RFKILL=y ++CONFIG_RFKILL_LEDS=y ++CONFIG_RFKILL_INPUT=y ++CONFIG_RFKILL_GPIO=m ++CONFIG_NET_9P=m ++CONFIG_NET_9P_VIRTIO=m ++CONFIG_NET_9P_RDMA=m ++# CONFIG_NET_9P_DEBUG is not set ++CONFIG_CAIF=m ++# CONFIG_CAIF_DEBUG is not set ++CONFIG_CAIF_NETDEV=m ++CONFIG_CAIF_USB=m ++CONFIG_CEPH_LIB=m ++# CONFIG_CEPH_LIB_PRETTYDEBUG is not set ++CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y ++CONFIG_NFC=m ++CONFIG_NFC_DIGITAL=m ++CONFIG_NFC_NCI=m ++CONFIG_NFC_NCI_SPI=m ++CONFIG_NFC_NCI_UART=m ++CONFIG_NFC_HCI=m ++CONFIG_NFC_SHDLC=y ++ ++# ++# Near Field Communication (NFC) devices ++# ++CONFIG_NFC_TRF7970A=m ++CONFIG_NFC_SIM=m ++CONFIG_NFC_PORT100=m ++CONFIG_NFC_FDP=m ++CONFIG_NFC_FDP_I2C=m ++CONFIG_NFC_PN544=m ++CONFIG_NFC_PN544_I2C=m ++# CONFIG_NFC_PN533_USB is not set ++# CONFIG_NFC_PN533_I2C is not set ++CONFIG_NFC_MICROREAD=m ++CONFIG_NFC_MICROREAD_I2C=m ++CONFIG_NFC_MRVL=m ++CONFIG_NFC_MRVL_USB=m ++CONFIG_NFC_MRVL_UART=m ++CONFIG_NFC_MRVL_I2C=m ++CONFIG_NFC_MRVL_SPI=m ++CONFIG_NFC_ST21NFCA=m ++CONFIG_NFC_ST21NFCA_I2C=m ++CONFIG_NFC_ST_NCI=m ++CONFIG_NFC_ST_NCI_I2C=m ++CONFIG_NFC_ST_NCI_SPI=m ++CONFIG_NFC_NXP_NCI=m ++CONFIG_NFC_NXP_NCI_I2C=m ++CONFIG_NFC_S3FWRN5=m ++CONFIG_NFC_S3FWRN5_I2C=m ++# CONFIG_NFC_ST95HF is not set ++# CONFIG_PSAMPLE is not set ++# CONFIG_NET_IFE is not set ++CONFIG_LWTUNNEL=y ++CONFIG_LWTUNNEL_BPF=y ++CONFIG_DST_CACHE=y ++CONFIG_GRO_CELLS=y ++# CONFIG_NET_DEVLINK is not set ++CONFIG_MAY_USE_DEVLINK=y ++CONFIG_PAGE_POOL=y ++CONFIG_FAILOVER=y ++CONFIG_HAVE_EBPF_JIT=y ++ ++# ++# Device Drivers ++# ++CONFIG_HAVE_PCI=y ++CONFIG_FORCE_PCI=y ++CONFIG_PCI=y ++CONFIG_PCI_DOMAINS=y ++CONFIG_PCI_SYSCALL=y ++CONFIG_PCIEPORTBUS=y ++# CONFIG_HOTPLUG_PCI_PCIE is not set ++CONFIG_PCIEAER=y ++# CONFIG_PCIEAER_INJECT is not set ++# CONFIG_PCIE_ECRC is not set ++CONFIG_PCIEASPM=y ++CONFIG_PCIEASPM_DEBUG=y ++CONFIG_PCIEASPM_DEFAULT=y ++# CONFIG_PCIEASPM_POWERSAVE is not set ++# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set ++# CONFIG_PCIEASPM_PERFORMANCE is not set ++CONFIG_PCIE_PME=y ++# CONFIG_PCIE_DPC is not set ++# CONFIG_PCIE_PTM is not set ++CONFIG_PCI_MSI=y ++CONFIG_PCI_QUIRKS=y ++# CONFIG_PCI_DEBUG is not set ++CONFIG_PCI_REALLOC_ENABLE_AUTO=y ++CONFIG_PCI_STUB=m ++# CONFIG_PCI_PF_STUB is not set ++CONFIG_PCI_ATS=y ++CONFIG_PCI_IOV=y ++CONFIG_PCI_PRI=y ++CONFIG_PCI_PASID=y ++CONFIG_HOTPLUG_PCI=y ++CONFIG_HOTPLUG_PCI_CPCI=y ++# CONFIG_HOTPLUG_PCI_SHPC is not set ++# CONFIG_HOTPLUG_PCI_POWERNV is not set ++CONFIG_HOTPLUG_PCI_RPA=m ++CONFIG_HOTPLUG_PCI_RPA_DLPAR=m ++ ++# ++# PCI controller drivers ++# ++ ++# ++# Cadence PCIe controllers support ++# ++# CONFIG_PCIE_CADENCE_HOST is not set ++# CONFIG_PCI_FTPCI100 is not set ++# CONFIG_PCI_HOST_GENERIC is not set ++# CONFIG_PCIE_XILINX is not set ++ ++# ++# DesignWare PCI Core Support ++# ++ ++# ++# PCI Endpoint ++# ++# CONFIG_PCI_ENDPOINT is not set ++ ++# ++# PCI switch controller drivers ++# ++# CONFIG_PCI_SW_SWITCHTEC is not set ++# CONFIG_PCCARD is not set ++CONFIG_RAPIDIO=y ++CONFIG_RAPIDIO_TSI721=m ++CONFIG_RAPIDIO_DISC_TIMEOUT=30 ++# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set ++CONFIG_RAPIDIO_DMA_ENGINE=y ++# CONFIG_RAPIDIO_DEBUG is not set ++CONFIG_RAPIDIO_ENUM_BASIC=m ++# CONFIG_RAPIDIO_CHMAN is not set ++# CONFIG_RAPIDIO_MPORT_CDEV is not set ++ ++# ++# RapidIO Switch drivers ++# ++CONFIG_RAPIDIO_TSI57X=m ++CONFIG_RAPIDIO_CPS_XX=m ++CONFIG_RAPIDIO_TSI568=m ++CONFIG_RAPIDIO_CPS_GEN2=m ++# CONFIG_RAPIDIO_RXS_GEN3 is not set ++ ++# ++# Generic Driver Options ++# ++CONFIG_UEVENT_HELPER=y ++CONFIG_UEVENT_HELPER_PATH="" ++CONFIG_DEVTMPFS=y ++CONFIG_DEVTMPFS_MOUNT=y ++CONFIG_STANDALONE=y ++CONFIG_PREVENT_FIRMWARE_BUILD=y ++ ++# ++# Firmware loader ++# ++CONFIG_FW_LOADER=y ++CONFIG_EXTRA_FIRMWARE="" ++CONFIG_FW_LOADER_USER_HELPER=y ++# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set ++CONFIG_WANT_DEV_COREDUMP=y ++CONFIG_ALLOW_DEV_COREDUMP=y ++CONFIG_DEV_COREDUMP=y ++# CONFIG_DEBUG_DRIVER is not set ++# CONFIG_DEBUG_DEVRES is not set ++# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set ++# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set ++CONFIG_GENERIC_CPU_AUTOPROBE=y ++CONFIG_GENERIC_CPU_VULNERABILITIES=y ++CONFIG_SOC_BUS=y ++CONFIG_REGMAP=y ++CONFIG_REGMAP_I2C=y ++CONFIG_REGMAP_SPI=y ++CONFIG_REGMAP_SPMI=m ++CONFIG_REGMAP_MMIO=y ++CONFIG_REGMAP_IRQ=y ++CONFIG_DMA_SHARED_BUFFER=y ++# CONFIG_DMA_FENCE_TRACE is not set ++ ++# ++# Bus devices ++# ++# CONFIG_SIMPLE_PM_BUS is not set ++CONFIG_CONNECTOR=y ++CONFIG_PROC_EVENTS=y ++# CONFIG_GNSS is not set ++CONFIG_MTD=m ++# CONFIG_MTD_TESTS is not set ++CONFIG_MTD_CMDLINE_PARTS=m ++CONFIG_MTD_OF_PARTS=m ++CONFIG_MTD_AR7_PARTS=m ++ ++# ++# Partition parsers ++# ++CONFIG_MTD_REDBOOT_PARTS=m ++CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 ++# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set ++# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set ++ ++# ++# User Modules And Translation Layers ++# ++CONFIG_MTD_BLKDEVS=m ++CONFIG_MTD_BLOCK=m ++CONFIG_MTD_BLOCK_RO=m ++CONFIG_FTL=m ++CONFIG_NFTL=m ++CONFIG_NFTL_RW=y ++CONFIG_INFTL=m ++CONFIG_RFD_FTL=m ++CONFIG_SSFDC=m ++CONFIG_SM_FTL=m ++CONFIG_MTD_OOPS=m ++CONFIG_MTD_SWAP=m ++# CONFIG_MTD_PARTITIONED_MASTER is not set ++ ++# ++# RAM/ROM/Flash chip drivers ++# ++CONFIG_MTD_CFI=m ++CONFIG_MTD_JEDECPROBE=m ++CONFIG_MTD_GEN_PROBE=m ++# CONFIG_MTD_CFI_ADV_OPTIONS is not set ++CONFIG_MTD_MAP_BANK_WIDTH_1=y ++CONFIG_MTD_MAP_BANK_WIDTH_2=y ++CONFIG_MTD_MAP_BANK_WIDTH_4=y ++CONFIG_MTD_CFI_I1=y ++CONFIG_MTD_CFI_I2=y ++CONFIG_MTD_CFI_INTELEXT=m ++CONFIG_MTD_CFI_AMDSTD=m ++CONFIG_MTD_CFI_STAA=m ++CONFIG_MTD_CFI_UTIL=m ++CONFIG_MTD_RAM=m ++CONFIG_MTD_ROM=m ++CONFIG_MTD_ABSENT=m ++ ++# ++# Mapping drivers for chip access ++# ++CONFIG_MTD_COMPLEX_MAPPINGS=y ++CONFIG_MTD_PHYSMAP=m ++# CONFIG_MTD_PHYSMAP_COMPAT is not set ++# CONFIG_MTD_PHYSMAP_OF is not set ++# CONFIG_MTD_PHYSMAP_GPIO_ADDR is not set ++CONFIG_MTD_PCI=m ++CONFIG_MTD_INTEL_VR_NOR=m ++CONFIG_MTD_PLATRAM=m ++ ++# ++# Self-contained MTD device drivers ++# ++CONFIG_MTD_PMC551=m ++# CONFIG_MTD_PMC551_BUGFIX is not set ++# CONFIG_MTD_PMC551_DEBUG is not set ++CONFIG_MTD_DATAFLASH=m ++# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set ++CONFIG_MTD_DATAFLASH_OTP=y ++CONFIG_MTD_M25P80=m ++# CONFIG_MTD_MCHP23K256 is not set ++CONFIG_MTD_SST25L=m ++CONFIG_MTD_SLRAM=m ++CONFIG_MTD_PHRAM=m ++CONFIG_MTD_MTDRAM=m ++CONFIG_MTDRAM_TOTAL_SIZE=4096 ++CONFIG_MTDRAM_ERASE_SIZE=128 ++CONFIG_MTD_BLOCK2MTD=m ++CONFIG_MTD_POWERNV_FLASH=m ++ ++# ++# Disk-On-Chip Device Drivers ++# ++CONFIG_MTD_DOCG3=m ++CONFIG_BCH_CONST_M=14 ++CONFIG_BCH_CONST_T=4 ++CONFIG_MTD_ONENAND=m ++CONFIG_MTD_ONENAND_VERIFY_WRITE=y ++CONFIG_MTD_ONENAND_GENERIC=m ++# CONFIG_MTD_ONENAND_OTP is not set ++CONFIG_MTD_ONENAND_2X_PROGRAM=y ++CONFIG_MTD_NAND_ECC=m ++# CONFIG_MTD_NAND_ECC_SMC is not set ++CONFIG_MTD_NAND=m ++CONFIG_MTD_NAND_BCH=m ++CONFIG_MTD_NAND_ECC_BCH=y ++CONFIG_MTD_SM_COMMON=m ++CONFIG_MTD_NAND_DENALI=m ++CONFIG_MTD_NAND_DENALI_PCI=m ++CONFIG_MTD_NAND_GPIO=m ++CONFIG_MTD_NAND_RICOH=m ++CONFIG_MTD_NAND_DISKONCHIP=m ++# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set ++CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0 ++# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set ++CONFIG_MTD_NAND_CAFE=m ++CONFIG_MTD_NAND_NANDSIM=m ++CONFIG_MTD_NAND_PLATFORM=m ++# CONFIG_MTD_SPI_NAND is not set ++ ++# ++# LPDDR & LPDDR2 PCM memory drivers ++# ++CONFIG_MTD_LPDDR=m ++CONFIG_MTD_QINFO_PROBE=m ++CONFIG_MTD_SPI_NOR=m ++# CONFIG_MTD_MT81xx_NOR is not set ++CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y ++CONFIG_MTD_UBI=m ++CONFIG_MTD_UBI_WL_THRESHOLD=4096 ++CONFIG_MTD_UBI_BEB_LIMIT=20 ++CONFIG_MTD_UBI_FASTMAP=y ++CONFIG_MTD_UBI_GLUEBI=m ++CONFIG_MTD_UBI_BLOCK=y ++CONFIG_DTC=y ++CONFIG_OF=y ++# CONFIG_OF_UNITTEST is not set ++CONFIG_OF_FLATTREE=y ++CONFIG_OF_EARLY_FLATTREE=y ++CONFIG_OF_KOBJ=y ++CONFIG_OF_DYNAMIC=y ++CONFIG_OF_ADDRESS=y ++CONFIG_OF_IRQ=y ++CONFIG_OF_NET=y ++CONFIG_OF_MDIO=y ++CONFIG_OF_RESERVED_MEM=y ++CONFIG_OF_RESOLVE=y ++CONFIG_OF_OVERLAY=y ++CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y ++CONFIG_PARPORT=m ++CONFIG_PARPORT_PC=m ++CONFIG_PARPORT_SERIAL=m ++CONFIG_PARPORT_PC_FIFO=y ++# CONFIG_PARPORT_PC_SUPERIO is not set ++CONFIG_PARPORT_AX88796=m ++CONFIG_PARPORT_1284=y ++CONFIG_PARPORT_NOT_PC=y ++CONFIG_BLK_DEV=y ++CONFIG_BLK_DEV_NULL_BLK=m ++CONFIG_BLK_DEV_FD=m ++CONFIG_CDROM=y ++CONFIG_PARIDE=m ++ ++# ++# Parallel IDE high-level drivers ++# ++CONFIG_PARIDE_PD=m ++CONFIG_PARIDE_PCD=m ++CONFIG_PARIDE_PF=m ++CONFIG_PARIDE_PT=m ++CONFIG_PARIDE_PG=m ++ ++# ++# Parallel IDE protocol modules ++# ++CONFIG_PARIDE_ATEN=m ++CONFIG_PARIDE_BPCK=m ++CONFIG_PARIDE_COMM=m ++CONFIG_PARIDE_DSTR=m ++CONFIG_PARIDE_FIT2=m ++CONFIG_PARIDE_FIT3=m ++CONFIG_PARIDE_EPAT=m ++CONFIG_PARIDE_EPATC8=y ++CONFIG_PARIDE_EPIA=m ++CONFIG_PARIDE_FRIQ=m ++CONFIG_PARIDE_FRPW=m ++CONFIG_PARIDE_KBIC=m ++CONFIG_PARIDE_KTTI=m ++CONFIG_PARIDE_ON20=m ++CONFIG_PARIDE_ON26=m ++CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m ++CONFIG_ZRAM=m ++# CONFIG_ZRAM_WRITEBACK is not set ++# CONFIG_ZRAM_MEMORY_TRACKING is not set ++CONFIG_BLK_DEV_UMEM=m ++CONFIG_BLK_DEV_LOOP=y ++CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 ++CONFIG_BLK_DEV_CRYPTOLOOP=m ++CONFIG_BLK_DEV_DRBD=m ++# CONFIG_DRBD_FAULT_INJECTION is not set ++CONFIG_BLK_DEV_NBD=m ++CONFIG_BLK_DEV_SKD=m ++CONFIG_BLK_DEV_SX8=m ++CONFIG_BLK_DEV_RAM=y ++CONFIG_BLK_DEV_RAM_COUNT=16 ++CONFIG_BLK_DEV_RAM_SIZE=65536 ++CONFIG_CDROM_PKTCDVD=m ++CONFIG_CDROM_PKTCDVD_BUFFERS=8 ++# CONFIG_CDROM_PKTCDVD_WCACHE is not set ++CONFIG_ATA_OVER_ETH=m ++CONFIG_VIRTIO_BLK=y ++# CONFIG_VIRTIO_BLK_SCSI is not set ++CONFIG_BLK_DEV_RBD=m ++CONFIG_BLK_DEV_RSXX=m ++ ++# ++# NVME Support ++# ++CONFIG_NVME_CORE=y ++CONFIG_BLK_DEV_NVME=y ++# CONFIG_NVME_MULTIPATH is not set ++# CONFIG_NVME_RDMA is not set ++# CONFIG_NVME_FC is not set ++# CONFIG_NVME_TCP is not set ++# CONFIG_NVME_TARGET is not set ++ ++# ++# Misc devices ++# ++CONFIG_SENSORS_LIS3LV02D=m ++CONFIG_AD525X_DPOT=m ++CONFIG_AD525X_DPOT_I2C=m ++CONFIG_AD525X_DPOT_SPI=m ++CONFIG_DUMMY_IRQ=m ++# CONFIG_IBMVMC is not set ++CONFIG_PHANTOM=m ++CONFIG_SGI_IOC4=m ++CONFIG_TIFM_CORE=m ++CONFIG_TIFM_7XX1=m ++CONFIG_ICS932S401=m ++CONFIG_ENCLOSURE_SERVICES=m ++CONFIG_HP_ILO=m ++CONFIG_APDS9802ALS=m ++CONFIG_ISL29003=m ++CONFIG_ISL29020=m ++CONFIG_SENSORS_TSL2550=m ++CONFIG_SENSORS_BH1770=m ++CONFIG_SENSORS_APDS990X=m ++CONFIG_HMC6352=m ++CONFIG_DS1682=m ++CONFIG_USB_SWITCH_FSA9480=m ++CONFIG_LATTICE_ECP3_CONFIG=m ++CONFIG_SRAM=y ++# CONFIG_PCI_ENDPOINT_TEST is not set ++# CONFIG_PVPANIC is not set ++CONFIG_C2PORT=m ++ ++# ++# EEPROM support ++# ++CONFIG_EEPROM_AT24=m ++CONFIG_EEPROM_AT25=m ++CONFIG_EEPROM_LEGACY=m ++CONFIG_EEPROM_MAX6875=m ++CONFIG_EEPROM_93CX6=m ++CONFIG_EEPROM_93XX46=m ++# CONFIG_EEPROM_IDT_89HPESX is not set ++# CONFIG_EEPROM_EE1004 is not set ++CONFIG_CB710_CORE=m ++# CONFIG_CB710_DEBUG is not set ++CONFIG_CB710_DEBUG_ASSUMPTIONS=y ++ ++# ++# Texas Instruments shared transport line discipline ++# ++CONFIG_TI_ST=m ++CONFIG_SENSORS_LIS3_SPI=m ++CONFIG_SENSORS_LIS3_I2C=m ++CONFIG_ALTERA_STAPL=m ++ ++# ++# Intel MIC & related support ++# ++ ++# ++# Intel MIC Bus Driver ++# ++ ++# ++# SCIF Bus Driver ++# ++ ++# ++# VOP Bus Driver ++# ++ ++# ++# Intel MIC Host Driver ++# ++ ++# ++# Intel MIC Card Driver ++# ++ ++# ++# SCIF Driver ++# ++ ++# ++# Intel MIC Coprocessor State Management (COSM) Drivers ++# ++ ++# ++# VOP Driver ++# ++CONFIG_VHOST_RING=m ++CONFIG_GENWQE=m ++CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 ++CONFIG_ECHO=m ++CONFIG_CXL_BASE=y ++CONFIG_CXL_AFU_DRIVER_OPS=y ++CONFIG_CXL_LIB=y ++CONFIG_CXL=m ++CONFIG_OCXL_BASE=y ++CONFIG_OCXL=m ++# CONFIG_MISC_ALCOR_PCI is not set ++# CONFIG_MISC_RTSX_PCI is not set ++# CONFIG_MISC_RTSX_USB is not set ++CONFIG_HAVE_IDE=y ++# CONFIG_IDE is not set ++ ++# ++# SCSI device support ++# ++CONFIG_SCSI_MOD=y ++CONFIG_RAID_ATTRS=m ++CONFIG_SCSI=y ++CONFIG_SCSI_DMA=y ++CONFIG_SCSI_NETLINK=y ++CONFIG_SCSI_PROC_FS=y ++ ++# ++# SCSI support type (disk, tape, CD-ROM) ++# ++CONFIG_BLK_DEV_SD=y ++CONFIG_CHR_DEV_ST=m ++CONFIG_CHR_DEV_OSST=m ++CONFIG_BLK_DEV_SR=y ++# CONFIG_BLK_DEV_SR_VENDOR is not set ++CONFIG_CHR_DEV_SG=y ++CONFIG_CHR_DEV_SCH=m ++CONFIG_SCSI_ENCLOSURE=m ++CONFIG_SCSI_CONSTANTS=y ++CONFIG_SCSI_LOGGING=y ++CONFIG_SCSI_SCAN_ASYNC=y ++ ++# ++# SCSI Transports ++# ++CONFIG_SCSI_SPI_ATTRS=m ++CONFIG_SCSI_FC_ATTRS=m ++CONFIG_SCSI_ISCSI_ATTRS=m ++CONFIG_SCSI_SAS_ATTRS=m ++CONFIG_SCSI_SAS_LIBSAS=m ++CONFIG_SCSI_SAS_ATA=y ++CONFIG_SCSI_SAS_HOST_SMP=y ++CONFIG_SCSI_SRP_ATTRS=y ++CONFIG_SCSI_LOWLEVEL=y ++CONFIG_ISCSI_TCP=m ++CONFIG_ISCSI_BOOT_SYSFS=m ++CONFIG_SCSI_CXGB3_ISCSI=m ++CONFIG_SCSI_CXGB4_ISCSI=m ++CONFIG_SCSI_BNX2_ISCSI=m ++CONFIG_SCSI_BNX2X_FCOE=m ++CONFIG_BE2ISCSI=m ++CONFIG_CXLFLASH=m ++CONFIG_BLK_DEV_3W_XXXX_RAID=m ++CONFIG_SCSI_HPSA=m ++CONFIG_SCSI_3W_9XXX=m ++CONFIG_SCSI_3W_SAS=m ++CONFIG_SCSI_ACARD=m ++CONFIG_SCSI_AACRAID=m ++CONFIG_SCSI_AIC7XXX=m ++CONFIG_AIC7XXX_CMDS_PER_DEVICE=8 ++CONFIG_AIC7XXX_RESET_DELAY_MS=5000 ++# CONFIG_AIC7XXX_DEBUG_ENABLE is not set ++CONFIG_AIC7XXX_DEBUG_MASK=0 ++CONFIG_AIC7XXX_REG_PRETTY_PRINT=y ++CONFIG_SCSI_AIC79XX=m ++CONFIG_AIC79XX_CMDS_PER_DEVICE=32 ++CONFIG_AIC79XX_RESET_DELAY_MS=5000 ++# CONFIG_AIC79XX_DEBUG_ENABLE is not set ++CONFIG_AIC79XX_DEBUG_MASK=0 ++CONFIG_AIC79XX_REG_PRETTY_PRINT=y ++CONFIG_SCSI_AIC94XX=m ++# CONFIG_AIC94XX_DEBUG is not set ++CONFIG_SCSI_MVSAS=m ++# CONFIG_SCSI_MVSAS_DEBUG is not set ++# CONFIG_SCSI_MVSAS_TASKLET is not set ++CONFIG_SCSI_MVUMI=m ++CONFIG_SCSI_ADVANSYS=m ++CONFIG_SCSI_ARCMSR=m ++CONFIG_SCSI_ESAS2R=m ++CONFIG_MEGARAID_NEWGEN=y ++CONFIG_MEGARAID_MM=m ++CONFIG_MEGARAID_MAILBOX=m ++CONFIG_MEGARAID_LEGACY=m ++CONFIG_MEGARAID_SAS=m ++CONFIG_SCSI_MPT3SAS=m ++CONFIG_SCSI_MPT2SAS_MAX_SGE=128 ++CONFIG_SCSI_MPT3SAS_MAX_SGE=128 ++CONFIG_SCSI_MPT2SAS=m ++# CONFIG_SCSI_SMARTPQI is not set ++CONFIG_SCSI_UFSHCD=m ++CONFIG_SCSI_UFSHCD_PCI=m ++# CONFIG_SCSI_UFS_DWC_TC_PCI is not set ++CONFIG_SCSI_UFSHCD_PLATFORM=m ++# CONFIG_SCSI_UFS_CDNS_PLATFORM is not set ++# CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set ++# CONFIG_SCSI_UFS_BSG is not set ++CONFIG_SCSI_HPTIOP=m ++# CONFIG_SCSI_MYRB is not set ++# CONFIG_SCSI_MYRS is not set ++CONFIG_LIBFC=m ++CONFIG_LIBFCOE=m ++CONFIG_FCOE=m ++CONFIG_SCSI_SNIC=m ++# CONFIG_SCSI_SNIC_DEBUG_FS is not set ++CONFIG_SCSI_DMX3191D=m ++CONFIG_SCSI_GDTH=m ++CONFIG_SCSI_IPS=m ++CONFIG_SCSI_IBMVSCSI=m ++# CONFIG_SCSI_IBMVSCSIS is not set ++CONFIG_SCSI_IBMVFC=m ++CONFIG_SCSI_IBMVFC_TRACE=y ++CONFIG_SCSI_INITIO=m ++CONFIG_SCSI_INIA100=m ++CONFIG_SCSI_PPA=m ++CONFIG_SCSI_IMM=m ++# CONFIG_SCSI_IZIP_EPP16 is not set ++# CONFIG_SCSI_IZIP_SLOW_CTR is not set ++CONFIG_SCSI_STEX=m ++CONFIG_SCSI_SYM53C8XX_2=m ++CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 ++CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 ++CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 ++CONFIG_SCSI_SYM53C8XX_MMIO=y ++CONFIG_SCSI_IPR=m ++CONFIG_SCSI_IPR_TRACE=y ++CONFIG_SCSI_IPR_DUMP=y ++CONFIG_SCSI_QLOGIC_1280=m ++CONFIG_SCSI_QLA_FC=m ++CONFIG_TCM_QLA2XXX=m ++# CONFIG_TCM_QLA2XXX_DEBUG is not set ++CONFIG_SCSI_QLA_ISCSI=m ++# CONFIG_QEDI is not set ++# CONFIG_QEDF is not set ++CONFIG_SCSI_LPFC=m ++# CONFIG_SCSI_LPFC_DEBUG_FS is not set ++CONFIG_SCSI_DC395x=m ++CONFIG_SCSI_AM53C974=m ++CONFIG_SCSI_WD719X=m ++CONFIG_SCSI_DEBUG=m ++CONFIG_SCSI_PMCRAID=m ++CONFIG_SCSI_PM8001=m ++CONFIG_SCSI_BFA_FC=m ++CONFIG_SCSI_VIRTIO=m ++CONFIG_SCSI_CHELSIO_FCOE=m ++CONFIG_SCSI_DH=y ++CONFIG_SCSI_DH_RDAC=m ++CONFIG_SCSI_DH_HP_SW=m ++CONFIG_SCSI_DH_EMC=m ++CONFIG_SCSI_DH_ALUA=m ++CONFIG_SCSI_OSD_INITIATOR=m ++CONFIG_SCSI_OSD_ULD=m ++CONFIG_SCSI_OSD_DPRINT_SENSE=1 ++# CONFIG_SCSI_OSD_DEBUG is not set ++CONFIG_ATA=y ++CONFIG_ATA_VERBOSE_ERROR=y ++CONFIG_SATA_PMP=y ++ ++# ++# Controllers with non-SFF native interface ++# ++CONFIG_SATA_AHCI=m ++CONFIG_SATA_MOBILE_LPM_POLICY=0 ++CONFIG_SATA_AHCI_PLATFORM=m ++CONFIG_AHCI_CEVA=m ++CONFIG_AHCI_QORIQ=m ++CONFIG_SATA_INIC162X=m ++CONFIG_SATA_ACARD_AHCI=m ++CONFIG_SATA_SIL24=m ++CONFIG_ATA_SFF=y ++ ++# ++# SFF controllers with custom DMA interface ++# ++CONFIG_PDC_ADMA=m ++CONFIG_SATA_QSTOR=m ++CONFIG_SATA_SX4=m ++CONFIG_ATA_BMDMA=y ++ ++# ++# SATA SFF controllers with BMDMA ++# ++CONFIG_ATA_PIIX=m ++# CONFIG_SATA_DWC is not set ++CONFIG_SATA_MV=m ++CONFIG_SATA_NV=m ++CONFIG_SATA_PROMISE=m ++CONFIG_SATA_SIL=m ++CONFIG_SATA_SIS=m ++CONFIG_SATA_SVW=m ++CONFIG_SATA_ULI=m ++CONFIG_SATA_VIA=m ++CONFIG_SATA_VITESSE=m ++ ++# ++# PATA SFF controllers with BMDMA ++# ++CONFIG_PATA_ALI=m ++CONFIG_PATA_AMD=m ++CONFIG_PATA_ARTOP=m ++CONFIG_PATA_ATIIXP=m ++CONFIG_PATA_ATP867X=m ++CONFIG_PATA_CMD64X=m ++CONFIG_PATA_CYPRESS=m ++CONFIG_PATA_EFAR=m ++CONFIG_PATA_HPT366=m ++CONFIG_PATA_HPT37X=m ++CONFIG_PATA_HPT3X2N=m ++CONFIG_PATA_HPT3X3=m ++# CONFIG_PATA_HPT3X3_DMA is not set ++CONFIG_PATA_IT8213=m ++CONFIG_PATA_IT821X=m ++CONFIG_PATA_JMICRON=m ++CONFIG_PATA_MARVELL=m ++CONFIG_PATA_NETCELL=m ++CONFIG_PATA_NINJA32=m ++CONFIG_PATA_NS87415=m ++CONFIG_PATA_OLDPIIX=m ++CONFIG_PATA_OPTIDMA=m ++CONFIG_PATA_PDC2027X=m ++CONFIG_PATA_PDC_OLD=m ++CONFIG_PATA_RADISYS=m ++CONFIG_PATA_RDC=m ++CONFIG_PATA_SCH=m ++CONFIG_PATA_SERVERWORKS=m ++CONFIG_PATA_SIL680=m ++CONFIG_PATA_SIS=m ++CONFIG_PATA_TOSHIBA=m ++CONFIG_PATA_TRIFLEX=m ++CONFIG_PATA_VIA=m ++CONFIG_PATA_WINBOND=m ++ ++# ++# PIO-only SFF controllers ++# ++CONFIG_PATA_CMD640_PCI=m ++CONFIG_PATA_MPIIX=m ++CONFIG_PATA_NS87410=m ++CONFIG_PATA_OPTI=m ++CONFIG_PATA_PLATFORM=m ++CONFIG_PATA_OF_PLATFORM=m ++CONFIG_PATA_RZ1000=m ++ ++# ++# Generic fallback / legacy drivers ++# ++CONFIG_ATA_GENERIC=m ++CONFIG_PATA_LEGACY=m ++CONFIG_MD=y ++CONFIG_BLK_DEV_MD=y ++CONFIG_MD_AUTODETECT=y ++CONFIG_MD_LINEAR=m ++CONFIG_MD_RAID0=m ++CONFIG_MD_RAID1=m ++CONFIG_MD_RAID10=m ++CONFIG_MD_RAID456=m ++CONFIG_MD_MULTIPATH=m ++CONFIG_MD_FAULTY=m ++CONFIG_MD_CLUSTER=m ++CONFIG_BCACHE=m ++# CONFIG_BCACHE_DEBUG is not set ++# CONFIG_BCACHE_CLOSURES_DEBUG is not set ++CONFIG_BLK_DEV_DM_BUILTIN=y ++CONFIG_BLK_DEV_DM=y ++# CONFIG_DM_DEBUG is not set ++CONFIG_DM_BUFIO=m ++# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set ++CONFIG_DM_BIO_PRISON=m ++CONFIG_DM_PERSISTENT_DATA=m ++# CONFIG_DM_UNSTRIPED is not set ++CONFIG_DM_CRYPT=m ++CONFIG_DM_SNAPSHOT=m ++CONFIG_DM_THIN_PROVISIONING=m ++CONFIG_DM_CACHE=m ++CONFIG_DM_CACHE_SMQ=m ++# CONFIG_DM_WRITECACHE is not set ++CONFIG_DM_ERA=m ++CONFIG_DM_MIRROR=m ++CONFIG_DM_LOG_USERSPACE=m ++CONFIG_DM_RAID=m ++CONFIG_DM_ZERO=m ++CONFIG_DM_MULTIPATH=m ++CONFIG_DM_MULTIPATH_QL=m ++CONFIG_DM_MULTIPATH_ST=m ++CONFIG_DM_DELAY=m ++CONFIG_DM_UEVENT=y ++CONFIG_DM_FLAKEY=m ++CONFIG_DM_VERITY=m ++# CONFIG_DM_VERITY_FEC is not set ++CONFIG_DM_SWITCH=m ++CONFIG_DM_LOG_WRITES=m ++# CONFIG_DM_INTEGRITY is not set ++CONFIG_TARGET_CORE=m ++CONFIG_TCM_IBLOCK=m ++CONFIG_TCM_FILEIO=m ++CONFIG_TCM_PSCSI=m ++CONFIG_TCM_USER2=m ++CONFIG_LOOPBACK_TARGET=m ++CONFIG_TCM_FC=m ++CONFIG_ISCSI_TARGET=m ++# CONFIG_ISCSI_TARGET_CXGB4 is not set ++CONFIG_SBP_TARGET=m ++CONFIG_FUSION=y ++CONFIG_FUSION_SPI=m ++CONFIG_FUSION_FC=m ++CONFIG_FUSION_SAS=m ++CONFIG_FUSION_MAX_SGE=128 ++CONFIG_FUSION_CTL=m ++CONFIG_FUSION_LAN=m ++CONFIG_FUSION_LOGGING=y ++ ++# ++# IEEE 1394 (FireWire) support ++# ++CONFIG_FIREWIRE=m ++CONFIG_FIREWIRE_OHCI=m ++CONFIG_FIREWIRE_SBP2=m ++CONFIG_FIREWIRE_NET=m ++CONFIG_FIREWIRE_NOSY=m ++CONFIG_MACINTOSH_DRIVERS=y ++CONFIG_MAC_EMUMOUSEBTN=m ++CONFIG_WINDFARM=m ++CONFIG_NETDEVICES=y ++CONFIG_MII=m ++CONFIG_NET_CORE=y ++CONFIG_BONDING=m ++CONFIG_DUMMY=m ++CONFIG_EQUALIZER=m ++CONFIG_NET_FC=y ++CONFIG_IFB=m ++CONFIG_NET_TEAM=m ++CONFIG_NET_TEAM_MODE_BROADCAST=m ++CONFIG_NET_TEAM_MODE_ROUNDROBIN=m ++CONFIG_NET_TEAM_MODE_RANDOM=m ++CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m ++CONFIG_NET_TEAM_MODE_LOADBALANCE=m ++CONFIG_MACVLAN=m ++CONFIG_MACVTAP=m ++CONFIG_IPVLAN=m ++# CONFIG_IPVTAP is not set ++CONFIG_VXLAN=m ++CONFIG_GENEVE=m ++# CONFIG_GTP is not set ++# CONFIG_MACSEC is not set ++CONFIG_NETCONSOLE=m ++CONFIG_NETCONSOLE_DYNAMIC=y ++CONFIG_NETPOLL=y ++CONFIG_NET_POLL_CONTROLLER=y ++CONFIG_NTB_NETDEV=m ++CONFIG_RIONET=m ++CONFIG_RIONET_TX_SIZE=128 ++CONFIG_RIONET_RX_SIZE=128 ++CONFIG_TUN=y ++CONFIG_TAP=m ++# CONFIG_TUN_VNET_CROSS_LE is not set ++CONFIG_VETH=m ++CONFIG_VIRTIO_NET=y ++CONFIG_NLMON=m ++CONFIG_NET_VRF=m ++CONFIG_SUNGEM_PHY=m ++CONFIG_ARCNET=m ++CONFIG_ARCNET_1201=m ++CONFIG_ARCNET_1051=m ++CONFIG_ARCNET_RAW=m ++CONFIG_ARCNET_CAP=m ++CONFIG_ARCNET_COM90xx=m ++CONFIG_ARCNET_COM90xxIO=m ++CONFIG_ARCNET_RIM_I=m ++CONFIG_ARCNET_COM20020=m ++CONFIG_ARCNET_COM20020_PCI=m ++CONFIG_ATM_DRIVERS=y ++CONFIG_ATM_DUMMY=m ++CONFIG_ATM_TCP=m ++CONFIG_ATM_LANAI=m ++CONFIG_ATM_ENI=m ++# CONFIG_ATM_ENI_DEBUG is not set ++# CONFIG_ATM_ENI_TUNE_BURST is not set ++CONFIG_ATM_NICSTAR=m ++# CONFIG_ATM_NICSTAR_USE_SUNI is not set ++# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set ++CONFIG_ATM_IDT77252=m ++# CONFIG_ATM_IDT77252_DEBUG is not set ++# CONFIG_ATM_IDT77252_RCV_ALL is not set ++CONFIG_ATM_IDT77252_USE_SUNI=y ++CONFIG_ATM_IA=m ++# CONFIG_ATM_IA_DEBUG is not set ++CONFIG_ATM_FORE200E=m ++# CONFIG_ATM_FORE200E_USE_TASKLET is not set ++CONFIG_ATM_FORE200E_TX_RETRY=16 ++CONFIG_ATM_FORE200E_DEBUG=0 ++CONFIG_ATM_HE=m ++CONFIG_ATM_HE_USE_SUNI=y ++CONFIG_ATM_SOLOS=m ++ ++# ++# CAIF transport drivers ++# ++CONFIG_CAIF_TTY=m ++CONFIG_CAIF_SPI_SLAVE=m ++# CONFIG_CAIF_SPI_SYNC is not set ++CONFIG_CAIF_HSI=m ++CONFIG_CAIF_VIRTIO=m ++ ++# ++# Distributed Switch Architecture drivers ++# ++CONFIG_ETHERNET=y ++CONFIG_MDIO=m ++CONFIG_NET_VENDOR_3COM=y ++CONFIG_VORTEX=m ++CONFIG_TYPHOON=m ++CONFIG_NET_VENDOR_ADAPTEC=y ++CONFIG_ADAPTEC_STARFIRE=m ++CONFIG_NET_VENDOR_AGERE=y ++CONFIG_ET131X=m ++CONFIG_NET_VENDOR_ALACRITECH=y ++# CONFIG_SLICOSS is not set ++CONFIG_NET_VENDOR_ALTEON=y ++CONFIG_ACENIC=m ++# CONFIG_ACENIC_OMIT_TIGON_I is not set ++CONFIG_ALTERA_TSE=m ++CONFIG_NET_VENDOR_AMAZON=y ++# CONFIG_ENA_ETHERNET is not set ++CONFIG_NET_VENDOR_AMD=y ++CONFIG_AMD8111_ETH=m ++CONFIG_PCNET32=m ++CONFIG_NET_VENDOR_AQUANTIA=y ++CONFIG_NET_VENDOR_ARC=y ++CONFIG_NET_VENDOR_ATHEROS=y ++CONFIG_ATL2=m ++CONFIG_ATL1=m ++CONFIG_ATL1E=m ++CONFIG_ATL1C=m ++CONFIG_ALX=m ++CONFIG_NET_VENDOR_AURORA=y ++CONFIG_AURORA_NB8800=m ++CONFIG_NET_VENDOR_BROADCOM=y ++CONFIG_B44=m ++CONFIG_B44_PCI_AUTOSELECT=y ++CONFIG_B44_PCICORE_AUTOSELECT=y ++CONFIG_B44_PCI=y ++CONFIG_BCMGENET=m ++CONFIG_BNX2=m ++CONFIG_CNIC=m ++CONFIG_TIGON3=y ++CONFIG_TIGON3_HWMON=y ++CONFIG_BNX2X=m ++CONFIG_BNX2X_SRIOV=y ++CONFIG_SYSTEMPORT=m ++CONFIG_BNXT=m ++CONFIG_BNXT_SRIOV=y ++CONFIG_BNXT_FLOWER_OFFLOAD=y ++# CONFIG_BNXT_DCB is not set ++CONFIG_BNXT_HWMON=y ++CONFIG_NET_VENDOR_BROCADE=y ++CONFIG_BNA=m ++CONFIG_NET_VENDOR_CADENCE=y ++CONFIG_MACB=m ++CONFIG_MACB_USE_HWSTAMP=y ++CONFIG_NET_VENDOR_CAVIUM=y ++CONFIG_THUNDER_NIC_PF=m ++CONFIG_THUNDER_NIC_VF=m ++CONFIG_THUNDER_NIC_BGX=m ++CONFIG_THUNDER_NIC_RGX=m ++CONFIG_CAVIUM_PTP=y ++CONFIG_LIQUIDIO=m ++# CONFIG_LIQUIDIO_VF is not set ++CONFIG_NET_VENDOR_CHELSIO=y ++CONFIG_CHELSIO_T1=m ++CONFIG_CHELSIO_T1_1G=y ++CONFIG_CHELSIO_T3=m ++CONFIG_CHELSIO_T4=m ++CONFIG_CHELSIO_T4_DCB=y ++CONFIG_CHELSIO_T4_FCOE=y ++CONFIG_CHELSIO_T4VF=m ++CONFIG_CHELSIO_LIB=m ++CONFIG_NET_VENDOR_CISCO=y ++CONFIG_ENIC=m ++CONFIG_NET_VENDOR_CORTINA=y ++# CONFIG_GEMINI_ETHERNET is not set ++CONFIG_DNET=m ++CONFIG_NET_VENDOR_DEC=y ++CONFIG_NET_TULIP=y ++CONFIG_DE2104X=m ++CONFIG_DE2104X_DSL=0 ++CONFIG_TULIP=m ++# CONFIG_TULIP_MWI is not set ++# CONFIG_TULIP_MMIO is not set ++# CONFIG_TULIP_NAPI is not set ++CONFIG_DE4X5=m ++CONFIG_WINBOND_840=m ++CONFIG_DM9102=m ++CONFIG_ULI526X=m ++CONFIG_NET_VENDOR_DLINK=y ++CONFIG_DL2K=m ++CONFIG_SUNDANCE=m ++# CONFIG_SUNDANCE_MMIO is not set ++CONFIG_NET_VENDOR_EMULEX=y ++CONFIG_BE2NET=m ++CONFIG_BE2NET_HWMON=y ++CONFIG_BE2NET_BE2=y ++CONFIG_BE2NET_BE3=y ++CONFIG_BE2NET_LANCER=y ++CONFIG_BE2NET_SKYHAWK=y ++CONFIG_NET_VENDOR_EZCHIP=y ++CONFIG_EZCHIP_NPS_MANAGEMENT_ENET=m ++CONFIG_NET_VENDOR_HP=y ++CONFIG_HP100=m ++CONFIG_NET_VENDOR_HUAWEI=y ++CONFIG_NET_VENDOR_I825XX=y ++CONFIG_NET_VENDOR_IBM=y ++CONFIG_IBMVETH=m ++# CONFIG_IBMVNIC is not set ++CONFIG_NET_VENDOR_INTEL=y ++CONFIG_E100=m ++CONFIG_E1000=m ++CONFIG_E1000E=m ++CONFIG_IGB=m ++CONFIG_IGB_HWMON=y ++CONFIG_IGBVF=m ++CONFIG_IXGB=m ++CONFIG_IXGBE=m ++CONFIG_IXGBE_HWMON=y ++CONFIG_IXGBE_DCB=y ++CONFIG_IXGBEVF=m ++CONFIG_I40E=m ++CONFIG_I40E_DCB=y ++CONFIG_IAVF=m ++CONFIG_I40EVF=m ++# CONFIG_ICE is not set ++CONFIG_FM10K=m ++# CONFIG_IGC is not set ++CONFIG_JME=m ++CONFIG_NET_VENDOR_MARVELL=y ++CONFIG_MVMDIO=m ++CONFIG_SKGE=m ++# CONFIG_SKGE_DEBUG is not set ++CONFIG_SKGE_GENESIS=y ++CONFIG_SKY2=m ++# CONFIG_SKY2_DEBUG is not set ++CONFIG_NET_VENDOR_MELLANOX=y ++CONFIG_MLX4_EN=m ++CONFIG_MLX4_EN_DCB=y ++CONFIG_MLX4_CORE=m ++CONFIG_MLX4_DEBUG=y ++CONFIG_MLX4_CORE_GEN2=y ++CONFIG_MLX5_CORE=m ++# CONFIG_MLX5_FPGA is not set ++CONFIG_MLX5_CORE_EN=y ++CONFIG_MLX5_EN_ARFS=y ++CONFIG_MLX5_EN_RXNFC=y ++CONFIG_MLX5_MPFS=y ++CONFIG_MLX5_CORE_EN_DCB=y ++# CONFIG_MLX5_CORE_IPOIB is not set ++CONFIG_MLXSW_CORE=m ++CONFIG_MLXSW_CORE_HWMON=y ++CONFIG_MLXSW_CORE_THERMAL=y ++CONFIG_MLXSW_PCI=m ++CONFIG_MLXSW_I2C=m ++CONFIG_MLXSW_MINIMAL=m ++# CONFIG_MLXFW is not set ++CONFIG_NET_VENDOR_MICREL=y ++CONFIG_KS8842=m ++CONFIG_KS8851=m ++CONFIG_KS8851_MLL=m ++CONFIG_KSZ884X_PCI=m ++CONFIG_NET_VENDOR_MICROCHIP=y ++CONFIG_ENC28J60=m ++# CONFIG_ENC28J60_WRITEVERIFY is not set ++CONFIG_ENCX24J600=m ++# CONFIG_LAN743X is not set ++CONFIG_NET_VENDOR_MICROSEMI=y ++CONFIG_NET_VENDOR_MYRI=y ++CONFIG_MYRI10GE=m ++CONFIG_FEALNX=m ++CONFIG_NET_VENDOR_NATSEMI=y ++CONFIG_NATSEMI=m ++CONFIG_NS83820=m ++CONFIG_NET_VENDOR_NETERION=y ++CONFIG_S2IO=m ++CONFIG_VXGE=m ++# CONFIG_VXGE_DEBUG_TRACE_ALL is not set ++CONFIG_NET_VENDOR_NETRONOME=y ++# CONFIG_NFP is not set ++CONFIG_NET_VENDOR_NI=y ++# CONFIG_NI_XGE_MANAGEMENT_ENET is not set ++CONFIG_NET_VENDOR_8390=y ++CONFIG_NE2K_PCI=m ++CONFIG_NET_VENDOR_NVIDIA=y ++CONFIG_FORCEDETH=m ++CONFIG_NET_VENDOR_OKI=y ++CONFIG_ETHOC=m ++CONFIG_NET_VENDOR_PACKET_ENGINES=y ++CONFIG_HAMACHI=m ++CONFIG_YELLOWFIN=m ++CONFIG_NET_VENDOR_QLOGIC=y ++CONFIG_QLA3XXX=m ++CONFIG_QLCNIC=m ++CONFIG_QLCNIC_SRIOV=y ++CONFIG_QLCNIC_DCB=y ++CONFIG_QLCNIC_HWMON=y ++CONFIG_QLGE=m ++CONFIG_NETXEN_NIC=m ++CONFIG_QED=m ++CONFIG_QED_SRIOV=y ++CONFIG_QEDE=m ++CONFIG_NET_VENDOR_QUALCOMM=y ++# CONFIG_QCA7000_SPI is not set ++# CONFIG_QCOM_EMAC is not set ++# CONFIG_RMNET is not set ++CONFIG_NET_VENDOR_RDC=y ++CONFIG_R6040=m ++CONFIG_NET_VENDOR_REALTEK=y ++CONFIG_8139CP=m ++CONFIG_8139TOO=m ++CONFIG_8139TOO_PIO=y ++# CONFIG_8139TOO_TUNE_TWISTER is not set ++CONFIG_8139TOO_8129=y ++# CONFIG_8139_OLD_RX_RESET is not set ++CONFIG_R8169=m ++CONFIG_NET_VENDOR_RENESAS=y ++CONFIG_NET_VENDOR_ROCKER=y ++CONFIG_NET_VENDOR_SAMSUNG=y ++CONFIG_SXGBE_ETH=m ++CONFIG_NET_VENDOR_SEEQ=y ++CONFIG_NET_VENDOR_SOLARFLARE=y ++CONFIG_SFC=m ++CONFIG_SFC_MTD=y ++CONFIG_SFC_MCDI_MON=y ++CONFIG_SFC_SRIOV=y ++CONFIG_SFC_MCDI_LOGGING=y ++# CONFIG_SFC_FALCON is not set ++CONFIG_NET_VENDOR_SILAN=y ++CONFIG_SC92031=m ++CONFIG_NET_VENDOR_SIS=y ++CONFIG_SIS900=m ++CONFIG_SIS190=m ++CONFIG_NET_VENDOR_SMSC=y ++CONFIG_EPIC100=m ++CONFIG_SMSC911X=m ++CONFIG_SMSC9420=m ++CONFIG_NET_VENDOR_SOCIONEXT=y ++CONFIG_NET_VENDOR_STMICRO=y ++CONFIG_STMMAC_ETH=m ++CONFIG_STMMAC_PLATFORM=m ++# CONFIG_DWMAC_DWC_QOS_ETH is not set ++CONFIG_DWMAC_GENERIC=m ++# CONFIG_STMMAC_PCI is not set ++CONFIG_NET_VENDOR_SUN=y ++CONFIG_HAPPYMEAL=m ++CONFIG_SUNGEM=m ++CONFIG_CASSINI=m ++CONFIG_NIU=m ++CONFIG_NET_VENDOR_SYNOPSYS=y ++# CONFIG_DWC_XLGMAC is not set ++CONFIG_NET_VENDOR_TEHUTI=y ++CONFIG_TEHUTI=m ++CONFIG_NET_VENDOR_TI=y ++CONFIG_TI_CPSW_ALE=m ++CONFIG_TLAN=m ++CONFIG_NET_VENDOR_VIA=y ++CONFIG_VIA_RHINE=m ++CONFIG_VIA_RHINE_MMIO=y ++CONFIG_VIA_VELOCITY=m ++CONFIG_NET_VENDOR_WIZNET=y ++CONFIG_WIZNET_W5100=m ++CONFIG_WIZNET_W5300=m ++# CONFIG_WIZNET_BUS_DIRECT is not set ++# CONFIG_WIZNET_BUS_INDIRECT is not set ++CONFIG_WIZNET_BUS_ANY=y ++# CONFIG_WIZNET_W5100_SPI is not set ++CONFIG_NET_VENDOR_XILINX=y ++CONFIG_FDDI=y ++CONFIG_DEFXX=m ++# CONFIG_DEFXX_MMIO is not set ++CONFIG_SKFP=m ++# CONFIG_HIPPI is not set ++CONFIG_MDIO_DEVICE=y ++CONFIG_MDIO_BUS=y ++CONFIG_MDIO_BCM_UNIMAC=m ++CONFIG_MDIO_BITBANG=m ++CONFIG_MDIO_BUS_MUX=m ++CONFIG_MDIO_BUS_MUX_GPIO=m ++CONFIG_MDIO_BUS_MUX_MMIOREG=m ++CONFIG_MDIO_CAVIUM=m ++CONFIG_MDIO_GPIO=m ++# CONFIG_MDIO_HISI_FEMAC is not set ++# CONFIG_MDIO_MSCC_MIIM is not set ++CONFIG_MDIO_OCTEON=m ++CONFIG_MDIO_THUNDER=m ++CONFIG_PHYLIB=y ++CONFIG_SWPHY=y ++# CONFIG_LED_TRIGGER_PHY is not set ++ ++# ++# MII PHY device drivers ++# ++CONFIG_AMD_PHY=m ++CONFIG_AQUANTIA_PHY=m ++# CONFIG_ASIX_PHY is not set ++CONFIG_AT803X_PHY=m ++CONFIG_BCM7XXX_PHY=m ++CONFIG_BCM87XX_PHY=m ++CONFIG_BCM_NET_PHYLIB=m ++CONFIG_BROADCOM_PHY=m ++CONFIG_CICADA_PHY=m ++# CONFIG_CORTINA_PHY is not set ++CONFIG_DAVICOM_PHY=m ++# CONFIG_DP83822_PHY is not set ++# CONFIG_DP83TC811_PHY is not set ++CONFIG_DP83848_PHY=m ++CONFIG_DP83867_PHY=m ++CONFIG_FIXED_PHY=y ++CONFIG_ICPLUS_PHY=m ++# CONFIG_INTEL_XWAY_PHY is not set ++CONFIG_LSI_ET1011C_PHY=m ++CONFIG_LXT_PHY=m ++CONFIG_MARVELL_PHY=m ++# CONFIG_MARVELL_10G_PHY is not set ++CONFIG_MICREL_PHY=m ++CONFIG_MICROCHIP_PHY=m ++# CONFIG_MICROCHIP_T1_PHY is not set ++# CONFIG_MICROSEMI_PHY is not set ++CONFIG_NATIONAL_PHY=m ++CONFIG_QSEMI_PHY=m ++CONFIG_REALTEK_PHY=m ++# CONFIG_RENESAS_PHY is not set ++# CONFIG_ROCKCHIP_PHY is not set ++CONFIG_SMSC_PHY=m ++CONFIG_STE10XP=m ++CONFIG_TERANETICS_PHY=m ++CONFIG_VITESSE_PHY=m ++# CONFIG_XILINX_GMII2RGMII is not set ++CONFIG_MICREL_KS8995MA=m ++CONFIG_PLIP=m ++CONFIG_PPP=y ++CONFIG_PPP_BSDCOMP=m ++CONFIG_PPP_DEFLATE=m ++CONFIG_PPP_FILTER=y ++CONFIG_PPP_MPPE=m ++CONFIG_PPP_MULTILINK=y ++CONFIG_PPPOATM=m ++CONFIG_PPPOE=m ++CONFIG_PPTP=m ++CONFIG_PPPOL2TP=m ++CONFIG_PPP_ASYNC=m ++CONFIG_PPP_SYNC_TTY=m ++CONFIG_SLIP=m ++CONFIG_SLHC=y ++CONFIG_SLIP_COMPRESSED=y ++CONFIG_SLIP_SMART=y ++CONFIG_SLIP_MODE_SLIP6=y ++CONFIG_USB_NET_DRIVERS=m ++CONFIG_USB_CATC=m ++CONFIG_USB_KAWETH=m ++CONFIG_USB_PEGASUS=m ++CONFIG_USB_RTL8150=m ++CONFIG_USB_RTL8152=m ++CONFIG_USB_LAN78XX=m ++CONFIG_USB_USBNET=m ++CONFIG_USB_NET_AX8817X=m ++CONFIG_USB_NET_AX88179_178A=m ++CONFIG_USB_NET_CDCETHER=m ++CONFIG_USB_NET_CDC_EEM=m ++CONFIG_USB_NET_CDC_NCM=m ++CONFIG_USB_NET_HUAWEI_CDC_NCM=m ++CONFIG_USB_NET_CDC_MBIM=m ++CONFIG_USB_NET_DM9601=m ++CONFIG_USB_NET_SR9700=m ++CONFIG_USB_NET_SR9800=m ++CONFIG_USB_NET_SMSC75XX=m ++CONFIG_USB_NET_SMSC95XX=m ++CONFIG_USB_NET_GL620A=m ++CONFIG_USB_NET_NET1080=m ++CONFIG_USB_NET_PLUSB=m ++CONFIG_USB_NET_MCS7830=m ++CONFIG_USB_NET_RNDIS_HOST=m ++CONFIG_USB_NET_CDC_SUBSET_ENABLE=m ++CONFIG_USB_NET_CDC_SUBSET=m ++CONFIG_USB_ALI_M5632=y ++CONFIG_USB_AN2720=y ++CONFIG_USB_BELKIN=y ++CONFIG_USB_ARMLINUX=y ++CONFIG_USB_EPSON2888=y ++CONFIG_USB_KC2190=y ++CONFIG_USB_NET_ZAURUS=m ++CONFIG_USB_NET_CX82310_ETH=m ++CONFIG_USB_NET_KALMIA=m ++CONFIG_USB_NET_QMI_WWAN=m ++CONFIG_USB_HSO=m ++CONFIG_USB_NET_INT51X1=m ++CONFIG_USB_CDC_PHONET=m ++CONFIG_USB_IPHETH=m ++CONFIG_USB_SIERRA_NET=m ++CONFIG_USB_VL600=m ++CONFIG_USB_NET_CH9200=m ++# CONFIG_USB_NET_AQC111 is not set ++CONFIG_WLAN=y ++# CONFIG_WIRELESS_WDS is not set ++CONFIG_WLAN_VENDOR_ADMTEK=y ++CONFIG_ADM8211=m ++CONFIG_ATH_COMMON=m ++CONFIG_WLAN_VENDOR_ATH=y ++# CONFIG_ATH_DEBUG is not set ++CONFIG_ATH5K=m ++# CONFIG_ATH5K_DEBUG is not set ++# CONFIG_ATH5K_TRACER is not set ++CONFIG_ATH5K_PCI=y ++CONFIG_ATH9K_HW=m ++CONFIG_ATH9K_COMMON=m ++CONFIG_ATH9K_COMMON_DEBUG=y ++CONFIG_ATH9K_BTCOEX_SUPPORT=y ++CONFIG_ATH9K=m ++CONFIG_ATH9K_PCI=y ++CONFIG_ATH9K_AHB=y ++CONFIG_ATH9K_DEBUGFS=y ++CONFIG_ATH9K_STATION_STATISTICS=y ++# CONFIG_ATH9K_DYNACK is not set ++CONFIG_ATH9K_WOW=y ++CONFIG_ATH9K_RFKILL=y ++CONFIG_ATH9K_CHANNEL_CONTEXT=y ++CONFIG_ATH9K_PCOEM=y ++CONFIG_ATH9K_HTC=m ++CONFIG_ATH9K_HTC_DEBUGFS=y ++# CONFIG_ATH9K_HWRNG is not set ++# CONFIG_ATH9K_COMMON_SPECTRAL is not set ++CONFIG_CARL9170=m ++CONFIG_CARL9170_LEDS=y ++# CONFIG_CARL9170_DEBUGFS is not set ++CONFIG_CARL9170_WPC=y ++CONFIG_CARL9170_HWRNG=y ++CONFIG_ATH6KL=m ++CONFIG_ATH6KL_SDIO=m ++CONFIG_ATH6KL_USB=m ++# CONFIG_ATH6KL_DEBUG is not set ++# CONFIG_ATH6KL_TRACING is not set ++CONFIG_AR5523=m ++CONFIG_WIL6210=m ++CONFIG_WIL6210_ISR_COR=y ++CONFIG_WIL6210_TRACING=y ++CONFIG_WIL6210_DEBUGFS=y ++CONFIG_ATH10K=m ++CONFIG_ATH10K_CE=y ++CONFIG_ATH10K_PCI=m ++# CONFIG_ATH10K_AHB is not set ++# CONFIG_ATH10K_SDIO is not set ++# CONFIG_ATH10K_USB is not set ++# CONFIG_ATH10K_DEBUG is not set ++CONFIG_ATH10K_DEBUGFS=y ++# CONFIG_ATH10K_SPECTRAL is not set ++CONFIG_ATH10K_TRACING=y ++CONFIG_WCN36XX=m ++# CONFIG_WCN36XX_DEBUGFS is not set ++CONFIG_WLAN_VENDOR_ATMEL=y ++CONFIG_ATMEL=m ++CONFIG_PCI_ATMEL=m ++CONFIG_AT76C50X_USB=m ++CONFIG_WLAN_VENDOR_BROADCOM=y ++CONFIG_B43=m ++CONFIG_B43_BCMA=y ++CONFIG_B43_SSB=y ++CONFIG_B43_BUSES_BCMA_AND_SSB=y ++# CONFIG_B43_BUSES_BCMA is not set ++# CONFIG_B43_BUSES_SSB is not set ++CONFIG_B43_PCI_AUTOSELECT=y ++CONFIG_B43_PCICORE_AUTOSELECT=y ++# CONFIG_B43_SDIO is not set ++CONFIG_B43_BCMA_PIO=y ++CONFIG_B43_PIO=y ++CONFIG_B43_PHY_G=y ++CONFIG_B43_PHY_N=y ++CONFIG_B43_PHY_LP=y ++CONFIG_B43_PHY_HT=y ++CONFIG_B43_LEDS=y ++CONFIG_B43_HWRNG=y ++# CONFIG_B43_DEBUG is not set ++CONFIG_B43LEGACY=m ++CONFIG_B43LEGACY_PCI_AUTOSELECT=y ++CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y ++CONFIG_B43LEGACY_LEDS=y ++CONFIG_B43LEGACY_HWRNG=y ++# CONFIG_B43LEGACY_DEBUG is not set ++CONFIG_B43LEGACY_DMA=y ++CONFIG_B43LEGACY_PIO=y ++CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y ++# CONFIG_B43LEGACY_DMA_MODE is not set ++# CONFIG_B43LEGACY_PIO_MODE is not set ++CONFIG_BRCMUTIL=m ++CONFIG_BRCMSMAC=m ++CONFIG_BRCMFMAC=m ++CONFIG_BRCMFMAC_PROTO_BCDC=y ++CONFIG_BRCMFMAC_PROTO_MSGBUF=y ++CONFIG_BRCMFMAC_SDIO=y ++CONFIG_BRCMFMAC_USB=y ++CONFIG_BRCMFMAC_PCIE=y ++CONFIG_BRCM_TRACING=y ++# CONFIG_BRCMDBG is not set ++CONFIG_WLAN_VENDOR_CISCO=y ++CONFIG_AIRO=m ++CONFIG_WLAN_VENDOR_INTEL=y ++CONFIG_IPW2100=m ++CONFIG_IPW2100_MONITOR=y ++# CONFIG_IPW2100_DEBUG is not set ++CONFIG_IPW2200=m ++CONFIG_IPW2200_MONITOR=y ++CONFIG_IPW2200_RADIOTAP=y ++CONFIG_IPW2200_PROMISCUOUS=y ++CONFIG_IPW2200_QOS=y ++# CONFIG_IPW2200_DEBUG is not set ++CONFIG_LIBIPW=m ++# CONFIG_LIBIPW_DEBUG is not set ++CONFIG_IWLEGACY=m ++CONFIG_IWL4965=m ++CONFIG_IWL3945=m ++ ++# ++# iwl3945 / iwl4965 Debugging Options ++# ++# CONFIG_IWLEGACY_DEBUG is not set ++CONFIG_IWLEGACY_DEBUGFS=y ++CONFIG_IWLWIFI=m ++CONFIG_IWLWIFI_LEDS=y ++CONFIG_IWLDVM=m ++CONFIG_IWLMVM=m ++CONFIG_IWLWIFI_OPMODE_MODULAR=y ++# CONFIG_IWLWIFI_BCAST_FILTERING is not set ++# CONFIG_IWLWIFI_PCIE_RTPM is not set ++ ++# ++# Debugging Options ++# ++# CONFIG_IWLWIFI_DEBUG is not set ++CONFIG_IWLWIFI_DEBUGFS=y ++CONFIG_IWLWIFI_DEVICE_TRACING=y ++CONFIG_WLAN_VENDOR_INTERSIL=y ++CONFIG_HOSTAP=m ++CONFIG_HOSTAP_FIRMWARE=y ++CONFIG_HOSTAP_FIRMWARE_NVRAM=y ++CONFIG_HOSTAP_PLX=m ++CONFIG_HOSTAP_PCI=m ++CONFIG_HERMES=m ++# CONFIG_HERMES_PRISM is not set ++CONFIG_HERMES_CACHE_FW_ON_INIT=y ++CONFIG_PLX_HERMES=m ++CONFIG_TMD_HERMES=m ++CONFIG_NORTEL_HERMES=m ++CONFIG_ORINOCO_USB=m ++CONFIG_P54_COMMON=m ++CONFIG_P54_USB=m ++CONFIG_P54_PCI=m ++CONFIG_P54_SPI=m ++# CONFIG_P54_SPI_DEFAULT_EEPROM is not set ++CONFIG_P54_LEDS=y ++# CONFIG_PRISM54 is not set ++CONFIG_WLAN_VENDOR_MARVELL=y ++CONFIG_LIBERTAS=m ++CONFIG_LIBERTAS_USB=m ++CONFIG_LIBERTAS_SDIO=m ++CONFIG_LIBERTAS_SPI=m ++# CONFIG_LIBERTAS_DEBUG is not set ++CONFIG_LIBERTAS_MESH=y ++CONFIG_LIBERTAS_THINFIRM=m ++# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set ++CONFIG_LIBERTAS_THINFIRM_USB=m ++CONFIG_MWIFIEX=m ++CONFIG_MWIFIEX_SDIO=m ++CONFIG_MWIFIEX_PCIE=m ++CONFIG_MWIFIEX_USB=m ++CONFIG_MWL8K=m ++CONFIG_WLAN_VENDOR_MEDIATEK=y ++CONFIG_MT7601U=m ++# CONFIG_MT76x0U is not set ++# CONFIG_MT76x0E is not set ++# CONFIG_MT76x2E is not set ++# CONFIG_MT76x2U is not set ++CONFIG_WLAN_VENDOR_RALINK=y ++CONFIG_RT2X00=m ++CONFIG_RT2400PCI=m ++CONFIG_RT2500PCI=m ++CONFIG_RT61PCI=m ++CONFIG_RT2800PCI=m ++CONFIG_RT2800PCI_RT33XX=y ++CONFIG_RT2800PCI_RT35XX=y ++CONFIG_RT2800PCI_RT53XX=y ++CONFIG_RT2800PCI_RT3290=y ++CONFIG_RT2500USB=m ++CONFIG_RT73USB=m ++CONFIG_RT2800USB=m ++CONFIG_RT2800USB_RT33XX=y ++CONFIG_RT2800USB_RT35XX=y ++CONFIG_RT2800USB_RT3573=y ++CONFIG_RT2800USB_RT53XX=y ++CONFIG_RT2800USB_RT55XX=y ++CONFIG_RT2800USB_UNKNOWN=y ++CONFIG_RT2800_LIB=m ++CONFIG_RT2800_LIB_MMIO=m ++CONFIG_RT2X00_LIB_MMIO=m ++CONFIG_RT2X00_LIB_PCI=m ++CONFIG_RT2X00_LIB_USB=m ++CONFIG_RT2X00_LIB=m ++CONFIG_RT2X00_LIB_FIRMWARE=y ++CONFIG_RT2X00_LIB_CRYPTO=y ++CONFIG_RT2X00_LIB_LEDS=y ++# CONFIG_RT2X00_LIB_DEBUGFS is not set ++# CONFIG_RT2X00_DEBUG is not set ++CONFIG_WLAN_VENDOR_REALTEK=y ++CONFIG_RTL8180=m ++CONFIG_RTL8187=m ++CONFIG_RTL8187_LEDS=y ++CONFIG_RTL_CARDS=m ++CONFIG_RTL8192CE=m ++CONFIG_RTL8192SE=m ++CONFIG_RTL8192DE=m ++CONFIG_RTL8723AE=m ++CONFIG_RTL8723BE=m ++CONFIG_RTL8188EE=m ++CONFIG_RTL8192EE=m ++CONFIG_RTL8821AE=m ++CONFIG_RTL8192CU=m ++CONFIG_RTLWIFI=m ++CONFIG_RTLWIFI_PCI=m ++CONFIG_RTLWIFI_USB=m ++# CONFIG_RTLWIFI_DEBUG is not set ++CONFIG_RTL8192C_COMMON=m ++CONFIG_RTL8723_COMMON=m ++CONFIG_RTLBTCOEXIST=m ++CONFIG_RTL8XXXU=m ++CONFIG_RTL8XXXU_UNTESTED=y ++CONFIG_WLAN_VENDOR_RSI=y ++CONFIG_RSI_91X=m ++# CONFIG_RSI_DEBUGFS is not set ++CONFIG_RSI_SDIO=m ++CONFIG_RSI_USB=m ++CONFIG_RSI_COEX=y ++CONFIG_WLAN_VENDOR_ST=y ++CONFIG_CW1200=m ++CONFIG_CW1200_WLAN_SDIO=m ++CONFIG_CW1200_WLAN_SPI=m ++CONFIG_WLAN_VENDOR_TI=y ++CONFIG_WL1251=m ++CONFIG_WL1251_SPI=m ++CONFIG_WL1251_SDIO=m ++CONFIG_WL12XX=m ++CONFIG_WL18XX=m ++CONFIG_WLCORE=m ++CONFIG_WLCORE_SPI=m ++CONFIG_WLCORE_SDIO=m ++CONFIG_WILINK_PLATFORM_DATA=y ++CONFIG_WLAN_VENDOR_ZYDAS=y ++CONFIG_USB_ZD1201=m ++CONFIG_ZD1211RW=m ++# CONFIG_ZD1211RW_DEBUG is not set ++CONFIG_WLAN_VENDOR_QUANTENNA=y ++# CONFIG_QTNFMAC_PCIE is not set ++CONFIG_MAC80211_HWSIM=m ++CONFIG_USB_NET_RNDIS_WLAN=m ++# CONFIG_VIRT_WIFI is not set ++ ++# ++# WiMAX Wireless Broadband devices ++# ++CONFIG_WIMAX_I2400M=m ++CONFIG_WIMAX_I2400M_USB=m ++CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8 ++CONFIG_WAN=y ++CONFIG_HDLC=m ++CONFIG_HDLC_RAW=m ++CONFIG_HDLC_RAW_ETH=m ++CONFIG_HDLC_CISCO=m ++CONFIG_HDLC_FR=m ++CONFIG_HDLC_PPP=m ++CONFIG_HDLC_X25=m ++CONFIG_PCI200SYN=m ++CONFIG_WANXL=m ++CONFIG_PC300TOO=m ++CONFIG_FARSYNC=m ++CONFIG_DSCC4=m ++CONFIG_DSCC4_PCISYNC=y ++CONFIG_DSCC4_PCI_RST=y ++CONFIG_DLCI=m ++CONFIG_DLCI_MAX=8 ++CONFIG_LAPBETHER=m ++CONFIG_X25_ASY=m ++CONFIG_IEEE802154_DRIVERS=m ++CONFIG_IEEE802154_FAKELB=m ++CONFIG_IEEE802154_AT86RF230=m ++CONFIG_IEEE802154_AT86RF230_DEBUGFS=y ++CONFIG_IEEE802154_MRF24J40=m ++CONFIG_IEEE802154_CC2520=m ++CONFIG_IEEE802154_ATUSB=m ++# CONFIG_IEEE802154_ADF7242 is not set ++# CONFIG_IEEE802154_MCR20A is not set ++# CONFIG_IEEE802154_HWSIM is not set ++# CONFIG_NETDEVSIM is not set ++CONFIG_NET_FAILOVER=y ++CONFIG_ISDN=y ++CONFIG_ISDN_I4L=m ++CONFIG_ISDN_PPP=y ++CONFIG_ISDN_PPP_VJ=y ++CONFIG_ISDN_MPP=y ++CONFIG_IPPP_FILTER=y ++CONFIG_ISDN_PPP_BSDCOMP=m ++CONFIG_ISDN_AUDIO=y ++CONFIG_ISDN_TTY_FAX=y ++CONFIG_ISDN_X25=y ++ ++# ++# ISDN feature submodules ++# ++CONFIG_ISDN_DIVERSION=m ++ ++# ++# ISDN4Linux hardware drivers ++# ++ ++# ++# Passive cards ++# ++CONFIG_ISDN_DRV_HISAX=m ++ ++# ++# D-channel protocol features ++# ++CONFIG_HISAX_EURO=y ++CONFIG_DE_AOC=y ++# CONFIG_HISAX_NO_SENDCOMPLETE is not set ++# CONFIG_HISAX_NO_LLC is not set ++# CONFIG_HISAX_NO_KEYPAD is not set ++CONFIG_HISAX_1TR6=y ++CONFIG_HISAX_NI1=y ++CONFIG_HISAX_MAX_CARDS=8 ++ ++# ++# HiSax supported cards ++# ++CONFIG_HISAX_16_3=y ++CONFIG_HISAX_S0BOX=y ++CONFIG_HISAX_AVM_A1_PCMCIA=y ++CONFIG_HISAX_ELSA=y ++CONFIG_HISAX_DIEHLDIVA=y ++CONFIG_HISAX_SEDLBAUER=y ++CONFIG_HISAX_NICCY=y ++CONFIG_HISAX_BKM_A4T=y ++CONFIG_HISAX_SCT_QUADRO=y ++CONFIG_HISAX_GAZEL=y ++CONFIG_HISAX_W6692=y ++CONFIG_HISAX_HFC_SX=y ++# CONFIG_HISAX_DEBUG is not set ++ ++# ++# HiSax PCMCIA card service modules ++# ++ ++# ++# HiSax sub driver modules ++# ++CONFIG_HISAX_ST5481=m ++CONFIG_HISAX_HFCUSB=m ++CONFIG_HISAX_HFC4S8S=m ++CONFIG_HISAX_FRITZ_PCIPNP=m ++CONFIG_ISDN_CAPI=m ++CONFIG_CAPI_TRACE=y ++CONFIG_ISDN_CAPI_CAPI20=m ++CONFIG_ISDN_CAPI_MIDDLEWARE=y ++CONFIG_ISDN_CAPI_CAPIDRV=m ++# CONFIG_ISDN_CAPI_CAPIDRV_VERBOSE is not set ++ ++# ++# CAPI hardware drivers ++# ++CONFIG_CAPI_AVM=y ++CONFIG_ISDN_DRV_AVMB1_B1PCI=m ++CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y ++CONFIG_ISDN_DRV_AVMB1_T1PCI=m ++CONFIG_ISDN_DRV_AVMB1_C4=m ++CONFIG_ISDN_DRV_GIGASET=m ++# CONFIG_GIGASET_CAPI is not set ++CONFIG_GIGASET_I4L=y ++CONFIG_GIGASET_BASE=m ++CONFIG_GIGASET_M105=m ++CONFIG_GIGASET_M101=m ++# CONFIG_GIGASET_DEBUG is not set ++CONFIG_HYSDN=m ++CONFIG_HYSDN_CAPI=y ++CONFIG_MISDN=m ++CONFIG_MISDN_DSP=m ++CONFIG_MISDN_L1OIP=m ++ ++# ++# mISDN hardware drivers ++# ++CONFIG_MISDN_HFCPCI=m ++CONFIG_MISDN_HFCMULTI=m ++CONFIG_MISDN_HFCUSB=m ++CONFIG_MISDN_AVMFRITZ=m ++CONFIG_MISDN_SPEEDFAX=m ++CONFIG_MISDN_INFINEON=m ++CONFIG_MISDN_W6692=m ++CONFIG_MISDN_NETJET=m ++CONFIG_MISDN_IPAC=m ++CONFIG_MISDN_ISAR=m ++CONFIG_ISDN_HDLC=m ++CONFIG_NVM=y ++# CONFIG_NVM_PBLK is not set ++ ++# ++# Input device support ++# ++CONFIG_INPUT=y ++CONFIG_INPUT_LEDS=m ++CONFIG_INPUT_FF_MEMLESS=m ++CONFIG_INPUT_POLLDEV=m ++CONFIG_INPUT_SPARSEKMAP=m ++CONFIG_INPUT_MATRIXKMAP=m ++ ++# ++# Userland interfaces ++# ++CONFIG_INPUT_MOUSEDEV=y ++CONFIG_INPUT_MOUSEDEV_PSAUX=y ++CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 ++CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 ++CONFIG_INPUT_JOYDEV=m ++CONFIG_INPUT_EVDEV=y ++CONFIG_INPUT_EVBUG=m ++ ++# ++# Input Device Drivers ++# ++CONFIG_INPUT_KEYBOARD=y ++# CONFIG_KEYBOARD_ADC is not set ++CONFIG_KEYBOARD_ADP5520=m ++CONFIG_KEYBOARD_ADP5588=m ++CONFIG_KEYBOARD_ADP5589=m ++CONFIG_KEYBOARD_ATKBD=y ++CONFIG_KEYBOARD_QT1070=m ++CONFIG_KEYBOARD_QT2160=m ++# CONFIG_KEYBOARD_DLINK_DIR685 is not set ++CONFIG_KEYBOARD_LKKBD=m ++CONFIG_KEYBOARD_GPIO=m ++CONFIG_KEYBOARD_GPIO_POLLED=m ++CONFIG_KEYBOARD_TCA6416=m ++CONFIG_KEYBOARD_TCA8418=m ++CONFIG_KEYBOARD_MATRIX=m ++CONFIG_KEYBOARD_LM8323=m ++CONFIG_KEYBOARD_LM8333=m ++CONFIG_KEYBOARD_MAX7359=m ++CONFIG_KEYBOARD_MCS=m ++CONFIG_KEYBOARD_MPR121=m ++CONFIG_KEYBOARD_NEWTON=m ++CONFIG_KEYBOARD_OPENCORES=m ++CONFIG_KEYBOARD_STOWAWAY=m ++CONFIG_KEYBOARD_SUNKBD=m ++CONFIG_KEYBOARD_STMPE=m ++CONFIG_KEYBOARD_OMAP4=m ++CONFIG_KEYBOARD_TC3589X=m ++# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set ++CONFIG_KEYBOARD_TWL4030=m ++CONFIG_KEYBOARD_XTKBD=m ++CONFIG_KEYBOARD_CAP11XX=m ++# CONFIG_KEYBOARD_MTK_PMIC is not set ++CONFIG_INPUT_MOUSE=y ++CONFIG_MOUSE_PS2=m ++CONFIG_MOUSE_PS2_ALPS=y ++CONFIG_MOUSE_PS2_BYD=y ++CONFIG_MOUSE_PS2_LOGIPS2PP=y ++CONFIG_MOUSE_PS2_SYNAPTICS=y ++CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y ++CONFIG_MOUSE_PS2_CYPRESS=y ++CONFIG_MOUSE_PS2_TRACKPOINT=y ++CONFIG_MOUSE_PS2_ELANTECH=y ++CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y ++CONFIG_MOUSE_PS2_SENTELIC=y ++CONFIG_MOUSE_PS2_TOUCHKIT=y ++CONFIG_MOUSE_PS2_FOCALTECH=y ++CONFIG_MOUSE_PS2_SMBUS=y ++CONFIG_MOUSE_SERIAL=m ++CONFIG_MOUSE_APPLETOUCH=m ++CONFIG_MOUSE_BCM5974=m ++CONFIG_MOUSE_CYAPA=m ++CONFIG_MOUSE_ELAN_I2C=m ++CONFIG_MOUSE_ELAN_I2C_I2C=y ++CONFIG_MOUSE_ELAN_I2C_SMBUS=y ++CONFIG_MOUSE_VSXXXAA=m ++CONFIG_MOUSE_GPIO=m ++CONFIG_MOUSE_SYNAPTICS_I2C=m ++CONFIG_MOUSE_SYNAPTICS_USB=m ++CONFIG_INPUT_JOYSTICK=y ++CONFIG_JOYSTICK_ANALOG=m ++CONFIG_JOYSTICK_A3D=m ++CONFIG_JOYSTICK_ADI=m ++CONFIG_JOYSTICK_COBRA=m ++CONFIG_JOYSTICK_GF2K=m ++CONFIG_JOYSTICK_GRIP=m ++CONFIG_JOYSTICK_GRIP_MP=m ++CONFIG_JOYSTICK_GUILLEMOT=m ++CONFIG_JOYSTICK_INTERACT=m ++CONFIG_JOYSTICK_SIDEWINDER=m ++CONFIG_JOYSTICK_TMDC=m ++CONFIG_JOYSTICK_IFORCE=m ++CONFIG_JOYSTICK_IFORCE_USB=y ++CONFIG_JOYSTICK_IFORCE_232=y ++CONFIG_JOYSTICK_WARRIOR=m ++CONFIG_JOYSTICK_MAGELLAN=m ++CONFIG_JOYSTICK_SPACEORB=m ++CONFIG_JOYSTICK_SPACEBALL=m ++CONFIG_JOYSTICK_STINGER=m ++CONFIG_JOYSTICK_TWIDJOY=m ++CONFIG_JOYSTICK_ZHENHUA=m ++CONFIG_JOYSTICK_DB9=m ++CONFIG_JOYSTICK_GAMECON=m ++CONFIG_JOYSTICK_TURBOGRAFX=m ++CONFIG_JOYSTICK_AS5011=m ++CONFIG_JOYSTICK_JOYDUMP=m ++CONFIG_JOYSTICK_XPAD=m ++CONFIG_JOYSTICK_XPAD_FF=y ++CONFIG_JOYSTICK_XPAD_LEDS=y ++CONFIG_JOYSTICK_WALKERA0701=m ++# CONFIG_JOYSTICK_PSXPAD_SPI is not set ++# CONFIG_JOYSTICK_PXRC is not set ++CONFIG_INPUT_TABLET=y ++CONFIG_TABLET_USB_ACECAD=m ++CONFIG_TABLET_USB_AIPTEK=m ++CONFIG_TABLET_USB_GTCO=m ++CONFIG_TABLET_USB_HANWANG=m ++CONFIG_TABLET_USB_KBTAB=m ++# CONFIG_TABLET_USB_PEGASUS is not set ++CONFIG_TABLET_SERIAL_WACOM4=m ++CONFIG_INPUT_TOUCHSCREEN=y ++CONFIG_TOUCHSCREEN_PROPERTIES=y ++CONFIG_TOUCHSCREEN_88PM860X=m ++CONFIG_TOUCHSCREEN_ADS7846=m ++CONFIG_TOUCHSCREEN_AD7877=m ++CONFIG_TOUCHSCREEN_AD7879=m ++CONFIG_TOUCHSCREEN_AD7879_I2C=m ++CONFIG_TOUCHSCREEN_AD7879_SPI=m ++# CONFIG_TOUCHSCREEN_ADC is not set ++CONFIG_TOUCHSCREEN_AR1021_I2C=m ++CONFIG_TOUCHSCREEN_ATMEL_MXT=m ++# CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set ++CONFIG_TOUCHSCREEN_AUO_PIXCIR=m ++CONFIG_TOUCHSCREEN_BU21013=m ++# CONFIG_TOUCHSCREEN_BU21029 is not set ++CONFIG_TOUCHSCREEN_CHIPONE_ICN8318=m ++CONFIG_TOUCHSCREEN_CY8CTMG110=m ++CONFIG_TOUCHSCREEN_CYTTSP_CORE=m ++CONFIG_TOUCHSCREEN_CYTTSP_I2C=m ++CONFIG_TOUCHSCREEN_CYTTSP_SPI=m ++CONFIG_TOUCHSCREEN_CYTTSP4_CORE=m ++CONFIG_TOUCHSCREEN_CYTTSP4_I2C=m ++CONFIG_TOUCHSCREEN_CYTTSP4_SPI=m ++CONFIG_TOUCHSCREEN_DA9034=m ++CONFIG_TOUCHSCREEN_DA9052=m ++CONFIG_TOUCHSCREEN_DYNAPRO=m ++CONFIG_TOUCHSCREEN_HAMPSHIRE=m ++CONFIG_TOUCHSCREEN_EETI=m ++CONFIG_TOUCHSCREEN_EGALAX=m ++# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set ++# CONFIG_TOUCHSCREEN_EXC3000 is not set ++CONFIG_TOUCHSCREEN_FUJITSU=m ++CONFIG_TOUCHSCREEN_GOODIX=m ++# CONFIG_TOUCHSCREEN_HIDEEP is not set ++CONFIG_TOUCHSCREEN_ILI210X=m ++# CONFIG_TOUCHSCREEN_S6SY761 is not set ++CONFIG_TOUCHSCREEN_GUNZE=m ++# CONFIG_TOUCHSCREEN_EKTF2127 is not set ++CONFIG_TOUCHSCREEN_ELAN=m ++CONFIG_TOUCHSCREEN_ELO=m ++CONFIG_TOUCHSCREEN_WACOM_W8001=m ++CONFIG_TOUCHSCREEN_WACOM_I2C=m ++CONFIG_TOUCHSCREEN_MAX11801=m ++CONFIG_TOUCHSCREEN_MCS5000=m ++CONFIG_TOUCHSCREEN_MMS114=m ++# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set ++CONFIG_TOUCHSCREEN_MTOUCH=m ++CONFIG_TOUCHSCREEN_IMX6UL_TSC=m ++CONFIG_TOUCHSCREEN_INEXIO=m ++CONFIG_TOUCHSCREEN_MK712=m ++CONFIG_TOUCHSCREEN_PENMOUNT=m ++CONFIG_TOUCHSCREEN_EDT_FT5X06=m ++CONFIG_TOUCHSCREEN_TOUCHRIGHT=m ++CONFIG_TOUCHSCREEN_TOUCHWIN=m ++CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m ++CONFIG_TOUCHSCREEN_UCB1400=m ++CONFIG_TOUCHSCREEN_PIXCIR=m ++CONFIG_TOUCHSCREEN_WDT87XX_I2C=m ++CONFIG_TOUCHSCREEN_WM831X=m ++CONFIG_TOUCHSCREEN_WM97XX=m ++CONFIG_TOUCHSCREEN_WM9705=y ++CONFIG_TOUCHSCREEN_WM9712=y ++CONFIG_TOUCHSCREEN_WM9713=y ++CONFIG_TOUCHSCREEN_USB_COMPOSITE=m ++CONFIG_TOUCHSCREEN_MC13783=m ++CONFIG_TOUCHSCREEN_USB_EGALAX=y ++CONFIG_TOUCHSCREEN_USB_PANJIT=y ++CONFIG_TOUCHSCREEN_USB_3M=y ++CONFIG_TOUCHSCREEN_USB_ITM=y ++CONFIG_TOUCHSCREEN_USB_ETURBO=y ++CONFIG_TOUCHSCREEN_USB_GUNZE=y ++CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y ++CONFIG_TOUCHSCREEN_USB_IRTOUCH=y ++CONFIG_TOUCHSCREEN_USB_IDEALTEK=y ++CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y ++CONFIG_TOUCHSCREEN_USB_GOTOP=y ++CONFIG_TOUCHSCREEN_USB_JASTEC=y ++CONFIG_TOUCHSCREEN_USB_ELO=y ++CONFIG_TOUCHSCREEN_USB_E2I=y ++CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y ++CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y ++CONFIG_TOUCHSCREEN_USB_NEXIO=y ++CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y ++CONFIG_TOUCHSCREEN_TOUCHIT213=m ++CONFIG_TOUCHSCREEN_TSC_SERIO=m ++CONFIG_TOUCHSCREEN_TSC200X_CORE=m ++CONFIG_TOUCHSCREEN_TSC2004=m ++CONFIG_TOUCHSCREEN_TSC2005=m ++CONFIG_TOUCHSCREEN_TSC2007=m ++# CONFIG_TOUCHSCREEN_TSC2007_IIO is not set ++CONFIG_TOUCHSCREEN_PCAP=m ++# CONFIG_TOUCHSCREEN_RM_TS is not set ++# CONFIG_TOUCHSCREEN_SILEAD is not set ++# CONFIG_TOUCHSCREEN_SIS_I2C is not set ++CONFIG_TOUCHSCREEN_ST1232=m ++# CONFIG_TOUCHSCREEN_STMFTS is not set ++CONFIG_TOUCHSCREEN_STMPE=m ++CONFIG_TOUCHSCREEN_SUR40=m ++# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set ++CONFIG_TOUCHSCREEN_SX8654=m ++CONFIG_TOUCHSCREEN_TPS6507X=m ++# CONFIG_TOUCHSCREEN_ZET6223 is not set ++CONFIG_TOUCHSCREEN_ZFORCE=m ++CONFIG_TOUCHSCREEN_COLIBRI_VF50=m ++CONFIG_TOUCHSCREEN_ROHM_BU21023=m ++CONFIG_INPUT_MISC=y ++CONFIG_INPUT_88PM860X_ONKEY=m ++CONFIG_INPUT_88PM80X_ONKEY=m ++CONFIG_INPUT_AD714X=m ++CONFIG_INPUT_AD714X_I2C=m ++CONFIG_INPUT_AD714X_SPI=m ++CONFIG_INPUT_ARIZONA_HAPTICS=m ++# CONFIG_INPUT_ATMEL_CAPTOUCH is not set ++CONFIG_INPUT_BMA150=m ++CONFIG_INPUT_E3X0_BUTTON=m ++CONFIG_INPUT_PCSPKR=m ++CONFIG_INPUT_MAX77693_HAPTIC=m ++CONFIG_INPUT_MAX8925_ONKEY=m ++CONFIG_INPUT_MAX8997_HAPTIC=m ++CONFIG_INPUT_MC13783_PWRBUTTON=m ++CONFIG_INPUT_MMA8450=m ++CONFIG_INPUT_GP2A=m ++CONFIG_INPUT_GPIO_BEEPER=m ++# CONFIG_INPUT_GPIO_DECODER is not set ++CONFIG_INPUT_ATI_REMOTE2=m ++CONFIG_INPUT_KEYSPAN_REMOTE=m ++CONFIG_INPUT_KXTJ9=m ++# CONFIG_INPUT_KXTJ9_POLLED_MODE is not set ++CONFIG_INPUT_POWERMATE=m ++CONFIG_INPUT_YEALINK=m ++CONFIG_INPUT_CM109=m ++CONFIG_INPUT_REGULATOR_HAPTIC=m ++CONFIG_INPUT_RETU_PWRBUTTON=m ++CONFIG_INPUT_TPS65218_PWRBUTTON=m ++CONFIG_INPUT_TWL4030_PWRBUTTON=m ++CONFIG_INPUT_TWL4030_VIBRA=m ++CONFIG_INPUT_TWL6040_VIBRA=m ++CONFIG_INPUT_UINPUT=y ++CONFIG_INPUT_PALMAS_PWRBUTTON=m ++CONFIG_INPUT_PCF50633_PMU=m ++CONFIG_INPUT_PCF8574=m ++CONFIG_INPUT_PWM_BEEPER=m ++# CONFIG_INPUT_PWM_VIBRA is not set ++# CONFIG_INPUT_RK805_PWRKEY is not set ++CONFIG_INPUT_GPIO_ROTARY_ENCODER=m ++CONFIG_INPUT_DA9052_ONKEY=m ++CONFIG_INPUT_DA9055_ONKEY=m ++CONFIG_INPUT_DA9063_ONKEY=m ++CONFIG_INPUT_WM831X_ON=m ++CONFIG_INPUT_PCAP=m ++CONFIG_INPUT_ADXL34X=m ++CONFIG_INPUT_ADXL34X_I2C=m ++CONFIG_INPUT_ADXL34X_SPI=m ++CONFIG_INPUT_IMS_PCU=m ++CONFIG_INPUT_CMA3000=m ++CONFIG_INPUT_CMA3000_I2C=m ++CONFIG_INPUT_IDEAPAD_SLIDEBAR=m ++CONFIG_INPUT_SOC_BUTTON_ARRAY=m ++CONFIG_INPUT_DRV260X_HAPTICS=m ++CONFIG_INPUT_DRV2665_HAPTICS=m ++CONFIG_INPUT_DRV2667_HAPTICS=m ++CONFIG_RMI4_CORE=m ++# CONFIG_RMI4_I2C is not set ++# CONFIG_RMI4_SPI is not set ++# CONFIG_RMI4_SMB is not set ++CONFIG_RMI4_F03=y ++CONFIG_RMI4_F03_SERIO=m ++CONFIG_RMI4_2D_SENSOR=y ++CONFIG_RMI4_F11=y ++CONFIG_RMI4_F12=y ++CONFIG_RMI4_F30=y ++# CONFIG_RMI4_F34 is not set ++# CONFIG_RMI4_F54 is not set ++# CONFIG_RMI4_F55 is not set ++ ++# ++# Hardware I/O ports ++# ++CONFIG_SERIO=y ++CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y ++CONFIG_SERIO_I8042=y ++CONFIG_SERIO_SERPORT=m ++CONFIG_SERIO_PARKBD=m ++CONFIG_SERIO_PCIPS2=m ++CONFIG_SERIO_LIBPS2=y ++CONFIG_SERIO_RAW=m ++CONFIG_SERIO_XILINX_XPS_PS2=m ++CONFIG_SERIO_ALTERA_PS2=m ++CONFIG_SERIO_PS2MULT=m ++CONFIG_SERIO_ARC_PS2=m ++CONFIG_SERIO_APBPS2=m ++# CONFIG_SERIO_OLPC_APSP is not set ++# CONFIG_SERIO_GPIO_PS2 is not set ++CONFIG_USERIO=m ++CONFIG_GAMEPORT=m ++CONFIG_GAMEPORT_NS558=m ++CONFIG_GAMEPORT_L4=m ++CONFIG_GAMEPORT_EMU10K1=m ++CONFIG_GAMEPORT_FM801=m ++ ++# ++# Character devices ++# ++CONFIG_TTY=y ++CONFIG_VT=y ++CONFIG_CONSOLE_TRANSLATIONS=y ++CONFIG_VT_CONSOLE=y ++CONFIG_VT_CONSOLE_SLEEP=y ++CONFIG_HW_CONSOLE=y ++CONFIG_VT_HW_CONSOLE_BINDING=y ++CONFIG_UNIX98_PTYS=y ++CONFIG_LEGACY_PTYS=y ++CONFIG_LEGACY_PTY_COUNT=0 ++CONFIG_SERIAL_NONSTANDARD=y ++CONFIG_ROCKETPORT=m ++CONFIG_CYCLADES=m ++# CONFIG_CYZ_INTR is not set ++CONFIG_MOXA_INTELLIO=m ++CONFIG_MOXA_SMARTIO=m ++CONFIG_SYNCLINK=m ++CONFIG_SYNCLINKMP=m ++CONFIG_SYNCLINK_GT=m ++CONFIG_NOZOMI=m ++CONFIG_ISI=m ++CONFIG_N_HDLC=m ++CONFIG_N_GSM=m ++CONFIG_TRACE_ROUTER=m ++CONFIG_TRACE_SINK=m ++# CONFIG_PPC_EPAPR_HV_BYTECHAN is not set ++CONFIG_DEVMEM=y ++# CONFIG_DEVKMEM is not set ++ ++# ++# Serial drivers ++# ++CONFIG_SERIAL_EARLYCON=y ++CONFIG_SERIAL_8250=y ++# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set ++# CONFIG_SERIAL_8250_FINTEK is not set ++CONFIG_SERIAL_8250_CONSOLE=y ++CONFIG_SERIAL_8250_DMA=y ++CONFIG_SERIAL_8250_PCI=y ++CONFIG_SERIAL_8250_EXAR=y ++# CONFIG_SERIAL_8250_MEN_MCB is not set ++CONFIG_SERIAL_8250_NR_UARTS=48 ++CONFIG_SERIAL_8250_RUNTIME_UARTS=32 ++CONFIG_SERIAL_8250_EXTENDED=y ++CONFIG_SERIAL_8250_MANY_PORTS=y ++# CONFIG_SERIAL_8250_ASPEED_VUART is not set ++CONFIG_SERIAL_8250_SHARE_IRQ=y ++# CONFIG_SERIAL_8250_DETECT_IRQ is not set ++CONFIG_SERIAL_8250_RSA=y ++CONFIG_SERIAL_8250_FSL=y ++CONFIG_SERIAL_8250_DW=m ++CONFIG_SERIAL_8250_RT288X=y ++# CONFIG_SERIAL_8250_MOXA is not set ++CONFIG_SERIAL_OF_PLATFORM=y ++ ++# ++# Non-8250 serial port support ++# ++CONFIG_SERIAL_KGDB_NMI=y ++CONFIG_SERIAL_MAX3100=m ++CONFIG_SERIAL_MAX310X=y ++CONFIG_SERIAL_UARTLITE=m ++CONFIG_SERIAL_UARTLITE_NR_UARTS=1 ++CONFIG_SERIAL_CORE=y ++CONFIG_SERIAL_CORE_CONSOLE=y ++CONFIG_CONSOLE_POLL=y ++CONFIG_SERIAL_ICOM=m ++CONFIG_SERIAL_JSM=m ++CONFIG_SERIAL_SCCNXP=y ++CONFIG_SERIAL_SCCNXP_CONSOLE=y ++CONFIG_SERIAL_SC16IS7XX_CORE=m ++CONFIG_SERIAL_SC16IS7XX=m ++CONFIG_SERIAL_SC16IS7XX_I2C=y ++CONFIG_SERIAL_SC16IS7XX_SPI=y ++CONFIG_SERIAL_ALTERA_JTAGUART=m ++CONFIG_SERIAL_ALTERA_UART=m ++CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 ++CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 ++# CONFIG_SERIAL_IFX6X60 is not set ++CONFIG_SERIAL_XILINX_PS_UART=m ++CONFIG_SERIAL_ARC=m ++CONFIG_SERIAL_ARC_NR_PORTS=1 ++CONFIG_SERIAL_RP2=m ++CONFIG_SERIAL_RP2_NR_UARTS=32 ++CONFIG_SERIAL_FSL_LPUART=m ++CONFIG_SERIAL_CONEXANT_DIGICOLOR=m ++CONFIG_SERIAL_MEN_Z135=m ++# CONFIG_SERIAL_DEV_BUS is not set ++CONFIG_TTY_PRINTK=y ++CONFIG_TTY_PRINTK_LEVEL=6 ++CONFIG_PRINTER=m ++# CONFIG_LP_CONSOLE is not set ++CONFIG_PPDEV=m ++CONFIG_HVC_DRIVER=y ++CONFIG_HVC_IRQ=y ++CONFIG_HVC_CONSOLE=y ++CONFIG_HVC_OLD_HVSI=y ++CONFIG_HVC_OPAL=y ++CONFIG_HVC_RTAS=y ++CONFIG_HVC_UDBG=y ++CONFIG_HVCS=m ++CONFIG_VIRTIO_CONSOLE=y ++CONFIG_IBM_BSR=m ++CONFIG_POWERNV_OP_PANEL=m ++CONFIG_IPMI_HANDLER=m ++# CONFIG_IPMI_PANIC_EVENT is not set ++CONFIG_IPMI_DEVICE_INTERFACE=m ++CONFIG_IPMI_SI=m ++CONFIG_IPMI_SSIF=m ++CONFIG_IPMI_POWERNV=m ++CONFIG_IPMI_WATCHDOG=m ++CONFIG_IPMI_POWEROFF=m ++CONFIG_HW_RANDOM=y ++CONFIG_HW_RANDOM_TIMERIOMEM=m ++CONFIG_HW_RANDOM_VIRTIO=m ++CONFIG_HW_RANDOM_PSERIES=m ++CONFIG_HW_RANDOM_POWERNV=m ++CONFIG_R3964=m ++CONFIG_APPLICOM=m ++CONFIG_RAW_DRIVER=m ++CONFIG_MAX_RAW_DEVS=256 ++CONFIG_HANGCHECK_TIMER=m ++CONFIG_TCG_TPM=y ++CONFIG_HW_RANDOM_TPM=y ++# CONFIG_TCG_TIS is not set ++# CONFIG_TCG_TIS_SPI is not set ++CONFIG_TCG_TIS_I2C_ATMEL=m ++CONFIG_TCG_TIS_I2C_INFINEON=m ++CONFIG_TCG_TIS_I2C_NUVOTON=m ++CONFIG_TCG_ATMEL=m ++CONFIG_TCG_IBMVTPM=y ++# CONFIG_TCG_VTPM_PROXY is not set ++CONFIG_TCG_TIS_ST33ZP24=m ++CONFIG_TCG_TIS_ST33ZP24_I2C=m ++CONFIG_TCG_TIS_ST33ZP24_SPI=m ++CONFIG_DEVPORT=y ++CONFIG_XILLYBUS=m ++CONFIG_XILLYBUS_PCIE=m ++CONFIG_XILLYBUS_OF=m ++# CONFIG_RANDOM_TRUST_CPU is not set ++ ++# ++# I2C support ++# ++CONFIG_I2C=y ++CONFIG_I2C_BOARDINFO=y ++CONFIG_I2C_COMPAT=y ++CONFIG_I2C_CHARDEV=y ++CONFIG_I2C_MUX=m ++ ++# ++# Multiplexer I2C Chip support ++# ++CONFIG_I2C_ARB_GPIO_CHALLENGE=m ++CONFIG_I2C_MUX_GPIO=m ++# CONFIG_I2C_MUX_GPMUX is not set ++# CONFIG_I2C_MUX_LTC4306 is not set ++CONFIG_I2C_MUX_PCA9541=m ++CONFIG_I2C_MUX_PCA954x=m ++CONFIG_I2C_MUX_REG=m ++# CONFIG_I2C_MUX_MLXCPLD is not set ++CONFIG_I2C_HELPER_AUTO=y ++CONFIG_I2C_SMBUS=m ++CONFIG_I2C_ALGOBIT=m ++CONFIG_I2C_ALGOPCA=m ++ ++# ++# I2C Hardware Bus support ++# ++ ++# ++# PC SMBus host controller drivers ++# ++CONFIG_I2C_ALI1535=m ++CONFIG_I2C_ALI1563=m ++CONFIG_I2C_ALI15X3=m ++CONFIG_I2C_AMD756=m ++CONFIG_I2C_AMD8111=m ++CONFIG_I2C_I801=m ++CONFIG_I2C_ISCH=m ++CONFIG_I2C_PIIX4=m ++CONFIG_I2C_NFORCE2=m ++# CONFIG_I2C_NVIDIA_GPU is not set ++CONFIG_I2C_SIS5595=m ++CONFIG_I2C_SIS630=m ++CONFIG_I2C_SIS96X=m ++CONFIG_I2C_VIA=m ++CONFIG_I2C_VIAPRO=m ++ ++# ++# I2C system bus drivers (mostly embedded / system-on-chip) ++# ++CONFIG_I2C_CBUS_GPIO=m ++CONFIG_I2C_DESIGNWARE_CORE=m ++CONFIG_I2C_DESIGNWARE_PLATFORM=m ++# CONFIG_I2C_DESIGNWARE_SLAVE is not set ++CONFIG_I2C_DESIGNWARE_PCI=m ++CONFIG_I2C_GPIO=m ++# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set ++CONFIG_I2C_KEMPLD=m ++CONFIG_I2C_MPC=m ++CONFIG_I2C_OCORES=m ++CONFIG_I2C_PCA_PLATFORM=m ++CONFIG_I2C_SIMTEC=m ++CONFIG_I2C_XILINX=m ++ ++# ++# External I2C/SMBus adapter drivers ++# ++CONFIG_I2C_DIOLAN_U2C=m ++CONFIG_I2C_DLN2=m ++CONFIG_I2C_PARPORT=m ++CONFIG_I2C_PARPORT_LIGHT=m ++CONFIG_I2C_ROBOTFUZZ_OSIF=m ++CONFIG_I2C_TAOS_EVM=m ++CONFIG_I2C_TINY_USB=m ++CONFIG_I2C_VIPERBOARD=m ++ ++# ++# Other I2C/SMBus bus drivers ++# ++CONFIG_I2C_OPAL=y ++CONFIG_I2C_STUB=m ++# CONFIG_I2C_SLAVE is not set ++# CONFIG_I2C_DEBUG_CORE is not set ++# CONFIG_I2C_DEBUG_ALGO is not set ++# CONFIG_I2C_DEBUG_BUS is not set ++# CONFIG_I3C is not set ++CONFIG_SPI=y ++# CONFIG_SPI_DEBUG is not set ++CONFIG_SPI_MASTER=y ++CONFIG_SPI_MEM=y ++ ++# ++# SPI Master Controller Drivers ++# ++CONFIG_SPI_ALTERA=m ++# CONFIG_SPI_AXI_SPI_ENGINE is not set ++CONFIG_SPI_BITBANG=m ++CONFIG_SPI_BUTTERFLY=m ++CONFIG_SPI_CADENCE=m ++CONFIG_SPI_DESIGNWARE=m ++CONFIG_SPI_DW_PCI=m ++CONFIG_SPI_DW_MID_DMA=y ++CONFIG_SPI_DW_MMIO=m ++CONFIG_SPI_DLN2=m ++CONFIG_SPI_GPIO=m ++CONFIG_SPI_LM70_LLP=m ++CONFIG_SPI_FSL_LIB=y ++CONFIG_SPI_FSL_SPI=y ++CONFIG_SPI_OC_TINY=m ++CONFIG_SPI_PXA2XX=m ++# CONFIG_SPI_ROCKCHIP is not set ++CONFIG_SPI_SC18IS602=m ++# CONFIG_SPI_MXIC is not set ++CONFIG_SPI_XCOMM=m ++# CONFIG_SPI_XILINX is not set ++CONFIG_SPI_ZYNQMP_GQSPI=m ++ ++# ++# SPI Protocol Masters ++# ++CONFIG_SPI_SPIDEV=m ++# CONFIG_SPI_LOOPBACK_TEST is not set ++CONFIG_SPI_TLE62X0=m ++# CONFIG_SPI_SLAVE is not set ++CONFIG_SPMI=m ++CONFIG_HSI=m ++CONFIG_HSI_BOARDINFO=y ++ ++# ++# HSI controllers ++# ++ ++# ++# HSI clients ++# ++CONFIG_HSI_CHAR=m ++CONFIG_PPS=y ++# CONFIG_PPS_DEBUG is not set ++ ++# ++# PPS clients support ++# ++# CONFIG_PPS_CLIENT_KTIMER is not set ++CONFIG_PPS_CLIENT_LDISC=m ++CONFIG_PPS_CLIENT_PARPORT=m ++CONFIG_PPS_CLIENT_GPIO=m ++ ++# ++# PPS generators support ++# ++ ++# ++# PTP clock support ++# ++CONFIG_PTP_1588_CLOCK=y ++ ++# ++# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. ++# ++# CONFIG_PINCTRL is not set ++CONFIG_GPIOLIB=y ++CONFIG_GPIOLIB_FASTPATH_LIMIT=512 ++CONFIG_OF_GPIO=y ++CONFIG_GPIOLIB_IRQCHIP=y ++# CONFIG_DEBUG_GPIO is not set ++CONFIG_GPIO_SYSFS=y ++CONFIG_GPIO_GENERIC=m ++CONFIG_GPIO_MAX730X=m ++ ++# ++# Memory mapped GPIO drivers ++# ++CONFIG_GPIO_74XX_MMIO=m ++CONFIG_GPIO_ALTERA=m ++# CONFIG_GPIO_CADENCE is not set ++CONFIG_GPIO_DWAPB=m ++# CONFIG_GPIO_EXAR is not set ++# CONFIG_GPIO_FTGPIO010 is not set ++CONFIG_GPIO_GENERIC_PLATFORM=m ++CONFIG_GPIO_GRGPIO=m ++# CONFIG_GPIO_HLWD is not set ++# CONFIG_GPIO_MB86S7X is not set ++# CONFIG_GPIO_MENZ127 is not set ++# CONFIG_GPIO_MOCKUP is not set ++# CONFIG_GPIO_SAMA5D2_PIOBU is not set ++CONFIG_GPIO_SYSCON=m ++CONFIG_GPIO_XILINX=y ++ ++# ++# I2C GPIO expanders ++# ++CONFIG_GPIO_ADP5588=m ++CONFIG_GPIO_ADNP=m ++CONFIG_GPIO_MAX7300=m ++CONFIG_GPIO_MAX732X=m ++CONFIG_GPIO_PCA953X=m ++CONFIG_GPIO_PCF857X=m ++# CONFIG_GPIO_TPIC2810 is not set ++ ++# ++# MFD GPIO expanders ++# ++CONFIG_GPIO_ADP5520=m ++CONFIG_GPIO_ARIZONA=m ++CONFIG_GPIO_DA9052=m ++CONFIG_GPIO_DA9055=m ++CONFIG_GPIO_DLN2=m ++CONFIG_GPIO_JANZ_TTL=m ++CONFIG_GPIO_KEMPLD=m ++CONFIG_GPIO_LP3943=m ++CONFIG_GPIO_PALMAS=y ++CONFIG_GPIO_RC5T583=y ++CONFIG_GPIO_STMPE=y ++CONFIG_GPIO_TC3589X=y ++# CONFIG_GPIO_TPS65218 is not set ++CONFIG_GPIO_TPS6586X=y ++CONFIG_GPIO_TPS65910=y ++CONFIG_GPIO_TPS65912=m ++CONFIG_GPIO_TWL4030=m ++CONFIG_GPIO_TWL6040=m ++CONFIG_GPIO_UCB1400=m ++CONFIG_GPIO_WM831X=m ++CONFIG_GPIO_WM8350=m ++CONFIG_GPIO_WM8994=m ++ ++# ++# PCI GPIO expanders ++# ++# CONFIG_GPIO_PCI_IDIO_16 is not set ++# CONFIG_GPIO_PCIE_IDIO_24 is not set ++CONFIG_GPIO_RDC321X=m ++ ++# ++# SPI GPIO expanders ++# ++CONFIG_GPIO_74X164=m ++# CONFIG_GPIO_MAX3191X is not set ++CONFIG_GPIO_MAX7301=m ++CONFIG_GPIO_MC33880=m ++# CONFIG_GPIO_PISOSR is not set ++# CONFIG_GPIO_XRA1403 is not set ++ ++# ++# USB GPIO expanders ++# ++CONFIG_GPIO_VIPERBOARD=m ++CONFIG_W1=m ++CONFIG_W1_CON=y ++ ++# ++# 1-wire Bus Masters ++# ++CONFIG_W1_MASTER_MATROX=m ++CONFIG_W1_MASTER_DS2490=m ++CONFIG_W1_MASTER_DS2482=m ++CONFIG_W1_MASTER_DS1WM=m ++CONFIG_W1_MASTER_GPIO=m ++ ++# ++# 1-wire Slaves ++# ++CONFIG_W1_SLAVE_THERM=m ++CONFIG_W1_SLAVE_SMEM=m ++# CONFIG_W1_SLAVE_DS2405 is not set ++CONFIG_W1_SLAVE_DS2408=m ++CONFIG_W1_SLAVE_DS2408_READBACK=y ++CONFIG_W1_SLAVE_DS2413=m ++CONFIG_W1_SLAVE_DS2406=m ++CONFIG_W1_SLAVE_DS2423=m ++# CONFIG_W1_SLAVE_DS2805 is not set ++CONFIG_W1_SLAVE_DS2431=m ++CONFIG_W1_SLAVE_DS2433=m ++# CONFIG_W1_SLAVE_DS2433_CRC is not set ++# CONFIG_W1_SLAVE_DS2438 is not set ++CONFIG_W1_SLAVE_DS2780=m ++CONFIG_W1_SLAVE_DS2781=m ++CONFIG_W1_SLAVE_DS28E04=m ++# CONFIG_W1_SLAVE_DS28E17 is not set ++CONFIG_POWER_AVS=y ++CONFIG_POWER_RESET=y ++CONFIG_POWER_RESET_AS3722=y ++CONFIG_POWER_RESET_GPIO=y ++CONFIG_POWER_RESET_GPIO_RESTART=y ++CONFIG_POWER_RESET_LTC2952=y ++CONFIG_POWER_RESET_RESTART=y ++CONFIG_POWER_RESET_SYSCON=y ++CONFIG_POWER_RESET_SYSCON_POWEROFF=y ++# CONFIG_SYSCON_REBOOT_MODE is not set ++CONFIG_POWER_SUPPLY=y ++# CONFIG_POWER_SUPPLY_DEBUG is not set ++CONFIG_PDA_POWER=m ++CONFIG_GENERIC_ADC_BATTERY=m ++CONFIG_MAX8925_POWER=m ++CONFIG_WM831X_BACKUP=m ++CONFIG_WM831X_POWER=m ++CONFIG_WM8350_POWER=m ++CONFIG_TEST_POWER=m ++CONFIG_BATTERY_88PM860X=m ++# CONFIG_CHARGER_ADP5061 is not set ++CONFIG_BATTERY_DS2760=m ++CONFIG_BATTERY_DS2780=m ++CONFIG_BATTERY_DS2781=m ++CONFIG_BATTERY_DS2782=m ++# CONFIG_BATTERY_LEGO_EV3 is not set ++CONFIG_BATTERY_SBS=m ++# CONFIG_CHARGER_SBS is not set ++# CONFIG_MANAGER_SBS is not set ++CONFIG_BATTERY_BQ27XXX=m ++CONFIG_BATTERY_BQ27XXX_I2C=m ++CONFIG_BATTERY_BQ27XXX_HDQ=m ++# CONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM is not set ++CONFIG_BATTERY_DA9030=m ++CONFIG_BATTERY_DA9052=m ++CONFIG_CHARGER_DA9150=m ++CONFIG_BATTERY_DA9150=m ++CONFIG_BATTERY_MAX17040=m ++CONFIG_BATTERY_MAX17042=m ++# CONFIG_BATTERY_MAX1721X is not set ++CONFIG_BATTERY_TWL4030_MADC=m ++CONFIG_CHARGER_88PM860X=m ++CONFIG_CHARGER_PCF50633=m ++CONFIG_BATTERY_RX51=m ++CONFIG_CHARGER_ISP1704=m ++CONFIG_CHARGER_MAX8903=m ++CONFIG_CHARGER_TWL4030=m ++CONFIG_CHARGER_LP8727=m ++CONFIG_CHARGER_LP8788=m ++CONFIG_CHARGER_GPIO=m ++CONFIG_CHARGER_MANAGER=y ++# CONFIG_CHARGER_LTC3651 is not set ++CONFIG_CHARGER_MAX14577=m ++# CONFIG_CHARGER_DETECTOR_MAX14656 is not set ++CONFIG_CHARGER_MAX77693=m ++CONFIG_CHARGER_MAX8997=m ++CONFIG_CHARGER_MAX8998=m ++CONFIG_CHARGER_BQ2415X=m ++CONFIG_CHARGER_BQ24190=m ++CONFIG_CHARGER_BQ24257=m ++CONFIG_CHARGER_BQ24735=m ++CONFIG_CHARGER_BQ25890=m ++CONFIG_CHARGER_SMB347=m ++CONFIG_CHARGER_TPS65090=m ++CONFIG_CHARGER_TPS65217=m ++CONFIG_BATTERY_GAUGE_LTC2941=m ++CONFIG_BATTERY_RT5033=m ++CONFIG_CHARGER_RT9455=m ++CONFIG_HWMON=y ++CONFIG_HWMON_VID=m ++# CONFIG_HWMON_DEBUG_CHIP is not set ++ ++# ++# Native drivers ++# ++CONFIG_SENSORS_AD7314=m ++CONFIG_SENSORS_AD7414=m ++CONFIG_SENSORS_AD7418=m ++CONFIG_SENSORS_ADM1021=m ++CONFIG_SENSORS_ADM1025=m ++CONFIG_SENSORS_ADM1026=m ++CONFIG_SENSORS_ADM1029=m ++CONFIG_SENSORS_ADM1031=m ++CONFIG_SENSORS_ADM9240=m ++CONFIG_SENSORS_ADT7X10=m ++CONFIG_SENSORS_ADT7310=m ++CONFIG_SENSORS_ADT7410=m ++CONFIG_SENSORS_ADT7411=m ++CONFIG_SENSORS_ADT7462=m ++CONFIG_SENSORS_ADT7470=m ++CONFIG_SENSORS_ADT7475=m ++CONFIG_SENSORS_ASC7621=m ++# CONFIG_SENSORS_ASPEED is not set ++CONFIG_SENSORS_ATXP1=m ++CONFIG_SENSORS_DS620=m ++CONFIG_SENSORS_DS1621=m ++CONFIG_SENSORS_DA9052_ADC=m ++CONFIG_SENSORS_DA9055=m ++CONFIG_SENSORS_I5K_AMB=m ++CONFIG_SENSORS_F75375S=m ++CONFIG_SENSORS_MC13783_ADC=m ++# CONFIG_SENSORS_FTSTEUTATES is not set ++CONFIG_SENSORS_GL518SM=m ++CONFIG_SENSORS_GL520SM=m ++CONFIG_SENSORS_G760A=m ++CONFIG_SENSORS_G762=m ++CONFIG_SENSORS_GPIO_FAN=m ++CONFIG_SENSORS_HIH6130=m ++CONFIG_SENSORS_IBMAEM=m ++CONFIG_SENSORS_IBMPEX=m ++CONFIG_SENSORS_IBMPOWERNV=m ++CONFIG_SENSORS_IIO_HWMON=m ++CONFIG_SENSORS_JC42=m ++CONFIG_SENSORS_POWR1220=m ++CONFIG_SENSORS_LINEAGE=m ++CONFIG_SENSORS_LTC2945=m ++# CONFIG_SENSORS_LTC2990 is not set ++CONFIG_SENSORS_LTC4151=m ++CONFIG_SENSORS_LTC4215=m ++CONFIG_SENSORS_LTC4222=m ++CONFIG_SENSORS_LTC4245=m ++CONFIG_SENSORS_LTC4260=m ++CONFIG_SENSORS_LTC4261=m ++CONFIG_SENSORS_MAX1111=m ++CONFIG_SENSORS_MAX16065=m ++CONFIG_SENSORS_MAX1619=m ++CONFIG_SENSORS_MAX1668=m ++CONFIG_SENSORS_MAX197=m ++# CONFIG_SENSORS_MAX31722 is not set ++# CONFIG_SENSORS_MAX6621 is not set ++CONFIG_SENSORS_MAX6639=m ++CONFIG_SENSORS_MAX6642=m ++CONFIG_SENSORS_MAX6650=m ++CONFIG_SENSORS_MAX6697=m ++CONFIG_SENSORS_MAX31790=m ++CONFIG_SENSORS_MCP3021=m ++# CONFIG_SENSORS_TC654 is not set ++CONFIG_SENSORS_MENF21BMC_HWMON=m ++CONFIG_SENSORS_ADCXX=m ++CONFIG_SENSORS_LM63=m ++CONFIG_SENSORS_LM70=m ++CONFIG_SENSORS_LM73=m ++CONFIG_SENSORS_LM75=m ++CONFIG_SENSORS_LM77=m ++CONFIG_SENSORS_LM78=m ++CONFIG_SENSORS_LM80=m ++CONFIG_SENSORS_LM83=m ++CONFIG_SENSORS_LM85=m ++CONFIG_SENSORS_LM87=m ++CONFIG_SENSORS_LM90=m ++CONFIG_SENSORS_LM92=m ++CONFIG_SENSORS_LM93=m ++CONFIG_SENSORS_LM95234=m ++CONFIG_SENSORS_LM95241=m ++CONFIG_SENSORS_LM95245=m ++CONFIG_SENSORS_NTC_THERMISTOR=m ++CONFIG_SENSORS_NCT7802=m ++CONFIG_SENSORS_NCT7904=m ++# CONFIG_SENSORS_NPCM7XX is not set ++# CONFIG_SENSORS_OCC_P8_I2C is not set ++CONFIG_SENSORS_PCF8591=m ++CONFIG_PMBUS=m ++CONFIG_SENSORS_PMBUS=m ++CONFIG_SENSORS_ADM1275=m ++# CONFIG_SENSORS_IBM_CFFPS is not set ++# CONFIG_SENSORS_IR35221 is not set ++CONFIG_SENSORS_LM25066=m ++CONFIG_SENSORS_LTC2978=m ++CONFIG_SENSORS_LTC2978_REGULATOR=y ++# CONFIG_SENSORS_LTC3815 is not set ++CONFIG_SENSORS_MAX16064=m ++CONFIG_SENSORS_MAX20751=m ++# CONFIG_SENSORS_MAX31785 is not set ++CONFIG_SENSORS_MAX34440=m ++CONFIG_SENSORS_MAX8688=m ++CONFIG_SENSORS_TPS40422=m ++# CONFIG_SENSORS_TPS53679 is not set ++CONFIG_SENSORS_UCD9000=m ++CONFIG_SENSORS_UCD9200=m ++CONFIG_SENSORS_ZL6100=m ++CONFIG_SENSORS_PWM_FAN=m ++CONFIG_SENSORS_SHT15=m ++CONFIG_SENSORS_SHT21=m ++# CONFIG_SENSORS_SHT3x is not set ++CONFIG_SENSORS_SHTC1=m ++CONFIG_SENSORS_SIS5595=m ++CONFIG_SENSORS_EMC1403=m ++CONFIG_SENSORS_EMC2103=m ++CONFIG_SENSORS_EMC6W201=m ++CONFIG_SENSORS_SMSC47M192=m ++# CONFIG_SENSORS_STTS751 is not set ++CONFIG_SENSORS_SMM665=m ++CONFIG_SENSORS_ADC128D818=m ++CONFIG_SENSORS_ADS1015=m ++CONFIG_SENSORS_ADS7828=m ++CONFIG_SENSORS_ADS7871=m ++CONFIG_SENSORS_AMC6821=m ++CONFIG_SENSORS_INA209=m ++CONFIG_SENSORS_INA2XX=m ++# CONFIG_SENSORS_INA3221 is not set ++CONFIG_SENSORS_TC74=m ++CONFIG_SENSORS_THMC50=m ++CONFIG_SENSORS_TMP102=m ++CONFIG_SENSORS_TMP103=m ++# CONFIG_SENSORS_TMP108 is not set ++CONFIG_SENSORS_TMP401=m ++CONFIG_SENSORS_TMP421=m ++CONFIG_SENSORS_VIA686A=m ++CONFIG_SENSORS_VT8231=m ++# CONFIG_SENSORS_W83773G is not set ++CONFIG_SENSORS_W83781D=m ++CONFIG_SENSORS_W83791D=m ++CONFIG_SENSORS_W83792D=m ++CONFIG_SENSORS_W83793=m ++CONFIG_SENSORS_W83795=m ++# CONFIG_SENSORS_W83795_FANCTRL is not set ++CONFIG_SENSORS_W83L785TS=m ++CONFIG_SENSORS_W83L786NG=m ++CONFIG_SENSORS_WM831X=m ++CONFIG_SENSORS_WM8350=m ++CONFIG_THERMAL=y ++# CONFIG_THERMAL_STATISTICS is not set ++CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 ++CONFIG_THERMAL_HWMON=y ++CONFIG_THERMAL_OF=y ++CONFIG_THERMAL_WRITABLE_TRIPS=y ++CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y ++# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set ++# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set ++# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set ++CONFIG_THERMAL_GOV_FAIR_SHARE=y ++CONFIG_THERMAL_GOV_STEP_WISE=y ++CONFIG_THERMAL_GOV_BANG_BANG=y ++CONFIG_THERMAL_GOV_USER_SPACE=y ++CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y ++CONFIG_CPU_THERMAL=y ++# CONFIG_DEVFREQ_THERMAL is not set ++CONFIG_THERMAL_EMULATION=y ++# CONFIG_QORIQ_THERMAL is not set ++# CONFIG_DA9062_THERMAL is not set ++# CONFIG_GENERIC_ADC_THERMAL is not set ++CONFIG_WATCHDOG=y ++CONFIG_WATCHDOG_CORE=y ++# CONFIG_WATCHDOG_NOWAYOUT is not set ++CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y ++# CONFIG_WATCHDOG_SYSFS is not set ++ ++# ++# Watchdog Device Drivers ++# ++CONFIG_SOFT_WATCHDOG=m ++CONFIG_DA9052_WATCHDOG=m ++CONFIG_DA9055_WATCHDOG=m ++CONFIG_DA9063_WATCHDOG=m ++CONFIG_DA9062_WATCHDOG=m ++CONFIG_GPIO_WATCHDOG=m ++CONFIG_MENF21BMC_WATCHDOG=m ++# CONFIG_MENZ069_WATCHDOG is not set ++CONFIG_WM831X_WATCHDOG=m ++CONFIG_WM8350_WATCHDOG=m ++CONFIG_XILINX_WATCHDOG=m ++# CONFIG_ZIIRAVE_WATCHDOG is not set ++CONFIG_CADENCE_WATCHDOG=m ++CONFIG_DW_WATCHDOG=m ++CONFIG_RN5T618_WATCHDOG=m ++CONFIG_TWL4030_WATCHDOG=m ++CONFIG_MAX63XX_WATCHDOG=m ++CONFIG_RETU_WATCHDOG=m ++CONFIG_ALIM7101_WDT=m ++CONFIG_I6300ESB_WDT=m ++CONFIG_KEMPLD_WDT=m ++CONFIG_MEN_A21_WDT=m ++CONFIG_WATCHDOG_RTAS=m ++ ++# ++# PCI-based Watchdog Cards ++# ++CONFIG_PCIPCWATCHDOG=m ++CONFIG_WDTPCI=m ++ ++# ++# USB-based Watchdog Cards ++# ++CONFIG_USBPCWATCHDOG=m ++ ++# ++# Watchdog Pretimeout Governors ++# ++# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set ++CONFIG_SSB_POSSIBLE=y ++CONFIG_SSB=m ++CONFIG_SSB_SPROM=y ++CONFIG_SSB_BLOCKIO=y ++CONFIG_SSB_PCIHOST_POSSIBLE=y ++CONFIG_SSB_PCIHOST=y ++CONFIG_SSB_B43_PCI_BRIDGE=y ++CONFIG_SSB_SDIOHOST_POSSIBLE=y ++CONFIG_SSB_SDIOHOST=y ++CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y ++CONFIG_SSB_DRIVER_PCICORE=y ++CONFIG_SSB_DRIVER_GPIO=y ++CONFIG_BCMA_POSSIBLE=y ++CONFIG_BCMA=m ++CONFIG_BCMA_BLOCKIO=y ++CONFIG_BCMA_HOST_PCI_POSSIBLE=y ++CONFIG_BCMA_HOST_PCI=y ++CONFIG_BCMA_HOST_SOC=y ++CONFIG_BCMA_DRIVER_PCI=y ++CONFIG_BCMA_SFLASH=y ++CONFIG_BCMA_DRIVER_GMAC_CMN=y ++CONFIG_BCMA_DRIVER_GPIO=y ++# CONFIG_BCMA_DEBUG is not set ++ ++# ++# Multifunction device drivers ++# ++CONFIG_MFD_CORE=y ++# CONFIG_MFD_ACT8945A is not set ++CONFIG_MFD_AS3711=y ++CONFIG_MFD_AS3722=y ++CONFIG_PMIC_ADP5520=y ++CONFIG_MFD_AAT2870_CORE=y ++# CONFIG_MFD_AT91_USART is not set ++CONFIG_MFD_ATMEL_FLEXCOM=m ++CONFIG_MFD_ATMEL_HLCDC=m ++CONFIG_MFD_BCM590XX=m ++# CONFIG_MFD_BD9571MWV is not set ++# CONFIG_MFD_AXP20X_I2C is not set ++# CONFIG_MFD_MADERA is not set ++CONFIG_PMIC_DA903X=y ++CONFIG_PMIC_DA9052=y ++CONFIG_MFD_DA9052_SPI=y ++CONFIG_MFD_DA9052_I2C=y ++CONFIG_MFD_DA9055=y ++CONFIG_MFD_DA9062=m ++CONFIG_MFD_DA9063=y ++CONFIG_MFD_DA9150=m ++CONFIG_MFD_DLN2=m ++CONFIG_MFD_MC13XXX=m ++CONFIG_MFD_MC13XXX_SPI=m ++CONFIG_MFD_MC13XXX_I2C=m ++CONFIG_MFD_HI6421_PMIC=m ++CONFIG_HTC_PASIC3=m ++CONFIG_HTC_I2CPLD=y ++CONFIG_LPC_ICH=m ++CONFIG_LPC_SCH=m ++CONFIG_MFD_JANZ_CMODIO=m ++CONFIG_MFD_KEMPLD=m ++CONFIG_MFD_88PM800=m ++CONFIG_MFD_88PM805=m ++CONFIG_MFD_88PM860X=y ++CONFIG_MFD_MAX14577=y ++# CONFIG_MFD_MAX77620 is not set ++CONFIG_MFD_MAX77686=y ++CONFIG_MFD_MAX77693=y ++CONFIG_MFD_MAX77843=y ++CONFIG_MFD_MAX8907=m ++CONFIG_MFD_MAX8925=y ++CONFIG_MFD_MAX8997=y ++CONFIG_MFD_MAX8998=y ++CONFIG_MFD_MT6397=m ++CONFIG_MFD_MENF21BMC=m ++CONFIG_EZX_PCAP=y ++# CONFIG_MFD_CPCAP is not set ++CONFIG_MFD_VIPERBOARD=m ++CONFIG_MFD_RETU=m ++CONFIG_MFD_PCF50633=m ++CONFIG_PCF50633_ADC=m ++CONFIG_PCF50633_GPIO=m ++CONFIG_UCB1400_CORE=m ++CONFIG_MFD_RDC321X=m ++CONFIG_MFD_RT5033=m ++CONFIG_MFD_RC5T583=y ++CONFIG_MFD_RK808=m ++CONFIG_MFD_RN5T618=m ++CONFIG_MFD_SEC_CORE=y ++CONFIG_MFD_SI476X_CORE=m ++CONFIG_MFD_SM501=m ++CONFIG_MFD_SM501_GPIO=y ++CONFIG_MFD_SKY81452=m ++CONFIG_MFD_SMSC=y ++CONFIG_ABX500_CORE=y ++CONFIG_AB3100_CORE=y ++CONFIG_AB3100_OTP=m ++CONFIG_MFD_STMPE=y ++ ++# ++# STMicroelectronics STMPE Interface Drivers ++# ++CONFIG_STMPE_I2C=y ++CONFIG_STMPE_SPI=y ++CONFIG_MFD_SYSCON=y ++CONFIG_MFD_TI_AM335X_TSCADC=m ++CONFIG_MFD_LP3943=m ++CONFIG_MFD_LP8788=y ++# CONFIG_MFD_TI_LMU is not set ++CONFIG_MFD_PALMAS=y ++CONFIG_TPS6105X=m ++CONFIG_TPS65010=m ++CONFIG_TPS6507X=m ++# CONFIG_MFD_TPS65086 is not set ++CONFIG_MFD_TPS65090=y ++CONFIG_MFD_TPS65217=y ++# CONFIG_MFD_TI_LP873X is not set ++# CONFIG_MFD_TI_LP87565 is not set ++CONFIG_MFD_TPS65218=m ++CONFIG_MFD_TPS6586X=y ++CONFIG_MFD_TPS65910=y ++CONFIG_MFD_TPS65912=y ++CONFIG_MFD_TPS65912_I2C=y ++CONFIG_MFD_TPS65912_SPI=y ++CONFIG_MFD_TPS80031=y ++CONFIG_TWL4030_CORE=y ++CONFIG_MFD_TWL4030_AUDIO=y ++CONFIG_TWL6040_CORE=y ++CONFIG_MFD_WL1273_CORE=m ++CONFIG_MFD_LM3533=m ++CONFIG_MFD_TC3589X=y ++CONFIG_MFD_VX855=m ++CONFIG_MFD_ARIZONA=y ++CONFIG_MFD_ARIZONA_I2C=m ++CONFIG_MFD_ARIZONA_SPI=m ++# CONFIG_MFD_CS47L24 is not set ++CONFIG_MFD_WM5102=y ++CONFIG_MFD_WM5110=y ++CONFIG_MFD_WM8997=y ++CONFIG_MFD_WM8998=y ++CONFIG_MFD_WM8400=y ++CONFIG_MFD_WM831X=y ++CONFIG_MFD_WM831X_I2C=y ++CONFIG_MFD_WM831X_SPI=y ++CONFIG_MFD_WM8350=y ++CONFIG_MFD_WM8350_I2C=y ++CONFIG_MFD_WM8994=m ++# CONFIG_MFD_ROHM_BD718XX is not set ++CONFIG_REGULATOR=y ++# CONFIG_REGULATOR_DEBUG is not set ++CONFIG_REGULATOR_FIXED_VOLTAGE=m ++CONFIG_REGULATOR_VIRTUAL_CONSUMER=m ++CONFIG_REGULATOR_USERSPACE_CONSUMER=m ++# CONFIG_REGULATOR_88PG86X is not set ++CONFIG_REGULATOR_88PM800=m ++CONFIG_REGULATOR_88PM8607=m ++CONFIG_REGULATOR_ACT8865=m ++CONFIG_REGULATOR_AD5398=m ++CONFIG_REGULATOR_ANATOP=m ++CONFIG_REGULATOR_AAT2870=m ++CONFIG_REGULATOR_AB3100=m ++# CONFIG_REGULATOR_ARIZONA_LDO1 is not set ++# CONFIG_REGULATOR_ARIZONA_MICSUPP is not set ++CONFIG_REGULATOR_AS3711=m ++CONFIG_REGULATOR_AS3722=m ++CONFIG_REGULATOR_BCM590XX=m ++CONFIG_REGULATOR_DA903X=m ++CONFIG_REGULATOR_DA9052=m ++CONFIG_REGULATOR_DA9055=m ++CONFIG_REGULATOR_DA9062=m ++CONFIG_REGULATOR_DA9063=m ++CONFIG_REGULATOR_DA9210=m ++CONFIG_REGULATOR_DA9211=m ++CONFIG_REGULATOR_FAN53555=m ++CONFIG_REGULATOR_GPIO=m ++CONFIG_REGULATOR_HI6421=m ++# CONFIG_REGULATOR_HI6421V530 is not set ++CONFIG_REGULATOR_ISL9305=m ++CONFIG_REGULATOR_ISL6271A=m ++CONFIG_REGULATOR_LP3971=m ++CONFIG_REGULATOR_LP3972=m ++CONFIG_REGULATOR_LP872X=m ++CONFIG_REGULATOR_LP8755=m ++CONFIG_REGULATOR_LP8788=m ++CONFIG_REGULATOR_LTC3589=m ++# CONFIG_REGULATOR_LTC3676 is not set ++CONFIG_REGULATOR_MAX14577=m ++CONFIG_REGULATOR_MAX1586=m ++CONFIG_REGULATOR_MAX8649=m ++CONFIG_REGULATOR_MAX8660=m ++CONFIG_REGULATOR_MAX8907=m ++CONFIG_REGULATOR_MAX8925=m ++CONFIG_REGULATOR_MAX8952=m ++CONFIG_REGULATOR_MAX8973=m ++CONFIG_REGULATOR_MAX8997=m ++CONFIG_REGULATOR_MAX8998=m ++CONFIG_REGULATOR_MAX77686=m ++CONFIG_REGULATOR_MAX77693=m ++CONFIG_REGULATOR_MAX77802=m ++CONFIG_REGULATOR_MC13XXX_CORE=m ++CONFIG_REGULATOR_MC13783=m ++CONFIG_REGULATOR_MC13892=m ++# CONFIG_REGULATOR_MCP16502 is not set ++CONFIG_REGULATOR_MT6311=m ++# CONFIG_REGULATOR_MT6323 is not set ++CONFIG_REGULATOR_MT6397=m ++CONFIG_REGULATOR_PALMAS=m ++CONFIG_REGULATOR_PCAP=m ++CONFIG_REGULATOR_PCF50633=m ++CONFIG_REGULATOR_PFUZE100=m ++# CONFIG_REGULATOR_PV88060 is not set ++# CONFIG_REGULATOR_PV88080 is not set ++# CONFIG_REGULATOR_PV88090 is not set ++CONFIG_REGULATOR_PWM=m ++CONFIG_REGULATOR_QCOM_SPMI=m ++CONFIG_REGULATOR_RC5T583=m ++CONFIG_REGULATOR_RK808=m ++CONFIG_REGULATOR_RN5T618=m ++CONFIG_REGULATOR_RT5033=m ++CONFIG_REGULATOR_S2MPA01=m ++CONFIG_REGULATOR_S2MPS11=m ++CONFIG_REGULATOR_S5M8767=m ++CONFIG_REGULATOR_SKY81452=m ++# CONFIG_REGULATOR_SY8106A is not set ++CONFIG_REGULATOR_TPS51632=m ++CONFIG_REGULATOR_TPS6105X=m ++CONFIG_REGULATOR_TPS62360=m ++CONFIG_REGULATOR_TPS65023=m ++CONFIG_REGULATOR_TPS6507X=m ++CONFIG_REGULATOR_TPS65090=m ++# CONFIG_REGULATOR_TPS65132 is not set ++CONFIG_REGULATOR_TPS65217=y ++CONFIG_REGULATOR_TPS65218=m ++CONFIG_REGULATOR_TPS6524X=m ++CONFIG_REGULATOR_TPS6586X=m ++CONFIG_REGULATOR_TPS65910=m ++CONFIG_REGULATOR_TPS65912=m ++CONFIG_REGULATOR_TPS80031=m ++CONFIG_REGULATOR_TWL4030=m ++# CONFIG_REGULATOR_VCTRL is not set ++CONFIG_REGULATOR_WM831X=m ++CONFIG_REGULATOR_WM8350=m ++CONFIG_REGULATOR_WM8400=m ++CONFIG_REGULATOR_WM8994=m ++CONFIG_CEC_CORE=m ++CONFIG_RC_CORE=m ++CONFIG_RC_MAP=m ++# CONFIG_LIRC is not set ++CONFIG_RC_DECODERS=y ++CONFIG_IR_NEC_DECODER=m ++CONFIG_IR_RC5_DECODER=m ++CONFIG_IR_RC6_DECODER=m ++CONFIG_IR_JVC_DECODER=m ++CONFIG_IR_SONY_DECODER=m ++CONFIG_IR_SANYO_DECODER=m ++CONFIG_IR_SHARP_DECODER=m ++CONFIG_IR_MCE_KBD_DECODER=m ++CONFIG_IR_XMP_DECODER=m ++# CONFIG_IR_IMON_DECODER is not set ++CONFIG_RC_DEVICES=y ++CONFIG_RC_ATI_REMOTE=m ++CONFIG_IR_HIX5HD2=m ++CONFIG_IR_IMON=m ++# CONFIG_IR_IMON_RAW is not set ++CONFIG_IR_MCEUSB=m ++CONFIG_IR_REDRAT3=m ++CONFIG_IR_STREAMZAP=m ++CONFIG_IR_IGORPLUGUSB=m ++CONFIG_IR_IGUANA=m ++CONFIG_IR_TTUSBIR=m ++CONFIG_RC_LOOPBACK=m ++CONFIG_IR_GPIO_CIR=m ++# CONFIG_IR_SERIAL is not set ++# CONFIG_IR_SIR is not set ++# CONFIG_RC_XBOX_DVD is not set ++CONFIG_MEDIA_SUPPORT=m ++ ++# ++# Multimedia core support ++# ++CONFIG_MEDIA_CAMERA_SUPPORT=y ++CONFIG_MEDIA_ANALOG_TV_SUPPORT=y ++CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y ++CONFIG_MEDIA_RADIO_SUPPORT=y ++CONFIG_MEDIA_SDR_SUPPORT=y ++# CONFIG_MEDIA_CEC_SUPPORT is not set ++# CONFIG_MEDIA_CEC_RC is not set ++CONFIG_MEDIA_CONTROLLER=y ++# CONFIG_MEDIA_CONTROLLER_DVB is not set ++# CONFIG_MEDIA_CONTROLLER_REQUEST_API is not set ++CONFIG_VIDEO_DEV=m ++CONFIG_VIDEO_V4L2_SUBDEV_API=y ++CONFIG_VIDEO_V4L2=m ++# CONFIG_VIDEO_ADV_DEBUG is not set ++# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set ++CONFIG_VIDEO_TUNER=m ++CONFIG_V4L2_MEM2MEM_DEV=m ++CONFIG_V4L2_FLASH_LED_CLASS=m ++CONFIG_V4L2_FWNODE=m ++CONFIG_VIDEOBUF_GEN=m ++CONFIG_VIDEOBUF_DMA_SG=m ++CONFIG_VIDEOBUF_VMALLOC=m ++CONFIG_DVB_CORE=m ++# CONFIG_DVB_MMAP is not set ++CONFIG_DVB_NET=y ++CONFIG_TTPCI_EEPROM=m ++CONFIG_DVB_MAX_ADAPTERS=8 ++CONFIG_DVB_DYNAMIC_MINORS=y ++# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set ++# CONFIG_DVB_ULE_DEBUG is not set ++ ++# ++# Media drivers ++# ++CONFIG_MEDIA_USB_SUPPORT=y ++ ++# ++# Webcam devices ++# ++CONFIG_USB_VIDEO_CLASS=m ++CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y ++CONFIG_USB_GSPCA=m ++CONFIG_USB_M5602=m ++CONFIG_USB_STV06XX=m ++CONFIG_USB_GL860=m ++CONFIG_USB_GSPCA_BENQ=m ++CONFIG_USB_GSPCA_CONEX=m ++CONFIG_USB_GSPCA_CPIA1=m ++CONFIG_USB_GSPCA_DTCS033=m ++CONFIG_USB_GSPCA_ETOMS=m ++CONFIG_USB_GSPCA_FINEPIX=m ++CONFIG_USB_GSPCA_JEILINJ=m ++CONFIG_USB_GSPCA_JL2005BCD=m ++CONFIG_USB_GSPCA_KINECT=m ++CONFIG_USB_GSPCA_KONICA=m ++CONFIG_USB_GSPCA_MARS=m ++CONFIG_USB_GSPCA_MR97310A=m ++CONFIG_USB_GSPCA_NW80X=m ++CONFIG_USB_GSPCA_OV519=m ++CONFIG_USB_GSPCA_OV534=m ++CONFIG_USB_GSPCA_OV534_9=m ++CONFIG_USB_GSPCA_PAC207=m ++CONFIG_USB_GSPCA_PAC7302=m ++CONFIG_USB_GSPCA_PAC7311=m ++CONFIG_USB_GSPCA_SE401=m ++CONFIG_USB_GSPCA_SN9C2028=m ++CONFIG_USB_GSPCA_SN9C20X=m ++CONFIG_USB_GSPCA_SONIXB=m ++CONFIG_USB_GSPCA_SONIXJ=m ++CONFIG_USB_GSPCA_SPCA500=m ++CONFIG_USB_GSPCA_SPCA501=m ++CONFIG_USB_GSPCA_SPCA505=m ++CONFIG_USB_GSPCA_SPCA506=m ++CONFIG_USB_GSPCA_SPCA508=m ++CONFIG_USB_GSPCA_SPCA561=m ++CONFIG_USB_GSPCA_SPCA1528=m ++CONFIG_USB_GSPCA_SQ905=m ++CONFIG_USB_GSPCA_SQ905C=m ++CONFIG_USB_GSPCA_SQ930X=m ++CONFIG_USB_GSPCA_STK014=m ++CONFIG_USB_GSPCA_STK1135=m ++CONFIG_USB_GSPCA_STV0680=m ++CONFIG_USB_GSPCA_SUNPLUS=m ++CONFIG_USB_GSPCA_T613=m ++CONFIG_USB_GSPCA_TOPRO=m ++CONFIG_USB_GSPCA_TOUPTEK=m ++CONFIG_USB_GSPCA_TV8532=m ++CONFIG_USB_GSPCA_VC032X=m ++CONFIG_USB_GSPCA_VICAM=m ++CONFIG_USB_GSPCA_XIRLINK_CIT=m ++CONFIG_USB_GSPCA_ZC3XX=m ++CONFIG_USB_PWC=m ++# CONFIG_USB_PWC_DEBUG is not set ++CONFIG_USB_PWC_INPUT_EVDEV=y ++CONFIG_VIDEO_CPIA2=m ++CONFIG_USB_ZR364XX=m ++CONFIG_USB_STKWEBCAM=m ++CONFIG_USB_S2255=m ++CONFIG_VIDEO_USBTV=m ++ ++# ++# Analog TV USB devices ++# ++CONFIG_VIDEO_PVRUSB2=m ++CONFIG_VIDEO_PVRUSB2_SYSFS=y ++CONFIG_VIDEO_PVRUSB2_DVB=y ++# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set ++CONFIG_VIDEO_HDPVR=m ++CONFIG_VIDEO_USBVISION=m ++CONFIG_VIDEO_STK1160_COMMON=m ++CONFIG_VIDEO_STK1160=m ++CONFIG_VIDEO_GO7007=m ++CONFIG_VIDEO_GO7007_USB=m ++CONFIG_VIDEO_GO7007_LOADER=m ++CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m ++ ++# ++# Analog/digital TV USB devices ++# ++CONFIG_VIDEO_AU0828=m ++CONFIG_VIDEO_AU0828_V4L2=y ++CONFIG_VIDEO_AU0828_RC=y ++CONFIG_VIDEO_CX231XX=m ++CONFIG_VIDEO_CX231XX_RC=y ++CONFIG_VIDEO_CX231XX_ALSA=m ++CONFIG_VIDEO_CX231XX_DVB=m ++CONFIG_VIDEO_TM6000=m ++CONFIG_VIDEO_TM6000_ALSA=m ++CONFIG_VIDEO_TM6000_DVB=m ++ ++# ++# Digital TV USB devices ++# ++CONFIG_DVB_USB=m ++# CONFIG_DVB_USB_DEBUG is not set ++CONFIG_DVB_USB_DIB3000MC=m ++CONFIG_DVB_USB_A800=m ++CONFIG_DVB_USB_DIBUSB_MB=m ++# CONFIG_DVB_USB_DIBUSB_MB_FAULTY is not set ++CONFIG_DVB_USB_DIBUSB_MC=m ++CONFIG_DVB_USB_DIB0700=m ++CONFIG_DVB_USB_UMT_010=m ++CONFIG_DVB_USB_CXUSB=m ++CONFIG_DVB_USB_M920X=m ++CONFIG_DVB_USB_DIGITV=m ++CONFIG_DVB_USB_VP7045=m ++CONFIG_DVB_USB_VP702X=m ++CONFIG_DVB_USB_GP8PSK=m ++CONFIG_DVB_USB_NOVA_T_USB2=m ++CONFIG_DVB_USB_TTUSB2=m ++CONFIG_DVB_USB_DTT200U=m ++CONFIG_DVB_USB_OPERA1=m ++CONFIG_DVB_USB_AF9005=m ++CONFIG_DVB_USB_AF9005_REMOTE=m ++CONFIG_DVB_USB_PCTV452E=m ++CONFIG_DVB_USB_DW2102=m ++CONFIG_DVB_USB_CINERGY_T2=m ++CONFIG_DVB_USB_DTV5100=m ++CONFIG_DVB_USB_AZ6027=m ++CONFIG_DVB_USB_TECHNISAT_USB2=m ++CONFIG_DVB_USB_V2=m ++CONFIG_DVB_USB_AF9015=m ++CONFIG_DVB_USB_AF9035=m ++CONFIG_DVB_USB_ANYSEE=m ++CONFIG_DVB_USB_AU6610=m ++CONFIG_DVB_USB_AZ6007=m ++CONFIG_DVB_USB_CE6230=m ++CONFIG_DVB_USB_EC168=m ++CONFIG_DVB_USB_GL861=m ++CONFIG_DVB_USB_LME2510=m ++CONFIG_DVB_USB_MXL111SF=m ++CONFIG_DVB_USB_RTL28XXU=m ++CONFIG_DVB_USB_DVBSKY=m ++# CONFIG_DVB_USB_ZD1301 is not set ++CONFIG_DVB_TTUSB_BUDGET=m ++CONFIG_DVB_TTUSB_DEC=m ++CONFIG_SMS_USB_DRV=m ++CONFIG_DVB_B2C2_FLEXCOP_USB=m ++# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set ++CONFIG_DVB_AS102=m ++ ++# ++# Webcam, TV (analog/digital) USB devices ++# ++CONFIG_VIDEO_EM28XX=m ++CONFIG_VIDEO_EM28XX_V4L2=m ++CONFIG_VIDEO_EM28XX_ALSA=m ++CONFIG_VIDEO_EM28XX_DVB=m ++CONFIG_VIDEO_EM28XX_RC=m ++ ++# ++# Software defined radio USB devices ++# ++CONFIG_USB_AIRSPY=m ++CONFIG_USB_HACKRF=m ++CONFIG_USB_MSI2500=m ++CONFIG_MEDIA_PCI_SUPPORT=y ++ ++# ++# Media capture support ++# ++CONFIG_VIDEO_SOLO6X10=m ++# CONFIG_VIDEO_TW5864 is not set ++CONFIG_VIDEO_TW68=m ++# CONFIG_VIDEO_TW686X is not set ++ ++# ++# Media capture/analog TV support ++# ++CONFIG_VIDEO_IVTV=m ++# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set ++CONFIG_VIDEO_IVTV_ALSA=m ++CONFIG_VIDEO_FB_IVTV=m ++CONFIG_VIDEO_HEXIUM_GEMINI=m ++CONFIG_VIDEO_HEXIUM_ORION=m ++CONFIG_VIDEO_MXB=m ++CONFIG_VIDEO_DT3155=m ++ ++# ++# Media capture/analog/hybrid TV support ++# ++CONFIG_VIDEO_CX18=m ++CONFIG_VIDEO_CX18_ALSA=m ++CONFIG_VIDEO_CX23885=m ++CONFIG_MEDIA_ALTERA_CI=m ++CONFIG_VIDEO_CX25821=m ++CONFIG_VIDEO_CX25821_ALSA=m ++CONFIG_VIDEO_CX88=m ++CONFIG_VIDEO_CX88_ALSA=m ++CONFIG_VIDEO_CX88_BLACKBIRD=m ++CONFIG_VIDEO_CX88_DVB=m ++CONFIG_VIDEO_CX88_ENABLE_VP3054=y ++CONFIG_VIDEO_CX88_VP3054=m ++CONFIG_VIDEO_CX88_MPEG=m ++CONFIG_VIDEO_BT848=m ++CONFIG_DVB_BT8XX=m ++CONFIG_VIDEO_SAA7134=m ++CONFIG_VIDEO_SAA7134_ALSA=m ++CONFIG_VIDEO_SAA7134_RC=y ++CONFIG_VIDEO_SAA7134_DVB=m ++CONFIG_VIDEO_SAA7134_GO7007=m ++CONFIG_VIDEO_SAA7164=m ++CONFIG_VIDEO_COBALT=m ++ ++# ++# Media digital TV PCI Adapters ++# ++CONFIG_DVB_AV7110_IR=y ++CONFIG_DVB_AV7110=m ++CONFIG_DVB_AV7110_OSD=y ++CONFIG_DVB_BUDGET_CORE=m ++CONFIG_DVB_BUDGET=m ++CONFIG_DVB_BUDGET_CI=m ++CONFIG_DVB_BUDGET_AV=m ++CONFIG_DVB_BUDGET_PATCH=m ++CONFIG_DVB_B2C2_FLEXCOP_PCI=m ++# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set ++CONFIG_DVB_PLUTO2=m ++CONFIG_DVB_DM1105=m ++CONFIG_DVB_PT1=m ++CONFIG_DVB_PT3=m ++CONFIG_MANTIS_CORE=m ++CONFIG_DVB_MANTIS=m ++CONFIG_DVB_HOPPER=m ++CONFIG_DVB_NGENE=m ++CONFIG_DVB_DDBRIDGE=m ++# CONFIG_DVB_DDBRIDGE_MSIENABLE is not set ++CONFIG_DVB_SMIPCIE=m ++CONFIG_DVB_NETUP_UNIDVB=m ++CONFIG_V4L_PLATFORM_DRIVERS=y ++CONFIG_VIDEO_CAFE_CCIC=m ++# CONFIG_VIDEO_CADENCE is not set ++# CONFIG_VIDEO_ASPEED is not set ++# CONFIG_VIDEO_MUX is not set ++CONFIG_SOC_CAMERA=m ++CONFIG_SOC_CAMERA_PLATFORM=m ++CONFIG_VIDEO_XILINX=m ++CONFIG_VIDEO_XILINX_TPG=m ++CONFIG_VIDEO_XILINX_VTC=m ++CONFIG_V4L_MEM2MEM_DRIVERS=y ++CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m ++CONFIG_VIDEO_SH_VEU=m ++CONFIG_V4L_TEST_DRIVERS=y ++# CONFIG_VIDEO_VIMC is not set ++CONFIG_VIDEO_VIVID=m ++# CONFIG_VIDEO_VIVID_CEC is not set ++CONFIG_VIDEO_VIVID_MAX_DEVS=64 ++CONFIG_VIDEO_VIM2M=m ++# CONFIG_VIDEO_VICODEC is not set ++CONFIG_DVB_PLATFORM_DRIVERS=y ++# CONFIG_SDR_PLATFORM_DRIVERS is not set ++ ++# ++# Supported MMC/SDIO adapters ++# ++CONFIG_SMS_SDIO_DRV=m ++CONFIG_RADIO_ADAPTERS=y ++CONFIG_RADIO_TEA575X=m ++CONFIG_RADIO_SI470X=m ++CONFIG_USB_SI470X=m ++CONFIG_I2C_SI470X=m ++CONFIG_RADIO_SI4713=m ++CONFIG_USB_SI4713=m ++CONFIG_PLATFORM_SI4713=m ++CONFIG_I2C_SI4713=m ++CONFIG_RADIO_SI476X=m ++CONFIG_USB_MR800=m ++CONFIG_USB_DSBR=m ++CONFIG_RADIO_MAXIRADIO=m ++CONFIG_RADIO_SHARK=m ++CONFIG_RADIO_SHARK2=m ++CONFIG_USB_KEENE=m ++CONFIG_USB_RAREMONO=m ++CONFIG_USB_MA901=m ++CONFIG_RADIO_TEA5764=m ++CONFIG_RADIO_SAA7706H=m ++CONFIG_RADIO_TEF6862=m ++CONFIG_RADIO_WL1273=m ++ ++# ++# Texas Instruments WL128x FM driver (ST based) ++# ++CONFIG_RADIO_WL128X=m ++ ++# ++# Supported FireWire (IEEE 1394) Adapters ++# ++CONFIG_DVB_FIREDTV=m ++CONFIG_DVB_FIREDTV_INPUT=y ++CONFIG_MEDIA_COMMON_OPTIONS=y ++ ++# ++# common driver options ++# ++CONFIG_VIDEO_CX2341X=m ++CONFIG_VIDEO_TVEEPROM=m ++CONFIG_CYPRESS_FIRMWARE=m ++CONFIG_VIDEOBUF2_CORE=m ++CONFIG_VIDEOBUF2_V4L2=m ++CONFIG_VIDEOBUF2_MEMOPS=m ++CONFIG_VIDEOBUF2_DMA_CONTIG=m ++CONFIG_VIDEOBUF2_VMALLOC=m ++CONFIG_VIDEOBUF2_DMA_SG=m ++CONFIG_VIDEOBUF2_DVB=m ++CONFIG_DVB_B2C2_FLEXCOP=m ++CONFIG_VIDEO_SAA7146=m ++CONFIG_VIDEO_SAA7146_VV=m ++CONFIG_SMS_SIANO_MDTV=m ++CONFIG_SMS_SIANO_RC=y ++CONFIG_SMS_SIANO_DEBUGFS=y ++CONFIG_VIDEO_V4L2_TPG=m ++ ++# ++# Media ancillary drivers (tuners, sensors, i2c, spi, frontends) ++# ++CONFIG_MEDIA_SUBDRV_AUTOSELECT=y ++CONFIG_MEDIA_ATTACH=y ++CONFIG_VIDEO_IR_I2C=m ++ ++# ++# Audio decoders, processors and mixers ++# ++CONFIG_VIDEO_TVAUDIO=m ++CONFIG_VIDEO_TDA7432=m ++CONFIG_VIDEO_TDA9840=m ++CONFIG_VIDEO_TEA6415C=m ++CONFIG_VIDEO_TEA6420=m ++CONFIG_VIDEO_MSP3400=m ++CONFIG_VIDEO_CS3308=m ++CONFIG_VIDEO_CS5345=m ++CONFIG_VIDEO_CS53L32A=m ++CONFIG_VIDEO_UDA1342=m ++CONFIG_VIDEO_WM8775=m ++CONFIG_VIDEO_WM8739=m ++CONFIG_VIDEO_VP27SMPX=m ++CONFIG_VIDEO_SONY_BTF_MPX=m ++ ++# ++# RDS decoders ++# ++CONFIG_VIDEO_SAA6588=m ++ ++# ++# Video decoders ++# ++CONFIG_VIDEO_ADV7604=m ++CONFIG_VIDEO_ADV7842=m ++CONFIG_VIDEO_SAA711X=m ++CONFIG_VIDEO_TVP5150=m ++CONFIG_VIDEO_TW2804=m ++CONFIG_VIDEO_TW9903=m ++CONFIG_VIDEO_TW9906=m ++ ++# ++# Video and audio decoders ++# ++CONFIG_VIDEO_SAA717X=m ++CONFIG_VIDEO_CX25840=m ++ ++# ++# Video encoders ++# ++CONFIG_VIDEO_SAA7127=m ++CONFIG_VIDEO_ADV7511=m ++ ++# ++# Camera sensor devices ++# ++CONFIG_VIDEO_OV2640=m ++CONFIG_VIDEO_OV7640=m ++CONFIG_VIDEO_OV7670=m ++CONFIG_VIDEO_MT9M111=m ++CONFIG_VIDEO_MT9V011=m ++ ++# ++# Flash devices ++# ++ ++# ++# Video improvement chips ++# ++CONFIG_VIDEO_UPD64031A=m ++CONFIG_VIDEO_UPD64083=m ++ ++# ++# Audio/Video compression chips ++# ++CONFIG_VIDEO_SAA6752HS=m ++ ++# ++# SDR tuner chips ++# ++ ++# ++# Miscellaneous helper chips ++# ++CONFIG_VIDEO_M52790=m ++ ++# ++# Sensors used on soc_camera driver ++# ++ ++# ++# soc_camera sensor drivers ++# ++CONFIG_SOC_CAMERA_MT9M001=m ++CONFIG_SOC_CAMERA_MT9M111=m ++CONFIG_SOC_CAMERA_MT9T112=m ++CONFIG_SOC_CAMERA_MT9V022=m ++CONFIG_SOC_CAMERA_OV5642=m ++CONFIG_SOC_CAMERA_OV772X=m ++CONFIG_SOC_CAMERA_OV9640=m ++CONFIG_SOC_CAMERA_OV9740=m ++CONFIG_SOC_CAMERA_RJ54N1=m ++CONFIG_SOC_CAMERA_TW9910=m ++ ++# ++# Media SPI Adapters ++# ++# CONFIG_CXD2880_SPI_DRV is not set ++CONFIG_MEDIA_TUNER=m ++CONFIG_MEDIA_TUNER_SIMPLE=m ++CONFIG_MEDIA_TUNER_TDA18250=m ++CONFIG_MEDIA_TUNER_TDA8290=m ++CONFIG_MEDIA_TUNER_TDA827X=m ++CONFIG_MEDIA_TUNER_TDA18271=m ++CONFIG_MEDIA_TUNER_TDA9887=m ++CONFIG_MEDIA_TUNER_TEA5761=m ++CONFIG_MEDIA_TUNER_TEA5767=m ++CONFIG_MEDIA_TUNER_MSI001=m ++CONFIG_MEDIA_TUNER_MT20XX=m ++CONFIG_MEDIA_TUNER_MT2060=m ++CONFIG_MEDIA_TUNER_MT2063=m ++CONFIG_MEDIA_TUNER_MT2266=m ++CONFIG_MEDIA_TUNER_MT2131=m ++CONFIG_MEDIA_TUNER_QT1010=m ++CONFIG_MEDIA_TUNER_XC2028=m ++CONFIG_MEDIA_TUNER_XC5000=m ++CONFIG_MEDIA_TUNER_XC4000=m ++CONFIG_MEDIA_TUNER_MXL5005S=m ++CONFIG_MEDIA_TUNER_MXL5007T=m ++CONFIG_MEDIA_TUNER_MC44S803=m ++CONFIG_MEDIA_TUNER_MAX2165=m ++CONFIG_MEDIA_TUNER_TDA18218=m ++CONFIG_MEDIA_TUNER_FC0011=m ++CONFIG_MEDIA_TUNER_FC0012=m ++CONFIG_MEDIA_TUNER_FC0013=m ++CONFIG_MEDIA_TUNER_TDA18212=m ++CONFIG_MEDIA_TUNER_E4000=m ++CONFIG_MEDIA_TUNER_FC2580=m ++CONFIG_MEDIA_TUNER_M88RS6000T=m ++CONFIG_MEDIA_TUNER_TUA9001=m ++CONFIG_MEDIA_TUNER_SI2157=m ++CONFIG_MEDIA_TUNER_IT913X=m ++CONFIG_MEDIA_TUNER_R820T=m ++CONFIG_MEDIA_TUNER_MXL301RF=m ++CONFIG_MEDIA_TUNER_QM1D1C0042=m ++CONFIG_MEDIA_TUNER_QM1D1B0004=m ++ ++# ++# Multistandard (satellite) frontends ++# ++CONFIG_DVB_STB0899=m ++CONFIG_DVB_STB6100=m ++CONFIG_DVB_STV090x=m ++CONFIG_DVB_STV0910=m ++CONFIG_DVB_STV6110x=m ++CONFIG_DVB_STV6111=m ++CONFIG_DVB_MXL5XX=m ++CONFIG_DVB_M88DS3103=m ++ ++# ++# Multistandard (cable + terrestrial) frontends ++# ++CONFIG_DVB_DRXK=m ++CONFIG_DVB_TDA18271C2DD=m ++CONFIG_DVB_SI2165=m ++CONFIG_DVB_MN88472=m ++CONFIG_DVB_MN88473=m ++ ++# ++# DVB-S (satellite) frontends ++# ++CONFIG_DVB_CX24110=m ++CONFIG_DVB_CX24123=m ++CONFIG_DVB_MT312=m ++CONFIG_DVB_ZL10036=m ++CONFIG_DVB_ZL10039=m ++CONFIG_DVB_S5H1420=m ++CONFIG_DVB_STV0288=m ++CONFIG_DVB_STB6000=m ++CONFIG_DVB_STV0299=m ++CONFIG_DVB_STV6110=m ++CONFIG_DVB_STV0900=m ++CONFIG_DVB_TDA8083=m ++CONFIG_DVB_TDA10086=m ++CONFIG_DVB_TDA8261=m ++CONFIG_DVB_VES1X93=m ++CONFIG_DVB_TUNER_ITD1000=m ++CONFIG_DVB_TUNER_CX24113=m ++CONFIG_DVB_TDA826X=m ++CONFIG_DVB_TUA6100=m ++CONFIG_DVB_CX24116=m ++CONFIG_DVB_CX24117=m ++CONFIG_DVB_CX24120=m ++CONFIG_DVB_SI21XX=m ++CONFIG_DVB_TS2020=m ++CONFIG_DVB_DS3000=m ++CONFIG_DVB_MB86A16=m ++CONFIG_DVB_TDA10071=m ++ ++# ++# DVB-T (terrestrial) frontends ++# ++CONFIG_DVB_SP8870=m ++CONFIG_DVB_SP887X=m ++CONFIG_DVB_CX22700=m ++CONFIG_DVB_CX22702=m ++CONFIG_DVB_DRXD=m ++CONFIG_DVB_L64781=m ++CONFIG_DVB_TDA1004X=m ++CONFIG_DVB_NXT6000=m ++CONFIG_DVB_MT352=m ++CONFIG_DVB_ZL10353=m ++CONFIG_DVB_DIB3000MB=m ++CONFIG_DVB_DIB3000MC=m ++CONFIG_DVB_DIB7000M=m ++CONFIG_DVB_DIB7000P=m ++CONFIG_DVB_TDA10048=m ++CONFIG_DVB_AF9013=m ++CONFIG_DVB_EC100=m ++CONFIG_DVB_STV0367=m ++CONFIG_DVB_CXD2820R=m ++CONFIG_DVB_CXD2841ER=m ++CONFIG_DVB_RTL2830=m ++CONFIG_DVB_RTL2832=m ++CONFIG_DVB_RTL2832_SDR=m ++CONFIG_DVB_SI2168=m ++CONFIG_DVB_AS102_FE=m ++CONFIG_DVB_GP8PSK_FE=m ++ ++# ++# DVB-C (cable) frontends ++# ++CONFIG_DVB_VES1820=m ++CONFIG_DVB_TDA10021=m ++CONFIG_DVB_TDA10023=m ++CONFIG_DVB_STV0297=m ++ ++# ++# ATSC (North American/Korean Terrestrial/Cable DTV) frontends ++# ++CONFIG_DVB_NXT200X=m ++CONFIG_DVB_OR51211=m ++CONFIG_DVB_OR51132=m ++CONFIG_DVB_BCM3510=m ++CONFIG_DVB_LGDT330X=m ++CONFIG_DVB_LGDT3305=m ++CONFIG_DVB_LGDT3306A=m ++CONFIG_DVB_LG2160=m ++CONFIG_DVB_S5H1409=m ++CONFIG_DVB_AU8522=m ++CONFIG_DVB_AU8522_DTV=m ++CONFIG_DVB_AU8522_V4L=m ++CONFIG_DVB_S5H1411=m ++ ++# ++# ISDB-T (terrestrial) frontends ++# ++CONFIG_DVB_S921=m ++CONFIG_DVB_DIB8000=m ++CONFIG_DVB_MB86A20S=m ++ ++# ++# ISDB-S (satellite) & ISDB-T (terrestrial) frontends ++# ++CONFIG_DVB_TC90522=m ++ ++# ++# Digital terrestrial only tuners/PLL ++# ++CONFIG_DVB_PLL=m ++CONFIG_DVB_TUNER_DIB0070=m ++CONFIG_DVB_TUNER_DIB0090=m ++ ++# ++# SEC control devices for DVB-S ++# ++CONFIG_DVB_DRX39XYJ=m ++CONFIG_DVB_LNBH25=m ++CONFIG_DVB_LNBP21=m ++CONFIG_DVB_LNBP22=m ++CONFIG_DVB_ISL6405=m ++CONFIG_DVB_ISL6421=m ++CONFIG_DVB_ISL6423=m ++CONFIG_DVB_A8293=m ++CONFIG_DVB_LGS8GXX=m ++CONFIG_DVB_ATBM8830=m ++CONFIG_DVB_TDA665x=m ++CONFIG_DVB_IX2505V=m ++CONFIG_DVB_M88RS2000=m ++CONFIG_DVB_AF9033=m ++CONFIG_DVB_HORUS3A=m ++CONFIG_DVB_ASCOT2E=m ++CONFIG_DVB_HELENE=m ++ ++# ++# Common Interface (EN50221) controller drivers ++# ++CONFIG_DVB_CXD2099=m ++CONFIG_DVB_SP2=m ++ ++# ++# Tools to develop new frontends ++# ++CONFIG_DVB_DUMMY_FE=m ++ ++# ++# Graphics support ++# ++CONFIG_AGP=y ++CONFIG_VGA_ARB=y ++CONFIG_VGA_ARB_MAX_GPUS=16 ++CONFIG_DRM=m ++CONFIG_DRM_MIPI_DSI=y ++# CONFIG_DRM_DP_AUX_CHARDEV is not set ++# CONFIG_DRM_DEBUG_SELFTEST is not set ++CONFIG_DRM_KMS_HELPER=m ++CONFIG_DRM_KMS_FB_HELPER=y ++CONFIG_DRM_FBDEV_EMULATION=y ++CONFIG_DRM_FBDEV_OVERALLOC=100 ++# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set ++CONFIG_DRM_LOAD_EDID_FIRMWARE=y ++# CONFIG_DRM_DP_CEC is not set ++CONFIG_DRM_TTM=m ++CONFIG_DRM_VM=y ++CONFIG_DRM_SCHED=m ++ ++# ++# I2C encoder or helper chips ++# ++CONFIG_DRM_I2C_CH7006=m ++CONFIG_DRM_I2C_SIL164=m ++CONFIG_DRM_I2C_NXP_TDA998X=m ++# CONFIG_DRM_I2C_NXP_TDA9950 is not set ++CONFIG_DRM_RADEON=m ++# CONFIG_DRM_RADEON_USERPTR is not set ++CONFIG_DRM_AMDGPU=m ++# CONFIG_DRM_AMDGPU_SI is not set ++CONFIG_DRM_AMDGPU_CIK=y ++CONFIG_DRM_AMDGPU_USERPTR=y ++# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set ++ ++# ++# ACP (Audio CoProcessor) Configuration ++# ++# CONFIG_DRM_AMD_ACP is not set ++ ++# ++# Display Engine Configuration ++# ++CONFIG_DRM_AMD_DC=y ++# CONFIG_DEBUG_KERNEL_DC is not set ++# CONFIG_HSA_AMD is not set ++ ++# ++# AMD Library routines ++# ++CONFIG_CHASH=m ++# CONFIG_CHASH_STATS is not set ++# CONFIG_CHASH_SELFTEST is not set ++CONFIG_DRM_NOUVEAU=m ++CONFIG_NOUVEAU_DEBUG=5 ++CONFIG_NOUVEAU_DEBUG_DEFAULT=3 ++# CONFIG_NOUVEAU_DEBUG_MMU is not set ++CONFIG_DRM_NOUVEAU_BACKLIGHT=y ++CONFIG_DRM_VGEM=m ++# CONFIG_DRM_VKMS is not set ++CONFIG_DRM_UDL=m ++CONFIG_DRM_AST=m ++# CONFIG_DRM_MGAG200 is not set ++CONFIG_DRM_CIRRUS_QEMU=m ++# CONFIG_DRM_RCAR_DW_HDMI is not set ++# CONFIG_DRM_RCAR_LVDS is not set ++CONFIG_DRM_QXL=m ++# CONFIG_DRM_BOCHS is not set ++CONFIG_DRM_VIRTIO_GPU=m ++CONFIG_DRM_PANEL=y ++ ++# ++# Display Panels ++# ++# CONFIG_DRM_PANEL_ARM_VERSATILE is not set ++# CONFIG_DRM_PANEL_LVDS is not set ++CONFIG_DRM_PANEL_SIMPLE=m ++# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set ++# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set ++# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set ++# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set ++CONFIG_DRM_PANEL_SAMSUNG_LD9040=m ++CONFIG_DRM_PANEL_LG_LG4573=m ++# CONFIG_DRM_PANEL_OLIMEX_LCD_OLINUXINO is not set ++# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set ++# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set ++# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set ++# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set ++# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set ++# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set ++# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set ++CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0=m ++# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set ++CONFIG_DRM_PANEL_SHARP_LQ101R1SX01=m ++# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set ++# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set ++# CONFIG_DRM_PANEL_TRULY_NT35597_WQXGA is not set ++CONFIG_DRM_BRIDGE=y ++CONFIG_DRM_PANEL_BRIDGE=y ++ ++# ++# Display Interface Bridges ++# ++# CONFIG_DRM_ANALOGIX_ANX78XX is not set ++# CONFIG_DRM_CDNS_DSI is not set ++# CONFIG_DRM_DUMB_VGA_DAC is not set ++# CONFIG_DRM_LVDS_ENCODER is not set ++# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set ++CONFIG_DRM_NXP_PTN3460=m ++CONFIG_DRM_PARADE_PS8622=m ++# CONFIG_DRM_SIL_SII8620 is not set ++# CONFIG_DRM_SII902X is not set ++# CONFIG_DRM_SII9234 is not set ++# CONFIG_DRM_THINE_THC63LVD1024 is not set ++# CONFIG_DRM_TOSHIBA_TC358764 is not set ++# CONFIG_DRM_TOSHIBA_TC358767 is not set ++# CONFIG_DRM_TI_TFP410 is not set ++# CONFIG_DRM_TI_SN65DSI86 is not set ++CONFIG_DRM_I2C_ADV7511=m ++# CONFIG_DRM_I2C_ADV7511_AUDIO is not set ++CONFIG_DRM_I2C_ADV7533=y ++CONFIG_DRM_I2C_ADV7511_CEC=y ++# CONFIG_DRM_ARCPGU is not set ++# CONFIG_DRM_HISI_HIBMC is not set ++# CONFIG_DRM_TINYDRM is not set ++# CONFIG_DRM_LEGACY is not set ++CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=m ++ ++# ++# Frame buffer Devices ++# ++CONFIG_FB_CMDLINE=y ++CONFIG_FB_NOTIFY=y ++CONFIG_FB=y ++CONFIG_FIRMWARE_EDID=y ++CONFIG_FB_DDC=m ++CONFIG_FB_CFB_FILLRECT=y ++CONFIG_FB_CFB_COPYAREA=y ++CONFIG_FB_CFB_IMAGEBLIT=y ++CONFIG_FB_SYS_FILLRECT=m ++CONFIG_FB_SYS_COPYAREA=m ++CONFIG_FB_SYS_IMAGEBLIT=m ++# CONFIG_FB_FOREIGN_ENDIAN is not set ++CONFIG_FB_SYS_FOPS=m ++CONFIG_FB_DEFERRED_IO=y ++CONFIG_FB_SVGALIB=m ++CONFIG_FB_MACMODES=y ++CONFIG_FB_BACKLIGHT=m ++CONFIG_FB_MODE_HELPERS=y ++CONFIG_FB_TILEBLITTING=y ++ ++# ++# Frame buffer hardware drivers ++# ++CONFIG_FB_CIRRUS=m ++CONFIG_FB_PM2=m ++CONFIG_FB_PM2_FIFO_DISCONNECT=y ++CONFIG_FB_CYBER2000=m ++CONFIG_FB_CYBER2000_DDC=y ++CONFIG_FB_OF=y ++CONFIG_FB_ASILIANT=y ++CONFIG_FB_IMSTT=y ++CONFIG_FB_VGA16=m ++CONFIG_FB_UVESA=m ++CONFIG_FB_OPENCORES=m ++CONFIG_FB_S1D13XXX=m ++CONFIG_FB_NVIDIA=m ++CONFIG_FB_NVIDIA_I2C=y ++# CONFIG_FB_NVIDIA_DEBUG is not set ++CONFIG_FB_NVIDIA_BACKLIGHT=y ++CONFIG_FB_RIVA=m ++CONFIG_FB_RIVA_I2C=y ++# CONFIG_FB_RIVA_DEBUG is not set ++CONFIG_FB_RIVA_BACKLIGHT=y ++CONFIG_FB_I740=m ++CONFIG_FB_MATROX=m ++CONFIG_FB_MATROX_MILLENIUM=y ++CONFIG_FB_MATROX_MYSTIQUE=y ++CONFIG_FB_MATROX_G=y ++CONFIG_FB_MATROX_I2C=m ++CONFIG_FB_MATROX_MAVEN=m ++CONFIG_FB_RADEON=m ++CONFIG_FB_RADEON_I2C=y ++CONFIG_FB_RADEON_BACKLIGHT=y ++# CONFIG_FB_RADEON_DEBUG is not set ++CONFIG_FB_ATY128=m ++CONFIG_FB_ATY128_BACKLIGHT=y ++CONFIG_FB_ATY=m ++CONFIG_FB_ATY_CT=y ++# CONFIG_FB_ATY_GENERIC_LCD is not set ++CONFIG_FB_ATY_GX=y ++CONFIG_FB_ATY_BACKLIGHT=y ++CONFIG_FB_S3=m ++CONFIG_FB_S3_DDC=y ++CONFIG_FB_SAVAGE=m ++CONFIG_FB_SAVAGE_I2C=y ++# CONFIG_FB_SAVAGE_ACCEL is not set ++CONFIG_FB_SIS=m ++CONFIG_FB_SIS_300=y ++CONFIG_FB_SIS_315=y ++CONFIG_FB_NEOMAGIC=m ++CONFIG_FB_KYRO=m ++CONFIG_FB_3DFX=m ++# CONFIG_FB_3DFX_ACCEL is not set ++# CONFIG_FB_3DFX_I2C is not set ++CONFIG_FB_VOODOO1=m ++CONFIG_FB_VT8623=m ++CONFIG_FB_TRIDENT=m ++CONFIG_FB_ARK=m ++CONFIG_FB_PM3=m ++CONFIG_FB_CARMINE=m ++CONFIG_FB_CARMINE_DRAM_EVAL=y ++# CONFIG_CARMINE_DRAM_CUSTOM is not set ++CONFIG_FB_SM501=m ++CONFIG_FB_SMSCUFX=m ++CONFIG_FB_UDL=m ++CONFIG_FB_IBM_GXT4500=y ++# CONFIG_FB_VIRTUAL is not set ++CONFIG_FB_METRONOME=m ++CONFIG_FB_MB862XX=m ++CONFIG_FB_MB862XX_PCI_GDC=y ++# CONFIG_FB_MB862XX_LIME is not set ++CONFIG_FB_MB862XX_I2C=y ++CONFIG_FB_SIMPLE=y ++CONFIG_FB_SSD1307=m ++CONFIG_FB_SM712=m ++CONFIG_BACKLIGHT_LCD_SUPPORT=y ++CONFIG_LCD_CLASS_DEVICE=m ++CONFIG_LCD_L4F00242T03=m ++CONFIG_LCD_LMS283GF05=m ++CONFIG_LCD_LTV350QV=m ++CONFIG_LCD_ILI922X=m ++CONFIG_LCD_ILI9320=m ++CONFIG_LCD_TDO24M=m ++CONFIG_LCD_VGG2432A4=m ++CONFIG_LCD_PLATFORM=m ++CONFIG_LCD_AMS369FG06=m ++CONFIG_LCD_LMS501KF03=m ++CONFIG_LCD_HX8357=m ++# CONFIG_LCD_OTM3225A is not set ++CONFIG_BACKLIGHT_CLASS_DEVICE=y ++CONFIG_BACKLIGHT_GENERIC=m ++CONFIG_BACKLIGHT_LM3533=m ++CONFIG_BACKLIGHT_PWM=m ++CONFIG_BACKLIGHT_DA903X=m ++CONFIG_BACKLIGHT_DA9052=m ++CONFIG_BACKLIGHT_MAX8925=m ++CONFIG_BACKLIGHT_PM8941_WLED=m ++CONFIG_BACKLIGHT_WM831X=m ++CONFIG_BACKLIGHT_ADP5520=m ++CONFIG_BACKLIGHT_ADP8860=m ++CONFIG_BACKLIGHT_ADP8870=m ++CONFIG_BACKLIGHT_88PM860X=m ++CONFIG_BACKLIGHT_PCF50633=m ++CONFIG_BACKLIGHT_AAT2870=m ++CONFIG_BACKLIGHT_LM3630A=m ++CONFIG_BACKLIGHT_LM3639=m ++CONFIG_BACKLIGHT_LP855X=m ++CONFIG_BACKLIGHT_LP8788=m ++CONFIG_BACKLIGHT_PANDORA=m ++CONFIG_BACKLIGHT_SKY81452=m ++CONFIG_BACKLIGHT_TPS65217=m ++CONFIG_BACKLIGHT_AS3711=m ++CONFIG_BACKLIGHT_GPIO=m ++CONFIG_BACKLIGHT_LV5207LP=m ++CONFIG_BACKLIGHT_BD6107=m ++# CONFIG_BACKLIGHT_ARCXCNN is not set ++CONFIG_VGASTATE=m ++CONFIG_VIDEOMODE_HELPERS=y ++CONFIG_HDMI=y ++ ++# ++# Console display driver support ++# ++CONFIG_VGA_CONSOLE=y ++# CONFIG_VGACON_SOFT_SCROLLBACK is not set ++CONFIG_DUMMY_CONSOLE=y ++CONFIG_DUMMY_CONSOLE_COLUMNS=80 ++CONFIG_DUMMY_CONSOLE_ROWS=25 ++CONFIG_FRAMEBUFFER_CONSOLE=y ++CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y ++CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y ++# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set ++# CONFIG_LOGO is not set ++CONFIG_SOUND=m ++CONFIG_SOUND_OSS_CORE=y ++# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set ++CONFIG_SND=m ++CONFIG_SND_TIMER=m ++CONFIG_SND_PCM=m ++CONFIG_SND_PCM_ELD=y ++CONFIG_SND_PCM_IEC958=y ++CONFIG_SND_DMAENGINE_PCM=m ++CONFIG_SND_HWDEP=m ++CONFIG_SND_SEQ_DEVICE=m ++CONFIG_SND_RAWMIDI=m ++CONFIG_SND_JACK=y ++CONFIG_SND_JACK_INPUT_DEV=y ++CONFIG_SND_OSSEMUL=y ++CONFIG_SND_MIXER_OSS=m ++CONFIG_SND_PCM_OSS=m ++CONFIG_SND_PCM_OSS_PLUGINS=y ++CONFIG_SND_PCM_TIMER=y ++CONFIG_SND_HRTIMER=m ++CONFIG_SND_DYNAMIC_MINORS=y ++CONFIG_SND_MAX_CARDS=32 ++CONFIG_SND_SUPPORT_OLD_API=y ++CONFIG_SND_PROC_FS=y ++CONFIG_SND_VERBOSE_PROCFS=y ++# CONFIG_SND_VERBOSE_PRINTK is not set ++# CONFIG_SND_DEBUG is not set ++CONFIG_SND_VMASTER=y ++CONFIG_SND_SEQUENCER=m ++CONFIG_SND_SEQ_DUMMY=m ++# CONFIG_SND_SEQUENCER_OSS is not set ++CONFIG_SND_SEQ_HRTIMER_DEFAULT=y ++CONFIG_SND_SEQ_MIDI_EVENT=m ++CONFIG_SND_SEQ_MIDI=m ++CONFIG_SND_SEQ_MIDI_EMUL=m ++CONFIG_SND_SEQ_VIRMIDI=m ++CONFIG_SND_MPU401_UART=m ++CONFIG_SND_OPL3_LIB=m ++CONFIG_SND_OPL3_LIB_SEQ=m ++CONFIG_SND_VX_LIB=m ++CONFIG_SND_AC97_CODEC=m ++CONFIG_SND_DRIVERS=y ++CONFIG_SND_DUMMY=m ++CONFIG_SND_ALOOP=m ++CONFIG_SND_VIRMIDI=m ++CONFIG_SND_MTPAV=m ++CONFIG_SND_MTS64=m ++CONFIG_SND_SERIAL_U16550=m ++CONFIG_SND_MPU401=m ++CONFIG_SND_PORTMAN2X4=m ++CONFIG_SND_AC97_POWER_SAVE=y ++CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 ++CONFIG_SND_SB_COMMON=m ++CONFIG_SND_PCI=y ++CONFIG_SND_AD1889=m ++CONFIG_SND_ALS4000=m ++CONFIG_SND_ATIIXP=m ++CONFIG_SND_ATIIXP_MODEM=m ++CONFIG_SND_AU8810=m ++CONFIG_SND_AU8820=m ++CONFIG_SND_AU8830=m ++CONFIG_SND_AW2=m ++CONFIG_SND_BT87X=m ++# CONFIG_SND_BT87X_OVERCLOCK is not set ++CONFIG_SND_CA0106=m ++CONFIG_SND_CMIPCI=m ++CONFIG_SND_OXYGEN_LIB=m ++CONFIG_SND_OXYGEN=m ++CONFIG_SND_CS4281=m ++CONFIG_SND_CS46XX=m ++CONFIG_SND_CS46XX_NEW_DSP=y ++CONFIG_SND_CTXFI=m ++CONFIG_SND_DARLA20=m ++CONFIG_SND_GINA20=m ++CONFIG_SND_LAYLA20=m ++CONFIG_SND_DARLA24=m ++CONFIG_SND_GINA24=m ++CONFIG_SND_LAYLA24=m ++CONFIG_SND_MONA=m ++CONFIG_SND_MIA=m ++CONFIG_SND_ECHO3G=m ++CONFIG_SND_INDIGO=m ++CONFIG_SND_INDIGOIO=m ++CONFIG_SND_INDIGODJ=m ++CONFIG_SND_INDIGOIOX=m ++CONFIG_SND_INDIGODJX=m ++CONFIG_SND_ENS1370=m ++CONFIG_SND_ENS1371=m ++CONFIG_SND_FM801=m ++CONFIG_SND_FM801_TEA575X_BOOL=y ++CONFIG_SND_HDSP=m ++CONFIG_SND_HDSPM=m ++CONFIG_SND_ICE1724=m ++CONFIG_SND_INTEL8X0=m ++CONFIG_SND_INTEL8X0M=m ++CONFIG_SND_KORG1212=m ++CONFIG_SND_LOLA=m ++CONFIG_SND_LX6464ES=m ++CONFIG_SND_MIXART=m ++CONFIG_SND_NM256=m ++CONFIG_SND_PCXHR=m ++CONFIG_SND_RIPTIDE=m ++CONFIG_SND_RME32=m ++CONFIG_SND_RME96=m ++CONFIG_SND_RME9652=m ++CONFIG_SND_VIA82XX=m ++CONFIG_SND_VIA82XX_MODEM=m ++CONFIG_SND_VIRTUOSO=m ++CONFIG_SND_VX222=m ++CONFIG_SND_YMFPCI=m ++ ++# ++# HD-Audio ++# ++CONFIG_SND_HDA=m ++CONFIG_SND_HDA_INTEL=m ++CONFIG_SND_HDA_HWDEP=y ++CONFIG_SND_HDA_RECONFIG=y ++CONFIG_SND_HDA_INPUT_BEEP=y ++CONFIG_SND_HDA_INPUT_BEEP_MODE=0 ++CONFIG_SND_HDA_PATCH_LOADER=y ++CONFIG_SND_HDA_CODEC_REALTEK=m ++CONFIG_SND_HDA_CODEC_ANALOG=m ++CONFIG_SND_HDA_CODEC_SIGMATEL=m ++CONFIG_SND_HDA_CODEC_VIA=m ++CONFIG_SND_HDA_CODEC_HDMI=m ++CONFIG_SND_HDA_CODEC_CIRRUS=m ++CONFIG_SND_HDA_CODEC_CONEXANT=m ++CONFIG_SND_HDA_CODEC_CA0110=m ++CONFIG_SND_HDA_CODEC_CA0132=m ++CONFIG_SND_HDA_CODEC_CA0132_DSP=y ++CONFIG_SND_HDA_CODEC_CMEDIA=m ++CONFIG_SND_HDA_CODEC_SI3054=m ++CONFIG_SND_HDA_GENERIC=m ++CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 ++CONFIG_SND_HDA_CORE=m ++CONFIG_SND_HDA_DSP_LOADER=y ++CONFIG_SND_HDA_PREALLOC_SIZE=64 ++CONFIG_SND_PPC=y ++CONFIG_SND_SPI=y ++CONFIG_SND_USB=y ++CONFIG_SND_USB_AUDIO=m ++CONFIG_SND_USB_UA101=m ++CONFIG_SND_USB_USX2Y=m ++CONFIG_SND_USB_CAIAQ=m ++CONFIG_SND_USB_CAIAQ_INPUT=y ++CONFIG_SND_USB_6FIRE=m ++CONFIG_SND_USB_HIFACE=m ++CONFIG_SND_BCD2000=m ++CONFIG_SND_USB_LINE6=m ++CONFIG_SND_USB_POD=m ++CONFIG_SND_USB_PODHD=m ++CONFIG_SND_USB_TONEPORT=m ++CONFIG_SND_USB_VARIAX=m ++CONFIG_SND_FIREWIRE=y ++CONFIG_SND_FIREWIRE_LIB=m ++CONFIG_SND_DICE=m ++CONFIG_SND_OXFW=m ++CONFIG_SND_ISIGHT=m ++CONFIG_SND_FIREWORKS=m ++CONFIG_SND_BEBOB=m ++CONFIG_SND_FIREWIRE_DIGI00X=m ++CONFIG_SND_FIREWIRE_TASCAM=m ++# CONFIG_SND_FIREWIRE_MOTU is not set ++# CONFIG_SND_FIREFACE is not set ++CONFIG_SND_SOC=m ++CONFIG_SND_SOC_AC97_BUS=y ++CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y ++# CONFIG_SND_SOC_AMD_ACP is not set ++CONFIG_SND_ATMEL_SOC=m ++# CONFIG_SND_SOC_MIKROE_PROTO is not set ++ ++# ++# SoC Audio for Freescale CPUs ++# ++ ++# ++# Common SoC Audio options for Freescale CPUs: ++# ++CONFIG_SND_SOC_FSL_ASRC=m ++CONFIG_SND_SOC_FSL_SAI=m ++CONFIG_SND_SOC_FSL_SSI=m ++CONFIG_SND_SOC_FSL_SPDIF=m ++CONFIG_SND_SOC_FSL_ESAI=m ++CONFIG_SND_SOC_IMX_AUDMUX=m ++# CONFIG_SND_I2S_HI6210_I2S is not set ++# CONFIG_SND_SOC_IMG is not set ++ ++# ++# STMicroelectronics STM32 SOC audio support ++# ++# CONFIG_SND_SOC_XILINX_I2S is not set ++CONFIG_SND_SOC_XTFPGA_I2S=m ++CONFIG_SND_SOC_I2C_AND_SPI=m ++ ++# ++# CODEC drivers ++# ++CONFIG_SND_SOC_AC97_CODEC=m ++CONFIG_SND_SOC_ADAU1701=m ++# CONFIG_SND_SOC_ADAU1761_I2C is not set ++# CONFIG_SND_SOC_ADAU1761_SPI is not set ++# CONFIG_SND_SOC_ADAU7002 is not set ++CONFIG_SND_SOC_AK4104=m ++# CONFIG_SND_SOC_AK4118 is not set ++# CONFIG_SND_SOC_AK4458 is not set ++CONFIG_SND_SOC_AK4554=m ++CONFIG_SND_SOC_AK4613=m ++CONFIG_SND_SOC_AK4642=m ++CONFIG_SND_SOC_AK5386=m ++# CONFIG_SND_SOC_AK5558 is not set ++CONFIG_SND_SOC_ALC5623=m ++# CONFIG_SND_SOC_BD28623 is not set ++# CONFIG_SND_SOC_BT_SCO is not set ++CONFIG_SND_SOC_CS35L32=m ++# CONFIG_SND_SOC_CS35L33 is not set ++# CONFIG_SND_SOC_CS35L34 is not set ++# CONFIG_SND_SOC_CS35L35 is not set ++# CONFIG_SND_SOC_CS42L42 is not set ++CONFIG_SND_SOC_CS42L51=m ++CONFIG_SND_SOC_CS42L51_I2C=m ++CONFIG_SND_SOC_CS42L52=m ++CONFIG_SND_SOC_CS42L56=m ++CONFIG_SND_SOC_CS42L73=m ++CONFIG_SND_SOC_CS4265=m ++CONFIG_SND_SOC_CS4270=m ++CONFIG_SND_SOC_CS4271=m ++CONFIG_SND_SOC_CS4271_I2C=m ++CONFIG_SND_SOC_CS4271_SPI=m ++CONFIG_SND_SOC_CS42XX8=m ++CONFIG_SND_SOC_CS42XX8_I2C=m ++# CONFIG_SND_SOC_CS43130 is not set ++CONFIG_SND_SOC_CS4349=m ++# CONFIG_SND_SOC_CS53L30 is not set ++# CONFIG_SND_SOC_DMIC is not set ++CONFIG_SND_SOC_HDMI_CODEC=m ++# CONFIG_SND_SOC_ES7134 is not set ++# CONFIG_SND_SOC_ES7241 is not set ++# CONFIG_SND_SOC_ES8316 is not set ++# CONFIG_SND_SOC_ES8328_I2C is not set ++# CONFIG_SND_SOC_ES8328_SPI is not set ++CONFIG_SND_SOC_GTM601=m ++# CONFIG_SND_SOC_INNO_RK3036 is not set ++# CONFIG_SND_SOC_MAX98088 is not set ++# CONFIG_SND_SOC_MAX98504 is not set ++# CONFIG_SND_SOC_MAX9867 is not set ++# CONFIG_SND_SOC_MAX98927 is not set ++# CONFIG_SND_SOC_MAX98373 is not set ++# CONFIG_SND_SOC_MAX9860 is not set ++# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set ++# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set ++CONFIG_SND_SOC_PCM1681=m ++# CONFIG_SND_SOC_PCM1789_I2C is not set ++# CONFIG_SND_SOC_PCM179X_I2C is not set ++# CONFIG_SND_SOC_PCM179X_SPI is not set ++# CONFIG_SND_SOC_PCM186X_I2C is not set ++# CONFIG_SND_SOC_PCM186X_SPI is not set ++# CONFIG_SND_SOC_PCM3060_I2C is not set ++# CONFIG_SND_SOC_PCM3060_SPI is not set ++# CONFIG_SND_SOC_PCM3168A_I2C is not set ++# CONFIG_SND_SOC_PCM3168A_SPI is not set ++CONFIG_SND_SOC_PCM512x=m ++CONFIG_SND_SOC_PCM512x_I2C=m ++CONFIG_SND_SOC_PCM512x_SPI=m ++# CONFIG_SND_SOC_RT5616 is not set ++CONFIG_SND_SOC_RT5631=m ++CONFIG_SND_SOC_SGTL5000=m ++CONFIG_SND_SOC_SI476X=m ++CONFIG_SND_SOC_SIGMADSP=m ++CONFIG_SND_SOC_SIGMADSP_I2C=m ++# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set ++CONFIG_SND_SOC_SIRF_AUDIO_CODEC=m ++CONFIG_SND_SOC_SPDIF=m ++# CONFIG_SND_SOC_SSM2305 is not set ++CONFIG_SND_SOC_SSM2602=m ++CONFIG_SND_SOC_SSM2602_SPI=m ++CONFIG_SND_SOC_SSM2602_I2C=m ++CONFIG_SND_SOC_SSM4567=m ++CONFIG_SND_SOC_STA32X=m ++CONFIG_SND_SOC_STA350=m ++CONFIG_SND_SOC_STI_SAS=m ++CONFIG_SND_SOC_TAS2552=m ++CONFIG_SND_SOC_TAS5086=m ++CONFIG_SND_SOC_TAS571X=m ++# CONFIG_SND_SOC_TAS5720 is not set ++# CONFIG_SND_SOC_TAS6424 is not set ++# CONFIG_SND_SOC_TDA7419 is not set ++CONFIG_SND_SOC_TFA9879=m ++CONFIG_SND_SOC_TLV320AIC23=m ++CONFIG_SND_SOC_TLV320AIC23_I2C=m ++CONFIG_SND_SOC_TLV320AIC23_SPI=m ++CONFIG_SND_SOC_TLV320AIC31XX=m ++# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set ++# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set ++CONFIG_SND_SOC_TLV320AIC3X=m ++CONFIG_SND_SOC_TS3A227E=m ++# CONFIG_SND_SOC_TSCS42XX is not set ++# CONFIG_SND_SOC_TSCS454 is not set ++CONFIG_SND_SOC_WM8510=m ++CONFIG_SND_SOC_WM8523=m ++# CONFIG_SND_SOC_WM8524 is not set ++CONFIG_SND_SOC_WM8580=m ++CONFIG_SND_SOC_WM8711=m ++CONFIG_SND_SOC_WM8728=m ++CONFIG_SND_SOC_WM8731=m ++CONFIG_SND_SOC_WM8737=m ++CONFIG_SND_SOC_WM8741=m ++CONFIG_SND_SOC_WM8750=m ++CONFIG_SND_SOC_WM8753=m ++CONFIG_SND_SOC_WM8770=m ++CONFIG_SND_SOC_WM8776=m ++# CONFIG_SND_SOC_WM8782 is not set ++CONFIG_SND_SOC_WM8804=m ++CONFIG_SND_SOC_WM8804_I2C=m ++CONFIG_SND_SOC_WM8804_SPI=m ++CONFIG_SND_SOC_WM8903=m ++# CONFIG_SND_SOC_WM8960 is not set ++CONFIG_SND_SOC_WM8962=m ++# CONFIG_SND_SOC_WM8974 is not set ++CONFIG_SND_SOC_WM8978=m ++# CONFIG_SND_SOC_WM8985 is not set ++# CONFIG_SND_SOC_ZX_AUD96P22 is not set ++# CONFIG_SND_SOC_MAX9759 is not set ++# CONFIG_SND_SOC_MT6351 is not set ++# CONFIG_SND_SOC_NAU8540 is not set ++# CONFIG_SND_SOC_NAU8810 is not set ++# CONFIG_SND_SOC_NAU8822 is not set ++# CONFIG_SND_SOC_NAU8824 is not set ++CONFIG_SND_SOC_TPA6130A2=m ++CONFIG_SND_SIMPLE_CARD_UTILS=m ++CONFIG_SND_SIMPLE_CARD=m ++# CONFIG_SND_SIMPLE_SCU_CARD is not set ++# CONFIG_SND_AUDIO_GRAPH_CARD is not set ++# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set ++CONFIG_AC97_BUS=m ++ ++# ++# HID support ++# ++CONFIG_HID=m ++CONFIG_HID_BATTERY_STRENGTH=y ++CONFIG_HIDRAW=y ++CONFIG_UHID=m ++CONFIG_HID_GENERIC=m ++ ++# ++# Special HID drivers ++# ++CONFIG_HID_A4TECH=m ++# CONFIG_HID_ACCUTOUCH is not set ++CONFIG_HID_ACRUX=m ++CONFIG_HID_ACRUX_FF=y ++CONFIG_HID_APPLE=m ++CONFIG_HID_APPLEIR=m ++# CONFIG_HID_ASUS is not set ++CONFIG_HID_AUREAL=m ++CONFIG_HID_BELKIN=m ++CONFIG_HID_BETOP_FF=m ++# CONFIG_HID_BIGBEN_FF is not set ++CONFIG_HID_CHERRY=m ++CONFIG_HID_CHICONY=m ++CONFIG_HID_CORSAIR=m ++# CONFIG_HID_COUGAR is not set ++CONFIG_HID_PRODIKEYS=m ++# CONFIG_HID_CMEDIA is not set ++CONFIG_HID_CP2112=m ++CONFIG_HID_CYPRESS=m ++CONFIG_HID_DRAGONRISE=m ++CONFIG_DRAGONRISE_FF=y ++CONFIG_HID_EMS_FF=m ++# CONFIG_HID_ELAN is not set ++CONFIG_HID_ELECOM=m ++CONFIG_HID_ELO=m ++CONFIG_HID_EZKEY=m ++CONFIG_HID_GEMBIRD=m ++CONFIG_HID_GFRM=m ++CONFIG_HID_HOLTEK=m ++CONFIG_HOLTEK_FF=y ++CONFIG_HID_GT683R=m ++CONFIG_HID_KEYTOUCH=m ++CONFIG_HID_KYE=m ++CONFIG_HID_UCLOGIC=m ++CONFIG_HID_WALTOP=m ++CONFIG_HID_GYRATION=m ++CONFIG_HID_ICADE=m ++# CONFIG_HID_ITE is not set ++# CONFIG_HID_JABRA is not set ++CONFIG_HID_TWINHAN=m ++CONFIG_HID_KENSINGTON=m ++CONFIG_HID_LCPOWER=m ++CONFIG_HID_LED=m ++CONFIG_HID_LENOVO=m ++CONFIG_HID_LOGITECH=m ++CONFIG_HID_LOGITECH_DJ=m ++CONFIG_HID_LOGITECH_HIDPP=m ++CONFIG_LOGITECH_FF=y ++CONFIG_LOGIRUMBLEPAD2_FF=y ++CONFIG_LOGIG940_FF=y ++CONFIG_LOGIWHEELS_FF=y ++CONFIG_HID_MAGICMOUSE=m ++# CONFIG_HID_MAYFLASH is not set ++# CONFIG_HID_REDRAGON is not set ++CONFIG_HID_MICROSOFT=m ++CONFIG_HID_MONTEREY=m ++CONFIG_HID_MULTITOUCH=m ++# CONFIG_HID_NTI is not set ++CONFIG_HID_NTRIG=m ++CONFIG_HID_ORTEK=m ++CONFIG_HID_PANTHERLORD=m ++CONFIG_PANTHERLORD_FF=y ++CONFIG_HID_PENMOUNT=m ++CONFIG_HID_PETALYNX=m ++CONFIG_HID_PICOLCD=m ++CONFIG_HID_PICOLCD_FB=y ++CONFIG_HID_PICOLCD_BACKLIGHT=y ++CONFIG_HID_PICOLCD_LCD=y ++CONFIG_HID_PICOLCD_LEDS=y ++CONFIG_HID_PICOLCD_CIR=y ++CONFIG_HID_PLANTRONICS=m ++CONFIG_HID_PRIMAX=m ++# CONFIG_HID_RETRODE is not set ++CONFIG_HID_ROCCAT=m ++CONFIG_HID_SAITEK=m ++CONFIG_HID_SAMSUNG=m ++CONFIG_HID_SONY=m ++CONFIG_SONY_FF=y ++CONFIG_HID_SPEEDLINK=m ++# CONFIG_HID_STEAM is not set ++CONFIG_HID_STEELSERIES=m ++CONFIG_HID_SUNPLUS=m ++CONFIG_HID_RMI=m ++CONFIG_HID_GREENASIA=m ++CONFIG_GREENASIA_FF=y ++CONFIG_HID_SMARTJOYPLUS=m ++CONFIG_SMARTJOYPLUS_FF=y ++CONFIG_HID_TIVO=m ++CONFIG_HID_TOPSEED=m ++CONFIG_HID_THINGM=m ++CONFIG_HID_THRUSTMASTER=m ++CONFIG_THRUSTMASTER_FF=y ++# CONFIG_HID_UDRAW_PS3 is not set ++CONFIG_HID_WACOM=m ++CONFIG_HID_WIIMOTE=m ++CONFIG_HID_XINMO=m ++CONFIG_HID_ZEROPLUS=m ++CONFIG_ZEROPLUS_FF=y ++CONFIG_HID_ZYDACRON=m ++CONFIG_HID_SENSOR_HUB=m ++CONFIG_HID_SENSOR_CUSTOM_SENSOR=m ++# CONFIG_HID_ALPS is not set ++ ++# ++# USB HID support ++# ++CONFIG_USB_HID=m ++CONFIG_HID_PID=y ++CONFIG_USB_HIDDEV=y ++ ++# ++# USB HID Boot Protocol drivers ++# ++CONFIG_USB_KBD=m ++CONFIG_USB_MOUSE=m ++ ++# ++# I2C HID support ++# ++CONFIG_I2C_HID=m ++CONFIG_USB_OHCI_LITTLE_ENDIAN=y ++CONFIG_USB_SUPPORT=y ++CONFIG_USB_COMMON=y ++CONFIG_USB_ARCH_HAS_HCD=y ++CONFIG_USB=y ++CONFIG_USB_PCI=y ++CONFIG_USB_ANNOUNCE_NEW_DEVICES=y ++ ++# ++# Miscellaneous USB options ++# ++CONFIG_USB_DEFAULT_PERSIST=y ++CONFIG_USB_DYNAMIC_MINORS=y ++# CONFIG_USB_OTG is not set ++# CONFIG_USB_OTG_WHITELIST is not set ++# CONFIG_USB_OTG_BLACKLIST_HUB is not set ++# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set ++CONFIG_USB_MON=m ++CONFIG_USB_WUSB=m ++CONFIG_USB_WUSB_CBAF=m ++# CONFIG_USB_WUSB_CBAF_DEBUG is not set ++ ++# ++# USB Host Controller Drivers ++# ++CONFIG_USB_C67X00_HCD=m ++CONFIG_USB_XHCI_HCD=y ++# CONFIG_USB_XHCI_DBGCAP is not set ++CONFIG_USB_XHCI_PCI=y ++CONFIG_USB_XHCI_PLATFORM=m ++CONFIG_USB_EHCI_HCD=y ++CONFIG_USB_EHCI_ROOT_HUB_TT=y ++CONFIG_USB_EHCI_TT_NEWSCHED=y ++CONFIG_USB_EHCI_PCI=y ++CONFIG_USB_EHCI_HCD_PPC_OF=y ++CONFIG_USB_EHCI_HCD_PLATFORM=m ++CONFIG_USB_OXU210HP_HCD=m ++CONFIG_USB_ISP116X_HCD=m ++CONFIG_USB_FOTG210_HCD=m ++CONFIG_USB_MAX3421_HCD=m ++CONFIG_USB_OHCI_HCD=y ++# CONFIG_USB_OHCI_HCD_PPC_OF_BE is not set ++# CONFIG_USB_OHCI_HCD_PPC_OF_LE is not set ++CONFIG_USB_OHCI_HCD_PCI=y ++CONFIG_USB_OHCI_HCD_PLATFORM=m ++CONFIG_USB_UHCI_HCD=y ++CONFIG_USB_U132_HCD=m ++CONFIG_USB_SL811_HCD=m ++CONFIG_USB_SL811_HCD_ISO=y ++CONFIG_USB_R8A66597_HCD=m ++CONFIG_USB_WHCI_HCD=m ++CONFIG_USB_HWA_HCD=m ++CONFIG_USB_HCD_BCMA=m ++CONFIG_USB_HCD_SSB=m ++# CONFIG_USB_HCD_TEST_MODE is not set ++ ++# ++# USB Device Class drivers ++# ++CONFIG_USB_ACM=m ++CONFIG_USB_PRINTER=m ++CONFIG_USB_WDM=m ++CONFIG_USB_TMC=m ++ ++# ++# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ++# ++ ++# ++# also be needed; see USB_STORAGE Help for more info ++# ++CONFIG_USB_STORAGE=m ++# CONFIG_USB_STORAGE_DEBUG is not set ++CONFIG_USB_STORAGE_REALTEK=m ++CONFIG_REALTEK_AUTOPM=y ++CONFIG_USB_STORAGE_DATAFAB=m ++CONFIG_USB_STORAGE_FREECOM=m ++CONFIG_USB_STORAGE_ISD200=m ++CONFIG_USB_STORAGE_USBAT=m ++CONFIG_USB_STORAGE_SDDR09=m ++CONFIG_USB_STORAGE_SDDR55=m ++CONFIG_USB_STORAGE_JUMPSHOT=m ++CONFIG_USB_STORAGE_ALAUDA=m ++CONFIG_USB_STORAGE_ONETOUCH=m ++CONFIG_USB_STORAGE_KARMA=m ++CONFIG_USB_STORAGE_CYPRESS_ATACB=m ++CONFIG_USB_STORAGE_ENE_UB6250=m ++CONFIG_USB_UAS=m ++ ++# ++# USB Imaging devices ++# ++CONFIG_USB_MDC800=m ++CONFIG_USB_MICROTEK=m ++CONFIG_USBIP_CORE=m ++CONFIG_USBIP_VHCI_HCD=m ++CONFIG_USBIP_VHCI_HC_PORTS=8 ++CONFIG_USBIP_VHCI_NR_HCS=1 ++CONFIG_USBIP_HOST=m ++# CONFIG_USBIP_VUDC is not set ++# CONFIG_USBIP_DEBUG is not set ++CONFIG_USB_MUSB_HDRC=m ++# CONFIG_USB_MUSB_HOST is not set ++# CONFIG_USB_MUSB_GADGET is not set ++CONFIG_USB_MUSB_DUAL_ROLE=y ++ ++# ++# Platform Glue Layer ++# ++ ++# ++# MUSB DMA mode ++# ++CONFIG_MUSB_PIO_ONLY=y ++CONFIG_USB_DWC3=m ++CONFIG_USB_DWC3_ULPI=y ++# CONFIG_USB_DWC3_HOST is not set ++# CONFIG_USB_DWC3_GADGET is not set ++CONFIG_USB_DWC3_DUAL_ROLE=y ++ ++# ++# Platform Glue Driver Support ++# ++CONFIG_USB_DWC3_HAPS=m ++CONFIG_USB_DWC2=y ++CONFIG_USB_DWC2_HOST=y ++ ++# ++# Gadget/Dual-role mode requires USB Gadget support to be enabled ++# ++CONFIG_USB_DWC2_PCI=m ++# CONFIG_USB_DWC2_DEBUG is not set ++# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set ++CONFIG_USB_CHIPIDEA=m ++CONFIG_USB_CHIPIDEA_OF=m ++CONFIG_USB_CHIPIDEA_PCI=m ++CONFIG_USB_CHIPIDEA_UDC=y ++CONFIG_USB_CHIPIDEA_HOST=y ++CONFIG_USB_ISP1760=m ++CONFIG_USB_ISP1760_HCD=y ++CONFIG_USB_ISP1761_UDC=y ++# CONFIG_USB_ISP1760_HOST_ROLE is not set ++# CONFIG_USB_ISP1760_GADGET_ROLE is not set ++CONFIG_USB_ISP1760_DUAL_ROLE=y ++ ++# ++# USB port drivers ++# ++CONFIG_USB_USS720=m ++CONFIG_USB_SERIAL=m ++CONFIG_USB_SERIAL_GENERIC=y ++CONFIG_USB_SERIAL_SIMPLE=m ++CONFIG_USB_SERIAL_AIRCABLE=m ++CONFIG_USB_SERIAL_ARK3116=m ++CONFIG_USB_SERIAL_BELKIN=m ++CONFIG_USB_SERIAL_CH341=m ++CONFIG_USB_SERIAL_WHITEHEAT=m ++CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m ++CONFIG_USB_SERIAL_CP210X=m ++CONFIG_USB_SERIAL_CYPRESS_M8=m ++CONFIG_USB_SERIAL_EMPEG=m ++CONFIG_USB_SERIAL_FTDI_SIO=m ++CONFIG_USB_SERIAL_VISOR=m ++CONFIG_USB_SERIAL_IPAQ=m ++CONFIG_USB_SERIAL_IR=m ++CONFIG_USB_SERIAL_EDGEPORT=m ++CONFIG_USB_SERIAL_EDGEPORT_TI=m ++CONFIG_USB_SERIAL_F81232=m ++# CONFIG_USB_SERIAL_F8153X is not set ++CONFIG_USB_SERIAL_GARMIN=m ++CONFIG_USB_SERIAL_IPW=m ++CONFIG_USB_SERIAL_IUU=m ++CONFIG_USB_SERIAL_KEYSPAN_PDA=m ++CONFIG_USB_SERIAL_KEYSPAN=m ++CONFIG_USB_SERIAL_KLSI=m ++CONFIG_USB_SERIAL_KOBIL_SCT=m ++CONFIG_USB_SERIAL_MCT_U232=m ++CONFIG_USB_SERIAL_METRO=m ++CONFIG_USB_SERIAL_MOS7720=m ++CONFIG_USB_SERIAL_MOS7715_PARPORT=y ++CONFIG_USB_SERIAL_MOS7840=m ++CONFIG_USB_SERIAL_MXUPORT=m ++CONFIG_USB_SERIAL_NAVMAN=m ++CONFIG_USB_SERIAL_PL2303=m ++CONFIG_USB_SERIAL_OTI6858=m ++CONFIG_USB_SERIAL_QCAUX=m ++CONFIG_USB_SERIAL_QUALCOMM=m ++CONFIG_USB_SERIAL_SPCP8X5=m ++CONFIG_USB_SERIAL_SAFE=m ++# CONFIG_USB_SERIAL_SAFE_PADDED is not set ++CONFIG_USB_SERIAL_SIERRAWIRELESS=m ++CONFIG_USB_SERIAL_SYMBOL=m ++CONFIG_USB_SERIAL_TI=m ++CONFIG_USB_SERIAL_CYBERJACK=m ++CONFIG_USB_SERIAL_XIRCOM=m ++CONFIG_USB_SERIAL_WWAN=m ++CONFIG_USB_SERIAL_OPTION=m ++CONFIG_USB_SERIAL_OMNINET=m ++CONFIG_USB_SERIAL_OPTICON=m ++CONFIG_USB_SERIAL_XSENS_MT=m ++CONFIG_USB_SERIAL_WISHBONE=m ++CONFIG_USB_SERIAL_SSU100=m ++CONFIG_USB_SERIAL_QT2=m ++# CONFIG_USB_SERIAL_UPD78F0730 is not set ++CONFIG_USB_SERIAL_DEBUG=m ++ ++# ++# USB Miscellaneous drivers ++# ++CONFIG_USB_EMI62=m ++CONFIG_USB_EMI26=m ++CONFIG_USB_ADUTUX=m ++CONFIG_USB_SEVSEG=m ++CONFIG_USB_RIO500=m ++CONFIG_USB_LEGOTOWER=m ++CONFIG_USB_LCD=m ++CONFIG_USB_CYPRESS_CY7C63=m ++CONFIG_USB_CYTHERM=m ++CONFIG_USB_IDMOUSE=m ++CONFIG_USB_FTDI_ELAN=m ++CONFIG_USB_APPLEDISPLAY=m ++CONFIG_USB_SISUSBVGA=m ++# CONFIG_USB_SISUSBVGA_CON is not set ++CONFIG_USB_LD=m ++CONFIG_USB_TRANCEVIBRATOR=m ++CONFIG_USB_IOWARRIOR=m ++CONFIG_USB_TEST=m ++CONFIG_USB_EHSET_TEST_FIXTURE=m ++CONFIG_USB_ISIGHTFW=m ++CONFIG_USB_YUREX=m ++CONFIG_USB_EZUSB_FX2=m ++# CONFIG_USB_HUB_USB251XB is not set ++CONFIG_USB_HSIC_USB3503=m ++# CONFIG_USB_HSIC_USB4604 is not set ++CONFIG_USB_LINK_LAYER_TEST=m ++CONFIG_USB_CHAOSKEY=m ++CONFIG_USB_ATM=m ++CONFIG_USB_SPEEDTOUCH=m ++CONFIG_USB_CXACRU=m ++CONFIG_USB_UEAGLEATM=m ++CONFIG_USB_XUSBATM=m ++ ++# ++# USB Physical Layer drivers ++# ++CONFIG_USB_PHY=y ++CONFIG_NOP_USB_XCEIV=m ++CONFIG_USB_GPIO_VBUS=m ++CONFIG_TAHVO_USB=m ++CONFIG_TAHVO_USB_HOST_BY_DEFAULT=y ++CONFIG_USB_ISP1301=m ++CONFIG_USB_GADGET=m ++# CONFIG_USB_GADGET_DEBUG is not set ++# CONFIG_USB_GADGET_DEBUG_FILES is not set ++# CONFIG_USB_GADGET_DEBUG_FS is not set ++CONFIG_USB_GADGET_VBUS_DRAW=2 ++CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 ++# CONFIG_U_SERIAL_CONSOLE is not set ++ ++# ++# USB Peripheral Controller ++# ++CONFIG_USB_FOTG210_UDC=m ++CONFIG_USB_GR_UDC=m ++CONFIG_USB_R8A66597=m ++CONFIG_USB_PXA27X=m ++CONFIG_USB_MV_UDC=m ++CONFIG_USB_MV_U3D=m ++CONFIG_USB_SNP_CORE=m ++# CONFIG_USB_SNP_UDC_PLAT is not set ++# CONFIG_USB_M66592 is not set ++CONFIG_USB_BDC_UDC=m ++ ++# ++# Platform Support ++# ++CONFIG_USB_BDC_PCI=m ++CONFIG_USB_AMD5536UDC=m ++CONFIG_USB_NET2272=m ++CONFIG_USB_NET2272_DMA=y ++CONFIG_USB_NET2280=m ++CONFIG_USB_GOKU=m ++CONFIG_USB_EG20T=m ++CONFIG_USB_GADGET_XILINX=m ++# CONFIG_USB_DUMMY_HCD is not set ++CONFIG_USB_LIBCOMPOSITE=m ++CONFIG_USB_F_ACM=m ++CONFIG_USB_F_SS_LB=m ++CONFIG_USB_U_SERIAL=m ++CONFIG_USB_U_ETHER=m ++CONFIG_USB_U_AUDIO=m ++CONFIG_USB_F_SERIAL=m ++CONFIG_USB_F_OBEX=m ++CONFIG_USB_F_NCM=m ++CONFIG_USB_F_ECM=m ++CONFIG_USB_F_PHONET=m ++CONFIG_USB_F_EEM=m ++CONFIG_USB_F_SUBSET=m ++CONFIG_USB_F_RNDIS=m ++CONFIG_USB_F_MASS_STORAGE=m ++CONFIG_USB_F_FS=m ++CONFIG_USB_F_UAC1=m ++CONFIG_USB_F_UAC2=m ++CONFIG_USB_F_UVC=m ++CONFIG_USB_F_MIDI=m ++CONFIG_USB_F_HID=m ++CONFIG_USB_F_PRINTER=m ++CONFIG_USB_F_TCM=m ++CONFIG_USB_CONFIGFS=m ++CONFIG_USB_CONFIGFS_SERIAL=y ++CONFIG_USB_CONFIGFS_ACM=y ++CONFIG_USB_CONFIGFS_OBEX=y ++CONFIG_USB_CONFIGFS_NCM=y ++CONFIG_USB_CONFIGFS_ECM=y ++CONFIG_USB_CONFIGFS_ECM_SUBSET=y ++CONFIG_USB_CONFIGFS_RNDIS=y ++CONFIG_USB_CONFIGFS_EEM=y ++CONFIG_USB_CONFIGFS_PHONET=y ++CONFIG_USB_CONFIGFS_MASS_STORAGE=y ++CONFIG_USB_CONFIGFS_F_LB_SS=y ++CONFIG_USB_CONFIGFS_F_FS=y ++CONFIG_USB_CONFIGFS_F_UAC1=y ++# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set ++CONFIG_USB_CONFIGFS_F_UAC2=y ++CONFIG_USB_CONFIGFS_F_MIDI=y ++CONFIG_USB_CONFIGFS_F_HID=y ++CONFIG_USB_CONFIGFS_F_UVC=y ++CONFIG_USB_CONFIGFS_F_PRINTER=y ++# CONFIG_USB_CONFIGFS_F_TCM is not set ++CONFIG_USB_ZERO=m ++CONFIG_USB_AUDIO=m ++CONFIG_GADGET_UAC1=y ++# CONFIG_GADGET_UAC1_LEGACY is not set ++CONFIG_USB_ETH=m ++CONFIG_USB_ETH_RNDIS=y ++CONFIG_USB_ETH_EEM=y ++CONFIG_USB_G_NCM=m ++CONFIG_USB_GADGETFS=m ++CONFIG_USB_FUNCTIONFS=m ++CONFIG_USB_FUNCTIONFS_ETH=y ++CONFIG_USB_FUNCTIONFS_RNDIS=y ++CONFIG_USB_FUNCTIONFS_GENERIC=y ++CONFIG_USB_MASS_STORAGE=m ++CONFIG_USB_GADGET_TARGET=m ++CONFIG_USB_G_SERIAL=m ++CONFIG_USB_MIDI_GADGET=m ++CONFIG_USB_G_PRINTER=m ++CONFIG_USB_CDC_COMPOSITE=m ++CONFIG_USB_G_NOKIA=m ++CONFIG_USB_G_ACM_MS=m ++# CONFIG_USB_G_MULTI is not set ++CONFIG_USB_G_HID=m ++CONFIG_USB_G_DBGP=m ++# CONFIG_USB_G_DBGP_PRINTK is not set ++CONFIG_USB_G_DBGP_SERIAL=y ++CONFIG_USB_G_WEBCAM=m ++# CONFIG_TYPEC is not set ++# CONFIG_USB_ROLE_SWITCH is not set ++CONFIG_USB_LED_TRIG=y ++CONFIG_USB_ULPI_BUS=m ++CONFIG_UWB=m ++CONFIG_UWB_HWA=m ++CONFIG_UWB_WHCI=m ++CONFIG_UWB_I1480U=m ++CONFIG_MMC=y ++CONFIG_PWRSEQ_EMMC=y ++# CONFIG_PWRSEQ_SD8787 is not set ++CONFIG_PWRSEQ_SIMPLE=y ++CONFIG_MMC_BLOCK=m ++CONFIG_MMC_BLOCK_MINORS=8 ++CONFIG_SDIO_UART=m ++# CONFIG_MMC_TEST is not set ++ ++# ++# MMC/SD/SDIO Host Controller Drivers ++# ++# CONFIG_MMC_DEBUG is not set ++CONFIG_MMC_SDHCI=m ++CONFIG_MMC_SDHCI_IO_ACCESSORS=y ++CONFIG_MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER=y ++CONFIG_MMC_SDHCI_PCI=m ++CONFIG_MMC_RICOH_MMC=y ++CONFIG_MMC_SDHCI_PLTFM=m ++CONFIG_MMC_SDHCI_OF_AT91=m ++CONFIG_MMC_SDHCI_OF_ESDHC=m ++CONFIG_MMC_SDHCI_OF_HLWD=m ++# CONFIG_MMC_SDHCI_CADENCE is not set ++CONFIG_MMC_SDHCI_F_SDH30=m ++CONFIG_MMC_WBSD=m ++CONFIG_MMC_TIFM_SD=m ++CONFIG_MMC_SPI=m ++CONFIG_MMC_CB710=m ++CONFIG_MMC_VIA_SDMMC=m ++CONFIG_MMC_VUB300=m ++CONFIG_MMC_USHC=m ++CONFIG_MMC_USDHI6ROL0=m ++CONFIG_MMC_CQHCI=m ++CONFIG_MMC_TOSHIBA_PCI=m ++CONFIG_MMC_MTK=m ++# CONFIG_MMC_SDHCI_XENON is not set ++# CONFIG_MMC_SDHCI_OMAP is not set ++# CONFIG_MMC_SDHCI_AM654 is not set ++CONFIG_MEMSTICK=m ++# CONFIG_MEMSTICK_DEBUG is not set ++ ++# ++# MemoryStick drivers ++# ++# CONFIG_MEMSTICK_UNSAFE_RESUME is not set ++CONFIG_MSPRO_BLOCK=m ++CONFIG_MS_BLOCK=m ++ ++# ++# MemoryStick Host Controller Drivers ++# ++CONFIG_MEMSTICK_TIFM_MS=m ++CONFIG_MEMSTICK_JMICRON_38X=m ++CONFIG_MEMSTICK_R592=m ++CONFIG_NEW_LEDS=y ++CONFIG_LEDS_CLASS=y ++CONFIG_LEDS_CLASS_FLASH=m ++# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set ++ ++# ++# LED drivers ++# ++CONFIG_LEDS_88PM860X=m ++# CONFIG_LEDS_AN30259A is not set ++# CONFIG_LEDS_AS3645A is not set ++CONFIG_LEDS_BCM6328=m ++CONFIG_LEDS_BCM6358=m ++# CONFIG_LEDS_CR0014114 is not set ++CONFIG_LEDS_LM3530=m ++CONFIG_LEDS_LM3533=m ++CONFIG_LEDS_LM3642=m ++# CONFIG_LEDS_LM3692X is not set ++# CONFIG_LEDS_LM3601X is not set ++# CONFIG_LEDS_MT6323 is not set ++CONFIG_LEDS_PCA9532=m ++CONFIG_LEDS_PCA9532_GPIO=y ++CONFIG_LEDS_GPIO=m ++CONFIG_LEDS_LP3944=m ++# CONFIG_LEDS_LP3952 is not set ++CONFIG_LEDS_LP55XX_COMMON=m ++CONFIG_LEDS_LP5521=m ++CONFIG_LEDS_LP5523=m ++CONFIG_LEDS_LP5562=m ++CONFIG_LEDS_LP8501=m ++CONFIG_LEDS_LP8788=m ++CONFIG_LEDS_LP8860=m ++CONFIG_LEDS_PCA955X=m ++# CONFIG_LEDS_PCA955X_GPIO is not set ++CONFIG_LEDS_PCA963X=m ++CONFIG_LEDS_WM831X_STATUS=m ++CONFIG_LEDS_WM8350=m ++CONFIG_LEDS_DA903X=m ++CONFIG_LEDS_DA9052=m ++CONFIG_LEDS_DAC124S085=m ++CONFIG_LEDS_PWM=m ++CONFIG_LEDS_REGULATOR=m ++CONFIG_LEDS_BD2802=m ++CONFIG_LEDS_LT3593=m ++CONFIG_LEDS_ADP5520=m ++CONFIG_LEDS_MC13783=m ++CONFIG_LEDS_TCA6507=m ++CONFIG_LEDS_TLC591XX=m ++CONFIG_LEDS_MAX77693=m ++CONFIG_LEDS_MAX8997=m ++CONFIG_LEDS_LM355x=m ++CONFIG_LEDS_MENF21BMC=m ++CONFIG_LEDS_KTD2692=m ++# CONFIG_LEDS_IS31FL319X is not set ++# CONFIG_LEDS_IS31FL32XX is not set ++ ++# ++# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) ++# ++CONFIG_LEDS_BLINKM=m ++CONFIG_LEDS_POWERNV=m ++CONFIG_LEDS_SYSCON=y ++# CONFIG_LEDS_MLXREG is not set ++# CONFIG_LEDS_USER is not set ++ ++# ++# LED Triggers ++# ++CONFIG_LEDS_TRIGGERS=y ++CONFIG_LEDS_TRIGGER_TIMER=m ++CONFIG_LEDS_TRIGGER_ONESHOT=m ++# CONFIG_LEDS_TRIGGER_DISK is not set ++# CONFIG_LEDS_TRIGGER_MTD is not set ++CONFIG_LEDS_TRIGGER_HEARTBEAT=m ++CONFIG_LEDS_TRIGGER_BACKLIGHT=m ++CONFIG_LEDS_TRIGGER_CPU=y ++# CONFIG_LEDS_TRIGGER_ACTIVITY is not set ++CONFIG_LEDS_TRIGGER_GPIO=m ++CONFIG_LEDS_TRIGGER_DEFAULT_ON=m ++ ++# ++# iptables trigger is under Netfilter config (LED target) ++# ++CONFIG_LEDS_TRIGGER_TRANSIENT=m ++CONFIG_LEDS_TRIGGER_CAMERA=m ++# CONFIG_LEDS_TRIGGER_PANIC is not set ++# CONFIG_LEDS_TRIGGER_NETDEV is not set ++# CONFIG_LEDS_TRIGGER_PATTERN is not set ++# CONFIG_LEDS_TRIGGER_AUDIO is not set ++# CONFIG_ACCESSIBILITY is not set ++CONFIG_INFINIBAND=m ++CONFIG_INFINIBAND_USER_MAD=m ++CONFIG_INFINIBAND_USER_ACCESS=m ++# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set ++CONFIG_INFINIBAND_USER_MEM=y ++CONFIG_INFINIBAND_ON_DEMAND_PAGING=y ++CONFIG_INFINIBAND_ADDR_TRANS=y ++CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y ++CONFIG_INFINIBAND_MTHCA=m ++# CONFIG_INFINIBAND_MTHCA_DEBUG is not set ++CONFIG_INFINIBAND_CXGB3=m ++CONFIG_INFINIBAND_CXGB4=m ++# CONFIG_INFINIBAND_I40IW is not set ++CONFIG_MLX4_INFINIBAND=m ++CONFIG_MLX5_INFINIBAND=m ++CONFIG_INFINIBAND_NES=m ++# CONFIG_INFINIBAND_NES_DEBUG is not set ++CONFIG_INFINIBAND_OCRDMA=m ++CONFIG_INFINIBAND_IPOIB=m ++CONFIG_INFINIBAND_IPOIB_CM=y ++# CONFIG_INFINIBAND_IPOIB_DEBUG is not set ++CONFIG_INFINIBAND_SRP=m ++CONFIG_INFINIBAND_SRPT=m ++CONFIG_INFINIBAND_ISER=m ++CONFIG_INFINIBAND_ISERT=m ++# CONFIG_RDMA_RXE is not set ++# CONFIG_INFINIBAND_QEDR is not set ++# CONFIG_INFINIBAND_BNXT_RE is not set ++CONFIG_EDAC_ATOMIC_SCRUB=y ++CONFIG_EDAC_SUPPORT=y ++CONFIG_EDAC=y ++# CONFIG_EDAC_LEGACY_SYSFS is not set ++# CONFIG_EDAC_DEBUG is not set ++CONFIG_EDAC_CPC925=m ++CONFIG_RTC_LIB=y ++CONFIG_RTC_MC146818_LIB=y ++CONFIG_RTC_CLASS=y ++CONFIG_RTC_HCTOSYS=y ++CONFIG_RTC_HCTOSYS_DEVICE="rtc0" ++CONFIG_RTC_SYSTOHC=y ++CONFIG_RTC_SYSTOHC_DEVICE="rtc0" ++# CONFIG_RTC_DEBUG is not set ++CONFIG_RTC_NVMEM=y ++ ++# ++# RTC interfaces ++# ++CONFIG_RTC_INTF_SYSFS=y ++CONFIG_RTC_INTF_PROC=y ++CONFIG_RTC_INTF_DEV=y ++# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set ++# CONFIG_RTC_DRV_TEST is not set ++ ++# ++# I2C RTC drivers ++# ++CONFIG_RTC_DRV_88PM860X=m ++CONFIG_RTC_DRV_88PM80X=m ++CONFIG_RTC_DRV_ABB5ZES3=m ++CONFIG_RTC_DRV_ABX80X=m ++CONFIG_RTC_DRV_AS3722=m ++CONFIG_RTC_DRV_DS1307=m ++# CONFIG_RTC_DRV_DS1307_CENTURY is not set ++CONFIG_RTC_DRV_DS1374=m ++CONFIG_RTC_DRV_DS1374_WDT=y ++CONFIG_RTC_DRV_DS1672=m ++CONFIG_RTC_DRV_HYM8563=m ++CONFIG_RTC_DRV_LP8788=m ++CONFIG_RTC_DRV_MAX6900=m ++CONFIG_RTC_DRV_MAX8907=m ++CONFIG_RTC_DRV_MAX8925=m ++CONFIG_RTC_DRV_MAX8998=m ++CONFIG_RTC_DRV_MAX8997=m ++CONFIG_RTC_DRV_MAX77686=m ++CONFIG_RTC_DRV_RK808=m ++CONFIG_RTC_DRV_RS5C372=m ++CONFIG_RTC_DRV_ISL1208=m ++CONFIG_RTC_DRV_ISL12022=m ++# CONFIG_RTC_DRV_ISL12026 is not set ++CONFIG_RTC_DRV_X1205=m ++CONFIG_RTC_DRV_PCF8523=m ++CONFIG_RTC_DRV_PCF85063=m ++# CONFIG_RTC_DRV_PCF85363 is not set ++CONFIG_RTC_DRV_PCF8563=m ++CONFIG_RTC_DRV_PCF8583=m ++CONFIG_RTC_DRV_M41T80=m ++CONFIG_RTC_DRV_M41T80_WDT=y ++CONFIG_RTC_DRV_BQ32K=m ++CONFIG_RTC_DRV_TWL4030=m ++CONFIG_RTC_DRV_PALMAS=m ++CONFIG_RTC_DRV_TPS6586X=m ++CONFIG_RTC_DRV_TPS65910=m ++CONFIG_RTC_DRV_TPS80031=m ++CONFIG_RTC_DRV_RC5T583=m ++CONFIG_RTC_DRV_S35390A=m ++CONFIG_RTC_DRV_FM3130=m ++# CONFIG_RTC_DRV_RX8010 is not set ++CONFIG_RTC_DRV_RX8581=m ++CONFIG_RTC_DRV_RX8025=m ++CONFIG_RTC_DRV_EM3027=m ++CONFIG_RTC_DRV_RV8803=m ++CONFIG_RTC_DRV_S5M=m ++ ++# ++# SPI RTC drivers ++# ++CONFIG_RTC_DRV_M41T93=m ++CONFIG_RTC_DRV_M41T94=m ++# CONFIG_RTC_DRV_DS1302 is not set ++CONFIG_RTC_DRV_DS1305=m ++CONFIG_RTC_DRV_DS1343=m ++CONFIG_RTC_DRV_DS1347=m ++CONFIG_RTC_DRV_DS1390=m ++# CONFIG_RTC_DRV_MAX6916 is not set ++CONFIG_RTC_DRV_R9701=m ++CONFIG_RTC_DRV_RX4581=m ++# CONFIG_RTC_DRV_RX6110 is not set ++CONFIG_RTC_DRV_RS5C348=m ++CONFIG_RTC_DRV_MAX6902=m ++CONFIG_RTC_DRV_PCF2123=m ++CONFIG_RTC_DRV_MCP795=m ++CONFIG_RTC_I2C_AND_SPI=y ++ ++# ++# SPI and I2C RTC drivers ++# ++CONFIG_RTC_DRV_DS3232=m ++CONFIG_RTC_DRV_DS3232_HWMON=y ++CONFIG_RTC_DRV_PCF2127=m ++CONFIG_RTC_DRV_RV3029C2=m ++CONFIG_RTC_DRV_RV3029_HWMON=y ++ ++# ++# Platform RTC drivers ++# ++CONFIG_RTC_DRV_CMOS=m ++CONFIG_RTC_DRV_DS1286=m ++CONFIG_RTC_DRV_DS1511=m ++CONFIG_RTC_DRV_DS1553=m ++CONFIG_RTC_DRV_DS1685_FAMILY=m ++CONFIG_RTC_DRV_DS1685=y ++# CONFIG_RTC_DRV_DS1689 is not set ++# CONFIG_RTC_DRV_DS17285 is not set ++# CONFIG_RTC_DRV_DS17485 is not set ++# CONFIG_RTC_DRV_DS17885 is not set ++CONFIG_RTC_DRV_DS1742=m ++CONFIG_RTC_DRV_DS2404=m ++CONFIG_RTC_DRV_DA9052=m ++CONFIG_RTC_DRV_DA9055=m ++CONFIG_RTC_DRV_DA9063=m ++CONFIG_RTC_DRV_STK17TA8=m ++CONFIG_RTC_DRV_M48T86=m ++CONFIG_RTC_DRV_M48T35=m ++CONFIG_RTC_DRV_M48T59=m ++CONFIG_RTC_DRV_MSM6242=m ++CONFIG_RTC_DRV_BQ4802=m ++CONFIG_RTC_DRV_RP5C01=m ++CONFIG_RTC_DRV_V3020=m ++CONFIG_RTC_DRV_WM831X=m ++CONFIG_RTC_DRV_WM8350=m ++CONFIG_RTC_DRV_PCF50633=m ++CONFIG_RTC_DRV_AB3100=m ++CONFIG_RTC_DRV_OPAL=y ++CONFIG_RTC_DRV_ZYNQMP=m ++ ++# ++# on-CPU RTC drivers ++# ++CONFIG_RTC_DRV_GENERIC=m ++# CONFIG_RTC_DRV_FTRTC010 is not set ++CONFIG_RTC_DRV_PCAP=m ++CONFIG_RTC_DRV_MC13XXX=m ++CONFIG_RTC_DRV_SNVS=m ++CONFIG_RTC_DRV_MT6397=m ++# CONFIG_RTC_DRV_R7301 is not set ++ ++# ++# HID Sensor RTC drivers ++# ++CONFIG_RTC_DRV_HID_SENSOR_TIME=m ++CONFIG_DMADEVICES=y ++# CONFIG_DMADEVICES_DEBUG is not set ++ ++# ++# DMA Devices ++# ++CONFIG_DMA_ENGINE=y ++CONFIG_DMA_VIRTUAL_CHANNELS=m ++CONFIG_DMA_OF=y ++# CONFIG_ALTERA_MSGDMA is not set ++# CONFIG_DW_AXI_DMAC is not set ++CONFIG_FSL_EDMA=m ++CONFIG_INTEL_IDMA64=m ++# CONFIG_QCOM_HIDMA_MGMT is not set ++# CONFIG_QCOM_HIDMA is not set ++CONFIG_DW_DMAC_CORE=m ++CONFIG_DW_DMAC=m ++CONFIG_DW_DMAC_PCI=m ++ ++# ++# DMA Clients ++# ++CONFIG_ASYNC_TX_DMA=y ++# CONFIG_DMATEST is not set ++ ++# ++# DMABUF options ++# ++CONFIG_SYNC_FILE=y ++# CONFIG_SW_SYNC is not set ++# CONFIG_UDMABUF is not set ++CONFIG_AUXDISPLAY=y ++# CONFIG_HD44780 is not set ++CONFIG_KS0108=m ++CONFIG_KS0108_PORT=0x378 ++CONFIG_KS0108_DELAY=2 ++# CONFIG_IMG_ASCII_LCD is not set ++# CONFIG_HT16K33 is not set ++CONFIG_PANEL=m ++CONFIG_PANEL_PARPORT=0 ++CONFIG_PANEL_PROFILE=5 ++# CONFIG_PANEL_CHANGE_MESSAGE is not set ++CONFIG_CHARLCD=m ++CONFIG_UIO=m ++CONFIG_UIO_CIF=m ++CONFIG_UIO_PDRV_GENIRQ=m ++CONFIG_UIO_DMEM_GENIRQ=m ++CONFIG_UIO_AEC=m ++CONFIG_UIO_SERCOS3=m ++CONFIG_UIO_PCI_GENERIC=m ++CONFIG_UIO_NETX=m ++CONFIG_UIO_FSL_ELBC_GPCM=m ++# CONFIG_UIO_FSL_ELBC_GPCM_NETX5152 is not set ++CONFIG_UIO_PRUSS=m ++CONFIG_UIO_MF624=m ++CONFIG_VFIO_IOMMU_SPAPR_TCE=m ++CONFIG_VFIO_SPAPR_EEH=m ++CONFIG_VFIO_VIRQFD=m ++CONFIG_VFIO=m ++# CONFIG_VFIO_NOIOMMU is not set ++CONFIG_VFIO_PCI=m ++CONFIG_VFIO_PCI_MMAP=y ++CONFIG_VFIO_PCI_INTX=y ++CONFIG_VFIO_PCI_NVLINK2=y ++# CONFIG_VFIO_MDEV is not set ++CONFIG_IRQ_BYPASS_MANAGER=y ++CONFIG_VIRT_DRIVERS=y ++CONFIG_VIRTIO=y ++CONFIG_VIRTIO_MENU=y ++CONFIG_VIRTIO_PCI=y ++CONFIG_VIRTIO_PCI_LEGACY=y ++CONFIG_VIRTIO_BALLOON=y ++CONFIG_VIRTIO_INPUT=m ++CONFIG_VIRTIO_MMIO=y ++CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y ++ ++# ++# Microsoft Hyper-V guest support ++# ++CONFIG_STAGING=y ++CONFIG_PRISM2_USB=m ++CONFIG_COMEDI=m ++# CONFIG_COMEDI_DEBUG is not set ++CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 ++CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 ++CONFIG_COMEDI_MISC_DRIVERS=y ++CONFIG_COMEDI_BOND=m ++CONFIG_COMEDI_TEST=m ++CONFIG_COMEDI_PARPORT=m ++CONFIG_COMEDI_ISA_DRIVERS=y ++CONFIG_COMEDI_PCL711=m ++CONFIG_COMEDI_PCL724=m ++CONFIG_COMEDI_PCL726=m ++CONFIG_COMEDI_PCL730=m ++CONFIG_COMEDI_PCL812=m ++CONFIG_COMEDI_PCL816=m ++CONFIG_COMEDI_PCL818=m ++CONFIG_COMEDI_PCM3724=m ++CONFIG_COMEDI_AMPLC_DIO200_ISA=m ++CONFIG_COMEDI_AMPLC_PC236_ISA=m ++CONFIG_COMEDI_AMPLC_PC263_ISA=m ++CONFIG_COMEDI_RTI800=m ++CONFIG_COMEDI_RTI802=m ++CONFIG_COMEDI_DAC02=m ++CONFIG_COMEDI_DAS16M1=m ++CONFIG_COMEDI_DAS08_ISA=m ++CONFIG_COMEDI_DAS16=m ++CONFIG_COMEDI_DAS800=m ++CONFIG_COMEDI_DAS1800=m ++CONFIG_COMEDI_DAS6402=m ++CONFIG_COMEDI_DT2801=m ++CONFIG_COMEDI_DT2811=m ++CONFIG_COMEDI_DT2814=m ++CONFIG_COMEDI_DT2815=m ++CONFIG_COMEDI_DT2817=m ++CONFIG_COMEDI_DT282X=m ++CONFIG_COMEDI_DMM32AT=m ++CONFIG_COMEDI_FL512=m ++CONFIG_COMEDI_AIO_AIO12_8=m ++CONFIG_COMEDI_AIO_IIRO_16=m ++CONFIG_COMEDI_II_PCI20KC=m ++CONFIG_COMEDI_C6XDIGIO=m ++CONFIG_COMEDI_MPC624=m ++CONFIG_COMEDI_ADQ12B=m ++CONFIG_COMEDI_NI_AT_A2150=m ++CONFIG_COMEDI_NI_AT_AO=m ++CONFIG_COMEDI_NI_ATMIO=m ++CONFIG_COMEDI_NI_ATMIO16D=m ++CONFIG_COMEDI_NI_LABPC_ISA=m ++CONFIG_COMEDI_PCMAD=m ++CONFIG_COMEDI_PCMDA12=m ++CONFIG_COMEDI_PCMMIO=m ++CONFIG_COMEDI_PCMUIO=m ++CONFIG_COMEDI_MULTIQ3=m ++CONFIG_COMEDI_S526=m ++CONFIG_COMEDI_PCI_DRIVERS=m ++CONFIG_COMEDI_8255_PCI=m ++CONFIG_COMEDI_ADDI_WATCHDOG=m ++CONFIG_COMEDI_ADDI_APCI_1032=m ++CONFIG_COMEDI_ADDI_APCI_1500=m ++CONFIG_COMEDI_ADDI_APCI_1516=m ++CONFIG_COMEDI_ADDI_APCI_1564=m ++CONFIG_COMEDI_ADDI_APCI_16XX=m ++CONFIG_COMEDI_ADDI_APCI_2032=m ++CONFIG_COMEDI_ADDI_APCI_2200=m ++CONFIG_COMEDI_ADDI_APCI_3120=m ++CONFIG_COMEDI_ADDI_APCI_3501=m ++CONFIG_COMEDI_ADDI_APCI_3XXX=m ++CONFIG_COMEDI_ADL_PCI6208=m ++CONFIG_COMEDI_ADL_PCI7X3X=m ++CONFIG_COMEDI_ADL_PCI8164=m ++CONFIG_COMEDI_ADL_PCI9111=m ++CONFIG_COMEDI_ADL_PCI9118=m ++CONFIG_COMEDI_ADV_PCI1710=m ++# CONFIG_COMEDI_ADV_PCI1720 is not set ++CONFIG_COMEDI_ADV_PCI1723=m ++CONFIG_COMEDI_ADV_PCI1724=m ++# CONFIG_COMEDI_ADV_PCI1760 is not set ++CONFIG_COMEDI_ADV_PCI_DIO=m ++CONFIG_COMEDI_AMPLC_DIO200_PCI=m ++CONFIG_COMEDI_AMPLC_PC236_PCI=m ++CONFIG_COMEDI_AMPLC_PC263_PCI=m ++CONFIG_COMEDI_AMPLC_PCI224=m ++CONFIG_COMEDI_AMPLC_PCI230=m ++CONFIG_COMEDI_CONTEC_PCI_DIO=m ++CONFIG_COMEDI_DAS08_PCI=m ++CONFIG_COMEDI_DT3000=m ++CONFIG_COMEDI_DYNA_PCI10XX=m ++CONFIG_COMEDI_GSC_HPDI=m ++CONFIG_COMEDI_MF6X4=m ++CONFIG_COMEDI_ICP_MULTI=m ++CONFIG_COMEDI_DAQBOARD2000=m ++CONFIG_COMEDI_JR3_PCI=m ++CONFIG_COMEDI_KE_COUNTER=m ++CONFIG_COMEDI_CB_PCIDAS64=m ++CONFIG_COMEDI_CB_PCIDAS=m ++CONFIG_COMEDI_CB_PCIDDA=m ++CONFIG_COMEDI_CB_PCIMDAS=m ++CONFIG_COMEDI_CB_PCIMDDA=m ++CONFIG_COMEDI_ME4000=m ++CONFIG_COMEDI_ME_DAQ=m ++CONFIG_COMEDI_NI_6527=m ++CONFIG_COMEDI_NI_65XX=m ++CONFIG_COMEDI_NI_660X=m ++CONFIG_COMEDI_NI_670X=m ++CONFIG_COMEDI_NI_LABPC_PCI=m ++CONFIG_COMEDI_NI_PCIDIO=m ++CONFIG_COMEDI_NI_PCIMIO=m ++CONFIG_COMEDI_RTD520=m ++CONFIG_COMEDI_S626=m ++CONFIG_COMEDI_MITE=m ++CONFIG_COMEDI_NI_TIOCMD=m ++CONFIG_COMEDI_USB_DRIVERS=m ++CONFIG_COMEDI_DT9812=m ++CONFIG_COMEDI_NI_USB6501=m ++CONFIG_COMEDI_USBDUX=m ++CONFIG_COMEDI_USBDUXFAST=m ++CONFIG_COMEDI_USBDUXSIGMA=m ++CONFIG_COMEDI_VMK80XX=m ++CONFIG_COMEDI_8254=m ++CONFIG_COMEDI_8255=m ++CONFIG_COMEDI_8255_SA=m ++CONFIG_COMEDI_KCOMEDILIB=m ++CONFIG_COMEDI_AMPLC_DIO200=m ++CONFIG_COMEDI_AMPLC_PC236=m ++CONFIG_COMEDI_DAS08=m ++CONFIG_COMEDI_ISADMA=m ++CONFIG_COMEDI_NI_LABPC=m ++CONFIG_COMEDI_NI_LABPC_ISADMA=m ++CONFIG_COMEDI_NI_TIO=m ++CONFIG_COMEDI_NI_ROUTING=m ++CONFIG_RTL8192U=m ++CONFIG_RTLLIB=m ++CONFIG_RTLLIB_CRYPTO_CCMP=m ++CONFIG_RTLLIB_CRYPTO_TKIP=m ++CONFIG_RTLLIB_CRYPTO_WEP=m ++CONFIG_RTL8192E=m ++# CONFIG_RTL8723BS is not set ++CONFIG_R8712U=m ++CONFIG_R8188EU=m ++CONFIG_88EU_AP_MODE=y ++# CONFIG_R8822BE is not set ++CONFIG_RTS5208=m ++CONFIG_VT6655=m ++CONFIG_VT6656=m ++ ++# ++# IIO staging drivers ++# ++ ++# ++# Accelerometers ++# ++CONFIG_ADIS16203=m ++CONFIG_ADIS16240=m ++ ++# ++# Analog to digital converters ++# ++CONFIG_AD7606=m ++CONFIG_AD7606_IFACE_PARALLEL=m ++CONFIG_AD7606_IFACE_SPI=m ++CONFIG_AD7780=m ++CONFIG_AD7816=m ++CONFIG_AD7192=m ++CONFIG_AD7280=m ++ ++# ++# Analog digital bi-direction converters ++# ++CONFIG_ADT7316=m ++CONFIG_ADT7316_SPI=m ++CONFIG_ADT7316_I2C=m ++ ++# ++# Capacitance to digital converters ++# ++CONFIG_AD7150=m ++CONFIG_AD7152=m ++CONFIG_AD7746=m ++ ++# ++# Direct Digital Synthesis ++# ++CONFIG_AD9832=m ++CONFIG_AD9834=m ++ ++# ++# Network Analyzer, Impedance Converters ++# ++CONFIG_AD5933=m ++ ++# ++# Active energy metering IC ++# ++CONFIG_ADE7854=m ++CONFIG_ADE7854_I2C=m ++CONFIG_ADE7854_SPI=m ++ ++# ++# Resolver to digital converters ++# ++CONFIG_AD2S1210=m ++CONFIG_FB_SM750=m ++CONFIG_FB_XGI=m ++ ++# ++# Speakup console speech ++# ++CONFIG_SPEAKUP=m ++CONFIG_SPEAKUP_SYNTH_ACNTSA=m ++CONFIG_SPEAKUP_SYNTH_APOLLO=m ++CONFIG_SPEAKUP_SYNTH_AUDPTR=m ++CONFIG_SPEAKUP_SYNTH_BNS=m ++CONFIG_SPEAKUP_SYNTH_DECTLK=m ++CONFIG_SPEAKUP_SYNTH_DECEXT=m ++CONFIG_SPEAKUP_SYNTH_LTLK=m ++CONFIG_SPEAKUP_SYNTH_SOFT=m ++CONFIG_SPEAKUP_SYNTH_SPKOUT=m ++CONFIG_SPEAKUP_SYNTH_TXPRT=m ++CONFIG_SPEAKUP_SYNTH_DUMMY=m ++CONFIG_STAGING_MEDIA=y ++CONFIG_I2C_BCM2048=m ++CONFIG_SOC_CAMERA_IMX074=m ++CONFIG_SOC_CAMERA_MT9T031=m ++ ++# ++# Android ++# ++CONFIG_LTE_GDM724X=m ++CONFIG_FIREWIRE_SERIAL=m ++CONFIG_FWTTY_MAX_TOTAL_PORTS=64 ++CONFIG_FWTTY_MAX_CARD_PORTS=32 ++CONFIG_GS_FPGABOOT=m ++# CONFIG_UNISYSSPAR is not set ++CONFIG_FB_TFT=m ++CONFIG_FB_TFT_AGM1264K_FL=m ++CONFIG_FB_TFT_BD663474=m ++CONFIG_FB_TFT_HX8340BN=m ++CONFIG_FB_TFT_HX8347D=m ++CONFIG_FB_TFT_HX8353D=m ++CONFIG_FB_TFT_HX8357D=m ++CONFIG_FB_TFT_ILI9163=m ++CONFIG_FB_TFT_ILI9320=m ++CONFIG_FB_TFT_ILI9325=m ++CONFIG_FB_TFT_ILI9340=m ++CONFIG_FB_TFT_ILI9341=m ++CONFIG_FB_TFT_ILI9481=m ++CONFIG_FB_TFT_ILI9486=m ++CONFIG_FB_TFT_PCD8544=m ++CONFIG_FB_TFT_RA8875=m ++CONFIG_FB_TFT_S6D02A1=m ++CONFIG_FB_TFT_S6D1121=m ++# CONFIG_FB_TFT_SH1106 is not set ++CONFIG_FB_TFT_SSD1289=m ++# CONFIG_FB_TFT_SSD1305 is not set ++CONFIG_FB_TFT_SSD1306=m ++CONFIG_FB_TFT_SSD1331=m ++CONFIG_FB_TFT_SSD1351=m ++CONFIG_FB_TFT_ST7735R=m ++CONFIG_FB_TFT_ST7789V=m ++CONFIG_FB_TFT_TINYLCD=m ++CONFIG_FB_TFT_TLS8204=m ++CONFIG_FB_TFT_UC1611=m ++CONFIG_FB_TFT_UC1701=m ++CONFIG_FB_TFT_UPD161704=m ++CONFIG_FB_TFT_WATTEROTT=m ++CONFIG_FB_FLEX=m ++CONFIG_FB_TFT_FBTFT_DEVICE=m ++# CONFIG_WILC1000_SDIO is not set ++# CONFIG_WILC1000_SPI is not set ++CONFIG_MOST=m ++# CONFIG_MOST_CDEV is not set ++# CONFIG_MOST_NET is not set ++# CONFIG_MOST_SOUND is not set ++# CONFIG_MOST_VIDEO is not set ++# CONFIG_MOST_DIM2 is not set ++# CONFIG_MOST_I2C is not set ++# CONFIG_MOST_USB is not set ++# CONFIG_KS7010 is not set ++# CONFIG_GREYBUS is not set ++# CONFIG_PI433 is not set ++# CONFIG_MTK_MMC is not set ++ ++# ++# Gasket devices ++# ++# CONFIG_XIL_AXIS_FIFO is not set ++# CONFIG_EROFS_FS is not set ++# CONFIG_HWSPINLOCK is not set ++ ++# ++# Clock Source drivers ++# ++CONFIG_I8253_LOCK=y ++CONFIG_CLKBLD_I8253=y ++CONFIG_MAILBOX=y ++# CONFIG_PLATFORM_MHU is not set ++CONFIG_ALTERA_MBOX=m ++CONFIG_MAILBOX_TEST=m ++CONFIG_IOMMU_API=y ++CONFIG_IOMMU_SUPPORT=y ++ ++# ++# Generic IOMMU Pagetable Support ++# ++# CONFIG_IOMMU_DEBUGFS is not set ++# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set ++CONFIG_OF_IOMMU=y ++CONFIG_SPAPR_TCE_IOMMU=y ++ ++# ++# Remoteproc drivers ++# ++CONFIG_REMOTEPROC=m ++ ++# ++# Rpmsg drivers ++# ++# CONFIG_RPMSG_QCOM_GLINK_RPM is not set ++# CONFIG_RPMSG_VIRTIO is not set ++# CONFIG_SOUNDWIRE is not set ++ ++# ++# SOC (System On Chip) specific Drivers ++# ++ ++# ++# Amlogic SoC drivers ++# ++ ++# ++# Broadcom SoC drivers ++# ++ ++# ++# NXP/Freescale QorIQ SoC drivers ++# ++CONFIG_FSL_GUTS=y ++ ++# ++# i.MX SoC drivers ++# ++ ++# ++# Qualcomm SoC drivers ++# ++CONFIG_SOC_TI=y ++ ++# ++# Xilinx SoC drivers ++# ++# CONFIG_XILINX_VCU is not set ++CONFIG_PM_DEVFREQ=y ++ ++# ++# DEVFREQ Governors ++# ++CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y ++CONFIG_DEVFREQ_GOV_PERFORMANCE=y ++CONFIG_DEVFREQ_GOV_POWERSAVE=y ++CONFIG_DEVFREQ_GOV_USERSPACE=y ++# CONFIG_DEVFREQ_GOV_PASSIVE is not set ++ ++# ++# DEVFREQ Drivers ++# ++CONFIG_PM_DEVFREQ_EVENT=y ++CONFIG_EXTCON=y ++ ++# ++# Extcon Device Drivers ++# ++CONFIG_EXTCON_ADC_JACK=m ++CONFIG_EXTCON_ARIZONA=m ++CONFIG_EXTCON_GPIO=m ++CONFIG_EXTCON_MAX14577=m ++# CONFIG_EXTCON_MAX3355 is not set ++CONFIG_EXTCON_MAX77693=m ++CONFIG_EXTCON_MAX77843=m ++CONFIG_EXTCON_MAX8997=m ++CONFIG_EXTCON_PALMAS=m ++CONFIG_EXTCON_RT8973A=m ++CONFIG_EXTCON_SM5502=m ++CONFIG_EXTCON_USB_GPIO=m ++CONFIG_MEMORY=y ++CONFIG_IIO=m ++CONFIG_IIO_BUFFER=y ++CONFIG_IIO_BUFFER_CB=m ++# CONFIG_IIO_BUFFER_HW_CONSUMER is not set ++CONFIG_IIO_KFIFO_BUF=m ++CONFIG_IIO_TRIGGERED_BUFFER=m ++# CONFIG_IIO_CONFIGFS is not set ++CONFIG_IIO_TRIGGER=y ++CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 ++# CONFIG_IIO_SW_DEVICE is not set ++# CONFIG_IIO_SW_TRIGGER is not set ++CONFIG_IIO_TRIGGERED_EVENT=m ++ ++# ++# Accelerometers ++# ++CONFIG_ADIS16201=m ++CONFIG_ADIS16209=m ++# CONFIG_ADXL372_SPI is not set ++# CONFIG_ADXL372_I2C is not set ++CONFIG_BMA180=m ++# CONFIG_BMA220 is not set ++CONFIG_BMC150_ACCEL=m ++CONFIG_BMC150_ACCEL_I2C=m ++CONFIG_BMC150_ACCEL_SPI=m ++# CONFIG_DA280 is not set ++# CONFIG_DA311 is not set ++# CONFIG_DMARD06 is not set ++# CONFIG_DMARD09 is not set ++# CONFIG_DMARD10 is not set ++CONFIG_HID_SENSOR_ACCEL_3D=m ++# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set ++CONFIG_IIO_ST_ACCEL_3AXIS=m ++CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m ++CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m ++CONFIG_KXSD9=m ++CONFIG_KXSD9_SPI=m ++CONFIG_KXSD9_I2C=m ++CONFIG_KXCJK1013=m ++# CONFIG_MC3230 is not set ++# CONFIG_MMA7455_I2C is not set ++# CONFIG_MMA7455_SPI is not set ++# CONFIG_MMA7660 is not set ++CONFIG_MMA8452=m ++CONFIG_MMA9551_CORE=m ++CONFIG_MMA9551=m ++CONFIG_MMA9553=m ++CONFIG_MXC4005=m ++# CONFIG_MXC6255 is not set ++CONFIG_SCA3000=m ++CONFIG_STK8312=m ++CONFIG_STK8BA50=m ++ ++# ++# Analog to digital converters ++# ++CONFIG_AD_SIGMA_DELTA=m ++# CONFIG_AD7124 is not set ++CONFIG_AD7266=m ++CONFIG_AD7291=m ++CONFIG_AD7298=m ++CONFIG_AD7476=m ++# CONFIG_AD7766 is not set ++CONFIG_AD7791=m ++CONFIG_AD7793=m ++CONFIG_AD7887=m ++CONFIG_AD7923=m ++# CONFIG_AD7949 is not set ++CONFIG_AD799X=m ++CONFIG_DA9150_GPADC=m ++# CONFIG_DLN2_ADC is not set ++# CONFIG_ENVELOPE_DETECTOR is not set ++CONFIG_HI8435=m ++# CONFIG_HX711 is not set ++# CONFIG_INA2XX_ADC is not set ++CONFIG_LP8788_ADC=m ++# CONFIG_LTC2471 is not set ++# CONFIG_LTC2485 is not set ++# CONFIG_LTC2497 is not set ++CONFIG_MAX1027=m ++# CONFIG_MAX11100 is not set ++# CONFIG_MAX1118 is not set ++CONFIG_MAX1363=m ++# CONFIG_MAX9611 is not set ++CONFIG_MCP320X=m ++CONFIG_MCP3422=m ++# CONFIG_MCP3911 is not set ++CONFIG_MEN_Z188_ADC=m ++CONFIG_NAU7802=m ++# CONFIG_PALMAS_GPADC is not set ++CONFIG_QCOM_VADC_COMMON=m ++CONFIG_QCOM_SPMI_IADC=m ++CONFIG_QCOM_SPMI_VADC=m ++# CONFIG_QCOM_SPMI_ADC5 is not set ++# CONFIG_SD_ADC_MODULATOR is not set ++CONFIG_TI_ADC081C=m ++# CONFIG_TI_ADC0832 is not set ++# CONFIG_TI_ADC084S021 is not set ++# CONFIG_TI_ADC12138 is not set ++# CONFIG_TI_ADC108S102 is not set ++CONFIG_TI_ADC128S052=m ++# CONFIG_TI_ADC161S626 is not set ++# CONFIG_TI_ADS1015 is not set ++# CONFIG_TI_ADS7950 is not set ++# CONFIG_TI_ADS8688 is not set ++CONFIG_TI_AM335X_ADC=m ++# CONFIG_TI_TLC4541 is not set ++CONFIG_TWL4030_MADC=m ++CONFIG_TWL6030_GPADC=m ++CONFIG_VF610_ADC=m ++CONFIG_VIPERBOARD_ADC=m ++ ++# ++# Analog Front Ends ++# ++# CONFIG_IIO_RESCALE is not set ++ ++# ++# Amplifiers ++# ++CONFIG_AD8366=m ++ ++# ++# Chemical Sensors ++# ++# CONFIG_ATLAS_PH_SENSOR is not set ++# CONFIG_BME680 is not set ++# CONFIG_CCS811 is not set ++# CONFIG_IAQCORE is not set ++CONFIG_VZ89X=m ++ ++# ++# Hid Sensor IIO Common ++# ++CONFIG_HID_SENSOR_IIO_COMMON=m ++CONFIG_HID_SENSOR_IIO_TRIGGER=m ++CONFIG_IIO_MS_SENSORS_I2C=m ++ ++# ++# SSP Sensor Common ++# ++CONFIG_IIO_SSP_SENSORS_COMMONS=m ++CONFIG_IIO_SSP_SENSORHUB=m ++CONFIG_IIO_ST_SENSORS_I2C=m ++CONFIG_IIO_ST_SENSORS_SPI=m ++CONFIG_IIO_ST_SENSORS_CORE=m ++ ++# ++# Counters ++# ++ ++# ++# Digital to analog converters ++# ++CONFIG_AD5064=m ++CONFIG_AD5360=m ++CONFIG_AD5380=m ++CONFIG_AD5421=m ++CONFIG_AD5446=m ++CONFIG_AD5449=m ++# CONFIG_AD5592R is not set ++# CONFIG_AD5593R is not set ++CONFIG_AD5504=m ++CONFIG_AD5624R_SPI=m ++# CONFIG_LTC1660 is not set ++# CONFIG_LTC2632 is not set ++# CONFIG_AD5686_SPI is not set ++# CONFIG_AD5696_I2C is not set ++CONFIG_AD5755=m ++# CONFIG_AD5758 is not set ++# CONFIG_AD5761 is not set ++CONFIG_AD5764=m ++CONFIG_AD5791=m ++CONFIG_AD7303=m ++# CONFIG_AD8801 is not set ++# CONFIG_DPOT_DAC is not set ++# CONFIG_DS4424 is not set ++CONFIG_M62332=m ++CONFIG_MAX517=m ++CONFIG_MAX5821=m ++CONFIG_MCP4725=m ++CONFIG_MCP4922=m ++# CONFIG_TI_DAC082S085 is not set ++# CONFIG_TI_DAC5571 is not set ++# CONFIG_TI_DAC7311 is not set ++# CONFIG_VF610_DAC is not set ++ ++# ++# IIO dummy driver ++# ++ ++# ++# Frequency Synthesizers DDS/PLL ++# ++ ++# ++# Clock Generator/Distribution ++# ++CONFIG_AD9523=m ++ ++# ++# Phase-Locked Loop (PLL) frequency synthesizers ++# ++CONFIG_ADF4350=m ++ ++# ++# Digital gyroscope sensors ++# ++CONFIG_ADIS16080=m ++CONFIG_ADIS16130=m ++CONFIG_ADIS16136=m ++CONFIG_ADIS16260=m ++CONFIG_ADXRS450=m ++CONFIG_BMG160=m ++CONFIG_BMG160_I2C=m ++CONFIG_BMG160_SPI=m ++CONFIG_HID_SENSOR_GYRO_3D=m ++# CONFIG_MPU3050_I2C is not set ++CONFIG_IIO_ST_GYRO_3AXIS=m ++CONFIG_IIO_ST_GYRO_I2C_3AXIS=m ++CONFIG_IIO_ST_GYRO_SPI_3AXIS=m ++CONFIG_ITG3200=m ++ ++# ++# Health Sensors ++# ++ ++# ++# Heart Rate Monitors ++# ++# CONFIG_AFE4403 is not set ++# CONFIG_AFE4404 is not set ++# CONFIG_MAX30100 is not set ++# CONFIG_MAX30102 is not set ++ ++# ++# Humidity sensors ++# ++# CONFIG_AM2315 is not set ++CONFIG_DHT11=m ++CONFIG_HDC100X=m ++# CONFIG_HID_SENSOR_HUMIDITY is not set ++# CONFIG_HTS221 is not set ++CONFIG_HTU21=m ++CONFIG_SI7005=m ++CONFIG_SI7020=m ++ ++# ++# Inertial measurement units ++# ++CONFIG_ADIS16400=m ++CONFIG_ADIS16480=m ++# CONFIG_BMI160_I2C is not set ++# CONFIG_BMI160_SPI is not set ++CONFIG_KMX61=m ++# CONFIG_INV_MPU6050_I2C is not set ++# CONFIG_INV_MPU6050_SPI is not set ++# CONFIG_IIO_ST_LSM6DSX is not set ++CONFIG_IIO_ADIS_LIB=m ++CONFIG_IIO_ADIS_LIB_BUFFER=y ++ ++# ++# Light sensors ++# ++CONFIG_ADJD_S311=m ++CONFIG_AL3320A=m ++CONFIG_APDS9300=m ++CONFIG_APDS9960=m ++CONFIG_BH1750=m ++# CONFIG_BH1780 is not set ++CONFIG_CM32181=m ++CONFIG_CM3232=m ++CONFIG_CM3323=m ++# CONFIG_CM3605 is not set ++CONFIG_CM36651=m ++CONFIG_GP2AP020A00F=m ++CONFIG_SENSORS_ISL29018=m ++CONFIG_SENSORS_ISL29028=m ++CONFIG_ISL29125=m ++CONFIG_HID_SENSOR_ALS=m ++CONFIG_HID_SENSOR_PROX=m ++CONFIG_JSA1212=m ++CONFIG_RPR0521=m ++CONFIG_SENSORS_LM3533=m ++CONFIG_LTR501=m ++# CONFIG_LV0104CS is not set ++# CONFIG_MAX44000 is not set ++CONFIG_OPT3001=m ++CONFIG_PA12203001=m ++# CONFIG_SI1133 is not set ++# CONFIG_SI1145 is not set ++CONFIG_STK3310=m ++# CONFIG_ST_UVIS25 is not set ++CONFIG_TCS3414=m ++CONFIG_TCS3472=m ++CONFIG_SENSORS_TSL2563=m ++CONFIG_TSL2583=m ++# CONFIG_TSL2772 is not set ++CONFIG_TSL4531=m ++CONFIG_US5182D=m ++CONFIG_VCNL4000=m ++# CONFIG_VCNL4035 is not set ++# CONFIG_VEML6070 is not set ++# CONFIG_VL6180 is not set ++# CONFIG_ZOPT2201 is not set ++ ++# ++# Magnetometer sensors ++# ++# CONFIG_AK8974 is not set ++CONFIG_AK8975=m ++CONFIG_AK09911=m ++# CONFIG_BMC150_MAGN_I2C is not set ++# CONFIG_BMC150_MAGN_SPI is not set ++CONFIG_MAG3110=m ++CONFIG_HID_SENSOR_MAGNETOMETER_3D=m ++CONFIG_MMC35240=m ++CONFIG_IIO_ST_MAGN_3AXIS=m ++CONFIG_IIO_ST_MAGN_I2C_3AXIS=m ++CONFIG_IIO_ST_MAGN_SPI_3AXIS=m ++CONFIG_SENSORS_HMC5843=m ++CONFIG_SENSORS_HMC5843_I2C=m ++CONFIG_SENSORS_HMC5843_SPI=m ++# CONFIG_SENSORS_RM3100_I2C is not set ++# CONFIG_SENSORS_RM3100_SPI is not set ++ ++# ++# Multiplexers ++# ++# CONFIG_IIO_MUX is not set ++ ++# ++# Inclinometer sensors ++# ++CONFIG_HID_SENSOR_INCLINOMETER_3D=m ++CONFIG_HID_SENSOR_DEVICE_ROTATION=m ++ ++# ++# Triggers - standalone ++# ++CONFIG_IIO_INTERRUPT_TRIGGER=m ++CONFIG_IIO_SYSFS_TRIGGER=m ++ ++# ++# Digital potentiometers ++# ++# CONFIG_AD5272 is not set ++# CONFIG_DS1803 is not set ++# CONFIG_MAX5481 is not set ++# CONFIG_MAX5487 is not set ++# CONFIG_MCP4018 is not set ++# CONFIG_MCP4131 is not set ++CONFIG_MCP4531=m ++# CONFIG_MCP41010 is not set ++# CONFIG_TPL0102 is not set ++ ++# ++# Digital potentiostats ++# ++# CONFIG_LMP91000 is not set ++ ++# ++# Pressure sensors ++# ++# CONFIG_ABP060MG is not set ++CONFIG_BMP280=m ++CONFIG_BMP280_I2C=m ++CONFIG_BMP280_SPI=m ++CONFIG_HID_SENSOR_PRESS=m ++# CONFIG_HP03 is not set ++# CONFIG_MPL115_I2C is not set ++# CONFIG_MPL115_SPI is not set ++CONFIG_MPL3115=m ++CONFIG_MS5611=m ++CONFIG_MS5611_I2C=m ++CONFIG_MS5611_SPI=m ++CONFIG_MS5637=m ++CONFIG_IIO_ST_PRESS=m ++CONFIG_IIO_ST_PRESS_I2C=m ++CONFIG_IIO_ST_PRESS_SPI=m ++CONFIG_T5403=m ++# CONFIG_HP206C is not set ++# CONFIG_ZPA2326 is not set ++ ++# ++# Lightning sensors ++# ++CONFIG_AS3935=m ++ ++# ++# Proximity and distance sensors ++# ++# CONFIG_ISL29501 is not set ++CONFIG_LIDAR_LITE_V2=m ++# CONFIG_RFD77402 is not set ++# CONFIG_SRF04 is not set ++CONFIG_SX9500=m ++# CONFIG_SRF08 is not set ++# CONFIG_VL53L0X_I2C is not set ++ ++# ++# Resolver to digital converters ++# ++CONFIG_AD2S90=m ++CONFIG_AD2S1200=m ++ ++# ++# Temperature sensors ++# ++# CONFIG_MAXIM_THERMOCOUPLE is not set ++# CONFIG_HID_SENSOR_TEMP is not set ++CONFIG_MLX90614=m ++# CONFIG_MLX90632 is not set ++CONFIG_TMP006=m ++# CONFIG_TMP007 is not set ++CONFIG_TSYS01=m ++CONFIG_TSYS02D=m ++CONFIG_NTB=m ++# CONFIG_NTB_IDT is not set ++# CONFIG_NTB_SWITCHTEC is not set ++CONFIG_NTB_PINGPONG=m ++CONFIG_NTB_TOOL=m ++# CONFIG_NTB_PERF is not set ++CONFIG_NTB_TRANSPORT=m ++CONFIG_VME_BUS=y ++ ++# ++# VME Bridge Drivers ++# ++CONFIG_VME_TSI148=m ++# CONFIG_VME_FAKE is not set ++ ++# ++# VME Board Drivers ++# ++CONFIG_VMIVME_7805=m ++ ++# ++# VME Device Drivers ++# ++CONFIG_VME_USER=m ++CONFIG_PWM=y ++CONFIG_PWM_SYSFS=y ++CONFIG_PWM_FSL_FTM=m ++CONFIG_PWM_LP3943=m ++CONFIG_PWM_PCA9685=m ++# CONFIG_PWM_STMPE is not set ++CONFIG_PWM_TWL=m ++CONFIG_PWM_TWL_LED=m ++ ++# ++# IRQ chip support ++# ++CONFIG_IRQCHIP=y ++CONFIG_ARM_GIC_MAX_NR=1 ++CONFIG_IPACK_BUS=m ++CONFIG_BOARD_TPCI200=m ++CONFIG_SERIAL_IPOCTAL=m ++CONFIG_RESET_CONTROLLER=y ++# CONFIG_RESET_TI_SYSCON is not set ++CONFIG_FMC=m ++CONFIG_FMC_FAKEDEV=m ++CONFIG_FMC_TRIVIAL=m ++CONFIG_FMC_WRITE_EEPROM=m ++CONFIG_FMC_CHARDEV=m ++ ++# ++# PHY Subsystem ++# ++CONFIG_GENERIC_PHY=y ++CONFIG_BCM_KONA_USB2_PHY=m ++# CONFIG_PHY_CADENCE_DP is not set ++# CONFIG_PHY_CADENCE_SIERRA is not set ++# CONFIG_PHY_FSL_IMX8MQ_USB is not set ++CONFIG_PHY_PXA_28NM_HSIC=m ++CONFIG_PHY_PXA_28NM_USB2=m ++# CONFIG_PHY_CPCAP_USB is not set ++# CONFIG_PHY_MAPPHONE_MDM6600 is not set ++# CONFIG_PHY_OCELOT_SERDES is not set ++# CONFIG_PHY_QCOM_USB_HS is not set ++# CONFIG_PHY_QCOM_USB_HSIC is not set ++CONFIG_PHY_SAMSUNG_USB2=m ++CONFIG_PHY_TUSB1210=m ++CONFIG_POWERCAP=y ++# CONFIG_IDLE_INJECT is not set ++CONFIG_MCB=m ++CONFIG_MCB_PCI=m ++# CONFIG_MCB_LPC is not set ++ ++# ++# Performance monitor support ++# ++CONFIG_RAS=y ++ ++# ++# Android ++# ++# CONFIG_ANDROID is not set ++CONFIG_LIBNVDIMM=y ++CONFIG_BLK_DEV_PMEM=m ++CONFIG_ND_BLK=m ++CONFIG_ND_CLAIM=y ++CONFIG_ND_BTT=m ++CONFIG_BTT=y ++CONFIG_OF_PMEM=y ++CONFIG_NVDIMM_KEYS=y ++CONFIG_DAX_DRIVER=y ++CONFIG_DAX=y ++# CONFIG_DEV_DAX is not set ++CONFIG_NVMEM=y ++ ++# ++# HW tracing support ++# ++CONFIG_STM=m ++# CONFIG_STM_PROTO_BASIC is not set ++# CONFIG_STM_PROTO_SYS_T is not set ++CONFIG_STM_DUMMY=m ++CONFIG_STM_SOURCE_CONSOLE=m ++# CONFIG_STM_SOURCE_HEARTBEAT is not set ++# CONFIG_STM_SOURCE_FTRACE is not set ++CONFIG_INTEL_TH=m ++CONFIG_INTEL_TH_PCI=m ++CONFIG_INTEL_TH_GTH=m ++CONFIG_INTEL_TH_STH=m ++CONFIG_INTEL_TH_MSU=m ++CONFIG_INTEL_TH_PTI=m ++# CONFIG_INTEL_TH_DEBUG is not set ++CONFIG_FPGA=m ++# CONFIG_ALTERA_PR_IP_CORE is not set ++# CONFIG_FPGA_MGR_ALTERA_PS_SPI is not set ++# CONFIG_FPGA_MGR_ALTERA_CVP is not set ++# CONFIG_FPGA_MGR_XILINX_SPI is not set ++# CONFIG_FPGA_MGR_ICE40_SPI is not set ++# CONFIG_FPGA_MGR_MACHXO2_SPI is not set ++# CONFIG_FPGA_BRIDGE is not set ++# CONFIG_FPGA_DFL is not set ++# CONFIG_FSI is not set ++CONFIG_PM_OPP=y ++# CONFIG_SIOX is not set ++# CONFIG_SLIMBUS is not set ++ ++# ++# File systems ++# ++CONFIG_DCACHE_WORD_ACCESS=y ++CONFIG_FS_IOMAP=y ++# CONFIG_EXT2_FS is not set ++# CONFIG_EXT3_FS is not set ++CONFIG_EXT4_FS=y ++CONFIG_EXT4_USE_FOR_EXT2=y ++CONFIG_EXT4_FS_POSIX_ACL=y ++CONFIG_EXT4_FS_SECURITY=y ++# CONFIG_EXT4_ENCRYPTION is not set ++# CONFIG_EXT4_DEBUG is not set ++CONFIG_JBD2=y ++# CONFIG_JBD2_DEBUG is not set ++CONFIG_FS_MBCACHE=y ++CONFIG_REISERFS_FS=m ++# CONFIG_REISERFS_CHECK is not set ++# CONFIG_REISERFS_PROC_INFO is not set ++CONFIG_REISERFS_FS_XATTR=y ++CONFIG_REISERFS_FS_POSIX_ACL=y ++CONFIG_REISERFS_FS_SECURITY=y ++CONFIG_JFS_FS=m ++CONFIG_JFS_POSIX_ACL=y ++CONFIG_JFS_SECURITY=y ++# CONFIG_JFS_DEBUG is not set ++CONFIG_JFS_STATISTICS=y ++CONFIG_XFS_FS=m ++CONFIG_XFS_QUOTA=y ++CONFIG_XFS_POSIX_ACL=y ++CONFIG_XFS_RT=y ++# CONFIG_XFS_ONLINE_SCRUB is not set ++# CONFIG_XFS_WARN is not set ++# CONFIG_XFS_DEBUG is not set ++CONFIG_GFS2_FS=m ++CONFIG_GFS2_FS_LOCKING_DLM=y ++CONFIG_OCFS2_FS=m ++CONFIG_OCFS2_FS_O2CB=m ++CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m ++CONFIG_OCFS2_FS_STATS=y ++CONFIG_OCFS2_DEBUG_MASKLOG=y ++# CONFIG_OCFS2_DEBUG_FS is not set ++CONFIG_BTRFS_FS=m ++CONFIG_BTRFS_FS_POSIX_ACL=y ++# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set ++# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set ++# CONFIG_BTRFS_DEBUG is not set ++# CONFIG_BTRFS_ASSERT is not set ++# CONFIG_BTRFS_FS_REF_VERIFY is not set ++CONFIG_NILFS2_FS=m ++CONFIG_F2FS_FS=m ++CONFIG_F2FS_STAT_FS=y ++CONFIG_F2FS_FS_XATTR=y ++CONFIG_F2FS_FS_POSIX_ACL=y ++CONFIG_F2FS_FS_SECURITY=y ++# CONFIG_F2FS_CHECK_FS is not set ++CONFIG_F2FS_FS_ENCRYPTION=y ++# CONFIG_F2FS_IO_TRACE is not set ++# CONFIG_F2FS_FAULT_INJECTION is not set ++CONFIG_FS_DAX=y ++CONFIG_FS_POSIX_ACL=y ++CONFIG_EXPORTFS=y ++# CONFIG_EXPORTFS_BLOCK_OPS is not set ++CONFIG_FILE_LOCKING=y ++CONFIG_MANDATORY_FILE_LOCKING=y ++CONFIG_FS_ENCRYPTION=m ++CONFIG_FSNOTIFY=y ++CONFIG_DNOTIFY=y ++CONFIG_INOTIFY_USER=y ++CONFIG_FANOTIFY=y ++CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y ++CONFIG_QUOTA=y ++CONFIG_QUOTA_NETLINK_INTERFACE=y ++# CONFIG_PRINT_QUOTA_WARNING is not set ++# CONFIG_QUOTA_DEBUG is not set ++CONFIG_QUOTA_TREE=m ++CONFIG_QFMT_V1=m ++CONFIG_QFMT_V2=m ++CONFIG_QUOTACTL=y ++CONFIG_AUTOFS4_FS=m ++CONFIG_AUTOFS_FS=m ++CONFIG_FUSE_FS=y ++CONFIG_CUSE=m ++CONFIG_OVERLAY_FS=m ++# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set ++CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y ++# CONFIG_OVERLAY_FS_INDEX is not set ++# CONFIG_OVERLAY_FS_XINO_AUTO is not set ++# CONFIG_OVERLAY_FS_METACOPY is not set ++ ++# ++# Caches ++# ++CONFIG_FSCACHE=m ++CONFIG_FSCACHE_STATS=y ++# CONFIG_FSCACHE_HISTOGRAM is not set ++# CONFIG_FSCACHE_DEBUG is not set ++# CONFIG_FSCACHE_OBJECT_LIST is not set ++CONFIG_CACHEFILES=m ++# CONFIG_CACHEFILES_DEBUG is not set ++# CONFIG_CACHEFILES_HISTOGRAM is not set ++ ++# ++# CD-ROM/DVD Filesystems ++# ++CONFIG_ISO9660_FS=m ++CONFIG_JOLIET=y ++CONFIG_ZISOFS=y ++CONFIG_UDF_FS=m ++ ++# ++# DOS/FAT/NT Filesystems ++# ++CONFIG_FAT_FS=y ++CONFIG_MSDOS_FS=m ++CONFIG_VFAT_FS=y ++CONFIG_FAT_DEFAULT_CODEPAGE=437 ++CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" ++# CONFIG_FAT_DEFAULT_UTF8 is not set ++CONFIG_NTFS_FS=m ++# CONFIG_NTFS_DEBUG is not set ++# CONFIG_NTFS_RW is not set ++ ++# ++# Pseudo filesystems ++# ++CONFIG_PROC_FS=y ++CONFIG_PROC_KCORE=y ++CONFIG_PROC_VMCORE=y ++# CONFIG_PROC_VMCORE_DEVICE_DUMP is not set ++CONFIG_PROC_SYSCTL=y ++CONFIG_PROC_PAGE_MONITOR=y ++CONFIG_PROC_CHILDREN=y ++CONFIG_KERNFS=y ++CONFIG_SYSFS=y ++CONFIG_TMPFS=y ++CONFIG_TMPFS_POSIX_ACL=y ++CONFIG_TMPFS_XATTR=y ++CONFIG_HUGETLBFS=y ++CONFIG_HUGETLB_PAGE=y ++CONFIG_MEMFD_CREATE=y ++CONFIG_ARCH_HAS_GIGANTIC_PAGE=y ++CONFIG_CONFIGFS_FS=m ++CONFIG_MISC_FILESYSTEMS=y ++# CONFIG_ORANGEFS_FS is not set ++CONFIG_ADFS_FS=m ++# CONFIG_ADFS_FS_RW is not set ++CONFIG_AFFS_FS=m ++CONFIG_ECRYPT_FS=y ++CONFIG_ECRYPT_FS_MESSAGING=y ++CONFIG_HFS_FS=m ++CONFIG_HFSPLUS_FS=m ++CONFIG_BEFS_FS=m ++# CONFIG_BEFS_DEBUG is not set ++CONFIG_BFS_FS=m ++CONFIG_EFS_FS=m ++CONFIG_JFFS2_FS=m ++CONFIG_JFFS2_FS_DEBUG=0 ++CONFIG_JFFS2_FS_WRITEBUFFER=y ++# CONFIG_JFFS2_FS_WBUF_VERIFY is not set ++# CONFIG_JFFS2_SUMMARY is not set ++CONFIG_JFFS2_FS_XATTR=y ++CONFIG_JFFS2_FS_POSIX_ACL=y ++CONFIG_JFFS2_FS_SECURITY=y ++CONFIG_JFFS2_COMPRESSION_OPTIONS=y ++CONFIG_JFFS2_ZLIB=y ++CONFIG_JFFS2_LZO=y ++CONFIG_JFFS2_RTIME=y ++# CONFIG_JFFS2_RUBIN is not set ++# CONFIG_JFFS2_CMODE_NONE is not set ++# CONFIG_JFFS2_CMODE_PRIORITY is not set ++# CONFIG_JFFS2_CMODE_SIZE is not set ++CONFIG_JFFS2_CMODE_FAVOURLZO=y ++CONFIG_UBIFS_FS=m ++# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set ++CONFIG_UBIFS_FS_LZO=y ++CONFIG_UBIFS_FS_ZLIB=y ++CONFIG_UBIFS_ATIME_SUPPORT=y ++CONFIG_UBIFS_FS_XATTR=y ++# CONFIG_UBIFS_FS_ENCRYPTION is not set ++CONFIG_UBIFS_FS_SECURITY=y ++# CONFIG_UBIFS_FS_AUTHENTICATION is not set ++CONFIG_CRAMFS=m ++CONFIG_CRAMFS_BLOCKDEV=y ++# CONFIG_CRAMFS_MTD is not set ++CONFIG_SQUASHFS=m ++# CONFIG_SQUASHFS_FILE_CACHE is not set ++CONFIG_SQUASHFS_FILE_DIRECT=y ++# CONFIG_SQUASHFS_DECOMP_SINGLE is not set ++# CONFIG_SQUASHFS_DECOMP_MULTI is not set ++CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y ++CONFIG_SQUASHFS_XATTR=y ++CONFIG_SQUASHFS_ZLIB=y ++CONFIG_SQUASHFS_LZ4=y ++CONFIG_SQUASHFS_LZO=y ++CONFIG_SQUASHFS_XZ=y ++# CONFIG_SQUASHFS_ZSTD is not set ++# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set ++# CONFIG_SQUASHFS_EMBEDDED is not set ++CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 ++CONFIG_VXFS_FS=m ++CONFIG_MINIX_FS=m ++CONFIG_OMFS_FS=m ++CONFIG_HPFS_FS=m ++CONFIG_QNX4FS_FS=m ++CONFIG_QNX6FS_FS=m ++# CONFIG_QNX6FS_DEBUG is not set ++CONFIG_ROMFS_FS=m ++CONFIG_ROMFS_BACKED_BY_BLOCK=y ++# CONFIG_ROMFS_BACKED_BY_MTD is not set ++# CONFIG_ROMFS_BACKED_BY_BOTH is not set ++CONFIG_ROMFS_ON_BLOCK=y ++CONFIG_PSTORE=y ++CONFIG_PSTORE_DEFLATE_COMPRESS=y ++# CONFIG_PSTORE_LZO_COMPRESS is not set ++# CONFIG_PSTORE_LZ4_COMPRESS is not set ++# CONFIG_PSTORE_LZ4HC_COMPRESS is not set ++# CONFIG_PSTORE_842_COMPRESS is not set ++# CONFIG_PSTORE_ZSTD_COMPRESS is not set ++CONFIG_PSTORE_COMPRESS=y ++CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y ++CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" ++# CONFIG_PSTORE_CONSOLE is not set ++# CONFIG_PSTORE_PMSG is not set ++# CONFIG_PSTORE_FTRACE is not set ++CONFIG_PSTORE_RAM=m ++CONFIG_SYSV_FS=m ++CONFIG_UFS_FS=m ++# CONFIG_UFS_FS_WRITE is not set ++# CONFIG_UFS_DEBUG is not set ++CONFIG_EXOFS_FS=m ++# CONFIG_EXOFS_DEBUG is not set ++CONFIG_ORE=m ++CONFIG_NETWORK_FILESYSTEMS=y ++CONFIG_NFS_FS=m ++CONFIG_NFS_V2=m ++CONFIG_NFS_V3=m ++CONFIG_NFS_V3_ACL=y ++CONFIG_NFS_V4=m ++CONFIG_NFS_SWAP=y ++CONFIG_NFS_V4_1=y ++CONFIG_NFS_V4_2=y ++CONFIG_PNFS_FILE_LAYOUT=m ++CONFIG_PNFS_BLOCK=m ++CONFIG_PNFS_FLEXFILE_LAYOUT=m ++CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" ++CONFIG_NFS_V4_1_MIGRATION=y ++CONFIG_NFS_V4_SECURITY_LABEL=y ++CONFIG_NFS_FSCACHE=y ++# CONFIG_NFS_USE_LEGACY_DNS is not set ++CONFIG_NFS_USE_KERNEL_DNS=y ++CONFIG_NFS_DEBUG=y ++CONFIG_NFSD=m ++CONFIG_NFSD_V2_ACL=y ++CONFIG_NFSD_V3=y ++CONFIG_NFSD_V3_ACL=y ++CONFIG_NFSD_V4=y ++# CONFIG_NFSD_BLOCKLAYOUT is not set ++# CONFIG_NFSD_SCSILAYOUT is not set ++# CONFIG_NFSD_FLEXFILELAYOUT is not set ++CONFIG_NFSD_V4_SECURITY_LABEL=y ++# CONFIG_NFSD_FAULT_INJECTION is not set ++CONFIG_GRACE_PERIOD=m ++CONFIG_LOCKD=m ++CONFIG_LOCKD_V4=y ++CONFIG_NFS_ACL_SUPPORT=m ++CONFIG_NFS_COMMON=y ++CONFIG_SUNRPC=m ++CONFIG_SUNRPC_GSS=m ++CONFIG_SUNRPC_BACKCHANNEL=y ++CONFIG_SUNRPC_SWAP=y ++CONFIG_RPCSEC_GSS_KRB5=m ++CONFIG_SUNRPC_DEBUG=y ++CONFIG_SUNRPC_XPRT_RDMA=m ++CONFIG_CEPH_FS=m ++CONFIG_CEPH_FSCACHE=y ++CONFIG_CEPH_FS_POSIX_ACL=y ++CONFIG_CIFS=m ++# CONFIG_CIFS_STATS2 is not set ++CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y ++CONFIG_CIFS_WEAK_PW_HASH=y ++CONFIG_CIFS_UPCALL=y ++CONFIG_CIFS_XATTR=y ++CONFIG_CIFS_POSIX=y ++CONFIG_CIFS_ACL=y ++CONFIG_CIFS_DEBUG=y ++# CONFIG_CIFS_DEBUG2 is not set ++# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set ++CONFIG_CIFS_DFS_UPCALL=y ++# CONFIG_CIFS_SMB_DIRECT is not set ++CONFIG_CIFS_FSCACHE=y ++CONFIG_CODA_FS=m ++CONFIG_AFS_FS=m ++# CONFIG_AFS_DEBUG is not set ++CONFIG_AFS_FSCACHE=y ++# CONFIG_AFS_DEBUG_CURSOR is not set ++CONFIG_9P_FS=m ++CONFIG_9P_FSCACHE=y ++CONFIG_9P_FS_POSIX_ACL=y ++CONFIG_9P_FS_SECURITY=y ++CONFIG_NLS=y ++CONFIG_NLS_DEFAULT="utf8" ++CONFIG_NLS_CODEPAGE_437=y ++CONFIG_NLS_CODEPAGE_737=m ++CONFIG_NLS_CODEPAGE_775=m ++CONFIG_NLS_CODEPAGE_850=m ++CONFIG_NLS_CODEPAGE_852=m ++CONFIG_NLS_CODEPAGE_855=m ++CONFIG_NLS_CODEPAGE_857=m ++CONFIG_NLS_CODEPAGE_860=m ++CONFIG_NLS_CODEPAGE_861=m ++CONFIG_NLS_CODEPAGE_862=m ++CONFIG_NLS_CODEPAGE_863=m ++CONFIG_NLS_CODEPAGE_864=m ++CONFIG_NLS_CODEPAGE_865=m ++CONFIG_NLS_CODEPAGE_866=m ++CONFIG_NLS_CODEPAGE_869=m ++CONFIG_NLS_CODEPAGE_936=m ++CONFIG_NLS_CODEPAGE_950=m ++CONFIG_NLS_CODEPAGE_932=m ++CONFIG_NLS_CODEPAGE_949=m ++CONFIG_NLS_CODEPAGE_874=m ++CONFIG_NLS_ISO8859_8=m ++CONFIG_NLS_CODEPAGE_1250=m ++CONFIG_NLS_CODEPAGE_1251=m ++CONFIG_NLS_ASCII=m ++CONFIG_NLS_ISO8859_1=m ++CONFIG_NLS_ISO8859_2=m ++CONFIG_NLS_ISO8859_3=m ++CONFIG_NLS_ISO8859_4=m ++CONFIG_NLS_ISO8859_5=m ++CONFIG_NLS_ISO8859_6=m ++CONFIG_NLS_ISO8859_7=m ++CONFIG_NLS_ISO8859_9=m ++CONFIG_NLS_ISO8859_13=m ++CONFIG_NLS_ISO8859_14=m ++CONFIG_NLS_ISO8859_15=m ++CONFIG_NLS_KOI8_R=m ++CONFIG_NLS_KOI8_U=m ++CONFIG_NLS_MAC_ROMAN=m ++CONFIG_NLS_MAC_CELTIC=m ++CONFIG_NLS_MAC_CENTEURO=m ++CONFIG_NLS_MAC_CROATIAN=m ++CONFIG_NLS_MAC_CYRILLIC=m ++CONFIG_NLS_MAC_GAELIC=m ++CONFIG_NLS_MAC_GREEK=m ++CONFIG_NLS_MAC_ICELAND=m ++CONFIG_NLS_MAC_INUIT=m ++CONFIG_NLS_MAC_ROMANIAN=m ++CONFIG_NLS_MAC_TURKISH=m ++CONFIG_NLS_UTF8=m ++CONFIG_DLM=m ++# CONFIG_DLM_DEBUG is not set ++ ++# ++# Security options ++# ++CONFIG_KEYS=y ++CONFIG_KEYS_COMPAT=y ++CONFIG_PERSISTENT_KEYRINGS=y ++CONFIG_BIG_KEYS=y ++CONFIG_TRUSTED_KEYS=y ++CONFIG_ENCRYPTED_KEYS=y ++# CONFIG_KEY_DH_OPERATIONS is not set ++# CONFIG_SECURITY_DMESG_RESTRICT is not set ++CONFIG_SECURITY=y ++CONFIG_SECURITY_WRITABLE_HOOKS=y ++CONFIG_SECURITYFS=y ++CONFIG_SECURITY_NETWORK=y ++# CONFIG_SECURITY_INFINIBAND is not set ++CONFIG_SECURITY_NETWORK_XFRM=y ++CONFIG_SECURITY_PATH=y ++CONFIG_LSM_MMAP_MIN_ADDR=0 ++CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y ++# CONFIG_HARDENED_USERCOPY is not set ++# CONFIG_FORTIFY_SOURCE is not set ++# CONFIG_STATIC_USERMODEHELPER is not set ++CONFIG_SECURITY_SELINUX=y ++CONFIG_SECURITY_SELINUX_BOOTPARAM=y ++CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=0 ++CONFIG_SECURITY_SELINUX_DISABLE=y ++CONFIG_SECURITY_SELINUX_DEVELOP=y ++CONFIG_SECURITY_SELINUX_AVC_STATS=y ++CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 ++CONFIG_SECURITY_SMACK=y ++# CONFIG_SECURITY_SMACK_BRINGUP is not set ++CONFIG_SECURITY_SMACK_NETFILTER=y ++# CONFIG_SECURITY_SMACK_APPEND_SIGNALS is not set ++CONFIG_SECURITY_TOMOYO=y ++CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 ++CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 ++# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set ++CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" ++CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" ++CONFIG_SECURITY_APPARMOR=y ++CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 ++CONFIG_SECURITY_APPARMOR_HASH=y ++CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y ++# CONFIG_SECURITY_APPARMOR_DEBUG is not set ++# CONFIG_SECURITY_LOADPIN is not set ++CONFIG_SECURITY_YAMA=y ++CONFIG_INTEGRITY=y ++CONFIG_INTEGRITY_SIGNATURE=y ++CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y ++CONFIG_INTEGRITY_TRUSTED_KEYRING=y ++CONFIG_INTEGRITY_AUDIT=y ++CONFIG_IMA=y ++CONFIG_IMA_MEASURE_PCR_IDX=10 ++CONFIG_IMA_LSM_RULES=y ++# CONFIG_IMA_TEMPLATE is not set ++CONFIG_IMA_NG_TEMPLATE=y ++# CONFIG_IMA_SIG_TEMPLATE is not set ++CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" ++CONFIG_IMA_DEFAULT_HASH_SHA1=y ++# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set ++# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set ++CONFIG_IMA_DEFAULT_HASH="sha1" ++# CONFIG_IMA_WRITE_POLICY is not set ++# CONFIG_IMA_READ_POLICY is not set ++CONFIG_IMA_APPRAISE=y ++# CONFIG_IMA_ARCH_POLICY is not set ++# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set ++CONFIG_IMA_APPRAISE_BOOTPARAM=y ++CONFIG_IMA_TRUSTED_KEYRING=y ++# CONFIG_IMA_BLACKLIST_KEYRING is not set ++# CONFIG_IMA_LOAD_X509 is not set ++CONFIG_EVM=y ++CONFIG_EVM_ATTR_FSUUID=y ++CONFIG_EVM_EXTRA_SMACK_XATTRS=y ++# CONFIG_EVM_ADD_XATTRS is not set ++# CONFIG_EVM_LOAD_X509 is not set ++# CONFIG_DEFAULT_SECURITY_SELINUX is not set ++# CONFIG_DEFAULT_SECURITY_SMACK is not set ++# CONFIG_DEFAULT_SECURITY_TOMOYO is not set ++CONFIG_DEFAULT_SECURITY_APPARMOR=y ++# CONFIG_DEFAULT_SECURITY_DAC is not set ++CONFIG_DEFAULT_SECURITY="apparmor" ++CONFIG_XOR_BLOCKS=m ++CONFIG_ASYNC_CORE=m ++CONFIG_ASYNC_MEMCPY=m ++CONFIG_ASYNC_XOR=m ++CONFIG_ASYNC_PQ=m ++CONFIG_ASYNC_RAID6_RECOV=m ++CONFIG_CRYPTO=y ++ ++# ++# Crypto core or helper ++# ++CONFIG_CRYPTO_ALGAPI=y ++CONFIG_CRYPTO_ALGAPI2=y ++CONFIG_CRYPTO_AEAD=y ++CONFIG_CRYPTO_AEAD2=y ++CONFIG_CRYPTO_BLKCIPHER=y ++CONFIG_CRYPTO_BLKCIPHER2=y ++CONFIG_CRYPTO_HASH=y ++CONFIG_CRYPTO_HASH2=y ++CONFIG_CRYPTO_RNG=y ++CONFIG_CRYPTO_RNG2=y ++CONFIG_CRYPTO_RNG_DEFAULT=y ++CONFIG_CRYPTO_AKCIPHER2=y ++CONFIG_CRYPTO_AKCIPHER=y ++CONFIG_CRYPTO_KPP2=y ++CONFIG_CRYPTO_KPP=m ++CONFIG_CRYPTO_ACOMP2=y ++CONFIG_CRYPTO_RSA=y ++# CONFIG_CRYPTO_DH is not set ++CONFIG_CRYPTO_ECDH=m ++CONFIG_CRYPTO_MANAGER=y ++CONFIG_CRYPTO_MANAGER2=y ++CONFIG_CRYPTO_USER=m ++CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y ++CONFIG_CRYPTO_GF128MUL=y ++CONFIG_CRYPTO_NULL=y ++CONFIG_CRYPTO_NULL2=y ++CONFIG_CRYPTO_PCRYPT=m ++CONFIG_CRYPTO_WORKQUEUE=y ++CONFIG_CRYPTO_CRYPTD=m ++CONFIG_CRYPTO_AUTHENC=m ++CONFIG_CRYPTO_TEST=m ++CONFIG_CRYPTO_ENGINE=m ++ ++# ++# Authenticated Encryption with Associated Data ++# ++CONFIG_CRYPTO_CCM=m ++CONFIG_CRYPTO_GCM=y ++CONFIG_CRYPTO_CHACHA20POLY1305=m ++# CONFIG_CRYPTO_AEGIS128 is not set ++# CONFIG_CRYPTO_AEGIS128L is not set ++# CONFIG_CRYPTO_AEGIS256 is not set ++# CONFIG_CRYPTO_MORUS640 is not set ++# CONFIG_CRYPTO_MORUS1280 is not set ++CONFIG_CRYPTO_SEQIV=y ++CONFIG_CRYPTO_ECHAINIV=m ++ ++# ++# Block modes ++# ++CONFIG_CRYPTO_CBC=y ++# CONFIG_CRYPTO_CFB is not set ++CONFIG_CRYPTO_CTR=y ++CONFIG_CRYPTO_CTS=m ++CONFIG_CRYPTO_ECB=y ++CONFIG_CRYPTO_LRW=m ++# CONFIG_CRYPTO_OFB is not set ++CONFIG_CRYPTO_PCBC=m ++CONFIG_CRYPTO_XTS=m ++CONFIG_CRYPTO_KEYWRAP=m ++# CONFIG_CRYPTO_ADIANTUM is not set ++ ++# ++# Hash modes ++# ++CONFIG_CRYPTO_CMAC=m ++CONFIG_CRYPTO_HMAC=y ++CONFIG_CRYPTO_XCBC=m ++CONFIG_CRYPTO_VMAC=m ++ ++# ++# Digest ++# ++CONFIG_CRYPTO_CRC32C=y ++# CONFIG_CRYPTO_CRC32C_VPMSUM is not set ++CONFIG_CRYPTO_CRC32=m ++CONFIG_CRYPTO_CRCT10DIF=y ++# CONFIG_CRYPTO_CRCT10DIF_VPMSUM is not set ++CONFIG_CRYPTO_GHASH=y ++CONFIG_CRYPTO_POLY1305=m ++CONFIG_CRYPTO_MD4=m ++CONFIG_CRYPTO_MD5=y ++CONFIG_CRYPTO_MD5_PPC=m ++CONFIG_CRYPTO_MICHAEL_MIC=m ++CONFIG_CRYPTO_RMD128=m ++CONFIG_CRYPTO_RMD160=m ++CONFIG_CRYPTO_RMD256=m ++CONFIG_CRYPTO_RMD320=m ++CONFIG_CRYPTO_SHA1=y ++CONFIG_CRYPTO_SHA1_PPC=m ++CONFIG_CRYPTO_SHA256=y ++CONFIG_CRYPTO_SHA512=y ++# CONFIG_CRYPTO_SHA3 is not set ++# CONFIG_CRYPTO_SM3 is not set ++# CONFIG_CRYPTO_STREEBOG is not set ++CONFIG_CRYPTO_TGR192=m ++CONFIG_CRYPTO_WP512=m ++ ++# ++# Ciphers ++# ++CONFIG_CRYPTO_AES=y ++# CONFIG_CRYPTO_AES_TI is not set ++CONFIG_CRYPTO_ANUBIS=m ++CONFIG_CRYPTO_ARC4=m ++CONFIG_CRYPTO_BLOWFISH=m ++CONFIG_CRYPTO_BLOWFISH_COMMON=m ++CONFIG_CRYPTO_CAMELLIA=m ++CONFIG_CRYPTO_CAST_COMMON=m ++CONFIG_CRYPTO_CAST5=m ++CONFIG_CRYPTO_CAST6=m ++CONFIG_CRYPTO_DES=m ++CONFIG_CRYPTO_FCRYPT=m ++CONFIG_CRYPTO_KHAZAD=m ++CONFIG_CRYPTO_SALSA20=m ++CONFIG_CRYPTO_CHACHA20=m ++CONFIG_CRYPTO_SEED=m ++CONFIG_CRYPTO_SERPENT=m ++# CONFIG_CRYPTO_SM4 is not set ++CONFIG_CRYPTO_TEA=m ++CONFIG_CRYPTO_TWOFISH=m ++CONFIG_CRYPTO_TWOFISH_COMMON=m ++ ++# ++# Compression ++# ++CONFIG_CRYPTO_DEFLATE=y ++CONFIG_CRYPTO_LZO=y ++CONFIG_CRYPTO_842=m ++CONFIG_CRYPTO_LZ4=m ++CONFIG_CRYPTO_LZ4HC=m ++# CONFIG_CRYPTO_ZSTD is not set ++ ++# ++# Random Number Generation ++# ++CONFIG_CRYPTO_ANSI_CPRNG=m ++CONFIG_CRYPTO_DRBG_MENU=y ++CONFIG_CRYPTO_DRBG_HMAC=y ++CONFIG_CRYPTO_DRBG_HASH=y ++CONFIG_CRYPTO_DRBG_CTR=y ++CONFIG_CRYPTO_DRBG=y ++CONFIG_CRYPTO_JITTERENTROPY=y ++CONFIG_CRYPTO_USER_API=m ++CONFIG_CRYPTO_USER_API_HASH=m ++CONFIG_CRYPTO_USER_API_SKCIPHER=m ++CONFIG_CRYPTO_USER_API_RNG=m ++CONFIG_CRYPTO_USER_API_AEAD=m ++# CONFIG_CRYPTO_STATS is not set ++CONFIG_CRYPTO_HASH_INFO=y ++CONFIG_CRYPTO_HW=y ++CONFIG_CRYPTO_DEV_NX=y ++CONFIG_CRYPTO_DEV_NX_COMPRESS=m ++CONFIG_CRYPTO_DEV_NX_COMPRESS_PSERIES=m ++CONFIG_CRYPTO_DEV_NX_COMPRESS_POWERNV=m ++# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set ++CONFIG_CRYPTO_DEV_VMX=y ++CONFIG_CRYPTO_DEV_VMX_ENCRYPT=m ++# CONFIG_CRYPTO_DEV_CHELSIO is not set ++CONFIG_CRYPTO_DEV_VIRTIO=m ++# CONFIG_CRYPTO_DEV_CCREE is not set ++CONFIG_ASYMMETRIC_KEY_TYPE=y ++CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y ++# CONFIG_ASYMMETRIC_TPM_KEY_SUBTYPE is not set ++CONFIG_X509_CERTIFICATE_PARSER=y ++# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set ++CONFIG_PKCS7_MESSAGE_PARSER=y ++CONFIG_PKCS7_TEST_KEY=m ++CONFIG_SIGNED_PE_FILE_VERIFICATION=y ++ ++# ++# Certificates for signature checking ++# ++CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" ++CONFIG_SYSTEM_TRUSTED_KEYRING=y ++CONFIG_SYSTEM_TRUSTED_KEYS="" ++# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set ++# CONFIG_SECONDARY_TRUSTED_KEYRING is not set ++# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set ++CONFIG_BINARY_PRINTF=y ++ ++# ++# Library routines ++# ++CONFIG_RAID6_PQ=m ++CONFIG_RAID6_PQ_BENCHMARK=y ++CONFIG_BITREVERSE=y ++CONFIG_RATIONAL=y ++CONFIG_GENERIC_STRNCPY_FROM_USER=y ++CONFIG_GENERIC_STRNLEN_USER=y ++CONFIG_GENERIC_NET_UTILS=y ++CONFIG_GENERIC_PCI_IOMAP=y ++CONFIG_GENERIC_IOMAP=y ++CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y ++CONFIG_ARCH_HAS_FAST_MULTIPLIER=y ++CONFIG_CRC_CCITT=y ++CONFIG_CRC16=y ++CONFIG_CRC_T10DIF=y ++CONFIG_CRC_ITU_T=m ++CONFIG_CRC32=y ++# CONFIG_CRC32_SELFTEST is not set ++CONFIG_CRC32_SLICEBY8=y ++# CONFIG_CRC32_SLICEBY4 is not set ++# CONFIG_CRC32_SARWATE is not set ++# CONFIG_CRC32_BIT is not set ++CONFIG_CRC64=m ++# CONFIG_CRC4 is not set ++CONFIG_CRC7=m ++CONFIG_LIBCRC32C=m ++CONFIG_CRC8=m ++CONFIG_XXHASH=y ++# CONFIG_RANDOM32_SELFTEST is not set ++CONFIG_842_COMPRESS=m ++CONFIG_842_DECOMPRESS=m ++CONFIG_ZLIB_INFLATE=y ++CONFIG_ZLIB_DEFLATE=y ++CONFIG_LZO_COMPRESS=y ++CONFIG_LZO_DECOMPRESS=y ++CONFIG_LZ4_COMPRESS=m ++CONFIG_LZ4HC_COMPRESS=m ++CONFIG_LZ4_DECOMPRESS=y ++CONFIG_ZSTD_COMPRESS=m ++CONFIG_ZSTD_DECOMPRESS=m ++CONFIG_XZ_DEC=y ++CONFIG_XZ_DEC_X86=y ++CONFIG_XZ_DEC_POWERPC=y ++CONFIG_XZ_DEC_IA64=y ++CONFIG_XZ_DEC_ARM=y ++CONFIG_XZ_DEC_ARMTHUMB=y ++CONFIG_XZ_DEC_SPARC=y ++CONFIG_XZ_DEC_BCJ=y ++CONFIG_XZ_DEC_TEST=m ++CONFIG_DECOMPRESS_GZIP=y ++CONFIG_DECOMPRESS_BZIP2=y ++CONFIG_DECOMPRESS_LZMA=y ++CONFIG_DECOMPRESS_XZ=y ++CONFIG_DECOMPRESS_LZO=y ++CONFIG_DECOMPRESS_LZ4=y ++CONFIG_GENERIC_ALLOCATOR=y ++CONFIG_REED_SOLOMON=m ++CONFIG_REED_SOLOMON_ENC8=y ++CONFIG_REED_SOLOMON_DEC8=y ++CONFIG_REED_SOLOMON_DEC16=y ++CONFIG_BCH=m ++CONFIG_BCH_CONST_PARAMS=y ++CONFIG_TEXTSEARCH=y ++CONFIG_TEXTSEARCH_KMP=m ++CONFIG_TEXTSEARCH_BM=m ++CONFIG_TEXTSEARCH_FSM=m ++CONFIG_BTREE=y ++CONFIG_INTERVAL_TREE=y ++CONFIG_XARRAY_MULTI=y ++CONFIG_ASSOCIATIVE_ARRAY=y ++CONFIG_HAS_IOMEM=y ++CONFIG_HAS_IOPORT_MAP=y ++CONFIG_HAS_DMA=y ++CONFIG_NEED_SG_DMA_LENGTH=y ++CONFIG_NEED_DMA_MAP_STATE=y ++CONFIG_ARCH_DMA_ADDR_T_64BIT=y ++CONFIG_SGL_ALLOC=y ++CONFIG_IOMMU_HELPER=y ++CONFIG_CHECK_SIGNATURE=y ++CONFIG_CPU_RMAP=y ++CONFIG_DQL=y ++CONFIG_GLOB=y ++# CONFIG_GLOB_SELFTEST is not set ++CONFIG_NLATTR=y ++CONFIG_LRU_CACHE=m ++CONFIG_CLZ_TAB=y ++CONFIG_CORDIC=m ++CONFIG_DDR=y ++CONFIG_IRQ_POLL=y ++CONFIG_MPILIB=y ++CONFIG_SIGNATURE=y ++CONFIG_LIBFDT=y ++CONFIG_OID_REGISTRY=y ++CONFIG_FONT_SUPPORT=y ++# CONFIG_FONTS is not set ++CONFIG_FONT_8x8=y ++CONFIG_FONT_8x16=y ++CONFIG_SG_POOL=y ++CONFIG_ARCH_HAS_PMEM_API=y ++CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y ++CONFIG_SBITMAP=y ++# CONFIG_STRING_SELFTEST is not set ++ ++# ++# Kernel hacking ++# ++ ++# ++# printk and dmesg options ++# ++CONFIG_PRINTK_TIME=y ++CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 ++CONFIG_CONSOLE_LOGLEVEL_QUIET=4 ++CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 ++CONFIG_DYNAMIC_DEBUG=y ++ ++# ++# Compile-time checks and compiler options ++# ++CONFIG_DEBUG_INFO=y ++# CONFIG_DEBUG_INFO_REDUCED is not set ++# CONFIG_DEBUG_INFO_SPLIT is not set ++CONFIG_DEBUG_INFO_DWARF4=y ++CONFIG_GDB_SCRIPTS=y ++# CONFIG_ENABLE_MUST_CHECK is not set ++CONFIG_FRAME_WARN=2048 ++# CONFIG_STRIP_ASM_SYMS is not set ++# CONFIG_READABLE_ASM is not set ++CONFIG_UNUSED_SYMBOLS=y ++# CONFIG_PAGE_OWNER is not set ++CONFIG_DEBUG_FS=y ++# CONFIG_HEADERS_CHECK is not set ++# CONFIG_DEBUG_SECTION_MISMATCH is not set ++CONFIG_SECTION_MISMATCH_WARN_ONLY=y ++# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set ++CONFIG_MAGIC_SYSRQ=y ++CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 ++CONFIG_MAGIC_SYSRQ_SERIAL=y ++CONFIG_DEBUG_KERNEL=y ++ ++# ++# Memory Debugging ++# ++# CONFIG_PAGE_EXTENSION is not set ++# CONFIG_DEBUG_PAGEALLOC is not set ++# CONFIG_PAGE_POISONING is not set ++# CONFIG_DEBUG_PAGE_REF is not set ++# CONFIG_DEBUG_OBJECTS is not set ++# CONFIG_SLUB_DEBUG_ON is not set ++# CONFIG_SLUB_STATS is not set ++CONFIG_HAVE_DEBUG_KMEMLEAK=y ++# CONFIG_DEBUG_KMEMLEAK is not set ++# CONFIG_DEBUG_STACK_USAGE is not set ++# CONFIG_DEBUG_VM is not set ++CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y ++# CONFIG_DEBUG_VIRTUAL is not set ++# CONFIG_DEBUG_MEMORY_INIT is not set ++CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m ++# CONFIG_DEBUG_PER_CPU_MAPS is not set ++CONFIG_HAVE_DEBUG_STACKOVERFLOW=y ++# CONFIG_DEBUG_STACKOVERFLOW is not set ++CONFIG_CC_HAS_KASAN_GENERIC=y ++CONFIG_CC_HAS_SANCOV_TRACE_PC=y ++# CONFIG_DEBUG_SHIRQ is not set ++ ++# ++# Debug Lockups and Hangs ++# ++CONFIG_LOCKUP_DETECTOR=y ++# CONFIG_SOFTLOCKUP_DETECTOR is not set ++CONFIG_HARDLOCKUP_DETECTOR=y ++# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set ++CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 ++CONFIG_DETECT_HUNG_TASK=y ++CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 ++# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set ++CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 ++# CONFIG_WQ_WATCHDOG is not set ++# CONFIG_PANIC_ON_OOPS is not set ++CONFIG_PANIC_ON_OOPS_VALUE=0 ++CONFIG_SCHED_DEBUG=y ++CONFIG_SCHED_INFO=y ++CONFIG_SCHEDSTATS=y ++CONFIG_SCHED_STACK_END_CHECK=y ++# CONFIG_DEBUG_TIMEKEEPING is not set ++ ++# ++# Lock Debugging (spinlocks, mutexes, etc...) ++# ++CONFIG_LOCK_DEBUGGING_SUPPORT=y ++# CONFIG_PROVE_LOCKING is not set ++# CONFIG_LOCK_STAT is not set ++# CONFIG_DEBUG_RT_MUTEXES is not set ++# CONFIG_DEBUG_SPINLOCK is not set ++# CONFIG_DEBUG_MUTEXES is not set ++# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set ++# CONFIG_DEBUG_RWSEMS is not set ++# CONFIG_DEBUG_LOCK_ALLOC is not set ++# CONFIG_DEBUG_ATOMIC_SLEEP is not set ++# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set ++CONFIG_LOCK_TORTURE_TEST=m ++# CONFIG_WW_MUTEX_SELFTEST is not set ++CONFIG_STACKTRACE=y ++# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set ++# CONFIG_DEBUG_KOBJECT is not set ++CONFIG_DEBUG_BUGVERBOSE=y ++# CONFIG_DEBUG_LIST is not set ++# CONFIG_DEBUG_PI_LIST is not set ++# CONFIG_DEBUG_SG is not set ++# CONFIG_DEBUG_NOTIFIERS is not set ++# CONFIG_DEBUG_CREDENTIALS is not set ++ ++# ++# RCU Debugging ++# ++CONFIG_TORTURE_TEST=m ++# CONFIG_RCU_PERF_TEST is not set ++# CONFIG_RCU_TORTURE_TEST is not set ++CONFIG_RCU_CPU_STALL_TIMEOUT=21 ++# CONFIG_RCU_TRACE is not set ++# CONFIG_RCU_EQS_DEBUG is not set ++# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set ++# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set ++# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set ++CONFIG_NOTIFIER_ERROR_INJECTION=m ++CONFIG_PM_NOTIFIER_ERROR_INJECT=m ++# CONFIG_OF_RECONFIG_NOTIFIER_ERROR_INJECT is not set ++# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set ++CONFIG_FUNCTION_ERROR_INJECTION=y ++# CONFIG_FAULT_INJECTION is not set ++# CONFIG_LATENCYTOP is not set ++CONFIG_NOP_TRACER=y ++CONFIG_HAVE_FUNCTION_TRACER=y ++CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y ++CONFIG_HAVE_DYNAMIC_FTRACE=y ++CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y ++CONFIG_HAVE_SYSCALL_TRACEPOINTS=y ++CONFIG_TRACER_MAX_TRACE=y ++CONFIG_TRACE_CLOCK=y ++CONFIG_RING_BUFFER=y ++CONFIG_EVENT_TRACING=y ++CONFIG_CONTEXT_SWITCH_TRACER=y ++CONFIG_RING_BUFFER_ALLOW_SWAP=y ++CONFIG_TRACING=y ++CONFIG_GENERIC_TRACER=y ++CONFIG_TRACING_SUPPORT=y ++CONFIG_FTRACE=y ++CONFIG_FUNCTION_TRACER=y ++CONFIG_FUNCTION_GRAPH_TRACER=y ++# CONFIG_PREEMPTIRQ_EVENTS is not set ++# CONFIG_IRQSOFF_TRACER is not set ++CONFIG_SCHED_TRACER=y ++# CONFIG_HWLAT_TRACER is not set ++CONFIG_FTRACE_SYSCALLS=y ++CONFIG_TRACER_SNAPSHOT=y ++# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set ++CONFIG_BRANCH_PROFILE_NONE=y ++# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set ++# CONFIG_PROFILE_ALL_BRANCHES is not set ++CONFIG_STACK_TRACER=y ++CONFIG_BLK_DEV_IO_TRACE=y ++CONFIG_KPROBE_EVENTS=y ++CONFIG_UPROBE_EVENTS=y ++CONFIG_BPF_EVENTS=y ++CONFIG_DYNAMIC_EVENTS=y ++CONFIG_PROBE_EVENTS=y ++CONFIG_DYNAMIC_FTRACE=y ++CONFIG_FUNCTION_PROFILER=y ++# CONFIG_BPF_KPROBE_OVERRIDE is not set ++CONFIG_FTRACE_MCOUNT_RECORD=y ++# CONFIG_FTRACE_STARTUP_TEST is not set ++# CONFIG_HIST_TRIGGERS is not set ++# CONFIG_TRACEPOINT_BENCHMARK is not set ++# CONFIG_RING_BUFFER_BENCHMARK is not set ++# CONFIG_RING_BUFFER_STARTUP_TEST is not set ++# CONFIG_PREEMPTIRQ_DELAY_TEST is not set ++# CONFIG_TRACE_EVAL_MAP_FILE is not set ++CONFIG_TRACING_EVENTS_GPIO=y ++# CONFIG_DMA_API_DEBUG is not set ++CONFIG_RUNTIME_TESTING_MENU=y ++# CONFIG_LKDTM is not set ++# CONFIG_TEST_LIST_SORT is not set ++# CONFIG_TEST_SORT is not set ++# CONFIG_KPROBES_SANITY_TEST is not set ++# CONFIG_BACKTRACE_SELF_TEST is not set ++CONFIG_RBTREE_TEST=m ++CONFIG_INTERVAL_TREE_TEST=m ++CONFIG_PERCPU_TEST=m ++# CONFIG_ATOMIC64_SELFTEST is not set ++CONFIG_ASYNC_RAID6_TEST=m ++CONFIG_TEST_HEXDUMP=m ++CONFIG_TEST_STRING_HELPERS=m ++CONFIG_TEST_KSTRTOX=m ++CONFIG_TEST_PRINTF=m ++# CONFIG_TEST_BITMAP is not set ++# CONFIG_TEST_BITFIELD is not set ++# CONFIG_TEST_UUID is not set ++# CONFIG_TEST_XARRAY is not set ++# CONFIG_TEST_OVERFLOW is not set ++# CONFIG_TEST_RHASHTABLE is not set ++# CONFIG_TEST_HASH is not set ++# CONFIG_TEST_IDA is not set ++CONFIG_TEST_LKM=m ++CONFIG_TEST_USER_COPY=m ++CONFIG_TEST_BPF=m ++# CONFIG_FIND_BIT_BENCHMARK is not set ++CONFIG_TEST_FIRMWARE=m ++# CONFIG_TEST_SYSCTL is not set ++CONFIG_TEST_UDELAY=m ++CONFIG_TEST_STATIC_KEYS=m ++# CONFIG_TEST_KMOD is not set ++# CONFIG_TEST_MEMCAT_P is not set ++CONFIG_MEMTEST=y ++# CONFIG_BUG_ON_DATA_CORRUPTION is not set ++# CONFIG_SAMPLES is not set ++CONFIG_HAVE_ARCH_KGDB=y ++CONFIG_KGDB=y ++CONFIG_KGDB_SERIAL_CONSOLE=y ++# CONFIG_KGDB_TESTS is not set ++CONFIG_KGDB_KDB=y ++CONFIG_KDB_DEFAULT_ENABLE=0x1 ++CONFIG_KDB_KEYBOARD=y ++CONFIG_KDB_CONTINUE_CATASTROPHIC=0 ++CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y ++# CONFIG_UBSAN is not set ++CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y ++CONFIG_STRICT_DEVMEM=y ++# CONFIG_IO_STRICT_DEVMEM is not set ++# CONFIG_PPC_DISABLE_WERROR is not set ++CONFIG_PPC_WERROR=y ++CONFIG_PRINT_STACK_DEPTH=64 ++# CONFIG_HCALL_STATS is not set ++# CONFIG_PPC_EMULATED_STATS is not set ++# CONFIG_CODE_PATCHING_SELFTEST is not set ++CONFIG_JUMP_LABEL_FEATURE_CHECKS=y ++# CONFIG_JUMP_LABEL_FEATURE_CHECK_DEBUG is not set ++# CONFIG_FTR_FIXUP_SELFTEST is not set ++# CONFIG_MSI_BITMAP_SELFTEST is not set ++# CONFIG_PPC_IRQ_SOFT_MASK_DEBUG is not set ++CONFIG_XMON=y ++# CONFIG_XMON_DEFAULT is not set ++CONFIG_XMON_DISASSEMBLY=y ++CONFIG_DEBUGGER=y ++# CONFIG_BOOTX_TEXT is not set ++# CONFIG_PPC_EARLY_DEBUG is not set ++# CONFIG_PPC_PTDUMP is not set ++# CONFIG_PPC_FAST_ENDIAN_SWITCH is not set +diff --git a/arch/x86/configs/rock-dbg_defconfig b/arch/x86/configs/rock-dbg_defconfig +new file mode 100644 +index 000000000000..79692f7b2be5 +--- /dev/null ++++ b/arch/x86/configs/rock-dbg_defconfig +@@ -0,0 +1,4367 @@ ++# ++# Automatically generated file; DO NOT EDIT. ++# Linux/x86 5.0.0-rc1 Kernel Configuration ++# ++ ++# ++# Compiler: gcc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0 ++# ++CONFIG_CC_IS_GCC=y ++CONFIG_GCC_VERSION=70300 ++CONFIG_CLANG_VERSION=0 ++CONFIG_CC_HAS_ASM_GOTO=y ++CONFIG_IRQ_WORK=y ++CONFIG_BUILDTIME_EXTABLE_SORT=y ++CONFIG_THREAD_INFO_IN_TASK=y ++ ++# ++# General setup ++# ++CONFIG_INIT_ENV_ARG_LIMIT=32 ++# CONFIG_COMPILE_TEST is not set ++CONFIG_LOCALVERSION="-kfd" ++# CONFIG_LOCALVERSION_AUTO is not set ++CONFIG_BUILD_SALT="" ++CONFIG_HAVE_KERNEL_GZIP=y ++CONFIG_HAVE_KERNEL_BZIP2=y ++CONFIG_HAVE_KERNEL_LZMA=y ++CONFIG_HAVE_KERNEL_XZ=y ++CONFIG_HAVE_KERNEL_LZO=y ++CONFIG_HAVE_KERNEL_LZ4=y ++CONFIG_KERNEL_GZIP=y ++# CONFIG_KERNEL_BZIP2 is not set ++# CONFIG_KERNEL_LZMA is not set ++# CONFIG_KERNEL_XZ is not set ++# CONFIG_KERNEL_LZO is not set ++# CONFIG_KERNEL_LZ4 is not set ++CONFIG_DEFAULT_HOSTNAME="(none)" ++CONFIG_SWAP=y ++CONFIG_SYSVIPC=y ++CONFIG_SYSVIPC_SYSCTL=y ++CONFIG_POSIX_MQUEUE=y ++CONFIG_POSIX_MQUEUE_SYSCTL=y ++CONFIG_CROSS_MEMORY_ATTACH=y ++CONFIG_USELIB=y ++CONFIG_AUDIT=y ++CONFIG_HAVE_ARCH_AUDITSYSCALL=y ++CONFIG_AUDITSYSCALL=y ++ ++# ++# IRQ subsystem ++# ++CONFIG_GENERIC_IRQ_PROBE=y ++CONFIG_GENERIC_IRQ_SHOW=y ++CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y ++CONFIG_GENERIC_PENDING_IRQ=y ++CONFIG_GENERIC_IRQ_MIGRATION=y ++CONFIG_IRQ_DOMAIN=y ++CONFIG_IRQ_DOMAIN_HIERARCHY=y ++CONFIG_GENERIC_MSI_IRQ=y ++CONFIG_GENERIC_MSI_IRQ_DOMAIN=y ++CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y ++CONFIG_GENERIC_IRQ_RESERVATION_MODE=y ++CONFIG_IRQ_FORCED_THREADING=y ++CONFIG_SPARSE_IRQ=y ++# CONFIG_GENERIC_IRQ_DEBUGFS is not set ++CONFIG_CLOCKSOURCE_WATCHDOG=y ++CONFIG_ARCH_CLOCKSOURCE_DATA=y ++CONFIG_ARCH_CLOCKSOURCE_INIT=y ++CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y ++CONFIG_GENERIC_TIME_VSYSCALL=y ++CONFIG_GENERIC_CLOCKEVENTS=y ++CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y ++CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y ++CONFIG_GENERIC_CMOS_UPDATE=y ++ ++# ++# Timers subsystem ++# ++CONFIG_TICK_ONESHOT=y ++CONFIG_NO_HZ_COMMON=y ++# CONFIG_HZ_PERIODIC is not set ++CONFIG_NO_HZ_IDLE=y ++# CONFIG_NO_HZ_FULL is not set ++CONFIG_NO_HZ=y ++CONFIG_HIGH_RES_TIMERS=y ++# CONFIG_PREEMPT_NONE is not set ++CONFIG_PREEMPT_VOLUNTARY=y ++# CONFIG_PREEMPT is not set ++CONFIG_PREEMPT_COUNT=y ++ ++# ++# CPU/Task time and stats accounting ++# ++CONFIG_TICK_CPU_ACCOUNTING=y ++# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set ++# CONFIG_IRQ_TIME_ACCOUNTING is not set ++CONFIG_BSD_PROCESS_ACCT=y ++CONFIG_BSD_PROCESS_ACCT_V3=y ++CONFIG_TASKSTATS=y ++CONFIG_TASK_DELAY_ACCT=y ++CONFIG_TASK_XACCT=y ++CONFIG_TASK_IO_ACCOUNTING=y ++# CONFIG_PSI is not set ++# CONFIG_CPU_ISOLATION is not set ++ ++# ++# RCU Subsystem ++# ++CONFIG_TREE_RCU=y ++# CONFIG_RCU_EXPERT is not set ++CONFIG_SRCU=y ++CONFIG_TREE_SRCU=y ++CONFIG_RCU_STALL_COMMON=y ++CONFIG_RCU_NEED_SEGCBLIST=y ++CONFIG_BUILD_BIN2C=y ++# CONFIG_IKCONFIG is not set ++CONFIG_LOG_BUF_SHIFT=18 ++CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 ++CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 ++CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y ++CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y ++CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y ++CONFIG_ARCH_SUPPORTS_INT128=y ++CONFIG_NUMA_BALANCING=y ++CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y ++CONFIG_CGROUPS=y ++CONFIG_PAGE_COUNTER=y ++CONFIG_MEMCG=y ++CONFIG_MEMCG_SWAP=y ++# CONFIG_MEMCG_SWAP_ENABLED is not set ++CONFIG_MEMCG_KMEM=y ++CONFIG_BLK_CGROUP=y ++# CONFIG_DEBUG_BLK_CGROUP is not set ++CONFIG_CGROUP_WRITEBACK=y ++CONFIG_CGROUP_SCHED=y ++CONFIG_FAIR_GROUP_SCHED=y ++CONFIG_CFS_BANDWIDTH=y ++# CONFIG_RT_GROUP_SCHED is not set ++# CONFIG_CGROUP_PIDS is not set ++# CONFIG_CGROUP_RDMA is not set ++CONFIG_CGROUP_FREEZER=y ++CONFIG_CGROUP_HUGETLB=y ++CONFIG_CPUSETS=y ++CONFIG_PROC_PID_CPUSET=y ++CONFIG_CGROUP_DEVICE=y ++CONFIG_CGROUP_CPUACCT=y ++CONFIG_CGROUP_PERF=y ++# CONFIG_CGROUP_BPF is not set ++# CONFIG_CGROUP_DEBUG is not set ++CONFIG_NAMESPACES=y ++CONFIG_UTS_NS=y ++CONFIG_IPC_NS=y ++CONFIG_USER_NS=y ++CONFIG_PID_NS=y ++CONFIG_NET_NS=y ++CONFIG_CHECKPOINT_RESTORE=y ++CONFIG_SCHED_AUTOGROUP=y ++# CONFIG_SYSFS_DEPRECATED is not set ++CONFIG_RELAY=y ++CONFIG_BLK_DEV_INITRD=y ++CONFIG_INITRAMFS_SOURCE="" ++CONFIG_RD_GZIP=y ++CONFIG_RD_BZIP2=y ++CONFIG_RD_LZMA=y ++CONFIG_RD_XZ=y ++CONFIG_RD_LZO=y ++CONFIG_RD_LZ4=y ++CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y ++# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set ++CONFIG_SYSCTL=y ++CONFIG_ANON_INODES=y ++CONFIG_HAVE_UID16=y ++CONFIG_SYSCTL_EXCEPTION_TRACE=y ++CONFIG_HAVE_PCSPKR_PLATFORM=y ++CONFIG_BPF=y ++CONFIG_EXPERT=y ++CONFIG_UID16=y ++CONFIG_MULTIUSER=y ++CONFIG_SGETMASK_SYSCALL=y ++CONFIG_SYSFS_SYSCALL=y ++CONFIG_SYSCTL_SYSCALL=y ++CONFIG_FHANDLE=y ++CONFIG_POSIX_TIMERS=y ++CONFIG_PRINTK=y ++CONFIG_PRINTK_NMI=y ++CONFIG_BUG=y ++CONFIG_ELF_CORE=y ++CONFIG_PCSPKR_PLATFORM=y ++CONFIG_BASE_FULL=y ++CONFIG_FUTEX=y ++CONFIG_FUTEX_PI=y ++CONFIG_EPOLL=y ++CONFIG_SIGNALFD=y ++CONFIG_TIMERFD=y ++CONFIG_EVENTFD=y ++CONFIG_SHMEM=y ++CONFIG_AIO=y ++CONFIG_ADVISE_SYSCALLS=y ++CONFIG_MEMBARRIER=y ++CONFIG_KALLSYMS=y ++CONFIG_KALLSYMS_ALL=y ++CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y ++CONFIG_KALLSYMS_BASE_RELATIVE=y ++CONFIG_BPF_SYSCALL=y ++# CONFIG_USERFAULTFD is not set ++CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y ++CONFIG_RSEQ=y ++# CONFIG_DEBUG_RSEQ is not set ++# CONFIG_EMBEDDED is not set ++CONFIG_HAVE_PERF_EVENTS=y ++# CONFIG_PC104 is not set ++ ++# ++# Kernel Performance Events And Counters ++# ++CONFIG_PERF_EVENTS=y ++# CONFIG_DEBUG_PERF_USE_VMALLOC is not set ++CONFIG_VM_EVENT_COUNTERS=y ++CONFIG_SLUB_DEBUG=y ++# CONFIG_SLUB_MEMCG_SYSFS_ON is not set ++# CONFIG_COMPAT_BRK is not set ++# CONFIG_SLAB is not set ++CONFIG_SLUB=y ++# CONFIG_SLOB is not set ++CONFIG_SLAB_MERGE_DEFAULT=y ++# CONFIG_SLAB_FREELIST_RANDOM is not set ++# CONFIG_SLAB_FREELIST_HARDENED is not set ++CONFIG_SLUB_CPU_PARTIAL=y ++CONFIG_SYSTEM_DATA_VERIFICATION=y ++CONFIG_PROFILING=y ++CONFIG_TRACEPOINTS=y ++CONFIG_64BIT=y ++CONFIG_X86_64=y ++CONFIG_X86=y ++CONFIG_INSTRUCTION_DECODER=y ++CONFIG_OUTPUT_FORMAT="elf64-x86-64" ++CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" ++CONFIG_LOCKDEP_SUPPORT=y ++CONFIG_STACKTRACE_SUPPORT=y ++CONFIG_MMU=y ++CONFIG_ARCH_MMAP_RND_BITS_MIN=28 ++CONFIG_ARCH_MMAP_RND_BITS_MAX=32 ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 ++CONFIG_GENERIC_ISA_DMA=y ++CONFIG_GENERIC_BUG=y ++CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y ++CONFIG_GENERIC_HWEIGHT=y ++CONFIG_ARCH_MAY_HAVE_PC_FDC=y ++CONFIG_RWSEM_XCHGADD_ALGORITHM=y ++CONFIG_GENERIC_CALIBRATE_DELAY=y ++CONFIG_ARCH_HAS_CPU_RELAX=y ++CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y ++CONFIG_ARCH_HAS_FILTER_PGPROT=y ++CONFIG_HAVE_SETUP_PER_CPU_AREA=y ++CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y ++CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y ++CONFIG_ARCH_HIBERNATION_POSSIBLE=y ++CONFIG_ARCH_SUSPEND_POSSIBLE=y ++CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y ++CONFIG_ARCH_WANT_GENERAL_HUGETLB=y ++CONFIG_ZONE_DMA32=y ++CONFIG_AUDIT_ARCH=y ++CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y ++CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y ++CONFIG_X86_64_SMP=y ++CONFIG_ARCH_SUPPORTS_UPROBES=y ++CONFIG_FIX_EARLYCON_MEM=y ++CONFIG_PGTABLE_LEVELS=4 ++CONFIG_CC_HAS_SANE_STACKPROTECTOR=y ++ ++# ++# Processor type and features ++# ++CONFIG_ZONE_DMA=y ++CONFIG_SMP=y ++CONFIG_X86_FEATURE_NAMES=y ++# CONFIG_X86_X2APIC is not set ++CONFIG_X86_MPPARSE=y ++# CONFIG_GOLDFISH is not set ++CONFIG_RETPOLINE=y ++# CONFIG_RESCTRL is not set ++CONFIG_X86_EXTENDED_PLATFORM=y ++# CONFIG_X86_VSMP is not set ++# CONFIG_X86_GOLDFISH is not set ++CONFIG_X86_INTEL_LPSS=y ++# CONFIG_X86_AMD_PLATFORM_DEVICE is not set ++CONFIG_IOSF_MBI=y ++CONFIG_IOSF_MBI_DEBUG=y ++CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y ++CONFIG_SCHED_OMIT_FRAME_POINTER=y ++CONFIG_HYPERVISOR_GUEST=y ++CONFIG_PARAVIRT=y ++# CONFIG_PARAVIRT_DEBUG is not set ++CONFIG_PARAVIRT_SPINLOCKS=y ++# CONFIG_QUEUED_LOCK_STAT is not set ++# CONFIG_XEN is not set ++CONFIG_KVM_GUEST=y ++# CONFIG_PVH is not set ++CONFIG_KVM_DEBUG_FS=y ++# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set ++CONFIG_PARAVIRT_CLOCK=y ++# CONFIG_JAILHOUSE_GUEST is not set ++# CONFIG_MK8 is not set ++# CONFIG_MPSC is not set ++# CONFIG_MCORE2 is not set ++# CONFIG_MATOM is not set ++CONFIG_GENERIC_CPU=y ++CONFIG_X86_INTERNODE_CACHE_SHIFT=6 ++CONFIG_X86_L1_CACHE_SHIFT=6 ++CONFIG_X86_TSC=y ++CONFIG_X86_CMPXCHG64=y ++CONFIG_X86_CMOV=y ++CONFIG_X86_MINIMUM_CPU_FAMILY=64 ++CONFIG_X86_DEBUGCTLMSR=y ++CONFIG_PROCESSOR_SELECT=y ++CONFIG_CPU_SUP_INTEL=y ++CONFIG_CPU_SUP_AMD=y ++CONFIG_CPU_SUP_HYGON=y ++CONFIG_CPU_SUP_CENTAUR=y ++CONFIG_HPET_TIMER=y ++CONFIG_HPET_EMULATE_RTC=y ++CONFIG_DMI=y ++CONFIG_GART_IOMMU=y ++CONFIG_CALGARY_IOMMU=y ++CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y ++# CONFIG_MAXSMP is not set ++CONFIG_NR_CPUS_RANGE_BEGIN=2 ++CONFIG_NR_CPUS_RANGE_END=512 ++CONFIG_NR_CPUS_DEFAULT=64 ++CONFIG_NR_CPUS=256 ++CONFIG_SCHED_SMT=y ++CONFIG_SCHED_MC=y ++CONFIG_SCHED_MC_PRIO=y ++CONFIG_X86_LOCAL_APIC=y ++CONFIG_X86_IO_APIC=y ++CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y ++CONFIG_X86_MCE=y ++# CONFIG_X86_MCELOG_LEGACY is not set ++CONFIG_X86_MCE_INTEL=y ++CONFIG_X86_MCE_AMD=y ++CONFIG_X86_MCE_THRESHOLD=y ++# CONFIG_X86_MCE_INJECT is not set ++CONFIG_X86_THERMAL_VECTOR=y ++ ++# ++# Performance monitoring ++# ++CONFIG_PERF_EVENTS_INTEL_UNCORE=y ++CONFIG_PERF_EVENTS_INTEL_RAPL=y ++CONFIG_PERF_EVENTS_INTEL_CSTATE=y ++# CONFIG_PERF_EVENTS_AMD_POWER is not set ++CONFIG_X86_16BIT=y ++CONFIG_X86_ESPFIX64=y ++CONFIG_X86_VSYSCALL_EMULATION=y ++CONFIG_I8K=m ++CONFIG_MICROCODE=y ++CONFIG_MICROCODE_INTEL=y ++CONFIG_MICROCODE_AMD=y ++CONFIG_MICROCODE_OLD_INTERFACE=y ++CONFIG_X86_MSR=m ++CONFIG_X86_CPUID=m ++# CONFIG_X86_5LEVEL is not set ++CONFIG_X86_DIRECT_GBPAGES=y ++# CONFIG_X86_CPA_STATISTICS is not set ++CONFIG_ARCH_HAS_MEM_ENCRYPT=y ++# CONFIG_AMD_MEM_ENCRYPT is not set ++CONFIG_NUMA=y ++CONFIG_AMD_NUMA=y ++CONFIG_X86_64_ACPI_NUMA=y ++CONFIG_NODES_SPAN_OTHER_NODES=y ++# CONFIG_NUMA_EMU is not set ++CONFIG_NODES_SHIFT=6 ++CONFIG_ARCH_SPARSEMEM_ENABLE=y ++CONFIG_ARCH_SPARSEMEM_DEFAULT=y ++CONFIG_ARCH_SELECT_MEMORY_MODEL=y ++CONFIG_ARCH_MEMORY_PROBE=y ++CONFIG_ARCH_PROC_KCORE_TEXT=y ++CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 ++# CONFIG_X86_PMEM_LEGACY is not set ++CONFIG_X86_CHECK_BIOS_CORRUPTION=y ++CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y ++CONFIG_X86_RESERVE_LOW=64 ++CONFIG_MTRR=y ++CONFIG_MTRR_SANITIZER=y ++CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 ++CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 ++CONFIG_X86_PAT=y ++CONFIG_ARCH_USES_PG_UNCACHED=y ++CONFIG_ARCH_RANDOM=y ++CONFIG_X86_SMAP=y ++CONFIG_X86_INTEL_UMIP=y ++# CONFIG_X86_INTEL_MPX is not set ++CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y ++CONFIG_EFI=y ++CONFIG_EFI_STUB=y ++CONFIG_EFI_MIXED=y ++CONFIG_SECCOMP=y ++# CONFIG_HZ_100 is not set ++CONFIG_HZ_250=y ++# CONFIG_HZ_300 is not set ++# CONFIG_HZ_1000 is not set ++CONFIG_HZ=250 ++CONFIG_SCHED_HRTICK=y ++CONFIG_KEXEC=y ++CONFIG_KEXEC_FILE=y ++CONFIG_ARCH_HAS_KEXEC_PURGATORY=y ++CONFIG_KEXEC_VERIFY_SIG=y ++CONFIG_CRASH_DUMP=y ++CONFIG_KEXEC_JUMP=y ++CONFIG_PHYSICAL_START=0x1000000 ++CONFIG_RELOCATABLE=y ++CONFIG_RANDOMIZE_BASE=y ++CONFIG_X86_NEED_RELOCS=y ++CONFIG_PHYSICAL_ALIGN=0x1000000 ++CONFIG_DYNAMIC_MEMORY_LAYOUT=y ++CONFIG_RANDOMIZE_MEMORY=y ++CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa ++CONFIG_HOTPLUG_CPU=y ++# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set ++# CONFIG_DEBUG_HOTPLUG_CPU0 is not set ++# CONFIG_COMPAT_VDSO is not set ++CONFIG_LEGACY_VSYSCALL_EMULATE=y ++# CONFIG_LEGACY_VSYSCALL_NONE is not set ++# CONFIG_CMDLINE_BOOL is not set ++CONFIG_MODIFY_LDT_SYSCALL=y ++CONFIG_HAVE_LIVEPATCH=y ++# CONFIG_LIVEPATCH is not set ++CONFIG_ARCH_HAS_ADD_PAGES=y ++CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y ++CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y ++CONFIG_USE_PERCPU_NUMA_NODE_ID=y ++CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y ++CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y ++CONFIG_ARCH_ENABLE_THP_MIGRATION=y ++ ++# ++# Power management and ACPI options ++# ++CONFIG_ARCH_HIBERNATION_HEADER=y ++CONFIG_SUSPEND=y ++CONFIG_SUSPEND_FREEZER=y ++# CONFIG_SUSPEND_SKIP_SYNC is not set ++CONFIG_HIBERNATE_CALLBACKS=y ++CONFIG_HIBERNATION=y ++CONFIG_PM_STD_PARTITION="" ++CONFIG_PM_SLEEP=y ++CONFIG_PM_SLEEP_SMP=y ++# CONFIG_PM_AUTOSLEEP is not set ++CONFIG_PM_WAKELOCKS=y ++CONFIG_PM_WAKELOCKS_LIMIT=100 ++CONFIG_PM_WAKELOCKS_GC=y ++CONFIG_PM=y ++CONFIG_PM_DEBUG=y ++CONFIG_PM_ADVANCED_DEBUG=y ++# CONFIG_PM_TEST_SUSPEND is not set ++CONFIG_PM_SLEEP_DEBUG=y ++# CONFIG_DPM_WATCHDOG is not set ++CONFIG_PM_TRACE=y ++CONFIG_PM_TRACE_RTC=y ++CONFIG_PM_CLK=y ++CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y ++# CONFIG_ENERGY_MODEL is not set ++CONFIG_ARCH_SUPPORTS_ACPI=y ++CONFIG_ACPI=y ++CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y ++CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y ++CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y ++# CONFIG_ACPI_DEBUGGER is not set ++CONFIG_ACPI_SPCR_TABLE=y ++CONFIG_ACPI_LPIT=y ++CONFIG_ACPI_SLEEP=y ++# CONFIG_ACPI_PROCFS_POWER is not set ++CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y ++CONFIG_ACPI_EC_DEBUGFS=m ++CONFIG_ACPI_AC=y ++CONFIG_ACPI_BATTERY=y ++CONFIG_ACPI_BUTTON=y ++CONFIG_ACPI_VIDEO=m ++CONFIG_ACPI_FAN=y ++# CONFIG_ACPI_TAD is not set ++CONFIG_ACPI_DOCK=y ++CONFIG_ACPI_CPU_FREQ_PSS=y ++CONFIG_ACPI_PROCESSOR_CSTATE=y ++CONFIG_ACPI_PROCESSOR_IDLE=y ++CONFIG_ACPI_CPPC_LIB=y ++CONFIG_ACPI_PROCESSOR=y ++CONFIG_ACPI_HOTPLUG_CPU=y ++CONFIG_ACPI_PROCESSOR_AGGREGATOR=m ++CONFIG_ACPI_THERMAL=y ++CONFIG_ACPI_NUMA=y ++CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y ++CONFIG_ACPI_TABLE_UPGRADE=y ++# CONFIG_ACPI_DEBUG is not set ++CONFIG_ACPI_PCI_SLOT=y ++CONFIG_ACPI_CONTAINER=y ++CONFIG_ACPI_HOTPLUG_MEMORY=y ++CONFIG_ACPI_HOTPLUG_IOAPIC=y ++CONFIG_ACPI_SBS=m ++CONFIG_ACPI_HED=y ++# CONFIG_ACPI_CUSTOM_METHOD is not set ++CONFIG_ACPI_BGRT=y ++# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set ++# CONFIG_ACPI_NFIT is not set ++CONFIG_HAVE_ACPI_APEI=y ++CONFIG_HAVE_ACPI_APEI_NMI=y ++CONFIG_ACPI_APEI=y ++CONFIG_ACPI_APEI_GHES=y ++CONFIG_ACPI_APEI_PCIEAER=y ++CONFIG_ACPI_APEI_MEMORY_FAILURE=y ++CONFIG_ACPI_APEI_EINJ=m ++# CONFIG_ACPI_APEI_ERST_DEBUG is not set ++# CONFIG_DPTF_POWER is not set ++# CONFIG_PMIC_OPREGION is not set ++# CONFIG_ACPI_CONFIGFS is not set ++CONFIG_X86_PM_TIMER=y ++CONFIG_SFI=y ++ ++# ++# CPU Frequency scaling ++# ++CONFIG_CPU_FREQ=y ++CONFIG_CPU_FREQ_GOV_ATTR_SET=y ++CONFIG_CPU_FREQ_GOV_COMMON=y ++CONFIG_CPU_FREQ_STAT=y ++CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y ++# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set ++CONFIG_CPU_FREQ_GOV_PERFORMANCE=y ++CONFIG_CPU_FREQ_GOV_POWERSAVE=y ++CONFIG_CPU_FREQ_GOV_USERSPACE=y ++CONFIG_CPU_FREQ_GOV_ONDEMAND=y ++CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y ++# CONFIG_CPU_FREQ_GOV_SCHEDUTIL is not set ++ ++# ++# CPU frequency scaling drivers ++# ++CONFIG_X86_INTEL_PSTATE=y ++# CONFIG_X86_PCC_CPUFREQ is not set ++CONFIG_X86_ACPI_CPUFREQ=y ++# CONFIG_X86_ACPI_CPUFREQ_CPB is not set ++# CONFIG_X86_POWERNOW_K8 is not set ++# CONFIG_X86_AMD_FREQ_SENSITIVITY is not set ++# CONFIG_X86_SPEEDSTEP_CENTRINO is not set ++# CONFIG_X86_P4_CLOCKMOD is not set ++ ++# ++# shared options ++# ++ ++# ++# CPU Idle ++# ++CONFIG_CPU_IDLE=y ++CONFIG_CPU_IDLE_GOV_LADDER=y ++CONFIG_CPU_IDLE_GOV_MENU=y ++# CONFIG_INTEL_IDLE is not set ++ ++# ++# Bus options (PCI etc.) ++# ++CONFIG_PCI_DIRECT=y ++CONFIG_PCI_MMCONFIG=y ++CONFIG_MMCONF_FAM10H=y ++# CONFIG_PCI_CNB20LE_QUIRK is not set ++# CONFIG_ISA_BUS is not set ++CONFIG_ISA_DMA_API=y ++CONFIG_AMD_NB=y ++# CONFIG_X86_SYSFB is not set ++ ++# ++# Binary Emulations ++# ++CONFIG_IA32_EMULATION=y ++# CONFIG_IA32_AOUT is not set ++# CONFIG_X86_X32 is not set ++CONFIG_COMPAT_32=y ++CONFIG_COMPAT=y ++CONFIG_COMPAT_FOR_U64_ALIGNMENT=y ++CONFIG_SYSVIPC_COMPAT=y ++CONFIG_X86_DEV_DMA_OPS=y ++CONFIG_HAVE_GENERIC_GUP=y ++ ++# ++# Firmware Drivers ++# ++# CONFIG_EDD is not set ++CONFIG_FIRMWARE_MEMMAP=y ++CONFIG_DMIID=y ++# CONFIG_DMI_SYSFS is not set ++CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y ++# CONFIG_ISCSI_IBFT_FIND is not set ++# CONFIG_FW_CFG_SYSFS is not set ++# CONFIG_GOOGLE_FIRMWARE is not set ++ ++# ++# EFI (Extensible Firmware Interface) Support ++# ++CONFIG_EFI_VARS=y ++CONFIG_EFI_ESRT=y ++CONFIG_EFI_VARS_PSTORE=y ++# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set ++CONFIG_EFI_RUNTIME_MAP=y ++# CONFIG_EFI_FAKE_MEMMAP is not set ++CONFIG_EFI_RUNTIME_WRAPPERS=y ++# CONFIG_EFI_BOOTLOADER_CONTROL is not set ++# CONFIG_EFI_CAPSULE_LOADER is not set ++# CONFIG_EFI_TEST is not set ++# CONFIG_APPLE_PROPERTIES is not set ++# CONFIG_RESET_ATTACK_MITIGATION is not set ++CONFIG_UEFI_CPER=y ++CONFIG_UEFI_CPER_X86=y ++ ++# ++# Tegra firmware driver ++# ++CONFIG_HAVE_KVM=y ++CONFIG_VIRTUALIZATION=y ++# CONFIG_KVM is not set ++# CONFIG_VHOST_NET is not set ++# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set ++ ++# ++# General architecture-dependent options ++# ++CONFIG_CRASH_CORE=y ++CONFIG_KEXEC_CORE=y ++CONFIG_HOTPLUG_SMT=y ++CONFIG_OPROFILE=m ++# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set ++CONFIG_HAVE_OPROFILE=y ++CONFIG_OPROFILE_NMI_TIMER=y ++CONFIG_KPROBES=y ++CONFIG_JUMP_LABEL=y ++# CONFIG_STATIC_KEYS_SELFTEST is not set ++CONFIG_OPTPROBES=y ++CONFIG_KPROBES_ON_FTRACE=y ++CONFIG_UPROBES=y ++CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y ++CONFIG_ARCH_USE_BUILTIN_BSWAP=y ++CONFIG_KRETPROBES=y ++CONFIG_HAVE_IOREMAP_PROT=y ++CONFIG_HAVE_KPROBES=y ++CONFIG_HAVE_KRETPROBES=y ++CONFIG_HAVE_OPTPROBES=y ++CONFIG_HAVE_KPROBES_ON_FTRACE=y ++CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y ++CONFIG_HAVE_NMI=y ++CONFIG_HAVE_ARCH_TRACEHOOK=y ++CONFIG_HAVE_DMA_CONTIGUOUS=y ++CONFIG_GENERIC_SMP_IDLE_THREAD=y ++CONFIG_ARCH_HAS_FORTIFY_SOURCE=y ++CONFIG_ARCH_HAS_SET_MEMORY=y ++CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y ++CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y ++CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y ++CONFIG_HAVE_RSEQ=y ++CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y ++CONFIG_HAVE_CLK=y ++CONFIG_HAVE_HW_BREAKPOINT=y ++CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y ++CONFIG_HAVE_USER_RETURN_NOTIFIER=y ++CONFIG_HAVE_PERF_EVENTS_NMI=y ++CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y ++CONFIG_HAVE_PERF_REGS=y ++CONFIG_HAVE_PERF_USER_STACK_DUMP=y ++CONFIG_HAVE_ARCH_JUMP_LABEL=y ++CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y ++CONFIG_HAVE_RCU_TABLE_FREE=y ++CONFIG_HAVE_RCU_TABLE_INVALIDATE=y ++CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y ++CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y ++CONFIG_HAVE_CMPXCHG_LOCAL=y ++CONFIG_HAVE_CMPXCHG_DOUBLE=y ++CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y ++CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y ++CONFIG_HAVE_ARCH_SECCOMP_FILTER=y ++CONFIG_SECCOMP_FILTER=y ++CONFIG_HAVE_ARCH_STACKLEAK=y ++CONFIG_HAVE_STACKPROTECTOR=y ++CONFIG_CC_HAS_STACKPROTECTOR_NONE=y ++CONFIG_STACKPROTECTOR=y ++CONFIG_STACKPROTECTOR_STRONG=y ++CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y ++CONFIG_HAVE_CONTEXT_TRACKING=y ++CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y ++CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y ++CONFIG_HAVE_MOVE_PMD=y ++CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y ++CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y ++CONFIG_HAVE_ARCH_HUGE_VMAP=y ++CONFIG_HAVE_ARCH_SOFT_DIRTY=y ++CONFIG_HAVE_MOD_ARCH_SPECIFIC=y ++CONFIG_MODULES_USE_ELF_RELA=y ++CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y ++CONFIG_ARCH_HAS_ELF_RANDOMIZE=y ++CONFIG_HAVE_ARCH_MMAP_RND_BITS=y ++CONFIG_HAVE_EXIT_THREAD=y ++CONFIG_ARCH_MMAP_RND_BITS=28 ++CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 ++CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y ++CONFIG_HAVE_COPY_THREAD_TLS=y ++CONFIG_HAVE_STACK_VALIDATION=y ++CONFIG_HAVE_RELIABLE_STACKTRACE=y ++CONFIG_OLD_SIGSUSPEND3=y ++CONFIG_COMPAT_OLD_SIGACTION=y ++CONFIG_COMPAT_32BIT_TIME=y ++CONFIG_HAVE_ARCH_VMAP_STACK=y ++CONFIG_VMAP_STACK=y ++CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y ++CONFIG_STRICT_KERNEL_RWX=y ++CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y ++CONFIG_STRICT_MODULE_RWX=y ++CONFIG_ARCH_HAS_REFCOUNT=y ++# CONFIG_REFCOUNT_FULL is not set ++CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y ++ ++# ++# GCOV-based kernel profiling ++# ++# CONFIG_GCOV_KERNEL is not set ++CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y ++CONFIG_PLUGIN_HOSTCC="" ++CONFIG_HAVE_GCC_PLUGINS=y ++CONFIG_RT_MUTEXES=y ++CONFIG_BASE_SMALL=0 ++CONFIG_MODULES=y ++# CONFIG_MODULE_FORCE_LOAD is not set ++CONFIG_MODULE_UNLOAD=y ++# CONFIG_MODULE_FORCE_UNLOAD is not set ++CONFIG_MODVERSIONS=y ++CONFIG_MODULE_SRCVERSION_ALL=y ++CONFIG_MODULE_SIG=y ++# CONFIG_MODULE_SIG_FORCE is not set ++CONFIG_MODULE_SIG_ALL=y ++# CONFIG_MODULE_SIG_SHA1 is not set ++# CONFIG_MODULE_SIG_SHA224 is not set ++# CONFIG_MODULE_SIG_SHA256 is not set ++# CONFIG_MODULE_SIG_SHA384 is not set ++CONFIG_MODULE_SIG_SHA512=y ++CONFIG_MODULE_SIG_HASH="sha512" ++# CONFIG_MODULE_COMPRESS is not set ++# CONFIG_TRIM_UNUSED_KSYMS is not set ++CONFIG_MODULES_TREE_LOOKUP=y ++CONFIG_BLOCK=y ++CONFIG_BLK_SCSI_REQUEST=y ++CONFIG_BLK_DEV_BSG=y ++CONFIG_BLK_DEV_BSGLIB=y ++CONFIG_BLK_DEV_INTEGRITY=y ++# CONFIG_BLK_DEV_ZONED is not set ++CONFIG_BLK_DEV_THROTTLING=y ++# CONFIG_BLK_DEV_THROTTLING_LOW is not set ++CONFIG_BLK_CMDLINE_PARSER=y ++# CONFIG_BLK_WBT is not set ++# CONFIG_BLK_CGROUP_IOLATENCY is not set ++CONFIG_BLK_DEBUG_FS=y ++# CONFIG_BLK_SED_OPAL is not set ++ ++# ++# Partition Types ++# ++CONFIG_PARTITION_ADVANCED=y ++# CONFIG_ACORN_PARTITION is not set ++# CONFIG_AIX_PARTITION is not set ++# CONFIG_OSF_PARTITION is not set ++# CONFIG_AMIGA_PARTITION is not set ++# CONFIG_ATARI_PARTITION is not set ++# CONFIG_MAC_PARTITION is not set ++CONFIG_MSDOS_PARTITION=y ++# CONFIG_BSD_DISKLABEL is not set ++# CONFIG_MINIX_SUBPARTITION is not set ++# CONFIG_SOLARIS_X86_PARTITION is not set ++# CONFIG_UNIXWARE_DISKLABEL is not set ++# CONFIG_LDM_PARTITION is not set ++# CONFIG_SGI_PARTITION is not set ++# CONFIG_ULTRIX_PARTITION is not set ++# CONFIG_SUN_PARTITION is not set ++# CONFIG_KARMA_PARTITION is not set ++CONFIG_EFI_PARTITION=y ++# CONFIG_SYSV68_PARTITION is not set ++# CONFIG_CMDLINE_PARTITION is not set ++CONFIG_BLOCK_COMPAT=y ++CONFIG_BLK_MQ_PCI=y ++CONFIG_BLK_PM=y ++ ++# ++# IO Schedulers ++# ++CONFIG_MQ_IOSCHED_DEADLINE=y ++CONFIG_MQ_IOSCHED_KYBER=y ++# CONFIG_IOSCHED_BFQ is not set ++CONFIG_ASN1=y ++CONFIG_UNINLINE_SPIN_UNLOCK=y ++CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y ++CONFIG_MUTEX_SPIN_ON_OWNER=y ++CONFIG_RWSEM_SPIN_ON_OWNER=y ++CONFIG_LOCK_SPIN_ON_OWNER=y ++CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y ++CONFIG_QUEUED_SPINLOCKS=y ++CONFIG_ARCH_USE_QUEUED_RWLOCKS=y ++CONFIG_QUEUED_RWLOCKS=y ++CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y ++CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y ++CONFIG_FREEZER=y ++ ++# ++# Executable file formats ++# ++CONFIG_BINFMT_ELF=y ++CONFIG_COMPAT_BINFMT_ELF=y ++CONFIG_ELFCORE=y ++CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y ++CONFIG_BINFMT_SCRIPT=y ++CONFIG_BINFMT_MISC=y ++CONFIG_COREDUMP=y ++ ++# ++# Memory Management options ++# ++CONFIG_SELECT_MEMORY_MODEL=y ++CONFIG_SPARSEMEM_MANUAL=y ++CONFIG_SPARSEMEM=y ++CONFIG_NEED_MULTIPLE_NODES=y ++CONFIG_HAVE_MEMORY_PRESENT=y ++CONFIG_SPARSEMEM_EXTREME=y ++CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y ++CONFIG_SPARSEMEM_VMEMMAP=y ++CONFIG_HAVE_MEMBLOCK_NODE_MAP=y ++CONFIG_ARCH_DISCARD_MEMBLOCK=y ++CONFIG_MEMORY_ISOLATION=y ++CONFIG_HAVE_BOOTMEM_INFO_NODE=y ++CONFIG_MEMORY_HOTPLUG=y ++CONFIG_MEMORY_HOTPLUG_SPARSE=y ++# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set ++CONFIG_MEMORY_HOTREMOVE=y ++CONFIG_SPLIT_PTLOCK_CPUS=4 ++CONFIG_COMPACTION=y ++CONFIG_MIGRATION=y ++CONFIG_PHYS_ADDR_T_64BIT=y ++CONFIG_BOUNCE=y ++CONFIG_VIRT_TO_BUS=y ++CONFIG_MMU_NOTIFIER=y ++CONFIG_KSM=y ++CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 ++CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y ++CONFIG_MEMORY_FAILURE=y ++CONFIG_HWPOISON_INJECT=m ++CONFIG_TRANSPARENT_HUGEPAGE=y ++CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y ++# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set ++CONFIG_ARCH_WANTS_THP_SWAP=y ++CONFIG_THP_SWAP=y ++CONFIG_TRANSPARENT_HUGE_PAGECACHE=y ++CONFIG_CLEANCACHE=y ++CONFIG_FRONTSWAP=y ++CONFIG_CMA=y ++# CONFIG_CMA_DEBUG is not set ++# CONFIG_CMA_DEBUGFS is not set ++CONFIG_CMA_AREAS=7 ++CONFIG_MEM_SOFT_DIRTY=y ++CONFIG_ZSWAP=y ++CONFIG_ZPOOL=y ++CONFIG_ZBUD=y ++# CONFIG_Z3FOLD is not set ++CONFIG_ZSMALLOC=y ++CONFIG_PGTABLE_MAPPING=y ++# CONFIG_ZSMALLOC_STAT is not set ++CONFIG_GENERIC_EARLY_IOREMAP=y ++# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set ++# CONFIG_IDLE_PAGE_TRACKING is not set ++CONFIG_ARCH_HAS_ZONE_DEVICE=y ++# CONFIG_ZONE_DEVICE is not set ++CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y ++CONFIG_ARCH_HAS_PKEYS=y ++# CONFIG_PERCPU_STATS is not set ++# CONFIG_GUP_BENCHMARK is not set ++CONFIG_ARCH_HAS_PTE_SPECIAL=y ++CONFIG_NET=y ++CONFIG_NET_INGRESS=y ++CONFIG_SKB_EXTENSIONS=y ++ ++# ++# Networking options ++# ++CONFIG_PACKET=y ++CONFIG_PACKET_DIAG=y ++CONFIG_UNIX=y ++CONFIG_UNIX_DIAG=y ++# CONFIG_TLS is not set ++CONFIG_XFRM=y ++CONFIG_XFRM_ALGO=y ++CONFIG_XFRM_USER=y ++# CONFIG_XFRM_INTERFACE is not set ++# CONFIG_XFRM_SUB_POLICY is not set ++# CONFIG_XFRM_MIGRATE is not set ++# CONFIG_XFRM_STATISTICS is not set ++# CONFIG_NET_KEY is not set ++# CONFIG_XDP_SOCKETS is not set ++CONFIG_INET=y ++CONFIG_IP_MULTICAST=y ++CONFIG_IP_ADVANCED_ROUTER=y ++# CONFIG_IP_FIB_TRIE_STATS is not set ++CONFIG_IP_MULTIPLE_TABLES=y ++CONFIG_IP_ROUTE_MULTIPATH=y ++CONFIG_IP_ROUTE_VERBOSE=y ++CONFIG_IP_PNP=y ++CONFIG_IP_PNP_DHCP=y ++CONFIG_IP_PNP_BOOTP=y ++CONFIG_IP_PNP_RARP=y ++# CONFIG_NET_IPIP is not set ++# CONFIG_NET_IPGRE_DEMUX is not set ++CONFIG_NET_IP_TUNNEL=y ++CONFIG_IP_MROUTE_COMMON=y ++CONFIG_IP_MROUTE=y ++# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set ++CONFIG_IP_PIMSM_V1=y ++CONFIG_IP_PIMSM_V2=y ++CONFIG_SYN_COOKIES=y ++# CONFIG_NET_FOU is not set ++# CONFIG_NET_FOU_IP_TUNNELS is not set ++# CONFIG_INET_AH is not set ++# CONFIG_INET_ESP is not set ++# CONFIG_INET_IPCOMP is not set ++CONFIG_INET_TUNNEL=y ++# CONFIG_INET_XFRM_MODE_TRANSPORT is not set ++# CONFIG_INET_XFRM_MODE_TUNNEL is not set ++# CONFIG_INET_XFRM_MODE_BEET is not set ++CONFIG_INET_DIAG=y ++CONFIG_INET_TCP_DIAG=y ++# CONFIG_INET_UDP_DIAG is not set ++# CONFIG_INET_RAW_DIAG is not set ++# CONFIG_INET_DIAG_DESTROY is not set ++CONFIG_TCP_CONG_ADVANCED=y ++# CONFIG_TCP_CONG_BIC is not set ++CONFIG_TCP_CONG_CUBIC=y ++# CONFIG_TCP_CONG_WESTWOOD is not set ++# CONFIG_TCP_CONG_HTCP is not set ++# CONFIG_TCP_CONG_HSTCP is not set ++# CONFIG_TCP_CONG_HYBLA is not set ++# CONFIG_TCP_CONG_VEGAS is not set ++# CONFIG_TCP_CONG_NV is not set ++# CONFIG_TCP_CONG_SCALABLE is not set ++# CONFIG_TCP_CONG_LP is not set ++# CONFIG_TCP_CONG_VENO is not set ++# CONFIG_TCP_CONG_YEAH is not set ++# CONFIG_TCP_CONG_ILLINOIS is not set ++# CONFIG_TCP_CONG_DCTCP is not set ++# CONFIG_TCP_CONG_CDG is not set ++# CONFIG_TCP_CONG_BBR is not set ++CONFIG_DEFAULT_CUBIC=y ++# CONFIG_DEFAULT_RENO is not set ++CONFIG_DEFAULT_TCP_CONG="cubic" ++CONFIG_TCP_MD5SIG=y ++CONFIG_IPV6=y ++# CONFIG_IPV6_ROUTER_PREF is not set ++# CONFIG_IPV6_OPTIMISTIC_DAD is not set ++CONFIG_INET6_AH=y ++CONFIG_INET6_ESP=y ++# CONFIG_INET6_ESP_OFFLOAD is not set ++# CONFIG_INET6_IPCOMP is not set ++# CONFIG_IPV6_MIP6 is not set ++# CONFIG_IPV6_ILA is not set ++CONFIG_INET6_XFRM_MODE_TRANSPORT=y ++CONFIG_INET6_XFRM_MODE_TUNNEL=y ++CONFIG_INET6_XFRM_MODE_BEET=y ++# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set ++# CONFIG_IPV6_VTI is not set ++CONFIG_IPV6_SIT=y ++# CONFIG_IPV6_SIT_6RD is not set ++CONFIG_IPV6_NDISC_NODETYPE=y ++# CONFIG_IPV6_TUNNEL is not set ++# CONFIG_IPV6_MULTIPLE_TABLES is not set ++# CONFIG_IPV6_MROUTE is not set ++# CONFIG_IPV6_SEG6_LWTUNNEL is not set ++# CONFIG_IPV6_SEG6_HMAC is not set ++CONFIG_NETLABEL=y ++CONFIG_NETWORK_SECMARK=y ++CONFIG_NET_PTP_CLASSIFY=y ++# CONFIG_NETWORK_PHY_TIMESTAMPING is not set ++CONFIG_NETFILTER=y ++CONFIG_NETFILTER_ADVANCED=y ++CONFIG_BRIDGE_NETFILTER=m ++ ++# ++# Core Netfilter Configuration ++# ++CONFIG_NETFILTER_INGRESS=y ++CONFIG_NETFILTER_FAMILY_BRIDGE=y ++# CONFIG_NETFILTER_NETLINK_ACCT is not set ++# CONFIG_NETFILTER_NETLINK_QUEUE is not set ++# CONFIG_NETFILTER_NETLINK_LOG is not set ++# CONFIG_NETFILTER_NETLINK_OSF is not set ++CONFIG_NF_CONNTRACK=m ++# CONFIG_NF_LOG_NETDEV is not set ++# CONFIG_NF_CONNTRACK_MARK is not set ++# CONFIG_NF_CONNTRACK_SECMARK is not set ++# CONFIG_NF_CONNTRACK_ZONES is not set ++# CONFIG_NF_CONNTRACK_PROCFS is not set ++# CONFIG_NF_CONNTRACK_EVENTS is not set ++# CONFIG_NF_CONNTRACK_TIMEOUT is not set ++# CONFIG_NF_CONNTRACK_TIMESTAMP is not set ++# CONFIG_NF_CONNTRACK_LABELS is not set ++CONFIG_NF_CT_PROTO_DCCP=y ++CONFIG_NF_CT_PROTO_SCTP=y ++CONFIG_NF_CT_PROTO_UDPLITE=y ++# CONFIG_NF_CONNTRACK_AMANDA is not set ++# CONFIG_NF_CONNTRACK_FTP is not set ++# CONFIG_NF_CONNTRACK_H323 is not set ++# CONFIG_NF_CONNTRACK_IRC is not set ++# CONFIG_NF_CONNTRACK_NETBIOS_NS is not set ++# CONFIG_NF_CONNTRACK_SNMP is not set ++# CONFIG_NF_CONNTRACK_PPTP is not set ++# CONFIG_NF_CONNTRACK_SANE is not set ++# CONFIG_NF_CONNTRACK_SIP is not set ++# CONFIG_NF_CONNTRACK_TFTP is not set ++# CONFIG_NF_CT_NETLINK is not set ++CONFIG_NF_NAT=m ++CONFIG_NF_NAT_NEEDED=y ++# CONFIG_NF_TABLES is not set ++CONFIG_NETFILTER_XTABLES=m ++ ++# ++# Xtables combined modules ++# ++# CONFIG_NETFILTER_XT_MARK is not set ++# CONFIG_NETFILTER_XT_CONNMARK is not set ++ ++# ++# Xtables targets ++# ++# CONFIG_NETFILTER_XT_TARGET_AUDIT is not set ++CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m ++# CONFIG_NETFILTER_XT_TARGET_CLASSIFY is not set ++# CONFIG_NETFILTER_XT_TARGET_CONNMARK is not set ++# CONFIG_NETFILTER_XT_TARGET_DSCP is not set ++# CONFIG_NETFILTER_XT_TARGET_HL is not set ++# CONFIG_NETFILTER_XT_TARGET_HMARK is not set ++# CONFIG_NETFILTER_XT_TARGET_IDLETIMER is not set ++# CONFIG_NETFILTER_XT_TARGET_LED is not set ++# CONFIG_NETFILTER_XT_TARGET_LOG is not set ++# CONFIG_NETFILTER_XT_TARGET_MARK is not set ++CONFIG_NETFILTER_XT_NAT=m ++# CONFIG_NETFILTER_XT_TARGET_NETMAP is not set ++# CONFIG_NETFILTER_XT_TARGET_NFLOG is not set ++# CONFIG_NETFILTER_XT_TARGET_NFQUEUE is not set ++# CONFIG_NETFILTER_XT_TARGET_RATEEST is not set ++# CONFIG_NETFILTER_XT_TARGET_REDIRECT is not set ++# CONFIG_NETFILTER_XT_TARGET_TEE is not set ++# CONFIG_NETFILTER_XT_TARGET_TPROXY is not set ++# CONFIG_NETFILTER_XT_TARGET_SECMARK is not set ++# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not set ++# CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP is not set ++ ++# ++# Xtables matches ++# ++# CONFIG_NETFILTER_XT_MATCH_ADDRTYPE is not set ++# CONFIG_NETFILTER_XT_MATCH_BPF is not set ++# CONFIG_NETFILTER_XT_MATCH_CGROUP is not set ++# CONFIG_NETFILTER_XT_MATCH_CLUSTER is not set ++# CONFIG_NETFILTER_XT_MATCH_COMMENT is not set ++# CONFIG_NETFILTER_XT_MATCH_CONNBYTES is not set ++# CONFIG_NETFILTER_XT_MATCH_CONNLABEL is not set ++# CONFIG_NETFILTER_XT_MATCH_CONNLIMIT is not set ++# CONFIG_NETFILTER_XT_MATCH_CONNMARK is not set ++# CONFIG_NETFILTER_XT_MATCH_CONNTRACK is not set ++# CONFIG_NETFILTER_XT_MATCH_CPU is not set ++# CONFIG_NETFILTER_XT_MATCH_DCCP is not set ++# CONFIG_NETFILTER_XT_MATCH_DEVGROUP is not set ++# CONFIG_NETFILTER_XT_MATCH_DSCP is not set ++# CONFIG_NETFILTER_XT_MATCH_ECN is not set ++# CONFIG_NETFILTER_XT_MATCH_ESP is not set ++# CONFIG_NETFILTER_XT_MATCH_HASHLIMIT is not set ++# CONFIG_NETFILTER_XT_MATCH_HELPER is not set ++# CONFIG_NETFILTER_XT_MATCH_HL is not set ++# CONFIG_NETFILTER_XT_MATCH_IPCOMP is not set ++# CONFIG_NETFILTER_XT_MATCH_IPRANGE is not set ++# CONFIG_NETFILTER_XT_MATCH_L2TP is not set ++# CONFIG_NETFILTER_XT_MATCH_LENGTH is not set ++# CONFIG_NETFILTER_XT_MATCH_LIMIT is not set ++# CONFIG_NETFILTER_XT_MATCH_MAC is not set ++# CONFIG_NETFILTER_XT_MATCH_MARK is not set ++# CONFIG_NETFILTER_XT_MATCH_MULTIPORT is not set ++# CONFIG_NETFILTER_XT_MATCH_NFACCT is not set ++# CONFIG_NETFILTER_XT_MATCH_OSF is not set ++# CONFIG_NETFILTER_XT_MATCH_OWNER is not set ++# CONFIG_NETFILTER_XT_MATCH_POLICY is not set ++# CONFIG_NETFILTER_XT_MATCH_PHYSDEV is not set ++# CONFIG_NETFILTER_XT_MATCH_PKTTYPE is not set ++# CONFIG_NETFILTER_XT_MATCH_QUOTA is not set ++# CONFIG_NETFILTER_XT_MATCH_RATEEST is not set ++# CONFIG_NETFILTER_XT_MATCH_REALM is not set ++# CONFIG_NETFILTER_XT_MATCH_RECENT is not set ++# CONFIG_NETFILTER_XT_MATCH_SCTP is not set ++# CONFIG_NETFILTER_XT_MATCH_SOCKET is not set ++# CONFIG_NETFILTER_XT_MATCH_STATE is not set ++# CONFIG_NETFILTER_XT_MATCH_STATISTIC is not set ++# CONFIG_NETFILTER_XT_MATCH_STRING is not set ++# CONFIG_NETFILTER_XT_MATCH_TCPMSS is not set ++# CONFIG_NETFILTER_XT_MATCH_TIME is not set ++# CONFIG_NETFILTER_XT_MATCH_U32 is not set ++# CONFIG_IP_SET is not set ++# CONFIG_IP_VS is not set ++ ++# ++# IP: Netfilter Configuration ++# ++CONFIG_NF_DEFRAG_IPV4=m ++# CONFIG_NF_SOCKET_IPV4 is not set ++# CONFIG_NF_TPROXY_IPV4 is not set ++# CONFIG_NF_DUP_IPV4 is not set ++# CONFIG_NF_LOG_ARP is not set ++# CONFIG_NF_LOG_IPV4 is not set ++# CONFIG_NF_REJECT_IPV4 is not set ++CONFIG_NF_NAT_IPV4=m ++CONFIG_NF_NAT_MASQUERADE_IPV4=y ++CONFIG_IP_NF_IPTABLES=m ++# CONFIG_IP_NF_MATCH_AH is not set ++# CONFIG_IP_NF_MATCH_ECN is not set ++# CONFIG_IP_NF_MATCH_RPFILTER is not set ++# CONFIG_IP_NF_MATCH_TTL is not set ++# CONFIG_IP_NF_FILTER is not set ++# CONFIG_IP_NF_TARGET_SYNPROXY is not set ++CONFIG_IP_NF_NAT=m ++CONFIG_IP_NF_TARGET_MASQUERADE=m ++# CONFIG_IP_NF_TARGET_NETMAP is not set ++# CONFIG_IP_NF_TARGET_REDIRECT is not set ++CONFIG_IP_NF_MANGLE=m ++# CONFIG_IP_NF_TARGET_CLUSTERIP is not set ++# CONFIG_IP_NF_TARGET_ECN is not set ++# CONFIG_IP_NF_TARGET_TTL is not set ++# CONFIG_IP_NF_RAW is not set ++# CONFIG_IP_NF_SECURITY is not set ++# CONFIG_IP_NF_ARPTABLES is not set ++ ++# ++# IPv6: Netfilter Configuration ++# ++# CONFIG_NF_SOCKET_IPV6 is not set ++# CONFIG_NF_TPROXY_IPV6 is not set ++# CONFIG_NF_DUP_IPV6 is not set ++# CONFIG_NF_REJECT_IPV6 is not set ++# CONFIG_NF_LOG_IPV6 is not set ++CONFIG_NF_NAT_IPV6=m ++CONFIG_NF_NAT_MASQUERADE_IPV6=y ++CONFIG_IP6_NF_IPTABLES=m ++# CONFIG_IP6_NF_MATCH_AH is not set ++# CONFIG_IP6_NF_MATCH_EUI64 is not set ++# CONFIG_IP6_NF_MATCH_FRAG is not set ++# CONFIG_IP6_NF_MATCH_OPTS is not set ++# CONFIG_IP6_NF_MATCH_HL is not set ++# CONFIG_IP6_NF_MATCH_IPV6HEADER is not set ++# CONFIG_IP6_NF_MATCH_MH is not set ++# CONFIG_IP6_NF_MATCH_RPFILTER is not set ++# CONFIG_IP6_NF_MATCH_RT is not set ++# CONFIG_IP6_NF_MATCH_SRH is not set ++# CONFIG_IP6_NF_TARGET_HL is not set ++# CONFIG_IP6_NF_FILTER is not set ++# CONFIG_IP6_NF_TARGET_SYNPROXY is not set ++CONFIG_IP6_NF_MANGLE=m ++# CONFIG_IP6_NF_RAW is not set ++# CONFIG_IP6_NF_SECURITY is not set ++CONFIG_IP6_NF_NAT=m ++CONFIG_IP6_NF_TARGET_MASQUERADE=m ++# CONFIG_IP6_NF_TARGET_NPT is not set ++CONFIG_NF_DEFRAG_IPV6=m ++# CONFIG_BRIDGE_NF_EBTABLES is not set ++# CONFIG_BPFILTER is not set ++# CONFIG_IP_DCCP is not set ++# CONFIG_IP_SCTP is not set ++# CONFIG_RDS is not set ++# CONFIG_TIPC is not set ++# CONFIG_ATM is not set ++# CONFIG_L2TP is not set ++CONFIG_STP=y ++CONFIG_BRIDGE=y ++CONFIG_BRIDGE_IGMP_SNOOPING=y ++# CONFIG_BRIDGE_VLAN_FILTERING is not set ++CONFIG_HAVE_NET_DSA=y ++# CONFIG_NET_DSA is not set ++CONFIG_VLAN_8021Q=y ++# CONFIG_VLAN_8021Q_GVRP is not set ++# CONFIG_VLAN_8021Q_MVRP is not set ++# CONFIG_DECNET is not set ++CONFIG_LLC=y ++# CONFIG_LLC2 is not set ++# CONFIG_ATALK is not set ++# CONFIG_X25 is not set ++# CONFIG_LAPB is not set ++# CONFIG_PHONET is not set ++# CONFIG_6LOWPAN is not set ++# CONFIG_IEEE802154 is not set ++CONFIG_NET_SCHED=y ++ ++# ++# Queueing/Scheduling ++# ++# CONFIG_NET_SCH_CBQ is not set ++# CONFIG_NET_SCH_HTB is not set ++# CONFIG_NET_SCH_HFSC is not set ++# CONFIG_NET_SCH_PRIO is not set ++# CONFIG_NET_SCH_MULTIQ is not set ++# CONFIG_NET_SCH_RED is not set ++# CONFIG_NET_SCH_SFB is not set ++# CONFIG_NET_SCH_SFQ is not set ++# CONFIG_NET_SCH_TEQL is not set ++# CONFIG_NET_SCH_TBF is not set ++# CONFIG_NET_SCH_CBS is not set ++# CONFIG_NET_SCH_ETF is not set ++# CONFIG_NET_SCH_TAPRIO is not set ++# CONFIG_NET_SCH_GRED is not set ++# CONFIG_NET_SCH_DSMARK is not set ++# CONFIG_NET_SCH_NETEM is not set ++# CONFIG_NET_SCH_DRR is not set ++# CONFIG_NET_SCH_MQPRIO is not set ++# CONFIG_NET_SCH_SKBPRIO is not set ++# CONFIG_NET_SCH_CHOKE is not set ++# CONFIG_NET_SCH_QFQ is not set ++# CONFIG_NET_SCH_CODEL is not set ++# CONFIG_NET_SCH_FQ_CODEL is not set ++# CONFIG_NET_SCH_CAKE is not set ++# CONFIG_NET_SCH_FQ is not set ++# CONFIG_NET_SCH_HHF is not set ++# CONFIG_NET_SCH_PIE is not set ++# CONFIG_NET_SCH_INGRESS is not set ++# CONFIG_NET_SCH_PLUG is not set ++# CONFIG_NET_SCH_DEFAULT is not set ++ ++# ++# Classification ++# ++CONFIG_NET_CLS=y ++# CONFIG_NET_CLS_BASIC is not set ++# CONFIG_NET_CLS_TCINDEX is not set ++# CONFIG_NET_CLS_ROUTE4 is not set ++# CONFIG_NET_CLS_FW is not set ++# CONFIG_NET_CLS_U32 is not set ++# CONFIG_NET_CLS_RSVP is not set ++# CONFIG_NET_CLS_RSVP6 is not set ++# CONFIG_NET_CLS_FLOW is not set ++# CONFIG_NET_CLS_CGROUP is not set ++# CONFIG_NET_CLS_BPF is not set ++# CONFIG_NET_CLS_FLOWER is not set ++# CONFIG_NET_CLS_MATCHALL is not set ++CONFIG_NET_EMATCH=y ++CONFIG_NET_EMATCH_STACK=32 ++# CONFIG_NET_EMATCH_CMP is not set ++# CONFIG_NET_EMATCH_NBYTE is not set ++# CONFIG_NET_EMATCH_U32 is not set ++# CONFIG_NET_EMATCH_META is not set ++# CONFIG_NET_EMATCH_TEXT is not set ++# CONFIG_NET_EMATCH_IPT is not set ++CONFIG_NET_CLS_ACT=y ++# CONFIG_NET_ACT_POLICE is not set ++# CONFIG_NET_ACT_GACT is not set ++# CONFIG_NET_ACT_MIRRED is not set ++# CONFIG_NET_ACT_SAMPLE is not set ++# CONFIG_NET_ACT_IPT is not set ++# CONFIG_NET_ACT_NAT is not set ++# CONFIG_NET_ACT_PEDIT is not set ++# CONFIG_NET_ACT_SIMP is not set ++# CONFIG_NET_ACT_SKBEDIT is not set ++# CONFIG_NET_ACT_CSUM is not set ++# CONFIG_NET_ACT_VLAN is not set ++# CONFIG_NET_ACT_BPF is not set ++# CONFIG_NET_ACT_SKBMOD is not set ++# CONFIG_NET_ACT_IFE is not set ++# CONFIG_NET_ACT_TUNNEL_KEY is not set ++CONFIG_NET_SCH_FIFO=y ++# CONFIG_DCB is not set ++CONFIG_DNS_RESOLVER=y ++# CONFIG_BATMAN_ADV is not set ++# CONFIG_OPENVSWITCH is not set ++# CONFIG_VSOCKETS is not set ++CONFIG_NETLINK_DIAG=y ++# CONFIG_MPLS is not set ++# CONFIG_NET_NSH is not set ++# CONFIG_HSR is not set ++# CONFIG_NET_SWITCHDEV is not set ++# CONFIG_NET_L3_MASTER_DEV is not set ++# CONFIG_NET_NCSI is not set ++CONFIG_RPS=y ++CONFIG_RFS_ACCEL=y ++CONFIG_XPS=y ++# CONFIG_CGROUP_NET_PRIO is not set ++# CONFIG_CGROUP_NET_CLASSID is not set ++CONFIG_NET_RX_BUSY_POLL=y ++CONFIG_BQL=y ++# CONFIG_BPF_JIT is not set ++CONFIG_NET_FLOW_LIMIT=y ++ ++# ++# Network testing ++# ++# CONFIG_NET_PKTGEN is not set ++# CONFIG_NET_DROP_MONITOR is not set ++CONFIG_HAMRADIO=y ++ ++# ++# Packet Radio protocols ++# ++# CONFIG_AX25 is not set ++# CONFIG_CAN is not set ++# CONFIG_BT is not set ++# CONFIG_AF_RXRPC is not set ++# CONFIG_AF_KCM is not set ++CONFIG_FIB_RULES=y ++CONFIG_WIRELESS=y ++# CONFIG_CFG80211 is not set ++ ++# ++# CFG80211 needs to be enabled for MAC80211 ++# ++CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 ++# CONFIG_WIMAX is not set ++CONFIG_RFKILL=y ++CONFIG_RFKILL_LEDS=y ++CONFIG_RFKILL_INPUT=y ++# CONFIG_NET_9P is not set ++# CONFIG_CAIF is not set ++# CONFIG_CEPH_LIB is not set ++# CONFIG_NFC is not set ++# CONFIG_PSAMPLE is not set ++# CONFIG_NET_IFE is not set ++# CONFIG_LWTUNNEL is not set ++CONFIG_DST_CACHE=y ++CONFIG_GRO_CELLS=y ++# CONFIG_NET_DEVLINK is not set ++CONFIG_MAY_USE_DEVLINK=y ++# CONFIG_FAILOVER is not set ++CONFIG_HAVE_EBPF_JIT=y ++ ++# ++# Device Drivers ++# ++CONFIG_HAVE_EISA=y ++# CONFIG_EISA is not set ++CONFIG_HAVE_PCI=y ++CONFIG_PCI=y ++CONFIG_PCI_DOMAINS=y ++CONFIG_PCIEPORTBUS=y ++CONFIG_HOTPLUG_PCI_PCIE=y ++CONFIG_PCIEAER=y ++# CONFIG_PCIEAER_INJECT is not set ++# CONFIG_PCIE_ECRC is not set ++CONFIG_PCIEASPM=y ++CONFIG_PCIEASPM_DEBUG=y ++CONFIG_PCIEASPM_DEFAULT=y ++# CONFIG_PCIEASPM_POWERSAVE is not set ++# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set ++# CONFIG_PCIEASPM_PERFORMANCE is not set ++CONFIG_PCIE_PME=y ++# CONFIG_PCIE_DPC is not set ++# CONFIG_PCIE_PTM is not set ++CONFIG_PCI_MSI=y ++CONFIG_PCI_MSI_IRQ_DOMAIN=y ++CONFIG_PCI_QUIRKS=y ++# CONFIG_PCI_DEBUG is not set ++CONFIG_PCI_REALLOC_ENABLE_AUTO=y ++CONFIG_PCI_STUB=y ++# CONFIG_PCI_PF_STUB is not set ++CONFIG_PCI_ATS=y ++CONFIG_PCI_LOCKLESS_CONFIG=y ++CONFIG_PCI_IOV=y ++CONFIG_PCI_PRI=y ++CONFIG_PCI_PASID=y ++CONFIG_PCI_LABEL=y ++CONFIG_HOTPLUG_PCI=y ++# CONFIG_HOTPLUG_PCI_ACPI is not set ++# CONFIG_HOTPLUG_PCI_CPCI is not set ++# CONFIG_HOTPLUG_PCI_SHPC is not set ++ ++# ++# PCI controller drivers ++# ++ ++# ++# Cadence PCIe controllers support ++# ++# CONFIG_VMD is not set ++ ++# ++# DesignWare PCI Core Support ++# ++# CONFIG_PCIE_DW_PLAT_HOST is not set ++# CONFIG_PCI_MESON is not set ++ ++# ++# PCI Endpoint ++# ++# CONFIG_PCI_ENDPOINT is not set ++ ++# ++# PCI switch controller drivers ++# ++# CONFIG_PCI_SW_SWITCHTEC is not set ++# CONFIG_PCCARD is not set ++CONFIG_RAPIDIO=y ++# CONFIG_RAPIDIO_TSI721 is not set ++CONFIG_RAPIDIO_DISC_TIMEOUT=30 ++# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set ++CONFIG_RAPIDIO_DMA_ENGINE=y ++# CONFIG_RAPIDIO_DEBUG is not set ++# CONFIG_RAPIDIO_ENUM_BASIC is not set ++# CONFIG_RAPIDIO_CHMAN is not set ++# CONFIG_RAPIDIO_MPORT_CDEV is not set ++ ++# ++# RapidIO Switch drivers ++# ++# CONFIG_RAPIDIO_TSI57X is not set ++# CONFIG_RAPIDIO_CPS_XX is not set ++# CONFIG_RAPIDIO_TSI568 is not set ++# CONFIG_RAPIDIO_CPS_GEN2 is not set ++# CONFIG_RAPIDIO_RXS_GEN3 is not set ++ ++# ++# Generic Driver Options ++# ++CONFIG_UEVENT_HELPER=y ++CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" ++CONFIG_DEVTMPFS=y ++CONFIG_DEVTMPFS_MOUNT=y ++CONFIG_STANDALONE=y ++# CONFIG_PREVENT_FIRMWARE_BUILD is not set ++ ++# ++# Firmware loader ++# ++CONFIG_FW_LOADER=y ++CONFIG_EXTRA_FIRMWARE="" ++# CONFIG_FW_LOADER_USER_HELPER is not set ++CONFIG_ALLOW_DEV_COREDUMP=y ++# CONFIG_DEBUG_DRIVER is not set ++# CONFIG_DEBUG_DEVRES is not set ++# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set ++# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set ++CONFIG_GENERIC_CPU_AUTOPROBE=y ++CONFIG_GENERIC_CPU_VULNERABILITIES=y ++CONFIG_REGMAP=y ++CONFIG_REGMAP_I2C=y ++CONFIG_DMA_SHARED_BUFFER=y ++# CONFIG_DMA_FENCE_TRACE is not set ++# CONFIG_DMA_CMA is not set ++ ++# ++# Bus devices ++# ++# CONFIG_CONNECTOR is not set ++# CONFIG_GNSS is not set ++# CONFIG_MTD is not set ++# CONFIG_OF is not set ++CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y ++CONFIG_PARPORT=y ++CONFIG_PARPORT_PC=y ++CONFIG_PARPORT_SERIAL=y ++# CONFIG_PARPORT_PC_FIFO is not set ++# CONFIG_PARPORT_PC_SUPERIO is not set ++# CONFIG_PARPORT_AX88796 is not set ++# CONFIG_PARPORT_1284 is not set ++CONFIG_PNP=y ++CONFIG_PNP_DEBUG_MESSAGES=y ++ ++# ++# Protocols ++# ++CONFIG_PNPACPI=y ++CONFIG_BLK_DEV=y ++# CONFIG_BLK_DEV_NULL_BLK is not set ++# CONFIG_BLK_DEV_FD is not set ++CONFIG_CDROM=y ++# CONFIG_PARIDE is not set ++# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set ++# CONFIG_ZRAM is not set ++# CONFIG_BLK_DEV_UMEM is not set ++CONFIG_BLK_DEV_LOOP=y ++CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 ++# CONFIG_BLK_DEV_CRYPTOLOOP is not set ++# CONFIG_BLK_DEV_DRBD is not set ++# CONFIG_BLK_DEV_NBD is not set ++# CONFIG_BLK_DEV_SKD is not set ++# CONFIG_BLK_DEV_SX8 is not set ++CONFIG_BLK_DEV_RAM=y ++CONFIG_BLK_DEV_RAM_COUNT=16 ++CONFIG_BLK_DEV_RAM_SIZE=16384 ++# CONFIG_CDROM_PKTCDVD is not set ++# CONFIG_ATA_OVER_ETH is not set ++# CONFIG_BLK_DEV_RBD is not set ++# CONFIG_BLK_DEV_RSXX is not set ++ ++# ++# NVME Support ++# ++# CONFIG_BLK_DEV_NVME is not set ++# CONFIG_NVME_FC is not set ++# CONFIG_NVME_TARGET is not set ++ ++# ++# Misc devices ++# ++# CONFIG_AD525X_DPOT is not set ++# CONFIG_DUMMY_IRQ is not set ++# CONFIG_IBM_ASM is not set ++# CONFIG_PHANTOM is not set ++# CONFIG_SGI_IOC4 is not set ++# CONFIG_TIFM_CORE is not set ++# CONFIG_ICS932S401 is not set ++# CONFIG_ENCLOSURE_SERVICES is not set ++# CONFIG_HP_ILO is not set ++# CONFIG_APDS9802ALS is not set ++# CONFIG_ISL29003 is not set ++# CONFIG_ISL29020 is not set ++# CONFIG_SENSORS_TSL2550 is not set ++# CONFIG_SENSORS_BH1770 is not set ++# CONFIG_SENSORS_APDS990X is not set ++# CONFIG_HMC6352 is not set ++# CONFIG_DS1682 is not set ++# CONFIG_USB_SWITCH_FSA9480 is not set ++# CONFIG_SRAM is not set ++# CONFIG_PCI_ENDPOINT_TEST is not set ++# CONFIG_PVPANIC is not set ++# CONFIG_C2PORT is not set ++ ++# ++# EEPROM support ++# ++# CONFIG_EEPROM_AT24 is not set ++# CONFIG_EEPROM_LEGACY is not set ++# CONFIG_EEPROM_MAX6875 is not set ++# CONFIG_EEPROM_93CX6 is not set ++# CONFIG_EEPROM_IDT_89HPESX is not set ++# CONFIG_EEPROM_EE1004 is not set ++# CONFIG_CB710_CORE is not set ++ ++# ++# Texas Instruments shared transport line discipline ++# ++# CONFIG_SENSORS_LIS3_I2C is not set ++# CONFIG_ALTERA_STAPL is not set ++# CONFIG_INTEL_MEI is not set ++# CONFIG_INTEL_MEI_ME is not set ++# CONFIG_INTEL_MEI_TXE is not set ++# CONFIG_VMWARE_VMCI is not set ++ ++# ++# Intel MIC & related support ++# ++ ++# ++# Intel MIC Bus Driver ++# ++# CONFIG_INTEL_MIC_BUS is not set ++ ++# ++# SCIF Bus Driver ++# ++# CONFIG_SCIF_BUS is not set ++ ++# ++# VOP Bus Driver ++# ++# CONFIG_VOP_BUS is not set ++ ++# ++# Intel MIC Host Driver ++# ++ ++# ++# Intel MIC Card Driver ++# ++ ++# ++# SCIF Driver ++# ++ ++# ++# Intel MIC Coprocessor State Management (COSM) Drivers ++# ++ ++# ++# VOP Driver ++# ++# CONFIG_GENWQE is not set ++# CONFIG_ECHO is not set ++# CONFIG_MISC_ALCOR_PCI is not set ++# CONFIG_MISC_RTSX_PCI is not set ++# CONFIG_MISC_RTSX_USB is not set ++CONFIG_HAVE_IDE=y ++# CONFIG_IDE is not set ++ ++# ++# SCSI device support ++# ++CONFIG_SCSI_MOD=y ++# CONFIG_RAID_ATTRS is not set ++CONFIG_SCSI=y ++CONFIG_SCSI_DMA=y ++CONFIG_SCSI_PROC_FS=y ++ ++# ++# SCSI support type (disk, tape, CD-ROM) ++# ++CONFIG_BLK_DEV_SD=y ++# CONFIG_CHR_DEV_ST is not set ++# CONFIG_CHR_DEV_OSST is not set ++CONFIG_BLK_DEV_SR=y ++# CONFIG_BLK_DEV_SR_VENDOR is not set ++CONFIG_CHR_DEV_SG=y ++# CONFIG_CHR_DEV_SCH is not set ++CONFIG_SCSI_CONSTANTS=y ++# CONFIG_SCSI_LOGGING is not set ++# CONFIG_SCSI_SCAN_ASYNC is not set ++ ++# ++# SCSI Transports ++# ++CONFIG_SCSI_SPI_ATTRS=y ++# CONFIG_SCSI_FC_ATTRS is not set ++CONFIG_SCSI_ISCSI_ATTRS=y ++# CONFIG_SCSI_SAS_ATTRS is not set ++# CONFIG_SCSI_SAS_LIBSAS is not set ++# CONFIG_SCSI_SRP_ATTRS is not set ++# CONFIG_SCSI_LOWLEVEL is not set ++# CONFIG_SCSI_DH is not set ++# CONFIG_SCSI_OSD_INITIATOR is not set ++CONFIG_ATA=y ++CONFIG_ATA_VERBOSE_ERROR=y ++CONFIG_ATA_ACPI=y ++# CONFIG_SATA_ZPODD is not set ++CONFIG_SATA_PMP=y ++ ++# ++# Controllers with non-SFF native interface ++# ++CONFIG_SATA_AHCI=y ++CONFIG_SATA_MOBILE_LPM_POLICY=0 ++CONFIG_SATA_AHCI_PLATFORM=y ++# CONFIG_SATA_INIC162X is not set ++# CONFIG_SATA_ACARD_AHCI is not set ++CONFIG_SATA_SIL24=y ++CONFIG_ATA_SFF=y ++ ++# ++# SFF controllers with custom DMA interface ++# ++# CONFIG_PDC_ADMA is not set ++# CONFIG_SATA_QSTOR is not set ++CONFIG_SATA_SX4=y ++CONFIG_ATA_BMDMA=y ++ ++# ++# SATA SFF controllers with BMDMA ++# ++CONFIG_ATA_PIIX=y ++# CONFIG_SATA_DWC is not set ++# CONFIG_SATA_MV is not set ++# CONFIG_SATA_NV is not set ++CONFIG_SATA_PROMISE=y ++CONFIG_SATA_SIL=y ++# CONFIG_SATA_SIS is not set ++# CONFIG_SATA_SVW is not set ++# CONFIG_SATA_ULI is not set ++# CONFIG_SATA_VIA is not set ++# CONFIG_SATA_VITESSE is not set ++ ++# ++# PATA SFF controllers with BMDMA ++# ++# CONFIG_PATA_ALI is not set ++CONFIG_PATA_AMD=y ++# CONFIG_PATA_ARTOP is not set ++CONFIG_PATA_ATIIXP=y ++# CONFIG_PATA_ATP867X is not set ++# CONFIG_PATA_CMD64X is not set ++# CONFIG_PATA_CYPRESS is not set ++# CONFIG_PATA_EFAR is not set ++# CONFIG_PATA_HPT366 is not set ++# CONFIG_PATA_HPT37X is not set ++# CONFIG_PATA_HPT3X2N is not set ++# CONFIG_PATA_HPT3X3 is not set ++# CONFIG_PATA_IT8213 is not set ++# CONFIG_PATA_IT821X is not set ++# CONFIG_PATA_JMICRON is not set ++# CONFIG_PATA_MARVELL is not set ++# CONFIG_PATA_NETCELL is not set ++# CONFIG_PATA_NINJA32 is not set ++# CONFIG_PATA_NS87415 is not set ++CONFIG_PATA_OLDPIIX=y ++# CONFIG_PATA_OPTIDMA is not set ++# CONFIG_PATA_PDC2027X is not set ++# CONFIG_PATA_PDC_OLD is not set ++# CONFIG_PATA_RADISYS is not set ++# CONFIG_PATA_RDC is not set ++CONFIG_PATA_SCH=y ++CONFIG_PATA_SERVERWORKS=y ++# CONFIG_PATA_SIL680 is not set ++# CONFIG_PATA_SIS is not set ++# CONFIG_PATA_TOSHIBA is not set ++# CONFIG_PATA_TRIFLEX is not set ++# CONFIG_PATA_VIA is not set ++# CONFIG_PATA_WINBOND is not set ++ ++# ++# PIO-only SFF controllers ++# ++# CONFIG_PATA_CMD640_PCI is not set ++# CONFIG_PATA_MPIIX is not set ++# CONFIG_PATA_NS87410 is not set ++# CONFIG_PATA_OPTI is not set ++# CONFIG_PATA_PLATFORM is not set ++# CONFIG_PATA_RZ1000 is not set ++ ++# ++# Generic fallback / legacy drivers ++# ++# CONFIG_PATA_ACPI is not set ++CONFIG_ATA_GENERIC=y ++# CONFIG_PATA_LEGACY is not set ++CONFIG_MD=y ++CONFIG_BLK_DEV_MD=y ++CONFIG_MD_AUTODETECT=y ++# CONFIG_MD_LINEAR is not set ++# CONFIG_MD_RAID0 is not set ++# CONFIG_MD_RAID1 is not set ++# CONFIG_MD_RAID10 is not set ++# CONFIG_MD_RAID456 is not set ++# CONFIG_MD_MULTIPATH is not set ++# CONFIG_MD_FAULTY is not set ++# CONFIG_BCACHE is not set ++CONFIG_BLK_DEV_DM_BUILTIN=y ++CONFIG_BLK_DEV_DM=y ++# CONFIG_DM_DEBUG is not set ++# CONFIG_DM_UNSTRIPED is not set ++# CONFIG_DM_CRYPT is not set ++# CONFIG_DM_SNAPSHOT is not set ++# CONFIG_DM_THIN_PROVISIONING is not set ++# CONFIG_DM_CACHE is not set ++# CONFIG_DM_WRITECACHE is not set ++# CONFIG_DM_ERA is not set ++CONFIG_DM_MIRROR=y ++# CONFIG_DM_LOG_USERSPACE is not set ++# CONFIG_DM_RAID is not set ++CONFIG_DM_ZERO=y ++# CONFIG_DM_MULTIPATH is not set ++# CONFIG_DM_DELAY is not set ++# CONFIG_DM_UEVENT is not set ++# CONFIG_DM_FLAKEY is not set ++# CONFIG_DM_VERITY is not set ++# CONFIG_DM_SWITCH is not set ++# CONFIG_DM_LOG_WRITES is not set ++# CONFIG_DM_INTEGRITY is not set ++# CONFIG_TARGET_CORE is not set ++# CONFIG_FUSION is not set ++ ++# ++# IEEE 1394 (FireWire) support ++# ++# CONFIG_FIREWIRE is not set ++# CONFIG_FIREWIRE_NOSY is not set ++# CONFIG_MACINTOSH_DRIVERS is not set ++CONFIG_NETDEVICES=y ++CONFIG_MII=y ++CONFIG_NET_CORE=y ++# CONFIG_BONDING is not set ++# CONFIG_DUMMY is not set ++# CONFIG_EQUALIZER is not set ++# CONFIG_NET_FC is not set ++# CONFIG_IFB is not set ++# CONFIG_NET_TEAM is not set ++CONFIG_MACVLAN=y ++# CONFIG_MACVTAP is not set ++# CONFIG_IPVLAN is not set ++# CONFIG_VXLAN is not set ++# CONFIG_MACSEC is not set ++CONFIG_NETCONSOLE=y ++CONFIG_NETCONSOLE_DYNAMIC=y ++CONFIG_NETPOLL=y ++CONFIG_NET_POLL_CONTROLLER=y ++# CONFIG_RIONET is not set ++# CONFIG_TUN is not set ++# CONFIG_TUN_VNET_CROSS_LE is not set ++CONFIG_VETH=y ++# CONFIG_NLMON is not set ++# CONFIG_ARCNET is not set ++ ++# ++# CAIF transport drivers ++# ++ ++# ++# Distributed Switch Architecture drivers ++# ++CONFIG_ETHERNET=y ++CONFIG_MDIO=y ++CONFIG_NET_VENDOR_3COM=y ++# CONFIG_VORTEX is not set ++# CONFIG_TYPHOON is not set ++CONFIG_NET_VENDOR_ADAPTEC=y ++# CONFIG_ADAPTEC_STARFIRE is not set ++CONFIG_NET_VENDOR_AGERE=y ++# CONFIG_ET131X is not set ++CONFIG_NET_VENDOR_ALACRITECH=y ++# CONFIG_SLICOSS is not set ++CONFIG_NET_VENDOR_ALTEON=y ++# CONFIG_ACENIC is not set ++# CONFIG_ALTERA_TSE is not set ++CONFIG_NET_VENDOR_AMAZON=y ++# CONFIG_ENA_ETHERNET is not set ++CONFIG_NET_VENDOR_AMD=y ++# CONFIG_AMD8111_ETH is not set ++# CONFIG_PCNET32 is not set ++# CONFIG_AMD_XGBE is not set ++CONFIG_NET_VENDOR_AQUANTIA=y ++# CONFIG_AQTION is not set ++CONFIG_NET_VENDOR_ARC=y ++CONFIG_NET_VENDOR_ATHEROS=y ++# CONFIG_ATL2 is not set ++# CONFIG_ATL1 is not set ++# CONFIG_ATL1E is not set ++# CONFIG_ATL1C is not set ++CONFIG_ALX=y ++# CONFIG_NET_VENDOR_AURORA is not set ++CONFIG_NET_VENDOR_BROADCOM=y ++# CONFIG_B44 is not set ++# CONFIG_BCMGENET is not set ++CONFIG_BNX2=y ++# CONFIG_CNIC is not set ++CONFIG_TIGON3=y ++CONFIG_TIGON3_HWMON=y ++# CONFIG_BNX2X is not set ++# CONFIG_SYSTEMPORT is not set ++# CONFIG_BNXT is not set ++CONFIG_NET_VENDOR_BROCADE=y ++# CONFIG_BNA is not set ++CONFIG_NET_VENDOR_CADENCE=y ++# CONFIG_MACB is not set ++CONFIG_NET_VENDOR_CAVIUM=y ++# CONFIG_THUNDER_NIC_PF is not set ++# CONFIG_THUNDER_NIC_VF is not set ++# CONFIG_THUNDER_NIC_BGX is not set ++# CONFIG_THUNDER_NIC_RGX is not set ++CONFIG_CAVIUM_PTP=y ++# CONFIG_LIQUIDIO is not set ++# CONFIG_LIQUIDIO_VF is not set ++CONFIG_NET_VENDOR_CHELSIO=y ++# CONFIG_CHELSIO_T1 is not set ++# CONFIG_CHELSIO_T3 is not set ++# CONFIG_CHELSIO_T4 is not set ++# CONFIG_CHELSIO_T4VF is not set ++CONFIG_NET_VENDOR_CISCO=y ++# CONFIG_ENIC is not set ++CONFIG_NET_VENDOR_CORTINA=y ++# CONFIG_CX_ECAT is not set ++# CONFIG_DNET is not set ++CONFIG_NET_VENDOR_DEC=y ++CONFIG_NET_TULIP=y ++# CONFIG_DE2104X is not set ++# CONFIG_TULIP is not set ++# CONFIG_DE4X5 is not set ++# CONFIG_WINBOND_840 is not set ++# CONFIG_DM9102 is not set ++# CONFIG_ULI526X is not set ++CONFIG_NET_VENDOR_DLINK=y ++# CONFIG_DL2K is not set ++# CONFIG_SUNDANCE is not set ++CONFIG_NET_VENDOR_EMULEX=y ++# CONFIG_BE2NET is not set ++CONFIG_NET_VENDOR_EZCHIP=y ++CONFIG_NET_VENDOR_HP=y ++# CONFIG_HP100 is not set ++CONFIG_NET_VENDOR_HUAWEI=y ++# CONFIG_HINIC is not set ++CONFIG_NET_VENDOR_I825XX=y ++CONFIG_NET_VENDOR_INTEL=y ++CONFIG_E100=y ++CONFIG_E1000=y ++CONFIG_E1000E=y ++CONFIG_E1000E_HWTS=y ++CONFIG_IGB=y ++CONFIG_IGB_HWMON=y ++CONFIG_IGBVF=y ++CONFIG_IXGB=y ++CONFIG_IXGBE=y ++CONFIG_IXGBE_HWMON=y ++# CONFIG_IXGBEVF is not set ++# CONFIG_I40E is not set ++# CONFIG_I40EVF is not set ++# CONFIG_ICE is not set ++# CONFIG_FM10K is not set ++# CONFIG_IGC is not set ++# CONFIG_JME is not set ++CONFIG_NET_VENDOR_MARVELL=y ++# CONFIG_MVMDIO is not set ++# CONFIG_SKGE is not set ++CONFIG_SKY2=y ++# CONFIG_SKY2_DEBUG is not set ++CONFIG_NET_VENDOR_MELLANOX=y ++# CONFIG_MLX4_EN is not set ++# CONFIG_MLX5_CORE is not set ++# CONFIG_MLXSW_CORE is not set ++# CONFIG_MLXFW is not set ++CONFIG_NET_VENDOR_MICREL=y ++# CONFIG_KS8842 is not set ++# CONFIG_KS8851_MLL is not set ++# CONFIG_KSZ884X_PCI is not set ++CONFIG_NET_VENDOR_MICROCHIP=y ++# CONFIG_LAN743X is not set ++CONFIG_NET_VENDOR_MICROSEMI=y ++CONFIG_NET_VENDOR_MYRI=y ++# CONFIG_MYRI10GE is not set ++# CONFIG_FEALNX is not set ++CONFIG_NET_VENDOR_NATSEMI=y ++# CONFIG_NATSEMI is not set ++# CONFIG_NS83820 is not set ++CONFIG_NET_VENDOR_NETERION=y ++# CONFIG_S2IO is not set ++# CONFIG_VXGE is not set ++CONFIG_NET_VENDOR_NETRONOME=y ++# CONFIG_NFP is not set ++CONFIG_NET_VENDOR_NI=y ++# CONFIG_NI_XGE_MANAGEMENT_ENET is not set ++CONFIG_NET_VENDOR_8390=y ++# CONFIG_NE2K_PCI is not set ++CONFIG_NET_VENDOR_NVIDIA=y ++CONFIG_FORCEDETH=y ++CONFIG_NET_VENDOR_OKI=y ++# CONFIG_ETHOC is not set ++CONFIG_NET_VENDOR_PACKET_ENGINES=y ++# CONFIG_HAMACHI is not set ++# CONFIG_YELLOWFIN is not set ++CONFIG_NET_VENDOR_QLOGIC=y ++# CONFIG_QLA3XXX is not set ++# CONFIG_QLCNIC is not set ++# CONFIG_QLGE is not set ++# CONFIG_NETXEN_NIC is not set ++# CONFIG_QED is not set ++CONFIG_NET_VENDOR_QUALCOMM=y ++# CONFIG_QCOM_EMAC is not set ++# CONFIG_RMNET is not set ++CONFIG_NET_VENDOR_RDC=y ++# CONFIG_R6040 is not set ++CONFIG_NET_VENDOR_REALTEK=y ++# CONFIG_ATP is not set ++CONFIG_8139CP=y ++CONFIG_8139TOO=y ++CONFIG_8139TOO_PIO=y ++# CONFIG_8139TOO_TUNE_TWISTER is not set ++# CONFIG_8139TOO_8129 is not set ++# CONFIG_8139_OLD_RX_RESET is not set ++CONFIG_R8169=y ++CONFIG_NET_VENDOR_RENESAS=y ++CONFIG_NET_VENDOR_ROCKER=y ++CONFIG_NET_VENDOR_SAMSUNG=y ++# CONFIG_SXGBE_ETH is not set ++CONFIG_NET_VENDOR_SEEQ=y ++CONFIG_NET_VENDOR_SOLARFLARE=y ++# CONFIG_SFC is not set ++# CONFIG_SFC_FALCON is not set ++CONFIG_NET_VENDOR_SILAN=y ++# CONFIG_SC92031 is not set ++CONFIG_NET_VENDOR_SIS=y ++# CONFIG_SIS900 is not set ++# CONFIG_SIS190 is not set ++CONFIG_NET_VENDOR_SMSC=y ++# CONFIG_EPIC100 is not set ++# CONFIG_SMSC911X is not set ++# CONFIG_SMSC9420 is not set ++CONFIG_NET_VENDOR_SOCIONEXT=y ++CONFIG_NET_VENDOR_STMICRO=y ++# CONFIG_STMMAC_ETH is not set ++CONFIG_NET_VENDOR_SUN=y ++# CONFIG_HAPPYMEAL is not set ++# CONFIG_SUNGEM is not set ++# CONFIG_CASSINI is not set ++# CONFIG_NIU is not set ++CONFIG_NET_VENDOR_SYNOPSYS=y ++# CONFIG_DWC_XLGMAC is not set ++CONFIG_NET_VENDOR_TEHUTI=y ++# CONFIG_TEHUTI is not set ++CONFIG_NET_VENDOR_TI=y ++# CONFIG_TI_CPSW_ALE is not set ++# CONFIG_TLAN is not set ++CONFIG_NET_VENDOR_VIA=y ++# CONFIG_VIA_RHINE is not set ++# CONFIG_VIA_VELOCITY is not set ++CONFIG_NET_VENDOR_WIZNET=y ++CONFIG_WIZNET_W5100=y ++CONFIG_WIZNET_W5300=y ++# CONFIG_WIZNET_BUS_DIRECT is not set ++# CONFIG_WIZNET_BUS_INDIRECT is not set ++CONFIG_WIZNET_BUS_ANY=y ++CONFIG_FDDI=y ++# CONFIG_DEFXX is not set ++# CONFIG_SKFP is not set ++# CONFIG_HIPPI is not set ++# CONFIG_NET_SB1000 is not set ++CONFIG_MDIO_DEVICE=y ++CONFIG_MDIO_BUS=y ++# CONFIG_MDIO_BCM_UNIMAC is not set ++# CONFIG_MDIO_BITBANG is not set ++# CONFIG_MDIO_MSCC_MIIM is not set ++# CONFIG_MDIO_THUNDER is not set ++CONFIG_PHYLIB=y ++# CONFIG_LED_TRIGGER_PHY is not set ++ ++# ++# MII PHY device drivers ++# ++CONFIG_AMD_PHY=y ++# CONFIG_AQUANTIA_PHY is not set ++# CONFIG_ASIX_PHY is not set ++# CONFIG_AT803X_PHY is not set ++# CONFIG_BCM7XXX_PHY is not set ++# CONFIG_BCM87XX_PHY is not set ++# CONFIG_BROADCOM_PHY is not set ++# CONFIG_CICADA_PHY is not set ++# CONFIG_CORTINA_PHY is not set ++# CONFIG_DAVICOM_PHY is not set ++# CONFIG_DP83822_PHY is not set ++# CONFIG_DP83TC811_PHY is not set ++# CONFIG_DP83848_PHY is not set ++# CONFIG_DP83867_PHY is not set ++# CONFIG_FIXED_PHY is not set ++# CONFIG_ICPLUS_PHY is not set ++# CONFIG_INTEL_XWAY_PHY is not set ++# CONFIG_LSI_ET1011C_PHY is not set ++# CONFIG_LXT_PHY is not set ++# CONFIG_MARVELL_PHY is not set ++# CONFIG_MARVELL_10G_PHY is not set ++# CONFIG_MICREL_PHY is not set ++# CONFIG_MICROCHIP_PHY is not set ++# CONFIG_MICROCHIP_T1_PHY is not set ++# CONFIG_MICROSEMI_PHY is not set ++# CONFIG_NATIONAL_PHY is not set ++# CONFIG_QSEMI_PHY is not set ++CONFIG_REALTEK_PHY=y ++# CONFIG_RENESAS_PHY is not set ++# CONFIG_ROCKCHIP_PHY is not set ++# CONFIG_SMSC_PHY is not set ++# CONFIG_STE10XP is not set ++# CONFIG_TERANETICS_PHY is not set ++# CONFIG_VITESSE_PHY is not set ++# CONFIG_XILINX_GMII2RGMII is not set ++# CONFIG_PLIP is not set ++# CONFIG_PPP is not set ++# CONFIG_SLIP is not set ++CONFIG_USB_NET_DRIVERS=m ++# CONFIG_USB_CATC is not set ++# CONFIG_USB_KAWETH is not set ++# CONFIG_USB_PEGASUS is not set ++# CONFIG_USB_RTL8150 is not set ++CONFIG_USB_RTL8152=m ++# CONFIG_USB_LAN78XX is not set ++CONFIG_USB_USBNET=m ++CONFIG_USB_NET_AX8817X=m ++CONFIG_USB_NET_AX88179_178A=m ++CONFIG_USB_NET_CDCETHER=m ++# CONFIG_USB_NET_CDC_EEM is not set ++CONFIG_USB_NET_CDC_NCM=m ++# CONFIG_USB_NET_HUAWEI_CDC_NCM is not set ++# CONFIG_USB_NET_CDC_MBIM is not set ++# CONFIG_USB_NET_DM9601 is not set ++# CONFIG_USB_NET_SR9700 is not set ++# CONFIG_USB_NET_SR9800 is not set ++# CONFIG_USB_NET_SMSC75XX is not set ++# CONFIG_USB_NET_SMSC95XX is not set ++# CONFIG_USB_NET_GL620A is not set ++CONFIG_USB_NET_NET1080=m ++# CONFIG_USB_NET_PLUSB is not set ++# CONFIG_USB_NET_MCS7830 is not set ++# CONFIG_USB_NET_RNDIS_HOST is not set ++CONFIG_USB_NET_CDC_SUBSET_ENABLE=m ++CONFIG_USB_NET_CDC_SUBSET=m ++# CONFIG_USB_ALI_M5632 is not set ++# CONFIG_USB_AN2720 is not set ++CONFIG_USB_BELKIN=y ++# CONFIG_USB_ARMLINUX is not set ++# CONFIG_USB_EPSON2888 is not set ++# CONFIG_USB_KC2190 is not set ++# CONFIG_USB_NET_ZAURUS is not set ++# CONFIG_USB_NET_CX82310_ETH is not set ++# CONFIG_USB_NET_KALMIA is not set ++# CONFIG_USB_NET_QMI_WWAN is not set ++# CONFIG_USB_HSO is not set ++# CONFIG_USB_NET_INT51X1 is not set ++# CONFIG_USB_IPHETH is not set ++# CONFIG_USB_SIERRA_NET is not set ++# CONFIG_USB_VL600 is not set ++# CONFIG_USB_NET_CH9200 is not set ++# CONFIG_USB_NET_AQC111 is not set ++CONFIG_WLAN=y ++# CONFIG_WIRELESS_WDS is not set ++CONFIG_WLAN_VENDOR_ADMTEK=y ++CONFIG_WLAN_VENDOR_ATH=y ++# CONFIG_ATH_DEBUG is not set ++# CONFIG_ATH5K_PCI is not set ++CONFIG_WLAN_VENDOR_ATMEL=y ++CONFIG_WLAN_VENDOR_BROADCOM=y ++CONFIG_WLAN_VENDOR_CISCO=y ++CONFIG_WLAN_VENDOR_INTEL=y ++# CONFIG_IWLWIFI is not set ++CONFIG_WLAN_VENDOR_INTERSIL=y ++# CONFIG_HOSTAP is not set ++# CONFIG_PRISM54 is not set ++CONFIG_WLAN_VENDOR_MARVELL=y ++CONFIG_WLAN_VENDOR_MEDIATEK=y ++CONFIG_WLAN_VENDOR_RALINK=y ++CONFIG_WLAN_VENDOR_REALTEK=y ++CONFIG_WLAN_VENDOR_RSI=y ++CONFIG_WLAN_VENDOR_ST=y ++CONFIG_WLAN_VENDOR_TI=y ++CONFIG_WLAN_VENDOR_ZYDAS=y ++CONFIG_WLAN_VENDOR_QUANTENNA=y ++ ++# ++# Enable WiMAX (Networking options) to see the WiMAX drivers ++# ++# CONFIG_WAN is not set ++# CONFIG_VMXNET3 is not set ++# CONFIG_FUJITSU_ES is not set ++# CONFIG_NETDEVSIM is not set ++# CONFIG_NET_FAILOVER is not set ++# CONFIG_ISDN is not set ++# CONFIG_NVM is not set ++ ++# ++# Input device support ++# ++CONFIG_INPUT=y ++CONFIG_INPUT_LEDS=y ++CONFIG_INPUT_FF_MEMLESS=y ++CONFIG_INPUT_POLLDEV=y ++CONFIG_INPUT_SPARSEKMAP=y ++# CONFIG_INPUT_MATRIXKMAP is not set ++ ++# ++# Userland interfaces ++# ++CONFIG_INPUT_MOUSEDEV=y ++# CONFIG_INPUT_MOUSEDEV_PSAUX is not set ++CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 ++CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 ++# CONFIG_INPUT_JOYDEV is not set ++CONFIG_INPUT_EVDEV=y ++# CONFIG_INPUT_EVBUG is not set ++ ++# ++# Input Device Drivers ++# ++CONFIG_INPUT_KEYBOARD=y ++# CONFIG_KEYBOARD_ADP5588 is not set ++# CONFIG_KEYBOARD_ADP5589 is not set ++CONFIG_KEYBOARD_ATKBD=y ++# CONFIG_KEYBOARD_QT1070 is not set ++# CONFIG_KEYBOARD_QT2160 is not set ++# CONFIG_KEYBOARD_DLINK_DIR685 is not set ++# CONFIG_KEYBOARD_LKKBD is not set ++# CONFIG_KEYBOARD_TCA6416 is not set ++# CONFIG_KEYBOARD_TCA8418 is not set ++# CONFIG_KEYBOARD_LM8323 is not set ++# CONFIG_KEYBOARD_LM8333 is not set ++# CONFIG_KEYBOARD_MAX7359 is not set ++# CONFIG_KEYBOARD_MCS is not set ++# CONFIG_KEYBOARD_MPR121 is not set ++# CONFIG_KEYBOARD_NEWTON is not set ++# CONFIG_KEYBOARD_OPENCORES is not set ++# CONFIG_KEYBOARD_SAMSUNG is not set ++# CONFIG_KEYBOARD_STOWAWAY is not set ++# CONFIG_KEYBOARD_SUNKBD is not set ++# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set ++# CONFIG_KEYBOARD_XTKBD is not set ++CONFIG_INPUT_MOUSE=y ++CONFIG_MOUSE_PS2=y ++CONFIG_MOUSE_PS2_ALPS=y ++CONFIG_MOUSE_PS2_BYD=y ++CONFIG_MOUSE_PS2_LOGIPS2PP=y ++CONFIG_MOUSE_PS2_SYNAPTICS=y ++CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y ++CONFIG_MOUSE_PS2_CYPRESS=y ++CONFIG_MOUSE_PS2_LIFEBOOK=y ++CONFIG_MOUSE_PS2_TRACKPOINT=y ++# CONFIG_MOUSE_PS2_ELANTECH is not set ++# CONFIG_MOUSE_PS2_SENTELIC is not set ++# CONFIG_MOUSE_PS2_TOUCHKIT is not set ++CONFIG_MOUSE_PS2_FOCALTECH=y ++# CONFIG_MOUSE_PS2_VMMOUSE is not set ++CONFIG_MOUSE_PS2_SMBUS=y ++# CONFIG_MOUSE_SERIAL is not set ++# CONFIG_MOUSE_APPLETOUCH is not set ++# CONFIG_MOUSE_BCM5974 is not set ++# CONFIG_MOUSE_CYAPA is not set ++# CONFIG_MOUSE_ELAN_I2C is not set ++# CONFIG_MOUSE_VSXXXAA is not set ++# CONFIG_MOUSE_SYNAPTICS_I2C is not set ++# CONFIG_MOUSE_SYNAPTICS_USB is not set ++# CONFIG_INPUT_JOYSTICK is not set ++# CONFIG_INPUT_TABLET is not set ++# CONFIG_INPUT_TOUCHSCREEN is not set ++# CONFIG_INPUT_MISC is not set ++# CONFIG_RMI4_CORE is not set ++ ++# ++# Hardware I/O ports ++# ++CONFIG_SERIO=y ++CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y ++CONFIG_SERIO_I8042=y ++CONFIG_SERIO_SERPORT=y ++# CONFIG_SERIO_CT82C710 is not set ++# CONFIG_SERIO_PARKBD is not set ++# CONFIG_SERIO_PCIPS2 is not set ++CONFIG_SERIO_LIBPS2=y ++# CONFIG_SERIO_RAW is not set ++# CONFIG_SERIO_ALTERA_PS2 is not set ++# CONFIG_SERIO_PS2MULT is not set ++# CONFIG_SERIO_ARC_PS2 is not set ++# CONFIG_SERIO_OLPC_APSP is not set ++# CONFIG_USERIO is not set ++# CONFIG_GAMEPORT is not set ++ ++# ++# Character devices ++# ++CONFIG_TTY=y ++CONFIG_VT=y ++CONFIG_CONSOLE_TRANSLATIONS=y ++CONFIG_VT_CONSOLE=y ++CONFIG_VT_CONSOLE_SLEEP=y ++CONFIG_HW_CONSOLE=y ++CONFIG_VT_HW_CONSOLE_BINDING=y ++CONFIG_UNIX98_PTYS=y ++# CONFIG_LEGACY_PTYS is not set ++CONFIG_SERIAL_NONSTANDARD=y ++# CONFIG_ROCKETPORT is not set ++# CONFIG_CYCLADES is not set ++# CONFIG_MOXA_INTELLIO is not set ++# CONFIG_MOXA_SMARTIO is not set ++# CONFIG_SYNCLINK is not set ++# CONFIG_SYNCLINKMP is not set ++# CONFIG_SYNCLINK_GT is not set ++# CONFIG_NOZOMI is not set ++# CONFIG_ISI is not set ++# CONFIG_N_HDLC is not set ++# CONFIG_N_GSM is not set ++# CONFIG_TRACE_SINK is not set ++CONFIG_DEVMEM=y ++# CONFIG_DEVKMEM is not set ++ ++# ++# Serial drivers ++# ++CONFIG_SERIAL_EARLYCON=y ++CONFIG_SERIAL_8250=y ++CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y ++CONFIG_SERIAL_8250_PNP=y ++# CONFIG_SERIAL_8250_FINTEK is not set ++CONFIG_SERIAL_8250_CONSOLE=y ++CONFIG_SERIAL_8250_DMA=y ++CONFIG_SERIAL_8250_PCI=y ++CONFIG_SERIAL_8250_EXAR=y ++CONFIG_SERIAL_8250_NR_UARTS=32 ++CONFIG_SERIAL_8250_RUNTIME_UARTS=4 ++CONFIG_SERIAL_8250_EXTENDED=y ++CONFIG_SERIAL_8250_MANY_PORTS=y ++CONFIG_SERIAL_8250_SHARE_IRQ=y ++CONFIG_SERIAL_8250_DETECT_IRQ=y ++CONFIG_SERIAL_8250_RSA=y ++# CONFIG_SERIAL_8250_DW is not set ++# CONFIG_SERIAL_8250_RT288X is not set ++CONFIG_SERIAL_8250_LPSS=y ++# CONFIG_SERIAL_8250_MID is not set ++# CONFIG_SERIAL_8250_MOXA is not set ++ ++# ++# Non-8250 serial port support ++# ++# CONFIG_SERIAL_KGDB_NMI is not set ++# CONFIG_SERIAL_UARTLITE is not set ++CONFIG_SERIAL_CORE=y ++CONFIG_SERIAL_CORE_CONSOLE=y ++CONFIG_CONSOLE_POLL=y ++# CONFIG_SERIAL_JSM is not set ++# CONFIG_SERIAL_SCCNXP is not set ++# CONFIG_SERIAL_SC16IS7XX is not set ++# CONFIG_SERIAL_ALTERA_JTAGUART is not set ++# CONFIG_SERIAL_ALTERA_UART is not set ++# CONFIG_SERIAL_ARC is not set ++# CONFIG_SERIAL_RP2 is not set ++# CONFIG_SERIAL_FSL_LPUART is not set ++# CONFIG_SERIAL_DEV_BUS is not set ++# CONFIG_TTY_PRINTK is not set ++# CONFIG_PRINTER is not set ++# CONFIG_PPDEV is not set ++# CONFIG_IPMI_HANDLER is not set ++# CONFIG_HW_RANDOM is not set ++# CONFIG_NVRAM is not set ++# CONFIG_R3964 is not set ++# CONFIG_APPLICOM is not set ++# CONFIG_MWAVE is not set ++# CONFIG_RAW_DRIVER is not set ++# CONFIG_HPET is not set ++# CONFIG_HANGCHECK_TIMER is not set ++# CONFIG_TCG_TPM is not set ++# CONFIG_TELCLOCK is not set ++CONFIG_DEVPORT=y ++# CONFIG_XILLYBUS is not set ++# CONFIG_RANDOM_TRUST_CPU is not set ++ ++# ++# I2C support ++# ++CONFIG_I2C=y ++CONFIG_ACPI_I2C_OPREGION=y ++CONFIG_I2C_BOARDINFO=y ++CONFIG_I2C_COMPAT=y ++# CONFIG_I2C_CHARDEV is not set ++# CONFIG_I2C_MUX is not set ++CONFIG_I2C_HELPER_AUTO=y ++CONFIG_I2C_SMBUS=y ++CONFIG_I2C_ALGOBIT=y ++ ++# ++# I2C Hardware Bus support ++# ++ ++# ++# PC SMBus host controller drivers ++# ++# CONFIG_I2C_ALI1535 is not set ++# CONFIG_I2C_ALI1563 is not set ++# CONFIG_I2C_ALI15X3 is not set ++# CONFIG_I2C_AMD756 is not set ++# CONFIG_I2C_AMD8111 is not set ++CONFIG_I2C_I801=y ++# CONFIG_I2C_ISCH is not set ++# CONFIG_I2C_ISMT is not set ++CONFIG_I2C_PIIX4=m ++# CONFIG_I2C_NFORCE2 is not set ++# CONFIG_I2C_NVIDIA_GPU is not set ++# CONFIG_I2C_SIS5595 is not set ++# CONFIG_I2C_SIS630 is not set ++# CONFIG_I2C_SIS96X is not set ++# CONFIG_I2C_VIA is not set ++# CONFIG_I2C_VIAPRO is not set ++ ++# ++# ACPI drivers ++# ++# CONFIG_I2C_SCMI is not set ++ ++# ++# I2C system bus drivers (mostly embedded / system-on-chip) ++# ++# CONFIG_I2C_DESIGNWARE_PLATFORM is not set ++# CONFIG_I2C_DESIGNWARE_PCI is not set ++# CONFIG_I2C_EMEV2 is not set ++# CONFIG_I2C_OCORES is not set ++# CONFIG_I2C_PCA_PLATFORM is not set ++# CONFIG_I2C_SIMTEC is not set ++# CONFIG_I2C_XILINX is not set ++ ++# ++# External I2C/SMBus adapter drivers ++# ++# CONFIG_I2C_DIOLAN_U2C is not set ++# CONFIG_I2C_PARPORT is not set ++# CONFIG_I2C_PARPORT_LIGHT is not set ++# CONFIG_I2C_ROBOTFUZZ_OSIF is not set ++# CONFIG_I2C_TAOS_EVM is not set ++# CONFIG_I2C_TINY_USB is not set ++ ++# ++# Other I2C/SMBus bus drivers ++# ++# CONFIG_I2C_MLXCPLD is not set ++# CONFIG_I2C_STUB is not set ++# CONFIG_I2C_SLAVE is not set ++# CONFIG_I2C_DEBUG_CORE is not set ++# CONFIG_I2C_DEBUG_ALGO is not set ++# CONFIG_I2C_DEBUG_BUS is not set ++# CONFIG_I3C is not set ++# CONFIG_SPI is not set ++# CONFIG_SPMI is not set ++# CONFIG_HSI is not set ++CONFIG_PPS=y ++# CONFIG_PPS_DEBUG is not set ++ ++# ++# PPS clients support ++# ++# CONFIG_PPS_CLIENT_KTIMER is not set ++# CONFIG_PPS_CLIENT_LDISC is not set ++# CONFIG_PPS_CLIENT_PARPORT is not set ++# CONFIG_PPS_CLIENT_GPIO is not set ++ ++# ++# PPS generators support ++# ++ ++# ++# PTP clock support ++# ++CONFIG_PTP_1588_CLOCK=y ++ ++# ++# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. ++# ++CONFIG_PTP_1588_CLOCK_KVM=y ++CONFIG_PINCTRL=y ++# CONFIG_DEBUG_PINCTRL is not set ++# CONFIG_PINCTRL_AMD is not set ++# CONFIG_PINCTRL_MCP23S08 is not set ++# CONFIG_PINCTRL_SX150X is not set ++# CONFIG_PINCTRL_BAYTRAIL is not set ++# CONFIG_PINCTRL_CHERRYVIEW is not set ++# CONFIG_PINCTRL_BROXTON is not set ++# CONFIG_PINCTRL_CANNONLAKE is not set ++# CONFIG_PINCTRL_CEDARFORK is not set ++# CONFIG_PINCTRL_DENVERTON is not set ++# CONFIG_PINCTRL_GEMINILAKE is not set ++# CONFIG_PINCTRL_ICELAKE is not set ++# CONFIG_PINCTRL_LEWISBURG is not set ++# CONFIG_PINCTRL_SUNRISEPOINT is not set ++# CONFIG_GPIOLIB is not set ++# CONFIG_W1 is not set ++# CONFIG_POWER_AVS is not set ++# CONFIG_POWER_RESET is not set ++CONFIG_POWER_SUPPLY=y ++# CONFIG_POWER_SUPPLY_DEBUG is not set ++# CONFIG_PDA_POWER is not set ++# CONFIG_TEST_POWER is not set ++# CONFIG_CHARGER_ADP5061 is not set ++# CONFIG_BATTERY_DS2780 is not set ++# CONFIG_BATTERY_DS2781 is not set ++# CONFIG_BATTERY_DS2782 is not set ++# CONFIG_BATTERY_SBS is not set ++# CONFIG_CHARGER_SBS is not set ++# CONFIG_BATTERY_BQ27XXX is not set ++# CONFIG_BATTERY_MAX17040 is not set ++# CONFIG_BATTERY_MAX17042 is not set ++# CONFIG_CHARGER_MAX8903 is not set ++# CONFIG_CHARGER_LP8727 is not set ++# CONFIG_CHARGER_BQ2415X is not set ++# CONFIG_CHARGER_SMB347 is not set ++# CONFIG_BATTERY_GAUGE_LTC2941 is not set ++CONFIG_HWMON=y ++# CONFIG_HWMON_DEBUG_CHIP is not set ++ ++# ++# Native drivers ++# ++# CONFIG_SENSORS_ABITUGURU is not set ++# CONFIG_SENSORS_ABITUGURU3 is not set ++# CONFIG_SENSORS_AD7414 is not set ++# CONFIG_SENSORS_AD7418 is not set ++# CONFIG_SENSORS_ADM1021 is not set ++# CONFIG_SENSORS_ADM1025 is not set ++# CONFIG_SENSORS_ADM1026 is not set ++# CONFIG_SENSORS_ADM1029 is not set ++# CONFIG_SENSORS_ADM1031 is not set ++# CONFIG_SENSORS_ADM9240 is not set ++# CONFIG_SENSORS_ADT7410 is not set ++# CONFIG_SENSORS_ADT7411 is not set ++# CONFIG_SENSORS_ADT7462 is not set ++# CONFIG_SENSORS_ADT7470 is not set ++# CONFIG_SENSORS_ADT7475 is not set ++# CONFIG_SENSORS_ASC7621 is not set ++# CONFIG_SENSORS_K8TEMP is not set ++CONFIG_SENSORS_K10TEMP=m ++# CONFIG_SENSORS_FAM15H_POWER is not set ++# CONFIG_SENSORS_APPLESMC is not set ++# CONFIG_SENSORS_ASB100 is not set ++# CONFIG_SENSORS_ASPEED is not set ++# CONFIG_SENSORS_ATXP1 is not set ++# CONFIG_SENSORS_DS620 is not set ++# CONFIG_SENSORS_DS1621 is not set ++CONFIG_SENSORS_DELL_SMM=m ++# CONFIG_SENSORS_I5K_AMB is not set ++# CONFIG_SENSORS_F71805F is not set ++# CONFIG_SENSORS_F71882FG is not set ++# CONFIG_SENSORS_F75375S is not set ++# CONFIG_SENSORS_FSCHMD is not set ++# CONFIG_SENSORS_FTSTEUTATES is not set ++# CONFIG_SENSORS_GL518SM is not set ++# CONFIG_SENSORS_GL520SM is not set ++# CONFIG_SENSORS_G760A is not set ++# CONFIG_SENSORS_G762 is not set ++# CONFIG_SENSORS_HIH6130 is not set ++# CONFIG_SENSORS_I5500 is not set ++# CONFIG_SENSORS_CORETEMP is not set ++# CONFIG_SENSORS_IT87 is not set ++# CONFIG_SENSORS_JC42 is not set ++# CONFIG_SENSORS_POWR1220 is not set ++# CONFIG_SENSORS_LINEAGE is not set ++# CONFIG_SENSORS_LTC2945 is not set ++# CONFIG_SENSORS_LTC2990 is not set ++# CONFIG_SENSORS_LTC4151 is not set ++# CONFIG_SENSORS_LTC4215 is not set ++# CONFIG_SENSORS_LTC4222 is not set ++# CONFIG_SENSORS_LTC4245 is not set ++# CONFIG_SENSORS_LTC4260 is not set ++# CONFIG_SENSORS_LTC4261 is not set ++# CONFIG_SENSORS_MAX16065 is not set ++# CONFIG_SENSORS_MAX1619 is not set ++# CONFIG_SENSORS_MAX1668 is not set ++# CONFIG_SENSORS_MAX197 is not set ++# CONFIG_SENSORS_MAX6621 is not set ++# CONFIG_SENSORS_MAX6639 is not set ++# CONFIG_SENSORS_MAX6642 is not set ++# CONFIG_SENSORS_MAX6650 is not set ++# CONFIG_SENSORS_MAX6697 is not set ++# CONFIG_SENSORS_MAX31790 is not set ++# CONFIG_SENSORS_MCP3021 is not set ++# CONFIG_SENSORS_TC654 is not set ++# CONFIG_SENSORS_LM63 is not set ++# CONFIG_SENSORS_LM73 is not set ++# CONFIG_SENSORS_LM75 is not set ++# CONFIG_SENSORS_LM77 is not set ++# CONFIG_SENSORS_LM78 is not set ++# CONFIG_SENSORS_LM80 is not set ++# CONFIG_SENSORS_LM83 is not set ++# CONFIG_SENSORS_LM85 is not set ++# CONFIG_SENSORS_LM87 is not set ++# CONFIG_SENSORS_LM90 is not set ++# CONFIG_SENSORS_LM92 is not set ++# CONFIG_SENSORS_LM93 is not set ++# CONFIG_SENSORS_LM95234 is not set ++# CONFIG_SENSORS_LM95241 is not set ++# CONFIG_SENSORS_LM95245 is not set ++# CONFIG_SENSORS_PC87360 is not set ++# CONFIG_SENSORS_PC87427 is not set ++# CONFIG_SENSORS_NTC_THERMISTOR is not set ++# CONFIG_SENSORS_NCT6683 is not set ++# CONFIG_SENSORS_NCT6775 is not set ++# CONFIG_SENSORS_NCT7802 is not set ++# CONFIG_SENSORS_NCT7904 is not set ++# CONFIG_SENSORS_NPCM7XX is not set ++# CONFIG_SENSORS_OCC_P8_I2C is not set ++# CONFIG_SENSORS_PCF8591 is not set ++# CONFIG_PMBUS is not set ++# CONFIG_SENSORS_SHT21 is not set ++# CONFIG_SENSORS_SHT3x is not set ++# CONFIG_SENSORS_SHTC1 is not set ++# CONFIG_SENSORS_SIS5595 is not set ++# CONFIG_SENSORS_DME1737 is not set ++# CONFIG_SENSORS_EMC1403 is not set ++# CONFIG_SENSORS_EMC2103 is not set ++# CONFIG_SENSORS_EMC6W201 is not set ++# CONFIG_SENSORS_SMSC47M1 is not set ++# CONFIG_SENSORS_SMSC47M192 is not set ++# CONFIG_SENSORS_SMSC47B397 is not set ++# CONFIG_SENSORS_SCH5627 is not set ++# CONFIG_SENSORS_SCH5636 is not set ++# CONFIG_SENSORS_STTS751 is not set ++# CONFIG_SENSORS_SMM665 is not set ++# CONFIG_SENSORS_ADC128D818 is not set ++# CONFIG_SENSORS_ADS1015 is not set ++# CONFIG_SENSORS_ADS7828 is not set ++# CONFIG_SENSORS_AMC6821 is not set ++# CONFIG_SENSORS_INA209 is not set ++# CONFIG_SENSORS_INA2XX is not set ++# CONFIG_SENSORS_INA3221 is not set ++# CONFIG_SENSORS_TC74 is not set ++# CONFIG_SENSORS_THMC50 is not set ++# CONFIG_SENSORS_TMP102 is not set ++# CONFIG_SENSORS_TMP103 is not set ++# CONFIG_SENSORS_TMP108 is not set ++# CONFIG_SENSORS_TMP401 is not set ++# CONFIG_SENSORS_TMP421 is not set ++# CONFIG_SENSORS_VIA_CPUTEMP is not set ++# CONFIG_SENSORS_VIA686A is not set ++# CONFIG_SENSORS_VT1211 is not set ++# CONFIG_SENSORS_VT8231 is not set ++# CONFIG_SENSORS_W83773G is not set ++# CONFIG_SENSORS_W83781D is not set ++# CONFIG_SENSORS_W83791D is not set ++# CONFIG_SENSORS_W83792D is not set ++# CONFIG_SENSORS_W83793 is not set ++# CONFIG_SENSORS_W83795 is not set ++# CONFIG_SENSORS_W83L785TS is not set ++# CONFIG_SENSORS_W83L786NG is not set ++# CONFIG_SENSORS_W83627HF is not set ++# CONFIG_SENSORS_W83627EHF is not set ++# CONFIG_SENSORS_XGENE is not set ++ ++# ++# ACPI drivers ++# ++# CONFIG_SENSORS_ACPI_POWER is not set ++# CONFIG_SENSORS_ATK0110 is not set ++CONFIG_THERMAL=y ++# CONFIG_THERMAL_STATISTICS is not set ++CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 ++CONFIG_THERMAL_HWMON=y ++CONFIG_THERMAL_WRITABLE_TRIPS=y ++CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y ++# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set ++# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set ++# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set ++# CONFIG_THERMAL_GOV_FAIR_SHARE is not set ++CONFIG_THERMAL_GOV_STEP_WISE=y ++# CONFIG_THERMAL_GOV_BANG_BANG is not set ++CONFIG_THERMAL_GOV_USER_SPACE=y ++# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set ++# CONFIG_THERMAL_EMULATION is not set ++ ++# ++# Intel thermal drivers ++# ++# CONFIG_INTEL_POWERCLAMP is not set ++CONFIG_X86_PKG_TEMP_THERMAL=m ++# CONFIG_INTEL_SOC_DTS_THERMAL is not set ++ ++# ++# ACPI INT340X thermal drivers ++# ++# CONFIG_INT340X_THERMAL is not set ++# CONFIG_INTEL_PCH_THERMAL is not set ++CONFIG_WATCHDOG=y ++# CONFIG_WATCHDOG_CORE is not set ++# CONFIG_WATCHDOG_NOWAYOUT is not set ++CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y ++# CONFIG_WATCHDOG_SYSFS is not set ++ ++# ++# Watchdog Device Drivers ++# ++# CONFIG_SOFT_WATCHDOG is not set ++# CONFIG_WDAT_WDT is not set ++# CONFIG_XILINX_WATCHDOG is not set ++# CONFIG_ZIIRAVE_WATCHDOG is not set ++# CONFIG_CADENCE_WATCHDOG is not set ++# CONFIG_DW_WATCHDOG is not set ++# CONFIG_MAX63XX_WATCHDOG is not set ++# CONFIG_ACQUIRE_WDT is not set ++# CONFIG_ADVANTECH_WDT is not set ++# CONFIG_ALIM1535_WDT is not set ++# CONFIG_ALIM7101_WDT is not set ++# CONFIG_EBC_C384_WDT is not set ++# CONFIG_F71808E_WDT is not set ++# CONFIG_SP5100_TCO is not set ++# CONFIG_SBC_FITPC2_WATCHDOG is not set ++# CONFIG_EUROTECH_WDT is not set ++# CONFIG_IB700_WDT is not set ++# CONFIG_IBMASR is not set ++# CONFIG_WAFER_WDT is not set ++# CONFIG_I6300ESB_WDT is not set ++# CONFIG_IE6XX_WDT is not set ++# CONFIG_ITCO_WDT is not set ++# CONFIG_IT8712F_WDT is not set ++# CONFIG_IT87_WDT is not set ++# CONFIG_HP_WATCHDOG is not set ++# CONFIG_SC1200_WDT is not set ++# CONFIG_PC87413_WDT is not set ++# CONFIG_NV_TCO is not set ++# CONFIG_60XX_WDT is not set ++# CONFIG_CPU5_WDT is not set ++# CONFIG_SMSC_SCH311X_WDT is not set ++# CONFIG_SMSC37B787_WDT is not set ++# CONFIG_TQMX86_WDT is not set ++# CONFIG_VIA_WDT is not set ++# CONFIG_W83627HF_WDT is not set ++# CONFIG_W83877F_WDT is not set ++# CONFIG_W83977F_WDT is not set ++# CONFIG_MACHZ_WDT is not set ++# CONFIG_SBC_EPX_C3_WATCHDOG is not set ++# CONFIG_NI903X_WDT is not set ++# CONFIG_NIC7018_WDT is not set ++ ++# ++# PCI-based Watchdog Cards ++# ++# CONFIG_PCIPCWATCHDOG is not set ++# CONFIG_WDTPCI is not set ++ ++# ++# USB-based Watchdog Cards ++# ++# CONFIG_USBPCWATCHDOG is not set ++ ++# ++# Watchdog Pretimeout Governors ++# ++# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set ++CONFIG_SSB_POSSIBLE=y ++# CONFIG_SSB is not set ++CONFIG_BCMA_POSSIBLE=y ++# CONFIG_BCMA is not set ++ ++# ++# Multifunction device drivers ++# ++# CONFIG_MFD_AS3711 is not set ++# CONFIG_PMIC_ADP5520 is not set ++# CONFIG_MFD_AT91_USART is not set ++# CONFIG_MFD_BCM590XX is not set ++# CONFIG_MFD_BD9571MWV is not set ++# CONFIG_MFD_AXP20X_I2C is not set ++# CONFIG_MFD_CROS_EC is not set ++# CONFIG_MFD_MADERA is not set ++# CONFIG_PMIC_DA903X is not set ++# CONFIG_MFD_DA9052_I2C is not set ++# CONFIG_MFD_DA9055 is not set ++# CONFIG_MFD_DA9062 is not set ++# CONFIG_MFD_DA9063 is not set ++# CONFIG_MFD_DA9150 is not set ++# CONFIG_MFD_DLN2 is not set ++# CONFIG_MFD_MC13XXX_I2C is not set ++# CONFIG_HTC_PASIC3 is not set ++# CONFIG_MFD_INTEL_QUARK_I2C_GPIO is not set ++# CONFIG_LPC_ICH is not set ++# CONFIG_LPC_SCH is not set ++# CONFIG_INTEL_SOC_PMIC_CHTWC is not set ++# CONFIG_MFD_INTEL_LPSS_ACPI is not set ++# CONFIG_MFD_INTEL_LPSS_PCI is not set ++# CONFIG_MFD_JANZ_CMODIO is not set ++# CONFIG_MFD_KEMPLD is not set ++# CONFIG_MFD_88PM800 is not set ++# CONFIG_MFD_88PM805 is not set ++# CONFIG_MFD_88PM860X is not set ++# CONFIG_MFD_MAX14577 is not set ++# CONFIG_MFD_MAX77693 is not set ++# CONFIG_MFD_MAX77843 is not set ++# CONFIG_MFD_MAX8907 is not set ++# CONFIG_MFD_MAX8925 is not set ++# CONFIG_MFD_MAX8997 is not set ++# CONFIG_MFD_MAX8998 is not set ++# CONFIG_MFD_MT6397 is not set ++# CONFIG_MFD_MENF21BMC is not set ++# CONFIG_MFD_VIPERBOARD is not set ++# CONFIG_MFD_RETU is not set ++# CONFIG_MFD_PCF50633 is not set ++# CONFIG_MFD_RDC321X is not set ++# CONFIG_MFD_RT5033 is not set ++# CONFIG_MFD_RC5T583 is not set ++# CONFIG_MFD_SEC_CORE is not set ++# CONFIG_MFD_SI476X_CORE is not set ++# CONFIG_MFD_SM501 is not set ++# CONFIG_MFD_SKY81452 is not set ++# CONFIG_MFD_SMSC is not set ++# CONFIG_ABX500_CORE is not set ++# CONFIG_MFD_SYSCON is not set ++# CONFIG_MFD_TI_AM335X_TSCADC is not set ++# CONFIG_MFD_LP3943 is not set ++# CONFIG_MFD_LP8788 is not set ++# CONFIG_MFD_TI_LMU is not set ++# CONFIG_MFD_PALMAS is not set ++# CONFIG_TPS6105X is not set ++# CONFIG_TPS6507X is not set ++# CONFIG_MFD_TPS65086 is not set ++# CONFIG_MFD_TPS65090 is not set ++# CONFIG_MFD_TPS68470 is not set ++# CONFIG_MFD_TI_LP873X is not set ++# CONFIG_MFD_TPS6586X is not set ++# CONFIG_MFD_TPS65912_I2C is not set ++# CONFIG_MFD_TPS80031 is not set ++# CONFIG_TWL4030_CORE is not set ++# CONFIG_TWL6040_CORE is not set ++# CONFIG_MFD_WL1273_CORE is not set ++# CONFIG_MFD_LM3533 is not set ++# CONFIG_MFD_VX855 is not set ++# CONFIG_MFD_ARIZONA_I2C is not set ++# CONFIG_MFD_WM8400 is not set ++# CONFIG_MFD_WM831X_I2C is not set ++# CONFIG_MFD_WM8350_I2C is not set ++# CONFIG_MFD_WM8994 is not set ++# CONFIG_REGULATOR is not set ++CONFIG_RC_CORE=y ++CONFIG_RC_MAP=y ++# CONFIG_LIRC is not set ++CONFIG_RC_DECODERS=y ++CONFIG_IR_NEC_DECODER=y ++CONFIG_IR_RC5_DECODER=y ++CONFIG_IR_RC6_DECODER=y ++CONFIG_IR_JVC_DECODER=y ++CONFIG_IR_SONY_DECODER=y ++CONFIG_IR_SANYO_DECODER=y ++CONFIG_IR_SHARP_DECODER=y ++CONFIG_IR_MCE_KBD_DECODER=y ++CONFIG_IR_XMP_DECODER=y ++# CONFIG_IR_IMON_DECODER is not set ++# CONFIG_RC_DEVICES is not set ++# CONFIG_MEDIA_SUPPORT is not set ++ ++# ++# Graphics support ++# ++CONFIG_AGP=y ++CONFIG_AGP_AMD64=y ++CONFIG_AGP_INTEL=y ++# CONFIG_AGP_SIS is not set ++# CONFIG_AGP_VIA is not set ++CONFIG_INTEL_GTT=y ++CONFIG_VGA_ARB=y ++CONFIG_VGA_ARB_MAX_GPUS=16 ++# CONFIG_VGA_SWITCHEROO is not set ++CONFIG_DRM=y ++# CONFIG_DRM_DP_AUX_CHARDEV is not set ++# CONFIG_DRM_DEBUG_MM is not set ++# CONFIG_DRM_DEBUG_SELFTEST is not set ++CONFIG_DRM_KMS_HELPER=y ++CONFIG_DRM_KMS_FB_HELPER=y ++CONFIG_DRM_FBDEV_EMULATION=y ++CONFIG_DRM_FBDEV_OVERALLOC=100 ++# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set ++# CONFIG_DRM_LOAD_EDID_FIRMWARE is not set ++# CONFIG_DRM_DP_CEC is not set ++CONFIG_DRM_TTM=m ++CONFIG_DRM_SCHED=m ++ ++# ++# I2C encoder or helper chips ++# ++# CONFIG_DRM_I2C_CH7006 is not set ++# CONFIG_DRM_I2C_SIL164 is not set ++# CONFIG_DRM_I2C_NXP_TDA998X is not set ++# CONFIG_DRM_I2C_NXP_TDA9950 is not set ++# CONFIG_DRM_RADEON is not set ++CONFIG_DRM_AMDGPU=m ++# CONFIG_DRM_AMDGPU_SI is not set ++CONFIG_DRM_AMDGPU_CIK=y ++CONFIG_DRM_AMDGPU_USERPTR=y ++# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set ++ ++# ++# ACP (Audio CoProcessor) Configuration ++# ++# CONFIG_DRM_AMD_ACP is not set ++ ++# ++# Display Engine Configuration ++# ++CONFIG_DRM_AMD_DC=y ++CONFIG_DRM_AMD_DC_DCN1_0=y ++CONFIG_DRM_AMD_DC_DCN1_01=y ++# CONFIG_DEBUG_KERNEL_DC is not set ++CONFIG_HSA_AMD=y ++ ++# ++# AMD Library routines ++# ++CONFIG_CHASH=m ++# CONFIG_CHASH_STATS is not set ++# CONFIG_CHASH_SELFTEST is not set ++# CONFIG_DRM_NOUVEAU is not set ++# CONFIG_DRM_I915 is not set ++# CONFIG_DRM_VGEM is not set ++# CONFIG_DRM_VKMS is not set ++# CONFIG_DRM_VMWGFX is not set ++# CONFIG_DRM_GMA500 is not set ++# CONFIG_DRM_UDL is not set ++CONFIG_DRM_AST=m ++# CONFIG_DRM_MGAG200 is not set ++# CONFIG_DRM_CIRRUS_QEMU is not set ++# CONFIG_DRM_QXL is not set ++# CONFIG_DRM_BOCHS is not set ++CONFIG_DRM_PANEL=y ++ ++# ++# Display Panels ++# ++CONFIG_DRM_BRIDGE=y ++CONFIG_DRM_PANEL_BRIDGE=y ++ ++# ++# Display Interface Bridges ++# ++# CONFIG_DRM_ANALOGIX_ANX78XX is not set ++# CONFIG_DRM_HISI_HIBMC is not set ++# CONFIG_DRM_TINYDRM is not set ++# CONFIG_DRM_LEGACY is not set ++CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y ++ ++# ++# Frame buffer Devices ++# ++CONFIG_FB_CMDLINE=y ++CONFIG_FB_NOTIFY=y ++CONFIG_FB=y ++# CONFIG_FIRMWARE_EDID is not set ++CONFIG_FB_CFB_FILLRECT=y ++CONFIG_FB_CFB_COPYAREA=y ++CONFIG_FB_CFB_IMAGEBLIT=y ++CONFIG_FB_SYS_FILLRECT=y ++CONFIG_FB_SYS_COPYAREA=y ++CONFIG_FB_SYS_IMAGEBLIT=y ++# CONFIG_FB_FOREIGN_ENDIAN is not set ++CONFIG_FB_SYS_FOPS=y ++CONFIG_FB_DEFERRED_IO=y ++# CONFIG_FB_MODE_HELPERS is not set ++# CONFIG_FB_TILEBLITTING is not set ++ ++# ++# Frame buffer hardware drivers ++# ++# CONFIG_FB_CIRRUS is not set ++# CONFIG_FB_PM2 is not set ++# CONFIG_FB_CYBER2000 is not set ++# CONFIG_FB_ARC is not set ++# CONFIG_FB_ASILIANT is not set ++# CONFIG_FB_IMSTT is not set ++# CONFIG_FB_VGA16 is not set ++# CONFIG_FB_VESA is not set ++# CONFIG_FB_EFI is not set ++# CONFIG_FB_N411 is not set ++# CONFIG_FB_HGA is not set ++# CONFIG_FB_OPENCORES is not set ++# CONFIG_FB_S1D13XXX is not set ++# CONFIG_FB_NVIDIA is not set ++# CONFIG_FB_RIVA is not set ++# CONFIG_FB_I740 is not set ++# CONFIG_FB_LE80578 is not set ++# CONFIG_FB_INTEL is not set ++# CONFIG_FB_MATROX is not set ++# CONFIG_FB_RADEON is not set ++# CONFIG_FB_ATY128 is not set ++# CONFIG_FB_ATY is not set ++# CONFIG_FB_S3 is not set ++# CONFIG_FB_SAVAGE is not set ++# CONFIG_FB_SIS is not set ++# CONFIG_FB_NEOMAGIC is not set ++# CONFIG_FB_KYRO is not set ++# CONFIG_FB_3DFX is not set ++# CONFIG_FB_VOODOO1 is not set ++# CONFIG_FB_VT8623 is not set ++# CONFIG_FB_TRIDENT is not set ++# CONFIG_FB_ARK is not set ++# CONFIG_FB_PM3 is not set ++# CONFIG_FB_CARMINE is not set ++# CONFIG_FB_SMSCUFX is not set ++# CONFIG_FB_UDL is not set ++# CONFIG_FB_IBM_GXT4500 is not set ++# CONFIG_FB_VIRTUAL is not set ++# CONFIG_FB_METRONOME is not set ++# CONFIG_FB_MB862XX is not set ++# CONFIG_FB_SIMPLE is not set ++# CONFIG_FB_SM712 is not set ++CONFIG_BACKLIGHT_LCD_SUPPORT=y ++# CONFIG_LCD_CLASS_DEVICE is not set ++CONFIG_BACKLIGHT_CLASS_DEVICE=y ++# CONFIG_BACKLIGHT_GENERIC is not set ++# CONFIG_BACKLIGHT_APPLE is not set ++# CONFIG_BACKLIGHT_PM8941_WLED is not set ++# CONFIG_BACKLIGHT_SAHARA is not set ++# CONFIG_BACKLIGHT_ADP8860 is not set ++# CONFIG_BACKLIGHT_ADP8870 is not set ++# CONFIG_BACKLIGHT_LM3639 is not set ++# CONFIG_BACKLIGHT_LV5207LP is not set ++# CONFIG_BACKLIGHT_BD6107 is not set ++# CONFIG_BACKLIGHT_ARCXCNN is not set ++CONFIG_HDMI=y ++ ++# ++# Console display driver support ++# ++CONFIG_VGA_CONSOLE=y ++CONFIG_VGACON_SOFT_SCROLLBACK=y ++CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64 ++# CONFIG_VGACON_SOFT_SCROLLBACK_PERSISTENT_ENABLE_BY_DEFAULT is not set ++CONFIG_DUMMY_CONSOLE=y ++CONFIG_DUMMY_CONSOLE_COLUMNS=80 ++CONFIG_DUMMY_CONSOLE_ROWS=25 ++CONFIG_FRAMEBUFFER_CONSOLE=y ++CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y ++CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y ++# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set ++# CONFIG_LOGO is not set ++# CONFIG_SOUND is not set ++ ++# ++# HID support ++# ++CONFIG_HID=y ++CONFIG_HID_BATTERY_STRENGTH=y ++CONFIG_HIDRAW=y ++# CONFIG_UHID is not set ++CONFIG_HID_GENERIC=y ++ ++# ++# Special HID drivers ++# ++CONFIG_HID_A4TECH=y ++# CONFIG_HID_ACCUTOUCH is not set ++# CONFIG_HID_ACRUX is not set ++CONFIG_HID_APPLE=y ++# CONFIG_HID_APPLEIR is not set ++# CONFIG_HID_ASUS is not set ++# CONFIG_HID_AUREAL is not set ++CONFIG_HID_BELKIN=y ++# CONFIG_HID_BETOP_FF is not set ++# CONFIG_HID_BIGBEN_FF is not set ++CONFIG_HID_CHERRY=y ++CONFIG_HID_CHICONY=y ++# CONFIG_HID_CORSAIR is not set ++# CONFIG_HID_COUGAR is not set ++# CONFIG_HID_CMEDIA is not set ++CONFIG_HID_CYPRESS=y ++# CONFIG_HID_DRAGONRISE is not set ++# CONFIG_HID_EMS_FF is not set ++# CONFIG_HID_ELAN is not set ++# CONFIG_HID_ELECOM is not set ++# CONFIG_HID_ELO is not set ++CONFIG_HID_EZKEY=y ++# CONFIG_HID_GEMBIRD is not set ++# CONFIG_HID_GFRM is not set ++# CONFIG_HID_HOLTEK is not set ++# CONFIG_HID_GT683R is not set ++# CONFIG_HID_KEYTOUCH is not set ++CONFIG_HID_KYE=y ++# CONFIG_HID_UCLOGIC is not set ++# CONFIG_HID_WALTOP is not set ++# CONFIG_HID_GYRATION is not set ++# CONFIG_HID_ICADE is not set ++# CONFIG_HID_ITE is not set ++# CONFIG_HID_JABRA is not set ++# CONFIG_HID_TWINHAN is not set ++CONFIG_HID_KENSINGTON=y ++# CONFIG_HID_LCPOWER is not set ++# CONFIG_HID_LED is not set ++# CONFIG_HID_LENOVO is not set ++CONFIG_HID_LOGITECH=y ++# CONFIG_HID_LOGITECH_DJ is not set ++# CONFIG_HID_LOGITECH_HIDPP is not set ++# CONFIG_LOGITECH_FF is not set ++# CONFIG_LOGIRUMBLEPAD2_FF is not set ++# CONFIG_LOGIG940_FF is not set ++# CONFIG_LOGIWHEELS_FF is not set ++# CONFIG_HID_MAGICMOUSE is not set ++# CONFIG_HID_MAYFLASH is not set ++# CONFIG_HID_REDRAGON is not set ++CONFIG_HID_MICROSOFT=y ++CONFIG_HID_MONTEREY=y ++# CONFIG_HID_MULTITOUCH is not set ++# CONFIG_HID_NTI is not set ++# CONFIG_HID_NTRIG is not set ++# CONFIG_HID_ORTEK is not set ++# CONFIG_HID_PANTHERLORD is not set ++# CONFIG_HID_PENMOUNT is not set ++# CONFIG_HID_PETALYNX is not set ++# CONFIG_HID_PICOLCD is not set ++CONFIG_HID_PLANTRONICS=y ++# CONFIG_HID_PRIMAX is not set ++# CONFIG_HID_RETRODE is not set ++# CONFIG_HID_ROCCAT is not set ++# CONFIG_HID_SAITEK is not set ++# CONFIG_HID_SAMSUNG is not set ++# CONFIG_HID_SONY is not set ++# CONFIG_HID_SPEEDLINK is not set ++# CONFIG_HID_STEAM is not set ++# CONFIG_HID_STEELSERIES is not set ++# CONFIG_HID_SUNPLUS is not set ++# CONFIG_HID_RMI is not set ++# CONFIG_HID_GREENASIA is not set ++# CONFIG_HID_SMARTJOYPLUS is not set ++# CONFIG_HID_TIVO is not set ++# CONFIG_HID_TOPSEED is not set ++# CONFIG_HID_THINGM is not set ++# CONFIG_HID_THRUSTMASTER is not set ++# CONFIG_HID_UDRAW_PS3 is not set ++# CONFIG_HID_WACOM is not set ++# CONFIG_HID_WIIMOTE is not set ++# CONFIG_HID_XINMO is not set ++# CONFIG_HID_ZEROPLUS is not set ++# CONFIG_HID_ZYDACRON is not set ++# CONFIG_HID_SENSOR_HUB is not set ++# CONFIG_HID_ALPS is not set ++ ++# ++# USB HID support ++# ++CONFIG_USB_HID=y ++CONFIG_HID_PID=y ++CONFIG_USB_HIDDEV=y ++ ++# ++# I2C HID support ++# ++# CONFIG_I2C_HID is not set ++ ++# ++# Intel ISH HID support ++# ++# CONFIG_INTEL_ISH_HID is not set ++CONFIG_USB_OHCI_LITTLE_ENDIAN=y ++CONFIG_USB_SUPPORT=y ++CONFIG_USB_COMMON=y ++CONFIG_USB_ARCH_HAS_HCD=y ++CONFIG_USB=y ++CONFIG_USB_PCI=y ++# CONFIG_USB_ANNOUNCE_NEW_DEVICES is not set ++ ++# ++# Miscellaneous USB options ++# ++CONFIG_USB_DEFAULT_PERSIST=y ++# CONFIG_USB_DYNAMIC_MINORS is not set ++# CONFIG_USB_OTG is not set ++# CONFIG_USB_OTG_WHITELIST is not set ++# CONFIG_USB_OTG_BLACKLIST_HUB is not set ++# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set ++# CONFIG_USB_MON is not set ++# CONFIG_USB_WUSB_CBAF is not set ++ ++# ++# USB Host Controller Drivers ++# ++# CONFIG_USB_C67X00_HCD is not set ++CONFIG_USB_XHCI_HCD=y ++# CONFIG_USB_XHCI_DBGCAP is not set ++CONFIG_USB_XHCI_PCI=y ++# CONFIG_USB_XHCI_PLATFORM is not set ++CONFIG_USB_EHCI_HCD=y ++CONFIG_USB_EHCI_ROOT_HUB_TT=y ++CONFIG_USB_EHCI_TT_NEWSCHED=y ++CONFIG_USB_EHCI_PCI=y ++CONFIG_USB_EHCI_HCD_PLATFORM=y ++# CONFIG_USB_OXU210HP_HCD is not set ++# CONFIG_USB_ISP116X_HCD is not set ++# CONFIG_USB_FOTG210_HCD is not set ++CONFIG_USB_OHCI_HCD=y ++CONFIG_USB_OHCI_HCD_PCI=y ++# CONFIG_USB_OHCI_HCD_PLATFORM is not set ++CONFIG_USB_UHCI_HCD=y ++# CONFIG_USB_SL811_HCD is not set ++# CONFIG_USB_R8A66597_HCD is not set ++# CONFIG_USB_HCD_TEST_MODE is not set ++ ++# ++# USB Device Class drivers ++# ++# CONFIG_USB_ACM is not set ++# CONFIG_USB_PRINTER is not set ++# CONFIG_USB_WDM is not set ++# CONFIG_USB_TMC is not set ++ ++# ++# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ++# ++ ++# ++# also be needed; see USB_STORAGE Help for more info ++# ++CONFIG_USB_STORAGE=y ++# CONFIG_USB_STORAGE_DEBUG is not set ++# CONFIG_USB_STORAGE_REALTEK is not set ++# CONFIG_USB_STORAGE_DATAFAB is not set ++# CONFIG_USB_STORAGE_FREECOM is not set ++# CONFIG_USB_STORAGE_ISD200 is not set ++# CONFIG_USB_STORAGE_USBAT is not set ++# CONFIG_USB_STORAGE_SDDR09 is not set ++# CONFIG_USB_STORAGE_SDDR55 is not set ++# CONFIG_USB_STORAGE_JUMPSHOT is not set ++# CONFIG_USB_STORAGE_ALAUDA is not set ++# CONFIG_USB_STORAGE_ONETOUCH is not set ++# CONFIG_USB_STORAGE_KARMA is not set ++# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set ++# CONFIG_USB_STORAGE_ENE_UB6250 is not set ++# CONFIG_USB_UAS is not set ++ ++# ++# USB Imaging devices ++# ++# CONFIG_USB_MDC800 is not set ++# CONFIG_USB_MICROTEK is not set ++# CONFIG_USBIP_CORE is not set ++# CONFIG_USB_MUSB_HDRC is not set ++# CONFIG_USB_DWC3 is not set ++# CONFIG_USB_DWC2 is not set ++# CONFIG_USB_CHIPIDEA is not set ++# CONFIG_USB_ISP1760 is not set ++ ++# ++# USB port drivers ++# ++# CONFIG_USB_USS720 is not set ++# CONFIG_USB_SERIAL is not set ++ ++# ++# USB Miscellaneous drivers ++# ++# CONFIG_USB_EMI62 is not set ++# CONFIG_USB_EMI26 is not set ++# CONFIG_USB_ADUTUX is not set ++# CONFIG_USB_SEVSEG is not set ++# CONFIG_USB_RIO500 is not set ++# CONFIG_USB_LEGOTOWER is not set ++# CONFIG_USB_LCD is not set ++# CONFIG_USB_CYPRESS_CY7C63 is not set ++# CONFIG_USB_CYTHERM is not set ++# CONFIG_USB_IDMOUSE is not set ++# CONFIG_USB_FTDI_ELAN is not set ++# CONFIG_USB_APPLEDISPLAY is not set ++# CONFIG_USB_SISUSBVGA is not set ++# CONFIG_USB_LD is not set ++# CONFIG_USB_TRANCEVIBRATOR is not set ++# CONFIG_USB_IOWARRIOR is not set ++# CONFIG_USB_TEST is not set ++# CONFIG_USB_EHSET_TEST_FIXTURE is not set ++# CONFIG_USB_ISIGHTFW is not set ++# CONFIG_USB_YUREX is not set ++# CONFIG_USB_EZUSB_FX2 is not set ++# CONFIG_USB_HUB_USB251XB is not set ++# CONFIG_USB_HSIC_USB3503 is not set ++# CONFIG_USB_HSIC_USB4604 is not set ++# CONFIG_USB_LINK_LAYER_TEST is not set ++ ++# ++# USB Physical Layer drivers ++# ++# CONFIG_NOP_USB_XCEIV is not set ++# CONFIG_USB_ISP1301 is not set ++# CONFIG_USB_GADGET is not set ++# CONFIG_TYPEC is not set ++# CONFIG_USB_ROLE_SWITCH is not set ++# CONFIG_USB_LED_TRIG is not set ++# CONFIG_USB_ULPI_BUS is not set ++# CONFIG_UWB is not set ++# CONFIG_MMC is not set ++# CONFIG_MEMSTICK is not set ++CONFIG_NEW_LEDS=y ++CONFIG_LEDS_CLASS=y ++# CONFIG_LEDS_CLASS_FLASH is not set ++# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set ++ ++# ++# LED drivers ++# ++# CONFIG_LEDS_APU is not set ++# CONFIG_LEDS_LM3530 is not set ++# CONFIG_LEDS_LM3642 is not set ++# CONFIG_LEDS_PCA9532 is not set ++# CONFIG_LEDS_LP3944 is not set ++# CONFIG_LEDS_LP5521 is not set ++# CONFIG_LEDS_LP5523 is not set ++# CONFIG_LEDS_LP5562 is not set ++# CONFIG_LEDS_LP8501 is not set ++# CONFIG_LEDS_CLEVO_MAIL is not set ++# CONFIG_LEDS_PCA955X is not set ++# CONFIG_LEDS_PCA963X is not set ++# CONFIG_LEDS_BD2802 is not set ++# CONFIG_LEDS_INTEL_SS4200 is not set ++# CONFIG_LEDS_TCA6507 is not set ++# CONFIG_LEDS_TLC591XX is not set ++# CONFIG_LEDS_LM355x is not set ++ ++# ++# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) ++# ++# CONFIG_LEDS_BLINKM is not set ++# CONFIG_LEDS_MLXCPLD is not set ++# CONFIG_LEDS_MLXREG is not set ++# CONFIG_LEDS_USER is not set ++# CONFIG_LEDS_NIC78BX is not set ++ ++# ++# LED Triggers ++# ++CONFIG_LEDS_TRIGGERS=y ++# CONFIG_LEDS_TRIGGER_TIMER is not set ++# CONFIG_LEDS_TRIGGER_ONESHOT is not set ++# CONFIG_LEDS_TRIGGER_DISK is not set ++# CONFIG_LEDS_TRIGGER_HEARTBEAT is not set ++# CONFIG_LEDS_TRIGGER_BACKLIGHT is not set ++# CONFIG_LEDS_TRIGGER_CPU is not set ++# CONFIG_LEDS_TRIGGER_ACTIVITY is not set ++# CONFIG_LEDS_TRIGGER_DEFAULT_ON is not set ++ ++# ++# iptables trigger is under Netfilter config (LED target) ++# ++# CONFIG_LEDS_TRIGGER_TRANSIENT is not set ++# CONFIG_LEDS_TRIGGER_CAMERA is not set ++# CONFIG_LEDS_TRIGGER_PANIC is not set ++# CONFIG_LEDS_TRIGGER_NETDEV is not set ++# CONFIG_LEDS_TRIGGER_PATTERN is not set ++# CONFIG_LEDS_TRIGGER_AUDIO is not set ++# CONFIG_ACCESSIBILITY is not set ++# CONFIG_INFINIBAND is not set ++CONFIG_EDAC_ATOMIC_SCRUB=y ++CONFIG_EDAC_SUPPORT=y ++# CONFIG_EDAC is not set ++CONFIG_RTC_LIB=y ++CONFIG_RTC_MC146818_LIB=y ++CONFIG_RTC_CLASS=y ++# CONFIG_RTC_HCTOSYS is not set ++CONFIG_RTC_SYSTOHC=y ++CONFIG_RTC_SYSTOHC_DEVICE="rtc0" ++# CONFIG_RTC_DEBUG is not set ++CONFIG_RTC_NVMEM=y ++ ++# ++# RTC interfaces ++# ++CONFIG_RTC_INTF_SYSFS=y ++CONFIG_RTC_INTF_PROC=y ++CONFIG_RTC_INTF_DEV=y ++# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set ++# CONFIG_RTC_DRV_TEST is not set ++ ++# ++# I2C RTC drivers ++# ++# CONFIG_RTC_DRV_ABB5ZES3 is not set ++# CONFIG_RTC_DRV_ABX80X is not set ++# CONFIG_RTC_DRV_DS1307 is not set ++# CONFIG_RTC_DRV_DS1374 is not set ++# CONFIG_RTC_DRV_DS1672 is not set ++# CONFIG_RTC_DRV_MAX6900 is not set ++# CONFIG_RTC_DRV_RS5C372 is not set ++# CONFIG_RTC_DRV_ISL1208 is not set ++# CONFIG_RTC_DRV_ISL12022 is not set ++# CONFIG_RTC_DRV_X1205 is not set ++# CONFIG_RTC_DRV_PCF8523 is not set ++# CONFIG_RTC_DRV_PCF85063 is not set ++# CONFIG_RTC_DRV_PCF85363 is not set ++# CONFIG_RTC_DRV_PCF8563 is not set ++# CONFIG_RTC_DRV_PCF8583 is not set ++# CONFIG_RTC_DRV_M41T80 is not set ++# CONFIG_RTC_DRV_BQ32K is not set ++# CONFIG_RTC_DRV_S35390A is not set ++# CONFIG_RTC_DRV_FM3130 is not set ++# CONFIG_RTC_DRV_RX8010 is not set ++# CONFIG_RTC_DRV_RX8581 is not set ++# CONFIG_RTC_DRV_RX8025 is not set ++# CONFIG_RTC_DRV_EM3027 is not set ++# CONFIG_RTC_DRV_RV8803 is not set ++ ++# ++# SPI RTC drivers ++# ++CONFIG_RTC_I2C_AND_SPI=y ++ ++# ++# SPI and I2C RTC drivers ++# ++# CONFIG_RTC_DRV_DS3232 is not set ++# CONFIG_RTC_DRV_PCF2127 is not set ++# CONFIG_RTC_DRV_RV3029C2 is not set ++ ++# ++# Platform RTC drivers ++# ++CONFIG_RTC_DRV_CMOS=y ++# CONFIG_RTC_DRV_DS1286 is not set ++# CONFIG_RTC_DRV_DS1511 is not set ++# CONFIG_RTC_DRV_DS1553 is not set ++# CONFIG_RTC_DRV_DS1685_FAMILY is not set ++# CONFIG_RTC_DRV_DS1742 is not set ++# CONFIG_RTC_DRV_DS2404 is not set ++# CONFIG_RTC_DRV_STK17TA8 is not set ++# CONFIG_RTC_DRV_M48T86 is not set ++# CONFIG_RTC_DRV_M48T35 is not set ++# CONFIG_RTC_DRV_M48T59 is not set ++# CONFIG_RTC_DRV_MSM6242 is not set ++# CONFIG_RTC_DRV_BQ4802 is not set ++# CONFIG_RTC_DRV_RP5C01 is not set ++# CONFIG_RTC_DRV_V3020 is not set ++ ++# ++# on-CPU RTC drivers ++# ++# CONFIG_RTC_DRV_FTRTC010 is not set ++ ++# ++# HID Sensor RTC drivers ++# ++# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set ++CONFIG_DMADEVICES=y ++# CONFIG_DMADEVICES_DEBUG is not set ++ ++# ++# DMA Devices ++# ++CONFIG_DMA_ENGINE=y ++CONFIG_DMA_ACPI=y ++# CONFIG_ALTERA_MSGDMA is not set ++# CONFIG_INTEL_IDMA64 is not set ++# CONFIG_INTEL_IOATDMA is not set ++# CONFIG_QCOM_HIDMA_MGMT is not set ++# CONFIG_QCOM_HIDMA is not set ++CONFIG_DW_DMAC_CORE=y ++# CONFIG_DW_DMAC is not set ++CONFIG_DW_DMAC_PCI=y ++ ++# ++# DMA Clients ++# ++# CONFIG_ASYNC_TX_DMA is not set ++# CONFIG_DMATEST is not set ++ ++# ++# DMABUF options ++# ++CONFIG_SYNC_FILE=y ++# CONFIG_SW_SYNC is not set ++# CONFIG_UDMABUF is not set ++# CONFIG_AUXDISPLAY is not set ++# CONFIG_PANEL is not set ++# CONFIG_UIO is not set ++# CONFIG_VFIO is not set ++# CONFIG_VIRT_DRIVERS is not set ++CONFIG_VIRTIO_MENU=y ++# CONFIG_VIRTIO_PCI is not set ++# CONFIG_VIRTIO_MMIO is not set ++ ++# ++# Microsoft Hyper-V guest support ++# ++# CONFIG_HYPERV is not set ++# CONFIG_STAGING is not set ++# CONFIG_X86_PLATFORM_DEVICES is not set ++CONFIG_PMC_ATOM=y ++# CONFIG_CHROME_PLATFORMS is not set ++# CONFIG_MELLANOX_PLATFORM is not set ++CONFIG_CLKDEV_LOOKUP=y ++CONFIG_HAVE_CLK_PREPARE=y ++CONFIG_COMMON_CLK=y ++ ++# ++# Common Clock Framework ++# ++# CONFIG_COMMON_CLK_MAX9485 is not set ++# CONFIG_COMMON_CLK_SI5351 is not set ++# CONFIG_COMMON_CLK_SI544 is not set ++# CONFIG_COMMON_CLK_CDCE706 is not set ++# CONFIG_COMMON_CLK_CS2000_CP is not set ++# CONFIG_HWSPINLOCK is not set ++ ++# ++# Clock Source drivers ++# ++CONFIG_CLKEVT_I8253=y ++CONFIG_I8253_LOCK=y ++CONFIG_CLKBLD_I8253=y ++CONFIG_MAILBOX=y ++CONFIG_PCC=y ++# CONFIG_ALTERA_MBOX is not set ++CONFIG_IOMMU_API=y ++CONFIG_IOMMU_SUPPORT=y ++ ++# ++# Generic IOMMU Pagetable Support ++# ++# CONFIG_IOMMU_DEBUGFS is not set ++# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set ++CONFIG_IOMMU_IOVA=y ++CONFIG_AMD_IOMMU=y ++CONFIG_AMD_IOMMU_V2=m ++# CONFIG_INTEL_IOMMU is not set ++# CONFIG_IRQ_REMAP is not set ++ ++# ++# Remoteproc drivers ++# ++# CONFIG_REMOTEPROC is not set ++ ++# ++# Rpmsg drivers ++# ++# CONFIG_RPMSG_QCOM_GLINK_RPM is not set ++# CONFIG_RPMSG_VIRTIO is not set ++# CONFIG_SOUNDWIRE is not set ++ ++# ++# SOC (System On Chip) specific Drivers ++# ++ ++# ++# Amlogic SoC drivers ++# ++ ++# ++# Broadcom SoC drivers ++# ++ ++# ++# NXP/Freescale QorIQ SoC drivers ++# ++ ++# ++# i.MX SoC drivers ++# ++ ++# ++# Qualcomm SoC drivers ++# ++# CONFIG_SOC_TI is not set ++ ++# ++# Xilinx SoC drivers ++# ++# CONFIG_XILINX_VCU is not set ++# CONFIG_PM_DEVFREQ is not set ++# CONFIG_EXTCON is not set ++# CONFIG_MEMORY is not set ++# CONFIG_IIO is not set ++# CONFIG_NTB is not set ++# CONFIG_VME_BUS is not set ++# CONFIG_PWM is not set ++ ++# ++# IRQ chip support ++# ++CONFIG_ARM_GIC_MAX_NR=1 ++# CONFIG_IPACK_BUS is not set ++# CONFIG_RESET_CONTROLLER is not set ++# CONFIG_FMC is not set ++ ++# ++# PHY Subsystem ++# ++# CONFIG_GENERIC_PHY is not set ++# CONFIG_BCM_KONA_USB2_PHY is not set ++# CONFIG_PHY_PXA_28NM_HSIC is not set ++# CONFIG_PHY_PXA_28NM_USB2 is not set ++# CONFIG_POWERCAP is not set ++# CONFIG_MCB is not set ++ ++# ++# Performance monitor support ++# ++CONFIG_RAS=y ++# CONFIG_RAS_CEC is not set ++# CONFIG_THUNDERBOLT is not set ++ ++# ++# Android ++# ++# CONFIG_ANDROID is not set ++# CONFIG_LIBNVDIMM is not set ++CONFIG_DAX=y ++# CONFIG_DEV_DAX is not set ++CONFIG_NVMEM=y ++ ++# ++# HW tracing support ++# ++# CONFIG_STM is not set ++# CONFIG_INTEL_TH is not set ++# CONFIG_FPGA is not set ++# CONFIG_UNISYS_VISORBUS is not set ++# CONFIG_SIOX is not set ++# CONFIG_SLIMBUS is not set ++ ++# ++# File systems ++# ++CONFIG_DCACHE_WORD_ACCESS=y ++CONFIG_FS_IOMAP=y ++# CONFIG_EXT2_FS is not set ++# CONFIG_EXT3_FS is not set ++CONFIG_EXT4_FS=y ++CONFIG_EXT4_USE_FOR_EXT2=y ++CONFIG_EXT4_FS_POSIX_ACL=y ++CONFIG_EXT4_FS_SECURITY=y ++# CONFIG_EXT4_ENCRYPTION is not set ++# CONFIG_EXT4_DEBUG is not set ++CONFIG_JBD2=y ++# CONFIG_JBD2_DEBUG is not set ++CONFIG_FS_MBCACHE=y ++# CONFIG_REISERFS_FS is not set ++# CONFIG_JFS_FS is not set ++CONFIG_XFS_FS=y ++CONFIG_XFS_QUOTA=y ++CONFIG_XFS_POSIX_ACL=y ++CONFIG_XFS_RT=y ++# CONFIG_XFS_ONLINE_SCRUB is not set ++CONFIG_XFS_WARN=y ++# CONFIG_XFS_DEBUG is not set ++# CONFIG_GFS2_FS is not set ++# CONFIG_OCFS2_FS is not set ++# CONFIG_BTRFS_FS is not set ++# CONFIG_NILFS2_FS is not set ++# CONFIG_F2FS_FS is not set ++# CONFIG_FS_DAX is not set ++CONFIG_FS_POSIX_ACL=y ++CONFIG_EXPORTFS=y ++# CONFIG_EXPORTFS_BLOCK_OPS is not set ++CONFIG_FILE_LOCKING=y ++CONFIG_MANDATORY_FILE_LOCKING=y ++# CONFIG_FS_ENCRYPTION is not set ++CONFIG_FSNOTIFY=y ++CONFIG_DNOTIFY=y ++CONFIG_INOTIFY_USER=y ++# CONFIG_FANOTIFY is not set ++CONFIG_QUOTA=y ++CONFIG_QUOTA_NETLINK_INTERFACE=y ++# CONFIG_PRINT_QUOTA_WARNING is not set ++# CONFIG_QUOTA_DEBUG is not set ++CONFIG_QUOTA_TREE=y ++# CONFIG_QFMT_V1 is not set ++CONFIG_QFMT_V2=y ++CONFIG_QUOTACTL=y ++CONFIG_QUOTACTL_COMPAT=y ++CONFIG_AUTOFS4_FS=y ++CONFIG_AUTOFS_FS=y ++CONFIG_FUSE_FS=m ++CONFIG_CUSE=m ++CONFIG_OVERLAY_FS=y ++# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set ++CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y ++# CONFIG_OVERLAY_FS_INDEX is not set ++# CONFIG_OVERLAY_FS_XINO_AUTO is not set ++# CONFIG_OVERLAY_FS_METACOPY is not set ++ ++# ++# Caches ++# ++CONFIG_FSCACHE=y ++# CONFIG_FSCACHE_STATS is not set ++# CONFIG_FSCACHE_HISTOGRAM is not set ++# CONFIG_FSCACHE_DEBUG is not set ++# CONFIG_FSCACHE_OBJECT_LIST is not set ++# CONFIG_CACHEFILES is not set ++ ++# ++# CD-ROM/DVD Filesystems ++# ++CONFIG_ISO9660_FS=y ++CONFIG_JOLIET=y ++CONFIG_ZISOFS=y ++# CONFIG_UDF_FS is not set ++ ++# ++# DOS/FAT/NT Filesystems ++# ++CONFIG_FAT_FS=y ++CONFIG_MSDOS_FS=y ++CONFIG_VFAT_FS=y ++CONFIG_FAT_DEFAULT_CODEPAGE=437 ++CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" ++# CONFIG_FAT_DEFAULT_UTF8 is not set ++CONFIG_NTFS_FS=y ++# CONFIG_NTFS_DEBUG is not set ++CONFIG_NTFS_RW=y ++ ++# ++# Pseudo filesystems ++# ++CONFIG_PROC_FS=y ++CONFIG_PROC_KCORE=y ++CONFIG_PROC_VMCORE=y ++# CONFIG_PROC_VMCORE_DEVICE_DUMP is not set ++CONFIG_PROC_SYSCTL=y ++CONFIG_PROC_PAGE_MONITOR=y ++CONFIG_PROC_CHILDREN=y ++CONFIG_KERNFS=y ++CONFIG_SYSFS=y ++CONFIG_TMPFS=y ++CONFIG_TMPFS_POSIX_ACL=y ++CONFIG_TMPFS_XATTR=y ++CONFIG_HUGETLBFS=y ++CONFIG_HUGETLB_PAGE=y ++CONFIG_MEMFD_CREATE=y ++CONFIG_ARCH_HAS_GIGANTIC_PAGE=y ++CONFIG_CONFIGFS_FS=y ++# CONFIG_EFIVAR_FS is not set ++CONFIG_MISC_FILESYSTEMS=y ++# CONFIG_ORANGEFS_FS is not set ++# CONFIG_ADFS_FS is not set ++# CONFIG_AFFS_FS is not set ++# CONFIG_ECRYPT_FS is not set ++# CONFIG_HFS_FS is not set ++# CONFIG_HFSPLUS_FS is not set ++# CONFIG_BEFS_FS is not set ++# CONFIG_BFS_FS is not set ++# CONFIG_EFS_FS is not set ++# CONFIG_CRAMFS is not set ++# CONFIG_SQUASHFS is not set ++# CONFIG_VXFS_FS is not set ++# CONFIG_MINIX_FS is not set ++# CONFIG_OMFS_FS is not set ++# CONFIG_HPFS_FS is not set ++# CONFIG_QNX4FS_FS is not set ++# CONFIG_QNX6FS_FS is not set ++# CONFIG_ROMFS_FS is not set ++CONFIG_PSTORE=y ++CONFIG_PSTORE_DEFLATE_COMPRESS=y ++# CONFIG_PSTORE_LZO_COMPRESS is not set ++# CONFIG_PSTORE_LZ4_COMPRESS is not set ++# CONFIG_PSTORE_LZ4HC_COMPRESS is not set ++# CONFIG_PSTORE_842_COMPRESS is not set ++# CONFIG_PSTORE_ZSTD_COMPRESS is not set ++CONFIG_PSTORE_COMPRESS=y ++CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y ++CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" ++# CONFIG_PSTORE_CONSOLE is not set ++# CONFIG_PSTORE_PMSG is not set ++# CONFIG_PSTORE_FTRACE is not set ++# CONFIG_PSTORE_RAM is not set ++# CONFIG_SYSV_FS is not set ++# CONFIG_UFS_FS is not set ++CONFIG_NETWORK_FILESYSTEMS=y ++CONFIG_NFS_FS=y ++CONFIG_NFS_V2=y ++CONFIG_NFS_V3=y ++CONFIG_NFS_V3_ACL=y ++CONFIG_NFS_V4=y ++# CONFIG_NFS_SWAP is not set ++# CONFIG_NFS_V4_1 is not set ++CONFIG_ROOT_NFS=y ++# CONFIG_NFS_FSCACHE is not set ++# CONFIG_NFS_USE_LEGACY_DNS is not set ++CONFIG_NFS_USE_KERNEL_DNS=y ++# CONFIG_NFSD is not set ++CONFIG_GRACE_PERIOD=y ++CONFIG_LOCKD=y ++CONFIG_LOCKD_V4=y ++CONFIG_NFS_ACL_SUPPORT=y ++CONFIG_NFS_COMMON=y ++CONFIG_SUNRPC=y ++CONFIG_SUNRPC_GSS=y ++# CONFIG_SUNRPC_DEBUG is not set ++# CONFIG_CEPH_FS is not set ++CONFIG_CIFS=y ++# CONFIG_CIFS_STATS2 is not set ++CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y ++# CONFIG_CIFS_WEAK_PW_HASH is not set ++# CONFIG_CIFS_UPCALL is not set ++# CONFIG_CIFS_XATTR is not set ++CONFIG_CIFS_DEBUG=y ++# CONFIG_CIFS_DEBUG2 is not set ++# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set ++# CONFIG_CIFS_DFS_UPCALL is not set ++CONFIG_CIFS_FSCACHE=y ++# CONFIG_CODA_FS is not set ++# CONFIG_AFS_FS is not set ++CONFIG_NLS=y ++CONFIG_NLS_DEFAULT="utf8" ++CONFIG_NLS_CODEPAGE_437=y ++# CONFIG_NLS_CODEPAGE_737 is not set ++# CONFIG_NLS_CODEPAGE_775 is not set ++# CONFIG_NLS_CODEPAGE_850 is not set ++# CONFIG_NLS_CODEPAGE_852 is not set ++# CONFIG_NLS_CODEPAGE_855 is not set ++# CONFIG_NLS_CODEPAGE_857 is not set ++# CONFIG_NLS_CODEPAGE_860 is not set ++# CONFIG_NLS_CODEPAGE_861 is not set ++# CONFIG_NLS_CODEPAGE_862 is not set ++# CONFIG_NLS_CODEPAGE_863 is not set ++# CONFIG_NLS_CODEPAGE_864 is not set ++# CONFIG_NLS_CODEPAGE_865 is not set ++# CONFIG_NLS_CODEPAGE_866 is not set ++# CONFIG_NLS_CODEPAGE_869 is not set ++# CONFIG_NLS_CODEPAGE_936 is not set ++# CONFIG_NLS_CODEPAGE_950 is not set ++# CONFIG_NLS_CODEPAGE_932 is not set ++# CONFIG_NLS_CODEPAGE_949 is not set ++# CONFIG_NLS_CODEPAGE_874 is not set ++# CONFIG_NLS_ISO8859_8 is not set ++# CONFIG_NLS_CODEPAGE_1250 is not set ++# CONFIG_NLS_CODEPAGE_1251 is not set ++CONFIG_NLS_ASCII=y ++CONFIG_NLS_ISO8859_1=y ++# CONFIG_NLS_ISO8859_2 is not set ++# CONFIG_NLS_ISO8859_3 is not set ++# CONFIG_NLS_ISO8859_4 is not set ++# CONFIG_NLS_ISO8859_5 is not set ++# CONFIG_NLS_ISO8859_6 is not set ++# CONFIG_NLS_ISO8859_7 is not set ++# CONFIG_NLS_ISO8859_9 is not set ++# CONFIG_NLS_ISO8859_13 is not set ++# CONFIG_NLS_ISO8859_14 is not set ++# CONFIG_NLS_ISO8859_15 is not set ++# CONFIG_NLS_KOI8_R is not set ++# CONFIG_NLS_KOI8_U is not set ++# CONFIG_NLS_MAC_ROMAN is not set ++# CONFIG_NLS_MAC_CELTIC is not set ++# CONFIG_NLS_MAC_CENTEURO is not set ++# CONFIG_NLS_MAC_CROATIAN is not set ++# CONFIG_NLS_MAC_CYRILLIC is not set ++# CONFIG_NLS_MAC_GAELIC is not set ++# CONFIG_NLS_MAC_GREEK is not set ++# CONFIG_NLS_MAC_ICELAND is not set ++# CONFIG_NLS_MAC_INUIT is not set ++# CONFIG_NLS_MAC_ROMANIAN is not set ++# CONFIG_NLS_MAC_TURKISH is not set ++CONFIG_NLS_UTF8=y ++# CONFIG_DLM is not set ++ ++# ++# Security options ++# ++CONFIG_KEYS=y ++CONFIG_KEYS_COMPAT=y ++# CONFIG_PERSISTENT_KEYRINGS is not set ++# CONFIG_BIG_KEYS is not set ++# CONFIG_ENCRYPTED_KEYS is not set ++# CONFIG_KEY_DH_OPERATIONS is not set ++# CONFIG_SECURITY_DMESG_RESTRICT is not set ++CONFIG_SECURITY=y ++CONFIG_SECURITY_WRITABLE_HOOKS=y ++# CONFIG_SECURITYFS is not set ++CONFIG_SECURITY_NETWORK=y ++CONFIG_PAGE_TABLE_ISOLATION=y ++# CONFIG_SECURITY_NETWORK_XFRM is not set ++# CONFIG_SECURITY_PATH is not set ++CONFIG_LSM_MMAP_MIN_ADDR=65536 ++CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y ++# CONFIG_HARDENED_USERCOPY is not set ++# CONFIG_FORTIFY_SOURCE is not set ++# CONFIG_STATIC_USERMODEHELPER is not set ++CONFIG_SECURITY_SELINUX=y ++CONFIG_SECURITY_SELINUX_BOOTPARAM=y ++CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1 ++CONFIG_SECURITY_SELINUX_DISABLE=y ++CONFIG_SECURITY_SELINUX_DEVELOP=y ++CONFIG_SECURITY_SELINUX_AVC_STATS=y ++CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 ++# CONFIG_SECURITY_SMACK is not set ++# CONFIG_SECURITY_TOMOYO is not set ++# CONFIG_SECURITY_APPARMOR is not set ++# CONFIG_SECURITY_LOADPIN is not set ++# CONFIG_SECURITY_YAMA is not set ++CONFIG_INTEGRITY=y ++# CONFIG_INTEGRITY_SIGNATURE is not set ++CONFIG_INTEGRITY_AUDIT=y ++# CONFIG_IMA is not set ++# CONFIG_IMA_ARCH_POLICY is not set ++# CONFIG_EVM is not set ++CONFIG_DEFAULT_SECURITY_SELINUX=y ++# CONFIG_DEFAULT_SECURITY_DAC is not set ++CONFIG_DEFAULT_SECURITY="selinux" ++CONFIG_CRYPTO=y ++ ++# ++# Crypto core or helper ++# ++CONFIG_CRYPTO_ALGAPI=y ++CONFIG_CRYPTO_ALGAPI2=y ++CONFIG_CRYPTO_AEAD=y ++CONFIG_CRYPTO_AEAD2=y ++CONFIG_CRYPTO_BLKCIPHER=y ++CONFIG_CRYPTO_BLKCIPHER2=y ++CONFIG_CRYPTO_HASH=y ++CONFIG_CRYPTO_HASH2=y ++CONFIG_CRYPTO_RNG=y ++CONFIG_CRYPTO_RNG2=y ++CONFIG_CRYPTO_RNG_DEFAULT=y ++CONFIG_CRYPTO_AKCIPHER2=y ++CONFIG_CRYPTO_AKCIPHER=y ++CONFIG_CRYPTO_KPP2=y ++CONFIG_CRYPTO_ACOMP2=y ++CONFIG_CRYPTO_RSA=y ++# CONFIG_CRYPTO_DH is not set ++# CONFIG_CRYPTO_ECDH is not set ++CONFIG_CRYPTO_MANAGER=y ++CONFIG_CRYPTO_MANAGER2=y ++# CONFIG_CRYPTO_USER is not set ++CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y ++# CONFIG_CRYPTO_GF128MUL is not set ++CONFIG_CRYPTO_NULL=y ++CONFIG_CRYPTO_NULL2=y ++# CONFIG_CRYPTO_PCRYPT is not set ++CONFIG_CRYPTO_WORKQUEUE=y ++# CONFIG_CRYPTO_CRYPTD is not set ++CONFIG_CRYPTO_AUTHENC=y ++# CONFIG_CRYPTO_TEST is not set ++ ++# ++# Authenticated Encryption with Associated Data ++# ++CONFIG_CRYPTO_CCM=y ++# CONFIG_CRYPTO_GCM is not set ++# CONFIG_CRYPTO_CHACHA20POLY1305 is not set ++# CONFIG_CRYPTO_AEGIS128 is not set ++# CONFIG_CRYPTO_AEGIS128L is not set ++# CONFIG_CRYPTO_AEGIS256 is not set ++# CONFIG_CRYPTO_AEGIS128_AESNI_SSE2 is not set ++# CONFIG_CRYPTO_AEGIS128L_AESNI_SSE2 is not set ++# CONFIG_CRYPTO_AEGIS256_AESNI_SSE2 is not set ++# CONFIG_CRYPTO_MORUS640 is not set ++# CONFIG_CRYPTO_MORUS640_SSE2 is not set ++# CONFIG_CRYPTO_MORUS1280 is not set ++# CONFIG_CRYPTO_MORUS1280_SSE2 is not set ++# CONFIG_CRYPTO_MORUS1280_AVX2 is not set ++CONFIG_CRYPTO_SEQIV=y ++CONFIG_CRYPTO_ECHAINIV=y ++ ++# ++# Block modes ++# ++CONFIG_CRYPTO_CBC=y ++# CONFIG_CRYPTO_CFB is not set ++CONFIG_CRYPTO_CTR=y ++# CONFIG_CRYPTO_CTS is not set ++CONFIG_CRYPTO_ECB=y ++# CONFIG_CRYPTO_LRW is not set ++# CONFIG_CRYPTO_OFB is not set ++# CONFIG_CRYPTO_PCBC is not set ++# CONFIG_CRYPTO_XTS is not set ++# CONFIG_CRYPTO_KEYWRAP is not set ++# CONFIG_CRYPTO_NHPOLY1305_SSE2 is not set ++# CONFIG_CRYPTO_NHPOLY1305_AVX2 is not set ++# CONFIG_CRYPTO_ADIANTUM is not set ++ ++# ++# Hash modes ++# ++CONFIG_CRYPTO_CMAC=y ++CONFIG_CRYPTO_HMAC=y ++# CONFIG_CRYPTO_XCBC is not set ++# CONFIG_CRYPTO_VMAC is not set ++ ++# ++# Digest ++# ++CONFIG_CRYPTO_CRC32C=y ++# CONFIG_CRYPTO_CRC32C_INTEL is not set ++# CONFIG_CRYPTO_CRC32 is not set ++# CONFIG_CRYPTO_CRC32_PCLMUL is not set ++CONFIG_CRYPTO_CRCT10DIF=y ++# CONFIG_CRYPTO_CRCT10DIF_PCLMUL is not set ++# CONFIG_CRYPTO_GHASH is not set ++# CONFIG_CRYPTO_POLY1305 is not set ++# CONFIG_CRYPTO_POLY1305_X86_64 is not set ++CONFIG_CRYPTO_MD4=y ++CONFIG_CRYPTO_MD5=y ++# CONFIG_CRYPTO_MICHAEL_MIC is not set ++# CONFIG_CRYPTO_RMD128 is not set ++# CONFIG_CRYPTO_RMD160 is not set ++# CONFIG_CRYPTO_RMD256 is not set ++# CONFIG_CRYPTO_RMD320 is not set ++CONFIG_CRYPTO_SHA1=y ++# CONFIG_CRYPTO_SHA1_SSSE3 is not set ++# CONFIG_CRYPTO_SHA256_SSSE3 is not set ++# CONFIG_CRYPTO_SHA512_SSSE3 is not set ++CONFIG_CRYPTO_SHA256=y ++CONFIG_CRYPTO_SHA512=y ++# CONFIG_CRYPTO_SHA3 is not set ++# CONFIG_CRYPTO_SM3 is not set ++# CONFIG_CRYPTO_STREEBOG is not set ++# CONFIG_CRYPTO_TGR192 is not set ++# CONFIG_CRYPTO_WP512 is not set ++# CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL is not set ++ ++# ++# Ciphers ++# ++CONFIG_CRYPTO_AES=y ++# CONFIG_CRYPTO_AES_TI is not set ++# CONFIG_CRYPTO_AES_X86_64 is not set ++# CONFIG_CRYPTO_AES_NI_INTEL is not set ++# CONFIG_CRYPTO_ANUBIS is not set ++CONFIG_CRYPTO_ARC4=y ++# CONFIG_CRYPTO_BLOWFISH is not set ++# CONFIG_CRYPTO_BLOWFISH_X86_64 is not set ++# CONFIG_CRYPTO_CAMELLIA is not set ++# CONFIG_CRYPTO_CAMELLIA_X86_64 is not set ++# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64 is not set ++# CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64 is not set ++# CONFIG_CRYPTO_CAST5 is not set ++# CONFIG_CRYPTO_CAST5_AVX_X86_64 is not set ++# CONFIG_CRYPTO_CAST6 is not set ++# CONFIG_CRYPTO_CAST6_AVX_X86_64 is not set ++CONFIG_CRYPTO_DES=y ++# CONFIG_CRYPTO_DES3_EDE_X86_64 is not set ++# CONFIG_CRYPTO_FCRYPT is not set ++# CONFIG_CRYPTO_KHAZAD is not set ++# CONFIG_CRYPTO_SALSA20 is not set ++# CONFIG_CRYPTO_CHACHA20 is not set ++# CONFIG_CRYPTO_CHACHA20_X86_64 is not set ++# CONFIG_CRYPTO_SEED is not set ++# CONFIG_CRYPTO_SERPENT is not set ++# CONFIG_CRYPTO_SERPENT_SSE2_X86_64 is not set ++# CONFIG_CRYPTO_SERPENT_AVX_X86_64 is not set ++# CONFIG_CRYPTO_SERPENT_AVX2_X86_64 is not set ++# CONFIG_CRYPTO_SM4 is not set ++# CONFIG_CRYPTO_TEA is not set ++# CONFIG_CRYPTO_TWOFISH is not set ++# CONFIG_CRYPTO_TWOFISH_X86_64 is not set ++# CONFIG_CRYPTO_TWOFISH_X86_64_3WAY is not set ++# CONFIG_CRYPTO_TWOFISH_AVX_X86_64 is not set ++ ++# ++# Compression ++# ++CONFIG_CRYPTO_DEFLATE=y ++CONFIG_CRYPTO_LZO=y ++# CONFIG_CRYPTO_842 is not set ++# CONFIG_CRYPTO_LZ4 is not set ++# CONFIG_CRYPTO_LZ4HC is not set ++# CONFIG_CRYPTO_ZSTD is not set ++ ++# ++# Random Number Generation ++# ++# CONFIG_CRYPTO_ANSI_CPRNG is not set ++CONFIG_CRYPTO_DRBG_MENU=y ++CONFIG_CRYPTO_DRBG_HMAC=y ++# CONFIG_CRYPTO_DRBG_HASH is not set ++# CONFIG_CRYPTO_DRBG_CTR is not set ++CONFIG_CRYPTO_DRBG=y ++CONFIG_CRYPTO_JITTERENTROPY=y ++# CONFIG_CRYPTO_USER_API_HASH is not set ++# CONFIG_CRYPTO_USER_API_SKCIPHER is not set ++# CONFIG_CRYPTO_USER_API_RNG is not set ++# CONFIG_CRYPTO_USER_API_AEAD is not set ++CONFIG_CRYPTO_HASH_INFO=y ++CONFIG_CRYPTO_HW=y ++# CONFIG_CRYPTO_DEV_PADLOCK is not set ++# CONFIG_CRYPTO_DEV_CCP is not set ++# CONFIG_CRYPTO_DEV_QAT_DH895xCC is not set ++# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set ++# CONFIG_CRYPTO_DEV_QAT_C62X is not set ++# CONFIG_CRYPTO_DEV_QAT_DH895xCCVF is not set ++# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set ++# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set ++# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set ++CONFIG_ASYMMETRIC_KEY_TYPE=y ++CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y ++CONFIG_X509_CERTIFICATE_PARSER=y ++# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set ++CONFIG_PKCS7_MESSAGE_PARSER=y ++# CONFIG_PKCS7_TEST_KEY is not set ++# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set ++ ++# ++# Certificates for signature checking ++# ++CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" ++CONFIG_SYSTEM_TRUSTED_KEYRING=y ++CONFIG_SYSTEM_TRUSTED_KEYS="" ++# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set ++# CONFIG_SECONDARY_TRUSTED_KEYRING is not set ++# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set ++CONFIG_BINARY_PRINTF=y ++ ++# ++# Library routines ++# ++CONFIG_BITREVERSE=y ++CONFIG_RATIONAL=y ++CONFIG_GENERIC_STRNCPY_FROM_USER=y ++CONFIG_GENERIC_STRNLEN_USER=y ++CONFIG_GENERIC_NET_UTILS=y ++CONFIG_GENERIC_FIND_FIRST_BIT=y ++CONFIG_GENERIC_PCI_IOMAP=y ++CONFIG_GENERIC_IOMAP=y ++CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y ++CONFIG_ARCH_HAS_FAST_MULTIPLIER=y ++CONFIG_CRC_CCITT=y ++CONFIG_CRC16=y ++CONFIG_CRC_T10DIF=y ++# CONFIG_CRC_ITU_T is not set ++CONFIG_CRC32=y ++# CONFIG_CRC32_SELFTEST is not set ++CONFIG_CRC32_SLICEBY8=y ++# CONFIG_CRC32_SLICEBY4 is not set ++# CONFIG_CRC32_SARWATE is not set ++# CONFIG_CRC32_BIT is not set ++# CONFIG_CRC64 is not set ++# CONFIG_CRC4 is not set ++# CONFIG_CRC7 is not set ++CONFIG_LIBCRC32C=y ++# CONFIG_CRC8 is not set ++CONFIG_XXHASH=y ++# CONFIG_RANDOM32_SELFTEST is not set ++CONFIG_ZLIB_INFLATE=y ++CONFIG_ZLIB_DEFLATE=y ++CONFIG_LZO_COMPRESS=y ++CONFIG_LZO_DECOMPRESS=y ++CONFIG_LZ4_DECOMPRESS=y ++CONFIG_XZ_DEC=y ++CONFIG_XZ_DEC_X86=y ++CONFIG_XZ_DEC_POWERPC=y ++CONFIG_XZ_DEC_IA64=y ++CONFIG_XZ_DEC_ARM=y ++CONFIG_XZ_DEC_ARMTHUMB=y ++CONFIG_XZ_DEC_SPARC=y ++CONFIG_XZ_DEC_BCJ=y ++# CONFIG_XZ_DEC_TEST is not set ++CONFIG_DECOMPRESS_GZIP=y ++CONFIG_DECOMPRESS_BZIP2=y ++CONFIG_DECOMPRESS_LZMA=y ++CONFIG_DECOMPRESS_XZ=y ++CONFIG_DECOMPRESS_LZO=y ++CONFIG_DECOMPRESS_LZ4=y ++CONFIG_GENERIC_ALLOCATOR=y ++CONFIG_INTERVAL_TREE=y ++CONFIG_XARRAY_MULTI=y ++CONFIG_ASSOCIATIVE_ARRAY=y ++CONFIG_HAS_IOMEM=y ++CONFIG_HAS_IOPORT_MAP=y ++CONFIG_HAS_DMA=y ++CONFIG_NEED_SG_DMA_LENGTH=y ++CONFIG_NEED_DMA_MAP_STATE=y ++CONFIG_ARCH_DMA_ADDR_T_64BIT=y ++CONFIG_SWIOTLB=y ++CONFIG_SGL_ALLOC=y ++CONFIG_IOMMU_HELPER=y ++CONFIG_CHECK_SIGNATURE=y ++CONFIG_CPU_RMAP=y ++CONFIG_DQL=y ++CONFIG_GLOB=y ++# CONFIG_GLOB_SELFTEST is not set ++CONFIG_NLATTR=y ++CONFIG_CLZ_TAB=y ++# CONFIG_CORDIC is not set ++# CONFIG_DDR is not set ++# CONFIG_IRQ_POLL is not set ++CONFIG_MPILIB=y ++CONFIG_OID_REGISTRY=y ++CONFIG_UCS2_STRING=y ++CONFIG_FONT_SUPPORT=y ++# CONFIG_FONTS is not set ++CONFIG_FONT_8x8=y ++CONFIG_FONT_8x16=y ++CONFIG_SG_POOL=y ++CONFIG_ARCH_HAS_PMEM_API=y ++CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y ++CONFIG_ARCH_HAS_UACCESS_MCSAFE=y ++CONFIG_SBITMAP=y ++# CONFIG_STRING_SELFTEST is not set ++ ++# ++# Kernel hacking ++# ++ ++# ++# printk and dmesg options ++# ++CONFIG_PRINTK_TIME=y ++CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 ++CONFIG_CONSOLE_LOGLEVEL_QUIET=4 ++CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 ++# CONFIG_BOOT_PRINTK_DELAY is not set ++CONFIG_DYNAMIC_DEBUG=y ++ ++# ++# Compile-time checks and compiler options ++# ++# CONFIG_DEBUG_INFO is not set ++CONFIG_ENABLE_MUST_CHECK=y ++CONFIG_FRAME_WARN=2048 ++# CONFIG_STRIP_ASM_SYMS is not set ++# CONFIG_READABLE_ASM is not set ++# CONFIG_UNUSED_SYMBOLS is not set ++# CONFIG_PAGE_OWNER is not set ++CONFIG_DEBUG_FS=y ++# CONFIG_HEADERS_CHECK is not set ++# CONFIG_DEBUG_SECTION_MISMATCH is not set ++CONFIG_SECTION_MISMATCH_WARN_ONLY=y ++CONFIG_STACK_VALIDATION=y ++# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set ++CONFIG_MAGIC_SYSRQ=y ++CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 ++CONFIG_MAGIC_SYSRQ_SERIAL=y ++CONFIG_DEBUG_KERNEL=y ++ ++# ++# Memory Debugging ++# ++# CONFIG_PAGE_EXTENSION is not set ++# CONFIG_DEBUG_PAGEALLOC is not set ++# CONFIG_PAGE_POISONING is not set ++# CONFIG_DEBUG_PAGE_REF is not set ++CONFIG_DEBUG_RODATA_TEST=y ++# CONFIG_DEBUG_OBJECTS is not set ++# CONFIG_SLUB_DEBUG_ON is not set ++# CONFIG_SLUB_STATS is not set ++CONFIG_HAVE_DEBUG_KMEMLEAK=y ++CONFIG_DEBUG_KMEMLEAK=y ++CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE=400 ++# CONFIG_DEBUG_KMEMLEAK_TEST is not set ++CONFIG_DEBUG_KMEMLEAK_DEFAULT_OFF=y ++CONFIG_DEBUG_KMEMLEAK_AUTO_SCAN=y ++# CONFIG_DEBUG_STACK_USAGE is not set ++# CONFIG_DEBUG_VM is not set ++CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y ++# CONFIG_DEBUG_VIRTUAL is not set ++# CONFIG_DEBUG_MEMORY_INIT is not set ++# CONFIG_DEBUG_PER_CPU_MAPS is not set ++CONFIG_HAVE_DEBUG_STACKOVERFLOW=y ++# CONFIG_DEBUG_STACKOVERFLOW is not set ++CONFIG_HAVE_ARCH_KASAN=y ++CONFIG_CC_HAS_KASAN_GENERIC=y ++# CONFIG_KASAN is not set ++CONFIG_ARCH_HAS_KCOV=y ++CONFIG_CC_HAS_SANCOV_TRACE_PC=y ++# CONFIG_KCOV is not set ++CONFIG_DEBUG_SHIRQ=y ++ ++# ++# Debug Lockups and Hangs ++# ++CONFIG_LOCKUP_DETECTOR=y ++CONFIG_SOFTLOCKUP_DETECTOR=y ++# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set ++CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 ++CONFIG_HARDLOCKUP_DETECTOR_PERF=y ++CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y ++CONFIG_HARDLOCKUP_DETECTOR=y ++# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set ++CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 ++CONFIG_DETECT_HUNG_TASK=y ++CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 ++# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set ++CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 ++# CONFIG_WQ_WATCHDOG is not set ++# CONFIG_PANIC_ON_OOPS is not set ++CONFIG_PANIC_ON_OOPS_VALUE=0 ++CONFIG_PANIC_TIMEOUT=0 ++CONFIG_SCHED_DEBUG=y ++CONFIG_SCHED_INFO=y ++CONFIG_SCHEDSTATS=y ++CONFIG_SCHED_STACK_END_CHECK=y ++# CONFIG_DEBUG_TIMEKEEPING is not set ++ ++# ++# Lock Debugging (spinlocks, mutexes, etc...) ++# ++CONFIG_LOCK_DEBUGGING_SUPPORT=y ++CONFIG_PROVE_LOCKING=y ++# CONFIG_LOCK_STAT is not set ++CONFIG_DEBUG_RT_MUTEXES=y ++CONFIG_DEBUG_SPINLOCK=y ++CONFIG_DEBUG_MUTEXES=y ++CONFIG_DEBUG_WW_MUTEX_SLOWPATH=y ++CONFIG_DEBUG_RWSEMS=y ++CONFIG_DEBUG_LOCK_ALLOC=y ++CONFIG_LOCKDEP=y ++# CONFIG_DEBUG_LOCKDEP is not set ++CONFIG_DEBUG_ATOMIC_SLEEP=y ++# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set ++# CONFIG_LOCK_TORTURE_TEST is not set ++# CONFIG_WW_MUTEX_SELFTEST is not set ++CONFIG_TRACE_IRQFLAGS=y ++CONFIG_STACKTRACE=y ++# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set ++# CONFIG_DEBUG_KOBJECT is not set ++CONFIG_DEBUG_BUGVERBOSE=y ++# CONFIG_DEBUG_LIST is not set ++# CONFIG_DEBUG_PI_LIST is not set ++# CONFIG_DEBUG_SG is not set ++# CONFIG_DEBUG_NOTIFIERS is not set ++# CONFIG_DEBUG_CREDENTIALS is not set ++ ++# ++# RCU Debugging ++# ++CONFIG_PROVE_RCU=y ++# CONFIG_RCU_PERF_TEST is not set ++# CONFIG_RCU_TORTURE_TEST is not set ++CONFIG_RCU_CPU_STALL_TIMEOUT=60 ++# CONFIG_RCU_TRACE is not set ++# CONFIG_RCU_EQS_DEBUG is not set ++# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set ++# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set ++# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set ++# CONFIG_NOTIFIER_ERROR_INJECTION is not set ++CONFIG_FUNCTION_ERROR_INJECTION=y ++# CONFIG_FAULT_INJECTION is not set ++# CONFIG_LATENCYTOP is not set ++CONFIG_USER_STACKTRACE_SUPPORT=y ++CONFIG_NOP_TRACER=y ++CONFIG_HAVE_FUNCTION_TRACER=y ++CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y ++CONFIG_HAVE_DYNAMIC_FTRACE=y ++CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y ++CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y ++CONFIG_HAVE_SYSCALL_TRACEPOINTS=y ++CONFIG_HAVE_FENTRY=y ++CONFIG_HAVE_C_RECORDMCOUNT=y ++CONFIG_TRACER_MAX_TRACE=y ++CONFIG_TRACE_CLOCK=y ++CONFIG_RING_BUFFER=y ++CONFIG_EVENT_TRACING=y ++CONFIG_CONTEXT_SWITCH_TRACER=y ++CONFIG_RING_BUFFER_ALLOW_SWAP=y ++CONFIG_PREEMPTIRQ_TRACEPOINTS=y ++CONFIG_TRACING=y ++CONFIG_GENERIC_TRACER=y ++CONFIG_TRACING_SUPPORT=y ++CONFIG_FTRACE=y ++CONFIG_FUNCTION_TRACER=y ++CONFIG_FUNCTION_GRAPH_TRACER=y ++# CONFIG_PREEMPTIRQ_EVENTS is not set ++# CONFIG_IRQSOFF_TRACER is not set ++CONFIG_SCHED_TRACER=y ++CONFIG_HWLAT_TRACER=y ++CONFIG_FTRACE_SYSCALLS=y ++CONFIG_TRACER_SNAPSHOT=y ++# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set ++CONFIG_BRANCH_PROFILE_NONE=y ++# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set ++# CONFIG_PROFILE_ALL_BRANCHES is not set ++CONFIG_STACK_TRACER=y ++CONFIG_BLK_DEV_IO_TRACE=y ++CONFIG_KPROBE_EVENTS=y ++# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set ++CONFIG_UPROBE_EVENTS=y ++CONFIG_BPF_EVENTS=y ++CONFIG_DYNAMIC_EVENTS=y ++CONFIG_PROBE_EVENTS=y ++CONFIG_DYNAMIC_FTRACE=y ++CONFIG_DYNAMIC_FTRACE_WITH_REGS=y ++CONFIG_FUNCTION_PROFILER=y ++# CONFIG_BPF_KPROBE_OVERRIDE is not set ++CONFIG_FTRACE_MCOUNT_RECORD=y ++# CONFIG_FTRACE_STARTUP_TEST is not set ++CONFIG_MMIOTRACE=y ++CONFIG_TRACING_MAP=y ++CONFIG_HIST_TRIGGERS=y ++# CONFIG_MMIOTRACE_TEST is not set ++# CONFIG_TRACEPOINT_BENCHMARK is not set ++# CONFIG_RING_BUFFER_BENCHMARK is not set ++# CONFIG_RING_BUFFER_STARTUP_TEST is not set ++# CONFIG_PREEMPTIRQ_DELAY_TEST is not set ++# CONFIG_TRACE_EVAL_MAP_FILE is not set ++# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set ++# CONFIG_DMA_API_DEBUG is not set ++# CONFIG_RUNTIME_TESTING_MENU is not set ++CONFIG_MEMTEST=y ++# CONFIG_BUG_ON_DATA_CORRUPTION is not set ++# CONFIG_SAMPLES is not set ++CONFIG_HAVE_ARCH_KGDB=y ++CONFIG_KGDB=y ++CONFIG_KGDB_SERIAL_CONSOLE=y ++# CONFIG_KGDB_TESTS is not set ++CONFIG_KGDB_LOW_LEVEL_TRAP=y ++CONFIG_KGDB_KDB=y ++CONFIG_KDB_DEFAULT_ENABLE=0x1 ++CONFIG_KDB_KEYBOARD=y ++CONFIG_KDB_CONTINUE_CATASTROPHIC=0 ++CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y ++# CONFIG_UBSAN is not set ++CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y ++# CONFIG_STRICT_DEVMEM is not set ++CONFIG_TRACE_IRQFLAGS_SUPPORT=y ++# CONFIG_X86_VERBOSE_BOOTUP is not set ++CONFIG_EARLY_PRINTK=y ++# CONFIG_EARLY_PRINTK_DBGP is not set ++# CONFIG_EARLY_PRINTK_EFI is not set ++# CONFIG_EARLY_PRINTK_USB_XDBC is not set ++# CONFIG_X86_PTDUMP is not set ++# CONFIG_EFI_PGT_DUMP is not set ++# CONFIG_DEBUG_WX is not set ++CONFIG_DOUBLEFAULT=y ++# CONFIG_DEBUG_TLBFLUSH is not set ++# CONFIG_IOMMU_DEBUG is not set ++CONFIG_HAVE_MMIOTRACE_SUPPORT=y ++# CONFIG_X86_DECODER_SELFTEST is not set ++CONFIG_IO_DELAY_TYPE_0X80=0 ++CONFIG_IO_DELAY_TYPE_0XED=1 ++CONFIG_IO_DELAY_TYPE_UDELAY=2 ++CONFIG_IO_DELAY_TYPE_NONE=3 ++# CONFIG_IO_DELAY_0X80 is not set ++CONFIG_IO_DELAY_0XED=y ++# CONFIG_IO_DELAY_UDELAY is not set ++# CONFIG_IO_DELAY_NONE is not set ++CONFIG_DEFAULT_IO_DELAY_TYPE=1 ++# CONFIG_DEBUG_BOOT_PARAMS is not set ++# CONFIG_CPA_DEBUG is not set ++CONFIG_OPTIMIZE_INLINING=y ++# CONFIG_DEBUG_ENTRY is not set ++# CONFIG_DEBUG_NMI_SELFTEST is not set ++CONFIG_X86_DEBUG_FPU=y ++# CONFIG_PUNIT_ATOM_DEBUG is not set ++CONFIG_UNWINDER_ORC=y ++# CONFIG_UNWINDER_FRAME_POINTER is not set ++# CONFIG_UNWINDER_GUESS is not set +diff --git a/arch/x86/configs/rock-rel_defconfig b/arch/x86/configs/rock-rel_defconfig +new file mode 100644 +index 000000000000..bb91d8c21f27 +--- /dev/null ++++ b/arch/x86/configs/rock-rel_defconfig +@@ -0,0 +1,9307 @@ ++# ++# Automatically generated file; DO NOT EDIT. ++# Linux/x86 5.0.0-rc1 Kernel Configuration ++# ++ ++# ++# Compiler: gcc (Ubuntu 7.3.0-27ubuntu1~18.04) 7.3.0 ++# ++CONFIG_CC_IS_GCC=y ++CONFIG_GCC_VERSION=70300 ++CONFIG_CLANG_VERSION=0 ++CONFIG_CC_HAS_ASM_GOTO=y ++CONFIG_IRQ_WORK=y ++CONFIG_BUILDTIME_EXTABLE_SORT=y ++CONFIG_THREAD_INFO_IN_TASK=y ++ ++# ++# General setup ++# ++CONFIG_INIT_ENV_ARG_LIMIT=32 ++# CONFIG_COMPILE_TEST is not set ++CONFIG_LOCALVERSION="-kfd" ++# CONFIG_LOCALVERSION_AUTO is not set ++CONFIG_BUILD_SALT="" ++CONFIG_HAVE_KERNEL_GZIP=y ++CONFIG_HAVE_KERNEL_BZIP2=y ++CONFIG_HAVE_KERNEL_LZMA=y ++CONFIG_HAVE_KERNEL_XZ=y ++CONFIG_HAVE_KERNEL_LZO=y ++CONFIG_HAVE_KERNEL_LZ4=y ++CONFIG_KERNEL_GZIP=y ++# CONFIG_KERNEL_BZIP2 is not set ++# CONFIG_KERNEL_LZMA is not set ++# CONFIG_KERNEL_XZ is not set ++# CONFIG_KERNEL_LZO is not set ++# CONFIG_KERNEL_LZ4 is not set ++CONFIG_DEFAULT_HOSTNAME="(none)" ++CONFIG_SWAP=y ++CONFIG_SYSVIPC=y ++CONFIG_SYSVIPC_SYSCTL=y ++CONFIG_POSIX_MQUEUE=y ++CONFIG_POSIX_MQUEUE_SYSCTL=y ++CONFIG_CROSS_MEMORY_ATTACH=y ++CONFIG_USELIB=y ++CONFIG_AUDIT=y ++CONFIG_HAVE_ARCH_AUDITSYSCALL=y ++CONFIG_AUDITSYSCALL=y ++ ++# ++# IRQ subsystem ++# ++CONFIG_GENERIC_IRQ_PROBE=y ++CONFIG_GENERIC_IRQ_SHOW=y ++CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y ++CONFIG_GENERIC_PENDING_IRQ=y ++CONFIG_GENERIC_IRQ_MIGRATION=y ++CONFIG_GENERIC_IRQ_CHIP=y ++CONFIG_IRQ_DOMAIN=y ++CONFIG_IRQ_DOMAIN_HIERARCHY=y ++CONFIG_GENERIC_MSI_IRQ=y ++CONFIG_GENERIC_MSI_IRQ_DOMAIN=y ++CONFIG_GENERIC_IRQ_MATRIX_ALLOCATOR=y ++CONFIG_GENERIC_IRQ_RESERVATION_MODE=y ++CONFIG_IRQ_FORCED_THREADING=y ++CONFIG_SPARSE_IRQ=y ++# CONFIG_GENERIC_IRQ_DEBUGFS is not set ++CONFIG_CLOCKSOURCE_WATCHDOG=y ++CONFIG_ARCH_CLOCKSOURCE_DATA=y ++CONFIG_ARCH_CLOCKSOURCE_INIT=y ++CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y ++CONFIG_GENERIC_TIME_VSYSCALL=y ++CONFIG_GENERIC_CLOCKEVENTS=y ++CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y ++CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y ++CONFIG_GENERIC_CMOS_UPDATE=y ++ ++# ++# Timers subsystem ++# ++CONFIG_TICK_ONESHOT=y ++CONFIG_NO_HZ_COMMON=y ++# CONFIG_HZ_PERIODIC is not set ++CONFIG_NO_HZ_IDLE=y ++# CONFIG_NO_HZ_FULL is not set ++CONFIG_NO_HZ=y ++CONFIG_HIGH_RES_TIMERS=y ++# CONFIG_PREEMPT_NONE is not set ++CONFIG_PREEMPT_VOLUNTARY=y ++# CONFIG_PREEMPT is not set ++ ++# ++# CPU/Task time and stats accounting ++# ++CONFIG_TICK_CPU_ACCOUNTING=y ++# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set ++# CONFIG_IRQ_TIME_ACCOUNTING is not set ++CONFIG_BSD_PROCESS_ACCT=y ++CONFIG_BSD_PROCESS_ACCT_V3=y ++CONFIG_TASKSTATS=y ++CONFIG_TASK_DELAY_ACCT=y ++CONFIG_TASK_XACCT=y ++CONFIG_TASK_IO_ACCOUNTING=y ++# CONFIG_PSI is not set ++# CONFIG_CPU_ISOLATION is not set ++ ++# ++# RCU Subsystem ++# ++CONFIG_TREE_RCU=y ++# CONFIG_RCU_EXPERT is not set ++CONFIG_SRCU=y ++CONFIG_TREE_SRCU=y ++CONFIG_RCU_STALL_COMMON=y ++CONFIG_RCU_NEED_SEGCBLIST=y ++CONFIG_BUILD_BIN2C=y ++# CONFIG_IKCONFIG is not set ++CONFIG_LOG_BUF_SHIFT=18 ++CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 ++CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 ++CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y ++CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y ++CONFIG_ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH=y ++CONFIG_ARCH_SUPPORTS_INT128=y ++CONFIG_NUMA_BALANCING=y ++CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y ++CONFIG_CGROUPS=y ++CONFIG_PAGE_COUNTER=y ++CONFIG_MEMCG=y ++CONFIG_MEMCG_SWAP=y ++# CONFIG_MEMCG_SWAP_ENABLED is not set ++CONFIG_MEMCG_KMEM=y ++CONFIG_BLK_CGROUP=y ++# CONFIG_DEBUG_BLK_CGROUP is not set ++CONFIG_CGROUP_WRITEBACK=y ++CONFIG_CGROUP_SCHED=y ++CONFIG_FAIR_GROUP_SCHED=y ++CONFIG_CFS_BANDWIDTH=y ++# CONFIG_RT_GROUP_SCHED is not set ++CONFIG_CGROUP_PIDS=y ++# CONFIG_CGROUP_RDMA is not set ++CONFIG_CGROUP_FREEZER=y ++CONFIG_CGROUP_HUGETLB=y ++CONFIG_CPUSETS=y ++CONFIG_PROC_PID_CPUSET=y ++CONFIG_CGROUP_DEVICE=y ++CONFIG_CGROUP_CPUACCT=y ++CONFIG_CGROUP_PERF=y ++# CONFIG_CGROUP_BPF is not set ++# CONFIG_CGROUP_DEBUG is not set ++CONFIG_SOCK_CGROUP_DATA=y ++CONFIG_NAMESPACES=y ++CONFIG_UTS_NS=y ++CONFIG_IPC_NS=y ++CONFIG_USER_NS=y ++CONFIG_PID_NS=y ++CONFIG_NET_NS=y ++CONFIG_CHECKPOINT_RESTORE=y ++CONFIG_SCHED_AUTOGROUP=y ++# CONFIG_SYSFS_DEPRECATED is not set ++CONFIG_RELAY=y ++CONFIG_BLK_DEV_INITRD=y ++CONFIG_INITRAMFS_SOURCE="" ++CONFIG_RD_GZIP=y ++CONFIG_RD_BZIP2=y ++CONFIG_RD_LZMA=y ++CONFIG_RD_XZ=y ++CONFIG_RD_LZO=y ++CONFIG_RD_LZ4=y ++CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y ++# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set ++CONFIG_SYSCTL=y ++CONFIG_ANON_INODES=y ++CONFIG_HAVE_UID16=y ++CONFIG_SYSCTL_EXCEPTION_TRACE=y ++CONFIG_HAVE_PCSPKR_PLATFORM=y ++CONFIG_BPF=y ++CONFIG_EXPERT=y ++CONFIG_UID16=y ++CONFIG_MULTIUSER=y ++CONFIG_SGETMASK_SYSCALL=y ++CONFIG_SYSFS_SYSCALL=y ++CONFIG_SYSCTL_SYSCALL=y ++CONFIG_FHANDLE=y ++CONFIG_POSIX_TIMERS=y ++CONFIG_PRINTK=y ++CONFIG_PRINTK_NMI=y ++CONFIG_BUG=y ++CONFIG_ELF_CORE=y ++CONFIG_PCSPKR_PLATFORM=y ++CONFIG_BASE_FULL=y ++CONFIG_FUTEX=y ++CONFIG_FUTEX_PI=y ++CONFIG_EPOLL=y ++CONFIG_SIGNALFD=y ++CONFIG_TIMERFD=y ++CONFIG_EVENTFD=y ++CONFIG_SHMEM=y ++CONFIG_AIO=y ++CONFIG_ADVISE_SYSCALLS=y ++CONFIG_MEMBARRIER=y ++CONFIG_KALLSYMS=y ++CONFIG_KALLSYMS_ALL=y ++CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y ++CONFIG_KALLSYMS_BASE_RELATIVE=y ++CONFIG_BPF_SYSCALL=y ++# CONFIG_BPF_JIT_ALWAYS_ON is not set ++CONFIG_USERFAULTFD=y ++CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y ++CONFIG_RSEQ=y ++# CONFIG_DEBUG_RSEQ is not set ++# CONFIG_EMBEDDED is not set ++CONFIG_HAVE_PERF_EVENTS=y ++# CONFIG_PC104 is not set ++ ++# ++# Kernel Performance Events And Counters ++# ++CONFIG_PERF_EVENTS=y ++# CONFIG_DEBUG_PERF_USE_VMALLOC is not set ++CONFIG_VM_EVENT_COUNTERS=y ++CONFIG_SLUB_DEBUG=y ++# CONFIG_SLUB_MEMCG_SYSFS_ON is not set ++# CONFIG_COMPAT_BRK is not set ++# CONFIG_SLAB is not set ++CONFIG_SLUB=y ++# CONFIG_SLOB is not set ++CONFIG_SLAB_MERGE_DEFAULT=y ++# CONFIG_SLAB_FREELIST_RANDOM is not set ++# CONFIG_SLAB_FREELIST_HARDENED is not set ++CONFIG_SLUB_CPU_PARTIAL=y ++CONFIG_SYSTEM_DATA_VERIFICATION=y ++CONFIG_PROFILING=y ++CONFIG_TRACEPOINTS=y ++CONFIG_64BIT=y ++CONFIG_X86_64=y ++CONFIG_X86=y ++CONFIG_INSTRUCTION_DECODER=y ++CONFIG_OUTPUT_FORMAT="elf64-x86-64" ++CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" ++CONFIG_LOCKDEP_SUPPORT=y ++CONFIG_STACKTRACE_SUPPORT=y ++CONFIG_MMU=y ++CONFIG_ARCH_MMAP_RND_BITS_MIN=28 ++CONFIG_ARCH_MMAP_RND_BITS_MAX=32 ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 ++CONFIG_GENERIC_ISA_DMA=y ++CONFIG_GENERIC_BUG=y ++CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y ++CONFIG_GENERIC_HWEIGHT=y ++CONFIG_ARCH_MAY_HAVE_PC_FDC=y ++CONFIG_RWSEM_XCHGADD_ALGORITHM=y ++CONFIG_GENERIC_CALIBRATE_DELAY=y ++CONFIG_ARCH_HAS_CPU_RELAX=y ++CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y ++CONFIG_ARCH_HAS_FILTER_PGPROT=y ++CONFIG_HAVE_SETUP_PER_CPU_AREA=y ++CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y ++CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y ++CONFIG_ARCH_HIBERNATION_POSSIBLE=y ++CONFIG_ARCH_SUSPEND_POSSIBLE=y ++CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y ++CONFIG_ARCH_WANT_GENERAL_HUGETLB=y ++CONFIG_ZONE_DMA32=y ++CONFIG_AUDIT_ARCH=y ++CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y ++CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y ++CONFIG_HAVE_INTEL_TXT=y ++CONFIG_X86_64_SMP=y ++CONFIG_ARCH_SUPPORTS_UPROBES=y ++CONFIG_FIX_EARLYCON_MEM=y ++CONFIG_PGTABLE_LEVELS=4 ++CONFIG_CC_HAS_SANE_STACKPROTECTOR=y ++ ++# ++# Processor type and features ++# ++# CONFIG_ZONE_DMA is not set ++CONFIG_SMP=y ++CONFIG_X86_FEATURE_NAMES=y ++CONFIG_X86_X2APIC=y ++CONFIG_X86_MPPARSE=y ++# CONFIG_GOLDFISH is not set ++CONFIG_RETPOLINE=y ++# CONFIG_RESCTRL is not set ++CONFIG_X86_EXTENDED_PLATFORM=y ++CONFIG_X86_NUMACHIP=y ++# CONFIG_X86_VSMP is not set ++# CONFIG_X86_UV is not set ++# CONFIG_X86_GOLDFISH is not set ++# CONFIG_X86_INTEL_MID is not set ++CONFIG_X86_INTEL_LPSS=y ++CONFIG_X86_AMD_PLATFORM_DEVICE=y ++CONFIG_IOSF_MBI=y ++CONFIG_IOSF_MBI_DEBUG=y ++CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y ++CONFIG_SCHED_OMIT_FRAME_POINTER=y ++CONFIG_HYPERVISOR_GUEST=y ++CONFIG_PARAVIRT=y ++CONFIG_PARAVIRT_XXL=y ++# CONFIG_PARAVIRT_DEBUG is not set ++CONFIG_PARAVIRT_SPINLOCKS=y ++# CONFIG_QUEUED_LOCK_STAT is not set ++CONFIG_XEN=y ++CONFIG_XEN_PV=y ++CONFIG_XEN_PV_SMP=y ++CONFIG_XEN_DOM0=y ++CONFIG_XEN_PVHVM=y ++CONFIG_XEN_PVHVM_SMP=y ++CONFIG_XEN_512GB=y ++CONFIG_XEN_SAVE_RESTORE=y ++# CONFIG_XEN_DEBUG_FS is not set ++CONFIG_XEN_PVH=y ++CONFIG_KVM_GUEST=y ++CONFIG_PVH=y ++CONFIG_KVM_DEBUG_FS=y ++# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set ++CONFIG_PARAVIRT_CLOCK=y ++# CONFIG_JAILHOUSE_GUEST is not set ++# CONFIG_MK8 is not set ++# CONFIG_MPSC is not set ++# CONFIG_MCORE2 is not set ++# CONFIG_MATOM is not set ++CONFIG_GENERIC_CPU=y ++CONFIG_X86_INTERNODE_CACHE_SHIFT=6 ++CONFIG_X86_L1_CACHE_SHIFT=6 ++CONFIG_X86_TSC=y ++CONFIG_X86_CMPXCHG64=y ++CONFIG_X86_CMOV=y ++CONFIG_X86_MINIMUM_CPU_FAMILY=64 ++CONFIG_X86_DEBUGCTLMSR=y ++CONFIG_PROCESSOR_SELECT=y ++CONFIG_CPU_SUP_INTEL=y ++CONFIG_CPU_SUP_AMD=y ++CONFIG_CPU_SUP_HYGON=y ++CONFIG_CPU_SUP_CENTAUR=y ++CONFIG_HPET_TIMER=y ++CONFIG_HPET_EMULATE_RTC=y ++CONFIG_DMI=y ++CONFIG_GART_IOMMU=y ++CONFIG_CALGARY_IOMMU=y ++CONFIG_CALGARY_IOMMU_ENABLED_BY_DEFAULT=y ++# CONFIG_MAXSMP is not set ++CONFIG_NR_CPUS_RANGE_BEGIN=2 ++CONFIG_NR_CPUS_RANGE_END=512 ++CONFIG_NR_CPUS_DEFAULT=64 ++CONFIG_NR_CPUS=256 ++CONFIG_SCHED_SMT=y ++CONFIG_SCHED_MC=y ++CONFIG_SCHED_MC_PRIO=y ++CONFIG_X86_LOCAL_APIC=y ++CONFIG_X86_IO_APIC=y ++CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y ++CONFIG_X86_MCE=y ++# CONFIG_X86_MCELOG_LEGACY is not set ++CONFIG_X86_MCE_INTEL=y ++CONFIG_X86_MCE_AMD=y ++CONFIG_X86_MCE_THRESHOLD=y ++CONFIG_X86_MCE_INJECT=m ++CONFIG_X86_THERMAL_VECTOR=y ++ ++# ++# Performance monitoring ++# ++CONFIG_PERF_EVENTS_INTEL_UNCORE=y ++CONFIG_PERF_EVENTS_INTEL_RAPL=y ++CONFIG_PERF_EVENTS_INTEL_CSTATE=y ++# CONFIG_PERF_EVENTS_AMD_POWER is not set ++CONFIG_X86_16BIT=y ++CONFIG_X86_ESPFIX64=y ++CONFIG_X86_VSYSCALL_EMULATION=y ++CONFIG_I8K=m ++CONFIG_MICROCODE=y ++CONFIG_MICROCODE_INTEL=y ++CONFIG_MICROCODE_AMD=y ++CONFIG_MICROCODE_OLD_INTERFACE=y ++CONFIG_X86_MSR=m ++CONFIG_X86_CPUID=m ++# CONFIG_X86_5LEVEL is not set ++CONFIG_X86_DIRECT_GBPAGES=y ++# CONFIG_X86_CPA_STATISTICS is not set ++CONFIG_ARCH_HAS_MEM_ENCRYPT=y ++# CONFIG_AMD_MEM_ENCRYPT is not set ++CONFIG_NUMA=y ++CONFIG_AMD_NUMA=y ++CONFIG_X86_64_ACPI_NUMA=y ++CONFIG_NODES_SPAN_OTHER_NODES=y ++# CONFIG_NUMA_EMU is not set ++CONFIG_NODES_SHIFT=6 ++CONFIG_ARCH_SPARSEMEM_ENABLE=y ++CONFIG_ARCH_SPARSEMEM_DEFAULT=y ++CONFIG_ARCH_SELECT_MEMORY_MODEL=y ++CONFIG_ARCH_MEMORY_PROBE=y ++CONFIG_ARCH_PROC_KCORE_TEXT=y ++CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 ++CONFIG_X86_PMEM_LEGACY_DEVICE=y ++CONFIG_X86_PMEM_LEGACY=y ++CONFIG_X86_CHECK_BIOS_CORRUPTION=y ++CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK=y ++CONFIG_X86_RESERVE_LOW=64 ++CONFIG_MTRR=y ++CONFIG_MTRR_SANITIZER=y ++CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1 ++CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1 ++CONFIG_X86_PAT=y ++CONFIG_ARCH_USES_PG_UNCACHED=y ++CONFIG_ARCH_RANDOM=y ++CONFIG_X86_SMAP=y ++CONFIG_X86_INTEL_UMIP=y ++CONFIG_X86_INTEL_MPX=y ++CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS=y ++CONFIG_EFI=y ++CONFIG_EFI_STUB=y ++CONFIG_EFI_MIXED=y ++CONFIG_SECCOMP=y ++# CONFIG_HZ_100 is not set ++CONFIG_HZ_250=y ++# CONFIG_HZ_300 is not set ++# CONFIG_HZ_1000 is not set ++CONFIG_HZ=250 ++CONFIG_SCHED_HRTICK=y ++CONFIG_KEXEC=y ++CONFIG_KEXEC_FILE=y ++CONFIG_ARCH_HAS_KEXEC_PURGATORY=y ++CONFIG_KEXEC_VERIFY_SIG=y ++CONFIG_KEXEC_BZIMAGE_VERIFY_SIG=y ++CONFIG_CRASH_DUMP=y ++CONFIG_KEXEC_JUMP=y ++CONFIG_PHYSICAL_START=0x1000000 ++CONFIG_RELOCATABLE=y ++CONFIG_RANDOMIZE_BASE=y ++CONFIG_X86_NEED_RELOCS=y ++CONFIG_PHYSICAL_ALIGN=0x1000000 ++CONFIG_DYNAMIC_MEMORY_LAYOUT=y ++CONFIG_RANDOMIZE_MEMORY=y ++CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa ++CONFIG_HOTPLUG_CPU=y ++# CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set ++# CONFIG_DEBUG_HOTPLUG_CPU0 is not set ++# CONFIG_COMPAT_VDSO is not set ++CONFIG_LEGACY_VSYSCALL_EMULATE=y ++# CONFIG_LEGACY_VSYSCALL_NONE is not set ++# CONFIG_CMDLINE_BOOL is not set ++CONFIG_MODIFY_LDT_SYSCALL=y ++CONFIG_HAVE_LIVEPATCH=y ++CONFIG_LIVEPATCH=y ++CONFIG_ARCH_HAS_ADD_PAGES=y ++CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y ++CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y ++CONFIG_USE_PERCPU_NUMA_NODE_ID=y ++CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y ++CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y ++CONFIG_ARCH_ENABLE_THP_MIGRATION=y ++ ++# ++# Power management and ACPI options ++# ++CONFIG_ARCH_HIBERNATION_HEADER=y ++CONFIG_SUSPEND=y ++CONFIG_SUSPEND_FREEZER=y ++# CONFIG_SUSPEND_SKIP_SYNC is not set ++CONFIG_HIBERNATE_CALLBACKS=y ++CONFIG_HIBERNATION=y ++CONFIG_PM_STD_PARTITION="" ++CONFIG_PM_SLEEP=y ++CONFIG_PM_SLEEP_SMP=y ++# CONFIG_PM_AUTOSLEEP is not set ++CONFIG_PM_WAKELOCKS=y ++CONFIG_PM_WAKELOCKS_LIMIT=100 ++CONFIG_PM_WAKELOCKS_GC=y ++CONFIG_PM=y ++CONFIG_PM_DEBUG=y ++CONFIG_PM_ADVANCED_DEBUG=y ++# CONFIG_PM_TEST_SUSPEND is not set ++CONFIG_PM_SLEEP_DEBUG=y ++# CONFIG_DPM_WATCHDOG is not set ++CONFIG_PM_TRACE=y ++CONFIG_PM_TRACE_RTC=y ++CONFIG_PM_CLK=y ++CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y ++# CONFIG_ENERGY_MODEL is not set ++CONFIG_ARCH_SUPPORTS_ACPI=y ++CONFIG_ACPI=y ++CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y ++CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y ++CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y ++# CONFIG_ACPI_DEBUGGER is not set ++CONFIG_ACPI_SPCR_TABLE=y ++CONFIG_ACPI_LPIT=y ++CONFIG_ACPI_SLEEP=y ++# CONFIG_ACPI_PROCFS_POWER is not set ++CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y ++CONFIG_ACPI_EC_DEBUGFS=m ++CONFIG_ACPI_AC=y ++CONFIG_ACPI_BATTERY=y ++CONFIG_ACPI_BUTTON=y ++CONFIG_ACPI_VIDEO=m ++CONFIG_ACPI_FAN=y ++# CONFIG_ACPI_TAD is not set ++CONFIG_ACPI_DOCK=y ++CONFIG_ACPI_CPU_FREQ_PSS=y ++CONFIG_ACPI_PROCESSOR_CSTATE=y ++CONFIG_ACPI_PROCESSOR_IDLE=y ++CONFIG_ACPI_CPPC_LIB=y ++CONFIG_ACPI_PROCESSOR=y ++CONFIG_ACPI_IPMI=m ++CONFIG_ACPI_HOTPLUG_CPU=y ++CONFIG_ACPI_PROCESSOR_AGGREGATOR=m ++CONFIG_ACPI_THERMAL=y ++CONFIG_ACPI_NUMA=y ++CONFIG_ACPI_CUSTOM_DSDT_FILE="" ++CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y ++CONFIG_ACPI_TABLE_UPGRADE=y ++# CONFIG_ACPI_DEBUG is not set ++CONFIG_ACPI_PCI_SLOT=y ++CONFIG_ACPI_CONTAINER=y ++CONFIG_ACPI_HOTPLUG_MEMORY=y ++CONFIG_ACPI_HOTPLUG_IOAPIC=y ++CONFIG_ACPI_SBS=m ++CONFIG_ACPI_HED=y ++# CONFIG_ACPI_CUSTOM_METHOD is not set ++CONFIG_ACPI_BGRT=y ++# CONFIG_ACPI_REDUCED_HARDWARE_ONLY is not set ++CONFIG_ACPI_NFIT=m ++# CONFIG_NFIT_SECURITY_DEBUG is not set ++CONFIG_HAVE_ACPI_APEI=y ++CONFIG_HAVE_ACPI_APEI_NMI=y ++CONFIG_ACPI_APEI=y ++CONFIG_ACPI_APEI_GHES=y ++CONFIG_ACPI_APEI_PCIEAER=y ++CONFIG_ACPI_APEI_MEMORY_FAILURE=y ++CONFIG_ACPI_APEI_EINJ=m ++# CONFIG_ACPI_APEI_ERST_DEBUG is not set ++# CONFIG_DPTF_POWER is not set ++CONFIG_ACPI_EXTLOG=m ++# CONFIG_PMIC_OPREGION is not set ++# CONFIG_ACPI_CONFIGFS is not set ++CONFIG_X86_PM_TIMER=y ++CONFIG_SFI=y ++ ++# ++# CPU Frequency scaling ++# ++CONFIG_CPU_FREQ=y ++CONFIG_CPU_FREQ_GOV_ATTR_SET=y ++CONFIG_CPU_FREQ_GOV_COMMON=y ++CONFIG_CPU_FREQ_STAT=y ++CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y ++# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set ++# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set ++CONFIG_CPU_FREQ_GOV_PERFORMANCE=y ++CONFIG_CPU_FREQ_GOV_POWERSAVE=y ++CONFIG_CPU_FREQ_GOV_USERSPACE=y ++CONFIG_CPU_FREQ_GOV_ONDEMAND=y ++CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y ++# CONFIG_CPU_FREQ_GOV_SCHEDUTIL is not set ++ ++# ++# CPU frequency scaling drivers ++# ++CONFIG_X86_INTEL_PSTATE=y ++CONFIG_X86_PCC_CPUFREQ=y ++CONFIG_X86_ACPI_CPUFREQ=y ++CONFIG_X86_ACPI_CPUFREQ_CPB=y ++CONFIG_X86_POWERNOW_K8=y ++CONFIG_X86_AMD_FREQ_SENSITIVITY=m ++CONFIG_X86_SPEEDSTEP_CENTRINO=y ++CONFIG_X86_P4_CLOCKMOD=m ++ ++# ++# shared options ++# ++CONFIG_X86_SPEEDSTEP_LIB=m ++ ++# ++# CPU Idle ++# ++CONFIG_CPU_IDLE=y ++CONFIG_CPU_IDLE_GOV_LADDER=y ++CONFIG_CPU_IDLE_GOV_MENU=y ++CONFIG_INTEL_IDLE=y ++ ++# ++# Bus options (PCI etc.) ++# ++CONFIG_PCI_DIRECT=y ++CONFIG_PCI_MMCONFIG=y ++CONFIG_PCI_XEN=y ++CONFIG_MMCONF_FAM10H=y ++# CONFIG_PCI_CNB20LE_QUIRK is not set ++# CONFIG_ISA_BUS is not set ++CONFIG_ISA_DMA_API=y ++CONFIG_AMD_NB=y ++# CONFIG_X86_SYSFB is not set ++ ++# ++# Binary Emulations ++# ++CONFIG_IA32_EMULATION=y ++# CONFIG_IA32_AOUT is not set ++CONFIG_X86_X32=y ++CONFIG_COMPAT_32=y ++CONFIG_COMPAT=y ++CONFIG_COMPAT_FOR_U64_ALIGNMENT=y ++CONFIG_SYSVIPC_COMPAT=y ++CONFIG_X86_DEV_DMA_OPS=y ++CONFIG_HAVE_GENERIC_GUP=y ++ ++# ++# Firmware Drivers ++# ++CONFIG_EDD=y ++CONFIG_EDD_OFF=y ++CONFIG_FIRMWARE_MEMMAP=y ++CONFIG_DMIID=y ++CONFIG_DMI_SYSFS=m ++CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y ++CONFIG_ISCSI_IBFT_FIND=y ++CONFIG_ISCSI_IBFT=m ++# CONFIG_FW_CFG_SYSFS is not set ++# CONFIG_GOOGLE_FIRMWARE is not set ++ ++# ++# EFI (Extensible Firmware Interface) Support ++# ++CONFIG_EFI_VARS=y ++CONFIG_EFI_ESRT=y ++CONFIG_EFI_VARS_PSTORE=m ++# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set ++CONFIG_EFI_RUNTIME_MAP=y ++# CONFIG_EFI_FAKE_MEMMAP is not set ++CONFIG_EFI_RUNTIME_WRAPPERS=y ++# CONFIG_EFI_BOOTLOADER_CONTROL is not set ++# CONFIG_EFI_CAPSULE_LOADER is not set ++# CONFIG_EFI_TEST is not set ++CONFIG_APPLE_PROPERTIES=y ++# CONFIG_RESET_ATTACK_MITIGATION is not set ++CONFIG_UEFI_CPER=y ++CONFIG_UEFI_CPER_X86=y ++CONFIG_EFI_DEV_PATH_PARSER=y ++ ++# ++# Tegra firmware driver ++# ++CONFIG_HAVE_KVM=y ++CONFIG_HAVE_KVM_IRQCHIP=y ++CONFIG_HAVE_KVM_IRQFD=y ++CONFIG_HAVE_KVM_IRQ_ROUTING=y ++CONFIG_HAVE_KVM_EVENTFD=y ++CONFIG_KVM_MMIO=y ++CONFIG_KVM_ASYNC_PF=y ++CONFIG_HAVE_KVM_MSI=y ++CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y ++CONFIG_KVM_VFIO=y ++CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y ++CONFIG_KVM_COMPAT=y ++CONFIG_HAVE_KVM_IRQ_BYPASS=y ++CONFIG_VIRTUALIZATION=y ++CONFIG_KVM=m ++CONFIG_KVM_INTEL=m ++CONFIG_KVM_AMD=m ++CONFIG_KVM_AMD_SEV=y ++# CONFIG_KVM_MMU_AUDIT is not set ++CONFIG_VHOST_NET=m ++CONFIG_VHOST_SCSI=m ++# CONFIG_VHOST_VSOCK is not set ++CONFIG_VHOST=m ++# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set ++ ++# ++# General architecture-dependent options ++# ++CONFIG_CRASH_CORE=y ++CONFIG_KEXEC_CORE=y ++CONFIG_HOTPLUG_SMT=y ++CONFIG_OPROFILE=m ++# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set ++CONFIG_HAVE_OPROFILE=y ++CONFIG_OPROFILE_NMI_TIMER=y ++CONFIG_KPROBES=y ++CONFIG_JUMP_LABEL=y ++# CONFIG_STATIC_KEYS_SELFTEST is not set ++CONFIG_OPTPROBES=y ++CONFIG_KPROBES_ON_FTRACE=y ++CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y ++CONFIG_ARCH_USE_BUILTIN_BSWAP=y ++CONFIG_KRETPROBES=y ++CONFIG_USER_RETURN_NOTIFIER=y ++CONFIG_HAVE_IOREMAP_PROT=y ++CONFIG_HAVE_KPROBES=y ++CONFIG_HAVE_KRETPROBES=y ++CONFIG_HAVE_OPTPROBES=y ++CONFIG_HAVE_KPROBES_ON_FTRACE=y ++CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y ++CONFIG_HAVE_NMI=y ++CONFIG_HAVE_ARCH_TRACEHOOK=y ++CONFIG_HAVE_DMA_CONTIGUOUS=y ++CONFIG_GENERIC_SMP_IDLE_THREAD=y ++CONFIG_ARCH_HAS_FORTIFY_SOURCE=y ++CONFIG_ARCH_HAS_SET_MEMORY=y ++CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y ++CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y ++CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y ++CONFIG_HAVE_RSEQ=y ++CONFIG_HAVE_FUNCTION_ARG_ACCESS_API=y ++CONFIG_HAVE_CLK=y ++CONFIG_HAVE_HW_BREAKPOINT=y ++CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y ++CONFIG_HAVE_USER_RETURN_NOTIFIER=y ++CONFIG_HAVE_PERF_EVENTS_NMI=y ++CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y ++CONFIG_HAVE_PERF_REGS=y ++CONFIG_HAVE_PERF_USER_STACK_DUMP=y ++CONFIG_HAVE_ARCH_JUMP_LABEL=y ++CONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=y ++CONFIG_HAVE_RCU_TABLE_FREE=y ++CONFIG_HAVE_RCU_TABLE_INVALIDATE=y ++CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y ++CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y ++CONFIG_HAVE_CMPXCHG_LOCAL=y ++CONFIG_HAVE_CMPXCHG_DOUBLE=y ++CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y ++CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y ++CONFIG_HAVE_ARCH_SECCOMP_FILTER=y ++CONFIG_SECCOMP_FILTER=y ++CONFIG_HAVE_ARCH_STACKLEAK=y ++CONFIG_HAVE_STACKPROTECTOR=y ++CONFIG_CC_HAS_STACKPROTECTOR_NONE=y ++CONFIG_STACKPROTECTOR=y ++CONFIG_STACKPROTECTOR_STRONG=y ++CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y ++CONFIG_HAVE_CONTEXT_TRACKING=y ++CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y ++CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y ++CONFIG_HAVE_MOVE_PMD=y ++CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y ++CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y ++CONFIG_HAVE_ARCH_HUGE_VMAP=y ++CONFIG_HAVE_ARCH_SOFT_DIRTY=y ++CONFIG_HAVE_MOD_ARCH_SPECIFIC=y ++CONFIG_MODULES_USE_ELF_RELA=y ++CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y ++CONFIG_ARCH_HAS_ELF_RANDOMIZE=y ++CONFIG_HAVE_ARCH_MMAP_RND_BITS=y ++CONFIG_HAVE_EXIT_THREAD=y ++CONFIG_ARCH_MMAP_RND_BITS=28 ++CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y ++CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 ++CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y ++CONFIG_HAVE_COPY_THREAD_TLS=y ++CONFIG_HAVE_STACK_VALIDATION=y ++CONFIG_HAVE_RELIABLE_STACKTRACE=y ++CONFIG_OLD_SIGSUSPEND3=y ++CONFIG_COMPAT_OLD_SIGACTION=y ++CONFIG_COMPAT_32BIT_TIME=y ++CONFIG_HAVE_ARCH_VMAP_STACK=y ++CONFIG_VMAP_STACK=y ++CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y ++CONFIG_STRICT_KERNEL_RWX=y ++CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y ++CONFIG_STRICT_MODULE_RWX=y ++CONFIG_ARCH_HAS_REFCOUNT=y ++# CONFIG_REFCOUNT_FULL is not set ++CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y ++ ++# ++# GCOV-based kernel profiling ++# ++# CONFIG_GCOV_KERNEL is not set ++CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y ++CONFIG_PLUGIN_HOSTCC="" ++CONFIG_HAVE_GCC_PLUGINS=y ++CONFIG_RT_MUTEXES=y ++CONFIG_BASE_SMALL=0 ++CONFIG_MODULES=y ++# CONFIG_MODULE_FORCE_LOAD is not set ++CONFIG_MODULE_UNLOAD=y ++# CONFIG_MODULE_FORCE_UNLOAD is not set ++CONFIG_MODVERSIONS=y ++CONFIG_MODULE_SRCVERSION_ALL=y ++CONFIG_MODULE_SIG=y ++# CONFIG_MODULE_SIG_FORCE is not set ++CONFIG_MODULE_SIG_ALL=y ++# CONFIG_MODULE_SIG_SHA1 is not set ++# CONFIG_MODULE_SIG_SHA224 is not set ++# CONFIG_MODULE_SIG_SHA256 is not set ++# CONFIG_MODULE_SIG_SHA384 is not set ++CONFIG_MODULE_SIG_SHA512=y ++CONFIG_MODULE_SIG_HASH="sha512" ++# CONFIG_MODULE_COMPRESS is not set ++CONFIG_MODULES_TREE_LOOKUP=y ++CONFIG_BLOCK=y ++CONFIG_BLK_SCSI_REQUEST=y ++CONFIG_BLK_DEV_BSG=y ++CONFIG_BLK_DEV_BSGLIB=y ++CONFIG_BLK_DEV_INTEGRITY=y ++# CONFIG_BLK_DEV_ZONED is not set ++CONFIG_BLK_DEV_THROTTLING=y ++# CONFIG_BLK_DEV_THROTTLING_LOW is not set ++CONFIG_BLK_CMDLINE_PARSER=y ++# CONFIG_BLK_WBT is not set ++# CONFIG_BLK_CGROUP_IOLATENCY is not set ++CONFIG_BLK_DEBUG_FS=y ++# CONFIG_BLK_SED_OPAL is not set ++ ++# ++# Partition Types ++# ++CONFIG_PARTITION_ADVANCED=y ++# CONFIG_ACORN_PARTITION is not set ++CONFIG_AIX_PARTITION=y ++CONFIG_OSF_PARTITION=y ++CONFIG_AMIGA_PARTITION=y ++CONFIG_ATARI_PARTITION=y ++CONFIG_MAC_PARTITION=y ++CONFIG_MSDOS_PARTITION=y ++CONFIG_BSD_DISKLABEL=y ++CONFIG_MINIX_SUBPARTITION=y ++CONFIG_SOLARIS_X86_PARTITION=y ++CONFIG_UNIXWARE_DISKLABEL=y ++CONFIG_LDM_PARTITION=y ++# CONFIG_LDM_DEBUG is not set ++CONFIG_SGI_PARTITION=y ++CONFIG_ULTRIX_PARTITION=y ++CONFIG_SUN_PARTITION=y ++CONFIG_KARMA_PARTITION=y ++CONFIG_EFI_PARTITION=y ++CONFIG_SYSV68_PARTITION=y ++CONFIG_CMDLINE_PARTITION=y ++CONFIG_BLOCK_COMPAT=y ++CONFIG_BLK_MQ_PCI=y ++CONFIG_BLK_MQ_VIRTIO=y ++CONFIG_BLK_MQ_RDMA=y ++CONFIG_BLK_PM=y ++ ++# ++# IO Schedulers ++# ++CONFIG_MQ_IOSCHED_DEADLINE=y ++CONFIG_MQ_IOSCHED_KYBER=y ++# CONFIG_IOSCHED_BFQ is not set ++CONFIG_PREEMPT_NOTIFIERS=y ++CONFIG_PADATA=y ++CONFIG_ASN1=y ++CONFIG_INLINE_SPIN_UNLOCK_IRQ=y ++CONFIG_INLINE_READ_UNLOCK=y ++CONFIG_INLINE_READ_UNLOCK_IRQ=y ++CONFIG_INLINE_WRITE_UNLOCK=y ++CONFIG_INLINE_WRITE_UNLOCK_IRQ=y ++CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y ++CONFIG_MUTEX_SPIN_ON_OWNER=y ++CONFIG_RWSEM_SPIN_ON_OWNER=y ++CONFIG_LOCK_SPIN_ON_OWNER=y ++CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y ++CONFIG_QUEUED_SPINLOCKS=y ++CONFIG_ARCH_USE_QUEUED_RWLOCKS=y ++CONFIG_QUEUED_RWLOCKS=y ++CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y ++CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y ++CONFIG_FREEZER=y ++ ++# ++# Executable file formats ++# ++CONFIG_BINFMT_ELF=y ++CONFIG_COMPAT_BINFMT_ELF=y ++CONFIG_ELFCORE=y ++CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y ++CONFIG_BINFMT_SCRIPT=y ++CONFIG_BINFMT_MISC=m ++CONFIG_COREDUMP=y ++ ++# ++# Memory Management options ++# ++CONFIG_SELECT_MEMORY_MODEL=y ++CONFIG_SPARSEMEM_MANUAL=y ++CONFIG_SPARSEMEM=y ++CONFIG_NEED_MULTIPLE_NODES=y ++CONFIG_HAVE_MEMORY_PRESENT=y ++CONFIG_SPARSEMEM_EXTREME=y ++CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y ++CONFIG_SPARSEMEM_VMEMMAP=y ++CONFIG_HAVE_MEMBLOCK_NODE_MAP=y ++CONFIG_ARCH_DISCARD_MEMBLOCK=y ++CONFIG_MEMORY_ISOLATION=y ++CONFIG_HAVE_BOOTMEM_INFO_NODE=y ++CONFIG_MEMORY_HOTPLUG=y ++CONFIG_MEMORY_HOTPLUG_SPARSE=y ++# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set ++CONFIG_MEMORY_HOTREMOVE=y ++CONFIG_SPLIT_PTLOCK_CPUS=4 ++CONFIG_MEMORY_BALLOON=y ++CONFIG_BALLOON_COMPACTION=y ++CONFIG_COMPACTION=y ++CONFIG_MIGRATION=y ++CONFIG_PHYS_ADDR_T_64BIT=y ++CONFIG_VIRT_TO_BUS=y ++CONFIG_MMU_NOTIFIER=y ++CONFIG_KSM=y ++CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 ++CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y ++CONFIG_MEMORY_FAILURE=y ++CONFIG_HWPOISON_INJECT=m ++CONFIG_TRANSPARENT_HUGEPAGE=y ++CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y ++# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set ++CONFIG_ARCH_WANTS_THP_SWAP=y ++CONFIG_THP_SWAP=y ++CONFIG_TRANSPARENT_HUGE_PAGECACHE=y ++CONFIG_CLEANCACHE=y ++CONFIG_FRONTSWAP=y ++CONFIG_CMA=y ++# CONFIG_CMA_DEBUG is not set ++# CONFIG_CMA_DEBUGFS is not set ++CONFIG_CMA_AREAS=7 ++CONFIG_MEM_SOFT_DIRTY=y ++CONFIG_ZSWAP=y ++CONFIG_ZPOOL=y ++CONFIG_ZBUD=y ++# CONFIG_Z3FOLD is not set ++CONFIG_ZSMALLOC=y ++CONFIG_PGTABLE_MAPPING=y ++# CONFIG_ZSMALLOC_STAT is not set ++CONFIG_GENERIC_EARLY_IOREMAP=y ++# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set ++CONFIG_IDLE_PAGE_TRACKING=y ++CONFIG_ARCH_HAS_ZONE_DEVICE=y ++CONFIG_ZONE_DEVICE=y ++CONFIG_ARCH_HAS_HMM=y ++CONFIG_DEV_PAGEMAP_OPS=y ++# CONFIG_HMM_MIRROR is not set ++# CONFIG_DEVICE_PRIVATE is not set ++# CONFIG_DEVICE_PUBLIC is not set ++CONFIG_FRAME_VECTOR=y ++CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y ++CONFIG_ARCH_HAS_PKEYS=y ++# CONFIG_PERCPU_STATS is not set ++# CONFIG_GUP_BENCHMARK is not set ++CONFIG_ARCH_HAS_PTE_SPECIAL=y ++CONFIG_NET=y ++CONFIG_COMPAT_NETLINK_MESSAGES=y ++CONFIG_NET_INGRESS=y ++CONFIG_NET_EGRESS=y ++CONFIG_SKB_EXTENSIONS=y ++ ++# ++# Networking options ++# ++CONFIG_PACKET=y ++CONFIG_PACKET_DIAG=m ++CONFIG_UNIX=y ++CONFIG_UNIX_DIAG=m ++# CONFIG_TLS is not set ++CONFIG_XFRM=y ++CONFIG_XFRM_ALGO=m ++CONFIG_XFRM_USER=m ++# CONFIG_XFRM_INTERFACE is not set ++# CONFIG_XFRM_SUB_POLICY is not set ++# CONFIG_XFRM_MIGRATE is not set ++CONFIG_XFRM_STATISTICS=y ++CONFIG_XFRM_IPCOMP=m ++CONFIG_NET_KEY=m ++# CONFIG_NET_KEY_MIGRATE is not set ++# CONFIG_SMC is not set ++# CONFIG_XDP_SOCKETS is not set ++CONFIG_INET=y ++CONFIG_IP_MULTICAST=y ++CONFIG_IP_ADVANCED_ROUTER=y ++CONFIG_IP_FIB_TRIE_STATS=y ++CONFIG_IP_MULTIPLE_TABLES=y ++CONFIG_IP_ROUTE_MULTIPATH=y ++CONFIG_IP_ROUTE_VERBOSE=y ++CONFIG_IP_ROUTE_CLASSID=y ++CONFIG_IP_PNP=y ++CONFIG_IP_PNP_DHCP=y ++# CONFIG_IP_PNP_BOOTP is not set ++# CONFIG_IP_PNP_RARP is not set ++CONFIG_NET_IPIP=m ++CONFIG_NET_IPGRE_DEMUX=m ++CONFIG_NET_IP_TUNNEL=m ++CONFIG_NET_IPGRE=m ++CONFIG_NET_IPGRE_BROADCAST=y ++CONFIG_IP_MROUTE_COMMON=y ++CONFIG_IP_MROUTE=y ++# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set ++CONFIG_IP_PIMSM_V1=y ++CONFIG_IP_PIMSM_V2=y ++CONFIG_SYN_COOKIES=y ++CONFIG_NET_IPVTI=m ++CONFIG_NET_UDP_TUNNEL=m ++CONFIG_NET_FOU=m ++CONFIG_NET_FOU_IP_TUNNELS=y ++CONFIG_INET_AH=m ++CONFIG_INET_ESP=m ++# CONFIG_INET_ESP_OFFLOAD is not set ++CONFIG_INET_IPCOMP=m ++CONFIG_INET_XFRM_TUNNEL=m ++CONFIG_INET_TUNNEL=m ++CONFIG_INET_XFRM_MODE_TRANSPORT=m ++CONFIG_INET_XFRM_MODE_TUNNEL=m ++CONFIG_INET_XFRM_MODE_BEET=m ++CONFIG_INET_DIAG=m ++CONFIG_INET_TCP_DIAG=m ++CONFIG_INET_UDP_DIAG=m ++# CONFIG_INET_RAW_DIAG is not set ++# CONFIG_INET_DIAG_DESTROY is not set ++CONFIG_TCP_CONG_ADVANCED=y ++CONFIG_TCP_CONG_BIC=m ++CONFIG_TCP_CONG_CUBIC=y ++CONFIG_TCP_CONG_WESTWOOD=m ++CONFIG_TCP_CONG_HTCP=m ++CONFIG_TCP_CONG_HSTCP=m ++CONFIG_TCP_CONG_HYBLA=m ++CONFIG_TCP_CONG_VEGAS=m ++# CONFIG_TCP_CONG_NV is not set ++CONFIG_TCP_CONG_SCALABLE=m ++CONFIG_TCP_CONG_LP=m ++CONFIG_TCP_CONG_VENO=m ++CONFIG_TCP_CONG_YEAH=m ++CONFIG_TCP_CONG_ILLINOIS=m ++CONFIG_TCP_CONG_DCTCP=m ++CONFIG_TCP_CONG_CDG=m ++# CONFIG_TCP_CONG_BBR is not set ++CONFIG_DEFAULT_CUBIC=y ++# CONFIG_DEFAULT_RENO is not set ++CONFIG_DEFAULT_TCP_CONG="cubic" ++CONFIG_TCP_MD5SIG=y ++CONFIG_IPV6=y ++CONFIG_IPV6_ROUTER_PREF=y ++CONFIG_IPV6_ROUTE_INFO=y ++# CONFIG_IPV6_OPTIMISTIC_DAD is not set ++CONFIG_INET6_AH=m ++CONFIG_INET6_ESP=m ++# CONFIG_INET6_ESP_OFFLOAD is not set ++CONFIG_INET6_IPCOMP=m ++CONFIG_IPV6_MIP6=m ++CONFIG_IPV6_ILA=m ++CONFIG_INET6_XFRM_TUNNEL=m ++CONFIG_INET6_TUNNEL=m ++CONFIG_INET6_XFRM_MODE_TRANSPORT=m ++CONFIG_INET6_XFRM_MODE_TUNNEL=m ++CONFIG_INET6_XFRM_MODE_BEET=m ++CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m ++CONFIG_IPV6_VTI=m ++CONFIG_IPV6_SIT=m ++CONFIG_IPV6_SIT_6RD=y ++CONFIG_IPV6_NDISC_NODETYPE=y ++CONFIG_IPV6_TUNNEL=m ++CONFIG_IPV6_GRE=m ++CONFIG_IPV6_FOU=m ++CONFIG_IPV6_FOU_TUNNEL=m ++CONFIG_IPV6_MULTIPLE_TABLES=y ++CONFIG_IPV6_SUBTREES=y ++CONFIG_IPV6_MROUTE=y ++CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y ++CONFIG_IPV6_PIMSM_V2=y ++# CONFIG_IPV6_SEG6_LWTUNNEL is not set ++# CONFIG_IPV6_SEG6_HMAC is not set ++CONFIG_NETLABEL=y ++CONFIG_NETWORK_SECMARK=y ++CONFIG_NET_PTP_CLASSIFY=y ++# CONFIG_NETWORK_PHY_TIMESTAMPING is not set ++CONFIG_NETFILTER=y ++CONFIG_NETFILTER_ADVANCED=y ++CONFIG_BRIDGE_NETFILTER=m ++ ++# ++# Core Netfilter Configuration ++# ++CONFIG_NETFILTER_INGRESS=y ++CONFIG_NETFILTER_NETLINK=m ++CONFIG_NETFILTER_FAMILY_BRIDGE=y ++CONFIG_NETFILTER_FAMILY_ARP=y ++CONFIG_NETFILTER_NETLINK_ACCT=m ++CONFIG_NETFILTER_NETLINK_QUEUE=m ++CONFIG_NETFILTER_NETLINK_LOG=m ++CONFIG_NETFILTER_NETLINK_OSF=m ++CONFIG_NF_CONNTRACK=m ++CONFIG_NF_LOG_COMMON=m ++# CONFIG_NF_LOG_NETDEV is not set ++CONFIG_NETFILTER_CONNCOUNT=m ++CONFIG_NF_CONNTRACK_MARK=y ++CONFIG_NF_CONNTRACK_SECMARK=y ++CONFIG_NF_CONNTRACK_ZONES=y ++# CONFIG_NF_CONNTRACK_PROCFS is not set ++CONFIG_NF_CONNTRACK_EVENTS=y ++CONFIG_NF_CONNTRACK_TIMEOUT=y ++CONFIG_NF_CONNTRACK_TIMESTAMP=y ++CONFIG_NF_CONNTRACK_LABELS=y ++CONFIG_NF_CT_PROTO_DCCP=y ++CONFIG_NF_CT_PROTO_GRE=m ++CONFIG_NF_CT_PROTO_SCTP=y ++CONFIG_NF_CT_PROTO_UDPLITE=y ++CONFIG_NF_CONNTRACK_AMANDA=m ++CONFIG_NF_CONNTRACK_FTP=m ++CONFIG_NF_CONNTRACK_H323=m ++CONFIG_NF_CONNTRACK_IRC=m ++CONFIG_NF_CONNTRACK_BROADCAST=m ++CONFIG_NF_CONNTRACK_NETBIOS_NS=m ++CONFIG_NF_CONNTRACK_SNMP=m ++CONFIG_NF_CONNTRACK_PPTP=m ++CONFIG_NF_CONNTRACK_SANE=m ++CONFIG_NF_CONNTRACK_SIP=m ++CONFIG_NF_CONNTRACK_TFTP=m ++CONFIG_NF_CT_NETLINK=m ++CONFIG_NF_CT_NETLINK_TIMEOUT=m ++CONFIG_NF_CT_NETLINK_HELPER=m ++CONFIG_NETFILTER_NETLINK_GLUE_CT=y ++CONFIG_NF_NAT=m ++CONFIG_NF_NAT_NEEDED=y ++CONFIG_NF_NAT_AMANDA=m ++CONFIG_NF_NAT_FTP=m ++CONFIG_NF_NAT_IRC=m ++CONFIG_NF_NAT_SIP=m ++CONFIG_NF_NAT_TFTP=m ++CONFIG_NF_NAT_REDIRECT=y ++CONFIG_NETFILTER_SYNPROXY=m ++CONFIG_NF_TABLES=m ++# CONFIG_NF_TABLES_SET is not set ++# CONFIG_NF_TABLES_INET is not set ++# CONFIG_NF_TABLES_NETDEV is not set ++# CONFIG_NFT_NUMGEN is not set ++CONFIG_NFT_CT=m ++CONFIG_NFT_COUNTER=m ++# CONFIG_NFT_CONNLIMIT is not set ++CONFIG_NFT_LOG=m ++CONFIG_NFT_LIMIT=m ++CONFIG_NFT_MASQ=m ++CONFIG_NFT_REDIR=m ++CONFIG_NFT_NAT=m ++# CONFIG_NFT_TUNNEL is not set ++# CONFIG_NFT_OBJREF is not set ++CONFIG_NFT_QUEUE=m ++# CONFIG_NFT_QUOTA is not set ++CONFIG_NFT_REJECT=m ++CONFIG_NFT_COMPAT=m ++CONFIG_NFT_HASH=m ++# CONFIG_NFT_XFRM is not set ++# CONFIG_NFT_SOCKET is not set ++# CONFIG_NFT_OSF is not set ++# CONFIG_NFT_TPROXY is not set ++# CONFIG_NF_FLOW_TABLE is not set ++CONFIG_NETFILTER_XTABLES=m ++ ++# ++# Xtables combined modules ++# ++CONFIG_NETFILTER_XT_MARK=m ++CONFIG_NETFILTER_XT_CONNMARK=m ++CONFIG_NETFILTER_XT_SET=m ++ ++# ++# Xtables targets ++# ++CONFIG_NETFILTER_XT_TARGET_AUDIT=m ++CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m ++CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m ++CONFIG_NETFILTER_XT_TARGET_CONNMARK=m ++CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m ++CONFIG_NETFILTER_XT_TARGET_CT=m ++CONFIG_NETFILTER_XT_TARGET_DSCP=m ++CONFIG_NETFILTER_XT_TARGET_HL=m ++CONFIG_NETFILTER_XT_TARGET_HMARK=m ++CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m ++CONFIG_NETFILTER_XT_TARGET_LED=m ++CONFIG_NETFILTER_XT_TARGET_LOG=m ++CONFIG_NETFILTER_XT_TARGET_MARK=m ++CONFIG_NETFILTER_XT_NAT=m ++CONFIG_NETFILTER_XT_TARGET_NETMAP=m ++CONFIG_NETFILTER_XT_TARGET_NFLOG=m ++CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m ++# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set ++CONFIG_NETFILTER_XT_TARGET_RATEEST=m ++CONFIG_NETFILTER_XT_TARGET_REDIRECT=m ++CONFIG_NETFILTER_XT_TARGET_TEE=m ++CONFIG_NETFILTER_XT_TARGET_TPROXY=m ++CONFIG_NETFILTER_XT_TARGET_TRACE=m ++CONFIG_NETFILTER_XT_TARGET_SECMARK=m ++CONFIG_NETFILTER_XT_TARGET_TCPMSS=m ++CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m ++ ++# ++# Xtables matches ++# ++CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m ++CONFIG_NETFILTER_XT_MATCH_BPF=m ++CONFIG_NETFILTER_XT_MATCH_CGROUP=m ++CONFIG_NETFILTER_XT_MATCH_CLUSTER=m ++CONFIG_NETFILTER_XT_MATCH_COMMENT=m ++CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m ++CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m ++CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m ++CONFIG_NETFILTER_XT_MATCH_CONNMARK=m ++CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m ++CONFIG_NETFILTER_XT_MATCH_CPU=m ++CONFIG_NETFILTER_XT_MATCH_DCCP=m ++CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m ++CONFIG_NETFILTER_XT_MATCH_DSCP=m ++CONFIG_NETFILTER_XT_MATCH_ECN=m ++CONFIG_NETFILTER_XT_MATCH_ESP=m ++CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m ++CONFIG_NETFILTER_XT_MATCH_HELPER=m ++CONFIG_NETFILTER_XT_MATCH_HL=m ++CONFIG_NETFILTER_XT_MATCH_IPCOMP=m ++CONFIG_NETFILTER_XT_MATCH_IPRANGE=m ++CONFIG_NETFILTER_XT_MATCH_IPVS=m ++CONFIG_NETFILTER_XT_MATCH_L2TP=m ++CONFIG_NETFILTER_XT_MATCH_LENGTH=m ++CONFIG_NETFILTER_XT_MATCH_LIMIT=m ++CONFIG_NETFILTER_XT_MATCH_MAC=m ++CONFIG_NETFILTER_XT_MATCH_MARK=m ++CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m ++CONFIG_NETFILTER_XT_MATCH_NFACCT=m ++CONFIG_NETFILTER_XT_MATCH_OSF=m ++CONFIG_NETFILTER_XT_MATCH_OWNER=m ++CONFIG_NETFILTER_XT_MATCH_POLICY=m ++CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m ++CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m ++CONFIG_NETFILTER_XT_MATCH_QUOTA=m ++CONFIG_NETFILTER_XT_MATCH_RATEEST=m ++CONFIG_NETFILTER_XT_MATCH_REALM=m ++CONFIG_NETFILTER_XT_MATCH_RECENT=m ++CONFIG_NETFILTER_XT_MATCH_SCTP=m ++# CONFIG_NETFILTER_XT_MATCH_SOCKET is not set ++CONFIG_NETFILTER_XT_MATCH_STATE=m ++CONFIG_NETFILTER_XT_MATCH_STATISTIC=m ++CONFIG_NETFILTER_XT_MATCH_STRING=m ++CONFIG_NETFILTER_XT_MATCH_TCPMSS=m ++CONFIG_NETFILTER_XT_MATCH_TIME=m ++CONFIG_NETFILTER_XT_MATCH_U32=m ++CONFIG_IP_SET=m ++CONFIG_IP_SET_MAX=256 ++CONFIG_IP_SET_BITMAP_IP=m ++CONFIG_IP_SET_BITMAP_IPMAC=m ++CONFIG_IP_SET_BITMAP_PORT=m ++CONFIG_IP_SET_HASH_IP=m ++CONFIG_IP_SET_HASH_IPMARK=m ++CONFIG_IP_SET_HASH_IPPORT=m ++CONFIG_IP_SET_HASH_IPPORTIP=m ++CONFIG_IP_SET_HASH_IPPORTNET=m ++# CONFIG_IP_SET_HASH_IPMAC is not set ++CONFIG_IP_SET_HASH_MAC=m ++CONFIG_IP_SET_HASH_NETPORTNET=m ++CONFIG_IP_SET_HASH_NET=m ++CONFIG_IP_SET_HASH_NETNET=m ++CONFIG_IP_SET_HASH_NETPORT=m ++CONFIG_IP_SET_HASH_NETIFACE=m ++CONFIG_IP_SET_LIST_SET=m ++CONFIG_IP_VS=m ++CONFIG_IP_VS_IPV6=y ++# CONFIG_IP_VS_DEBUG is not set ++CONFIG_IP_VS_TAB_BITS=12 ++ ++# ++# IPVS transport protocol load balancing support ++# ++CONFIG_IP_VS_PROTO_TCP=y ++CONFIG_IP_VS_PROTO_UDP=y ++CONFIG_IP_VS_PROTO_AH_ESP=y ++CONFIG_IP_VS_PROTO_ESP=y ++CONFIG_IP_VS_PROTO_AH=y ++CONFIG_IP_VS_PROTO_SCTP=y ++ ++# ++# IPVS scheduler ++# ++CONFIG_IP_VS_RR=m ++CONFIG_IP_VS_WRR=m ++CONFIG_IP_VS_LC=m ++CONFIG_IP_VS_WLC=m ++CONFIG_IP_VS_FO=m ++CONFIG_IP_VS_OVF=m ++CONFIG_IP_VS_LBLC=m ++CONFIG_IP_VS_LBLCR=m ++CONFIG_IP_VS_DH=m ++CONFIG_IP_VS_SH=m ++# CONFIG_IP_VS_MH is not set ++CONFIG_IP_VS_SED=m ++CONFIG_IP_VS_NQ=m ++ ++# ++# IPVS SH scheduler ++# ++CONFIG_IP_VS_SH_TAB_BITS=8 ++ ++# ++# IPVS MH scheduler ++# ++CONFIG_IP_VS_MH_TAB_INDEX=12 ++ ++# ++# IPVS application helper ++# ++CONFIG_IP_VS_FTP=m ++CONFIG_IP_VS_NFCT=y ++CONFIG_IP_VS_PE_SIP=m ++ ++# ++# IP: Netfilter Configuration ++# ++CONFIG_NF_DEFRAG_IPV4=m ++# CONFIG_NF_SOCKET_IPV4 is not set ++CONFIG_NF_TPROXY_IPV4=m ++# CONFIG_NF_TABLES_IPV4 is not set ++# CONFIG_NF_TABLES_ARP is not set ++CONFIG_NF_DUP_IPV4=m ++CONFIG_NF_LOG_ARP=m ++CONFIG_NF_LOG_IPV4=m ++CONFIG_NF_REJECT_IPV4=m ++CONFIG_NF_NAT_IPV4=m ++CONFIG_NF_NAT_MASQUERADE_IPV4=y ++CONFIG_NF_NAT_SNMP_BASIC=m ++CONFIG_NF_NAT_PPTP=m ++CONFIG_NF_NAT_H323=m ++CONFIG_IP_NF_IPTABLES=m ++CONFIG_IP_NF_MATCH_AH=m ++CONFIG_IP_NF_MATCH_ECN=m ++CONFIG_IP_NF_MATCH_RPFILTER=m ++CONFIG_IP_NF_MATCH_TTL=m ++CONFIG_IP_NF_FILTER=m ++CONFIG_IP_NF_TARGET_REJECT=m ++CONFIG_IP_NF_TARGET_SYNPROXY=m ++CONFIG_IP_NF_NAT=m ++CONFIG_IP_NF_TARGET_MASQUERADE=m ++CONFIG_IP_NF_TARGET_NETMAP=m ++CONFIG_IP_NF_TARGET_REDIRECT=m ++CONFIG_IP_NF_MANGLE=m ++CONFIG_IP_NF_TARGET_CLUSTERIP=m ++CONFIG_IP_NF_TARGET_ECN=m ++CONFIG_IP_NF_TARGET_TTL=m ++CONFIG_IP_NF_RAW=m ++CONFIG_IP_NF_SECURITY=m ++CONFIG_IP_NF_ARPTABLES=m ++CONFIG_IP_NF_ARPFILTER=m ++CONFIG_IP_NF_ARP_MANGLE=m ++ ++# ++# IPv6: Netfilter Configuration ++# ++# CONFIG_NF_SOCKET_IPV6 is not set ++CONFIG_NF_TPROXY_IPV6=m ++# CONFIG_NF_TABLES_IPV6 is not set ++CONFIG_NF_DUP_IPV6=m ++CONFIG_NF_REJECT_IPV6=m ++CONFIG_NF_LOG_IPV6=m ++CONFIG_NF_NAT_IPV6=m ++CONFIG_NF_NAT_MASQUERADE_IPV6=y ++CONFIG_IP6_NF_IPTABLES=m ++CONFIG_IP6_NF_MATCH_AH=m ++CONFIG_IP6_NF_MATCH_EUI64=m ++CONFIG_IP6_NF_MATCH_FRAG=m ++CONFIG_IP6_NF_MATCH_OPTS=m ++CONFIG_IP6_NF_MATCH_HL=m ++CONFIG_IP6_NF_MATCH_IPV6HEADER=m ++CONFIG_IP6_NF_MATCH_MH=m ++CONFIG_IP6_NF_MATCH_RPFILTER=m ++CONFIG_IP6_NF_MATCH_RT=m ++# CONFIG_IP6_NF_MATCH_SRH is not set ++CONFIG_IP6_NF_TARGET_HL=m ++CONFIG_IP6_NF_FILTER=m ++CONFIG_IP6_NF_TARGET_REJECT=m ++CONFIG_IP6_NF_TARGET_SYNPROXY=m ++CONFIG_IP6_NF_MANGLE=m ++CONFIG_IP6_NF_RAW=m ++CONFIG_IP6_NF_SECURITY=m ++CONFIG_IP6_NF_NAT=m ++CONFIG_IP6_NF_TARGET_MASQUERADE=m ++CONFIG_IP6_NF_TARGET_NPT=m ++CONFIG_NF_DEFRAG_IPV6=m ++ ++# ++# DECnet: Netfilter Configuration ++# ++CONFIG_DECNET_NF_GRABULATOR=m ++# CONFIG_NF_TABLES_BRIDGE is not set ++CONFIG_BRIDGE_NF_EBTABLES=m ++CONFIG_BRIDGE_EBT_BROUTE=m ++CONFIG_BRIDGE_EBT_T_FILTER=m ++CONFIG_BRIDGE_EBT_T_NAT=m ++CONFIG_BRIDGE_EBT_802_3=m ++CONFIG_BRIDGE_EBT_AMONG=m ++CONFIG_BRIDGE_EBT_ARP=m ++CONFIG_BRIDGE_EBT_IP=m ++CONFIG_BRIDGE_EBT_IP6=m ++CONFIG_BRIDGE_EBT_LIMIT=m ++CONFIG_BRIDGE_EBT_MARK=m ++CONFIG_BRIDGE_EBT_PKTTYPE=m ++CONFIG_BRIDGE_EBT_STP=m ++CONFIG_BRIDGE_EBT_VLAN=m ++CONFIG_BRIDGE_EBT_ARPREPLY=m ++CONFIG_BRIDGE_EBT_DNAT=m ++CONFIG_BRIDGE_EBT_MARK_T=m ++CONFIG_BRIDGE_EBT_REDIRECT=m ++CONFIG_BRIDGE_EBT_SNAT=m ++CONFIG_BRIDGE_EBT_LOG=m ++CONFIG_BRIDGE_EBT_NFLOG=m ++# CONFIG_BPFILTER is not set ++CONFIG_IP_DCCP=m ++CONFIG_INET_DCCP_DIAG=m ++ ++# ++# DCCP CCIDs Configuration ++# ++# CONFIG_IP_DCCP_CCID2_DEBUG is not set ++# CONFIG_IP_DCCP_CCID3 is not set ++ ++# ++# DCCP Kernel Hacking ++# ++# CONFIG_IP_DCCP_DEBUG is not set ++CONFIG_IP_SCTP=m ++# CONFIG_SCTP_DBG_OBJCNT is not set ++# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set ++CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y ++# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set ++CONFIG_SCTP_COOKIE_HMAC_MD5=y ++CONFIG_SCTP_COOKIE_HMAC_SHA1=y ++CONFIG_INET_SCTP_DIAG=m ++CONFIG_RDS=m ++CONFIG_RDS_RDMA=m ++CONFIG_RDS_TCP=m ++# CONFIG_RDS_DEBUG is not set ++CONFIG_TIPC=m ++CONFIG_TIPC_MEDIA_IB=y ++CONFIG_TIPC_MEDIA_UDP=y ++CONFIG_TIPC_DIAG=m ++CONFIG_ATM=m ++CONFIG_ATM_CLIP=m ++# CONFIG_ATM_CLIP_NO_ICMP is not set ++CONFIG_ATM_LANE=m ++CONFIG_ATM_MPOA=m ++CONFIG_ATM_BR2684=m ++# CONFIG_ATM_BR2684_IPFILTER is not set ++CONFIG_L2TP=m ++CONFIG_L2TP_DEBUGFS=m ++CONFIG_L2TP_V3=y ++CONFIG_L2TP_IP=m ++CONFIG_L2TP_ETH=m ++CONFIG_STP=m ++CONFIG_GARP=m ++CONFIG_MRP=m ++CONFIG_BRIDGE=m ++CONFIG_BRIDGE_IGMP_SNOOPING=y ++CONFIG_BRIDGE_VLAN_FILTERING=y ++CONFIG_HAVE_NET_DSA=y ++# CONFIG_NET_DSA is not set ++CONFIG_VLAN_8021Q=m ++CONFIG_VLAN_8021Q_GVRP=y ++CONFIG_VLAN_8021Q_MVRP=y ++CONFIG_DECNET=m ++# CONFIG_DECNET_ROUTER is not set ++CONFIG_LLC=m ++CONFIG_LLC2=m ++CONFIG_ATALK=m ++CONFIG_DEV_APPLETALK=m ++CONFIG_IPDDP=m ++CONFIG_IPDDP_ENCAP=y ++CONFIG_X25=m ++CONFIG_LAPB=m ++CONFIG_PHONET=m ++CONFIG_6LOWPAN=m ++# CONFIG_6LOWPAN_DEBUGFS is not set ++CONFIG_6LOWPAN_NHC=m ++CONFIG_6LOWPAN_NHC_DEST=m ++CONFIG_6LOWPAN_NHC_FRAGMENT=m ++CONFIG_6LOWPAN_NHC_HOP=m ++CONFIG_6LOWPAN_NHC_IPV6=m ++CONFIG_6LOWPAN_NHC_MOBILITY=m ++CONFIG_6LOWPAN_NHC_ROUTING=m ++CONFIG_6LOWPAN_NHC_UDP=m ++# CONFIG_6LOWPAN_GHC_EXT_HDR_HOP is not set ++# CONFIG_6LOWPAN_GHC_UDP is not set ++# CONFIG_6LOWPAN_GHC_ICMPV6 is not set ++# CONFIG_6LOWPAN_GHC_EXT_HDR_DEST is not set ++# CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG is not set ++# CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE is not set ++CONFIG_IEEE802154=m ++CONFIG_IEEE802154_NL802154_EXPERIMENTAL=y ++CONFIG_IEEE802154_SOCKET=m ++CONFIG_IEEE802154_6LOWPAN=m ++CONFIG_MAC802154=m ++CONFIG_NET_SCHED=y ++ ++# ++# Queueing/Scheduling ++# ++CONFIG_NET_SCH_CBQ=m ++CONFIG_NET_SCH_HTB=m ++CONFIG_NET_SCH_HFSC=m ++CONFIG_NET_SCH_ATM=m ++CONFIG_NET_SCH_PRIO=m ++CONFIG_NET_SCH_MULTIQ=m ++CONFIG_NET_SCH_RED=m ++CONFIG_NET_SCH_SFB=m ++CONFIG_NET_SCH_SFQ=m ++CONFIG_NET_SCH_TEQL=m ++CONFIG_NET_SCH_TBF=m ++# CONFIG_NET_SCH_CBS is not set ++# CONFIG_NET_SCH_ETF is not set ++# CONFIG_NET_SCH_TAPRIO is not set ++CONFIG_NET_SCH_GRED=m ++CONFIG_NET_SCH_DSMARK=m ++CONFIG_NET_SCH_NETEM=m ++CONFIG_NET_SCH_DRR=m ++CONFIG_NET_SCH_MQPRIO=m ++# CONFIG_NET_SCH_SKBPRIO is not set ++CONFIG_NET_SCH_CHOKE=m ++CONFIG_NET_SCH_QFQ=m ++CONFIG_NET_SCH_CODEL=m ++CONFIG_NET_SCH_FQ_CODEL=m ++# CONFIG_NET_SCH_CAKE is not set ++CONFIG_NET_SCH_FQ=m ++CONFIG_NET_SCH_HHF=m ++CONFIG_NET_SCH_PIE=m ++CONFIG_NET_SCH_INGRESS=m ++CONFIG_NET_SCH_PLUG=m ++# CONFIG_NET_SCH_DEFAULT is not set ++ ++# ++# Classification ++# ++CONFIG_NET_CLS=y ++CONFIG_NET_CLS_BASIC=m ++CONFIG_NET_CLS_TCINDEX=m ++CONFIG_NET_CLS_ROUTE4=m ++CONFIG_NET_CLS_FW=m ++CONFIG_NET_CLS_U32=m ++# CONFIG_CLS_U32_PERF is not set ++CONFIG_CLS_U32_MARK=y ++CONFIG_NET_CLS_RSVP=m ++CONFIG_NET_CLS_RSVP6=m ++CONFIG_NET_CLS_FLOW=m ++CONFIG_NET_CLS_CGROUP=m ++CONFIG_NET_CLS_BPF=m ++CONFIG_NET_CLS_FLOWER=m ++# CONFIG_NET_CLS_MATCHALL is not set ++CONFIG_NET_EMATCH=y ++CONFIG_NET_EMATCH_STACK=32 ++CONFIG_NET_EMATCH_CMP=m ++CONFIG_NET_EMATCH_NBYTE=m ++CONFIG_NET_EMATCH_U32=m ++CONFIG_NET_EMATCH_META=m ++CONFIG_NET_EMATCH_TEXT=m ++CONFIG_NET_EMATCH_CANID=m ++CONFIG_NET_EMATCH_IPSET=m ++# CONFIG_NET_EMATCH_IPT is not set ++CONFIG_NET_CLS_ACT=y ++CONFIG_NET_ACT_POLICE=m ++CONFIG_NET_ACT_GACT=m ++CONFIG_GACT_PROB=y ++CONFIG_NET_ACT_MIRRED=m ++# CONFIG_NET_ACT_SAMPLE is not set ++CONFIG_NET_ACT_IPT=m ++CONFIG_NET_ACT_NAT=m ++CONFIG_NET_ACT_PEDIT=m ++CONFIG_NET_ACT_SIMP=m ++CONFIG_NET_ACT_SKBEDIT=m ++CONFIG_NET_ACT_CSUM=m ++CONFIG_NET_ACT_VLAN=m ++CONFIG_NET_ACT_BPF=m ++CONFIG_NET_ACT_CONNMARK=m ++# CONFIG_NET_ACT_SKBMOD is not set ++# CONFIG_NET_ACT_IFE is not set ++# CONFIG_NET_ACT_TUNNEL_KEY is not set ++# CONFIG_NET_CLS_IND is not set ++CONFIG_NET_SCH_FIFO=y ++CONFIG_DCB=y ++CONFIG_DNS_RESOLVER=y ++CONFIG_BATMAN_ADV=m ++# CONFIG_BATMAN_ADV_BATMAN_V is not set ++CONFIG_BATMAN_ADV_BLA=y ++CONFIG_BATMAN_ADV_DAT=y ++CONFIG_BATMAN_ADV_NC=y ++CONFIG_BATMAN_ADV_MCAST=y ++CONFIG_BATMAN_ADV_DEBUGFS=y ++# CONFIG_BATMAN_ADV_DEBUG is not set ++# CONFIG_BATMAN_ADV_TRACING is not set ++CONFIG_OPENVSWITCH=m ++CONFIG_OPENVSWITCH_GRE=m ++CONFIG_OPENVSWITCH_VXLAN=m ++CONFIG_OPENVSWITCH_GENEVE=m ++CONFIG_VSOCKETS=m ++CONFIG_VSOCKETS_DIAG=m ++CONFIG_VMWARE_VMCI_VSOCKETS=m ++# CONFIG_VIRTIO_VSOCKETS is not set ++# CONFIG_HYPERV_VSOCKETS is not set ++CONFIG_NETLINK_DIAG=m ++CONFIG_MPLS=y ++CONFIG_NET_MPLS_GSO=m ++CONFIG_MPLS_ROUTING=m ++CONFIG_MPLS_IPTUNNEL=m ++CONFIG_NET_NSH=m ++CONFIG_HSR=m ++# CONFIG_NET_SWITCHDEV is not set ++CONFIG_NET_L3_MASTER_DEV=y ++# CONFIG_NET_NCSI is not set ++CONFIG_RPS=y ++CONFIG_RFS_ACCEL=y ++CONFIG_XPS=y ++CONFIG_CGROUP_NET_PRIO=y ++CONFIG_CGROUP_NET_CLASSID=y ++CONFIG_NET_RX_BUSY_POLL=y ++CONFIG_BQL=y ++CONFIG_BPF_JIT=y ++CONFIG_NET_FLOW_LIMIT=y ++ ++# ++# Network testing ++# ++CONFIG_NET_PKTGEN=m ++# CONFIG_NET_DROP_MONITOR is not set ++CONFIG_HAMRADIO=y ++ ++# ++# Packet Radio protocols ++# ++CONFIG_AX25=m ++CONFIG_AX25_DAMA_SLAVE=y ++CONFIG_NETROM=m ++CONFIG_ROSE=m ++ ++# ++# AX.25 network device drivers ++# ++CONFIG_MKISS=m ++CONFIG_6PACK=m ++CONFIG_BPQETHER=m ++CONFIG_BAYCOM_SER_FDX=m ++CONFIG_BAYCOM_SER_HDX=m ++CONFIG_BAYCOM_PAR=m ++CONFIG_YAM=m ++CONFIG_CAN=m ++CONFIG_CAN_RAW=m ++CONFIG_CAN_BCM=m ++CONFIG_CAN_GW=m ++ ++# ++# CAN Device Drivers ++# ++CONFIG_CAN_VCAN=m ++# CONFIG_CAN_VXCAN is not set ++CONFIG_CAN_SLCAN=m ++CONFIG_CAN_DEV=m ++CONFIG_CAN_CALC_BITTIMING=y ++CONFIG_CAN_JANZ_ICAN3=m ++CONFIG_CAN_C_CAN=m ++CONFIG_CAN_C_CAN_PLATFORM=m ++CONFIG_CAN_C_CAN_PCI=m ++CONFIG_CAN_CC770=m ++CONFIG_CAN_CC770_ISA=m ++CONFIG_CAN_CC770_PLATFORM=m ++# CONFIG_CAN_IFI_CANFD is not set ++CONFIG_CAN_M_CAN=m ++# CONFIG_CAN_PEAK_PCIEFD is not set ++CONFIG_CAN_SJA1000=m ++CONFIG_CAN_SJA1000_ISA=m ++CONFIG_CAN_SJA1000_PLATFORM=m ++CONFIG_CAN_EMS_PCMCIA=m ++CONFIG_CAN_EMS_PCI=m ++CONFIG_CAN_PEAK_PCMCIA=m ++CONFIG_CAN_PEAK_PCI=m ++CONFIG_CAN_PEAK_PCIEC=y ++CONFIG_CAN_KVASER_PCI=m ++CONFIG_CAN_PLX_PCI=m ++CONFIG_CAN_SOFTING=m ++CONFIG_CAN_SOFTING_CS=m ++ ++# ++# CAN SPI interfaces ++# ++# CONFIG_CAN_HI311X is not set ++CONFIG_CAN_MCP251X=m ++ ++# ++# CAN USB interfaces ++# ++CONFIG_CAN_8DEV_USB=m ++CONFIG_CAN_EMS_USB=m ++CONFIG_CAN_ESD_USB2=m ++CONFIG_CAN_GS_USB=m ++CONFIG_CAN_KVASER_USB=m ++# CONFIG_CAN_MCBA_USB is not set ++CONFIG_CAN_PEAK_USB=m ++# CONFIG_CAN_UCAN is not set ++# CONFIG_CAN_DEBUG_DEVICES is not set ++CONFIG_BT=m ++CONFIG_BT_BREDR=y ++CONFIG_BT_RFCOMM=m ++CONFIG_BT_RFCOMM_TTY=y ++CONFIG_BT_BNEP=m ++CONFIG_BT_BNEP_MC_FILTER=y ++CONFIG_BT_BNEP_PROTO_FILTER=y ++CONFIG_BT_CMTP=m ++CONFIG_BT_HIDP=m ++CONFIG_BT_HS=y ++CONFIG_BT_LE=y ++CONFIG_BT_6LOWPAN=m ++# CONFIG_BT_LEDS is not set ++# CONFIG_BT_SELFTEST is not set ++CONFIG_BT_DEBUGFS=y ++ ++# ++# Bluetooth device drivers ++# ++CONFIG_BT_INTEL=m ++CONFIG_BT_BCM=m ++CONFIG_BT_RTL=m ++CONFIG_BT_HCIBTUSB=m ++# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set ++CONFIG_BT_HCIBTUSB_BCM=y ++CONFIG_BT_HCIBTUSB_RTL=y ++CONFIG_BT_HCIBTSDIO=m ++CONFIG_BT_HCIUART=m ++CONFIG_BT_HCIUART_H4=y ++CONFIG_BT_HCIUART_BCSP=y ++CONFIG_BT_HCIUART_ATH3K=y ++CONFIG_BT_HCIUART_INTEL=y ++# CONFIG_BT_HCIUART_AG6XX is not set ++# CONFIG_BT_HCIUART_MRVL is not set ++CONFIG_BT_HCIBCM203X=m ++CONFIG_BT_HCIBPA10X=m ++CONFIG_BT_HCIBFUSB=m ++CONFIG_BT_HCIDTL1=m ++CONFIG_BT_HCIBT3C=m ++CONFIG_BT_HCIBLUECARD=m ++CONFIG_BT_HCIVHCI=m ++CONFIG_BT_MRVL=m ++CONFIG_BT_MRVL_SDIO=m ++CONFIG_BT_ATH3K=m ++CONFIG_BT_WILINK=m ++CONFIG_BT_HCIRSI=m ++CONFIG_AF_RXRPC=m ++# CONFIG_AF_RXRPC_IPV6 is not set ++# CONFIG_AF_RXRPC_INJECT_LOSS is not set ++# CONFIG_AF_RXRPC_DEBUG is not set ++# CONFIG_RXKAD is not set ++# CONFIG_AF_KCM is not set ++CONFIG_FIB_RULES=y ++CONFIG_WIRELESS=y ++CONFIG_WIRELESS_EXT=y ++CONFIG_WEXT_CORE=y ++CONFIG_WEXT_PROC=y ++CONFIG_WEXT_SPY=y ++CONFIG_WEXT_PRIV=y ++CONFIG_CFG80211=m ++# CONFIG_NL80211_TESTMODE is not set ++# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set ++# CONFIG_CFG80211_CERTIFICATION_ONUS is not set ++CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y ++CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y ++CONFIG_CFG80211_DEFAULT_PS=y ++CONFIG_CFG80211_DEBUGFS=y ++CONFIG_CFG80211_CRDA_SUPPORT=y ++CONFIG_CFG80211_WEXT=y ++CONFIG_CFG80211_WEXT_EXPORT=y ++CONFIG_LIB80211=m ++CONFIG_LIB80211_CRYPT_WEP=m ++CONFIG_LIB80211_CRYPT_CCMP=m ++CONFIG_LIB80211_CRYPT_TKIP=m ++# CONFIG_LIB80211_DEBUG is not set ++CONFIG_MAC80211=m ++CONFIG_MAC80211_HAS_RC=y ++CONFIG_MAC80211_RC_MINSTREL=y ++CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y ++CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" ++CONFIG_MAC80211_MESH=y ++CONFIG_MAC80211_LEDS=y ++CONFIG_MAC80211_DEBUGFS=y ++CONFIG_MAC80211_MESSAGE_TRACING=y ++# CONFIG_MAC80211_DEBUG_MENU is not set ++CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 ++CONFIG_WIMAX=m ++CONFIG_WIMAX_DEBUG_LEVEL=8 ++CONFIG_RFKILL=y ++CONFIG_RFKILL_LEDS=y ++CONFIG_RFKILL_INPUT=y ++CONFIG_RFKILL_GPIO=m ++CONFIG_NET_9P=m ++CONFIG_NET_9P_VIRTIO=m ++# CONFIG_NET_9P_XEN is not set ++CONFIG_NET_9P_RDMA=m ++# CONFIG_NET_9P_DEBUG is not set ++CONFIG_CAIF=m ++# CONFIG_CAIF_DEBUG is not set ++CONFIG_CAIF_NETDEV=m ++CONFIG_CAIF_USB=m ++CONFIG_CEPH_LIB=m ++# CONFIG_CEPH_LIB_PRETTYDEBUG is not set ++CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y ++CONFIG_NFC=m ++CONFIG_NFC_DIGITAL=m ++CONFIG_NFC_NCI=m ++CONFIG_NFC_NCI_SPI=m ++CONFIG_NFC_NCI_UART=m ++CONFIG_NFC_HCI=m ++CONFIG_NFC_SHDLC=y ++ ++# ++# Near Field Communication (NFC) devices ++# ++CONFIG_NFC_TRF7970A=m ++CONFIG_NFC_MEI_PHY=m ++CONFIG_NFC_SIM=m ++CONFIG_NFC_PORT100=m ++CONFIG_NFC_FDP=m ++CONFIG_NFC_FDP_I2C=m ++CONFIG_NFC_PN544=m ++CONFIG_NFC_PN544_I2C=m ++CONFIG_NFC_PN544_MEI=m ++# CONFIG_NFC_PN533_USB is not set ++# CONFIG_NFC_PN533_I2C is not set ++CONFIG_NFC_MICROREAD=m ++CONFIG_NFC_MICROREAD_I2C=m ++CONFIG_NFC_MICROREAD_MEI=m ++CONFIG_NFC_MRVL=m ++CONFIG_NFC_MRVL_USB=m ++CONFIG_NFC_MRVL_UART=m ++CONFIG_NFC_MRVL_I2C=m ++CONFIG_NFC_MRVL_SPI=m ++CONFIG_NFC_ST21NFCA=m ++CONFIG_NFC_ST21NFCA_I2C=m ++CONFIG_NFC_ST_NCI=m ++CONFIG_NFC_ST_NCI_I2C=m ++CONFIG_NFC_ST_NCI_SPI=m ++CONFIG_NFC_NXP_NCI=m ++CONFIG_NFC_NXP_NCI_I2C=m ++CONFIG_NFC_S3FWRN5=m ++CONFIG_NFC_S3FWRN5_I2C=m ++# CONFIG_NFC_ST95HF is not set ++# CONFIG_PSAMPLE is not set ++# CONFIG_NET_IFE is not set ++CONFIG_LWTUNNEL=y ++CONFIG_LWTUNNEL_BPF=y ++CONFIG_DST_CACHE=y ++CONFIG_GRO_CELLS=y ++# CONFIG_NET_DEVLINK is not set ++CONFIG_MAY_USE_DEVLINK=y ++CONFIG_PAGE_POOL=y ++CONFIG_FAILOVER=y ++CONFIG_HAVE_EBPF_JIT=y ++ ++# ++# Device Drivers ++# ++CONFIG_HAVE_EISA=y ++# CONFIG_EISA is not set ++CONFIG_HAVE_PCI=y ++CONFIG_PCI=y ++CONFIG_PCI_DOMAINS=y ++CONFIG_PCIEPORTBUS=y ++CONFIG_HOTPLUG_PCI_PCIE=y ++CONFIG_PCIEAER=y ++# CONFIG_PCIEAER_INJECT is not set ++# CONFIG_PCIE_ECRC is not set ++CONFIG_PCIEASPM=y ++CONFIG_PCIEASPM_DEBUG=y ++CONFIG_PCIEASPM_DEFAULT=y ++# CONFIG_PCIEASPM_POWERSAVE is not set ++# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set ++# CONFIG_PCIEASPM_PERFORMANCE is not set ++CONFIG_PCIE_PME=y ++# CONFIG_PCIE_DPC is not set ++# CONFIG_PCIE_PTM is not set ++CONFIG_PCI_MSI=y ++CONFIG_PCI_MSI_IRQ_DOMAIN=y ++CONFIG_PCI_QUIRKS=y ++# CONFIG_PCI_DEBUG is not set ++CONFIG_PCI_REALLOC_ENABLE_AUTO=y ++CONFIG_PCI_STUB=m ++# CONFIG_PCI_PF_STUB is not set ++CONFIG_XEN_PCIDEV_FRONTEND=m ++CONFIG_PCI_ATS=y ++CONFIG_PCI_LOCKLESS_CONFIG=y ++CONFIG_PCI_IOV=y ++CONFIG_PCI_PRI=y ++CONFIG_PCI_PASID=y ++# CONFIG_PCI_P2PDMA is not set ++CONFIG_PCI_LABEL=y ++# CONFIG_PCI_HYPERV is not set ++CONFIG_HOTPLUG_PCI=y ++CONFIG_HOTPLUG_PCI_ACPI=y ++CONFIG_HOTPLUG_PCI_ACPI_IBM=m ++CONFIG_HOTPLUG_PCI_CPCI=y ++CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m ++CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m ++# CONFIG_HOTPLUG_PCI_SHPC is not set ++ ++# ++# PCI controller drivers ++# ++ ++# ++# Cadence PCIe controllers support ++# ++# CONFIG_VMD is not set ++ ++# ++# DesignWare PCI Core Support ++# ++# CONFIG_PCIE_DW_PLAT_HOST is not set ++# CONFIG_PCI_MESON is not set ++ ++# ++# PCI Endpoint ++# ++# CONFIG_PCI_ENDPOINT is not set ++ ++# ++# PCI switch controller drivers ++# ++# CONFIG_PCI_SW_SWITCHTEC is not set ++CONFIG_PCCARD=m ++CONFIG_PCMCIA=m ++CONFIG_PCMCIA_LOAD_CIS=y ++CONFIG_CARDBUS=y ++ ++# ++# PC-card bridges ++# ++CONFIG_YENTA=m ++CONFIG_YENTA_O2=y ++CONFIG_YENTA_RICOH=y ++CONFIG_YENTA_TI=y ++CONFIG_YENTA_ENE_TUNE=y ++CONFIG_YENTA_TOSHIBA=y ++CONFIG_PD6729=m ++CONFIG_I82092=m ++CONFIG_PCCARD_NONSTATIC=y ++CONFIG_RAPIDIO=y ++CONFIG_RAPIDIO_TSI721=m ++CONFIG_RAPIDIO_DISC_TIMEOUT=30 ++# CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS is not set ++CONFIG_RAPIDIO_DMA_ENGINE=y ++# CONFIG_RAPIDIO_DEBUG is not set ++CONFIG_RAPIDIO_ENUM_BASIC=m ++# CONFIG_RAPIDIO_CHMAN is not set ++# CONFIG_RAPIDIO_MPORT_CDEV is not set ++ ++# ++# RapidIO Switch drivers ++# ++CONFIG_RAPIDIO_TSI57X=m ++CONFIG_RAPIDIO_CPS_XX=m ++CONFIG_RAPIDIO_TSI568=m ++CONFIG_RAPIDIO_CPS_GEN2=m ++# CONFIG_RAPIDIO_RXS_GEN3 is not set ++ ++# ++# Generic Driver Options ++# ++CONFIG_UEVENT_HELPER=y ++CONFIG_UEVENT_HELPER_PATH="" ++CONFIG_DEVTMPFS=y ++CONFIG_DEVTMPFS_MOUNT=y ++# CONFIG_STANDALONE is not set ++CONFIG_PREVENT_FIRMWARE_BUILD=y ++ ++# ++# Firmware loader ++# ++CONFIG_FW_LOADER=y ++CONFIG_EXTRA_FIRMWARE="" ++CONFIG_FW_LOADER_USER_HELPER=y ++# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set ++CONFIG_WANT_DEV_COREDUMP=y ++CONFIG_ALLOW_DEV_COREDUMP=y ++CONFIG_DEV_COREDUMP=y ++# CONFIG_DEBUG_DRIVER is not set ++# CONFIG_DEBUG_DEVRES is not set ++# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set ++# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set ++CONFIG_SYS_HYPERVISOR=y ++CONFIG_GENERIC_CPU_AUTOPROBE=y ++CONFIG_GENERIC_CPU_VULNERABILITIES=y ++CONFIG_REGMAP=y ++CONFIG_REGMAP_I2C=y ++CONFIG_REGMAP_SPI=y ++CONFIG_REGMAP_SPMI=m ++CONFIG_REGMAP_MMIO=y ++CONFIG_REGMAP_IRQ=y ++CONFIG_DMA_SHARED_BUFFER=y ++# CONFIG_DMA_FENCE_TRACE is not set ++# CONFIG_DMA_CMA is not set ++ ++# ++# Bus devices ++# ++CONFIG_CONNECTOR=y ++CONFIG_PROC_EVENTS=y ++# CONFIG_GNSS is not set ++CONFIG_MTD=m ++# CONFIG_MTD_TESTS is not set ++CONFIG_MTD_CMDLINE_PARTS=m ++CONFIG_MTD_AR7_PARTS=m ++ ++# ++# Partition parsers ++# ++CONFIG_MTD_REDBOOT_PARTS=m ++CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 ++# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set ++# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set ++ ++# ++# User Modules And Translation Layers ++# ++CONFIG_MTD_BLKDEVS=m ++CONFIG_MTD_BLOCK=m ++CONFIG_MTD_BLOCK_RO=m ++CONFIG_FTL=m ++CONFIG_NFTL=m ++CONFIG_NFTL_RW=y ++CONFIG_INFTL=m ++CONFIG_RFD_FTL=m ++CONFIG_SSFDC=m ++CONFIG_SM_FTL=m ++CONFIG_MTD_OOPS=m ++CONFIG_MTD_SWAP=m ++# CONFIG_MTD_PARTITIONED_MASTER is not set ++ ++# ++# RAM/ROM/Flash chip drivers ++# ++CONFIG_MTD_CFI=m ++CONFIG_MTD_JEDECPROBE=m ++CONFIG_MTD_GEN_PROBE=m ++# CONFIG_MTD_CFI_ADV_OPTIONS is not set ++CONFIG_MTD_MAP_BANK_WIDTH_1=y ++CONFIG_MTD_MAP_BANK_WIDTH_2=y ++CONFIG_MTD_MAP_BANK_WIDTH_4=y ++CONFIG_MTD_CFI_I1=y ++CONFIG_MTD_CFI_I2=y ++CONFIG_MTD_CFI_INTELEXT=m ++CONFIG_MTD_CFI_AMDSTD=m ++CONFIG_MTD_CFI_STAA=m ++CONFIG_MTD_CFI_UTIL=m ++CONFIG_MTD_RAM=m ++CONFIG_MTD_ROM=m ++CONFIG_MTD_ABSENT=m ++ ++# ++# Mapping drivers for chip access ++# ++CONFIG_MTD_COMPLEX_MAPPINGS=y ++CONFIG_MTD_PHYSMAP=m ++# CONFIG_MTD_PHYSMAP_COMPAT is not set ++# CONFIG_MTD_PHYSMAP_GPIO_ADDR is not set ++CONFIG_MTD_SBC_GXX=m ++CONFIG_MTD_AMD76XROM=m ++CONFIG_MTD_ICHXROM=m ++CONFIG_MTD_ESB2ROM=m ++CONFIG_MTD_CK804XROM=m ++CONFIG_MTD_SCB2_FLASH=m ++CONFIG_MTD_NETtel=m ++CONFIG_MTD_L440GX=m ++CONFIG_MTD_PCI=m ++CONFIG_MTD_PCMCIA=m ++# CONFIG_MTD_PCMCIA_ANONYMOUS is not set ++CONFIG_MTD_INTEL_VR_NOR=m ++CONFIG_MTD_PLATRAM=m ++ ++# ++# Self-contained MTD device drivers ++# ++CONFIG_MTD_PMC551=m ++# CONFIG_MTD_PMC551_BUGFIX is not set ++# CONFIG_MTD_PMC551_DEBUG is not set ++CONFIG_MTD_DATAFLASH=m ++# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set ++CONFIG_MTD_DATAFLASH_OTP=y ++CONFIG_MTD_M25P80=m ++# CONFIG_MTD_MCHP23K256 is not set ++CONFIG_MTD_SST25L=m ++CONFIG_MTD_SLRAM=m ++CONFIG_MTD_PHRAM=m ++CONFIG_MTD_MTDRAM=m ++CONFIG_MTDRAM_TOTAL_SIZE=4096 ++CONFIG_MTDRAM_ERASE_SIZE=128 ++CONFIG_MTD_BLOCK2MTD=m ++ ++# ++# Disk-On-Chip Device Drivers ++# ++CONFIG_MTD_DOCG3=m ++CONFIG_BCH_CONST_M=14 ++CONFIG_BCH_CONST_T=4 ++CONFIG_MTD_ONENAND=m ++CONFIG_MTD_ONENAND_VERIFY_WRITE=y ++CONFIG_MTD_ONENAND_GENERIC=m ++# CONFIG_MTD_ONENAND_OTP is not set ++CONFIG_MTD_ONENAND_2X_PROGRAM=y ++CONFIG_MTD_NAND_ECC=m ++# CONFIG_MTD_NAND_ECC_SMC is not set ++CONFIG_MTD_NAND=m ++CONFIG_MTD_NAND_BCH=m ++CONFIG_MTD_NAND_ECC_BCH=y ++CONFIG_MTD_SM_COMMON=m ++CONFIG_MTD_NAND_DENALI=m ++CONFIG_MTD_NAND_DENALI_PCI=m ++CONFIG_MTD_NAND_GPIO=m ++CONFIG_MTD_NAND_RICOH=m ++CONFIG_MTD_NAND_DISKONCHIP=m ++# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set ++CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0 ++# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set ++CONFIG_MTD_NAND_CAFE=m ++CONFIG_MTD_NAND_NANDSIM=m ++CONFIG_MTD_NAND_PLATFORM=m ++# CONFIG_MTD_SPI_NAND is not set ++ ++# ++# LPDDR & LPDDR2 PCM memory drivers ++# ++CONFIG_MTD_LPDDR=m ++CONFIG_MTD_QINFO_PROBE=m ++CONFIG_MTD_SPI_NOR=m ++# CONFIG_MTD_MT81xx_NOR is not set ++CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y ++# CONFIG_SPI_INTEL_SPI_PCI is not set ++# CONFIG_SPI_INTEL_SPI_PLATFORM is not set ++CONFIG_MTD_UBI=m ++CONFIG_MTD_UBI_WL_THRESHOLD=4096 ++CONFIG_MTD_UBI_BEB_LIMIT=20 ++CONFIG_MTD_UBI_FASTMAP=y ++CONFIG_MTD_UBI_GLUEBI=m ++CONFIG_MTD_UBI_BLOCK=y ++# CONFIG_OF is not set ++CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y ++CONFIG_PARPORT=m ++CONFIG_PARPORT_PC=m ++CONFIG_PARPORT_SERIAL=m ++CONFIG_PARPORT_PC_FIFO=y ++# CONFIG_PARPORT_PC_SUPERIO is not set ++CONFIG_PARPORT_PC_PCMCIA=m ++CONFIG_PARPORT_AX88796=m ++CONFIG_PARPORT_1284=y ++CONFIG_PARPORT_NOT_PC=y ++CONFIG_PNP=y ++# CONFIG_PNP_DEBUG_MESSAGES is not set ++ ++# ++# Protocols ++# ++CONFIG_PNPACPI=y ++CONFIG_BLK_DEV=y ++CONFIG_BLK_DEV_NULL_BLK=m ++CONFIG_BLK_DEV_FD=m ++CONFIG_CDROM=y ++CONFIG_PARIDE=m ++ ++# ++# Parallel IDE high-level drivers ++# ++CONFIG_PARIDE_PD=m ++CONFIG_PARIDE_PCD=m ++CONFIG_PARIDE_PF=m ++CONFIG_PARIDE_PT=m ++CONFIG_PARIDE_PG=m ++ ++# ++# Parallel IDE protocol modules ++# ++CONFIG_PARIDE_ATEN=m ++CONFIG_PARIDE_BPCK=m ++CONFIG_PARIDE_COMM=m ++CONFIG_PARIDE_DSTR=m ++CONFIG_PARIDE_FIT2=m ++CONFIG_PARIDE_FIT3=m ++CONFIG_PARIDE_EPAT=m ++CONFIG_PARIDE_EPATC8=y ++CONFIG_PARIDE_EPIA=m ++CONFIG_PARIDE_FRIQ=m ++CONFIG_PARIDE_FRPW=m ++CONFIG_PARIDE_KBIC=m ++CONFIG_PARIDE_KTTI=m ++CONFIG_PARIDE_ON20=m ++CONFIG_PARIDE_ON26=m ++CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m ++CONFIG_ZRAM=m ++# CONFIG_ZRAM_WRITEBACK is not set ++# CONFIG_ZRAM_MEMORY_TRACKING is not set ++CONFIG_BLK_DEV_UMEM=m ++CONFIG_BLK_DEV_LOOP=y ++CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 ++CONFIG_BLK_DEV_CRYPTOLOOP=m ++CONFIG_BLK_DEV_DRBD=m ++# CONFIG_DRBD_FAULT_INJECTION is not set ++CONFIG_BLK_DEV_NBD=m ++CONFIG_BLK_DEV_SKD=m ++CONFIG_BLK_DEV_SX8=m ++CONFIG_BLK_DEV_RAM=y ++CONFIG_BLK_DEV_RAM_COUNT=16 ++CONFIG_BLK_DEV_RAM_SIZE=65536 ++CONFIG_CDROM_PKTCDVD=m ++CONFIG_CDROM_PKTCDVD_BUFFERS=8 ++# CONFIG_CDROM_PKTCDVD_WCACHE is not set ++CONFIG_ATA_OVER_ETH=m ++CONFIG_XEN_BLKDEV_FRONTEND=y ++CONFIG_XEN_BLKDEV_BACKEND=m ++CONFIG_VIRTIO_BLK=y ++# CONFIG_VIRTIO_BLK_SCSI is not set ++CONFIG_BLK_DEV_RBD=m ++CONFIG_BLK_DEV_RSXX=m ++ ++# ++# NVME Support ++# ++CONFIG_NVME_CORE=y ++CONFIG_BLK_DEV_NVME=y ++# CONFIG_NVME_MULTIPATH is not set ++# CONFIG_NVME_RDMA is not set ++# CONFIG_NVME_FC is not set ++# CONFIG_NVME_TCP is not set ++# CONFIG_NVME_TARGET is not set ++ ++# ++# Misc devices ++# ++CONFIG_SENSORS_LIS3LV02D=m ++CONFIG_AD525X_DPOT=m ++CONFIG_AD525X_DPOT_I2C=m ++CONFIG_AD525X_DPOT_SPI=m ++CONFIG_DUMMY_IRQ=m ++CONFIG_IBM_ASM=m ++CONFIG_PHANTOM=m ++CONFIG_SGI_IOC4=m ++CONFIG_TIFM_CORE=m ++CONFIG_TIFM_7XX1=m ++CONFIG_ICS932S401=m ++CONFIG_ENCLOSURE_SERVICES=m ++CONFIG_HP_ILO=m ++CONFIG_APDS9802ALS=m ++CONFIG_ISL29003=m ++CONFIG_ISL29020=m ++CONFIG_SENSORS_TSL2550=m ++CONFIG_SENSORS_BH1770=m ++CONFIG_SENSORS_APDS990X=m ++CONFIG_HMC6352=m ++CONFIG_DS1682=m ++CONFIG_VMWARE_BALLOON=m ++CONFIG_USB_SWITCH_FSA9480=m ++CONFIG_LATTICE_ECP3_CONFIG=m ++CONFIG_SRAM=y ++# CONFIG_PCI_ENDPOINT_TEST is not set ++CONFIG_PVPANIC=m ++CONFIG_C2PORT=m ++CONFIG_C2PORT_DURAMAR_2150=m ++ ++# ++# EEPROM support ++# ++CONFIG_EEPROM_AT24=m ++CONFIG_EEPROM_AT25=m ++CONFIG_EEPROM_LEGACY=m ++CONFIG_EEPROM_MAX6875=m ++CONFIG_EEPROM_93CX6=m ++CONFIG_EEPROM_93XX46=m ++# CONFIG_EEPROM_IDT_89HPESX is not set ++# CONFIG_EEPROM_EE1004 is not set ++CONFIG_CB710_CORE=m ++# CONFIG_CB710_DEBUG is not set ++CONFIG_CB710_DEBUG_ASSUMPTIONS=y ++ ++# ++# Texas Instruments shared transport line discipline ++# ++CONFIG_TI_ST=m ++CONFIG_SENSORS_LIS3_I2C=m ++CONFIG_ALTERA_STAPL=m ++CONFIG_INTEL_MEI=m ++CONFIG_INTEL_MEI_ME=m ++CONFIG_INTEL_MEI_TXE=m ++CONFIG_VMWARE_VMCI=m ++ ++# ++# Intel MIC & related support ++# ++ ++# ++# Intel MIC Bus Driver ++# ++CONFIG_INTEL_MIC_BUS=m ++ ++# ++# SCIF Bus Driver ++# ++CONFIG_SCIF_BUS=m ++ ++# ++# VOP Bus Driver ++# ++# CONFIG_VOP_BUS is not set ++ ++# ++# Intel MIC Host Driver ++# ++ ++# ++# Intel MIC Card Driver ++# ++ ++# ++# SCIF Driver ++# ++CONFIG_SCIF=m ++ ++# ++# Intel MIC Coprocessor State Management (COSM) Drivers ++# ++CONFIG_MIC_COSM=m ++ ++# ++# VOP Driver ++# ++CONFIG_VHOST_RING=m ++CONFIG_GENWQE=m ++CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 ++CONFIG_ECHO=m ++# CONFIG_MISC_ALCOR_PCI is not set ++# CONFIG_MISC_RTSX_PCI is not set ++# CONFIG_MISC_RTSX_USB is not set ++CONFIG_HAVE_IDE=y ++# CONFIG_IDE is not set ++ ++# ++# SCSI device support ++# ++CONFIG_SCSI_MOD=y ++CONFIG_RAID_ATTRS=m ++CONFIG_SCSI=y ++CONFIG_SCSI_DMA=y ++CONFIG_SCSI_NETLINK=y ++CONFIG_SCSI_PROC_FS=y ++ ++# ++# SCSI support type (disk, tape, CD-ROM) ++# ++CONFIG_BLK_DEV_SD=y ++CONFIG_CHR_DEV_ST=m ++CONFIG_CHR_DEV_OSST=m ++CONFIG_BLK_DEV_SR=y ++# CONFIG_BLK_DEV_SR_VENDOR is not set ++CONFIG_CHR_DEV_SG=y ++CONFIG_CHR_DEV_SCH=m ++CONFIG_SCSI_ENCLOSURE=m ++CONFIG_SCSI_CONSTANTS=y ++CONFIG_SCSI_LOGGING=y ++CONFIG_SCSI_SCAN_ASYNC=y ++ ++# ++# SCSI Transports ++# ++CONFIG_SCSI_SPI_ATTRS=m ++CONFIG_SCSI_FC_ATTRS=m ++CONFIG_SCSI_ISCSI_ATTRS=m ++CONFIG_SCSI_SAS_ATTRS=m ++CONFIG_SCSI_SAS_LIBSAS=m ++CONFIG_SCSI_SAS_ATA=y ++CONFIG_SCSI_SAS_HOST_SMP=y ++CONFIG_SCSI_SRP_ATTRS=m ++CONFIG_SCSI_LOWLEVEL=y ++CONFIG_ISCSI_TCP=m ++CONFIG_ISCSI_BOOT_SYSFS=m ++CONFIG_SCSI_CXGB3_ISCSI=m ++CONFIG_SCSI_CXGB4_ISCSI=m ++CONFIG_SCSI_BNX2_ISCSI=m ++CONFIG_SCSI_BNX2X_FCOE=m ++CONFIG_BE2ISCSI=m ++CONFIG_BLK_DEV_3W_XXXX_RAID=m ++CONFIG_SCSI_HPSA=m ++CONFIG_SCSI_3W_9XXX=m ++CONFIG_SCSI_3W_SAS=m ++CONFIG_SCSI_ACARD=m ++CONFIG_SCSI_AACRAID=m ++CONFIG_SCSI_AIC7XXX=m ++CONFIG_AIC7XXX_CMDS_PER_DEVICE=8 ++CONFIG_AIC7XXX_RESET_DELAY_MS=5000 ++# CONFIG_AIC7XXX_DEBUG_ENABLE is not set ++CONFIG_AIC7XXX_DEBUG_MASK=0 ++CONFIG_AIC7XXX_REG_PRETTY_PRINT=y ++CONFIG_SCSI_AIC79XX=m ++CONFIG_AIC79XX_CMDS_PER_DEVICE=32 ++CONFIG_AIC79XX_RESET_DELAY_MS=5000 ++# CONFIG_AIC79XX_DEBUG_ENABLE is not set ++CONFIG_AIC79XX_DEBUG_MASK=0 ++CONFIG_AIC79XX_REG_PRETTY_PRINT=y ++CONFIG_SCSI_AIC94XX=m ++# CONFIG_AIC94XX_DEBUG is not set ++CONFIG_SCSI_MVSAS=m ++# CONFIG_SCSI_MVSAS_DEBUG is not set ++# CONFIG_SCSI_MVSAS_TASKLET is not set ++CONFIG_SCSI_MVUMI=m ++CONFIG_SCSI_DPT_I2O=m ++CONFIG_SCSI_ADVANSYS=m ++CONFIG_SCSI_ARCMSR=m ++CONFIG_SCSI_ESAS2R=m ++CONFIG_MEGARAID_NEWGEN=y ++CONFIG_MEGARAID_MM=m ++CONFIG_MEGARAID_MAILBOX=m ++CONFIG_MEGARAID_LEGACY=m ++CONFIG_MEGARAID_SAS=m ++CONFIG_SCSI_MPT3SAS=m ++CONFIG_SCSI_MPT2SAS_MAX_SGE=128 ++CONFIG_SCSI_MPT3SAS_MAX_SGE=128 ++CONFIG_SCSI_MPT2SAS=m ++# CONFIG_SCSI_SMARTPQI is not set ++CONFIG_SCSI_UFSHCD=m ++CONFIG_SCSI_UFSHCD_PCI=m ++# CONFIG_SCSI_UFS_DWC_TC_PCI is not set ++CONFIG_SCSI_UFSHCD_PLATFORM=m ++# CONFIG_SCSI_UFS_CDNS_PLATFORM is not set ++# CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set ++# CONFIG_SCSI_UFS_BSG is not set ++CONFIG_SCSI_HPTIOP=m ++CONFIG_SCSI_BUSLOGIC=m ++CONFIG_SCSI_FLASHPOINT=y ++# CONFIG_SCSI_MYRB is not set ++# CONFIG_SCSI_MYRS is not set ++CONFIG_VMWARE_PVSCSI=m ++CONFIG_XEN_SCSI_FRONTEND=m ++CONFIG_HYPERV_STORAGE=m ++CONFIG_LIBFC=m ++CONFIG_LIBFCOE=m ++CONFIG_FCOE=m ++CONFIG_FCOE_FNIC=m ++CONFIG_SCSI_SNIC=m ++# CONFIG_SCSI_SNIC_DEBUG_FS is not set ++CONFIG_SCSI_DMX3191D=m ++CONFIG_SCSI_GDTH=m ++CONFIG_SCSI_ISCI=m ++CONFIG_SCSI_IPS=m ++CONFIG_SCSI_INITIO=m ++CONFIG_SCSI_INIA100=m ++CONFIG_SCSI_PPA=m ++CONFIG_SCSI_IMM=m ++# CONFIG_SCSI_IZIP_EPP16 is not set ++# CONFIG_SCSI_IZIP_SLOW_CTR is not set ++CONFIG_SCSI_STEX=m ++CONFIG_SCSI_SYM53C8XX_2=m ++CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 ++CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 ++CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 ++CONFIG_SCSI_SYM53C8XX_MMIO=y ++CONFIG_SCSI_IPR=m ++CONFIG_SCSI_IPR_TRACE=y ++CONFIG_SCSI_IPR_DUMP=y ++CONFIG_SCSI_QLOGIC_1280=m ++CONFIG_SCSI_QLA_FC=m ++CONFIG_TCM_QLA2XXX=m ++# CONFIG_TCM_QLA2XXX_DEBUG is not set ++CONFIG_SCSI_QLA_ISCSI=m ++# CONFIG_QEDI is not set ++# CONFIG_QEDF is not set ++CONFIG_SCSI_LPFC=m ++# CONFIG_SCSI_LPFC_DEBUG_FS is not set ++CONFIG_SCSI_DC395x=m ++CONFIG_SCSI_AM53C974=m ++CONFIG_SCSI_WD719X=m ++CONFIG_SCSI_DEBUG=m ++CONFIG_SCSI_PMCRAID=m ++CONFIG_SCSI_PM8001=m ++CONFIG_SCSI_BFA_FC=m ++CONFIG_SCSI_VIRTIO=m ++CONFIG_SCSI_CHELSIO_FCOE=m ++CONFIG_SCSI_LOWLEVEL_PCMCIA=y ++CONFIG_PCMCIA_AHA152X=m ++CONFIG_PCMCIA_QLOGIC=m ++CONFIG_PCMCIA_SYM53C500=m ++CONFIG_SCSI_DH=y ++CONFIG_SCSI_DH_RDAC=m ++CONFIG_SCSI_DH_HP_SW=m ++CONFIG_SCSI_DH_EMC=m ++CONFIG_SCSI_DH_ALUA=m ++CONFIG_SCSI_OSD_INITIATOR=m ++CONFIG_SCSI_OSD_ULD=m ++CONFIG_SCSI_OSD_DPRINT_SENSE=1 ++# CONFIG_SCSI_OSD_DEBUG is not set ++CONFIG_ATA=y ++CONFIG_ATA_VERBOSE_ERROR=y ++CONFIG_ATA_ACPI=y ++CONFIG_SATA_ZPODD=y ++CONFIG_SATA_PMP=y ++ ++# ++# Controllers with non-SFF native interface ++# ++CONFIG_SATA_AHCI=m ++CONFIG_SATA_MOBILE_LPM_POLICY=0 ++CONFIG_SATA_AHCI_PLATFORM=m ++CONFIG_SATA_INIC162X=m ++CONFIG_SATA_ACARD_AHCI=m ++CONFIG_SATA_SIL24=m ++CONFIG_ATA_SFF=y ++ ++# ++# SFF controllers with custom DMA interface ++# ++CONFIG_PDC_ADMA=m ++CONFIG_SATA_QSTOR=m ++CONFIG_SATA_SX4=m ++CONFIG_ATA_BMDMA=y ++ ++# ++# SATA SFF controllers with BMDMA ++# ++CONFIG_ATA_PIIX=y ++# CONFIG_SATA_DWC is not set ++CONFIG_SATA_MV=m ++CONFIG_SATA_NV=m ++CONFIG_SATA_PROMISE=m ++CONFIG_SATA_SIL=m ++CONFIG_SATA_SIS=m ++CONFIG_SATA_SVW=m ++CONFIG_SATA_ULI=m ++CONFIG_SATA_VIA=m ++CONFIG_SATA_VITESSE=m ++ ++# ++# PATA SFF controllers with BMDMA ++# ++CONFIG_PATA_ALI=m ++CONFIG_PATA_AMD=m ++CONFIG_PATA_ARTOP=m ++CONFIG_PATA_ATIIXP=m ++CONFIG_PATA_ATP867X=m ++CONFIG_PATA_CMD64X=m ++CONFIG_PATA_CYPRESS=m ++CONFIG_PATA_EFAR=m ++CONFIG_PATA_HPT366=m ++CONFIG_PATA_HPT37X=m ++CONFIG_PATA_HPT3X2N=m ++CONFIG_PATA_HPT3X3=m ++# CONFIG_PATA_HPT3X3_DMA is not set ++CONFIG_PATA_IT8213=m ++CONFIG_PATA_IT821X=m ++CONFIG_PATA_JMICRON=m ++CONFIG_PATA_MARVELL=m ++CONFIG_PATA_NETCELL=m ++CONFIG_PATA_NINJA32=m ++CONFIG_PATA_NS87415=m ++CONFIG_PATA_OLDPIIX=m ++CONFIG_PATA_OPTIDMA=m ++CONFIG_PATA_PDC2027X=m ++CONFIG_PATA_PDC_OLD=m ++CONFIG_PATA_RADISYS=m ++CONFIG_PATA_RDC=m ++CONFIG_PATA_SCH=m ++CONFIG_PATA_SERVERWORKS=m ++CONFIG_PATA_SIL680=m ++CONFIG_PATA_SIS=y ++CONFIG_PATA_TOSHIBA=m ++CONFIG_PATA_TRIFLEX=m ++CONFIG_PATA_VIA=m ++CONFIG_PATA_WINBOND=m ++ ++# ++# PIO-only SFF controllers ++# ++CONFIG_PATA_CMD640_PCI=m ++CONFIG_PATA_MPIIX=m ++CONFIG_PATA_NS87410=m ++CONFIG_PATA_OPTI=m ++CONFIG_PATA_PCMCIA=m ++CONFIG_PATA_PLATFORM=m ++CONFIG_PATA_RZ1000=m ++ ++# ++# Generic fallback / legacy drivers ++# ++CONFIG_PATA_ACPI=m ++CONFIG_ATA_GENERIC=y ++CONFIG_PATA_LEGACY=m ++CONFIG_MD=y ++CONFIG_BLK_DEV_MD=y ++CONFIG_MD_AUTODETECT=y ++CONFIG_MD_LINEAR=m ++CONFIG_MD_RAID0=m ++CONFIG_MD_RAID1=m ++CONFIG_MD_RAID10=m ++CONFIG_MD_RAID456=m ++CONFIG_MD_MULTIPATH=m ++CONFIG_MD_FAULTY=m ++CONFIG_MD_CLUSTER=m ++CONFIG_BCACHE=m ++# CONFIG_BCACHE_DEBUG is not set ++# CONFIG_BCACHE_CLOSURES_DEBUG is not set ++CONFIG_BLK_DEV_DM_BUILTIN=y ++CONFIG_BLK_DEV_DM=y ++# CONFIG_DM_DEBUG is not set ++CONFIG_DM_BUFIO=m ++# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set ++CONFIG_DM_BIO_PRISON=m ++CONFIG_DM_PERSISTENT_DATA=m ++# CONFIG_DM_UNSTRIPED is not set ++CONFIG_DM_CRYPT=m ++CONFIG_DM_SNAPSHOT=m ++CONFIG_DM_THIN_PROVISIONING=m ++CONFIG_DM_CACHE=m ++CONFIG_DM_CACHE_SMQ=m ++# CONFIG_DM_WRITECACHE is not set ++CONFIG_DM_ERA=m ++CONFIG_DM_MIRROR=m ++CONFIG_DM_LOG_USERSPACE=m ++CONFIG_DM_RAID=m ++CONFIG_DM_ZERO=m ++CONFIG_DM_MULTIPATH=m ++CONFIG_DM_MULTIPATH_QL=m ++CONFIG_DM_MULTIPATH_ST=m ++CONFIG_DM_DELAY=m ++CONFIG_DM_UEVENT=y ++CONFIG_DM_FLAKEY=m ++CONFIG_DM_VERITY=m ++# CONFIG_DM_VERITY_FEC is not set ++CONFIG_DM_SWITCH=m ++CONFIG_DM_LOG_WRITES=m ++# CONFIG_DM_INTEGRITY is not set ++CONFIG_TARGET_CORE=m ++CONFIG_TCM_IBLOCK=m ++CONFIG_TCM_FILEIO=m ++CONFIG_TCM_PSCSI=m ++CONFIG_TCM_USER2=m ++CONFIG_LOOPBACK_TARGET=m ++CONFIG_TCM_FC=m ++CONFIG_ISCSI_TARGET=m ++# CONFIG_ISCSI_TARGET_CXGB4 is not set ++CONFIG_SBP_TARGET=m ++CONFIG_FUSION=y ++CONFIG_FUSION_SPI=m ++CONFIG_FUSION_FC=m ++CONFIG_FUSION_SAS=m ++CONFIG_FUSION_MAX_SGE=128 ++CONFIG_FUSION_CTL=m ++CONFIG_FUSION_LAN=m ++CONFIG_FUSION_LOGGING=y ++ ++# ++# IEEE 1394 (FireWire) support ++# ++CONFIG_FIREWIRE=m ++CONFIG_FIREWIRE_OHCI=m ++CONFIG_FIREWIRE_SBP2=m ++CONFIG_FIREWIRE_NET=m ++CONFIG_FIREWIRE_NOSY=m ++CONFIG_MACINTOSH_DRIVERS=y ++CONFIG_MAC_EMUMOUSEBTN=m ++CONFIG_NETDEVICES=y ++CONFIG_MII=m ++CONFIG_NET_CORE=y ++CONFIG_BONDING=m ++CONFIG_DUMMY=m ++CONFIG_EQUALIZER=m ++CONFIG_NET_FC=y ++CONFIG_IFB=m ++CONFIG_NET_TEAM=m ++CONFIG_NET_TEAM_MODE_BROADCAST=m ++CONFIG_NET_TEAM_MODE_ROUNDROBIN=m ++CONFIG_NET_TEAM_MODE_RANDOM=m ++CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m ++CONFIG_NET_TEAM_MODE_LOADBALANCE=m ++CONFIG_MACVLAN=m ++CONFIG_MACVTAP=m ++CONFIG_IPVLAN=m ++# CONFIG_IPVTAP is not set ++CONFIG_VXLAN=m ++CONFIG_GENEVE=m ++# CONFIG_GTP is not set ++# CONFIG_MACSEC is not set ++CONFIG_NETCONSOLE=y ++CONFIG_NETPOLL=y ++CONFIG_NET_POLL_CONTROLLER=y ++CONFIG_NTB_NETDEV=m ++CONFIG_RIONET=m ++CONFIG_RIONET_TX_SIZE=128 ++CONFIG_RIONET_RX_SIZE=128 ++CONFIG_TUN=y ++CONFIG_TAP=m ++# CONFIG_TUN_VNET_CROSS_LE is not set ++CONFIG_VETH=m ++CONFIG_VIRTIO_NET=y ++CONFIG_NLMON=m ++CONFIG_NET_VRF=m ++CONFIG_SUNGEM_PHY=m ++CONFIG_ARCNET=m ++CONFIG_ARCNET_1201=m ++CONFIG_ARCNET_1051=m ++CONFIG_ARCNET_RAW=m ++CONFIG_ARCNET_CAP=m ++CONFIG_ARCNET_COM90xx=m ++CONFIG_ARCNET_COM90xxIO=m ++CONFIG_ARCNET_RIM_I=m ++CONFIG_ARCNET_COM20020=m ++CONFIG_ARCNET_COM20020_PCI=m ++CONFIG_ARCNET_COM20020_CS=m ++CONFIG_ATM_DRIVERS=y ++CONFIG_ATM_DUMMY=m ++CONFIG_ATM_TCP=m ++CONFIG_ATM_LANAI=m ++CONFIG_ATM_ENI=m ++# CONFIG_ATM_ENI_DEBUG is not set ++# CONFIG_ATM_ENI_TUNE_BURST is not set ++CONFIG_ATM_FIRESTREAM=m ++CONFIG_ATM_ZATM=m ++# CONFIG_ATM_ZATM_DEBUG is not set ++CONFIG_ATM_NICSTAR=m ++# CONFIG_ATM_NICSTAR_USE_SUNI is not set ++# CONFIG_ATM_NICSTAR_USE_IDT77105 is not set ++CONFIG_ATM_IDT77252=m ++# CONFIG_ATM_IDT77252_DEBUG is not set ++# CONFIG_ATM_IDT77252_RCV_ALL is not set ++CONFIG_ATM_IDT77252_USE_SUNI=y ++CONFIG_ATM_AMBASSADOR=m ++# CONFIG_ATM_AMBASSADOR_DEBUG is not set ++CONFIG_ATM_HORIZON=m ++# CONFIG_ATM_HORIZON_DEBUG is not set ++CONFIG_ATM_IA=m ++# CONFIG_ATM_IA_DEBUG is not set ++CONFIG_ATM_FORE200E=m ++# CONFIG_ATM_FORE200E_USE_TASKLET is not set ++CONFIG_ATM_FORE200E_TX_RETRY=16 ++CONFIG_ATM_FORE200E_DEBUG=0 ++CONFIG_ATM_HE=m ++CONFIG_ATM_HE_USE_SUNI=y ++CONFIG_ATM_SOLOS=m ++ ++# ++# CAIF transport drivers ++# ++CONFIG_CAIF_TTY=m ++CONFIG_CAIF_SPI_SLAVE=m ++# CONFIG_CAIF_SPI_SYNC is not set ++CONFIG_CAIF_HSI=m ++CONFIG_CAIF_VIRTIO=m ++ ++# ++# Distributed Switch Architecture drivers ++# ++CONFIG_ETHERNET=y ++CONFIG_MDIO=m ++CONFIG_NET_VENDOR_3COM=y ++CONFIG_PCMCIA_3C574=m ++CONFIG_PCMCIA_3C589=m ++CONFIG_VORTEX=m ++CONFIG_TYPHOON=m ++CONFIG_NET_VENDOR_ADAPTEC=y ++CONFIG_ADAPTEC_STARFIRE=m ++CONFIG_NET_VENDOR_AGERE=y ++CONFIG_ET131X=m ++CONFIG_NET_VENDOR_ALACRITECH=y ++CONFIG_SLICOSS=m ++CONFIG_NET_VENDOR_ALTEON=y ++CONFIG_ACENIC=m ++# CONFIG_ACENIC_OMIT_TIGON_I is not set ++CONFIG_ALTERA_TSE=m ++CONFIG_NET_VENDOR_AMAZON=y ++# CONFIG_ENA_ETHERNET is not set ++CONFIG_NET_VENDOR_AMD=y ++CONFIG_AMD8111_ETH=m ++CONFIG_PCNET32=m ++CONFIG_PCMCIA_NMCLAN=m ++# CONFIG_AMD_XGBE is not set ++CONFIG_NET_VENDOR_AQUANTIA=y ++# CONFIG_AQTION is not set ++CONFIG_NET_VENDOR_ARC=y ++CONFIG_NET_VENDOR_ATHEROS=y ++CONFIG_ATL2=m ++CONFIG_ATL1=m ++CONFIG_ATL1E=m ++CONFIG_ATL1C=m ++CONFIG_ALX=m ++CONFIG_NET_VENDOR_AURORA=y ++CONFIG_AURORA_NB8800=m ++CONFIG_NET_VENDOR_BROADCOM=y ++CONFIG_B44=m ++CONFIG_B44_PCI_AUTOSELECT=y ++CONFIG_B44_PCICORE_AUTOSELECT=y ++CONFIG_B44_PCI=y ++# CONFIG_BCMGENET is not set ++CONFIG_BNX2=m ++CONFIG_CNIC=m ++CONFIG_TIGON3=m ++CONFIG_TIGON3_HWMON=y ++CONFIG_BNX2X=m ++CONFIG_BNX2X_SRIOV=y ++# CONFIG_SYSTEMPORT is not set ++CONFIG_BNXT=m ++CONFIG_BNXT_SRIOV=y ++CONFIG_BNXT_FLOWER_OFFLOAD=y ++# CONFIG_BNXT_DCB is not set ++CONFIG_BNXT_HWMON=y ++CONFIG_NET_VENDOR_BROCADE=y ++CONFIG_BNA=m ++CONFIG_NET_VENDOR_CADENCE=y ++CONFIG_MACB=m ++CONFIG_MACB_USE_HWSTAMP=y ++# CONFIG_MACB_PCI is not set ++CONFIG_NET_VENDOR_CAVIUM=y ++CONFIG_THUNDER_NIC_PF=m ++CONFIG_THUNDER_NIC_VF=m ++CONFIG_THUNDER_NIC_BGX=m ++CONFIG_THUNDER_NIC_RGX=m ++CONFIG_CAVIUM_PTP=y ++CONFIG_LIQUIDIO=m ++# CONFIG_LIQUIDIO_VF is not set ++CONFIG_NET_VENDOR_CHELSIO=y ++CONFIG_CHELSIO_T1=m ++CONFIG_CHELSIO_T1_1G=y ++CONFIG_CHELSIO_T3=m ++CONFIG_CHELSIO_T4=m ++CONFIG_CHELSIO_T4_DCB=y ++CONFIG_CHELSIO_T4_FCOE=y ++CONFIG_CHELSIO_T4VF=m ++CONFIG_CHELSIO_LIB=m ++CONFIG_NET_VENDOR_CISCO=y ++CONFIG_ENIC=m ++CONFIG_NET_VENDOR_CORTINA=y ++CONFIG_CX_ECAT=m ++CONFIG_DNET=m ++CONFIG_NET_VENDOR_DEC=y ++CONFIG_NET_TULIP=y ++CONFIG_DE2104X=m ++CONFIG_DE2104X_DSL=0 ++CONFIG_TULIP=m ++# CONFIG_TULIP_MWI is not set ++# CONFIG_TULIP_MMIO is not set ++# CONFIG_TULIP_NAPI is not set ++CONFIG_DE4X5=m ++CONFIG_WINBOND_840=m ++CONFIG_DM9102=m ++CONFIG_ULI526X=m ++CONFIG_PCMCIA_XIRCOM=m ++CONFIG_NET_VENDOR_DLINK=y ++CONFIG_DL2K=m ++CONFIG_SUNDANCE=m ++# CONFIG_SUNDANCE_MMIO is not set ++CONFIG_NET_VENDOR_EMULEX=y ++CONFIG_BE2NET=m ++CONFIG_BE2NET_HWMON=y ++CONFIG_BE2NET_BE2=y ++CONFIG_BE2NET_BE3=y ++CONFIG_BE2NET_LANCER=y ++CONFIG_BE2NET_SKYHAWK=y ++CONFIG_NET_VENDOR_EZCHIP=y ++CONFIG_NET_VENDOR_FUJITSU=y ++CONFIG_PCMCIA_FMVJ18X=m ++CONFIG_NET_VENDOR_HP=y ++CONFIG_HP100=m ++CONFIG_NET_VENDOR_HUAWEI=y ++# CONFIG_HINIC is not set ++CONFIG_NET_VENDOR_I825XX=y ++CONFIG_NET_VENDOR_INTEL=y ++CONFIG_E100=m ++CONFIG_E1000=m ++CONFIG_E1000E=m ++CONFIG_E1000E_HWTS=y ++CONFIG_IGB=m ++CONFIG_IGB_HWMON=y ++CONFIG_IGB_DCA=y ++CONFIG_IGBVF=m ++CONFIG_IXGB=m ++CONFIG_IXGBE=m ++CONFIG_IXGBE_HWMON=y ++CONFIG_IXGBE_DCA=y ++CONFIG_IXGBE_DCB=y ++CONFIG_IXGBEVF=m ++CONFIG_I40E=m ++CONFIG_I40E_DCB=y ++CONFIG_IAVF=m ++CONFIG_I40EVF=m ++# CONFIG_ICE is not set ++CONFIG_FM10K=m ++# CONFIG_IGC is not set ++CONFIG_JME=m ++CONFIG_NET_VENDOR_MARVELL=y ++CONFIG_MVMDIO=m ++CONFIG_SKGE=m ++# CONFIG_SKGE_DEBUG is not set ++CONFIG_SKGE_GENESIS=y ++CONFIG_SKY2=m ++# CONFIG_SKY2_DEBUG is not set ++CONFIG_NET_VENDOR_MELLANOX=y ++CONFIG_MLX4_EN=m ++CONFIG_MLX4_EN_DCB=y ++CONFIG_MLX4_CORE=m ++CONFIG_MLX4_DEBUG=y ++CONFIG_MLX4_CORE_GEN2=y ++CONFIG_MLX5_CORE=m ++# CONFIG_MLX5_FPGA is not set ++CONFIG_MLX5_CORE_EN=y ++CONFIG_MLX5_EN_ARFS=y ++CONFIG_MLX5_EN_RXNFC=y ++CONFIG_MLX5_MPFS=y ++CONFIG_MLX5_CORE_EN_DCB=y ++# CONFIG_MLX5_CORE_IPOIB is not set ++CONFIG_MLXSW_CORE=m ++CONFIG_MLXSW_CORE_HWMON=y ++CONFIG_MLXSW_CORE_THERMAL=y ++CONFIG_MLXSW_PCI=m ++CONFIG_MLXSW_I2C=m ++CONFIG_MLXSW_MINIMAL=m ++# CONFIG_MLXFW is not set ++CONFIG_NET_VENDOR_MICREL=y ++CONFIG_KS8842=m ++CONFIG_KS8851=m ++CONFIG_KS8851_MLL=m ++CONFIG_KSZ884X_PCI=m ++CONFIG_NET_VENDOR_MICROCHIP=y ++CONFIG_ENC28J60=m ++# CONFIG_ENC28J60_WRITEVERIFY is not set ++CONFIG_ENCX24J600=m ++# CONFIG_LAN743X is not set ++CONFIG_NET_VENDOR_MICROSEMI=y ++CONFIG_NET_VENDOR_MYRI=y ++CONFIG_MYRI10GE=m ++CONFIG_MYRI10GE_DCA=y ++CONFIG_FEALNX=m ++CONFIG_NET_VENDOR_NATSEMI=y ++CONFIG_NATSEMI=m ++CONFIG_NS83820=m ++CONFIG_NET_VENDOR_NETERION=y ++CONFIG_S2IO=m ++CONFIG_VXGE=m ++# CONFIG_VXGE_DEBUG_TRACE_ALL is not set ++CONFIG_NET_VENDOR_NETRONOME=y ++# CONFIG_NFP is not set ++CONFIG_NET_VENDOR_NI=y ++# CONFIG_NI_XGE_MANAGEMENT_ENET is not set ++CONFIG_NET_VENDOR_8390=y ++CONFIG_PCMCIA_AXNET=m ++CONFIG_NE2K_PCI=m ++CONFIG_PCMCIA_PCNET=m ++CONFIG_NET_VENDOR_NVIDIA=y ++CONFIG_FORCEDETH=m ++CONFIG_NET_VENDOR_OKI=y ++CONFIG_ETHOC=m ++CONFIG_NET_VENDOR_PACKET_ENGINES=y ++CONFIG_HAMACHI=m ++CONFIG_YELLOWFIN=m ++CONFIG_NET_VENDOR_QLOGIC=y ++CONFIG_QLA3XXX=m ++CONFIG_QLCNIC=m ++CONFIG_QLCNIC_SRIOV=y ++CONFIG_QLCNIC_DCB=y ++CONFIG_QLCNIC_HWMON=y ++CONFIG_QLGE=m ++CONFIG_NETXEN_NIC=m ++CONFIG_QED=m ++CONFIG_QED_SRIOV=y ++CONFIG_QEDE=m ++CONFIG_NET_VENDOR_QUALCOMM=y ++# CONFIG_QCOM_EMAC is not set ++# CONFIG_RMNET is not set ++CONFIG_NET_VENDOR_RDC=y ++CONFIG_R6040=m ++CONFIG_NET_VENDOR_REALTEK=y ++CONFIG_ATP=m ++CONFIG_8139CP=m ++CONFIG_8139TOO=m ++CONFIG_8139TOO_PIO=y ++# CONFIG_8139TOO_TUNE_TWISTER is not set ++CONFIG_8139TOO_8129=y ++# CONFIG_8139_OLD_RX_RESET is not set ++CONFIG_R8169=m ++CONFIG_NET_VENDOR_RENESAS=y ++CONFIG_NET_VENDOR_ROCKER=y ++CONFIG_NET_VENDOR_SAMSUNG=y ++CONFIG_SXGBE_ETH=m ++CONFIG_NET_VENDOR_SEEQ=y ++CONFIG_NET_VENDOR_SOLARFLARE=y ++CONFIG_SFC=m ++CONFIG_SFC_MTD=y ++CONFIG_SFC_MCDI_MON=y ++CONFIG_SFC_SRIOV=y ++CONFIG_SFC_MCDI_LOGGING=y ++# CONFIG_SFC_FALCON is not set ++CONFIG_NET_VENDOR_SILAN=y ++CONFIG_SC92031=m ++CONFIG_NET_VENDOR_SIS=y ++CONFIG_SIS900=m ++CONFIG_SIS190=m ++CONFIG_NET_VENDOR_SMSC=y ++CONFIG_PCMCIA_SMC91C92=m ++CONFIG_EPIC100=m ++CONFIG_SMSC911X=m ++CONFIG_SMSC9420=m ++CONFIG_NET_VENDOR_SOCIONEXT=y ++CONFIG_NET_VENDOR_STMICRO=y ++CONFIG_STMMAC_ETH=m ++CONFIG_STMMAC_PLATFORM=m ++CONFIG_DWMAC_GENERIC=m ++# CONFIG_STMMAC_PCI is not set ++CONFIG_NET_VENDOR_SUN=y ++CONFIG_HAPPYMEAL=m ++CONFIG_SUNGEM=m ++CONFIG_CASSINI=m ++CONFIG_NIU=m ++CONFIG_NET_VENDOR_SYNOPSYS=y ++# CONFIG_DWC_XLGMAC is not set ++CONFIG_NET_VENDOR_TEHUTI=y ++CONFIG_TEHUTI=m ++CONFIG_NET_VENDOR_TI=y ++CONFIG_TI_CPSW_ALE=m ++CONFIG_TLAN=m ++CONFIG_NET_VENDOR_VIA=y ++CONFIG_VIA_RHINE=m ++CONFIG_VIA_RHINE_MMIO=y ++CONFIG_VIA_VELOCITY=m ++CONFIG_NET_VENDOR_WIZNET=y ++CONFIG_WIZNET_W5100=m ++CONFIG_WIZNET_W5300=m ++# CONFIG_WIZNET_BUS_DIRECT is not set ++# CONFIG_WIZNET_BUS_INDIRECT is not set ++CONFIG_WIZNET_BUS_ANY=y ++# CONFIG_WIZNET_W5100_SPI is not set ++CONFIG_NET_VENDOR_XIRCOM=y ++CONFIG_PCMCIA_XIRC2PS=m ++CONFIG_FDDI=y ++CONFIG_DEFXX=m ++# CONFIG_DEFXX_MMIO is not set ++CONFIG_SKFP=m ++# CONFIG_HIPPI is not set ++CONFIG_NET_SB1000=m ++CONFIG_MDIO_DEVICE=y ++CONFIG_MDIO_BUS=y ++# CONFIG_MDIO_BCM_UNIMAC is not set ++CONFIG_MDIO_BITBANG=m ++CONFIG_MDIO_CAVIUM=m ++CONFIG_MDIO_GPIO=m ++# CONFIG_MDIO_MSCC_MIIM is not set ++CONFIG_MDIO_THUNDER=m ++CONFIG_PHYLIB=y ++CONFIG_SWPHY=y ++# CONFIG_LED_TRIGGER_PHY is not set ++ ++# ++# MII PHY device drivers ++# ++CONFIG_AMD_PHY=m ++CONFIG_AQUANTIA_PHY=m ++# CONFIG_ASIX_PHY is not set ++CONFIG_AT803X_PHY=m ++CONFIG_BCM7XXX_PHY=m ++CONFIG_BCM87XX_PHY=m ++CONFIG_BCM_NET_PHYLIB=m ++CONFIG_BROADCOM_PHY=m ++CONFIG_CICADA_PHY=m ++# CONFIG_CORTINA_PHY is not set ++CONFIG_DAVICOM_PHY=m ++# CONFIG_DP83822_PHY is not set ++# CONFIG_DP83TC811_PHY is not set ++CONFIG_DP83848_PHY=m ++CONFIG_DP83867_PHY=m ++CONFIG_FIXED_PHY=y ++CONFIG_ICPLUS_PHY=m ++# CONFIG_INTEL_XWAY_PHY is not set ++CONFIG_LSI_ET1011C_PHY=m ++CONFIG_LXT_PHY=m ++CONFIG_MARVELL_PHY=m ++# CONFIG_MARVELL_10G_PHY is not set ++CONFIG_MICREL_PHY=m ++CONFIG_MICROCHIP_PHY=m ++# CONFIG_MICROCHIP_T1_PHY is not set ++# CONFIG_MICROSEMI_PHY is not set ++CONFIG_NATIONAL_PHY=m ++CONFIG_QSEMI_PHY=m ++CONFIG_REALTEK_PHY=m ++# CONFIG_RENESAS_PHY is not set ++# CONFIG_ROCKCHIP_PHY is not set ++CONFIG_SMSC_PHY=m ++CONFIG_STE10XP=m ++CONFIG_TERANETICS_PHY=m ++CONFIG_VITESSE_PHY=m ++# CONFIG_XILINX_GMII2RGMII is not set ++CONFIG_MICREL_KS8995MA=m ++CONFIG_PLIP=m ++CONFIG_PPP=y ++CONFIG_PPP_BSDCOMP=m ++CONFIG_PPP_DEFLATE=m ++CONFIG_PPP_FILTER=y ++CONFIG_PPP_MPPE=m ++CONFIG_PPP_MULTILINK=y ++CONFIG_PPPOATM=m ++CONFIG_PPPOE=m ++CONFIG_PPTP=m ++CONFIG_PPPOL2TP=m ++CONFIG_PPP_ASYNC=m ++CONFIG_PPP_SYNC_TTY=m ++CONFIG_SLIP=m ++CONFIG_SLHC=y ++CONFIG_SLIP_COMPRESSED=y ++CONFIG_SLIP_SMART=y ++CONFIG_SLIP_MODE_SLIP6=y ++CONFIG_USB_NET_DRIVERS=m ++CONFIG_USB_CATC=m ++CONFIG_USB_KAWETH=m ++CONFIG_USB_PEGASUS=m ++CONFIG_USB_RTL8150=m ++CONFIG_USB_RTL8152=m ++CONFIG_USB_LAN78XX=m ++CONFIG_USB_USBNET=m ++CONFIG_USB_NET_AX8817X=m ++CONFIG_USB_NET_AX88179_178A=m ++CONFIG_USB_NET_CDCETHER=m ++CONFIG_USB_NET_CDC_EEM=m ++CONFIG_USB_NET_CDC_NCM=m ++CONFIG_USB_NET_HUAWEI_CDC_NCM=m ++CONFIG_USB_NET_CDC_MBIM=m ++CONFIG_USB_NET_DM9601=m ++CONFIG_USB_NET_SR9700=m ++CONFIG_USB_NET_SR9800=m ++CONFIG_USB_NET_SMSC75XX=m ++CONFIG_USB_NET_SMSC95XX=m ++CONFIG_USB_NET_GL620A=m ++CONFIG_USB_NET_NET1080=m ++CONFIG_USB_NET_PLUSB=m ++CONFIG_USB_NET_MCS7830=m ++CONFIG_USB_NET_RNDIS_HOST=m ++CONFIG_USB_NET_CDC_SUBSET_ENABLE=m ++CONFIG_USB_NET_CDC_SUBSET=m ++CONFIG_USB_ALI_M5632=y ++CONFIG_USB_AN2720=y ++CONFIG_USB_BELKIN=y ++CONFIG_USB_ARMLINUX=y ++CONFIG_USB_EPSON2888=y ++CONFIG_USB_KC2190=y ++CONFIG_USB_NET_ZAURUS=m ++CONFIG_USB_NET_CX82310_ETH=m ++CONFIG_USB_NET_KALMIA=m ++CONFIG_USB_NET_QMI_WWAN=m ++CONFIG_USB_HSO=m ++CONFIG_USB_NET_INT51X1=m ++CONFIG_USB_CDC_PHONET=m ++CONFIG_USB_IPHETH=m ++CONFIG_USB_SIERRA_NET=m ++CONFIG_USB_VL600=m ++CONFIG_USB_NET_CH9200=m ++# CONFIG_USB_NET_AQC111 is not set ++CONFIG_WLAN=y ++# CONFIG_WIRELESS_WDS is not set ++CONFIG_WLAN_VENDOR_ADMTEK=y ++CONFIG_ADM8211=m ++CONFIG_ATH_COMMON=m ++CONFIG_WLAN_VENDOR_ATH=y ++# CONFIG_ATH_DEBUG is not set ++CONFIG_ATH5K=m ++# CONFIG_ATH5K_DEBUG is not set ++# CONFIG_ATH5K_TRACER is not set ++CONFIG_ATH5K_PCI=y ++CONFIG_ATH9K_HW=m ++CONFIG_ATH9K_COMMON=m ++CONFIG_ATH9K_COMMON_DEBUG=y ++CONFIG_ATH9K_BTCOEX_SUPPORT=y ++CONFIG_ATH9K=m ++CONFIG_ATH9K_PCI=y ++CONFIG_ATH9K_AHB=y ++CONFIG_ATH9K_DEBUGFS=y ++CONFIG_ATH9K_STATION_STATISTICS=y ++# CONFIG_ATH9K_DYNACK is not set ++CONFIG_ATH9K_WOW=y ++CONFIG_ATH9K_RFKILL=y ++CONFIG_ATH9K_CHANNEL_CONTEXT=y ++CONFIG_ATH9K_PCOEM=y ++CONFIG_ATH9K_HTC=m ++CONFIG_ATH9K_HTC_DEBUGFS=y ++CONFIG_ATH9K_HWRNG=y ++# CONFIG_ATH9K_COMMON_SPECTRAL is not set ++CONFIG_CARL9170=m ++CONFIG_CARL9170_LEDS=y ++# CONFIG_CARL9170_DEBUGFS is not set ++CONFIG_CARL9170_WPC=y ++CONFIG_CARL9170_HWRNG=y ++CONFIG_ATH6KL=m ++CONFIG_ATH6KL_SDIO=m ++CONFIG_ATH6KL_USB=m ++# CONFIG_ATH6KL_DEBUG is not set ++# CONFIG_ATH6KL_TRACING is not set ++CONFIG_AR5523=m ++CONFIG_WIL6210=m ++CONFIG_WIL6210_ISR_COR=y ++CONFIG_WIL6210_TRACING=y ++CONFIG_WIL6210_DEBUGFS=y ++CONFIG_ATH10K=m ++CONFIG_ATH10K_CE=y ++CONFIG_ATH10K_PCI=m ++# CONFIG_ATH10K_SDIO is not set ++# CONFIG_ATH10K_USB is not set ++# CONFIG_ATH10K_DEBUG is not set ++CONFIG_ATH10K_DEBUGFS=y ++# CONFIG_ATH10K_SPECTRAL is not set ++CONFIG_ATH10K_TRACING=y ++CONFIG_WCN36XX=m ++# CONFIG_WCN36XX_DEBUGFS is not set ++CONFIG_WLAN_VENDOR_ATMEL=y ++CONFIG_ATMEL=m ++CONFIG_PCI_ATMEL=m ++CONFIG_PCMCIA_ATMEL=m ++CONFIG_AT76C50X_USB=m ++CONFIG_WLAN_VENDOR_BROADCOM=y ++CONFIG_B43=m ++CONFIG_B43_BCMA=y ++CONFIG_B43_SSB=y ++CONFIG_B43_BUSES_BCMA_AND_SSB=y ++# CONFIG_B43_BUSES_BCMA is not set ++# CONFIG_B43_BUSES_SSB is not set ++CONFIG_B43_PCI_AUTOSELECT=y ++CONFIG_B43_PCICORE_AUTOSELECT=y ++# CONFIG_B43_SDIO is not set ++CONFIG_B43_BCMA_PIO=y ++CONFIG_B43_PIO=y ++CONFIG_B43_PHY_G=y ++CONFIG_B43_PHY_N=y ++CONFIG_B43_PHY_LP=y ++CONFIG_B43_PHY_HT=y ++CONFIG_B43_LEDS=y ++CONFIG_B43_HWRNG=y ++# CONFIG_B43_DEBUG is not set ++CONFIG_B43LEGACY=m ++CONFIG_B43LEGACY_PCI_AUTOSELECT=y ++CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y ++CONFIG_B43LEGACY_LEDS=y ++CONFIG_B43LEGACY_HWRNG=y ++# CONFIG_B43LEGACY_DEBUG is not set ++CONFIG_B43LEGACY_DMA=y ++CONFIG_B43LEGACY_PIO=y ++CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y ++# CONFIG_B43LEGACY_DMA_MODE is not set ++# CONFIG_B43LEGACY_PIO_MODE is not set ++CONFIG_BRCMUTIL=m ++CONFIG_BRCMSMAC=m ++CONFIG_BRCMFMAC=m ++CONFIG_BRCMFMAC_PROTO_BCDC=y ++CONFIG_BRCMFMAC_PROTO_MSGBUF=y ++CONFIG_BRCMFMAC_SDIO=y ++CONFIG_BRCMFMAC_USB=y ++CONFIG_BRCMFMAC_PCIE=y ++CONFIG_BRCM_TRACING=y ++# CONFIG_BRCMDBG is not set ++CONFIG_WLAN_VENDOR_CISCO=y ++CONFIG_AIRO=m ++CONFIG_AIRO_CS=m ++CONFIG_WLAN_VENDOR_INTEL=y ++CONFIG_IPW2100=m ++CONFIG_IPW2100_MONITOR=y ++# CONFIG_IPW2100_DEBUG is not set ++CONFIG_IPW2200=m ++CONFIG_IPW2200_MONITOR=y ++CONFIG_IPW2200_RADIOTAP=y ++CONFIG_IPW2200_PROMISCUOUS=y ++CONFIG_IPW2200_QOS=y ++# CONFIG_IPW2200_DEBUG is not set ++CONFIG_LIBIPW=m ++# CONFIG_LIBIPW_DEBUG is not set ++CONFIG_IWLEGACY=m ++CONFIG_IWL4965=m ++CONFIG_IWL3945=m ++ ++# ++# iwl3945 / iwl4965 Debugging Options ++# ++# CONFIG_IWLEGACY_DEBUG is not set ++CONFIG_IWLEGACY_DEBUGFS=y ++CONFIG_IWLWIFI=m ++CONFIG_IWLWIFI_LEDS=y ++CONFIG_IWLDVM=m ++CONFIG_IWLMVM=m ++CONFIG_IWLWIFI_OPMODE_MODULAR=y ++# CONFIG_IWLWIFI_BCAST_FILTERING is not set ++# CONFIG_IWLWIFI_PCIE_RTPM is not set ++ ++# ++# Debugging Options ++# ++# CONFIG_IWLWIFI_DEBUG is not set ++CONFIG_IWLWIFI_DEBUGFS=y ++CONFIG_IWLWIFI_DEVICE_TRACING=y ++CONFIG_WLAN_VENDOR_INTERSIL=y ++CONFIG_HOSTAP=m ++CONFIG_HOSTAP_FIRMWARE=y ++CONFIG_HOSTAP_FIRMWARE_NVRAM=y ++CONFIG_HOSTAP_PLX=m ++CONFIG_HOSTAP_PCI=m ++CONFIG_HOSTAP_CS=m ++CONFIG_HERMES=m ++# CONFIG_HERMES_PRISM is not set ++CONFIG_HERMES_CACHE_FW_ON_INIT=y ++CONFIG_PLX_HERMES=m ++CONFIG_TMD_HERMES=m ++CONFIG_NORTEL_HERMES=m ++CONFIG_PCMCIA_HERMES=m ++CONFIG_PCMCIA_SPECTRUM=m ++CONFIG_ORINOCO_USB=m ++CONFIG_P54_COMMON=m ++CONFIG_P54_USB=m ++CONFIG_P54_PCI=m ++CONFIG_P54_SPI=m ++# CONFIG_P54_SPI_DEFAULT_EEPROM is not set ++CONFIG_P54_LEDS=y ++# CONFIG_PRISM54 is not set ++CONFIG_WLAN_VENDOR_MARVELL=y ++CONFIG_LIBERTAS=m ++CONFIG_LIBERTAS_USB=m ++CONFIG_LIBERTAS_CS=m ++CONFIG_LIBERTAS_SDIO=m ++CONFIG_LIBERTAS_SPI=m ++# CONFIG_LIBERTAS_DEBUG is not set ++CONFIG_LIBERTAS_MESH=y ++CONFIG_LIBERTAS_THINFIRM=m ++# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set ++CONFIG_LIBERTAS_THINFIRM_USB=m ++CONFIG_MWIFIEX=m ++CONFIG_MWIFIEX_SDIO=m ++CONFIG_MWIFIEX_PCIE=m ++CONFIG_MWIFIEX_USB=m ++CONFIG_MWL8K=m ++CONFIG_WLAN_VENDOR_MEDIATEK=y ++CONFIG_MT7601U=m ++# CONFIG_MT76x0U is not set ++# CONFIG_MT76x0E is not set ++# CONFIG_MT76x2E is not set ++# CONFIG_MT76x2U is not set ++CONFIG_WLAN_VENDOR_RALINK=y ++CONFIG_RT2X00=m ++CONFIG_RT2400PCI=m ++CONFIG_RT2500PCI=m ++CONFIG_RT61PCI=m ++CONFIG_RT2800PCI=m ++CONFIG_RT2800PCI_RT33XX=y ++CONFIG_RT2800PCI_RT35XX=y ++CONFIG_RT2800PCI_RT53XX=y ++CONFIG_RT2800PCI_RT3290=y ++CONFIG_RT2500USB=m ++CONFIG_RT73USB=m ++CONFIG_RT2800USB=m ++CONFIG_RT2800USB_RT33XX=y ++CONFIG_RT2800USB_RT35XX=y ++CONFIG_RT2800USB_RT3573=y ++CONFIG_RT2800USB_RT53XX=y ++CONFIG_RT2800USB_RT55XX=y ++CONFIG_RT2800USB_UNKNOWN=y ++CONFIG_RT2800_LIB=m ++CONFIG_RT2800_LIB_MMIO=m ++CONFIG_RT2X00_LIB_MMIO=m ++CONFIG_RT2X00_LIB_PCI=m ++CONFIG_RT2X00_LIB_USB=m ++CONFIG_RT2X00_LIB=m ++CONFIG_RT2X00_LIB_FIRMWARE=y ++CONFIG_RT2X00_LIB_CRYPTO=y ++CONFIG_RT2X00_LIB_LEDS=y ++# CONFIG_RT2X00_LIB_DEBUGFS is not set ++# CONFIG_RT2X00_DEBUG is not set ++CONFIG_WLAN_VENDOR_REALTEK=y ++CONFIG_RTL8180=m ++CONFIG_RTL8187=m ++CONFIG_RTL8187_LEDS=y ++CONFIG_RTL_CARDS=m ++CONFIG_RTL8192CE=m ++CONFIG_RTL8192SE=m ++CONFIG_RTL8192DE=m ++CONFIG_RTL8723AE=m ++CONFIG_RTL8723BE=m ++CONFIG_RTL8188EE=m ++CONFIG_RTL8192EE=m ++CONFIG_RTL8821AE=m ++CONFIG_RTL8192CU=m ++CONFIG_RTLWIFI=m ++CONFIG_RTLWIFI_PCI=m ++CONFIG_RTLWIFI_USB=m ++# CONFIG_RTLWIFI_DEBUG is not set ++CONFIG_RTL8192C_COMMON=m ++CONFIG_RTL8723_COMMON=m ++CONFIG_RTLBTCOEXIST=m ++CONFIG_RTL8XXXU=m ++CONFIG_RTL8XXXU_UNTESTED=y ++CONFIG_WLAN_VENDOR_RSI=y ++CONFIG_RSI_91X=m ++# CONFIG_RSI_DEBUGFS is not set ++CONFIG_RSI_SDIO=m ++CONFIG_RSI_USB=m ++CONFIG_RSI_COEX=y ++CONFIG_WLAN_VENDOR_ST=y ++CONFIG_CW1200=m ++CONFIG_CW1200_WLAN_SDIO=m ++CONFIG_CW1200_WLAN_SPI=m ++CONFIG_WLAN_VENDOR_TI=y ++CONFIG_WL1251=m ++CONFIG_WL1251_SPI=m ++CONFIG_WL1251_SDIO=m ++CONFIG_WL12XX=m ++CONFIG_WL18XX=m ++CONFIG_WLCORE=m ++CONFIG_WLCORE_SDIO=m ++CONFIG_WILINK_PLATFORM_DATA=y ++CONFIG_WLAN_VENDOR_ZYDAS=y ++CONFIG_USB_ZD1201=m ++CONFIG_ZD1211RW=m ++# CONFIG_ZD1211RW_DEBUG is not set ++CONFIG_WLAN_VENDOR_QUANTENNA=y ++# CONFIG_QTNFMAC_PCIE is not set ++CONFIG_PCMCIA_RAYCS=m ++CONFIG_PCMCIA_WL3501=m ++CONFIG_MAC80211_HWSIM=m ++CONFIG_USB_NET_RNDIS_WLAN=m ++# CONFIG_VIRT_WIFI is not set ++ ++# ++# WiMAX Wireless Broadband devices ++# ++CONFIG_WIMAX_I2400M=m ++CONFIG_WIMAX_I2400M_USB=m ++CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8 ++CONFIG_WAN=y ++CONFIG_LANMEDIA=m ++CONFIG_HDLC=m ++CONFIG_HDLC_RAW=m ++CONFIG_HDLC_RAW_ETH=m ++CONFIG_HDLC_CISCO=m ++CONFIG_HDLC_FR=m ++CONFIG_HDLC_PPP=m ++CONFIG_HDLC_X25=m ++CONFIG_PCI200SYN=m ++CONFIG_WANXL=m ++CONFIG_PC300TOO=m ++CONFIG_FARSYNC=m ++CONFIG_DSCC4=m ++CONFIG_DSCC4_PCISYNC=y ++CONFIG_DSCC4_PCI_RST=y ++CONFIG_DLCI=m ++CONFIG_DLCI_MAX=8 ++CONFIG_LAPBETHER=m ++CONFIG_X25_ASY=m ++CONFIG_SBNI=m ++# CONFIG_SBNI_MULTILINE is not set ++CONFIG_IEEE802154_DRIVERS=m ++CONFIG_IEEE802154_FAKELB=m ++CONFIG_IEEE802154_AT86RF230=m ++CONFIG_IEEE802154_AT86RF230_DEBUGFS=y ++CONFIG_IEEE802154_MRF24J40=m ++CONFIG_IEEE802154_CC2520=m ++CONFIG_IEEE802154_ATUSB=m ++# CONFIG_IEEE802154_ADF7242 is not set ++# CONFIG_IEEE802154_CA8210 is not set ++# CONFIG_IEEE802154_MCR20A is not set ++# CONFIG_IEEE802154_HWSIM is not set ++CONFIG_XEN_NETDEV_FRONTEND=y ++CONFIG_XEN_NETDEV_BACKEND=m ++CONFIG_VMXNET3=m ++CONFIG_FUJITSU_ES=m ++# CONFIG_THUNDERBOLT_NET is not set ++CONFIG_HYPERV_NET=m ++# CONFIG_NETDEVSIM is not set ++CONFIG_NET_FAILOVER=y ++CONFIG_ISDN=y ++CONFIG_ISDN_I4L=m ++CONFIG_ISDN_PPP=y ++CONFIG_ISDN_PPP_VJ=y ++CONFIG_ISDN_MPP=y ++CONFIG_IPPP_FILTER=y ++CONFIG_ISDN_PPP_BSDCOMP=m ++CONFIG_ISDN_AUDIO=y ++CONFIG_ISDN_TTY_FAX=y ++CONFIG_ISDN_X25=y ++ ++# ++# ISDN feature submodules ++# ++CONFIG_ISDN_DIVERSION=m ++ ++# ++# ISDN4Linux hardware drivers ++# ++ ++# ++# Passive cards ++# ++CONFIG_ISDN_DRV_HISAX=m ++ ++# ++# D-channel protocol features ++# ++CONFIG_HISAX_EURO=y ++CONFIG_DE_AOC=y ++# CONFIG_HISAX_NO_SENDCOMPLETE is not set ++# CONFIG_HISAX_NO_LLC is not set ++# CONFIG_HISAX_NO_KEYPAD is not set ++CONFIG_HISAX_1TR6=y ++CONFIG_HISAX_NI1=y ++CONFIG_HISAX_MAX_CARDS=8 ++ ++# ++# HiSax supported cards ++# ++CONFIG_HISAX_16_3=y ++CONFIG_HISAX_TELESPCI=y ++CONFIG_HISAX_S0BOX=y ++CONFIG_HISAX_FRITZPCI=y ++CONFIG_HISAX_AVM_A1_PCMCIA=y ++CONFIG_HISAX_ELSA=y ++CONFIG_HISAX_DIEHLDIVA=y ++CONFIG_HISAX_SEDLBAUER=y ++CONFIG_HISAX_NETJET=y ++CONFIG_HISAX_NETJET_U=y ++CONFIG_HISAX_NICCY=y ++CONFIG_HISAX_BKM_A4T=y ++CONFIG_HISAX_SCT_QUADRO=y ++CONFIG_HISAX_GAZEL=y ++CONFIG_HISAX_HFC_PCI=y ++CONFIG_HISAX_W6692=y ++CONFIG_HISAX_HFC_SX=y ++CONFIG_HISAX_ENTERNOW_PCI=y ++# CONFIG_HISAX_DEBUG is not set ++ ++# ++# HiSax PCMCIA card service modules ++# ++CONFIG_HISAX_SEDLBAUER_CS=m ++CONFIG_HISAX_ELSA_CS=m ++CONFIG_HISAX_AVM_A1_CS=m ++CONFIG_HISAX_TELES_CS=m ++ ++# ++# HiSax sub driver modules ++# ++CONFIG_HISAX_ST5481=m ++CONFIG_HISAX_HFCUSB=m ++CONFIG_HISAX_HFC4S8S=m ++CONFIG_HISAX_FRITZ_PCIPNP=m ++CONFIG_ISDN_CAPI=m ++CONFIG_CAPI_TRACE=y ++CONFIG_ISDN_CAPI_CAPI20=m ++CONFIG_ISDN_CAPI_MIDDLEWARE=y ++CONFIG_ISDN_CAPI_CAPIDRV=m ++# CONFIG_ISDN_CAPI_CAPIDRV_VERBOSE is not set ++ ++# ++# CAPI hardware drivers ++# ++CONFIG_CAPI_AVM=y ++CONFIG_ISDN_DRV_AVMB1_B1PCI=m ++CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y ++CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m ++CONFIG_ISDN_DRV_AVMB1_AVM_CS=m ++CONFIG_ISDN_DRV_AVMB1_T1PCI=m ++CONFIG_ISDN_DRV_AVMB1_C4=m ++CONFIG_ISDN_DRV_GIGASET=m ++# CONFIG_GIGASET_CAPI is not set ++CONFIG_GIGASET_I4L=y ++CONFIG_GIGASET_BASE=m ++CONFIG_GIGASET_M105=m ++CONFIG_GIGASET_M101=m ++# CONFIG_GIGASET_DEBUG is not set ++CONFIG_HYSDN=m ++CONFIG_HYSDN_CAPI=y ++CONFIG_MISDN=m ++CONFIG_MISDN_DSP=m ++CONFIG_MISDN_L1OIP=m ++ ++# ++# mISDN hardware drivers ++# ++CONFIG_MISDN_HFCPCI=m ++CONFIG_MISDN_HFCMULTI=m ++CONFIG_MISDN_HFCUSB=m ++CONFIG_MISDN_AVMFRITZ=m ++CONFIG_MISDN_SPEEDFAX=m ++CONFIG_MISDN_INFINEON=m ++CONFIG_MISDN_W6692=m ++CONFIG_MISDN_NETJET=m ++CONFIG_MISDN_IPAC=m ++CONFIG_MISDN_ISAR=m ++CONFIG_ISDN_HDLC=m ++CONFIG_NVM=y ++# CONFIG_NVM_PBLK is not set ++ ++# ++# Input device support ++# ++CONFIG_INPUT=y ++CONFIG_INPUT_LEDS=m ++CONFIG_INPUT_FF_MEMLESS=m ++CONFIG_INPUT_POLLDEV=m ++CONFIG_INPUT_SPARSEKMAP=m ++CONFIG_INPUT_MATRIXKMAP=m ++ ++# ++# Userland interfaces ++# ++CONFIG_INPUT_MOUSEDEV=y ++CONFIG_INPUT_MOUSEDEV_PSAUX=y ++CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 ++CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 ++CONFIG_INPUT_JOYDEV=m ++CONFIG_INPUT_EVDEV=y ++CONFIG_INPUT_EVBUG=m ++ ++# ++# Input Device Drivers ++# ++CONFIG_INPUT_KEYBOARD=y ++# CONFIG_KEYBOARD_ADC is not set ++CONFIG_KEYBOARD_ADP5520=m ++CONFIG_KEYBOARD_ADP5588=m ++CONFIG_KEYBOARD_ADP5589=m ++CONFIG_KEYBOARD_ATKBD=y ++CONFIG_KEYBOARD_QT1070=m ++CONFIG_KEYBOARD_QT2160=m ++# CONFIG_KEYBOARD_DLINK_DIR685 is not set ++CONFIG_KEYBOARD_LKKBD=m ++CONFIG_KEYBOARD_GPIO=m ++CONFIG_KEYBOARD_GPIO_POLLED=m ++CONFIG_KEYBOARD_TCA6416=m ++CONFIG_KEYBOARD_TCA8418=m ++CONFIG_KEYBOARD_MATRIX=m ++CONFIG_KEYBOARD_LM8323=m ++CONFIG_KEYBOARD_LM8333=m ++CONFIG_KEYBOARD_MAX7359=m ++CONFIG_KEYBOARD_MCS=m ++CONFIG_KEYBOARD_MPR121=m ++CONFIG_KEYBOARD_NEWTON=m ++CONFIG_KEYBOARD_OPENCORES=m ++CONFIG_KEYBOARD_SAMSUNG=m ++CONFIG_KEYBOARD_STOWAWAY=m ++CONFIG_KEYBOARD_SUNKBD=m ++# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set ++CONFIG_KEYBOARD_TWL4030=m ++CONFIG_KEYBOARD_XTKBD=m ++CONFIG_KEYBOARD_CROS_EC=m ++# CONFIG_KEYBOARD_MTK_PMIC is not set ++CONFIG_INPUT_MOUSE=y ++CONFIG_MOUSE_PS2=m ++CONFIG_MOUSE_PS2_ALPS=y ++CONFIG_MOUSE_PS2_BYD=y ++CONFIG_MOUSE_PS2_LOGIPS2PP=y ++CONFIG_MOUSE_PS2_SYNAPTICS=y ++CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y ++CONFIG_MOUSE_PS2_CYPRESS=y ++CONFIG_MOUSE_PS2_LIFEBOOK=y ++CONFIG_MOUSE_PS2_TRACKPOINT=y ++CONFIG_MOUSE_PS2_ELANTECH=y ++CONFIG_MOUSE_PS2_ELANTECH_SMBUS=y ++CONFIG_MOUSE_PS2_SENTELIC=y ++CONFIG_MOUSE_PS2_TOUCHKIT=y ++CONFIG_MOUSE_PS2_FOCALTECH=y ++CONFIG_MOUSE_PS2_VMMOUSE=y ++CONFIG_MOUSE_PS2_SMBUS=y ++CONFIG_MOUSE_SERIAL=m ++CONFIG_MOUSE_APPLETOUCH=m ++CONFIG_MOUSE_BCM5974=m ++CONFIG_MOUSE_CYAPA=m ++CONFIG_MOUSE_ELAN_I2C=m ++CONFIG_MOUSE_ELAN_I2C_I2C=y ++CONFIG_MOUSE_ELAN_I2C_SMBUS=y ++CONFIG_MOUSE_VSXXXAA=m ++CONFIG_MOUSE_GPIO=m ++CONFIG_MOUSE_SYNAPTICS_I2C=m ++CONFIG_MOUSE_SYNAPTICS_USB=m ++CONFIG_INPUT_JOYSTICK=y ++CONFIG_JOYSTICK_ANALOG=m ++CONFIG_JOYSTICK_A3D=m ++CONFIG_JOYSTICK_ADI=m ++CONFIG_JOYSTICK_COBRA=m ++CONFIG_JOYSTICK_GF2K=m ++CONFIG_JOYSTICK_GRIP=m ++CONFIG_JOYSTICK_GRIP_MP=m ++CONFIG_JOYSTICK_GUILLEMOT=m ++CONFIG_JOYSTICK_INTERACT=m ++CONFIG_JOYSTICK_SIDEWINDER=m ++CONFIG_JOYSTICK_TMDC=m ++CONFIG_JOYSTICK_IFORCE=m ++CONFIG_JOYSTICK_IFORCE_USB=y ++CONFIG_JOYSTICK_IFORCE_232=y ++CONFIG_JOYSTICK_WARRIOR=m ++CONFIG_JOYSTICK_MAGELLAN=m ++CONFIG_JOYSTICK_SPACEORB=m ++CONFIG_JOYSTICK_SPACEBALL=m ++CONFIG_JOYSTICK_STINGER=m ++CONFIG_JOYSTICK_TWIDJOY=m ++CONFIG_JOYSTICK_ZHENHUA=m ++CONFIG_JOYSTICK_DB9=m ++CONFIG_JOYSTICK_GAMECON=m ++CONFIG_JOYSTICK_TURBOGRAFX=m ++CONFIG_JOYSTICK_AS5011=m ++CONFIG_JOYSTICK_JOYDUMP=m ++CONFIG_JOYSTICK_XPAD=m ++CONFIG_JOYSTICK_XPAD_FF=y ++CONFIG_JOYSTICK_XPAD_LEDS=y ++CONFIG_JOYSTICK_WALKERA0701=m ++# CONFIG_JOYSTICK_PSXPAD_SPI is not set ++# CONFIG_JOYSTICK_PXRC is not set ++CONFIG_INPUT_TABLET=y ++CONFIG_TABLET_USB_ACECAD=m ++CONFIG_TABLET_USB_AIPTEK=m ++CONFIG_TABLET_USB_GTCO=m ++CONFIG_TABLET_USB_HANWANG=m ++CONFIG_TABLET_USB_KBTAB=m ++# CONFIG_TABLET_USB_PEGASUS is not set ++CONFIG_TABLET_SERIAL_WACOM4=m ++CONFIG_INPUT_TOUCHSCREEN=y ++CONFIG_TOUCHSCREEN_PROPERTIES=y ++CONFIG_TOUCHSCREEN_88PM860X=m ++CONFIG_TOUCHSCREEN_ADS7846=m ++CONFIG_TOUCHSCREEN_AD7877=m ++CONFIG_TOUCHSCREEN_AD7879=m ++CONFIG_TOUCHSCREEN_AD7879_I2C=m ++CONFIG_TOUCHSCREEN_AD7879_SPI=m ++# CONFIG_TOUCHSCREEN_ADC is not set ++CONFIG_TOUCHSCREEN_ATMEL_MXT=m ++# CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set ++CONFIG_TOUCHSCREEN_AUO_PIXCIR=m ++CONFIG_TOUCHSCREEN_BU21013=m ++# CONFIG_TOUCHSCREEN_BU21029 is not set ++# CONFIG_TOUCHSCREEN_CHIPONE_ICN8505 is not set ++CONFIG_TOUCHSCREEN_CY8CTMG110=m ++CONFIG_TOUCHSCREEN_CYTTSP_CORE=m ++CONFIG_TOUCHSCREEN_CYTTSP_I2C=m ++CONFIG_TOUCHSCREEN_CYTTSP_SPI=m ++CONFIG_TOUCHSCREEN_CYTTSP4_CORE=m ++CONFIG_TOUCHSCREEN_CYTTSP4_I2C=m ++CONFIG_TOUCHSCREEN_CYTTSP4_SPI=m ++CONFIG_TOUCHSCREEN_DA9034=m ++CONFIG_TOUCHSCREEN_DA9052=m ++CONFIG_TOUCHSCREEN_DYNAPRO=m ++CONFIG_TOUCHSCREEN_HAMPSHIRE=m ++CONFIG_TOUCHSCREEN_EETI=m ++# CONFIG_TOUCHSCREEN_EGALAX_SERIAL is not set ++# CONFIG_TOUCHSCREEN_EXC3000 is not set ++CONFIG_TOUCHSCREEN_FUJITSU=m ++CONFIG_TOUCHSCREEN_GOODIX=m ++# CONFIG_TOUCHSCREEN_HIDEEP is not set ++CONFIG_TOUCHSCREEN_ILI210X=m ++# CONFIG_TOUCHSCREEN_S6SY761 is not set ++CONFIG_TOUCHSCREEN_GUNZE=m ++# CONFIG_TOUCHSCREEN_EKTF2127 is not set ++CONFIG_TOUCHSCREEN_ELAN=m ++CONFIG_TOUCHSCREEN_ELO=m ++CONFIG_TOUCHSCREEN_WACOM_W8001=m ++CONFIG_TOUCHSCREEN_WACOM_I2C=m ++CONFIG_TOUCHSCREEN_MAX11801=m ++CONFIG_TOUCHSCREEN_MCS5000=m ++CONFIG_TOUCHSCREEN_MMS114=m ++# CONFIG_TOUCHSCREEN_MELFAS_MIP4 is not set ++CONFIG_TOUCHSCREEN_MTOUCH=m ++CONFIG_TOUCHSCREEN_INEXIO=m ++CONFIG_TOUCHSCREEN_MK712=m ++CONFIG_TOUCHSCREEN_PENMOUNT=m ++CONFIG_TOUCHSCREEN_EDT_FT5X06=m ++CONFIG_TOUCHSCREEN_TOUCHRIGHT=m ++CONFIG_TOUCHSCREEN_TOUCHWIN=m ++CONFIG_TOUCHSCREEN_TI_AM335X_TSC=m ++CONFIG_TOUCHSCREEN_UCB1400=m ++CONFIG_TOUCHSCREEN_PIXCIR=m ++CONFIG_TOUCHSCREEN_WDT87XX_I2C=m ++CONFIG_TOUCHSCREEN_WM831X=m ++CONFIG_TOUCHSCREEN_WM97XX=m ++CONFIG_TOUCHSCREEN_WM9705=y ++CONFIG_TOUCHSCREEN_WM9712=y ++CONFIG_TOUCHSCREEN_WM9713=y ++CONFIG_TOUCHSCREEN_USB_COMPOSITE=m ++CONFIG_TOUCHSCREEN_MC13783=m ++CONFIG_TOUCHSCREEN_USB_EGALAX=y ++CONFIG_TOUCHSCREEN_USB_PANJIT=y ++CONFIG_TOUCHSCREEN_USB_3M=y ++CONFIG_TOUCHSCREEN_USB_ITM=y ++CONFIG_TOUCHSCREEN_USB_ETURBO=y ++CONFIG_TOUCHSCREEN_USB_GUNZE=y ++CONFIG_TOUCHSCREEN_USB_DMC_TSC10=y ++CONFIG_TOUCHSCREEN_USB_IRTOUCH=y ++CONFIG_TOUCHSCREEN_USB_IDEALTEK=y ++CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y ++CONFIG_TOUCHSCREEN_USB_GOTOP=y ++CONFIG_TOUCHSCREEN_USB_JASTEC=y ++CONFIG_TOUCHSCREEN_USB_ELO=y ++CONFIG_TOUCHSCREEN_USB_E2I=y ++CONFIG_TOUCHSCREEN_USB_ZYTRONIC=y ++CONFIG_TOUCHSCREEN_USB_ETT_TC45USB=y ++CONFIG_TOUCHSCREEN_USB_NEXIO=y ++CONFIG_TOUCHSCREEN_USB_EASYTOUCH=y ++CONFIG_TOUCHSCREEN_TOUCHIT213=m ++CONFIG_TOUCHSCREEN_TSC_SERIO=m ++CONFIG_TOUCHSCREEN_TSC200X_CORE=m ++CONFIG_TOUCHSCREEN_TSC2004=m ++CONFIG_TOUCHSCREEN_TSC2005=m ++CONFIG_TOUCHSCREEN_TSC2007=m ++# CONFIG_TOUCHSCREEN_TSC2007_IIO is not set ++CONFIG_TOUCHSCREEN_PCAP=m ++# CONFIG_TOUCHSCREEN_RM_TS is not set ++# CONFIG_TOUCHSCREEN_SILEAD is not set ++# CONFIG_TOUCHSCREEN_SIS_I2C is not set ++CONFIG_TOUCHSCREEN_ST1232=m ++# CONFIG_TOUCHSCREEN_STMFTS is not set ++CONFIG_TOUCHSCREEN_SUR40=m ++# CONFIG_TOUCHSCREEN_SURFACE3_SPI is not set ++CONFIG_TOUCHSCREEN_SX8654=m ++CONFIG_TOUCHSCREEN_TPS6507X=m ++# CONFIG_TOUCHSCREEN_ZET6223 is not set ++CONFIG_TOUCHSCREEN_ZFORCE=m ++CONFIG_TOUCHSCREEN_ROHM_BU21023=m ++CONFIG_INPUT_MISC=y ++CONFIG_INPUT_88PM860X_ONKEY=m ++CONFIG_INPUT_88PM80X_ONKEY=m ++CONFIG_INPUT_AD714X=m ++CONFIG_INPUT_AD714X_I2C=m ++CONFIG_INPUT_AD714X_SPI=m ++CONFIG_INPUT_ARIZONA_HAPTICS=m ++CONFIG_INPUT_BMA150=m ++CONFIG_INPUT_E3X0_BUTTON=m ++CONFIG_INPUT_PCSPKR=m ++CONFIG_INPUT_MAX77693_HAPTIC=m ++CONFIG_INPUT_MAX8925_ONKEY=m ++CONFIG_INPUT_MAX8997_HAPTIC=m ++CONFIG_INPUT_MC13783_PWRBUTTON=m ++CONFIG_INPUT_MMA8450=m ++CONFIG_INPUT_APANEL=m ++CONFIG_INPUT_GP2A=m ++CONFIG_INPUT_GPIO_BEEPER=m ++# CONFIG_INPUT_GPIO_DECODER is not set ++CONFIG_INPUT_ATLAS_BTNS=m ++CONFIG_INPUT_ATI_REMOTE2=m ++CONFIG_INPUT_KEYSPAN_REMOTE=m ++CONFIG_INPUT_KXTJ9=m ++# CONFIG_INPUT_KXTJ9_POLLED_MODE is not set ++CONFIG_INPUT_POWERMATE=m ++CONFIG_INPUT_YEALINK=m ++CONFIG_INPUT_CM109=m ++CONFIG_INPUT_REGULATOR_HAPTIC=m ++CONFIG_INPUT_RETU_PWRBUTTON=m ++CONFIG_INPUT_TWL4030_PWRBUTTON=m ++CONFIG_INPUT_TWL4030_VIBRA=m ++CONFIG_INPUT_TWL6040_VIBRA=m ++CONFIG_INPUT_UINPUT=y ++CONFIG_INPUT_PALMAS_PWRBUTTON=m ++CONFIG_INPUT_PCF50633_PMU=m ++CONFIG_INPUT_PCF8574=m ++CONFIG_INPUT_PWM_BEEPER=m ++# CONFIG_INPUT_PWM_VIBRA is not set ++CONFIG_INPUT_GPIO_ROTARY_ENCODER=m ++CONFIG_INPUT_DA9052_ONKEY=m ++CONFIG_INPUT_DA9055_ONKEY=m ++CONFIG_INPUT_DA9063_ONKEY=m ++CONFIG_INPUT_WM831X_ON=m ++CONFIG_INPUT_PCAP=m ++CONFIG_INPUT_ADXL34X=m ++CONFIG_INPUT_ADXL34X_I2C=m ++CONFIG_INPUT_ADXL34X_SPI=m ++CONFIG_INPUT_IMS_PCU=m ++CONFIG_INPUT_CMA3000=m ++CONFIG_INPUT_CMA3000_I2C=m ++CONFIG_INPUT_XEN_KBDDEV_FRONTEND=m ++CONFIG_INPUT_IDEAPAD_SLIDEBAR=m ++CONFIG_INPUT_SOC_BUTTON_ARRAY=m ++CONFIG_INPUT_DRV260X_HAPTICS=m ++CONFIG_INPUT_DRV2665_HAPTICS=m ++CONFIG_INPUT_DRV2667_HAPTICS=m ++CONFIG_RMI4_CORE=m ++# CONFIG_RMI4_I2C is not set ++# CONFIG_RMI4_SPI is not set ++# CONFIG_RMI4_SMB is not set ++CONFIG_RMI4_F03=y ++CONFIG_RMI4_F03_SERIO=m ++CONFIG_RMI4_2D_SENSOR=y ++CONFIG_RMI4_F11=y ++CONFIG_RMI4_F12=y ++CONFIG_RMI4_F30=y ++# CONFIG_RMI4_F34 is not set ++# CONFIG_RMI4_F54 is not set ++# CONFIG_RMI4_F55 is not set ++ ++# ++# Hardware I/O ports ++# ++CONFIG_SERIO=y ++CONFIG_ARCH_MIGHT_HAVE_PC_SERIO=y ++CONFIG_SERIO_I8042=y ++CONFIG_SERIO_SERPORT=m ++CONFIG_SERIO_CT82C710=m ++CONFIG_SERIO_PARKBD=m ++CONFIG_SERIO_PCIPS2=m ++CONFIG_SERIO_LIBPS2=y ++CONFIG_SERIO_RAW=m ++CONFIG_SERIO_ALTERA_PS2=m ++CONFIG_SERIO_PS2MULT=m ++CONFIG_SERIO_ARC_PS2=m ++# CONFIG_SERIO_OLPC_APSP is not set ++CONFIG_HYPERV_KEYBOARD=m ++# CONFIG_SERIO_GPIO_PS2 is not set ++CONFIG_USERIO=m ++CONFIG_GAMEPORT=m ++CONFIG_GAMEPORT_NS558=m ++CONFIG_GAMEPORT_L4=m ++CONFIG_GAMEPORT_EMU10K1=m ++CONFIG_GAMEPORT_FM801=m ++ ++# ++# Character devices ++# ++CONFIG_TTY=y ++CONFIG_VT=y ++CONFIG_CONSOLE_TRANSLATIONS=y ++CONFIG_VT_CONSOLE=y ++CONFIG_VT_CONSOLE_SLEEP=y ++CONFIG_HW_CONSOLE=y ++CONFIG_VT_HW_CONSOLE_BINDING=y ++CONFIG_UNIX98_PTYS=y ++CONFIG_LEGACY_PTYS=y ++CONFIG_LEGACY_PTY_COUNT=0 ++CONFIG_SERIAL_NONSTANDARD=y ++CONFIG_ROCKETPORT=m ++CONFIG_CYCLADES=m ++# CONFIG_CYZ_INTR is not set ++CONFIG_MOXA_INTELLIO=m ++CONFIG_MOXA_SMARTIO=m ++CONFIG_SYNCLINK=m ++CONFIG_SYNCLINKMP=m ++CONFIG_SYNCLINK_GT=m ++CONFIG_NOZOMI=m ++CONFIG_ISI=m ++CONFIG_N_HDLC=m ++CONFIG_N_GSM=m ++CONFIG_TRACE_ROUTER=m ++CONFIG_TRACE_SINK=m ++CONFIG_DEVMEM=y ++# CONFIG_DEVKMEM is not set ++ ++# ++# Serial drivers ++# ++CONFIG_SERIAL_EARLYCON=y ++CONFIG_SERIAL_8250=y ++# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set ++CONFIG_SERIAL_8250_PNP=y ++# CONFIG_SERIAL_8250_FINTEK is not set ++CONFIG_SERIAL_8250_CONSOLE=y ++CONFIG_SERIAL_8250_DMA=y ++CONFIG_SERIAL_8250_PCI=y ++CONFIG_SERIAL_8250_EXAR=y ++CONFIG_SERIAL_8250_CS=m ++# CONFIG_SERIAL_8250_MEN_MCB is not set ++CONFIG_SERIAL_8250_NR_UARTS=48 ++CONFIG_SERIAL_8250_RUNTIME_UARTS=32 ++CONFIG_SERIAL_8250_EXTENDED=y ++CONFIG_SERIAL_8250_MANY_PORTS=y ++CONFIG_SERIAL_8250_SHARE_IRQ=y ++# CONFIG_SERIAL_8250_DETECT_IRQ is not set ++CONFIG_SERIAL_8250_RSA=y ++CONFIG_SERIAL_8250_DW=m ++CONFIG_SERIAL_8250_RT288X=y ++CONFIG_SERIAL_8250_LPSS=y ++CONFIG_SERIAL_8250_MID=m ++# CONFIG_SERIAL_8250_MOXA is not set ++ ++# ++# Non-8250 serial port support ++# ++CONFIG_SERIAL_KGDB_NMI=y ++CONFIG_SERIAL_MAX3100=m ++CONFIG_SERIAL_MAX310X=y ++CONFIG_SERIAL_UARTLITE=m ++CONFIG_SERIAL_UARTLITE_NR_UARTS=1 ++CONFIG_SERIAL_CORE=y ++CONFIG_SERIAL_CORE_CONSOLE=y ++CONFIG_CONSOLE_POLL=y ++CONFIG_SERIAL_JSM=m ++CONFIG_SERIAL_SCCNXP=y ++CONFIG_SERIAL_SCCNXP_CONSOLE=y ++CONFIG_SERIAL_SC16IS7XX_CORE=m ++CONFIG_SERIAL_SC16IS7XX=m ++CONFIG_SERIAL_SC16IS7XX_I2C=y ++CONFIG_SERIAL_SC16IS7XX_SPI=y ++CONFIG_SERIAL_ALTERA_JTAGUART=m ++CONFIG_SERIAL_ALTERA_UART=m ++CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4 ++CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200 ++# CONFIG_SERIAL_IFX6X60 is not set ++CONFIG_SERIAL_ARC=m ++CONFIG_SERIAL_ARC_NR_PORTS=1 ++CONFIG_SERIAL_RP2=m ++CONFIG_SERIAL_RP2_NR_UARTS=32 ++CONFIG_SERIAL_FSL_LPUART=m ++CONFIG_SERIAL_MEN_Z135=m ++# CONFIG_SERIAL_DEV_BUS is not set ++CONFIG_TTY_PRINTK=y ++CONFIG_TTY_PRINTK_LEVEL=6 ++CONFIG_PRINTER=m ++# CONFIG_LP_CONSOLE is not set ++CONFIG_PPDEV=m ++CONFIG_HVC_DRIVER=y ++CONFIG_HVC_IRQ=y ++CONFIG_HVC_XEN=y ++CONFIG_HVC_XEN_FRONTEND=y ++CONFIG_VIRTIO_CONSOLE=y ++CONFIG_IPMI_HANDLER=m ++CONFIG_IPMI_DMI_DECODE=y ++# CONFIG_IPMI_PANIC_EVENT is not set ++CONFIG_IPMI_DEVICE_INTERFACE=m ++CONFIG_IPMI_SI=m ++CONFIG_IPMI_SSIF=m ++CONFIG_IPMI_WATCHDOG=m ++CONFIG_IPMI_POWEROFF=m ++CONFIG_HW_RANDOM=y ++CONFIG_HW_RANDOM_TIMERIOMEM=m ++CONFIG_HW_RANDOM_INTEL=m ++CONFIG_HW_RANDOM_AMD=m ++CONFIG_HW_RANDOM_VIA=m ++CONFIG_HW_RANDOM_VIRTIO=m ++CONFIG_NVRAM=m ++CONFIG_R3964=m ++CONFIG_APPLICOM=m ++ ++# ++# PCMCIA character devices ++# ++CONFIG_SYNCLINK_CS=m ++CONFIG_CARDMAN_4000=m ++CONFIG_CARDMAN_4040=m ++# CONFIG_SCR24X is not set ++CONFIG_IPWIRELESS=m ++CONFIG_MWAVE=m ++CONFIG_RAW_DRIVER=m ++CONFIG_MAX_RAW_DEVS=256 ++CONFIG_HPET=y ++CONFIG_HPET_MMAP=y ++CONFIG_HPET_MMAP_DEFAULT=y ++CONFIG_HANGCHECK_TIMER=m ++CONFIG_TCG_TPM=y ++CONFIG_HW_RANDOM_TPM=y ++CONFIG_TCG_TIS_CORE=y ++CONFIG_TCG_TIS=y ++# CONFIG_TCG_TIS_SPI is not set ++CONFIG_TCG_TIS_I2C_ATMEL=m ++CONFIG_TCG_TIS_I2C_INFINEON=m ++CONFIG_TCG_TIS_I2C_NUVOTON=m ++CONFIG_TCG_NSC=m ++CONFIG_TCG_ATMEL=m ++CONFIG_TCG_INFINEON=m ++CONFIG_TCG_XEN=m ++CONFIG_TCG_CRB=y ++# CONFIG_TCG_VTPM_PROXY is not set ++CONFIG_TCG_TIS_ST33ZP24=m ++CONFIG_TCG_TIS_ST33ZP24_I2C=m ++CONFIG_TCG_TIS_ST33ZP24_SPI=m ++CONFIG_TELCLOCK=m ++CONFIG_DEVPORT=y ++CONFIG_XILLYBUS=m ++CONFIG_XILLYBUS_PCIE=m ++# CONFIG_RANDOM_TRUST_CPU is not set ++ ++# ++# I2C support ++# ++CONFIG_I2C=y ++CONFIG_ACPI_I2C_OPREGION=y ++CONFIG_I2C_BOARDINFO=y ++CONFIG_I2C_COMPAT=y ++CONFIG_I2C_CHARDEV=y ++CONFIG_I2C_MUX=m ++ ++# ++# Multiplexer I2C Chip support ++# ++CONFIG_I2C_MUX_GPIO=m ++# CONFIG_I2C_MUX_LTC4306 is not set ++CONFIG_I2C_MUX_PCA9541=m ++CONFIG_I2C_MUX_PCA954x=m ++CONFIG_I2C_MUX_REG=m ++# CONFIG_I2C_MUX_MLXCPLD is not set ++CONFIG_I2C_HELPER_AUTO=y ++CONFIG_I2C_SMBUS=m ++CONFIG_I2C_ALGOBIT=m ++CONFIG_I2C_ALGOPCA=m ++ ++# ++# I2C Hardware Bus support ++# ++ ++# ++# PC SMBus host controller drivers ++# ++CONFIG_I2C_ALI1535=m ++CONFIG_I2C_ALI1563=m ++CONFIG_I2C_ALI15X3=m ++CONFIG_I2C_AMD756=m ++CONFIG_I2C_AMD756_S4882=m ++CONFIG_I2C_AMD8111=m ++CONFIG_I2C_I801=m ++CONFIG_I2C_ISCH=m ++CONFIG_I2C_ISMT=m ++CONFIG_I2C_PIIX4=m ++CONFIG_I2C_NFORCE2=m ++CONFIG_I2C_NFORCE2_S4985=m ++# CONFIG_I2C_NVIDIA_GPU is not set ++CONFIG_I2C_SIS5595=m ++CONFIG_I2C_SIS630=m ++CONFIG_I2C_SIS96X=m ++CONFIG_I2C_VIA=m ++CONFIG_I2C_VIAPRO=m ++ ++# ++# ACPI drivers ++# ++CONFIG_I2C_SCMI=m ++ ++# ++# I2C system bus drivers (mostly embedded / system-on-chip) ++# ++CONFIG_I2C_CBUS_GPIO=m ++CONFIG_I2C_DESIGNWARE_CORE=y ++CONFIG_I2C_DESIGNWARE_PLATFORM=y ++# CONFIG_I2C_DESIGNWARE_SLAVE is not set ++CONFIG_I2C_DESIGNWARE_PCI=m ++CONFIG_I2C_DESIGNWARE_BAYTRAIL=y ++CONFIG_I2C_EMEV2=m ++CONFIG_I2C_GPIO=m ++# CONFIG_I2C_GPIO_FAULT_INJECTOR is not set ++CONFIG_I2C_KEMPLD=m ++CONFIG_I2C_OCORES=m ++CONFIG_I2C_PCA_PLATFORM=m ++CONFIG_I2C_SIMTEC=m ++CONFIG_I2C_XILINX=m ++ ++# ++# External I2C/SMBus adapter drivers ++# ++CONFIG_I2C_DIOLAN_U2C=m ++CONFIG_I2C_DLN2=m ++CONFIG_I2C_PARPORT=m ++CONFIG_I2C_PARPORT_LIGHT=m ++CONFIG_I2C_ROBOTFUZZ_OSIF=m ++CONFIG_I2C_TAOS_EVM=m ++CONFIG_I2C_TINY_USB=m ++CONFIG_I2C_VIPERBOARD=m ++ ++# ++# Other I2C/SMBus bus drivers ++# ++# CONFIG_I2C_MLXCPLD is not set ++CONFIG_I2C_CROS_EC_TUNNEL=m ++CONFIG_I2C_STUB=m ++CONFIG_I2C_SLAVE=y ++# CONFIG_I2C_SLAVE_EEPROM is not set ++# CONFIG_I2C_DEBUG_CORE is not set ++# CONFIG_I2C_DEBUG_ALGO is not set ++# CONFIG_I2C_DEBUG_BUS is not set ++# CONFIG_I3C is not set ++CONFIG_SPI=y ++# CONFIG_SPI_DEBUG is not set ++CONFIG_SPI_MASTER=y ++CONFIG_SPI_MEM=y ++ ++# ++# SPI Master Controller Drivers ++# ++CONFIG_SPI_ALTERA=m ++# CONFIG_SPI_AXI_SPI_ENGINE is not set ++CONFIG_SPI_BITBANG=m ++CONFIG_SPI_BUTTERFLY=m ++CONFIG_SPI_CADENCE=m ++CONFIG_SPI_DESIGNWARE=m ++CONFIG_SPI_DW_PCI=m ++CONFIG_SPI_DW_MID_DMA=y ++CONFIG_SPI_DW_MMIO=m ++CONFIG_SPI_DLN2=m ++CONFIG_SPI_GPIO=m ++CONFIG_SPI_LM70_LLP=m ++CONFIG_SPI_OC_TINY=m ++CONFIG_SPI_PXA2XX=m ++CONFIG_SPI_PXA2XX_PCI=m ++# CONFIG_SPI_ROCKCHIP is not set ++CONFIG_SPI_SC18IS602=m ++# CONFIG_SPI_MXIC is not set ++CONFIG_SPI_XCOMM=m ++# CONFIG_SPI_XILINX is not set ++CONFIG_SPI_ZYNQMP_GQSPI=m ++ ++# ++# SPI Protocol Masters ++# ++CONFIG_SPI_SPIDEV=m ++# CONFIG_SPI_LOOPBACK_TEST is not set ++CONFIG_SPI_TLE62X0=m ++# CONFIG_SPI_SLAVE is not set ++CONFIG_SPMI=m ++CONFIG_HSI=m ++CONFIG_HSI_BOARDINFO=y ++ ++# ++# HSI controllers ++# ++ ++# ++# HSI clients ++# ++CONFIG_HSI_CHAR=m ++CONFIG_PPS=y ++# CONFIG_PPS_DEBUG is not set ++ ++# ++# PPS clients support ++# ++# CONFIG_PPS_CLIENT_KTIMER is not set ++CONFIG_PPS_CLIENT_LDISC=m ++CONFIG_PPS_CLIENT_PARPORT=m ++CONFIG_PPS_CLIENT_GPIO=m ++ ++# ++# PPS generators support ++# ++ ++# ++# PTP clock support ++# ++CONFIG_PTP_1588_CLOCK=y ++ ++# ++# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. ++# ++CONFIG_PTP_1588_CLOCK_KVM=m ++CONFIG_PINCTRL=y ++CONFIG_PINMUX=y ++CONFIG_PINCONF=y ++CONFIG_GENERIC_PINCONF=y ++# CONFIG_DEBUG_PINCTRL is not set ++CONFIG_PINCTRL_AMD=y ++# CONFIG_PINCTRL_MCP23S08 is not set ++CONFIG_PINCTRL_SX150X=y ++CONFIG_PINCTRL_BAYTRAIL=y ++CONFIG_PINCTRL_CHERRYVIEW=m ++CONFIG_PINCTRL_INTEL=m ++CONFIG_PINCTRL_BROXTON=m ++# CONFIG_PINCTRL_CANNONLAKE is not set ++# CONFIG_PINCTRL_CEDARFORK is not set ++# CONFIG_PINCTRL_DENVERTON is not set ++# CONFIG_PINCTRL_GEMINILAKE is not set ++# CONFIG_PINCTRL_ICELAKE is not set ++# CONFIG_PINCTRL_LEWISBURG is not set ++CONFIG_PINCTRL_SUNRISEPOINT=m ++CONFIG_GPIOLIB=y ++CONFIG_GPIOLIB_FASTPATH_LIMIT=512 ++CONFIG_GPIO_ACPI=y ++CONFIG_GPIOLIB_IRQCHIP=y ++# CONFIG_DEBUG_GPIO is not set ++CONFIG_GPIO_SYSFS=y ++CONFIG_GPIO_GENERIC=m ++CONFIG_GPIO_MAX730X=m ++ ++# ++# Memory mapped GPIO drivers ++# ++CONFIG_GPIO_AMDPT=m ++CONFIG_GPIO_DWAPB=m ++# CONFIG_GPIO_EXAR is not set ++CONFIG_GPIO_GENERIC_PLATFORM=m ++CONFIG_GPIO_ICH=m ++CONFIG_GPIO_LYNXPOINT=y ++# CONFIG_GPIO_MB86S7X is not set ++# CONFIG_GPIO_MENZ127 is not set ++# CONFIG_GPIO_MOCKUP is not set ++CONFIG_GPIO_VX855=m ++ ++# ++# Port-mapped I/O GPIO drivers ++# ++CONFIG_GPIO_F7188X=m ++CONFIG_GPIO_IT87=m ++CONFIG_GPIO_SCH=m ++CONFIG_GPIO_SCH311X=m ++# CONFIG_GPIO_WINBOND is not set ++# CONFIG_GPIO_WS16C48 is not set ++ ++# ++# I2C GPIO expanders ++# ++CONFIG_GPIO_ADP5588=m ++CONFIG_GPIO_MAX7300=m ++CONFIG_GPIO_MAX732X=m ++CONFIG_GPIO_PCA953X=m ++CONFIG_GPIO_PCF857X=m ++# CONFIG_GPIO_TPIC2810 is not set ++ ++# ++# MFD GPIO expanders ++# ++CONFIG_GPIO_ADP5520=m ++CONFIG_GPIO_ARIZONA=m ++CONFIG_GPIO_CRYSTAL_COVE=m ++CONFIG_GPIO_DA9052=m ++CONFIG_GPIO_DA9055=m ++CONFIG_GPIO_DLN2=m ++CONFIG_GPIO_JANZ_TTL=m ++CONFIG_GPIO_KEMPLD=m ++CONFIG_GPIO_LP3943=m ++CONFIG_GPIO_PALMAS=y ++CONFIG_GPIO_RC5T583=y ++CONFIG_GPIO_TPS6586X=y ++CONFIG_GPIO_TPS65910=y ++CONFIG_GPIO_TPS65912=m ++CONFIG_GPIO_TWL4030=m ++CONFIG_GPIO_TWL6040=m ++CONFIG_GPIO_UCB1400=m ++CONFIG_GPIO_WM831X=m ++CONFIG_GPIO_WM8350=m ++CONFIG_GPIO_WM8994=m ++ ++# ++# PCI GPIO expanders ++# ++CONFIG_GPIO_AMD8111=m ++CONFIG_GPIO_ML_IOH=m ++# CONFIG_GPIO_PCI_IDIO_16 is not set ++# CONFIG_GPIO_PCIE_IDIO_24 is not set ++CONFIG_GPIO_RDC321X=m ++ ++# ++# SPI GPIO expanders ++# ++# CONFIG_GPIO_MAX3191X is not set ++CONFIG_GPIO_MAX7301=m ++CONFIG_GPIO_MC33880=m ++# CONFIG_GPIO_PISOSR is not set ++# CONFIG_GPIO_XRA1403 is not set ++ ++# ++# USB GPIO expanders ++# ++CONFIG_GPIO_VIPERBOARD=m ++CONFIG_W1=m ++CONFIG_W1_CON=y ++ ++# ++# 1-wire Bus Masters ++# ++CONFIG_W1_MASTER_MATROX=m ++CONFIG_W1_MASTER_DS2490=m ++CONFIG_W1_MASTER_DS2482=m ++CONFIG_W1_MASTER_DS1WM=m ++CONFIG_W1_MASTER_GPIO=m ++ ++# ++# 1-wire Slaves ++# ++CONFIG_W1_SLAVE_THERM=m ++CONFIG_W1_SLAVE_SMEM=m ++# CONFIG_W1_SLAVE_DS2405 is not set ++CONFIG_W1_SLAVE_DS2408=m ++CONFIG_W1_SLAVE_DS2408_READBACK=y ++CONFIG_W1_SLAVE_DS2413=m ++CONFIG_W1_SLAVE_DS2406=m ++CONFIG_W1_SLAVE_DS2423=m ++# CONFIG_W1_SLAVE_DS2805 is not set ++CONFIG_W1_SLAVE_DS2431=m ++CONFIG_W1_SLAVE_DS2433=m ++# CONFIG_W1_SLAVE_DS2433_CRC is not set ++# CONFIG_W1_SLAVE_DS2438 is not set ++CONFIG_W1_SLAVE_DS2780=m ++CONFIG_W1_SLAVE_DS2781=m ++CONFIG_W1_SLAVE_DS28E04=m ++# CONFIG_W1_SLAVE_DS28E17 is not set ++CONFIG_POWER_AVS=y ++CONFIG_POWER_RESET=y ++CONFIG_POWER_RESET_RESTART=y ++CONFIG_POWER_SUPPLY=y ++# CONFIG_POWER_SUPPLY_DEBUG is not set ++CONFIG_PDA_POWER=m ++CONFIG_GENERIC_ADC_BATTERY=m ++CONFIG_MAX8925_POWER=m ++CONFIG_WM831X_BACKUP=m ++CONFIG_WM831X_POWER=m ++CONFIG_WM8350_POWER=m ++CONFIG_TEST_POWER=m ++CONFIG_BATTERY_88PM860X=m ++# CONFIG_CHARGER_ADP5061 is not set ++CONFIG_BATTERY_DS2760=m ++CONFIG_BATTERY_DS2780=m ++CONFIG_BATTERY_DS2781=m ++CONFIG_BATTERY_DS2782=m ++CONFIG_BATTERY_SBS=m ++# CONFIG_CHARGER_SBS is not set ++# CONFIG_MANAGER_SBS is not set ++CONFIG_BATTERY_BQ27XXX=m ++CONFIG_BATTERY_BQ27XXX_I2C=m ++CONFIG_BATTERY_BQ27XXX_HDQ=m ++# CONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM is not set ++CONFIG_BATTERY_DA9030=m ++CONFIG_BATTERY_DA9052=m ++CONFIG_CHARGER_DA9150=m ++CONFIG_BATTERY_DA9150=m ++CONFIG_BATTERY_MAX17040=m ++CONFIG_BATTERY_MAX17042=m ++# CONFIG_BATTERY_MAX1721X is not set ++CONFIG_BATTERY_TWL4030_MADC=m ++CONFIG_CHARGER_88PM860X=m ++CONFIG_CHARGER_PCF50633=m ++CONFIG_BATTERY_RX51=m ++CONFIG_CHARGER_ISP1704=m ++CONFIG_CHARGER_MAX8903=m ++CONFIG_CHARGER_TWL4030=m ++CONFIG_CHARGER_LP8727=m ++CONFIG_CHARGER_LP8788=m ++CONFIG_CHARGER_GPIO=m ++CONFIG_CHARGER_MANAGER=y ++# CONFIG_CHARGER_LTC3651 is not set ++CONFIG_CHARGER_MAX14577=m ++CONFIG_CHARGER_MAX77693=m ++CONFIG_CHARGER_MAX8997=m ++CONFIG_CHARGER_MAX8998=m ++CONFIG_CHARGER_BQ2415X=m ++CONFIG_CHARGER_BQ24190=m ++CONFIG_CHARGER_BQ24257=m ++CONFIG_CHARGER_BQ24735=m ++CONFIG_CHARGER_BQ25890=m ++CONFIG_CHARGER_SMB347=m ++CONFIG_CHARGER_TPS65090=m ++CONFIG_BATTERY_GAUGE_LTC2941=m ++CONFIG_BATTERY_RT5033=m ++CONFIG_CHARGER_RT9455=m ++# CONFIG_CHARGER_CROS_USBPD is not set ++CONFIG_HWMON=y ++CONFIG_HWMON_VID=m ++# CONFIG_HWMON_DEBUG_CHIP is not set ++ ++# ++# Native drivers ++# ++CONFIG_SENSORS_ABITUGURU=m ++CONFIG_SENSORS_ABITUGURU3=m ++CONFIG_SENSORS_AD7314=m ++CONFIG_SENSORS_AD7414=m ++CONFIG_SENSORS_AD7418=m ++CONFIG_SENSORS_ADM1021=m ++CONFIG_SENSORS_ADM1025=m ++CONFIG_SENSORS_ADM1026=m ++CONFIG_SENSORS_ADM1029=m ++CONFIG_SENSORS_ADM1031=m ++CONFIG_SENSORS_ADM9240=m ++CONFIG_SENSORS_ADT7X10=m ++CONFIG_SENSORS_ADT7310=m ++CONFIG_SENSORS_ADT7410=m ++CONFIG_SENSORS_ADT7411=m ++CONFIG_SENSORS_ADT7462=m ++CONFIG_SENSORS_ADT7470=m ++CONFIG_SENSORS_ADT7475=m ++CONFIG_SENSORS_ASC7621=m ++CONFIG_SENSORS_K8TEMP=m ++CONFIG_SENSORS_K10TEMP=m ++CONFIG_SENSORS_FAM15H_POWER=m ++CONFIG_SENSORS_APPLESMC=m ++CONFIG_SENSORS_ASB100=m ++# CONFIG_SENSORS_ASPEED is not set ++CONFIG_SENSORS_ATXP1=m ++CONFIG_SENSORS_DS620=m ++CONFIG_SENSORS_DS1621=m ++CONFIG_SENSORS_DELL_SMM=m ++CONFIG_SENSORS_DA9052_ADC=m ++CONFIG_SENSORS_DA9055=m ++CONFIG_SENSORS_I5K_AMB=m ++CONFIG_SENSORS_F71805F=m ++CONFIG_SENSORS_F71882FG=m ++CONFIG_SENSORS_F75375S=m ++CONFIG_SENSORS_MC13783_ADC=m ++CONFIG_SENSORS_FSCHMD=m ++# CONFIG_SENSORS_FTSTEUTATES is not set ++CONFIG_SENSORS_GL518SM=m ++CONFIG_SENSORS_GL520SM=m ++CONFIG_SENSORS_G760A=m ++CONFIG_SENSORS_G762=m ++CONFIG_SENSORS_HIH6130=m ++CONFIG_SENSORS_IBMAEM=m ++CONFIG_SENSORS_IBMPEX=m ++CONFIG_SENSORS_IIO_HWMON=m ++CONFIG_SENSORS_I5500=m ++CONFIG_SENSORS_CORETEMP=m ++CONFIG_SENSORS_IT87=m ++CONFIG_SENSORS_JC42=m ++CONFIG_SENSORS_POWR1220=m ++CONFIG_SENSORS_LINEAGE=m ++CONFIG_SENSORS_LTC2945=m ++# CONFIG_SENSORS_LTC2990 is not set ++CONFIG_SENSORS_LTC4151=m ++CONFIG_SENSORS_LTC4215=m ++CONFIG_SENSORS_LTC4222=m ++CONFIG_SENSORS_LTC4245=m ++CONFIG_SENSORS_LTC4260=m ++CONFIG_SENSORS_LTC4261=m ++CONFIG_SENSORS_MAX1111=m ++CONFIG_SENSORS_MAX16065=m ++CONFIG_SENSORS_MAX1619=m ++CONFIG_SENSORS_MAX1668=m ++CONFIG_SENSORS_MAX197=m ++# CONFIG_SENSORS_MAX31722 is not set ++# CONFIG_SENSORS_MAX6621 is not set ++CONFIG_SENSORS_MAX6639=m ++CONFIG_SENSORS_MAX6642=m ++CONFIG_SENSORS_MAX6650=m ++CONFIG_SENSORS_MAX6697=m ++CONFIG_SENSORS_MAX31790=m ++CONFIG_SENSORS_MCP3021=m ++# CONFIG_SENSORS_TC654 is not set ++CONFIG_SENSORS_MENF21BMC_HWMON=m ++CONFIG_SENSORS_ADCXX=m ++CONFIG_SENSORS_LM63=m ++CONFIG_SENSORS_LM70=m ++CONFIG_SENSORS_LM73=m ++CONFIG_SENSORS_LM75=m ++CONFIG_SENSORS_LM77=m ++CONFIG_SENSORS_LM78=m ++CONFIG_SENSORS_LM80=m ++CONFIG_SENSORS_LM83=m ++CONFIG_SENSORS_LM85=m ++CONFIG_SENSORS_LM87=m ++CONFIG_SENSORS_LM90=m ++CONFIG_SENSORS_LM92=m ++CONFIG_SENSORS_LM93=m ++CONFIG_SENSORS_LM95234=m ++CONFIG_SENSORS_LM95241=m ++CONFIG_SENSORS_LM95245=m ++CONFIG_SENSORS_PC87360=m ++CONFIG_SENSORS_PC87427=m ++CONFIG_SENSORS_NTC_THERMISTOR=m ++CONFIG_SENSORS_NCT6683=m ++CONFIG_SENSORS_NCT6775=m ++CONFIG_SENSORS_NCT7802=m ++CONFIG_SENSORS_NCT7904=m ++# CONFIG_SENSORS_NPCM7XX is not set ++# CONFIG_SENSORS_OCC_P8_I2C is not set ++CONFIG_SENSORS_PCF8591=m ++CONFIG_PMBUS=m ++CONFIG_SENSORS_PMBUS=m ++CONFIG_SENSORS_ADM1275=m ++# CONFIG_SENSORS_IBM_CFFPS is not set ++# CONFIG_SENSORS_IR35221 is not set ++CONFIG_SENSORS_LM25066=m ++CONFIG_SENSORS_LTC2978=m ++CONFIG_SENSORS_LTC2978_REGULATOR=y ++# CONFIG_SENSORS_LTC3815 is not set ++CONFIG_SENSORS_MAX16064=m ++CONFIG_SENSORS_MAX20751=m ++# CONFIG_SENSORS_MAX31785 is not set ++CONFIG_SENSORS_MAX34440=m ++CONFIG_SENSORS_MAX8688=m ++CONFIG_SENSORS_TPS40422=m ++# CONFIG_SENSORS_TPS53679 is not set ++CONFIG_SENSORS_UCD9000=m ++CONFIG_SENSORS_UCD9200=m ++CONFIG_SENSORS_ZL6100=m ++CONFIG_SENSORS_SHT15=m ++CONFIG_SENSORS_SHT21=m ++# CONFIG_SENSORS_SHT3x is not set ++CONFIG_SENSORS_SHTC1=m ++CONFIG_SENSORS_SIS5595=m ++CONFIG_SENSORS_DME1737=m ++CONFIG_SENSORS_EMC1403=m ++CONFIG_SENSORS_EMC2103=m ++CONFIG_SENSORS_EMC6W201=m ++CONFIG_SENSORS_SMSC47M1=m ++CONFIG_SENSORS_SMSC47M192=m ++CONFIG_SENSORS_SMSC47B397=m ++CONFIG_SENSORS_SCH56XX_COMMON=m ++CONFIG_SENSORS_SCH5627=m ++CONFIG_SENSORS_SCH5636=m ++# CONFIG_SENSORS_STTS751 is not set ++CONFIG_SENSORS_SMM665=m ++CONFIG_SENSORS_ADC128D818=m ++CONFIG_SENSORS_ADS1015=m ++CONFIG_SENSORS_ADS7828=m ++CONFIG_SENSORS_ADS7871=m ++CONFIG_SENSORS_AMC6821=m ++CONFIG_SENSORS_INA209=m ++CONFIG_SENSORS_INA2XX=m ++# CONFIG_SENSORS_INA3221 is not set ++CONFIG_SENSORS_TC74=m ++CONFIG_SENSORS_THMC50=m ++CONFIG_SENSORS_TMP102=m ++CONFIG_SENSORS_TMP103=m ++# CONFIG_SENSORS_TMP108 is not set ++CONFIG_SENSORS_TMP401=m ++CONFIG_SENSORS_TMP421=m ++CONFIG_SENSORS_VIA_CPUTEMP=m ++CONFIG_SENSORS_VIA686A=m ++CONFIG_SENSORS_VT1211=m ++CONFIG_SENSORS_VT8231=m ++# CONFIG_SENSORS_W83773G is not set ++CONFIG_SENSORS_W83781D=m ++CONFIG_SENSORS_W83791D=m ++CONFIG_SENSORS_W83792D=m ++CONFIG_SENSORS_W83793=m ++CONFIG_SENSORS_W83795=m ++# CONFIG_SENSORS_W83795_FANCTRL is not set ++CONFIG_SENSORS_W83L785TS=m ++CONFIG_SENSORS_W83L786NG=m ++CONFIG_SENSORS_W83627HF=m ++CONFIG_SENSORS_W83627EHF=m ++CONFIG_SENSORS_WM831X=m ++CONFIG_SENSORS_WM8350=m ++# CONFIG_SENSORS_XGENE is not set ++ ++# ++# ACPI drivers ++# ++CONFIG_SENSORS_ACPI_POWER=m ++CONFIG_SENSORS_ATK0110=m ++CONFIG_THERMAL=y ++# CONFIG_THERMAL_STATISTICS is not set ++CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 ++CONFIG_THERMAL_HWMON=y ++CONFIG_THERMAL_WRITABLE_TRIPS=y ++CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y ++# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set ++# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set ++# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set ++CONFIG_THERMAL_GOV_FAIR_SHARE=y ++CONFIG_THERMAL_GOV_STEP_WISE=y ++CONFIG_THERMAL_GOV_BANG_BANG=y ++CONFIG_THERMAL_GOV_USER_SPACE=y ++CONFIG_THERMAL_GOV_POWER_ALLOCATOR=y ++# CONFIG_CLOCK_THERMAL is not set ++# CONFIG_DEVFREQ_THERMAL is not set ++CONFIG_THERMAL_EMULATION=y ++ ++# ++# Intel thermal drivers ++# ++CONFIG_INTEL_POWERCLAMP=m ++CONFIG_X86_PKG_TEMP_THERMAL=m ++CONFIG_INTEL_SOC_DTS_IOSF_CORE=m ++CONFIG_INTEL_SOC_DTS_THERMAL=m ++ ++# ++# ACPI INT340X thermal drivers ++# ++CONFIG_INT340X_THERMAL=m ++CONFIG_ACPI_THERMAL_REL=m ++# CONFIG_INT3406_THERMAL is not set ++CONFIG_INTEL_PCH_THERMAL=m ++# CONFIG_GENERIC_ADC_THERMAL is not set ++CONFIG_WATCHDOG=y ++CONFIG_WATCHDOG_CORE=y ++# CONFIG_WATCHDOG_NOWAYOUT is not set ++CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y ++# CONFIG_WATCHDOG_SYSFS is not set ++ ++# ++# Watchdog Device Drivers ++# ++CONFIG_SOFT_WATCHDOG=m ++CONFIG_DA9052_WATCHDOG=m ++CONFIG_DA9055_WATCHDOG=m ++CONFIG_DA9063_WATCHDOG=m ++CONFIG_DA9062_WATCHDOG=m ++CONFIG_MENF21BMC_WATCHDOG=m ++# CONFIG_MENZ069_WATCHDOG is not set ++# CONFIG_WDAT_WDT is not set ++CONFIG_WM831X_WATCHDOG=m ++CONFIG_WM8350_WATCHDOG=m ++CONFIG_XILINX_WATCHDOG=m ++# CONFIG_ZIIRAVE_WATCHDOG is not set ++CONFIG_CADENCE_WATCHDOG=m ++CONFIG_DW_WATCHDOG=m ++CONFIG_TWL4030_WATCHDOG=m ++CONFIG_MAX63XX_WATCHDOG=m ++CONFIG_RETU_WATCHDOG=m ++CONFIG_ACQUIRE_WDT=m ++CONFIG_ADVANTECH_WDT=m ++CONFIG_ALIM1535_WDT=m ++CONFIG_ALIM7101_WDT=m ++# CONFIG_EBC_C384_WDT is not set ++CONFIG_F71808E_WDT=m ++CONFIG_SP5100_TCO=m ++CONFIG_SBC_FITPC2_WATCHDOG=m ++CONFIG_EUROTECH_WDT=m ++CONFIG_IB700_WDT=m ++CONFIG_IBMASR=m ++CONFIG_WAFER_WDT=m ++CONFIG_I6300ESB_WDT=m ++CONFIG_IE6XX_WDT=m ++CONFIG_ITCO_WDT=m ++CONFIG_ITCO_VENDOR_SUPPORT=y ++CONFIG_IT8712F_WDT=m ++CONFIG_IT87_WDT=m ++CONFIG_HP_WATCHDOG=m ++CONFIG_KEMPLD_WDT=m ++CONFIG_HPWDT_NMI_DECODING=y ++CONFIG_SC1200_WDT=m ++CONFIG_PC87413_WDT=m ++CONFIG_NV_TCO=m ++CONFIG_60XX_WDT=m ++CONFIG_CPU5_WDT=m ++CONFIG_SMSC_SCH311X_WDT=m ++CONFIG_SMSC37B787_WDT=m ++# CONFIG_TQMX86_WDT is not set ++CONFIG_VIA_WDT=m ++CONFIG_W83627HF_WDT=m ++CONFIG_W83877F_WDT=m ++CONFIG_W83977F_WDT=m ++CONFIG_MACHZ_WDT=m ++CONFIG_SBC_EPX_C3_WATCHDOG=m ++# CONFIG_INTEL_MEI_WDT is not set ++# CONFIG_NI903X_WDT is not set ++# CONFIG_NIC7018_WDT is not set ++CONFIG_MEN_A21_WDT=m ++CONFIG_XEN_WDT=m ++ ++# ++# PCI-based Watchdog Cards ++# ++CONFIG_PCIPCWATCHDOG=m ++CONFIG_WDTPCI=m ++ ++# ++# USB-based Watchdog Cards ++# ++CONFIG_USBPCWATCHDOG=m ++ ++# ++# Watchdog Pretimeout Governors ++# ++# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set ++CONFIG_SSB_POSSIBLE=y ++CONFIG_SSB=m ++CONFIG_SSB_SPROM=y ++CONFIG_SSB_BLOCKIO=y ++CONFIG_SSB_PCIHOST_POSSIBLE=y ++CONFIG_SSB_PCIHOST=y ++CONFIG_SSB_B43_PCI_BRIDGE=y ++CONFIG_SSB_PCMCIAHOST_POSSIBLE=y ++# CONFIG_SSB_PCMCIAHOST is not set ++CONFIG_SSB_SDIOHOST_POSSIBLE=y ++CONFIG_SSB_SDIOHOST=y ++CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y ++CONFIG_SSB_DRIVER_PCICORE=y ++CONFIG_SSB_DRIVER_GPIO=y ++CONFIG_BCMA_POSSIBLE=y ++CONFIG_BCMA=m ++CONFIG_BCMA_BLOCKIO=y ++CONFIG_BCMA_HOST_PCI_POSSIBLE=y ++CONFIG_BCMA_HOST_PCI=y ++CONFIG_BCMA_HOST_SOC=y ++CONFIG_BCMA_DRIVER_PCI=y ++CONFIG_BCMA_SFLASH=y ++CONFIG_BCMA_DRIVER_GMAC_CMN=y ++CONFIG_BCMA_DRIVER_GPIO=y ++# CONFIG_BCMA_DEBUG is not set ++ ++# ++# Multifunction device drivers ++# ++CONFIG_MFD_CORE=y ++CONFIG_MFD_AS3711=y ++CONFIG_PMIC_ADP5520=y ++CONFIG_MFD_AAT2870_CORE=y ++# CONFIG_MFD_AT91_USART is not set ++CONFIG_MFD_BCM590XX=m ++# CONFIG_MFD_BD9571MWV is not set ++# CONFIG_MFD_AXP20X_I2C is not set ++CONFIG_MFD_CROS_EC=m ++# CONFIG_MFD_CROS_EC_CHARDEV is not set ++# CONFIG_MFD_MADERA is not set ++CONFIG_PMIC_DA903X=y ++CONFIG_PMIC_DA9052=y ++CONFIG_MFD_DA9052_SPI=y ++CONFIG_MFD_DA9052_I2C=y ++CONFIG_MFD_DA9055=y ++CONFIG_MFD_DA9062=m ++CONFIG_MFD_DA9063=y ++CONFIG_MFD_DA9150=m ++CONFIG_MFD_DLN2=m ++CONFIG_MFD_MC13XXX=m ++CONFIG_MFD_MC13XXX_SPI=m ++CONFIG_MFD_MC13XXX_I2C=m ++CONFIG_HTC_PASIC3=m ++CONFIG_HTC_I2CPLD=y ++CONFIG_MFD_INTEL_QUARK_I2C_GPIO=m ++CONFIG_LPC_ICH=m ++CONFIG_LPC_SCH=m ++CONFIG_INTEL_SOC_PMIC=y ++# CONFIG_INTEL_SOC_PMIC_BXTWC is not set ++# CONFIG_INTEL_SOC_PMIC_CHTWC is not set ++# CONFIG_INTEL_SOC_PMIC_CHTDC_TI is not set ++CONFIG_MFD_INTEL_LPSS=m ++CONFIG_MFD_INTEL_LPSS_ACPI=m ++CONFIG_MFD_INTEL_LPSS_PCI=m ++CONFIG_MFD_JANZ_CMODIO=m ++CONFIG_MFD_KEMPLD=m ++CONFIG_MFD_88PM800=m ++CONFIG_MFD_88PM805=m ++CONFIG_MFD_88PM860X=y ++CONFIG_MFD_MAX14577=y ++CONFIG_MFD_MAX77693=y ++CONFIG_MFD_MAX77843=y ++CONFIG_MFD_MAX8907=m ++CONFIG_MFD_MAX8925=y ++CONFIG_MFD_MAX8997=y ++CONFIG_MFD_MAX8998=y ++CONFIG_MFD_MT6397=m ++CONFIG_MFD_MENF21BMC=m ++CONFIG_EZX_PCAP=y ++CONFIG_MFD_VIPERBOARD=m ++CONFIG_MFD_RETU=m ++CONFIG_MFD_PCF50633=m ++CONFIG_PCF50633_ADC=m ++CONFIG_PCF50633_GPIO=m ++CONFIG_UCB1400_CORE=m ++CONFIG_MFD_RDC321X=m ++CONFIG_MFD_RT5033=m ++CONFIG_MFD_RC5T583=y ++CONFIG_MFD_SEC_CORE=y ++CONFIG_MFD_SI476X_CORE=m ++CONFIG_MFD_SM501=m ++CONFIG_MFD_SM501_GPIO=y ++CONFIG_MFD_SKY81452=m ++CONFIG_MFD_SMSC=y ++CONFIG_ABX500_CORE=y ++CONFIG_AB3100_CORE=y ++CONFIG_AB3100_OTP=m ++CONFIG_MFD_SYSCON=y ++CONFIG_MFD_TI_AM335X_TSCADC=m ++CONFIG_MFD_LP3943=m ++CONFIG_MFD_LP8788=y ++# CONFIG_MFD_TI_LMU is not set ++CONFIG_MFD_PALMAS=y ++CONFIG_TPS6105X=m ++CONFIG_TPS65010=m ++CONFIG_TPS6507X=m ++# CONFIG_MFD_TPS65086 is not set ++CONFIG_MFD_TPS65090=y ++# CONFIG_MFD_TPS68470 is not set ++# CONFIG_MFD_TI_LP873X is not set ++CONFIG_MFD_TPS6586X=y ++CONFIG_MFD_TPS65910=y ++CONFIG_MFD_TPS65912=y ++CONFIG_MFD_TPS65912_I2C=y ++CONFIG_MFD_TPS65912_SPI=y ++CONFIG_MFD_TPS80031=y ++CONFIG_TWL4030_CORE=y ++CONFIG_MFD_TWL4030_AUDIO=y ++CONFIG_TWL6040_CORE=y ++CONFIG_MFD_WL1273_CORE=m ++CONFIG_MFD_LM3533=m ++CONFIG_MFD_VX855=m ++CONFIG_MFD_ARIZONA=y ++CONFIG_MFD_ARIZONA_I2C=m ++CONFIG_MFD_ARIZONA_SPI=m ++# CONFIG_MFD_CS47L24 is not set ++CONFIG_MFD_WM5102=y ++CONFIG_MFD_WM5110=y ++CONFIG_MFD_WM8997=y ++CONFIG_MFD_WM8998=y ++CONFIG_MFD_WM8400=y ++CONFIG_MFD_WM831X=y ++CONFIG_MFD_WM831X_I2C=y ++CONFIG_MFD_WM831X_SPI=y ++CONFIG_MFD_WM8350=y ++CONFIG_MFD_WM8350_I2C=y ++CONFIG_MFD_WM8994=m ++CONFIG_REGULATOR=y ++# CONFIG_REGULATOR_DEBUG is not set ++CONFIG_REGULATOR_FIXED_VOLTAGE=m ++CONFIG_REGULATOR_VIRTUAL_CONSUMER=m ++CONFIG_REGULATOR_USERSPACE_CONSUMER=m ++# CONFIG_REGULATOR_88PG86X is not set ++CONFIG_REGULATOR_88PM800=m ++CONFIG_REGULATOR_88PM8607=m ++CONFIG_REGULATOR_ACT8865=m ++CONFIG_REGULATOR_AD5398=m ++CONFIG_REGULATOR_ANATOP=m ++CONFIG_REGULATOR_AAT2870=m ++CONFIG_REGULATOR_AB3100=m ++# CONFIG_REGULATOR_ARIZONA_LDO1 is not set ++# CONFIG_REGULATOR_ARIZONA_MICSUPP is not set ++CONFIG_REGULATOR_AS3711=m ++CONFIG_REGULATOR_BCM590XX=m ++CONFIG_REGULATOR_DA903X=m ++CONFIG_REGULATOR_DA9052=m ++CONFIG_REGULATOR_DA9055=m ++CONFIG_REGULATOR_DA9062=m ++CONFIG_REGULATOR_DA9063=m ++CONFIG_REGULATOR_DA9210=m ++CONFIG_REGULATOR_DA9211=m ++CONFIG_REGULATOR_FAN53555=m ++CONFIG_REGULATOR_GPIO=m ++CONFIG_REGULATOR_ISL9305=m ++CONFIG_REGULATOR_ISL6271A=m ++CONFIG_REGULATOR_LP3971=m ++CONFIG_REGULATOR_LP3972=m ++CONFIG_REGULATOR_LP872X=m ++CONFIG_REGULATOR_LP8755=m ++CONFIG_REGULATOR_LP8788=m ++CONFIG_REGULATOR_LTC3589=m ++# CONFIG_REGULATOR_LTC3676 is not set ++CONFIG_REGULATOR_MAX14577=m ++CONFIG_REGULATOR_MAX1586=m ++CONFIG_REGULATOR_MAX8649=m ++CONFIG_REGULATOR_MAX8660=m ++CONFIG_REGULATOR_MAX8907=m ++CONFIG_REGULATOR_MAX8925=m ++CONFIG_REGULATOR_MAX8952=m ++CONFIG_REGULATOR_MAX8997=m ++CONFIG_REGULATOR_MAX8998=m ++CONFIG_REGULATOR_MAX77693=m ++CONFIG_REGULATOR_MC13XXX_CORE=m ++CONFIG_REGULATOR_MC13783=m ++CONFIG_REGULATOR_MC13892=m ++CONFIG_REGULATOR_MT6311=m ++# CONFIG_REGULATOR_MT6323 is not set ++CONFIG_REGULATOR_MT6397=m ++CONFIG_REGULATOR_PALMAS=m ++CONFIG_REGULATOR_PCAP=m ++CONFIG_REGULATOR_PCF50633=m ++CONFIG_REGULATOR_PFUZE100=m ++# CONFIG_REGULATOR_PV88060 is not set ++# CONFIG_REGULATOR_PV88080 is not set ++# CONFIG_REGULATOR_PV88090 is not set ++CONFIG_REGULATOR_PWM=m ++CONFIG_REGULATOR_QCOM_SPMI=m ++CONFIG_REGULATOR_RC5T583=m ++CONFIG_REGULATOR_RT5033=m ++CONFIG_REGULATOR_S2MPA01=m ++CONFIG_REGULATOR_S2MPS11=m ++CONFIG_REGULATOR_S5M8767=m ++CONFIG_REGULATOR_SKY81452=m ++CONFIG_REGULATOR_TPS51632=m ++CONFIG_REGULATOR_TPS6105X=m ++CONFIG_REGULATOR_TPS62360=m ++CONFIG_REGULATOR_TPS65023=m ++CONFIG_REGULATOR_TPS6507X=m ++CONFIG_REGULATOR_TPS65090=m ++# CONFIG_REGULATOR_TPS65132 is not set ++CONFIG_REGULATOR_TPS6524X=m ++CONFIG_REGULATOR_TPS6586X=m ++CONFIG_REGULATOR_TPS65910=m ++CONFIG_REGULATOR_TPS65912=m ++CONFIG_REGULATOR_TPS80031=m ++CONFIG_REGULATOR_TWL4030=m ++CONFIG_REGULATOR_WM831X=m ++CONFIG_REGULATOR_WM8350=m ++CONFIG_REGULATOR_WM8400=m ++CONFIG_REGULATOR_WM8994=m ++CONFIG_RC_CORE=m ++CONFIG_RC_MAP=m ++# CONFIG_LIRC is not set ++CONFIG_RC_DECODERS=y ++CONFIG_IR_NEC_DECODER=m ++CONFIG_IR_RC5_DECODER=m ++CONFIG_IR_RC6_DECODER=m ++CONFIG_IR_JVC_DECODER=m ++CONFIG_IR_SONY_DECODER=m ++CONFIG_IR_SANYO_DECODER=m ++CONFIG_IR_SHARP_DECODER=m ++CONFIG_IR_MCE_KBD_DECODER=m ++CONFIG_IR_XMP_DECODER=m ++# CONFIG_IR_IMON_DECODER is not set ++CONFIG_RC_DEVICES=y ++CONFIG_RC_ATI_REMOTE=m ++CONFIG_IR_ENE=m ++CONFIG_IR_IMON=m ++# CONFIG_IR_IMON_RAW is not set ++CONFIG_IR_MCEUSB=m ++CONFIG_IR_ITE_CIR=m ++CONFIG_IR_FINTEK=m ++CONFIG_IR_NUVOTON=m ++CONFIG_IR_REDRAT3=m ++CONFIG_IR_STREAMZAP=m ++CONFIG_IR_WINBOND_CIR=m ++CONFIG_IR_IGORPLUGUSB=m ++CONFIG_IR_IGUANA=m ++CONFIG_IR_TTUSBIR=m ++CONFIG_RC_LOOPBACK=m ++# CONFIG_IR_SERIAL is not set ++# CONFIG_IR_SIR is not set ++# CONFIG_RC_XBOX_DVD is not set ++CONFIG_MEDIA_SUPPORT=m ++ ++# ++# Multimedia core support ++# ++CONFIG_MEDIA_CAMERA_SUPPORT=y ++CONFIG_MEDIA_ANALOG_TV_SUPPORT=y ++CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y ++CONFIG_MEDIA_RADIO_SUPPORT=y ++CONFIG_MEDIA_SDR_SUPPORT=y ++# CONFIG_MEDIA_CEC_SUPPORT is not set ++CONFIG_MEDIA_CONTROLLER=y ++# CONFIG_MEDIA_CONTROLLER_DVB is not set ++# CONFIG_MEDIA_CONTROLLER_REQUEST_API is not set ++CONFIG_VIDEO_DEV=m ++CONFIG_VIDEO_V4L2_SUBDEV_API=y ++CONFIG_VIDEO_V4L2=m ++# CONFIG_VIDEO_ADV_DEBUG is not set ++# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set ++CONFIG_VIDEO_TUNER=m ++CONFIG_V4L2_MEM2MEM_DEV=m ++CONFIG_V4L2_FLASH_LED_CLASS=m ++CONFIG_V4L2_FWNODE=m ++CONFIG_VIDEOBUF_GEN=m ++CONFIG_VIDEOBUF_DMA_SG=m ++CONFIG_VIDEOBUF_VMALLOC=m ++CONFIG_DVB_CORE=m ++# CONFIG_DVB_MMAP is not set ++CONFIG_DVB_NET=y ++CONFIG_TTPCI_EEPROM=m ++CONFIG_DVB_MAX_ADAPTERS=8 ++CONFIG_DVB_DYNAMIC_MINORS=y ++# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set ++# CONFIG_DVB_ULE_DEBUG is not set ++ ++# ++# Media drivers ++# ++CONFIG_MEDIA_USB_SUPPORT=y ++ ++# ++# Webcam devices ++# ++CONFIG_USB_VIDEO_CLASS=m ++CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y ++CONFIG_USB_GSPCA=m ++CONFIG_USB_M5602=m ++CONFIG_USB_STV06XX=m ++CONFIG_USB_GL860=m ++CONFIG_USB_GSPCA_BENQ=m ++CONFIG_USB_GSPCA_CONEX=m ++CONFIG_USB_GSPCA_CPIA1=m ++CONFIG_USB_GSPCA_DTCS033=m ++CONFIG_USB_GSPCA_ETOMS=m ++CONFIG_USB_GSPCA_FINEPIX=m ++CONFIG_USB_GSPCA_JEILINJ=m ++CONFIG_USB_GSPCA_JL2005BCD=m ++CONFIG_USB_GSPCA_KINECT=m ++CONFIG_USB_GSPCA_KONICA=m ++CONFIG_USB_GSPCA_MARS=m ++CONFIG_USB_GSPCA_MR97310A=m ++CONFIG_USB_GSPCA_NW80X=m ++CONFIG_USB_GSPCA_OV519=m ++CONFIG_USB_GSPCA_OV534=m ++CONFIG_USB_GSPCA_OV534_9=m ++CONFIG_USB_GSPCA_PAC207=m ++CONFIG_USB_GSPCA_PAC7302=m ++CONFIG_USB_GSPCA_PAC7311=m ++CONFIG_USB_GSPCA_SE401=m ++CONFIG_USB_GSPCA_SN9C2028=m ++CONFIG_USB_GSPCA_SN9C20X=m ++CONFIG_USB_GSPCA_SONIXB=m ++CONFIG_USB_GSPCA_SONIXJ=m ++CONFIG_USB_GSPCA_SPCA500=m ++CONFIG_USB_GSPCA_SPCA501=m ++CONFIG_USB_GSPCA_SPCA505=m ++CONFIG_USB_GSPCA_SPCA506=m ++CONFIG_USB_GSPCA_SPCA508=m ++CONFIG_USB_GSPCA_SPCA561=m ++CONFIG_USB_GSPCA_SPCA1528=m ++CONFIG_USB_GSPCA_SQ905=m ++CONFIG_USB_GSPCA_SQ905C=m ++CONFIG_USB_GSPCA_SQ930X=m ++CONFIG_USB_GSPCA_STK014=m ++CONFIG_USB_GSPCA_STK1135=m ++CONFIG_USB_GSPCA_STV0680=m ++CONFIG_USB_GSPCA_SUNPLUS=m ++CONFIG_USB_GSPCA_T613=m ++CONFIG_USB_GSPCA_TOPRO=m ++CONFIG_USB_GSPCA_TOUPTEK=m ++CONFIG_USB_GSPCA_TV8532=m ++CONFIG_USB_GSPCA_VC032X=m ++CONFIG_USB_GSPCA_VICAM=m ++CONFIG_USB_GSPCA_XIRLINK_CIT=m ++CONFIG_USB_GSPCA_ZC3XX=m ++CONFIG_USB_PWC=m ++# CONFIG_USB_PWC_DEBUG is not set ++CONFIG_USB_PWC_INPUT_EVDEV=y ++CONFIG_VIDEO_CPIA2=m ++CONFIG_USB_ZR364XX=m ++CONFIG_USB_STKWEBCAM=m ++CONFIG_USB_S2255=m ++CONFIG_VIDEO_USBTV=m ++ ++# ++# Analog TV USB devices ++# ++CONFIG_VIDEO_PVRUSB2=m ++CONFIG_VIDEO_PVRUSB2_SYSFS=y ++CONFIG_VIDEO_PVRUSB2_DVB=y ++# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set ++CONFIG_VIDEO_HDPVR=m ++CONFIG_VIDEO_USBVISION=m ++CONFIG_VIDEO_STK1160_COMMON=m ++CONFIG_VIDEO_STK1160=m ++CONFIG_VIDEO_GO7007=m ++CONFIG_VIDEO_GO7007_USB=m ++CONFIG_VIDEO_GO7007_LOADER=m ++CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m ++ ++# ++# Analog/digital TV USB devices ++# ++CONFIG_VIDEO_AU0828=m ++CONFIG_VIDEO_AU0828_V4L2=y ++CONFIG_VIDEO_AU0828_RC=y ++CONFIG_VIDEO_CX231XX=m ++CONFIG_VIDEO_CX231XX_RC=y ++CONFIG_VIDEO_CX231XX_ALSA=m ++CONFIG_VIDEO_CX231XX_DVB=m ++CONFIG_VIDEO_TM6000=m ++CONFIG_VIDEO_TM6000_ALSA=m ++CONFIG_VIDEO_TM6000_DVB=m ++ ++# ++# Digital TV USB devices ++# ++CONFIG_DVB_USB=m ++# CONFIG_DVB_USB_DEBUG is not set ++CONFIG_DVB_USB_DIB3000MC=m ++CONFIG_DVB_USB_A800=m ++CONFIG_DVB_USB_DIBUSB_MB=m ++# CONFIG_DVB_USB_DIBUSB_MB_FAULTY is not set ++CONFIG_DVB_USB_DIBUSB_MC=m ++CONFIG_DVB_USB_DIB0700=m ++CONFIG_DVB_USB_UMT_010=m ++CONFIG_DVB_USB_CXUSB=m ++CONFIG_DVB_USB_M920X=m ++CONFIG_DVB_USB_DIGITV=m ++CONFIG_DVB_USB_VP7045=m ++CONFIG_DVB_USB_VP702X=m ++CONFIG_DVB_USB_GP8PSK=m ++CONFIG_DVB_USB_NOVA_T_USB2=m ++CONFIG_DVB_USB_TTUSB2=m ++CONFIG_DVB_USB_DTT200U=m ++CONFIG_DVB_USB_OPERA1=m ++CONFIG_DVB_USB_AF9005=m ++CONFIG_DVB_USB_AF9005_REMOTE=m ++CONFIG_DVB_USB_PCTV452E=m ++CONFIG_DVB_USB_DW2102=m ++CONFIG_DVB_USB_CINERGY_T2=m ++CONFIG_DVB_USB_DTV5100=m ++CONFIG_DVB_USB_AZ6027=m ++CONFIG_DVB_USB_TECHNISAT_USB2=m ++CONFIG_DVB_USB_V2=m ++CONFIG_DVB_USB_AF9015=m ++CONFIG_DVB_USB_AF9035=m ++CONFIG_DVB_USB_ANYSEE=m ++CONFIG_DVB_USB_AU6610=m ++CONFIG_DVB_USB_AZ6007=m ++CONFIG_DVB_USB_CE6230=m ++CONFIG_DVB_USB_EC168=m ++CONFIG_DVB_USB_GL861=m ++CONFIG_DVB_USB_LME2510=m ++CONFIG_DVB_USB_MXL111SF=m ++CONFIG_DVB_USB_RTL28XXU=m ++CONFIG_DVB_USB_DVBSKY=m ++# CONFIG_DVB_USB_ZD1301 is not set ++CONFIG_DVB_TTUSB_BUDGET=m ++CONFIG_DVB_TTUSB_DEC=m ++CONFIG_SMS_USB_DRV=m ++CONFIG_DVB_B2C2_FLEXCOP_USB=m ++# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set ++CONFIG_DVB_AS102=m ++ ++# ++# Webcam, TV (analog/digital) USB devices ++# ++CONFIG_VIDEO_EM28XX=m ++CONFIG_VIDEO_EM28XX_V4L2=m ++CONFIG_VIDEO_EM28XX_ALSA=m ++CONFIG_VIDEO_EM28XX_DVB=m ++CONFIG_VIDEO_EM28XX_RC=m ++ ++# ++# Software defined radio USB devices ++# ++CONFIG_USB_AIRSPY=m ++CONFIG_USB_HACKRF=m ++CONFIG_USB_MSI2500=m ++CONFIG_MEDIA_PCI_SUPPORT=y ++ ++# ++# Media capture support ++# ++CONFIG_VIDEO_MEYE=m ++CONFIG_VIDEO_SOLO6X10=m ++# CONFIG_VIDEO_TW5864 is not set ++CONFIG_VIDEO_TW68=m ++# CONFIG_VIDEO_TW686X is not set ++ ++# ++# Media capture/analog TV support ++# ++CONFIG_VIDEO_IVTV=m ++# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set ++CONFIG_VIDEO_IVTV_ALSA=m ++CONFIG_VIDEO_FB_IVTV=m ++CONFIG_VIDEO_HEXIUM_GEMINI=m ++CONFIG_VIDEO_HEXIUM_ORION=m ++CONFIG_VIDEO_MXB=m ++CONFIG_VIDEO_DT3155=m ++ ++# ++# Media capture/analog/hybrid TV support ++# ++CONFIG_VIDEO_CX18=m ++CONFIG_VIDEO_CX18_ALSA=m ++CONFIG_VIDEO_CX23885=m ++CONFIG_MEDIA_ALTERA_CI=m ++CONFIG_VIDEO_CX25821=m ++CONFIG_VIDEO_CX25821_ALSA=m ++CONFIG_VIDEO_CX88=m ++CONFIG_VIDEO_CX88_ALSA=m ++CONFIG_VIDEO_CX88_BLACKBIRD=m ++CONFIG_VIDEO_CX88_DVB=m ++CONFIG_VIDEO_CX88_ENABLE_VP3054=y ++CONFIG_VIDEO_CX88_VP3054=m ++CONFIG_VIDEO_CX88_MPEG=m ++CONFIG_VIDEO_BT848=m ++CONFIG_DVB_BT8XX=m ++CONFIG_VIDEO_SAA7134=m ++CONFIG_VIDEO_SAA7134_ALSA=m ++CONFIG_VIDEO_SAA7134_RC=y ++CONFIG_VIDEO_SAA7134_DVB=m ++CONFIG_VIDEO_SAA7134_GO7007=m ++CONFIG_VIDEO_SAA7164=m ++CONFIG_VIDEO_COBALT=m ++ ++# ++# Media digital TV PCI Adapters ++# ++CONFIG_DVB_AV7110_IR=y ++CONFIG_DVB_AV7110=m ++CONFIG_DVB_AV7110_OSD=y ++CONFIG_DVB_BUDGET_CORE=m ++CONFIG_DVB_BUDGET=m ++CONFIG_DVB_BUDGET_CI=m ++CONFIG_DVB_BUDGET_AV=m ++CONFIG_DVB_BUDGET_PATCH=m ++CONFIG_DVB_B2C2_FLEXCOP_PCI=m ++# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set ++CONFIG_DVB_PLUTO2=m ++CONFIG_DVB_DM1105=m ++CONFIG_DVB_PT1=m ++CONFIG_DVB_PT3=m ++CONFIG_MANTIS_CORE=m ++CONFIG_DVB_MANTIS=m ++CONFIG_DVB_HOPPER=m ++CONFIG_DVB_NGENE=m ++CONFIG_DVB_DDBRIDGE=m ++# CONFIG_DVB_DDBRIDGE_MSIENABLE is not set ++CONFIG_DVB_SMIPCIE=m ++CONFIG_DVB_NETUP_UNIDVB=m ++# CONFIG_VIDEO_IPU3_CIO2 is not set ++CONFIG_V4L_PLATFORM_DRIVERS=y ++CONFIG_VIDEO_CAFE_CCIC=m ++CONFIG_VIDEO_VIA_CAMERA=m ++# CONFIG_VIDEO_CADENCE is not set ++# CONFIG_VIDEO_ASPEED is not set ++CONFIG_SOC_CAMERA=m ++CONFIG_SOC_CAMERA_PLATFORM=m ++CONFIG_V4L_MEM2MEM_DRIVERS=y ++CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m ++CONFIG_VIDEO_SH_VEU=m ++CONFIG_V4L_TEST_DRIVERS=y ++# CONFIG_VIDEO_VIMC is not set ++CONFIG_VIDEO_VIVID=m ++# CONFIG_VIDEO_VIVID_CEC is not set ++CONFIG_VIDEO_VIVID_MAX_DEVS=64 ++CONFIG_VIDEO_VIM2M=m ++# CONFIG_VIDEO_VICODEC is not set ++CONFIG_DVB_PLATFORM_DRIVERS=y ++# CONFIG_SDR_PLATFORM_DRIVERS is not set ++ ++# ++# Supported MMC/SDIO adapters ++# ++CONFIG_SMS_SDIO_DRV=m ++CONFIG_RADIO_ADAPTERS=y ++CONFIG_RADIO_TEA575X=m ++CONFIG_RADIO_SI470X=m ++CONFIG_USB_SI470X=m ++CONFIG_I2C_SI470X=m ++CONFIG_RADIO_SI4713=m ++CONFIG_USB_SI4713=m ++CONFIG_PLATFORM_SI4713=m ++CONFIG_I2C_SI4713=m ++CONFIG_RADIO_SI476X=m ++CONFIG_USB_MR800=m ++CONFIG_USB_DSBR=m ++CONFIG_RADIO_MAXIRADIO=m ++CONFIG_RADIO_SHARK=m ++CONFIG_RADIO_SHARK2=m ++CONFIG_USB_KEENE=m ++CONFIG_USB_RAREMONO=m ++CONFIG_USB_MA901=m ++CONFIG_RADIO_TEA5764=m ++CONFIG_RADIO_SAA7706H=m ++CONFIG_RADIO_TEF6862=m ++CONFIG_RADIO_WL1273=m ++ ++# ++# Texas Instruments WL128x FM driver (ST based) ++# ++CONFIG_RADIO_WL128X=m ++ ++# ++# Supported FireWire (IEEE 1394) Adapters ++# ++CONFIG_DVB_FIREDTV=m ++CONFIG_DVB_FIREDTV_INPUT=y ++CONFIG_MEDIA_COMMON_OPTIONS=y ++ ++# ++# common driver options ++# ++CONFIG_VIDEO_CX2341X=m ++CONFIG_VIDEO_TVEEPROM=m ++CONFIG_CYPRESS_FIRMWARE=m ++CONFIG_VIDEOBUF2_CORE=m ++CONFIG_VIDEOBUF2_V4L2=m ++CONFIG_VIDEOBUF2_MEMOPS=m ++CONFIG_VIDEOBUF2_DMA_CONTIG=m ++CONFIG_VIDEOBUF2_VMALLOC=m ++CONFIG_VIDEOBUF2_DMA_SG=m ++CONFIG_VIDEOBUF2_DVB=m ++CONFIG_DVB_B2C2_FLEXCOP=m ++CONFIG_VIDEO_SAA7146=m ++CONFIG_VIDEO_SAA7146_VV=m ++CONFIG_SMS_SIANO_MDTV=m ++CONFIG_SMS_SIANO_RC=y ++CONFIG_SMS_SIANO_DEBUGFS=y ++CONFIG_VIDEO_V4L2_TPG=m ++ ++# ++# Media ancillary drivers (tuners, sensors, i2c, spi, frontends) ++# ++CONFIG_MEDIA_SUBDRV_AUTOSELECT=y ++CONFIG_MEDIA_ATTACH=y ++CONFIG_VIDEO_IR_I2C=m ++ ++# ++# Audio decoders, processors and mixers ++# ++CONFIG_VIDEO_TVAUDIO=m ++CONFIG_VIDEO_TDA7432=m ++CONFIG_VIDEO_TDA9840=m ++CONFIG_VIDEO_TEA6415C=m ++CONFIG_VIDEO_TEA6420=m ++CONFIG_VIDEO_MSP3400=m ++CONFIG_VIDEO_CS3308=m ++CONFIG_VIDEO_CS5345=m ++CONFIG_VIDEO_CS53L32A=m ++CONFIG_VIDEO_UDA1342=m ++CONFIG_VIDEO_WM8775=m ++CONFIG_VIDEO_WM8739=m ++CONFIG_VIDEO_VP27SMPX=m ++CONFIG_VIDEO_SONY_BTF_MPX=m ++ ++# ++# RDS decoders ++# ++CONFIG_VIDEO_SAA6588=m ++ ++# ++# Video decoders ++# ++CONFIG_VIDEO_ADV7604=m ++CONFIG_VIDEO_ADV7842=m ++CONFIG_VIDEO_BT819=m ++CONFIG_VIDEO_BT856=m ++CONFIG_VIDEO_BT866=m ++CONFIG_VIDEO_KS0127=m ++CONFIG_VIDEO_SAA7110=m ++CONFIG_VIDEO_SAA711X=m ++CONFIG_VIDEO_TVP5150=m ++CONFIG_VIDEO_TW2804=m ++CONFIG_VIDEO_TW9903=m ++CONFIG_VIDEO_TW9906=m ++CONFIG_VIDEO_VPX3220=m ++ ++# ++# Video and audio decoders ++# ++CONFIG_VIDEO_SAA717X=m ++CONFIG_VIDEO_CX25840=m ++ ++# ++# Video encoders ++# ++CONFIG_VIDEO_SAA7127=m ++CONFIG_VIDEO_SAA7185=m ++CONFIG_VIDEO_ADV7170=m ++CONFIG_VIDEO_ADV7175=m ++CONFIG_VIDEO_ADV7511=m ++ ++# ++# Camera sensor devices ++# ++CONFIG_VIDEO_OV2640=m ++CONFIG_VIDEO_OV7640=m ++CONFIG_VIDEO_OV7670=m ++CONFIG_VIDEO_MT9M111=m ++CONFIG_VIDEO_MT9V011=m ++ ++# ++# Flash devices ++# ++ ++# ++# Video improvement chips ++# ++CONFIG_VIDEO_UPD64031A=m ++CONFIG_VIDEO_UPD64083=m ++ ++# ++# Audio/Video compression chips ++# ++CONFIG_VIDEO_SAA6752HS=m ++ ++# ++# SDR tuner chips ++# ++ ++# ++# Miscellaneous helper chips ++# ++CONFIG_VIDEO_M52790=m ++ ++# ++# Sensors used on soc_camera driver ++# ++ ++# ++# soc_camera sensor drivers ++# ++CONFIG_SOC_CAMERA_MT9M001=m ++CONFIG_SOC_CAMERA_MT9M111=m ++CONFIG_SOC_CAMERA_MT9T112=m ++CONFIG_SOC_CAMERA_MT9V022=m ++CONFIG_SOC_CAMERA_OV5642=m ++CONFIG_SOC_CAMERA_OV772X=m ++CONFIG_SOC_CAMERA_OV9640=m ++CONFIG_SOC_CAMERA_OV9740=m ++CONFIG_SOC_CAMERA_RJ54N1=m ++CONFIG_SOC_CAMERA_TW9910=m ++ ++# ++# Media SPI Adapters ++# ++# CONFIG_CXD2880_SPI_DRV is not set ++CONFIG_MEDIA_TUNER=m ++CONFIG_MEDIA_TUNER_SIMPLE=m ++CONFIG_MEDIA_TUNER_TDA18250=m ++CONFIG_MEDIA_TUNER_TDA8290=m ++CONFIG_MEDIA_TUNER_TDA827X=m ++CONFIG_MEDIA_TUNER_TDA18271=m ++CONFIG_MEDIA_TUNER_TDA9887=m ++CONFIG_MEDIA_TUNER_TEA5761=m ++CONFIG_MEDIA_TUNER_TEA5767=m ++CONFIG_MEDIA_TUNER_MSI001=m ++CONFIG_MEDIA_TUNER_MT20XX=m ++CONFIG_MEDIA_TUNER_MT2060=m ++CONFIG_MEDIA_TUNER_MT2063=m ++CONFIG_MEDIA_TUNER_MT2266=m ++CONFIG_MEDIA_TUNER_MT2131=m ++CONFIG_MEDIA_TUNER_QT1010=m ++CONFIG_MEDIA_TUNER_XC2028=m ++CONFIG_MEDIA_TUNER_XC5000=m ++CONFIG_MEDIA_TUNER_XC4000=m ++CONFIG_MEDIA_TUNER_MXL5005S=m ++CONFIG_MEDIA_TUNER_MXL5007T=m ++CONFIG_MEDIA_TUNER_MC44S803=m ++CONFIG_MEDIA_TUNER_MAX2165=m ++CONFIG_MEDIA_TUNER_TDA18218=m ++CONFIG_MEDIA_TUNER_FC0011=m ++CONFIG_MEDIA_TUNER_FC0012=m ++CONFIG_MEDIA_TUNER_FC0013=m ++CONFIG_MEDIA_TUNER_TDA18212=m ++CONFIG_MEDIA_TUNER_E4000=m ++CONFIG_MEDIA_TUNER_FC2580=m ++CONFIG_MEDIA_TUNER_M88RS6000T=m ++CONFIG_MEDIA_TUNER_TUA9001=m ++CONFIG_MEDIA_TUNER_SI2157=m ++CONFIG_MEDIA_TUNER_IT913X=m ++CONFIG_MEDIA_TUNER_R820T=m ++CONFIG_MEDIA_TUNER_MXL301RF=m ++CONFIG_MEDIA_TUNER_QM1D1C0042=m ++CONFIG_MEDIA_TUNER_QM1D1B0004=m ++ ++# ++# Multistandard (satellite) frontends ++# ++CONFIG_DVB_STB0899=m ++CONFIG_DVB_STB6100=m ++CONFIG_DVB_STV090x=m ++CONFIG_DVB_STV0910=m ++CONFIG_DVB_STV6110x=m ++CONFIG_DVB_STV6111=m ++CONFIG_DVB_MXL5XX=m ++CONFIG_DVB_M88DS3103=m ++ ++# ++# Multistandard (cable + terrestrial) frontends ++# ++CONFIG_DVB_DRXK=m ++CONFIG_DVB_TDA18271C2DD=m ++CONFIG_DVB_SI2165=m ++CONFIG_DVB_MN88472=m ++CONFIG_DVB_MN88473=m ++ ++# ++# DVB-S (satellite) frontends ++# ++CONFIG_DVB_CX24110=m ++CONFIG_DVB_CX24123=m ++CONFIG_DVB_MT312=m ++CONFIG_DVB_ZL10036=m ++CONFIG_DVB_ZL10039=m ++CONFIG_DVB_S5H1420=m ++CONFIG_DVB_STV0288=m ++CONFIG_DVB_STB6000=m ++CONFIG_DVB_STV0299=m ++CONFIG_DVB_STV6110=m ++CONFIG_DVB_STV0900=m ++CONFIG_DVB_TDA8083=m ++CONFIG_DVB_TDA10086=m ++CONFIG_DVB_TDA8261=m ++CONFIG_DVB_VES1X93=m ++CONFIG_DVB_TUNER_ITD1000=m ++CONFIG_DVB_TUNER_CX24113=m ++CONFIG_DVB_TDA826X=m ++CONFIG_DVB_TUA6100=m ++CONFIG_DVB_CX24116=m ++CONFIG_DVB_CX24117=m ++CONFIG_DVB_CX24120=m ++CONFIG_DVB_SI21XX=m ++CONFIG_DVB_TS2020=m ++CONFIG_DVB_DS3000=m ++CONFIG_DVB_MB86A16=m ++CONFIG_DVB_TDA10071=m ++ ++# ++# DVB-T (terrestrial) frontends ++# ++CONFIG_DVB_SP8870=m ++CONFIG_DVB_SP887X=m ++CONFIG_DVB_CX22700=m ++CONFIG_DVB_CX22702=m ++CONFIG_DVB_DRXD=m ++CONFIG_DVB_L64781=m ++CONFIG_DVB_TDA1004X=m ++CONFIG_DVB_NXT6000=m ++CONFIG_DVB_MT352=m ++CONFIG_DVB_ZL10353=m ++CONFIG_DVB_DIB3000MB=m ++CONFIG_DVB_DIB3000MC=m ++CONFIG_DVB_DIB7000M=m ++CONFIG_DVB_DIB7000P=m ++CONFIG_DVB_TDA10048=m ++CONFIG_DVB_AF9013=m ++CONFIG_DVB_EC100=m ++CONFIG_DVB_STV0367=m ++CONFIG_DVB_CXD2820R=m ++CONFIG_DVB_CXD2841ER=m ++CONFIG_DVB_RTL2830=m ++CONFIG_DVB_RTL2832=m ++CONFIG_DVB_RTL2832_SDR=m ++CONFIG_DVB_SI2168=m ++CONFIG_DVB_AS102_FE=m ++CONFIG_DVB_GP8PSK_FE=m ++ ++# ++# DVB-C (cable) frontends ++# ++CONFIG_DVB_VES1820=m ++CONFIG_DVB_TDA10021=m ++CONFIG_DVB_TDA10023=m ++CONFIG_DVB_STV0297=m ++ ++# ++# ATSC (North American/Korean Terrestrial/Cable DTV) frontends ++# ++CONFIG_DVB_NXT200X=m ++CONFIG_DVB_OR51211=m ++CONFIG_DVB_OR51132=m ++CONFIG_DVB_BCM3510=m ++CONFIG_DVB_LGDT330X=m ++CONFIG_DVB_LGDT3305=m ++CONFIG_DVB_LGDT3306A=m ++CONFIG_DVB_LG2160=m ++CONFIG_DVB_S5H1409=m ++CONFIG_DVB_AU8522=m ++CONFIG_DVB_AU8522_DTV=m ++CONFIG_DVB_AU8522_V4L=m ++CONFIG_DVB_S5H1411=m ++ ++# ++# ISDB-T (terrestrial) frontends ++# ++CONFIG_DVB_S921=m ++CONFIG_DVB_DIB8000=m ++CONFIG_DVB_MB86A20S=m ++ ++# ++# ISDB-S (satellite) & ISDB-T (terrestrial) frontends ++# ++CONFIG_DVB_TC90522=m ++ ++# ++# Digital terrestrial only tuners/PLL ++# ++CONFIG_DVB_PLL=m ++CONFIG_DVB_TUNER_DIB0070=m ++CONFIG_DVB_TUNER_DIB0090=m ++ ++# ++# SEC control devices for DVB-S ++# ++CONFIG_DVB_DRX39XYJ=m ++CONFIG_DVB_LNBH25=m ++CONFIG_DVB_LNBP21=m ++CONFIG_DVB_LNBP22=m ++CONFIG_DVB_ISL6405=m ++CONFIG_DVB_ISL6421=m ++CONFIG_DVB_ISL6423=m ++CONFIG_DVB_A8293=m ++CONFIG_DVB_LGS8GXX=m ++CONFIG_DVB_ATBM8830=m ++CONFIG_DVB_TDA665x=m ++CONFIG_DVB_IX2505V=m ++CONFIG_DVB_M88RS2000=m ++CONFIG_DVB_AF9033=m ++CONFIG_DVB_HORUS3A=m ++CONFIG_DVB_ASCOT2E=m ++CONFIG_DVB_HELENE=m ++ ++# ++# Common Interface (EN50221) controller drivers ++# ++CONFIG_DVB_CXD2099=m ++CONFIG_DVB_SP2=m ++ ++# ++# Tools to develop new frontends ++# ++CONFIG_DVB_DUMMY_FE=m ++ ++# ++# Graphics support ++# ++CONFIG_AGP=y ++CONFIG_AGP_AMD64=y ++CONFIG_AGP_INTEL=y ++CONFIG_AGP_SIS=m ++CONFIG_AGP_VIA=y ++CONFIG_INTEL_GTT=y ++CONFIG_VGA_ARB=y ++CONFIG_VGA_ARB_MAX_GPUS=16 ++CONFIG_VGA_SWITCHEROO=y ++CONFIG_DRM=m ++CONFIG_DRM_MIPI_DSI=y ++# CONFIG_DRM_DP_AUX_CHARDEV is not set ++# CONFIG_DRM_DEBUG_SELFTEST is not set ++CONFIG_DRM_KMS_HELPER=m ++CONFIG_DRM_KMS_FB_HELPER=y ++CONFIG_DRM_FBDEV_EMULATION=y ++CONFIG_DRM_FBDEV_OVERALLOC=100 ++# CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM is not set ++CONFIG_DRM_LOAD_EDID_FIRMWARE=y ++# CONFIG_DRM_DP_CEC is not set ++CONFIG_DRM_TTM=m ++CONFIG_DRM_VM=y ++CONFIG_DRM_SCHED=m ++ ++# ++# I2C encoder or helper chips ++# ++CONFIG_DRM_I2C_CH7006=m ++CONFIG_DRM_I2C_SIL164=m ++CONFIG_DRM_I2C_NXP_TDA998X=m ++# CONFIG_DRM_I2C_NXP_TDA9950 is not set ++CONFIG_DRM_RADEON=m ++# CONFIG_DRM_RADEON_USERPTR is not set ++CONFIG_DRM_AMDGPU=m ++# CONFIG_DRM_AMDGPU_SI is not set ++CONFIG_DRM_AMDGPU_CIK=y ++CONFIG_DRM_AMDGPU_USERPTR=y ++# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set ++ ++# ++# ACP (Audio CoProcessor) Configuration ++# ++# CONFIG_DRM_AMD_ACP is not set ++ ++# ++# Display Engine Configuration ++# ++CONFIG_DRM_AMD_DC=y ++CONFIG_DRM_AMD_DC_DCN1_0=y ++CONFIG_DRM_AMD_DC_DCN1_01=y ++# CONFIG_DEBUG_KERNEL_DC is not set ++CONFIG_HSA_AMD=y ++ ++# ++# AMD Library routines ++# ++CONFIG_CHASH=m ++# CONFIG_CHASH_STATS is not set ++# CONFIG_CHASH_SELFTEST is not set ++CONFIG_DRM_NOUVEAU=m ++CONFIG_NOUVEAU_DEBUG=5 ++CONFIG_NOUVEAU_DEBUG_DEFAULT=3 ++# CONFIG_NOUVEAU_DEBUG_MMU is not set ++CONFIG_DRM_NOUVEAU_BACKLIGHT=y ++CONFIG_DRM_I915=m ++# CONFIG_DRM_I915_ALPHA_SUPPORT is not set ++CONFIG_DRM_I915_CAPTURE_ERROR=y ++CONFIG_DRM_I915_COMPRESS_ERROR=y ++CONFIG_DRM_I915_USERPTR=y ++# CONFIG_DRM_I915_GVT is not set ++ ++# ++# drm/i915 Debugging ++# ++# CONFIG_DRM_I915_WERROR is not set ++# CONFIG_DRM_I915_DEBUG is not set ++# CONFIG_DRM_I915_SW_FENCE_DEBUG_OBJECTS is not set ++# CONFIG_DRM_I915_SW_FENCE_CHECK_DAG is not set ++# CONFIG_DRM_I915_DEBUG_GUC is not set ++# CONFIG_DRM_I915_SELFTEST is not set ++# CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set ++# CONFIG_DRM_I915_DEBUG_VBLANK_EVADE is not set ++# CONFIG_DRM_I915_DEBUG_RUNTIME_PM is not set ++CONFIG_DRM_VGEM=m ++# CONFIG_DRM_VKMS is not set ++CONFIG_DRM_VMWGFX=m ++CONFIG_DRM_VMWGFX_FBCON=y ++CONFIG_DRM_GMA500=m ++CONFIG_DRM_GMA600=y ++CONFIG_DRM_GMA3600=y ++CONFIG_DRM_UDL=m ++CONFIG_DRM_AST=m ++# CONFIG_DRM_MGAG200 is not set ++CONFIG_DRM_CIRRUS_QEMU=m ++CONFIG_DRM_QXL=m ++# CONFIG_DRM_BOCHS is not set ++CONFIG_DRM_VIRTIO_GPU=m ++CONFIG_DRM_PANEL=y ++ ++# ++# Display Panels ++# ++# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set ++CONFIG_DRM_BRIDGE=y ++CONFIG_DRM_PANEL_BRIDGE=y ++ ++# ++# Display Interface Bridges ++# ++# CONFIG_DRM_ANALOGIX_ANX78XX is not set ++# CONFIG_DRM_HISI_HIBMC is not set ++# CONFIG_DRM_TINYDRM is not set ++# CONFIG_DRM_XEN is not set ++# CONFIG_DRM_LEGACY is not set ++CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y ++ ++# ++# Frame buffer Devices ++# ++CONFIG_FB_CMDLINE=y ++CONFIG_FB_NOTIFY=y ++CONFIG_FB=y ++CONFIG_FIRMWARE_EDID=y ++CONFIG_FB_DDC=m ++CONFIG_FB_BOOT_VESA_SUPPORT=y ++CONFIG_FB_CFB_FILLRECT=y ++CONFIG_FB_CFB_COPYAREA=y ++CONFIG_FB_CFB_IMAGEBLIT=y ++CONFIG_FB_SYS_FILLRECT=m ++CONFIG_FB_SYS_COPYAREA=m ++CONFIG_FB_SYS_IMAGEBLIT=m ++# CONFIG_FB_FOREIGN_ENDIAN is not set ++CONFIG_FB_SYS_FOPS=m ++CONFIG_FB_DEFERRED_IO=y ++CONFIG_FB_HECUBA=m ++CONFIG_FB_SVGALIB=m ++CONFIG_FB_BACKLIGHT=m ++CONFIG_FB_MODE_HELPERS=y ++CONFIG_FB_TILEBLITTING=y ++ ++# ++# Frame buffer hardware drivers ++# ++CONFIG_FB_CIRRUS=m ++CONFIG_FB_PM2=m ++CONFIG_FB_PM2_FIFO_DISCONNECT=y ++CONFIG_FB_CYBER2000=m ++CONFIG_FB_CYBER2000_DDC=y ++CONFIG_FB_ARC=m ++CONFIG_FB_ASILIANT=y ++CONFIG_FB_IMSTT=y ++CONFIG_FB_VGA16=m ++CONFIG_FB_UVESA=m ++CONFIG_FB_VESA=y ++CONFIG_FB_EFI=y ++CONFIG_FB_N411=m ++CONFIG_FB_HGA=m ++CONFIG_FB_OPENCORES=m ++CONFIG_FB_S1D13XXX=m ++CONFIG_FB_NVIDIA=m ++CONFIG_FB_NVIDIA_I2C=y ++# CONFIG_FB_NVIDIA_DEBUG is not set ++CONFIG_FB_NVIDIA_BACKLIGHT=y ++CONFIG_FB_RIVA=m ++CONFIG_FB_RIVA_I2C=y ++# CONFIG_FB_RIVA_DEBUG is not set ++CONFIG_FB_RIVA_BACKLIGHT=y ++CONFIG_FB_I740=m ++CONFIG_FB_LE80578=m ++CONFIG_FB_CARILLO_RANCH=m ++CONFIG_FB_INTEL=m ++# CONFIG_FB_INTEL_DEBUG is not set ++CONFIG_FB_INTEL_I2C=y ++CONFIG_FB_MATROX=m ++CONFIG_FB_MATROX_MILLENIUM=y ++CONFIG_FB_MATROX_MYSTIQUE=y ++CONFIG_FB_MATROX_G=y ++CONFIG_FB_MATROX_I2C=m ++CONFIG_FB_MATROX_MAVEN=m ++CONFIG_FB_RADEON=m ++CONFIG_FB_RADEON_I2C=y ++CONFIG_FB_RADEON_BACKLIGHT=y ++# CONFIG_FB_RADEON_DEBUG is not set ++CONFIG_FB_ATY128=m ++CONFIG_FB_ATY128_BACKLIGHT=y ++CONFIG_FB_ATY=m ++CONFIG_FB_ATY_CT=y ++# CONFIG_FB_ATY_GENERIC_LCD is not set ++CONFIG_FB_ATY_GX=y ++CONFIG_FB_ATY_BACKLIGHT=y ++CONFIG_FB_S3=m ++CONFIG_FB_S3_DDC=y ++CONFIG_FB_SAVAGE=m ++CONFIG_FB_SAVAGE_I2C=y ++# CONFIG_FB_SAVAGE_ACCEL is not set ++CONFIG_FB_SIS=m ++CONFIG_FB_SIS_300=y ++CONFIG_FB_SIS_315=y ++CONFIG_FB_VIA=m ++# CONFIG_FB_VIA_DIRECT_PROCFS is not set ++CONFIG_FB_VIA_X_COMPATIBILITY=y ++CONFIG_FB_NEOMAGIC=m ++CONFIG_FB_KYRO=m ++CONFIG_FB_3DFX=m ++# CONFIG_FB_3DFX_ACCEL is not set ++# CONFIG_FB_3DFX_I2C is not set ++CONFIG_FB_VOODOO1=m ++CONFIG_FB_VT8623=m ++CONFIG_FB_TRIDENT=m ++CONFIG_FB_ARK=m ++CONFIG_FB_PM3=m ++CONFIG_FB_CARMINE=m ++CONFIG_FB_CARMINE_DRAM_EVAL=y ++# CONFIG_CARMINE_DRAM_CUSTOM is not set ++CONFIG_FB_SM501=m ++CONFIG_FB_SMSCUFX=m ++CONFIG_FB_UDL=m ++CONFIG_FB_IBM_GXT4500=m ++# CONFIG_FB_VIRTUAL is not set ++CONFIG_XEN_FBDEV_FRONTEND=m ++CONFIG_FB_METRONOME=m ++CONFIG_FB_MB862XX=m ++CONFIG_FB_MB862XX_PCI_GDC=y ++CONFIG_FB_MB862XX_I2C=y ++CONFIG_FB_HYPERV=m ++CONFIG_FB_SIMPLE=y ++CONFIG_FB_SM712=m ++CONFIG_BACKLIGHT_LCD_SUPPORT=y ++CONFIG_LCD_CLASS_DEVICE=m ++CONFIG_LCD_L4F00242T03=m ++CONFIG_LCD_LMS283GF05=m ++CONFIG_LCD_LTV350QV=m ++CONFIG_LCD_ILI922X=m ++CONFIG_LCD_ILI9320=m ++CONFIG_LCD_TDO24M=m ++CONFIG_LCD_VGG2432A4=m ++CONFIG_LCD_PLATFORM=m ++CONFIG_LCD_AMS369FG06=m ++CONFIG_LCD_LMS501KF03=m ++CONFIG_LCD_HX8357=m ++# CONFIG_LCD_OTM3225A is not set ++CONFIG_BACKLIGHT_CLASS_DEVICE=y ++CONFIG_BACKLIGHT_GENERIC=m ++CONFIG_BACKLIGHT_LM3533=m ++CONFIG_BACKLIGHT_CARILLO_RANCH=m ++CONFIG_BACKLIGHT_PWM=m ++CONFIG_BACKLIGHT_DA903X=m ++CONFIG_BACKLIGHT_DA9052=m ++CONFIG_BACKLIGHT_MAX8925=m ++CONFIG_BACKLIGHT_APPLE=m ++CONFIG_BACKLIGHT_PM8941_WLED=m ++CONFIG_BACKLIGHT_SAHARA=m ++CONFIG_BACKLIGHT_WM831X=m ++CONFIG_BACKLIGHT_ADP5520=m ++CONFIG_BACKLIGHT_ADP8860=m ++CONFIG_BACKLIGHT_ADP8870=m ++CONFIG_BACKLIGHT_88PM860X=m ++CONFIG_BACKLIGHT_PCF50633=m ++CONFIG_BACKLIGHT_AAT2870=m ++CONFIG_BACKLIGHT_LM3630A=m ++CONFIG_BACKLIGHT_LM3639=m ++CONFIG_BACKLIGHT_LP855X=m ++CONFIG_BACKLIGHT_LP8788=m ++CONFIG_BACKLIGHT_PANDORA=m ++CONFIG_BACKLIGHT_SKY81452=m ++CONFIG_BACKLIGHT_AS3711=m ++CONFIG_BACKLIGHT_GPIO=m ++CONFIG_BACKLIGHT_LV5207LP=m ++CONFIG_BACKLIGHT_BD6107=m ++# CONFIG_BACKLIGHT_ARCXCNN is not set ++CONFIG_VGASTATE=m ++CONFIG_HDMI=y ++ ++# ++# Console display driver support ++# ++CONFIG_VGA_CONSOLE=y ++# CONFIG_VGACON_SOFT_SCROLLBACK is not set ++CONFIG_DUMMY_CONSOLE=y ++CONFIG_DUMMY_CONSOLE_COLUMNS=80 ++CONFIG_DUMMY_CONSOLE_ROWS=25 ++CONFIG_FRAMEBUFFER_CONSOLE=y ++CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y ++CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y ++# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set ++# CONFIG_LOGO is not set ++CONFIG_SOUND=m ++CONFIG_SOUND_OSS_CORE=y ++# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set ++CONFIG_SND=m ++CONFIG_SND_TIMER=m ++CONFIG_SND_PCM=m ++CONFIG_SND_PCM_ELD=y ++CONFIG_SND_PCM_IEC958=y ++CONFIG_SND_DMAENGINE_PCM=m ++CONFIG_SND_HWDEP=m ++CONFIG_SND_SEQ_DEVICE=m ++CONFIG_SND_RAWMIDI=m ++CONFIG_SND_JACK=y ++CONFIG_SND_JACK_INPUT_DEV=y ++CONFIG_SND_OSSEMUL=y ++CONFIG_SND_MIXER_OSS=m ++CONFIG_SND_PCM_OSS=m ++CONFIG_SND_PCM_OSS_PLUGINS=y ++CONFIG_SND_PCM_TIMER=y ++CONFIG_SND_HRTIMER=m ++CONFIG_SND_DYNAMIC_MINORS=y ++CONFIG_SND_MAX_CARDS=32 ++CONFIG_SND_SUPPORT_OLD_API=y ++CONFIG_SND_PROC_FS=y ++CONFIG_SND_VERBOSE_PROCFS=y ++# CONFIG_SND_VERBOSE_PRINTK is not set ++# CONFIG_SND_DEBUG is not set ++CONFIG_SND_VMASTER=y ++CONFIG_SND_DMA_SGBUF=y ++CONFIG_SND_SEQUENCER=m ++CONFIG_SND_SEQ_DUMMY=m ++# CONFIG_SND_SEQUENCER_OSS is not set ++CONFIG_SND_SEQ_HRTIMER_DEFAULT=y ++CONFIG_SND_SEQ_MIDI_EVENT=m ++CONFIG_SND_SEQ_MIDI=m ++CONFIG_SND_SEQ_MIDI_EMUL=m ++CONFIG_SND_SEQ_VIRMIDI=m ++CONFIG_SND_MPU401_UART=m ++CONFIG_SND_OPL3_LIB=m ++CONFIG_SND_OPL3_LIB_SEQ=m ++CONFIG_SND_VX_LIB=m ++CONFIG_SND_AC97_CODEC=m ++CONFIG_SND_DRIVERS=y ++CONFIG_SND_PCSP=m ++CONFIG_SND_DUMMY=m ++CONFIG_SND_ALOOP=m ++CONFIG_SND_VIRMIDI=m ++CONFIG_SND_MTPAV=m ++CONFIG_SND_MTS64=m ++CONFIG_SND_SERIAL_U16550=m ++CONFIG_SND_MPU401=m ++CONFIG_SND_PORTMAN2X4=m ++CONFIG_SND_AC97_POWER_SAVE=y ++CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 ++CONFIG_SND_SB_COMMON=m ++CONFIG_SND_PCI=y ++CONFIG_SND_AD1889=m ++CONFIG_SND_ALS4000=m ++CONFIG_SND_ASIHPI=m ++CONFIG_SND_ATIIXP=m ++CONFIG_SND_ATIIXP_MODEM=m ++CONFIG_SND_AU8810=m ++CONFIG_SND_AU8820=m ++CONFIG_SND_AU8830=m ++CONFIG_SND_AW2=m ++CONFIG_SND_BT87X=m ++# CONFIG_SND_BT87X_OVERCLOCK is not set ++CONFIG_SND_CA0106=m ++CONFIG_SND_CMIPCI=m ++CONFIG_SND_OXYGEN_LIB=m ++CONFIG_SND_OXYGEN=m ++CONFIG_SND_CS4281=m ++CONFIG_SND_CS46XX=m ++CONFIG_SND_CS46XX_NEW_DSP=y ++CONFIG_SND_CTXFI=m ++CONFIG_SND_DARLA20=m ++CONFIG_SND_GINA20=m ++CONFIG_SND_LAYLA20=m ++CONFIG_SND_DARLA24=m ++CONFIG_SND_GINA24=m ++CONFIG_SND_LAYLA24=m ++CONFIG_SND_MONA=m ++CONFIG_SND_MIA=m ++CONFIG_SND_ECHO3G=m ++CONFIG_SND_INDIGO=m ++CONFIG_SND_INDIGOIO=m ++CONFIG_SND_INDIGODJ=m ++CONFIG_SND_INDIGOIOX=m ++CONFIG_SND_INDIGODJX=m ++CONFIG_SND_ENS1370=m ++CONFIG_SND_ENS1371=m ++CONFIG_SND_FM801=m ++CONFIG_SND_FM801_TEA575X_BOOL=y ++CONFIG_SND_HDSP=m ++CONFIG_SND_HDSPM=m ++CONFIG_SND_ICE1724=m ++CONFIG_SND_INTEL8X0=m ++CONFIG_SND_INTEL8X0M=m ++CONFIG_SND_KORG1212=m ++CONFIG_SND_LOLA=m ++CONFIG_SND_LX6464ES=m ++CONFIG_SND_MIXART=m ++CONFIG_SND_NM256=m ++CONFIG_SND_PCXHR=m ++CONFIG_SND_RIPTIDE=m ++CONFIG_SND_RME32=m ++CONFIG_SND_RME96=m ++CONFIG_SND_RME9652=m ++CONFIG_SND_VIA82XX=m ++CONFIG_SND_VIA82XX_MODEM=m ++CONFIG_SND_VIRTUOSO=m ++CONFIG_SND_VX222=m ++CONFIG_SND_YMFPCI=m ++ ++# ++# HD-Audio ++# ++CONFIG_SND_HDA=m ++CONFIG_SND_HDA_INTEL=m ++CONFIG_SND_HDA_HWDEP=y ++CONFIG_SND_HDA_RECONFIG=y ++CONFIG_SND_HDA_INPUT_BEEP=y ++CONFIG_SND_HDA_INPUT_BEEP_MODE=0 ++CONFIG_SND_HDA_PATCH_LOADER=y ++CONFIG_SND_HDA_CODEC_REALTEK=m ++CONFIG_SND_HDA_CODEC_ANALOG=m ++CONFIG_SND_HDA_CODEC_SIGMATEL=m ++CONFIG_SND_HDA_CODEC_VIA=m ++CONFIG_SND_HDA_CODEC_HDMI=m ++CONFIG_SND_HDA_CODEC_CIRRUS=m ++CONFIG_SND_HDA_CODEC_CONEXANT=m ++CONFIG_SND_HDA_CODEC_CA0110=m ++CONFIG_SND_HDA_CODEC_CA0132=m ++CONFIG_SND_HDA_CODEC_CA0132_DSP=y ++CONFIG_SND_HDA_CODEC_CMEDIA=m ++CONFIG_SND_HDA_CODEC_SI3054=m ++CONFIG_SND_HDA_GENERIC=m ++CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 ++CONFIG_SND_HDA_CORE=m ++CONFIG_SND_HDA_DSP_LOADER=y ++CONFIG_SND_HDA_COMPONENT=y ++CONFIG_SND_HDA_I915=y ++CONFIG_SND_HDA_PREALLOC_SIZE=64 ++CONFIG_SND_SPI=y ++CONFIG_SND_USB=y ++CONFIG_SND_USB_AUDIO=m ++CONFIG_SND_USB_UA101=m ++CONFIG_SND_USB_USX2Y=m ++CONFIG_SND_USB_CAIAQ=m ++CONFIG_SND_USB_CAIAQ_INPUT=y ++CONFIG_SND_USB_US122L=m ++CONFIG_SND_USB_6FIRE=m ++CONFIG_SND_USB_HIFACE=m ++CONFIG_SND_BCD2000=m ++CONFIG_SND_USB_LINE6=m ++CONFIG_SND_USB_POD=m ++CONFIG_SND_USB_PODHD=m ++CONFIG_SND_USB_TONEPORT=m ++CONFIG_SND_USB_VARIAX=m ++CONFIG_SND_FIREWIRE=y ++CONFIG_SND_FIREWIRE_LIB=m ++CONFIG_SND_DICE=m ++CONFIG_SND_OXFW=m ++CONFIG_SND_ISIGHT=m ++CONFIG_SND_FIREWORKS=m ++CONFIG_SND_BEBOB=m ++CONFIG_SND_FIREWIRE_DIGI00X=m ++CONFIG_SND_FIREWIRE_TASCAM=m ++# CONFIG_SND_FIREWIRE_MOTU is not set ++# CONFIG_SND_FIREFACE is not set ++CONFIG_SND_PCMCIA=y ++CONFIG_SND_VXPOCKET=m ++CONFIG_SND_PDAUDIOCF=m ++CONFIG_SND_SOC=m ++CONFIG_SND_SOC_AC97_BUS=y ++CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y ++# CONFIG_SND_SOC_AMD_ACP is not set ++# CONFIG_SND_SOC_AMD_ACP3x is not set ++CONFIG_SND_ATMEL_SOC=m ++CONFIG_SND_DESIGNWARE_I2S=m ++# CONFIG_SND_DESIGNWARE_PCM is not set ++ ++# ++# SoC Audio for Freescale CPUs ++# ++ ++# ++# Common SoC Audio options for Freescale CPUs: ++# ++CONFIG_SND_SOC_FSL_ASRC=m ++CONFIG_SND_SOC_FSL_SAI=m ++CONFIG_SND_SOC_FSL_SSI=m ++CONFIG_SND_SOC_FSL_SPDIF=m ++CONFIG_SND_SOC_FSL_ESAI=m ++CONFIG_SND_SOC_IMX_AUDMUX=m ++# CONFIG_SND_I2S_HI6210_I2S is not set ++# CONFIG_SND_SOC_IMG is not set ++# CONFIG_SND_SOC_INTEL_SST_TOPLEVEL is not set ++ ++# ++# STMicroelectronics STM32 SOC audio support ++# ++# CONFIG_SND_SOC_XILINX_I2S is not set ++CONFIG_SND_SOC_XTFPGA_I2S=m ++# CONFIG_ZX_TDM is not set ++CONFIG_SND_SOC_I2C_AND_SPI=m ++ ++# ++# CODEC drivers ++# ++CONFIG_SND_SOC_AC97_CODEC=m ++CONFIG_SND_SOC_ADAU1701=m ++# CONFIG_SND_SOC_ADAU1761_I2C is not set ++# CONFIG_SND_SOC_ADAU1761_SPI is not set ++# CONFIG_SND_SOC_ADAU7002 is not set ++CONFIG_SND_SOC_AK4104=m ++# CONFIG_SND_SOC_AK4118 is not set ++# CONFIG_SND_SOC_AK4458 is not set ++CONFIG_SND_SOC_AK4554=m ++CONFIG_SND_SOC_AK4613=m ++CONFIG_SND_SOC_AK4642=m ++CONFIG_SND_SOC_AK5386=m ++# CONFIG_SND_SOC_AK5558 is not set ++CONFIG_SND_SOC_ALC5623=m ++# CONFIG_SND_SOC_BD28623 is not set ++# CONFIG_SND_SOC_BT_SCO is not set ++CONFIG_SND_SOC_CS35L32=m ++# CONFIG_SND_SOC_CS35L33 is not set ++# CONFIG_SND_SOC_CS35L34 is not set ++# CONFIG_SND_SOC_CS35L35 is not set ++# CONFIG_SND_SOC_CS42L42 is not set ++CONFIG_SND_SOC_CS42L51=m ++CONFIG_SND_SOC_CS42L51_I2C=m ++CONFIG_SND_SOC_CS42L52=m ++CONFIG_SND_SOC_CS42L56=m ++CONFIG_SND_SOC_CS42L73=m ++CONFIG_SND_SOC_CS4265=m ++CONFIG_SND_SOC_CS4270=m ++CONFIG_SND_SOC_CS4271=m ++CONFIG_SND_SOC_CS4271_I2C=m ++CONFIG_SND_SOC_CS4271_SPI=m ++CONFIG_SND_SOC_CS42XX8=m ++CONFIG_SND_SOC_CS42XX8_I2C=m ++# CONFIG_SND_SOC_CS43130 is not set ++CONFIG_SND_SOC_CS4349=m ++# CONFIG_SND_SOC_CS53L30 is not set ++# CONFIG_SND_SOC_DMIC is not set ++CONFIG_SND_SOC_HDMI_CODEC=m ++# CONFIG_SND_SOC_ES7134 is not set ++# CONFIG_SND_SOC_ES7241 is not set ++# CONFIG_SND_SOC_ES8316 is not set ++# CONFIG_SND_SOC_ES8328_I2C is not set ++# CONFIG_SND_SOC_ES8328_SPI is not set ++CONFIG_SND_SOC_GTM601=m ++# CONFIG_SND_SOC_INNO_RK3036 is not set ++# CONFIG_SND_SOC_MAX98088 is not set ++# CONFIG_SND_SOC_MAX98504 is not set ++# CONFIG_SND_SOC_MAX9867 is not set ++# CONFIG_SND_SOC_MAX98927 is not set ++# CONFIG_SND_SOC_MAX98373 is not set ++# CONFIG_SND_SOC_MAX9860 is not set ++# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set ++# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set ++CONFIG_SND_SOC_PCM1681=m ++# CONFIG_SND_SOC_PCM1789_I2C is not set ++# CONFIG_SND_SOC_PCM179X_I2C is not set ++# CONFIG_SND_SOC_PCM179X_SPI is not set ++# CONFIG_SND_SOC_PCM186X_I2C is not set ++# CONFIG_SND_SOC_PCM186X_SPI is not set ++# CONFIG_SND_SOC_PCM3060_I2C is not set ++# CONFIG_SND_SOC_PCM3060_SPI is not set ++# CONFIG_SND_SOC_PCM3168A_I2C is not set ++# CONFIG_SND_SOC_PCM3168A_SPI is not set ++CONFIG_SND_SOC_PCM512x=m ++CONFIG_SND_SOC_PCM512x_I2C=m ++CONFIG_SND_SOC_PCM512x_SPI=m ++# CONFIG_SND_SOC_RT5616 is not set ++CONFIG_SND_SOC_RT5631=m ++CONFIG_SND_SOC_SGTL5000=m ++CONFIG_SND_SOC_SI476X=m ++CONFIG_SND_SOC_SIGMADSP=m ++CONFIG_SND_SOC_SIGMADSP_I2C=m ++# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set ++CONFIG_SND_SOC_SIRF_AUDIO_CODEC=m ++CONFIG_SND_SOC_SPDIF=m ++# CONFIG_SND_SOC_SSM2305 is not set ++CONFIG_SND_SOC_SSM2602=m ++CONFIG_SND_SOC_SSM2602_SPI=m ++CONFIG_SND_SOC_SSM2602_I2C=m ++CONFIG_SND_SOC_SSM4567=m ++CONFIG_SND_SOC_STA32X=m ++CONFIG_SND_SOC_STA350=m ++CONFIG_SND_SOC_STI_SAS=m ++CONFIG_SND_SOC_TAS2552=m ++CONFIG_SND_SOC_TAS5086=m ++CONFIG_SND_SOC_TAS571X=m ++# CONFIG_SND_SOC_TAS5720 is not set ++# CONFIG_SND_SOC_TAS6424 is not set ++# CONFIG_SND_SOC_TDA7419 is not set ++CONFIG_SND_SOC_TFA9879=m ++CONFIG_SND_SOC_TLV320AIC23=m ++CONFIG_SND_SOC_TLV320AIC23_I2C=m ++CONFIG_SND_SOC_TLV320AIC23_SPI=m ++CONFIG_SND_SOC_TLV320AIC31XX=m ++# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set ++# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set ++CONFIG_SND_SOC_TLV320AIC3X=m ++CONFIG_SND_SOC_TS3A227E=m ++# CONFIG_SND_SOC_TSCS42XX is not set ++# CONFIG_SND_SOC_TSCS454 is not set ++CONFIG_SND_SOC_WM8510=m ++CONFIG_SND_SOC_WM8523=m ++# CONFIG_SND_SOC_WM8524 is not set ++CONFIG_SND_SOC_WM8580=m ++CONFIG_SND_SOC_WM8711=m ++CONFIG_SND_SOC_WM8728=m ++CONFIG_SND_SOC_WM8731=m ++CONFIG_SND_SOC_WM8737=m ++CONFIG_SND_SOC_WM8741=m ++CONFIG_SND_SOC_WM8750=m ++CONFIG_SND_SOC_WM8753=m ++CONFIG_SND_SOC_WM8770=m ++CONFIG_SND_SOC_WM8776=m ++# CONFIG_SND_SOC_WM8782 is not set ++CONFIG_SND_SOC_WM8804=m ++CONFIG_SND_SOC_WM8804_I2C=m ++CONFIG_SND_SOC_WM8804_SPI=m ++CONFIG_SND_SOC_WM8903=m ++# CONFIG_SND_SOC_WM8960 is not set ++CONFIG_SND_SOC_WM8962=m ++# CONFIG_SND_SOC_WM8974 is not set ++CONFIG_SND_SOC_WM8978=m ++# CONFIG_SND_SOC_WM8985 is not set ++# CONFIG_SND_SOC_ZX_AUD96P22 is not set ++# CONFIG_SND_SOC_MAX9759 is not set ++# CONFIG_SND_SOC_MT6351 is not set ++# CONFIG_SND_SOC_NAU8540 is not set ++# CONFIG_SND_SOC_NAU8810 is not set ++# CONFIG_SND_SOC_NAU8822 is not set ++# CONFIG_SND_SOC_NAU8824 is not set ++CONFIG_SND_SOC_TPA6130A2=m ++CONFIG_SND_SIMPLE_CARD_UTILS=m ++CONFIG_SND_SIMPLE_CARD=m ++CONFIG_SND_X86=y ++# CONFIG_HDMI_LPE_AUDIO is not set ++# CONFIG_SND_XEN_FRONTEND is not set ++CONFIG_AC97_BUS=m ++ ++# ++# HID support ++# ++CONFIG_HID=m ++CONFIG_HID_BATTERY_STRENGTH=y ++CONFIG_HIDRAW=y ++CONFIG_UHID=m ++CONFIG_HID_GENERIC=m ++ ++# ++# Special HID drivers ++# ++CONFIG_HID_A4TECH=m ++# CONFIG_HID_ACCUTOUCH is not set ++CONFIG_HID_ACRUX=m ++CONFIG_HID_ACRUX_FF=y ++CONFIG_HID_APPLE=m ++CONFIG_HID_APPLEIR=m ++# CONFIG_HID_ASUS is not set ++CONFIG_HID_AUREAL=m ++CONFIG_HID_BELKIN=m ++CONFIG_HID_BETOP_FF=m ++# CONFIG_HID_BIGBEN_FF is not set ++CONFIG_HID_CHERRY=m ++CONFIG_HID_CHICONY=m ++CONFIG_HID_CORSAIR=m ++# CONFIG_HID_COUGAR is not set ++CONFIG_HID_PRODIKEYS=m ++# CONFIG_HID_CMEDIA is not set ++CONFIG_HID_CP2112=m ++CONFIG_HID_CYPRESS=m ++CONFIG_HID_DRAGONRISE=m ++CONFIG_DRAGONRISE_FF=y ++CONFIG_HID_EMS_FF=m ++# CONFIG_HID_ELAN is not set ++CONFIG_HID_ELECOM=m ++CONFIG_HID_ELO=m ++CONFIG_HID_EZKEY=m ++CONFIG_HID_GEMBIRD=m ++CONFIG_HID_GFRM=m ++CONFIG_HID_HOLTEK=m ++CONFIG_HOLTEK_FF=y ++# CONFIG_HID_GOOGLE_HAMMER is not set ++CONFIG_HID_GT683R=m ++CONFIG_HID_KEYTOUCH=m ++CONFIG_HID_KYE=m ++CONFIG_HID_UCLOGIC=m ++CONFIG_HID_WALTOP=m ++CONFIG_HID_GYRATION=m ++CONFIG_HID_ICADE=m ++# CONFIG_HID_ITE is not set ++# CONFIG_HID_JABRA is not set ++CONFIG_HID_TWINHAN=m ++CONFIG_HID_KENSINGTON=m ++CONFIG_HID_LCPOWER=m ++CONFIG_HID_LED=m ++CONFIG_HID_LENOVO=m ++CONFIG_HID_LOGITECH=m ++CONFIG_HID_LOGITECH_DJ=m ++CONFIG_HID_LOGITECH_HIDPP=m ++CONFIG_LOGITECH_FF=y ++CONFIG_LOGIRUMBLEPAD2_FF=y ++CONFIG_LOGIG940_FF=y ++CONFIG_LOGIWHEELS_FF=y ++CONFIG_HID_MAGICMOUSE=m ++# CONFIG_HID_MAYFLASH is not set ++# CONFIG_HID_REDRAGON is not set ++CONFIG_HID_MICROSOFT=m ++CONFIG_HID_MONTEREY=m ++CONFIG_HID_MULTITOUCH=m ++# CONFIG_HID_NTI is not set ++CONFIG_HID_NTRIG=m ++CONFIG_HID_ORTEK=m ++CONFIG_HID_PANTHERLORD=m ++CONFIG_PANTHERLORD_FF=y ++CONFIG_HID_PENMOUNT=m ++CONFIG_HID_PETALYNX=m ++CONFIG_HID_PICOLCD=m ++CONFIG_HID_PICOLCD_FB=y ++CONFIG_HID_PICOLCD_BACKLIGHT=y ++CONFIG_HID_PICOLCD_LCD=y ++CONFIG_HID_PICOLCD_LEDS=y ++CONFIG_HID_PICOLCD_CIR=y ++CONFIG_HID_PLANTRONICS=m ++CONFIG_HID_PRIMAX=m ++# CONFIG_HID_RETRODE is not set ++CONFIG_HID_ROCCAT=m ++CONFIG_HID_SAITEK=m ++CONFIG_HID_SAMSUNG=m ++CONFIG_HID_SONY=m ++CONFIG_SONY_FF=y ++CONFIG_HID_SPEEDLINK=m ++# CONFIG_HID_STEAM is not set ++CONFIG_HID_STEELSERIES=m ++CONFIG_HID_SUNPLUS=m ++CONFIG_HID_RMI=m ++CONFIG_HID_GREENASIA=m ++CONFIG_GREENASIA_FF=y ++CONFIG_HID_HYPERV_MOUSE=m ++CONFIG_HID_SMARTJOYPLUS=m ++CONFIG_SMARTJOYPLUS_FF=y ++CONFIG_HID_TIVO=m ++CONFIG_HID_TOPSEED=m ++CONFIG_HID_THINGM=m ++CONFIG_HID_THRUSTMASTER=m ++CONFIG_THRUSTMASTER_FF=y ++# CONFIG_HID_UDRAW_PS3 is not set ++CONFIG_HID_WACOM=m ++CONFIG_HID_WIIMOTE=m ++CONFIG_HID_XINMO=m ++CONFIG_HID_ZEROPLUS=m ++CONFIG_ZEROPLUS_FF=y ++CONFIG_HID_ZYDACRON=m ++CONFIG_HID_SENSOR_HUB=m ++CONFIG_HID_SENSOR_CUSTOM_SENSOR=m ++# CONFIG_HID_ALPS is not set ++ ++# ++# USB HID support ++# ++CONFIG_USB_HID=m ++CONFIG_HID_PID=y ++CONFIG_USB_HIDDEV=y ++ ++# ++# USB HID Boot Protocol drivers ++# ++CONFIG_USB_KBD=m ++CONFIG_USB_MOUSE=m ++ ++# ++# I2C HID support ++# ++CONFIG_I2C_HID=m ++ ++# ++# Intel ISH HID support ++# ++# CONFIG_INTEL_ISH_HID is not set ++CONFIG_USB_OHCI_LITTLE_ENDIAN=y ++CONFIG_USB_SUPPORT=y ++CONFIG_USB_COMMON=y ++CONFIG_USB_ARCH_HAS_HCD=y ++CONFIG_USB=y ++CONFIG_USB_PCI=y ++CONFIG_USB_ANNOUNCE_NEW_DEVICES=y ++ ++# ++# Miscellaneous USB options ++# ++CONFIG_USB_DEFAULT_PERSIST=y ++CONFIG_USB_DYNAMIC_MINORS=y ++# CONFIG_USB_OTG is not set ++# CONFIG_USB_OTG_WHITELIST is not set ++# CONFIG_USB_OTG_BLACKLIST_HUB is not set ++# CONFIG_USB_LEDS_TRIGGER_USBPORT is not set ++CONFIG_USB_MON=m ++CONFIG_USB_WUSB=m ++CONFIG_USB_WUSB_CBAF=m ++# CONFIG_USB_WUSB_CBAF_DEBUG is not set ++ ++# ++# USB Host Controller Drivers ++# ++CONFIG_USB_C67X00_HCD=m ++CONFIG_USB_XHCI_HCD=y ++# CONFIG_USB_XHCI_DBGCAP is not set ++CONFIG_USB_XHCI_PCI=y ++CONFIG_USB_XHCI_PLATFORM=m ++CONFIG_USB_EHCI_HCD=y ++CONFIG_USB_EHCI_ROOT_HUB_TT=y ++CONFIG_USB_EHCI_TT_NEWSCHED=y ++CONFIG_USB_EHCI_PCI=y ++CONFIG_USB_EHCI_HCD_PLATFORM=y ++CONFIG_USB_OXU210HP_HCD=m ++CONFIG_USB_ISP116X_HCD=m ++CONFIG_USB_FOTG210_HCD=m ++CONFIG_USB_MAX3421_HCD=m ++CONFIG_USB_OHCI_HCD=y ++CONFIG_USB_OHCI_HCD_PCI=y ++CONFIG_USB_OHCI_HCD_PLATFORM=y ++CONFIG_USB_UHCI_HCD=y ++CONFIG_USB_U132_HCD=m ++CONFIG_USB_SL811_HCD=m ++CONFIG_USB_SL811_HCD_ISO=y ++CONFIG_USB_SL811_CS=m ++CONFIG_USB_R8A66597_HCD=m ++CONFIG_USB_WHCI_HCD=m ++CONFIG_USB_HWA_HCD=m ++CONFIG_USB_HCD_BCMA=m ++CONFIG_USB_HCD_SSB=m ++# CONFIG_USB_HCD_TEST_MODE is not set ++ ++# ++# USB Device Class drivers ++# ++CONFIG_USB_ACM=m ++CONFIG_USB_PRINTER=m ++CONFIG_USB_WDM=m ++CONFIG_USB_TMC=m ++ ++# ++# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may ++# ++ ++# ++# also be needed; see USB_STORAGE Help for more info ++# ++CONFIG_USB_STORAGE=m ++# CONFIG_USB_STORAGE_DEBUG is not set ++CONFIG_USB_STORAGE_REALTEK=m ++CONFIG_REALTEK_AUTOPM=y ++CONFIG_USB_STORAGE_DATAFAB=m ++CONFIG_USB_STORAGE_FREECOM=m ++CONFIG_USB_STORAGE_ISD200=m ++CONFIG_USB_STORAGE_USBAT=m ++CONFIG_USB_STORAGE_SDDR09=m ++CONFIG_USB_STORAGE_SDDR55=m ++CONFIG_USB_STORAGE_JUMPSHOT=m ++CONFIG_USB_STORAGE_ALAUDA=m ++CONFIG_USB_STORAGE_ONETOUCH=m ++CONFIG_USB_STORAGE_KARMA=m ++CONFIG_USB_STORAGE_CYPRESS_ATACB=m ++CONFIG_USB_STORAGE_ENE_UB6250=m ++CONFIG_USB_UAS=m ++ ++# ++# USB Imaging devices ++# ++CONFIG_USB_MDC800=m ++CONFIG_USB_MICROTEK=m ++CONFIG_USBIP_CORE=m ++CONFIG_USBIP_VHCI_HCD=m ++CONFIG_USBIP_VHCI_HC_PORTS=8 ++CONFIG_USBIP_VHCI_NR_HCS=1 ++CONFIG_USBIP_HOST=m ++# CONFIG_USBIP_VUDC is not set ++# CONFIG_USBIP_DEBUG is not set ++CONFIG_USB_MUSB_HDRC=m ++# CONFIG_USB_MUSB_HOST is not set ++# CONFIG_USB_MUSB_GADGET is not set ++CONFIG_USB_MUSB_DUAL_ROLE=y ++ ++# ++# Platform Glue Layer ++# ++ ++# ++# MUSB DMA mode ++# ++CONFIG_MUSB_PIO_ONLY=y ++CONFIG_USB_DWC3=m ++CONFIG_USB_DWC3_ULPI=y ++# CONFIG_USB_DWC3_HOST is not set ++# CONFIG_USB_DWC3_GADGET is not set ++CONFIG_USB_DWC3_DUAL_ROLE=y ++ ++# ++# Platform Glue Driver Support ++# ++CONFIG_USB_DWC3_PCI=m ++CONFIG_USB_DWC3_HAPS=m ++CONFIG_USB_DWC2=y ++CONFIG_USB_DWC2_HOST=y ++ ++# ++# Gadget/Dual-role mode requires USB Gadget support to be enabled ++# ++CONFIG_USB_DWC2_PCI=m ++# CONFIG_USB_DWC2_DEBUG is not set ++# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set ++CONFIG_USB_CHIPIDEA=m ++CONFIG_USB_CHIPIDEA_PCI=m ++CONFIG_USB_CHIPIDEA_UDC=y ++CONFIG_USB_CHIPIDEA_HOST=y ++CONFIG_USB_ISP1760=m ++CONFIG_USB_ISP1760_HCD=y ++CONFIG_USB_ISP1761_UDC=y ++# CONFIG_USB_ISP1760_HOST_ROLE is not set ++# CONFIG_USB_ISP1760_GADGET_ROLE is not set ++CONFIG_USB_ISP1760_DUAL_ROLE=y ++ ++# ++# USB port drivers ++# ++CONFIG_USB_USS720=m ++CONFIG_USB_SERIAL=m ++CONFIG_USB_SERIAL_GENERIC=y ++CONFIG_USB_SERIAL_SIMPLE=m ++CONFIG_USB_SERIAL_AIRCABLE=m ++CONFIG_USB_SERIAL_ARK3116=m ++CONFIG_USB_SERIAL_BELKIN=m ++CONFIG_USB_SERIAL_CH341=m ++CONFIG_USB_SERIAL_WHITEHEAT=m ++CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m ++CONFIG_USB_SERIAL_CP210X=m ++CONFIG_USB_SERIAL_CYPRESS_M8=m ++CONFIG_USB_SERIAL_EMPEG=m ++CONFIG_USB_SERIAL_FTDI_SIO=m ++CONFIG_USB_SERIAL_VISOR=m ++CONFIG_USB_SERIAL_IPAQ=m ++CONFIG_USB_SERIAL_IR=m ++CONFIG_USB_SERIAL_EDGEPORT=m ++CONFIG_USB_SERIAL_EDGEPORT_TI=m ++CONFIG_USB_SERIAL_F81232=m ++# CONFIG_USB_SERIAL_F8153X is not set ++CONFIG_USB_SERIAL_GARMIN=m ++CONFIG_USB_SERIAL_IPW=m ++CONFIG_USB_SERIAL_IUU=m ++CONFIG_USB_SERIAL_KEYSPAN_PDA=m ++CONFIG_USB_SERIAL_KEYSPAN=m ++CONFIG_USB_SERIAL_KLSI=m ++CONFIG_USB_SERIAL_KOBIL_SCT=m ++CONFIG_USB_SERIAL_MCT_U232=m ++CONFIG_USB_SERIAL_METRO=m ++CONFIG_USB_SERIAL_MOS7720=m ++CONFIG_USB_SERIAL_MOS7715_PARPORT=y ++CONFIG_USB_SERIAL_MOS7840=m ++CONFIG_USB_SERIAL_MXUPORT=m ++CONFIG_USB_SERIAL_NAVMAN=m ++CONFIG_USB_SERIAL_PL2303=m ++CONFIG_USB_SERIAL_OTI6858=m ++CONFIG_USB_SERIAL_QCAUX=m ++CONFIG_USB_SERIAL_QUALCOMM=m ++CONFIG_USB_SERIAL_SPCP8X5=m ++CONFIG_USB_SERIAL_SAFE=m ++# CONFIG_USB_SERIAL_SAFE_PADDED is not set ++CONFIG_USB_SERIAL_SIERRAWIRELESS=m ++CONFIG_USB_SERIAL_SYMBOL=m ++CONFIG_USB_SERIAL_TI=m ++CONFIG_USB_SERIAL_CYBERJACK=m ++CONFIG_USB_SERIAL_XIRCOM=m ++CONFIG_USB_SERIAL_WWAN=m ++CONFIG_USB_SERIAL_OPTION=m ++CONFIG_USB_SERIAL_OMNINET=m ++CONFIG_USB_SERIAL_OPTICON=m ++CONFIG_USB_SERIAL_XSENS_MT=m ++CONFIG_USB_SERIAL_WISHBONE=m ++CONFIG_USB_SERIAL_SSU100=m ++CONFIG_USB_SERIAL_QT2=m ++# CONFIG_USB_SERIAL_UPD78F0730 is not set ++CONFIG_USB_SERIAL_DEBUG=m ++ ++# ++# USB Miscellaneous drivers ++# ++CONFIG_USB_EMI62=m ++CONFIG_USB_EMI26=m ++CONFIG_USB_ADUTUX=m ++CONFIG_USB_SEVSEG=m ++CONFIG_USB_RIO500=m ++CONFIG_USB_LEGOTOWER=m ++CONFIG_USB_LCD=m ++CONFIG_USB_CYPRESS_CY7C63=m ++CONFIG_USB_CYTHERM=m ++CONFIG_USB_IDMOUSE=m ++CONFIG_USB_FTDI_ELAN=m ++CONFIG_USB_APPLEDISPLAY=m ++CONFIG_USB_SISUSBVGA=m ++# CONFIG_USB_SISUSBVGA_CON is not set ++CONFIG_USB_LD=m ++CONFIG_USB_TRANCEVIBRATOR=m ++CONFIG_USB_IOWARRIOR=m ++CONFIG_USB_TEST=m ++CONFIG_USB_EHSET_TEST_FIXTURE=m ++CONFIG_USB_ISIGHTFW=m ++CONFIG_USB_YUREX=m ++CONFIG_USB_EZUSB_FX2=m ++# CONFIG_USB_HUB_USB251XB is not set ++CONFIG_USB_HSIC_USB3503=m ++# CONFIG_USB_HSIC_USB4604 is not set ++CONFIG_USB_LINK_LAYER_TEST=m ++CONFIG_USB_CHAOSKEY=m ++CONFIG_USB_ATM=m ++CONFIG_USB_SPEEDTOUCH=m ++CONFIG_USB_CXACRU=m ++CONFIG_USB_UEAGLEATM=m ++CONFIG_USB_XUSBATM=m ++ ++# ++# USB Physical Layer drivers ++# ++CONFIG_USB_PHY=y ++CONFIG_NOP_USB_XCEIV=m ++CONFIG_USB_GPIO_VBUS=m ++CONFIG_TAHVO_USB=m ++CONFIG_TAHVO_USB_HOST_BY_DEFAULT=y ++CONFIG_USB_ISP1301=m ++CONFIG_USB_GADGET=m ++# CONFIG_USB_GADGET_DEBUG is not set ++# CONFIG_USB_GADGET_DEBUG_FILES is not set ++# CONFIG_USB_GADGET_DEBUG_FS is not set ++CONFIG_USB_GADGET_VBUS_DRAW=2 ++CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 ++# CONFIG_U_SERIAL_CONSOLE is not set ++ ++# ++# USB Peripheral Controller ++# ++CONFIG_USB_FOTG210_UDC=m ++CONFIG_USB_GR_UDC=m ++CONFIG_USB_R8A66597=m ++CONFIG_USB_PXA27X=m ++CONFIG_USB_MV_UDC=m ++CONFIG_USB_MV_U3D=m ++CONFIG_USB_SNP_CORE=m ++# CONFIG_USB_M66592 is not set ++CONFIG_USB_BDC_UDC=m ++ ++# ++# Platform Support ++# ++CONFIG_USB_BDC_PCI=m ++CONFIG_USB_AMD5536UDC=m ++CONFIG_USB_NET2272=m ++CONFIG_USB_NET2272_DMA=y ++CONFIG_USB_NET2280=m ++CONFIG_USB_GOKU=m ++CONFIG_USB_EG20T=m ++# CONFIG_USB_DUMMY_HCD is not set ++CONFIG_USB_LIBCOMPOSITE=m ++CONFIG_USB_F_ACM=m ++CONFIG_USB_F_SS_LB=m ++CONFIG_USB_U_SERIAL=m ++CONFIG_USB_U_ETHER=m ++CONFIG_USB_U_AUDIO=m ++CONFIG_USB_F_SERIAL=m ++CONFIG_USB_F_OBEX=m ++CONFIG_USB_F_NCM=m ++CONFIG_USB_F_ECM=m ++CONFIG_USB_F_PHONET=m ++CONFIG_USB_F_EEM=m ++CONFIG_USB_F_SUBSET=m ++CONFIG_USB_F_RNDIS=m ++CONFIG_USB_F_MASS_STORAGE=m ++CONFIG_USB_F_FS=m ++CONFIG_USB_F_UAC1=m ++CONFIG_USB_F_UAC2=m ++CONFIG_USB_F_UVC=m ++CONFIG_USB_F_MIDI=m ++CONFIG_USB_F_HID=m ++CONFIG_USB_F_PRINTER=m ++CONFIG_USB_F_TCM=m ++CONFIG_USB_CONFIGFS=m ++CONFIG_USB_CONFIGFS_SERIAL=y ++CONFIG_USB_CONFIGFS_ACM=y ++CONFIG_USB_CONFIGFS_OBEX=y ++CONFIG_USB_CONFIGFS_NCM=y ++CONFIG_USB_CONFIGFS_ECM=y ++CONFIG_USB_CONFIGFS_ECM_SUBSET=y ++CONFIG_USB_CONFIGFS_RNDIS=y ++CONFIG_USB_CONFIGFS_EEM=y ++CONFIG_USB_CONFIGFS_PHONET=y ++CONFIG_USB_CONFIGFS_MASS_STORAGE=y ++CONFIG_USB_CONFIGFS_F_LB_SS=y ++CONFIG_USB_CONFIGFS_F_FS=y ++CONFIG_USB_CONFIGFS_F_UAC1=y ++# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set ++CONFIG_USB_CONFIGFS_F_UAC2=y ++CONFIG_USB_CONFIGFS_F_MIDI=y ++CONFIG_USB_CONFIGFS_F_HID=y ++CONFIG_USB_CONFIGFS_F_UVC=y ++CONFIG_USB_CONFIGFS_F_PRINTER=y ++# CONFIG_USB_CONFIGFS_F_TCM is not set ++CONFIG_USB_ZERO=m ++CONFIG_USB_AUDIO=m ++CONFIG_GADGET_UAC1=y ++# CONFIG_GADGET_UAC1_LEGACY is not set ++CONFIG_USB_ETH=m ++CONFIG_USB_ETH_RNDIS=y ++CONFIG_USB_ETH_EEM=y ++CONFIG_USB_G_NCM=m ++CONFIG_USB_GADGETFS=m ++CONFIG_USB_FUNCTIONFS=m ++CONFIG_USB_FUNCTIONFS_ETH=y ++CONFIG_USB_FUNCTIONFS_RNDIS=y ++CONFIG_USB_FUNCTIONFS_GENERIC=y ++CONFIG_USB_MASS_STORAGE=m ++CONFIG_USB_GADGET_TARGET=m ++CONFIG_USB_G_SERIAL=m ++CONFIG_USB_MIDI_GADGET=m ++CONFIG_USB_G_PRINTER=m ++CONFIG_USB_CDC_COMPOSITE=m ++CONFIG_USB_G_NOKIA=m ++CONFIG_USB_G_ACM_MS=m ++# CONFIG_USB_G_MULTI is not set ++CONFIG_USB_G_HID=m ++CONFIG_USB_G_DBGP=m ++# CONFIG_USB_G_DBGP_PRINTK is not set ++CONFIG_USB_G_DBGP_SERIAL=y ++CONFIG_USB_G_WEBCAM=m ++# CONFIG_TYPEC is not set ++# CONFIG_USB_ROLE_SWITCH is not set ++CONFIG_USB_LED_TRIG=y ++CONFIG_USB_ULPI_BUS=m ++CONFIG_UWB=m ++CONFIG_UWB_HWA=m ++CONFIG_UWB_WHCI=m ++CONFIG_UWB_I1480U=m ++CONFIG_MMC=y ++CONFIG_MMC_BLOCK=m ++CONFIG_MMC_BLOCK_MINORS=8 ++CONFIG_SDIO_UART=m ++# CONFIG_MMC_TEST is not set ++ ++# ++# MMC/SD/SDIO Host Controller Drivers ++# ++# CONFIG_MMC_DEBUG is not set ++CONFIG_MMC_SDHCI=m ++CONFIG_MMC_SDHCI_PCI=m ++CONFIG_MMC_RICOH_MMC=y ++CONFIG_MMC_SDHCI_ACPI=m ++CONFIG_MMC_SDHCI_PLTFM=m ++# CONFIG_MMC_SDHCI_F_SDH30 is not set ++CONFIG_MMC_WBSD=m ++CONFIG_MMC_TIFM_SD=m ++CONFIG_MMC_SPI=m ++CONFIG_MMC_SDRICOH_CS=m ++CONFIG_MMC_CB710=m ++CONFIG_MMC_VIA_SDMMC=m ++CONFIG_MMC_VUB300=m ++CONFIG_MMC_USHC=m ++CONFIG_MMC_USDHI6ROL0=m ++CONFIG_MMC_CQHCI=m ++CONFIG_MMC_TOSHIBA_PCI=m ++CONFIG_MMC_MTK=m ++# CONFIG_MMC_SDHCI_XENON is not set ++CONFIG_MEMSTICK=m ++# CONFIG_MEMSTICK_DEBUG is not set ++ ++# ++# MemoryStick drivers ++# ++# CONFIG_MEMSTICK_UNSAFE_RESUME is not set ++CONFIG_MSPRO_BLOCK=m ++CONFIG_MS_BLOCK=m ++ ++# ++# MemoryStick Host Controller Drivers ++# ++CONFIG_MEMSTICK_TIFM_MS=m ++CONFIG_MEMSTICK_JMICRON_38X=m ++CONFIG_MEMSTICK_R592=m ++CONFIG_NEW_LEDS=y ++CONFIG_LEDS_CLASS=y ++CONFIG_LEDS_CLASS_FLASH=m ++# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set ++ ++# ++# LED drivers ++# ++CONFIG_LEDS_88PM860X=m ++# CONFIG_LEDS_APU is not set ++# CONFIG_LEDS_AS3645A is not set ++CONFIG_LEDS_LM3530=m ++CONFIG_LEDS_LM3533=m ++CONFIG_LEDS_LM3642=m ++# CONFIG_LEDS_LM3601X is not set ++# CONFIG_LEDS_MT6323 is not set ++CONFIG_LEDS_PCA9532=m ++CONFIG_LEDS_PCA9532_GPIO=y ++CONFIG_LEDS_GPIO=m ++CONFIG_LEDS_LP3944=m ++# CONFIG_LEDS_LP3952 is not set ++CONFIG_LEDS_LP55XX_COMMON=m ++CONFIG_LEDS_LP5521=m ++CONFIG_LEDS_LP5523=m ++CONFIG_LEDS_LP5562=m ++CONFIG_LEDS_LP8501=m ++CONFIG_LEDS_LP8788=m ++CONFIG_LEDS_CLEVO_MAIL=m ++CONFIG_LEDS_PCA955X=m ++# CONFIG_LEDS_PCA955X_GPIO is not set ++CONFIG_LEDS_PCA963X=m ++CONFIG_LEDS_WM831X_STATUS=m ++CONFIG_LEDS_WM8350=m ++CONFIG_LEDS_DA903X=m ++CONFIG_LEDS_DA9052=m ++CONFIG_LEDS_DAC124S085=m ++CONFIG_LEDS_PWM=m ++CONFIG_LEDS_REGULATOR=m ++CONFIG_LEDS_BD2802=m ++CONFIG_LEDS_INTEL_SS4200=m ++CONFIG_LEDS_LT3593=m ++CONFIG_LEDS_ADP5520=m ++CONFIG_LEDS_MC13783=m ++CONFIG_LEDS_TCA6507=m ++CONFIG_LEDS_TLC591XX=m ++CONFIG_LEDS_MAX8997=m ++CONFIG_LEDS_LM355x=m ++CONFIG_LEDS_MENF21BMC=m ++ ++# ++# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) ++# ++CONFIG_LEDS_BLINKM=m ++# CONFIG_LEDS_MLXCPLD is not set ++# CONFIG_LEDS_MLXREG is not set ++# CONFIG_LEDS_USER is not set ++# CONFIG_LEDS_NIC78BX is not set ++ ++# ++# LED Triggers ++# ++CONFIG_LEDS_TRIGGERS=y ++CONFIG_LEDS_TRIGGER_TIMER=m ++CONFIG_LEDS_TRIGGER_ONESHOT=m ++# CONFIG_LEDS_TRIGGER_DISK is not set ++# CONFIG_LEDS_TRIGGER_MTD is not set ++CONFIG_LEDS_TRIGGER_HEARTBEAT=m ++CONFIG_LEDS_TRIGGER_BACKLIGHT=m ++CONFIG_LEDS_TRIGGER_CPU=y ++# CONFIG_LEDS_TRIGGER_ACTIVITY is not set ++CONFIG_LEDS_TRIGGER_GPIO=m ++CONFIG_LEDS_TRIGGER_DEFAULT_ON=m ++ ++# ++# iptables trigger is under Netfilter config (LED target) ++# ++CONFIG_LEDS_TRIGGER_TRANSIENT=m ++CONFIG_LEDS_TRIGGER_CAMERA=m ++# CONFIG_LEDS_TRIGGER_PANIC is not set ++# CONFIG_LEDS_TRIGGER_NETDEV is not set ++# CONFIG_LEDS_TRIGGER_PATTERN is not set ++CONFIG_LEDS_TRIGGER_AUDIO=m ++# CONFIG_ACCESSIBILITY is not set ++CONFIG_INFINIBAND=m ++CONFIG_INFINIBAND_USER_MAD=m ++CONFIG_INFINIBAND_USER_ACCESS=m ++# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set ++CONFIG_INFINIBAND_USER_MEM=y ++CONFIG_INFINIBAND_ON_DEMAND_PAGING=y ++CONFIG_INFINIBAND_ADDR_TRANS=y ++CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y ++CONFIG_INFINIBAND_MTHCA=m ++# CONFIG_INFINIBAND_MTHCA_DEBUG is not set ++CONFIG_INFINIBAND_QIB=m ++CONFIG_INFINIBAND_QIB_DCA=y ++CONFIG_INFINIBAND_CXGB3=m ++CONFIG_INFINIBAND_CXGB4=m ++# CONFIG_INFINIBAND_I40IW is not set ++CONFIG_MLX4_INFINIBAND=m ++CONFIG_MLX5_INFINIBAND=m ++CONFIG_INFINIBAND_NES=m ++# CONFIG_INFINIBAND_NES_DEBUG is not set ++CONFIG_INFINIBAND_OCRDMA=m ++# CONFIG_INFINIBAND_VMWARE_PVRDMA is not set ++CONFIG_INFINIBAND_USNIC=m ++CONFIG_INFINIBAND_IPOIB=m ++CONFIG_INFINIBAND_IPOIB_CM=y ++# CONFIG_INFINIBAND_IPOIB_DEBUG is not set ++CONFIG_INFINIBAND_SRP=m ++CONFIG_INFINIBAND_SRPT=m ++CONFIG_INFINIBAND_ISER=m ++CONFIG_INFINIBAND_ISERT=m ++# CONFIG_INFINIBAND_OPA_VNIC is not set ++CONFIG_INFINIBAND_RDMAVT=m ++# CONFIG_RDMA_RXE is not set ++CONFIG_INFINIBAND_HFI1=m ++# CONFIG_HFI1_DEBUG_SDMA_ORDER is not set ++# CONFIG_SDMA_VERBOSITY is not set ++# CONFIG_INFINIBAND_QEDR is not set ++# CONFIG_INFINIBAND_BNXT_RE is not set ++CONFIG_EDAC_ATOMIC_SCRUB=y ++CONFIG_EDAC_SUPPORT=y ++CONFIG_EDAC=y ++# CONFIG_EDAC_LEGACY_SYSFS is not set ++# CONFIG_EDAC_DEBUG is not set ++CONFIG_EDAC_DECODE_MCE=m ++# CONFIG_EDAC_GHES is not set ++CONFIG_EDAC_AMD64=m ++# CONFIG_EDAC_AMD64_ERROR_INJECTION is not set ++CONFIG_EDAC_E752X=m ++CONFIG_EDAC_I82975X=m ++CONFIG_EDAC_I3000=m ++CONFIG_EDAC_I3200=m ++CONFIG_EDAC_IE31200=m ++CONFIG_EDAC_X38=m ++CONFIG_EDAC_I5400=m ++CONFIG_EDAC_I7CORE=m ++CONFIG_EDAC_I5000=m ++CONFIG_EDAC_I5100=m ++CONFIG_EDAC_I7300=m ++CONFIG_EDAC_SBRIDGE=m ++# CONFIG_EDAC_SKX is not set ++# CONFIG_EDAC_PND2 is not set ++CONFIG_RTC_LIB=y ++CONFIG_RTC_MC146818_LIB=y ++CONFIG_RTC_CLASS=y ++CONFIG_RTC_HCTOSYS=y ++CONFIG_RTC_HCTOSYS_DEVICE="rtc0" ++CONFIG_RTC_SYSTOHC=y ++CONFIG_RTC_SYSTOHC_DEVICE="rtc0" ++# CONFIG_RTC_DEBUG is not set ++CONFIG_RTC_NVMEM=y ++ ++# ++# RTC interfaces ++# ++CONFIG_RTC_INTF_SYSFS=y ++CONFIG_RTC_INTF_PROC=y ++CONFIG_RTC_INTF_DEV=y ++# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set ++# CONFIG_RTC_DRV_TEST is not set ++ ++# ++# I2C RTC drivers ++# ++CONFIG_RTC_DRV_88PM860X=m ++CONFIG_RTC_DRV_88PM80X=m ++CONFIG_RTC_DRV_ABB5ZES3=m ++CONFIG_RTC_DRV_ABX80X=m ++CONFIG_RTC_DRV_DS1307=m ++# CONFIG_RTC_DRV_DS1307_CENTURY is not set ++CONFIG_RTC_DRV_DS1374=m ++CONFIG_RTC_DRV_DS1374_WDT=y ++CONFIG_RTC_DRV_DS1672=m ++CONFIG_RTC_DRV_LP8788=m ++CONFIG_RTC_DRV_MAX6900=m ++CONFIG_RTC_DRV_MAX8907=m ++CONFIG_RTC_DRV_MAX8925=m ++CONFIG_RTC_DRV_MAX8998=m ++CONFIG_RTC_DRV_MAX8997=m ++CONFIG_RTC_DRV_RS5C372=m ++CONFIG_RTC_DRV_ISL1208=m ++CONFIG_RTC_DRV_ISL12022=m ++CONFIG_RTC_DRV_X1205=m ++CONFIG_RTC_DRV_PCF8523=m ++CONFIG_RTC_DRV_PCF85063=m ++# CONFIG_RTC_DRV_PCF85363 is not set ++CONFIG_RTC_DRV_PCF8563=m ++CONFIG_RTC_DRV_PCF8583=m ++CONFIG_RTC_DRV_M41T80=m ++CONFIG_RTC_DRV_M41T80_WDT=y ++CONFIG_RTC_DRV_BQ32K=m ++CONFIG_RTC_DRV_PALMAS=m ++CONFIG_RTC_DRV_TPS6586X=m ++CONFIG_RTC_DRV_TPS65910=m ++CONFIG_RTC_DRV_TPS80031=m ++CONFIG_RTC_DRV_RC5T583=m ++CONFIG_RTC_DRV_S35390A=m ++CONFIG_RTC_DRV_FM3130=m ++# CONFIG_RTC_DRV_RX8010 is not set ++CONFIG_RTC_DRV_RX8581=m ++CONFIG_RTC_DRV_RX8025=m ++CONFIG_RTC_DRV_EM3027=m ++CONFIG_RTC_DRV_RV8803=m ++CONFIG_RTC_DRV_S5M=m ++ ++# ++# SPI RTC drivers ++# ++CONFIG_RTC_DRV_M41T93=m ++CONFIG_RTC_DRV_M41T94=m ++# CONFIG_RTC_DRV_DS1302 is not set ++CONFIG_RTC_DRV_DS1305=m ++CONFIG_RTC_DRV_DS1343=m ++CONFIG_RTC_DRV_DS1347=m ++CONFIG_RTC_DRV_DS1390=m ++# CONFIG_RTC_DRV_MAX6916 is not set ++CONFIG_RTC_DRV_R9701=m ++CONFIG_RTC_DRV_RX4581=m ++# CONFIG_RTC_DRV_RX6110 is not set ++CONFIG_RTC_DRV_RS5C348=m ++CONFIG_RTC_DRV_MAX6902=m ++CONFIG_RTC_DRV_PCF2123=m ++CONFIG_RTC_DRV_MCP795=m ++CONFIG_RTC_I2C_AND_SPI=y ++ ++# ++# SPI and I2C RTC drivers ++# ++CONFIG_RTC_DRV_DS3232=m ++CONFIG_RTC_DRV_DS3232_HWMON=y ++CONFIG_RTC_DRV_PCF2127=m ++CONFIG_RTC_DRV_RV3029C2=m ++CONFIG_RTC_DRV_RV3029_HWMON=y ++ ++# ++# Platform RTC drivers ++# ++CONFIG_RTC_DRV_CMOS=y ++CONFIG_RTC_DRV_DS1286=m ++CONFIG_RTC_DRV_DS1511=m ++CONFIG_RTC_DRV_DS1553=m ++CONFIG_RTC_DRV_DS1685_FAMILY=m ++CONFIG_RTC_DRV_DS1685=y ++# CONFIG_RTC_DRV_DS1689 is not set ++# CONFIG_RTC_DRV_DS17285 is not set ++# CONFIG_RTC_DRV_DS17485 is not set ++# CONFIG_RTC_DRV_DS17885 is not set ++CONFIG_RTC_DRV_DS1742=m ++CONFIG_RTC_DRV_DS2404=m ++CONFIG_RTC_DRV_DA9052=m ++CONFIG_RTC_DRV_DA9055=m ++CONFIG_RTC_DRV_DA9063=m ++CONFIG_RTC_DRV_STK17TA8=m ++CONFIG_RTC_DRV_M48T86=m ++CONFIG_RTC_DRV_M48T35=m ++CONFIG_RTC_DRV_M48T59=m ++CONFIG_RTC_DRV_MSM6242=m ++CONFIG_RTC_DRV_BQ4802=m ++CONFIG_RTC_DRV_RP5C01=m ++CONFIG_RTC_DRV_V3020=m ++CONFIG_RTC_DRV_WM831X=m ++CONFIG_RTC_DRV_WM8350=m ++CONFIG_RTC_DRV_PCF50633=m ++CONFIG_RTC_DRV_AB3100=m ++# CONFIG_RTC_DRV_CROS_EC is not set ++ ++# ++# on-CPU RTC drivers ++# ++# CONFIG_RTC_DRV_FTRTC010 is not set ++CONFIG_RTC_DRV_PCAP=m ++CONFIG_RTC_DRV_MC13XXX=m ++CONFIG_RTC_DRV_MT6397=m ++ ++# ++# HID Sensor RTC drivers ++# ++CONFIG_RTC_DRV_HID_SENSOR_TIME=m ++CONFIG_DMADEVICES=y ++# CONFIG_DMADEVICES_DEBUG is not set ++ ++# ++# DMA Devices ++# ++CONFIG_DMA_ENGINE=y ++CONFIG_DMA_VIRTUAL_CHANNELS=m ++CONFIG_DMA_ACPI=y ++# CONFIG_ALTERA_MSGDMA is not set ++CONFIG_INTEL_IDMA64=m ++CONFIG_INTEL_IOATDMA=m ++CONFIG_INTEL_MIC_X100_DMA=m ++# CONFIG_QCOM_HIDMA_MGMT is not set ++# CONFIG_QCOM_HIDMA is not set ++CONFIG_DW_DMAC_CORE=y ++CONFIG_DW_DMAC=m ++CONFIG_DW_DMAC_PCI=y ++CONFIG_HSU_DMA=m ++ ++# ++# DMA Clients ++# ++CONFIG_ASYNC_TX_DMA=y ++# CONFIG_DMATEST is not set ++CONFIG_DMA_ENGINE_RAID=y ++ ++# ++# DMABUF options ++# ++CONFIG_SYNC_FILE=y ++# CONFIG_SW_SYNC is not set ++# CONFIG_UDMABUF is not set ++CONFIG_DCA=m ++CONFIG_AUXDISPLAY=y ++# CONFIG_HD44780 is not set ++CONFIG_KS0108=m ++CONFIG_KS0108_PORT=0x378 ++CONFIG_KS0108_DELAY=2 ++CONFIG_CFAG12864B=m ++CONFIG_CFAG12864B_RATE=20 ++# CONFIG_IMG_ASCII_LCD is not set ++CONFIG_PANEL=m ++CONFIG_PANEL_PARPORT=0 ++CONFIG_PANEL_PROFILE=5 ++# CONFIG_PANEL_CHANGE_MESSAGE is not set ++CONFIG_CHARLCD=m ++CONFIG_UIO=m ++CONFIG_UIO_CIF=m ++CONFIG_UIO_PDRV_GENIRQ=m ++CONFIG_UIO_DMEM_GENIRQ=m ++CONFIG_UIO_AEC=m ++CONFIG_UIO_SERCOS3=m ++CONFIG_UIO_PCI_GENERIC=m ++CONFIG_UIO_NETX=m ++CONFIG_UIO_PRUSS=m ++CONFIG_UIO_MF624=m ++# CONFIG_UIO_HV_GENERIC is not set ++CONFIG_VFIO_IOMMU_TYPE1=m ++CONFIG_VFIO_VIRQFD=m ++CONFIG_VFIO=m ++# CONFIG_VFIO_NOIOMMU is not set ++CONFIG_VFIO_PCI=m ++CONFIG_VFIO_PCI_VGA=y ++CONFIG_VFIO_PCI_MMAP=y ++CONFIG_VFIO_PCI_INTX=y ++CONFIG_VFIO_PCI_IGD=y ++# CONFIG_VFIO_MDEV is not set ++CONFIG_IRQ_BYPASS_MANAGER=m ++CONFIG_VIRT_DRIVERS=y ++# CONFIG_VBOXGUEST is not set ++CONFIG_VIRTIO=y ++CONFIG_VIRTIO_MENU=y ++CONFIG_VIRTIO_PCI=y ++CONFIG_VIRTIO_PCI_LEGACY=y ++CONFIG_VIRTIO_BALLOON=y ++CONFIG_VIRTIO_INPUT=m ++CONFIG_VIRTIO_MMIO=y ++CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y ++ ++# ++# Microsoft Hyper-V guest support ++# ++CONFIG_HYPERV=m ++CONFIG_HYPERV_TSCPAGE=y ++CONFIG_HYPERV_UTILS=m ++CONFIG_HYPERV_BALLOON=m ++ ++# ++# Xen driver support ++# ++CONFIG_XEN_BALLOON=y ++CONFIG_XEN_SELFBALLOONING=y ++CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y ++CONFIG_XEN_BALLOON_MEMORY_HOTPLUG_LIMIT=512 ++CONFIG_XEN_SCRUB_PAGES_DEFAULT=y ++CONFIG_XEN_DEV_EVTCHN=m ++CONFIG_XEN_BACKEND=y ++CONFIG_XENFS=m ++CONFIG_XEN_COMPAT_XENFS=y ++CONFIG_XEN_SYS_HYPERVISOR=y ++CONFIG_XEN_XENBUS_FRONTEND=y ++CONFIG_XEN_GNTDEV=m ++CONFIG_XEN_GRANT_DEV_ALLOC=m ++# CONFIG_XEN_GRANT_DMA_ALLOC is not set ++CONFIG_SWIOTLB_XEN=y ++CONFIG_XEN_TMEM=m ++CONFIG_XEN_PCIDEV_BACKEND=m ++# CONFIG_XEN_PVCALLS_FRONTEND is not set ++# CONFIG_XEN_PVCALLS_BACKEND is not set ++CONFIG_XEN_SCSI_BACKEND=m ++CONFIG_XEN_PRIVCMD=m ++CONFIG_XEN_ACPI_PROCESSOR=y ++CONFIG_XEN_MCE_LOG=y ++CONFIG_XEN_HAVE_PVMMU=y ++CONFIG_XEN_EFI=y ++CONFIG_XEN_AUTO_XLATE=y ++CONFIG_XEN_ACPI=y ++CONFIG_XEN_SYMS=y ++CONFIG_XEN_HAVE_VPMU=y ++CONFIG_STAGING=y ++CONFIG_PRISM2_USB=m ++CONFIG_COMEDI=m ++# CONFIG_COMEDI_DEBUG is not set ++CONFIG_COMEDI_DEFAULT_BUF_SIZE_KB=2048 ++CONFIG_COMEDI_DEFAULT_BUF_MAXSIZE_KB=20480 ++CONFIG_COMEDI_MISC_DRIVERS=y ++CONFIG_COMEDI_BOND=m ++CONFIG_COMEDI_TEST=m ++CONFIG_COMEDI_PARPORT=m ++CONFIG_COMEDI_ISA_DRIVERS=y ++CONFIG_COMEDI_PCL711=m ++CONFIG_COMEDI_PCL724=m ++CONFIG_COMEDI_PCL726=m ++CONFIG_COMEDI_PCL730=m ++CONFIG_COMEDI_PCL812=m ++CONFIG_COMEDI_PCL816=m ++CONFIG_COMEDI_PCL818=m ++CONFIG_COMEDI_PCM3724=m ++CONFIG_COMEDI_AMPLC_DIO200_ISA=m ++CONFIG_COMEDI_AMPLC_PC236_ISA=m ++CONFIG_COMEDI_AMPLC_PC263_ISA=m ++CONFIG_COMEDI_RTI800=m ++CONFIG_COMEDI_RTI802=m ++CONFIG_COMEDI_DAC02=m ++CONFIG_COMEDI_DAS16M1=m ++CONFIG_COMEDI_DAS08_ISA=m ++CONFIG_COMEDI_DAS16=m ++CONFIG_COMEDI_DAS800=m ++CONFIG_COMEDI_DAS1800=m ++CONFIG_COMEDI_DAS6402=m ++CONFIG_COMEDI_DT2801=m ++CONFIG_COMEDI_DT2811=m ++CONFIG_COMEDI_DT2814=m ++CONFIG_COMEDI_DT2815=m ++CONFIG_COMEDI_DT2817=m ++CONFIG_COMEDI_DT282X=m ++CONFIG_COMEDI_DMM32AT=m ++CONFIG_COMEDI_FL512=m ++CONFIG_COMEDI_AIO_AIO12_8=m ++CONFIG_COMEDI_AIO_IIRO_16=m ++CONFIG_COMEDI_II_PCI20KC=m ++CONFIG_COMEDI_C6XDIGIO=m ++CONFIG_COMEDI_MPC624=m ++CONFIG_COMEDI_ADQ12B=m ++CONFIG_COMEDI_NI_AT_A2150=m ++CONFIG_COMEDI_NI_AT_AO=m ++CONFIG_COMEDI_NI_ATMIO=m ++CONFIG_COMEDI_NI_ATMIO16D=m ++CONFIG_COMEDI_NI_LABPC_ISA=m ++CONFIG_COMEDI_PCMAD=m ++CONFIG_COMEDI_PCMDA12=m ++CONFIG_COMEDI_PCMMIO=m ++CONFIG_COMEDI_PCMUIO=m ++CONFIG_COMEDI_MULTIQ3=m ++CONFIG_COMEDI_S526=m ++CONFIG_COMEDI_PCI_DRIVERS=m ++CONFIG_COMEDI_8255_PCI=m ++CONFIG_COMEDI_ADDI_WATCHDOG=m ++CONFIG_COMEDI_ADDI_APCI_1032=m ++CONFIG_COMEDI_ADDI_APCI_1500=m ++CONFIG_COMEDI_ADDI_APCI_1516=m ++CONFIG_COMEDI_ADDI_APCI_1564=m ++CONFIG_COMEDI_ADDI_APCI_16XX=m ++CONFIG_COMEDI_ADDI_APCI_2032=m ++CONFIG_COMEDI_ADDI_APCI_2200=m ++CONFIG_COMEDI_ADDI_APCI_3120=m ++CONFIG_COMEDI_ADDI_APCI_3501=m ++CONFIG_COMEDI_ADDI_APCI_3XXX=m ++CONFIG_COMEDI_ADL_PCI6208=m ++CONFIG_COMEDI_ADL_PCI7X3X=m ++CONFIG_COMEDI_ADL_PCI8164=m ++CONFIG_COMEDI_ADL_PCI9111=m ++CONFIG_COMEDI_ADL_PCI9118=m ++CONFIG_COMEDI_ADV_PCI1710=m ++# CONFIG_COMEDI_ADV_PCI1720 is not set ++CONFIG_COMEDI_ADV_PCI1723=m ++CONFIG_COMEDI_ADV_PCI1724=m ++# CONFIG_COMEDI_ADV_PCI1760 is not set ++CONFIG_COMEDI_ADV_PCI_DIO=m ++CONFIG_COMEDI_AMPLC_DIO200_PCI=m ++CONFIG_COMEDI_AMPLC_PC236_PCI=m ++CONFIG_COMEDI_AMPLC_PC263_PCI=m ++CONFIG_COMEDI_AMPLC_PCI224=m ++CONFIG_COMEDI_AMPLC_PCI230=m ++CONFIG_COMEDI_CONTEC_PCI_DIO=m ++CONFIG_COMEDI_DAS08_PCI=m ++CONFIG_COMEDI_DT3000=m ++CONFIG_COMEDI_DYNA_PCI10XX=m ++CONFIG_COMEDI_GSC_HPDI=m ++CONFIG_COMEDI_MF6X4=m ++CONFIG_COMEDI_ICP_MULTI=m ++CONFIG_COMEDI_DAQBOARD2000=m ++CONFIG_COMEDI_JR3_PCI=m ++CONFIG_COMEDI_KE_COUNTER=m ++CONFIG_COMEDI_CB_PCIDAS64=m ++CONFIG_COMEDI_CB_PCIDAS=m ++CONFIG_COMEDI_CB_PCIDDA=m ++CONFIG_COMEDI_CB_PCIMDAS=m ++CONFIG_COMEDI_CB_PCIMDDA=m ++CONFIG_COMEDI_ME4000=m ++CONFIG_COMEDI_ME_DAQ=m ++CONFIG_COMEDI_NI_6527=m ++CONFIG_COMEDI_NI_65XX=m ++CONFIG_COMEDI_NI_660X=m ++CONFIG_COMEDI_NI_670X=m ++CONFIG_COMEDI_NI_LABPC_PCI=m ++CONFIG_COMEDI_NI_PCIDIO=m ++CONFIG_COMEDI_NI_PCIMIO=m ++CONFIG_COMEDI_RTD520=m ++CONFIG_COMEDI_S626=m ++CONFIG_COMEDI_MITE=m ++CONFIG_COMEDI_NI_TIOCMD=m ++CONFIG_COMEDI_PCMCIA_DRIVERS=m ++CONFIG_COMEDI_CB_DAS16_CS=m ++CONFIG_COMEDI_DAS08_CS=m ++CONFIG_COMEDI_NI_DAQ_700_CS=m ++CONFIG_COMEDI_NI_DAQ_DIO24_CS=m ++CONFIG_COMEDI_NI_LABPC_CS=m ++CONFIG_COMEDI_NI_MIO_CS=m ++CONFIG_COMEDI_QUATECH_DAQP_CS=m ++CONFIG_COMEDI_USB_DRIVERS=m ++CONFIG_COMEDI_DT9812=m ++CONFIG_COMEDI_NI_USB6501=m ++CONFIG_COMEDI_USBDUX=m ++CONFIG_COMEDI_USBDUXFAST=m ++CONFIG_COMEDI_USBDUXSIGMA=m ++CONFIG_COMEDI_VMK80XX=m ++CONFIG_COMEDI_8254=m ++CONFIG_COMEDI_8255=m ++CONFIG_COMEDI_8255_SA=m ++CONFIG_COMEDI_KCOMEDILIB=m ++CONFIG_COMEDI_AMPLC_DIO200=m ++CONFIG_COMEDI_AMPLC_PC236=m ++CONFIG_COMEDI_DAS08=m ++CONFIG_COMEDI_ISADMA=m ++CONFIG_COMEDI_NI_LABPC=m ++CONFIG_COMEDI_NI_LABPC_ISADMA=m ++CONFIG_COMEDI_NI_TIO=m ++CONFIG_COMEDI_NI_ROUTING=m ++CONFIG_RTL8192U=m ++CONFIG_RTLLIB=m ++CONFIG_RTLLIB_CRYPTO_CCMP=m ++CONFIG_RTLLIB_CRYPTO_TKIP=m ++CONFIG_RTLLIB_CRYPTO_WEP=m ++CONFIG_RTL8192E=m ++# CONFIG_RTL8723BS is not set ++CONFIG_R8712U=m ++CONFIG_R8188EU=m ++CONFIG_88EU_AP_MODE=y ++# CONFIG_R8822BE is not set ++CONFIG_RTS5208=m ++CONFIG_VT6655=m ++CONFIG_VT6656=m ++ ++# ++# IIO staging drivers ++# ++ ++# ++# Accelerometers ++# ++CONFIG_ADIS16203=m ++CONFIG_ADIS16240=m ++ ++# ++# Analog to digital converters ++# ++CONFIG_AD7606=m ++CONFIG_AD7606_IFACE_PARALLEL=m ++CONFIG_AD7606_IFACE_SPI=m ++CONFIG_AD7780=m ++CONFIG_AD7816=m ++CONFIG_AD7192=m ++CONFIG_AD7280=m ++ ++# ++# Analog digital bi-direction converters ++# ++CONFIG_ADT7316=m ++CONFIG_ADT7316_SPI=m ++CONFIG_ADT7316_I2C=m ++ ++# ++# Capacitance to digital converters ++# ++CONFIG_AD7150=m ++CONFIG_AD7152=m ++CONFIG_AD7746=m ++ ++# ++# Direct Digital Synthesis ++# ++CONFIG_AD9832=m ++CONFIG_AD9834=m ++ ++# ++# Network Analyzer, Impedance Converters ++# ++CONFIG_AD5933=m ++ ++# ++# Active energy metering IC ++# ++CONFIG_ADE7854=m ++CONFIG_ADE7854_I2C=m ++CONFIG_ADE7854_SPI=m ++ ++# ++# Resolver to digital converters ++# ++CONFIG_AD2S1210=m ++CONFIG_FB_SM750=m ++CONFIG_FB_XGI=m ++ ++# ++# Speakup console speech ++# ++CONFIG_SPEAKUP=m ++CONFIG_SPEAKUP_SYNTH_ACNTSA=m ++CONFIG_SPEAKUP_SYNTH_APOLLO=m ++CONFIG_SPEAKUP_SYNTH_AUDPTR=m ++CONFIG_SPEAKUP_SYNTH_BNS=m ++CONFIG_SPEAKUP_SYNTH_DECTLK=m ++CONFIG_SPEAKUP_SYNTH_DECEXT=m ++CONFIG_SPEAKUP_SYNTH_LTLK=m ++CONFIG_SPEAKUP_SYNTH_SOFT=m ++CONFIG_SPEAKUP_SYNTH_SPKOUT=m ++CONFIG_SPEAKUP_SYNTH_TXPRT=m ++CONFIG_SPEAKUP_SYNTH_DUMMY=m ++CONFIG_STAGING_MEDIA=y ++CONFIG_I2C_BCM2048=m ++CONFIG_SOC_CAMERA_IMX074=m ++CONFIG_SOC_CAMERA_MT9T031=m ++CONFIG_VIDEO_ZORAN=m ++CONFIG_VIDEO_ZORAN_DC30=m ++CONFIG_VIDEO_ZORAN_ZR36060=m ++CONFIG_VIDEO_ZORAN_BUZ=m ++CONFIG_VIDEO_ZORAN_DC10=m ++CONFIG_VIDEO_ZORAN_LML33=m ++CONFIG_VIDEO_ZORAN_LML33R10=m ++CONFIG_VIDEO_ZORAN_AVS6EYES=m ++# CONFIG_VIDEO_IPU3_IMGU is not set ++ ++# ++# Android ++# ++CONFIG_LTE_GDM724X=m ++CONFIG_FIREWIRE_SERIAL=m ++CONFIG_FWTTY_MAX_TOTAL_PORTS=64 ++CONFIG_FWTTY_MAX_CARD_PORTS=32 ++CONFIG_GS_FPGABOOT=m ++CONFIG_UNISYSSPAR=y ++CONFIG_UNISYS_VISORNIC=m ++CONFIG_UNISYS_VISORINPUT=m ++CONFIG_UNISYS_VISORHBA=m ++CONFIG_FB_TFT=m ++CONFIG_FB_TFT_AGM1264K_FL=m ++CONFIG_FB_TFT_BD663474=m ++CONFIG_FB_TFT_HX8340BN=m ++CONFIG_FB_TFT_HX8347D=m ++CONFIG_FB_TFT_HX8353D=m ++CONFIG_FB_TFT_HX8357D=m ++CONFIG_FB_TFT_ILI9163=m ++CONFIG_FB_TFT_ILI9320=m ++CONFIG_FB_TFT_ILI9325=m ++CONFIG_FB_TFT_ILI9340=m ++CONFIG_FB_TFT_ILI9341=m ++CONFIG_FB_TFT_ILI9481=m ++CONFIG_FB_TFT_ILI9486=m ++CONFIG_FB_TFT_PCD8544=m ++CONFIG_FB_TFT_RA8875=m ++CONFIG_FB_TFT_S6D02A1=m ++CONFIG_FB_TFT_S6D1121=m ++# CONFIG_FB_TFT_SH1106 is not set ++CONFIG_FB_TFT_SSD1289=m ++# CONFIG_FB_TFT_SSD1305 is not set ++CONFIG_FB_TFT_SSD1306=m ++CONFIG_FB_TFT_SSD1331=m ++CONFIG_FB_TFT_SSD1351=m ++CONFIG_FB_TFT_ST7735R=m ++CONFIG_FB_TFT_ST7789V=m ++CONFIG_FB_TFT_TINYLCD=m ++CONFIG_FB_TFT_TLS8204=m ++CONFIG_FB_TFT_UC1611=m ++CONFIG_FB_TFT_UC1701=m ++CONFIG_FB_TFT_UPD161704=m ++CONFIG_FB_TFT_WATTEROTT=m ++CONFIG_FB_FLEX=m ++CONFIG_FB_TFT_FBTFT_DEVICE=m ++# CONFIG_WILC1000_SDIO is not set ++# CONFIG_WILC1000_SPI is not set ++CONFIG_MOST=m ++# CONFIG_MOST_CDEV is not set ++# CONFIG_MOST_NET is not set ++# CONFIG_MOST_SOUND is not set ++# CONFIG_MOST_VIDEO is not set ++# CONFIG_MOST_I2C is not set ++# CONFIG_MOST_USB is not set ++# CONFIG_KS7010 is not set ++# CONFIG_GREYBUS is not set ++# CONFIG_DRM_VBOXVIDEO is not set ++# CONFIG_PI433 is not set ++# CONFIG_MTK_MMC is not set ++ ++# ++# Gasket devices ++# ++# CONFIG_STAGING_GASKET_FRAMEWORK is not set ++# CONFIG_XIL_AXIS_FIFO is not set ++# CONFIG_EROFS_FS is not set ++CONFIG_X86_PLATFORM_DEVICES=y ++CONFIG_ACER_WMI=m ++# CONFIG_ACER_WIRELESS is not set ++CONFIG_ACERHDF=m ++CONFIG_ALIENWARE_WMI=m ++CONFIG_ASUS_LAPTOP=m ++CONFIG_DCDBAS=m ++# CONFIG_DELL_SMBIOS is not set ++CONFIG_DELL_WMI_AIO=m ++# CONFIG_DELL_WMI_LED is not set ++CONFIG_DELL_SMO8800=m ++CONFIG_DELL_RBTN=m ++CONFIG_DELL_RBU=m ++CONFIG_FUJITSU_LAPTOP=m ++CONFIG_FUJITSU_TABLET=m ++CONFIG_AMILO_RFKILL=m ++# CONFIG_GPD_POCKET_FAN is not set ++CONFIG_HP_ACCEL=m ++CONFIG_HP_WIRELESS=m ++CONFIG_HP_WMI=m ++# CONFIG_LG_LAPTOP is not set ++CONFIG_MSI_LAPTOP=m ++CONFIG_PANASONIC_LAPTOP=m ++CONFIG_COMPAL_LAPTOP=m ++CONFIG_SONY_LAPTOP=m ++CONFIG_SONYPI_COMPAT=y ++CONFIG_IDEAPAD_LAPTOP=m ++# CONFIG_SURFACE3_WMI is not set ++CONFIG_THINKPAD_ACPI=m ++CONFIG_THINKPAD_ACPI_ALSA_SUPPORT=y ++CONFIG_THINKPAD_ACPI_DEBUGFACILITIES=y ++# CONFIG_THINKPAD_ACPI_DEBUG is not set ++# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set ++CONFIG_THINKPAD_ACPI_VIDEO=y ++CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y ++CONFIG_SENSORS_HDAPS=m ++CONFIG_INTEL_MENLOW=m ++CONFIG_EEEPC_LAPTOP=m ++CONFIG_ASUS_WMI=m ++CONFIG_ASUS_NB_WMI=m ++CONFIG_EEEPC_WMI=m ++# CONFIG_ASUS_WIRELESS is not set ++CONFIG_ACPI_WMI=m ++CONFIG_WMI_BMOF=m ++# CONFIG_INTEL_WMI_THUNDERBOLT is not set ++CONFIG_MSI_WMI=m ++# CONFIG_PEAQ_WMI is not set ++CONFIG_TOPSTAR_LAPTOP=m ++CONFIG_ACPI_TOSHIBA=m ++CONFIG_TOSHIBA_BT_RFKILL=m ++CONFIG_TOSHIBA_HAPS=m ++CONFIG_TOSHIBA_WMI=m ++CONFIG_ACPI_CMPC=m ++# CONFIG_INTEL_INT0002_VGPIO is not set ++# CONFIG_INTEL_HID_EVENT is not set ++# CONFIG_INTEL_VBTN is not set ++CONFIG_INTEL_IPS=m ++# CONFIG_INTEL_PMC_CORE is not set ++CONFIG_IBM_RTL=m ++CONFIG_SAMSUNG_LAPTOP=m ++CONFIG_MXM_WMI=m ++CONFIG_INTEL_OAKTRAIL=m ++CONFIG_SAMSUNG_Q10=m ++CONFIG_APPLE_GMUX=m ++CONFIG_INTEL_RST=m ++CONFIG_INTEL_SMARTCONNECT=m ++CONFIG_INTEL_PMC_IPC=m ++CONFIG_SURFACE_PRO3_BUTTON=m ++# CONFIG_SURFACE_3_BUTTON is not set ++# CONFIG_INTEL_PUNIT_IPC is not set ++# CONFIG_MLX_PLATFORM is not set ++# CONFIG_INTEL_TURBO_MAX_3 is not set ++# CONFIG_I2C_MULTI_INSTANTIATE is not set ++# CONFIG_INTEL_ATOMISP2_PM is not set ++# CONFIG_HUAWEI_WMI is not set ++CONFIG_PMC_ATOM=y ++CONFIG_CHROME_PLATFORMS=y ++CONFIG_CHROMEOS_LAPTOP=m ++CONFIG_CHROMEOS_PSTORE=m ++# CONFIG_CHROMEOS_TBMC is not set ++# CONFIG_CROS_EC_I2C is not set ++# CONFIG_CROS_EC_SPI is not set ++CONFIG_CROS_EC_LPC=m ++# CONFIG_CROS_EC_LPC_MEC is not set ++CONFIG_CROS_EC_PROTO=y ++# CONFIG_CROS_KBD_LED_BACKLIGHT is not set ++# CONFIG_MELLANOX_PLATFORM is not set ++CONFIG_CLKDEV_LOOKUP=y ++CONFIG_HAVE_CLK_PREPARE=y ++CONFIG_COMMON_CLK=y ++ ++# ++# Common Clock Framework ++# ++CONFIG_COMMON_CLK_WM831X=m ++# CONFIG_COMMON_CLK_MAX9485 is not set ++CONFIG_COMMON_CLK_SI5351=m ++# CONFIG_COMMON_CLK_SI544 is not set ++CONFIG_COMMON_CLK_CDCE706=m ++# CONFIG_COMMON_CLK_CS2000_CP is not set ++CONFIG_COMMON_CLK_S2MPS11=m ++CONFIG_CLK_TWL6040=m ++CONFIG_COMMON_CLK_PALMAS=m ++CONFIG_COMMON_CLK_PWM=m ++# CONFIG_HWSPINLOCK is not set ++ ++# ++# Clock Source drivers ++# ++CONFIG_CLKEVT_I8253=y ++CONFIG_I8253_LOCK=y ++CONFIG_CLKBLD_I8253=y ++CONFIG_MAILBOX=y ++CONFIG_PCC=y ++CONFIG_ALTERA_MBOX=m ++CONFIG_IOMMU_API=y ++CONFIG_IOMMU_SUPPORT=y ++ ++# ++# Generic IOMMU Pagetable Support ++# ++# CONFIG_IOMMU_DEBUGFS is not set ++# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set ++CONFIG_IOMMU_IOVA=y ++CONFIG_AMD_IOMMU=y ++CONFIG_AMD_IOMMU_V2=m ++CONFIG_DMAR_TABLE=y ++CONFIG_INTEL_IOMMU=y ++CONFIG_INTEL_IOMMU_SVM=y ++# CONFIG_INTEL_IOMMU_DEFAULT_ON is not set ++CONFIG_INTEL_IOMMU_FLOPPY_WA=y ++CONFIG_IRQ_REMAP=y ++ ++# ++# Remoteproc drivers ++# ++CONFIG_REMOTEPROC=m ++ ++# ++# Rpmsg drivers ++# ++# CONFIG_RPMSG_QCOM_GLINK_RPM is not set ++# CONFIG_RPMSG_VIRTIO is not set ++# CONFIG_SOUNDWIRE is not set ++ ++# ++# SOC (System On Chip) specific Drivers ++# ++ ++# ++# Amlogic SoC drivers ++# ++ ++# ++# Broadcom SoC drivers ++# ++ ++# ++# NXP/Freescale QorIQ SoC drivers ++# ++ ++# ++# i.MX SoC drivers ++# ++ ++# ++# Qualcomm SoC drivers ++# ++CONFIG_SOC_TI=y ++ ++# ++# Xilinx SoC drivers ++# ++# CONFIG_XILINX_VCU is not set ++CONFIG_PM_DEVFREQ=y ++ ++# ++# DEVFREQ Governors ++# ++CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=y ++CONFIG_DEVFREQ_GOV_PERFORMANCE=y ++CONFIG_DEVFREQ_GOV_POWERSAVE=y ++CONFIG_DEVFREQ_GOV_USERSPACE=y ++# CONFIG_DEVFREQ_GOV_PASSIVE is not set ++ ++# ++# DEVFREQ Drivers ++# ++CONFIG_PM_DEVFREQ_EVENT=y ++CONFIG_EXTCON=y ++ ++# ++# Extcon Device Drivers ++# ++CONFIG_EXTCON_ADC_JACK=m ++CONFIG_EXTCON_ARIZONA=m ++CONFIG_EXTCON_GPIO=m ++# CONFIG_EXTCON_INTEL_INT3496 is not set ++CONFIG_EXTCON_MAX14577=m ++# CONFIG_EXTCON_MAX3355 is not set ++CONFIG_EXTCON_MAX77693=m ++CONFIG_EXTCON_MAX77843=m ++CONFIG_EXTCON_MAX8997=m ++CONFIG_EXTCON_PALMAS=m ++CONFIG_EXTCON_RT8973A=m ++CONFIG_EXTCON_SM5502=m ++CONFIG_EXTCON_USB_GPIO=m ++# CONFIG_EXTCON_USBC_CROS_EC is not set ++CONFIG_MEMORY=y ++CONFIG_IIO=m ++CONFIG_IIO_BUFFER=y ++CONFIG_IIO_BUFFER_CB=m ++# CONFIG_IIO_BUFFER_HW_CONSUMER is not set ++CONFIG_IIO_KFIFO_BUF=m ++CONFIG_IIO_TRIGGERED_BUFFER=m ++# CONFIG_IIO_CONFIGFS is not set ++CONFIG_IIO_TRIGGER=y ++CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 ++# CONFIG_IIO_SW_DEVICE is not set ++# CONFIG_IIO_SW_TRIGGER is not set ++CONFIG_IIO_TRIGGERED_EVENT=m ++ ++# ++# Accelerometers ++# ++CONFIG_ADIS16201=m ++CONFIG_ADIS16209=m ++# CONFIG_ADXL372_SPI is not set ++# CONFIG_ADXL372_I2C is not set ++CONFIG_BMA180=m ++# CONFIG_BMA220 is not set ++CONFIG_BMC150_ACCEL=m ++CONFIG_BMC150_ACCEL_I2C=m ++CONFIG_BMC150_ACCEL_SPI=m ++# CONFIG_DA280 is not set ++# CONFIG_DA311 is not set ++# CONFIG_DMARD09 is not set ++# CONFIG_DMARD10 is not set ++CONFIG_HID_SENSOR_ACCEL_3D=m ++# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set ++CONFIG_IIO_ST_ACCEL_3AXIS=m ++CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m ++CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m ++CONFIG_KXSD9=m ++CONFIG_KXSD9_SPI=m ++CONFIG_KXSD9_I2C=m ++CONFIG_KXCJK1013=m ++# CONFIG_MC3230 is not set ++# CONFIG_MMA7455_I2C is not set ++# CONFIG_MMA7455_SPI is not set ++# CONFIG_MMA7660 is not set ++CONFIG_MMA8452=m ++CONFIG_MMA9551_CORE=m ++CONFIG_MMA9551=m ++CONFIG_MMA9553=m ++CONFIG_MXC4005=m ++# CONFIG_MXC6255 is not set ++CONFIG_SCA3000=m ++CONFIG_STK8312=m ++CONFIG_STK8BA50=m ++ ++# ++# Analog to digital converters ++# ++CONFIG_AD_SIGMA_DELTA=m ++# CONFIG_AD7124 is not set ++CONFIG_AD7266=m ++CONFIG_AD7291=m ++CONFIG_AD7298=m ++CONFIG_AD7476=m ++# CONFIG_AD7766 is not set ++CONFIG_AD7791=m ++CONFIG_AD7793=m ++CONFIG_AD7887=m ++CONFIG_AD7923=m ++# CONFIG_AD7949 is not set ++CONFIG_AD799X=m ++CONFIG_CC10001_ADC=m ++CONFIG_DA9150_GPADC=m ++# CONFIG_DLN2_ADC is not set ++CONFIG_HI8435=m ++# CONFIG_HX711 is not set ++# CONFIG_INA2XX_ADC is not set ++CONFIG_LP8788_ADC=m ++# CONFIG_LTC2471 is not set ++# CONFIG_LTC2485 is not set ++# CONFIG_LTC2497 is not set ++CONFIG_MAX1027=m ++# CONFIG_MAX11100 is not set ++# CONFIG_MAX1118 is not set ++CONFIG_MAX1363=m ++# CONFIG_MAX9611 is not set ++CONFIG_MCP320X=m ++CONFIG_MCP3422=m ++# CONFIG_MCP3911 is not set ++CONFIG_MEN_Z188_ADC=m ++CONFIG_NAU7802=m ++# CONFIG_PALMAS_GPADC is not set ++CONFIG_QCOM_VADC_COMMON=m ++CONFIG_QCOM_SPMI_IADC=m ++CONFIG_QCOM_SPMI_VADC=m ++# CONFIG_QCOM_SPMI_ADC5 is not set ++CONFIG_TI_ADC081C=m ++# CONFIG_TI_ADC0832 is not set ++# CONFIG_TI_ADC084S021 is not set ++# CONFIG_TI_ADC12138 is not set ++# CONFIG_TI_ADC108S102 is not set ++CONFIG_TI_ADC128S052=m ++# CONFIG_TI_ADC161S626 is not set ++# CONFIG_TI_ADS1015 is not set ++# CONFIG_TI_ADS7950 is not set ++CONFIG_TI_AM335X_ADC=m ++# CONFIG_TI_TLC4541 is not set ++CONFIG_TWL4030_MADC=m ++CONFIG_TWL6030_GPADC=m ++CONFIG_VIPERBOARD_ADC=m ++ ++# ++# Analog Front Ends ++# ++ ++# ++# Amplifiers ++# ++CONFIG_AD8366=m ++ ++# ++# Chemical Sensors ++# ++# CONFIG_ATLAS_PH_SENSOR is not set ++# CONFIG_BME680 is not set ++# CONFIG_CCS811 is not set ++# CONFIG_IAQCORE is not set ++CONFIG_VZ89X=m ++# CONFIG_IIO_CROS_EC_SENSORS_CORE is not set ++ ++# ++# Hid Sensor IIO Common ++# ++CONFIG_HID_SENSOR_IIO_COMMON=m ++CONFIG_HID_SENSOR_IIO_TRIGGER=m ++CONFIG_IIO_MS_SENSORS_I2C=m ++ ++# ++# SSP Sensor Common ++# ++CONFIG_IIO_SSP_SENSORS_COMMONS=m ++CONFIG_IIO_SSP_SENSORHUB=m ++CONFIG_IIO_ST_SENSORS_I2C=m ++CONFIG_IIO_ST_SENSORS_SPI=m ++CONFIG_IIO_ST_SENSORS_CORE=m ++ ++# ++# Counters ++# ++ ++# ++# Digital to analog converters ++# ++CONFIG_AD5064=m ++CONFIG_AD5360=m ++CONFIG_AD5380=m ++CONFIG_AD5421=m ++CONFIG_AD5446=m ++CONFIG_AD5449=m ++# CONFIG_AD5592R is not set ++# CONFIG_AD5593R is not set ++CONFIG_AD5504=m ++CONFIG_AD5624R_SPI=m ++# CONFIG_LTC1660 is not set ++# CONFIG_LTC2632 is not set ++# CONFIG_AD5686_SPI is not set ++# CONFIG_AD5696_I2C is not set ++CONFIG_AD5755=m ++# CONFIG_AD5758 is not set ++# CONFIG_AD5761 is not set ++CONFIG_AD5764=m ++CONFIG_AD5791=m ++CONFIG_AD7303=m ++# CONFIG_AD8801 is not set ++# CONFIG_DS4424 is not set ++CONFIG_M62332=m ++CONFIG_MAX517=m ++CONFIG_MCP4725=m ++CONFIG_MCP4922=m ++# CONFIG_TI_DAC082S085 is not set ++# CONFIG_TI_DAC5571 is not set ++# CONFIG_TI_DAC7311 is not set ++ ++# ++# IIO dummy driver ++# ++ ++# ++# Frequency Synthesizers DDS/PLL ++# ++ ++# ++# Clock Generator/Distribution ++# ++CONFIG_AD9523=m ++ ++# ++# Phase-Locked Loop (PLL) frequency synthesizers ++# ++CONFIG_ADF4350=m ++ ++# ++# Digital gyroscope sensors ++# ++CONFIG_ADIS16080=m ++CONFIG_ADIS16130=m ++CONFIG_ADIS16136=m ++CONFIG_ADIS16260=m ++CONFIG_ADXRS450=m ++CONFIG_BMG160=m ++CONFIG_BMG160_I2C=m ++CONFIG_BMG160_SPI=m ++CONFIG_HID_SENSOR_GYRO_3D=m ++# CONFIG_MPU3050_I2C is not set ++CONFIG_IIO_ST_GYRO_3AXIS=m ++CONFIG_IIO_ST_GYRO_I2C_3AXIS=m ++CONFIG_IIO_ST_GYRO_SPI_3AXIS=m ++CONFIG_ITG3200=m ++ ++# ++# Health Sensors ++# ++ ++# ++# Heart Rate Monitors ++# ++# CONFIG_AFE4403 is not set ++# CONFIG_AFE4404 is not set ++# CONFIG_MAX30100 is not set ++# CONFIG_MAX30102 is not set ++ ++# ++# Humidity sensors ++# ++# CONFIG_AM2315 is not set ++CONFIG_DHT11=m ++CONFIG_HDC100X=m ++# CONFIG_HID_SENSOR_HUMIDITY is not set ++# CONFIG_HTS221 is not set ++CONFIG_HTU21=m ++CONFIG_SI7005=m ++CONFIG_SI7020=m ++ ++# ++# Inertial measurement units ++# ++CONFIG_ADIS16400=m ++CONFIG_ADIS16480=m ++# CONFIG_BMI160_I2C is not set ++# CONFIG_BMI160_SPI is not set ++CONFIG_KMX61=m ++# CONFIG_INV_MPU6050_I2C is not set ++# CONFIG_INV_MPU6050_SPI is not set ++# CONFIG_IIO_ST_LSM6DSX is not set ++CONFIG_IIO_ADIS_LIB=m ++CONFIG_IIO_ADIS_LIB_BUFFER=y ++ ++# ++# Light sensors ++# ++CONFIG_ACPI_ALS=m ++CONFIG_ADJD_S311=m ++CONFIG_AL3320A=m ++CONFIG_APDS9300=m ++CONFIG_APDS9960=m ++CONFIG_BH1750=m ++# CONFIG_BH1780 is not set ++CONFIG_CM32181=m ++CONFIG_CM3232=m ++CONFIG_CM3323=m ++CONFIG_CM36651=m ++CONFIG_GP2AP020A00F=m ++CONFIG_SENSORS_ISL29018=m ++CONFIG_SENSORS_ISL29028=m ++CONFIG_ISL29125=m ++CONFIG_HID_SENSOR_ALS=m ++CONFIG_HID_SENSOR_PROX=m ++CONFIG_JSA1212=m ++CONFIG_RPR0521=m ++CONFIG_SENSORS_LM3533=m ++CONFIG_LTR501=m ++# CONFIG_LV0104CS is not set ++# CONFIG_MAX44000 is not set ++CONFIG_OPT3001=m ++CONFIG_PA12203001=m ++# CONFIG_SI1133 is not set ++# CONFIG_SI1145 is not set ++CONFIG_STK3310=m ++# CONFIG_ST_UVIS25 is not set ++CONFIG_TCS3414=m ++CONFIG_TCS3472=m ++CONFIG_SENSORS_TSL2563=m ++CONFIG_TSL2583=m ++# CONFIG_TSL2772 is not set ++CONFIG_TSL4531=m ++CONFIG_US5182D=m ++CONFIG_VCNL4000=m ++# CONFIG_VCNL4035 is not set ++# CONFIG_VEML6070 is not set ++# CONFIG_VL6180 is not set ++# CONFIG_ZOPT2201 is not set ++ ++# ++# Magnetometer sensors ++# ++CONFIG_AK8975=m ++CONFIG_AK09911=m ++# CONFIG_BMC150_MAGN_I2C is not set ++# CONFIG_BMC150_MAGN_SPI is not set ++CONFIG_MAG3110=m ++CONFIG_HID_SENSOR_MAGNETOMETER_3D=m ++CONFIG_MMC35240=m ++CONFIG_IIO_ST_MAGN_3AXIS=m ++CONFIG_IIO_ST_MAGN_I2C_3AXIS=m ++CONFIG_IIO_ST_MAGN_SPI_3AXIS=m ++CONFIG_SENSORS_HMC5843=m ++CONFIG_SENSORS_HMC5843_I2C=m ++CONFIG_SENSORS_HMC5843_SPI=m ++# CONFIG_SENSORS_RM3100_I2C is not set ++# CONFIG_SENSORS_RM3100_SPI is not set ++ ++# ++# Multiplexers ++# ++ ++# ++# Inclinometer sensors ++# ++CONFIG_HID_SENSOR_INCLINOMETER_3D=m ++CONFIG_HID_SENSOR_DEVICE_ROTATION=m ++ ++# ++# Triggers - standalone ++# ++CONFIG_IIO_INTERRUPT_TRIGGER=m ++CONFIG_IIO_SYSFS_TRIGGER=m ++ ++# ++# Digital potentiometers ++# ++# CONFIG_AD5272 is not set ++# CONFIG_DS1803 is not set ++# CONFIG_MAX5481 is not set ++# CONFIG_MAX5487 is not set ++# CONFIG_MCP4018 is not set ++# CONFIG_MCP4131 is not set ++CONFIG_MCP4531=m ++# CONFIG_MCP41010 is not set ++# CONFIG_TPL0102 is not set ++ ++# ++# Digital potentiostats ++# ++# CONFIG_LMP91000 is not set ++ ++# ++# Pressure sensors ++# ++# CONFIG_ABP060MG is not set ++CONFIG_BMP280=m ++CONFIG_BMP280_I2C=m ++CONFIG_BMP280_SPI=m ++CONFIG_HID_SENSOR_PRESS=m ++# CONFIG_HP03 is not set ++# CONFIG_MPL115_I2C is not set ++# CONFIG_MPL115_SPI is not set ++CONFIG_MPL3115=m ++CONFIG_MS5611=m ++CONFIG_MS5611_I2C=m ++CONFIG_MS5611_SPI=m ++CONFIG_MS5637=m ++CONFIG_IIO_ST_PRESS=m ++CONFIG_IIO_ST_PRESS_I2C=m ++CONFIG_IIO_ST_PRESS_SPI=m ++CONFIG_T5403=m ++# CONFIG_HP206C is not set ++# CONFIG_ZPA2326 is not set ++ ++# ++# Lightning sensors ++# ++CONFIG_AS3935=m ++ ++# ++# Proximity and distance sensors ++# ++# CONFIG_ISL29501 is not set ++CONFIG_LIDAR_LITE_V2=m ++# CONFIG_RFD77402 is not set ++# CONFIG_SRF04 is not set ++CONFIG_SX9500=m ++# CONFIG_SRF08 is not set ++# CONFIG_VL53L0X_I2C is not set ++ ++# ++# Resolver to digital converters ++# ++CONFIG_AD2S90=m ++CONFIG_AD2S1200=m ++ ++# ++# Temperature sensors ++# ++# CONFIG_MAXIM_THERMOCOUPLE is not set ++# CONFIG_HID_SENSOR_TEMP is not set ++CONFIG_MLX90614=m ++# CONFIG_MLX90632 is not set ++CONFIG_TMP006=m ++# CONFIG_TMP007 is not set ++CONFIG_TSYS01=m ++CONFIG_TSYS02D=m ++CONFIG_NTB=m ++# CONFIG_NTB_AMD is not set ++# CONFIG_NTB_IDT is not set ++CONFIG_NTB_INTEL=m ++# CONFIG_NTB_SWITCHTEC is not set ++CONFIG_NTB_PINGPONG=m ++CONFIG_NTB_TOOL=m ++# CONFIG_NTB_PERF is not set ++CONFIG_NTB_TRANSPORT=m ++CONFIG_VME_BUS=y ++ ++# ++# VME Bridge Drivers ++# ++CONFIG_VME_CA91CX42=m ++CONFIG_VME_TSI148=m ++# CONFIG_VME_FAKE is not set ++ ++# ++# VME Board Drivers ++# ++CONFIG_VMIVME_7805=m ++ ++# ++# VME Device Drivers ++# ++CONFIG_VME_USER=m ++CONFIG_PWM=y ++CONFIG_PWM_SYSFS=y ++CONFIG_PWM_CRC=y ++# CONFIG_PWM_CROS_EC is not set ++CONFIG_PWM_LP3943=m ++CONFIG_PWM_LPSS=m ++CONFIG_PWM_LPSS_PCI=m ++CONFIG_PWM_LPSS_PLATFORM=m ++CONFIG_PWM_PCA9685=m ++CONFIG_PWM_TWL=m ++CONFIG_PWM_TWL_LED=m ++ ++# ++# IRQ chip support ++# ++CONFIG_ARM_GIC_MAX_NR=1 ++CONFIG_IPACK_BUS=m ++CONFIG_BOARD_TPCI200=m ++CONFIG_SERIAL_IPOCTAL=m ++CONFIG_RESET_CONTROLLER=y ++# CONFIG_RESET_TI_SYSCON is not set ++CONFIG_FMC=m ++CONFIG_FMC_FAKEDEV=m ++CONFIG_FMC_TRIVIAL=m ++CONFIG_FMC_WRITE_EEPROM=m ++CONFIG_FMC_CHARDEV=m ++ ++# ++# PHY Subsystem ++# ++CONFIG_GENERIC_PHY=y ++CONFIG_BCM_KONA_USB2_PHY=m ++CONFIG_PHY_PXA_28NM_HSIC=m ++CONFIG_PHY_PXA_28NM_USB2=m ++# CONFIG_PHY_CPCAP_USB is not set ++# CONFIG_PHY_QCOM_USB_HS is not set ++# CONFIG_PHY_QCOM_USB_HSIC is not set ++CONFIG_PHY_SAMSUNG_USB2=m ++CONFIG_PHY_TUSB1210=m ++CONFIG_POWERCAP=y ++CONFIG_INTEL_RAPL=m ++# CONFIG_IDLE_INJECT is not set ++CONFIG_MCB=m ++CONFIG_MCB_PCI=m ++# CONFIG_MCB_LPC is not set ++ ++# ++# Performance monitor support ++# ++CONFIG_RAS=y ++# CONFIG_RAS_CEC is not set ++CONFIG_THUNDERBOLT=m ++ ++# ++# Android ++# ++# CONFIG_ANDROID is not set ++CONFIG_LIBNVDIMM=y ++CONFIG_BLK_DEV_PMEM=m ++CONFIG_ND_BLK=m ++CONFIG_ND_CLAIM=y ++CONFIG_ND_BTT=m ++CONFIG_BTT=y ++CONFIG_ND_PFN=m ++CONFIG_NVDIMM_PFN=y ++CONFIG_NVDIMM_DAX=y ++CONFIG_NVDIMM_KEYS=y ++CONFIG_DAX_DRIVER=y ++CONFIG_DAX=y ++CONFIG_DEV_DAX=m ++CONFIG_DEV_DAX_PMEM=m ++CONFIG_NVMEM=y ++ ++# ++# HW tracing support ++# ++CONFIG_STM=m ++# CONFIG_STM_PROTO_BASIC is not set ++# CONFIG_STM_PROTO_SYS_T is not set ++CONFIG_STM_DUMMY=m ++CONFIG_STM_SOURCE_CONSOLE=m ++# CONFIG_STM_SOURCE_HEARTBEAT is not set ++# CONFIG_STM_SOURCE_FTRACE is not set ++CONFIG_INTEL_TH=m ++CONFIG_INTEL_TH_PCI=m ++# CONFIG_INTEL_TH_ACPI is not set ++CONFIG_INTEL_TH_GTH=m ++CONFIG_INTEL_TH_STH=m ++CONFIG_INTEL_TH_MSU=m ++CONFIG_INTEL_TH_PTI=m ++# CONFIG_INTEL_TH_DEBUG is not set ++CONFIG_FPGA=m ++# CONFIG_ALTERA_PR_IP_CORE is not set ++# CONFIG_FPGA_MGR_ALTERA_PS_SPI is not set ++# CONFIG_FPGA_MGR_ALTERA_CVP is not set ++# CONFIG_FPGA_MGR_XILINX_SPI is not set ++# CONFIG_FPGA_MGR_MACHXO2_SPI is not set ++# CONFIG_FPGA_BRIDGE is not set ++# CONFIG_FPGA_DFL is not set ++CONFIG_PM_OPP=y ++CONFIG_UNISYS_VISORBUS=m ++# CONFIG_SIOX is not set ++# CONFIG_SLIMBUS is not set ++ ++# ++# File systems ++# ++CONFIG_DCACHE_WORD_ACCESS=y ++CONFIG_FS_IOMAP=y ++# CONFIG_EXT2_FS is not set ++# CONFIG_EXT3_FS is not set ++CONFIG_EXT4_FS=y ++CONFIG_EXT4_USE_FOR_EXT2=y ++CONFIG_EXT4_FS_POSIX_ACL=y ++CONFIG_EXT4_FS_SECURITY=y ++# CONFIG_EXT4_ENCRYPTION is not set ++# CONFIG_EXT4_DEBUG is not set ++CONFIG_JBD2=y ++# CONFIG_JBD2_DEBUG is not set ++CONFIG_FS_MBCACHE=y ++CONFIG_REISERFS_FS=m ++# CONFIG_REISERFS_CHECK is not set ++# CONFIG_REISERFS_PROC_INFO is not set ++CONFIG_REISERFS_FS_XATTR=y ++CONFIG_REISERFS_FS_POSIX_ACL=y ++CONFIG_REISERFS_FS_SECURITY=y ++CONFIG_JFS_FS=m ++CONFIG_JFS_POSIX_ACL=y ++CONFIG_JFS_SECURITY=y ++# CONFIG_JFS_DEBUG is not set ++CONFIG_JFS_STATISTICS=y ++CONFIG_XFS_FS=m ++CONFIG_XFS_QUOTA=y ++CONFIG_XFS_POSIX_ACL=y ++CONFIG_XFS_RT=y ++# CONFIG_XFS_ONLINE_SCRUB is not set ++# CONFIG_XFS_WARN is not set ++# CONFIG_XFS_DEBUG is not set ++CONFIG_GFS2_FS=m ++CONFIG_GFS2_FS_LOCKING_DLM=y ++CONFIG_OCFS2_FS=m ++CONFIG_OCFS2_FS_O2CB=m ++CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m ++CONFIG_OCFS2_FS_STATS=y ++CONFIG_OCFS2_DEBUG_MASKLOG=y ++# CONFIG_OCFS2_DEBUG_FS is not set ++CONFIG_BTRFS_FS=m ++CONFIG_BTRFS_FS_POSIX_ACL=y ++# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set ++# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set ++# CONFIG_BTRFS_DEBUG is not set ++# CONFIG_BTRFS_ASSERT is not set ++# CONFIG_BTRFS_FS_REF_VERIFY is not set ++CONFIG_NILFS2_FS=m ++CONFIG_F2FS_FS=m ++CONFIG_F2FS_STAT_FS=y ++CONFIG_F2FS_FS_XATTR=y ++CONFIG_F2FS_FS_POSIX_ACL=y ++CONFIG_F2FS_FS_SECURITY=y ++# CONFIG_F2FS_CHECK_FS is not set ++CONFIG_F2FS_FS_ENCRYPTION=y ++# CONFIG_F2FS_IO_TRACE is not set ++# CONFIG_F2FS_FAULT_INJECTION is not set ++CONFIG_FS_DAX=y ++CONFIG_FS_DAX_PMD=y ++CONFIG_FS_POSIX_ACL=y ++CONFIG_EXPORTFS=y ++# CONFIG_EXPORTFS_BLOCK_OPS is not set ++CONFIG_FILE_LOCKING=y ++CONFIG_MANDATORY_FILE_LOCKING=y ++CONFIG_FS_ENCRYPTION=m ++CONFIG_FSNOTIFY=y ++CONFIG_DNOTIFY=y ++CONFIG_INOTIFY_USER=y ++CONFIG_FANOTIFY=y ++CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y ++CONFIG_QUOTA=y ++CONFIG_QUOTA_NETLINK_INTERFACE=y ++# CONFIG_PRINT_QUOTA_WARNING is not set ++# CONFIG_QUOTA_DEBUG is not set ++CONFIG_QUOTA_TREE=m ++CONFIG_QFMT_V1=m ++CONFIG_QFMT_V2=m ++CONFIG_QUOTACTL=y ++CONFIG_QUOTACTL_COMPAT=y ++CONFIG_AUTOFS4_FS=m ++CONFIG_AUTOFS_FS=m ++CONFIG_FUSE_FS=y ++CONFIG_CUSE=m ++CONFIG_OVERLAY_FS=y ++# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set ++CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y ++# CONFIG_OVERLAY_FS_INDEX is not set ++# CONFIG_OVERLAY_FS_XINO_AUTO is not set ++# CONFIG_OVERLAY_FS_METACOPY is not set ++ ++# ++# Caches ++# ++CONFIG_FSCACHE=m ++CONFIG_FSCACHE_STATS=y ++# CONFIG_FSCACHE_HISTOGRAM is not set ++# CONFIG_FSCACHE_DEBUG is not set ++# CONFIG_FSCACHE_OBJECT_LIST is not set ++CONFIG_CACHEFILES=m ++# CONFIG_CACHEFILES_DEBUG is not set ++# CONFIG_CACHEFILES_HISTOGRAM is not set ++ ++# ++# CD-ROM/DVD Filesystems ++# ++CONFIG_ISO9660_FS=m ++CONFIG_JOLIET=y ++CONFIG_ZISOFS=y ++CONFIG_UDF_FS=m ++ ++# ++# DOS/FAT/NT Filesystems ++# ++CONFIG_FAT_FS=y ++CONFIG_MSDOS_FS=m ++CONFIG_VFAT_FS=y ++CONFIG_FAT_DEFAULT_CODEPAGE=437 ++CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" ++# CONFIG_FAT_DEFAULT_UTF8 is not set ++CONFIG_NTFS_FS=m ++# CONFIG_NTFS_DEBUG is not set ++# CONFIG_NTFS_RW is not set ++ ++# ++# Pseudo filesystems ++# ++CONFIG_PROC_FS=y ++CONFIG_PROC_KCORE=y ++CONFIG_PROC_VMCORE=y ++# CONFIG_PROC_VMCORE_DEVICE_DUMP is not set ++CONFIG_PROC_SYSCTL=y ++CONFIG_PROC_PAGE_MONITOR=y ++CONFIG_PROC_CHILDREN=y ++CONFIG_KERNFS=y ++CONFIG_SYSFS=y ++CONFIG_TMPFS=y ++CONFIG_TMPFS_POSIX_ACL=y ++CONFIG_TMPFS_XATTR=y ++CONFIG_HUGETLBFS=y ++CONFIG_HUGETLB_PAGE=y ++CONFIG_MEMFD_CREATE=y ++CONFIG_ARCH_HAS_GIGANTIC_PAGE=y ++CONFIG_CONFIGFS_FS=m ++CONFIG_EFIVAR_FS=y ++CONFIG_MISC_FILESYSTEMS=y ++# CONFIG_ORANGEFS_FS is not set ++CONFIG_ADFS_FS=m ++# CONFIG_ADFS_FS_RW is not set ++CONFIG_AFFS_FS=m ++CONFIG_ECRYPT_FS=y ++CONFIG_ECRYPT_FS_MESSAGING=y ++CONFIG_HFS_FS=m ++CONFIG_HFSPLUS_FS=m ++CONFIG_BEFS_FS=m ++# CONFIG_BEFS_DEBUG is not set ++CONFIG_BFS_FS=m ++CONFIG_EFS_FS=m ++CONFIG_JFFS2_FS=m ++CONFIG_JFFS2_FS_DEBUG=0 ++CONFIG_JFFS2_FS_WRITEBUFFER=y ++# CONFIG_JFFS2_FS_WBUF_VERIFY is not set ++# CONFIG_JFFS2_SUMMARY is not set ++CONFIG_JFFS2_FS_XATTR=y ++CONFIG_JFFS2_FS_POSIX_ACL=y ++CONFIG_JFFS2_FS_SECURITY=y ++CONFIG_JFFS2_COMPRESSION_OPTIONS=y ++CONFIG_JFFS2_ZLIB=y ++CONFIG_JFFS2_LZO=y ++CONFIG_JFFS2_RTIME=y ++# CONFIG_JFFS2_RUBIN is not set ++# CONFIG_JFFS2_CMODE_NONE is not set ++# CONFIG_JFFS2_CMODE_PRIORITY is not set ++# CONFIG_JFFS2_CMODE_SIZE is not set ++CONFIG_JFFS2_CMODE_FAVOURLZO=y ++CONFIG_UBIFS_FS=m ++# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set ++CONFIG_UBIFS_FS_LZO=y ++CONFIG_UBIFS_FS_ZLIB=y ++CONFIG_UBIFS_ATIME_SUPPORT=y ++CONFIG_UBIFS_FS_XATTR=y ++# CONFIG_UBIFS_FS_ENCRYPTION is not set ++CONFIG_UBIFS_FS_SECURITY=y ++# CONFIG_UBIFS_FS_AUTHENTICATION is not set ++CONFIG_CRAMFS=m ++CONFIG_CRAMFS_BLOCKDEV=y ++# CONFIG_CRAMFS_MTD is not set ++CONFIG_SQUASHFS=m ++# CONFIG_SQUASHFS_FILE_CACHE is not set ++CONFIG_SQUASHFS_FILE_DIRECT=y ++# CONFIG_SQUASHFS_DECOMP_SINGLE is not set ++# CONFIG_SQUASHFS_DECOMP_MULTI is not set ++CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y ++CONFIG_SQUASHFS_XATTR=y ++CONFIG_SQUASHFS_ZLIB=y ++CONFIG_SQUASHFS_LZ4=y ++CONFIG_SQUASHFS_LZO=y ++CONFIG_SQUASHFS_XZ=y ++# CONFIG_SQUASHFS_ZSTD is not set ++# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set ++# CONFIG_SQUASHFS_EMBEDDED is not set ++CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 ++CONFIG_VXFS_FS=m ++CONFIG_MINIX_FS=m ++CONFIG_OMFS_FS=m ++CONFIG_HPFS_FS=m ++CONFIG_QNX4FS_FS=m ++CONFIG_QNX6FS_FS=m ++# CONFIG_QNX6FS_DEBUG is not set ++CONFIG_ROMFS_FS=m ++CONFIG_ROMFS_BACKED_BY_BLOCK=y ++# CONFIG_ROMFS_BACKED_BY_MTD is not set ++# CONFIG_ROMFS_BACKED_BY_BOTH is not set ++CONFIG_ROMFS_ON_BLOCK=y ++CONFIG_PSTORE=y ++CONFIG_PSTORE_DEFLATE_COMPRESS=y ++# CONFIG_PSTORE_LZO_COMPRESS is not set ++# CONFIG_PSTORE_LZ4_COMPRESS is not set ++# CONFIG_PSTORE_LZ4HC_COMPRESS is not set ++# CONFIG_PSTORE_842_COMPRESS is not set ++# CONFIG_PSTORE_ZSTD_COMPRESS is not set ++CONFIG_PSTORE_COMPRESS=y ++CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y ++CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" ++# CONFIG_PSTORE_CONSOLE is not set ++# CONFIG_PSTORE_PMSG is not set ++# CONFIG_PSTORE_FTRACE is not set ++CONFIG_PSTORE_RAM=m ++CONFIG_SYSV_FS=m ++CONFIG_UFS_FS=m ++# CONFIG_UFS_FS_WRITE is not set ++# CONFIG_UFS_DEBUG is not set ++CONFIG_EXOFS_FS=m ++# CONFIG_EXOFS_DEBUG is not set ++CONFIG_ORE=m ++CONFIG_NETWORK_FILESYSTEMS=y ++CONFIG_NFS_FS=m ++CONFIG_NFS_V2=m ++CONFIG_NFS_V3=m ++CONFIG_NFS_V3_ACL=y ++CONFIG_NFS_V4=m ++CONFIG_NFS_SWAP=y ++CONFIG_NFS_V4_1=y ++CONFIG_NFS_V4_2=y ++CONFIG_PNFS_FILE_LAYOUT=m ++CONFIG_PNFS_BLOCK=m ++CONFIG_PNFS_FLEXFILE_LAYOUT=m ++CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" ++CONFIG_NFS_V4_1_MIGRATION=y ++CONFIG_NFS_V4_SECURITY_LABEL=y ++CONFIG_NFS_FSCACHE=y ++# CONFIG_NFS_USE_LEGACY_DNS is not set ++CONFIG_NFS_USE_KERNEL_DNS=y ++CONFIG_NFS_DEBUG=y ++CONFIG_NFSD=m ++CONFIG_NFSD_V2_ACL=y ++CONFIG_NFSD_V3=y ++CONFIG_NFSD_V3_ACL=y ++CONFIG_NFSD_V4=y ++# CONFIG_NFSD_BLOCKLAYOUT is not set ++# CONFIG_NFSD_SCSILAYOUT is not set ++# CONFIG_NFSD_FLEXFILELAYOUT is not set ++CONFIG_NFSD_V4_SECURITY_LABEL=y ++# CONFIG_NFSD_FAULT_INJECTION is not set ++CONFIG_GRACE_PERIOD=m ++CONFIG_LOCKD=m ++CONFIG_LOCKD_V4=y ++CONFIG_NFS_ACL_SUPPORT=m ++CONFIG_NFS_COMMON=y ++CONFIG_SUNRPC=m ++CONFIG_SUNRPC_GSS=m ++CONFIG_SUNRPC_BACKCHANNEL=y ++CONFIG_SUNRPC_SWAP=y ++CONFIG_RPCSEC_GSS_KRB5=m ++CONFIG_SUNRPC_DEBUG=y ++CONFIG_SUNRPC_XPRT_RDMA=m ++CONFIG_CEPH_FS=m ++CONFIG_CEPH_FSCACHE=y ++CONFIG_CEPH_FS_POSIX_ACL=y ++CONFIG_CIFS=m ++# CONFIG_CIFS_STATS2 is not set ++CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y ++CONFIG_CIFS_WEAK_PW_HASH=y ++CONFIG_CIFS_UPCALL=y ++CONFIG_CIFS_XATTR=y ++CONFIG_CIFS_POSIX=y ++CONFIG_CIFS_ACL=y ++CONFIG_CIFS_DEBUG=y ++# CONFIG_CIFS_DEBUG2 is not set ++# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set ++CONFIG_CIFS_DFS_UPCALL=y ++# CONFIG_CIFS_SMB_DIRECT is not set ++CONFIG_CIFS_FSCACHE=y ++CONFIG_CODA_FS=m ++CONFIG_AFS_FS=m ++# CONFIG_AFS_DEBUG is not set ++CONFIG_AFS_FSCACHE=y ++# CONFIG_AFS_DEBUG_CURSOR is not set ++CONFIG_9P_FS=m ++CONFIG_9P_FSCACHE=y ++CONFIG_9P_FS_POSIX_ACL=y ++CONFIG_9P_FS_SECURITY=y ++CONFIG_NLS=y ++CONFIG_NLS_DEFAULT="utf8" ++CONFIG_NLS_CODEPAGE_437=y ++CONFIG_NLS_CODEPAGE_737=m ++CONFIG_NLS_CODEPAGE_775=m ++CONFIG_NLS_CODEPAGE_850=m ++CONFIG_NLS_CODEPAGE_852=m ++CONFIG_NLS_CODEPAGE_855=m ++CONFIG_NLS_CODEPAGE_857=m ++CONFIG_NLS_CODEPAGE_860=m ++CONFIG_NLS_CODEPAGE_861=m ++CONFIG_NLS_CODEPAGE_862=m ++CONFIG_NLS_CODEPAGE_863=m ++CONFIG_NLS_CODEPAGE_864=m ++CONFIG_NLS_CODEPAGE_865=m ++CONFIG_NLS_CODEPAGE_866=m ++CONFIG_NLS_CODEPAGE_869=m ++CONFIG_NLS_CODEPAGE_936=m ++CONFIG_NLS_CODEPAGE_950=m ++CONFIG_NLS_CODEPAGE_932=m ++CONFIG_NLS_CODEPAGE_949=m ++CONFIG_NLS_CODEPAGE_874=m ++CONFIG_NLS_ISO8859_8=m ++CONFIG_NLS_CODEPAGE_1250=m ++CONFIG_NLS_CODEPAGE_1251=m ++CONFIG_NLS_ASCII=m ++CONFIG_NLS_ISO8859_1=m ++CONFIG_NLS_ISO8859_2=m ++CONFIG_NLS_ISO8859_3=m ++CONFIG_NLS_ISO8859_4=m ++CONFIG_NLS_ISO8859_5=m ++CONFIG_NLS_ISO8859_6=m ++CONFIG_NLS_ISO8859_7=m ++CONFIG_NLS_ISO8859_9=m ++CONFIG_NLS_ISO8859_13=m ++CONFIG_NLS_ISO8859_14=m ++CONFIG_NLS_ISO8859_15=m ++CONFIG_NLS_KOI8_R=m ++CONFIG_NLS_KOI8_U=m ++CONFIG_NLS_MAC_ROMAN=m ++CONFIG_NLS_MAC_CELTIC=m ++CONFIG_NLS_MAC_CENTEURO=m ++CONFIG_NLS_MAC_CROATIAN=m ++CONFIG_NLS_MAC_CYRILLIC=m ++CONFIG_NLS_MAC_GAELIC=m ++CONFIG_NLS_MAC_GREEK=m ++CONFIG_NLS_MAC_ICELAND=m ++CONFIG_NLS_MAC_INUIT=m ++CONFIG_NLS_MAC_ROMANIAN=m ++CONFIG_NLS_MAC_TURKISH=m ++CONFIG_NLS_UTF8=m ++CONFIG_DLM=m ++# CONFIG_DLM_DEBUG is not set ++ ++# ++# Security options ++# ++CONFIG_KEYS=y ++CONFIG_KEYS_COMPAT=y ++CONFIG_PERSISTENT_KEYRINGS=y ++# CONFIG_BIG_KEYS is not set ++CONFIG_TRUSTED_KEYS=y ++CONFIG_ENCRYPTED_KEYS=y ++# CONFIG_KEY_DH_OPERATIONS is not set ++# CONFIG_SECURITY_DMESG_RESTRICT is not set ++CONFIG_SECURITY=y ++CONFIG_SECURITY_WRITABLE_HOOKS=y ++CONFIG_SECURITYFS=y ++CONFIG_SECURITY_NETWORK=y ++CONFIG_PAGE_TABLE_ISOLATION=y ++# CONFIG_SECURITY_INFINIBAND is not set ++CONFIG_SECURITY_NETWORK_XFRM=y ++CONFIG_SECURITY_PATH=y ++CONFIG_INTEL_TXT=y ++CONFIG_LSM_MMAP_MIN_ADDR=0 ++CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y ++# CONFIG_HARDENED_USERCOPY is not set ++# CONFIG_FORTIFY_SOURCE is not set ++# CONFIG_STATIC_USERMODEHELPER is not set ++CONFIG_SECURITY_SELINUX=y ++CONFIG_SECURITY_SELINUX_BOOTPARAM=y ++CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=0 ++CONFIG_SECURITY_SELINUX_DISABLE=y ++CONFIG_SECURITY_SELINUX_DEVELOP=y ++CONFIG_SECURITY_SELINUX_AVC_STATS=y ++CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 ++CONFIG_SECURITY_SMACK=y ++# CONFIG_SECURITY_SMACK_BRINGUP is not set ++CONFIG_SECURITY_SMACK_NETFILTER=y ++# CONFIG_SECURITY_SMACK_APPEND_SIGNALS is not set ++CONFIG_SECURITY_TOMOYO=y ++CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 ++CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 ++# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set ++CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" ++CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" ++CONFIG_SECURITY_APPARMOR=y ++CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 ++CONFIG_SECURITY_APPARMOR_HASH=y ++CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y ++# CONFIG_SECURITY_APPARMOR_DEBUG is not set ++# CONFIG_SECURITY_LOADPIN is not set ++CONFIG_SECURITY_YAMA=y ++CONFIG_INTEGRITY=y ++CONFIG_INTEGRITY_SIGNATURE=y ++CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y ++CONFIG_INTEGRITY_TRUSTED_KEYRING=y ++CONFIG_INTEGRITY_AUDIT=y ++CONFIG_IMA=y ++CONFIG_IMA_MEASURE_PCR_IDX=10 ++CONFIG_IMA_LSM_RULES=y ++# CONFIG_IMA_TEMPLATE is not set ++CONFIG_IMA_NG_TEMPLATE=y ++# CONFIG_IMA_SIG_TEMPLATE is not set ++CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" ++CONFIG_IMA_DEFAULT_HASH_SHA1=y ++# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set ++# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set ++CONFIG_IMA_DEFAULT_HASH="sha1" ++# CONFIG_IMA_WRITE_POLICY is not set ++# CONFIG_IMA_READ_POLICY is not set ++CONFIG_IMA_APPRAISE=y ++# CONFIG_IMA_ARCH_POLICY is not set ++# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set ++CONFIG_IMA_APPRAISE_BOOTPARAM=y ++CONFIG_IMA_TRUSTED_KEYRING=y ++# CONFIG_IMA_BLACKLIST_KEYRING is not set ++# CONFIG_IMA_LOAD_X509 is not set ++CONFIG_EVM=y ++CONFIG_EVM_ATTR_FSUUID=y ++CONFIG_EVM_EXTRA_SMACK_XATTRS=y ++# CONFIG_EVM_ADD_XATTRS is not set ++# CONFIG_EVM_LOAD_X509 is not set ++# CONFIG_DEFAULT_SECURITY_SELINUX is not set ++# CONFIG_DEFAULT_SECURITY_SMACK is not set ++# CONFIG_DEFAULT_SECURITY_TOMOYO is not set ++CONFIG_DEFAULT_SECURITY_APPARMOR=y ++# CONFIG_DEFAULT_SECURITY_DAC is not set ++CONFIG_DEFAULT_SECURITY="apparmor" ++CONFIG_XOR_BLOCKS=m ++CONFIG_ASYNC_CORE=m ++CONFIG_ASYNC_MEMCPY=m ++CONFIG_ASYNC_XOR=m ++CONFIG_ASYNC_PQ=m ++CONFIG_ASYNC_RAID6_RECOV=m ++CONFIG_CRYPTO=y ++ ++# ++# Crypto core or helper ++# ++CONFIG_CRYPTO_ALGAPI=y ++CONFIG_CRYPTO_ALGAPI2=y ++CONFIG_CRYPTO_AEAD=m ++CONFIG_CRYPTO_AEAD2=y ++CONFIG_CRYPTO_BLKCIPHER=y ++CONFIG_CRYPTO_BLKCIPHER2=y ++CONFIG_CRYPTO_HASH=y ++CONFIG_CRYPTO_HASH2=y ++CONFIG_CRYPTO_RNG=y ++CONFIG_CRYPTO_RNG2=y ++CONFIG_CRYPTO_RNG_DEFAULT=m ++CONFIG_CRYPTO_AKCIPHER2=y ++CONFIG_CRYPTO_AKCIPHER=y ++CONFIG_CRYPTO_KPP2=y ++CONFIG_CRYPTO_KPP=m ++CONFIG_CRYPTO_ACOMP2=y ++CONFIG_CRYPTO_RSA=y ++CONFIG_CRYPTO_DH=m ++CONFIG_CRYPTO_ECDH=m ++CONFIG_CRYPTO_MANAGER=y ++CONFIG_CRYPTO_MANAGER2=y ++CONFIG_CRYPTO_USER=m ++CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y ++CONFIG_CRYPTO_GF128MUL=m ++CONFIG_CRYPTO_NULL=m ++CONFIG_CRYPTO_NULL2=y ++CONFIG_CRYPTO_PCRYPT=m ++CONFIG_CRYPTO_WORKQUEUE=y ++CONFIG_CRYPTO_CRYPTD=m ++CONFIG_CRYPTO_AUTHENC=m ++CONFIG_CRYPTO_TEST=m ++CONFIG_CRYPTO_SIMD=m ++CONFIG_CRYPTO_GLUE_HELPER_X86=m ++CONFIG_CRYPTO_ENGINE=m ++ ++# ++# Authenticated Encryption with Associated Data ++# ++CONFIG_CRYPTO_CCM=m ++CONFIG_CRYPTO_GCM=m ++CONFIG_CRYPTO_CHACHA20POLY1305=m ++# CONFIG_CRYPTO_AEGIS128 is not set ++# CONFIG_CRYPTO_AEGIS128L is not set ++# CONFIG_CRYPTO_AEGIS256 is not set ++# CONFIG_CRYPTO_AEGIS128_AESNI_SSE2 is not set ++# CONFIG_CRYPTO_AEGIS128L_AESNI_SSE2 is not set ++# CONFIG_CRYPTO_AEGIS256_AESNI_SSE2 is not set ++# CONFIG_CRYPTO_MORUS640 is not set ++# CONFIG_CRYPTO_MORUS640_SSE2 is not set ++# CONFIG_CRYPTO_MORUS1280 is not set ++# CONFIG_CRYPTO_MORUS1280_SSE2 is not set ++# CONFIG_CRYPTO_MORUS1280_AVX2 is not set ++CONFIG_CRYPTO_SEQIV=m ++CONFIG_CRYPTO_ECHAINIV=m ++ ++# ++# Block modes ++# ++CONFIG_CRYPTO_CBC=y ++# CONFIG_CRYPTO_CFB is not set ++CONFIG_CRYPTO_CTR=m ++CONFIG_CRYPTO_CTS=m ++CONFIG_CRYPTO_ECB=y ++CONFIG_CRYPTO_LRW=m ++# CONFIG_CRYPTO_OFB is not set ++CONFIG_CRYPTO_PCBC=m ++CONFIG_CRYPTO_XTS=m ++CONFIG_CRYPTO_KEYWRAP=m ++# CONFIG_CRYPTO_NHPOLY1305_SSE2 is not set ++# CONFIG_CRYPTO_NHPOLY1305_AVX2 is not set ++# CONFIG_CRYPTO_ADIANTUM is not set ++ ++# ++# Hash modes ++# ++CONFIG_CRYPTO_CMAC=m ++CONFIG_CRYPTO_HMAC=y ++CONFIG_CRYPTO_XCBC=m ++CONFIG_CRYPTO_VMAC=m ++ ++# ++# Digest ++# ++CONFIG_CRYPTO_CRC32C=y ++CONFIG_CRYPTO_CRC32C_INTEL=y ++CONFIG_CRYPTO_CRC32=m ++CONFIG_CRYPTO_CRC32_PCLMUL=m ++CONFIG_CRYPTO_CRCT10DIF=y ++CONFIG_CRYPTO_CRCT10DIF_PCLMUL=m ++CONFIG_CRYPTO_GHASH=m ++CONFIG_CRYPTO_POLY1305=m ++CONFIG_CRYPTO_POLY1305_X86_64=m ++CONFIG_CRYPTO_MD4=m ++CONFIG_CRYPTO_MD5=y ++CONFIG_CRYPTO_MICHAEL_MIC=m ++CONFIG_CRYPTO_RMD128=m ++CONFIG_CRYPTO_RMD160=m ++CONFIG_CRYPTO_RMD256=m ++CONFIG_CRYPTO_RMD320=m ++CONFIG_CRYPTO_SHA1=y ++CONFIG_CRYPTO_SHA1_SSSE3=m ++CONFIG_CRYPTO_SHA256_SSSE3=m ++CONFIG_CRYPTO_SHA512_SSSE3=m ++CONFIG_CRYPTO_SHA256=y ++CONFIG_CRYPTO_SHA512=y ++# CONFIG_CRYPTO_SHA3 is not set ++# CONFIG_CRYPTO_SM3 is not set ++# CONFIG_CRYPTO_STREEBOG is not set ++CONFIG_CRYPTO_TGR192=m ++CONFIG_CRYPTO_WP512=m ++CONFIG_CRYPTO_GHASH_CLMUL_NI_INTEL=m ++ ++# ++# Ciphers ++# ++CONFIG_CRYPTO_AES=y ++# CONFIG_CRYPTO_AES_TI is not set ++CONFIG_CRYPTO_AES_X86_64=m ++CONFIG_CRYPTO_AES_NI_INTEL=m ++CONFIG_CRYPTO_ANUBIS=m ++CONFIG_CRYPTO_ARC4=m ++CONFIG_CRYPTO_BLOWFISH=m ++CONFIG_CRYPTO_BLOWFISH_COMMON=m ++CONFIG_CRYPTO_BLOWFISH_X86_64=m ++CONFIG_CRYPTO_CAMELLIA=m ++CONFIG_CRYPTO_CAMELLIA_X86_64=m ++CONFIG_CRYPTO_CAMELLIA_AESNI_AVX_X86_64=m ++CONFIG_CRYPTO_CAMELLIA_AESNI_AVX2_X86_64=m ++CONFIG_CRYPTO_CAST_COMMON=m ++CONFIG_CRYPTO_CAST5=m ++CONFIG_CRYPTO_CAST5_AVX_X86_64=m ++CONFIG_CRYPTO_CAST6=m ++CONFIG_CRYPTO_CAST6_AVX_X86_64=m ++CONFIG_CRYPTO_DES=m ++CONFIG_CRYPTO_DES3_EDE_X86_64=m ++CONFIG_CRYPTO_FCRYPT=m ++CONFIG_CRYPTO_KHAZAD=m ++CONFIG_CRYPTO_SALSA20=m ++CONFIG_CRYPTO_CHACHA20=m ++CONFIG_CRYPTO_CHACHA20_X86_64=m ++CONFIG_CRYPTO_SEED=m ++CONFIG_CRYPTO_SERPENT=m ++CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m ++CONFIG_CRYPTO_SERPENT_AVX_X86_64=m ++CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m ++# CONFIG_CRYPTO_SM4 is not set ++CONFIG_CRYPTO_TEA=m ++CONFIG_CRYPTO_TWOFISH=m ++CONFIG_CRYPTO_TWOFISH_COMMON=m ++CONFIG_CRYPTO_TWOFISH_X86_64=m ++CONFIG_CRYPTO_TWOFISH_X86_64_3WAY=m ++CONFIG_CRYPTO_TWOFISH_AVX_X86_64=m ++ ++# ++# Compression ++# ++CONFIG_CRYPTO_DEFLATE=y ++CONFIG_CRYPTO_LZO=y ++CONFIG_CRYPTO_842=m ++CONFIG_CRYPTO_LZ4=m ++CONFIG_CRYPTO_LZ4HC=m ++# CONFIG_CRYPTO_ZSTD is not set ++ ++# ++# Random Number Generation ++# ++CONFIG_CRYPTO_ANSI_CPRNG=m ++CONFIG_CRYPTO_DRBG_MENU=m ++CONFIG_CRYPTO_DRBG_HMAC=y ++CONFIG_CRYPTO_DRBG_HASH=y ++CONFIG_CRYPTO_DRBG_CTR=y ++CONFIG_CRYPTO_DRBG=m ++CONFIG_CRYPTO_JITTERENTROPY=m ++CONFIG_CRYPTO_USER_API=m ++CONFIG_CRYPTO_USER_API_HASH=m ++CONFIG_CRYPTO_USER_API_SKCIPHER=m ++CONFIG_CRYPTO_USER_API_RNG=m ++CONFIG_CRYPTO_USER_API_AEAD=m ++# CONFIG_CRYPTO_STATS is not set ++CONFIG_CRYPTO_HASH_INFO=y ++CONFIG_CRYPTO_HW=y ++CONFIG_CRYPTO_DEV_PADLOCK=y ++CONFIG_CRYPTO_DEV_PADLOCK_AES=m ++CONFIG_CRYPTO_DEV_PADLOCK_SHA=m ++CONFIG_CRYPTO_DEV_CCP=y ++CONFIG_CRYPTO_DEV_CCP_DD=m ++CONFIG_CRYPTO_DEV_SP_CCP=y ++CONFIG_CRYPTO_DEV_CCP_CRYPTO=m ++CONFIG_CRYPTO_DEV_SP_PSP=y ++CONFIG_CRYPTO_DEV_QAT=m ++CONFIG_CRYPTO_DEV_QAT_DH895xCC=m ++# CONFIG_CRYPTO_DEV_QAT_C3XXX is not set ++# CONFIG_CRYPTO_DEV_QAT_C62X is not set ++CONFIG_CRYPTO_DEV_QAT_DH895xCCVF=m ++# CONFIG_CRYPTO_DEV_QAT_C3XXXVF is not set ++# CONFIG_CRYPTO_DEV_QAT_C62XVF is not set ++# CONFIG_CRYPTO_DEV_NITROX_CNN55XX is not set ++# CONFIG_CRYPTO_DEV_CHELSIO is not set ++CONFIG_CRYPTO_DEV_VIRTIO=m ++CONFIG_ASYMMETRIC_KEY_TYPE=y ++CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y ++# CONFIG_ASYMMETRIC_TPM_KEY_SUBTYPE is not set ++CONFIG_X509_CERTIFICATE_PARSER=y ++# CONFIG_PKCS8_PRIVATE_KEY_PARSER is not set ++CONFIG_PKCS7_MESSAGE_PARSER=y ++CONFIG_PKCS7_TEST_KEY=m ++CONFIG_SIGNED_PE_FILE_VERIFICATION=y ++ ++# ++# Certificates for signature checking ++# ++CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" ++CONFIG_SYSTEM_TRUSTED_KEYRING=y ++CONFIG_SYSTEM_TRUSTED_KEYS="" ++# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set ++# CONFIG_SECONDARY_TRUSTED_KEYRING is not set ++# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set ++CONFIG_BINARY_PRINTF=y ++ ++# ++# Library routines ++# ++CONFIG_RAID6_PQ=m ++CONFIG_RAID6_PQ_BENCHMARK=y ++CONFIG_BITREVERSE=y ++CONFIG_RATIONAL=y ++CONFIG_GENERIC_STRNCPY_FROM_USER=y ++CONFIG_GENERIC_STRNLEN_USER=y ++CONFIG_GENERIC_NET_UTILS=y ++CONFIG_GENERIC_FIND_FIRST_BIT=y ++CONFIG_GENERIC_PCI_IOMAP=y ++CONFIG_GENERIC_IOMAP=y ++CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y ++CONFIG_ARCH_HAS_FAST_MULTIPLIER=y ++CONFIG_CRC_CCITT=y ++CONFIG_CRC16=y ++CONFIG_CRC_T10DIF=y ++CONFIG_CRC_ITU_T=m ++CONFIG_CRC32=y ++# CONFIG_CRC32_SELFTEST is not set ++CONFIG_CRC32_SLICEBY8=y ++# CONFIG_CRC32_SLICEBY4 is not set ++# CONFIG_CRC32_SARWATE is not set ++# CONFIG_CRC32_BIT is not set ++CONFIG_CRC64=m ++# CONFIG_CRC4 is not set ++CONFIG_CRC7=m ++CONFIG_LIBCRC32C=m ++CONFIG_CRC8=m ++CONFIG_XXHASH=y ++# CONFIG_RANDOM32_SELFTEST is not set ++CONFIG_842_COMPRESS=m ++CONFIG_842_DECOMPRESS=m ++CONFIG_ZLIB_INFLATE=y ++CONFIG_ZLIB_DEFLATE=y ++CONFIG_LZO_COMPRESS=y ++CONFIG_LZO_DECOMPRESS=y ++CONFIG_LZ4_COMPRESS=m ++CONFIG_LZ4HC_COMPRESS=m ++CONFIG_LZ4_DECOMPRESS=y ++CONFIG_ZSTD_COMPRESS=m ++CONFIG_ZSTD_DECOMPRESS=m ++CONFIG_XZ_DEC=y ++CONFIG_XZ_DEC_X86=y ++CONFIG_XZ_DEC_POWERPC=y ++CONFIG_XZ_DEC_IA64=y ++CONFIG_XZ_DEC_ARM=y ++CONFIG_XZ_DEC_ARMTHUMB=y ++CONFIG_XZ_DEC_SPARC=y ++CONFIG_XZ_DEC_BCJ=y ++CONFIG_XZ_DEC_TEST=m ++CONFIG_DECOMPRESS_GZIP=y ++CONFIG_DECOMPRESS_BZIP2=y ++CONFIG_DECOMPRESS_LZMA=y ++CONFIG_DECOMPRESS_XZ=y ++CONFIG_DECOMPRESS_LZO=y ++CONFIG_DECOMPRESS_LZ4=y ++CONFIG_GENERIC_ALLOCATOR=y ++CONFIG_REED_SOLOMON=m ++CONFIG_REED_SOLOMON_ENC8=y ++CONFIG_REED_SOLOMON_DEC8=y ++CONFIG_REED_SOLOMON_DEC16=y ++CONFIG_BCH=m ++CONFIG_BCH_CONST_PARAMS=y ++CONFIG_TEXTSEARCH=y ++CONFIG_TEXTSEARCH_KMP=m ++CONFIG_TEXTSEARCH_BM=m ++CONFIG_TEXTSEARCH_FSM=m ++CONFIG_BTREE=y ++CONFIG_INTERVAL_TREE=y ++CONFIG_XARRAY_MULTI=y ++CONFIG_ASSOCIATIVE_ARRAY=y ++CONFIG_HAS_IOMEM=y ++CONFIG_HAS_IOPORT_MAP=y ++CONFIG_HAS_DMA=y ++CONFIG_NEED_SG_DMA_LENGTH=y ++CONFIG_NEED_DMA_MAP_STATE=y ++CONFIG_ARCH_DMA_ADDR_T_64BIT=y ++CONFIG_DMA_VIRT_OPS=y ++CONFIG_SWIOTLB=y ++CONFIG_SGL_ALLOC=y ++CONFIG_IOMMU_HELPER=y ++CONFIG_CHECK_SIGNATURE=y ++CONFIG_CPU_RMAP=y ++CONFIG_DQL=y ++CONFIG_GLOB=y ++# CONFIG_GLOB_SELFTEST is not set ++CONFIG_NLATTR=y ++CONFIG_LRU_CACHE=m ++CONFIG_CLZ_TAB=y ++CONFIG_CORDIC=m ++CONFIG_DDR=y ++CONFIG_IRQ_POLL=y ++CONFIG_MPILIB=y ++CONFIG_SIGNATURE=y ++CONFIG_OID_REGISTRY=y ++CONFIG_UCS2_STRING=y ++CONFIG_FONT_SUPPORT=y ++# CONFIG_FONTS is not set ++CONFIG_FONT_8x8=y ++CONFIG_FONT_8x16=y ++CONFIG_SG_POOL=y ++CONFIG_ARCH_HAS_PMEM_API=y ++CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y ++CONFIG_ARCH_HAS_UACCESS_MCSAFE=y ++CONFIG_SBITMAP=y ++# CONFIG_STRING_SELFTEST is not set ++ ++# ++# Kernel hacking ++# ++ ++# ++# printk and dmesg options ++# ++CONFIG_PRINTK_TIME=y ++CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 ++CONFIG_CONSOLE_LOGLEVEL_QUIET=4 ++CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 ++CONFIG_BOOT_PRINTK_DELAY=y ++CONFIG_DYNAMIC_DEBUG=y ++ ++# ++# Compile-time checks and compiler options ++# ++CONFIG_DEBUG_INFO=y ++# CONFIG_DEBUG_INFO_REDUCED is not set ++# CONFIG_DEBUG_INFO_SPLIT is not set ++CONFIG_DEBUG_INFO_DWARF4=y ++CONFIG_GDB_SCRIPTS=y ++# CONFIG_ENABLE_MUST_CHECK is not set ++CONFIG_FRAME_WARN=1024 ++# CONFIG_STRIP_ASM_SYMS is not set ++# CONFIG_READABLE_ASM is not set ++CONFIG_UNUSED_SYMBOLS=y ++# CONFIG_PAGE_OWNER is not set ++CONFIG_DEBUG_FS=y ++# CONFIG_HEADERS_CHECK is not set ++# CONFIG_DEBUG_SECTION_MISMATCH is not set ++CONFIG_SECTION_MISMATCH_WARN_ONLY=y ++CONFIG_STACK_VALIDATION=y ++# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set ++CONFIG_MAGIC_SYSRQ=y ++CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 ++CONFIG_MAGIC_SYSRQ_SERIAL=y ++CONFIG_DEBUG_KERNEL=y ++ ++# ++# Memory Debugging ++# ++# CONFIG_PAGE_EXTENSION is not set ++# CONFIG_DEBUG_PAGEALLOC is not set ++# CONFIG_PAGE_POISONING is not set ++# CONFIG_DEBUG_PAGE_REF is not set ++# CONFIG_DEBUG_RODATA_TEST is not set ++# CONFIG_DEBUG_OBJECTS is not set ++# CONFIG_SLUB_DEBUG_ON is not set ++# CONFIG_SLUB_STATS is not set ++CONFIG_HAVE_DEBUG_KMEMLEAK=y ++# CONFIG_DEBUG_KMEMLEAK is not set ++# CONFIG_DEBUG_STACK_USAGE is not set ++# CONFIG_DEBUG_VM is not set ++CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y ++# CONFIG_DEBUG_VIRTUAL is not set ++# CONFIG_DEBUG_MEMORY_INIT is not set ++CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m ++# CONFIG_DEBUG_PER_CPU_MAPS is not set ++CONFIG_HAVE_DEBUG_STACKOVERFLOW=y ++# CONFIG_DEBUG_STACKOVERFLOW is not set ++CONFIG_HAVE_ARCH_KASAN=y ++CONFIG_CC_HAS_KASAN_GENERIC=y ++# CONFIG_KASAN is not set ++CONFIG_ARCH_HAS_KCOV=y ++CONFIG_CC_HAS_SANCOV_TRACE_PC=y ++# CONFIG_KCOV is not set ++# CONFIG_DEBUG_SHIRQ is not set ++ ++# ++# Debug Lockups and Hangs ++# ++CONFIG_LOCKUP_DETECTOR=y ++CONFIG_SOFTLOCKUP_DETECTOR=y ++# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set ++CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 ++CONFIG_HARDLOCKUP_DETECTOR_PERF=y ++CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y ++CONFIG_HARDLOCKUP_DETECTOR=y ++# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set ++CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 ++CONFIG_DETECT_HUNG_TASK=y ++CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 ++# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set ++CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 ++# CONFIG_WQ_WATCHDOG is not set ++# CONFIG_PANIC_ON_OOPS is not set ++CONFIG_PANIC_ON_OOPS_VALUE=0 ++CONFIG_PANIC_TIMEOUT=0 ++CONFIG_SCHED_DEBUG=y ++CONFIG_SCHED_INFO=y ++CONFIG_SCHEDSTATS=y ++CONFIG_SCHED_STACK_END_CHECK=y ++# CONFIG_DEBUG_TIMEKEEPING is not set ++ ++# ++# Lock Debugging (spinlocks, mutexes, etc...) ++# ++CONFIG_LOCK_DEBUGGING_SUPPORT=y ++# CONFIG_PROVE_LOCKING is not set ++# CONFIG_LOCK_STAT is not set ++# CONFIG_DEBUG_RT_MUTEXES is not set ++# CONFIG_DEBUG_SPINLOCK is not set ++# CONFIG_DEBUG_MUTEXES is not set ++# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set ++# CONFIG_DEBUG_RWSEMS is not set ++# CONFIG_DEBUG_LOCK_ALLOC is not set ++# CONFIG_DEBUG_ATOMIC_SLEEP is not set ++# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set ++CONFIG_LOCK_TORTURE_TEST=m ++# CONFIG_WW_MUTEX_SELFTEST is not set ++CONFIG_STACKTRACE=y ++# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set ++# CONFIG_DEBUG_KOBJECT is not set ++CONFIG_DEBUG_BUGVERBOSE=y ++# CONFIG_DEBUG_LIST is not set ++# CONFIG_DEBUG_PI_LIST is not set ++# CONFIG_DEBUG_SG is not set ++# CONFIG_DEBUG_NOTIFIERS is not set ++# CONFIG_DEBUG_CREDENTIALS is not set ++ ++# ++# RCU Debugging ++# ++CONFIG_TORTURE_TEST=m ++# CONFIG_RCU_PERF_TEST is not set ++# CONFIG_RCU_TORTURE_TEST is not set ++CONFIG_RCU_CPU_STALL_TIMEOUT=60 ++# CONFIG_RCU_TRACE is not set ++# CONFIG_RCU_EQS_DEBUG is not set ++# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set ++# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set ++# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set ++CONFIG_NOTIFIER_ERROR_INJECTION=m ++CONFIG_PM_NOTIFIER_ERROR_INJECT=m ++# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set ++CONFIG_FUNCTION_ERROR_INJECTION=y ++# CONFIG_FAULT_INJECTION is not set ++# CONFIG_LATENCYTOP is not set ++CONFIG_USER_STACKTRACE_SUPPORT=y ++CONFIG_NOP_TRACER=y ++CONFIG_HAVE_FUNCTION_TRACER=y ++CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y ++CONFIG_HAVE_DYNAMIC_FTRACE=y ++CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y ++CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y ++CONFIG_HAVE_SYSCALL_TRACEPOINTS=y ++CONFIG_HAVE_FENTRY=y ++CONFIG_HAVE_C_RECORDMCOUNT=y ++CONFIG_TRACER_MAX_TRACE=y ++CONFIG_TRACE_CLOCK=y ++CONFIG_RING_BUFFER=y ++CONFIG_EVENT_TRACING=y ++CONFIG_CONTEXT_SWITCH_TRACER=y ++CONFIG_RING_BUFFER_ALLOW_SWAP=y ++CONFIG_TRACING=y ++CONFIG_GENERIC_TRACER=y ++CONFIG_TRACING_SUPPORT=y ++CONFIG_FTRACE=y ++CONFIG_FUNCTION_TRACER=y ++CONFIG_FUNCTION_GRAPH_TRACER=y ++# CONFIG_PREEMPTIRQ_EVENTS is not set ++# CONFIG_IRQSOFF_TRACER is not set ++CONFIG_SCHED_TRACER=y ++# CONFIG_HWLAT_TRACER is not set ++CONFIG_FTRACE_SYSCALLS=y ++CONFIG_TRACER_SNAPSHOT=y ++# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set ++CONFIG_BRANCH_PROFILE_NONE=y ++# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set ++# CONFIG_PROFILE_ALL_BRANCHES is not set ++CONFIG_STACK_TRACER=y ++CONFIG_BLK_DEV_IO_TRACE=y ++CONFIG_KPROBE_EVENTS=y ++# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set ++# CONFIG_UPROBE_EVENTS is not set ++CONFIG_BPF_EVENTS=y ++CONFIG_DYNAMIC_EVENTS=y ++CONFIG_PROBE_EVENTS=y ++CONFIG_DYNAMIC_FTRACE=y ++CONFIG_DYNAMIC_FTRACE_WITH_REGS=y ++CONFIG_FUNCTION_PROFILER=y ++# CONFIG_BPF_KPROBE_OVERRIDE is not set ++CONFIG_FTRACE_MCOUNT_RECORD=y ++# CONFIG_FTRACE_STARTUP_TEST is not set ++CONFIG_MMIOTRACE=y ++# CONFIG_HIST_TRIGGERS is not set ++# CONFIG_MMIOTRACE_TEST is not set ++# CONFIG_TRACEPOINT_BENCHMARK is not set ++# CONFIG_RING_BUFFER_BENCHMARK is not set ++# CONFIG_RING_BUFFER_STARTUP_TEST is not set ++# CONFIG_PREEMPTIRQ_DELAY_TEST is not set ++# CONFIG_TRACE_EVAL_MAP_FILE is not set ++CONFIG_TRACING_EVENTS_GPIO=y ++# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set ++# CONFIG_DMA_API_DEBUG is not set ++# CONFIG_RUNTIME_TESTING_MENU is not set ++CONFIG_MEMTEST=y ++# CONFIG_BUG_ON_DATA_CORRUPTION is not set ++# CONFIG_SAMPLES is not set ++CONFIG_HAVE_ARCH_KGDB=y ++CONFIG_KGDB=y ++CONFIG_KGDB_SERIAL_CONSOLE=y ++# CONFIG_KGDB_TESTS is not set ++CONFIG_KGDB_LOW_LEVEL_TRAP=y ++CONFIG_KGDB_KDB=y ++CONFIG_KDB_DEFAULT_ENABLE=0x1 ++CONFIG_KDB_KEYBOARD=y ++CONFIG_KDB_CONTINUE_CATASTROPHIC=0 ++CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y ++# CONFIG_UBSAN is not set ++CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y ++CONFIG_STRICT_DEVMEM=y ++# CONFIG_IO_STRICT_DEVMEM is not set ++CONFIG_TRACE_IRQFLAGS_SUPPORT=y ++CONFIG_EARLY_PRINTK_USB=y ++# CONFIG_X86_VERBOSE_BOOTUP is not set ++CONFIG_EARLY_PRINTK=y ++CONFIG_EARLY_PRINTK_DBGP=y ++CONFIG_EARLY_PRINTK_EFI=y ++# CONFIG_EARLY_PRINTK_USB_XDBC is not set ++# CONFIG_X86_PTDUMP is not set ++# CONFIG_EFI_PGT_DUMP is not set ++# CONFIG_DEBUG_WX is not set ++CONFIG_DOUBLEFAULT=y ++# CONFIG_DEBUG_TLBFLUSH is not set ++# CONFIG_IOMMU_DEBUG is not set ++CONFIG_HAVE_MMIOTRACE_SUPPORT=y ++# CONFIG_X86_DECODER_SELFTEST is not set ++CONFIG_IO_DELAY_TYPE_0X80=0 ++CONFIG_IO_DELAY_TYPE_0XED=1 ++CONFIG_IO_DELAY_TYPE_UDELAY=2 ++CONFIG_IO_DELAY_TYPE_NONE=3 ++# CONFIG_IO_DELAY_0X80 is not set ++CONFIG_IO_DELAY_0XED=y ++# CONFIG_IO_DELAY_UDELAY is not set ++# CONFIG_IO_DELAY_NONE is not set ++CONFIG_DEFAULT_IO_DELAY_TYPE=1 ++# CONFIG_DEBUG_BOOT_PARAMS is not set ++# CONFIG_CPA_DEBUG is not set ++CONFIG_OPTIMIZE_INLINING=y ++# CONFIG_DEBUG_ENTRY is not set ++# CONFIG_DEBUG_NMI_SELFTEST is not set ++CONFIG_X86_DEBUG_FPU=y ++CONFIG_PUNIT_ATOM_DEBUG=m ++CONFIG_UNWINDER_ORC=y ++# CONFIG_UNWINDER_FRAME_POINTER is not set ++# CONFIG_UNWINDER_GUESS is not set +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c +index 01b35b0455ca..1264c1162074 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c +@@ -20,23 +20,27 @@ + * OTHER DEALINGS IN THE SOFTWARE. + */ + ++#undef pr_fmt ++#define pr_fmt(fmt) "kfd2kgd: " fmt ++ ++ + #include "amdgpu_amdkfd.h" +-#include "amd_shared.h" ++#include <linux/dma-buf.h> + #include <drm/drmP.h> + #include "amdgpu.h" + #include "amdgpu_gfx.h" + #include <linux/module.h> + #include <linux/dma-buf.h> + +-bool (*kgd2kfd_init_p)(unsigned int, const struct kgd2kfd_calls**); +- +-static const unsigned int compute_vmid_bitmap = 0xFF00; ++static unsigned int compute_vmid_bitmap = 0xFF00; + + /* Total memory size in system memory and all GPU VRAM. Used to + * estimate worst case amount of memory to reserve for page tables + */ + uint64_t amdgpu_amdkfd_total_mem_size; + ++extern bool pcie_p2p; ++ + int amdgpu_amdkfd_init(void) + { + struct sysinfo si; +@@ -150,7 +154,8 @@ void amdgpu_amdkfd_device_init(struct amdgpu_device *adev) + }; + + /* this is going to have a few of the MSBs set that we need to +- * clear */ ++ * clear ++ */ + bitmap_complement(gpu_resources.queue_bitmap, + adev->gfx.mec.queue_bitmap, + KGD_MAX_QUEUES); +@@ -164,7 +169,8 @@ void amdgpu_amdkfd_device_init(struct amdgpu_device *adev) + gpu_resources.queue_bitmap); + + /* According to linux/bitmap.h we shouldn't use bitmap_clear if +- * nbits is not compile time constant */ ++ * nbits is not compile time constant ++ */ + last_valid_bit = 1 /* only first MEC can have compute queues */ + * adev->gfx.mec.num_pipe_per_mec + * adev->gfx.mec.num_queue_per_pipe; +@@ -190,7 +196,7 @@ void amdgpu_amdkfd_device_init(struct amdgpu_device *adev) + adev->doorbell_index.last_non_cp; + } + +- kgd2kfd_device_init(adev->kfd.dev, &gpu_resources); ++ kgd2kfd_device_init(adev->kfd.dev, adev->ddev, &gpu_resources); + } + } + +@@ -248,11 +254,18 @@ int amdgpu_amdkfd_post_reset(struct amdgpu_device *adev) + void amdgpu_amdkfd_gpu_reset(struct kgd_dev *kgd) + { + struct amdgpu_device *adev = (struct amdgpu_device *)kgd; +- + if (amdgpu_device_should_recover_gpu(adev)) + amdgpu_device_gpu_recover(adev, NULL); + } + ++u32 pool_to_domain(enum kgd_memory_pool p) ++{ ++ switch (p) { ++ case KGD_POOL_FRAMEBUFFER: return AMDGPU_GEM_DOMAIN_VRAM; ++ default: return AMDGPU_GEM_DOMAIN_GTT; ++ } ++} ++ + int amdgpu_amdkfd_alloc_gtt_mem(struct kgd_dev *kgd, size_t size, + void **mem_obj, uint64_t *gpu_addr, + void **cpu_ptr, bool mqd_gfx9) +@@ -339,13 +352,17 @@ void amdgpu_amdkfd_free_gtt_mem(struct kgd_dev *kgd, void *mem_obj) + void amdgpu_amdkfd_get_local_mem_info(struct kgd_dev *kgd, + struct kfd_local_mem_info *mem_info) + { ++ uint64_t address_mask; ++ resource_size_t aper_limit; + struct amdgpu_device *adev = (struct amdgpu_device *)kgd; +- uint64_t address_mask = adev->dev->dma_mask ? ~*adev->dev->dma_mask : ++ ++ address_mask = adev->dev->dma_mask ? ~*adev->dev->dma_mask : + ~((1ULL << 32) - 1); +- resource_size_t aper_limit = adev->gmc.aper_base + adev->gmc.aper_size; ++ aper_limit = adev->gmc.aper_base + adev->gmc.aper_size; + + memset(mem_info, 0, sizeof(*mem_info)); +- if (!(adev->gmc.aper_base & address_mask || aper_limit & address_mask)) { ++ if (pcie_p2p && !(adev->gmc.aper_base & address_mask || ++ aper_limit & address_mask)) { + mem_info->local_mem_size_public = adev->gmc.visible_vram_size; + mem_info->local_mem_size_private = adev->gmc.real_vram_size - + adev->gmc.visible_vram_size; +@@ -402,7 +419,7 @@ void amdgpu_amdkfd_get_cu_info(struct kgd_dev *kgd, struct kfd_cu_info *cu_info) + cu_info->cu_active_number = acu_info.number; + cu_info->cu_ao_mask = acu_info.ao_cu_mask; + memcpy(&cu_info->cu_bitmap[0], &acu_info.bitmap[0], +- sizeof(acu_info.bitmap)); ++ sizeof(acu_info.bitmap)); + cu_info->num_shader_engines = adev->gfx.config.max_shader_engines; + cu_info->num_shader_arrays_per_engine = adev->gfx.config.max_sh_per_se; + cu_info->num_cu_per_sh = adev->gfx.config.max_cu_per_sh; +@@ -472,8 +489,9 @@ int amdgpu_amdkfd_get_dmabuf_info(struct kgd_dev *kgd, int dma_buf_fd, + uint64_t amdgpu_amdkfd_get_vram_usage(struct kgd_dev *kgd) + { + struct amdgpu_device *adev = (struct amdgpu_device *)kgd; +- +- return amdgpu_vram_mgr_usage(&adev->mman.bdev.man[TTM_PL_VRAM]); ++ uint64_t usage = ++ amdgpu_vram_mgr_usage(&adev->mman.bdev.man[TTM_PL_VRAM]); ++ return usage; + } + + int amdgpu_amdkfd_submit_ib(struct kgd_dev *kgd, enum kgd_engine_type engine, +@@ -542,7 +560,8 @@ void amdgpu_amdkfd_set_compute_idle(struct kgd_dev *kgd, bool idle) + !idle); + } + +-bool amdgpu_amdkfd_is_kfd_vmid(struct amdgpu_device *adev, u32 vmid) ++bool amdgpu_amdkfd_is_kfd_vmid(struct amdgpu_device *adev, ++ u32 vmid) + { + if (adev->kfd.dev) { + if ((1 << vmid) & compute_vmid_bitmap) +@@ -552,6 +571,11 @@ bool amdgpu_amdkfd_is_kfd_vmid(struct amdgpu_device *adev, u32 vmid) + return false; + } + ++void amdgpu_amdkfd_debug_mem_fence(struct kgd_dev *kgd) ++{ ++ amdgpu_asic_flush_hdp((struct amdgpu_device *) kgd, NULL); ++} ++ + #ifndef CONFIG_HSA_AMD + bool amdkfd_fence_check_mm(struct dma_fence *f, struct mm_struct *mm) + { +@@ -599,6 +623,7 @@ struct kfd_dev *kgd2kfd_probe(struct kgd_dev *kgd, struct pci_dev *pdev, + } + + bool kgd2kfd_device_init(struct kfd_dev *kfd, ++ struct drm_device *ddev, + const struct kgd2kfd_shared_resources *gpu_resources) + { + return false; +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h +index 7ab70c207a69..7c4d85f0510b 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h +@@ -124,10 +124,13 @@ int amdgpu_amdkfd_submit_ib(struct kgd_dev *kgd, enum kgd_engine_type engine, + uint32_t vmid, uint64_t gpu_addr, + uint32_t *ib_cmd, uint32_t ib_len); + void amdgpu_amdkfd_set_compute_idle(struct kgd_dev *kgd, bool idle); +- + struct kfd2kgd_calls *amdgpu_amdkfd_gfx_7_get_functions(void); + struct kfd2kgd_calls *amdgpu_amdkfd_gfx_8_0_get_functions(void); + struct kfd2kgd_calls *amdgpu_amdkfd_gfx_9_0_get_functions(void); ++int amdgpu_amdkfd_copy_mem_to_mem(struct kgd_dev *kgd, struct kgd_mem *src_mem, ++ uint64_t src_offset, struct kgd_mem *dst_mem, ++ uint64_t dest_offset, uint64_t size, struct dma_fence **f, ++ uint64_t *actual_size); + + bool amdgpu_amdkfd_is_kfd_vmid(struct amdgpu_device *adev, u32 vmid); + +@@ -185,7 +188,7 @@ void amdgpu_amdkfd_gpuvm_release_process_vm(struct kgd_dev *kgd, void *vm); + uint64_t amdgpu_amdkfd_gpuvm_get_process_page_dir(void *vm); + int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu( + struct kgd_dev *kgd, uint64_t va, uint64_t size, +- void *vm, struct kgd_mem **mem, ++ void *vm, struct sg_table *sg, struct kgd_mem **mem, + uint64_t *offset, uint32_t flags); + int amdgpu_amdkfd_gpuvm_free_memory_of_gpu( + struct kgd_dev *kgd, struct kgd_mem *mem); +@@ -203,14 +206,23 @@ int amdgpu_amdkfd_gpuvm_restore_process_bos(void *process_info, + int amdgpu_amdkfd_gpuvm_get_vm_fault_info(struct kgd_dev *kgd, + struct kfd_vm_fault_info *info); + ++int amdgpu_amdkfd_gpuvm_pin_get_sg_table(struct kgd_dev *kgd, ++ struct kgd_mem *mem, uint64_t offset, ++ uint64_t size, struct sg_table **ret_sg); ++void amdgpu_amdkfd_gpuvm_unpin_put_sg_table( ++ struct kgd_mem *mem, struct sg_table *sg); + int amdgpu_amdkfd_gpuvm_import_dmabuf(struct kgd_dev *kgd, + struct dma_buf *dmabuf, + uint64_t va, void *vm, + struct kgd_mem **mem, uint64_t *size, + uint64_t *mmap_offset); ++int amdgpu_amdkfd_gpuvm_export_dmabuf(struct kgd_dev *kgd, void *vm, ++ struct kgd_mem *mem, ++ struct dma_buf **dmabuf); + + void amdgpu_amdkfd_gpuvm_init_mem_limits(void); + void amdgpu_amdkfd_unreserve_memory_limit(struct amdgpu_bo *bo); ++void amdgpu_amdkfd_debug_mem_fence(struct kgd_dev *kgd); + + /* KGD2KFD callbacks */ + int kgd2kfd_init(void); +@@ -218,6 +230,7 @@ void kgd2kfd_exit(void); + struct kfd_dev *kgd2kfd_probe(struct kgd_dev *kgd, struct pci_dev *pdev, + const struct kfd2kgd_calls *f2g); + bool kgd2kfd_device_init(struct kfd_dev *kfd, ++ struct drm_device *ddev, + const struct kgd2kfd_shared_resources *gpu_resources); + void kgd2kfd_device_exit(struct kfd_dev *kfd); + void kgd2kfd_suspend(struct kfd_dev *kfd); +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c +index ff7fac7df34b..268d81d7bfa0 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c +@@ -20,6 +20,9 @@ + * OTHER DEALINGS IN THE SOFTWARE. + */ + ++#undef pr_fmt ++#define pr_fmt(fmt) "kfd2kgd: " fmt ++ + #include <linux/fdtable.h> + #include <linux/uaccess.h> + #include <linux/firmware.h> +@@ -313,8 +316,7 @@ static inline uint32_t get_sdma_base_addr(struct cik_sdma_rlc_registers *m) + + retval = m->sdma_engine_id * SDMA1_REGISTER_OFFSET + + m->sdma_queue_id * KFD_CIK_SDMA_QUEUE_OFFSET; +- +- pr_debug("kfd: sdma base address: 0x%x\n", retval); ++ pr_debug("sdma base address: 0x%x\n", retval); + + return retval; + } +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c +index 56ea929f524b..f62110fe331b 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c +@@ -20,6 +20,9 @@ + * OTHER DEALINGS IN THE SOFTWARE. + */ + ++#undef pr_fmt ++#define pr_fmt(fmt) "kfd2kgd: " fmt ++ + #include <linux/module.h> + #include <linux/fdtable.h> + #include <linux/uaccess.h> +@@ -29,7 +32,7 @@ + #include "amdgpu.h" + #include "amdgpu_amdkfd.h" + #include "amdgpu_ucode.h" +-#include "gfx_v8_0.h" ++#include "amdgpu_amdkfd_gfx_v8.h" + #include "gca/gfx_8_0_sh_mask.h" + #include "gca/gfx_8_0_d.h" + #include "gca/gfx_8_0_enum.h" +@@ -46,6 +49,13 @@ enum hqd_dequeue_request_type { + RESET_WAVES + }; + ++static const uint32_t watchRegs[MAX_WATCH_ADDRESSES * ADDRESS_WATCH_REG_MAX] = { ++ mmTCP_WATCH0_ADDR_H, mmTCP_WATCH0_ADDR_L, mmTCP_WATCH0_CNTL, ++ mmTCP_WATCH1_ADDR_H, mmTCP_WATCH1_ADDR_L, mmTCP_WATCH1_CNTL, ++ mmTCP_WATCH2_ADDR_H, mmTCP_WATCH2_ADDR_L, mmTCP_WATCH2_CNTL, ++ mmTCP_WATCH3_ADDR_H, mmTCP_WATCH3_ADDR_L, mmTCP_WATCH3_CNTL ++}; ++ + /* + * Register access functions + */ +@@ -270,7 +280,7 @@ static inline uint32_t get_sdma_base_addr(struct vi_sdma_mqd *m) + + retval = m->sdma_engine_id * SDMA1_REGISTER_OFFSET + + m->sdma_queue_id * KFD_VI_SDMA_QUEUE_OFFSET; +- pr_debug("kfd: sdma base address: 0x%x\n", retval); ++ pr_debug("sdma base address: 0x%x\n", retval); + + return retval; + } +@@ -697,6 +707,22 @@ static uint16_t get_atc_vmid_pasid_mapping_pasid(struct kgd_dev *kgd, + + static int kgd_address_watch_disable(struct kgd_dev *kgd) + { ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ union TCP_WATCH_CNTL_BITS cntl; ++ unsigned int i; ++ ++ cntl.u32All = 0; ++ ++ cntl.bitfields.valid = 0; ++ cntl.bitfields.mask = ADDRESS_WATCH_REG_CNTL_DEFAULT_MASK; ++ cntl.bitfields.atc = 1; ++ ++ /* Turning off this address until we set all the registers */ ++ for (i = 0; i < MAX_WATCH_ADDRESSES; i++) ++ WREG32(watchRegs[i * ADDRESS_WATCH_REG_MAX ++ + ADDRESS_WATCH_REG_CNTL], ++ cntl.u32All); ++ + return 0; + } + +@@ -706,6 +732,32 @@ static int kgd_address_watch_execute(struct kgd_dev *kgd, + uint32_t addr_hi, + uint32_t addr_lo) + { ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ union TCP_WATCH_CNTL_BITS cntl; ++ ++ cntl.u32All = cntl_val; ++ ++ /* Turning off this watch point until we set all the registers */ ++ cntl.bitfields.valid = 0; ++ WREG32(watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX ++ + ADDRESS_WATCH_REG_CNTL], ++ cntl.u32All); ++ ++ WREG32(watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX ++ + ADDRESS_WATCH_REG_ADDR_HI], ++ addr_hi); ++ ++ WREG32(watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX ++ + ADDRESS_WATCH_REG_ADDR_LO], ++ addr_lo); ++ ++ /* Enable the watch point */ ++ cntl.bitfields.valid = 1; ++ ++ WREG32(watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX ++ + ADDRESS_WATCH_REG_CNTL], ++ cntl.u32All); ++ + return 0; + } + +@@ -738,7 +790,7 @@ static uint32_t kgd_address_watch_get_offset(struct kgd_dev *kgd, + unsigned int watch_point_id, + unsigned int reg_offset) + { +- return 0; ++ return watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX + reg_offset]; + } + + static void set_scratch_backing_va(struct kgd_dev *kgd, +@@ -821,6 +873,38 @@ static void set_vm_context_page_table_base(struct kgd_dev *kgd, uint32_t vmid, + lower_32_bits(page_table_base)); + } + ++/* ++ * FIXME: Poliars test failed with this package, FIJI works fine ++ * From the CP spec it does not official support the invalidation ++ * with the specified pasid in the package, so disable it for V8 ++ * ++ */ ++#ifdef V8_SUPPORT_IT_OFFICIAL ++static int invalidate_tlbs_with_kiq(struct amdgpu_device *adev, uint16_t pasid) ++{ ++ signed long r; ++ uint32_t seq; ++ struct amdgpu_ring *ring = &adev->gfx.kiq.ring; ++ ++ spin_lock(&adev->gfx.kiq.ring_lock); ++ amdgpu_ring_alloc(ring, 12); /* fence + invalidate_tlbs package*/ ++ amdgpu_ring_write(ring, PACKET3(PACKET3_INVALIDATE_TLBS, 0)); ++ amdgpu_ring_write(ring, ++ PACKET3_INVALIDATE_TLBS_DST_SEL(1) | ++ PACKET3_INVALIDATE_TLBS_PASID(pasid)); ++ amdgpu_fence_emit_polling(ring, &seq); ++ amdgpu_ring_commit(ring); ++ spin_unlock(&adev->gfx.kiq.ring_lock); ++ ++ r = amdgpu_fence_wait_polling(ring, seq, adev->usec_timeout); ++ if (r < 1) { ++ DRM_ERROR("wait for kiq fence error: %ld.\n", r); ++ return -ETIME; ++ } ++ ++ return 0; ++} ++#endif + static int invalidate_tlbs(struct kgd_dev *kgd, uint16_t pasid) + { + struct amdgpu_device *adev = (struct amdgpu_device *) kgd; +@@ -830,6 +914,13 @@ static int invalidate_tlbs(struct kgd_dev *kgd, uint16_t pasid) + if (adev->in_gpu_reset) + return -EIO; + ++#ifdef V8_SUPPORT_IT_OFFICIAL ++ struct amdgpu_ring *ring = &adev->gfx.kiq.ring; ++ ++ if (ring->ready) ++ return invalidate_tlbs_with_kiq(adev, pasid); ++#endif ++ + for (vmid = 0; vmid < 16; vmid++) { + if (!amdgpu_amdkfd_is_kfd_vmid(adev, vmid)) + continue; +@@ -852,7 +943,7 @@ static int invalidate_tlbs_vmid(struct kgd_dev *kgd, uint16_t vmid) + + if (!amdgpu_amdkfd_is_kfd_vmid(adev, vmid)) { + pr_err("non kfd vmid %d\n", vmid); +- return -EINVAL; ++ return 0; + } + + WREG32(mmVM_INVALIDATE_REQUEST, 1 << vmid); +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.h +new file mode 100644 +index 000000000000..3c9491938f0c +--- /dev/null ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.h +@@ -0,0 +1,62 @@ ++/* ++ * Copyright 2015 Advanced Micro Devices, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR ++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#ifndef AMDGPU_AMDKFD_GFX_V8_H_INCLUDED ++#define AMDGPU_AMDKFD_GFX_V8_H_INCLUDED ++ ++#include <linux/types.h> ++ ++enum { ++ MAX_TRAPID = 8, /* 3 bits in the bitfield. */ ++ MAX_WATCH_ADDRESSES = 4 ++}; ++ ++enum { ++ ADDRESS_WATCH_REG_ADDR_HI = 0, ++ ADDRESS_WATCH_REG_ADDR_LO, ++ ADDRESS_WATCH_REG_CNTL, ++ ADDRESS_WATCH_REG_MAX ++}; ++ ++/* not defined in the VI reg file */ ++enum { ++ ADDRESS_WATCH_REG_CNTL_ATC_BIT = 0x10000000UL, ++ ADDRESS_WATCH_REG_CNTL_DEFAULT_MASK = 0x00FFFFFF, ++ ADDRESS_WATCH_REG_ADDLOW_MASK_EXTENSION = 0x03000000, ++ /* extend the mask to 26 bits in order to match the low address field */ ++ ADDRESS_WATCH_REG_ADDLOW_SHIFT = 6, ++ ADDRESS_WATCH_REG_ADDHIGH_MASK = 0xFFFF ++}; ++ ++union TCP_WATCH_CNTL_BITS { ++ struct { ++ uint32_t mask:24; ++ uint32_t vmid:4; ++ uint32_t atc:1; ++ uint32_t mode:2; ++ uint32_t valid:1; ++ } bitfields, bits; ++ uint32_t u32All; ++ signed int i32All; ++ float f32All; ++}; ++#endif +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c +index a93f6a5fdd16..dbe29d43e34a 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c +@@ -20,6 +20,7 @@ + * OTHER DEALINGS IN THE SOFTWARE. + */ + ++#undef pr_fmt + #define pr_fmt(fmt) "kfd2kgd: " fmt + + #include <linux/module.h> +@@ -31,6 +32,7 @@ + #include "amdgpu.h" + #include "amdgpu_amdkfd.h" + #include "amdgpu_ucode.h" ++#include "amdgpu_amdkfd_gfx_v8.h" + #include "soc15_hw_ip.h" + #include "gc/gc_9_0_offset.h" + #include "gc/gc_9_0_sh_mask.h" +@@ -60,6 +62,13 @@ enum hqd_dequeue_request_type { + RESET_WAVES + }; + ++static const uint32_t watchRegs[MAX_WATCH_ADDRESSES * ADDRESS_WATCH_REG_MAX] = { ++ mmTCP_WATCH0_ADDR_H, mmTCP_WATCH0_ADDR_L, mmTCP_WATCH0_CNTL, ++ mmTCP_WATCH1_ADDR_H, mmTCP_WATCH1_ADDR_L, mmTCP_WATCH1_CNTL, ++ mmTCP_WATCH2_ADDR_H, mmTCP_WATCH2_ADDR_L, mmTCP_WATCH2_CNTL, ++ mmTCP_WATCH3_ADDR_H, mmTCP_WATCH3_ADDR_L, mmTCP_WATCH3_CNTL ++}; ++ + /* + * Register access functions + */ +@@ -105,6 +114,20 @@ static uint32_t kgd_address_watch_get_offset(struct kgd_dev *kgd, + unsigned int watch_point_id, + unsigned int reg_offset); + ++static uint32_t kgd_enable_debug_trap(struct kgd_dev *kgd, ++ uint32_t trap_debug_wave_launch_mode, ++ uint32_t vmid); ++static uint32_t kgd_disable_debug_trap(struct kgd_dev *kgd); ++static uint32_t kgd_set_debug_trap_data(struct kgd_dev *kgd, ++ int trap_data0, ++ int trap_data1); ++static uint32_t kgd_set_wave_launch_trap_override(struct kgd_dev *kgd, ++ uint32_t trap_override, ++ uint32_t trap_mask); ++static uint32_t kgd_set_wave_launch_mode(struct kgd_dev *kgd, ++ uint8_t wave_launch_mode, ++ uint32_t vmid); ++ + static bool get_atc_vmid_pasid_mapping_valid(struct kgd_dev *kgd, + uint8_t vmid); + static uint16_t get_atc_vmid_pasid_mapping_pasid(struct kgd_dev *kgd, +@@ -164,6 +187,13 @@ static const struct kfd2kgd_calls kfd2kgd = { + .set_vm_context_page_table_base = set_vm_context_page_table_base, + .invalidate_tlbs = invalidate_tlbs, + .invalidate_tlbs_vmid = invalidate_tlbs_vmid, ++ .get_hive_id = amdgpu_amdkfd_get_hive_id, ++ .enable_debug_trap = kgd_enable_debug_trap, ++ .disable_debug_trap = kgd_disable_debug_trap, ++ .set_debug_trap_data = kgd_set_debug_trap_data, ++ .set_wave_launch_trap_override = kgd_set_wave_launch_trap_override, ++ .set_wave_launch_mode = kgd_set_wave_launch_mode, ++ + }; + + struct kfd2kgd_calls *amdgpu_amdkfd_gfx_9_0_get_functions(void) +@@ -336,6 +366,16 @@ static uint32_t get_sdma_base_addr(struct amdgpu_device *adev, + return retval; + } + ++static uint32_t get_watch_base_addr(struct amdgpu_device *adev) ++{ ++ uint32_t retval = SOC15_REG_OFFSET(GC, 0, mmTCP_WATCH0_ADDR_H) - ++ mmTCP_WATCH0_ADDR_H; ++ ++ pr_debug("kfd: reg watch base address: 0x%x\n", retval); ++ ++ return retval; ++} ++ + static inline struct v9_mqd *get_mqd(void *mqd) + { + return (struct v9_mqd *)mqd; +@@ -729,29 +769,8 @@ static uint16_t get_atc_vmid_pasid_mapping_pasid(struct kgd_dev *kgd, + return reg & ATC_VMID0_PASID_MAPPING__PASID_MASK; + } + +-static void write_vmid_invalidate_request(struct kgd_dev *kgd, uint8_t vmid) +-{ +- struct amdgpu_device *adev = (struct amdgpu_device *) kgd; +- +- /* Use legacy mode tlb invalidation. +- * +- * Currently on Raven the code below is broken for anything but +- * legacy mode due to a MMHUB power gating problem. A workaround +- * is for MMHUB to wait until the condition PER_VMID_INVALIDATE_REQ +- * == PER_VMID_INVALIDATE_ACK instead of simply waiting for the ack +- * bit. +- * +- * TODO 1: agree on the right set of invalidation registers for +- * KFD use. Use the last one for now. Invalidate both GC and +- * MMHUB. +- * +- * TODO 2: support range-based invalidation, requires kfg2kgd +- * interface change +- */ +- amdgpu_gmc_flush_gpu_tlb(adev, vmid, 0); +-} +- +-static int invalidate_tlbs_with_kiq(struct amdgpu_device *adev, uint16_t pasid) ++static int invalidate_tlbs_with_kiq(struct amdgpu_device *adev, uint16_t pasid, ++ uint32_t flush_type) + { + signed long r; + uint32_t seq; +@@ -764,7 +783,7 @@ static int invalidate_tlbs_with_kiq(struct amdgpu_device *adev, uint16_t pasid) + PACKET3_INVALIDATE_TLBS_DST_SEL(1) | + PACKET3_INVALIDATE_TLBS_ALL_HUB(1) | + PACKET3_INVALIDATE_TLBS_PASID(pasid) | +- PACKET3_INVALIDATE_TLBS_FLUSH_TYPE(0)); /* legacy */ ++ PACKET3_INVALIDATE_TLBS_FLUSH_TYPE(flush_type)); + amdgpu_fence_emit_polling(ring, &seq); + amdgpu_ring_commit(ring); + spin_unlock(&adev->gfx.kiq.ring_lock); +@@ -783,12 +802,16 @@ static int invalidate_tlbs(struct kgd_dev *kgd, uint16_t pasid) + struct amdgpu_device *adev = (struct amdgpu_device *) kgd; + int vmid; + struct amdgpu_ring *ring = &adev->gfx.kiq.ring; ++ uint32_t flush_type = 0; + + if (adev->in_gpu_reset) + return -EIO; ++ if (adev->gmc.xgmi.num_physical_nodes && ++ adev->asic_type == CHIP_VEGA20) ++ flush_type = 2; + + if (ring->sched.ready) +- return invalidate_tlbs_with_kiq(adev, pasid); ++ return invalidate_tlbs_with_kiq(adev, pasid, flush_type); + + for (vmid = 0; vmid < 16; vmid++) { + if (!amdgpu_amdkfd_is_kfd_vmid(adev, vmid)) +@@ -796,7 +819,7 @@ static int invalidate_tlbs(struct kgd_dev *kgd, uint16_t pasid) + if (get_atc_vmid_pasid_mapping_valid(kgd, vmid)) { + if (get_atc_vmid_pasid_mapping_pasid(kgd, vmid) + == pasid) { +- write_vmid_invalidate_request(kgd, vmid); ++ amdgpu_gmc_flush_gpu_tlb(adev, vmid, flush_type); + break; + } + } +@@ -814,12 +837,46 @@ static int invalidate_tlbs_vmid(struct kgd_dev *kgd, uint16_t vmid) + return 0; + } + +- write_vmid_invalidate_request(kgd, vmid); ++ /* Use legacy mode tlb invalidation. ++ * ++ * Currently on Raven the code below is broken for anything but ++ * legacy mode due to a MMHUB power gating problem. A workaround ++ * is for MMHUB to wait until the condition PER_VMID_INVALIDATE_REQ ++ * == PER_VMID_INVALIDATE_ACK instead of simply waiting for the ack ++ * bit. ++ * ++ * TODO 1: agree on the right set of invalidation registers for ++ * KFD use. Use the last one for now. Invalidate both GC and ++ * MMHUB. ++ * ++ * TODO 2: support range-based invalidation, requires kfg2kgd ++ * interface change ++ */ ++ amdgpu_gmc_flush_gpu_tlb(adev, vmid, 0); + return 0; + } + + static int kgd_address_watch_disable(struct kgd_dev *kgd) + { ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ union TCP_WATCH_CNTL_BITS cntl; ++ unsigned int i; ++ uint32_t watch_base_addr; ++ ++ cntl.u32All = 0; ++ ++ cntl.bitfields.valid = 0; ++ cntl.bitfields.mask = ADDRESS_WATCH_REG_CNTL_DEFAULT_MASK; ++ cntl.bitfields.atc = 1; ++ ++ watch_base_addr = get_watch_base_addr(adev); ++ /* Turning off this address until we set all the registers */ ++ for (i = 0; i < MAX_WATCH_ADDRESSES; i++) ++ WREG32(watch_base_addr + ++ watchRegs[i * ADDRESS_WATCH_REG_MAX + ++ ADDRESS_WATCH_REG_CNTL], ++ cntl.u32All); ++ + return 0; + } + +@@ -829,6 +886,32 @@ static int kgd_address_watch_execute(struct kgd_dev *kgd, + uint32_t addr_hi, + uint32_t addr_lo) + { ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ union TCP_WATCH_CNTL_BITS cntl; ++ uint32_t watch_base_addr; ++ ++ watch_base_addr = get_watch_base_addr(adev); ++ cntl.u32All = cntl_val; ++ ++ /* Turning off this watch point until we set all the registers */ ++ cntl.bitfields.valid = 0; ++ WREG32(watch_base_addr + watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX + ADDRESS_WATCH_REG_CNTL], ++ cntl.u32All); ++ ++ WREG32(watch_base_addr + watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX + ADDRESS_WATCH_REG_ADDR_HI], ++ addr_hi); ++ ++ WREG32(watch_base_addr + watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX + ADDRESS_WATCH_REG_ADDR_LO], ++ addr_lo); ++ ++ /* Enable the watch point */ ++ cntl.bitfields.valid = 1; ++ ++ WREG32(watch_base_addr + ++ watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX + ++ ADDRESS_WATCH_REG_CNTL], ++ cntl.u32All); ++ + return 0; + } + +@@ -861,6 +944,143 @@ static uint32_t kgd_address_watch_get_offset(struct kgd_dev *kgd, + unsigned int watch_point_id, + unsigned int reg_offset) + { ++ return get_watch_base_addr(get_amdgpu_device(kgd)) + ++ watchRegs[watch_point_id * ADDRESS_WATCH_REG_MAX + reg_offset]; ++} ++ ++static uint32_t kgd_enable_debug_trap(struct kgd_dev *kgd, ++ uint32_t trap_debug_wave_launch_mode, ++ uint32_t vmid) ++{ ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ uint32_t data = 0; ++ uint32_t orig_wave_cntl_value; ++ uint32_t orig_stall_vmid; ++ ++ mutex_lock(&adev->grbm_idx_mutex); ++ ++ orig_wave_cntl_value = RREG32(SOC15_REG_OFFSET(GC, ++ 0, ++ mmSPI_GDBG_WAVE_CNTL)); ++ orig_stall_vmid = REG_GET_FIELD(orig_wave_cntl_value, ++ SPI_GDBG_WAVE_CNTL, ++ STALL_VMID); ++ ++ data = REG_SET_FIELD(data, SPI_GDBG_WAVE_CNTL, STALL_RA, 1); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL), data); ++ ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_DATA0), 0); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_DATA1), 0); ++ ++ data = 0; ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_MASK), data); ++ ++ data = 0; ++ data = REG_SET_FIELD(data, SPI_GDBG_TRAP_CONFIG, ++ VMID_SEL, 1<<vmid); ++ data = REG_SET_FIELD(data, SPI_GDBG_TRAP_CONFIG, ++ TRAP_EN, 1); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_CONFIG), data); ++ ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL), orig_stall_vmid); ++ ++ mutex_unlock(&adev->grbm_idx_mutex); ++ ++ return 0; ++} ++ ++static uint32_t kgd_disable_debug_trap(struct kgd_dev *kgd) ++{ ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ ++ mutex_lock(&adev->grbm_idx_mutex); ++ ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_CONFIG), 0); ++ ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_DATA0), 0); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_DATA1), 0); ++ ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_MASK), 0); ++ ++ mutex_unlock(&adev->grbm_idx_mutex); ++ ++ return 0; ++} ++ ++static uint32_t kgd_set_debug_trap_data(struct kgd_dev *kgd, ++ int trap_data0, ++ int trap_data1) ++{ ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ ++ mutex_lock(&adev->grbm_idx_mutex); ++ ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_DATA0), trap_data0); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_DATA1), trap_data1); ++ ++ mutex_unlock(&adev->grbm_idx_mutex); ++ return 0; ++} ++ ++static uint32_t kgd_set_wave_launch_trap_override(struct kgd_dev *kgd, ++ uint32_t trap_override, ++ uint32_t trap_mask) ++{ ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ uint32_t data = 0; ++ ++ mutex_lock(&adev->grbm_idx_mutex); ++ ++ data = RREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL)); ++ data = REG_SET_FIELD(data, SPI_GDBG_WAVE_CNTL, STALL_RA, 1); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL), data); ++ ++ data = 0; ++ data = REG_SET_FIELD(data, SPI_GDBG_TRAP_MASK, ++ EXCP_EN, trap_mask); ++ data = REG_SET_FIELD(data, SPI_GDBG_TRAP_MASK, ++ REPLACE, trap_override); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_TRAP_MASK), data); ++ ++ data = RREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL)); ++ data = REG_SET_FIELD(data, SPI_GDBG_WAVE_CNTL, STALL_RA, 0); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL), data); ++ ++ mutex_unlock(&adev->grbm_idx_mutex); ++ ++ return 0; ++} ++ ++static uint32_t kgd_set_wave_launch_mode(struct kgd_dev *kgd, ++ uint8_t wave_launch_mode, ++ uint32_t vmid) ++{ ++ struct amdgpu_device *adev = get_amdgpu_device(kgd); ++ uint32_t data = 0; ++ bool is_stall_mode; ++ bool is_mode_set; ++ ++ ++ is_stall_mode = (wave_launch_mode == 4); ++ is_mode_set = (wave_launch_mode != 0 && wave_launch_mode != 4); ++ ++ mutex_lock(&adev->grbm_idx_mutex); ++ ++ data = REG_SET_FIELD(data, SPI_GDBG_WAVE_CNTL2, ++ VMID_MASK, is_mode_set ? 1 << vmid : 0); ++ data = REG_SET_FIELD(data, SPI_GDBG_WAVE_CNTL2, ++ MODE, is_mode_set ? wave_launch_mode : 0); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL2), data); ++ ++ data = RREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL)); ++ data = REG_SET_FIELD(data, SPI_GDBG_WAVE_CNTL, ++ STALL_VMID, is_stall_mode ? 1 << vmid : 0); ++ data = REG_SET_FIELD(data, SPI_GDBG_WAVE_CNTL, ++ STALL_RA, is_stall_mode ? 1 : 0); ++ WREG32(SOC15_REG_OFFSET(GC, 0, mmSPI_GDBG_WAVE_CNTL), data); ++ ++ mutex_unlock(&adev->grbm_idx_mutex); ++ + return 0; + } + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c +index b6e07e27fe24..0ea7149d5a32 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c +@@ -20,6 +20,7 @@ + * OTHER DEALINGS IN THE SOFTWARE. + */ + ++#undef pr_fmt + #define pr_fmt(fmt) "kfd2kgd: " fmt + + #include <linux/list.h> +@@ -896,6 +897,17 @@ static struct sg_table *create_doorbell_sg(uint64_t addr, uint32_t size) + return sg; + } + ++static bool check_sg_size(struct sg_table *sgt, uint64_t size) ++{ ++ unsigned int count; ++ struct scatterlist *sg; ++ ++ for_each_sg(sgt->sgl, sg, sgt->nents, count) ++ size -= sg->length; ++ ++ return (size == 0); ++} ++ + static int process_validate_vms(struct amdkfd_process_info *process_info) + { + struct amdgpu_vm *peer_vm; +@@ -1174,14 +1186,13 @@ uint64_t amdgpu_amdkfd_gpuvm_get_process_page_dir(void *vm) + + int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu( + struct kgd_dev *kgd, uint64_t va, uint64_t size, +- void *vm, struct kgd_mem **mem, ++ void *vm, struct sg_table *sg, struct kgd_mem **mem, + uint64_t *offset, uint32_t flags) + { + struct amdgpu_device *adev = get_amdgpu_device(kgd); + struct amdgpu_vm *avm = (struct amdgpu_vm *)vm; +- enum ttm_bo_type bo_type = ttm_bo_type_device; +- struct sg_table *sg = NULL; + uint64_t user_addr = 0; ++ enum ttm_bo_type bo_type = ttm_bo_type_device; + struct amdgpu_bo *bo; + struct amdgpu_bo_param bp; + int byte_align; +@@ -1202,6 +1213,8 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu( + } else if (flags & ALLOC_MEM_FLAGS_GTT) { + domain = alloc_domain = AMDGPU_GEM_DOMAIN_GTT; + alloc_flags = 0; ++ if (sg && !check_sg_size(sg, size)) ++ return -EINVAL; + } else if (flags & ALLOC_MEM_FLAGS_USERPTR) { + domain = AMDGPU_GEM_DOMAIN_GTT; + alloc_domain = AMDGPU_GEM_DOMAIN_CPU; +@@ -1216,6 +1229,7 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu( + alloc_flags = 0; + if (size > UINT_MAX) + return -EINVAL; ++ WARN_ON(sg); + sg = create_doorbell_sg(*offset, size); + if (!sg) + return -ENOMEM; +@@ -1223,6 +1237,10 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu( + return -EINVAL; + } + ++ if (sg) { ++ alloc_domain = AMDGPU_GEM_DOMAIN_CPU; ++ bo_type = ttm_bo_type_sg; ++ } + *mem = kzalloc(sizeof(struct kgd_mem), GFP_KERNEL); + if (!*mem) { + ret = -ENOMEM; +@@ -1260,6 +1278,7 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu( + + amdgpu_sync_create(&(*mem)->sync); + ++ size = ALIGN(size, PAGE_SIZE); + ret = amdgpu_amdkfd_reserve_mem_limit(adev, size, alloc_domain, !!sg); + if (ret) { + pr_debug("Insufficient system memory\n"); +@@ -1276,7 +1295,9 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu( + bp.flags = alloc_flags; + bp.type = bo_type; + bp.resv = NULL; ++ + ret = amdgpu_bo_create(adev, &bp, &bo); ++ + if (ret) { + pr_debug("Failed to create BO on domain %s. ret %d\n", + domain_string(alloc_domain), ret); +@@ -1510,7 +1531,7 @@ int amdgpu_amdkfd_gpuvm_map_memory_to_gpu( + ret = map_bo_to_gpuvm(adev, entry, ctx.sync, + is_invalid_userptr); + if (ret) { +- pr_err("Failed to map radeon bo to gpuvm\n"); ++ pr_err("Failed to map bo to gpuvm\n"); + goto map_bo_to_gpuvm_failed; + } + +@@ -1705,6 +1726,160 @@ int amdgpu_amdkfd_gpuvm_get_vm_fault_info(struct kgd_dev *kgd, + return 0; + } + ++static int pin_bo_wo_map(struct kgd_mem *mem) ++{ ++ struct amdgpu_bo *bo = mem->bo; ++ int ret = 0; ++ ++ ret = amdgpu_bo_reserve(bo, false); ++ if (unlikely(ret)) ++ return ret; ++ ++ ret = amdgpu_bo_pin(bo, mem->domain); ++ amdgpu_bo_unreserve(bo); ++ ++ return ret; ++} ++ ++static void unpin_bo_wo_map(struct kgd_mem *mem) ++{ ++ struct amdgpu_bo *bo = mem->bo; ++ int ret = 0; ++ ++ ret = amdgpu_bo_reserve(bo, false); ++ if (unlikely(ret)) ++ return; ++ ++ amdgpu_bo_unpin(bo); ++ amdgpu_bo_unreserve(bo); ++} ++ ++#define AMD_GPU_PAGE_SHIFT PAGE_SHIFT ++#define AMD_GPU_PAGE_SIZE (_AC(1, UL) << AMD_GPU_PAGE_SHIFT) ++ ++static int get_sg_table(struct amdgpu_device *adev, ++ struct kgd_mem *mem, uint64_t offset, ++ uint64_t size, struct sg_table **ret_sg) ++{ ++ struct amdgpu_bo *bo = mem->bo; ++ struct sg_table *sg = NULL; ++ unsigned long bus_addr, aper_limit; ++ unsigned int chunks; ++ unsigned int i; ++ struct scatterlist *s; ++ uint64_t offset_in_page; ++ unsigned int page_size; ++ int ret; ++ ++ if (size + offset > amdgpu_bo_size(bo)) ++ return -EFAULT; ++ sg = kmalloc(sizeof(*sg), GFP_KERNEL); ++ if (!sg) { ++ ret = -ENOMEM; ++ goto out; ++ } ++ ++ if (bo->preferred_domains == AMDGPU_GEM_DOMAIN_VRAM) ++ page_size = AMD_GPU_PAGE_SIZE; ++ else ++ page_size = PAGE_SIZE; ++ ++ ++ offset_in_page = offset & (page_size - 1); ++ chunks = (size + offset_in_page + page_size - 1) ++ / page_size; ++ ++ ret = sg_alloc_table(sg, chunks, GFP_KERNEL); ++ if (unlikely(ret)) ++ goto out; ++ ++ if (bo->preferred_domains == AMDGPU_GEM_DOMAIN_VRAM) { ++ bus_addr = amdgpu_bo_gpu_offset(bo) - adev->gmc.vram_start ++ + adev->gmc.aper_base + offset; ++ aper_limit = adev->gmc.aper_base + adev->gmc.aper_size; ++ if (bus_addr + (chunks * page_size) > aper_limit) { ++ pr_err("sg: bus addr not inside pci aperture\n"); ++ ret = -EFAULT; ++ goto out_of_range; ++ } ++ ++ for_each_sg(sg->sgl, s, sg->orig_nents, i) { ++ uint64_t chunk_size, length; ++ ++ chunk_size = page_size - offset_in_page; ++ length = min(size, chunk_size); ++ ++ sg_set_page(s, NULL, length, offset_in_page); ++ s->dma_address = bus_addr; ++ s->dma_length = length; ++ ++ size -= length; ++ offset_in_page = 0; ++ bus_addr += length; ++ } ++ } else { ++ struct page **pages; ++ unsigned int cur_page; ++ ++ pages = bo->tbo.ttm->pages; ++ ++ cur_page = offset / page_size; ++ for_each_sg(sg->sgl, s, sg->orig_nents, i) { ++ uint64_t chunk_size, length; ++ ++ chunk_size = page_size - offset_in_page; ++ length = min(size, chunk_size); ++ ++ sg_set_page(s, pages[cur_page], length, offset_in_page); ++ s->dma_address = page_to_phys(pages[cur_page]); ++ s->dma_length = length; ++ ++ size -= length; ++ offset_in_page = 0; ++ cur_page++; ++ } ++ } ++ ++ *ret_sg = sg; ++ return 0; ++ ++out_of_range: ++ sg_free_table(sg); ++out: ++ kfree(sg); ++ *ret_sg = NULL; ++ return ret; ++} ++ ++int amdgpu_amdkfd_gpuvm_pin_get_sg_table(struct kgd_dev *kgd, ++ struct kgd_mem *mem, uint64_t offset, ++ uint64_t size, struct sg_table **ret_sg) ++{ ++ int ret; ++ struct amdgpu_device *adev; ++ ++ ret = pin_bo_wo_map(mem); ++ if (unlikely(ret)) ++ return ret; ++ ++ adev = get_amdgpu_device(kgd); ++ ++ ret = get_sg_table(adev, mem, offset, size, ret_sg); ++ if (ret) ++ unpin_bo_wo_map(mem); ++ ++ return ret; ++} ++ ++void amdgpu_amdkfd_gpuvm_unpin_put_sg_table( ++ struct kgd_mem *mem, struct sg_table *sg) ++{ ++ sg_free_table(sg); ++ kfree(sg); ++ ++ unpin_bo_wo_map(mem); ++} ++ + int amdgpu_amdkfd_gpuvm_import_dmabuf(struct kgd_dev *kgd, + struct dma_buf *dma_buf, + uint64_t va, void *vm, +@@ -1759,6 +1934,24 @@ int amdgpu_amdkfd_gpuvm_import_dmabuf(struct kgd_dev *kgd, + return 0; + } + ++int amdgpu_amdkfd_gpuvm_export_dmabuf(struct kgd_dev *kgd, void *vm, ++ struct kgd_mem *mem, ++ struct dma_buf **dmabuf) ++{ ++ struct amdgpu_device *adev = NULL; ++ ++ if (!dmabuf || !kgd || !vm || !mem) ++ return -EINVAL; ++ ++ adev = get_amdgpu_device(kgd); ++ ++ *dmabuf = amdgpu_gem_prime_export(adev->ddev, &mem->bo->gem_base, 0); ++ if (IS_ERR(*dmabuf)) ++ return -EINVAL; ++ ++ return 0; ++} ++ + /* Evict a userptr BO by stopping the queues if necessary + * + * Runs in MMU notifier, may be in RECLAIM_FS context. This means it +@@ -2108,6 +2301,7 @@ static void amdgpu_amdkfd_restore_userptr_worker(struct work_struct *work) + * 7. Add fence to all PD and PT BOs. + * 8. Unreserve all BOs + */ ++ + int amdgpu_amdkfd_gpuvm_restore_process_bos(void *info, struct dma_fence **ef) + { + struct amdgpu_bo_list_entry *pd_bo_list; +@@ -2246,3 +2440,82 @@ int amdgpu_amdkfd_gpuvm_restore_process_bos(void *info, struct dma_fence **ef) + kfree(pd_bo_list); + return ret; + } ++ ++int amdgpu_amdkfd_copy_mem_to_mem(struct kgd_dev *kgd, struct kgd_mem *src_mem, ++ uint64_t src_offset, struct kgd_mem *dst_mem, ++ uint64_t dst_offset, uint64_t size, ++ struct dma_fence **f, uint64_t *actual_size) ++{ ++ struct amdgpu_device *adev = NULL; ++ struct amdgpu_copy_mem src, dst; ++ struct ww_acquire_ctx ticket; ++ struct list_head list, duplicates; ++ struct ttm_validate_buffer resv_list[2]; ++ struct dma_fence *fence = NULL; ++ int i, r; ++ ++ if (!kgd || !src_mem || !dst_mem || !actual_size) ++ return -EINVAL; ++ ++ *actual_size = 0; ++ ++ adev = get_amdgpu_device(kgd); ++ INIT_LIST_HEAD(&list); ++ INIT_LIST_HEAD(&duplicates); ++ ++ src.bo = &src_mem->bo->tbo; ++ dst.bo = &dst_mem->bo->tbo; ++ src.mem = &src.bo->mem; ++ dst.mem = &dst.bo->mem; ++ src.offset = src_offset; ++ dst.offset = dst_offset; ++ ++ resv_list[0].bo = src.bo; ++ resv_list[1].bo = dst.bo; ++ ++ for (i = 0; i < 2; i++) { ++ resv_list[i].num_shared = 1; ++ list_add_tail(&resv_list[i].head, &list); ++ } ++ ++ r = ttm_eu_reserve_buffers(&ticket, &list, false, &duplicates); ++ if (r) { ++ pr_err("Copy buffer failed. Unable to reserve bo (%d)\n", r); ++ return r; ++ } ++ ++ /* The process to which the Source and Dest BOs belong to could be ++ * evicted and the BOs invalidated. So validate BOs before use ++ */ ++ r = amdgpu_amdkfd_bo_validate(src_mem->bo, src_mem->domain, false); ++ if (r) { ++ pr_err("CMA fail: SRC BO validate failed %d\n", r); ++ goto validate_fail; ++ } ++ ++ ++ r = amdgpu_amdkfd_bo_validate(dst_mem->bo, dst_mem->domain, false); ++ if (r) { ++ pr_err("CMA fail: DST BO validate failed %d\n", r); ++ goto validate_fail; ++ } ++ ++ ++ r = amdgpu_ttm_copy_mem_to_mem(adev, &src, &dst, size, NULL, ++ &fence); ++ if (r) ++ pr_err("Copy buffer failed %d\n", r); ++ else ++ *actual_size = size; ++ if (fence) { ++ amdgpu_bo_fence(src_mem->bo, fence, true); ++ amdgpu_bo_fence(dst_mem->bo, fence, true); ++ } ++ if (f) ++ *f = dma_fence_get(fence); ++ dma_fence_put(fence); ++ ++validate_fail: ++ ttm_eu_backoff_reservation(&ticket, &list); ++ return r; ++} +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c +index 35a40ad3a11c..a5a816899ac8 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c +@@ -604,6 +604,14 @@ MODULE_PARM_DESC(mes, + "Enable Micro Engine Scheduler (0 = disabled (default), 1 = enabled)"); + module_param_named(mes, amdgpu_mes, int, 0444); + ++/** ++ * DOC: pcie_p2p (bool) ++ * Enable PCIe P2P (requires large-BAR). Default value: true (on) ++ */ ++bool pcie_p2p = true; ++module_param(pcie_p2p, bool, 0444); ++MODULE_PARM_DESC(pcie_p2p, "Enable PCIe P2P (requires large-BAR). (N = off, Y = on(default))"); ++ + /** + * DOC: dcfeaturemask (uint) + * Override display features enabled. See enum DC_FEATURE_MASK in drivers/gpu/drm/amd/include/amd_shared.h. +diff --git a/drivers/gpu/drm/amd/amdkfd/Makefile b/drivers/gpu/drm/amd/amdkfd/Makefile +index 69ec96998bb9..540b9bcb4737 100644 +--- a/drivers/gpu/drm/amd/amdkfd/Makefile ++++ b/drivers/gpu/drm/amd/amdkfd/Makefile +@@ -52,7 +52,11 @@ AMDKFD_FILES := $(AMDKFD_PATH)/kfd_module.o \ + $(AMDKFD_PATH)/kfd_int_process_v9.o \ + $(AMDKFD_PATH)/kfd_dbgdev.o \ + $(AMDKFD_PATH)/kfd_dbgmgr.o \ +- $(AMDKFD_PATH)/kfd_crat.o ++ $(AMDKFD_PATH)/kfd_crat.o \ ++ $(AMDKFD_PATH)/kfd_rdma.o \ ++ $(AMDKFD_PATH)/kfd_peerdirect.o \ ++ $(AMDKFD_PATH)/kfd_ipc.o \ ++ $(AMDKFD_PATH)/kfd_trace.o + + ifneq ($(CONFIG_AMD_IOMMU_V2),) + AMDKFD_FILES += $(AMDKFD_PATH)/kfd_iommu.o +diff --git a/drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h b/drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h +index 3621efbd5759..ec9a9a99f808 100644 +--- a/drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h ++++ b/drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler.h +@@ -21,7 +21,7 @@ + */ + + static const uint32_t cwsr_trap_gfx8_hex[] = { +- 0xbf820001, 0xbf82012b, ++ 0xbf820001, 0xbf820121, + 0xb8f4f802, 0x89748674, + 0xb8f5f803, 0x8675ff75, + 0x00000400, 0xbf850017, +@@ -36,12 +36,7 @@ static const uint32_t cwsr_trap_gfx8_hex[] = { + 0x8671ff71, 0x0000ffff, + 0x8f728374, 0xb972e0c2, + 0xbf800002, 0xb9740002, +- 0xbe801f70, 0xb8f5f803, +- 0x8675ff75, 0x00000100, +- 0xbf840006, 0xbefa0080, +- 0xb97a0203, 0x8671ff71, +- 0x0000ffff, 0x80f08870, +- 0x82f18071, 0xbefa0080, ++ 0xbe801f70, 0xbefa0080, + 0xb97a0283, 0xbef60068, + 0xbef70069, 0xb8fa1c07, + 0x8e7a9c7a, 0x87717a71, +diff --git a/drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx8.asm b/drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx8.asm +index abe1a5da29fb..a47f5b933120 100644 +--- a/drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx8.asm ++++ b/drivers/gpu/drm/amd/amdkfd/cwsr_trap_handler_gfx8.asm +@@ -282,19 +282,6 @@ if G8SR_DEBUG_TIMESTAMP + s_waitcnt lgkmcnt(0) //FIXME, will cause xnack?? + end + +- //check whether there is mem_viol +- s_getreg_b32 s_save_trapsts, hwreg(HW_REG_TRAPSTS) +- s_and_b32 s_save_trapsts, s_save_trapsts, SQ_WAVE_TRAPSTS_MEM_VIOL_MASK +- s_cbranch_scc0 L_NO_PC_REWIND +- +- //if so, need rewind PC assuming GDS operation gets NACKed +- s_mov_b32 s_save_tmp, 0 //clear mem_viol bit +- s_setreg_b32 hwreg(HW_REG_TRAPSTS, SQ_WAVE_TRAPSTS_MEM_VIOL_SHIFT, 1), s_save_tmp //clear mem_viol bit +- s_and_b32 s_save_pc_hi, s_save_pc_hi, 0x0000ffff //pc[47:32] +- s_sub_u32 s_save_pc_lo, s_save_pc_lo, 8 //pc[31:0]-8 +- s_subb_u32 s_save_pc_hi, s_save_pc_hi, 0x0 // -scc +- +-L_NO_PC_REWIND: + s_mov_b32 s_save_tmp, 0 //clear saveCtx bit + s_setreg_b32 hwreg(HW_REG_TRAPSTS, SQ_WAVE_TRAPSTS_SAVECTX_SHIFT, 1), s_save_tmp //clear saveCtx bit + +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c +index db6f27fe3d5a..ed19cbb618dd 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c +@@ -26,6 +26,7 @@ + #include <linux/fs.h> + #include <linux/file.h> + #include <linux/sched.h> ++#include <linux/sched/mm.h> + #include <linux/slab.h> + #include <linux/uaccess.h> + #include <linux/compat.h> +@@ -35,9 +36,15 @@ + #include <linux/mman.h> + #include <linux/dma-buf.h> + #include <asm/processor.h> ++#include <linux/ptrace.h> ++#include <linux/pagemap.h> ++ + #include "kfd_priv.h" + #include "kfd_device_queue_manager.h" + #include "kfd_dbgmgr.h" ++#include "kfd_ipc.h" ++#include "kfd_trace.h" ++ + #include "amdgpu_amdkfd.h" + + static long kfd_ioctl(struct file *, unsigned int, unsigned long); +@@ -58,6 +65,14 @@ static int kfd_char_dev_major = -1; + static struct class *kfd_class; + struct device *kfd_device; + ++static char *kfd_devnode(struct device *dev, umode_t *mode) ++{ ++ if (mode && dev->devt == MKDEV(kfd_char_dev_major, 0)) ++ *mode = 0666; ++ ++ return NULL; ++} ++ + int kfd_chardev_init(void) + { + int err = 0; +@@ -72,6 +87,8 @@ int kfd_chardev_init(void) + if (IS_ERR(kfd_class)) + goto err_class_create; + ++ kfd_class->devnode = kfd_devnode; ++ + kfd_device = device_create(kfd_class, NULL, + MKDEV(kfd_char_dev_major, 0), + NULL, kfd_dev_name); +@@ -144,7 +161,8 @@ static int kfd_ioctl_get_version(struct file *filep, struct kfd_process *p, + return 0; + } + +-static int set_queue_properties_from_user(struct queue_properties *q_properties, ++static int set_queue_properties_from_user(struct kfd_dev *dev, ++ struct queue_properties *q_properties, + struct kfd_ioctl_create_queue_args *args) + { + if (args->queue_percentage > KFD_MAX_QUEUE_PERCENTAGE) { +@@ -160,7 +178,7 @@ static int set_queue_properties_from_user(struct queue_properties *q_properties, + if ((args->ring_base_address) && + (!access_ok(VERIFY_WRITE, + (const void __user *) args->ring_base_address, +- sizeof(uint64_t)))) { ++ sizeof(uint64_t)))) { + pr_err("Can't access ring base address\n"); + return -EFAULT; + } +@@ -172,14 +190,14 @@ static int set_queue_properties_from_user(struct queue_properties *q_properties, + + if (!access_ok(VERIFY_WRITE, + (const void __user *) args->read_pointer_address, +- sizeof(uint32_t))) { ++ sizeof(uint32_t))) { + pr_err("Can't access read pointer\n"); + return -EFAULT; + } + + if (!access_ok(VERIFY_WRITE, + (const void __user *) args->write_pointer_address, +- sizeof(uint32_t))) { ++ sizeof(uint32_t))) { + pr_err("Can't access write pointer\n"); + return -EFAULT; + } +@@ -187,7 +205,7 @@ static int set_queue_properties_from_user(struct queue_properties *q_properties, + if (args->eop_buffer_address && + !access_ok(VERIFY_WRITE, + (const void __user *) args->eop_buffer_address, +- sizeof(uint32_t))) { ++ sizeof(uint32_t))) { + pr_debug("Can't access eop buffer"); + return -EFAULT; + } +@@ -195,7 +213,7 @@ static int set_queue_properties_from_user(struct queue_properties *q_properties, + if (args->ctx_save_restore_address && + !access_ok(VERIFY_WRITE, + (const void __user *) args->ctx_save_restore_address, +- sizeof(uint32_t))) { ++ sizeof(uint32_t))) { + pr_debug("Can't access ctx save restore buffer"); + return -EFAULT; + } +@@ -214,12 +232,21 @@ static int set_queue_properties_from_user(struct queue_properties *q_properties, + q_properties->ctx_save_restore_area_size = args->ctx_save_restore_size; + q_properties->ctl_stack_size = args->ctl_stack_size; + if (args->queue_type == KFD_IOC_QUEUE_TYPE_COMPUTE || +- args->queue_type == KFD_IOC_QUEUE_TYPE_COMPUTE_AQL) ++ args->queue_type == KFD_IOC_QUEUE_TYPE_COMPUTE_AQL) { + q_properties->type = KFD_QUEUE_TYPE_COMPUTE; +- else if (args->queue_type == KFD_IOC_QUEUE_TYPE_SDMA) ++ } else if (args->queue_type == KFD_IOC_QUEUE_TYPE_SDMA) { ++ q_properties->sdma_engine_id = ++ dev->device_info->num_sdma_engines; + q_properties->type = KFD_QUEUE_TYPE_SDMA; +- else ++ } else if (args->queue_type >= KFD_IOC_QUEUE_TYPE_SDMA_ENGINE(0) && ++ args->queue_type < KFD_IOC_QUEUE_TYPE_SDMA_ENGINE( ++ dev->device_info->num_sdma_engines)) { ++ q_properties->sdma_engine_id = ++ args->queue_type - KFD_IOC_QUEUE_TYPE_SDMA_ENGINE(0); ++ q_properties->type = KFD_QUEUE_TYPE_SDMA; ++ } else { + return -ENOTSUPP; ++ } + + if (args->queue_type == KFD_IOC_QUEUE_TYPE_COMPUTE_AQL) + q_properties->format = KFD_QUEUE_FORMAT_AQL; +@@ -266,10 +293,6 @@ static int kfd_ioctl_create_queue(struct file *filep, struct kfd_process *p, + + pr_debug("Creating queue ioctl\n"); + +- err = set_queue_properties_from_user(&q_properties, args); +- if (err) +- return err; +- + pr_debug("Looking for gpu id 0x%x\n", args->gpu_id); + dev = kfd_device_by_id(args->gpu_id); + if (!dev) { +@@ -277,6 +300,10 @@ static int kfd_ioctl_create_queue(struct file *filep, struct kfd_process *p, + return -EINVAL; + } + ++ err = set_queue_properties_from_user(dev, &q_properties, args); ++ if (err) ++ return err; ++ + mutex_lock(&p->mutex); + + pdd = kfd_bind_process_to_device(dev, p); +@@ -528,7 +555,7 @@ static int kfd_ioctl_set_trap_handler(struct file *filep, + struct kfd_process_device *pdd; + + dev = kfd_device_by_id(args->gpu_id); +- if (dev == NULL) ++ if (!dev) + return -EINVAL; + + mutex_lock(&p->mutex); +@@ -565,11 +592,6 @@ static int kfd_ioctl_dbg_register(struct file *filep, + if (!dev) + return -EINVAL; + +- if (dev->device_info->asic_family == CHIP_CARRIZO) { +- pr_debug("kfd_ioctl_dbg_register not supported on CZ\n"); +- return -EINVAL; +- } +- + mutex_lock(&p->mutex); + mutex_lock(kfd_get_dbgmgr_mutex()); + +@@ -616,11 +638,6 @@ static int kfd_ioctl_dbg_unregister(struct file *filep, + if (!dev || !dev->dbgmgr) + return -EINVAL; + +- if (dev->device_info->asic_family == CHIP_CARRIZO) { +- pr_debug("kfd_ioctl_dbg_unregister not supported on CZ\n"); +- return -EINVAL; +- } +- + mutex_lock(kfd_get_dbgmgr_mutex()); + + status = kfd_dbgmgr_unregister(dev->dbgmgr, p); +@@ -661,11 +678,6 @@ static int kfd_ioctl_dbg_address_watch(struct file *filep, + if (!dev) + return -EINVAL; + +- if (dev->device_info->asic_family == CHIP_CARRIZO) { +- pr_debug("kfd_ioctl_dbg_wave_control not supported on CZ\n"); +- return -EINVAL; +- } +- + cmd_from_user = (void __user *) args->content_ptr; + + /* Validate arguments */ +@@ -769,11 +781,6 @@ static int kfd_ioctl_dbg_wave_control(struct file *filep, + if (!dev) + return -EINVAL; + +- if (dev->device_info->asic_family == CHIP_CARRIZO) { +- pr_debug("kfd_ioctl_dbg_wave_control not supported on CZ\n"); +- return -EINVAL; +- } +- + /* input size must match the computed "compact" size */ + if (args->buf_size_in_bytes != computed_buff_size) { + pr_debug("size mismatch, computed : actual %u : %u\n", +@@ -1057,6 +1064,7 @@ static int kfd_ioctl_create_event(struct file *filp, struct kfd_process *p, + } + } + ++ + err = kfd_event_create(filp, p, args->event_type, + args->auto_reset != 0, args->node_id, + &args->event_id, &args->event_trigger_data, +@@ -1259,6 +1267,9 @@ static int kfd_ioctl_alloc_memory_of_gpu(struct file *filep, + long err; + uint64_t offset = args->mmap_offset; + uint32_t flags = args->flags; ++ struct vm_area_struct *vma; ++ uint64_t cpuva = 0; ++ unsigned int mem_type = 0; + + if (args->size == 0) + return -EINVAL; +@@ -1274,7 +1285,29 @@ static int kfd_ioctl_alloc_memory_of_gpu(struct file *filep, + return -EINVAL; + } + +- if (flags & KFD_IOC_ALLOC_MEM_FLAGS_DOORBELL) { ++ if (flags & KFD_IOC_ALLOC_MEM_FLAGS_USERPTR) { ++ /* Check if the userptr corresponds to another (or third-party) ++ * device local memory. If so treat is as a doorbell. User ++ * space will be oblivious of this and will use this doorbell ++ * BO as a regular userptr BO ++ */ ++ vma = find_vma(current->mm, args->mmap_offset); ++ if (vma && (vma->vm_flags & VM_IO)) { ++ unsigned long pfn; ++ ++ follow_pfn(vma, args->mmap_offset, &pfn); ++ flags |= KFD_IOC_ALLOC_MEM_FLAGS_DOORBELL; ++ flags &= ~KFD_IOC_ALLOC_MEM_FLAGS_USERPTR; ++ offset = (pfn << PAGE_SHIFT); ++ } else { ++ if (offset & (PAGE_SIZE - 1)) { ++ pr_debug("Unaligned userptr address:%llx\n", ++ offset); ++ return -EINVAL; ++ } ++ cpuva = offset; ++ } ++ } else if (flags & KFD_IOC_ALLOC_MEM_FLAGS_DOORBELL) { + if (args->size != kfd_doorbell_process_slice(dev)) + return -EINVAL; + offset = kfd_get_process_doorbells(dev, p); +@@ -1290,13 +1323,18 @@ static int kfd_ioctl_alloc_memory_of_gpu(struct file *filep, + + err = amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu( + dev->kgd, args->va_addr, args->size, +- pdd->vm, (struct kgd_mem **) &mem, &offset, ++ pdd->vm, NULL, (struct kgd_mem **) &mem, &offset, + flags); + + if (err) + goto err_unlock; + +- idr_handle = kfd_process_device_create_obj_handle(pdd, mem); ++ mem_type = flags & (KFD_IOC_ALLOC_MEM_FLAGS_VRAM | ++ KFD_IOC_ALLOC_MEM_FLAGS_GTT | ++ KFD_IOC_ALLOC_MEM_FLAGS_USERPTR | ++ KFD_IOC_ALLOC_MEM_FLAGS_DOORBELL); ++ idr_handle = kfd_process_device_create_obj_handle(pdd, mem, ++ args->va_addr, args->size, cpuva, mem_type, NULL); + if (idr_handle < 0) { + err = -EFAULT; + goto err_free; +@@ -1321,7 +1359,7 @@ static int kfd_ioctl_free_memory_of_gpu(struct file *filep, + { + struct kfd_ioctl_free_memory_of_gpu_args *args = data; + struct kfd_process_device *pdd; +- void *mem; ++ struct kfd_bo *buf_obj; + struct kfd_dev *dev; + int ret; + +@@ -1338,15 +1376,15 @@ static int kfd_ioctl_free_memory_of_gpu(struct file *filep, + goto err_unlock; + } + +- mem = kfd_process_device_translate_handle( +- pdd, GET_IDR_HANDLE(args->handle)); +- if (!mem) { ++ buf_obj = kfd_process_device_find_bo(pdd, ++ GET_IDR_HANDLE(args->handle)); ++ if (!buf_obj) { + ret = -EINVAL; + goto err_unlock; + } ++ run_rdma_free_callback(buf_obj); + +- ret = amdgpu_amdkfd_gpuvm_free_memory_of_gpu(dev->kgd, +- (struct kgd_mem *)mem); ++ ret = amdgpu_amdkfd_gpuvm_free_memory_of_gpu(dev->kgd, buf_obj->mem); + + /* If freeing the buffer failed, leave the handle in place for + * clean-up during process tear-down. +@@ -1371,6 +1409,7 @@ static int kfd_ioctl_map_memory_to_gpu(struct file *filep, + int i; + uint32_t *devices_arr = NULL; + ++ trace_kfd_map_memory_to_gpu_start(p); + dev = kfd_device_by_id(GET_GPU_ID(args->handle)); + if (!dev) + return -EINVAL; +@@ -1457,6 +1496,8 @@ static int kfd_ioctl_map_memory_to_gpu(struct file *filep, + + kfree(devices_arr); + ++ trace_kfd_map_memory_to_gpu_end(p, ++ args->n_devices * sizeof(*devices_arr), "Success"); + return err; + + bind_process_to_device_failed: +@@ -1466,6 +1507,8 @@ static int kfd_ioctl_map_memory_to_gpu(struct file *filep, + copy_from_user_failed: + sync_memory_failed: + kfree(devices_arr); ++ trace_kfd_map_memory_to_gpu_end(p, ++ args->n_devices * sizeof(*devices_arr), "Failed"); + + return err; + } +@@ -1616,52 +1659,1102 @@ static int kfd_ioctl_import_dmabuf(struct file *filep, + struct kfd_process *p, void *data) + { + struct kfd_ioctl_import_dmabuf_args *args = data; +- struct kfd_process_device *pdd; +- struct dma_buf *dmabuf; + struct kfd_dev *dev; +- int idr_handle; +- uint64_t size; +- void *mem; + int r; + + dev = kfd_device_by_id(args->gpu_id); + if (!dev) + return -EINVAL; + +- dmabuf = dma_buf_get(args->dmabuf_fd); +- if (IS_ERR(dmabuf)) +- return PTR_ERR(dmabuf); ++ r = kfd_ipc_import_dmabuf(dev, p, args->gpu_id, args->dmabuf_fd, ++ args->va_addr, &args->handle, NULL); ++ if (r) ++ pr_err("Failed to import dmabuf\n"); + +- mutex_lock(&p->mutex); ++ return r; ++} + +- pdd = kfd_bind_process_to_device(dev, p); +- if (IS_ERR(pdd)) { +- r = PTR_ERR(pdd); +- goto err_unlock; +- } ++static int kfd_ioctl_ipc_export_handle(struct file *filep, ++ struct kfd_process *p, ++ void *data) ++{ ++ struct kfd_ioctl_ipc_export_handle_args *args = data; ++ struct kfd_dev *dev; ++ int r; + +- r = amdgpu_amdkfd_gpuvm_import_dmabuf(dev->kgd, dmabuf, +- args->va_addr, pdd->vm, +- (struct kgd_mem **)&mem, &size, +- NULL); ++ dev = kfd_device_by_id(args->gpu_id); ++ if (!dev) ++ return -EINVAL; ++ ++ r = kfd_ipc_export_as_handle(dev, p, args->handle, args->share_handle); + if (r) +- goto err_unlock; ++ pr_err("Failed to export IPC handle\n"); + +- idr_handle = kfd_process_device_create_obj_handle(pdd, mem); +- if (idr_handle < 0) { +- r = -EFAULT; +- goto err_free; ++ return r; ++} ++ ++static int kfd_ioctl_ipc_import_handle(struct file *filep, ++ struct kfd_process *p, ++ void *data) ++{ ++ struct kfd_ioctl_ipc_import_handle_args *args = data; ++ struct kfd_dev *dev = NULL; ++ int r; ++ ++ dev = kfd_device_by_id(args->gpu_id); ++ if (!dev) ++ return -EINVAL; ++ ++ r = kfd_ipc_import_handle(dev, p, args->gpu_id, args->share_handle, ++ args->va_addr, &args->handle, ++ &args->mmap_offset); ++ if (r) ++ pr_err("Failed to import IPC handle\n"); ++ ++ return r; ++} ++ ++/* Maximum number of entries for process pages array which lives on stack */ ++#define MAX_PP_STACK_COUNT 16 ++/* Maximum number of pages kmalloc'd to hold struct page's during copy */ ++#define MAX_KMALLOC_PAGES (PAGE_SIZE * 2) ++#define MAX_PP_KMALLOC_COUNT (MAX_KMALLOC_PAGES/sizeof(struct page *)) ++ ++static void kfd_put_sg_table(struct sg_table *sg) ++{ ++ unsigned int i; ++ struct scatterlist *s; ++ ++ for_each_sg(sg->sgl, s, sg->nents, i) ++ put_page(sg_page(s)); ++} ++ ++ ++/* Create a sg table for the given userptr BO by pinning its system pages ++ * @bo: userptr BO ++ * @offset: Offset into BO ++ * @mm/@task: mm_struct & task_struct of the process that holds the BO ++ * @size: in/out: desired size / actual size which could be smaller ++ * @sg_size: out: Size of sg table. This is ALIGN_UP(@size) ++ * @ret_sg: out sg table ++ */ ++static int kfd_create_sg_table_from_userptr_bo(struct kfd_bo *bo, ++ int64_t offset, int cma_write, ++ struct mm_struct *mm, ++ struct task_struct *task, ++ uint64_t *size, ++ uint64_t *sg_size, ++ struct sg_table **ret_sg) ++{ ++ int ret, locked = 1; ++ struct sg_table *sg = NULL; ++ unsigned int i, offset_in_page, flags = 0; ++ unsigned long nents, n; ++ unsigned long pa = (bo->cpuva + offset) & PAGE_MASK; ++ unsigned int cur_page = 0; ++ struct scatterlist *s; ++ uint64_t sz = *size; ++ struct page **process_pages; ++ ++ *sg_size = 0; ++ sg = kmalloc(sizeof(*sg), GFP_KERNEL); ++ if (!sg) ++ return -ENOMEM; ++ ++ offset_in_page = offset & (PAGE_SIZE - 1); ++ nents = (sz + offset_in_page + PAGE_SIZE - 1) / PAGE_SIZE; ++ ++ ret = sg_alloc_table(sg, nents, GFP_KERNEL); ++ if (unlikely(ret)) { ++ ret = -ENOMEM; ++ goto sg_alloc_fail; ++ } ++ process_pages = kmalloc_array(nents, sizeof(struct pages *), ++ GFP_KERNEL); ++ if (!process_pages) { ++ ret = -ENOMEM; ++ goto page_alloc_fail; ++ } ++ ++ if (cma_write) ++ flags = FOLL_WRITE; ++ locked = 1; ++ down_read(&mm->mmap_sem); ++ n = get_user_pages_remote(task, mm, pa, nents, flags, process_pages, ++ NULL, &locked); ++ if (locked) ++ up_read(&mm->mmap_sem); ++ if (n <= 0) { ++ pr_err("CMA: Invalid virtual address 0x%lx\n", pa); ++ ret = -EFAULT; ++ goto get_user_fail; ++ } ++ if (n != nents) { ++ /* Pages pinned < requested. Set the size accordingly */ ++ *size = (n * PAGE_SIZE) - offset_in_page; ++ pr_debug("Requested %lx but pinned %lx\n", nents, n); ++ } ++ ++ sz = 0; ++ for_each_sg(sg->sgl, s, n, i) { ++ sg_set_page(s, process_pages[cur_page], PAGE_SIZE, ++ offset_in_page); ++ sg_dma_address(s) = page_to_phys(process_pages[cur_page]); ++ offset_in_page = 0; ++ cur_page++; ++ sz += PAGE_SIZE; ++ } ++ *ret_sg = sg; ++ *sg_size = sz; ++ ++ kfree(process_pages); ++ return 0; ++ ++get_user_fail: ++ kfree(process_pages); ++page_alloc_fail: ++ sg_free_table(sg); ++sg_alloc_fail: ++ kfree(sg); ++ return ret; ++} ++ ++static void kfd_free_cma_bos(struct cma_iter *ci) ++{ ++ struct cma_system_bo *cma_bo, *tmp; ++ ++ list_for_each_entry_safe(cma_bo, tmp, &ci->cma_list, list) { ++ struct kfd_dev *dev = cma_bo->dev; ++ ++ /* sg table is deleted by free_memory_of_gpu */ ++ if (cma_bo->sg) ++ kfd_put_sg_table(cma_bo->sg); ++ amdgpu_amdkfd_gpuvm_free_memory_of_gpu(dev->kgd, cma_bo->mem); ++ list_del(&cma_bo->list); ++ kfree(cma_bo); ++ } ++} ++ ++/* 1 second timeout */ ++#define CMA_WAIT_TIMEOUT msecs_to_jiffies(1000) ++ ++static int kfd_cma_fence_wait(struct dma_fence *f) ++{ ++ int ret; ++ ++ ret = dma_fence_wait_timeout(f, false, CMA_WAIT_TIMEOUT); ++ if (likely(ret > 0)) ++ return 0; ++ if (!ret) ++ ret = -ETIME; ++ return ret; ++} ++ ++/* Put previous (old) fence @pf but it waits for @pf to signal if the context ++ * of the current fence @cf is different. ++ */ ++static int kfd_fence_put_wait_if_diff_context(struct dma_fence *cf, ++ struct dma_fence *pf) ++{ ++ int ret = 0; ++ ++ if (pf && cf && cf->context != pf->context) ++ ret = kfd_cma_fence_wait(pf); ++ dma_fence_put(pf); ++ return ret; ++} ++ ++#define MAX_SYSTEM_BO_SIZE (512*PAGE_SIZE) ++ ++/* Create an equivalent system BO for the given @bo. If @bo is a userptr then ++ * create a new system BO by pinning underlying system pages of the given ++ * userptr BO. If @bo is in Local Memory then create an empty system BO and ++ * then copy @bo into this new BO. ++ * @bo: Userptr BO or Local Memory BO ++ * @offset: Offset into bo ++ * @size: in/out: The size of the new BO could be less than requested if all ++ * the pages couldn't be pinned or size > MAX_SYSTEM_BO_SIZE. This would ++ * be reflected in @size ++ * @mm/@task: mm/task to which @bo belongs to ++ * @cma_bo: out: new system BO ++ */ ++static int kfd_create_cma_system_bo(struct kfd_dev *kdev, struct kfd_bo *bo, ++ uint64_t *size, uint64_t offset, ++ int cma_write, struct kfd_process *p, ++ struct mm_struct *mm, ++ struct task_struct *task, ++ struct cma_system_bo **cma_bo) ++{ ++ int ret; ++ struct kfd_process_device *pdd = NULL; ++ struct cma_system_bo *cbo; ++ uint64_t bo_size = 0; ++ struct dma_fence *f; ++ ++ uint32_t flags = ALLOC_MEM_FLAGS_GTT | ALLOC_MEM_FLAGS_WRITABLE | ++ ALLOC_MEM_FLAGS_NO_SUBSTITUTE; ++ ++ *cma_bo = NULL; ++ cbo = kzalloc(sizeof(**cma_bo), GFP_KERNEL); ++ if (!cbo) ++ return -ENOMEM; ++ ++ INIT_LIST_HEAD(&cbo->list); ++ if (bo->mem_type == KFD_IOC_ALLOC_MEM_FLAGS_VRAM) ++ bo_size = min_t(uint64_t, *size, MAX_SYSTEM_BO_SIZE); ++ else if (bo->cpuva) { ++ ret = kfd_create_sg_table_from_userptr_bo(bo, offset, ++ cma_write, mm, task, ++ size, &bo_size, ++ &cbo->sg); ++ if (ret) { ++ pr_err("CMA: BO create with sg failed %d\n", ret); ++ goto sg_fail; ++ } ++ } else { ++ WARN_ON(1); ++ ret = -EINVAL; ++ goto sg_fail; ++ } ++ mutex_lock(&p->mutex); ++ pdd = kfd_get_process_device_data(kdev, p); ++ if (!pdd) { ++ mutex_unlock(&p->mutex); ++ pr_err("Process device data doesn't exist\n"); ++ ret = -EINVAL; ++ goto pdd_fail; + } + ++ ret = amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu(kdev->kgd, 0ULL, bo_size, ++ pdd->vm, cbo->sg, ++ &cbo->mem, NULL, flags); + mutex_unlock(&p->mutex); ++ if (ret) { ++ pr_err("Failed to create shadow system BO %d\n", ret); ++ goto pdd_fail; ++ } ++ ++ if (bo->mem_type == KFD_IOC_ALLOC_MEM_FLAGS_VRAM) { ++ ret = amdgpu_amdkfd_copy_mem_to_mem(kdev->kgd, bo->mem, ++ offset, cbo->mem, 0, ++ bo_size, &f, size); ++ if (ret) { ++ pr_err("CMA: Intermediate copy failed %d\n", ret); ++ goto copy_fail; ++ } + +- args->handle = MAKE_HANDLE(args->gpu_id, idr_handle); ++ /* Wait for the copy to finish as subsequent copy will be done ++ * by different device ++ */ ++ ret = kfd_cma_fence_wait(f); ++ dma_fence_put(f); ++ if (ret) { ++ pr_err("CMA: Intermediate copy timed out %d\n", ret); ++ goto copy_fail; ++ } ++ } + ++ cbo->dev = kdev; ++ *cma_bo = cbo; ++ ++ return ret; ++ ++copy_fail: ++ amdgpu_amdkfd_gpuvm_free_memory_of_gpu(kdev->kgd, bo->mem); ++pdd_fail: ++ if (cbo->sg) { ++ kfd_put_sg_table(cbo->sg); ++ sg_free_table(cbo->sg); ++ kfree(cbo->sg); ++ } ++sg_fail: ++ kfree(cbo); ++ return ret; ++} ++ ++/* Update cma_iter.cur_bo with KFD BO that is assocaited with ++ * cma_iter.array.va_addr ++ */ ++static int kfd_cma_iter_update_bo(struct cma_iter *ci) ++{ ++ struct kfd_memory_range *arr = ci->array; ++ uint64_t va_end = arr->va_addr + arr->size - 1; ++ ++ mutex_lock(&ci->p->mutex); ++ ci->cur_bo = kfd_process_find_bo_from_interval(ci->p, arr->va_addr, ++ va_end); ++ mutex_unlock(&ci->p->mutex); ++ ++ if (!ci->cur_bo || va_end > ci->cur_bo->it.last) { ++ pr_err("CMA failed. Range out of bounds\n"); ++ return -EFAULT; ++ } + return 0; ++} + +-err_free: +- amdgpu_amdkfd_gpuvm_free_memory_of_gpu(dev->kgd, (struct kgd_mem *)mem); +-err_unlock: ++/* Advance iter by @size bytes. */ ++static int kfd_cma_iter_advance(struct cma_iter *ci, unsigned long size) ++{ ++ int ret = 0; ++ ++ ci->offset += size; ++ if (WARN_ON(size > ci->total || ci->offset > ci->array->size)) ++ return -EFAULT; ++ ci->total -= size; ++ /* If current range is copied, move to next range if available. */ ++ if (ci->offset == ci->array->size) { ++ ++ /* End of all ranges */ ++ if (!(--ci->nr_segs)) ++ return 0; ++ ++ ci->array++; ++ ci->offset = 0; ++ ret = kfd_cma_iter_update_bo(ci); ++ if (ret) ++ return ret; ++ } ++ ci->bo_offset = (ci->array->va_addr + ci->offset) - ++ ci->cur_bo->it.start; ++ return ret; ++} ++ ++static int kfd_cma_iter_init(struct kfd_memory_range *arr, unsigned long segs, ++ struct kfd_process *p, struct mm_struct *mm, ++ struct task_struct *task, struct cma_iter *ci) ++{ ++ int ret; ++ int nr; ++ ++ if (!arr || !segs) ++ return -EINVAL; ++ ++ memset(ci, 0, sizeof(*ci)); ++ INIT_LIST_HEAD(&ci->cma_list); ++ ci->array = arr; ++ ci->nr_segs = segs; ++ ci->p = p; ++ ci->offset = 0; ++ ci->mm = mm; ++ ci->task = task; ++ for (nr = 0; nr < segs; nr++) ++ ci->total += arr[nr].size; ++ ++ /* Valid but size is 0. So copied will also be 0 */ ++ if (!ci->total) ++ return 0; ++ ++ ret = kfd_cma_iter_update_bo(ci); ++ if (!ret) ++ ci->bo_offset = arr->va_addr - ci->cur_bo->it.start; ++ return ret; ++} ++ ++static bool kfd_cma_iter_end(struct cma_iter *ci) ++{ ++ if (!(ci->nr_segs) || !(ci->total)) ++ return true; ++ return false; ++} ++ ++/* Copies @size bytes from si->cur_bo to di->cur_bo BO. The function assumes ++ * both source and dest. BOs are userptr BOs. Both BOs can either belong to ++ * current process or one of the BOs can belong to a differnt ++ * process. @Returns 0 on success, -ve on failure ++ * ++ * @si: Source iter ++ * @di: Dest. iter ++ * @cma_write: Indicates if it is write to remote or read from remote ++ * @size: amount of bytes to be copied ++ * @copied: Return number of bytes actually copied. ++ */ ++static int kfd_copy_userptr_bos(struct cma_iter *si, struct cma_iter *di, ++ bool cma_write, uint64_t size, ++ uint64_t *copied) ++{ ++ int i, ret = 0, locked; ++ unsigned int nents, nl; ++ unsigned int offset_in_page; ++ struct page *pp_stack[MAX_PP_STACK_COUNT]; ++ struct page **process_pages = pp_stack; ++ unsigned long rva, lva = 0, flags = 0; ++ uint64_t copy_size, to_copy = size; ++ struct cma_iter *li, *ri; ++ ++ if (cma_write) { ++ ri = di; ++ li = si; ++ flags |= FOLL_WRITE; ++ } else { ++ li = di; ++ ri = si; ++ } ++ /* rva: remote virtual address. Page aligned to start page. ++ * rva + offset_in_page: Points to remote start address ++ * lva: local virtual address. Points to the start address. ++ * nents: computes number of remote pages to request ++ */ ++ offset_in_page = ri->bo_offset & (PAGE_SIZE - 1); ++ rva = (ri->cur_bo->cpuva + ri->bo_offset) & PAGE_MASK; ++ lva = li->cur_bo->cpuva + li->bo_offset; ++ ++ nents = (size + offset_in_page + PAGE_SIZE - 1) / PAGE_SIZE; ++ ++ copy_size = min_t(uint64_t, size, PAGE_SIZE - offset_in_page); ++ *copied = 0; ++ ++ if (nents > MAX_PP_STACK_COUNT) { ++ /* For reliability kmalloc only 2 pages worth */ ++ process_pages = kmalloc(min_t(size_t, MAX_KMALLOC_PAGES, ++ sizeof(struct pages *)*nents), ++ GFP_KERNEL); ++ ++ if (!process_pages) ++ return -ENOMEM; ++ } ++ ++ while (nents && to_copy) { ++ nl = min_t(unsigned int, MAX_PP_KMALLOC_COUNT, nents); ++ locked = 1; ++ down_read(&ri->mm->mmap_sem); ++ nl = get_user_pages_remote(ri->task, ri->mm, rva, nl, ++ flags, process_pages, NULL, ++ &locked); ++ if (locked) ++ up_read(&ri->mm->mmap_sem); ++ if (nl <= 0) { ++ pr_err("CMA: Invalid virtual address 0x%lx\n", rva); ++ ret = -EFAULT; ++ break; ++ } ++ ++ for (i = 0; i < nl; i++) { ++ unsigned int n; ++ void *kaddr = kmap(process_pages[i]); ++ ++ if (cma_write) { ++ n = copy_from_user(kaddr+offset_in_page, ++ (void *)lva, copy_size); ++ set_page_dirty(process_pages[i]); ++ } else { ++ n = copy_to_user((void *)lva, ++ kaddr+offset_in_page, ++ copy_size); ++ } ++ kunmap(kaddr); ++ if (n) { ++ ret = -EFAULT; ++ break; ++ } ++ to_copy -= copy_size; ++ if (!to_copy) ++ break; ++ lva += copy_size; ++ rva += (copy_size + offset_in_page); ++ WARN_ONCE(rva & (PAGE_SIZE - 1), ++ "CMA: Error in remote VA computation"); ++ offset_in_page = 0; ++ copy_size = min_t(uint64_t, to_copy, PAGE_SIZE); ++ } ++ ++ for (i = 0; i < nl; i++) ++ put_page(process_pages[i]); ++ ++ if (ret) ++ break; ++ nents -= nl; ++ } ++ ++ if (process_pages != pp_stack) ++ kfree(process_pages); ++ ++ *copied = (size - to_copy); ++ return ret; ++ ++} ++ ++static int kfd_create_kgd_mem(struct kfd_dev *kdev, uint64_t size, ++ struct kfd_process *p, struct kgd_mem **mem) ++{ ++ int ret; ++ struct kfd_process_device *pdd = NULL; ++ uint32_t flags = ALLOC_MEM_FLAGS_GTT | ALLOC_MEM_FLAGS_WRITABLE | ++ ALLOC_MEM_FLAGS_NO_SUBSTITUTE; ++ ++ if (!mem || !size || !p || !kdev) ++ return -EINVAL; ++ ++ *mem = NULL; ++ ++ mutex_lock(&p->mutex); ++ pdd = kfd_get_process_device_data(kdev, p); ++ if (!pdd) { ++ mutex_unlock(&p->mutex); ++ pr_err("Process device data doesn't exist\n"); ++ return -EINVAL; ++ } ++ ++ ret = amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu(kdev->kgd, 0ULL, size, ++ pdd->vm, NULL, ++ mem, NULL, flags); ++ mutex_unlock(&p->mutex); ++ if (ret) { ++ pr_err("Failed to create shadow system BO %d\n", ret); ++ return -EINVAL; ++ } ++ ++ return 0; ++} ++ ++static int kfd_destroy_kgd_mem(struct kgd_mem *mem) ++{ ++ if (!mem) ++ return -EINVAL; ++ ++ /* param adev is not used*/ ++ return amdgpu_amdkfd_gpuvm_free_memory_of_gpu(NULL, mem); ++} ++ ++/* Copies @size bytes from si->cur_bo to di->cur_bo starting at their ++ * respective offset. ++ * @si: Source iter ++ * @di: Dest. iter ++ * @cma_write: Indicates if it is write to remote or read from remote ++ * @size: amount of bytes to be copied ++ * @f: Return the last fence if any ++ * @copied: Return number of bytes actually copied. ++ */ ++static int kfd_copy_bos(struct cma_iter *si, struct cma_iter *di, ++ int cma_write, uint64_t size, ++ struct dma_fence **f, uint64_t *copied, ++ struct kgd_mem **tmp_mem) ++{ ++ int err = 0; ++ struct kfd_bo *dst_bo = di->cur_bo, *src_bo = si->cur_bo; ++ uint64_t src_offset = si->bo_offset, dst_offset = di->bo_offset; ++ struct kgd_mem *src_mem = src_bo->mem, *dst_mem = dst_bo->mem; ++ struct kfd_dev *dev = dst_bo->dev; ++ int d2d = 0; ++ ++ *copied = 0; ++ if (f) ++ *f = NULL; ++ if (src_bo->cpuva && dst_bo->cpuva) ++ return kfd_copy_userptr_bos(si, di, cma_write, size, copied); ++ ++ /* If either source or dest. is userptr, create a shadow system BO ++ * by using the underlying userptr BO pages. Then use this shadow ++ * BO for copy. src_offset & dst_offset are adjusted because the new BO ++ * is only created for the window (offset, size) requested. ++ * The shadow BO is created on the other device. This means if the ++ * other BO is a device memory, the copy will be using that device. ++ * The BOs are stored in cma_list for deferred cleanup. This minimizes ++ * fence waiting just to the last fence. ++ */ ++ if (src_bo->cpuva) { ++ dev = dst_bo->dev; ++ err = kfd_create_cma_system_bo(dev, src_bo, &size, ++ si->bo_offset, cma_write, ++ si->p, si->mm, si->task, ++ &si->cma_bo); ++ src_mem = si->cma_bo->mem; ++ src_offset = si->bo_offset & (PAGE_SIZE - 1); ++ list_add_tail(&si->cma_bo->list, &si->cma_list); ++ } else if (dst_bo->cpuva) { ++ dev = src_bo->dev; ++ err = kfd_create_cma_system_bo(dev, dst_bo, &size, ++ di->bo_offset, cma_write, ++ di->p, di->mm, di->task, ++ &di->cma_bo); ++ dst_mem = di->cma_bo->mem; ++ dst_offset = di->bo_offset & (PAGE_SIZE - 1); ++ list_add_tail(&di->cma_bo->list, &di->cma_list); ++ } else if (src_bo->dev->kgd != dst_bo->dev->kgd) { ++ /* This indicates that atleast on of the BO is in local mem. ++ * If both are in local mem of different devices then create an ++ * intermediate System BO and do a double copy ++ * [VRAM]--gpu1-->[System BO]--gpu2-->[VRAM]. ++ * If only one BO is in VRAM then use that GPU to do the copy ++ */ ++ if (src_bo->mem_type == KFD_IOC_ALLOC_MEM_FLAGS_VRAM && ++ dst_bo->mem_type == KFD_IOC_ALLOC_MEM_FLAGS_VRAM) { ++ dev = dst_bo->dev; ++ size = min_t(uint64_t, size, MAX_SYSTEM_BO_SIZE); ++ d2d = 1; ++ ++ if (*tmp_mem == NULL) { ++ if (kfd_create_kgd_mem(src_bo->dev, ++ MAX_SYSTEM_BO_SIZE, ++ si->p, ++ tmp_mem)) ++ return -EINVAL; ++ } ++ ++ if (amdgpu_amdkfd_copy_mem_to_mem(src_bo->dev->kgd, ++ src_bo->mem, si->bo_offset, ++ *tmp_mem, 0, ++ size, f, &size)) ++ /* tmp_mem will be freed in caller.*/ ++ return -EINVAL; ++ ++ kfd_cma_fence_wait(*f); ++ dma_fence_put(*f); ++ ++ src_mem = *tmp_mem; ++ src_offset = 0; ++ } else if (src_bo->mem_type == KFD_IOC_ALLOC_MEM_FLAGS_VRAM) ++ dev = src_bo->dev; ++ /* else already set to dst_bo->dev */ ++ } ++ ++ if (err) { ++ pr_err("Failed to create system BO %d", err); ++ return -EINVAL; ++ } ++ ++ err = amdgpu_amdkfd_copy_mem_to_mem(dev->kgd, src_mem, src_offset, ++ dst_mem, dst_offset, size, f, ++ copied); ++ /* The tmp_bo allocates additional memory. So it is better to wait and ++ * delete. Also since multiple GPUs are involved the copies are ++ * currently not pipelined. ++ */ ++ if (*tmp_mem && d2d) { ++ if (!err) { ++ kfd_cma_fence_wait(*f); ++ dma_fence_put(*f); ++ *f = NULL; ++ } ++ } ++ return err; ++} ++ ++/* Copy single range from source iterator @si to destination iterator @di. ++ * @si will move to next range and @di will move by bytes copied. ++ * @return : 0 for success or -ve for failure ++ * @f: The last fence if any ++ * @copied: out: number of bytes copied ++ */ ++static int kfd_copy_single_range(struct cma_iter *si, struct cma_iter *di, ++ bool cma_write, struct dma_fence **f, ++ uint64_t *copied, struct kgd_mem **tmp_mem) ++{ ++ int err = 0; ++ uint64_t copy_size, n; ++ uint64_t size = si->array->size; ++ struct kfd_bo *src_bo = si->cur_bo; ++ struct dma_fence *lfence = NULL; ++ ++ if (!src_bo || !di || !copied) ++ return -EINVAL; ++ *copied = 0; ++ if (f) ++ *f = NULL; ++ ++ while (size && !kfd_cma_iter_end(di)) { ++ struct dma_fence *fence = NULL; ++ ++ copy_size = min(size, (di->array->size - di->offset)); ++ ++ err = kfd_copy_bos(si, di, cma_write, copy_size, ++ &fence, &n, tmp_mem); ++ if (err) { ++ pr_err("CMA %d failed\n", err); ++ break; ++ } ++ ++ if (fence) { ++ err = kfd_fence_put_wait_if_diff_context(fence, ++ lfence); ++ lfence = fence; ++ if (err) ++ break; ++ } ++ ++ size -= n; ++ *copied += n; ++ err = kfd_cma_iter_advance(si, n); ++ if (err) ++ break; ++ err = kfd_cma_iter_advance(di, n); ++ if (err) ++ break; ++ } ++ ++ if (f) ++ *f = dma_fence_get(lfence); ++ dma_fence_put(lfence); ++ ++ return err; ++} ++ ++static int kfd_ioctl_cross_memory_copy(struct file *filep, ++ struct kfd_process *local_p, void *data) ++{ ++ struct kfd_ioctl_cross_memory_copy_args *args = data; ++ struct kfd_memory_range *src_array, *dst_array; ++ struct kfd_process *remote_p; ++ struct task_struct *remote_task; ++ struct mm_struct *remote_mm; ++ struct pid *remote_pid; ++ struct dma_fence *lfence = NULL; ++ uint64_t copied = 0, total_copied = 0; ++ struct cma_iter di, si; ++ const char *cma_op; ++ int err = 0; ++ struct kgd_mem *tmp_mem = NULL; ++ ++ /* Check parameters */ ++ if (args->src_mem_range_array == 0 || args->dst_mem_range_array == 0 || ++ args->src_mem_array_size == 0 || args->dst_mem_array_size == 0) ++ return -EINVAL; ++ args->bytes_copied = 0; ++ ++ /* Allocate space for source and destination arrays */ ++ src_array = kmalloc_array((args->src_mem_array_size + ++ args->dst_mem_array_size), ++ sizeof(struct kfd_memory_range), ++ GFP_KERNEL); ++ if (!src_array) ++ return -ENOMEM; ++ dst_array = &src_array[args->src_mem_array_size]; ++ ++ if (copy_from_user(src_array, (void __user *)args->src_mem_range_array, ++ args->src_mem_array_size * ++ sizeof(struct kfd_memory_range))) { ++ err = -EFAULT; ++ goto copy_from_user_fail; ++ } ++ if (copy_from_user(dst_array, (void __user *)args->dst_mem_range_array, ++ args->dst_mem_array_size * ++ sizeof(struct kfd_memory_range))) { ++ err = -EFAULT; ++ goto copy_from_user_fail; ++ } ++ ++ /* Get remote process */ ++ remote_pid = find_get_pid(args->pid); ++ if (!remote_pid) { ++ pr_err("Cross mem copy failed. Invalid PID %d\n", args->pid); ++ err = -ESRCH; ++ goto copy_from_user_fail; ++ } ++ ++ remote_task = get_pid_task(remote_pid, PIDTYPE_PID); ++ if (!remote_pid) { ++ pr_err("Cross mem copy failed. Invalid PID or task died %d\n", ++ args->pid); ++ err = -ESRCH; ++ goto get_pid_task_fail; ++ } ++ ++ /* Check access permission */ ++ remote_mm = mm_access(remote_task, PTRACE_MODE_ATTACH_REALCREDS); ++ if (!remote_mm || IS_ERR(remote_mm)) { ++ err = IS_ERR(remote_mm) ? PTR_ERR(remote_mm) : -ESRCH; ++ if (err == -EACCES) { ++ pr_err("Cross mem copy failed. Permission error\n"); ++ err = -EPERM; ++ } else ++ pr_err("Cross mem copy failed. Invalid task %d\n", ++ err); ++ goto mm_access_fail; ++ } ++ ++ remote_p = kfd_get_process(remote_task); ++ if (IS_ERR(remote_p)) { ++ pr_err("Cross mem copy failed. Invalid kfd process %d\n", ++ args->pid); ++ err = -EINVAL; ++ goto kfd_process_fail; ++ } ++ /* Initialise cma_iter si & @di with source & destination range. */ ++ if (KFD_IS_CROSS_MEMORY_WRITE(args->flags)) { ++ cma_op = "WRITE"; ++ pr_debug("CMA WRITE: local -> remote\n"); ++ err = kfd_cma_iter_init(dst_array, args->dst_mem_array_size, ++ remote_p, remote_mm, remote_task, &di); ++ if (err) ++ goto kfd_process_fail; ++ err = kfd_cma_iter_init(src_array, args->src_mem_array_size, ++ local_p, current->mm, current, &si); ++ if (err) ++ goto kfd_process_fail; ++ } else { ++ cma_op = "READ"; ++ pr_debug("CMA READ: remote -> local\n"); ++ ++ err = kfd_cma_iter_init(dst_array, args->dst_mem_array_size, ++ local_p, current->mm, current, &di); ++ if (err) ++ goto kfd_process_fail; ++ err = kfd_cma_iter_init(src_array, args->src_mem_array_size, ++ remote_p, remote_mm, remote_task, &si); ++ if (err) ++ goto kfd_process_fail; ++ } ++ ++ /* Copy one si range at a time into di. After each call to ++ * kfd_copy_single_range() si will move to next range. di will be ++ * incremented by bytes copied ++ */ ++ while (!kfd_cma_iter_end(&si) && !kfd_cma_iter_end(&di)) { ++ struct dma_fence *fence = NULL; ++ ++ err = kfd_copy_single_range(&si, &di, ++ KFD_IS_CROSS_MEMORY_WRITE(args->flags), ++ &fence, &copied, &tmp_mem); ++ total_copied += copied; ++ ++ if (err) ++ break; ++ ++ /* Release old fence if a later fence is created. If no ++ * new fence is created, then keep the preivous fence ++ */ ++ if (fence) { ++ err = kfd_fence_put_wait_if_diff_context(fence, ++ lfence); ++ lfence = fence; ++ if (err) ++ break; ++ } ++ } ++ ++ /* Wait for the last fence irrespective of error condition */ ++ if (lfence) { ++ err = kfd_cma_fence_wait(lfence); ++ dma_fence_put(lfence); ++ if (err) ++ pr_err("CMA %s failed. BO timed out\n", cma_op); ++ } ++ ++ if (tmp_mem) ++ kfd_destroy_kgd_mem(tmp_mem); ++ ++ kfd_free_cma_bos(&si); ++ kfd_free_cma_bos(&di); ++ ++kfd_process_fail: ++ mmput(remote_mm); ++mm_access_fail: ++ put_task_struct(remote_task); ++get_pid_task_fail: ++ put_pid(remote_pid); ++copy_from_user_fail: ++ kfree(src_array); ++ ++ /* An error could happen after partial copy. In that case this will ++ * reflect partial amount of bytes copied ++ */ ++ args->bytes_copied = total_copied; ++ return err; ++} ++ ++static int kfd_ioctl_dbg_set_debug_trap(struct file *filep, ++ struct kfd_process *p, void *data) ++{ ++ struct kfd_ioctl_dbg_trap_args *args = data; ++ struct kfd_process_device *pdd; ++ int r = 0; ++ struct kfd_dev *dev; ++ struct kfd_process *process; ++ uint32_t gpu_id; ++ uint32_t debug_trap_action; ++ uint32_t data1; ++ uint32_t data2; ++ uint32_t data3; ++ struct pid *pid; ++ ++ debug_trap_action = args->op; ++ gpu_id = args->gpu_id; ++ data1 = args->data1; ++ data2 = args->data2; ++ data3 = args->data3; ++ ++ dev = kfd_device_by_id(args->gpu_id); ++ if (!dev) ++ return -EINVAL; ++ ++ if (dev->device_info->asic_family < CHIP_VEGA10) ++ return -EINVAL; ++ ++ if (dev->mec_fw_version < 406) { ++ pr_err("Unsupported firmware version [%i]\n", ++ dev->mec_fw_version); ++ return -EINVAL; ++ } ++ ++ if (dev->dqm->sched_policy == KFD_SCHED_POLICY_NO_HWS) { ++ pr_err("Unsupported sched_policy: %i", dev->dqm->sched_policy); ++ return -EINVAL; ++ } ++ ++ mutex_lock(&p->mutex); ++ pdd = kfd_get_process_device_data(dev, p); ++ if (!pdd) { ++ r = -EINVAL; ++ goto unlock_out; ++ } ++ ++ if ((pdd->is_debugging_enabled == false) && ++ ((debug_trap_action == KFD_IOC_DBG_TRAP_ENABLE && ++ data1 == 1) || ++ (debug_trap_action == ++ KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_MODE && ++ data1 != 0))) { ++ ++ /* We need to reserve the debug trap vmid if we haven't yet, and ++ * are enabling trap debugging, or we are setting the wave ++ * launch mode to something other than normal==0. ++ */ ++ r = reserve_debug_trap_vmid(dev->dqm); ++ if (r) ++ goto unlock_out; ++ ++ pdd->is_debugging_enabled = true; ++ } ++ ++ if (!pdd->is_debugging_enabled) { ++ pr_err("Debugging is not enabled for this device\n"); ++ r = -EINVAL; ++ goto unlock_out; ++ } ++ ++ switch (debug_trap_action) { ++ case KFD_IOC_DBG_TRAP_ENABLE: ++ switch (data1) { ++ case 0: ++ pdd->debug_trap_enabled = false; ++ r = dev->kfd2kgd->disable_debug_trap(dev->kgd); ++ break; ++ case 1: ++ pdd->debug_trap_enabled = true; ++ r = dev->kfd2kgd->enable_debug_trap(dev->kgd, ++ pdd->trap_debug_wave_launch_mode, ++ dev->vm_info.last_vmid_kfd); ++ break; ++ default: ++ pr_err("Invalid trap enable option: %i\n", ++ data1); ++ r = -EINVAL; ++ } ++ break; ++ ++ case KFD_IOC_DBG_TRAP_SET_TRAP_DATA: ++ r = dev->kfd2kgd->set_debug_trap_data(dev->kgd, ++ data1, ++ data2); ++ break; ++ ++ case KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_OVERRIDE: ++ r = dev->kfd2kgd->set_wave_launch_trap_override( ++ dev->kgd, ++ data1, ++ data2); ++ break; ++ ++ case KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_MODE: ++ pdd->trap_debug_wave_launch_mode = data1; ++ r = dev->kfd2kgd->set_wave_launch_mode( ++ dev->kgd, ++ data1, ++ dev->vm_info.last_vmid_kfd); ++ break; ++ case KFD_IOC_DBG_TRAP_NODE_SUSPEND: ++ pid = find_get_pid(data1); ++ if (!pid) { ++ pr_err("Cannot find pid info for %i\n", data1); ++ r = -ESRCH; ++ goto unlock_out; ++ } ++ ++ process = kfd_lookup_process_by_pid(pid); ++ if (!process) { ++ pr_err("Cannot find process info info for %i\n", data1); ++ r = -ESRCH; ++ put_pid(pid); ++ goto unlock_out; ++ } ++ ++ /* ++ * To suspend/resume queues, we need: ++ * ptrace to be enabled, ++ * process->lead_thread->ptrace == true ++ * and we need either: ++ * i) be allowed to trace the process ++ * process->lead_thread->parent == current ++ * ii) or to be ptrace'ing ourself ++ * process->lead_thread == current ++ */ ++ if (process->lead_thread->ptrace && ++ (process->lead_thread->parent == current || ++ process->lead_thread == current)) { ++ r = suspend_queues(dev->dqm, process, data3); ++ } else { ++ pr_err("Cannot debug process to suspend queues\n"); ++ r = -ESRCH; ++ } ++ kfd_unref_process(process); ++ put_pid(pid); ++ break; ++ case KFD_IOC_DBG_TRAP_NODE_RESUME: ++ pid = find_get_pid(data1); ++ if (!pid) { ++ pr_err("Cannot find pid info for %i\n", data1); ++ r = -ESRCH; ++ goto unlock_out; ++ } ++ ++ process = kfd_lookup_process_by_pid(pid); ++ if (!process) { ++ pr_err("Cannot find process info info for %i\n", data1); ++ r = -ESRCH; ++ put_pid(pid); ++ goto unlock_out; ++ } ++ ++ /* ++ * To suspend/resume queues, we need: ++ * ptrace to be enabled, ++ * process->lead_thread->ptrace == true ++ * and we need either: ++ * i) be allowed to trace the process ++ * process->lead_thread->parent == current ++ * ii) or to be ptrace'ing ourself ++ * process->lead_thread == current ++ */ ++ if (process->lead_thread->ptrace && ++ (process->lead_thread->parent == current || ++ process->lead_thread == current)) { ++ r = resume_queues(dev->dqm, process); ++ } else { ++ pr_err("Cannot debug process to resume queues\n"); ++ r = -ESRCH; ++ } ++ kfd_unref_process(process); ++ put_pid(pid); ++ break; ++ default: ++ pr_err("Invalid option: %i\n", debug_trap_action); ++ r = -EINVAL; ++ } ++ ++ if (pdd->trap_debug_wave_launch_mode == 0 && ++ !pdd->debug_trap_enabled) { ++ int result; ++ ++ result = release_debug_trap_vmid(dev->dqm); ++ if (result) { ++ pr_err("Failed to release debug VMID\n"); ++ r = result; ++ goto unlock_out; ++ } ++ ++ pdd->is_debugging_enabled = false; ++ } ++ ++unlock_out: + mutex_unlock(&p->mutex); + return r; + } +@@ -1759,6 +2852,18 @@ static const struct amdkfd_ioctl_desc amdkfd_ioctls[] = { + AMDKFD_IOCTL_DEF(AMDKFD_IOC_IMPORT_DMABUF, + kfd_ioctl_import_dmabuf, 0), + ++ AMDKFD_IOCTL_DEF(AMDKFD_IOC_IPC_IMPORT_HANDLE, ++ kfd_ioctl_ipc_import_handle, 0), ++ ++ AMDKFD_IOCTL_DEF(AMDKFD_IOC_IPC_EXPORT_HANDLE, ++ kfd_ioctl_ipc_export_handle, 0), ++ ++ AMDKFD_IOCTL_DEF(AMDKFD_IOC_CROSS_MEMORY_COPY, ++ kfd_ioctl_cross_memory_copy, 0), ++ ++ AMDKFD_IOCTL_DEF(AMDKFD_IOC_DBG_TRAP, ++ kfd_ioctl_dbg_set_debug_trap, 0), ++ + }; + + #define AMDKFD_CORE_IOCTL_COUNT ARRAY_SIZE(amdkfd_ioctls) +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_crat.c b/drivers/gpu/drm/amd/amdkfd/kfd_crat.c +index e448a2d759e9..57e32c69c805 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_crat.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_crat.c +@@ -732,6 +732,7 @@ static int kfd_fill_gpu_cache_info(struct kfd_dev *kdev, + * + * Return 0 if successful else return error code + */ ++#ifdef CONFIG_ACPI + int kfd_create_crat_image_acpi(void **crat_image, size_t *size) + { + struct acpi_table_header *crat_table; +@@ -769,6 +770,7 @@ int kfd_create_crat_image_acpi(void **crat_image, size_t *size) + + return 0; + } ++#endif + + /* Memory required to create Virtual CRAT. + * Since there is no easy way to predict the amount of memory required, the +@@ -917,8 +919,6 @@ static int kfd_fill_iolink_info_for_cpu(int numa_node_id, int *avail_size, + static int kfd_create_vcrat_image_cpu(void *pcrat_image, size_t *size) + { + struct crat_header *crat_table = (struct crat_header *)pcrat_image; +- struct acpi_table_header *acpi_table; +- acpi_status status; + struct crat_subtype_generic *sub_type_hdr; + int avail_size = *size; + int numa_node_id; +@@ -926,6 +926,10 @@ static int kfd_create_vcrat_image_cpu(void *pcrat_image, size_t *size) + uint32_t entries = 0; + #endif + int ret = 0; ++#ifdef CONFIG_ACPI ++ struct acpi_table_header *acpi_table; ++ acpi_status status; ++#endif + + if (!pcrat_image || avail_size < VCRAT_SIZE_FOR_CPU) + return -EINVAL; +@@ -942,6 +946,7 @@ static int kfd_create_vcrat_image_cpu(void *pcrat_image, size_t *size) + sizeof(crat_table->signature)); + crat_table->length = sizeof(struct crat_header); + ++#ifdef CONFIG_ACPI + status = acpi_get_table("DSDT", 0, &acpi_table); + if (status != AE_OK) + pr_warn("DSDT table not found for OEM information\n"); +@@ -952,6 +957,11 @@ static int kfd_create_vcrat_image_cpu(void *pcrat_image, size_t *size) + memcpy(crat_table->oem_table_id, acpi_table->oem_table_id, + CRAT_OEMTABLEID_LENGTH); + } ++#else ++ crat_table->oem_revision = 0; ++ memcpy(crat_table->oem_id, "INV", CRAT_OEMID_LENGTH); ++ memcpy(crat_table->oem_table_id, "UNAVAIL", CRAT_OEMTABLEID_LENGTH); ++#endif + crat_table->total_entries = 0; + crat_table->num_domains = 0; + +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_crat.h b/drivers/gpu/drm/amd/amdkfd/kfd_crat.h +index 7c3f192fe25f..cfdd02fd4b17 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_crat.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_crat.h +@@ -315,7 +315,9 @@ struct cdit_header { + + struct kfd_dev; + ++#ifdef CONFIG_ACPI + int kfd_create_crat_image_acpi(void **crat_image, size_t *size); ++#endif + void kfd_destroy_crat_image(void *crat_image); + int kfd_parse_crat_table(void *crat_image, struct list_head *device_list, + uint32_t proximity_domain); +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c b/drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c +index a3441b0e385b..c41109068ec4 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c +@@ -29,7 +29,7 @@ + #include <linux/mutex.h> + #include <linux/device.h> + +-#include "kfd_pm4_headers.h" ++#include "kfd_pm4_headers_vi.h" + #include "kfd_pm4_headers_diq.h" + #include "kfd_kernel_queue.h" + #include "kfd_priv.h" +@@ -46,9 +46,10 @@ static void dbgdev_address_watch_disable_nodiq(struct kfd_dev *dev) + + static int dbgdev_diq_submit_ib(struct kfd_dbgdev *dbgdev, + unsigned int pasid, uint64_t vmid0_address, +- uint32_t *packet_buff, size_t size_in_bytes) ++ uint32_t *packet_buff, size_t size_in_bytes, ++ bool sync) + { +- struct pm4__release_mem *rm_packet; ++ struct pm4_mec_release_mem *rm_packet; + struct pm4__indirect_buffer_pasid *ib_packet; + struct kfd_mem_obj *mem_obj; + size_t pq_packets_size_in_bytes; +@@ -64,8 +65,9 @@ static int dbgdev_diq_submit_ib(struct kfd_dbgdev *dbgdev, + + kq = dbgdev->kq; + +- pq_packets_size_in_bytes = sizeof(struct pm4__release_mem) + +- sizeof(struct pm4__indirect_buffer_pasid); ++ pq_packets_size_in_bytes = sizeof(struct pm4__indirect_buffer_pasid); ++ if (sync) ++ pq_packets_size_in_bytes += sizeof(struct pm4_mec_release_mem); + + /* + * We acquire a buffer from DIQ +@@ -98,6 +100,11 @@ static int dbgdev_diq_submit_ib(struct kfd_dbgdev *dbgdev, + + ib_packet->bitfields5.pasid = pasid; + ++ if (!sync) { ++ kq->ops.submit_packet(kq); ++ return status; ++ } ++ + /* + * for now we use release mem for GPU-CPU synchronization + * Consider WaitRegMem + WriteData as a better alternative +@@ -106,7 +113,7 @@ static int dbgdev_diq_submit_ib(struct kfd_dbgdev *dbgdev, + * (a) Sync with HW + * (b) Sync var is written by CP to mem. + */ +- rm_packet = (struct pm4__release_mem *) (ib_packet_buff + ++ rm_packet = (struct pm4_mec_release_mem *) (ib_packet_buff + + (sizeof(struct pm4__indirect_buffer_pasid) / + sizeof(unsigned int))); + +@@ -125,7 +132,7 @@ static int dbgdev_diq_submit_ib(struct kfd_dbgdev *dbgdev, + + rm_packet->header.opcode = IT_RELEASE_MEM; + rm_packet->header.type = PM4_TYPE_3; +- rm_packet->header.count = sizeof(struct pm4__release_mem) / 4 - 2; ++ rm_packet->header.count = sizeof(struct pm4_mec_release_mem) / 4 - 2; + + rm_packet->bitfields2.event_type = CACHE_FLUSH_AND_INV_TS_EVENT; + rm_packet->bitfields2.event_index = +@@ -183,7 +190,6 @@ static int dbgdev_register_diq(struct kfd_dbgdev *dbgdev) + int status; + + properties.type = KFD_QUEUE_TYPE_DIQ; +- + status = pqm_create_queue(dbgdev->pqm, dbgdev->dev, NULL, + &properties, &qid); + +@@ -231,7 +237,8 @@ static void dbgdev_address_watch_set_registers( + union TCP_WATCH_ADDR_H_BITS *addrHi, + union TCP_WATCH_ADDR_L_BITS *addrLo, + union TCP_WATCH_CNTL_BITS *cntl, +- unsigned int index, unsigned int vmid) ++ unsigned int index, unsigned int vmid, ++ bool is_apu) + { + union ULARGE_INTEGER addr; + +@@ -256,9 +263,9 @@ static void dbgdev_address_watch_set_registers( + + cntl->bitfields.mode = adw_info->watch_mode[index]; + cntl->bitfields.vmid = (uint32_t) vmid; +- /* for now assume it is an ATC address */ +- cntl->u32All |= ADDRESS_WATCH_REG_CNTL_ATC_BIT; +- ++ /* for APU assume it is an ATC address */ ++ if (is_apu) ++ cntl->u32All |= ADDRESS_WATCH_REG_CNTL_ATC_BIT; + pr_debug("\t\t%20s %08x\n", "set reg mask :", cntl->bitfields.mask); + pr_debug("\t\t%20s %08x\n", "set reg add high :", + addrHi->bitfields.addr); +@@ -300,7 +307,8 @@ static int dbgdev_address_watch_nodiq(struct kfd_dbgdev *dbgdev, + + for (i = 0; i < adw_info->num_watch_points; i++) { + dbgdev_address_watch_set_registers(adw_info, &addrHi, &addrLo, +- &cntl, i, pdd->qpd.vmid); ++ &cntl, i, pdd->qpd.vmid, ++ dbgdev->dev->device_info->needs_iommu_device); + + pr_debug("\t\t%30s\n", "* * * * * * * * * * * * * * * * * *"); + pr_debug("\t\t%20s %08x\n", "register index :", i); +@@ -339,9 +347,9 @@ static int dbgdev_address_watch_diq(struct kfd_dbgdev *dbgdev, + union TCP_WATCH_ADDR_H_BITS addrHi; + union TCP_WATCH_ADDR_L_BITS addrLo; + union TCP_WATCH_CNTL_BITS cntl; +- struct kfd_mem_obj *mem_obj; + unsigned int aw_reg_add_dword; + uint32_t *packet_buff_uint; ++ uint64_t packet_buff_gpu_addr; + unsigned int i; + int status; + size_t ib_size = sizeof(struct pm4__set_config_reg) * 4; +@@ -363,15 +371,13 @@ static int dbgdev_address_watch_diq(struct kfd_dbgdev *dbgdev, + return -EINVAL; + } + +- status = kfd_gtt_sa_allocate(dbgdev->dev, ib_size, &mem_obj); +- ++ status = dbgdev->kq->ops.acquire_inline_ib(dbgdev->kq, ++ ib_size/sizeof(uint32_t), ++ &packet_buff_uint, &packet_buff_gpu_addr); + if (status) { +- pr_err("Failed to allocate GART memory\n"); ++ pr_err("Failed to allocate IB from DIQ ring\n"); + return status; + } +- +- packet_buff_uint = mem_obj->cpu_ptr; +- + memset(packet_buff_uint, 0, ib_size); + + packets_vec = (struct pm4__set_config_reg *) (packet_buff_uint); +@@ -390,12 +396,9 @@ static int dbgdev_address_watch_diq(struct kfd_dbgdev *dbgdev, + packets_vec[3].bitfields2.insert_vmid = 1; + + for (i = 0; i < adw_info->num_watch_points; i++) { +- dbgdev_address_watch_set_registers(adw_info, +- &addrHi, +- &addrLo, +- &cntl, +- i, +- vmid); ++ dbgdev_address_watch_set_registers(adw_info, &addrHi, &addrLo, ++ &cntl, i, vmid, ++ dbgdev->dev->device_info->needs_iommu_device); + + pr_debug("\t\t%30s\n", "* * * * * * * * * * * * * * * * * *"); + pr_debug("\t\t%20s %08x\n", "register index :", i); +@@ -468,24 +471,24 @@ static int dbgdev_address_watch_diq(struct kfd_dbgdev *dbgdev, + status = dbgdev_diq_submit_ib( + dbgdev, + adw_info->process->pasid, +- mem_obj->gpu_addr, ++ packet_buff_gpu_addr, + packet_buff_uint, +- ib_size); ++ ib_size, true); + + if (status) { + pr_err("Failed to submit IB to DIQ\n"); +- break; ++ return status; + } + } + +- kfd_gtt_sa_free(dbgdev->dev, mem_obj); + return status; + } + + static int dbgdev_wave_control_set_registers( + struct dbg_wave_control_info *wac_info, + union SQ_CMD_BITS *in_reg_sq_cmd, +- union GRBM_GFX_INDEX_BITS *in_reg_gfx_index) ++ union GRBM_GFX_INDEX_BITS *in_reg_gfx_index, ++ unsigned int asic_family) + { + int status = 0; + union SQ_CMD_BITS reg_sq_cmd; +@@ -543,11 +546,25 @@ static int dbgdev_wave_control_set_registers( + + switch (wac_info->operand) { + case HSA_DBG_WAVEOP_HALT: +- reg_sq_cmd.bits.cmd = SQ_IND_CMD_CMD_HALT; ++ if (asic_family == CHIP_KAVERI) { ++ reg_sq_cmd.bits.cmd = SQ_IND_CMD_CMD_HALT; ++ pr_debug("Halting KV\n"); ++ } else { ++ reg_sq_cmd.bits_sethalt.cmd = SQ_IND_CMD_NEW_SETHALT; ++ reg_sq_cmd.bits_sethalt.data = SQ_IND_CMD_DATA_HALT; ++ pr_debug("Halting CZ\n"); ++ } + break; + + case HSA_DBG_WAVEOP_RESUME: +- reg_sq_cmd.bits.cmd = SQ_IND_CMD_CMD_RESUME; ++ if (asic_family == CHIP_KAVERI) { ++ reg_sq_cmd.bits.cmd = SQ_IND_CMD_CMD_RESUME; ++ pr_debug("Resuming KV\n"); ++ } else { ++ reg_sq_cmd.bits_sethalt.cmd = SQ_IND_CMD_NEW_SETHALT; ++ reg_sq_cmd.bits_sethalt.data = SQ_IND_CMD_DATA_RESUME; ++ pr_debug("Resuming CZ\n"); ++ } + break; + + case HSA_DBG_WAVEOP_KILL: +@@ -587,15 +604,15 @@ static int dbgdev_wave_control_diq(struct kfd_dbgdev *dbgdev, + int status; + union SQ_CMD_BITS reg_sq_cmd; + union GRBM_GFX_INDEX_BITS reg_gfx_index; +- struct kfd_mem_obj *mem_obj; + uint32_t *packet_buff_uint; ++ uint64_t packet_buff_gpu_addr; + struct pm4__set_config_reg *packets_vec; + size_t ib_size = sizeof(struct pm4__set_config_reg) * 3; + + reg_sq_cmd.u32All = 0; + + status = dbgdev_wave_control_set_registers(wac_info, ®_sq_cmd, +- ®_gfx_index); ++ ®_gfx_index, dbgdev->dev->device_info->asic_family); + if (status) { + pr_err("Failed to set wave control registers\n"); + return status; +@@ -634,15 +651,13 @@ static int dbgdev_wave_control_diq(struct kfd_dbgdev *dbgdev, + + pr_debug("\t\t %30s\n", "* * * * * * * * * * * * * * * * * *"); + +- status = kfd_gtt_sa_allocate(dbgdev->dev, ib_size, &mem_obj); +- +- if (status != 0) { +- pr_err("Failed to allocate GART memory\n"); ++ status = dbgdev->kq->ops.acquire_inline_ib(dbgdev->kq, ++ ib_size / sizeof(uint32_t), ++ &packet_buff_uint, &packet_buff_gpu_addr); ++ if (status) { ++ pr_err("Failed to allocate IB from DIQ ring\n"); + return status; + } +- +- packet_buff_uint = mem_obj->cpu_ptr; +- + memset(packet_buff_uint, 0, ib_size); + + packets_vec = (struct pm4__set_config_reg *) packet_buff_uint; +@@ -682,15 +697,13 @@ static int dbgdev_wave_control_diq(struct kfd_dbgdev *dbgdev, + status = dbgdev_diq_submit_ib( + dbgdev, + wac_info->process->pasid, +- mem_obj->gpu_addr, ++ packet_buff_gpu_addr, + packet_buff_uint, +- ib_size); ++ ib_size, false); + + if (status) + pr_err("Failed to submit IB to DIQ\n"); + +- kfd_gtt_sa_free(dbgdev->dev, mem_obj); +- + return status; + } + +@@ -712,7 +725,7 @@ static int dbgdev_wave_control_nodiq(struct kfd_dbgdev *dbgdev, + return -EFAULT; + } + status = dbgdev_wave_control_set_registers(wac_info, ®_sq_cmd, +- ®_gfx_index); ++ ®_gfx_index, dbgdev->dev->device_info->asic_family); + if (status) { + pr_err("Failed to set wave control registers\n"); + return status; +@@ -804,7 +817,7 @@ int dbgdev_wave_reset_wavefronts(struct kfd_dev *dev, struct kfd_process *p) + return -EFAULT; + + status = dbgdev_wave_control_set_registers(&wac_info, ®_sq_cmd, +- ®_gfx_index); ++ ®_gfx_index, dev->device_info->asic_family); + if (status != 0) + return -EINVAL; + +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.h b/drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.h +index 0619c777b47e..65579bc33c95 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.h +@@ -63,6 +63,22 @@ enum { + /* SQ_CMD definitions */ + #define SQ_CMD 0x8DEC + ++enum { ++ SQ_IND_CMD_DATA_RESUME = 0, ++ SQ_IND_CMD_DATA_HALT = 1 ++}; ++ ++enum SQ_IND_CMD_NEW { ++ SQ_IND_CMD_NEW_NULL = 0x00000000, ++ SQ_IND_CMD_NEW_SETHALT = 0x00000001, ++ SQ_IND_CMD_NEW_SAVECTX = 0x00000002, ++ SQ_IND_CMD_NEW_KILL = 0x00000003, ++ SQ_IND_CMD_NEW_DEBUG = 0x00000004, ++ SQ_IND_CMD_NEW_TRAP = 0x00000005, ++ SQ_IND_CMD_NEW_SET_PRIO = 0x00000006 ++ ++}; ++ + enum SQ_IND_CMD_CMD { + SQ_IND_CMD_CMD_NULL = 0x00000000, + SQ_IND_CMD_CMD_HALT = 0x00000001, +@@ -121,6 +137,20 @@ union SQ_CMD_BITS { + uint32_t:1; + uint32_t vm_id:4; + } bitfields, bits; ++ struct { ++ uint32_t cmd:3; ++ uint32_t:1; ++ uint32_t mode:3; ++ uint32_t check_vmid:1; ++ uint32_t data:3; ++ uint32_t:5; ++ uint32_t wave_id:4; ++ uint32_t simd_id:2; ++ uint32_t:2; ++ uint32_t queue_id:3; ++ uint32_t:1; ++ uint32_t vm_id:4; ++ } bitfields_sethalt, bits_sethalt; + uint32_t u32All; + signed int i32All; + float f32All; +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device.c b/drivers/gpu/drm/amd/amdkfd/kfd_device.c +index 8be9677c0c07..05183737419f 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_device.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_device.c +@@ -447,7 +447,7 @@ struct kfd_dev *kgd2kfd_probe(struct kgd_dev *kgd, + ret = pci_enable_atomic_ops_to_root(pdev, + PCI_EXP_DEVCAP2_ATOMIC_COMP32 | + PCI_EXP_DEVCAP2_ATOMIC_COMP64); +- if (device_info->needs_pci_atomics && ret < 0) { ++ if (device_info->needs_pci_atomics && ret < 0) { + dev_info(kfd_device, + "skipped device %x:%x, PCI rejects atomics\n", + pdev->vendor, pdev->device); +@@ -487,10 +487,12 @@ static void kfd_cwsr_init(struct kfd_dev *kfd) + } + + bool kgd2kfd_device_init(struct kfd_dev *kfd, ++ struct drm_device *ddev, + const struct kgd2kfd_shared_resources *gpu_resources) + { + unsigned int size; + ++ kfd->ddev = ddev; + kfd->mec_fw_version = kfd->kfd2kgd->get_fw_version(kfd->kgd, + KGD_ENGINE_MEC1); + kfd->sdma_fw_version = kfd->kfd2kgd->get_fw_version(kfd->kgd, +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c +index c6c9530e704e..ffb841d334f3 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.c +@@ -124,6 +124,31 @@ void program_sh_mem_settings(struct device_queue_manager *dqm, + qpd->sh_mem_bases); + } + ++bool check_if_queues_active(struct device_queue_manager *dqm, ++ struct qcm_process_device *qpd) ++{ ++ bool busy = false; ++ struct queue *q; ++ ++ dqm_lock(dqm); ++ list_for_each_entry(q, &qpd->queues_list, list) { ++ struct mqd_manager *mqd_mgr; ++ enum KFD_MQD_TYPE type; ++ ++ type = get_mqd_type_from_queue_type(q->properties.type); ++ mqd_mgr = dqm->mqd_mgrs[type]; ++ if (!mqd_mgr || !mqd_mgr->check_queue_active) ++ continue; ++ ++ busy = mqd_mgr->check_queue_active(q); ++ if (busy) ++ break; ++ } ++ dqm_unlock(dqm); ++ ++ return busy; ++} ++ + static int allocate_doorbell(struct qcm_process_device *qpd, struct queue *q) + { + struct kfd_dev *dev = qpd->dqm->dev; +@@ -368,9 +393,7 @@ static int create_compute_queue_nocpsch(struct device_queue_manager *dqm, + struct mqd_manager *mqd_mgr; + int retval; + +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, KFD_MQD_TYPE_COMPUTE); +- if (!mqd_mgr) +- return -ENOMEM; ++ mqd_mgr = dqm->mqd_mgrs[KFD_MQD_TYPE_COMPUTE]; + + retval = allocate_hqd(dqm, q); + if (retval) +@@ -425,10 +448,8 @@ static int destroy_queue_nocpsch_locked(struct device_queue_manager *dqm, + int retval; + struct mqd_manager *mqd_mgr; + +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, +- get_mqd_type_from_queue_type(q->properties.type)); +- if (!mqd_mgr) +- return -ENOMEM; ++ mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type( ++ q->properties.type)]; + + if (q->properties.type == KFD_QUEUE_TYPE_COMPUTE) { + deallocate_hqd(dqm, q); +@@ -501,12 +522,8 @@ static int update_queue(struct device_queue_manager *dqm, struct queue *q) + retval = -ENODEV; + goto out_unlock; + } +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, +- get_mqd_type_from_queue_type(q->properties.type)); +- if (!mqd_mgr) { +- retval = -ENOMEM; +- goto out_unlock; +- } ++ mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type( ++ q->properties.type)]; + /* + * Eviction state logic: we only mark active queues as evicted + * to avoid the overhead of restoring inactive queues later +@@ -571,27 +588,6 @@ static int update_queue(struct device_queue_manager *dqm, struct queue *q) + return retval; + } + +-static struct mqd_manager *get_mqd_manager( +- struct device_queue_manager *dqm, enum KFD_MQD_TYPE type) +-{ +- struct mqd_manager *mqd_mgr; +- +- if (WARN_ON(type >= KFD_MQD_TYPE_MAX)) +- return NULL; +- +- pr_debug("mqd type %d\n", type); +- +- mqd_mgr = dqm->mqd_mgrs[type]; +- if (!mqd_mgr) { +- mqd_mgr = mqd_manager_init(type, dqm->dev); +- if (!mqd_mgr) +- pr_err("mqd manager is NULL"); +- dqm->mqd_mgrs[type] = mqd_mgr; +- } +- +- return mqd_mgr; +-} +- + static int evict_process_queues_nocpsch(struct device_queue_manager *dqm, + struct qcm_process_device *qpd) + { +@@ -612,13 +608,8 @@ static int evict_process_queues_nocpsch(struct device_queue_manager *dqm, + list_for_each_entry(q, &qpd->queues_list, list) { + if (!q->properties.is_active) + continue; +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, +- get_mqd_type_from_queue_type(q->properties.type)); +- if (!mqd_mgr) { /* should not be here */ +- pr_err("Cannot evict queue, mqd mgr is NULL\n"); +- retval = -ENOMEM; +- goto out; +- } ++ mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type( ++ q->properties.type)]; + q->properties.is_evicted = true; + q->properties.is_active = false; + retval = mqd_mgr->destroy_mqd(mqd_mgr, q->mqd, +@@ -717,13 +708,8 @@ static int restore_process_queues_nocpsch(struct device_queue_manager *dqm, + list_for_each_entry(q, &qpd->queues_list, list) { + if (!q->properties.is_evicted) + continue; +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, +- get_mqd_type_from_queue_type(q->properties.type)); +- if (!mqd_mgr) { /* should not be here */ +- pr_err("Cannot restore queue, mqd mgr is NULL\n"); +- retval = -ENOMEM; +- goto out; +- } ++ mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type( ++ q->properties.type)]; + q->properties.is_evicted = false; + q->properties.is_active = true; + retval = mqd_mgr->load_mqd(mqd_mgr, q->mqd, q->pipe, +@@ -880,6 +866,7 @@ static int initialize_nocpsch(struct device_queue_manager *dqm) + INIT_LIST_HEAD(&dqm->queues); + dqm->queue_count = dqm->next_pipe_to_allocate = 0; + dqm->sdma_queue_count = 0; ++ dqm->trap_debug_vmid = 0; + + for (pipe = 0; pipe < get_pipes_per_mec(dqm); pipe++) { + int pipe_offset = pipe * get_queues_per_pipe(dqm); +@@ -891,7 +878,7 @@ static int initialize_nocpsch(struct device_queue_manager *dqm) + } + + dqm->vmid_bitmap = (1 << dqm->dev->vm_info.vmid_num_kfd) - 1; +- dqm->sdma_bitmap = (1 << get_num_sdma_queues(dqm)) - 1; ++ dqm->sdma_bitmap = (1ULL << get_num_sdma_queues(dqm)) - 1; + + return 0; + } +@@ -922,26 +909,46 @@ static int stop_nocpsch(struct device_queue_manager *dqm) + } + + static int allocate_sdma_queue(struct device_queue_manager *dqm, +- unsigned int *sdma_queue_id) ++ unsigned int sdma_engine_id, ++ unsigned int *sdma_id) + { +- int bit; ++ int bit = -1; + + if (dqm->sdma_bitmap == 0) + return -ENOMEM; + +- bit = ffs(dqm->sdma_bitmap) - 1; +- dqm->sdma_bitmap &= ~(1 << bit); +- *sdma_queue_id = bit; ++ /* If sdma_engine_id is valid, ++ * allocate queue on specific engine ++ */ ++ if (sdma_engine_id < get_num_sdma_engines(dqm)) { ++ unsigned int i; ++ ++ for (i = sdma_engine_id; i < get_num_sdma_queues(dqm); ++ i += get_num_sdma_engines(dqm)) { ++ if (dqm->sdma_bitmap & (1<<i)) { ++ bit = i; ++ break; ++ } ++ } ++ if (bit == -1) ++ return -EBUSY; ++ /* Otherwise allocate from any engine */ ++ } else { ++ bit = __ffs64(dqm->sdma_bitmap); ++ } ++ ++ dqm->sdma_bitmap &= ~(1ULL << bit); ++ *sdma_id = bit; + + return 0; + } + + static void deallocate_sdma_queue(struct device_queue_manager *dqm, +- unsigned int sdma_queue_id) ++ unsigned int sdma_id) + { +- if (sdma_queue_id >= get_num_sdma_queues(dqm)) ++ if (sdma_id >= get_num_sdma_queues(dqm)) + return; +- dqm->sdma_bitmap |= (1 << sdma_queue_id); ++ dqm->sdma_bitmap |= (1ULL << sdma_id); + } + + static int create_sdma_queue_nocpsch(struct device_queue_manager *dqm, +@@ -951,11 +958,10 @@ static int create_sdma_queue_nocpsch(struct device_queue_manager *dqm, + struct mqd_manager *mqd_mgr; + int retval; + +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, KFD_MQD_TYPE_SDMA); +- if (!mqd_mgr) +- return -ENOMEM; ++ mqd_mgr = dqm->mqd_mgrs[KFD_MQD_TYPE_SDMA]; + +- retval = allocate_sdma_queue(dqm, &q->sdma_id); ++ retval = allocate_sdma_queue(dqm, q->properties.sdma_engine_id, ++ &q->sdma_id); + if (retval) + return retval; + +@@ -1047,7 +1053,8 @@ static int initialize_cpsch(struct device_queue_manager *dqm) + dqm->queue_count = dqm->processes_count = 0; + dqm->sdma_queue_count = 0; + dqm->active_runlist = false; +- dqm->sdma_bitmap = (1 << get_num_sdma_queues(dqm)) - 1; ++ dqm->sdma_bitmap = (1ULL << get_num_sdma_queues(dqm)) - 1; ++ dqm->trap_debug_vmid = 0; + + INIT_WORK(&dqm->hw_exception_work, kfd_process_hw_exception); + +@@ -1174,26 +1181,25 @@ static int create_queue_cpsch(struct device_queue_manager *dqm, struct queue *q, + } + + if (q->properties.type == KFD_QUEUE_TYPE_SDMA) { +- retval = allocate_sdma_queue(dqm, &q->sdma_id); ++ retval = allocate_sdma_queue(dqm, q->properties.sdma_engine_id, ++ &q->sdma_id); + if (retval) + goto out_unlock; + q->properties.sdma_queue_id = + q->sdma_id / get_num_sdma_engines(dqm); + q->properties.sdma_engine_id = + q->sdma_id % get_num_sdma_engines(dqm); ++ pr_debug("SDMA id is: %d\n", q->sdma_id); ++ pr_debug("SDMA queue id: %d\n", q->properties.sdma_queue_id); ++ pr_debug("SDMA engine id: %d\n", q->properties.sdma_engine_id); + } + + retval = allocate_doorbell(qpd, q); + if (retval) + goto out_deallocate_sdma_queue; + +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, +- get_mqd_type_from_queue_type(q->properties.type)); +- +- if (!mqd_mgr) { +- retval = -ENOMEM; +- goto out_deallocate_doorbell; +- } ++ mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type( ++ q->properties.type)]; + /* + * Eviction state logic: we only mark active queues as evicted + * to avoid the overhead of restoring inactive queues later +@@ -1380,12 +1386,8 @@ static int destroy_queue_cpsch(struct device_queue_manager *dqm, + + } + +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, +- get_mqd_type_from_queue_type(q->properties.type)); +- if (!mqd_mgr) { +- retval = -ENOMEM; +- goto failed; +- } ++ mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type( ++ q->properties.type)]; + + deallocate_doorbell(qpd, q); + +@@ -1418,7 +1420,6 @@ static int destroy_queue_cpsch(struct device_queue_manager *dqm, + + return retval; + +-failed: + failed_try_destroy_debugged_queue: + + dqm_unlock(dqm); +@@ -1538,7 +1539,9 @@ static int process_termination_nocpsch(struct device_queue_manager *dqm, + if (qpd == cur->qpd) { + list_del(&cur->list); + kfree(cur); +- dqm->processes_count--; ++ if (--dqm->processes_count == 0) ++ amdgpu_amdkfd_set_compute_idle( ++ dqm->dev->kgd, true); + break; + } + } +@@ -1564,11 +1567,7 @@ static int get_wave_state(struct device_queue_manager *dqm, + goto dqm_unlock; + } + +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, KFD_MQD_TYPE_COMPUTE); +- if (!mqd_mgr) { +- r = -ENOMEM; +- goto dqm_unlock; +- } ++ mqd_mgr = dqm->mqd_mgrs[KFD_MQD_TYPE_COMPUTE]; + + if (!mqd_mgr->get_wave_state) { + r = -EINVAL; +@@ -1625,7 +1624,9 @@ static int process_termination_cpsch(struct device_queue_manager *dqm, + if (qpd == cur->qpd) { + list_del(&cur->list); + kfree(cur); +- dqm->processes_count--; ++ if (--dqm->processes_count == 0) ++ amdgpu_amdkfd_set_compute_idle( ++ dqm->dev->kgd, true); + break; + } + } +@@ -1639,22 +1640,60 @@ static int process_termination_cpsch(struct device_queue_manager *dqm, + + /* lastly, free mqd resources */ + list_for_each_entry_safe(q, next, &qpd->queues_list, list) { +- mqd_mgr = dqm->ops.get_mqd_manager(dqm, +- get_mqd_type_from_queue_type(q->properties.type)); +- if (!mqd_mgr) { +- retval = -ENOMEM; +- goto out; +- } ++ mqd_mgr = dqm->mqd_mgrs[get_mqd_type_from_queue_type( ++ q->properties.type)]; + list_del(&q->list); + qpd->queue_count--; + mqd_mgr->uninit_mqd(mqd_mgr, q->mqd, q->mqd_mem_obj); + } + +-out: + dqm_unlock(dqm); + return retval; + } + ++static int init_mqd_managers(struct device_queue_manager *dqm) ++{ ++ int i, j; ++ struct mqd_manager *mqd_mgr; ++ ++ for (i = 0; i < KFD_MQD_TYPE_MAX; i++) { ++ mqd_mgr = dqm->asic_ops.mqd_manager_init(i, dqm->dev); ++ if (!mqd_mgr) { ++ pr_err("mqd manager [%d] initialization failed\n", i); ++ goto out_free; ++ } ++ dqm->mqd_mgrs[i] = mqd_mgr; ++ } ++ ++ return 0; ++ ++out_free: ++ for (j = 0; j < i; j++) { ++ kfree(dqm->mqd_mgrs[j]); ++ dqm->mqd_mgrs[j] = NULL; ++ } ++ ++ return -ENOMEM; ++} ++ ++/* Allocate one hiq mqd (HWS) and all SDMA mqd in a continuous trunk*/ ++static int allocate_hiq_sdma_mqd(struct device_queue_manager *dqm) ++{ ++ int retval; ++ struct kfd_dev *dev = dqm->dev; ++ struct kfd_mem_obj *mem_obj = &dqm->hiq_sdma_mqd; ++ uint32_t size = dqm->mqd_mgrs[KFD_MQD_TYPE_SDMA]->mqd_size * ++ dev->device_info->num_sdma_engines * ++ dev->device_info->num_sdma_queues_per_engine + ++ dqm->mqd_mgrs[KFD_MQD_TYPE_HIQ]->mqd_size; ++ ++ retval = amdgpu_amdkfd_alloc_gtt_mem(dev->kgd, size, ++ &(mem_obj->gtt_mem), &(mem_obj->gpu_addr), ++ (void *)&(mem_obj->cpu_ptr), true); ++ ++ return retval; ++} ++ + struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev) + { + struct device_queue_manager *dqm; +@@ -1692,7 +1731,6 @@ struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev) + dqm->ops.stop = stop_cpsch; + dqm->ops.destroy_queue = destroy_queue_cpsch; + dqm->ops.update_queue = update_queue; +- dqm->ops.get_mqd_manager = get_mqd_manager; + dqm->ops.register_process = register_process; + dqm->ops.unregister_process = unregister_process; + dqm->ops.uninitialize = uninitialize; +@@ -1712,7 +1750,6 @@ struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev) + dqm->ops.create_queue = create_queue_nocpsch; + dqm->ops.destroy_queue = destroy_queue_nocpsch; + dqm->ops.update_queue = update_queue; +- dqm->ops.get_mqd_manager = get_mqd_manager; + dqm->ops.register_process = register_process; + dqm->ops.unregister_process = unregister_process; + dqm->ops.initialize = initialize_nocpsch; +@@ -1763,6 +1800,14 @@ struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev) + goto out_free; + } + ++ if (init_mqd_managers(dqm)) ++ goto out_free; ++ ++ if (allocate_hiq_sdma_mqd(dqm)) { ++ pr_err("Failed to allocate hiq sdma mqd trunk buffer\n"); ++ goto out_free; ++ } ++ + if (!dqm->ops.initialize(dqm)) + return dqm; + +@@ -1771,9 +1816,17 @@ struct device_queue_manager *device_queue_manager_init(struct kfd_dev *dev) + return NULL; + } + ++void deallocate_hiq_sdma_mqd(struct kfd_dev *dev, struct kfd_mem_obj *mqd) ++{ ++ WARN(!mqd, "No hiq sdma mqd trunk to free"); ++ ++ amdgpu_amdkfd_free_gtt_mem(dev->kgd, mqd->gtt_mem); ++} ++ + void device_queue_manager_uninit(struct device_queue_manager *dqm) + { + dqm->ops.uninitialize(dqm); ++ deallocate_hiq_sdma_mqd(dqm->dev, &dqm->hiq_sdma_mqd); + kfree(dqm); + } + +@@ -1801,6 +1854,145 @@ static void kfd_process_hw_exception(struct work_struct *work) + amdgpu_amdkfd_gpu_reset(dqm->dev->kgd); + } + ++/* ++ * Reserves a vmid for the trap debugger ++ */ ++int reserve_debug_trap_vmid(struct device_queue_manager *dqm) ++{ ++ int r; ++ int updated_vmid_mask; ++ ++ if (dqm->sched_policy == KFD_SCHED_POLICY_NO_HWS) { ++ pr_err("Unsupported on sched_policy: %i\n", dqm->sched_policy); ++ return -EINVAL; ++ } ++ ++ dqm_lock(dqm); ++ ++ if (dqm->trap_debug_vmid != 0) { ++ pr_err("Trap debug id already reserved\n"); ++ r = -EINVAL; ++ goto out_unlock; ++ } ++ ++ r = unmap_queues_cpsch(dqm, KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES, 0); ++ if (r) ++ goto out_unlock; ++ ++ updated_vmid_mask = dqm->dev->shared_resources.compute_vmid_bitmap; ++ updated_vmid_mask &= ~(1 << dqm->dev->vm_info.last_vmid_kfd); ++ ++ dqm->dev->shared_resources.compute_vmid_bitmap = updated_vmid_mask; ++ dqm->trap_debug_vmid = dqm->dev->vm_info.last_vmid_kfd; ++ r = set_sched_resources(dqm); ++ if (r) ++ goto out_unlock; ++ ++ r = map_queues_cpsch(dqm); ++ if (r) ++ goto out_unlock; ++ ++ pr_debug("Reserved VMID for trap debug: %i\n", dqm->trap_debug_vmid); ++ ++out_unlock: ++ dqm_unlock(dqm); ++ return r; ++} ++ ++/* ++ * Releases vmid for the trap debugger ++ */ ++int release_debug_trap_vmid(struct device_queue_manager *dqm) ++{ ++ int r; ++ int updated_vmid_mask; ++ uint32_t trap_debug_vmid; ++ ++ if (dqm->sched_policy == KFD_SCHED_POLICY_NO_HWS) { ++ pr_err("Unsupported on sched_policy: %i\n", dqm->sched_policy); ++ return -EINVAL; ++ } ++ ++ dqm_lock(dqm); ++ trap_debug_vmid = dqm->trap_debug_vmid; ++ if (dqm->trap_debug_vmid == 0) { ++ pr_err("Trap debug id is not reserved\n"); ++ r = -EINVAL; ++ goto out_unlock; ++ } ++ ++ r = unmap_queues_cpsch(dqm, KFD_UNMAP_QUEUES_FILTER_ALL_QUEUES, 0); ++ if (r) ++ goto out_unlock; ++ ++ updated_vmid_mask = dqm->dev->shared_resources.compute_vmid_bitmap; ++ updated_vmid_mask |= (1 << dqm->dev->vm_info.last_vmid_kfd); ++ ++ dqm->dev->shared_resources.compute_vmid_bitmap = updated_vmid_mask; ++ dqm->trap_debug_vmid = 0; ++ r = set_sched_resources(dqm); ++ if (r) ++ goto out_unlock; ++ ++ r = map_queues_cpsch(dqm); ++ if (r) ++ goto out_unlock; ++ ++ pr_debug("Released VMID for trap debug: %i\n", trap_debug_vmid); ++ ++out_unlock: ++ dqm_unlock(dqm); ++ return r; ++} ++ ++int suspend_queues(struct device_queue_manager *dqm, ++ struct kfd_process *p, ++ uint32_t flags) ++{ ++ int r = -ENODEV; ++ struct kfd_dev *dev; ++ struct kfd_process_device *pdd; ++ ++ dev = dqm->dev; ++ ++ list_for_each_entry(pdd, &p->per_device_data, per_device_list) { ++ if (dqm->dev == pdd->dev) { ++ r = pdd->dev->dqm->ops.evict_process_queues( ++ pdd->dev->dqm, ++ &pdd->qpd); ++ if (r) ++ pr_err("Failed to suspend process queues\n"); ++ break; ++ } ++ } ++ ++ /* Memory Fence */ ++ if (!r && flags & KFD__DBG_NODE_SUSPEND_MEMORY_FENCE) ++ amdgpu_amdkfd_debug_mem_fence(dev->kgd); ++ ++ return r; ++} ++ ++int resume_queues(struct device_queue_manager *dqm, struct kfd_process *p) ++{ ++ int r = -ENODEV; ++ struct kfd_process_device *pdd; ++ ++ list_for_each_entry(pdd, &p->per_device_data, per_device_list) { ++ if (dqm->dev == pdd->dev) { ++ r = pdd->dev->dqm->ops.restore_process_queues( ++ pdd->dev->dqm, ++ &pdd->qpd); ++ if (r) ++ pr_err("Failed to resume process queues\n"); ++ break; ++ } ++ } ++ ++ return r; ++} ++ ++ + #if defined(CONFIG_DEBUG_FS) + + static void seq_reg_dump(struct seq_file *m, +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h +index 70e38a2e23b9..bc8af25511de 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h +@@ -48,8 +48,6 @@ struct device_process_node { + * + * @update_queue: Queue update routine. + * +- * @get_mqd_manager: Returns the mqd manager according to the mqd type. +- * + * @exeute_queues: Dispatches the queues list to the H/W. + * + * @register_process: This routine associates a specific process with device. +@@ -97,10 +95,6 @@ struct device_queue_manager_ops { + int (*update_queue)(struct device_queue_manager *dqm, + struct queue *q); + +- struct mqd_manager * (*get_mqd_manager) +- (struct device_queue_manager *dqm, +- enum KFD_MQD_TYPE type); +- + int (*register_process)(struct device_queue_manager *dqm, + struct qcm_process_device *qpd); + +@@ -158,6 +152,8 @@ struct device_queue_manager_asic_ops { + void (*init_sdma_vm)(struct device_queue_manager *dqm, + struct queue *q, + struct qcm_process_device *qpd); ++ struct mqd_manager * (*mqd_manager_init)(enum KFD_MQD_TYPE type, ++ struct kfd_dev *dev); + }; + + /** +@@ -188,7 +184,7 @@ struct device_queue_manager { + unsigned int total_queue_count; + unsigned int next_pipe_to_allocate; + unsigned int *allocated_queues; +- unsigned int sdma_bitmap; ++ uint64_t sdma_bitmap; + unsigned int vmid_bitmap; + uint64_t pipelines_addr; + struct kfd_mem_obj *pipeline_mem; +@@ -197,10 +193,12 @@ struct device_queue_manager { + struct kfd_mem_obj *fence_mem; + bool active_runlist; + int sched_policy; ++ uint32_t trap_debug_vmid; + + /* hw exception */ + bool is_hws_hang; + struct work_struct hw_exception_work; ++ struct kfd_mem_obj hiq_sdma_mqd; + }; + + void device_queue_manager_init_cik( +@@ -219,6 +217,15 @@ unsigned int get_queues_num(struct device_queue_manager *dqm); + unsigned int get_queues_per_pipe(struct device_queue_manager *dqm); + unsigned int get_pipes_per_mec(struct device_queue_manager *dqm); + unsigned int get_num_sdma_queues(struct device_queue_manager *dqm); ++bool check_if_queues_active(struct device_queue_manager *dqm, ++ struct qcm_process_device *qpd); ++int reserve_debug_trap_vmid(struct device_queue_manager *dqm); ++int release_debug_trap_vmid(struct device_queue_manager *dqm); ++int suspend_queues(struct device_queue_manager *dqm, ++ struct kfd_process *p, ++ uint32_t flags); ++int resume_queues(struct device_queue_manager *dqm, struct kfd_process *p); ++ + + static inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) + { +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_cik.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_cik.c +index aed4c21417bf..0d26506798cf 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_cik.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_cik.c +@@ -48,6 +48,7 @@ void device_queue_manager_init_cik( + asic_ops->set_cache_memory_policy = set_cache_memory_policy_cik; + asic_ops->update_qpd = update_qpd_cik; + asic_ops->init_sdma_vm = init_sdma_vm; ++ asic_ops->mqd_manager_init = mqd_manager_init_cik; + } + + void device_queue_manager_init_cik_hawaii( +@@ -56,6 +57,7 @@ void device_queue_manager_init_cik_hawaii( + asic_ops->set_cache_memory_policy = set_cache_memory_policy_cik; + asic_ops->update_qpd = update_qpd_cik_hawaii; + asic_ops->init_sdma_vm = init_sdma_vm_hawaii; ++ asic_ops->mqd_manager_init = mqd_manager_init_cik_hawaii; + } + + static uint32_t compute_sh_mem_bases_64bit(unsigned int top_address_nybble) +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_v9.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_v9.c +index 417515332c35..e9fe39382371 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_v9.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_v9.c +@@ -37,6 +37,7 @@ void device_queue_manager_init_v9( + { + asic_ops->update_qpd = update_qpd_v9; + asic_ops->init_sdma_vm = init_sdma_vm_v9; ++ asic_ops->mqd_manager_init = mqd_manager_init_v9; + } + + static uint32_t compute_sh_mem_bases_64bit(struct kfd_process_device *pdd) +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_vi.c b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_vi.c +index c3a5dcfe877a..3a7cb2f88366 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_vi.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager_vi.c +@@ -54,6 +54,7 @@ void device_queue_manager_init_vi( + asic_ops->set_cache_memory_policy = set_cache_memory_policy_vi; + asic_ops->update_qpd = update_qpd_vi; + asic_ops->init_sdma_vm = init_sdma_vm; ++ asic_ops->mqd_manager_init = mqd_manager_init_vi; + } + + void device_queue_manager_init_vi_tonga( +@@ -62,6 +63,7 @@ void device_queue_manager_init_vi_tonga( + asic_ops->set_cache_memory_policy = set_cache_memory_policy_vi_tonga; + asic_ops->update_qpd = update_qpd_vi_tonga; + asic_ops->init_sdma_vm = init_sdma_vm_tonga; ++ asic_ops->mqd_manager_init = mqd_manager_init_vi_tonga; + } + + static uint32_t compute_sh_mem_bases_64bit(unsigned int top_address_nybble) +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c b/drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c +index ebe79bf00145..de5366685535 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c +@@ -126,10 +126,91 @@ void kfd_doorbell_fini(struct kfd_dev *kfd) + iounmap(kfd->doorbell_kernel_ptr); + } + ++static int kfd_doorbell_vm_fault(struct vm_fault *vmf) ++{ ++ struct kfd_process *process = vmf->vma->vm_private_data; ++ ++ pr_debug("Process %d doorbell vm page fault\n", process->pasid); ++ ++ kfd_process_remap_doorbells_locked(process); ++ ++ kfd_process_schedule_restore(process); ++ ++ return VM_FAULT_NOPAGE; ++} ++ ++static const struct vm_operations_struct kfd_doorbell_vm_ops = { ++ .fault = kfd_doorbell_vm_fault, ++}; ++ ++void kfd_doorbell_unmap_locked(struct kfd_process_device *pdd) ++{ ++ struct kfd_process *process = pdd->process; ++ struct vm_area_struct *vma; ++ size_t size; ++ ++ vma = pdd->qpd.doorbell_vma; ++ /* If process is evicted before queue is created ++ * doorbell is not mapped to user space yet ++ */ ++ if (!vma || !pdd->qpd.queue_count) { ++ pdd->qpd.doorbell_mapped = -1; ++ return; ++ } ++ ++ pr_debug("Process %d unmapping doorbell 0x%lx\n", ++ process->pasid, vma->vm_start); ++ ++ size = kfd_doorbell_process_slice(pdd->dev); ++ zap_vma_ptes(vma, vma->vm_start, size); ++ pdd->qpd.doorbell_mapped = 0; ++} ++ ++void kfd_doorbell_unmap(struct kfd_process_device *pdd) ++{ ++ mutex_lock(&pdd->qpd.doorbell_lock); ++ kfd_doorbell_unmap_locked(pdd); ++ mutex_unlock(&pdd->qpd.doorbell_lock); ++} ++ ++int kfd_doorbell_remap(struct kfd_process_device *pdd) ++{ ++ struct kfd_process *process = pdd->process; ++ phys_addr_t address; ++ struct vm_area_struct *vma; ++ size_t size; ++ int ret = 0; ++ ++ mutex_lock(&pdd->qpd.doorbell_lock); ++ if (pdd->qpd.doorbell_mapped != 0) ++ goto out_unlock; ++ ++ /* Calculate physical address of doorbell */ ++ address = kfd_get_process_doorbells(pdd->dev, process); ++ vma = pdd->qpd.doorbell_vma; ++ size = kfd_doorbell_process_slice(pdd->dev); ++ ++ pr_debug("Process %d remap doorbell 0x%lx\n", process->pasid, ++ vma->vm_start); ++ ++ ret = vm_iomap_memory(vma, address, size); ++ if (ret) ++ pr_err("Process %d failed to remap doorbell 0x%lx\n", ++ process->pasid, vma->vm_start); ++ ++out_unlock: ++ pdd->qpd.doorbell_mapped = 1; ++ mutex_unlock(&pdd->qpd.doorbell_lock); ++ ++ return ret; ++} ++ + int kfd_doorbell_mmap(struct kfd_dev *dev, struct kfd_process *process, + struct vm_area_struct *vma) + { + phys_addr_t address; ++ struct kfd_process_device *pdd; ++ int ret; + + /* + * For simplicitly we only allow mapping of the entire doorbell +@@ -146,20 +227,47 @@ int kfd_doorbell_mmap(struct kfd_dev *dev, struct kfd_process *process, + + vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); + +- pr_debug("Mapping doorbell page\n" ++ pr_debug("Process %d mapping doorbell page\n" + " target user address == 0x%08llX\n" + " physical address == 0x%08llX\n" + " vm_flags == 0x%04lX\n" + " size == 0x%04lX\n", +- (unsigned long long) vma->vm_start, address, vma->vm_flags, +- kfd_doorbell_process_slice(dev)); ++ process->pasid, (unsigned long long) vma->vm_start, ++ address, vma->vm_flags, kfd_doorbell_process_slice(dev)); ++ ++ pdd = kfd_get_process_device_data(dev, process); ++ if (WARN_ON_ONCE(!pdd)) ++ return 0; + ++ mutex_lock(&pdd->qpd.doorbell_lock); + +- return io_remap_pfn_range(vma, ++ ret = io_remap_pfn_range(vma, + vma->vm_start, + address >> PAGE_SHIFT, + kfd_doorbell_process_slice(dev), + vma->vm_page_prot); ++ ++ if (!ret && keep_idle_process_evicted) { ++ vma->vm_ops = &kfd_doorbell_vm_ops; ++ vma->vm_private_data = process; ++ pdd->qpd.doorbell_vma = vma; ++ ++ /* If process is evicted before the first queue is created, ++ * process will be restored by the page fault when the ++ * doorbell is accessed the first time ++ */ ++ if (pdd->qpd.doorbell_mapped == -1) { ++ pr_debug("Process %d evicted, unmapping doorbell\n", ++ process->pasid); ++ kfd_doorbell_unmap_locked(pdd); ++ } else { ++ pdd->qpd.doorbell_mapped = 1; ++ } ++ } ++ ++ mutex_unlock(&pdd->qpd.doorbell_lock); ++ ++ return ret; + } + + +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_events.c b/drivers/gpu/drm/amd/amdkfd/kfd_events.c +index e9f0e0a1b41c..fe6e05e8c259 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_events.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_events.c +@@ -496,7 +496,7 @@ void kfd_signal_event_interrupt(unsigned int pasid, uint32_t partial_id, + pr_debug_ratelimited("Partial ID invalid: %u (%u valid bits)\n", + partial_id, valid_id_bits); + +- if (p->signal_event_count < KFD_SIGNAL_EVENT_LIMIT / 64) { ++ if (p->signal_event_count < KFD_SIGNAL_EVENT_LIMIT/64) { + /* With relatively few events, it's faster to + * iterate over the event IDR + */ +@@ -935,6 +935,7 @@ void kfd_signal_iommu_event(struct kfd_dev *dev, unsigned int pasid, + + /* Workaround on Raven to not kill the process when memory is freed + * before IOMMU is able to finish processing all the excessive PPRs ++ * triggered due to HW flaws. + */ + if (dev->device_info->asic_family != CHIP_RAVEN) { + mutex_lock(&p->event_mutex); +@@ -983,7 +984,7 @@ void kfd_signal_vm_fault_event(struct kfd_dev *dev, unsigned int pasid, + return; /* Presumably process exited. */ + memset(&memory_exception_data, 0, sizeof(memory_exception_data)); + memory_exception_data.gpu_id = dev->id; +- memory_exception_data.failure.imprecise = 1; ++ memory_exception_data.failure.imprecise = true; + /* Set failure reason */ + if (info) { + memory_exception_data.va = (info->page_addr) << PAGE_SHIFT; +@@ -1016,12 +1017,12 @@ void kfd_signal_reset_event(struct kfd_dev *dev) + unsigned int temp; + uint32_t id, idx; + +- /* Whole gpu reset caused by GPU hang and memory is lost */ ++ /* Whole gpu reset caused by GPU hang , and memory is lost */ + memset(&hw_exception_data, 0, sizeof(hw_exception_data)); + hw_exception_data.gpu_id = dev->id; + hw_exception_data.memory_lost = 1; + +- idx = srcu_read_lock(&kfd_processes_srcu); ++ idx = srcu_read_lock(&kfd_processes_srcu); + hash_for_each_rcu(kfd_processes_table, temp, p, kfd_processes) { + mutex_lock(&p->event_mutex); + id = KFD_FIRST_NONSIGNAL_EVENT_ID; +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c b/drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c +index 213ea5454d11..45bc891feb1d 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c +@@ -369,8 +369,13 @@ int kfd_init_apertures(struct kfd_process *process) + + /*Iterating over all devices*/ + while (kfd_topology_enum_kfd_devices(id, &dev) == 0) { +- if (!dev) { +- id++; /* Skip non GPU devices */ ++ if (!dev || kfd_devcgroup_check_permission(dev)) { ++ /* Skip non GPU devices and devices to which the ++ * current process have no access to. Access can be ++ * limited by placing the process in a specific ++ * cgroup hierarchy ++ */ ++ id++; + continue; + } + +@@ -435,5 +440,3 @@ int kfd_init_apertures(struct kfd_process *process) + + return 0; + } +- +- +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_ipc.c b/drivers/gpu/drm/amd/amdkfd/kfd_ipc.c +new file mode 100644 +index 000000000000..b733f6d09d43 +--- /dev/null ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_ipc.c +@@ -0,0 +1,270 @@ ++/* ++ * Copyright 2014 Advanced Micro Devices, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR ++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#include <linux/dma-buf.h> ++#include <linux/slab.h> ++#include <linux/random.h> ++ ++#include "kfd_ipc.h" ++#include "kfd_priv.h" ++#include "amdgpu_amdkfd.h" ++ ++#define KFD_IPC_HASH_TABLE_SIZE_SHIFT 4 ++#define KFD_IPC_HASH_TABLE_SIZE_MASK ((1 << KFD_IPC_HASH_TABLE_SIZE_SHIFT) - 1) ++ ++static struct kfd_ipc_handles { ++ DECLARE_HASHTABLE(handles, KFD_IPC_HASH_TABLE_SIZE_SHIFT); ++ struct mutex lock; ++} kfd_ipc_handles; ++ ++/* Since, handles are random numbers, it can be used directly as hashing key. ++ * The least 4 bits of the handle are used as key. However, during import all ++ * 128 bits of the handle are checked to prevent handle snooping. ++ */ ++#define HANDLE_TO_KEY(sh) ((*(uint64_t *)sh) & KFD_IPC_HASH_TABLE_SIZE_MASK) ++ ++static int ipc_store_insert(void *val, void *sh, struct kfd_ipc_obj **ipc_obj) ++{ ++ struct kfd_ipc_obj *obj; ++ ++ obj = kmalloc(sizeof(*obj), GFP_KERNEL); ++ if (!obj) ++ return -ENOMEM; ++ ++ /* The initial ref belongs to the allocator process. ++ * The IPC object store itself does not hold a ref since ++ * there is no specific moment in time where that ref should ++ * be dropped, except "when there are no more userspace processes ++ * holding a ref to the object". Therefore the removal from IPC ++ * storage happens at ipc_obj release time. ++ */ ++ kref_init(&obj->ref); ++ obj->data = val; ++ get_random_bytes(obj->share_handle, sizeof(obj->share_handle)); ++ ++ memcpy(sh, obj->share_handle, sizeof(obj->share_handle)); ++ ++ mutex_lock(&kfd_ipc_handles.lock); ++ hlist_add_head(&obj->node, ++ &kfd_ipc_handles.handles[HANDLE_TO_KEY(obj->share_handle)]); ++ mutex_unlock(&kfd_ipc_handles.lock); ++ ++ if (ipc_obj) ++ *ipc_obj = obj; ++ ++ return 0; ++} ++ ++static void ipc_obj_release(struct kref *r) ++{ ++ struct kfd_ipc_obj *obj; ++ ++ obj = container_of(r, struct kfd_ipc_obj, ref); ++ ++ mutex_lock(&kfd_ipc_handles.lock); ++ hash_del(&obj->node); ++ mutex_unlock(&kfd_ipc_handles.lock); ++ ++ dma_buf_put(obj->data); ++ kfree(obj); ++} ++ ++void ipc_obj_get(struct kfd_ipc_obj *obj) ++{ ++ kref_get(&obj->ref); ++} ++ ++void ipc_obj_put(struct kfd_ipc_obj **obj) ++{ ++ kref_put(&(*obj)->ref, ipc_obj_release); ++ *obj = NULL; ++} ++ ++int kfd_ipc_init(void) ++{ ++ mutex_init(&kfd_ipc_handles.lock); ++ hash_init(kfd_ipc_handles.handles); ++ return 0; ++} ++ ++static int kfd_import_dmabuf_create_kfd_bo(struct kfd_dev *dev, ++ struct kfd_process *p, ++ uint32_t gpu_id, struct dma_buf *dmabuf, ++ uint64_t va_addr, uint64_t *handle, ++ uint64_t *mmap_offset, ++ struct kfd_ipc_obj *ipc_obj) ++{ ++ int r; ++ void *mem; ++ uint64_t size; ++ int idr_handle; ++ struct kfd_process_device *pdd = NULL; ++ ++ if (!handle) ++ return -EINVAL; ++ ++ if (!dev) ++ return -EINVAL; ++ ++ mutex_lock(&p->mutex); ++ ++ pdd = kfd_bind_process_to_device(dev, p); ++ if (IS_ERR(pdd)) { ++ r = PTR_ERR(pdd); ++ goto err_unlock; ++ } ++ ++ r = amdgpu_amdkfd_gpuvm_import_dmabuf(dev->kgd, dmabuf, ++ va_addr, pdd->vm, ++ (struct kgd_mem **)&mem, &size, ++ mmap_offset); ++ if (r) ++ goto err_unlock; ++ ++ idr_handle = kfd_process_device_create_obj_handle(pdd, mem, ++ va_addr, size, 0, 0, ++ ipc_obj); ++ if (idr_handle < 0) { ++ r = -EFAULT; ++ goto err_free; ++ } ++ ++ mutex_unlock(&p->mutex); ++ ++ *handle = MAKE_HANDLE(gpu_id, idr_handle); ++ ++ return 0; ++ ++err_free: ++ amdgpu_amdkfd_gpuvm_free_memory_of_gpu(dev->kgd, (struct kgd_mem *)mem); ++err_unlock: ++ mutex_unlock(&p->mutex); ++ return r; ++} ++ ++int kfd_ipc_import_dmabuf(struct kfd_dev *dev, ++ struct kfd_process *p, ++ uint32_t gpu_id, int dmabuf_fd, ++ uint64_t va_addr, uint64_t *handle, ++ uint64_t *mmap_offset) ++{ ++ int r; ++ struct dma_buf *dmabuf = dma_buf_get(dmabuf_fd); ++ ++ if (!dmabuf) ++ return -EINVAL; ++ ++ r = kfd_import_dmabuf_create_kfd_bo(dev, p, gpu_id, dmabuf, ++ va_addr, handle, mmap_offset, ++ NULL); ++ dma_buf_put(dmabuf); ++ return r; ++} ++ ++int kfd_ipc_import_handle(struct kfd_dev *dev, struct kfd_process *p, ++ uint32_t gpu_id, uint32_t *share_handle, ++ uint64_t va_addr, uint64_t *handle, ++ uint64_t *mmap_offset) ++{ ++ int r; ++ struct kfd_ipc_obj *entry, *found = NULL; ++ ++ mutex_lock(&kfd_ipc_handles.lock); ++ /* Convert the user provided handle to hash key and search only in that ++ * bucket ++ */ ++ hlist_for_each_entry(entry, ++ &kfd_ipc_handles.handles[HANDLE_TO_KEY(share_handle)], node) { ++ if (!memcmp(entry->share_handle, share_handle, ++ sizeof(entry->share_handle))) { ++ found = entry; ++ break; ++ } ++ } ++ mutex_unlock(&kfd_ipc_handles.lock); ++ ++ if (!found) ++ return -EINVAL; ++ ipc_obj_get(found); ++ ++ pr_debug("Found ipc_dma_buf: %p\n", found->data); ++ ++ r = kfd_import_dmabuf_create_kfd_bo(dev, p, gpu_id, found->data, ++ va_addr, handle, mmap_offset, ++ found); ++ if (r) ++ goto error_unref; ++ ++ return r; ++ ++error_unref: ++ ipc_obj_put(&found); ++ return r; ++} ++ ++int kfd_ipc_export_as_handle(struct kfd_dev *dev, struct kfd_process *p, ++ uint64_t handle, uint32_t *ipc_handle) ++{ ++ struct kfd_process_device *pdd = NULL; ++ struct kfd_ipc_obj *obj; ++ struct kfd_bo *kfd_bo = NULL; ++ struct dma_buf *dmabuf; ++ int r; ++ ++ if (!dev || !ipc_handle) ++ return -EINVAL; ++ ++ mutex_lock(&p->mutex); ++ pdd = kfd_bind_process_to_device(dev, p); ++ if (IS_ERR(pdd)) { ++ mutex_unlock(&p->mutex); ++ pr_err("Failed to get pdd\n"); ++ return PTR_ERR(pdd); ++ } ++ ++ kfd_bo = kfd_process_device_find_bo(pdd, GET_IDR_HANDLE(handle)); ++ mutex_unlock(&p->mutex); ++ ++ if (!kfd_bo) { ++ pr_err("Failed to get bo"); ++ return -EINVAL; ++ } ++ if (kfd_bo->kfd_ipc_obj) { ++ memcpy(ipc_handle, kfd_bo->kfd_ipc_obj->share_handle, ++ sizeof(kfd_bo->kfd_ipc_obj->share_handle)); ++ return 0; ++ } ++ ++ r = amdgpu_amdkfd_gpuvm_export_dmabuf(dev->kgd, pdd->vm, ++ (struct kgd_mem *)kfd_bo->mem, ++ &dmabuf); ++ if (r) ++ return r; ++ ++ r = ipc_store_insert(dmabuf, ipc_handle, &obj); ++ if (r) ++ return r; ++ ++ kfd_bo->kfd_ipc_obj = obj; ++ ++ return r; ++} +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_ipc.h b/drivers/gpu/drm/amd/amdkfd/kfd_ipc.h +new file mode 100644 +index 000000000000..9ee8627b88b0 +--- /dev/null ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_ipc.h +@@ -0,0 +1,51 @@ ++/* ++ * Copyright 2014 Advanced Micro Devices, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR ++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ * ++ */ ++ ++#ifndef KFD_IPC_H_ ++#define KFD_IPC_H_ ++ ++#include <linux/types.h> ++#include "kfd_priv.h" ++ ++struct kfd_ipc_obj { ++ struct hlist_node node; ++ struct kref ref; ++ void *data; ++ uint32_t share_handle[4]; ++}; ++ ++int kfd_ipc_import_handle(struct kfd_dev *dev, struct kfd_process *p, ++ uint32_t gpu_id, uint32_t *share_handle, ++ uint64_t va_addr, uint64_t *handle, ++ uint64_t *mmap_offset); ++int kfd_ipc_import_dmabuf(struct kfd_dev *kfd, struct kfd_process *p, ++ uint32_t gpu_id, int dmabuf_fd, ++ uint64_t va_addr, uint64_t *handle, ++ uint64_t *mmap_offset); ++int kfd_ipc_export_as_handle(struct kfd_dev *dev, struct kfd_process *p, ++ uint64_t handle, uint32_t *ipc_handle); ++ ++void ipc_obj_get(struct kfd_ipc_obj *obj); ++void ipc_obj_put(struct kfd_ipc_obj **obj); ++ ++#endif /* KFD_IPC_H_ */ +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c +index f1596881f20a..3c4aef0ed20d 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c +@@ -58,9 +58,10 @@ static bool initialize(struct kernel_queue *kq, struct kfd_dev *dev, + kq->nop_packet = nop.u32all; + switch (type) { + case KFD_QUEUE_TYPE_DIQ: ++ kq->mqd_mgr = dev->dqm->mqd_mgrs[KFD_MQD_TYPE_DIQ]; ++ break; + case KFD_QUEUE_TYPE_HIQ: +- kq->mqd_mgr = dev->dqm->ops.get_mqd_manager(dev->dqm, +- KFD_MQD_TYPE_HIQ); ++ kq->mqd_mgr = dev->dqm->mqd_mgrs[KFD_MQD_TYPE_HIQ]; + break; + default: + pr_err("Invalid queue type %d\n", type); +@@ -265,6 +266,39 @@ static int acquire_packet_buffer(struct kernel_queue *kq, + return -ENOMEM; + } + ++static int acquire_inline_ib(struct kernel_queue *kq, ++ size_t size_in_dwords, ++ unsigned int **buffer_ptr, ++ uint64_t *gpu_addr) ++{ ++ int ret; ++ unsigned int *buf; ++ union PM4_MES_TYPE_3_HEADER nop; ++ ++ if (size_in_dwords >= (1 << 14)) ++ return -EINVAL; ++ ++ /* Allocate size_in_dwords on the ring, plus an extra dword ++ * for a NOP packet header ++ */ ++ ret = acquire_packet_buffer(kq, size_in_dwords + 1, &buf); ++ if (ret) ++ return ret; ++ ++ /* Build a NOP packet that contains the IB as "payload". */ ++ nop.u32all = 0; ++ nop.opcode = IT_NOP; ++ nop.count = size_in_dwords - 1; ++ nop.type = PM4_TYPE_3; ++ ++ *buf = nop.u32all; ++ *buffer_ptr = buf + 1; ++ *gpu_addr = kq->pq_gpu_addr + ((unsigned long)*buffer_ptr - ++ (unsigned long)kq->pq_kernel_addr); ++ ++ return 0; ++} ++ + static void submit_packet(struct kernel_queue *kq) + { + #ifdef DEBUG +@@ -304,6 +338,7 @@ struct kernel_queue *kernel_queue_init(struct kfd_dev *dev, + kq->ops.initialize = initialize; + kq->ops.uninitialize = uninitialize; + kq->ops.acquire_packet_buffer = acquire_packet_buffer; ++ kq->ops.acquire_inline_ib = acquire_inline_ib; + kq->ops.submit_packet = submit_packet; + kq->ops.rollback_packet = rollback_packet; + +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.h b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.h +index a7116a939029..384d7a37b343 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.h +@@ -42,6 +42,12 @@ + * pending write pointer to that location so subsequent calls to + * acquire_packet_buffer will get a correct write pointer + * ++ * @acquire_inline_ib: Returns a pointer to the location in the kernel ++ * queue ring buffer where the calling function can write an inline IB. It is ++ * Guaranteed that there is enough space for that IB. It also updates the ++ * pending write pointer to that location so subsequent calls to ++ * acquire_packet_buffer will get a correct write pointer ++ * + * @submit_packet: Update the write pointer and doorbell of a kernel queue. + * + * @sync_with_hw: Wait until the write pointer and the read pointer of a kernel +@@ -59,6 +65,10 @@ struct kernel_queue_ops { + int (*acquire_packet_buffer)(struct kernel_queue *kq, + size_t packet_size_in_dwords, + unsigned int **buffer_ptr); ++ int (*acquire_inline_ib)(struct kernel_queue *kq, ++ size_t packet_size_in_dwords, ++ unsigned int **buffer_ptr, ++ uint64_t *gpu_addr); + + void (*submit_packet)(struct kernel_queue *kq); + void (*rollback_packet)(struct kernel_queue *kq); +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c +index 33830b1a5a54..afb13f0633cc 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c +@@ -72,6 +72,7 @@ static int pm_map_process_v9(struct packet_manager *pm, + { + struct pm4_mes_map_process *packet; + uint64_t vm_page_table_base_addr = qpd->page_table_base; ++ struct kfd_dev *kfd = pm->dqm->dev; + + packet = (struct pm4_mes_map_process *)buffer; + memset(buffer, 0, sizeof(struct pm4_mes_map_process)); +@@ -87,6 +88,11 @@ static int pm_map_process_v9(struct packet_manager *pm, + packet->bitfields14.sdma_enable = 1; + packet->bitfields14.num_queues = (qpd->is_debug) ? 0 : qpd->queue_count; + ++ if (kfd->dqm->trap_debug_vmid) { ++ packet->bitfields2.debug_vmid = kfd->dqm->trap_debug_vmid; ++ packet->bitfields2.new_debug = 1; ++ } ++ + packet->sh_mem_config = qpd->sh_mem_config; + packet->sh_mem_bases = qpd->sh_mem_bases; + packet->sq_shader_tba_lo = lower_32_bits(qpd->tba_addr >> 8); +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_module.c b/drivers/gpu/drm/amd/amdkfd/kfd_module.c +index 0f3a15d7c24f..81cde3a34c14 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_module.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_module.c +@@ -97,15 +97,22 @@ static int kfd_init(void) + if (err < 0) + goto err_topology; + ++ err = kfd_ipc_init(); ++ if (err < 0) ++ goto err_ipc; ++ + err = kfd_process_create_wq(); + if (err < 0) + goto err_create_wq; + ++ kfd_init_peer_direct(); ++ + kfd_debugfs_init(); + + return 0; + + err_create_wq: ++err_ipc: + kfd_topology_shutdown(); + err_topology: + kfd_chardev_exit(); +@@ -116,6 +123,7 @@ static int kfd_init(void) + static void kfd_exit(void) + { + kfd_debugfs_fini(); ++ kfd_close_peer_direct(); + kfd_process_destroy_wq(); + kfd_topology_shutdown(); + kfd_chardev_exit(); +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c +index aed9b9b82213..cc04b362f510 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c +@@ -23,34 +23,74 @@ + + #include "kfd_mqd_manager.h" + #include "amdgpu_amdkfd.h" ++#include "kfd_device_queue_manager.h" + +-struct mqd_manager *mqd_manager_init(enum KFD_MQD_TYPE type, +- struct kfd_dev *dev) ++/* Mapping queue priority to pipe priority, indexed by queue priority */ ++int pipe_priority_map[] = { ++ KFD_PIPE_PRIORITY_CS_LOW, ++ KFD_PIPE_PRIORITY_CS_LOW, ++ KFD_PIPE_PRIORITY_CS_LOW, ++ KFD_PIPE_PRIORITY_CS_LOW, ++ KFD_PIPE_PRIORITY_CS_LOW, ++ KFD_PIPE_PRIORITY_CS_LOW, ++ KFD_PIPE_PRIORITY_CS_LOW, ++ KFD_PIPE_PRIORITY_CS_MEDIUM, ++ KFD_PIPE_PRIORITY_CS_MEDIUM, ++ KFD_PIPE_PRIORITY_CS_MEDIUM, ++ KFD_PIPE_PRIORITY_CS_MEDIUM, ++ KFD_PIPE_PRIORITY_CS_HIGH, ++ KFD_PIPE_PRIORITY_CS_HIGH, ++ KFD_PIPE_PRIORITY_CS_HIGH, ++ KFD_PIPE_PRIORITY_CS_HIGH, ++ KFD_PIPE_PRIORITY_CS_HIGH ++}; ++ ++struct kfd_mem_obj *allocate_hiq_mqd(struct kfd_dev *dev) + { +- switch (dev->device_info->asic_family) { +- case CHIP_KAVERI: +- return mqd_manager_init_cik(type, dev); +- case CHIP_HAWAII: +- return mqd_manager_init_cik_hawaii(type, dev); +- case CHIP_CARRIZO: +- return mqd_manager_init_vi(type, dev); +- case CHIP_TONGA: +- case CHIP_FIJI: +- case CHIP_POLARIS10: +- case CHIP_POLARIS11: +- case CHIP_POLARIS12: +- return mqd_manager_init_vi_tonga(type, dev); +- case CHIP_VEGA10: +- case CHIP_VEGA12: +- case CHIP_VEGA20: +- case CHIP_RAVEN: +- return mqd_manager_init_v9(type, dev); +- default: +- WARN(1, "Unexpected ASIC family %u", +- dev->device_info->asic_family); +- } ++ struct kfd_mem_obj *mqd_mem_obj = NULL; ++ ++ mqd_mem_obj = kzalloc(sizeof(struct kfd_mem_obj), GFP_KERNEL); ++ if (!mqd_mem_obj) ++ return NULL; ++ ++ mqd_mem_obj->gtt_mem = dev->dqm->hiq_sdma_mqd.gtt_mem; ++ mqd_mem_obj->gpu_addr = dev->dqm->hiq_sdma_mqd.gpu_addr; ++ mqd_mem_obj->cpu_ptr = dev->dqm->hiq_sdma_mqd.cpu_ptr; ++ ++ return mqd_mem_obj; ++} ++ ++struct kfd_mem_obj *allocate_sdma_mqd(struct kfd_dev *dev, ++ struct queue_properties *q) ++{ ++ struct kfd_mem_obj *mqd_mem_obj = NULL; ++ uint64_t offset; + +- return NULL; ++ mqd_mem_obj = kzalloc(sizeof(struct kfd_mem_obj), GFP_KERNEL); ++ if (!mqd_mem_obj) ++ return NULL; ++ ++ offset = (q->sdma_engine_id * ++ dev->device_info->num_sdma_queues_per_engine + ++ q->sdma_queue_id) * ++ dev->dqm->mqd_mgrs[KFD_MQD_TYPE_SDMA]->mqd_size; ++ ++ offset += dev->dqm->mqd_mgrs[KFD_MQD_TYPE_HIQ]->mqd_size; ++ ++ mqd_mem_obj->gtt_mem = (void *)((uint64_t)dev->dqm->hiq_sdma_mqd.gtt_mem ++ + offset); ++ mqd_mem_obj->gpu_addr = dev->dqm->hiq_sdma_mqd.gpu_addr + offset; ++ mqd_mem_obj->cpu_ptr = (uint32_t *)((uint64_t) ++ dev->dqm->hiq_sdma_mqd.cpu_ptr + offset); ++ ++ return mqd_mem_obj; ++} ++ ++void uninit_mqd_hiq_sdma(struct mqd_manager *mm, void *mqd, ++ struct kfd_mem_obj *mqd_mem_obj) ++{ ++ WARN_ON(!mqd_mem_obj->gtt_mem); ++ kfree(mqd_mem_obj); + } + + void mqd_symmetrically_map_cu_mask(struct mqd_manager *mm, +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.h b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.h +index f8261313ae7b..8a2d4aed39e1 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.h +@@ -62,7 +62,7 @@ + * per KFD_MQD_TYPE for each device. + * + */ +- ++extern int pipe_priority_map[]; + struct mqd_manager { + int (*init_mqd)(struct mqd_manager *mm, void **mqd, + struct kfd_mem_obj **mqd_mem_obj, uint64_t *gart_addr, +@@ -93,14 +93,24 @@ struct mqd_manager { + u32 *ctl_stack_used_size, + u32 *save_area_used_size); + ++ bool (*check_queue_active)(struct queue *q); ++ + #if defined(CONFIG_DEBUG_FS) + int (*debugfs_show_mqd)(struct seq_file *m, void *data); + #endif + + struct mutex mqd_mutex; + struct kfd_dev *dev; ++ uint32_t mqd_size; + }; + ++struct kfd_mem_obj *allocate_hiq_mqd(struct kfd_dev *dev); ++ ++struct kfd_mem_obj *allocate_sdma_mqd(struct kfd_dev *dev, ++ struct queue_properties *q); ++void uninit_mqd_hiq_sdma(struct mqd_manager *mm, void *mqd, ++ struct kfd_mem_obj *mqd_mem_obj); ++ + void mqd_symmetrically_map_cu_mask(struct mqd_manager *mm, + const uint32_t *cu_mask, uint32_t cu_mask_count, + uint32_t *se_mask); +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c +index 47243165a082..379e72e9591c 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c +@@ -30,6 +30,7 @@ + #include "cik_regs.h" + #include "cik_structs.h" + #include "oss/oss_2_4_sh_mask.h" ++#include "gca/gfx_7_2_sh_mask.h" + + static inline struct cik_mqd *get_mqd(void *mqd) + { +@@ -41,6 +42,31 @@ static inline struct cik_sdma_rlc_registers *get_sdma_mqd(void *mqd) + return (struct cik_sdma_rlc_registers *)mqd; + } + ++static bool check_sdma_queue_active(struct queue *q) ++{ ++ uint32_t rptr, wptr; ++ struct cik_sdma_rlc_registers *m = get_sdma_mqd(q->mqd); ++ ++ rptr = m->sdma_rlc_rb_rptr; ++ wptr = m->sdma_rlc_rb_wptr; ++ pr_debug("rptr=%d, wptr=%d\n", rptr, wptr); ++ ++ return (rptr != wptr); ++} ++ ++static bool check_queue_active(struct queue *q) ++{ ++ uint32_t rptr, wptr; ++ struct cik_mqd *m = get_mqd(q->mqd); ++ ++ rptr = m->cp_hqd_pq_rptr; ++ wptr = m->cp_hqd_pq_wptr; ++ ++ pr_debug("rptr=%d, wptr=%d\n", rptr, wptr); ++ ++ return (rptr != wptr); ++} ++ + static void update_cu_mask(struct mqd_manager *mm, void *mqd, + struct queue_properties *q) + { +@@ -66,6 +92,28 @@ static void update_cu_mask(struct mqd_manager *mm, void *mqd, + m->compute_static_thread_mgmt_se3); + } + ++static void set_priority(struct cik_mqd *m, struct queue_properties *q) ++{ ++ m->cp_hqd_pipe_priority = pipe_priority_map[q->priority]; ++ m->cp_hqd_queue_priority = q->priority; ++} ++ ++static struct kfd_mem_obj *allocate_mqd(struct kfd_dev *kfd, ++ struct queue_properties *q) ++{ ++ struct kfd_mem_obj *mqd_mem_obj; ++ ++ if (q->type == KFD_QUEUE_TYPE_HIQ) ++ return allocate_hiq_mqd(kfd); ++ ++ if (kfd_gtt_sa_allocate(kfd, sizeof(struct cik_mqd), ++ &mqd_mem_obj)) ++ return NULL; ++ ++ return mqd_mem_obj; ++} ++ ++ + static int init_mqd(struct mqd_manager *mm, void **mqd, + struct kfd_mem_obj **mqd_mem_obj, uint64_t *gart_addr, + struct queue_properties *q) +@@ -73,11 +121,10 @@ static int init_mqd(struct mqd_manager *mm, void **mqd, + uint64_t addr; + struct cik_mqd *m; + int retval; ++ struct kfd_dev *kfd = mm->dev; + +- retval = kfd_gtt_sa_allocate(mm->dev, sizeof(struct cik_mqd), +- mqd_mem_obj); +- +- if (retval != 0) ++ *mqd_mem_obj = allocate_mqd(kfd, q); ++ if (!*mqd_mem_obj) + return -ENOMEM; + + m = (struct cik_mqd *) (*mqd_mem_obj)->cpu_ptr; +@@ -116,8 +163,7 @@ static int init_mqd(struct mqd_manager *mm, void **mqd, + * 1 = CS_MEDIUM (typically between HP3D and GFX + * 2 = CS_HIGH (typically above HP3D) + */ +- m->cp_hqd_pipe_priority = 1; +- m->cp_hqd_queue_priority = 15; ++ set_priority(m, q); + + if (q->format == KFD_QUEUE_FORMAT_AQL) + m->cp_hqd_iq_rptr = AQL_ENABLE; +@@ -136,12 +182,10 @@ static int init_mqd_sdma(struct mqd_manager *mm, void **mqd, + { + int retval; + struct cik_sdma_rlc_registers *m; ++ struct kfd_dev *dev = mm->dev; + +- retval = kfd_gtt_sa_allocate(mm->dev, +- sizeof(struct cik_sdma_rlc_registers), +- mqd_mem_obj); +- +- if (retval != 0) ++ *mqd_mem_obj = allocate_sdma_mqd(dev, q); ++ if (!*mqd_mem_obj) + return -ENOMEM; + + m = (struct cik_sdma_rlc_registers *) (*mqd_mem_obj)->cpu_ptr; +@@ -163,11 +207,6 @@ static void uninit_mqd(struct mqd_manager *mm, void *mqd, + kfd_gtt_sa_free(mm->dev, mqd_mem_obj); + } + +-static void uninit_mqd_sdma(struct mqd_manager *mm, void *mqd, +- struct kfd_mem_obj *mqd_mem_obj) +-{ +- kfd_gtt_sa_free(mm->dev, mqd_mem_obj); +-} + + static int load_mqd(struct mqd_manager *mm, void *mqd, uint32_t pipe_id, + uint32_t queue_id, struct queue_properties *p, +@@ -220,8 +259,12 @@ static int __update_mqd(struct mqd_manager *mm, void *mqd, + + if (q->format == KFD_QUEUE_FORMAT_AQL) + m->cp_hqd_pq_control |= NO_UPDATE_RPTR; ++ if (priv_cp_queues) ++ m->cp_hqd_pq_control |= ++ 1 << CP_HQD_PQ_CONTROL__PRIV_STATE__SHIFT; + + update_cu_mask(mm, mqd, q); ++ set_priority(m, q); + + q->is_active = (q->queue_size > 0 && + q->queue_address != 0 && +@@ -365,8 +408,7 @@ static int init_mqd_hiq(struct mqd_manager *mm, void **mqd, + * 1 = CS_MEDIUM (typically between HP3D and GFX + * 2 = CS_HIGH (typically above HP3D) + */ +- m->cp_hqd_pipe_priority = 1; +- m->cp_hqd_queue_priority = 15; ++ set_priority(m, q); + + *mqd = m; + if (gart_addr) +@@ -405,6 +447,7 @@ static int update_mqd_hiq(struct mqd_manager *mm, void *mqd, + q->queue_percent > 0 && + !q->is_evicted); + ++ set_priority(m, q); + return 0; + } + +@@ -450,28 +493,47 @@ struct mqd_manager *mqd_manager_init_cik(enum KFD_MQD_TYPE type, + mqd->update_mqd = update_mqd; + mqd->destroy_mqd = destroy_mqd; + mqd->is_occupied = is_occupied; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct cik_mqd); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd; + #endif + break; + case KFD_MQD_TYPE_HIQ: ++ mqd->init_mqd = init_mqd_hiq; ++ mqd->uninit_mqd = uninit_mqd_hiq_sdma; ++ mqd->load_mqd = load_mqd; ++ mqd->update_mqd = update_mqd_hiq; ++ mqd->destroy_mqd = destroy_mqd; ++ mqd->is_occupied = is_occupied; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct cik_mqd); ++#if defined(CONFIG_DEBUG_FS) ++ mqd->debugfs_show_mqd = debugfs_show_mqd; ++#endif ++ break; ++ case KFD_MQD_TYPE_DIQ: + mqd->init_mqd = init_mqd_hiq; + mqd->uninit_mqd = uninit_mqd; + mqd->load_mqd = load_mqd; + mqd->update_mqd = update_mqd_hiq; + mqd->destroy_mqd = destroy_mqd; + mqd->is_occupied = is_occupied; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct cik_mqd); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd; + #endif + break; + case KFD_MQD_TYPE_SDMA: + mqd->init_mqd = init_mqd_sdma; +- mqd->uninit_mqd = uninit_mqd_sdma; ++ mqd->uninit_mqd = uninit_mqd_hiq_sdma; + mqd->load_mqd = load_mqd_sdma; + mqd->update_mqd = update_mqd_sdma; + mqd->destroy_mqd = destroy_mqd_sdma; + mqd->is_occupied = is_occupied_sdma; ++ mqd->check_queue_active = check_sdma_queue_active; ++ mqd->mqd_size = sizeof(struct cik_sdma_rlc_registers); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd_sdma; + #endif +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c +index 9dbba609450e..4ca984653ae6 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_v9.c +@@ -42,6 +42,49 @@ static inline struct v9_sdma_mqd *get_sdma_mqd(void *mqd) + return (struct v9_sdma_mqd *)mqd; + } + ++static bool check_sdma_queue_active(struct queue *q) ++{ ++ uint32_t rptr, wptr; ++ uint32_t rptr_hi, wptr_hi; ++ struct v9_sdma_mqd *m = get_sdma_mqd(q->mqd); ++ ++ rptr = m->sdmax_rlcx_rb_rptr; ++ wptr = m->sdmax_rlcx_rb_wptr; ++ rptr_hi = m->sdmax_rlcx_rb_rptr_hi; ++ wptr_hi = m->sdmax_rlcx_rb_wptr_hi; ++ pr_debug("rptr=%d, wptr=%d\n", rptr, wptr); ++ pr_debug("rptr_hi=%d, wptr_hi=%d\n", rptr_hi, wptr_hi); ++ ++ return (rptr != wptr || rptr_hi != wptr_hi); ++} ++ ++static bool check_queue_active(struct queue *q) ++{ ++ uint32_t rptr, wptr; ++ uint32_t cntl_stack_offset, cntl_stack_size; ++ struct v9_mqd *m = get_mqd(q->mqd); ++ ++ rptr = m->cp_hqd_pq_rptr; ++ wptr = m->cp_hqd_pq_wptr_lo % q->properties.queue_size; ++ cntl_stack_offset = m->cp_hqd_cntl_stack_offset; ++ cntl_stack_size = m->cp_hqd_cntl_stack_size; ++ ++ pr_debug("rptr=%d, wptr=%d\n", rptr, wptr); ++ pr_debug("m->cp_hqd_cntl_stack_offset=0x%08x\n", cntl_stack_offset); ++ pr_debug("m->cp_hqd_cntl_stack_size=0x%08x\n", cntl_stack_size); ++ ++ if ((rptr == 0 && wptr == 0) || ++ cntl_stack_offset == 0xffffffff || ++ cntl_stack_size > 0x5000) ++ return false; ++ ++ /* Process is idle if both conditions are meet: ++ * queue's rptr equals to wptr ++ * control stack is empty, cntl_stack_offset = cntl_stack_size ++ */ ++ return (rptr != wptr || cntl_stack_offset != cntl_stack_size); ++} ++ + static void update_cu_mask(struct mqd_manager *mm, void *mqd, + struct queue_properties *q) + { +@@ -67,33 +110,60 @@ static void update_cu_mask(struct mqd_manager *mm, void *mqd, + m->compute_static_thread_mgmt_se3); + } + +-static int init_mqd(struct mqd_manager *mm, void **mqd, +- struct kfd_mem_obj **mqd_mem_obj, uint64_t *gart_addr, +- struct queue_properties *q) ++static void set_priority(struct v9_mqd *m, struct queue_properties *q) ++{ ++ m->cp_hqd_pipe_priority = pipe_priority_map[q->priority]; ++ m->cp_hqd_queue_priority = q->priority; ++} ++ ++static struct kfd_mem_obj *allocate_mqd(struct kfd_dev *kfd, ++ struct queue_properties *q) + { + int retval; +- uint64_t addr; +- struct v9_mqd *m; +- struct kfd_dev *kfd = mm->dev; ++ struct kfd_mem_obj *mqd_mem_obj = NULL; ++ ++ if (q->type == KFD_QUEUE_TYPE_HIQ) ++ return allocate_hiq_mqd(kfd); + + /* From V9, for CWSR, the control stack is located on the next page + * boundary after the mqd, we will use the gtt allocation function + * instead of sub-allocation function. + */ + if (kfd->cwsr_enabled && (q->type == KFD_QUEUE_TYPE_COMPUTE)) { +- *mqd_mem_obj = kzalloc(sizeof(struct kfd_mem_obj), GFP_KERNEL); +- if (!*mqd_mem_obj) +- return -ENOMEM; ++ mqd_mem_obj = kzalloc(sizeof(struct kfd_mem_obj), GFP_NOIO); ++ if (!mqd_mem_obj) ++ return NULL; + retval = amdgpu_amdkfd_alloc_gtt_mem(kfd->kgd, + ALIGN(q->ctl_stack_size, PAGE_SIZE) + + ALIGN(sizeof(struct v9_mqd), PAGE_SIZE), +- &((*mqd_mem_obj)->gtt_mem), +- &((*mqd_mem_obj)->gpu_addr), +- (void *)&((*mqd_mem_obj)->cpu_ptr), true); +- } else +- retval = kfd_gtt_sa_allocate(mm->dev, sizeof(struct v9_mqd), +- mqd_mem_obj); +- if (retval != 0) ++ &(mqd_mem_obj->gtt_mem), ++ &(mqd_mem_obj->gpu_addr), ++ (void *)&(mqd_mem_obj->cpu_ptr), true); ++ } else { ++ retval = kfd_gtt_sa_allocate(kfd, sizeof(struct v9_mqd), ++ &mqd_mem_obj); ++ } ++ ++ if (retval) { ++ kfree(mqd_mem_obj); ++ return NULL; ++ } ++ ++ return mqd_mem_obj; ++ ++} ++ ++static int init_mqd(struct mqd_manager *mm, void **mqd, ++ struct kfd_mem_obj **mqd_mem_obj, uint64_t *gart_addr, ++ struct queue_properties *q) ++{ ++ int retval; ++ uint64_t addr; ++ struct v9_mqd *m; ++ struct kfd_dev *kfd = mm->dev; ++ ++ *mqd_mem_obj = allocate_mqd(kfd, q); ++ if (!*mqd_mem_obj) + return -ENOMEM; + + m = (struct v9_mqd *) (*mqd_mem_obj)->cpu_ptr; +@@ -120,9 +190,6 @@ static int init_mqd(struct mqd_manager *mm, void **mqd, + 1 << CP_HQD_QUANTUM__QUANTUM_SCALE__SHIFT | + 10 << CP_HQD_QUANTUM__QUANTUM_DURATION__SHIFT; + +- m->cp_hqd_pipe_priority = 1; +- m->cp_hqd_queue_priority = 15; +- + if (q->format == KFD_QUEUE_FORMAT_AQL) { + m->cp_hqd_aql_control = + 1 << CP_HQD_AQL_CONTROL__CONTROL0__SHIFT; +@@ -221,10 +288,14 @@ static int update_mqd(struct mqd_manager *mm, void *mqd, + m->cp_hqd_pq_doorbell_control |= 1 << + CP_HQD_PQ_DOORBELL_CONTROL__DOORBELL_BIF_DROP__SHIFT; + } ++ if (priv_cp_queues) ++ m->cp_hqd_pq_control |= ++ 1 << CP_HQD_PQ_CONTROL__PRIV_STATE__SHIFT; + if (mm->dev->cwsr_enabled && q->ctx_save_restore_area_address) + m->cp_hqd_ctx_save_control = 0; + + update_cu_mask(mm, mqd, q); ++ set_priority(m, q); + + q->is_active = (q->queue_size > 0 && + q->queue_address != 0 && +@@ -281,7 +352,8 @@ static int get_wave_state(struct mqd_manager *mm, void *mqd, + + *ctl_stack_used_size = m->cp_hqd_cntl_stack_size - + m->cp_hqd_cntl_stack_offset; +- *save_area_used_size = m->cp_hqd_wg_state_offset; ++ *save_area_used_size = m->cp_hqd_wg_state_offset - ++ m->cp_hqd_cntl_stack_size; + + if (copy_to_user(ctl_stack, mqd_ctl_stack, m->cp_hqd_cntl_stack_size)) + return -EFAULT; +@@ -328,13 +400,10 @@ static int init_mqd_sdma(struct mqd_manager *mm, void **mqd, + { + int retval; + struct v9_sdma_mqd *m; ++ struct kfd_dev *dev = mm->dev; + +- +- retval = kfd_gtt_sa_allocate(mm->dev, +- sizeof(struct v9_sdma_mqd), +- mqd_mem_obj); +- +- if (retval != 0) ++ *mqd_mem_obj = allocate_sdma_mqd(dev, q); ++ if (!*mqd_mem_obj) + return -ENOMEM; + + m = (struct v9_sdma_mqd *) (*mqd_mem_obj)->cpu_ptr; +@@ -350,12 +419,6 @@ static int init_mqd_sdma(struct mqd_manager *mm, void **mqd, + return retval; + } + +-static void uninit_mqd_sdma(struct mqd_manager *mm, void *mqd, +- struct kfd_mem_obj *mqd_mem_obj) +-{ +- kfd_gtt_sa_free(mm->dev, mqd_mem_obj); +-} +- + static int load_mqd_sdma(struct mqd_manager *mm, void *mqd, + uint32_t pipe_id, uint32_t queue_id, + struct queue_properties *p, struct mm_struct *mms) +@@ -459,28 +522,47 @@ struct mqd_manager *mqd_manager_init_v9(enum KFD_MQD_TYPE type, + mqd->destroy_mqd = destroy_mqd; + mqd->is_occupied = is_occupied; + mqd->get_wave_state = get_wave_state; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct v9_mqd); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd; + #endif + break; + case KFD_MQD_TYPE_HIQ: ++ mqd->init_mqd = init_mqd_hiq; ++ mqd->uninit_mqd = uninit_mqd_hiq_sdma; ++ mqd->load_mqd = load_mqd; ++ mqd->update_mqd = update_mqd_hiq; ++ mqd->destroy_mqd = destroy_mqd; ++ mqd->is_occupied = is_occupied; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct v9_mqd); ++#if defined(CONFIG_DEBUG_FS) ++ mqd->debugfs_show_mqd = debugfs_show_mqd; ++#endif ++ break; ++ case KFD_MQD_TYPE_DIQ: + mqd->init_mqd = init_mqd_hiq; + mqd->uninit_mqd = uninit_mqd; + mqd->load_mqd = load_mqd; + mqd->update_mqd = update_mqd_hiq; + mqd->destroy_mqd = destroy_mqd; + mqd->is_occupied = is_occupied; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct v9_mqd); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd; + #endif + break; + case KFD_MQD_TYPE_SDMA: + mqd->init_mqd = init_mqd_sdma; +- mqd->uninit_mqd = uninit_mqd_sdma; ++ mqd->uninit_mqd = uninit_mqd_hiq_sdma; + mqd->load_mqd = load_mqd_sdma; + mqd->update_mqd = update_mqd_sdma; + mqd->destroy_mqd = destroy_mqd_sdma; + mqd->is_occupied = is_occupied_sdma; ++ mqd->check_queue_active = check_sdma_queue_active; ++ mqd->mqd_size = sizeof(struct v9_sdma_mqd); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd_sdma; + #endif +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c +index 6469b3456f00..1ec1a3c06af3 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c +@@ -31,6 +31,7 @@ + #include "gca/gfx_8_0_sh_mask.h" + #include "gca/gfx_8_0_enum.h" + #include "oss/oss_3_0_sh_mask.h" ++ + #define CP_MQD_CONTROL__PRIV_STATE__SHIFT 0x8 + + static inline struct vi_mqd *get_mqd(void *mqd) +@@ -43,6 +44,45 @@ static inline struct vi_sdma_mqd *get_sdma_mqd(void *mqd) + return (struct vi_sdma_mqd *)mqd; + } + ++static bool check_sdma_queue_active(struct queue *q) ++{ ++ uint32_t rptr, wptr; ++ struct vi_sdma_mqd *m = get_sdma_mqd(q->mqd); ++ ++ rptr = m->sdmax_rlcx_rb_rptr; ++ wptr = m->sdmax_rlcx_rb_wptr; ++ pr_debug("rptr=%d, wptr=%d\n", rptr, wptr); ++ ++ return (rptr != wptr); ++} ++ ++static bool check_queue_active(struct queue *q) ++{ ++ uint32_t rptr, wptr; ++ uint32_t cntl_stack_offset, cntl_stack_size; ++ struct vi_mqd *m = get_mqd(q->mqd); ++ ++ rptr = m->cp_hqd_pq_rptr; ++ wptr = m->cp_hqd_pq_wptr; ++ cntl_stack_offset = m->cp_hqd_cntl_stack_offset; ++ cntl_stack_size = m->cp_hqd_cntl_stack_size; ++ ++ pr_debug("rptr=%d, wptr=%d\n", rptr, wptr); ++ pr_debug("m->cp_hqd_cntl_stack_offset=0x%08x\n", cntl_stack_offset); ++ pr_debug("m->cp_hqd_cntl_stack_size=0x%08x\n", cntl_stack_size); ++ ++ if ((rptr == 0 && wptr == 0) || ++ cntl_stack_offset == 0xffffffff || ++ cntl_stack_size > 0x5000) ++ return false; ++ ++ /* Process is idle if both conditions are meet: ++ * queue's rptr equals to wptr ++ * control stack is empty, cntl_stack_offset = cntl_stack_size ++ */ ++ return (rptr != wptr || cntl_stack_offset != cntl_stack_size); ++} ++ + static void update_cu_mask(struct mqd_manager *mm, void *mqd, + struct queue_properties *q) + { +@@ -68,6 +108,27 @@ static void update_cu_mask(struct mqd_manager *mm, void *mqd, + m->compute_static_thread_mgmt_se3); + } + ++static void set_priority(struct vi_mqd *m, struct queue_properties *q) ++{ ++ m->cp_hqd_pipe_priority = pipe_priority_map[q->priority]; ++ m->cp_hqd_queue_priority = q->priority; ++} ++ ++static struct kfd_mem_obj *allocate_mqd(struct kfd_dev *kfd, ++ struct queue_properties *q) ++{ ++ struct kfd_mem_obj *mqd_mem_obj; ++ ++ if (q->type == KFD_QUEUE_TYPE_HIQ) ++ return allocate_hiq_mqd(kfd); ++ ++ if (kfd_gtt_sa_allocate(kfd, sizeof(struct vi_mqd), ++ &mqd_mem_obj)) ++ return NULL; ++ ++ return mqd_mem_obj; ++} ++ + static int init_mqd(struct mqd_manager *mm, void **mqd, + struct kfd_mem_obj **mqd_mem_obj, uint64_t *gart_addr, + struct queue_properties *q) +@@ -75,10 +136,10 @@ static int init_mqd(struct mqd_manager *mm, void **mqd, + int retval; + uint64_t addr; + struct vi_mqd *m; ++ struct kfd_dev *kfd = mm->dev; + +- retval = kfd_gtt_sa_allocate(mm->dev, sizeof(struct vi_mqd), +- mqd_mem_obj); +- if (retval != 0) ++ *mqd_mem_obj = allocate_mqd(kfd, q); ++ if (!*mqd_mem_obj) + return -ENOMEM; + + m = (struct vi_mqd *) (*mqd_mem_obj)->cpu_ptr; +@@ -106,9 +167,7 @@ static int init_mqd(struct mqd_manager *mm, void **mqd, + 1 << CP_HQD_QUANTUM__QUANTUM_SCALE__SHIFT | + 10 << CP_HQD_QUANTUM__QUANTUM_DURATION__SHIFT; + +- m->cp_hqd_pipe_priority = 1; +- m->cp_hqd_queue_priority = 15; +- ++ set_priority(m, q); + m->cp_hqd_eop_rptr = 1 << CP_HQD_EOP_RPTR__INIT_FETCHER__SHIFT; + + if (q->format == KFD_QUEUE_FORMAT_AQL) +@@ -215,13 +274,16 @@ static int __update_mqd(struct mqd_manager *mm, void *mqd, + m->cp_hqd_pq_control |= CP_HQD_PQ_CONTROL__NO_UPDATE_RPTR_MASK | + 2 << CP_HQD_PQ_CONTROL__SLOT_BASED_WPTR__SHIFT; + } +- ++ if (priv_cp_queues) ++ m->cp_hqd_pq_control |= ++ 1 << CP_HQD_PQ_CONTROL__PRIV_STATE__SHIFT; + if (mm->dev->cwsr_enabled && q->ctx_save_restore_area_address) + m->cp_hqd_ctx_save_control = + atc_bit << CP_HQD_CTX_SAVE_CONTROL__ATC__SHIFT | + mtype << CP_HQD_CTX_SAVE_CONTROL__MTYPE__SHIFT; + + update_cu_mask(mm, mqd, q); ++ set_priority(m, q); + + q->is_active = (q->queue_size > 0 && + q->queue_address != 0 && +@@ -329,13 +391,10 @@ static int init_mqd_sdma(struct mqd_manager *mm, void **mqd, + { + int retval; + struct vi_sdma_mqd *m; ++ struct kfd_dev *dev = mm->dev; + +- +- retval = kfd_gtt_sa_allocate(mm->dev, +- sizeof(struct vi_sdma_mqd), +- mqd_mem_obj); +- +- if (retval != 0) ++ *mqd_mem_obj = allocate_sdma_mqd(dev, q); ++ if (!*mqd_mem_obj) + return -ENOMEM; + + m = (struct vi_sdma_mqd *) (*mqd_mem_obj)->cpu_ptr; +@@ -343,7 +402,7 @@ static int init_mqd_sdma(struct mqd_manager *mm, void **mqd, + memset(m, 0, sizeof(struct vi_sdma_mqd)); + + *mqd = m; +- if (gart_addr != NULL) ++ if (gart_addr) + *gart_addr = (*mqd_mem_obj)->gpu_addr; + + retval = mm->update_mqd(mm, m, q); +@@ -351,12 +410,6 @@ static int init_mqd_sdma(struct mqd_manager *mm, void **mqd, + return retval; + } + +-static void uninit_mqd_sdma(struct mqd_manager *mm, void *mqd, +- struct kfd_mem_obj *mqd_mem_obj) +-{ +- kfd_gtt_sa_free(mm->dev, mqd_mem_obj); +-} +- + static int load_mqd_sdma(struct mqd_manager *mm, void *mqd, + uint32_t pipe_id, uint32_t queue_id, + struct queue_properties *p, struct mm_struct *mms) +@@ -459,28 +512,47 @@ struct mqd_manager *mqd_manager_init_vi(enum KFD_MQD_TYPE type, + mqd->destroy_mqd = destroy_mqd; + mqd->is_occupied = is_occupied; + mqd->get_wave_state = get_wave_state; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct vi_mqd); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd; + #endif + break; + case KFD_MQD_TYPE_HIQ: ++ mqd->init_mqd = init_mqd_hiq; ++ mqd->uninit_mqd = uninit_mqd_hiq_sdma; ++ mqd->load_mqd = load_mqd; ++ mqd->update_mqd = update_mqd_hiq; ++ mqd->destroy_mqd = destroy_mqd; ++ mqd->is_occupied = is_occupied; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct vi_mqd); ++#if defined(CONFIG_DEBUG_FS) ++ mqd->debugfs_show_mqd = debugfs_show_mqd; ++#endif ++ break; ++ case KFD_MQD_TYPE_DIQ: + mqd->init_mqd = init_mqd_hiq; + mqd->uninit_mqd = uninit_mqd; + mqd->load_mqd = load_mqd; + mqd->update_mqd = update_mqd_hiq; + mqd->destroy_mqd = destroy_mqd; + mqd->is_occupied = is_occupied; ++ mqd->check_queue_active = check_queue_active; ++ mqd->mqd_size = sizeof(struct vi_mqd); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd; + #endif + break; + case KFD_MQD_TYPE_SDMA: + mqd->init_mqd = init_mqd_sdma; +- mqd->uninit_mqd = uninit_mqd_sdma; ++ mqd->uninit_mqd = uninit_mqd_hiq_sdma; + mqd->load_mqd = load_mqd_sdma; + mqd->update_mqd = update_mqd_sdma; + mqd->destroy_mqd = destroy_mqd_sdma; + mqd->is_occupied = is_occupied_sdma; ++ mqd->check_queue_active = check_sdma_queue_active; ++ mqd->mqd_size = sizeof(struct vi_sdma_mqd); + #if defined(CONFIG_DEBUG_FS) + mqd->debugfs_show_mqd = debugfs_show_mqd_sdma; + #endif +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_peerdirect.c b/drivers/gpu/drm/amd/amdkfd/kfd_peerdirect.c +new file mode 100644 +index 000000000000..5d1ae20da9be +--- /dev/null ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_peerdirect.c +@@ -0,0 +1,523 @@ ++/* ++ * Copyright 2016 Advanced Micro Devices, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR ++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++ ++/* NOTE: ++ * ++ * This file contains logic to dynamically detect and enable PeerDirect ++ * suppor. PeerDirect support is delivered e.g. as part of OFED ++ * from Mellanox. Because we are not able to rely on the fact that the ++ * corresponding OFED will be installed we should: ++ * - copy PeerDirect definitions locally to avoid dependency on ++ * corresponding header file ++ * - try dynamically detect address of PeerDirect function ++ * pointers. ++ * ++ * If dynamic detection failed then PeerDirect support should be ++ * enabled using the standard PeerDirect bridge driver from: ++ * https://github.com/RadeonOpenCompute/ROCnRDMA ++ * ++ * ++ * Logic to support PeerDirect relies only on official public API to be ++ * non-intrusive as much as possible. ++ * ++ **/ ++ ++#include <linux/device.h> ++#include <linux/export.h> ++#include <linux/pid.h> ++#include <linux/err.h> ++#include <linux/slab.h> ++#include <linux/scatterlist.h> ++#include <linux/module.h> ++#include <drm/amd_rdma.h> ++ ++#include "kfd_priv.h" ++ ++ ++ ++/* ----------------------- PeerDirect interface ------------------------------*/ ++ ++/* ++ * Copyright (c) 2013, Mellanox Technologies. All rights reserved. ++ * ++ * This software is available to you under a choice of one of two ++ * licenses. You may choose to be licensed under the terms of the GNU ++ * General Public License (GPL) Version 2, available from the file ++ * COPYING in the main directory of this source tree, or the ++ * OpenIB.org BSD license below: ++ * ++ * Redistribution and use in source and binary forms, with or ++ * without modification, are permitted provided that the following ++ * conditions are met: ++ * ++ * - Redistributions of source code must retain the above ++ * copyright notice, this list of conditions and the following ++ * disclaimer. ++ * ++ * - Redistributions in binary form must reproduce the above ++ * copyright notice, this list of conditions and the following ++ * disclaimer in the documentation and/or other materials ++ * provided with the distribution. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, ++ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF ++ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ++ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS ++ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ++ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN ++ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE ++ * SOFTWARE. ++ */ ++#define IB_PEER_MEMORY_NAME_MAX 64 ++#define IB_PEER_MEMORY_VER_MAX 16 ++ ++struct peer_memory_client { ++ char name[IB_PEER_MEMORY_NAME_MAX]; ++ char version[IB_PEER_MEMORY_VER_MAX]; ++ /* acquire return code: 1-mine, 0-not mine */ ++ int (*acquire)(unsigned long addr, size_t size, ++ void *peer_mem_private_data, ++ char *peer_mem_name, ++ void **client_context); ++ int (*get_pages)(unsigned long addr, ++ size_t size, int write, int force, ++ struct sg_table *sg_head, ++ void *client_context, void *core_context); ++ int (*dma_map)(struct sg_table *sg_head, void *client_context, ++ struct device *dma_device, int dmasync, int *nmap); ++ int (*dma_unmap)(struct sg_table *sg_head, void *client_context, ++ struct device *dma_device); ++ void (*put_pages)(struct sg_table *sg_head, void *client_context); ++ unsigned long (*get_page_size)(void *client_context); ++ void (*release)(void *client_context); ++ void* (*get_context_private_data)(u64 peer_id); ++ void (*put_context_private_data)(void *context); ++}; ++ ++typedef int (*invalidate_peer_memory)(void *reg_handle, ++ void *core_context); ++ ++void *ib_register_peer_memory_client(struct peer_memory_client *peer_client, ++ invalidate_peer_memory *invalidate_callback); ++void ib_unregister_peer_memory_client(void *reg_handle); ++ ++ ++/*------------------- PeerDirect bridge driver ------------------------------*/ ++ ++#define AMD_PEER_BRIDGE_DRIVER_VERSION "1.0" ++#define AMD_PEER_BRIDGE_DRIVER_NAME "amdkfd" ++ ++ ++static void* (*pfn_ib_register_peer_memory_client)(struct peer_memory_client ++ *peer_client, ++ invalidate_peer_memory ++ *invalidate_callback); ++ ++static void (*pfn_ib_unregister_peer_memory_client)(void *reg_handle); ++ ++static const struct amd_rdma_interface *rdma_interface; ++ ++static void *ib_reg_handle; ++ ++struct amd_mem_context { ++ uint64_t va; ++ uint64_t size; ++ struct pid *pid; ++ ++ struct amd_p2p_info *p2p_info; ++ ++ /* Flag that free callback was called */ ++ int free_callback_called; ++ ++ /* Context received from PeerDirect call */ ++ void *core_context; ++}; ++ ++ ++static void free_callback(void *client_priv) ++{ ++ struct amd_mem_context *mem_context = ++ (struct amd_mem_context *)client_priv; ++ ++ pr_debug("data 0x%p\n", mem_context); ++ ++ if (!mem_context) { ++ pr_warn("Invalid client context\n"); ++ return; ++ } ++ ++ pr_debug("mem_context->core_context 0x%p\n", mem_context->core_context); ++ ++ /* amdkfd will free resources when we return from this callback. ++ * Set flag to inform that there is nothing to do on "put_pages", etc. ++ */ ++ WRITE_ONCE(mem_context->free_callback_called, 1); ++} ++ ++ ++static int amd_acquire(unsigned long addr, size_t size, ++ void *peer_mem_private_data, ++ char *peer_mem_name, void **client_context) ++{ ++ int ret; ++ struct amd_mem_context *mem_context; ++ struct pid *pid; ++ unsigned long page_size; ++ ++ /* Get pointer to structure describing current process */ ++ pid = get_task_pid(current, PIDTYPE_PID); ++ ++ pr_debug("addr:0x%lx,size:0x%x, pid 0x%p\n", ++ addr, (unsigned int)size, pid); ++ ++ /* Check if address is handled by AMD GPU driver */ ++ ret = rdma_interface->is_gpu_address(addr, pid); ++ ++ if (!ret) { ++ pr_debug("Not GPU Address\n"); ++ /* This is not GPU address */ ++ return 0; ++ } ++ ++ pr_debug("GPU address\n"); ++ ++ /* Initialize context used for operation with given address */ ++ mem_context = kzalloc(sizeof(*mem_context), GFP_KERNEL); ++ ++ if (!mem_context) ++ return 0; /* Error case handled as not GPU address */ ++ ++ mem_context->free_callback_called = 0; ++ mem_context->va = addr; ++ ++ /* Workaround: Currently, Mellanox drivers seem to be supporting only at ++ * page granularity. This is causing failures when an application tries ++ * to register size < page_size. Fix it temporarily by aligning the size ++ * to page size ++ */ ++ rdma_interface->get_page_size(addr, size, pid, &page_size); ++ mem_context->size = ALIGN(size, page_size); ++ ++ /* Save PID. It is guaranteed that the function will be ++ * called in the correct process context as opposite to others. ++ */ ++ mem_context->pid = pid; ++ ++ pr_debug("Client context %p\n", mem_context); ++ ++ /* Return pointer to allocated context */ ++ *client_context = mem_context; ++ ++ /* Return 1 to inform that this address which will be handled ++ * by AMD GPU driver ++ */ ++ return 1; ++} ++ ++static int amd_get_pages(unsigned long addr, size_t size, int write, int force, ++ struct sg_table *sg_head, ++ void *client_context, void *core_context) ++{ ++ int ret; ++ unsigned long page_size; ++ struct amd_mem_context *mem_context = ++ (struct amd_mem_context *)client_context; ++ ++ pr_debug("addr:0x%lx,size:0x%x, core_context:%p\n", ++ addr, (unsigned int)size, core_context); ++ ++ if (!mem_context) { ++ pr_warn("Invalid client context"); ++ return -EINVAL; ++ } ++ ++ pr_debug("pid :0x%p\n", mem_context->pid); ++ ++ ++ if (addr != mem_context->va) { ++ pr_warn("Context address (0x%llx) is not the same\n", ++ mem_context->va); ++ return -EINVAL; ++ } ++ ++ /* Workaround: see amd_acquire */ ++ rdma_interface->get_page_size(addr, size, mem_context->pid, ++ &page_size); ++ if (ALIGN(size, page_size) != mem_context->size) { ++ pr_warn("Context size (0x%llx) is not the same\n", ++ mem_context->size); ++ return -EINVAL; ++ } ++ ++ ret = rdma_interface->get_pages(addr, ++ mem_context->size, ++ mem_context->pid, ++ &mem_context->p2p_info, ++ free_callback, ++ mem_context); ++ ++ if (ret || !mem_context->p2p_info) { ++ pr_err("Could not rdma::get_pages failure: %d\n", ret); ++ return ret; ++ } ++ ++ mem_context->core_context = core_context; ++ ++ /* Note: At this stage it is OK not to fill sg_table */ ++ return 0; ++} ++ ++ ++static int amd_dma_map(struct sg_table *sg_head, void *client_context, ++ struct device *dma_device, int dmasync, int *nmap) ++{ ++ /* ++ * NOTE/TODO: ++ * We could have potentially three cases for real memory ++ * location: ++ * - all memory in the local ++ * - all memory in the system (RAM) ++ * - memory is spread (s/g) between local and system. ++ * ++ * In the case of all memory in the system we could use ++ * iommu driver to build DMA addresses but not in the case ++ * of local memory because currently iommu driver doesn't ++ * deal with local/device memory addresses (it requires "struct ++ * page"). ++ * ++ * Accordingly returning assumes that iommu funcutionality ++ * should be disabled so we can assume that sg_table already ++ * contains DMA addresses. ++ * ++ */ ++ struct amd_mem_context *mem_context = ++ (struct amd_mem_context *)client_context; ++ ++ pr_debug("Context 0x%p, sg_head 0x%p\n", ++ client_context, sg_head); ++ ++ pr_debug("pid 0x%p, address 0x%llx, size:0x%llx\n", ++ mem_context->pid, ++ mem_context->va, ++ mem_context->size); ++ ++ if (!mem_context->p2p_info) { ++ pr_err("No sg table were allocated\n"); ++ return -EINVAL; ++ } ++ ++ /* Copy information about previosly allocated sg_table */ ++ *sg_head = *mem_context->p2p_info->pages; ++ ++ /* Return number of pages */ ++ *nmap = mem_context->p2p_info->pages->nents; ++ ++ return 0; ++} ++ ++static int amd_dma_unmap(struct sg_table *sg_head, void *client_context, ++ struct device *dma_device) ++{ ++ struct amd_mem_context *mem_context = ++ (struct amd_mem_context *)client_context; ++ ++ pr_debug("Context 0x%p, sg_table 0x%p\n", ++ client_context, sg_head); ++ ++ pr_debug("pid 0x%p, address 0x%llx, size:0x%llx\n", ++ mem_context->pid, ++ mem_context->va, ++ mem_context->size); ++ ++ /* Assume success */ ++ return 0; ++} ++static void amd_put_pages(struct sg_table *sg_head, void *client_context) ++{ ++ int ret = 0; ++ struct amd_mem_context *mem_context = ++ (struct amd_mem_context *)client_context; ++ ++ pr_debug("sg_head %p client_context: 0x%p\n", ++ sg_head, client_context); ++ pr_debug("pid 0x%p, address 0x%llx, size:0x%llx\n", ++ mem_context->pid, ++ mem_context->va, ++ mem_context->size); ++ ++ pr_debug("mem_context->p2p_info %p\n", ++ mem_context->p2p_info); ++ ++ if (mem_context->free_callback_called) { ++ READ_ONCE(mem_context->free_callback_called); ++ pr_debug("Free callback was called\n"); ++ return; ++ } ++ ++ if (mem_context->p2p_info) { ++ ret = rdma_interface->put_pages(&mem_context->p2p_info); ++ mem_context->p2p_info = NULL; ++ ++ if (ret) ++ pr_err("Failure: %d (callback status %d)\n", ++ ret, mem_context->free_callback_called); ++ } else ++ pr_err("Pointer to p2p info is null\n"); ++} ++static unsigned long amd_get_page_size(void *client_context) ++{ ++ unsigned long page_size; ++ int result; ++ struct amd_mem_context *mem_context = ++ (struct amd_mem_context *)client_context; ++ ++ pr_debug("context: %p\n", client_context); ++ pr_debug("pid 0x%p, address 0x%llx, size:0x%llx\n", ++ mem_context->pid, ++ mem_context->va, ++ mem_context->size); ++ ++ ++ result = rdma_interface->get_page_size( ++ mem_context->va, ++ mem_context->size, ++ mem_context->pid, ++ &page_size); ++ ++ if (result) { ++ pr_err("Could not get page size. %d\n", result); ++ /* If we failed to get page size then do not know what to do. ++ * Let's return some default value ++ */ ++ return PAGE_SIZE; ++ } ++ ++ return page_size; ++} ++ ++static void amd_release(void *client_context) ++{ ++ struct amd_mem_context *mem_context = ++ (struct amd_mem_context *)client_context; ++ ++ pr_debug("context: 0x%p\n", client_context); ++ pr_debug("pid 0x%p, address 0x%llx, size:0x%llx\n", ++ mem_context->pid, ++ mem_context->va, ++ mem_context->size); ++ ++ kfree(mem_context); ++} ++ ++ ++static struct peer_memory_client amd_mem_client = { ++ .acquire = amd_acquire, ++ .get_pages = amd_get_pages, ++ .dma_map = amd_dma_map, ++ .dma_unmap = amd_dma_unmap, ++ .put_pages = amd_put_pages, ++ .get_page_size = amd_get_page_size, ++ .release = amd_release, ++ .get_context_private_data = NULL, ++ .put_context_private_data = NULL, ++}; ++ ++/** Initialize PeerDirect interface with RDMA Network stack. ++ * ++ * Because network stack could potentially be loaded later we check ++ * presence of PeerDirect when HSA process is created. If PeerDirect was ++ * already initialized we do nothing otherwise try to detect and register. ++ */ ++void kfd_init_peer_direct(void) ++{ ++ int result; ++ ++ if (pfn_ib_unregister_peer_memory_client) { ++ pr_debug("PeerDirect support was already initialized\n"); ++ return; ++ } ++ ++ pr_debug("Try to initialize PeerDirect support\n"); ++ ++ pfn_ib_register_peer_memory_client = ++ (void *(*)(struct peer_memory_client *, ++ invalidate_peer_memory *)) ++ symbol_request(ib_register_peer_memory_client); ++ ++ pfn_ib_unregister_peer_memory_client = (void (*)(void *)) ++ symbol_request(ib_unregister_peer_memory_client); ++ ++ if (!pfn_ib_register_peer_memory_client || ++ !pfn_ib_unregister_peer_memory_client) { ++ pr_debug("PeerDirect interface was not detected\n"); ++ /* Do cleanup */ ++ kfd_close_peer_direct(); ++ return; ++ } ++ ++ result = amdkfd_query_rdma_interface(&rdma_interface); ++ ++ if (result < 0) { ++ pr_err("Cannot get RDMA Interface (result = %d)\n", result); ++ return; ++ } ++ ++ strcpy(amd_mem_client.name, AMD_PEER_BRIDGE_DRIVER_NAME); ++ strcpy(amd_mem_client.version, AMD_PEER_BRIDGE_DRIVER_VERSION); ++ ++ ib_reg_handle = pfn_ib_register_peer_memory_client(&amd_mem_client, ++ NULL); ++ ++ if (!ib_reg_handle) { ++ pr_err("Cannot register peer memory client\n"); ++ /* Do cleanup */ ++ kfd_close_peer_direct(); ++ return; ++ } ++ ++ pr_info("PeerDirect support was initialized successfully\n"); ++} ++ ++/** ++ * Close connection with PeerDirect interface with RDMA Network stack. ++ * ++ */ ++void kfd_close_peer_direct(void) ++{ ++ if (pfn_ib_unregister_peer_memory_client) { ++ if (ib_reg_handle) ++ pfn_ib_unregister_peer_memory_client(ib_reg_handle); ++ ++ symbol_put(ib_unregister_peer_memory_client); ++ } ++ ++ if (pfn_ib_register_peer_memory_client) ++ symbol_put(ib_register_peer_memory_client); ++ ++ ++ /* Reset pointers to be safe */ ++ pfn_ib_unregister_peer_memory_client = NULL; ++ pfn_ib_register_peer_memory_client = NULL; ++ ib_reg_handle = NULL; ++} ++ +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h b/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h +index f2bcf5c092ea..b173d868e824 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h +@@ -101,8 +101,8 @@ struct pm4_mes_set_resources { + + struct pm4_mes_runlist { + union { +- union PM4_MES_TYPE_3_HEADER header; /* header */ +- uint32_t ordinal1; ++ union PM4_MES_TYPE_3_HEADER header; /* header */ ++ uint32_t ordinal1; + }; + + union { +@@ -144,10 +144,13 @@ struct pm4_mes_map_process { + + union { + struct { +- uint32_t pasid:16; +- uint32_t reserved1:8; +- uint32_t diq_enable:1; +- uint32_t process_quantum:7; ++ uint32_t pasid:16; /* 0 - 15 */ ++ uint32_t reserved1:2; /* 16 - 17 */ ++ uint32_t debug_vmid:4; /* 18 - 21 */ ++ uint32_t new_debug:1; /* 22 */ ++ uint32_t tmz:1; /* 23 */ ++ uint32_t diq_enable:1; /* 24 */ ++ uint32_t process_quantum:7; /* 25 - 31 */ + } bitfields2; + uint32_t ordinal2; + }; +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_diq.h b/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_diq.h +index a0ff34878163..0b314a8c8f4b 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_diq.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_diq.h +@@ -77,103 +77,6 @@ struct pm4__indirect_buffer_pasid { + + #endif + +-/*--------------------_RELEASE_MEM-------------------- */ +- +-#ifndef _PM4__RELEASE_MEM_DEFINED +-#define _PM4__RELEASE_MEM_DEFINED +-enum _RELEASE_MEM_event_index_enum { +- event_index___release_mem__end_of_pipe = 5, +- event_index___release_mem__shader_done = 6 +-}; +- +-enum _RELEASE_MEM_cache_policy_enum { +- cache_policy___release_mem__lru = 0, +- cache_policy___release_mem__stream = 1, +- cache_policy___release_mem__bypass = 2 +-}; +- +-enum _RELEASE_MEM_dst_sel_enum { +- dst_sel___release_mem__memory_controller = 0, +- dst_sel___release_mem__tc_l2 = 1, +- dst_sel___release_mem__queue_write_pointer_register = 2, +- dst_sel___release_mem__queue_write_pointer_poll_mask_bit = 3 +-}; +- +-enum _RELEASE_MEM_int_sel_enum { +- int_sel___release_mem__none = 0, +- int_sel___release_mem__send_interrupt_only = 1, +- int_sel___release_mem__send_interrupt_after_write_confirm = 2, +- int_sel___release_mem__send_data_after_write_confirm = 3 +-}; +- +-enum _RELEASE_MEM_data_sel_enum { +- data_sel___release_mem__none = 0, +- data_sel___release_mem__send_32_bit_low = 1, +- data_sel___release_mem__send_64_bit_data = 2, +- data_sel___release_mem__send_gpu_clock_counter = 3, +- data_sel___release_mem__send_cp_perfcounter_hi_lo = 4, +- data_sel___release_mem__store_gds_data_to_memory = 5 +-}; +- +-struct pm4__release_mem { +- union { +- union PM4_MES_TYPE_3_HEADER header; /*header */ +- unsigned int ordinal1; +- }; +- +- union { +- struct { +- unsigned int event_type:6; +- unsigned int reserved1:2; +- enum _RELEASE_MEM_event_index_enum event_index:4; +- unsigned int tcl1_vol_action_ena:1; +- unsigned int tc_vol_action_ena:1; +- unsigned int reserved2:1; +- unsigned int tc_wb_action_ena:1; +- unsigned int tcl1_action_ena:1; +- unsigned int tc_action_ena:1; +- unsigned int reserved3:6; +- unsigned int atc:1; +- enum _RELEASE_MEM_cache_policy_enum cache_policy:2; +- unsigned int reserved4:5; +- } bitfields2; +- unsigned int ordinal2; +- }; +- +- union { +- struct { +- unsigned int reserved5:16; +- enum _RELEASE_MEM_dst_sel_enum dst_sel:2; +- unsigned int reserved6:6; +- enum _RELEASE_MEM_int_sel_enum int_sel:3; +- unsigned int reserved7:2; +- enum _RELEASE_MEM_data_sel_enum data_sel:3; +- } bitfields3; +- unsigned int ordinal3; +- }; +- +- union { +- struct { +- unsigned int reserved8:2; +- unsigned int address_lo_32b:30; +- } bitfields4; +- struct { +- unsigned int reserved9:3; +- unsigned int address_lo_64b:29; +- } bitfields5; +- unsigned int ordinal4; +- }; +- +- unsigned int address_hi; +- +- unsigned int data_lo; +- +- unsigned int data_hi; +- +-}; +-#endif +- +- + /*--------------------_SET_CONFIG_REG-------------------- */ + + #ifndef _PM4__SET_CONFIG_REG_DEFINED +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h +index b0102b9426bf..ce6acede25e1 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h +@@ -35,6 +35,10 @@ + #include <linux/kfifo.h> + #include <linux/seq_file.h> + #include <linux/kref.h> ++#include <linux/pid.h> ++#include <linux/interval_tree.h> ++#include <linux/device_cgroup.h> ++#include <drm/drmP.h> + #include <kgd_kfd_interface.h> + + #include "amd_shared.h" +@@ -46,6 +50,8 @@ + /* GPU ID hash width in bits */ + #define KFD_GPU_ID_HASH_WIDTH 16 + ++struct drm_device; ++ + /* Use upper bits of mmap offset to store KFD driver specific information. + * BITS[63:62] - Encode MMAP type + * BITS[61:46] - Encode gpu_id. To identify to which GPU the offset belongs to +@@ -156,11 +162,22 @@ extern int ignore_crat; + */ + extern int noretry; + ++/* ++ * Enable privileged mode for all CP queues including user queues ++ */ ++extern int priv_cp_queues; ++ + /* + * Halt if HWS hang is detected + */ + extern int halt_if_hws_hang; + ++/* ++ * Restore evicted process only if queues are active ++ */ ++extern bool keep_idle_process_evicted; ++ ++ + /** + * enum kfd_sched_policy + * +@@ -238,6 +255,7 @@ struct kfd_dev { + + const struct kfd_device_info *device_info; + struct pci_dev *pdev; ++ struct drm_device *ddev; + + unsigned int id; /* topology stub index */ + +@@ -279,6 +297,7 @@ struct kfd_dev { + struct device_queue_manager *dqm; + + bool init_complete; ++ + /* + * Interrupts of interest to KFD are copied + * from the HW ring into a SW ring. +@@ -286,7 +305,7 @@ struct kfd_dev { + bool interrupts_active; + + /* Debug manager */ +- struct kfd_dbgmgr *dbgmgr; ++ struct kfd_dbgmgr *dbgmgr; + + /* Firmware versions */ + uint16_t mec_fw_version; +@@ -306,6 +325,51 @@ struct kfd_dev { + bool pci_atomic_requested; + }; + ++struct kfd_ipc_obj; ++ ++struct kfd_bo { ++ void *mem; ++ struct interval_tree_node it; ++ struct kfd_dev *dev; ++ struct list_head cb_data_head; ++ struct kfd_ipc_obj *kfd_ipc_obj; ++ /* page-aligned VA address */ ++ uint64_t cpuva; ++ unsigned int mem_type; ++}; ++ ++struct cma_system_bo { ++ struct kgd_mem *mem; ++ struct sg_table *sg; ++ struct kfd_dev *dev; ++ struct list_head list; ++}; ++ ++/* Similar to iov_iter */ ++struct cma_iter { ++ /* points to current entry of range array */ ++ struct kfd_memory_range *array; ++ /* total number of entries in the initial array */ ++ unsigned long nr_segs; ++ /* total amount of data pointed by kfd array*/ ++ unsigned long total; ++ /* offset into the entry pointed by cma_iter.array */ ++ unsigned long offset; ++ struct kfd_process *p; ++ struct mm_struct *mm; ++ struct task_struct *task; ++ /* current kfd_bo associated with cma_iter.array.va_addr */ ++ struct kfd_bo *cur_bo; ++ /* offset w.r.t cur_bo */ ++ unsigned long bo_offset; ++ /* If cur_bo is a userptr BO, then a shadow system BO is created ++ * using its underlying pages. cma_bo holds this BO. cma_list is a ++ * list cma_bos created in one session ++ */ ++ struct cma_system_bo *cma_bo; ++ struct list_head cma_list; ++}; ++ + enum kfd_mempool { + KFD_MEMPOOL_SYSTEM_CACHEABLE = 1, + KFD_MEMPOOL_SYSTEM_WRITECOMBINE = 2, +@@ -359,6 +423,11 @@ enum kfd_queue_format { + KFD_QUEUE_FORMAT_AQL + }; + ++enum KFD_QUEUE_PRIORITY { ++ KFD_QUEUE_PRIORITY_MINIMUM = 0, ++ KFD_QUEUE_PRIORITY_MAXIMUM = 15 ++}; ++ + /** + * struct queue_properties + * +@@ -497,9 +566,23 @@ enum KFD_MQD_TYPE { + KFD_MQD_TYPE_HIQ, /* for hiq */ + KFD_MQD_TYPE_CP, /* for cp queues and diq */ + KFD_MQD_TYPE_SDMA, /* for sdma queues */ ++ KFD_MQD_TYPE_DIQ, /* for diq */ + KFD_MQD_TYPE_MAX + }; + ++enum KFD_PIPE_PRIORITY { ++ KFD_PIPE_PRIORITY_CS_LOW = 0, ++ KFD_PIPE_PRIORITY_CS_MEDIUM, ++ KFD_PIPE_PRIORITY_CS_HIGH ++}; ++ ++enum KFD_SPI_PRIORITY { ++ KFD_SPI_PRIORITY_EXTRA_LOW = 0, ++ KFD_SPI_PRIORITY_LOW, ++ KFD_SPI_PRIORITY_MEDIUM, ++ KFD_SPI_PRIORITY_HIGH ++}; ++ + struct scheduling_resources { + unsigned int vmid_mask; + enum kfd_queue_type type; +@@ -560,8 +643,19 @@ struct qcm_process_device { + uint64_t ib_base; + void *ib_kaddr; + +- /* doorbell resources per process per device */ ++ /* doorbell resources per process per device*/ + unsigned long *doorbell_bitmap; ++ /* doorbell user mmap vma */ ++ struct vm_area_struct *doorbell_vma; ++ /* lock to serialize doorbell unmap and remap */ ++ struct mutex doorbell_lock; ++ ++ /* Indicate if doorbell is mapped or unmapped ++ * -1 means doorbells need to be unmapped because queue is evicted ++ * 0 means doorbells are unmapped ++ * 1 means doorbells are mapped ++ */ ++ int doorbell_mapped; + }; + + /* KFD Memory Eviction */ +@@ -573,6 +667,9 @@ struct qcm_process_device { + /* Approx. time before evicting the process again */ + #define PROCESS_ACTIVE_TIME_MS 10 + ++void kfd_process_schedule_restore(struct kfd_process *p); ++int kfd_process_remap_doorbells_locked(struct kfd_process *p); ++ + /* 8 byte handle containing GPU ID in the most significant 4 bytes and + * idr_handle in the least significant 4 bytes + */ +@@ -626,6 +723,22 @@ struct kfd_process_device { + */ + bool already_dequeued; + ++ /* Flag to indicate if debugging is active on this device for this ++ * process. This is for the new GFX9+ debugging, and indicates that ++ * any of the debug features are enabled, ie: wave launch mode, ++ * address watch, or trap debug. It also indicates that a debug ++ * VMID has been allocated. ++ */ ++ bool is_debugging_enabled; ++ ++ /* Flag to indicate if trap debugging is active on this device for ++ * this process. This is for the GFX9_ debugging features ++ */ ++ bool debug_trap_enabled; ++ ++ /* Value of the wave launch mode if debugging is enabled */ ++ uint32_t trap_debug_wave_launch_mode; ++ + /* Is this process/pasid bound to this device? (amd_iommu_bind_pasid) */ + enum kfd_pdd_bound bound; + }; +@@ -691,6 +804,8 @@ struct kfd_process { + size_t signal_event_count; + bool signal_event_limit_reached; + ++ struct rb_root_cached bo_interval_tree; ++ + /* Information used for memory eviction */ + void *kgd_process_info; + /* Eviction fence that is attached to all the BOs of this process. The +@@ -708,6 +823,7 @@ struct kfd_process { + * restored after an eviction + */ + unsigned long last_restore_timestamp; ++ unsigned long last_evict_timestamp; + }; + + #define KFD_PROCESS_TABLE_SIZE 5 /* bits: 32 entries */ +@@ -759,12 +875,23 @@ int kfd_reserved_mem_mmap(struct kfd_dev *dev, struct kfd_process *process, + + /* KFD process API for creating and translating handles */ + int kfd_process_device_create_obj_handle(struct kfd_process_device *pdd, +- void *mem); ++ void *mem, uint64_t start, ++ uint64_t length, uint64_t cpuva, ++ unsigned int mem_type, ++ struct kfd_ipc_obj *ipc_obj); + void *kfd_process_device_translate_handle(struct kfd_process_device *p, + int handle); ++struct kfd_bo *kfd_process_device_find_bo(struct kfd_process_device *pdd, ++ int handle); ++void *kfd_process_find_bo_from_interval(struct kfd_process *p, ++ uint64_t start_addr, ++ uint64_t last_addr); + void kfd_process_device_remove_obj_handle(struct kfd_process_device *pdd, + int handle); + ++void run_rdma_free_callback(struct kfd_bo *buf_obj); ++struct kfd_process *kfd_lookup_process_by_pid(struct pid *pid); ++ + /* Process device data iterator */ + struct kfd_process_device *kfd_get_first_process_device_data( + struct kfd_process *p); +@@ -787,6 +914,8 @@ int kfd_doorbell_init(struct kfd_dev *kfd); + void kfd_doorbell_fini(struct kfd_dev *kfd); + int kfd_doorbell_mmap(struct kfd_dev *dev, struct kfd_process *process, + struct vm_area_struct *vma); ++void kfd_doorbell_unmap(struct kfd_process_device *pdd); ++int kfd_doorbell_remap(struct kfd_process_device *pdd); + void __iomem *kfd_get_kernel_doorbell(struct kfd_dev *kfd, + unsigned int *doorbell_off); + void kfd_release_kernel_doorbell(struct kfd_dev *kfd, u32 __iomem *db_addr); +@@ -841,8 +970,6 @@ void uninit_queue(struct queue *q); + void print_queue_properties(struct queue_properties *q); + void print_queue(struct queue *q); + +-struct mqd_manager *mqd_manager_init(enum KFD_MQD_TYPE type, +- struct kfd_dev *dev); + struct mqd_manager *mqd_manager_init_cik(enum KFD_MQD_TYPE type, + struct kfd_dev *dev); + struct mqd_manager *mqd_manager_init_cik_hawaii(enum KFD_MQD_TYPE type, +@@ -1003,6 +1130,24 @@ int dbgdev_wave_reset_wavefronts(struct kfd_dev *dev, struct kfd_process *p); + + bool kfd_is_locked(void); + ++/* PeerDirect support */ ++void kfd_init_peer_direct(void); ++void kfd_close_peer_direct(void); ++ ++/* IPC Support */ ++int kfd_ipc_init(void); ++ ++/* Cgroup Support */ ++/* Check with device cgroup if @kfd device is accessible */ ++static inline int kfd_devcgroup_check_permission(struct kfd_dev *kfd) ++{ ++ struct drm_device *ddev = kfd->ddev; ++ ++ return devcgroup_check_permission(DEVCG_DEV_CHAR, DRM_MAJOR, ++ ddev->render->index, ++ DEVCG_ACC_WRITE | DEVCG_ACC_READ); ++} ++ + /* Debugfs */ + #if defined(CONFIG_DEBUG_FS) + +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c +index 7632d66cb218..18fa6c75e97d 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c +@@ -31,6 +31,8 @@ + #include <linux/compat.h> + #include <linux/mman.h> + #include <linux/file.h> ++#include <asm/page.h> ++#include "kfd_ipc.h" + #include "amdgpu_amdkfd.h" + + struct mm_struct; +@@ -39,6 +41,7 @@ struct mm_struct; + #include "kfd_device_queue_manager.h" + #include "kfd_dbgmgr.h" + #include "kfd_iommu.h" ++#include "kfd_trace.h" + + /* + * List of struct kfd_process (field kfd_process). +@@ -60,7 +63,8 @@ static struct workqueue_struct *kfd_process_wq; + */ + static struct workqueue_struct *kfd_restore_wq; + +-static struct kfd_process *find_process(const struct task_struct *thread); ++static struct kfd_process *find_process(const struct task_struct *thread, ++ bool ref); + static void kfd_process_ref_release(struct kref *ref); + static struct kfd_process *create_process(const struct task_struct *thread, + struct file *filep); +@@ -119,9 +123,11 @@ static int kfd_process_alloc_gpuvm(struct kfd_process_device *pdd, + struct kgd_mem *mem = NULL; + int handle; + int err; ++ unsigned int mem_type; + + err = amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu(kdev->kgd, gpu_va, size, +- pdd->vm, &mem, NULL, flags); ++ pdd->vm, NULL, &mem, NULL, ++ flags); + if (err) + goto err_alloc_mem; + +@@ -135,12 +141,18 @@ static int kfd_process_alloc_gpuvm(struct kfd_process_device *pdd, + goto sync_memory_failed; + } + ++ mem_type = flags & (KFD_IOC_ALLOC_MEM_FLAGS_VRAM | ++ KFD_IOC_ALLOC_MEM_FLAGS_GTT | ++ KFD_IOC_ALLOC_MEM_FLAGS_USERPTR | ++ KFD_IOC_ALLOC_MEM_FLAGS_DOORBELL); ++ + /* Create an obj handle so kfd_process_device_remove_obj_handle + * will take care of the bo removal when the process finishes. + * We do not need to take p->mutex, because the process is just + * created and the ioctls have not had the chance to run. + */ +- handle = kfd_process_device_create_obj_handle(pdd, mem); ++ handle = kfd_process_device_create_obj_handle( ++ pdd, mem, gpu_va, size, 0, mem_type, NULL); + + if (handle < 0) { + err = handle; +@@ -222,7 +234,7 @@ struct kfd_process *kfd_create_process(struct file *filep) + mutex_lock(&kfd_processes_mutex); + + /* A prior open of /dev/kfd could have already created the process. */ +- process = find_process(thread); ++ process = find_process(thread, false); + if (process) + pr_debug("Process already found\n"); + else +@@ -244,7 +256,7 @@ struct kfd_process *kfd_get_process(const struct task_struct *thread) + if (thread->group_leader->mm != thread->mm) + return ERR_PTR(-EINVAL); + +- process = find_process(thread); ++ process = find_process(thread, false); + if (!process) + return ERR_PTR(-EINVAL); + +@@ -263,13 +275,16 @@ static struct kfd_process *find_process_by_mm(const struct mm_struct *mm) + return NULL; + } + +-static struct kfd_process *find_process(const struct task_struct *thread) ++static struct kfd_process *find_process(const struct task_struct *thread, ++ bool ref) + { + struct kfd_process *p; + int idx; + + idx = srcu_read_lock(&kfd_processes_srcu); + p = find_process_by_mm(thread->mm); ++ if (p && ref) ++ kref_get(&p->ref); + srcu_read_unlock(&kfd_processes_srcu, idx); + + return p; +@@ -280,17 +295,38 @@ void kfd_unref_process(struct kfd_process *p) + kref_put(&p->ref, kfd_process_ref_release); + } + ++/* This increments the process->ref counter. */ ++struct kfd_process *kfd_lookup_process_by_pid(struct pid *pid) ++{ ++ struct task_struct *task = NULL; ++ struct kfd_process *p = NULL; ++ ++ if (!pid) { ++ task = current; ++ get_task_struct(task); ++ } else { ++ task = get_pid_task(pid, PIDTYPE_PID); ++ } ++ ++ if (task) { ++ p = find_process(task, true); ++ put_task_struct(task); ++ } ++ ++ return p; ++} ++ + static void kfd_process_device_free_bos(struct kfd_process_device *pdd) + { + struct kfd_process *p = pdd->process; +- void *mem; ++ struct kfd_bo *buf_obj; + int id; + + /* + * Remove all handles from idr and release appropriate + * local memory object + */ +- idr_for_each_entry(&pdd->alloc_idr, mem, id) { ++ idr_for_each_entry(&pdd->alloc_idr, buf_obj, id) { + struct kfd_process_device *peer_pdd; + + list_for_each_entry(peer_pdd, &p->per_device_data, +@@ -298,10 +334,12 @@ static void kfd_process_device_free_bos(struct kfd_process_device *pdd) + if (!peer_pdd->vm) + continue; + amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu( +- peer_pdd->dev->kgd, mem, peer_pdd->vm); ++ peer_pdd->dev->kgd, buf_obj->mem, peer_pdd->vm); + } + +- amdgpu_amdkfd_gpuvm_free_memory_of_gpu(pdd->dev->kgd, mem); ++ run_rdma_free_callback(buf_obj); ++ amdgpu_amdkfd_gpuvm_free_memory_of_gpu(pdd->dev->kgd, ++ buf_obj->mem); + kfd_process_device_remove_obj_handle(pdd, id); + } + } +@@ -340,7 +378,7 @@ static void kfd_process_destroy_pdds(struct kfd_process *p) + + kfree(pdd->qpd.doorbell_bitmap); + idr_destroy(&pdd->alloc_idr); +- ++ mutex_destroy(&pdd->qpd.doorbell_lock); + kfree(pdd); + } + } +@@ -420,6 +458,7 @@ static void kfd_process_notifier_release(struct mmu_notifier *mn, + list_for_each_entry(pdd, &p->per_device_data, per_device_list) { + struct kfd_dev *dev = pdd->dev; + ++ /* Old (deprecated) debugger for GFXv8 and older */ + mutex_lock(kfd_get_dbgmgr_mutex()); + if (dev && dev->dbgmgr && dev->dbgmgr->pasid == p->pasid) { + if (!kfd_dbgmgr_unregister(dev->dbgmgr, p)) { +@@ -428,6 +467,22 @@ static void kfd_process_notifier_release(struct mmu_notifier *mn, + } + } + mutex_unlock(kfd_get_dbgmgr_mutex()); ++ ++ /* New debugger for GFXv9 and later */ ++ if (pdd->is_debugging_enabled) { ++ if (pdd->debug_trap_enabled) { ++ dev->kfd2kgd->disable_debug_trap(dev->kgd); ++ pdd->debug_trap_enabled = false; ++ } ++ if (pdd->trap_debug_wave_launch_mode != 0) { ++ dev->kfd2kgd->set_wave_launch_mode( ++ dev->kgd, 0, ++ dev->vm_info.last_vmid_kfd); ++ pdd->trap_debug_wave_launch_mode = 0; ++ } ++ release_debug_trap_vmid(dev->dqm); ++ pdd->is_debugging_enabled = false; ++ } + } + + kfd_process_dequeue_from_all_devices(p); +@@ -524,6 +579,8 @@ static struct kfd_process *create_process(const struct task_struct *thread, + if (!process) + goto err_alloc_process; + ++ process->bo_interval_tree = RB_ROOT_CACHED; ++ + process->pasid = kfd_pasid_alloc(); + if (process->pasid == 0) + goto err_alloc_pasid; +@@ -571,6 +628,11 @@ static struct kfd_process *create_process(const struct task_struct *thread, + if (err) + goto err_init_cwsr; + ++ /* If PeerDirect interface was not detected try to detect it again ++ * in case if network driver was loaded later. ++ */ ++ kfd_init_peer_direct(); ++ + return process; + + err_init_cwsr: +@@ -655,9 +717,13 @@ struct kfd_process_device *kfd_create_process_device_data(struct kfd_dev *dev, + pdd->qpd.dqm = dev->dqm; + pdd->qpd.pqm = &p->pqm; + pdd->qpd.evicted = 0; ++ mutex_init(&pdd->qpd.doorbell_lock); + pdd->process = p; + pdd->bound = PDD_UNBOUND; + pdd->already_dequeued = false; ++ pdd->is_debugging_enabled = false; ++ pdd->debug_trap_enabled = false; ++ pdd->trap_debug_wave_launch_mode = 0; + list_add(&pdd->per_device_list, &p->per_device_data); + + /* Init idr used for memory handle translation */ +@@ -782,9 +848,49 @@ bool kfd_has_process_device_data(struct kfd_process *p) + * Assumes that the process lock is held. + */ + int kfd_process_device_create_obj_handle(struct kfd_process_device *pdd, +- void *mem) ++ void *mem, uint64_t start, ++ uint64_t length, uint64_t cpuva, ++ unsigned int mem_type, ++ struct kfd_ipc_obj *ipc_obj) ++{ ++ int handle; ++ struct kfd_bo *buf_obj; ++ struct kfd_process *p; ++ ++ p = pdd->process; ++ ++ buf_obj = kzalloc(sizeof(*buf_obj), GFP_KERNEL); ++ ++ if (!buf_obj) ++ return -ENOMEM; ++ ++ buf_obj->it.start = start; ++ buf_obj->it.last = start + length - 1; ++ interval_tree_insert(&buf_obj->it, &p->bo_interval_tree); ++ ++ buf_obj->mem = mem; ++ buf_obj->dev = pdd->dev; ++ buf_obj->kfd_ipc_obj = ipc_obj; ++ buf_obj->cpuva = cpuva; ++ buf_obj->mem_type = mem_type; ++ ++ INIT_LIST_HEAD(&buf_obj->cb_data_head); ++ ++ handle = idr_alloc(&pdd->alloc_idr, buf_obj, 0, 0, GFP_KERNEL); ++ ++ if (handle < 0) ++ kfree(buf_obj); ++ ++ return handle; ++} ++ ++struct kfd_bo *kfd_process_device_find_bo(struct kfd_process_device *pdd, ++ int handle) + { +- return idr_alloc(&pdd->alloc_idr, mem, 0, 0, GFP_KERNEL); ++ if (handle < 0) ++ return NULL; ++ ++ return (struct kfd_bo *)idr_find(&pdd->alloc_idr, handle); + } + + /* Translate specific handle from process local memory idr +@@ -793,10 +899,37 @@ int kfd_process_device_create_obj_handle(struct kfd_process_device *pdd, + void *kfd_process_device_translate_handle(struct kfd_process_device *pdd, + int handle) + { +- if (handle < 0) ++ struct kfd_bo *buf_obj; ++ ++ buf_obj = kfd_process_device_find_bo(pdd, handle); ++ ++ return buf_obj->mem; ++} ++ ++void *kfd_process_find_bo_from_interval(struct kfd_process *p, ++ uint64_t start_addr, ++ uint64_t last_addr) ++{ ++ struct interval_tree_node *it_node; ++ struct kfd_bo *buf_obj; ++ ++ it_node = interval_tree_iter_first(&p->bo_interval_tree, ++ start_addr, last_addr); ++ if (!it_node) { ++ pr_err("0x%llx-0x%llx does not relate to an existing buffer\n", ++ start_addr, last_addr); ++ return NULL; ++ } ++ ++ if (interval_tree_iter_next(it_node, start_addr, last_addr)) { ++ pr_err("0x%llx-0x%llx spans more than a single BO\n", ++ start_addr, last_addr); + return NULL; ++ } ++ ++ buf_obj = container_of(it_node, struct kfd_bo, it); + +- return idr_find(&pdd->alloc_idr, handle); ++ return buf_obj; + } + + /* Remove specific handle from process local memory idr +@@ -805,8 +938,24 @@ void *kfd_process_device_translate_handle(struct kfd_process_device *pdd, + void kfd_process_device_remove_obj_handle(struct kfd_process_device *pdd, + int handle) + { +- if (handle >= 0) +- idr_remove(&pdd->alloc_idr, handle); ++ struct kfd_bo *buf_obj; ++ struct kfd_process *p; ++ ++ p = pdd->process; ++ ++ if (handle < 0) ++ return; ++ ++ buf_obj = kfd_process_device_find_bo(pdd, handle); ++ ++ if (buf_obj->kfd_ipc_obj) ++ ipc_obj_put(&buf_obj->kfd_ipc_obj); ++ ++ idr_remove(&pdd->alloc_idr, handle); ++ ++ interval_tree_remove(&buf_obj->it, &p->bo_interval_tree); ++ ++ kfree(buf_obj); + } + + /* This increments the process->ref counter. */ +@@ -846,7 +995,7 @@ struct kfd_process *kfd_lookup_process_by_mm(const struct mm_struct *mm) + return p; + } + +-/* process_evict_queues - Evict all user queues of a process ++/* kfd_process_evict_queues - Evict all user queues of a process + * + * Eviction is reference-counted per process-device. This means multiple + * evictions from different sources can be nested safely. +@@ -886,7 +1035,7 @@ int kfd_process_evict_queues(struct kfd_process *p) + return r; + } + +-/* process_restore_queues - Restore all user queues of a process */ ++/* kfd_process_restore_queues - Restore all user queues of a process */ + int kfd_process_restore_queues(struct kfd_process *p) + { + struct kfd_process_device *pdd; +@@ -905,6 +1054,95 @@ int kfd_process_restore_queues(struct kfd_process *p) + return ret; + } + ++void kfd_process_schedule_restore(struct kfd_process *p) ++{ ++ int ret; ++ unsigned long evicted_jiffies; ++ unsigned long delay_jiffies = msecs_to_jiffies(PROCESS_RESTORE_TIME_MS); ++ ++ /* wait at least PROCESS_RESTORE_TIME_MS before attempting to restore ++ */ ++ evicted_jiffies = get_jiffies_64() - p->last_evict_timestamp; ++ if (delay_jiffies > evicted_jiffies) ++ delay_jiffies -= evicted_jiffies; ++ else ++ delay_jiffies = 0; ++ ++ pr_debug("Process %d schedule restore work\n", p->pasid); ++ ret = queue_delayed_work(kfd_restore_wq, &p->restore_work, ++ delay_jiffies); ++ WARN(!ret, "Schedule restore work failed\n"); ++} ++ ++static void kfd_process_unmap_doorbells(struct kfd_process *p) ++{ ++ struct kfd_process_device *pdd; ++ struct mm_struct *mm = p->mm; ++ ++ down_write(&mm->mmap_sem); ++ ++ list_for_each_entry(pdd, &p->per_device_data, per_device_list) ++ kfd_doorbell_unmap(pdd); ++ ++ up_write(&mm->mmap_sem); ++} ++ ++int kfd_process_remap_doorbells_locked(struct kfd_process *p) ++{ ++ struct kfd_process_device *pdd; ++ int ret = 0; ++ ++ list_for_each_entry(pdd, &p->per_device_data, per_device_list) ++ ret = kfd_doorbell_remap(pdd); ++ ++ return ret; ++} ++ ++static int kfd_process_remap_doorbells(struct kfd_process *p) ++{ ++ struct mm_struct *mm = p->mm; ++ int ret = 0; ++ ++ down_write(&mm->mmap_sem); ++ ret = kfd_process_remap_doorbells_locked(p); ++ up_write(&mm->mmap_sem); ++ ++ return ret; ++} ++ ++/** ++ * kfd_process_unmap_doorbells_if_idle - Check if queues are active ++ * ++ * Returns true if queues are idle, and unmap doorbells. ++ * Returns false if queues are active ++ */ ++static bool kfd_process_unmap_doorbells_if_idle(struct kfd_process *p) ++{ ++ struct kfd_process_device *pdd; ++ bool busy = false; ++ ++ if (!keep_idle_process_evicted) ++ return false; ++ ++ /* Unmap doorbell first to avoid race conditions. Otherwise while the ++ * second queue is checked, the first queue may get more work, but we ++ * won't detect that since it has been checked ++ */ ++ kfd_process_unmap_doorbells(p); ++ ++ list_for_each_entry(pdd, &p->per_device_data, per_device_list) { ++ busy = check_if_queues_active(pdd->qpd.dqm, &pdd->qpd); ++ if (busy) ++ break; ++ } ++ ++ /* Remap doorbell if process queue is not idle */ ++ if (busy) ++ kfd_process_remap_doorbells(p); ++ ++ return !busy; ++} ++ + static void evict_process_worker(struct work_struct *work) + { + int ret; +@@ -917,6 +1155,7 @@ static void evict_process_worker(struct work_struct *work) + * lifetime of this thread, kfd_process p will be valid + */ + p = container_of(dwork, struct kfd_process, eviction_work); ++ trace_kfd_evict_process_worker_start(p); + WARN_ONCE(p->last_eviction_seqno != p->ef->seqno, + "Eviction fence mismatch\n"); + +@@ -928,18 +1167,25 @@ static void evict_process_worker(struct work_struct *work) + */ + flush_delayed_work(&p->restore_work); + +- pr_debug("Started evicting pasid %d\n", p->pasid); ++ p->last_evict_timestamp = get_jiffies_64(); ++ ++ pr_info("Started evicting pasid %d\n", p->pasid); + ret = kfd_process_evict_queues(p); + if (!ret) { + dma_fence_signal(p->ef); + dma_fence_put(p->ef); + p->ef = NULL; +- queue_delayed_work(kfd_restore_wq, &p->restore_work, +- msecs_to_jiffies(PROCESS_RESTORE_TIME_MS)); + +- pr_debug("Finished evicting pasid %d\n", p->pasid); ++ if (!kfd_process_unmap_doorbells_if_idle(p)) ++ kfd_process_schedule_restore(p); ++ else ++ pr_debug("Process %d queues idle, doorbell unmapped\n", ++ p->pasid); ++ ++ pr_info("Finished evicting pasid %d\n", p->pasid); + } else + pr_err("Failed to evict queues of pasid %d\n", p->pasid); ++ trace_kfd_evict_process_worker_end(p, ret ? "Failed" : "Success"); + } + + static void restore_process_worker(struct work_struct *work) +@@ -955,6 +1201,7 @@ static void restore_process_worker(struct work_struct *work) + * lifetime of this thread, kfd_process p will be valid + */ + p = container_of(dwork, struct kfd_process, restore_work); ++ trace_kfd_restore_process_worker_start(p); + + /* Call restore_process_bos on the first KGD device. This function + * takes care of restoring the whole process including other devices. +@@ -965,7 +1212,7 @@ static void restore_process_worker(struct work_struct *work) + struct kfd_process_device, + per_device_list); + +- pr_debug("Started restoring pasid %d\n", p->pasid); ++ pr_info("Started restoring pasid %d\n", p->pasid); + + /* Setting last_restore_timestamp before successful restoration. + * Otherwise this would have to be set by KGD (restore_process_bos) +@@ -981,17 +1228,22 @@ static void restore_process_worker(struct work_struct *work) + ret = amdgpu_amdkfd_gpuvm_restore_process_bos(p->kgd_process_info, + &p->ef); + if (ret) { +- pr_debug("Failed to restore BOs of pasid %d, retry after %d ms\n", ++ pr_info("Failed to restore BOs of pasid %d, retry after %d ms\n", + p->pasid, PROCESS_BACK_OFF_TIME_MS); ++ + ret = queue_delayed_work(kfd_restore_wq, &p->restore_work, + msecs_to_jiffies(PROCESS_BACK_OFF_TIME_MS)); +- WARN(!ret, "reschedule restore work failed\n"); ++ WARN(!ret, "Reschedule restore work failed\n"); ++ trace_kfd_restore_process_worker_end(p, ret ? ++ "Rescheduled restore" : ++ "Failed to reschedule restore"); + return; + } + + ret = kfd_process_restore_queues(p); ++ trace_kfd_restore_process_worker_end(p, ret ? "Failed" : "Success"); + if (!ret) +- pr_debug("Finished restoring pasid %d\n", p->pasid); ++ pr_info("Finished restoring pasid %d\n", p->pasid); + else + pr_err("Failed to restore queues of pasid %d\n", p->pasid); + } +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c b/drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c +index fcaaf93681ac..fea67dc0569b 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_process_queue_manager.c +@@ -186,8 +186,9 @@ int pqm_create_queue(struct process_queue_manager *pqm, + + switch (type) { + case KFD_QUEUE_TYPE_SDMA: +- if (dev->dqm->queue_count >= get_num_sdma_queues(dev->dqm)) { +- pr_err("Over-subscription is not allowed for SDMA.\n"); ++ if (dev->dqm->sdma_queue_count ++ >= get_num_sdma_queues(dev->dqm)) { ++ pr_debug("Over-subscription is not allowed for SDMA.\n"); + retval = -EPERM; + goto err_create_queue; + } +@@ -461,8 +462,7 @@ int pqm_debugfs_mqds(struct seq_file *m, void *data) + q->properties.type, q->device->id); + continue; + } +- mqd_mgr = q->device->dqm->ops.get_mqd_manager( +- q->device->dqm, mqd_type); ++ mqd_mgr = q->device->dqm->mqd_mgrs[mqd_type]; + } else if (pqn->kq) { + q = pqn->kq->queue; + mqd_mgr = pqn->kq->mqd_mgr; +@@ -470,7 +470,6 @@ int pqm_debugfs_mqds(struct seq_file *m, void *data) + case KFD_QUEUE_TYPE_DIQ: + seq_printf(m, " DIQ on device %x\n", + pqn->kq->dev->id); +- mqd_type = KFD_MQD_TYPE_HIQ; + break; + default: + seq_printf(m, +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_rdma.c b/drivers/gpu/drm/amd/amdkfd/kfd_rdma.c +new file mode 100644 +index 000000000000..78debff74e33 +--- /dev/null ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_rdma.c +@@ -0,0 +1,296 @@ ++/* ++ * Copyright 2015 Advanced Micro Devices, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR ++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++#include <linux/device.h> ++#include <linux/export.h> ++#include <linux/pid.h> ++#include <linux/err.h> ++#include <linux/slab.h> ++#include <drm/amd_rdma.h> ++#include "kfd_priv.h" ++#include "amdgpu_amdkfd.h" ++ ++struct rdma_cb { ++ struct list_head node; ++ struct amd_p2p_info amd_p2p_data; ++ void (*free_callback)(void *client_priv); ++ void *client_priv; ++}; ++ ++/** ++ * This function makes the pages underlying a range of GPU virtual memory ++ * accessible for DMA operations from another PCIe device ++ * ++ * \param address - The start address in the Unified Virtual Address ++ * space in the specified process ++ * \param length - The length of requested mapping ++ * \param pid - Pointer to structure pid to which address belongs. ++ * Could be NULL for current process address space. ++ * \param p2p_data - On return: Pointer to structure describing ++ * underlying pages/locations ++ * \param free_callback - Pointer to callback which will be called when access ++ * to such memory must be stopped immediately: Memory ++ * was freed, GECC events, etc. ++ * Client should immediately stop any transfer ++ * operations and returned as soon as possible. ++ * After return all resources associated with address ++ * will be release and no access will be allowed. ++ * \param client_priv - Pointer to be passed as parameter on ++ * 'free_callback; ++ * ++ * \return 0 if operation was successful ++ */ ++static int get_pages(uint64_t address, uint64_t length, struct pid *pid, ++ struct amd_p2p_info **amd_p2p_data, ++ void (*free_callback)(void *client_priv), ++ void *client_priv) ++{ ++ struct kfd_bo *buf_obj; ++ struct kgd_mem *mem; ++ struct sg_table *sg_table_tmp; ++ struct kfd_dev *dev; ++ uint64_t last = address + length - 1; ++ uint64_t offset; ++ struct kfd_process *p; ++ struct rdma_cb *rdma_cb_data; ++ int ret = 0; ++ ++ p = kfd_lookup_process_by_pid(pid); ++ if (!p) { ++ pr_err("Could not find the process\n"); ++ return -EINVAL; ++ } ++ mutex_lock(&p->mutex); ++ ++ buf_obj = kfd_process_find_bo_from_interval(p, address, last); ++ if (!buf_obj) { ++ pr_err("Cannot find a kfd_bo for the range\n"); ++ ret = -EINVAL; ++ goto out; ++ } ++ ++ rdma_cb_data = kmalloc(sizeof(*rdma_cb_data), GFP_KERNEL); ++ if (!rdma_cb_data) { ++ *amd_p2p_data = NULL; ++ ret = -ENOMEM; ++ goto out; ++ } ++ ++ mem = buf_obj->mem; ++ dev = buf_obj->dev; ++ offset = address - buf_obj->it.start; ++ ++ ret = amdgpu_amdkfd_gpuvm_pin_get_sg_table(dev->kgd, mem, ++ offset, length, &sg_table_tmp); ++ ++ if (ret) { ++ pr_err("amdgpu_amdkfd_gpuvm_pin_get_sg_table failed.\n"); ++ *amd_p2p_data = NULL; ++ goto free_mem; ++ } ++ ++ rdma_cb_data->amd_p2p_data.va = address; ++ rdma_cb_data->amd_p2p_data.size = length; ++ rdma_cb_data->amd_p2p_data.pid = pid; ++ rdma_cb_data->amd_p2p_data.priv = buf_obj; ++ rdma_cb_data->amd_p2p_data.pages = sg_table_tmp; ++ ++ rdma_cb_data->free_callback = free_callback; ++ rdma_cb_data->client_priv = client_priv; ++ ++ list_add(&rdma_cb_data->node, &buf_obj->cb_data_head); ++ ++ *amd_p2p_data = &rdma_cb_data->amd_p2p_data; ++ ++ goto out; ++ ++free_mem: ++ kfree(rdma_cb_data); ++out: ++ mutex_unlock(&p->mutex); ++ kfd_unref_process(p); ++ ++ return ret; ++} ++ ++static int put_pages_helper(struct amd_p2p_info *p2p_data) ++{ ++ struct kfd_bo *buf_obj; ++ struct kfd_dev *dev; ++ struct sg_table *sg_table_tmp; ++ struct rdma_cb *rdma_cb_data; ++ ++ if (!p2p_data) { ++ pr_err("amd_p2p_info pointer is invalid.\n"); ++ return -EINVAL; ++ } ++ ++ rdma_cb_data = container_of(p2p_data, struct rdma_cb, amd_p2p_data); ++ ++ buf_obj = p2p_data->priv; ++ dev = buf_obj->dev; ++ sg_table_tmp = p2p_data->pages; ++ ++ list_del(&rdma_cb_data->node); ++ kfree(rdma_cb_data); ++ ++ amdgpu_amdkfd_gpuvm_unpin_put_sg_table(buf_obj->mem, sg_table_tmp); ++ ++ ++ return 0; ++} ++ ++void run_rdma_free_callback(struct kfd_bo *buf_obj) ++{ ++ struct rdma_cb *tmp, *rdma_cb_data; ++ ++ list_for_each_entry_safe(rdma_cb_data, tmp, ++ &buf_obj->cb_data_head, node) { ++ if (rdma_cb_data->free_callback) ++ rdma_cb_data->free_callback( ++ rdma_cb_data->client_priv); ++ } ++ list_for_each_entry_safe(rdma_cb_data, tmp, ++ &buf_obj->cb_data_head, node) ++ put_pages_helper(&rdma_cb_data->amd_p2p_data); ++} ++ ++/** ++ * ++ * This function release resources previously allocated by get_pages() call. ++ * ++ * \param p_p2p_data - A pointer to pointer to amd_p2p_info entries ++ * allocated by get_pages() call. ++ * ++ * \return 0 if operation was successful ++ */ ++static int put_pages(struct amd_p2p_info **p_p2p_data) ++{ ++ struct kfd_process *p = NULL; ++ int ret = 0; ++ ++ if (!(*p_p2p_data)) { ++ pr_err("amd_p2p_info pointer is invalid.\n"); ++ return -EINVAL; ++ } ++ ++ p = kfd_lookup_process_by_pid((*p_p2p_data)->pid); ++ if (!p) { ++ pr_err("Could not find the process\n"); ++ return -EINVAL; ++ } ++ ++ ret = put_pages_helper(*p_p2p_data); ++ ++ if (!ret) ++ *p_p2p_data = NULL; ++ ++ kfd_unref_process(p); ++ ++ return ret; ++} ++ ++/** ++ * Check if given address belongs to GPU address space. ++ * ++ * \param address - Address to check ++ * \param pid - Process to which given address belongs. ++ * Could be NULL if current one. ++ * ++ * \return 0 - This is not GPU address managed by AMD driver ++ * 1 - This is GPU address managed by AMD driver ++ */ ++static int is_gpu_address(uint64_t address, struct pid *pid) ++{ ++ struct kfd_bo *buf_obj; ++ struct kfd_process *p; ++ ++ p = kfd_lookup_process_by_pid(pid); ++ if (!p) { ++ pr_debug("Could not find the process\n"); ++ return 0; ++ } ++ ++ buf_obj = kfd_process_find_bo_from_interval(p, address, address); ++ ++ kfd_unref_process(p); ++ if (!buf_obj) ++ return 0; ++ ++ return 1; ++} ++ ++/** ++ * Return the single page size to be used when building scatter/gather table ++ * for given range. ++ * ++ * \param address - Address ++ * \param length - Range length ++ * \param pid - Process id structure. Could be NULL if current one. ++ * \param page_size - On return: Page size ++ * ++ * \return 0 if operation was successful ++ */ ++static int get_page_size(uint64_t address, uint64_t length, struct pid *pid, ++ unsigned long *page_size) ++{ ++ /* ++ * As local memory is always consecutive, we can assume the local ++ * memory page size to be arbitrary. ++ * Currently we assume the local memory page size to be the same ++ * as system memory, which is 4KB. ++ */ ++ *page_size = PAGE_SIZE; ++ ++ return 0; ++} ++ ++ ++/** ++ * Singleton object: rdma interface function pointers ++ */ ++static const struct amd_rdma_interface rdma_ops = { ++ .get_pages = get_pages, ++ .put_pages = put_pages, ++ .is_gpu_address = is_gpu_address, ++ .get_page_size = get_page_size, ++}; ++ ++/** ++ * amdkfd_query_rdma_interface - Return interface (function pointers table) for ++ * rdma interface ++ * ++ * ++ * \param interace - OUT: Pointer to interface ++ * ++ * \return 0 if operation was successful. ++ */ ++int amdkfd_query_rdma_interface(const struct amd_rdma_interface **ops) ++{ ++ *ops = &rdma_ops; ++ ++ return 0; ++} ++EXPORT_SYMBOL(amdkfd_query_rdma_interface); ++ ++ ++ +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c +index 09da91644f9f..9c47c0d6d030 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c +@@ -217,6 +217,8 @@ struct kfd_topology_device *kfd_create_topology_device( + sysfs_show_gen_prop(buffer, "%s %llu\n", name, value) + #define sysfs_show_32bit_val(buffer, value) \ + sysfs_show_gen_prop(buffer, "%u\n", value) ++#define sysfs_show_64bit_val(buffer, value) \ ++ sysfs_show_gen_prop(buffer, "%llu\n", value) + #define sysfs_show_str_val(buffer, value) \ + sysfs_show_gen_prop(buffer, "%s\n", value) + +@@ -268,6 +270,8 @@ static ssize_t iolink_show(struct kobject *kobj, struct attribute *attr, + buffer[0] = 0; + + iolink = container_of(attr, struct kfd_iolink_properties, attr); ++ if (iolink->gpu && kfd_devcgroup_check_permission(iolink->gpu)) ++ return -EPERM; + sysfs_show_32bit_prop(buffer, "type", iolink->iolink_type); + sysfs_show_32bit_prop(buffer, "version_major", iolink->ver_maj); + sysfs_show_32bit_prop(buffer, "version_minor", iolink->ver_min); +@@ -299,11 +303,27 @@ static ssize_t mem_show(struct kobject *kobj, struct attribute *attr, + { + ssize_t ret; + struct kfd_mem_properties *mem; ++ uint64_t used_mem; + + /* Making sure that the buffer is an empty string */ + buffer[0] = 0; + +- mem = container_of(attr, struct kfd_mem_properties, attr); ++ if (strcmp(attr->name, "used_memory") == 0) { ++ mem = container_of(attr, struct kfd_mem_properties, ++ attr_used); ++ if (mem->gpu) { ++ if (kfd_devcgroup_check_permission(mem->gpu)) ++ return -EPERM; ++ used_mem = amdgpu_amdkfd_get_vram_usage(mem->gpu->kgd); ++ return sysfs_show_64bit_val(buffer, used_mem); ++ } ++ /* TODO: Report APU/CPU-allocated memory; For now return 0 */ ++ return 0; ++ } ++ ++ mem = container_of(attr, struct kfd_mem_properties, attr_props); ++ if (mem->gpu && kfd_devcgroup_check_permission(mem->gpu)) ++ return -EPERM; + sysfs_show_32bit_prop(buffer, "heap_type", mem->heap_type); + sysfs_show_64bit_prop(buffer, "size_in_bytes", mem->size_in_bytes); + sysfs_show_32bit_prop(buffer, "flags", mem->flags); +@@ -333,6 +353,8 @@ static ssize_t kfd_cache_show(struct kobject *kobj, struct attribute *attr, + buffer[0] = 0; + + cache = container_of(attr, struct kfd_cache_properties, attr); ++ if (cache->gpu && kfd_devcgroup_check_permission(cache->gpu)) ++ return -EPERM; + sysfs_show_32bit_prop(buffer, "processor_id_low", + cache->processor_id_low); + sysfs_show_32bit_prop(buffer, "level", cache->cache_level); +@@ -408,6 +430,7 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr, + char public_name[KFD_TOPOLOGY_PUBLIC_NAME_SIZE]; + uint32_t i; + uint32_t log_max_watch_addr; ++ struct kfd_local_mem_info local_mem_info; + + /* Making sure that the buffer is an empty string */ + buffer[0] = 0; +@@ -415,12 +438,16 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr, + if (strcmp(attr->name, "gpu_id") == 0) { + dev = container_of(attr, struct kfd_topology_device, + attr_gpuid); ++ if (dev->gpu && kfd_devcgroup_check_permission(dev->gpu)) ++ return -EPERM; + return sysfs_show_32bit_val(buffer, dev->gpu_id); + } + + if (strcmp(attr->name, "name") == 0) { + dev = container_of(attr, struct kfd_topology_device, + attr_name); ++ if (dev->gpu && kfd_devcgroup_check_permission(dev->gpu)) ++ return -EPERM; + for (i = 0; i < KFD_TOPOLOGY_PUBLIC_NAME_SIZE; i++) { + public_name[i] = + (char)dev->node_props.marketing_name[i]; +@@ -433,6 +460,8 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr, + + dev = container_of(attr, struct kfd_topology_device, + attr_props); ++ if (dev->gpu && kfd_devcgroup_check_permission(dev->gpu)) ++ return -EPERM; + sysfs_show_32bit_prop(buffer, "cpu_cores_count", + dev->node_props.cpu_cores_count); + sysfs_show_32bit_prop(buffer, "simd_count", +@@ -497,13 +526,26 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr, + sysfs_show_32bit_prop(buffer, "max_engine_clk_fcompute", + dev->node_props.max_engine_clk_fcompute); + +- sysfs_show_64bit_prop(buffer, "local_mem_size", +- (unsigned long long int) 0); ++ /* ++ * If the ASIC is APU except Kaveri, set local memory size ++ * to 0 to disable local memory support ++ */ ++ if (!dev->gpu->device_info->needs_iommu_device ++ || dev->gpu->device_info->asic_family == CHIP_KAVERI) { ++ amdgpu_amdkfd_get_local_mem_info(dev->gpu->kgd, ++ &local_mem_info); ++ sysfs_show_64bit_prop(buffer, "local_mem_size", ++ local_mem_info.local_mem_size_private + ++ local_mem_info.local_mem_size_public); ++ } else ++ sysfs_show_64bit_prop(buffer, "local_mem_size", 0ULL); + + sysfs_show_32bit_prop(buffer, "fw_version", + dev->gpu->mec_fw_version); + sysfs_show_32bit_prop(buffer, "capability", + dev->node_props.capability); ++ sysfs_show_64bit_prop(buffer, "debug_prop", ++ dev->node_props.debug_prop); + sysfs_show_32bit_prop(buffer, "sdma_fw_version", + dev->gpu->sdma_fw_version); + } +@@ -562,7 +604,12 @@ static void kfd_remove_sysfs_node_entry(struct kfd_topology_device *dev) + if (dev->kobj_mem) { + list_for_each_entry(mem, &dev->mem_props, list) + if (mem->kobj) { +- kfd_remove_sysfs_file(mem->kobj, &mem->attr); ++ /* TODO: Remove when CPU/APU supported */ ++ if (dev->node_props.cpu_cores_count == 0) ++ sysfs_remove_file(mem->kobj, ++ &mem->attr_used); ++ kfd_remove_sysfs_file(mem->kobj, ++ &mem->attr_props); + mem->kobj = NULL; + } + kobject_del(dev->kobj_mem); +@@ -664,12 +711,23 @@ static int kfd_build_sysfs_node_entry(struct kfd_topology_device *dev, + if (ret < 0) + return ret; + +- mem->attr.name = "properties"; +- mem->attr.mode = KFD_SYSFS_FILE_MODE; +- sysfs_attr_init(&mem->attr); +- ret = sysfs_create_file(mem->kobj, &mem->attr); ++ mem->attr_props.name = "properties"; ++ mem->attr_props.mode = KFD_SYSFS_FILE_MODE; ++ sysfs_attr_init(&mem->attr_props); ++ ret = sysfs_create_file(mem->kobj, &mem->attr_props); + if (ret < 0) + return ret; ++ ++ /* TODO: Support APU/CPU memory usage */ ++ if (dev->node_props.cpu_cores_count == 0) { ++ mem->attr_used.name = "used_memory"; ++ mem->attr_used.mode = KFD_SYSFS_FILE_MODE; ++ sysfs_attr_init(&mem->attr_used); ++ ret = sysfs_create_file(mem->kobj, &mem->attr_used); ++ if (ret < 0) ++ return ret; ++ } ++ + i++; + } + +@@ -928,6 +986,7 @@ static void kfd_add_non_crat_information(struct kfd_topology_device *kdev) + /* TODO: For GPU node, rearrange code from kfd_topology_add_device */ + } + ++#ifdef CONFIG_ACPI + /* kfd_is_acpi_crat_invalid - CRAT from ACPI is valid only for AMD APU devices. + * Ignore CRAT for all other devices. AMD APU is identified if both CPU + * and GPU cores are present. +@@ -946,6 +1005,7 @@ static bool kfd_is_acpi_crat_invalid(struct list_head *device_list) + pr_info("Ignoring ACPI CRAT on non-APU system\n"); + return true; + } ++#endif + + int kfd_topology_init(void) + { +@@ -983,6 +1043,7 @@ int kfd_topology_init(void) + * NOTE: The current implementation expects all AMD APUs to have + * CRAT. If no CRAT is available, it is assumed to be a CPU + */ ++#ifdef CONFIG_ACPI + ret = kfd_create_crat_image_acpi(&crat_image, &image_size); + if (!ret) { + ret = kfd_parse_crat_table(crat_image, +@@ -996,7 +1057,7 @@ int kfd_topology_init(void) + crat_image = NULL; + } + } +- ++#endif + if (!crat_image) { + ret = kfd_create_crat_image_virtual(&crat_image, &image_size, + COMPUTE_UNIT_CPU, NULL, +@@ -1098,6 +1159,9 @@ static struct kfd_topology_device *kfd_assign_gpu(struct kfd_dev *gpu) + { + struct kfd_topology_device *dev; + struct kfd_topology_device *out_dev = NULL; ++ struct kfd_mem_properties *mem; ++ struct kfd_cache_properties *cache; ++ struct kfd_iolink_properties *iolink; + + down_write(&topology_lock); + list_for_each_entry(dev, &topology_device_list, list) { +@@ -1111,6 +1175,14 @@ static struct kfd_topology_device *kfd_assign_gpu(struct kfd_dev *gpu) + if (!dev->gpu && (dev->node_props.simd_count > 0)) { + dev->gpu = gpu; + out_dev = dev; ++ ++ /* Assign mem->gpu */ ++ list_for_each_entry(mem, &dev->mem_props, list) ++ mem->gpu = dev->gpu; ++ list_for_each_entry(cache, &dev->cache_props, list) ++ cache->gpu = dev->gpu; ++ list_for_each_entry(iolink, &dev->io_link_props, list) ++ iolink->gpu = dev->gpu; + break; + } + } +@@ -1309,6 +1381,12 @@ int kfd_topology_add_device(struct kfd_dev *gpu) + dev->node_props.capability |= ((HSA_CAP_DOORBELL_TYPE_2_0 << + HSA_CAP_DOORBELL_TYPE_TOTALBITS_SHIFT) & + HSA_CAP_DOORBELL_TYPE_TOTALBITS_MASK); ++ ++ dev->node_props.capability |= HSA_CAP_TRAP_DEBUG_SUPPORT | ++ HSA_CAP_TRAP_DEBUG_WAVE_LAUNCH_TRAP_OVERRIDE_SUPPORTED | ++ HSA_CAP_TRAP_DEBUG_WAVE_LAUNCH_MODE_SUPPORTED; ++ dev->node_props.debug_prop |= ++ HSA_DBG_TRAP_DEBUG_TRAP_DATA_COUNT; + break; + default: + WARN(1, "Unexpected ASIC family %u", +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.h b/drivers/gpu/drm/amd/amdkfd/kfd_topology.h +index 92a19be07344..7411457dc4f2 100644 +--- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.h ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.h +@@ -47,6 +47,11 @@ + #define HSA_CAP_DOORBELL_TYPE_1_0 0x1 + #define HSA_CAP_DOORBELL_TYPE_2_0 0x2 + #define HSA_CAP_AQL_QUEUE_DOUBLE_MAP 0x00004000 ++#define HSA_CAP_TRAP_DEBUG_SUPPORT 0x00008000 ++#define HSA_CAP_TRAP_DEBUG_WAVE_LAUNCH_TRAP_OVERRIDE_SUPPORTED 0x00010000 ++#define HSA_CAP_TRAP_DEBUG_WAVE_LAUNCH_MODE_SUPPORTED 0x00020000 ++ ++#define HSA_DBG_TRAP_DEBUG_TRAP_DATA_COUNT 0x00008000 + + struct kfd_node_properties { + uint64_t hive_id; +@@ -58,6 +63,7 @@ struct kfd_node_properties { + uint32_t cpu_core_id_base; + uint32_t simd_id_base; + uint32_t capability; ++ uint64_t debug_prop; + uint32_t max_waves_per_simd; + uint32_t lds_size_in_kb; + uint32_t gds_size_in_kb; +@@ -96,7 +102,9 @@ struct kfd_mem_properties { + uint32_t width; + uint32_t mem_clk_max; + struct kobject *kobj; +- struct attribute attr; ++ struct kfd_dev *gpu; ++ struct attribute attr_props; ++ struct attribute attr_used; + }; + + #define HSA_CACHE_TYPE_DATA 0x00000001 +@@ -117,6 +125,7 @@ struct kfd_cache_properties { + uint32_t cache_type; + uint8_t sibling_map[CRAT_SIBLINGMAP_SIZE]; + struct kobject *kobj; ++ struct kfd_dev *gpu; + struct attribute attr; + }; + +@@ -135,6 +144,7 @@ struct kfd_iolink_properties { + uint32_t rec_transfer_size; + uint32_t flags; + struct kobject *kobj; ++ struct kfd_dev *gpu; + struct attribute attr; + }; + +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_trace.c b/drivers/gpu/drm/amd/amdkfd/kfd_trace.c +new file mode 100644 +index 000000000000..805a1da90bb1 +--- /dev/null ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_trace.c +@@ -0,0 +1,26 @@ ++/* ++ * Copyright 2018 Advanced Micro Devices, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR ++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ * ++ */ ++ ++ ++#define CREATE_TRACE_POINTS ++#include "kfd_trace.h" +diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_trace.h b/drivers/gpu/drm/amd/amdkfd/kfd_trace.h +new file mode 100644 +index 000000000000..345cded4a11a +--- /dev/null ++++ b/drivers/gpu/drm/amd/amdkfd/kfd_trace.h +@@ -0,0 +1,151 @@ ++/* ++ * Copyright 2018 Advanced Micro Devices, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR ++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ * ++ */ ++ ++#if !defined(_AMDKFD_TRACE_H) || defined(TRACE_HEADER_MULTI_READ) ++#define _KFD_TRACE_H_ ++ ++ ++#include <linux/stringify.h> ++#include <linux/types.h> ++#include <linux/tracepoint.h> ++ ++#include "kfd_priv.h" ++#include <linux/kfd_ioctl.h> ++ ++#undef TRACE_SYSTEM ++#define TRACE_SYSTEM amdkfd ++#define TRACE_INCLUDE_FILE kfd_trace ++ ++ ++TRACE_EVENT(kfd_map_memory_to_gpu_start, ++ TP_PROTO(struct kfd_process *p), ++ TP_ARGS(p), ++ TP_STRUCT__entry( ++ __field(unsigned int, pasid) ++ ), ++ TP_fast_assign( ++ __entry->pasid = p->pasid; ++ ), ++ TP_printk("pasid =%u", __entry->pasid) ++); ++ ++ ++TRACE_EVENT(kfd_map_memory_to_gpu_end, ++ TP_PROTO(struct kfd_process *p, u32 array_size, char *pStatusMsg), ++ TP_ARGS(p, array_size, pStatusMsg), ++ TP_STRUCT__entry( ++ __field(unsigned int, pasid) ++ __field(unsigned int, array_size) ++ __string(pStatusMsg, pStatusMsg) ++ ), ++ TP_fast_assign( ++ __entry->pasid = p->pasid; ++ __entry->array_size = array_size; ++ __assign_str(pStatusMsg, pStatusMsg); ++ ), ++ TP_printk("pasid = %u, array_size = %u, StatusMsg=%s", ++ __entry->pasid, ++ __entry->array_size, ++ __get_str(pStatusMsg)) ++); ++ ++ ++TRACE_EVENT(kfd_kgd2kfd_schedule_evict_and_restore_process, ++ TP_PROTO(struct kfd_process *p, u32 delay_jiffies), ++ TP_ARGS(p, delay_jiffies), ++ TP_STRUCT__entry( ++ __field(unsigned int, pasid) ++ __field(unsigned int, delay_jiffies) ++ ), ++ TP_fast_assign( ++ __entry->pasid = p->pasid; ++ __entry->delay_jiffies = delay_jiffies; ++ ), ++ TP_printk("pasid = %u, delay_jiffies = %u", ++ __entry->pasid, ++ __entry->delay_jiffies) ++); ++ ++ ++TRACE_EVENT(kfd_evict_process_worker_start, ++ TP_PROTO(struct kfd_process *p), ++ TP_ARGS(p), ++ TP_STRUCT__entry( ++ __field(unsigned int, pasid) ++ ), ++ TP_fast_assign( ++ __entry->pasid = p->pasid; ++ ), ++ TP_printk("pasid=%u", __entry->pasid) ++); ++ ++ ++TRACE_EVENT(kfd_evict_process_worker_end, ++ TP_PROTO(struct kfd_process *p, char *pStatusMsg), ++ TP_ARGS(p, pStatusMsg), ++ TP_STRUCT__entry( ++ __field(unsigned int, pasid) ++ __string(pStatusMsg, pStatusMsg) ++ ), ++ TP_fast_assign( ++ __entry->pasid = p->pasid; ++ __assign_str(pStatusMsg, pStatusMsg); ++ ), ++ TP_printk("pasid=%u, StatusMsg=%s", ++ __entry->pasid, __get_str(pStatusMsg)) ++); ++ ++ ++TRACE_EVENT(kfd_restore_process_worker_start, ++ TP_PROTO(struct kfd_process *p), ++ TP_ARGS(p), ++ TP_STRUCT__entry( ++ __field(unsigned int, pasid) ++ ), ++ TP_fast_assign( ++ __entry->pasid = p->pasid; ++ ), ++ TP_printk("pasid=%u", __entry->pasid) ++); ++ ++TRACE_EVENT(kfd_restore_process_worker_end, ++ TP_PROTO(struct kfd_process *p, char *pStatusMsg), ++ TP_ARGS(p, pStatusMsg), ++ TP_STRUCT__entry( ++ __field(unsigned int, pasid) ++ __string(pStatusMsg, pStatusMsg) ++ ), ++ TP_fast_assign( ++ entry->pasid = p->pasid; ++ __assign_str(pStatusMsg, pStatusMsg); ++ ), ++ TP_printk("pasid=%u, StatusMsg=%s", ++ __entry->pasid, __get_str(pStatusMsg)) ++); ++ ++#endif ++ ++/* This part must be outside protection */ ++#undef TRACE_INCLUDE_PATH ++#define TRACE_INCLUDE_PATH ../../drivers/gpu/drm/amd/amdkfd ++#include <trace/define_trace.h> +diff --git a/drivers/gpu/drm/amd/include/kgd_kfd_interface.h b/drivers/gpu/drm/amd/include/kgd_kfd_interface.h +index b71b684ad6fd..681af275e9f4 100644 +--- a/drivers/gpu/drm/amd/include/kgd_kfd_interface.h ++++ b/drivers/gpu/drm/amd/include/kgd_kfd_interface.h +@@ -31,13 +31,16 @@ + #include <linux/types.h> + #include <linux/bitmap.h> + #include <linux/dma-fence.h> +- ++#include <linux/dma-buf.h> ++#include <linux/mm_types.h> ++#include <linux/scatterlist.h> + struct pci_dev; + + #define KGD_MAX_QUEUES 128 + + struct kfd_dev; + struct kgd_dev; ++struct drm_device; + + struct kgd_mem; + +@@ -299,6 +302,19 @@ struct kfd2kgd_calls { + + uint64_t (*get_hive_id)(struct kgd_dev *kgd); + ++ uint32_t (*enable_debug_trap)(struct kgd_dev *kgd, ++ uint32_t trap_debug_wave_launch_mode, ++ uint32_t vmid); ++ uint32_t (*disable_debug_trap)(struct kgd_dev *kgd); ++ uint32_t (*set_debug_trap_data)(struct kgd_dev *kgd, ++ int trap_data0, ++ int trap_data1); ++ uint32_t (*set_wave_launch_trap_override)(struct kgd_dev *kgd, ++ uint32_t trap_override, ++ uint32_t trap_mask); ++ uint32_t (*set_wave_launch_mode)(struct kgd_dev *kgd, ++ uint8_t wave_launch_mode, ++ uint32_t vmid); + }; + + #endif /* KGD_KFD_INTERFACE_H_INCLUDED */ +diff --git a/include/drm/amd_rdma.h b/include/drm/amd_rdma.h +new file mode 100644 +index 000000000000..b0cab3c2b03c +--- /dev/null ++++ b/include/drm/amd_rdma.h +@@ -0,0 +1,70 @@ ++/* ++ * Copyright 2015 Advanced Micro Devices, Inc. ++ * ++ * Permission is hereby granted, free of charge, to any person obtaining a ++ * copy of this software and associated documentation files (the "Software"), ++ * to deal in the Software without restriction, including without limitation ++ * the rights to use, copy, modify, merge, publish, distribute, sublicense, ++ * and/or sell copies of the Software, and to permit persons to whom the ++ * Software is furnished to do so, subject to the following conditions: ++ * ++ * The above copyright notice and this permission notice shall be included in ++ * all copies or substantial portions of the Software. ++ * ++ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR ++ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, ++ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL ++ * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR ++ * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ++ * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR ++ * OTHER DEALINGS IN THE SOFTWARE. ++ */ ++ ++/* @file This file defined kernel interfaces to communicate with amdkfd */ ++ ++#ifndef AMD_RDMA_H_ ++#define AMD_RDMA_H_ ++ ++ ++/** ++ * Structure describing information needed to P2P access from another device ++ * to specific location of GPU memory ++ */ ++struct amd_p2p_info { ++ uint64_t va; /**< Specify user virt. address ++ * which this page table ++ * described ++ */ ++ uint64_t size; /**< Specify total size of ++ * allocation ++ */ ++ struct pid *pid; /**< Specify process pid to which ++ * virtual address belongs ++ */ ++ struct sg_table *pages; /**< Specify DMA/Bus addresses */ ++ void *priv; /**< Pointer set by AMD kernel ++ * driver ++ */ ++}; ++ ++/** ++ * Structure providing function pointers to support rdma/p2p requirements. ++ * to specific location of GPU memory ++ */ ++struct amd_rdma_interface { ++ int (*get_pages)(uint64_t address, uint64_t length, struct pid *pid, ++ struct amd_p2p_info **amd_p2p_data, ++ void (*free_callback)(void *client_priv), ++ void *client_priv); ++ int (*put_pages)(struct amd_p2p_info **amd_p2p_data); ++ int (*is_gpu_address)(uint64_t address, struct pid *pid); ++ int (*get_page_size)(uint64_t address, uint64_t length, struct pid *pid, ++ unsigned long *page_size); ++}; ++ ++ ++int amdkfd_query_rdma_interface(const struct amd_rdma_interface **rdma); ++ ++ ++#endif /* AMD_RDMA_H_ */ ++ +diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h +index 69490037e1a4..84715fef5322 100644 +--- a/include/uapi/drm/amdgpu_drm.h ++++ b/include/uapi/drm/amdgpu_drm.h +@@ -992,6 +992,8 @@ struct drm_amdgpu_info_firmware { + + #define AMDGPU_VRAM_TYPE_HBM_WIDTH 4096 + ++#define AMDGPU_VRAM_TYPE_HBM_WIDTH 4096 ++ + struct drm_amdgpu_info_device { + /** PCI Device ID */ + __u32 device_id; +diff --git a/include/uapi/linux/kfd_ioctl.h b/include/uapi/linux/kfd_ioctl.h +index ae3a5632618a..816dc69b8a49 100644 +--- a/include/uapi/linux/kfd_ioctl.h ++++ b/include/uapi/linux/kfd_ioctl.h +@@ -23,11 +23,11 @@ + #ifndef KFD_IOCTL_H_INCLUDED + #define KFD_IOCTL_H_INCLUDED + +-#include <drm/drm.h> ++#include <linux/types.h> + #include <linux/ioctl.h> + + #define KFD_IOCTL_MAJOR_VERSION 1 +-#define KFD_IOCTL_MINOR_VERSION 1 ++#define KFD_IOCTL_MINOR_VERSION 2 + + struct kfd_ioctl_get_version_args { + __u32 major_version; /* from KFD */ +@@ -35,9 +35,13 @@ struct kfd_ioctl_get_version_args { + }; + + /* For kfd_ioctl_create_queue_args.queue_type. */ +-#define KFD_IOC_QUEUE_TYPE_COMPUTE 0 +-#define KFD_IOC_QUEUE_TYPE_SDMA 1 +-#define KFD_IOC_QUEUE_TYPE_COMPUTE_AQL 2 ++#define KFD_IOC_QUEUE_TYPE_COMPUTE 0x0 ++#define KFD_IOC_QUEUE_TYPE_SDMA 0x1 ++#define KFD_IOC_QUEUE_TYPE_COMPUTE_AQL 0x2 ++#define KFD_IOC_QUEUE_TYPE_SDMA_ENGINE(e) (0x10000 + (e)) ++#define KFD_IOC_QUEUE_TYPE_SDMA_AQL_ENGINE(e) (0x20000 + (e)) ++#define KFD_IOC_QUEUE_TYPE_SDMA_ENGINE_MAX (KFD_IOC_QUEUE_TYPE_SDMA_ENGINE(0xffff)) ++#define KFD_IOC_QUEUE_TYPE_SDMA_AQL_ENGINE_MAX (KFD_IOC_QUEUE_TYPE_SDMA_AQL_ENGINE(0xffff)) + + #define KFD_MAX_QUEUE_PERCENTAGE 100 + #define KFD_MAX_QUEUE_PRIORITY 15 +@@ -186,6 +190,71 @@ struct kfd_ioctl_dbg_wave_control_args { + __u32 buf_size_in_bytes; /*including gpu_id and buf_size */ + }; + ++/* KFD_IOC_DBG_TRAP_ENABLE: ++ * data1: 0=disable, 1=enable ++ * data2: queue ID (for future use) ++ * data3: unused ++ * data4: unused ++ */ ++#define KFD_IOC_DBG_TRAP_ENABLE 0 ++ ++/* KFD_IOC_DBG_TRAP_SET_TRAP_DATA: ++ * data1: SPI_GDBG_TRAP_DATA0 ++ * data2: SPI_GDBG_TRAP_DATA1 ++ * data3: unused ++ * data4: unused ++ */ ++#define KFD_IOC_DBG_TRAP_SET_TRAP_DATA 1 ++ ++/* KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_OVERRIDE: ++ * data1: override mode: 0=OR, 1=REPLACE ++ * data2: mask ++ * data3: unused ++ * data4: unused ++ */ ++#define KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_OVERRIDE 2 ++ ++/* KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_MODE: ++ * data1: 0=normal, 1=halt, 2=kill, 3=singlestep, 4=disable ++ * data2: unused ++ * data3: unused ++ * data4: unused ++ */ ++#define KFD_IOC_DBG_TRAP_SET_WAVE_LAUNCH_MODE 3 ++ ++ ++#define KFD__DBG_NODE_SUSPEND_NO_GRACE 0x01 ++#define KFD__DBG_NODE_SUSPEND_MEMORY_FENCE 0x02 ++#define KFD__DBG_NODE_SUSPEND_UPDATE_CONTEXT 0x04 ++/* KFD_IOC_DBG_TRAP_NODE_SUSPEND: ++ * data1: pid ++ * data2: nodeid ++ * data3: flags : KFD__DBG_NODE_SUSPEND_NO_GRACE ++ * KFD__DBG_NODE_SUSPEND_MEMORY_FENCE ++ * KFD__DBG_NODE_SUSPEND_UPDATE_CONTEXT ++ * data4: unused ++ */ ++#define KFD_IOC_DBG_TRAP_NODE_SUSPEND 4 ++ ++/* KFD_IOC_DBG_TRAP_NODE_RESUME: ++ * data1: pid ++ * data2: nodeid ++ * data3: flags : KFD__DBG_NODE_SUSPEND_NO_GRACE ++ * KFD__DBG_NODE_SUSPEND_MEMORY_FENCE ++ * KFD__DBG_NODE_SUSPEND_UPDATE_CONTEXT ++ * data4: unused ++ */ ++#define KFD_IOC_DBG_TRAP_NODE_RESUME 5 ++ ++struct kfd_ioctl_dbg_trap_args { ++ __u32 gpu_id; /* to KFD */ ++ __u32 op; /* to KFD */ ++ __u32 data1; /* to KFD */ ++ __u32 data2; /* to KFD */ ++ __u32 data3; /* to KFD */ ++ __u32 data4; /* to KFD */ ++}; ++ + /* Matching HSA_EVENTTYPE */ + #define KFD_IOC_EVENT_SIGNAL 0 + #define KFD_IOC_EVENT_NODECHANGE 1 +@@ -245,7 +314,7 @@ struct kfd_memory_exception_failure { + __u32 imprecise; /* Can't determine the exact fault address */ + }; + +-/* memory exception data*/ ++/* memory exception data */ + struct kfd_hsa_memory_exception_data { + struct kfd_memory_exception_failure failure; + __u64 va; +@@ -423,6 +492,53 @@ struct kfd_ioctl_import_dmabuf_args { + __u32 dmabuf_fd; /* to KFD */ + }; + ++struct kfd_ioctl_ipc_export_handle_args { ++ __u64 handle; /* to KFD */ ++ __u32 share_handle[4]; /* from KFD */ ++ __u32 gpu_id; /* to KFD */ ++ __u32 pad; ++}; ++ ++struct kfd_ioctl_ipc_import_handle_args { ++ __u64 handle; /* from KFD */ ++ __u64 va_addr; /* to KFD */ ++ __u64 mmap_offset; /* from KFD */ ++ __u32 share_handle[4]; /* to KFD */ ++ __u32 gpu_id; /* to KFD */ ++ __u32 pad; ++}; ++ ++struct kfd_memory_range { ++ __u64 va_addr; ++ __u64 size; ++}; ++ ++/* flags definitions ++ * BIT0: 0: read operation, 1: write operation. ++ * This also identifies if the src or dst array belongs to remote process ++ */ ++#define KFD_CROSS_MEMORY_RW_BIT (1 << 0) ++#define KFD_SET_CROSS_MEMORY_READ(flags) (flags &= ~KFD_CROSS_MEMORY_RW_BIT) ++#define KFD_SET_CROSS_MEMORY_WRITE(flags) (flags |= KFD_CROSS_MEMORY_RW_BIT) ++#define KFD_IS_CROSS_MEMORY_WRITE(flags) (flags & KFD_CROSS_MEMORY_RW_BIT) ++ ++struct kfd_ioctl_cross_memory_copy_args { ++ /* to KFD: Process ID of the remote process */ ++ __u32 pid; ++ /* to KFD: See above definition */ ++ __u32 flags; ++ /* to KFD: Source GPU VM range */ ++ __u64 src_mem_range_array; ++ /* to KFD: Size of above array */ ++ __u64 src_mem_array_size; ++ /* to KFD: Destination GPU VM range */ ++ __u64 dst_mem_range_array; ++ /* to KFD: Size of above array */ ++ __u64 dst_mem_array_size; ++ /* from KFD: Total amount of bytes copied */ ++ __u64 bytes_copied; ++}; ++ + #define AMDKFD_IOCTL_BASE 'K' + #define AMDKFD_IO(nr) _IO(AMDKFD_IOCTL_BASE, nr) + #define AMDKFD_IOR(nr, type) _IOR(AMDKFD_IOCTL_BASE, nr, type) +@@ -480,7 +596,7 @@ struct kfd_ioctl_import_dmabuf_args { + #define AMDKFD_IOC_SET_SCRATCH_BACKING_VA \ + AMDKFD_IOWR(0x11, struct kfd_ioctl_set_scratch_backing_va_args) + +-#define AMDKFD_IOC_GET_TILE_CONFIG \ ++#define AMDKFD_IOC_GET_TILE_CONFIG \ + AMDKFD_IOWR(0x12, struct kfd_ioctl_get_tile_config_args) + + #define AMDKFD_IOC_SET_TRAP_HANDLER \ +@@ -517,7 +633,19 @@ struct kfd_ioctl_import_dmabuf_args { + #define AMDKFD_IOC_IMPORT_DMABUF \ + AMDKFD_IOWR(0x1D, struct kfd_ioctl_import_dmabuf_args) + ++#define AMDKFD_IOC_IPC_IMPORT_HANDLE \ ++ AMDKFD_IOWR(0x1E, struct kfd_ioctl_ipc_import_handle_args) ++ ++#define AMDKFD_IOC_IPC_EXPORT_HANDLE \ ++ AMDKFD_IOWR(0x1F, struct kfd_ioctl_ipc_export_handle_args) ++ ++#define AMDKFD_IOC_CROSS_MEMORY_COPY \ ++ AMDKFD_IOWR(0x20, struct kfd_ioctl_cross_memory_copy_args) ++ ++#define AMDKFD_IOC_DBG_TRAP \ ++ AMDKFD_IOW(0x21, struct kfd_ioctl_dbg_trap_args) ++ + #define AMDKFD_COMMAND_START 0x01 +-#define AMDKFD_COMMAND_END 0x1E ++#define AMDKFD_COMMAND_END 0x22 + + #endif +-- +2.17.1 + |