diff --git a/projects/okernel/Dockerfile.kvmod b/projects/okernel/Dockerfile.kvmod index 3755ac591..e80c16f16 100644 --- a/projects/okernel/Dockerfile.kvmod +++ b/projects/okernel/Dockerfile.kvmod @@ -1,5 +1,8 @@ -FROM alpine:3.5 +ARG IMAGE +FROM ${IMAGE} AS kernel -COPY ./kvmod . - -CMD ["insmod", "/root/kvmod/kernel_vuln.ko"] +FROM scratch +ENTRYPOINT [] +WORKDIR / +COPY --from=kernel kernel_vuln.ko . +CMD ["insmod", "/kernel_vuln.ko"] diff --git a/projects/okernel/Dockerfile.okernel b/projects/okernel/Dockerfile.okernel index 5d5467b83..a7ae1ffa3 100644 --- a/projects/okernel/Dockerfile.okernel +++ b/projects/okernel/Dockerfile.okernel @@ -1,4 +1,4 @@ -FROM linuxkit/alpine-build-kernel:cfdd576c36a52ed2dd62f237f79eeedc2dd3697b@sha256:3fe08db373a9373ba1616a485858f01ebd2d7a3cb364a099d0ed8b45fa419da2 +FROM linuxkit/kernel-compile:1b396c221af673757703258159ddc8539843b02b@sha256:6b32d205bfc6407568324337b707d195d027328dbfec554428ea93e7b0a8299b AS kernel-build ARG KERNEL_VERSION ARG DEBUG=0 @@ -16,47 +16,43 @@ RUN if [ -n $HTTP_PROXY ]; then \ RUN cat linux-${KERNEL_VERSION}.tar.gz | tar --absolute-names -xz && mv /linux-okernel-${KERNEL_VERSION} /linux -COPY kernel_config.okernel /linux/arch/x86/configs/x86_64_defconfig -#COPY kernel_config.debug /linux/debug_config +COPY kernel_config.okernel /linux/.config -RUN if [ $DEBUG -ne "0" ]; then \ - sed -i 's/CONFIG_PANIC_ON_OOPS=y/# CONFIG_PANIC_ON_OOPS is not set/' /linux/arch/x86/configs/x86_64_defconfig; \ - cat /linux/debug_config >> /linux/arch/x86/configs/x86_64_defconfig; \ - fi - -# Apply local patches -# COPY patches-4.10 /patches -#RUN cd /linux && \ -# set -e && for patch in /patches/*.patch; do \ -# echo "Applying $patch"; \ -# patch -p1 < "$patch"; \ -# done +RUN mkdir /out +# Kernel RUN cd /linux && \ - make defconfig && \ make oldconfig && \ - make -j "$(getconf _NPROCESSORS_ONLN)" KCFLAGS="-fno-pie" + make -j "$(getconf _NPROCESSORS_ONLN)" KCFLAGS="-fno-pie" && \ + cp arch/x86_64/boot/bzImage /out/kernel && \ + cp System.map /out && \ + cp vmlinux /out +# Modules & Headers (userspace API) RUN cd /linux && \ make INSTALL_MOD_PATH=/tmp/kernel-modules modules_install && \ ( DVER=$(basename $(find /tmp/kernel-modules/lib/modules/ -mindepth 1 -maxdepth 1)) && \ cd /tmp/kernel-modules/lib/modules/$DVER && \ rm build source && \ ln -s /usr/src/linux-headers-$DVER build ) && \ + ( cd /tmp/kernel-modules && tar cf /out/kernel.tar lib ) && \ mkdir -p /tmp/kernel-headers/usr && \ make INSTALL_HDR_PATH=/tmp/kernel-headers/usr headers_install && \ - ( cd /tmp/kernel-headers && tar cf /kernel-headers.tar usr ) && \ - ( cd /tmp/kernel-modules && tar cf /kernel-modules.tar lib ) && \ - cp vmlinux arch/x86_64/boot/bzImage / + ( cd /tmp/kernel-headers && tar cf /out/kernel-headers.tar usr ) +# Headers (kernel development) RUN DVER=$(basename $(find /tmp/kernel-modules/lib/modules/ -mindepth 1 -maxdepth 1)) && \ dir=/tmp/usr/src/linux-headers-$DVER && \ mkdir -p $dir && \ cp /linux/.config $dir && \ - cd /linux && \ - cp -a include "$dir" && \ - mkdir -p "$dir"/arch/x86 && cp -a arch/x86/include "$dir"/arch/x86/ && \ - ( cd /tmp && tar cf /kernel-dev.tar usr/src ) + cp /linux/Module.symvers $dir && \ + find . -path './include/*' -prune -o \ + -path './arch/*/include' -prune -o \ + -path './scripts/*' -prune -o \ + -type f \( -name 'Makefile*' -o -name 'Kconfig*' -o -name 'Kbuild*' -o \ + -name '*.lds' -o -name '*.pl' -o -name '*.sh' \) | \ + tar cf - -T - | (cd $dir; tar xf -) && \ + ( cd /tmp && tar cf /out/kernel-dev.tar usr/src ) RUN printf "KERNEL_SOURCE=${OKERNEL_SOURCE}\n" > /kernel-source-info @@ -73,8 +69,11 @@ WORKDIR /ok_components/test_mappings/kvmod RUN sed -i 's_~/linux-okernel_/linux_' Makefile && \ make && \ - mkdir -p /tmp/root/kvmod && cp kernel_vuln.ko /tmp/root/kvmod && \ - cd /tmp && \ - tar cf /kernel_vuln.tar root + cp kernel_vuln.ko /out/ +FROM scratch +ENTRYPOINT [] +CMD [] WORKDIR / +COPY --from=kernel-build /out/* / + diff --git a/projects/okernel/Makefile b/projects/okernel/Makefile index 96d305f87..cd4286de0 100644 --- a/projects/okernel/Makefile +++ b/projects/okernel/Makefile @@ -1,17 +1,7 @@ DEBUG ?= 0 -all: bzImage tag +all: image tag -# We push the image to hub twice, once with the full kernel version of -# "linuxkit/kernel:..-", -# where "" is a monotonically increasing config number, and as -# "linuxkit/kernel:..x". This version -# number is stored in IMAGE_VERSION. -# -# We expect most users to us the "..x" -# variant as this simply is the latest version of a given major kernel -# version. This version number is stored in IMAGE_MAJOR_VERSION. -# # For IMAGE_VERSION, the "" must be increased whenever # the kernel config or the patches change. We don't expect this to # happen very often as the minor version number gets update quite @@ -33,58 +23,39 @@ IMAGE_VERSION=latest endif IMAGE=okernel -IMAGE_MAJOR_VERSION=4.11.x DEPS=Dockerfile.okernel Makefile kernel_config.okernel Dockerfile.kvmod -MEDIA_TOYBOX=linuxkit/toybox-media:d7e82a7d19ccc84c9071fa7a88ecaa58ae958f7c@sha256:4c7d25f2be2429cd08417c36e04161cb924e46f3e419ee33a0aa9ff3a0942e02 - - -kernel.tag: $(DEPS) ifdef HTTP_PROXY - BUILD=$$( tar cf - $^ | docker build -f $< --build-arg DEBUG=$(DEBUG) --build-arg KERNEL_VERSION=$(KERNEL_VERSION) --build-arg HTTP_PROXY=$(HTTP_PROXY) -q - ) && [ -n "$$BUILD" ] && echo "Built $$BUILD" && echo "$$BUILD" > $@ -else - BUILD=$$( tar cf - $^ | docker build -f $< --build-arg DEBUG=$(DEBUG) --build-arg KERNEL_VERSION=$(KERNEL_VERSION) -q - ) && [ -n "$$BUILD" ] && echo "Built $$BUILD" && echo "$$BUILD" > $@ + PROXY_ARG = --build-arg HTTP_PROXY=$(HTTP_PROXY) endif -bzImage: kernel.tag - rm -rf etc/kernel-patches - mkdir -p x86_64 etc lib usr sbin etc/kernel-patches kvmod - docker run --rm --net=none --log-driver=none $(shell cat kernel.tag) tar cf - bzImage kernel-dev.tar kernel-headers.tar vmlinux kernel-modules.tar kernel_vuln.tar | tar xf - -C x86_64 - cp x86_64/kernel-modules.tar kernel.tar - cp x86_64/kernel_vuln.tar kernel_vuln.tar - tar xf kernel_vuln.tar -C kvmod - cp x86_64/bzImage $@ +ifdef HTTPS_PROXY + PROXY_ARG += --build-arg HTTPS_PROXY=$(HTTPS_PROXY) +endif .PHONY: image push tag kvmod +image: $(DEPS) + BUILD=$$( tar cf - $^ | docker build -f $< $(PROXY_ARG) --build-arg DEBUG=$(DEBUG) --build-arg KERNEL_VERSION=$(KERNEL_VERSION) -q -t $(IMAGE):build - ) && [ -n "$$BUILD" ] && echo "Built $$BUILD" && echo "$$BUILD" > build_info -default: push -Dockerfile.media: - printf "FROM $(MEDIA_TOYBOX)\nCOPY bzImage kernel.tar /\n" > $@ +default: tag -image: Dockerfile.media bzImage kernel.tar Dockerfile.kvmod kvmod/root/kvmod/kernel_vuln.ko $(DEPS) - tar cf - $^ | docker build --no-cache -t $(IMAGE):build -f Dockerfile.media - - -kvmod: Dockerfile.kvmod kvmod/root/kvmod/kernel_vuln.ko $(DEPS) - tar cf - $^ | docker build --no-cache -t okernel-kvmod:$(IMAGE_VERSION) -f Dockerfile.kvmod - +kvmod: + docker build --no-cache --build-arg IMAGE=$(IMAGE):$(IMAGE_VERSION) -t okernel-kvmod:$(IMAGE_VERSION) - < Dockerfile.kvmod push: image - docker pull linuxkit/$(IMAGE):$(IMAGE_VERSION) || \ - (docker tag $(IMAGE):build linuxkit/$(IMAGE):$(IMAGE_VERSION) && \ - docker push linuxkit/$(IMAGE):$(IMAGE_VERSION) && \ - docker tag $(IMAGE):build linuxkit/$(IMAGE):$(IMAGE_MAJOR_VERSION) && \ - docker push linuxkit/$(IMAGE):$(IMAGE_MAJOR_VERSION)) + (docker tag $(IMAGE):build $(IMAGE):$(IMAGE_VERSION) && \ + docker push $(IMAGE):$(IMAGE_VERSION)) docker rmi $(IMAGE):build rm -f hash tag: image - (docker tag $(IMAGE):build linuxkit/$(IMAGE):$(IMAGE_VERSION) && \ - docker tag $(IMAGE):build linuxkit/$(IMAGE):$(IMAGE_MAJOR_VERSION)) + docker tag $(IMAGE):build $(IMAGE):$(IMAGE_VERSION) docker rmi $(IMAGE):build rm -f hash .PHONY: clean clean: - rm -rf x86_64 lib usr sbin kernel.tag Dockerfile.media bzImage kernel.tar kernel_vuln.tar kvmod + rm -f build_info .DELETE_ON_ERROR: diff --git a/projects/okernel/README.md b/projects/okernel/README.md index 5df59b671..a6b2bc258 100644 --- a/projects/okernel/README.md +++ b/projects/okernel/README.md @@ -73,18 +73,18 @@ then entered where the permission violation can be handled. # Integration with LinuxKit Custom Linux distributions utilizing the split kernel can be readily built -using LinuxKit by simply specifying an okernel Docker image in the `kernel` -section of the OS image YAML specification. See the sample YAML files provided -in [examples](https://github.com/linuxkit/linuxkit/tree/master/projects/okernel/examples). +using LinuxKit by simply specifying an okernel image in the `kernel` section +of the LinuxKit OS image YAML specification. See the sample YAML files provided +in [examples/](https://github.com/linuxkit/linuxkit/tree/master/projects/okernel/examples) for more details. ## Building the split kernel image for LinuxKit - - `make` will build and package the latest version of the split kernel, by - pulling sources from the top-of-tree of the okernel project GitHub - (https://github.com/linux-okernel/linux-okernel). - - Additionally, a specific version of the kernel can be built + - `make` will build and package the latest version of the split kernel + for LinuxKit, by pulling sources from the top-of-tree of the + okernel project GitHub (https://github.com/linux-okernel/linux-okernel). + - Alternatively, a specific version of the kernel can be built by setting the 'KERNEL' environment variable to the appropriate - value, e.g.: `make KERNEL=ok-4.11-rc2`. The value MUST correspond + value, e.g.: `make KERNEL=ok-4.13-rc7`. The value MUST correspond to a legitimate okernel tag present in the project GitHub (https://github.com/linux-okernel/linux-okernel/tags) beginning with __"ok-"__. @@ -94,6 +94,29 @@ in [examples](https://github.com/linuxkit/linuxkit/tree/master/projects/okernel/ string corresponding to a kernel version, will build the kernel vulnerability emulation kernel module for that kernel, useful for testing. +## Enabling NR-mode protections in LinuxKit +By default, okernel will treat processes like any standard Linux kernel, i.e. no +R-mode/NR-mode split is applied when processes are created. This is by design to +assist development and enable coexistence of normal and protected processes in +the same environment. A consequence of that is that processes must be explicitly +launched in NR-mode. + +In early versions of LinuxKit we provided a lightly-modified version of the +default 'init' container to ensure runc launched in NR-mode and by extension all +its children processes/containers got instantiated in NR-mode as well. + +Recent changes to how LinuxKit implements init made this approach obsolete. We +are in the process of developing an alternative (and hopefully more elegant) +way to launch containers in NR-mode (Aug 2017). + +Note that because okernel utilizes the processor's VMX facilities, okernel +LinuxKit images with full NR-mode operation can only be run in baremetal +environments. If no processes are switched to NR-mode, okernel will boot and +operate normally inside a VM, however in this scenario it offers no benefits +compared to a standard Linux kernel. +We are investigating nested virtualization support to enable running okernel +inside VMs. + # Limitations and Caveats diff --git a/projects/okernel/examples/okernel_simple.yaml b/projects/okernel/examples/okernel_simple.yaml index cf549ced6..96fec0d94 100644 --- a/projects/okernel/examples/okernel_simple.yaml +++ b/projects/okernel/examples/okernel_simple.yaml @@ -1,6 +1,6 @@ kernel: - image: linuxkit/okernel:latest - cmdline: "console=ttyS0 console=tty0 page_poison=1" + image: okernel:latest + cmdline: "console=tty0 page_poison=1" init: - linuxkit/init:6d11a1f9d299d3425e78cce80dfba8b236d20412 - linuxkit/runc:a1b564248a0d0b118c11e61db9f84ecf41dd2d2a @@ -10,14 +10,12 @@ onboot: - name: sysctl image: linuxkit/sysctl:154913b72c6f1f33eb408609fca9963628e8c051 services: - - name: rngd - image: linuxkit/rngd:558e86a36242bb74353bc9287b715ddb8567357e - name: dhcpcd image: linuxkit/dhcpcd:f3f5413abb78fae9020e35bd4788fa93df4530b7 - - name: sshd - image: linuxkit/sshd:505a985d7bd7a90f15eca9cb4dc6ec92789d51a0 -files: - - path: root/.ssh/authorized_keys - source: ~/.ssh/id_rsa.pub - mode: "0600" - optional: true + - name: getty + image: linuxkit/getty:797cb79e0a229fcd16ebf44a0da74bcec03968ec + env: + - INSECURE=true +trust: + org: + - linuxkit diff --git a/projects/okernel/kernel_config.okernel b/projects/okernel/kernel_config.okernel index 3ce2d1bd1..47c53bccc 100644 --- a/projects/okernel/kernel_config.okernel +++ b/projects/okernel/kernel_config.okernel @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.10.0 Kernel Configuration +# Linux/x86 4.13.0-rc2 Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y @@ -87,7 +87,9 @@ CONFIG_AUDIT_TREE=y # 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 @@ -95,6 +97,7 @@ CONFIG_GENERIC_MSI_IRQ_DOMAIN=y # CONFIG_IRQ_DOMAIN_DEBUG is not set 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_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y @@ -133,12 +136,12 @@ CONFIG_TASK_IO_ACCOUNTING=y CONFIG_TREE_RCU=y CONFIG_RCU_EXPERT=y CONFIG_SRCU=y +CONFIG_TREE_SRCU=y # CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y +CONFIG_RCU_NEED_SEGCBLIST=y CONFIG_RCU_FANOUT=64 CONFIG_RCU_FANOUT_LEAF=16 -# CONFIG_TREE_RCU_TRACE is not set -CONFIG_RCU_KTHREAD_PRIO=0 # CONFIG_RCU_NOCB_CPU is not set CONFIG_BUILD_BIN2C=y CONFIG_IKCONFIG=m @@ -194,7 +197,6 @@ CONFIG_RD_LZMA=y CONFIG_RD_XZ=y CONFIG_RD_LZO=y CONFIG_RD_LZ4=y -CONFIG_INITRAMFS_COMPRESSION=".gz" CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y # CONFIG_CC_OPTIMIZE_FOR_SIZE is not set CONFIG_SYSCTL=y @@ -248,11 +250,13 @@ CONFIG_SLUB_DEBUG=y # CONFIG_SLAB is not set CONFIG_SLUB=y # CONFIG_SLOB is not set +# CONFIG_SLAB_MERGE_DEFAULT is not set # CONFIG_SLAB_FREELIST_RANDOM is not set CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SYSTEM_DATA_VERIFICATION=y CONFIG_PROFILING=y CONFIG_TRACEPOINTS=y +CONFIG_CRASH_CORE=y CONFIG_KEXEC_CORE=y # CONFIG_OPROFILE is not set CONFIG_HAVE_OPROFILE=y @@ -262,7 +266,7 @@ CONFIG_JUMP_LABEL=y # CONFIG_STATIC_KEYS_SELFTEST is not set CONFIG_OPTPROBES=y CONFIG_KPROBES_ON_FTRACE=y -CONFIG_UPROBES=y +# CONFIG_UPROBES is not set # CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_USE_BUILTIN_BSWAP=y @@ -276,6 +280,7 @@ 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_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y @@ -285,6 +290,7 @@ 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 @@ -303,6 +309,7 @@ CONFIG_CC_STACKPROTECTOR=y # CONFIG_CC_STACKPROTECTOR_NONE is not set # CONFIG_CC_STACKPROTECTOR_REGULAR is not set CONFIG_CC_STACKPROTECTOR_STRONG=y +CONFIG_THIN_ARCHIVES=y CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y CONFIG_HAVE_CONTEXT_TRACKING=y CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y @@ -319,6 +326,7 @@ 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_ARCH_HASH is not set @@ -334,6 +342,7 @@ 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 is not set # # GCOV-based kernel profiling @@ -368,6 +377,7 @@ 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_DEBUG_FS=y @@ -413,6 +423,8 @@ CONFIG_DEFAULT_DEADLINE=y # CONFIG_DEFAULT_NOOP is not set CONFIG_DEFAULT_IOSCHED="deadline" CONFIG_MQ_IOSCHED_DEADLINE=y +# CONFIG_MQ_IOSCHED_KYBER is not set +# CONFIG_IOSCHED_BFQ is not set CONFIG_PREEMPT_NOTIFIERS=y CONFIG_ASN1=y CONFIG_UNINLINE_SPIN_UNLOCK=y @@ -488,6 +500,7 @@ 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 @@ -537,9 +550,9 @@ CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y CONFIG_SPARSEMEM_VMEMMAP=y CONFIG_HAVE_MEMBLOCK=y CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_HAVE_GENERIC_GUP=y CONFIG_ARCH_DISCARD_MEMBLOCK=y CONFIG_MEMORY_ISOLATION=y -CONFIG_MOVABLE_NODE=y CONFIG_HAVE_BOOTMEM_INFO_NODE=y CONFIG_MEMORY_HOTPLUG=y CONFIG_MEMORY_HOTPLUG_SPARSE=y @@ -564,6 +577,8 @@ CONFIG_MEMORY_FAILURE=y 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 @@ -583,9 +598,11 @@ CONFIG_GENERIC_EARLY_IOREMAP=y CONFIG_ARCH_SUPPORTS_DEFERRED_STRUCT_PAGE_INIT=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_X86_PMEM_LEGACY_DEVICE=y CONFIG_X86_PMEM_LEGACY=y CONFIG_X86_CHECK_BIOS_CORRUPTION=y @@ -795,6 +812,7 @@ CONFIG_PCI_REALLOC_ENABLE_AUTO=y # CONFIG_PCI_STUB is not set CONFIG_HT_IRQ=y CONFIG_PCI_ATS=y +CONFIG_PCI_LOCKLESS_CONFIG=y CONFIG_PCI_IOV=y CONFIG_PCI_PRI=y CONFIG_PCI_PASID=y @@ -816,6 +834,16 @@ CONFIG_HOTPLUG_PCI_SHPC=m # PCI host controller drivers # # CONFIG_VMD is not set + +# +# PCI Endpoint +# +# CONFIG_PCI_ENDPOINT is not set + +# +# PCI switch controller drivers +# +# CONFIG_PCI_SW_SWITCHTEC is not set # CONFIG_ISA_BUS is not set CONFIG_ISA_DMA_API=y CONFIG_AMD_NB=y @@ -858,7 +886,6 @@ CONFIG_COMPAT_32=y CONFIG_COMPAT=y CONFIG_COMPAT_FOR_U64_ALIGNMENT=y CONFIG_SYSVIPC_COMPAT=y -CONFIG_KEYS_COMPAT=y CONFIG_X86_DEV_DMA_OPS=y CONFIG_NET=y CONFIG_COMPAT_NETLINK_MESSAGES=y @@ -871,6 +898,7 @@ 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_INET=y @@ -1280,6 +1308,7 @@ CONFIG_NET_SCHED=y # 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 @@ -1492,12 +1521,10 @@ CONFIG_BLK_DEV_RAM_DAX=y # CONFIG_ATA_OVER_ETH is not set CONFIG_VIRTIO_BLK=y # CONFIG_VIRTIO_BLK_SCSI is not set -# CONFIG_BLK_DEV_HD is not set # CONFIG_BLK_DEV_RBD is not set # CONFIG_BLK_DEV_RSXX is not set CONFIG_NVME_CORE=y CONFIG_BLK_DEV_NVME=y -# CONFIG_BLK_DEV_NVME_SCSI is not set # CONFIG_NVME_FC is not set # @@ -1525,7 +1552,7 @@ CONFIG_SENSORS_LIS3LV02D=m # CONFIG_USB_SWITCH_FSA9480 is not set # CONFIG_LATTICE_ECP3_CONFIG is not set CONFIG_SRAM=y -# CONFIG_PANEL is not set +# CONFIG_PCI_ENDPOINT_TEST is not set # CONFIG_C2PORT is not set # @@ -1593,6 +1620,7 @@ CONFIG_INTEL_MEI_ME=m # CONFIG_ECHO is not set # CONFIG_CXL_BASE is not set # CONFIG_CXL_AFU_DRIVER_OPS is not set +# CONFIG_CXL_LIB is not set CONFIG_HAVE_IDE=y # CONFIG_IDE is not set @@ -1604,7 +1632,6 @@ CONFIG_SCSI_MOD=y CONFIG_SCSI=y CONFIG_SCSI_DMA=y # CONFIG_SCSI_NETLINK is not set -# CONFIG_SCSI_MQ_DEFAULT is not set CONFIG_SCSI_PROC_FS=y # @@ -1819,6 +1846,7 @@ CONFIG_DM_UEVENT=y # 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 @@ -1948,14 +1976,14 @@ CONFIG_NET_VENDOR_HP=y # CONFIG_HP100 is not set CONFIG_NET_VENDOR_INTEL=y # CONFIG_E100 is not set -CONFIG_E1000=y -CONFIG_E1000E=y +# CONFIG_E1000 is not set +CONFIG_E1000E=m CONFIG_E1000E_HWTS=y -CONFIG_IGB=y -CONFIG_IGBVF=y -CONFIG_IXGB=y -CONFIG_IXGBE=y -CONFIG_IXGBEVF=y +# CONFIG_IGB is not set +# CONFIG_IGBVF is not set +# CONFIG_IXGB is not set +# CONFIG_IXGBE is not set +# CONFIG_IXGBEVF is not set # CONFIG_I40E is not set # CONFIG_I40EVF is not set # CONFIG_FM10K is not set @@ -1970,6 +1998,7 @@ CONFIG_NET_VENDOR_MELLANOX=y # CONFIG_MLX4_CORE 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 @@ -2045,23 +2074,19 @@ CONFIG_NET_VENDOR_VIA=y CONFIG_NET_VENDOR_WIZNET=y # CONFIG_WIZNET_W5100 is not set # CONFIG_WIZNET_W5300 is not set +# CONFIG_NET_VENDOR_SYNOPSYS 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_BITBANG is not set +# CONFIG_MDIO_THUNDER is not set CONFIG_PHYLIB=y CONFIG_SWPHY=y # CONFIG_LED_TRIGGER_PHY is not set -# -# MDIO bus device drivers -# -# CONFIG_MDIO_BCM_UNIMAC is not set -# CONFIG_MDIO_BITBANG is not set -# CONFIG_MDIO_OCTEON is not set -# CONFIG_MDIO_THUNDER is not set - # # MII PHY device drivers # @@ -2072,6 +2097,7 @@ CONFIG_SWPHY=y # 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_DP83848_PHY is not set # CONFIG_DP83867_PHY is not set @@ -2081,6 +2107,7 @@ CONFIG_FIXED_PHY=y # 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_MICROSEMI_PHY is not set @@ -2214,6 +2241,7 @@ CONFIG_WLAN_VENDOR_TI=y CONFIG_WLAN_VENDOR_ZYDAS=y # CONFIG_USB_ZD1201 is not set # CONFIG_ZD1211RW is not set +# CONFIG_WLAN_VENDOR_QUANTENNA is not set # CONFIG_MAC80211_HWSIM is not set # CONFIG_USB_NET_RNDIS_WLAN is not set @@ -2265,6 +2293,7 @@ CONFIG_INPUT_KEYBOARD=y 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 is not set # CONFIG_KEYBOARD_GPIO_POLLED is not set @@ -2290,6 +2319,7 @@ 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 is not set CONFIG_MOUSE_PS2_CYPRESS=y CONFIG_MOUSE_PS2_LIFEBOOK=y CONFIG_MOUSE_PS2_TRACKPOINT=y @@ -2333,6 +2363,7 @@ CONFIG_INPUT_JOYSTICK=y # CONFIG_JOYSTICK_JOYDUMP is not set # CONFIG_JOYSTICK_XPAD is not set # CONFIG_JOYSTICK_WALKERA0701 is not set +# CONFIG_JOYSTICK_PSXPAD_SPI is not set CONFIG_INPUT_TABLET=y # CONFIG_TABLET_USB_ACECAD is not set # CONFIG_TABLET_USB_AIPTEK is not set @@ -2394,6 +2425,7 @@ CONFIG_TOUCHSCREEN_PROPERTIES=y # 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_SURFACE3_SPI is not set # CONFIG_TOUCHSCREEN_SX8654 is not set # CONFIG_TOUCHSCREEN_TPS6507X is not set @@ -2625,8 +2657,11 @@ CONFIG_I2C_ALGOBIT=m # I2C system bus drivers (mostly embedded / system-on-chip) # # CONFIG_I2C_CBUS_GPIO is not set -# CONFIG_I2C_DESIGNWARE_PLATFORM is not set +CONFIG_I2C_DESIGNWARE_CORE=y +CONFIG_I2C_DESIGNWARE_PLATFORM=y +# CONFIG_I2C_DESIGNWARE_SLAVE is not set # CONFIG_I2C_DESIGNWARE_PCI is not set +# CONFIG_I2C_DESIGNWARE_BAYTRAIL is not set # CONFIG_I2C_EMEV2 is not set # CONFIG_I2C_GPIO is not set # CONFIG_I2C_OCORES is not set @@ -2684,12 +2719,9 @@ CONFIG_SPI_MASTER=y # 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 - -# -# PPS support -# CONFIG_PPS=m # CONFIG_PPS_DEBUG is not set # CONFIG_NTP_PPS is not set @@ -2724,10 +2756,12 @@ 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 is not set # CONFIG_PINCTRL_BROXTON is not set +# CONFIG_PINCTRL_CANNONLAKE is not set # CONFIG_PINCTRL_GEMINILAKE is not set # CONFIG_PINCTRL_SUNRISEPOINT is not set CONFIG_GPIOLIB=y @@ -2781,7 +2815,6 @@ CONFIG_GPIO_TPS65910=y # CONFIG_GPIO_TPS65912 is not set # CONFIG_GPIO_TWL4030 is not set # CONFIG_GPIO_TWL6040 is not set -# CONFIG_GPIO_WHISKEY_COVE is not set # CONFIG_GPIO_WM831X is not set # CONFIG_GPIO_WM8350 is not set @@ -2800,10 +2833,7 @@ CONFIG_GPIO_TPS65910=y # CONFIG_GPIO_MAX7301 is not set # CONFIG_GPIO_MC33880 is not set # CONFIG_GPIO_PISOSR is not set - -# -# SPI or I2C GPIO expanders -# +# CONFIG_GPIO_XRA1403 is not set # # USB GPIO expanders @@ -2836,6 +2866,7 @@ CONFIG_POWER_SUPPLY=y # 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_MAX77693 is not set # CONFIG_CHARGER_BQ2415X is not set @@ -2878,6 +2909,7 @@ CONFIG_HWMON=y # 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 @@ -3004,6 +3036,7 @@ CONFIG_SENSORS_CORETEMP=m # CONFIG_SENSORS_ACPI_POWER is not set # CONFIG_SENSORS_ATK0110 is not set CONFIG_THERMAL=y +CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 CONFIG_THERMAL_HWMON=y CONFIG_THERMAL_WRITABLE_TRIPS=y CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y @@ -3024,11 +3057,11 @@ CONFIG_X86_PKG_TEMP_THERMAL=m # ACPI INT340X thermal drivers # # CONFIG_INT340X_THERMAL is not set -# CONFIG_INTEL_BXT_PMIC_THERMAL is not set # CONFIG_INTEL_PCH_THERMAL is not set CONFIG_WATCHDOG=y CONFIG_WATCHDOG_CORE=y # CONFIG_WATCHDOG_NOWAYOUT is not set +# CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED is not set # CONFIG_WATCHDOG_SYSFS is not set # @@ -3137,6 +3170,7 @@ CONFIG_HTC_I2CPLD=y CONFIG_LPC_ICH=m # CONFIG_LPC_SCH is not set CONFIG_INTEL_SOC_PMIC=y +# 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 @@ -3175,6 +3209,7 @@ 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 @@ -3261,6 +3296,7 @@ CONFIG_REGULATOR=y # 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 @@ -3292,6 +3328,7 @@ CONFIG_DRM_MIPI_DSI=y CONFIG_DRM_KMS_HELPER=m CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_FBDEV_EMULATION=y +CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_LOAD_EDID_FIRMWARE=y # @@ -3320,6 +3357,10 @@ CONFIG_DRM_I915_USERPTR=y # 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_SELFTEST is not set +# CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set +# CONFIG_DRM_I915_DEBUG_VBLANK_EVADE is not set # CONFIG_DRM_VGEM is not set # CONFIG_DRM_VMWGFX is not set # CONFIG_DRM_GMA500 is not set @@ -3336,6 +3377,7 @@ CONFIG_DRM_PANEL=y # Display Panels # CONFIG_DRM_BRIDGE=y +CONFIG_DRM_PANEL_BRIDGE=y # # Display Interface Bridges @@ -3448,6 +3490,7 @@ CONFIG_BACKLIGHT_CLASS_DEVICE=y # 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_VGASTATE is not set CONFIG_HDMI=y @@ -3469,15 +3512,12 @@ CONFIG_SND=m CONFIG_SND_TIMER=m CONFIG_SND_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_SEQUENCER=m -# CONFIG_SND_SEQ_DUMMY is not set -# CONFIG_SND_MIXER_OSS is not set -# CONFIG_SND_PCM_OSS is not set +# CONFIG_SND_OSSEMUL is not set CONFIG_SND_PCM_TIMER=y -# CONFIG_SND_SEQUENCER_OSS is not set # CONFIG_SND_HRTIMER is not set CONFIG_SND_DYNAMIC_MINORS=y CONFIG_SND_MAX_CARDS=32 @@ -3488,12 +3528,14 @@ CONFIG_SND_VERBOSE_PROCFS=y # CONFIG_SND_DEBUG is not set CONFIG_SND_VMASTER=y CONFIG_SND_DMA_SGBUF=y -CONFIG_SND_RAWMIDI_SEQ=m +CONFIG_SND_SEQUENCER=m +# CONFIG_SND_SEQ_DUMMY is not set +CONFIG_SND_SEQ_MIDI_EVENT=m +CONFIG_SND_SEQ_MIDI_EMUL=m +CONFIG_SND_SEQ_VIRMIDI=m +CONFIG_SND_OPL3_LIB=m CONFIG_SND_OPL3_LIB_SEQ=m # CONFIG_SND_OPL4_LIB_SEQ is not set -# CONFIG_SND_SBAWE_SEQ is not set -# CONFIG_SND_EMU10K1_SEQ is not set -CONFIG_SND_OPL3_LIB=m CONFIG_SND_AC97_CODEC=m CONFIG_SND_DRIVERS=y # CONFIG_SND_PCSP is not set @@ -3542,6 +3584,7 @@ CONFIG_SND_ALS300=m # CONFIG_SND_INDIGOIOX is not set # CONFIG_SND_INDIGODJX is not set # CONFIG_SND_EMU10K1 is not set +# CONFIG_SND_EMU10K1_SEQ is not set # CONFIG_SND_EMU10K1X is not set # CONFIG_SND_ENS1370 is not set # CONFIG_SND_ENS1371 is not set @@ -3622,9 +3665,10 @@ CONFIG_SND_FIREWIRE=y # CONFIG_SND_BEBOB is not set # CONFIG_SND_FIREWIRE_DIGI00X is not set # CONFIG_SND_FIREWIRE_TASCAM is not set +# CONFIG_SND_FIREWIRE_MOTU is not set +# CONFIG_SND_FIREFACE is not set # CONFIG_SND_SOC is not set # CONFIG_SND_X86 is not set -# CONFIG_SOUND_PRIME is not set CONFIG_AC97_BUS=m # @@ -3640,9 +3684,11 @@ CONFIG_HID_GENERIC=y # 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 @@ -3668,6 +3714,7 @@ CONFIG_HID_GENERIC=y # 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_TWINHAN is not set # CONFIG_HID_KENSINGTON is not set # CONFIG_HID_LCPOWER is not set @@ -3685,6 +3732,7 @@ CONFIG_HID_LOGITECH_HIDPP=m # 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 @@ -3693,6 +3741,7 @@ CONFIG_HID_LOGITECH_HIDPP=m # 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 @@ -3737,6 +3786,7 @@ CONFIG_USB_SUPPORT=y CONFIG_USB_COMMON=y CONFIG_USB_ARCH_HAS_HCD=y CONFIG_USB=y +# CONFIG_USB_PCI is not set CONFIG_USB_ANNOUNCE_NEW_DEVICES=y # @@ -3756,12 +3806,10 @@ CONFIG_USB_DYNAMIC_MINORS=y # # CONFIG_USB_C67X00_HCD is not set CONFIG_USB_XHCI_HCD=y -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 @@ -3769,9 +3817,7 @@ CONFIG_USB_EHCI_HCD_PLATFORM=y # 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=y -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 @@ -3807,7 +3853,6 @@ CONFIG_USB_DWC2_HOST=y # # Gadget/Dual-role mode requires USB Gadget support to be enabled # -CONFIG_USB_DWC2_PCI=y # CONFIG_USB_DWC2_DEBUG is not set # CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set # CONFIG_USB_CHIPIDEA is not set @@ -3900,7 +3945,6 @@ CONFIG_USB_SERIAL=m # CONFIG_USB_HSIC_USB4604 is not set # CONFIG_USB_LINK_LAYER_TEST is not set # CONFIG_USB_CHAOSKEY is not set -# CONFIG_UCSI is not set # # USB Physical Layer drivers @@ -3910,6 +3954,11 @@ CONFIG_NOP_USB_XCEIV=y # CONFIG_USB_GPIO_VBUS is not set # CONFIG_USB_ISP1301 is not set # CONFIG_USB_GADGET is not set + +# +# USB Power Delivery and Type-C drivers +# +# CONFIG_TYPEC_UCSI is not set CONFIG_USB_LED_TRIG=y # CONFIG_USB_ULPI_BUS is not set # CONFIG_UWB is not set @@ -4013,7 +4062,21 @@ CONFIG_EDAC=y # CONFIG_EDAC_LEGACY_SYSFS is not set # CONFIG_EDAC_DEBUG is not set # CONFIG_EDAC_DECODE_MCE is not set -# CONFIG_EDAC_MM_EDAC is not set +# CONFIG_EDAC_GHES is not set +# CONFIG_EDAC_E752X is not set +# CONFIG_EDAC_I82975X is not set +# CONFIG_EDAC_I3000 is not set +# CONFIG_EDAC_I3200 is not set +# CONFIG_EDAC_IE31200 is not set +# CONFIG_EDAC_X38 is not set +# CONFIG_EDAC_I5400 is not set +# CONFIG_EDAC_I7CORE is not set +# CONFIG_EDAC_I5000 is not set +# CONFIG_EDAC_I5100 is not set +# CONFIG_EDAC_I7300 is not set +# CONFIG_EDAC_SBRIDGE is not set +# 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 @@ -4022,6 +4085,7 @@ CONFIG_RTC_HCTOSYS_DEVICE="rtc0" CONFIG_RTC_SYSTOHC=y CONFIG_RTC_SYSTOHC_DEVICE="rtc0" # CONFIG_RTC_DEBUG is not set +# CONFIG_RTC_NVMEM is not set # # RTC interfaces @@ -4125,6 +4189,7 @@ CONFIG_RTC_DRV_CMOS=y # # on-CPU RTC drivers # +# CONFIG_RTC_DRV_FTRTC010 is not set # CONFIG_RTC_DRV_PCAP is not set # @@ -4159,8 +4224,10 @@ CONFIG_ASYNC_TX_DMA=y CONFIG_SYNC_FILE=y # CONFIG_SW_SYNC is not set CONFIG_AUXDISPLAY=y +# CONFIG_HD44780 is not set # CONFIG_KS0108 is not set # CONFIG_IMG_ASCII_LCD is not set +# CONFIG_PANEL is not set # CONFIG_UIO is not set # CONFIG_VFIO is not set CONFIG_VIRT_DRIVERS=y @@ -4179,11 +4246,13 @@ CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y # # Microsoft Hyper-V guest support # +# CONFIG_HYPERV_TSCPAGE is not set CONFIG_STAGING=y # CONFIG_PRISM2_USB is not set # CONFIG_COMEDI is not set # CONFIG_RTL8192U is not set # CONFIG_RTLLIB is not set +# CONFIG_RTL8723BS is not set # CONFIG_R8712U is not set # CONFIG_R8188EU is not set # CONFIG_RTS5208 is not set @@ -4215,6 +4284,12 @@ CONFIG_UNISYSSPAR=y # CONFIG_MOST is not set # CONFIG_KS7010 is not set # CONFIG_GREYBUS is not set + +# +# USB Power Delivery and Type-C drivers +# +# CONFIG_TYPEC_TCPM is not set +# CONFIG_DRM_VBOXVIDEO is not set CONFIG_X86_PLATFORM_DEVICES=y # CONFIG_ACER_WMI is not set # CONFIG_ACERHDF is not set @@ -4223,6 +4298,7 @@ CONFIG_X86_PLATFORM_DEVICES=y # CONFIG_DELL_LAPTOP is not set # CONFIG_DELL_WMI is not set # CONFIG_DELL_WMI_AIO is not set +# CONFIG_DELL_WMI_LED is not set # CONFIG_DELL_SMO8800 is not set # CONFIG_DELL_RBTN is not set # CONFIG_FUJITSU_LAPTOP is not set @@ -4244,12 +4320,16 @@ CONFIG_HP_WMI=m # CONFIG_ASUS_WMI is not set # CONFIG_ASUS_WIRELESS is not set CONFIG_ACPI_WMI=m +# CONFIG_WMI_BMOF is not set # CONFIG_MSI_WMI is not set +# CONFIG_PEAQ_WMI is not set # CONFIG_TOPSTAR_LAPTOP is not set # CONFIG_TOSHIBA_BT_RFKILL is not set # CONFIG_TOSHIBA_HAPS is not set # CONFIG_TOSHIBA_WMI is not set # CONFIG_ACPI_CMPC is not set +# CONFIG_INTEL_CHT_INT33FE is not set +# CONFIG_INTEL_INT0002_VGPIO is not set # CONFIG_INTEL_HID_EVENT is not set # CONFIG_INTEL_VBTN is not set # CONFIG_INTEL_IPS is not set @@ -4269,7 +4349,6 @@ CONFIG_ACPI_WMI=m # CONFIG_MLX_PLATFORM is not set # CONFIG_MLX_CPLD_PLATFORM is not set # CONFIG_INTEL_TURBO_MAX_3 is not set -# CONFIG_SILEAD_DMI is not set CONFIG_PMC_ATOM=y CONFIG_CHROME_PLATFORMS=y # CONFIG_CHROMEOS_LAPTOP is not set @@ -4293,10 +4372,7 @@ CONFIG_COMMON_CLK=y # CONFIG_COMMON_CLK_PWM is not set # CONFIG_COMMON_CLK_PXA is not set # CONFIG_COMMON_CLK_PIC32 is not set - -# -# Hardware Spinlock drivers -# +# CONFIG_HWSPINLOCK is not set # # Clock Source drivers @@ -4336,6 +4412,7 @@ CONFIG_IRQ_REMAP=y # # Rpmsg drivers # +# CONFIG_RPMSG_QCOM_GLINK_RPM is not set # # SOC (System On Chip) specific Drivers @@ -4344,6 +4421,10 @@ CONFIG_IRQ_REMAP=y # # Broadcom SoC drivers # + +# +# i.MX SoC drivers +# # CONFIG_SUNXI_SRAM is not set CONFIG_SOC_TI=y # CONFIG_SOC_ZTE is not set @@ -4375,7 +4456,6 @@ CONFIG_EXTCON=y # 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 @@ -4414,13 +4494,15 @@ CONFIG_ARM_GIC_MAX_NR=1 CONFIG_RESET_CONTROLLER=y # CONFIG_RESET_ATH79 is not set # CONFIG_RESET_BERLIN is not set +# CONFIG_RESET_GEMINI is not set +# CONFIG_RESET_IMX7 is not set # CONFIG_RESET_LPC18XX is not set # CONFIG_RESET_MESON is not set # CONFIG_RESET_PISTACHIO is not set # CONFIG_RESET_SOCFPGA is not set # CONFIG_RESET_STM32 is not set # CONFIG_RESET_SUNXI is not set -# CONFIG_TI_SYSCON_RESET is not set +# CONFIG_RESET_TI_SYSCON is not set # CONFIG_RESET_ZYNQ is not set # CONFIG_RESET_TEGRA_BPMP is not set # CONFIG_FMC is not set @@ -4429,9 +4511,9 @@ CONFIG_RESET_CONTROLLER=y # PHY Subsystem # CONFIG_GENERIC_PHY=y +# 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_BCM_KONA_USB2_PHY is not set # CONFIG_PHY_SAMSUNG_USB2 is not set CONFIG_POWERCAP=y CONFIG_INTEL_RAPL=m @@ -4441,7 +4523,7 @@ CONFIG_INTEL_RAPL=m # Performance monitor support # CONFIG_RAS=y -# CONFIG_MCE_AMD_INJ is not set +# CONFIG_RAS_CEC is not set # CONFIG_THUNDERBOLT is not set # @@ -4453,6 +4535,7 @@ CONFIG_LIBNVDIMM=y # CONFIG_ND_BLK is not set CONFIG_ND_CLAIM=y CONFIG_BTT=y +CONFIG_DAX=y # CONFIG_DEV_DAX is not set # CONFIG_NVMEM is not set # CONFIG_STM is not set @@ -4559,6 +4642,7 @@ CONFIG_FUSE_FS=y # CONFIG_CUSE is not set CONFIG_OVERLAY_FS=m # CONFIG_OVERLAY_FS_REDIRECT_DIR is not set +# CONFIG_OVERLAY_FS_INDEX is not set # # Caches @@ -4776,6 +4860,8 @@ CONFIG_ARCH_HAS_KCOV=y # Debug Lockups and Hangs # CONFIG_LOCKUP_DETECTOR=y +CONFIG_SOFTLOCKUP_DETECTOR=y +CONFIG_HARDLOCKUP_DETECTOR_PERF=y CONFIG_HARDLOCKUP_DETECTOR=y # CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 @@ -4813,6 +4899,7 @@ CONFIG_DEBUG_ATOMIC_SLEEP=y # 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 @@ -4825,8 +4912,6 @@ CONFIG_DEBUG_BUGVERBOSE=y # RCU Debugging # CONFIG_PROVE_RCU=y -# CONFIG_PROVE_RCU_REPEATEDLY is not set -# CONFIG_SPARSE_RCU_POINTER is not set # CONFIG_TORTURE_TEST is not set # CONFIG_RCU_PERF_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set @@ -4871,10 +4956,9 @@ CONFIG_BRANCH_PROFILE_NONE=y # CONFIG_PROFILE_ALL_BRANCHES is not set CONFIG_STACK_TRACER=y CONFIG_BLK_DEV_IO_TRACE=y -CONFIG_KPROBE_EVENT=y -CONFIG_UPROBE_EVENT=y -CONFIG_BPF_EVENTS=y -CONFIG_PROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS is not set +# CONFIG_UPROBE_EVENTS is not set +# CONFIG_PROBE_EVENTS is not set CONFIG_DYNAMIC_FTRACE=y CONFIG_DYNAMIC_FTRACE_WITH_REGS=y CONFIG_FUNCTION_PROFILER=y @@ -4886,7 +4970,7 @@ CONFIG_MMIOTRACE=y # CONFIG_TRACEPOINT_BENCHMARK is not set # CONFIG_RING_BUFFER_BENCHMARK is not set # CONFIG_RING_BUFFER_STARTUP_TEST is not set -# CONFIG_TRACE_ENUM_MAP_FILE is not set +# CONFIG_TRACE_EVAL_MAP_FILE is not set CONFIG_TRACING_EVENTS_GPIO=y # @@ -4915,10 +4999,12 @@ CONFIG_TRACING_EVENTS_GPIO=y # CONFIG_TEST_USER_COPY is not set # CONFIG_TEST_BPF is not set # CONFIG_TEST_FIRMWARE is not set +# CONFIG_TEST_SYSCTL is not set # CONFIG_TEST_UDELAY is not set CONFIG_MEMTEST=y # CONFIG_TEST_STATIC_KEYS is not set # CONFIG_BUG_ON_DATA_CORRUPTION is not set +# CONFIG_TEST_KMOD is not set # CONFIG_SAMPLES is not set CONFIG_HAVE_ARCH_KGDB=y CONFIG_KGDB=y @@ -4935,10 +5021,12 @@ CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y CONFIG_STRICT_DEVMEM=y # CONFIG_IO_STRICT_DEVMEM is not set +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_CORE is not set # CONFIG_X86_PTDUMP is not set # CONFIG_EFI_PGT_DUMP is not set @@ -4970,20 +5058,22 @@ CONFIG_X86_DEBUG_FPU=y # Security options # CONFIG_KEYS=y +CONFIG_KEYS_COMPAT=y CONFIG_PERSISTENT_KEYRINGS=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_INTEL_TXT=y CONFIG_LSM_MMAP_MIN_ADDR=0 CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y -CONFIG_HAVE_ARCH_HARDENED_USERCOPY=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 @@ -5028,6 +5118,7 @@ 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_APPRAISE_BOOTPARAM is not set CONFIG_IMA_TRUSTED_KEYRING=y # CONFIG_IMA_BLACKLIST_KEYRING is not set # CONFIG_IMA_LOAD_X509 is not set @@ -5220,6 +5311,7 @@ CONFIG_CRYPTO_DEV_CCP=y # 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_CRYPTO_DEV_VIRTIO=m CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y @@ -5236,6 +5328,7 @@ 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_HAVE_KVM=y # CONFIG_VIRTUALIZATION is not set CONFIG_OKERNEL=y @@ -5267,6 +5360,7 @@ CONFIG_CRC32_SLICEBY8=y # CONFIG_CRC32_SLICEBY4 is not set # CONFIG_CRC32_SARWATE is not set # CONFIG_CRC32_BIT is not set +# CONFIG_CRC4 is not set # CONFIG_CRC7 is not set CONFIG_LIBCRC32C=m # CONFIG_CRC8 is not set @@ -5322,5 +5416,6 @@ CONFIG_FONT_8x16=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_ARCH_HAS_PMEM_API=y +CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y CONFIG_ARCH_HAS_MMIO_FLUSH=y CONFIG_SBITMAP=y