sfc: TC offload counters
Subsystems (3)
cover sfc: TC offload counters
From: Edward Cree <[email protected]>
EF100 hardware supports attaching counters to action-sets in the MAE. Use these counters to implement stats for TC flower offload.
The counters are delivered to the host over a special hardware RX queue
which should only ever receive counter update messages, not 'real' network packets.
Edward Cree (11):
sfc: add ability for an RXQ to grant credits on refill
sfc: add start and stop methods to channels
sfc: add ability for extra channels to receive raw RX buffers
sfc: add ef100 MAE counter support functions
sfc: add extra RX channel to receive MAE counter updates on ef100
sfc: add hashtables for MAE counters and counter ID mappings
sfc: add functions to allocate/free MAE counters
sfc: accumulate MAE counter values from update packets
sfc: attach an MAE counter to TC actions that need it
sfc: validate MAE action order
sfc: implement counters readout to TC stats
drivers/net/ethernet/sfc/Makefile | 2 +- drivers/net/ethernet/sfc/ef100_rx.c | 21 +- drivers/net/ethernet/sfc/efx_channels.c | 9 +- drivers/net/ethernet/sfc/mae.c | 170 +++++- drivers/net/ethernet/sfc/mae.h | 7 + drivers/net/ethernet/sfc/mae_counter_format.h | 73 +++ drivers/net/ethernet/sfc/mcdi.h | 5 + drivers/net/ethernet/sfc/net_driver.h | 17 +- drivers/net/ethernet/sfc/rx_common.c | 3 + drivers/net/ethernet/sfc/tc.c | 122 +++++ drivers/net/ethernet/sfc/tc.h | 16 + drivers/net/ethernet/sfc/tc_counters.c | 501 ++++++++++++++++++ drivers/net/ethernet/sfc/tc_counters.h | 59 +++ 13 files changed, 997 insertions(+), 8 deletions(-) create mode 100644 drivers/net/ethernet/sfc/mae_counter_format.h create mode 100644 drivers/net/ethernet/sfc/tc_counters.c create mode 100644 drivers/net/ethernet/sfc/tc_counters.h
PATCH 1/11 sfc: add ability for an RXQ to grant credits on refill
From: Edward Cree <[email protected]>
EF100 hardware streams MAE counter updates to the driver over a dedicated
RX queue; however, the MCPU is not able to detect when RX buffers have been posted to the ring. Thus, the driver must call MC_CMD_MAE_COUNTERS_STREAM_GIVE_CREDITS; this patch adds the infrastructure to support that to the core RXQ handling code.
--- drivers/net/ethernet/sfc/ef100_rx.c | 14 +++++++++++--- drivers/net/ethernet/sfc/net_driver.h | 8 ++++++++ drivers/net/ethernet/sfc/rx_common.c | 3 +++ 3 files changed, 22 insertions(+), 3 deletions(-)
drivers/net/ethernet/sfc/ef100_rx.c +11 -3
@@ -183,24 +183,32 @@ void efx_ef100_ev_rx(struct efx_channel *channel, const efx_qword_t *p_event)void ef100_rx_write (struct efx_rx_queue *rx_queue) { +unsigned int notified_count = rx_queue->notified_count;struct efx_rx_buffer *rx_buf;unsigned int idx;efx_qword_t *rxd;efx_dword_t rxdb; -while (rx_queue->notified_count != rx_queue->added_count) { - idx = rx_queue->notified_count & rx_queue->ptr_mask; +while (notified_count != rx_queue->added_count) { + idx = notified_count & rx_queue->ptr_mask; rx_buf =efx_rx_buffer (rx_queue, idx); rxd =efx_rx_desc (rx_queue, idx);EFX_POPULATE_QWORD_1 (*rxd,ESF_GZ_RX_BUF_ADDR , rx_buf->dma_addr); - ++rx_queue->notified_count; + ++notified_count; } +if (notified_count == rx_queue->notified_count) +return ;wmb ();EFX_POPULATE_DWORD_1 (rxdb,ERF_GZ_RX_RING_PIDX , rx_queue->added_count & rx_queue->ptr_mask);efx_writed_page (rx_queue->efx, &rxdb,ER_GZ_RX_RING_DOORBELL ,efx_rx_queue_index (rx_queue)); +if (rx_queue->grant_credits) +wmb (); + rx_queue->notified_count = notified_count; +if (rx_queue->grant_credits) +schedule_work (&rx_queue->grant_work); }
drivers/net/ethernet/sfc/net_driver.h +8 -0
@@ -363,8 +363,12 @@ struct efx_rx_page_state {* @refill_enabled: Enable refill whenever fill level is low * @flush_pending: Set when a RX flush is pending. Has the same lifetime as * @rxq_flush_pending. +* @grant_credits: Posted RX descriptors need to be granted to the MAE with +* %MC_CMD_MAE_COUNTERS_STREAM_GIVE_CREDITS. For %EFX_EXTRA_CHANNEL_TC, +* and only supported on EF100. * @added_count: Number of buffers added to the receive queue. * @notified_count: Number of buffers given to NIC (<= @added_count). +* @granted_count: Number of buffers granted to the MAE (<= @notified_count). * @removed_count: Number of buffers removed from the receive queue. * @scatter_n: Used by NIC specific receive code. * @scatter_len: Used by NIC specific receive code.
@@ -385,6 +389,7 @@ struct efx_rx_page_state {* refill was triggered. * @recycle_count: RX buffer recycle counter. * @slow_fill: Timer used to defer efx_nic_generate_fill_event(). +* @grant_work: workitem used to grant credits to the MAE if @grant_credits * @xdp_rxq_info: XDP specific RX queue information. * @xdp_rxq_info_valid: Is xdp_rxq_info valid data?. */
@@ -396,9 +401,11 @@ struct efx_rx_queue {unsigned int ptr_mask;bool refill_enabled;bool flush_pending; +bool grant_credits;unsigned int added_count;unsigned int notified_count; +unsigned int granted_count;unsigned int removed_count;unsigned int scatter_n;unsigned int scatter_len;
@@ -416,6 +423,7 @@ struct efx_rx_queue {unsigned int recycle_count;struct timer_list slow_fill;unsigned int slow_fill_count; +struct work_struct grant_work;/* Statistics to supplement MAC stats */ unsigned long rx_packets;struct xdp_rxq_info xdp_rxq_info;
drivers/net/ethernet/sfc/rx_common.c +3 -0
@@ -229,6 +229,7 @@ void efx_init_rx_queue(struct efx_rx_queue *rx_queue)/* Initialise ptr fields */ rx_queue->added_count =0 ; rx_queue->notified_count =0 ; + rx_queue->granted_count =0 ; rx_queue->removed_count =0 ; rx_queue->min_fill =-1U ;efx_init_rx_recycle_ring (rx_queue);
@@ -281,6 +282,8 @@ void efx_fini_rx_queue(struct efx_rx_queue *rx_queue) "shutting down RX queue %d\n", efx_rx_queue_index(rx_queue));del_timer_sync (&rx_queue->slow_fill); +if (rx_queue->grant_credits) +flush_work (&rx_queue->grant_work);/* Release RX buffers from the current read ptr to the write ptr */ if (rx_queue->buffer) {
PATCH 2/11 sfc: add start and stop methods to channels
In reply to [email protected]From: Edward Cree <[email protected]>
The TC extra channel needs to do extra work in efx_{start,stop}_channels()
to start/stop MAE counter streaming from the hardware. Add callbacks for it to implement.
--- drivers/net/ethernet/sfc/efx_channels.c | 9 ++++++++- drivers/net/ethernet/sfc/net_driver.h | 4 ++++ 2 files changed, 12 insertions(+), 1 deletion(-)
drivers/net/ethernet/sfc/efx_channels.c +8 -1
@@ -1119,6 +1119,8 @@ void efx_start_channels(struct efx_nic *efx)struct efx_channel *channel;efx_for_each_channel_rev (channel, efx) { +if (channel->type->start) + channel->type->start (channel);efx_for_each_channel_tx_queue (tx_queue, channel) {efx_init_tx_queue (tx_queue);atomic_inc (&efx->active_queues);
@@ -1143,8 +1145,13 @@ void efx_stop_channels(struct efx_nic *efx)struct efx_channel *channel;int rc =0 ; -/* Stop RX refill */ +/* Stop special channels and RX refill. +* The channel's stop has to be called first, since it might wait +* for a sentinel RX to indicate the channel has fully drained. +*/ efx_for_each_channel (channel, efx) { +if (channel->type->stop) + channel->type->stop (channel);efx_for_each_channel_rx_queue (rx_queue, channel) rx_queue->refill_enabled = false; }
drivers/net/ethernet/sfc/net_driver.h +4 -0
@@ -585,6 +585,8 @@ struct efx_msi_context {* struct efx_channel_type - distinguishes traffic and extra channels * @handle_no_channel: Handle failure to allocate an extra channel * @pre_probe: Set up extra state prior to initialisation +* @start: called early in efx_start_channels() +* @stop: called early in efx_stop_channels() * @post_remove: Tear down extra state after finalisation, if allocated. * May be called on channels that have not been probed. * @get_name: Generate the channel's name (used for its IRQ handler)
@@ -601,6 +603,8 @@ struct efx_msi_context {struct efx_channel_type {void (*handle_no_channel)(struct efx_nic *);int (*pre_probe)(struct efx_channel *); +int (*start)(struct efx_channel *); +void (*stop)(struct efx_channel *);void (*post_remove)(struct efx_channel *);void (*get_name)(struct efx_channel *,char *buf,size_t len);struct efx_channel *(*copy)(const struct efx_channel *);
PATCH 3/11 sfc: add ability for extra channels to receive raw RX buffers
In reply to [email protected]From: Edward Cree <[email protected]>
The TC extra channel will need its own special RX handling, which must
operate before any code that expects the RX buffer to contain a network packet; buffers on this RX queue contain MAE counter packets in a special format that does not resemble an Ethernet frame, and many fields of the RX packet prefix are not populated.
The USER_MARK field, however, is populated with the generation count from
the counter subsystem, which needs to be passed on to the RX handler.
--- drivers/net/ethernet/sfc/ef100_rx.c | 7 +++++++ drivers/net/ethernet/sfc/net_driver.h | 2 ++ 2 files changed, 9 insertions(+)
drivers/net/ethernet/sfc/ef100_rx.c +7 -0
@@ -67,6 +67,13 @@ void __ef100_rx_packet(struct efx_channel *channel) prefix = (u32 *)(eh -ESE_GZ_RX_PKT_PREFIX_LEN ); +if (channel->type->receive_raw) { +u32 mark =PREFIX_FIELD (prefix,USER_MARK ); + +if (channel->type->receive_raw (rx_queue, mark)) +return ;/* packet was consumed */ + } +if (ef100_has_fcs_error (channel, prefix) &&unlikely (!(efx->net_dev->features &NETIF_F_RXALL ))) goto out;
drivers/net/ethernet/sfc/net_driver.h +2 -0
@@ -593,6 +593,7 @@ struct efx_msi_context {* @copy: Copy the channel state prior to reallocation. May be %NULL if * reallocation is not supported. * @receive_skb: Handle an skb ready to be passed to netif_receive_skb() +* @receive_raw: Handle an RX buffer ready to be passed to __efx_rx_packet() * @want_txqs: Determine whether this channel should have TX queues * created. If %NULL, TX queues are not created. * @keep_eventq: Flag for whether event queue should be kept initialised
@@ -609,6 +610,7 @@ struct efx_channel_type {void (*get_name)(struct efx_channel *,char *buf,size_t len);struct efx_channel *(*copy)(const struct efx_channel *);bool (*receive_skb)(struct efx_channel *,struct sk_buff *); +bool (*receive_raw)(struct efx_rx_queue *,u32 );bool (*want_txqs)(struct efx_channel *);bool keep_eventq;bool want_pio;
kernel test robot
build botRe: [PATCH net-next 03/11] sfc: add ability for extra channels to receive raw RX buffers
I love your patch! Perhaps something to improve:
Hi,
I love your patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url: https://github.com/intel-lab-lkp/linux/commits/edward-cree-amd-com/sfc-TC-offload-counters/20221109-012812 patch link: https://lore.kernel.org/r/50ecccc725b9481c79f89e8dbd0eac9d043ce4a1.1667923490.git.ecree.xilinx%40gmail.com patch subject: [PATCH net-next 03/11] sfc: add ability for extra channels to receive raw RX buffers config: powerpc-allyesconfig compiler: powerpc-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/ea3ad411cc0881921d2b9f7a801c11d87dfccdc2
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review edward-cree-amd-com/sfc-TC-offload-counters/20221109-012812
git checkout ea3ad411cc0881921d2b9f7a801c11d87dfccdc2
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=powerpc SHELL=/bin/bash drivers/net/ethernet/sfc/
If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot <[email protected]>
All warnings (new ones prefixed by >>):
drivers/net/ethernet/sfc/ef100_rx.c: In function '__ef100_rx_packet':
>> drivers/net/ethernet/sfc/ef100_rx.c:24:39: warning: left shift count >= width of type [-Wshift-count-overflow]
24 | #define PREFIX_WIDTH_MASK(_f) ((1UL << ESF_GZ_RX_PREFIX_ ## _f ## _WIDTH) - 1)
| ^~
drivers/net/ethernet/sfc/ef100_rx.c:27:34: note: in expansion of macro 'PREFIX_WIDTH_MASK'
27 | PREFIX_WIDTH_MASK(_f))
| ^~~~~~~~~~~~~~~~~
drivers/net/ethernet/sfc/ef100_rx.c:71:28: note: in expansion of macro 'PREFIX_FIELD'
71 | u32 mark = PREFIX_FIELD(prefix, USER_MARK);
| ^~~~~~~~~~~~vim +24 drivers/net/ethernet/sfc/ef100_rx.c
51b35a454efdcd Edward Cree 2020-07-27 20 8e57daf70671e4 Edward Cree 2020-08-03 21 /* Get the value of a field in the RX prefix */ 8e57daf70671e4 Edward Cree 2020-08-03 22 #define PREFIX_OFFSET_W(_f) (ESF_GZ_RX_PREFIX_ ## _f ## _LBN / 32) 8e57daf70671e4 Edward Cree 2020-08-03 23 #define PREFIX_OFFSET_B(_f) (ESF_GZ_RX_PREFIX_ ## _f ## _LBN % 32) 8e57daf70671e4 Edward Cree 2020-08-03 @24 #define PREFIX_WIDTH_MASK(_f) ((1UL << ESF_GZ_RX_PREFIX_ ## _f ## _WIDTH) - 1) 8e57daf70671e4 Edward Cree 2020-08-03 25 #define PREFIX_WORD(_p, _f) le32_to_cpu((__force __le32)(_p)[PREFIX_OFFSET_W(_f)]) 8e57daf70671e4 Edward Cree 2020-08-03 26 #define PREFIX_FIELD(_p, _f) ((PREFIX_WORD(_p, _f) >> PREFIX_OFFSET_B(_f)) & \ 8e57daf70671e4 Edward Cree 2020-08-03 27 PREFIX_WIDTH_MASK(_f))
965b549f3c20db Edward Cree 2020-07-27 28
Signature · 2 lines
0-DAY CI Kernel Test Service https://01.org/lkp
#
# Automatically generated file; DO NOT EDIT.
# Linux/powerpc 6.1.0-rc3 Kernel Configuration #CONFIG_CC_VERSION_TEXT="powerpc-linux-gcc (GCC) 12.1.0" CONFIG_CC_IS_GCC=yCONFIG_GCC_VERSION=120100 CONFIG_CLANG_VERSION=0CONFIG_AS_IS_GNU=yCONFIG_AS_VERSION=23800CONFIG_LD_IS_BFD=yCONFIG_LD_VERSION=23800CONFIG_LLD_VERSION=0 CONFIG_CC_HAS_ASM_GOTO_OUTPUT=y CONFIG_CC_HAS_ASM_INLINE=y CONFIG_CC_HAS_NO_PROFILE_FN_ATTR=y CONFIG_PAHOLE_VERSION=123 CONFIG_CONSTRUCTORS=yCONFIG_IRQ_WORK=y CONFIG_BUILDTIME_TABLE_SORT=y CONFIG_THREAD_INFO_IN_TASK=y
#
# General setup
#CONFIG_INIT_ENV_ARG_LIMIT=32CONFIG_COMPILE_TEST=y
# CONFIG_WERROR is not setCONFIG_LOCALVERSION=""CONFIG_BUILD_SALT=""CONFIG_HAVE_KERNEL_GZIP=yCONFIG_HAVE_KERNEL_XZ=yCONFIG_KERNEL_GZIP=y
# CONFIG_KERNEL_XZ is not setCONFIG_DEFAULT_INIT=""CONFIG_DEFAULT_HOSTNAME="(none)"CONFIG_SYSVIPC=yCONFIG_SYSVIPC_SYSCTL=yCONFIG_POSIX_MQUEUE=yCONFIG_POSIX_MQUEUE_SYSCTL=yCONFIG_WATCH_QUEUE=yCONFIG_CROSS_MEMORY_ATTACH=yCONFIG_USELIB=yCONFIG_AUDIT=yCONFIG_HAVE_ARCH_AUDITSYSCALL=yCONFIG_AUDITSYSCALL=y
#
# IRQ subsystem
#CONFIG_GENERIC_IRQ_SHOW=yCONFIG_GENERIC_IRQ_SHOW_LEVEL=yCONFIG_GENERIC_IRQ_MIGRATION=yCONFIG_GENERIC_IRQ_INJECTION=yCONFIG_GENERIC_IRQ_CHIP=yCONFIG_IRQ_DOMAIN=yCONFIG_IRQ_SIM=yCONFIG_IRQ_DOMAIN_HIERARCHY=yCONFIG_IRQ_DOMAIN_NOMAP=yCONFIG_IRQ_FASTEOI_HIERARCHY_HANDLERS=yCONFIG_GENERIC_MSI_IRQ=yCONFIG_GENERIC_MSI_IRQ_DOMAIN=yCONFIG_IRQ_FORCED_THREADING=yCONFIG_SPARSE_IRQ=yCONFIG_GENERIC_IRQ_DEBUGFS=y
# end of IRQ subsystem
CONFIG_GENERIC_TIME_VSYSCALL=yCONFIG_GENERIC_CLOCKEVENTS=yCONFIG_ARCH_HAS_TICK_BROADCAST=yCONFIG_GENERIC_CLOCKEVENTS_BROADCAST=yCONFIG_GENERIC_CMOS_UPDATE=yCONFIG_TIME_KUNIT_TEST=yCONFIG_CONTEXT_TRACKING=yCONFIG_CONTEXT_TRACKING_IDLE=y
#
# Timers subsystem
#CONFIG_TICK_ONESHOT=yCONFIG_NO_HZ_COMMON=y
# CONFIG_HZ_PERIODIC is not setCONFIG_NO_HZ_IDLE=yCONFIG_NO_HZ=yCONFIG_HIGH_RES_TIMERS=y
# end of Timers subsystem
CONFIG_BPF=yCONFIG_HAVE_EBPF_JIT=y
#
# BPF subsystem
#CONFIG_BPF_SYSCALL=yCONFIG_BPF_JIT=yCONFIG_BPF_JIT_ALWAYS_ON=yCONFIG_BPF_JIT_DEFAULT_ON=yCONFIG_BPF_UNPRIV_DEFAULT_OFF=yCONFIG_USERMODE_DRIVER=yCONFIG_BPF_LSM=y
# end of BPF subsystem
CONFIG_PREEMPT_NONE_BUILD=yCONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not setCONFIG_PREEMPT_COUNT=y
#
# CPU/Task time and stats accounting
#CONFIG_TICK_CPU_ACCOUNTING=y
# CONFIG_VIRT_CPU_ACCOUNTING_NATIVE is not setCONFIG_IRQ_TIME_ACCOUNTING=yCONFIG_HAVE_SCHED_AVG_IRQ=yCONFIG_BSD_PROCESS_ACCT=yCONFIG_BSD_PROCESS_ACCT_V3=yCONFIG_TASKSTATS=yCONFIG_TASK_DELAY_ACCT=yCONFIG_TASK_XACCT=yCONFIG_TASK_IO_ACCOUNTING=yCONFIG_PSI=yCONFIG_PSI_DEFAULT_DISABLED=y
# end of CPU/Task time and stats accounting
CONFIG_CPU_ISOLATION=y
#
# RCU Subsystem
#CONFIG_TREE_RCU=yCONFIG_RCU_EXPERT=yCONFIG_SRCU=yCONFIG_TREE_SRCU=yCONFIG_TASKS_RCU_GENERIC=yCONFIG_FORCE_TASKS_RCU=yCONFIG_TASKS_RCU=yCONFIG_FORCE_TASKS_RUDE_RCU=yCONFIG_TASKS_RUDE_RCU=yCONFIG_FORCE_TASKS_TRACE_RCU=yCONFIG_TASKS_TRACE_RCU=yCONFIG_RCU_STALL_COMMON=yCONFIG_RCU_NEED_SEGCBLIST=yCONFIG_RCU_FANOUT=32CONFIG_RCU_FANOUT_LEAF=16CONFIG_RCU_NOCB_CPU=yCONFIG_RCU_NOCB_CPU_DEFAULT_ALL=yCONFIG_TASKS_TRACE_RCU_READ_MB=y
# end of RCU Subsystem
CONFIG_BUILD_BIN2C=yCONFIG_IKCONFIG=yCONFIG_IKCONFIG_PROC=yCONFIG_IKHEADERS=yCONFIG_LOG_BUF_SHIFT=17CONFIG_LOG_CPU_MAX_BUF_SHIFT=12CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13CONFIG_PRINTK_INDEX=y
#
# Scheduler features
#CONFIG_UCLAMP_TASK=yCONFIG_UCLAMP_BUCKETS_COUNT=5
# end of Scheduler features
CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5" CONFIG_GCC12_NO_ARRAY_BOUNDS=y CONFIG_CC_NO_ARRAY_BOUNDS=yCONFIG_CGROUPS=yCONFIG_PAGE_COUNTER=y CONFIG_CGROUP_FAVOR_DYNMODS=yCONFIG_MEMCG=yCONFIG_MEMCG_KMEM=yCONFIG_BLK_CGROUP=yCONFIG_CGROUP_WRITEBACK=yCONFIG_CGROUP_SCHED=yCONFIG_FAIR_GROUP_SCHED=yCONFIG_CFS_BANDWIDTH=yCONFIG_RT_GROUP_SCHED=y CONFIG_UCLAMP_TASK_GROUP=yCONFIG_CGROUP_PIDS=yCONFIG_CGROUP_RDMA=yCONFIG_CGROUP_FREEZER=yCONFIG_CPUSETS=yCONFIG_PROC_PID_CPUSET=yCONFIG_CGROUP_DEVICE=yCONFIG_CGROUP_CPUACCT=yCONFIG_CGROUP_PERF=yCONFIG_CGROUP_BPF=yCONFIG_CGROUP_MISC=yCONFIG_CGROUP_DEBUG=yCONFIG_SOCK_CGROUP_DATA=yCONFIG_NAMESPACES=yCONFIG_UTS_NS=yCONFIG_TIME_NS=yCONFIG_IPC_NS=yCONFIG_USER_NS=yCONFIG_PID_NS=yCONFIG_NET_NS=yCONFIG_CHECKPOINT_RESTORE=y CONFIG_SCHED_AUTOGROUP=y CONFIG_SYSFS_DEPRECATED=y CONFIG_SYSFS_DEPRECATED_V2=yCONFIG_RELAY=yCONFIG_BLK_DEV_INITRD=y CONFIG_INITRAMFS_SOURCE=""CONFIG_RD_GZIP=yCONFIG_RD_BZIP2=yCONFIG_RD_LZMA=yCONFIG_RD_XZ=yCONFIG_RD_LZO=yCONFIG_RD_LZ4=yCONFIG_RD_ZSTD=yCONFIG_BOOT_CONFIG=yCONFIG_BOOT_CONFIG_EMBED=y CONFIG_BOOT_CONFIG_EMBED_FILE="" CONFIG_INITRAMFS_PRESERVE_MTIME=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=y CONFIG_LD_ORPHAN_WARN=yCONFIG_SYSCTL=yCONFIG_SYSCTL_EXCEPTION_TRACE=y CONFIG_HAVE_PCSPKR_PLATFORM=yCONFIG_EXPERT=yCONFIG_MULTIUSER=yCONFIG_SGETMASK_SYSCALL=yCONFIG_SYSFS_SYSCALL=yCONFIG_FHANDLE=yCONFIG_POSIX_TIMERS=yCONFIG_PRINTK=yCONFIG_BUG=yCONFIG_ELF_CORE=yCONFIG_PCSPKR_PLATFORM=yCONFIG_BASE_FULL=yCONFIG_FUTEX=yCONFIG_FUTEX_PI=yCONFIG_EPOLL=yCONFIG_SIGNALFD=yCONFIG_TIMERFD=yCONFIG_EVENTFD=yCONFIG_SHMEM=yCONFIG_AIO=yCONFIG_IO_URING=yCONFIG_ADVISE_SYSCALLS=yCONFIG_MEMBARRIER=yCONFIG_KALLSYMS=yCONFIG_KALLSYMS_ALL=y CONFIG_KALLSYMS_BASE_RELATIVE=y CONFIG_ARCH_HAS_MEMBARRIER_CALLBACKS=y CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y CONFIG_KCMP=yCONFIG_RSEQ=yCONFIG_DEBUG_RSEQ=yCONFIG_EMBEDDED=yCONFIG_HAVE_PERF_EVENTS=yCONFIG_PC104=y
#
# Kernel Performance Events And Counters
#CONFIG_PERF_EVENTS=y
# end of Kernel Performance Events And Counters
CONFIG_SYSTEM_DATA_VERIFICATION=yCONFIG_PROFILING=yCONFIG_TRACEPOINTS=y
# end of General setup
CONFIG_PPC32=y
# CONFIG_PPC64 is not set
#
# Processor support
#CONFIG_PPC_BOOK3S_32=y
# CONFIG_PPC_85xx is not set
# CONFIG_PPC_8xx is not set
# CONFIG_40x is not set
# CONFIG_44x is not setCONFIG_PPC_BOOK3S_603=yCONFIG_PPC_BOOK3S_604=yCONFIG_POWERPC_CPU=y
# CONFIG_E300C2_CPU is not set
# CONFIG_E300C3_CPU is not set
# CONFIG_G4_CPU is not set
# CONFIG_TOOLCHAIN_DEFAULT_CPU is not setCONFIG_TARGET_CPU_BOOL=yCONFIG_TARGET_CPU="powerpc"CONFIG_PPC_BOOK3S=yCONFIG_PPC_FPU_REGS=yCONFIG_PPC_FPU=yCONFIG_ALTIVEC=yCONFIG_PPC_KUEP=yCONFIG_PPC_KUAP=yCONFIG_PPC_KUAP_DEBUG=yCONFIG_PPC_HAVE_PMU_SUPPORT=yCONFIG_PMU_SYSFS=yCONFIG_PPC_PERF_CTRS=yCONFIG_SMP=yCONFIG_NR_CPUS=32
# end of Processor support
CONFIG_VDSO32=yCONFIG_CPU_BIG_ENDIAN=yCONFIG_32BIT=yCONFIG_MMU=yCONFIG_ARCH_MMAP_RND_BITS_MAX=17CONFIG_ARCH_MMAP_RND_BITS_MIN=11CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=17CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11CONFIG_NR_IRQS=512CONFIG_NMI_IPI=yCONFIG_STACKTRACE_SUPPORT=yCONFIG_LOCKDEP_SUPPORT=yCONFIG_GENERIC_HWEIGHT=yCONFIG_PPC=yCONFIG_EARLY_PRINTK=yCONFIG_PANIC_TIMEOUT=180CONFIG_SCHED_OMIT_FRAME_POINTER=yCONFIG_ARCH_MAY_HAVE_PC_FDC=yCONFIG_PPC_UDBG_16550=yCONFIG_GENERIC_TBSYNC=yCONFIG_AUDIT_ARCH=yCONFIG_GENERIC_BUG=yCONFIG_GENERIC_BUG_RELATIVE_POINTERS=yCONFIG_ARCH_HIBERNATION_POSSIBLE=yCONFIG_ARCH_SUSPEND_POSSIBLE=yCONFIG_ARCH_HAS_ADD_PAGES=yCONFIG_ARCH_SUPPORTS_UPROBES=yCONFIG_PGTABLE_LEVELS=2CONFIG_PPC_MSI_BITMAP=y
#
# Platform support
#CONFIG_SCOM_DEBUGFS=yCONFIG_PPC_CHRP=y
# CONFIG_PPC_MPC512x is not set
# CONFIG_PPC_MPC52xx is not setCONFIG_PPC_PMAC=yCONFIG_PPC_PMAC32_PSURGE=y
# CONFIG_PPC_82xx is not set
# CONFIG_PPC_83xx is not set
# CONFIG_PPC_86xx is not setCONFIG_KVM_GUEST=yCONFIG_EPAPR_PARAVIRT=yCONFIG_PPC_HASH_MMU_NATIVE=yCONFIG_PPC_OF_BOOT_TRAMPOLINE=yCONFIG_UDBG_RTAS_CONSOLE=yCONFIG_PPC_SMP_MUXED_IPI=yCONFIG_MPIC=yCONFIG_MPIC_MSGR=yCONFIG_PPC_I8259=yCONFIG_PPC_RTAS=yCONFIG_RTAS_ERROR_LOGGING=yCONFIG_PPC_RTAS_DAEMON=yCONFIG_RTAS_PROC=yCONFIG_PPC_MPC106=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=y
#
# CPU frequency scaling drivers
#CONFIG_CPUFREQ_DT=yCONFIG_CPUFREQ_DT_PLATDEV=y
# CONFIG_CPU_FREQ_PMAC is not setCONFIG_QORIQ_CPUFREQ=y
# end of CPU Frequency scaling
#
# CPUIdle driver
#
#
# CPU Idle
#CONFIG_CPU_IDLE=yCONFIG_CPU_IDLE_GOV_LADDER=yCONFIG_CPU_IDLE_GOV_MENU=yCONFIG_CPU_IDLE_GOV_TEO=yCONFIG_CPU_IDLE_GOV_HALTPOLL=y
#
# POWERPC CPU Idle Drivers
#
# end of POWERPC CPU Idle Drivers # end of CPU Idle # end of CPUIdle driver
# CONFIG_TAU is not setCONFIG_QE_GPIO=yCONFIG_GEN_RTC=y
# end of Platform support
#
# Kernel options
#
# CONFIG_HIGHMEM is not set
# CONFIG_HZ_100 is not setCONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not setCONFIG_HZ=250CONFIG_SCHED_HRTICK=yCONFIG_HOTPLUG_CPU=yCONFIG_PPC_QUEUED_SPINLOCKS=yCONFIG_ARCH_CPU_PROBE_RELEASE=yCONFIG_KEXEC=yCONFIG_CRASH_DUMP=yCONFIG_IRQ_ALL_CPUS=yCONFIG_ARCH_FLATMEM_ENABLE=yCONFIG_ILLEGAL_POINTER_VALUE=0CONFIG_PPC_4K_PAGES=yCONFIG_PAGE_SIZE_4KB=yCONFIG_PPC_PAGE_SHIFT=12CONFIG_THREAD_SHIFT=14CONFIG_DATA_SHIFT=18CONFIG_ARCH_FORCE_MAX_ORDER=11CONFIG_CMDLINE=""CONFIG_EXTRA_TARGETS=""CONFIG_ARCH_WANTS_FREEZER_CONTROL=yCONFIG_SUSPEND=yCONFIG_SUSPEND_FREEZER=yCONFIG_SUSPEND_SKIP_SYNC=yCONFIG_HIBERNATE_CALLBACKS=yCONFIG_HIBERNATION=yCONFIG_HIBERNATION_SNAPSHOT_DEV=yCONFIG_PM_STD_PARTITION=""CONFIG_PM_SLEEP=yCONFIG_PM_SLEEP_SMP=yCONFIG_PM_AUTOSLEEP=yCONFIG_PM_USERSPACE_AUTOSLEEP=yCONFIG_PM_WAKELOCKS=yCONFIG_PM_WAKELOCKS_LIMIT=100CONFIG_PM_WAKELOCKS_GC=yCONFIG_PM=yCONFIG_PM_DEBUG=yCONFIG_PM_ADVANCED_DEBUG=yCONFIG_PM_TEST_SUSPEND=yCONFIG_PM_SLEEP_DEBUG=yCONFIG_DPM_WATCHDOG=yCONFIG_DPM_WATCHDOG_TIMEOUT=120CONFIG_PM_CLK=yCONFIG_PM_GENERIC_DOMAINS=yCONFIG_WQ_POWER_EFFICIENT_DEFAULT=yCONFIG_PM_GENERIC_DOMAINS_SLEEP=yCONFIG_PM_GENERIC_DOMAINS_OF=yCONFIG_ENERGY_MODEL=yCONFIG_PPC_RTAS_FILTER=y
# end of Kernel options
CONFIG_ISA_DMA_API=y
#
# Bus options
#
# CONFIG_ISA is not setCONFIG_GENERIC_ISA_DMA=yCONFIG_PPC_INDIRECT_PCI=yCONFIG_FSL_LBC=yCONFIG_FSL_GTM=y
# end of Bus options
#
# Advanced setup
#
# CONFIG_ADVANCED_OPTIONS is not set
#
# Default settings for advanced configuration options are used #CONFIG_LOWMEM_SIZE=0x30000000 CONFIG_PAGE_OFFSET=0xc0000000 CONFIG_KERNEL_START=0xc2000000 CONFIG_PHYSICAL_START=0x02000000 CONFIG_TASK_SIZE=0xb0000000
# end of Advanced setup
CONFIG_VIRTUALIZATION=yCONFIG_HAVE_LIVEPATCH=y
# CONFIG_LIVEPATCH is not set
#
# General architecture-dependent options
#CONFIG_CRASH_CORE=yCONFIG_KEXEC_CORE=yCONFIG_KPROBES=yCONFIG_JUMP_LABEL=yCONFIG_STATIC_KEYS_SELFTEST=y
# CONFIG_STATIC_CALL_SELFTEST is not setCONFIG_OPTPROBES=yCONFIG_KPROBES_ON_FTRACE=yCONFIG_UPROBES=yCONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=yCONFIG_ARCH_USE_BUILTIN_BSWAP=yCONFIG_KRETPROBES=yCONFIG_HAVE_IOREMAP_PROT=yCONFIG_HAVE_KPROBES=yCONFIG_HAVE_KRETPROBES=yCONFIG_HAVE_OPTPROBES=yCONFIG_HAVE_KPROBES_ON_FTRACE=yCONFIG_HAVE_FUNCTION_ERROR_INJECTION=yCONFIG_HAVE_NMI=yCONFIG_TRACE_IRQFLAGS_SUPPORT=yCONFIG_HAVE_ARCH_TRACEHOOK=yCONFIG_GENERIC_SMP_IDLE_THREAD=yCONFIG_ARCH_HAS_FORTIFY_SOURCE=yCONFIG_ARCH_HAS_SET_MEMORY=yCONFIG_ARCH_WANTS_NO_INSTR=yCONFIG_ARCH_32BIT_OFF_T=yCONFIG_HAVE_ASM_MODVERSIONS=yCONFIG_HAVE_REGS_AND_STACK_ACCESS_API=yCONFIG_HAVE_RSEQ=yCONFIG_HAVE_HW_BREAKPOINT=yCONFIG_HAVE_PERF_REGS=yCONFIG_HAVE_PERF_USER_STACK_DUMP=yCONFIG_HAVE_ARCH_JUMP_LABEL=yCONFIG_HAVE_ARCH_JUMP_LABEL_RELATIVE=yCONFIG_MMU_GATHER_TABLE_FREE=yCONFIG_MMU_GATHER_RCU_TABLE_FREE=yCONFIG_MMU_GATHER_PAGE_SIZE=yCONFIG_MMU_GATHER_MERGE_VMAS=yCONFIG_ARCH_WANT_IRQS_OFF_ACTIVATE_MM=yCONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=yCONFIG_ARCH_WEAK_RELEASE_ACQUIRE=yCONFIG_ARCH_WANT_IPC_PARSE_VERSION=yCONFIG_HAVE_ARCH_SECCOMP=yCONFIG_HAVE_ARCH_SECCOMP_FILTER=yCONFIG_SECCOMP=yCONFIG_SECCOMP_FILTER=yCONFIG_SECCOMP_CACHE_DEBUG=yCONFIG_HAVE_STACKPROTECTOR=yCONFIG_STACKPROTECTOR=yCONFIG_STACKPROTECTOR_STRONG=yCONFIG_LTO_NONE=yCONFIG_HAVE_VIRT_CPU_ACCOUNTING=yCONFIG_HAVE_IRQ_TIME_ACCOUNTING=yCONFIG_HAVE_MOD_ARCH_SPECIFIC=yCONFIG_MODULES_USE_ELF_RELA=yCONFIG_ARCH_WANTS_MODULES_DATA_IN_VMALLOC=yCONFIG_HAVE_SOFTIRQ_ON_OWN_STACK=yCONFIG_SOFTIRQ_ON_OWN_STACK=yCONFIG_ARCH_HAS_ELF_RANDOMIZE=yCONFIG_HAVE_ARCH_MMAP_RND_BITS=yCONFIG_ARCH_MMAP_RND_BITS=14CONFIG_PAGE_SIZE_LESS_THAN_64KB=yCONFIG_PAGE_SIZE_LESS_THAN_256KB=yCONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=yCONFIG_HAVE_RELIABLE_STACKTRACE=yCONFIG_HAVE_ARCH_NVRAM_OPS=yCONFIG_ISA_BUS_API=yCONFIG_CLONE_BACKWARDS=yCONFIG_OLD_SIGSUSPEND=yCONFIG_OLD_SIGACTION=yCONFIG_COMPAT_32BIT_TIME=yCONFIG_HAVE_ARCH_VMAP_STACK=yCONFIG_VMAP_STACK=yCONFIG_HAVE_ARCH_RANDOMIZE_KSTACK_OFFSET=yCONFIG_RANDOMIZE_KSTACK_OFFSET=yCONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT=yCONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT=yCONFIG_ARCH_HAS_PHYS_TO_DMA=yCONFIG_LOCK_EVENT_COUNTS=yCONFIG_HAVE_STATIC_CALL=yCONFIG_ARCH_WANT_LD_ORPHAN_WARN=yCONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=yCONFIG_ARCH_SPLIT_ARG64=y
#
# GCOV-based kernel profiling
#CONFIG_GCOV_KERNEL=yCONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
# end of GCOV-based kernel profiling
CONFIG_HAVE_GCC_PLUGINS=yCONFIG_GCC_PLUGINS=yCONFIG_GCC_PLUGIN_LATENT_ENTROPY=y
# end of General architecture-dependent options
CONFIG_RT_MUTEXES=yCONFIG_BASE_SMALL=0CONFIG_MODULE_SIG_FORMAT=yCONFIG_MODULES=yCONFIG_MODULE_FORCE_LOAD=yCONFIG_MODULE_UNLOAD=yCONFIG_MODULE_FORCE_UNLOAD=yCONFIG_MODULE_UNLOAD_TAINT_TRACKING=yCONFIG_MODVERSIONS=yCONFIG_ASM_MODVERSIONS=yCONFIG_MODULE_SRCVERSION_ALL=yCONFIG_MODULE_SIG=yCONFIG_MODULE_SIG_FORCE=yCONFIG_MODULE_SIG_ALL=yCONFIG_MODULE_SIG_SHA1=y
# 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 is not setCONFIG_MODULE_SIG_HASH="sha1"CONFIG_MODULE_COMPRESS_NONE=y
# CONFIG_MODULE_COMPRESS_GZIP is not set
# CONFIG_MODULE_COMPRESS_XZ is not set
# CONFIG_MODULE_COMPRESS_ZSTD is not setCONFIG_MODULE_ALLOW_MISSING_NAMESPACE_IMPORTS=yCONFIG_MODPROBE_PATH="/sbin/modprobe"CONFIG_MODULES_TREE_LOOKUP=yCONFIG_BLOCK=yCONFIG_BLOCK_LEGACY_AUTOLOAD=yCONFIG_BLK_RQ_ALLOC_TIME=yCONFIG_BLK_CGROUP_RWSTAT=yCONFIG_BLK_DEV_BSG_COMMON=yCONFIG_BLK_ICQ=yCONFIG_BLK_DEV_BSGLIB=yCONFIG_BLK_DEV_INTEGRITY=yCONFIG_BLK_DEV_INTEGRITY_T10=yCONFIG_BLK_DEV_ZONED=yCONFIG_BLK_DEV_THROTTLING=yCONFIG_BLK_DEV_THROTTLING_LOW=yCONFIG_BLK_WBT=yCONFIG_BLK_WBT_MQ=yCONFIG_BLK_CGROUP_IOLATENCY=yCONFIG_BLK_CGROUP_FC_APPID=yCONFIG_BLK_CGROUP_IOCOST=yCONFIG_BLK_CGROUP_IOPRIO=yCONFIG_BLK_DEBUG_FS=yCONFIG_BLK_DEBUG_FS_ZONED=yCONFIG_BLK_SED_OPAL=yCONFIG_BLK_INLINE_ENCRYPTION=yCONFIG_BLK_INLINE_ENCRYPTION_FALLBACK=y
#
# Partition Types
#CONFIG_PARTITION_ADVANCED=yCONFIG_ACORN_PARTITION=yCONFIG_ACORN_PARTITION_CUMANA=yCONFIG_ACORN_PARTITION_EESOX=yCONFIG_ACORN_PARTITION_ICS=yCONFIG_ACORN_PARTITION_ADFS=yCONFIG_ACORN_PARTITION_POWERTEC=yCONFIG_ACORN_PARTITION_RISCIX=yCONFIG_AIX_PARTITION=yCONFIG_OSF_PARTITION=yCONFIG_AMIGA_PARTITION=yCONFIG_ATARI_PARTITION=yCONFIG_MAC_PARTITION=yCONFIG_MSDOS_PARTITION=yCONFIG_BSD_DISKLABEL=yCONFIG_MINIX_SUBPARTITION=yCONFIG_SOLARIS_X86_PARTITION=yCONFIG_UNIXWARE_DISKLABEL=yCONFIG_LDM_PARTITION=yCONFIG_LDM_DEBUG=yCONFIG_SGI_PARTITION=yCONFIG_ULTRIX_PARTITION=yCONFIG_SUN_PARTITION=yCONFIG_KARMA_PARTITION=yCONFIG_EFI_PARTITION=yCONFIG_SYSV68_PARTITION=yCONFIG_CMDLINE_PARTITION=y
# end of Partition Types
CONFIG_BLK_MQ_PCI=yCONFIG_BLK_MQ_VIRTIO=yCONFIG_BLK_MQ_RDMA=yCONFIG_BLK_PM=yCONFIG_BLOCK_HOLDER_DEPRECATED=yCONFIG_BLK_MQ_STACKING=y
#
# IO Schedulers
#CONFIG_MQ_IOSCHED_DEADLINE=yCONFIG_MQ_IOSCHED_KYBER=yCONFIG_IOSCHED_BFQ=yCONFIG_BFQ_GROUP_IOSCHED=yCONFIG_BFQ_CGROUP_DEBUG=y
# end of IO Schedulers
CONFIG_PADATA=yCONFIG_ASN1=yCONFIG_UNINLINE_SPIN_UNLOCK=yCONFIG_ARCH_SUPPORTS_ATOMIC_RMW=yCONFIG_MUTEX_SPIN_ON_OWNER=yCONFIG_RWSEM_SPIN_ON_OWNER=yCONFIG_LOCK_SPIN_ON_OWNER=yCONFIG_ARCH_USE_QUEUED_SPINLOCKS=yCONFIG_QUEUED_SPINLOCKS=yCONFIG_ARCH_USE_QUEUED_RWLOCKS=yCONFIG_QUEUED_RWLOCKS=yCONFIG_ARCH_HAS_NON_OVERLAPPING_ADDRESS_SPACE=yCONFIG_ARCH_HAS_SYSCALL_WRAPPER=yCONFIG_FREEZER=y
#
# Executable file formats
#CONFIG_BINFMT_ELF=yCONFIG_BINFMT_ELF_KUNIT_TEST=yCONFIG_ELFCORE=yCONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=yCONFIG_BINFMT_SCRIPT=yCONFIG_BINFMT_MISC=yCONFIG_COREDUMP=y
# end of Executable file formats
#
# Memory Management options
#CONFIG_ZPOOL=yCONFIG_SWAP=yCONFIG_ZSWAP=yCONFIG_ZSWAP_DEFAULT_ON=y
# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_DEFLATE is not set CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZO=y
# CONFIG_ZSWAP_COMPRESSOR_DEFAULT_842 is not set # CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4 is not set # CONFIG_ZSWAP_COMPRESSOR_DEFAULT_LZ4HC is not set # CONFIG_ZSWAP_COMPRESSOR_DEFAULT_ZSTD is not set CONFIG_ZSWAP_COMPRESSOR_DEFAULT="lzo" CONFIG_ZSWAP_ZPOOL_DEFAULT_ZBUD=y
# CONFIG_ZSWAP_ZPOOL_DEFAULT_Z3FOLD is not set # CONFIG_ZSWAP_ZPOOL_DEFAULT_ZSMALLOC is not set CONFIG_ZSWAP_ZPOOL_DEFAULT="zbud" CONFIG_ZBUD=yCONFIG_Z3FOLD=yCONFIG_ZSMALLOC=yCONFIG_ZSMALLOC_STAT=y
#
# SLAB allocator options
#
# CONFIG_SLAB is not setCONFIG_SLUB=y
# CONFIG_SLOB is not setCONFIG_SLAB_MERGE_DEFAULT=yCONFIG_SLAB_FREELIST_RANDOM=yCONFIG_SLAB_FREELIST_HARDENED=yCONFIG_SLUB_STATS=yCONFIG_SLUB_CPU_PARTIAL=y
# end of SLAB allocator options
CONFIG_SHUFFLE_PAGE_ALLOCATOR=yCONFIG_COMPAT_BRK=yCONFIG_FLATMEM=yCONFIG_HAVE_FAST_GUP=yCONFIG_ARCH_KEEP_MEMBLOCK=yCONFIG_MEMORY_ISOLATION=yCONFIG_EXCLUSIVE_SYSTEM_RAM=yCONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=yCONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=yCONFIG_SPLIT_PTLOCK_CPUS=4CONFIG_MEMORY_BALLOON=yCONFIG_BALLOON_COMPACTION=yCONFIG_COMPACTION=yCONFIG_COMPACT_UNEVICTABLE_DEFAULT=1CONFIG_PAGE_REPORTING=yCONFIG_MIGRATION=yCONFIG_CONTIG_ALLOC=yCONFIG_MMU_NOTIFIER=yCONFIG_KSM=yCONFIG_DEFAULT_MMAP_MIN_ADDR=4096CONFIG_FRONTSWAP=yCONFIG_CMA=yCONFIG_CMA_DEBUG=yCONFIG_CMA_DEBUGFS=yCONFIG_CMA_SYSFS=yCONFIG_CMA_AREAS=19CONFIG_GENERIC_EARLY_IOREMAP=yCONFIG_PAGE_IDLE_FLAG=yCONFIG_IDLE_PAGE_TRACKING=yCONFIG_ARCH_HAS_CURRENT_STACK_POINTER=yCONFIG_ZONE_DMA=yCONFIG_HMM_MIRROR=yCONFIG_VM_EVENT_COUNTERS=yCONFIG_PERCPU_STATS=yCONFIG_GUP_TEST=yCONFIG_ARCH_HAS_PTE_SPECIAL=yCONFIG_ANON_VMA_NAME=yCONFIG_USERFAULTFD=yCONFIG_LRU_GEN=yCONFIG_LRU_GEN_ENABLED=yCONFIG_LRU_GEN_STATS=y
#
# Data Access Monitoring
#CONFIG_DAMON=yCONFIG_DAMON_KUNIT_TEST=yCONFIG_DAMON_VADDR=yCONFIG_DAMON_PADDR=yCONFIG_DAMON_VADDR_KUNIT_TEST=yCONFIG_DAMON_SYSFS=yCONFIG_DAMON_DBGFS=yCONFIG_DAMON_DBGFS_KUNIT_TEST=yCONFIG_DAMON_RECLAIM=yCONFIG_DAMON_LRU_SORT=y
# end of Data Access Monitoring # end of Memory Management options
CONFIG_NET=yCONFIG_NET_INGRESS=yCONFIG_NET_EGRESS=yCONFIG_NET_REDIRECT=yCONFIG_SKB_EXTENSIONS=y
#
# Networking options
#CONFIG_PACKET=yCONFIG_PACKET_DIAG=yCONFIG_UNIX=yCONFIG_UNIX_SCM=yCONFIG_AF_UNIX_OOB=yCONFIG_UNIX_DIAG=yCONFIG_TLS=yCONFIG_TLS_DEVICE=yCONFIG_TLS_TOE=yCONFIG_XFRM=yCONFIG_XFRM_OFFLOAD=yCONFIG_XFRM_ALGO=yCONFIG_XFRM_USER=yCONFIG_XFRM_INTERFACE=yCONFIG_XFRM_SUB_POLICY=yCONFIG_XFRM_MIGRATE=yCONFIG_XFRM_STATISTICS=yCONFIG_XFRM_AH=yCONFIG_XFRM_ESP=yCONFIG_XFRM_IPCOMP=yCONFIG_NET_KEY=yCONFIG_NET_KEY_MIGRATE=yCONFIG_XFRM_ESPINTCP=yCONFIG_SMC=yCONFIG_SMC_DIAG=yCONFIG_XDP_SOCKETS=yCONFIG_XDP_SOCKETS_DIAG=yCONFIG_INET=yCONFIG_IP_MULTICAST=yCONFIG_IP_ADVANCED_ROUTER=yCONFIG_IP_FIB_TRIE_STATS=yCONFIG_IP_MULTIPLE_TABLES=yCONFIG_IP_ROUTE_MULTIPATH=yCONFIG_IP_ROUTE_VERBOSE=yCONFIG_IP_ROUTE_CLASSID=yCONFIG_IP_PNP=yCONFIG_IP_PNP_DHCP=yCONFIG_IP_PNP_BOOTP=yCONFIG_IP_PNP_RARP=yCONFIG_NET_IPIP=yCONFIG_NET_IPGRE_DEMUX=yCONFIG_NET_IP_TUNNEL=yCONFIG_NET_IPGRE=yCONFIG_NET_IPGRE_BROADCAST=yCONFIG_IP_MROUTE_COMMON=yCONFIG_IP_MROUTE=yCONFIG_IP_MROUTE_MULTIPLE_TABLES=yCONFIG_IP_PIMSM_V1=yCONFIG_IP_PIMSM_V2=yCONFIG_SYN_COOKIES=yCONFIG_NET_IPVTI=yCONFIG_NET_UDP_TUNNEL=yCONFIG_NET_FOU=yCONFIG_NET_FOU_IP_TUNNELS=yCONFIG_INET_AH=yCONFIG_INET_ESP=yCONFIG_INET_ESP_OFFLOAD=yCONFIG_INET_ESPINTCP=yCONFIG_INET_IPCOMP=yCONFIG_INET_XFRM_TUNNEL=yCONFIG_INET_TUNNEL=yCONFIG_INET_DIAG=yCONFIG_INET_TCP_DIAG=yCONFIG_INET_UDP_DIAG=yCONFIG_INET_RAW_DIAG=yCONFIG_INET_DIAG_DESTROY=yCONFIG_TCP_CONG_ADVANCED=yCONFIG_TCP_CONG_BIC=yCONFIG_TCP_CONG_CUBIC=yCONFIG_TCP_CONG_WESTWOOD=yCONFIG_TCP_CONG_HTCP=yCONFIG_TCP_CONG_HSTCP=yCONFIG_TCP_CONG_HYBLA=yCONFIG_TCP_CONG_VEGAS=yCONFIG_TCP_CONG_NV=yCONFIG_TCP_CONG_SCALABLE=yCONFIG_TCP_CONG_LP=yCONFIG_TCP_CONG_VENO=yCONFIG_TCP_CONG_YEAH=yCONFIG_TCP_CONG_ILLINOIS=yCONFIG_TCP_CONG_DCTCP=yCONFIG_TCP_CONG_CDG=yCONFIG_TCP_CONG_BBR=y
# CONFIG_DEFAULT_BIC is not setCONFIG_DEFAULT_CUBIC=y
# CONFIG_DEFAULT_HTCP is not set
# CONFIG_DEFAULT_HYBLA is not set
# CONFIG_DEFAULT_VEGAS is not set
# CONFIG_DEFAULT_VENO is not set
# CONFIG_DEFAULT_WESTWOOD is not set
# CONFIG_DEFAULT_DCTCP is not set
# CONFIG_DEFAULT_CDG is not set
# CONFIG_DEFAULT_BBR is not set
# CONFIG_DEFAULT_RENO is not setCONFIG_DEFAULT_TCP_CONG="cubic"CONFIG_TCP_MD5SIG=yCONFIG_IPV6=yCONFIG_IPV6_ROUTER_PREF=yCONFIG_IPV6_ROUTE_INFO=yCONFIG_IPV6_OPTIMISTIC_DAD=yCONFIG_INET6_AH=yCONFIG_INET6_ESP=yCONFIG_INET6_ESP_OFFLOAD=yCONFIG_INET6_ESPINTCP=yCONFIG_INET6_IPCOMP=yCONFIG_IPV6_MIP6=yCONFIG_IPV6_ILA=yCONFIG_INET6_XFRM_TUNNEL=yCONFIG_INET6_TUNNEL=yCONFIG_IPV6_VTI=yCONFIG_IPV6_SIT=yCONFIG_IPV6_SIT_6RD=yCONFIG_IPV6_NDISC_NODETYPE=yCONFIG_IPV6_TUNNEL=yCONFIG_IPV6_GRE=yCONFIG_IPV6_FOU=yCONFIG_IPV6_FOU_TUNNEL=yCONFIG_IPV6_MULTIPLE_TABLES=yCONFIG_IPV6_SUBTREES=yCONFIG_IPV6_MROUTE=yCONFIG_IPV6_MROUTE_MULTIPLE_TABLES=yCONFIG_IPV6_PIMSM_V2=yCONFIG_IPV6_SEG6_LWTUNNEL=yCONFIG_IPV6_SEG6_HMAC=yCONFIG_IPV6_SEG6_BPF=yCONFIG_IPV6_RPL_LWTUNNEL=yCONFIG_IPV6_IOAM6_LWTUNNEL=yCONFIG_NETLABEL=yCONFIG_MPTCP=yCONFIG_INET_MPTCP_DIAG=yCONFIG_MPTCP_IPV6=yCONFIG_MPTCP_KUNIT_TEST=yCONFIG_NETWORK_SECMARK=yCONFIG_NET_PTP_CLASSIFY=yCONFIG_NETWORK_PHY_TIMESTAMPING=yCONFIG_NETFILTER=yCONFIG_NETFILTER_ADVANCED=yCONFIG_BRIDGE_NETFILTER=y
#
# Core Netfilter Configuration
#CONFIG_NETFILTER_INGRESS=yCONFIG_NETFILTER_EGRESS=yCONFIG_NETFILTER_SKIP_EGRESS=yCONFIG_NETFILTER_NETLINK=yCONFIG_NETFILTER_FAMILY_BRIDGE=yCONFIG_NETFILTER_FAMILY_ARP=yCONFIG_NETFILTER_NETLINK_HOOK=yCONFIG_NETFILTER_NETLINK_ACCT=yCONFIG_NETFILTER_NETLINK_QUEUE=yCONFIG_NETFILTER_NETLINK_LOG=yCONFIG_NETFILTER_NETLINK_OSF=yCONFIG_NF_CONNTRACK=yCONFIG_NF_LOG_SYSLOG=yCONFIG_NETFILTER_CONNCOUNT=yCONFIG_NF_CONNTRACK_MARK=yCONFIG_NF_CONNTRACK_SECMARK=yCONFIG_NF_CONNTRACK_ZONES=yCONFIG_NF_CONNTRACK_PROCFS=yCONFIG_NF_CONNTRACK_EVENTS=yCONFIG_NF_CONNTRACK_TIMEOUT=yCONFIG_NF_CONNTRACK_TIMESTAMP=yCONFIG_NF_CONNTRACK_LABELS=yCONFIG_NF_CT_PROTO_DCCP=yCONFIG_NF_CT_PROTO_GRE=yCONFIG_NF_CT_PROTO_SCTP=yCONFIG_NF_CT_PROTO_UDPLITE=yCONFIG_NF_CONNTRACK_AMANDA=yCONFIG_NF_CONNTRACK_FTP=yCONFIG_NF_CONNTRACK_H323=yCONFIG_NF_CONNTRACK_IRC=yCONFIG_NF_CONNTRACK_BROADCAST=yCONFIG_NF_CONNTRACK_NETBIOS_NS=yCONFIG_NF_CONNTRACK_SNMP=yCONFIG_NF_CONNTRACK_PPTP=yCONFIG_NF_CONNTRACK_SANE=yCONFIG_NF_CONNTRACK_SIP=yCONFIG_NF_CONNTRACK_TFTP=yCONFIG_NF_CT_NETLINK=yCONFIG_NF_CT_NETLINK_TIMEOUT=yCONFIG_NF_CT_NETLINK_HELPER=yCONFIG_NETFILTER_NETLINK_GLUE_CT=yCONFIG_NF_NAT=yCONFIG_NF_NAT_AMANDA=yCONFIG_NF_NAT_FTP=yCONFIG_NF_NAT_IRC=yCONFIG_NF_NAT_SIP=yCONFIG_NF_NAT_TFTP=yCONFIG_NF_NAT_REDIRECT=yCONFIG_NF_NAT_MASQUERADE=yCONFIG_NETFILTER_SYNPROXY=yCONFIG_NF_TABLES=yCONFIG_NF_TABLES_INET=yCONFIG_NF_TABLES_NETDEV=yCONFIG_NFT_NUMGEN=yCONFIG_NFT_CT=yCONFIG_NFT_FLOW_OFFLOAD=yCONFIG_NFT_CONNLIMIT=yCONFIG_NFT_LOG=yCONFIG_NFT_LIMIT=yCONFIG_NFT_MASQ=yCONFIG_NFT_REDIR=yCONFIG_NFT_NAT=yCONFIG_NFT_TUNNEL=yCONFIG_NFT_QUEUE=yCONFIG_NFT_QUOTA=yCONFIG_NFT_REJECT=yCONFIG_NFT_REJECT_INET=yCONFIG_NFT_COMPAT=yCONFIG_NFT_HASH=yCONFIG_NFT_FIB=yCONFIG_NFT_FIB_INET=yCONFIG_NFT_XFRM=yCONFIG_NFT_SOCKET=yCONFIG_NFT_OSF=yCONFIG_NFT_TPROXY=yCONFIG_NFT_SYNPROXY=yCONFIG_NF_DUP_NETDEV=yCONFIG_NFT_DUP_NETDEV=yCONFIG_NFT_FWD_NETDEV=yCONFIG_NFT_FIB_NETDEV=yCONFIG_NFT_REJECT_NETDEV=yCONFIG_NF_FLOW_TABLE_INET=yCONFIG_NF_FLOW_TABLE=yCONFIG_NF_FLOW_TABLE_PROCFS=yCONFIG_NETFILTER_XTABLES=y
#
# Xtables combined modules
#CONFIG_NETFILTER_XT_MARK=yCONFIG_NETFILTER_XT_CONNMARK=yCONFIG_NETFILTER_XT_SET=y
#
# Xtables targets
#CONFIG_NETFILTER_XT_TARGET_AUDIT=yCONFIG_NETFILTER_XT_TARGET_CHECKSUM=yCONFIG_NETFILTER_XT_TARGET_CLASSIFY=yCONFIG_NETFILTER_XT_TARGET_CONNMARK=yCONFIG_NETFILTER_XT_TARGET_CONNSECMARK=yCONFIG_NETFILTER_XT_TARGET_CT=yCONFIG_NETFILTER_XT_TARGET_DSCP=yCONFIG_NETFILTER_XT_TARGET_HL=yCONFIG_NETFILTER_XT_TARGET_HMARK=yCONFIG_NETFILTER_XT_TARGET_IDLETIMER=yCONFIG_NETFILTER_XT_TARGET_LED=yCONFIG_NETFILTER_XT_TARGET_LOG=yCONFIG_NETFILTER_XT_TARGET_MARK=yCONFIG_NETFILTER_XT_NAT=yCONFIG_NETFILTER_XT_TARGET_NETMAP=yCONFIG_NETFILTER_XT_TARGET_NFLOG=yCONFIG_NETFILTER_XT_TARGET_NFQUEUE=yCONFIG_NETFILTER_XT_TARGET_NOTRACK=yCONFIG_NETFILTER_XT_TARGET_RATEEST=yCONFIG_NETFILTER_XT_TARGET_REDIRECT=yCONFIG_NETFILTER_XT_TARGET_MASQUERADE=yCONFIG_NETFILTER_XT_TARGET_TEE=yCONFIG_NETFILTER_XT_TARGET_TPROXY=yCONFIG_NETFILTER_XT_TARGET_TRACE=yCONFIG_NETFILTER_XT_TARGET_SECMARK=yCONFIG_NETFILTER_XT_TARGET_TCPMSS=yCONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=y
#
# Xtables matches
#CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=yCONFIG_NETFILTER_XT_MATCH_BPF=yCONFIG_NETFILTER_XT_MATCH_CGROUP=yCONFIG_NETFILTER_XT_MATCH_CLUSTER=yCONFIG_NETFILTER_XT_MATCH_COMMENT=yCONFIG_NETFILTER_XT_MATCH_CONNBYTES=yCONFIG_NETFILTER_XT_MATCH_CONNLABEL=yCONFIG_NETFILTER_XT_MATCH_CONNLIMIT=yCONFIG_NETFILTER_XT_MATCH_CONNMARK=yCONFIG_NETFILTER_XT_MATCH_CONNTRACK=yCONFIG_NETFILTER_XT_MATCH_CPU=yCONFIG_NETFILTER_XT_MATCH_DCCP=yCONFIG_NETFILTER_XT_MATCH_DEVGROUP=yCONFIG_NETFILTER_XT_MATCH_DSCP=yCONFIG_NETFILTER_XT_MATCH_ECN=yCONFIG_NETFILTER_XT_MATCH_ESP=yCONFIG_NETFILTER_XT_MATCH_HASHLIMIT=yCONFIG_NETFILTER_XT_MATCH_HELPER=yCONFIG_NETFILTER_XT_MATCH_HL=yCONFIG_NETFILTER_XT_MATCH_IPCOMP=yCONFIG_NETFILTER_XT_MATCH_IPRANGE=yCONFIG_NETFILTER_XT_MATCH_IPVS=yCONFIG_NETFILTER_XT_MATCH_L2TP=yCONFIG_NETFILTER_XT_MATCH_LENGTH=yCONFIG_NETFILTER_XT_MATCH_LIMIT=yCONFIG_NETFILTER_XT_MATCH_MAC=yCONFIG_NETFILTER_XT_MATCH_MARK=yCONFIG_NETFILTER_XT_MATCH_MULTIPORT=yCONFIG_NETFILTER_XT_MATCH_NFACCT=yCONFIG_NETFILTER_XT_MATCH_OSF=yCONFIG_NETFILTER_XT_MATCH_OWNER=yCONFIG_NETFILTER_XT_MATCH_POLICY=yCONFIG_NETFILTER_XT_MATCH_PHYSDEV=yCONFIG_NETFILTER_XT_MATCH_PKTTYPE=yCONFIG_NETFILTER_XT_MATCH_QUOTA=yCONFIG_NETFILTER_XT_MATCH_RATEEST=yCONFIG_NETFILTER_XT_MATCH_REALM=yCONFIG_NETFILTER_XT_MATCH_RECENT=yCONFIG_NETFILTER_XT_MATCH_SCTP=yCONFIG_NETFILTER_XT_MATCH_SOCKET=yCONFIG_NETFILTER_XT_MATCH_STATE=yCONFIG_NETFILTER_XT_MATCH_STATISTIC=yCONFIG_NETFILTER_XT_MATCH_STRING=yCONFIG_NETFILTER_XT_MATCH_TCPMSS=yCONFIG_NETFILTER_XT_MATCH_TIME=yCONFIG_NETFILTER_XT_MATCH_U32=y
# end of Core Netfilter Configuration
CONFIG_IP_SET=yCONFIG_IP_SET_MAX=256CONFIG_IP_SET_BITMAP_IP=yCONFIG_IP_SET_BITMAP_IPMAC=yCONFIG_IP_SET_BITMAP_PORT=yCONFIG_IP_SET_HASH_IP=yCONFIG_IP_SET_HASH_IPMARK=yCONFIG_IP_SET_HASH_IPPORT=yCONFIG_IP_SET_HASH_IPPORTIP=yCONFIG_IP_SET_HASH_IPPORTNET=yCONFIG_IP_SET_HASH_IPMAC=yCONFIG_IP_SET_HASH_MAC=yCONFIG_IP_SET_HASH_NETPORTNET=yCONFIG_IP_SET_HASH_NET=yCONFIG_IP_SET_HASH_NETNET=yCONFIG_IP_SET_HASH_NETPORT=yCONFIG_IP_SET_HASH_NETIFACE=yCONFIG_IP_SET_LIST_SET=yCONFIG_IP_VS=yCONFIG_IP_VS_IPV6=yCONFIG_IP_VS_DEBUG=yCONFIG_IP_VS_TAB_BITS=12
#
# IPVS transport protocol load balancing support
#CONFIG_IP_VS_PROTO_TCP=yCONFIG_IP_VS_PROTO_UDP=yCONFIG_IP_VS_PROTO_AH_ESP=yCONFIG_IP_VS_PROTO_ESP=yCONFIG_IP_VS_PROTO_AH=yCONFIG_IP_VS_PROTO_SCTP=y
#
# IPVS scheduler
#CONFIG_IP_VS_RR=yCONFIG_IP_VS_WRR=yCONFIG_IP_VS_LC=yCONFIG_IP_VS_WLC=yCONFIG_IP_VS_FO=yCONFIG_IP_VS_OVF=yCONFIG_IP_VS_LBLC=yCONFIG_IP_VS_LBLCR=yCONFIG_IP_VS_DH=yCONFIG_IP_VS_SH=yCONFIG_IP_VS_MH=yCONFIG_IP_VS_SED=yCONFIG_IP_VS_NQ=yCONFIG_IP_VS_TWOS=y
#
# 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=yCONFIG_IP_VS_NFCT=yCONFIG_IP_VS_PE_SIP=y
#
# IP: Netfilter Configuration
#CONFIG_NF_DEFRAG_IPV4=yCONFIG_NF_SOCKET_IPV4=yCONFIG_NF_TPROXY_IPV4=yCONFIG_NF_TABLES_IPV4=yCONFIG_NFT_REJECT_IPV4=yCONFIG_NFT_DUP_IPV4=yCONFIG_NFT_FIB_IPV4=yCONFIG_NF_TABLES_ARP=yCONFIG_NF_DUP_IPV4=yCONFIG_NF_LOG_ARP=yCONFIG_NF_LOG_IPV4=yCONFIG_NF_REJECT_IPV4=yCONFIG_NF_NAT_SNMP_BASIC=yCONFIG_NF_NAT_PPTP=yCONFIG_NF_NAT_H323=yCONFIG_IP_NF_IPTABLES=yCONFIG_IP_NF_MATCH_AH=yCONFIG_IP_NF_MATCH_ECN=yCONFIG_IP_NF_MATCH_RPFILTER=yCONFIG_IP_NF_MATCH_TTL=yCONFIG_IP_NF_FILTER=yCONFIG_IP_NF_TARGET_REJECT=yCONFIG_IP_NF_TARGET_SYNPROXY=yCONFIG_IP_NF_NAT=yCONFIG_IP_NF_TARGET_MASQUERADE=yCONFIG_IP_NF_TARGET_NETMAP=yCONFIG_IP_NF_TARGET_REDIRECT=yCONFIG_IP_NF_MANGLE=yCONFIG_IP_NF_TARGET_CLUSTERIP=yCONFIG_IP_NF_TARGET_ECN=yCONFIG_IP_NF_TARGET_TTL=yCONFIG_IP_NF_RAW=yCONFIG_IP_NF_SECURITY=yCONFIG_IP_NF_ARPTABLES=yCONFIG_IP_NF_ARPFILTER=yCONFIG_IP_NF_ARP_MANGLE=y
# end of IP: Netfilter Configuration
#
# IPv6: Netfilter Configuration
#CONFIG_NF_SOCKET_IPV6=yCONFIG_NF_TPROXY_IPV6=yCONFIG_NF_TABLES_IPV6=yCONFIG_NFT_REJECT_IPV6=yCONFIG_NFT_DUP_IPV6=yCONFIG_NFT_FIB_IPV6=yCONFIG_NF_DUP_IPV6=yCONFIG_NF_REJECT_IPV6=yCONFIG_NF_LOG_IPV6=yCONFIG_IP6_NF_IPTABLES=yCONFIG_IP6_NF_MATCH_AH=yCONFIG_IP6_NF_MATCH_EUI64=yCONFIG_IP6_NF_MATCH_FRAG=yCONFIG_IP6_NF_MATCH_OPTS=yCONFIG_IP6_NF_MATCH_HL=yCONFIG_IP6_NF_MATCH_IPV6HEADER=yCONFIG_IP6_NF_MATCH_MH=yCONFIG_IP6_NF_MATCH_RPFILTER=yCONFIG_IP6_NF_MATCH_RT=yCONFIG_IP6_NF_MATCH_SRH=yCONFIG_IP6_NF_TARGET_HL=yCONFIG_IP6_NF_FILTER=yCONFIG_IP6_NF_TARGET_REJECT=yCONFIG_IP6_NF_TARGET_SYNPROXY=yCONFIG_IP6_NF_MANGLE=yCONFIG_IP6_NF_RAW=yCONFIG_IP6_NF_SECURITY=yCONFIG_IP6_NF_NAT=yCONFIG_IP6_NF_TARGET_MASQUERADE=yCONFIG_IP6_NF_TARGET_NPT=y
# end of IPv6: Netfilter Configuration
CONFIG_NF_DEFRAG_IPV6=yCONFIG_NF_TABLES_BRIDGE=yCONFIG_NFT_BRIDGE_META=yCONFIG_NFT_BRIDGE_REJECT=yCONFIG_NF_CONNTRACK_BRIDGE=yCONFIG_BRIDGE_NF_EBTABLES=yCONFIG_BRIDGE_EBT_BROUTE=yCONFIG_BRIDGE_EBT_T_FILTER=yCONFIG_BRIDGE_EBT_T_NAT=yCONFIG_BRIDGE_EBT_802_3=yCONFIG_BRIDGE_EBT_AMONG=yCONFIG_BRIDGE_EBT_ARP=yCONFIG_BRIDGE_EBT_IP=yCONFIG_BRIDGE_EBT_IP6=yCONFIG_BRIDGE_EBT_LIMIT=yCONFIG_BRIDGE_EBT_MARK=yCONFIG_BRIDGE_EBT_PKTTYPE=yCONFIG_BRIDGE_EBT_STP=yCONFIG_BRIDGE_EBT_VLAN=yCONFIG_BRIDGE_EBT_ARPREPLY=yCONFIG_BRIDGE_EBT_DNAT=yCONFIG_BRIDGE_EBT_MARK_T=yCONFIG_BRIDGE_EBT_REDIRECT=yCONFIG_BRIDGE_EBT_SNAT=yCONFIG_BRIDGE_EBT_LOG=yCONFIG_BRIDGE_EBT_NFLOG=yCONFIG_BPFILTER=yCONFIG_IP_DCCP=yCONFIG_INET_DCCP_DIAG=y
#
# DCCP CCIDs Configuration
#CONFIG_IP_DCCP_CCID2_DEBUG=yCONFIG_IP_DCCP_CCID3=yCONFIG_IP_DCCP_CCID3_DEBUG=yCONFIG_IP_DCCP_TFRC_LIB=yCONFIG_IP_DCCP_TFRC_DEBUG=y
# end of DCCP CCIDs Configuration
#
# DCCP Kernel Hacking
#CONFIG_IP_DCCP_DEBUG=y
# end of DCCP Kernel Hacking
CONFIG_IP_SCTP=yCONFIG_SCTP_DBG_OBJCNT=yCONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1 is not set
# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not setCONFIG_SCTP_COOKIE_HMAC_MD5=yCONFIG_SCTP_COOKIE_HMAC_SHA1=yCONFIG_INET_SCTP_DIAG=yCONFIG_RDS=yCONFIG_RDS_RDMA=yCONFIG_RDS_TCP=yCONFIG_RDS_DEBUG=yCONFIG_TIPC=yCONFIG_TIPC_MEDIA_IB=yCONFIG_TIPC_MEDIA_UDP=yCONFIG_TIPC_CRYPTO=yCONFIG_TIPC_DIAG=yCONFIG_ATM=yCONFIG_ATM_CLIP=yCONFIG_ATM_CLIP_NO_ICMP=yCONFIG_ATM_LANE=yCONFIG_ATM_MPOA=yCONFIG_ATM_BR2684=yCONFIG_ATM_BR2684_IPFILTER=yCONFIG_L2TP=yCONFIG_L2TP_DEBUGFS=yCONFIG_L2TP_V3=yCONFIG_L2TP_IP=yCONFIG_L2TP_ETH=yCONFIG_STP=yCONFIG_GARP=yCONFIG_MRP=yCONFIG_BRIDGE=yCONFIG_BRIDGE_IGMP_SNOOPING=yCONFIG_BRIDGE_VLAN_FILTERING=yCONFIG_BRIDGE_MRP=yCONFIG_BRIDGE_CFM=yCONFIG_NET_DSA=yCONFIG_NET_DSA_TAG_AR9331=yCONFIG_NET_DSA_TAG_BRCM_COMMON=yCONFIG_NET_DSA_TAG_BRCM=yCONFIG_NET_DSA_TAG_BRCM_LEGACY=yCONFIG_NET_DSA_TAG_BRCM_PREPEND=yCONFIG_NET_DSA_TAG_HELLCREEK=yCONFIG_NET_DSA_TAG_GSWIP=yCONFIG_NET_DSA_TAG_DSA_COMMON=yCONFIG_NET_DSA_TAG_DSA=yCONFIG_NET_DSA_TAG_EDSA=yCONFIG_NET_DSA_TAG_MTK=yCONFIG_NET_DSA_TAG_KSZ=yCONFIG_NET_DSA_TAG_OCELOT=yCONFIG_NET_DSA_TAG_OCELOT_8021Q=yCONFIG_NET_DSA_TAG_QCA=yCONFIG_NET_DSA_TAG_RTL4_A=yCONFIG_NET_DSA_TAG_RTL8_4=yCONFIG_NET_DSA_TAG_RZN1_A5PSW=yCONFIG_NET_DSA_TAG_LAN9303=yCONFIG_NET_DSA_TAG_SJA1105=yCONFIG_NET_DSA_TAG_TRAILER=yCONFIG_NET_DSA_TAG_XRS700X=yCONFIG_VLAN_8021Q=yCONFIG_VLAN_8021Q_GVRP=yCONFIG_VLAN_8021Q_MVRP=yCONFIG_LLC=yCONFIG_LLC2=yCONFIG_ATALK=yCONFIG_DEV_APPLETALK=yCONFIG_IPDDP=yCONFIG_IPDDP_ENCAP=yCONFIG_X25=yCONFIG_LAPB=yCONFIG_PHONET=yCONFIG_6LOWPAN=yCONFIG_6LOWPAN_DEBUGFS=yCONFIG_6LOWPAN_NHC=yCONFIG_6LOWPAN_NHC_DEST=yCONFIG_6LOWPAN_NHC_FRAGMENT=yCONFIG_6LOWPAN_NHC_HOP=yCONFIG_6LOWPAN_NHC_IPV6=yCONFIG_6LOWPAN_NHC_MOBILITY=yCONFIG_6LOWPAN_NHC_ROUTING=yCONFIG_6LOWPAN_NHC_UDP=yCONFIG_6LOWPAN_GHC_EXT_HDR_HOP=yCONFIG_6LOWPAN_GHC_UDP=yCONFIG_6LOWPAN_GHC_ICMPV6=yCONFIG_6LOWPAN_GHC_EXT_HDR_DEST=yCONFIG_6LOWPAN_GHC_EXT_HDR_FRAG=yCONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE=yCONFIG_IEEE802154=yCONFIG_IEEE802154_NL802154_EXPERIMENTAL=yCONFIG_IEEE802154_SOCKET=yCONFIG_IEEE802154_6LOWPAN=yCONFIG_MAC802154=yCONFIG_NET_SCHED=y
#
# Queueing/Scheduling
#CONFIG_NET_SCH_CBQ=yCONFIG_NET_SCH_HTB=yCONFIG_NET_SCH_HFSC=yCONFIG_NET_SCH_ATM=yCONFIG_NET_SCH_PRIO=yCONFIG_NET_SCH_MULTIQ=yCONFIG_NET_SCH_RED=yCONFIG_NET_SCH_SFB=yCONFIG_NET_SCH_SFQ=yCONFIG_NET_SCH_TEQL=yCONFIG_NET_SCH_TBF=yCONFIG_NET_SCH_CBS=yCONFIG_NET_SCH_ETF=yCONFIG_NET_SCH_TAPRIO=yCONFIG_NET_SCH_GRED=yCONFIG_NET_SCH_DSMARK=yCONFIG_NET_SCH_NETEM=yCONFIG_NET_SCH_DRR=yCONFIG_NET_SCH_MQPRIO=yCONFIG_NET_SCH_SKBPRIO=yCONFIG_NET_SCH_CHOKE=yCONFIG_NET_SCH_QFQ=yCONFIG_NET_SCH_CODEL=yCONFIG_NET_SCH_FQ_CODEL=yCONFIG_NET_SCH_CAKE=yCONFIG_NET_SCH_FQ=yCONFIG_NET_SCH_HHF=yCONFIG_NET_SCH_PIE=yCONFIG_NET_SCH_FQ_PIE=yCONFIG_NET_SCH_INGRESS=yCONFIG_NET_SCH_PLUG=yCONFIG_NET_SCH_ETS=yCONFIG_NET_SCH_DEFAULT=y
# CONFIG_DEFAULT_FQ is not set
# CONFIG_DEFAULT_CODEL is not set
# CONFIG_DEFAULT_FQ_CODEL is not set
# CONFIG_DEFAULT_FQ_PIE is not set
# CONFIG_DEFAULT_SFQ is not setCONFIG_DEFAULT_PFIFO_FAST=yCONFIG_DEFAULT_NET_SCH="pfifo_fast"
#
# Classification
#CONFIG_NET_CLS=yCONFIG_NET_CLS_BASIC=yCONFIG_NET_CLS_TCINDEX=yCONFIG_NET_CLS_ROUTE4=yCONFIG_NET_CLS_FW=yCONFIG_NET_CLS_U32=yCONFIG_CLS_U32_PERF=yCONFIG_CLS_U32_MARK=yCONFIG_NET_CLS_RSVP=yCONFIG_NET_CLS_RSVP6=yCONFIG_NET_CLS_FLOW=yCONFIG_NET_CLS_CGROUP=yCONFIG_NET_CLS_BPF=yCONFIG_NET_CLS_FLOWER=yCONFIG_NET_CLS_MATCHALL=yCONFIG_NET_EMATCH=yCONFIG_NET_EMATCH_STACK=32CONFIG_NET_EMATCH_CMP=yCONFIG_NET_EMATCH_NBYTE=yCONFIG_NET_EMATCH_U32=yCONFIG_NET_EMATCH_META=yCONFIG_NET_EMATCH_TEXT=yCONFIG_NET_EMATCH_CANID=yCONFIG_NET_EMATCH_IPSET=yCONFIG_NET_EMATCH_IPT=yCONFIG_NET_CLS_ACT=yCONFIG_NET_ACT_POLICE=yCONFIG_NET_ACT_GACT=yCONFIG_GACT_PROB=yCONFIG_NET_ACT_MIRRED=yCONFIG_NET_ACT_SAMPLE=yCONFIG_NET_ACT_IPT=yCONFIG_NET_ACT_NAT=yCONFIG_NET_ACT_PEDIT=yCONFIG_NET_ACT_SIMP=yCONFIG_NET_ACT_SKBEDIT=yCONFIG_NET_ACT_CSUM=yCONFIG_NET_ACT_MPLS=yCONFIG_NET_ACT_VLAN=yCONFIG_NET_ACT_BPF=yCONFIG_NET_ACT_CONNMARK=yCONFIG_NET_ACT_CTINFO=yCONFIG_NET_ACT_SKBMOD=yCONFIG_NET_ACT_IFE=yCONFIG_NET_ACT_TUNNEL_KEY=yCONFIG_NET_ACT_CT=yCONFIG_NET_ACT_GATE=yCONFIG_NET_IFE_SKBMARK=yCONFIG_NET_IFE_SKBPRIO=yCONFIG_NET_IFE_SKBTCINDEX=yCONFIG_NET_TC_SKB_EXT=yCONFIG_NET_SCH_FIFO=yCONFIG_DCB=yCONFIG_DNS_RESOLVER=yCONFIG_BATMAN_ADV=yCONFIG_BATMAN_ADV_BATMAN_V=yCONFIG_BATMAN_ADV_BLA=yCONFIG_BATMAN_ADV_DAT=yCONFIG_BATMAN_ADV_NC=yCONFIG_BATMAN_ADV_MCAST=yCONFIG_BATMAN_ADV_DEBUG=yCONFIG_BATMAN_ADV_TRACING=yCONFIG_OPENVSWITCH=yCONFIG_OPENVSWITCH_GRE=yCONFIG_OPENVSWITCH_VXLAN=yCONFIG_OPENVSWITCH_GENEVE=yCONFIG_VSOCKETS=yCONFIG_VSOCKETS_DIAG=yCONFIG_VSOCKETS_LOOPBACK=yCONFIG_VIRTIO_VSOCKETS=yCONFIG_VIRTIO_VSOCKETS_COMMON=yCONFIG_NETLINK_DIAG=yCONFIG_MPLS=yCONFIG_NET_MPLS_GSO=yCONFIG_MPLS_ROUTING=yCONFIG_MPLS_IPTUNNEL=yCONFIG_NET_NSH=yCONFIG_HSR=yCONFIG_NET_SWITCHDEV=yCONFIG_NET_L3_MASTER_DEV=yCONFIG_QRTR=yCONFIG_QRTR_SMD=yCONFIG_QRTR_TUN=yCONFIG_QRTR_MHI=yCONFIG_NET_NCSI=yCONFIG_NCSI_OEM_CMD_GET_MAC=yCONFIG_NCSI_OEM_CMD_KEEP_PHY=yCONFIG_PCPU_DEV_REFCNT=yCONFIG_RPS=yCONFIG_RFS_ACCEL=yCONFIG_SOCK_RX_QUEUE_MAPPING=yCONFIG_XPS=yCONFIG_CGROUP_NET_PRIO=yCONFIG_CGROUP_NET_CLASSID=yCONFIG_NET_RX_BUSY_POLL=yCONFIG_BQL=yCONFIG_BPF_STREAM_PARSER=yCONFIG_NET_FLOW_LIMIT=y
#
# Network testing
#CONFIG_NET_PKTGEN=yCONFIG_NET_DROP_MONITOR=y
# end of Network testing # end of Networking options
CONFIG_HAMRADIO=y
#
# Packet Radio protocols
#CONFIG_AX25=yCONFIG_AX25_DAMA_SLAVE=yCONFIG_NETROM=yCONFIG_ROSE=y
#
# AX.25 network device drivers
#CONFIG_MKISS=yCONFIG_6PACK=yCONFIG_BPQETHER=yCONFIG_BAYCOM_SER_FDX=yCONFIG_BAYCOM_SER_HDX=yCONFIG_BAYCOM_PAR=y
# CONFIG_BAYCOM_EPP is not setCONFIG_YAM=y
# end of AX.25 network device drivers
CONFIG_CAN=yCONFIG_CAN_RAW=yCONFIG_CAN_BCM=yCONFIG_CAN_GW=yCONFIG_CAN_J1939=yCONFIG_CAN_ISOTP=yCONFIG_BT=yCONFIG_BT_BREDR=yCONFIG_BT_RFCOMM=yCONFIG_BT_RFCOMM_TTY=yCONFIG_BT_BNEP=yCONFIG_BT_BNEP_MC_FILTER=yCONFIG_BT_BNEP_PROTO_FILTER=yCONFIG_BT_CMTP=yCONFIG_BT_HIDP=yCONFIG_BT_HS=yCONFIG_BT_LE=yCONFIG_BT_6LOWPAN=yCONFIG_BT_LEDS=yCONFIG_BT_MSFTEXT=yCONFIG_BT_AOSPEXT=yCONFIG_BT_DEBUGFS=yCONFIG_BT_SELFTEST=yCONFIG_BT_SELFTEST_ECDH=yCONFIG_BT_SELFTEST_SMP=y
#
# Bluetooth device drivers
#CONFIG_BT_INTEL=yCONFIG_BT_BCM=yCONFIG_BT_RTL=yCONFIG_BT_QCA=yCONFIG_BT_MTK=yCONFIG_BT_HCIBTUSB=yCONFIG_BT_HCIBTUSB_AUTOSUSPEND=yCONFIG_BT_HCIBTUSB_BCM=yCONFIG_BT_HCIBTUSB_MTK=yCONFIG_BT_HCIBTUSB_RTL=yCONFIG_BT_HCIBTSDIO=yCONFIG_BT_HCIUART=yCONFIG_BT_HCIUART_SERDEV=yCONFIG_BT_HCIUART_H4=yCONFIG_BT_HCIUART_NOKIA=yCONFIG_BT_HCIUART_BCSP=yCONFIG_BT_HCIUART_ATH3K=yCONFIG_BT_HCIUART_LL=yCONFIG_BT_HCIUART_3WIRE=yCONFIG_BT_HCIUART_INTEL=yCONFIG_BT_HCIUART_BCM=yCONFIG_BT_HCIUART_RTL=yCONFIG_BT_HCIUART_QCA=yCONFIG_BT_HCIUART_AG6XX=yCONFIG_BT_HCIUART_MRVL=yCONFIG_BT_HCIBCM203X=yCONFIG_BT_HCIBPA10X=yCONFIG_BT_HCIBFUSB=yCONFIG_BT_HCIDTL1=yCONFIG_BT_HCIBT3C=yCONFIG_BT_HCIBLUECARD=yCONFIG_BT_HCIVHCI=yCONFIG_BT_MRVL=yCONFIG_BT_MRVL_SDIO=yCONFIG_BT_ATH3K=yCONFIG_BT_MTKSDIO=yCONFIG_BT_MTKUART=yCONFIG_BT_QCOMSMD=yCONFIG_BT_HCIRSI=yCONFIG_BT_VIRTIO=y
# end of Bluetooth device drivers
CONFIG_AF_RXRPC=yCONFIG_AF_RXRPC_IPV6=yCONFIG_AF_RXRPC_INJECT_LOSS=yCONFIG_AF_RXRPC_DEBUG=yCONFIG_RXKAD=yCONFIG_AF_KCM=yCONFIG_STREAM_PARSER=yCONFIG_MCTP=yCONFIG_MCTP_TEST=yCONFIG_MCTP_FLOWS=yCONFIG_FIB_RULES=yCONFIG_WIRELESS=yCONFIG_WIRELESS_EXT=yCONFIG_WEXT_CORE=yCONFIG_WEXT_PROC=yCONFIG_WEXT_SPY=yCONFIG_WEXT_PRIV=yCONFIG_CFG80211=yCONFIG_NL80211_TESTMODE=yCONFIG_CFG80211_DEVELOPER_WARNINGS=yCONFIG_CFG80211_CERTIFICATION_ONUS=yCONFIG_CFG80211_REQUIRE_SIGNED_REGDB=yCONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=yCONFIG_CFG80211_EXTRA_REGDB_KEYDIR=""CONFIG_CFG80211_REG_CELLULAR_HINTS=yCONFIG_CFG80211_REG_RELAX_NO_IR=yCONFIG_CFG80211_DEFAULT_PS=yCONFIG_CFG80211_DEBUGFS=yCONFIG_CFG80211_CRDA_SUPPORT=yCONFIG_CFG80211_WEXT=yCONFIG_CFG80211_WEXT_EXPORT=yCONFIG_LIB80211=yCONFIG_LIB80211_CRYPT_WEP=yCONFIG_LIB80211_CRYPT_CCMP=yCONFIG_LIB80211_CRYPT_TKIP=yCONFIG_LIB80211_DEBUG=yCONFIG_MAC80211=yCONFIG_MAC80211_HAS_RC=yCONFIG_MAC80211_RC_MINSTREL=yCONFIG_MAC80211_RC_DEFAULT_MINSTREL=yCONFIG_MAC80211_RC_DEFAULT="minstrel_ht"CONFIG_MAC80211_MESH=yCONFIG_MAC80211_LEDS=yCONFIG_MAC80211_DEBUGFS=yCONFIG_MAC80211_MESSAGE_TRACING=yCONFIG_MAC80211_DEBUG_MENU=yCONFIG_MAC80211_NOINLINE=yCONFIG_MAC80211_VERBOSE_DEBUG=yCONFIG_MAC80211_MLME_DEBUG=yCONFIG_MAC80211_STA_DEBUG=yCONFIG_MAC80211_HT_DEBUG=yCONFIG_MAC80211_OCB_DEBUG=yCONFIG_MAC80211_IBSS_DEBUG=yCONFIG_MAC80211_PS_DEBUG=yCONFIG_MAC80211_MPL_DEBUG=yCONFIG_MAC80211_MPATH_DEBUG=yCONFIG_MAC80211_MHWMP_DEBUG=yCONFIG_MAC80211_MESH_SYNC_DEBUG=yCONFIG_MAC80211_MESH_CSA_DEBUG=yCONFIG_MAC80211_MESH_PS_DEBUG=yCONFIG_MAC80211_TDLS_DEBUG=yCONFIG_MAC80211_DEBUG_COUNTERS=yCONFIG_MAC80211_STA_HASH_MAX_SIZE=0CONFIG_RFKILL=yCONFIG_RFKILL_LEDS=yCONFIG_RFKILL_INPUT=yCONFIG_RFKILL_GPIO=yCONFIG_NET_9P=yCONFIG_NET_9P_FD=yCONFIG_NET_9P_VIRTIO=yCONFIG_NET_9P_RDMA=yCONFIG_NET_9P_DEBUG=yCONFIG_CAIF=yCONFIG_CAIF_DEBUG=yCONFIG_CAIF_NETDEV=yCONFIG_CAIF_USB=yCONFIG_CEPH_LIB=yCONFIG_CEPH_LIB_PRETTYDEBUG=yCONFIG_CEPH_LIB_USE_DNS_RESOLVER=yCONFIG_NFC=yCONFIG_NFC_DIGITAL=yCONFIG_NFC_NCI=yCONFIG_NFC_NCI_SPI=yCONFIG_NFC_NCI_UART=yCONFIG_NFC_HCI=yCONFIG_NFC_SHDLC=y
#
# Near Field Communication (NFC) devices
#CONFIG_NFC_TRF7970A=yCONFIG_NFC_SIM=yCONFIG_NFC_PORT100=yCONFIG_NFC_VIRTUAL_NCI=yCONFIG_NFC_FDP=yCONFIG_NFC_FDP_I2C=yCONFIG_NFC_PN544=yCONFIG_NFC_PN544_I2C=yCONFIG_NFC_PN533=yCONFIG_NFC_PN533_USB=yCONFIG_NFC_PN533_I2C=yCONFIG_NFC_PN532_UART=yCONFIG_NFC_MICROREAD=yCONFIG_NFC_MICROREAD_I2C=yCONFIG_NFC_MRVL=yCONFIG_NFC_MRVL_USB=yCONFIG_NFC_MRVL_UART=yCONFIG_NFC_MRVL_I2C=yCONFIG_NFC_MRVL_SPI=yCONFIG_NFC_ST21NFCA=yCONFIG_NFC_ST21NFCA_I2C=yCONFIG_NFC_ST_NCI=yCONFIG_NFC_ST_NCI_I2C=yCONFIG_NFC_ST_NCI_SPI=yCONFIG_NFC_NXP_NCI=yCONFIG_NFC_NXP_NCI_I2C=yCONFIG_NFC_S3FWRN5=yCONFIG_NFC_S3FWRN5_I2C=yCONFIG_NFC_S3FWRN82_UART=yCONFIG_NFC_ST95HF=y
# end of Near Field Communication (NFC) devices
CONFIG_PSAMPLE=yCONFIG_NET_IFE=yCONFIG_LWTUNNEL=yCONFIG_LWTUNNEL_BPF=yCONFIG_DST_CACHE=yCONFIG_GRO_CELLS=yCONFIG_SOCK_VALIDATE_XMIT=yCONFIG_NET_SELFTESTS=yCONFIG_NET_SOCK_MSG=yCONFIG_NET_DEVLINK=yCONFIG_PAGE_POOL=yCONFIG_PAGE_POOL_STATS=yCONFIG_FAILOVER=yCONFIG_ETHTOOL_NETLINK=yCONFIG_NETDEV_ADDR_LIST_TEST=y
#
# Device Drivers
#CONFIG_HAVE_PCI=yCONFIG_FORCE_PCI=yCONFIG_PCI=yCONFIG_PCI_DOMAINS=yCONFIG_PCI_SYSCALL=yCONFIG_PCIEPORTBUS=yCONFIG_HOTPLUG_PCI_PCIE=yCONFIG_PCIEAER=yCONFIG_PCIEAER_INJECT=yCONFIG_PCIE_ECRC=yCONFIG_PCIEASPM=yCONFIG_PCIEASPM_DEFAULT=y
# CONFIG_PCIEASPM_POWERSAVE is not set
# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set
# CONFIG_PCIEASPM_PERFORMANCE is not setCONFIG_PCIE_PME=yCONFIG_PCIE_DPC=yCONFIG_PCIE_PTM=yCONFIG_PCI_MSI=yCONFIG_PCI_MSI_IRQ_DOMAIN=yCONFIG_PCI_MSI_ARCH_FALLBACKS=yCONFIG_PCI_QUIRKS=yCONFIG_PCI_DEBUG=yCONFIG_PCI_REALLOC_ENABLE_AUTO=yCONFIG_PCI_STUB=yCONFIG_PCI_PF_STUB=yCONFIG_PCI_ATS=yCONFIG_PCI_DOE=yCONFIG_PCI_ECAM=yCONFIG_PCI_BRIDGE_EMUL=yCONFIG_PCI_IOV=yCONFIG_PCI_PRI=yCONFIG_PCI_PASID=y
# CONFIG_PCIE_BUS_TUNE_OFF is not setCONFIG_PCIE_BUS_DEFAULT=y
# CONFIG_PCIE_BUS_SAFE is not set
# CONFIG_PCIE_BUS_PERFORMANCE is not set
# CONFIG_PCIE_BUS_PEER2PEER is not setCONFIG_VGA_ARB=yCONFIG_VGA_ARB_MAX_GPUS=16CONFIG_HOTPLUG_PCI=yCONFIG_HOTPLUG_PCI_CPCI=yCONFIG_HOTPLUG_PCI_SHPC=y
#
# PCI controller drivers
#CONFIG_PCI_AARDVARK=yCONFIG_PCIE_XILINX_NWL=yCONFIG_PCI_FTPCI100=yCONFIG_PCI_TEGRA=yCONFIG_PCIE_RCAR_HOST=yCONFIG_PCIE_RCAR_EP=yCONFIG_PCI_HOST_COMMON=yCONFIG_PCI_HOST_GENERIC=yCONFIG_PCIE_XILINX=yCONFIG_PCIE_XILINX_CPM=yCONFIG_PCI_XGENE=yCONFIG_PCI_XGENE_MSI=yCONFIG_PCI_V3_SEMI=yCONFIG_PCI_VERSATILE=yCONFIG_PCIE_ALTERA=yCONFIG_PCIE_ALTERA_MSI=yCONFIG_PCI_HOST_THUNDER_PEM=yCONFIG_PCI_HOST_THUNDER_ECAM=yCONFIG_PCIE_ROCKCHIP=yCONFIG_PCIE_ROCKCHIP_HOST=yCONFIG_PCIE_ROCKCHIP_EP=yCONFIG_PCIE_MEDIATEK=yCONFIG_PCIE_MEDIATEK_GEN3=yCONFIG_PCIE_BRCMSTB=yCONFIG_PCI_LOONGSON=yCONFIG_PCIE_MICROCHIP_HOST=yCONFIG_PCIE_APPLE_MSI_DOORBELL_ADDR=0xfffff000CONFIG_PCIE_APPLE=yCONFIG_PCIE_MT7621=y
#
# DesignWare PCI Core Support
#CONFIG_PCIE_DW=yCONFIG_PCIE_DW_HOST=yCONFIG_PCIE_DW_EP=yCONFIG_PCI_DRA7XX=yCONFIG_PCI_DRA7XX_HOST=yCONFIG_PCI_DRA7XX_EP=yCONFIG_PCIE_DW_PLAT=yCONFIG_PCIE_DW_PLAT_HOST=yCONFIG_PCIE_DW_PLAT_EP=yCONFIG_PCI_EXYNOS=yCONFIG_PCI_IMX6=yCONFIG_PCIE_SPEAR13XX=yCONFIG_PCI_KEYSTONE=yCONFIG_PCI_KEYSTONE_HOST=yCONFIG_PCI_KEYSTONE_EP=yCONFIG_PCI_LAYERSCAPE=yCONFIG_PCI_LAYERSCAPE_EP=yCONFIG_PCI_HISI=yCONFIG_PCIE_QCOM=yCONFIG_PCIE_QCOM_EP=yCONFIG_PCIE_ARMADA_8K=yCONFIG_PCIE_ARTPEC6=yCONFIG_PCIE_ARTPEC6_HOST=yCONFIG_PCIE_ARTPEC6_EP=yCONFIG_PCIE_ROCKCHIP_DW_HOST=yCONFIG_PCIE_INTEL_GW=yCONFIG_PCIE_KEEMBAY=yCONFIG_PCIE_KEEMBAY_HOST=yCONFIG_PCIE_KEEMBAY_EP=yCONFIG_PCIE_KIRIN=yCONFIG_PCIE_HISI_STB=yCONFIG_PCI_MESON=yCONFIG_PCIE_TEGRA194=yCONFIG_PCIE_TEGRA194_HOST=yCONFIG_PCIE_TEGRA194_EP=yCONFIG_PCIE_VISCONTI_HOST=yCONFIG_PCIE_UNIPHIER=yCONFIG_PCIE_UNIPHIER_EP=yCONFIG_PCIE_AL=yCONFIG_PCIE_FU740=y
# end of DesignWare PCI Core Support
#
# Mobiveil PCIe Core Support
#CONFIG_PCIE_MOBIVEIL=yCONFIG_PCIE_MOBIVEIL_HOST=yCONFIG_PCIE_MOBIVEIL_PLAT=yCONFIG_PCIE_LAYERSCAPE_GEN4=y
# end of Mobiveil PCIe Core Support
#
# Cadence PCIe controllers support
#CONFIG_PCIE_CADENCE=yCONFIG_PCIE_CADENCE_HOST=yCONFIG_PCIE_CADENCE_EP=yCONFIG_PCIE_CADENCE_PLAT=yCONFIG_PCIE_CADENCE_PLAT_HOST=yCONFIG_PCIE_CADENCE_PLAT_EP=yCONFIG_PCI_J721E=yCONFIG_PCI_J721E_HOST=yCONFIG_PCI_J721E_EP=y
# end of Cadence PCIe controllers support # end of PCI controller drivers
#
# PCI Endpoint
#CONFIG_PCI_ENDPOINT=yCONFIG_PCI_ENDPOINT_CONFIGFS=yCONFIG_PCI_EPF_TEST=yCONFIG_PCI_EPF_NTB=yCONFIG_PCI_EPF_VNTB=y
# end of PCI Endpoint
#
# PCI switch controller drivers
#CONFIG_PCI_SW_SWITCHTEC=y
# end of PCI switch controller drivers
CONFIG_CXL_BUS=yCONFIG_CXL_PCI=yCONFIG_CXL_MEM_RAW_COMMANDS=yCONFIG_CXL_MEM=yCONFIG_CXL_PORT=yCONFIG_CXL_SUSPEND=yCONFIG_PCCARD=yCONFIG_PCMCIA=yCONFIG_PCMCIA_LOAD_CIS=yCONFIG_CARDBUS=y
#
# PC-card bridges
#CONFIG_YENTA=yCONFIG_YENTA_O2=yCONFIG_YENTA_RICOH=yCONFIG_YENTA_TI=yCONFIG_YENTA_ENE_TUNE=yCONFIG_YENTA_TOSHIBA=yCONFIG_PD6729=yCONFIG_I82092=yCONFIG_PCCARD_NONSTATIC=yCONFIG_RAPIDIO=yCONFIG_RAPIDIO_TSI721=yCONFIG_RAPIDIO_DISC_TIMEOUT=30CONFIG_RAPIDIO_ENABLE_RX_TX_PORTS=yCONFIG_RAPIDIO_DMA_ENGINE=yCONFIG_RAPIDIO_DEBUG=yCONFIG_RAPIDIO_ENUM_BASIC=yCONFIG_RAPIDIO_CHMAN=yCONFIG_RAPIDIO_MPORT_CDEV=y
#
# RapidIO Switch drivers
#CONFIG_RAPIDIO_CPS_XX=yCONFIG_RAPIDIO_CPS_GEN2=yCONFIG_RAPIDIO_RXS_GEN3=y
# end of RapidIO Switch drivers
#
# Generic Driver Options
#CONFIG_AUXILIARY_BUS=yCONFIG_UEVENT_HELPER=yCONFIG_UEVENT_HELPER_PATH=""CONFIG_DEVTMPFS=yCONFIG_DEVTMPFS_MOUNT=yCONFIG_DEVTMPFS_SAFE=yCONFIG_STANDALONE=yCONFIG_PREVENT_FIRMWARE_BUILD=y
#
# Firmware loader
#CONFIG_FW_LOADER=yCONFIG_FW_LOADER_PAGED_BUF=yCONFIG_FW_LOADER_SYSFS=yCONFIG_EXTRA_FIRMWARE=""CONFIG_FW_LOADER_USER_HELPER=yCONFIG_FW_LOADER_USER_HELPER_FALLBACK=yCONFIG_FW_LOADER_COMPRESS=yCONFIG_FW_LOADER_COMPRESS_XZ=yCONFIG_FW_LOADER_COMPRESS_ZSTD=yCONFIG_FW_CACHE=yCONFIG_FW_UPLOAD=y
# end of Firmware loader
CONFIG_WANT_DEV_COREDUMP=yCONFIG_ALLOW_DEV_COREDUMP=yCONFIG_DEV_COREDUMP=yCONFIG_DEBUG_DRIVER=yCONFIG_DEBUG_DEVRES=yCONFIG_DEBUG_TEST_DRIVER_REMOVE=yCONFIG_PM_QOS_KUNIT_TEST=yCONFIG_TEST_ASYNC_DRIVER_PROBE=mCONFIG_DRIVER_PE_KUNIT_TEST=yCONFIG_GENERIC_CPU_AUTOPROBE=yCONFIG_SOC_BUS=yCONFIG_REGMAP=yCONFIG_REGMAP_AC97=yCONFIG_REGMAP_I2C=yCONFIG_REGMAP_SLIMBUS=yCONFIG_REGMAP_SPI=yCONFIG_REGMAP_SPMI=yCONFIG_REGMAP_W1=yCONFIG_REGMAP_MMIO=yCONFIG_REGMAP_IRQ=yCONFIG_REGMAP_SOUNDWIRE=yCONFIG_REGMAP_SOUNDWIRE_MBQ=yCONFIG_REGMAP_SCCB=yCONFIG_REGMAP_I3C=yCONFIG_REGMAP_SPI_AVMM=yCONFIG_DMA_SHARED_BUFFER=yCONFIG_DMA_FENCE_TRACE=y
# end of Generic Driver Options
#
# Bus devices
#CONFIG_ARM_INTEGRATOR_LM=yCONFIG_BT1_APB=yCONFIG_BT1_AXI=yCONFIG_MOXTET=yCONFIG_HISILICON_LPC=yCONFIG_INTEL_IXP4XX_EB=yCONFIG_QCOM_EBI2=yCONFIG_FSL_MC_BUS=yCONFIG_FSL_MC_UAPI_SUPPORT=yCONFIG_MHI_BUS=yCONFIG_MHI_BUS_DEBUG=yCONFIG_MHI_BUS_PCI_GENERIC=yCONFIG_MHI_BUS_EP=y
# end of Bus devices
CONFIG_CONNECTOR=yCONFIG_PROC_EVENTS=y
#
# Firmware Drivers
#
#
# ARM System Control and Management Interface Protocol #CONFIG_ARM_SCMI_PROTOCOL=y CONFIG_ARM_SCMI_HAVE_TRANSPORT=y CONFIG_ARM_SCMI_HAVE_SHMEM=y CONFIG_ARM_SCMI_HAVE_MSG=y CONFIG_ARM_SCMI_TRANSPORT_MAILBOX=y CONFIG_ARM_SCMI_TRANSPORT_VIRTIO=y CONFIG_ARM_SCMI_TRANSPORT_VIRTIO_VERSION1_COMPLIANCE=y CONFIG_ARM_SCMI_TRANSPORT_VIRTIO_ATOMIC_ENABLE=y CONFIG_ARM_SCMI_POWER_DOMAIN=y CONFIG_ARM_SCMI_POWER_CONTROL=y
# end of ARM System Control and Management Interface Protocol
CONFIG_ARM_SCPI_PROTOCOL=yCONFIG_ARM_SCPI_POWER_DOMAIN=yCONFIG_FIRMWARE_MEMMAP=yCONFIG_FW_CFG_SYSFS=yCONFIG_FW_CFG_SYSFS_CMDLINE=yCONFIG_MTK_ADSP_IPC=yCONFIG_QCOM_SCM=yCONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT=yCONFIG_TURRIS_MOX_RWTM=yCONFIG_BCM47XX_NVRAM=yCONFIG_BCM47XX_SPROM=yCONFIG_TEE_BNXT_FW=yCONFIG_CS_DSP=yCONFIG_GOOGLE_FIRMWARE=yCONFIG_GOOGLE_COREBOOT_TABLE=yCONFIG_GOOGLE_MEMCONSOLE=yCONFIG_GOOGLE_MEMCONSOLE_COREBOOT=yCONFIG_GOOGLE_VPD=yCONFIG_IMX_DSP=yCONFIG_IMX_SCU=yCONFIG_IMX_SCU_PD=y
#
# Tegra firmware driver
#
# end of Tegra firmware driver # end of Firmware Drivers
CONFIG_GNSS=yCONFIG_GNSS_SERIAL=yCONFIG_GNSS_MTK_SERIAL=yCONFIG_GNSS_SIRF_SERIAL=yCONFIG_GNSS_UBX_SERIAL=yCONFIG_GNSS_USB=yCONFIG_MTD=yCONFIG_MTD_TESTS=m
#
# Partition parsers
#CONFIG_MTD_AR7_PARTS=yCONFIG_MTD_BCM63XX_PARTS=yCONFIG_MTD_BRCM_U_BOOT=yCONFIG_MTD_CMDLINE_PARTS=yCONFIG_MTD_OF_PARTS=yCONFIG_MTD_OF_PARTS_BCM4908=yCONFIG_MTD_OF_PARTS_LINKSYS_NS=yCONFIG_MTD_PARSER_IMAGETAG=yCONFIG_MTD_PARSER_TRX=yCONFIG_MTD_SHARPSL_PARTS=yCONFIG_MTD_REDBOOT_PARTS=yCONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED=yCONFIG_MTD_REDBOOT_PARTS_READONLY=yCONFIG_MTD_QCOMSMEM_PARTS=y
# end of Partition parsers
#
# User Modules And Translation Layers
#CONFIG_MTD_BLKDEVS=yCONFIG_MTD_BLOCK=y
#
# Note that in some cases UBI block is preferred. See MTD_UBI_BLOCK. #CONFIG_FTL=yCONFIG_NFTL=yCONFIG_NFTL_RW=yCONFIG_INFTL=yCONFIG_RFD_FTL=yCONFIG_SSFDC=yCONFIG_SM_FTL=yCONFIG_MTD_OOPS=yCONFIG_MTD_PSTORE=yCONFIG_MTD_SWAP=yCONFIG_MTD_PARTITIONED_MASTER=y
#
# RAM/ROM/Flash chip drivers
#CONFIG_MTD_CFI=yCONFIG_MTD_JEDECPROBE=yCONFIG_MTD_GEN_PROBE=yCONFIG_MTD_CFI_ADV_OPTIONS=yCONFIG_MTD_CFI_NOSWAP=y
# CONFIG_MTD_CFI_BE_BYTE_SWAP is not set
# CONFIG_MTD_CFI_LE_BYTE_SWAP is not setCONFIG_MTD_CFI_GEOMETRY=yCONFIG_MTD_MAP_BANK_WIDTH_1=yCONFIG_MTD_MAP_BANK_WIDTH_2=yCONFIG_MTD_MAP_BANK_WIDTH_4=yCONFIG_MTD_MAP_BANK_WIDTH_8=yCONFIG_MTD_MAP_BANK_WIDTH_16=yCONFIG_MTD_MAP_BANK_WIDTH_32=yCONFIG_MTD_CFI_I1=yCONFIG_MTD_CFI_I2=yCONFIG_MTD_CFI_I4=yCONFIG_MTD_CFI_I8=yCONFIG_MTD_OTP=yCONFIG_MTD_CFI_INTELEXT=yCONFIG_MTD_CFI_AMDSTD=yCONFIG_MTD_CFI_STAA=yCONFIG_MTD_CFI_UTIL=yCONFIG_MTD_RAM=yCONFIG_MTD_ROM=yCONFIG_MTD_ABSENT=y
# end of RAM/ROM/Flash chip drivers
#
# Mapping drivers for chip access
#CONFIG_MTD_COMPLEX_MAPPINGS=yCONFIG_MTD_PHYSMAP=yCONFIG_MTD_PHYSMAP_COMPAT=yCONFIG_MTD_PHYSMAP_START=0x8000000CONFIG_MTD_PHYSMAP_LEN=0CONFIG_MTD_PHYSMAP_BANKWIDTH=2CONFIG_MTD_PHYSMAP_OF=yCONFIG_MTD_PHYSMAP_BT1_ROM=yCONFIG_MTD_PHYSMAP_VERSATILE=yCONFIG_MTD_PHYSMAP_GEMINI=yCONFIG_MTD_PHYSMAP_GPIO_ADDR=yCONFIG_MTD_SC520CDP=yCONFIG_MTD_NETSC520=yCONFIG_MTD_TS5500=yCONFIG_MTD_PCI=yCONFIG_MTD_PCMCIA=yCONFIG_MTD_PCMCIA_ANONYMOUS=yCONFIG_MTD_INTEL_VR_NOR=yCONFIG_MTD_PLATRAM=y
# end of Mapping drivers for chip access
#
# Self-contained MTD device drivers
#CONFIG_MTD_PMC551=yCONFIG_MTD_PMC551_BUGFIX=yCONFIG_MTD_PMC551_DEBUG=yCONFIG_MTD_DATAFLASH=yCONFIG_MTD_DATAFLASH_WRITE_VERIFY=yCONFIG_MTD_DATAFLASH_OTP=yCONFIG_MTD_MCHP23K256=yCONFIG_MTD_MCHP48L640=yCONFIG_MTD_SPEAR_SMI=yCONFIG_MTD_SST25L=yCONFIG_MTD_SLRAM=yCONFIG_MTD_PHRAM=yCONFIG_MTD_MTDRAM=yCONFIG_MTDRAM_TOTAL_SIZE=4096CONFIG_MTDRAM_ERASE_SIZE=128CONFIG_MTD_BLOCK2MTD=y
#
# Disk-On-Chip Device Drivers
#CONFIG_MTD_DOCG3=yCONFIG_BCH_CONST_M=14CONFIG_BCH_CONST_T=4
# end of Self-contained MTD device drivers
#
# NAND
#CONFIG_MTD_NAND_CORE=yCONFIG_MTD_ONENAND=yCONFIG_MTD_ONENAND_VERIFY_WRITE=yCONFIG_MTD_ONENAND_GENERIC=yCONFIG_MTD_ONENAND_SAMSUNG=yCONFIG_MTD_ONENAND_OTP=yCONFIG_MTD_ONENAND_2X_PROGRAM=yCONFIG_MTD_RAW_NAND=y
#
# Raw/parallel NAND flash controllers
#CONFIG_MTD_NAND_DENALI=yCONFIG_MTD_NAND_DENALI_PCI=yCONFIG_MTD_NAND_DENALI_DT=yCONFIG_MTD_NAND_AMS_DELTA=yCONFIG_MTD_NAND_OMAP2=yCONFIG_MTD_NAND_OMAP_BCH=yCONFIG_MTD_NAND_OMAP_BCH_BUILD=yCONFIG_MTD_NAND_SHARPSL=yCONFIG_MTD_NAND_CAFE=yCONFIG_MTD_NAND_ATMEL=yCONFIG_MTD_NAND_MARVELL=yCONFIG_MTD_NAND_SLC_LPC32XX=yCONFIG_MTD_NAND_MLC_LPC32XX=yCONFIG_MTD_NAND_BRCMNAND=yCONFIG_MTD_NAND_BRCMNAND_BCM63XX=yCONFIG_MTD_NAND_BRCMNAND_BCMA=yCONFIG_MTD_NAND_BRCMNAND_BCMBCA=yCONFIG_MTD_NAND_BRCMNAND_BRCMSTB=yCONFIG_MTD_NAND_BRCMNAND_IPROC=yCONFIG_MTD_NAND_BCM47XXNFLASH=yCONFIG_MTD_NAND_OXNAS=yCONFIG_MTD_NAND_GPMI_NAND=yCONFIG_MTD_NAND_FSL_IFC=yCONFIG_MTD_NAND_VF610_NFC=yCONFIG_MTD_NAND_MXC=yCONFIG_MTD_NAND_SH_FLCTL=yCONFIG_MTD_NAND_DAVINCI=yCONFIG_MTD_NAND_TXX9NDFMC=yCONFIG_MTD_NAND_JZ4780=yCONFIG_MTD_NAND_INGENIC_ECC=yCONFIG_MTD_NAND_JZ4740_ECC=yCONFIG_MTD_NAND_JZ4725B_BCH=yCONFIG_MTD_NAND_JZ4780_BCH=yCONFIG_MTD_NAND_FSMC=yCONFIG_MTD_NAND_SUNXI=yCONFIG_MTD_NAND_HISI504=yCONFIG_MTD_NAND_QCOM=yCONFIG_MTD_NAND_MTK=yCONFIG_MTD_NAND_MXIC=yCONFIG_MTD_NAND_TEGRA=yCONFIG_MTD_NAND_STM32_FMC2=yCONFIG_MTD_NAND_MESON=yCONFIG_MTD_NAND_GPIO=yCONFIG_MTD_NAND_PLATFORM=yCONFIG_MTD_NAND_CADENCE=yCONFIG_MTD_NAND_ARASAN=yCONFIG_MTD_NAND_INTEL_LGM=yCONFIG_MTD_NAND_RENESAS=y
#
# Misc
#CONFIG_MTD_SM_COMMON=yCONFIG_MTD_NAND_NANDSIM=yCONFIG_MTD_NAND_RICOH=yCONFIG_MTD_NAND_DISKONCHIP=yCONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED=yCONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0CONFIG_MTD_NAND_DISKONCHIP_PROBE_HIGH=yCONFIG_MTD_NAND_DISKONCHIP_BBTWRITE=yCONFIG_MTD_SPI_NAND=y
#
# ECC engine support
#CONFIG_MTD_NAND_ECC=yCONFIG_MTD_NAND_ECC_SW_HAMMING=yCONFIG_MTD_NAND_ECC_SW_HAMMING_SMC=yCONFIG_MTD_NAND_ECC_SW_BCH=yCONFIG_MTD_NAND_ECC_MXIC=yCONFIG_MTD_NAND_ECC_MEDIATEK=y
# end of ECC engine support # end of NAND
#
# LPDDR & LPDDR2 PCM memory drivers
#CONFIG_MTD_LPDDR=yCONFIG_MTD_QINFO_PROBE=y
# end of LPDDR & LPDDR2 PCM memory drivers
CONFIG_MTD_SPI_NOR=yCONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
# CONFIG_MTD_SPI_NOR_SWP_DISABLE is not setCONFIG_MTD_SPI_NOR_SWP_DISABLE_ON_VOLATILE=y
# CONFIG_MTD_SPI_NOR_SWP_KEEP is not setCONFIG_SPI_HISI_SFC=yCONFIG_SPI_NXP_SPIFI=yCONFIG_MTD_UBI=yCONFIG_MTD_UBI_WL_THRESHOLD=4096CONFIG_MTD_UBI_BEB_LIMIT=20CONFIG_MTD_UBI_FASTMAP=yCONFIG_MTD_UBI_GLUEBI=yCONFIG_MTD_UBI_BLOCK=yCONFIG_MTD_HYPERBUS=yCONFIG_HBMC_AM654=yCONFIG_DTC=yCONFIG_OF=yCONFIG_OF_UNITTEST=yCONFIG_OF_ALL_DTBS=yCONFIG_OF_FLATTREE=yCONFIG_OF_EARLY_FLATTREE=yCONFIG_OF_KOBJ=yCONFIG_OF_DYNAMIC=yCONFIG_OF_ADDRESS=yCONFIG_OF_IRQ=yCONFIG_OF_RESERVED_MEM=yCONFIG_OF_RESOLVE=yCONFIG_OF_OVERLAY=yCONFIG_OF_DMA_DEFAULT_COHERENT=yCONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=yCONFIG_PARPORT=yCONFIG_PARPORT_PC=yCONFIG_PARPORT_SERIAL=yCONFIG_PARPORT_PC_FIFO=yCONFIG_PARPORT_PC_SUPERIO=yCONFIG_PARPORT_PC_PCMCIA=yCONFIG_PARPORT_AX88796=yCONFIG_PARPORT_1284=yCONFIG_PARPORT_NOT_PC=yCONFIG_BLK_DEV=yCONFIG_BLK_DEV_NULL_BLK=yCONFIG_BLK_DEV_NULL_BLK_FAULT_INJECTION=yCONFIG_BLK_DEV_FD=yCONFIG_BLK_DEV_FD_RAWCMD=y
# CONFIG_MAC_FLOPPY is not setCONFIG_CDROM=yCONFIG_PARIDE=y
#
# Parallel IDE high-level drivers
#CONFIG_PARIDE_PD=yCONFIG_PARIDE_PCD=yCONFIG_PARIDE_PF=yCONFIG_PARIDE_PT=yCONFIG_PARIDE_PG=y
#
# Parallel IDE protocol modules
#CONFIG_PARIDE_ATEN=yCONFIG_PARIDE_BPCK=y
# CONFIG_PARIDE_BPCK6 is not setCONFIG_PARIDE_COMM=yCONFIG_PARIDE_DSTR=yCONFIG_PARIDE_FIT2=yCONFIG_PARIDE_FIT3=yCONFIG_PARIDE_EPAT=yCONFIG_PARIDE_EPATC8=yCONFIG_PARIDE_EPIA=yCONFIG_PARIDE_FRIQ=yCONFIG_PARIDE_FRPW=yCONFIG_PARIDE_KBIC=yCONFIG_PARIDE_KTTI=yCONFIG_PARIDE_ON20=yCONFIG_PARIDE_ON26=yCONFIG_BLK_DEV_PCIESSD_MTIP32XX=yCONFIG_ZRAM=yCONFIG_ZRAM_DEF_COMP_LZORLE=y
# CONFIG_ZRAM_DEF_COMP_ZSTD is not set
# CONFIG_ZRAM_DEF_COMP_LZ4 is not set
# CONFIG_ZRAM_DEF_COMP_LZO is not set
# CONFIG_ZRAM_DEF_COMP_LZ4HC is not set
# CONFIG_ZRAM_DEF_COMP_842 is not setCONFIG_ZRAM_DEF_COMP="lzo-rle"CONFIG_ZRAM_WRITEBACK=yCONFIG_ZRAM_MEMORY_TRACKING=yCONFIG_BLK_DEV_LOOP=yCONFIG_BLK_DEV_LOOP_MIN_COUNT=8CONFIG_BLK_DEV_DRBD=yCONFIG_DRBD_FAULT_INJECTION=yCONFIG_BLK_DEV_NBD=yCONFIG_BLK_DEV_RAM=yCONFIG_BLK_DEV_RAM_COUNT=16CONFIG_BLK_DEV_RAM_SIZE=4096CONFIG_CDROM_PKTCDVD=yCONFIG_CDROM_PKTCDVD_BUFFERS=8CONFIG_CDROM_PKTCDVD_WCACHE=yCONFIG_ATA_OVER_ETH=yCONFIG_VIRTIO_BLK=yCONFIG_BLK_DEV_RBD=yCONFIG_BLK_DEV_UBLK=yCONFIG_BLK_DEV_RNBD=yCONFIG_BLK_DEV_RNBD_CLIENT=yCONFIG_BLK_DEV_RNBD_SERVER=y
#
# NVME Support
#CONFIG_NVME_COMMON=yCONFIG_NVME_CORE=yCONFIG_BLK_DEV_NVME=yCONFIG_NVME_MULTIPATH=yCONFIG_NVME_VERBOSE_ERRORS=yCONFIG_NVME_HWMON=yCONFIG_NVME_FABRICS=yCONFIG_NVME_RDMA=yCONFIG_NVME_FC=yCONFIG_NVME_TCP=yCONFIG_NVME_AUTH=yCONFIG_NVME_APPLE=yCONFIG_NVME_TARGET=yCONFIG_NVME_TARGET_PASSTHRU=yCONFIG_NVME_TARGET_LOOP=yCONFIG_NVME_TARGET_RDMA=yCONFIG_NVME_TARGET_FC=yCONFIG_NVME_TARGET_FCLOOP=yCONFIG_NVME_TARGET_TCP=yCONFIG_NVME_TARGET_AUTH=y
# end of NVME Support
#
# Misc devices
#CONFIG_SENSORS_LIS3LV02D=yCONFIG_AD525X_DPOT=yCONFIG_AD525X_DPOT_I2C=yCONFIG_AD525X_DPOT_SPI=yCONFIG_DUMMY_IRQ=yCONFIG_PHANTOM=yCONFIG_TIFM_CORE=yCONFIG_TIFM_7XX1=yCONFIG_ICS932S401=yCONFIG_ATMEL_SSC=yCONFIG_ENCLOSURE_SERVICES=yCONFIG_GEHC_ACHC=yCONFIG_HI6421V600_IRQ=yCONFIG_HP_ILO=yCONFIG_QCOM_COINCELL=yCONFIG_QCOM_FASTRPC=yCONFIG_APDS9802ALS=yCONFIG_ISL29003=yCONFIG_ISL29020=yCONFIG_SENSORS_TSL2550=yCONFIG_SENSORS_BH1770=yCONFIG_SENSORS_APDS990X=yCONFIG_HMC6352=yCONFIG_DS1682=yCONFIG_PCH_PHUB=yCONFIG_LATTICE_ECP3_CONFIG=yCONFIG_SRAM=yCONFIG_DW_XDATA_PCIE=yCONFIG_PCI_ENDPOINT_TEST=yCONFIG_XILINX_SDFEC=yCONFIG_MISC_RTSX=yCONFIG_HISI_HIKEY_USB=yCONFIG_OPEN_DICE=yCONFIG_VCPU_STALL_DETECTOR=yCONFIG_C2PORT=y
#
# EEPROM support
#CONFIG_EEPROM_AT24=yCONFIG_EEPROM_AT25=yCONFIG_EEPROM_LEGACY=yCONFIG_EEPROM_MAX6875=yCONFIG_EEPROM_93CX6=yCONFIG_EEPROM_93XX46=yCONFIG_EEPROM_IDT_89HPESX=yCONFIG_EEPROM_EE1004=y
# end of EEPROM support
CONFIG_CB710_CORE=yCONFIG_CB710_DEBUG=yCONFIG_CB710_DEBUG_ASSUMPTIONS=y
#
# Texas Instruments shared transport line discipline #CONFIG_TI_ST=y
# end of Texas Instruments shared transport line discipline
CONFIG_SENSORS_LIS3_SPI=yCONFIG_SENSORS_LIS3_I2C=yCONFIG_ALTERA_STAPL=yCONFIG_ECHO=yCONFIG_BCM_VK=yCONFIG_BCM_VK_TTY=yCONFIG_MISC_ALCOR_PCI=yCONFIG_MISC_RTSX_PCI=yCONFIG_MISC_RTSX_USB=yCONFIG_HABANA_AI=yCONFIG_UACCE=yCONFIG_PVPANIC=yCONFIG_PVPANIC_MMIO=yCONFIG_PVPANIC_PCI=yCONFIG_GP_PCI1XXXX=y
# end of Misc devices
#
# SCSI device support
#CONFIG_SCSI_MOD=yCONFIG_RAID_ATTRS=yCONFIG_SCSI_COMMON=yCONFIG_SCSI=yCONFIG_SCSI_DMA=yCONFIG_SCSI_NETLINK=yCONFIG_SCSI_PROC_FS=y
#
# SCSI support type (disk, tape, CD-ROM)
#CONFIG_BLK_DEV_SD=yCONFIG_CHR_DEV_ST=yCONFIG_BLK_DEV_SR=yCONFIG_CHR_DEV_SG=yCONFIG_BLK_DEV_BSG=yCONFIG_CHR_DEV_SCH=yCONFIG_SCSI_ENCLOSURE=yCONFIG_SCSI_CONSTANTS=yCONFIG_SCSI_LOGGING=yCONFIG_SCSI_SCAN_ASYNC=y
#
# SCSI Transports
#CONFIG_SCSI_SPI_ATTRS=yCONFIG_SCSI_FC_ATTRS=yCONFIG_SCSI_ISCSI_ATTRS=yCONFIG_SCSI_SAS_ATTRS=yCONFIG_SCSI_SAS_LIBSAS=yCONFIG_SCSI_SAS_ATA=yCONFIG_SCSI_SAS_HOST_SMP=yCONFIG_SCSI_SRP_ATTRS=y
# end of SCSI Transports
CONFIG_SCSI_LOWLEVEL=yCONFIG_ISCSI_TCP=yCONFIG_ISCSI_BOOT_SYSFS=yCONFIG_SCSI_CXGB3_ISCSI=yCONFIG_SCSI_CXGB4_ISCSI=yCONFIG_SCSI_BNX2_ISCSI=yCONFIG_SCSI_BNX2X_FCOE=yCONFIG_BE2ISCSI=yCONFIG_BLK_DEV_3W_XXXX_RAID=yCONFIG_SCSI_HPSA=yCONFIG_SCSI_3W_9XXX=yCONFIG_SCSI_3W_SAS=yCONFIG_SCSI_ACARD=yCONFIG_SCSI_AACRAID=yCONFIG_SCSI_AIC7XXX=yCONFIG_AIC7XXX_CMDS_PER_DEVICE=32CONFIG_AIC7XXX_RESET_DELAY_MS=5000CONFIG_AIC7XXX_DEBUG_ENABLE=yCONFIG_AIC7XXX_DEBUG_MASK=0CONFIG_AIC7XXX_REG_PRETTY_PRINT=yCONFIG_SCSI_AIC79XX=yCONFIG_AIC79XX_CMDS_PER_DEVICE=32CONFIG_AIC79XX_RESET_DELAY_MS=5000CONFIG_AIC79XX_DEBUG_ENABLE=yCONFIG_AIC79XX_DEBUG_MASK=0CONFIG_AIC79XX_REG_PRETTY_PRINT=yCONFIG_SCSI_AIC94XX=yCONFIG_AIC94XX_DEBUG=yCONFIG_SCSI_HISI_SAS=yCONFIG_SCSI_HISI_SAS_DEBUGFS_DEFAULT_ENABLE=yCONFIG_SCSI_MVSAS=yCONFIG_SCSI_MVSAS_DEBUG=yCONFIG_SCSI_MVSAS_TASKLET=yCONFIG_SCSI_MVUMI=yCONFIG_SCSI_ADVANSYS=yCONFIG_SCSI_ARCMSR=yCONFIG_SCSI_ESAS2R=yCONFIG_MEGARAID_NEWGEN=yCONFIG_MEGARAID_MM=yCONFIG_MEGARAID_MAILBOX=yCONFIG_MEGARAID_LEGACY=yCONFIG_MEGARAID_SAS=yCONFIG_SCSI_MPT3SAS=yCONFIG_SCSI_MPT2SAS_MAX_SGE=128CONFIG_SCSI_MPT3SAS_MAX_SGE=128CONFIG_SCSI_MPT2SAS=yCONFIG_SCSI_MPI3MR=yCONFIG_SCSI_SMARTPQI=yCONFIG_SCSI_HPTIOP=yCONFIG_SCSI_BUSLOGIC=yCONFIG_SCSI_FLASHPOINT=yCONFIG_SCSI_MYRB=yCONFIG_SCSI_MYRS=yCONFIG_LIBFC=yCONFIG_LIBFCOE=yCONFIG_FCOE=yCONFIG_SCSI_SNIC=yCONFIG_SCSI_SNIC_DEBUG_FS=yCONFIG_SCSI_DMX3191D=yCONFIG_SCSI_FDOMAIN=yCONFIG_SCSI_FDOMAIN_PCI=yCONFIG_SCSI_IPS=yCONFIG_SCSI_INITIO=yCONFIG_SCSI_INIA100=yCONFIG_SCSI_PPA=yCONFIG_SCSI_IMM=yCONFIG_SCSI_IZIP_EPP16=yCONFIG_SCSI_IZIP_SLOW_CTR=yCONFIG_SCSI_STEX=yCONFIG_SCSI_SYM53C8XX_2=yCONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64CONFIG_SCSI_SYM53C8XX_MMIO=yCONFIG_SCSI_IPR=yCONFIG_SCSI_IPR_TRACE=yCONFIG_SCSI_IPR_DUMP=yCONFIG_SCSI_QLOGIC_1280=yCONFIG_SCSI_QLA_FC=yCONFIG_TCM_QLA2XXX=yCONFIG_TCM_QLA2XXX_DEBUG=yCONFIG_SCSI_QLA_ISCSI=yCONFIG_QEDI=yCONFIG_QEDF=yCONFIG_SCSI_LPFC=yCONFIG_SCSI_LPFC_DEBUG_FS=yCONFIG_SCSI_EFCT=y
CONFIG_SCSI_DC395x=yCONFIG_SCSI_AM53C974=y
# CONFIG_SCSI_NSP32 is not setCONFIG_SCSI_WD719X=yCONFIG_SCSI_DEBUG=y
# CONFIG_SCSI_MESH is not set
# CONFIG_SCSI_MAC53C94 is not setCONFIG_SCSI_PMCRAID=yCONFIG_SCSI_PM8001=yCONFIG_SCSI_BFA_FC=yCONFIG_SCSI_VIRTIO=yCONFIG_SCSI_CHELSIO_FCOE=yCONFIG_SCSI_LOWLEVEL_PCMCIA=yCONFIG_PCMCIA_AHA152X=mCONFIG_PCMCIA_FDOMAIN=mCONFIG_PCMCIA_NINJA_SCSI=mCONFIG_PCMCIA_QLOGIC=mCONFIG_PCMCIA_SYM53C500=mCONFIG_SCSI_DH=yCONFIG_SCSI_DH_RDAC=yCONFIG_SCSI_DH_HP_SW=yCONFIG_SCSI_DH_EMC=yCONFIG_SCSI_DH_ALUA=y
# end of SCSI device support
CONFIG_ATA=yCONFIG_SATA_HOST=yCONFIG_PATA_TIMINGS=yCONFIG_ATA_VERBOSE_ERROR=yCONFIG_ATA_FORCE=yCONFIG_SATA_PMP=y
#
# Controllers with non-SFF native interface
#CONFIG_SATA_AHCI=yCONFIG_SATA_MOBILE_LPM_POLICY=0CONFIG_SATA_AHCI_PLATFORM=yCONFIG_AHCI_BRCM=yCONFIG_AHCI_DA850=yCONFIG_AHCI_DM816=yCONFIG_AHCI_DWC=yCONFIG_AHCI_ST=yCONFIG_AHCI_IMX=yCONFIG_AHCI_CEVA=yCONFIG_AHCI_MTK=yCONFIG_AHCI_MVEBU=yCONFIG_AHCI_SUNXI=yCONFIG_AHCI_TEGRA=yCONFIG_AHCI_XGENE=yCONFIG_AHCI_QORIQ=yCONFIG_SATA_FSL=yCONFIG_SATA_GEMINI=yCONFIG_SATA_AHCI_SEATTLE=yCONFIG_SATA_INIC162X=yCONFIG_SATA_ACARD_AHCI=yCONFIG_SATA_SIL24=yCONFIG_ATA_SFF=y
#
# SFF controllers with custom DMA interface
#CONFIG_PDC_ADMA=yCONFIG_SATA_QSTOR=yCONFIG_SATA_SX4=yCONFIG_ATA_BMDMA=y
#
# SATA SFF controllers with BMDMA
#CONFIG_ATA_PIIX=yCONFIG_SATA_DWC=yCONFIG_SATA_DWC_OLD_DMA=yCONFIG_SATA_HIGHBANK=yCONFIG_SATA_MV=yCONFIG_SATA_NV=yCONFIG_SATA_PROMISE=yCONFIG_SATA_RCAR=yCONFIG_SATA_SIL=yCONFIG_SATA_SIS=yCONFIG_SATA_SVW=yCONFIG_SATA_ULI=yCONFIG_SATA_VIA=yCONFIG_SATA_VITESSE=y
#
# PATA SFF controllers with BMDMA
#CONFIG_PATA_ALI=yCONFIG_PATA_AMD=yCONFIG_PATA_ARASAN_CF=yCONFIG_PATA_ARTOP=yCONFIG_PATA_ATIIXP=yCONFIG_PATA_ATP867X=yCONFIG_PATA_BK3710=yCONFIG_PATA_CMD64X=yCONFIG_PATA_CS5520=yCONFIG_PATA_CS5530=yCONFIG_PATA_CS5536=yCONFIG_PATA_CYPRESS=yCONFIG_PATA_EFAR=yCONFIG_PATA_FTIDE010=yCONFIG_PATA_HPT366=yCONFIG_PATA_HPT37X=yCONFIG_PATA_HPT3X2N=yCONFIG_PATA_HPT3X3=yCONFIG_PATA_HPT3X3_DMA=yCONFIG_PATA_IMX=yCONFIG_PATA_IT8213=yCONFIG_PATA_IT821X=yCONFIG_PATA_JMICRON=yCONFIG_PATA_MACIO=yCONFIG_PATA_MARVELL=yCONFIG_PATA_NETCELL=yCONFIG_PATA_NINJA32=yCONFIG_PATA_NS87415=yCONFIG_PATA_OLDPIIX=yCONFIG_PATA_OPTIDMA=yCONFIG_PATA_PDC2027X=yCONFIG_PATA_PDC_OLD=yCONFIG_PATA_RADISYS=yCONFIG_PATA_RDC=yCONFIG_PATA_SC1200=yCONFIG_PATA_SCH=yCONFIG_PATA_SERVERWORKS=yCONFIG_PATA_SIL680=yCONFIG_PATA_SIS=yCONFIG_PATA_TOSHIBA=yCONFIG_PATA_TRIFLEX=yCONFIG_PATA_VIA=yCONFIG_PATA_PXA=yCONFIG_PATA_WINBOND=y
#
# PIO-only SFF controllers
#CONFIG_PATA_CMD640_PCI=yCONFIG_PATA_IXP4XX_CF=yCONFIG_PATA_MPIIX=yCONFIG_PATA_NS87410=yCONFIG_PATA_OPTI=yCONFIG_PATA_PCMCIA=yCONFIG_PATA_PLATFORM=yCONFIG_PATA_OF_PLATFORM=yCONFIG_PATA_RZ1000=yCONFIG_PATA_SAMSUNG_CF=y
#
# Generic fallback / legacy drivers
#CONFIG_ATA_GENERIC=yCONFIG_PATA_LEGACY=yCONFIG_MD=yCONFIG_BLK_DEV_MD=yCONFIG_MD_AUTODETECT=yCONFIG_MD_LINEAR=yCONFIG_MD_RAID0=yCONFIG_MD_RAID1=yCONFIG_MD_RAID10=yCONFIG_MD_RAID456=yCONFIG_MD_MULTIPATH=yCONFIG_MD_FAULTY=yCONFIG_MD_CLUSTER=yCONFIG_BCACHE=yCONFIG_BCACHE_DEBUG=y CONFIG_BCACHE_CLOSURES_DEBUG=y CONFIG_BCACHE_ASYNC_REGISTRATION=y CONFIG_BLK_DEV_DM_BUILTIN=yCONFIG_BLK_DEV_DM=yCONFIG_DM_DEBUG=yCONFIG_DM_BUFIO=y CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING=y CONFIG_DM_DEBUG_BLOCK_STACK_TRACING=y CONFIG_DM_BIO_PRISON=y CONFIG_DM_PERSISTENT_DATA=y CONFIG_DM_UNSTRIPED=yCONFIG_DM_CRYPT=yCONFIG_DM_SNAPSHOT=y CONFIG_DM_THIN_PROVISIONING=yCONFIG_DM_CACHE=yCONFIG_DM_CACHE_SMQ=yCONFIG_DM_WRITECACHE=yCONFIG_DM_EBS=yCONFIG_DM_ERA=yCONFIG_DM_CLONE=yCONFIG_DM_MIRROR=yCONFIG_DM_LOG_USERSPACE=yCONFIG_DM_RAID=yCONFIG_DM_ZERO=yCONFIG_DM_MULTIPATH=yCONFIG_DM_MULTIPATH_QL=y CONFIG_DM_MULTIPATH_ST=y CONFIG_DM_MULTIPATH_HST=y CONFIG_DM_MULTIPATH_IOA=yCONFIG_DM_DELAY=yCONFIG_DM_DUST=yCONFIG_DM_INIT=yCONFIG_DM_UEVENT=yCONFIG_DM_FLAKEY=yCONFIG_DM_VERITY=y CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG=y CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y CONFIG_DM_VERITY_FEC=yCONFIG_DM_SWITCH=yCONFIG_DM_LOG_WRITES=yCONFIG_DM_INTEGRITY=yCONFIG_DM_ZONED=yCONFIG_DM_AUDIT=yCONFIG_TARGET_CORE=yCONFIG_TCM_IBLOCK=yCONFIG_TCM_FILEIO=yCONFIG_TCM_PSCSI=yCONFIG_TCM_USER2=yCONFIG_LOOPBACK_TARGET=yCONFIG_TCM_FC=yCONFIG_ISCSI_TARGET=y CONFIG_ISCSI_TARGET_CXGB4=yCONFIG_SBP_TARGET=yCONFIG_FUSION=yCONFIG_FUSION_SPI=yCONFIG_FUSION_FC=yCONFIG_FUSION_SAS=yCONFIG_FUSION_MAX_SGE=128CONFIG_FUSION_CTL=yCONFIG_FUSION_LAN=yCONFIG_FUSION_LOGGING=y
#
# IEEE 1394 (FireWire) support
#CONFIG_FIREWIRE=yCONFIG_FIREWIRE_OHCI=yCONFIG_FIREWIRE_SBP2=yCONFIG_FIREWIRE_NET=yCONFIG_FIREWIRE_NOSY=y
# end of IEEE 1394 (FireWire) support
CONFIG_MACINTOSH_DRIVERS=y
# CONFIG_ADB is not set
# CONFIG_ADB_CUDA is not setCONFIG_ADB_PMU=yCONFIG_ADB_PMU_EVENT=yCONFIG_ADB_PMU_LED=yCONFIG_ADB_PMU_LED_DISK=y
# CONFIG_PMAC_APM_EMU is not set
# CONFIG_PMAC_MEDIABAY is not set
# CONFIG_PMAC_BACKLIGHT is not setCONFIG_MAC_EMUMOUSEBTN=y
# CONFIG_THERM_WINDTUNNEL is not set
# CONFIG_THERM_ADT746X is not setCONFIG_WINDFARM=yCONFIG_PMAC_RACKMETER=y
# CONFIG_SENSORS_AMS is not setCONFIG_NETDEVICES=yCONFIG_MII=yCONFIG_NET_CORE=yCONFIG_BONDING=yCONFIG_DUMMY=yCONFIG_WIREGUARD=yCONFIG_WIREGUARD_DEBUG=yCONFIG_EQUALIZER=yCONFIG_NET_FC=yCONFIG_IFB=yCONFIG_NET_TEAM=yCONFIG_NET_TEAM_MODE_BROADCAST=yCONFIG_NET_TEAM_MODE_ROUNDROBIN=yCONFIG_NET_TEAM_MODE_RANDOM=yCONFIG_NET_TEAM_MODE_ACTIVEBACKUP=yCONFIG_NET_TEAM_MODE_LOADBALANCE=yCONFIG_MACVLAN=yCONFIG_MACVTAP=yCONFIG_IPVLAN_L3S=yCONFIG_IPVLAN=yCONFIG_IPVTAP=yCONFIG_VXLAN=yCONFIG_GENEVE=yCONFIG_BAREUDP=yCONFIG_GTP=yCONFIG_AMT=yCONFIG_MACSEC=yCONFIG_NETCONSOLE=yCONFIG_NETCONSOLE_DYNAMIC=yCONFIG_NETPOLL=yCONFIG_NET_POLL_CONTROLLER=yCONFIG_NTB_NETDEV=yCONFIG_RIONET=yCONFIG_RIONET_TX_SIZE=128CONFIG_RIONET_RX_SIZE=128CONFIG_TUN=yCONFIG_TAP=yCONFIG_TUN_VNET_CROSS_LE=yCONFIG_VETH=yCONFIG_VIRTIO_NET=yCONFIG_NLMON=yCONFIG_NET_VRF=yCONFIG_VSOCKMON=yCONFIG_MHI_NET=yCONFIG_SUNGEM_PHY=yCONFIG_ARCNET=yCONFIG_ARCNET_1201=yCONFIG_ARCNET_1051=yCONFIG_ARCNET_RAW=yCONFIG_ARCNET_CAP=y
CONFIG_ARCNET_COM90xx=y
CONFIG_ARCNET_COM90xxIO=yCONFIG_ARCNET_RIM_I=yCONFIG_ARCNET_COM20020=yCONFIG_ARCNET_COM20020_PCI=yCONFIG_ARCNET_COM20020_CS=yCONFIG_ATM_DRIVERS=yCONFIG_ATM_DUMMY=yCONFIG_ATM_TCP=yCONFIG_ATM_LANAI=yCONFIG_ATM_ENI=yCONFIG_ATM_ENI_DEBUG=yCONFIG_ATM_ENI_TUNE_BURST=yCONFIG_ATM_ENI_BURST_TX_16W=yCONFIG_ATM_ENI_BURST_TX_8W=yCONFIG_ATM_ENI_BURST_TX_4W=yCONFIG_ATM_ENI_BURST_TX_2W=yCONFIG_ATM_ENI_BURST_RX_16W=yCONFIG_ATM_ENI_BURST_RX_8W=yCONFIG_ATM_ENI_BURST_RX_4W=yCONFIG_ATM_ENI_BURST_RX_2W=yCONFIG_ATM_NICSTAR=yCONFIG_ATM_NICSTAR_USE_SUNI=yCONFIG_ATM_NICSTAR_USE_IDT77105=yCONFIG_ATM_IDT77252=yCONFIG_ATM_IDT77252_DEBUG=yCONFIG_ATM_IDT77252_RCV_ALL=yCONFIG_ATM_IDT77252_USE_SUNI=yCONFIG_ATM_IA=yCONFIG_ATM_IA_DEBUG=yCONFIG_ATM_FORE200E=yCONFIG_ATM_FORE200E_USE_TASKLET=yCONFIG_ATM_FORE200E_TX_RETRY=16CONFIG_ATM_FORE200E_DEBUG=0CONFIG_ATM_HE=yCONFIG_ATM_HE_USE_SUNI=yCONFIG_ATM_SOLOS=yCONFIG_CAIF_DRIVERS=yCONFIG_CAIF_TTY=yCONFIG_CAIF_VIRTIO=y
#
# Distributed Switch Architecture drivers
#CONFIG_B53=yCONFIG_B53_SPI_DRIVER=yCONFIG_B53_MDIO_DRIVER=yCONFIG_B53_MMAP_DRIVER=yCONFIG_B53_SRAB_DRIVER=yCONFIG_B53_SERDES=yCONFIG_NET_DSA_BCM_SF2=yCONFIG_NET_DSA_LOOP=yCONFIG_NET_DSA_HIRSCHMANN_HELLCREEK=yCONFIG_NET_DSA_LANTIQ_GSWIP=yCONFIG_NET_DSA_MT7530=yCONFIG_NET_DSA_MV88E6060=yCONFIG_NET_DSA_MICROCHIP_KSZ_COMMON=yCONFIG_NET_DSA_MICROCHIP_KSZ9477_I2C=yCONFIG_NET_DSA_MICROCHIP_KSZ_SPI=yCONFIG_NET_DSA_MICROCHIP_KSZ8863_SMI=yCONFIG_NET_DSA_MV88E6XXX=yCONFIG_NET_DSA_MV88E6XXX_PTP=yCONFIG_NET_DSA_MSCC_FELIX=yCONFIG_NET_DSA_MSCC_SEVILLE=yCONFIG_NET_DSA_AR9331=yCONFIG_NET_DSA_QCA8K=yCONFIG_NET_DSA_SJA1105=yCONFIG_NET_DSA_SJA1105_PTP=yCONFIG_NET_DSA_SJA1105_TAS=yCONFIG_NET_DSA_SJA1105_VL=yCONFIG_NET_DSA_XRS700X=yCONFIG_NET_DSA_XRS700X_I2C=yCONFIG_NET_DSA_XRS700X_MDIO=yCONFIG_NET_DSA_REALTEK=yCONFIG_NET_DSA_REALTEK_MDIO=yCONFIG_NET_DSA_REALTEK_SMI=yCONFIG_NET_DSA_REALTEK_RTL8365MB=yCONFIG_NET_DSA_REALTEK_RTL8366RB=yCONFIG_NET_DSA_SMSC_LAN9303=yCONFIG_NET_DSA_SMSC_LAN9303_I2C=yCONFIG_NET_DSA_SMSC_LAN9303_MDIO=yCONFIG_NET_DSA_VITESSE_VSC73XX=yCONFIG_NET_DSA_VITESSE_VSC73XX_SPI=yCONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM=y
# end of Distributed Switch Architecture drivers
CONFIG_ETHERNET=yCONFIG_MDIO=yCONFIG_NET_VENDOR_3COM=yCONFIG_PCMCIA_3C574=yCONFIG_PCMCIA_3C589=yCONFIG_VORTEX=yCONFIG_TYPHOON=yCONFIG_NET_VENDOR_ACTIONS=yCONFIG_OWL_EMAC=yCONFIG_NET_VENDOR_ADAPTEC=yCONFIG_ADAPTEC_STARFIRE=yCONFIG_NET_VENDOR_AGERE=yCONFIG_ET131X=yCONFIG_NET_VENDOR_ALACRITECH=yCONFIG_SLICOSS=yCONFIG_NET_VENDOR_ALTEON=yCONFIG_ACENIC=yCONFIG_ACENIC_OMIT_TIGON_I=yCONFIG_ALTERA_TSE=yCONFIG_NET_VENDOR_AMAZON=yCONFIG_NET_VENDOR_AMD=yCONFIG_AMD8111_ETH=yCONFIG_PCNET32=yCONFIG_PCMCIA_NMCLAN=yCONFIG_AMD_XGBE=yCONFIG_AMD_XGBE_DCB=yCONFIG_NET_XGENE=yCONFIG_NET_XGENE_V2=yCONFIG_NET_VENDOR_APPLE=y
# CONFIG_MACE is not set
# CONFIG_BMAC is not setCONFIG_NET_VENDOR_AQUANTIA=yCONFIG_AQTION=yCONFIG_NET_VENDOR_ARC=yCONFIG_ARC_EMAC_CORE=yCONFIG_ARC_EMAC=yCONFIG_EMAC_ROCKCHIP=yCONFIG_NET_VENDOR_ASIX=yCONFIG_SPI_AX88796C=yCONFIG_SPI_AX88796C_COMPRESSION=yCONFIG_NET_VENDOR_ATHEROS=yCONFIG_ATL2=yCONFIG_ATL1=yCONFIG_ATL1E=yCONFIG_ATL1C=yCONFIG_ALX=yCONFIG_CX_ECAT=yCONFIG_NET_VENDOR_BROADCOM=yCONFIG_B44=yCONFIG_B44_PCI_AUTOSELECT=yCONFIG_B44_PCICORE_AUTOSELECT=yCONFIG_B44_PCI=yCONFIG_BCM4908_ENET=yCONFIG_BCMGENET=yCONFIG_BNX2=yCONFIG_CNIC=yCONFIG_TIGON3=yCONFIG_TIGON3_HWMON=yCONFIG_BNX2X=yCONFIG_BNX2X_SRIOV=yCONFIG_BGMAC=yCONFIG_BGMAC_BCMA=yCONFIG_BGMAC_PLATFORM=yCONFIG_SYSTEMPORT=yCONFIG_BNXT=yCONFIG_BNXT_SRIOV=yCONFIG_BNXT_FLOWER_OFFLOAD=yCONFIG_BNXT_DCB=yCONFIG_BNXT_HWMON=yCONFIG_NET_VENDOR_CADENCE=yCONFIG_MACB=yCONFIG_MACB_USE_HWSTAMP=yCONFIG_MACB_PCI=yCONFIG_NET_CALXEDA_XGMAC=yCONFIG_NET_VENDOR_CAVIUM=yCONFIG_NET_VENDOR_CHELSIO=yCONFIG_CHELSIO_T1=yCONFIG_CHELSIO_T1_1G=yCONFIG_CHELSIO_T3=yCONFIG_CHELSIO_T4=yCONFIG_CHELSIO_T4_DCB=yCONFIG_CHELSIO_T4_FCOE=yCONFIG_CHELSIO_T4VF=yCONFIG_CHELSIO_LIB=yCONFIG_CHELSIO_INLINE_CRYPTO=yCONFIG_CRYPTO_DEV_CHELSIO_TLS=yCONFIG_CHELSIO_IPSEC_INLINE=yCONFIG_CHELSIO_TLS_DEVICE=yCONFIG_NET_VENDOR_CIRRUS=yCONFIG_EP93XX_ETH=yCONFIG_NET_VENDOR_CISCO=yCONFIG_ENIC=yCONFIG_NET_VENDOR_CORTINA=yCONFIG_GEMINI_ETHERNET=yCONFIG_NET_VENDOR_DAVICOM=yCONFIG_DM9000=yCONFIG_DM9000_FORCE_SIMPLE_PHY_POLL=yCONFIG_DM9051=yCONFIG_DNET=yCONFIG_NET_VENDOR_DEC=yCONFIG_NET_TULIP=yCONFIG_DE2104X=yCONFIG_DE2104X_DSL=0CONFIG_TULIP=yCONFIG_TULIP_MWI=yCONFIG_TULIP_MMIO=yCONFIG_TULIP_NAPI=yCONFIG_TULIP_NAPI_HW_MITIGATION=yCONFIG_WINBOND_840=yCONFIG_DM9102=yCONFIG_ULI526X=yCONFIG_PCMCIA_XIRCOM=yCONFIG_NET_VENDOR_DLINK=yCONFIG_DL2K=yCONFIG_SUNDANCE=yCONFIG_SUNDANCE_MMIO=yCONFIG_NET_VENDOR_EMULEX=yCONFIG_BE2NET=yCONFIG_BE2NET_HWMON=yCONFIG_BE2NET_BE2=yCONFIG_BE2NET_BE3=yCONFIG_BE2NET_LANCER=yCONFIG_BE2NET_SKYHAWK=yCONFIG_NET_VENDOR_ENGLEDER=yCONFIG_TSNEP=yCONFIG_TSNEP_SELFTESTS=yCONFIG_NET_VENDOR_EZCHIP=yCONFIG_EZCHIP_NPS_MANAGEMENT_ENET=yCONFIG_NET_VENDOR_FARADAY=y
# CONFIG_FTMAC100 is not set
# CONFIG_FTGMAC100 is not setCONFIG_NET_VENDOR_FREESCALE=yCONFIG_FEC=yCONFIG_FSL_FMAN=yCONFIG_FSL_PQ_MDIO=yCONFIG_FSL_XGMAC_MDIO=y
# CONFIG_UCC_GETH is not setCONFIG_GIANFAR=yCONFIG_FSL_DPAA2_ETH=yCONFIG_FSL_DPAA2_ETH_DCB=yCONFIG_FSL_DPAA2_PTP_CLOCK=yCONFIG_FSL_DPAA2_SWITCH=yCONFIG_FSL_ENETC=yCONFIG_FSL_ENETC_VF=yCONFIG_FSL_ENETC_IERB=yCONFIG_FSL_ENETC_MDIO=yCONFIG_FSL_ENETC_PTP_CLOCK=yCONFIG_FSL_ENETC_QOS=yCONFIG_NET_VENDOR_FUJITSU=yCONFIG_PCMCIA_FMVJ18X=yCONFIG_NET_VENDOR_FUNGIBLE=yCONFIG_FUN_CORE=yCONFIG_FUN_ETH=yCONFIG_NET_VENDOR_GOOGLE=yCONFIG_NET_VENDOR_HISILICON=yCONFIG_HIX5HD2_GMAC=yCONFIG_HISI_FEMAC=yCONFIG_HIP04_ETH=yCONFIG_HI13X1_GMAC=yCONFIG_HNS_MDIO=yCONFIG_HNS=yCONFIG_HNS_DSAF=yCONFIG_HNS_ENET=yCONFIG_HNS3=yCONFIG_HNS3_HCLGE=yCONFIG_HNS3_DCB=yCONFIG_HNS3_HCLGEVF=yCONFIG_NET_VENDOR_HUAWEI=yCONFIG_NET_VENDOR_I825XX=yCONFIG_NET_VENDOR_INTEL=yCONFIG_E100=yCONFIG_E1000=yCONFIG_E1000E=yCONFIG_IGB=yCONFIG_IGB_HWMON=yCONFIG_IGBVF=yCONFIG_IXGB=yCONFIG_IXGBE=yCONFIG_IXGBE_HWMON=yCONFIG_IXGBE_DCB=yCONFIG_IXGBE_IPSEC=yCONFIG_IXGBEVF=yCONFIG_IXGBEVF_IPSEC=yCONFIG_I40E=yCONFIG_I40E_DCB=yCONFIG_IAVF=yCONFIG_I40EVF=yCONFIG_ICE=yCONFIG_ICE_SWITCHDEV=yCONFIG_FM10K=yCONFIG_IGC=yCONFIG_NET_VENDOR_WANGXUN=yCONFIG_LIBWX=yCONFIG_NGBE=yCONFIG_TXGBE=yCONFIG_JME=yCONFIG_KORINA=yCONFIG_NET_VENDOR_ADI=yCONFIG_ADIN1110=yCONFIG_NET_VENDOR_LITEX=yCONFIG_LITEX_LITEETH=yCONFIG_NET_VENDOR_MARVELL=yCONFIG_MV643XX_ETH=yCONFIG_MVMDIO=y
# CONFIG_MVNETA_BM_ENABLE is not setCONFIG_MVNETA=yCONFIG_MVPP2=yCONFIG_MVPP2_PTP=yCONFIG_PXA168_ETH=yCONFIG_SKGE=yCONFIG_SKGE_DEBUG=yCONFIG_SKGE_GENESIS=yCONFIG_SKY2=yCONFIG_SKY2_DEBUG=yCONFIG_PRESTERA=yCONFIG_PRESTERA_PCI=yCONFIG_NET_VENDOR_MEDIATEK=yCONFIG_NET_MEDIATEK_SOC_WED=yCONFIG_NET_MEDIATEK_SOC=yCONFIG_NET_MEDIATEK_STAR_EMAC=yCONFIG_NET_VENDOR_MELLANOX=yCONFIG_MLX4_EN=yCONFIG_MLX4_EN_DCB=yCONFIG_MLX4_CORE=yCONFIG_MLX4_DEBUG=yCONFIG_MLX4_CORE_GEN2=yCONFIG_MLX5_CORE=yCONFIG_MLX5_FPGA=yCONFIG_MLX5_CORE_EN=yCONFIG_MLX5_EN_ARFS=yCONFIG_MLX5_EN_RXNFC=yCONFIG_MLX5_MPFS=yCONFIG_MLX5_ESWITCH=yCONFIG_MLX5_BRIDGE=yCONFIG_MLX5_CLS_ACT=yCONFIG_MLX5_TC_CT=yCONFIG_MLX5_TC_SAMPLE=yCONFIG_MLX5_CORE_EN_DCB=yCONFIG_MLX5_CORE_IPOIB=yCONFIG_MLX5_EN_MACSEC=yCONFIG_MLX5_EN_IPSEC=yCONFIG_MLX5_EN_TLS=yCONFIG_MLX5_SW_STEERING=yCONFIG_MLX5_SF=yCONFIG_MLX5_SF_MANAGER=yCONFIG_MLXSW_CORE=yCONFIG_MLXSW_CORE_HWMON=yCONFIG_MLXSW_CORE_THERMAL=yCONFIG_MLXSW_PCI=yCONFIG_MLXSW_I2C=yCONFIG_MLXSW_SPECTRUM=yCONFIG_MLXSW_SPECTRUM_DCB=yCONFIG_MLXSW_MINIMAL=yCONFIG_MLXFW=yCONFIG_MLXBF_GIGE=yCONFIG_NET_VENDOR_MICREL=yCONFIG_KS8842=yCONFIG_KS8851=yCONFIG_KS8851_MLL=yCONFIG_KSZ884X_PCI=yCONFIG_NET_VENDOR_MICROCHIP=yCONFIG_ENC28J60=yCONFIG_ENC28J60_WRITEVERIFY=yCONFIG_ENCX24J600=yCONFIG_LAN743X=yCONFIG_LAN966X_SWITCH=yCONFIG_SPARX5_SWITCH=yCONFIG_SPARX5_DCB=yCONFIG_VCAP=yCONFIG_VCAP_KUNIT_TEST=yCONFIG_NET_VENDOR_MICROSEMI=yCONFIG_MSCC_OCELOT_SWITCH_LIB=yCONFIG_MSCC_OCELOT_SWITCH=yCONFIG_NET_VENDOR_MICROSOFT=yCONFIG_NET_VENDOR_MYRI=yCONFIG_MYRI10GE=yCONFIG_NET_VENDOR_NI=yCONFIG_NI_XGE_MANAGEMENT_ENET=yCONFIG_NET_VENDOR_NATSEMI=yCONFIG_NATSEMI=yCONFIG_NS83820=yCONFIG_NET_VENDOR_NETERION=yCONFIG_S2IO=yCONFIG_NET_VENDOR_NETRONOME=yCONFIG_NFP=yCONFIG_NFP_APP_FLOWER=yCONFIG_NFP_APP_ABM_NIC=yCONFIG_NFP_DEBUG=yCONFIG_NET_VENDOR_8390=yCONFIG_PCMCIA_AXNET=yCONFIG_AX88796=yCONFIG_AX88796_93CX6=yCONFIG_NE2K_PCI=yCONFIG_PCMCIA_PCNET=yCONFIG_NET_VENDOR_NVIDIA=yCONFIG_FORCEDETH=yCONFIG_LPC_ENET=yCONFIG_NET_VENDOR_OKI=yCONFIG_PCH_GBE=yCONFIG_ETHOC=yCONFIG_NET_VENDOR_PACKET_ENGINES=yCONFIG_HAMACHI=yCONFIG_YELLOWFIN=yCONFIG_NET_VENDOR_PENSANDO=yCONFIG_NET_VENDOR_QLOGIC=yCONFIG_QLA3XXX=yCONFIG_QLCNIC=yCONFIG_QLCNIC_SRIOV=yCONFIG_QLCNIC_DCB=yCONFIG_QLCNIC_HWMON=yCONFIG_NETXEN_NIC=yCONFIG_QED=yCONFIG_QED_LL2=yCONFIG_QED_SRIOV=yCONFIG_QEDE=yCONFIG_QED_ISCSI=yCONFIG_QED_FCOE=yCONFIG_QED_OOO=yCONFIG_NET_VENDOR_BROCADE=yCONFIG_BNA=yCONFIG_NET_VENDOR_QUALCOMM=yCONFIG_QCA7000=yCONFIG_QCA7000_SPI=yCONFIG_QCA7000_UART=yCONFIG_QCOM_EMAC=yCONFIG_RMNET=yCONFIG_NET_VENDOR_RDC=yCONFIG_R6040=yCONFIG_NET_VENDOR_REALTEK=yCONFIG_8139CP=yCONFIG_8139TOO=yCONFIG_8139TOO_PIO=yCONFIG_8139TOO_TUNE_TWISTER=yCONFIG_8139TOO_8129=yCONFIG_8139_OLD_RX_RESET=yCONFIG_R8169=yCONFIG_NET_VENDOR_RENESAS=yCONFIG_SH_ETH=yCONFIG_RAVB=yCONFIG_RENESAS_ETHER_SWITCH=yCONFIG_NET_VENDOR_ROCKER=yCONFIG_ROCKER=yCONFIG_NET_VENDOR_SAMSUNG=yCONFIG_SXGBE_ETH=yCONFIG_NET_VENDOR_SEEQ=yCONFIG_NET_VENDOR_SILAN=yCONFIG_SC92031=yCONFIG_NET_VENDOR_SIS=yCONFIG_SIS900=yCONFIG_SIS190=yCONFIG_NET_VENDOR_SOLARFLARE=yCONFIG_SFC=yCONFIG_SFC_MTD=yCONFIG_SFC_MCDI_MON=yCONFIG_SFC_SRIOV=yCONFIG_SFC_MCDI_LOGGING=yCONFIG_SFC_FALCON=yCONFIG_SFC_FALCON_MTD=yCONFIG_SFC_SIENA=yCONFIG_SFC_SIENA_MTD=yCONFIG_SFC_SIENA_MCDI_MON=yCONFIG_SFC_SIENA_SRIOV=yCONFIG_SFC_SIENA_MCDI_LOGGING=yCONFIG_NET_VENDOR_SMSC=yCONFIG_SMC91X=yCONFIG_PCMCIA_SMC91C92=yCONFIG_EPIC100=yCONFIG_SMSC911X=yCONFIG_SMSC9420=yCONFIG_NET_VENDOR_SOCIONEXT=yCONFIG_SNI_AVE=yCONFIG_SNI_NETSEC=yCONFIG_NET_VENDOR_STMICRO=yCONFIG_STMMAC_ETH=yCONFIG_STMMAC_SELFTESTS=yCONFIG_STMMAC_PLATFORM=yCONFIG_DWMAC_DWC_QOS_ETH=yCONFIG_DWMAC_GENERIC=yCONFIG_DWMAC_ANARION=yCONFIG_DWMAC_INGENIC=yCONFIG_DWMAC_IPQ806X=yCONFIG_DWMAC_LPC18XX=yCONFIG_DWMAC_MEDIATEK=yCONFIG_DWMAC_MESON=yCONFIG_DWMAC_OXNAS=yCONFIG_DWMAC_QCOM_ETHQOS=yCONFIG_DWMAC_ROCKCHIP=yCONFIG_DWMAC_SOCFPGA=yCONFIG_DWMAC_STI=yCONFIG_DWMAC_STM32=yCONFIG_DWMAC_SUNXI=yCONFIG_DWMAC_SUN8I=yCONFIG_DWMAC_IMX8=yCONFIG_DWMAC_INTEL_PLAT=yCONFIG_DWMAC_VISCONTI=yCONFIG_DWMAC_LOONGSON=yCONFIG_STMMAC_PCI=yCONFIG_NET_VENDOR_SUN=yCONFIG_HAPPYMEAL=yCONFIG_SUNGEM=yCONFIG_CASSINI=yCONFIG_NIU=yCONFIG_NET_VENDOR_SUNPLUS=yCONFIG_SP7021_EMAC=yCONFIG_NET_VENDOR_SYNOPSYS=yCONFIG_DWC_XLGMAC=yCONFIG_DWC_XLGMAC_PCI=yCONFIG_NET_VENDOR_TEHUTI=yCONFIG_TEHUTI=yCONFIG_NET_VENDOR_TI=yCONFIG_TI_DAVINCI_EMAC=yCONFIG_TI_DAVINCI_MDIO=yCONFIG_TI_CPSW_PHY_SEL=yCONFIG_TI_CPSW=yCONFIG_TI_CPSW_SWITCHDEV=yCONFIG_TI_CPTS=yCONFIG_TLAN=yCONFIG_NET_VENDOR_VERTEXCOM=yCONFIG_MSE102X=yCONFIG_NET_VENDOR_VIA=yCONFIG_VIA_RHINE=yCONFIG_VIA_RHINE_MMIO=yCONFIG_VIA_VELOCITY=yCONFIG_NET_VENDOR_WIZNET=yCONFIG_WIZNET_W5100=yCONFIG_WIZNET_W5300=y
# CONFIG_WIZNET_BUS_DIRECT is not set
# CONFIG_WIZNET_BUS_INDIRECT is not setCONFIG_WIZNET_BUS_ANY=yCONFIG_WIZNET_W5100_SPI=yCONFIG_NET_VENDOR_XILINX=yCONFIG_XILINX_EMACLITE=yCONFIG_XILINX_AXI_EMAC=yCONFIG_XILINX_LL_TEMAC=yCONFIG_NET_VENDOR_XIRCOM=yCONFIG_PCMCIA_XIRC2PS=yCONFIG_FDDI=yCONFIG_DEFXX=yCONFIG_SKFP=yCONFIG_HIPPI=yCONFIG_ROADRUNNER=yCONFIG_ROADRUNNER_LARGE_RINGS=yCONFIG_QCOM_IPA=yCONFIG_PHYLINK=yCONFIG_PHYLIB=yCONFIG_SWPHY=yCONFIG_LED_TRIGGER_PHY=yCONFIG_FIXED_PHY=yCONFIG_SFP=y
#
# MII PHY device drivers
#CONFIG_AMD_PHY=yCONFIG_MESON_GXL_PHY=yCONFIG_ADIN_PHY=yCONFIG_ADIN1100_PHY=yCONFIG_AQUANTIA_PHY=yCONFIG_AX88796B_PHY=yCONFIG_BROADCOM_PHY=yCONFIG_BCM54140_PHY=yCONFIG_BCM63XX_PHY=yCONFIG_BCM7XXX_PHY=yCONFIG_BCM84881_PHY=yCONFIG_BCM87XX_PHY=yCONFIG_BCM_CYGNUS_PHY=yCONFIG_BCM_NET_PHYLIB=yCONFIG_BCM_NET_PHYPTP=yCONFIG_CICADA_PHY=yCONFIG_CORTINA_PHY=yCONFIG_DAVICOM_PHY=yCONFIG_ICPLUS_PHY=yCONFIG_LXT_PHY=yCONFIG_INTEL_XWAY_PHY=yCONFIG_LSI_ET1011C_PHY=yCONFIG_MARVELL_PHY=yCONFIG_MARVELL_10G_PHY=yCONFIG_MARVELL_88X2222_PHY=yCONFIG_MAXLINEAR_GPHY=yCONFIG_MEDIATEK_GE_PHY=yCONFIG_MICREL_PHY=yCONFIG_MICROCHIP_PHY=yCONFIG_MICROCHIP_T1_PHY=yCONFIG_MICROSEMI_PHY=yCONFIG_MOTORCOMM_PHY=yCONFIG_NATIONAL_PHY=yCONFIG_NXP_C45_TJA11XX_PHY=yCONFIG_NXP_TJA11XX_PHY=yCONFIG_AT803X_PHY=yCONFIG_QSEMI_PHY=yCONFIG_REALTEK_PHY=yCONFIG_RENESAS_PHY=yCONFIG_ROCKCHIP_PHY=yCONFIG_SMSC_PHY=yCONFIG_STE10XP=yCONFIG_TERANETICS_PHY=yCONFIG_DP83822_PHY=yCONFIG_DP83TC811_PHY=yCONFIG_DP83848_PHY=yCONFIG_DP83867_PHY=yCONFIG_DP83869_PHY=yCONFIG_DP83TD510_PHY=yCONFIG_VITESSE_PHY=yCONFIG_XILINX_GMII2RGMII=yCONFIG_MICREL_KS8995MA=yCONFIG_PSE_CONTROLLER=yCONFIG_PSE_REGULATOR=yCONFIG_CAN_DEV=yCONFIG_CAN_VCAN=yCONFIG_CAN_VXCAN=yCONFIG_CAN_NETLINK=yCONFIG_CAN_CALC_BITTIMING=yCONFIG_CAN_RX_OFFLOAD=yCONFIG_CAN_AT91=yCONFIG_CAN_CAN327=yCONFIG_CAN_FLEXCAN=yCONFIG_CAN_GRCAN=yCONFIG_CAN_JANZ_ICAN3=yCONFIG_CAN_KVASER_PCIEFD=yCONFIG_CAN_SLCAN=yCONFIG_CAN_SUN4I=yCONFIG_CAN_XILINXCAN=yCONFIG_CAN_C_CAN=yCONFIG_CAN_C_CAN_PLATFORM=yCONFIG_CAN_C_CAN_PCI=yCONFIG_CAN_CC770=yCONFIG_CAN_CC770_ISA=yCONFIG_CAN_CC770_PLATFORM=yCONFIG_CAN_CTUCANFD=yCONFIG_CAN_CTUCANFD_PCI=yCONFIG_CAN_CTUCANFD_PLATFORM=yCONFIG_CAN_IFI_CANFD=yCONFIG_CAN_M_CAN=yCONFIG_CAN_M_CAN_PCI=yCONFIG_CAN_M_CAN_PLATFORM=yCONFIG_CAN_M_CAN_TCAN4X5X=yCONFIG_CAN_MSCAN=yCONFIG_CAN_PEAK_PCIEFD=yCONFIG_CAN_RCAR=yCONFIG_CAN_RCAR_CANFD=yCONFIG_CAN_SJA1000=yCONFIG_CAN_EMS_PCI=yCONFIG_CAN_EMS_PCMCIA=yCONFIG_CAN_F81601=yCONFIG_CAN_KVASER_PCI=yCONFIG_CAN_PEAK_PCI=yCONFIG_CAN_PEAK_PCIEC=yCONFIG_CAN_PEAK_PCMCIA=yCONFIG_CAN_PLX_PCI=yCONFIG_CAN_SJA1000_ISA=yCONFIG_CAN_SJA1000_PLATFORM=yCONFIG_CAN_SOFTING=yCONFIG_CAN_SOFTING_CS=y
#
# CAN SPI interfaces
#CONFIG_CAN_HI311X=yCONFIG_CAN_MCP251X=yCONFIG_CAN_MCP251XFD=yCONFIG_CAN_MCP251XFD_SANITY=y
# end of CAN SPI interfaces
#
# CAN USB interfaces
#CONFIG_CAN_8DEV_USB=yCONFIG_CAN_EMS_USB=yCONFIG_CAN_ESD_USB=yCONFIG_CAN_ETAS_ES58X=yCONFIG_CAN_GS_USB=yCONFIG_CAN_KVASER_USB=yCONFIG_CAN_MCBA_USB=yCONFIG_CAN_PEAK_USB=yCONFIG_CAN_UCAN=y
# end of CAN USB interfaces
CONFIG_CAN_DEBUG_DEVICES=y
#
# MCTP Device Drivers
#CONFIG_MCTP_SERIAL=yCONFIG_MCTP_TRANSPORT_I2C=y
# end of MCTP Device Drivers
CONFIG_MDIO_DEVICE=yCONFIG_MDIO_BUS=yCONFIG_FWNODE_MDIO=yCONFIG_OF_MDIO=yCONFIG_MDIO_DEVRES=yCONFIG_MDIO_SUN4I=yCONFIG_MDIO_XGENE=yCONFIG_MDIO_ASPEED=yCONFIG_MDIO_BITBANG=yCONFIG_MDIO_BCM_IPROC=yCONFIG_MDIO_BCM_UNIMAC=yCONFIG_MDIO_CAVIUM=yCONFIG_MDIO_GPIO=yCONFIG_MDIO_HISI_FEMAC=yCONFIG_MDIO_I2C=yCONFIG_MDIO_MVUSB=yCONFIG_MDIO_MSCC_MIIM=yCONFIG_MDIO_MOXART=yCONFIG_MDIO_OCTEON=yCONFIG_MDIO_IPQ4019=yCONFIG_MDIO_IPQ8064=y
#
# MDIO Multiplexers
#CONFIG_MDIO_BUS_MUX=yCONFIG_MDIO_BUS_MUX_MESON_G12A=yCONFIG_MDIO_BUS_MUX_BCM6368=yCONFIG_MDIO_BUS_MUX_BCM_IPROC=yCONFIG_MDIO_BUS_MUX_GPIO=yCONFIG_MDIO_BUS_MUX_MULTIPLEXER=yCONFIG_MDIO_BUS_MUX_MMIOREG=y
#
# PCS device drivers
#CONFIG_PCS_XPCS=yCONFIG_PCS_LYNX=yCONFIG_PCS_RZN1_MIIC=yCONFIG_PCS_ALTERA_TSE=y
# end of PCS device drivers
CONFIG_PLIP=yCONFIG_PPP=yCONFIG_PPP_BSDCOMP=yCONFIG_PPP_DEFLATE=yCONFIG_PPP_FILTER=yCONFIG_PPP_MPPE=yCONFIG_PPP_MULTILINK=yCONFIG_PPPOATM=yCONFIG_PPPOE=yCONFIG_PPTP=yCONFIG_PPPOL2TP=yCONFIG_PPP_ASYNC=yCONFIG_PPP_SYNC_TTY=yCONFIG_SLIP=yCONFIG_SLHC=yCONFIG_SLIP_COMPRESSED=yCONFIG_SLIP_SMART=yCONFIG_SLIP_MODE_SLIP6=yCONFIG_USB_NET_DRIVERS=yCONFIG_USB_CATC=yCONFIG_USB_KAWETH=yCONFIG_USB_PEGASUS=yCONFIG_USB_RTL8150=yCONFIG_USB_RTL8152=yCONFIG_USB_LAN78XX=yCONFIG_USB_USBNET=yCONFIG_USB_NET_AX8817X=yCONFIG_USB_NET_AX88179_178A=yCONFIG_USB_NET_CDCETHER=yCONFIG_USB_NET_CDC_EEM=yCONFIG_USB_NET_CDC_NCM=yCONFIG_USB_NET_HUAWEI_CDC_NCM=yCONFIG_USB_NET_CDC_MBIM=yCONFIG_USB_NET_DM9601=yCONFIG_USB_NET_SR9700=yCONFIG_USB_NET_SR9800=yCONFIG_USB_NET_SMSC75XX=yCONFIG_USB_NET_SMSC95XX=yCONFIG_USB_NET_GL620A=yCONFIG_USB_NET_NET1080=yCONFIG_USB_NET_PLUSB=yCONFIG_USB_NET_MCS7830=yCONFIG_USB_NET_RNDIS_HOST=yCONFIG_USB_NET_CDC_SUBSET_ENABLE=yCONFIG_USB_NET_CDC_SUBSET=yCONFIG_USB_ALI_M5632=yCONFIG_USB_AN2720=yCONFIG_USB_BELKIN=yCONFIG_USB_ARMLINUX=yCONFIG_USB_EPSON2888=yCONFIG_USB_KC2190=yCONFIG_USB_NET_ZAURUS=yCONFIG_USB_NET_CX82310_ETH=yCONFIG_USB_NET_KALMIA=yCONFIG_USB_NET_QMI_WWAN=yCONFIG_USB_HSO=yCONFIG_USB_NET_INT51X1=yCONFIG_USB_CDC_PHONET=yCONFIG_USB_IPHETH=yCONFIG_USB_SIERRA_NET=yCONFIG_USB_VL600=yCONFIG_USB_NET_CH9200=yCONFIG_USB_NET_AQC111=yCONFIG_USB_RTL8153_ECM=yCONFIG_WLAN=yCONFIG_WLAN_VENDOR_ADMTEK=yCONFIG_ADM8211=yCONFIG_ATH_COMMON=yCONFIG_WLAN_VENDOR_ATH=yCONFIG_ATH_DEBUG=yCONFIG_ATH_TRACEPOINTS=yCONFIG_ATH_REG_DYNAMIC_USER_REG_HINTS=yCONFIG_ATH_REG_DYNAMIC_USER_CERT_TESTING=yCONFIG_ATH5K=yCONFIG_ATH5K_DEBUG=yCONFIG_ATH5K_TRACER=yCONFIG_ATH5K_PCI=yCONFIG_ATH5K_TEST_CHANNELS=yCONFIG_ATH9K_HW=yCONFIG_ATH9K_COMMON=yCONFIG_ATH9K_COMMON_DEBUG=yCONFIG_ATH9K_DFS_DEBUGFS=yCONFIG_ATH9K_BTCOEX_SUPPORT=yCONFIG_ATH9K=yCONFIG_ATH9K_PCI=yCONFIG_ATH9K_AHB=yCONFIG_ATH9K_DEBUGFS=yCONFIG_ATH9K_STATION_STATISTICS=yCONFIG_ATH9K_TX99=yCONFIG_ATH9K_DFS_CERTIFIED=yCONFIG_ATH9K_DYNACK=yCONFIG_ATH9K_WOW=yCONFIG_ATH9K_RFKILL=yCONFIG_ATH9K_CHANNEL_CONTEXT=yCONFIG_ATH9K_PCOEM=yCONFIG_ATH9K_PCI_NO_EEPROM=yCONFIG_ATH9K_HTC=yCONFIG_ATH9K_HTC_DEBUGFS=yCONFIG_ATH9K_HWRNG=yCONFIG_ATH9K_COMMON_SPECTRAL=yCONFIG_CARL9170=yCONFIG_CARL9170_LEDS=yCONFIG_CARL9170_DEBUGFS=yCONFIG_CARL9170_WPC=yCONFIG_CARL9170_HWRNG=yCONFIG_ATH6KL=yCONFIG_ATH6KL_SDIO=yCONFIG_ATH6KL_USB=yCONFIG_ATH6KL_DEBUG=yCONFIG_ATH6KL_TRACING=yCONFIG_ATH6KL_REGDOMAIN=yCONFIG_AR5523=yCONFIG_WIL6210=yCONFIG_WIL6210_ISR_COR=yCONFIG_WIL6210_TRACING=yCONFIG_WIL6210_DEBUGFS=yCONFIG_ATH10K=yCONFIG_ATH10K_CE=yCONFIG_ATH10K_PCI=yCONFIG_ATH10K_AHB=yCONFIG_ATH10K_SDIO=yCONFIG_ATH10K_USB=yCONFIG_ATH10K_SNOC=yCONFIG_ATH10K_DEBUG=yCONFIG_ATH10K_DEBUGFS=yCONFIG_ATH10K_SPECTRAL=yCONFIG_ATH10K_TRACING=yCONFIG_ATH10K_DFS_CERTIFIED=yCONFIG_WCN36XX=yCONFIG_WCN36XX_DEBUGFS=yCONFIG_ATH11K=yCONFIG_ATH11K_AHB=yCONFIG_ATH11K_PCI=yCONFIG_ATH11K_DEBUG=yCONFIG_ATH11K_DEBUGFS=yCONFIG_ATH11K_TRACING=yCONFIG_ATH11K_SPECTRAL=yCONFIG_WLAN_VENDOR_ATMEL=yCONFIG_ATMEL=yCONFIG_PCI_ATMEL=yCONFIG_PCMCIA_ATMEL=yCONFIG_AT76C50X_USB=yCONFIG_WLAN_VENDOR_BROADCOM=yCONFIG_B43=yCONFIG_B43_BCMA=yCONFIG_B43_SSB=yCONFIG_B43_BUSES_BCMA_AND_SSB=y
# CONFIG_B43_BUSES_BCMA is not set
# CONFIG_B43_BUSES_SSB is not setCONFIG_B43_PCI_AUTOSELECT=yCONFIG_B43_PCICORE_AUTOSELECT=yCONFIG_B43_SDIO=yCONFIG_B43_BCMA_PIO=yCONFIG_B43_PIO=yCONFIG_B43_PHY_G=yCONFIG_B43_PHY_N=yCONFIG_B43_PHY_LP=yCONFIG_B43_PHY_HT=yCONFIG_B43_LEDS=yCONFIG_B43_HWRNG=yCONFIG_B43_DEBUG=yCONFIG_B43LEGACY=yCONFIG_B43LEGACY_PCI_AUTOSELECT=yCONFIG_B43LEGACY_PCICORE_AUTOSELECT=yCONFIG_B43LEGACY_LEDS=yCONFIG_B43LEGACY_HWRNG=yCONFIG_B43LEGACY_DEBUG=yCONFIG_B43LEGACY_DMA=yCONFIG_B43LEGACY_PIO=yCONFIG_B43LEGACY_DMA_AND_PIO_MODE=y
# CONFIG_B43LEGACY_DMA_MODE is not set
# CONFIG_B43LEGACY_PIO_MODE is not setCONFIG_BRCMUTIL=yCONFIG_BRCMSMAC=yCONFIG_BRCMSMAC_LEDS=yCONFIG_BRCMFMAC=yCONFIG_BRCMFMAC_PROTO_BCDC=yCONFIG_BRCMFMAC_PROTO_MSGBUF=yCONFIG_BRCMFMAC_SDIO=yCONFIG_BRCMFMAC_USB=yCONFIG_BRCMFMAC_PCIE=yCONFIG_BRCM_TRACING=yCONFIG_BRCMDBG=yCONFIG_WLAN_VENDOR_CISCO=yCONFIG_AIRO=yCONFIG_AIRO_CS=yCONFIG_WLAN_VENDOR_INTEL=yCONFIG_IPW2100=yCONFIG_IPW2100_MONITOR=yCONFIG_IPW2100_DEBUG=yCONFIG_IPW2200=yCONFIG_IPW2200_MONITOR=yCONFIG_IPW2200_RADIOTAP=yCONFIG_IPW2200_PROMISCUOUS=yCONFIG_IPW2200_QOS=yCONFIG_IPW2200_DEBUG=yCONFIG_LIBIPW=yCONFIG_LIBIPW_DEBUG=yCONFIG_IWLEGACY=yCONFIG_IWL4965=yCONFIG_IWL3945=y
#
# iwl3945 / iwl4965 Debugging Options # CONFIG_IWLEGACY_DEBUG=y CONFIG_IWLEGACY_DEBUGFS=y # end of iwl3945 / iwl4965 Debugging Options
CONFIG_IWLWIFI=yCONFIG_IWLWIFI_LEDS=yCONFIG_IWLDVM=yCONFIG_IWLMVM=y
#
# Debugging Options
#CONFIG_IWLWIFI_DEBUG=yCONFIG_IWLWIFI_DEBUGFS=yCONFIG_IWLWIFI_DEVICE_TRACING=y
# end of Debugging Options
CONFIG_WLAN_VENDOR_INTERSIL=yCONFIG_HOSTAP=yCONFIG_HOSTAP_FIRMWARE=yCONFIG_HOSTAP_FIRMWARE_NVRAM=yCONFIG_HOSTAP_PLX=yCONFIG_HOSTAP_PCI=yCONFIG_HOSTAP_CS=yCONFIG_HERMES=yCONFIG_HERMES_PRISM=yCONFIG_HERMES_CACHE_FW_ON_INIT=yCONFIG_APPLE_AIRPORT=yCONFIG_PLX_HERMES=yCONFIG_TMD_HERMES=yCONFIG_NORTEL_HERMES=yCONFIG_PCI_HERMES=yCONFIG_PCMCIA_HERMES=yCONFIG_PCMCIA_SPECTRUM=yCONFIG_ORINOCO_USB=yCONFIG_P54_COMMON=yCONFIG_P54_USB=yCONFIG_P54_PCI=yCONFIG_P54_SPI=yCONFIG_P54_SPI_DEFAULT_EEPROM=yCONFIG_P54_LEDS=yCONFIG_WLAN_VENDOR_MARVELL=yCONFIG_LIBERTAS=yCONFIG_LIBERTAS_USB=yCONFIG_LIBERTAS_CS=yCONFIG_LIBERTAS_SDIO=yCONFIG_LIBERTAS_SPI=yCONFIG_LIBERTAS_DEBUG=yCONFIG_LIBERTAS_MESH=yCONFIG_LIBERTAS_THINFIRM=yCONFIG_LIBERTAS_THINFIRM_DEBUG=yCONFIG_LIBERTAS_THINFIRM_USB=yCONFIG_MWIFIEX=yCONFIG_MWIFIEX_SDIO=yCONFIG_MWIFIEX_PCIE=yCONFIG_MWIFIEX_USB=yCONFIG_MWL8K=yCONFIG_WLAN_VENDOR_MEDIATEK=yCONFIG_MT7601U=yCONFIG_MT76_CORE=yCONFIG_MT76_LEDS=yCONFIG_MT76_USB=yCONFIG_MT76_SDIO=y
CONFIG_MT76x02_LIB=y
CONFIG_MT76x02_USB=yCONFIG_MT76_CONNAC_LIB=y
CONFIG_MT76x0_COMMON=y
CONFIG_MT76x0U=y
CONFIG_MT76x0E=y
CONFIG_MT76x2_COMMON=y
CONFIG_MT76x2E=y
CONFIG_MT76x2U=yCONFIG_MT7603E=yCONFIG_MT7615_COMMON=yCONFIG_MT7615E=yCONFIG_MT7622_WMAC=yCONFIG_MT7663_USB_SDIO_COMMON=yCONFIG_MT7663U=yCONFIG_MT7663S=yCONFIG_MT7915E=yCONFIG_MT7986_WMAC=yCONFIG_MT7921_COMMON=yCONFIG_MT7921E=yCONFIG_MT7921S=yCONFIG_MT7921U=yCONFIG_WLAN_VENDOR_MICROCHIP=yCONFIG_WILC1000=yCONFIG_WILC1000_SDIO=yCONFIG_WILC1000_SPI=yCONFIG_WILC1000_HW_OOB_INTR=yCONFIG_WLAN_VENDOR_PURELIFI=yCONFIG_PLFXLC=yCONFIG_WLAN_VENDOR_RALINK=yCONFIG_RT2X00=yCONFIG_RT2400PCI=yCONFIG_RT2500PCI=yCONFIG_RT61PCI=yCONFIG_RT2800PCI=yCONFIG_RT2800PCI_RT33XX=yCONFIG_RT2800PCI_RT35XX=yCONFIG_RT2800PCI_RT53XX=yCONFIG_RT2800PCI_RT3290=yCONFIG_RT2500USB=yCONFIG_RT73USB=yCONFIG_RT2800USB=yCONFIG_RT2800USB_RT33XX=yCONFIG_RT2800USB_RT35XX=yCONFIG_RT2800USB_RT3573=yCONFIG_RT2800USB_RT53XX=yCONFIG_RT2800USB_RT55XX=yCONFIG_RT2800USB_UNKNOWN=yCONFIG_RT2800_LIB=yCONFIG_RT2800_LIB_MMIO=yCONFIG_RT2X00_LIB_MMIO=yCONFIG_RT2X00_LIB_PCI=yCONFIG_RT2X00_LIB_USB=yCONFIG_RT2X00_LIB=yCONFIG_RT2X00_LIB_FIRMWARE=yCONFIG_RT2X00_LIB_CRYPTO=yCONFIG_RT2X00_LIB_LEDS=yCONFIG_RT2X00_LIB_DEBUGFS=yCONFIG_RT2X00_DEBUG=yCONFIG_WLAN_VENDOR_REALTEK=yCONFIG_RTL8180=yCONFIG_RTL8187=yCONFIG_RTL8187_LEDS=yCONFIG_RTL_CARDS=yCONFIG_RTL8192CE=yCONFIG_RTL8192SE=yCONFIG_RTL8192DE=yCONFIG_RTL8723AE=yCONFIG_RTL8723BE=yCONFIG_RTL8188EE=yCONFIG_RTL8192EE=yCONFIG_RTL8821AE=yCONFIG_RTL8192CU=yCONFIG_RTLWIFI=yCONFIG_RTLWIFI_PCI=yCONFIG_RTLWIFI_USB=yCONFIG_RTLWIFI_DEBUG=yCONFIG_RTL8192C_COMMON=yCONFIG_RTL8723_COMMON=yCONFIG_RTLBTCOEXIST=yCONFIG_RTL8XXXU=yCONFIG_RTL8XXXU_UNTESTED=yCONFIG_RTW88=yCONFIG_RTW88_CORE=yCONFIG_RTW88_PCI=yCONFIG_RTW88_8822B=yCONFIG_RTW88_8822C=yCONFIG_RTW88_8723D=yCONFIG_RTW88_8821C=yCONFIG_RTW88_8822BE=yCONFIG_RTW88_8822CE=yCONFIG_RTW88_8723DE=yCONFIG_RTW88_8821CE=yCONFIG_RTW88_DEBUG=yCONFIG_RTW88_DEBUGFS=yCONFIG_RTW89=yCONFIG_RTW89_CORE=yCONFIG_RTW89_PCI=yCONFIG_RTW89_8852A=yCONFIG_RTW89_8852B=yCONFIG_RTW89_8852C=yCONFIG_RTW89_8852AE=yCONFIG_RTW89_8852BE=yCONFIG_RTW89_8852CE=yCONFIG_RTW89_DEBUG=yCONFIG_RTW89_DEBUGMSG=yCONFIG_RTW89_DEBUGFS=yCONFIG_WLAN_VENDOR_RSI=yCONFIG_RSI_91X=yCONFIG_RSI_DEBUGFS=yCONFIG_RSI_SDIO=yCONFIG_RSI_USB=yCONFIG_RSI_COEX=yCONFIG_WLAN_VENDOR_SILABS=yCONFIG_WFX=yCONFIG_WLAN_VENDOR_ST=yCONFIG_CW1200=yCONFIG_CW1200_WLAN_SDIO=yCONFIG_CW1200_WLAN_SPI=yCONFIG_WLAN_VENDOR_TI=yCONFIG_WL1251=yCONFIG_WL1251_SPI=yCONFIG_WL1251_SDIO=yCONFIG_WL12XX=yCONFIG_WL18XX=yCONFIG_WLCORE=yCONFIG_WLCORE_SPI=yCONFIG_WLCORE_SDIO=yCONFIG_WILINK_PLATFORM_DATA=yCONFIG_WLAN_VENDOR_ZYDAS=yCONFIG_USB_ZD1201=yCONFIG_ZD1211RW=yCONFIG_ZD1211RW_DEBUG=yCONFIG_WLAN_VENDOR_QUANTENNA=yCONFIG_QTNFMAC=yCONFIG_QTNFMAC_PCIE=yCONFIG_PCMCIA_RAYCS=yCONFIG_PCMCIA_WL3501=yCONFIG_MAC80211_HWSIM=yCONFIG_USB_NET_RNDIS_WLAN=yCONFIG_VIRT_WIFI=yCONFIG_WAN=yCONFIG_HDLC=yCONFIG_HDLC_RAW=yCONFIG_HDLC_RAW_ETH=yCONFIG_HDLC_CISCO=yCONFIG_HDLC_FR=yCONFIG_HDLC_PPP=yCONFIG_HDLC_X25=yCONFIG_PCI200SYN=yCONFIG_WANXL=yCONFIG_PC300TOO=yCONFIG_FARSYNC=yCONFIG_FSL_UCC_HDLC=yCONFIG_SLIC_DS26522=yCONFIG_LAPBETHER=yCONFIG_IEEE802154_DRIVERS=yCONFIG_IEEE802154_FAKELB=yCONFIG_IEEE802154_AT86RF230=yCONFIG_IEEE802154_MRF24J40=yCONFIG_IEEE802154_CC2520=yCONFIG_IEEE802154_ATUSB=yCONFIG_IEEE802154_ADF7242=yCONFIG_IEEE802154_CA8210=yCONFIG_IEEE802154_CA8210_DEBUGFS=yCONFIG_IEEE802154_MCR20A=yCONFIG_IEEE802154_HWSIM=y
#
# Wireless WAN
#CONFIG_WWAN=yCONFIG_WWAN_DEBUGFS=yCONFIG_WWAN_HWSIM=yCONFIG_MHI_WWAN_CTRL=yCONFIG_MHI_WWAN_MBIM=yCONFIG_QCOM_BAM_DMUX=yCONFIG_RPMSG_WWAN_CTRL=yCONFIG_MTK_T7XX=y
# end of Wireless WAN
# CONFIG_VMXNET3 is not setCONFIG_USB4_NET=yCONFIG_NETDEVSIM=yCONFIG_NET_FAILOVER=yCONFIG_ISDN=yCONFIG_ISDN_CAPI=yCONFIG_CAPI_TRACE=yCONFIG_ISDN_CAPI_MIDDLEWARE=yCONFIG_MISDN=yCONFIG_MISDN_DSP=yCONFIG_MISDN_L1OIP=y
#
# mISDN hardware drivers
#CONFIG_MISDN_HFCPCI=yCONFIG_MISDN_HFCMULTI=yCONFIG_MISDN_HFCUSB=yCONFIG_MISDN_AVMFRITZ=yCONFIG_MISDN_SPEEDFAX=yCONFIG_MISDN_INFINEON=yCONFIG_MISDN_W6692=yCONFIG_MISDN_NETJET=yCONFIG_MISDN_HDLC=yCONFIG_MISDN_IPAC=yCONFIG_MISDN_ISAR=y
#
# Input device support
#CONFIG_INPUT=yCONFIG_INPUT_LEDS=yCONFIG_INPUT_FF_MEMLESS=yCONFIG_INPUT_SPARSEKMAP=yCONFIG_INPUT_MATRIXKMAP=yCONFIG_INPUT_VIVALDIFMAP=y
#
# Userland interfaces
#CONFIG_INPUT_MOUSEDEV=yCONFIG_INPUT_MOUSEDEV_PSAUX=yCONFIG_INPUT_MOUSEDEV_SCREEN_X=1024CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768CONFIG_INPUT_JOYDEV=yCONFIG_INPUT_EVDEV=yCONFIG_INPUT_EVBUG=y
#
# Input Device Drivers
#CONFIG_INPUT_KEYBOARD=yCONFIG_KEYBOARD_ADC=yCONFIG_KEYBOARD_ADP5520=yCONFIG_KEYBOARD_ADP5588=yCONFIG_KEYBOARD_ADP5589=yCONFIG_KEYBOARD_ATKBD=yCONFIG_KEYBOARD_QT1050=yCONFIG_KEYBOARD_QT1070=yCONFIG_KEYBOARD_QT2160=yCONFIG_KEYBOARD_CLPS711X=yCONFIG_KEYBOARD_DLINK_DIR685=yCONFIG_KEYBOARD_LKKBD=yCONFIG_KEYBOARD_EP93XX=yCONFIG_KEYBOARD_GPIO=yCONFIG_KEYBOARD_GPIO_POLLED=yCONFIG_KEYBOARD_TCA6416=yCONFIG_KEYBOARD_TCA8418=yCONFIG_KEYBOARD_MATRIX=yCONFIG_KEYBOARD_LM8323=yCONFIG_KEYBOARD_LM8333=yCONFIG_KEYBOARD_MAX7359=yCONFIG_KEYBOARD_MCS=yCONFIG_KEYBOARD_MPR121=yCONFIG_KEYBOARD_SNVS_PWRKEY=yCONFIG_KEYBOARD_IMX=yCONFIG_KEYBOARD_IMX_SC_KEY=yCONFIG_KEYBOARD_NEWTON=yCONFIG_KEYBOARD_OPENCORES=yCONFIG_KEYBOARD_PINEPHONE=yCONFIG_KEYBOARD_PMIC8XXX=yCONFIG_KEYBOARD_SAMSUNG=yCONFIG_KEYBOARD_GOLDFISH_EVENTS=yCONFIG_KEYBOARD_STOWAWAY=yCONFIG_KEYBOARD_ST_KEYSCAN=yCONFIG_KEYBOARD_SUNKBD=yCONFIG_KEYBOARD_SH_KEYSC=yCONFIG_KEYBOARD_STMPE=yCONFIG_KEYBOARD_IQS62X=yCONFIG_KEYBOARD_OMAP4=yCONFIG_KEYBOARD_TC3589X=yCONFIG_KEYBOARD_TM2_TOUCHKEY=yCONFIG_KEYBOARD_TWL4030=yCONFIG_KEYBOARD_XTKBD=yCONFIG_KEYBOARD_CROS_EC=yCONFIG_KEYBOARD_CAP11XX=yCONFIG_KEYBOARD_BCM=yCONFIG_KEYBOARD_MT6779=yCONFIG_KEYBOARD_MTK_PMIC=yCONFIG_KEYBOARD_CYPRESS_SF=yCONFIG_INPUT_MOUSE=yCONFIG_MOUSE_PS2=yCONFIG_MOUSE_PS2_ALPS=yCONFIG_MOUSE_PS2_BYD=yCONFIG_MOUSE_PS2_LOGIPS2PP=yCONFIG_MOUSE_PS2_SYNAPTICS=yCONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=yCONFIG_MOUSE_PS2_CYPRESS=yCONFIG_MOUSE_PS2_TRACKPOINT=yCONFIG_MOUSE_PS2_ELANTECH=yCONFIG_MOUSE_PS2_ELANTECH_SMBUS=yCONFIG_MOUSE_PS2_SENTELIC=yCONFIG_MOUSE_PS2_TOUCHKIT=yCONFIG_MOUSE_PS2_FOCALTECH=yCONFIG_MOUSE_PS2_SMBUS=yCONFIG_MOUSE_SERIAL=yCONFIG_MOUSE_APPLETOUCH=yCONFIG_MOUSE_BCM5974=yCONFIG_MOUSE_CYAPA=yCONFIG_MOUSE_ELAN_I2C=yCONFIG_MOUSE_ELAN_I2C_I2C=yCONFIG_MOUSE_ELAN_I2C_SMBUS=yCONFIG_MOUSE_VSXXXAA=yCONFIG_MOUSE_GPIO=yCONFIG_MOUSE_SYNAPTICS_I2C=yCONFIG_MOUSE_SYNAPTICS_USB=yCONFIG_INPUT_JOYSTICK=yCONFIG_JOYSTICK_ANALOG=yCONFIG_JOYSTICK_A3D=yCONFIG_JOYSTICK_ADC=yCONFIG_JOYSTICK_ADI=yCONFIG_JOYSTICK_COBRA=yCONFIG_JOYSTICK_GF2K=yCONFIG_JOYSTICK_GRIP=yCONFIG_JOYSTICK_GRIP_MP=yCONFIG_JOYSTICK_GUILLEMOT=yCONFIG_JOYSTICK_INTERACT=yCONFIG_JOYSTICK_SIDEWINDER=yCONFIG_JOYSTICK_TMDC=yCONFIG_JOYSTICK_IFORCE=yCONFIG_JOYSTICK_IFORCE_USB=yCONFIG_JOYSTICK_IFORCE_232=yCONFIG_JOYSTICK_WARRIOR=yCONFIG_JOYSTICK_MAGELLAN=yCONFIG_JOYSTICK_SPACEORB=yCONFIG_JOYSTICK_SPACEBALL=yCONFIG_JOYSTICK_STINGER=yCONFIG_JOYSTICK_TWIDJOY=yCONFIG_JOYSTICK_ZHENHUA=yCONFIG_JOYSTICK_DB9=yCONFIG_JOYSTICK_GAMECON=yCONFIG_JOYSTICK_TURBOGRAFX=yCONFIG_JOYSTICK_AS5011=yCONFIG_JOYSTICK_JOYDUMP=yCONFIG_JOYSTICK_XPAD=yCONFIG_JOYSTICK_XPAD_FF=yCONFIG_JOYSTICK_XPAD_LEDS=yCONFIG_JOYSTICK_WALKERA0701=yCONFIG_JOYSTICK_PSXPAD_SPI=yCONFIG_JOYSTICK_PSXPAD_SPI_FF=yCONFIG_JOYSTICK_PXRC=yCONFIG_JOYSTICK_QWIIC=yCONFIG_JOYSTICK_FSIA6B=yCONFIG_JOYSTICK_SENSEHAT=yCONFIG_INPUT_TABLET=yCONFIG_TABLET_USB_ACECAD=yCONFIG_TABLET_USB_AIPTEK=yCONFIG_TABLET_USB_HANWANG=yCONFIG_TABLET_USB_KBTAB=yCONFIG_TABLET_USB_PEGASUS=yCONFIG_TABLET_SERIAL_WACOM4=yCONFIG_INPUT_TOUCHSCREEN=yCONFIG_TOUCHSCREEN_88PM860X=yCONFIG_TOUCHSCREEN_ADS7846=yCONFIG_TOUCHSCREEN_AD7877=yCONFIG_TOUCHSCREEN_AD7879=yCONFIG_TOUCHSCREEN_AD7879_I2C=yCONFIG_TOUCHSCREEN_AD7879_SPI=yCONFIG_TOUCHSCREEN_ADC=yCONFIG_TOUCHSCREEN_AR1021_I2C=yCONFIG_TOUCHSCREEN_ATMEL_MXT=yCONFIG_TOUCHSCREEN_ATMEL_MXT_T37=yCONFIG_TOUCHSCREEN_AUO_PIXCIR=yCONFIG_TOUCHSCREEN_BU21013=yCONFIG_TOUCHSCREEN_BU21029=yCONFIG_TOUCHSCREEN_CHIPONE_ICN8318=yCONFIG_TOUCHSCREEN_CY8CTMA140=yCONFIG_TOUCHSCREEN_CY8CTMG110=yCONFIG_TOUCHSCREEN_CYTTSP_CORE=yCONFIG_TOUCHSCREEN_CYTTSP_I2C=yCONFIG_TOUCHSCREEN_CYTTSP_SPI=yCONFIG_TOUCHSCREEN_CYTTSP4_CORE=yCONFIG_TOUCHSCREEN_CYTTSP4_I2C=yCONFIG_TOUCHSCREEN_CYTTSP4_SPI=yCONFIG_TOUCHSCREEN_DA9034=yCONFIG_TOUCHSCREEN_DA9052=yCONFIG_TOUCHSCREEN_DYNAPRO=yCONFIG_TOUCHSCREEN_HAMPSHIRE=yCONFIG_TOUCHSCREEN_EETI=yCONFIG_TOUCHSCREEN_EGALAX=yCONFIG_TOUCHSCREEN_EGALAX_SERIAL=yCONFIG_TOUCHSCREEN_EXC3000=yCONFIG_TOUCHSCREEN_FUJITSU=yCONFIG_TOUCHSCREEN_GOODIX=yCONFIG_TOUCHSCREEN_HIDEEP=yCONFIG_TOUCHSCREEN_HYCON_HY46XX=yCONFIG_TOUCHSCREEN_ILI210X=yCONFIG_TOUCHSCREEN_ILITEK=yCONFIG_TOUCHSCREEN_IPROC=yCONFIG_TOUCHSCREEN_S6SY761=yCONFIG_TOUCHSCREEN_GUNZE=yCONFIG_TOUCHSCREEN_EKTF2127=yCONFIG_TOUCHSCREEN_ELAN=yCONFIG_TOUCHSCREEN_ELO=yCONFIG_TOUCHSCREEN_WACOM_W8001=yCONFIG_TOUCHSCREEN_WACOM_I2C=yCONFIG_TOUCHSCREEN_MAX11801=yCONFIG_TOUCHSCREEN_MCS5000=yCONFIG_TOUCHSCREEN_MMS114=yCONFIG_TOUCHSCREEN_MELFAS_MIP4=yCONFIG_TOUCHSCREEN_MSG2638=yCONFIG_TOUCHSCREEN_MTOUCH=yCONFIG_TOUCHSCREEN_IMAGIS=yCONFIG_TOUCHSCREEN_IMX6UL_TSC=yCONFIG_TOUCHSCREEN_INEXIO=yCONFIG_TOUCHSCREEN_MK712=yCONFIG_TOUCHSCREEN_PENMOUNT=yCONFIG_TOUCHSCREEN_EDT_FT5X06=yCONFIG_TOUCHSCREEN_RASPBERRYPI_FW=yCONFIG_TOUCHSCREEN_MIGOR=yCONFIG_TOUCHSCREEN_TOUCHRIGHT=yCONFIG_TOUCHSCREEN_TOUCHWIN=yCONFIG_TOUCHSCREEN_TI_AM335X_TSC=yCONFIG_TOUCHSCREEN_UCB1400=yCONFIG_TOUCHSCREEN_PIXCIR=yCONFIG_TOUCHSCREEN_WDT87XX_I2C=yCONFIG_TOUCHSCREEN_WM831X=yCONFIG_TOUCHSCREEN_WM97XX=yCONFIG_TOUCHSCREEN_WM9705=yCONFIG_TOUCHSCREEN_WM9712=yCONFIG_TOUCHSCREEN_WM9713=yCONFIG_TOUCHSCREEN_USB_COMPOSITE=yCONFIG_TOUCHSCREEN_MXS_LRADC=yCONFIG_TOUCHSCREEN_MX25=yCONFIG_TOUCHSCREEN_MC13783=yCONFIG_TOUCHSCREEN_USB_EGALAX=yCONFIG_TOUCHSCREEN_USB_PANJIT=yCONFIG_TOUCHSCREEN_USB_3M=yCONFIG_TOUCHSCREEN_USB_ITM=yCONFIG_TOUCHSCREEN_USB_ETURBO=yCONFIG_TOUCHSCREEN_USB_GUNZE=yCONFIG_TOUCHSCREEN_USB_DMC_TSC10=yCONFIG_TOUCHSCREEN_USB_IRTOUCH=yCONFIG_TOUCHSCREEN_USB_IDEALTEK=yCONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=yCONFIG_TOUCHSCREEN_USB_GOTOP=yCONFIG_TOUCHSCREEN_USB_JASTEC=yCONFIG_TOUCHSCREEN_USB_ELO=yCONFIG_TOUCHSCREEN_USB_E2I=yCONFIG_TOUCHSCREEN_USB_ZYTRONIC=yCONFIG_TOUCHSCREEN_USB_ETT_TC45USB=yCONFIG_TOUCHSCREEN_USB_NEXIO=yCONFIG_TOUCHSCREEN_USB_EASYTOUCH=yCONFIG_TOUCHSCREEN_TOUCHIT213=yCONFIG_TOUCHSCREEN_TS4800=yCONFIG_TOUCHSCREEN_TSC_SERIO=yCONFIG_TOUCHSCREEN_TSC200X_CORE=yCONFIG_TOUCHSCREEN_TSC2004=yCONFIG_TOUCHSCREEN_TSC2005=yCONFIG_TOUCHSCREEN_TSC2007=yCONFIG_TOUCHSCREEN_TSC2007_IIO=yCONFIG_TOUCHSCREEN_PCAP=yCONFIG_TOUCHSCREEN_RM_TS=yCONFIG_TOUCHSCREEN_SILEAD=yCONFIG_TOUCHSCREEN_SIS_I2C=yCONFIG_TOUCHSCREEN_ST1232=yCONFIG_TOUCHSCREEN_STMFTS=yCONFIG_TOUCHSCREEN_STMPE=yCONFIG_TOUCHSCREEN_SUN4I=yCONFIG_TOUCHSCREEN_SUR40=yCONFIG_TOUCHSCREEN_SURFACE3_SPI=yCONFIG_TOUCHSCREEN_SX8654=yCONFIG_TOUCHSCREEN_TPS6507X=yCONFIG_TOUCHSCREEN_ZET6223=yCONFIG_TOUCHSCREEN_ZFORCE=yCONFIG_TOUCHSCREEN_COLIBRI_VF50=yCONFIG_TOUCHSCREEN_ROHM_BU21023=yCONFIG_TOUCHSCREEN_IQS5XX=yCONFIG_TOUCHSCREEN_ZINITIX=yCONFIG_INPUT_MISC=yCONFIG_INPUT_88PM860X_ONKEY=yCONFIG_INPUT_88PM80X_ONKEY=yCONFIG_INPUT_AD714X=yCONFIG_INPUT_AD714X_I2C=yCONFIG_INPUT_AD714X_SPI=yCONFIG_INPUT_ARIEL_PWRBUTTON=yCONFIG_INPUT_ARIZONA_HAPTICS=yCONFIG_INPUT_ATC260X_ONKEY=yCONFIG_INPUT_ATMEL_CAPTOUCH=yCONFIG_INPUT_BMA150=yCONFIG_INPUT_E3X0_BUTTON=yCONFIG_INPUT_PCSPKR=yCONFIG_INPUT_PM8941_PWRKEY=yCONFIG_INPUT_PM8XXX_VIBRATOR=yCONFIG_INPUT_PMIC8XXX_PWRKEY=yCONFIG_INPUT_MAX77650_ONKEY=yCONFIG_INPUT_MAX77693_HAPTIC=yCONFIG_INPUT_MAX8925_ONKEY=yCONFIG_INPUT_MAX8997_HAPTIC=yCONFIG_INPUT_MC13783_PWRBUTTON=yCONFIG_INPUT_MMA8450=yCONFIG_INPUT_GPIO_BEEPER=yCONFIG_INPUT_GPIO_DECODER=yCONFIG_INPUT_GPIO_VIBRA=yCONFIG_INPUT_CPCAP_PWRBUTTON=yCONFIG_INPUT_ATI_REMOTE2=yCONFIG_INPUT_KEYSPAN_REMOTE=yCONFIG_INPUT_KXTJ9=yCONFIG_INPUT_POWERMATE=yCONFIG_INPUT_YEALINK=yCONFIG_INPUT_CM109=yCONFIG_INPUT_REGULATOR_HAPTIC=yCONFIG_INPUT_RETU_PWRBUTTON=yCONFIG_INPUT_TPS65218_PWRBUTTON=yCONFIG_INPUT_AXP20X_PEK=yCONFIG_INPUT_TWL4030_PWRBUTTON=yCONFIG_INPUT_TWL4030_VIBRA=yCONFIG_INPUT_TWL6040_VIBRA=yCONFIG_INPUT_UINPUT=yCONFIG_INPUT_PALMAS_PWRBUTTON=yCONFIG_INPUT_PCF50633_PMU=yCONFIG_INPUT_PCF8574=yCONFIG_INPUT_PWM_BEEPER=yCONFIG_INPUT_PWM_VIBRA=yCONFIG_INPUT_RK805_PWRKEY=yCONFIG_INPUT_GPIO_ROTARY_ENCODER=yCONFIG_INPUT_DA7280_HAPTICS=yCONFIG_INPUT_DA9052_ONKEY=yCONFIG_INPUT_DA9055_ONKEY=yCONFIG_INPUT_DA9063_ONKEY=yCONFIG_INPUT_WM831X_ON=yCONFIG_INPUT_PCAP=yCONFIG_INPUT_ADXL34X=yCONFIG_INPUT_ADXL34X_I2C=yCONFIG_INPUT_ADXL34X_SPI=yCONFIG_INPUT_IBM_PANEL=yCONFIG_INPUT_IMS_PCU=yCONFIG_INPUT_IQS269A=yCONFIG_INPUT_IQS626A=yCONFIG_INPUT_IQS7222=yCONFIG_INPUT_CMA3000=yCONFIG_INPUT_CMA3000_I2C=yCONFIG_INPUT_IDEAPAD_SLIDEBAR=yCONFIG_INPUT_DRV260X_HAPTICS=yCONFIG_INPUT_DRV2665_HAPTICS=yCONFIG_INPUT_DRV2667_HAPTICS=yCONFIG_INPUT_HISI_POWERKEY=yCONFIG_INPUT_RAVE_SP_PWRBUTTON=yCONFIG_INPUT_SC27XX_VIBRA=yCONFIG_INPUT_RT5120_PWRKEY=yCONFIG_INPUT_STPMIC1_ONKEY=yCONFIG_RMI4_CORE=yCONFIG_RMI4_I2C=yCONFIG_RMI4_SPI=yCONFIG_RMI4_SMB=yCONFIG_RMI4_F03=yCONFIG_RMI4_F03_SERIO=yCONFIG_RMI4_2D_SENSOR=yCONFIG_RMI4_F11=yCONFIG_RMI4_F12=yCONFIG_RMI4_F30=yCONFIG_RMI4_F34=yCONFIG_RMI4_F3A=yCONFIG_RMI4_F54=yCONFIG_RMI4_F55=y
#
# Hardware I/O ports
#CONFIG_SERIO=yCONFIG_ARCH_MIGHT_HAVE_PC_SERIO=yCONFIG_SERIO_I8042=yCONFIG_SERIO_SERPORT=yCONFIG_SERIO_PARKBD=yCONFIG_SERIO_PCIPS2=yCONFIG_SERIO_LIBPS2=yCONFIG_SERIO_RAW=yCONFIG_SERIO_XILINX_XPS_PS2=yCONFIG_SERIO_ALTERA_PS2=yCONFIG_SERIO_PS2MULT=yCONFIG_SERIO_ARC_PS2=yCONFIG_SERIO_APBPS2=yCONFIG_SERIO_OLPC_APSP=yCONFIG_SERIO_SUN4I_PS2=yCONFIG_SERIO_GPIO_PS2=yCONFIG_USERIO=yCONFIG_GAMEPORT=yCONFIG_GAMEPORT_NS558=yCONFIG_GAMEPORT_L4=yCONFIG_GAMEPORT_EMU10K1=yCONFIG_GAMEPORT_FM801=y
# end of Hardware I/O ports # end of Input device support
#
# Character devices
#CONFIG_TTY=yCONFIG_VT=yCONFIG_CONSOLE_TRANSLATIONS=yCONFIG_VT_CONSOLE=yCONFIG_VT_CONSOLE_SLEEP=yCONFIG_HW_CONSOLE=yCONFIG_VT_HW_CONSOLE_BINDING=yCONFIG_UNIX98_PTYS=yCONFIG_LEGACY_PTYS=yCONFIG_LEGACY_PTY_COUNT=256CONFIG_LDISC_AUTOLOAD=y
#
# Serial drivers
#CONFIG_SERIAL_EARLYCON=yCONFIG_SERIAL_8250=yCONFIG_SERIAL_8250_DEPRECATED_OPTIONS=yCONFIG_SERIAL_8250_16550A_VARIANTS=yCONFIG_SERIAL_8250_FINTEK=yCONFIG_SERIAL_8250_CONSOLE=yCONFIG_SERIAL_8250_DMA=yCONFIG_SERIAL_8250_PCI=yCONFIG_SERIAL_8250_EXAR=yCONFIG_SERIAL_8250_CS=yCONFIG_SERIAL_8250_MEN_MCB=yCONFIG_SERIAL_8250_NR_UARTS=4CONFIG_SERIAL_8250_RUNTIME_UARTS=4CONFIG_SERIAL_8250_EXTENDED=yCONFIG_SERIAL_8250_MANY_PORTS=yCONFIG_SERIAL_8250_ASPEED_VUART=yCONFIG_SERIAL_8250_SHARE_IRQ=yCONFIG_SERIAL_8250_DETECT_IRQ=yCONFIG_SERIAL_8250_RSA=yCONFIG_SERIAL_8250_DWLIB=yCONFIG_SERIAL_8250_BCM2835AUX=yCONFIG_SERIAL_8250_FSL=yCONFIG_SERIAL_8250_DW=yCONFIG_SERIAL_8250_EM=yCONFIG_SERIAL_8250_IOC3=yCONFIG_SERIAL_8250_RT288X=yCONFIG_SERIAL_8250_OMAP=yCONFIG_SERIAL_8250_OMAP_TTYO_FIXUP=yCONFIG_SERIAL_8250_LPC18XX=yCONFIG_SERIAL_8250_MT6577=yCONFIG_SERIAL_8250_UNIPHIER=yCONFIG_SERIAL_8250_INGENIC=yCONFIG_SERIAL_8250_LPSS=yCONFIG_SERIAL_8250_MID=yCONFIG_SERIAL_8250_PERICOM=yCONFIG_SERIAL_8250_PXA=yCONFIG_SERIAL_8250_TEGRA=yCONFIG_SERIAL_8250_BCM7271=yCONFIG_SERIAL_OF_PLATFORM=y
#
# Non-8250 serial port support
#CONFIG_SERIAL_AMBA_PL010=yCONFIG_SERIAL_AMBA_PL010_CONSOLE=yCONFIG_SERIAL_ATMEL=yCONFIG_SERIAL_ATMEL_CONSOLE=yCONFIG_SERIAL_ATMEL_PDC=yCONFIG_SERIAL_ATMEL_TTYAT=yCONFIG_SERIAL_KGDB_NMI=yCONFIG_SERIAL_MESON=yCONFIG_SERIAL_MESON_CONSOLE=yCONFIG_SERIAL_CLPS711X=yCONFIG_SERIAL_CLPS711X_CONSOLE=yCONFIG_SERIAL_SAMSUNG=yCONFIG_SERIAL_SAMSUNG_UARTS_4=yCONFIG_SERIAL_SAMSUNG_UARTS=4CONFIG_SERIAL_SAMSUNG_CONSOLE=yCONFIG_SERIAL_TEGRA=yCONFIG_SERIAL_TEGRA_TCU=yCONFIG_SERIAL_TEGRA_TCU_CONSOLE=yCONFIG_SERIAL_MAX3100=yCONFIG_SERIAL_MAX310X=yCONFIG_SERIAL_IMX=yCONFIG_SERIAL_IMX_CONSOLE=yCONFIG_SERIAL_IMX_EARLYCON=yCONFIG_SERIAL_UARTLITE=yCONFIG_SERIAL_UARTLITE_CONSOLE=yCONFIG_SERIAL_UARTLITE_NR_UARTS=1CONFIG_SERIAL_SH_SCI=yCONFIG_SERIAL_SH_SCI_NR_UARTS=2CONFIG_SERIAL_SH_SCI_CONSOLE=yCONFIG_SERIAL_SH_SCI_EARLYCON=yCONFIG_SERIAL_SH_SCI_DMA=yCONFIG_SERIAL_HS_LPC32XX=yCONFIG_SERIAL_HS_LPC32XX_CONSOLE=yCONFIG_SERIAL_CORE=yCONFIG_SERIAL_CORE_CONSOLE=yCONFIG_CONSOLE_POLL=yCONFIG_SERIAL_PMACZILOG=yCONFIG_SERIAL_PMACZILOG_TTYS=yCONFIG_SERIAL_PMACZILOG_CONSOLE=y
# CONFIG_SERIAL_CPM is not setCONFIG_SERIAL_ICOM=yCONFIG_SERIAL_JSM=yCONFIG_SERIAL_MSM=yCONFIG_SERIAL_MSM_CONSOLE=yCONFIG_SERIAL_QCOM_GENI=yCONFIG_SERIAL_QCOM_GENI_CONSOLE=yCONFIG_SERIAL_VT8500=yCONFIG_SERIAL_VT8500_CONSOLE=yCONFIG_SERIAL_OMAP=yCONFIG_SERIAL_OMAP_CONSOLE=yCONFIG_SERIAL_SIFIVE=yCONFIG_SERIAL_SIFIVE_CONSOLE=yCONFIG_SERIAL_LANTIQ=yCONFIG_SERIAL_LANTIQ_CONSOLE=yCONFIG_SERIAL_QE=yCONFIG_SERIAL_SCCNXP=yCONFIG_SERIAL_SCCNXP_CONSOLE=yCONFIG_SERIAL_SC16IS7XX_CORE=yCONFIG_SERIAL_SC16IS7XX=yCONFIG_SERIAL_SC16IS7XX_I2C=yCONFIG_SERIAL_SC16IS7XX_SPI=yCONFIG_SERIAL_TIMBERDALE=yCONFIG_SERIAL_BCM63XX=yCONFIG_SERIAL_BCM63XX_CONSOLE=yCONFIG_SERIAL_ALTERA_JTAGUART=yCONFIG_SERIAL_ALTERA_JTAGUART_CONSOLE=yCONFIG_SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS=yCONFIG_SERIAL_ALTERA_UART=yCONFIG_SERIAL_ALTERA_UART_MAXPORTS=4CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200CONFIG_SERIAL_ALTERA_UART_CONSOLE=yCONFIG_SERIAL_PCH_UART=yCONFIG_SERIAL_PCH_UART_CONSOLE=yCONFIG_SERIAL_MXS_AUART=yCONFIG_SERIAL_MXS_AUART_CONSOLE=yCONFIG_SERIAL_XILINX_PS_UART=yCONFIG_SERIAL_XILINX_PS_UART_CONSOLE=yCONFIG_SERIAL_MPS2_UART_CONSOLE=yCONFIG_SERIAL_MPS2_UART=yCONFIG_SERIAL_ARC=yCONFIG_SERIAL_ARC_CONSOLE=yCONFIG_SERIAL_ARC_NR_PORTS=1CONFIG_SERIAL_RP2=yCONFIG_SERIAL_RP2_NR_UARTS=32CONFIG_SERIAL_FSL_LPUART=yCONFIG_SERIAL_FSL_LPUART_CONSOLE=yCONFIG_SERIAL_FSL_LINFLEXUART=yCONFIG_SERIAL_FSL_LINFLEXUART_CONSOLE=yCONFIG_SERIAL_CONEXANT_DIGICOLOR=yCONFIG_SERIAL_CONEXANT_DIGICOLOR_CONSOLE=yCONFIG_SERIAL_ST_ASC=yCONFIG_SERIAL_ST_ASC_CONSOLE=yCONFIG_SERIAL_MEN_Z135=yCONFIG_SERIAL_SPRD=yCONFIG_SERIAL_SPRD_CONSOLE=yCONFIG_SERIAL_STM32=yCONFIG_SERIAL_STM32_CONSOLE=yCONFIG_SERIAL_MVEBU_UART=yCONFIG_SERIAL_MVEBU_CONSOLE=yCONFIG_SERIAL_OWL=yCONFIG_SERIAL_OWL_CONSOLE=yCONFIG_SERIAL_RDA=yCONFIG_SERIAL_RDA_CONSOLE=yCONFIG_SERIAL_MILBEAUT_USIO=yCONFIG_SERIAL_MILBEAUT_USIO_PORTS=4CONFIG_SERIAL_MILBEAUT_USIO_CONSOLE=yCONFIG_SERIAL_LITEUART=yCONFIG_SERIAL_LITEUART_MAX_PORTS=1CONFIG_SERIAL_LITEUART_CONSOLE=yCONFIG_SERIAL_SUNPLUS=yCONFIG_SERIAL_SUNPLUS_CONSOLE=y
# end of Serial drivers
CONFIG_SERIAL_MCTRL_GPIO=yCONFIG_SERIAL_NONSTANDARD=yCONFIG_MOXA_INTELLIO=yCONFIG_MOXA_SMARTIO=yCONFIG_SYNCLINK_GT=yCONFIG_N_HDLC=yCONFIG_PPC_EPAPR_HV_BYTECHAN=yCONFIG_PPC_EARLY_DEBUG_EHV_BC=yCONFIG_PPC_EARLY_DEBUG_EHV_BC_HANDLE=0CONFIG_GOLDFISH_TTY=yCONFIG_GOLDFISH_TTY_EARLY_CONSOLE=yCONFIG_N_GSM=yCONFIG_NOZOMI=yCONFIG_NULL_TTY=yCONFIG_HVC_DRIVER=yCONFIG_HVC_RTAS=yCONFIG_HVC_UDBG=yCONFIG_RPMSG_TTY=yCONFIG_SERIAL_DEV_BUS=yCONFIG_SERIAL_DEV_CTRL_TTYPORT=yCONFIG_TTY_PRINTK=yCONFIG_TTY_PRINTK_LEVEL=6CONFIG_PRINTER=yCONFIG_LP_CONSOLE=yCONFIG_PPDEV=yCONFIG_VIRTIO_CONSOLE=yCONFIG_IPMI_HANDLER=yCONFIG_IPMI_PLAT_DATA=yCONFIG_IPMI_PANIC_EVENT=yCONFIG_IPMI_PANIC_STRING=yCONFIG_IPMI_DEVICE_INTERFACE=yCONFIG_IPMI_SI=yCONFIG_IPMI_SSIF=yCONFIG_IPMI_IPMB=yCONFIG_IPMI_WATCHDOG=yCONFIG_IPMI_POWEROFF=yCONFIG_IPMI_KCS_BMC=yCONFIG_ASPEED_KCS_IPMI_BMC=yCONFIG_NPCM7XX_KCS_IPMI_BMC=yCONFIG_IPMI_KCS_BMC_CDEV_IPMI=yCONFIG_IPMI_KCS_BMC_SERIO=yCONFIG_ASPEED_BT_IPMI_BMC=yCONFIG_IPMB_DEVICE_INTERFACE=yCONFIG_HW_RANDOM=yCONFIG_HW_RANDOM_TIMERIOMEM=yCONFIG_HW_RANDOM_ATMEL=yCONFIG_HW_RANDOM_BA431=yCONFIG_HW_RANDOM_BCM2835=yCONFIG_HW_RANDOM_IPROC_RNG200=yCONFIG_HW_RANDOM_IXP4XX=yCONFIG_HW_RANDOM_OMAP=yCONFIG_HW_RANDOM_OMAP3_ROM=yCONFIG_HW_RANDOM_VIRTIO=yCONFIG_HW_RANDOM_IMX_RNGC=yCONFIG_HW_RANDOM_NOMADIK=yCONFIG_HW_RANDOM_STM32=yCONFIG_HW_RANDOM_POLARFIRE_SOC=yCONFIG_HW_RANDOM_MESON=yCONFIG_HW_RANDOM_MTK=yCONFIG_HW_RANDOM_EXYNOS=yCONFIG_HW_RANDOM_NPCM=yCONFIG_HW_RANDOM_KEYSTONE=yCONFIG_HW_RANDOM_CCTRNG=yCONFIG_HW_RANDOM_XIPHERA=yCONFIG_APPLICOM=y
#
# PCMCIA character devices
#CONFIG_SYNCLINK_CS=yCONFIG_CARDMAN_4000=yCONFIG_CARDMAN_4040=yCONFIG_SCR24X=yCONFIG_IPWIRELESS=y
# end of PCMCIA character devices
CONFIG_DEVMEM=yCONFIG_NVRAM=yCONFIG_DEVPORT=yCONFIG_TCG_TPM=yCONFIG_HW_RANDOM_TPM=yCONFIG_TCG_TIS_CORE=yCONFIG_TCG_TIS=yCONFIG_TCG_TIS_SPI=yCONFIG_TCG_TIS_SPI_CR50=yCONFIG_TCG_TIS_I2C=yCONFIG_TCG_TIS_SYNQUACER=yCONFIG_TCG_TIS_I2C_CR50=yCONFIG_TCG_TIS_I2C_ATMEL=yCONFIG_TCG_TIS_I2C_INFINEON=yCONFIG_TCG_TIS_I2C_NUVOTON=yCONFIG_TCG_ATMEL=yCONFIG_TCG_VTPM_PROXY=yCONFIG_TCG_TIS_ST33ZP24=yCONFIG_TCG_TIS_ST33ZP24_I2C=yCONFIG_TCG_TIS_ST33ZP24_SPI=yCONFIG_XILLYBUS_CLASS=yCONFIG_XILLYBUS=yCONFIG_XILLYBUS_PCIE=yCONFIG_XILLYBUS_OF=yCONFIG_XILLYUSB=yCONFIG_RANDOM_TRUST_CPU=yCONFIG_RANDOM_TRUST_BOOTLOADER=y
# end of Character devices
#
# I2C support
#CONFIG_I2C=yCONFIG_I2C_BOARDINFO=yCONFIG_I2C_COMPAT=yCONFIG_I2C_CHARDEV=yCONFIG_I2C_MUX=y
#
# Multiplexer I2C Chip support
#CONFIG_I2C_ARB_GPIO_CHALLENGE=yCONFIG_I2C_MUX_GPIO=yCONFIG_I2C_MUX_GPMUX=yCONFIG_I2C_MUX_LTC4306=yCONFIG_I2C_MUX_PCA9541=y
CONFIG_I2C_MUX_PCA954x=yCONFIG_I2C_MUX_PINCTRL=yCONFIG_I2C_MUX_REG=yCONFIG_I2C_DEMUX_PINCTRL=yCONFIG_I2C_MUX_MLXCPLD=y
# end of Multiplexer I2C Chip support
CONFIG_I2C_HELPER_AUTO=yCONFIG_I2C_SMBUS=yCONFIG_I2C_ALGOBIT=yCONFIG_I2C_ALGOPCA=y
#
# I2C Hardware Bus support
#
#
# PC SMBus host controller drivers
#CONFIG_I2C_CCGX_UCSI=yCONFIG_I2C_ALI1535=yCONFIG_I2C_ALI1563=yCONFIG_I2C_ALI15X3=yCONFIG_I2C_AMD756=yCONFIG_I2C_AMD8111=yCONFIG_I2C_HIX5HD2=yCONFIG_I2C_I801=yCONFIG_I2C_ISCH=yCONFIG_I2C_PIIX4=yCONFIG_I2C_NFORCE2=yCONFIG_I2C_NVIDIA_GPU=yCONFIG_I2C_SIS5595=yCONFIG_I2C_SIS630=yCONFIG_I2C_SIS96X=yCONFIG_I2C_VIA=yCONFIG_I2C_VIAPRO=y
#
# Mac SMBus host controller drivers
#
# CONFIG_I2C_HYDRA is not setCONFIG_I2C_POWERMAC=y
#
# I2C system bus drivers (mostly embedded / system-on-chip) #CONFIG_I2C_ALTERA=yCONFIG_I2C_ASPEED=yCONFIG_I2C_AT91=y CONFIG_I2C_AT91_SLAVE_EXPERIMENTAL=y CONFIG_I2C_AXXIA=yCONFIG_I2C_BCM2835=yCONFIG_I2C_BCM_IPROC=yCONFIG_I2C_BCM_KONA=yCONFIG_I2C_BRCMSTB=yCONFIG_I2C_CADENCE=yCONFIG_I2C_CBUS_GPIO=yCONFIG_I2C_DAVINCI=yCONFIG_I2C_DESIGNWARE_CORE=y CONFIG_I2C_DESIGNWARE_SLAVE=y CONFIG_I2C_DESIGNWARE_PLATFORM=y CONFIG_I2C_DESIGNWARE_PCI=yCONFIG_I2C_DIGICOLOR=yCONFIG_I2C_EG20T=yCONFIG_I2C_EMEV2=yCONFIG_I2C_EXYNOS5=yCONFIG_I2C_GPIO=yCONFIG_I2C_GPIO_FAULT_INJECTOR=y CONFIG_I2C_HIGHLANDER=yCONFIG_I2C_HISI=yCONFIG_I2C_IMG=yCONFIG_I2C_IMX=yCONFIG_I2C_IMX_LPI2C=yCONFIG_I2C_IOP3XX=yCONFIG_I2C_JZ4780=yCONFIG_I2C_KEMPLD=yCONFIG_I2C_LPC2K=yCONFIG_I2C_MESON=yCONFIG_I2C_MICROCHIP_CORE=yCONFIG_I2C_MPC=yCONFIG_I2C_MT65XX=yCONFIG_I2C_MT7621=yCONFIG_I2C_MV64XXX=yCONFIG_I2C_MXS=yCONFIG_I2C_NPCM=yCONFIG_I2C_OCORES=yCONFIG_I2C_OMAP=yCONFIG_I2C_OWL=yCONFIG_I2C_APPLE=yCONFIG_I2C_PCA_PLATFORM=yCONFIG_I2C_PNX=yCONFIG_I2C_PXA=yCONFIG_I2C_PXA_SLAVE=yCONFIG_I2C_QCOM_CCI=yCONFIG_I2C_QCOM_GENI=yCONFIG_I2C_QUP=yCONFIG_I2C_RIIC=yCONFIG_I2C_RK3X=yCONFIG_I2C_RZV2M=yCONFIG_I2C_S3C2410=yCONFIG_I2C_SH_MOBILE=yCONFIG_I2C_SIMTEC=yCONFIG_I2C_SPRD=yCONFIG_I2C_ST=yCONFIG_I2C_STM32F4=yCONFIG_I2C_STM32F7=yCONFIG_I2C_SUN6I_P2WI=yCONFIG_I2C_SYNQUACER=yCONFIG_I2C_TEGRA_BPMP=yCONFIG_I2C_UNIPHIER=yCONFIG_I2C_UNIPHIER_F=yCONFIG_I2C_VERSATILE=yCONFIG_I2C_WMT=yCONFIG_I2C_XILINX=yCONFIG_I2C_XLP9XX=yCONFIG_I2C_RCAR=y
#
# External I2C/SMBus adapter drivers
#CONFIG_I2C_DIOLAN_U2C=yCONFIG_I2C_DLN2=yCONFIG_I2C_CP2615=yCONFIG_I2C_PARPORT=yCONFIG_I2C_PCI1XXXX=yCONFIG_I2C_ROBOTFUZZ_OSIF=yCONFIG_I2C_TAOS_EVM=yCONFIG_I2C_TINY_USB=yCONFIG_I2C_VIPERBOARD=y
#
# Other I2C/SMBus bus drivers
#CONFIG_I2C_MLXCPLD=yCONFIG_I2C_CROS_EC_TUNNEL=yCONFIG_I2C_FSI=yCONFIG_I2C_VIRTIO=y
# end of I2C Hardware Bus support
CONFIG_I2C_STUB=mCONFIG_I2C_SLAVE=yCONFIG_I2C_SLAVE_EEPROM=yCONFIG_I2C_SLAVE_TESTUNIT=yCONFIG_I2C_DEBUG_CORE=yCONFIG_I2C_DEBUG_ALGO=yCONFIG_I2C_DEBUG_BUS=y
# end of I2C support
CONFIG_I3C=yCONFIG_CDNS_I3C_MASTER=yCONFIG_DW_I3C_MASTER=yCONFIG_SVC_I3C_MASTER=yCONFIG_MIPI_I3C_HCI=yCONFIG_SPI=yCONFIG_SPI_DEBUG=yCONFIG_SPI_MASTER=yCONFIG_SPI_MEM=y
#
# SPI Master Controller Drivers
#CONFIG_SPI_ALTERA=yCONFIG_SPI_ALTERA_CORE=yCONFIG_SPI_ALTERA_DFL=yCONFIG_SPI_AR934X=yCONFIG_SPI_ATH79=yCONFIG_SPI_ARMADA_3700=yCONFIG_SPI_ASPEED_SMC=yCONFIG_SPI_ATMEL=yCONFIG_SPI_AT91_USART=yCONFIG_SPI_ATMEL_QUADSPI=yCONFIG_SPI_AXI_SPI_ENGINE=yCONFIG_SPI_BCM2835=yCONFIG_SPI_BCM2835AUX=yCONFIG_SPI_BCM63XX=yCONFIG_SPI_BCM63XX_HSSPI=yCONFIG_SPI_BCM_QSPI=yCONFIG_SPI_BITBANG=yCONFIG_SPI_BUTTERFLY=yCONFIG_SPI_CADENCE=yCONFIG_SPI_CADENCE_QUADSPI=yCONFIG_SPI_CADENCE_XSPI=yCONFIG_SPI_CLPS711X=yCONFIG_SPI_DESIGNWARE=yCONFIG_SPI_DW_DMA=yCONFIG_SPI_DW_PCI=yCONFIG_SPI_DW_MMIO=yCONFIG_SPI_DW_BT1=yCONFIG_SPI_DW_BT1_DIRMAP=yCONFIG_SPI_DLN2=yCONFIG_SPI_EP93XX=yCONFIG_SPI_FSI=yCONFIG_SPI_FSL_LPSPI=yCONFIG_SPI_FSL_QUADSPI=yCONFIG_SPI_GXP=yCONFIG_SPI_HISI_KUNPENG=yCONFIG_SPI_HISI_SFC_V3XX=yCONFIG_SPI_NXP_FLEXSPI=yCONFIG_SPI_GPIO=yCONFIG_SPI_IMG_SPFI=yCONFIG_SPI_IMX=yCONFIG_SPI_INGENIC=yCONFIG_SPI_INTEL=yCONFIG_SPI_INTEL_PCI=yCONFIG_SPI_INTEL_PLATFORM=yCONFIG_SPI_JCORE=yCONFIG_SPI_LM70_LLP=yCONFIG_SPI_LP8841_RTC=yCONFIG_SPI_FSL_LIB=yCONFIG_SPI_FSL_SPI=yCONFIG_SPI_FSL_DSPI=yCONFIG_SPI_MESON_SPICC=yCONFIG_SPI_MESON_SPIFC=yCONFIG_SPI_MICROCHIP_CORE=yCONFIG_SPI_MICROCHIP_CORE_QSPI=yCONFIG_SPI_MT65XX=yCONFIG_SPI_MT7621=yCONFIG_SPI_MTK_NOR=yCONFIG_SPI_MTK_SNFI=yCONFIG_SPI_NPCM_FIU=yCONFIG_SPI_NPCM_PSPI=yCONFIG_SPI_LANTIQ_SSC=yCONFIG_SPI_OC_TINY=yCONFIG_SPI_OMAP24XX=yCONFIG_SPI_TI_QSPI=yCONFIG_SPI_OMAP_100K=yCONFIG_SPI_ORION=yCONFIG_SPI_PIC32=yCONFIG_SPI_PIC32_SQI=yCONFIG_SPI_PXA2XX=yCONFIG_SPI_PXA2XX_PCI=yCONFIG_SPI_ROCKCHIP=yCONFIG_SPI_ROCKCHIP_SFC=yCONFIG_SPI_RPCIF=yCONFIG_SPI_RSPI=yCONFIG_SPI_QUP=yCONFIG_SPI_QCOM_GENI=yCONFIG_SPI_S3C64XX=yCONFIG_SPI_SC18IS602=yCONFIG_SPI_SH_MSIOF=yCONFIG_SPI_SH=yCONFIG_SPI_SH_HSPI=yCONFIG_SPI_SIFIVE=yCONFIG_SPI_SLAVE_MT27XX=yCONFIG_SPI_SPRD=yCONFIG_SPI_SPRD_ADI=yCONFIG_SPI_STM32=yCONFIG_SPI_STM32_QSPI=yCONFIG_SPI_ST_SSC4=yCONFIG_SPI_SUN4I=yCONFIG_SPI_SUN6I=yCONFIG_SPI_SUNPLUS_SP7021=yCONFIG_SPI_SYNQUACER=yCONFIG_SPI_MXIC=yCONFIG_SPI_TEGRA210_QUAD=yCONFIG_SPI_TEGRA114=yCONFIG_SPI_TEGRA20_SFLASH=yCONFIG_SPI_TEGRA20_SLINK=yCONFIG_SPI_TOPCLIFF_PCH=yCONFIG_SPI_UNIPHIER=yCONFIG_SPI_XCOMM=yCONFIG_SPI_XILINX=yCONFIG_SPI_XLP=yCONFIG_SPI_XTENSA_XTFPGA=yCONFIG_SPI_ZYNQ_QSPI=yCONFIG_SPI_ZYNQMP_GQSPI=yCONFIG_SPI_AMD=y
#
# SPI Multiplexer support
#CONFIG_SPI_MUX=y
#
# SPI Protocol Masters
#CONFIG_SPI_SPIDEV=yCONFIG_SPI_LOOPBACK_TEST=mCONFIG_SPI_TLE62X0=yCONFIG_SPI_SLAVE=yCONFIG_SPI_SLAVE_TIME=yCONFIG_SPI_SLAVE_SYSTEM_CONTROL=yCONFIG_SPI_DYNAMIC=yCONFIG_SPMI=yCONFIG_SPMI_HISI3670=yCONFIG_SPMI_MSM_PMIC_ARB=yCONFIG_SPMI_MTK_PMIF=yCONFIG_HSI=yCONFIG_HSI_BOARDINFO=y
#
# HSI controllers
#
#
# HSI clients
#CONFIG_HSI_CHAR=yCONFIG_PPS=yCONFIG_PPS_DEBUG=y
#
# PPS clients support
#CONFIG_PPS_CLIENT_KTIMER=yCONFIG_PPS_CLIENT_LDISC=yCONFIG_PPS_CLIENT_PARPORT=yCONFIG_PPS_CLIENT_GPIO=y
#
# PPS generators support
#
#
# PTP clock support
#CONFIG_PTP_1588_CLOCK=yCONFIG_PTP_1588_CLOCK_OPTIONAL=yCONFIG_PTP_1588_CLOCK_DTE=yCONFIG_PTP_1588_CLOCK_QORIQ=yCONFIG_DP83640_PHY=yCONFIG_PTP_1588_CLOCK_INES=yCONFIG_PTP_1588_CLOCK_PCH=yCONFIG_PTP_1588_CLOCK_IDT82P33=yCONFIG_PTP_1588_CLOCK_IDTCM=yCONFIG_PTP_1588_CLOCK_OCP=y
# end of PTP clock support
CONFIG_PINCTRL=yCONFIG_GENERIC_PINCTRL_GROUPS=yCONFIG_PINMUX=yCONFIG_GENERIC_PINMUX_FUNCTIONS=yCONFIG_PINCONF=yCONFIG_GENERIC_PINCONF=yCONFIG_DEBUG_PINCTRL=yCONFIG_PINCTRL_AMD=yCONFIG_PINCTRL_AS3722=yCONFIG_PINCTRL_AT91PIO4=yCONFIG_PINCTRL_AXP209=yCONFIG_PINCTRL_BM1880=yCONFIG_PINCTRL_CY8C95X0=yCONFIG_PINCTRL_DA850_PUPD=yCONFIG_PINCTRL_DA9062=yCONFIG_PINCTRL_EQUILIBRIUM=yCONFIG_PINCTRL_INGENIC=yCONFIG_PINCTRL_LPC18XX=yCONFIG_PINCTRL_MAX77620=yCONFIG_PINCTRL_MCP23S08_I2C=yCONFIG_PINCTRL_MCP23S08_SPI=yCONFIG_PINCTRL_MCP23S08=yCONFIG_PINCTRL_MICROCHIP_SGPIO=yCONFIG_PINCTRL_OCELOT=yCONFIG_PINCTRL_PALMAS=yCONFIG_PINCTRL_PISTACHIO=yCONFIG_PINCTRL_RK805=yCONFIG_PINCTRL_ROCKCHIP=yCONFIG_PINCTRL_SINGLE=yCONFIG_PINCTRL_STMFX=yCONFIG_PINCTRL_SX150X=yCONFIG_PINCTRL_OWL=yCONFIG_PINCTRL_S500=yCONFIG_PINCTRL_S700=yCONFIG_PINCTRL_S900=yCONFIG_PINCTRL_ASPEED=yCONFIG_PINCTRL_ASPEED_G4=yCONFIG_PINCTRL_ASPEED_G5=yCONFIG_PINCTRL_ASPEED_G6=yCONFIG_PINCTRL_BCM281XX=yCONFIG_PINCTRL_BCM2835=yCONFIG_PINCTRL_BCM4908=yCONFIG_PINCTRL_BCM63XX=yCONFIG_PINCTRL_BCM6318=yCONFIG_PINCTRL_BCM6328=yCONFIG_PINCTRL_BCM6358=yCONFIG_PINCTRL_BCM6362=yCONFIG_PINCTRL_BCM6368=yCONFIG_PINCTRL_BCM63268=yCONFIG_PINCTRL_IPROC_GPIO=yCONFIG_PINCTRL_CYGNUS_MUX=yCONFIG_PINCTRL_NS=yCONFIG_PINCTRL_NSP_GPIO=yCONFIG_PINCTRL_NS2_MUX=yCONFIG_PINCTRL_NSP_MUX=yCONFIG_PINCTRL_BERLIN=yCONFIG_PINCTRL_AS370=yCONFIG_PINCTRL_BERLIN_BG4CT=yCONFIG_PINCTRL_LOCHNAGAR=yCONFIG_PINCTRL_MADERA=yCONFIG_PINCTRL_CS47L15=yCONFIG_PINCTRL_CS47L35=yCONFIG_PINCTRL_CS47L85=yCONFIG_PINCTRL_CS47L90=yCONFIG_PINCTRL_CS47L92=yCONFIG_PINCTRL_IMX=yCONFIG_PINCTRL_IMX8MM=yCONFIG_PINCTRL_IMX8MN=yCONFIG_PINCTRL_IMX8MP=yCONFIG_PINCTRL_IMX8MQ=y
#
# Intel pinctrl drivers
#
# end of Intel pinctrl drivers
#
# MediaTek pinctrl drivers
#CONFIG_EINT_MTK=yCONFIG_PINCTRL_MTK=yCONFIG_PINCTRL_MTK_V2=yCONFIG_PINCTRL_MTK_MOORE=yCONFIG_PINCTRL_MTK_PARIS=yCONFIG_PINCTRL_MT2701=yCONFIG_PINCTRL_MT7623=yCONFIG_PINCTRL_MT7629=yCONFIG_PINCTRL_MT8135=yCONFIG_PINCTRL_MT8127=yCONFIG_PINCTRL_MT2712=yCONFIG_PINCTRL_MT6765=yCONFIG_PINCTRL_MT6779=yCONFIG_PINCTRL_MT6795=yCONFIG_PINCTRL_MT6797=yCONFIG_PINCTRL_MT7622=yCONFIG_PINCTRL_MT7986=yCONFIG_PINCTRL_MT8167=yCONFIG_PINCTRL_MT8173=yCONFIG_PINCTRL_MT8183=yCONFIG_PINCTRL_MT8186=yCONFIG_PINCTRL_MT8188=yCONFIG_PINCTRL_MT8192=yCONFIG_PINCTRL_MT8195=yCONFIG_PINCTRL_MT8365=yCONFIG_PINCTRL_MT8516=yCONFIG_PINCTRL_MT6397=y
# end of MediaTek pinctrl drivers
CONFIG_PINCTRL_MESON=yCONFIG_PINCTRL_WPCM450=yCONFIG_PINCTRL_NPCM7XX=yCONFIG_PINCTRL_PXA=yCONFIG_PINCTRL_PXA25X=yCONFIG_PINCTRL_PXA27X=yCONFIG_PINCTRL_MSM=yCONFIG_PINCTRL_APQ8064=yCONFIG_PINCTRL_APQ8084=yCONFIG_PINCTRL_IPQ4019=yCONFIG_PINCTRL_IPQ8064=yCONFIG_PINCTRL_IPQ8074=yCONFIG_PINCTRL_IPQ6018=yCONFIG_PINCTRL_MSM8226=yCONFIG_PINCTRL_MSM8660=yCONFIG_PINCTRL_MSM8960=yCONFIG_PINCTRL_MDM9607=yCONFIG_PINCTRL_MDM9615=yCONFIG_PINCTRL_MSM8X74=yCONFIG_PINCTRL_MSM8909=yCONFIG_PINCTRL_MSM8916=yCONFIG_PINCTRL_MSM8953=yCONFIG_PINCTRL_MSM8976=yCONFIG_PINCTRL_MSM8994=yCONFIG_PINCTRL_MSM8996=yCONFIG_PINCTRL_MSM8998=yCONFIG_PINCTRL_QCM2290=yCONFIG_PINCTRL_QCS404=yCONFIG_PINCTRL_QCOM_SPMI_PMIC=yCONFIG_PINCTRL_QCOM_SSBI_PMIC=yCONFIG_PINCTRL_SC7180=yCONFIG_PINCTRL_SC7280=yCONFIG_PINCTRL_SC7280_LPASS_LPI=yCONFIG_PINCTRL_SC8180X=yCONFIG_PINCTRL_SC8280XP=yCONFIG_PINCTRL_SDM660=yCONFIG_PINCTRL_SDM845=yCONFIG_PINCTRL_SDX55=yCONFIG_PINCTRL_SM6115=yCONFIG_PINCTRL_SM6125=yCONFIG_PINCTRL_SM6350=yCONFIG_PINCTRL_SM6375=yCONFIG_PINCTRL_SDX65=yCONFIG_PINCTRL_SM8150=yCONFIG_PINCTRL_SM8250=yCONFIG_PINCTRL_SM8250_LPASS_LPI=yCONFIG_PINCTRL_SM8350=yCONFIG_PINCTRL_SM8450=yCONFIG_PINCTRL_SM8450_LPASS_LPI=yCONFIG_PINCTRL_SC8280XP_LPASS_LPI=yCONFIG_PINCTRL_LPASS_LPI=y
#
# Renesas pinctrl drivers
#CONFIG_PINCTRL_RENESAS=yCONFIG_PINCTRL_SH_PFC=yCONFIG_PINCTRL_SH_PFC_GPIO=yCONFIG_PINCTRL_SH_FUNC_GPIO=yCONFIG_PINCTRL_PFC_EMEV2=yCONFIG_PINCTRL_PFC_R8A77995=yCONFIG_PINCTRL_PFC_R8A7794=yCONFIG_PINCTRL_PFC_R8A77990=yCONFIG_PINCTRL_PFC_R8A7779=yCONFIG_PINCTRL_PFC_R8A7790=yCONFIG_PINCTRL_PFC_R8A77950=yCONFIG_PINCTRL_PFC_R8A77951=yCONFIG_PINCTRL_PFC_R8A7778=yCONFIG_PINCTRL_PFC_R8A7793=yCONFIG_PINCTRL_PFC_R8A7791=yCONFIG_PINCTRL_PFC_R8A77965=yCONFIG_PINCTRL_PFC_R8A77960=yCONFIG_PINCTRL_PFC_R8A77961=yCONFIG_PINCTRL_PFC_R8A779F0=yCONFIG_PINCTRL_PFC_R8A7792=yCONFIG_PINCTRL_PFC_R8A77980=yCONFIG_PINCTRL_PFC_R8A77970=yCONFIG_PINCTRL_PFC_R8A779A0=yCONFIG_PINCTRL_PFC_R8A779G0=yCONFIG_PINCTRL_PFC_R8A7740=yCONFIG_PINCTRL_PFC_R8A73A4=yCONFIG_PINCTRL_RZA1=yCONFIG_PINCTRL_RZA2=yCONFIG_PINCTRL_RZG2L=yCONFIG_PINCTRL_PFC_R8A77470=yCONFIG_PINCTRL_PFC_R8A7745=yCONFIG_PINCTRL_PFC_R8A7742=yCONFIG_PINCTRL_PFC_R8A7743=yCONFIG_PINCTRL_PFC_R8A7744=yCONFIG_PINCTRL_PFC_R8A774C0=yCONFIG_PINCTRL_PFC_R8A774E1=yCONFIG_PINCTRL_PFC_R8A774A1=yCONFIG_PINCTRL_PFC_R8A774B1=yCONFIG_PINCTRL_RZN1=yCONFIG_PINCTRL_RZV2M=yCONFIG_PINCTRL_PFC_SH7203=yCONFIG_PINCTRL_PFC_SH7264=yCONFIG_PINCTRL_PFC_SH7269=yCONFIG_PINCTRL_PFC_SH7720=yCONFIG_PINCTRL_PFC_SH7722=yCONFIG_PINCTRL_PFC_SH7734=yCONFIG_PINCTRL_PFC_SH7757=yCONFIG_PINCTRL_PFC_SH7785=yCONFIG_PINCTRL_PFC_SH7786=yCONFIG_PINCTRL_PFC_SH73A0=yCONFIG_PINCTRL_PFC_SH7723=yCONFIG_PINCTRL_PFC_SH7724=yCONFIG_PINCTRL_PFC_SHX3=y
# end of Renesas pinctrl drivers
CONFIG_PINCTRL_SAMSUNG=yCONFIG_PINCTRL_EXYNOS=yCONFIG_PINCTRL_EXYNOS_ARM=yCONFIG_PINCTRL_EXYNOS_ARM64=yCONFIG_PINCTRL_S3C24XX=yCONFIG_PINCTRL_S3C64XX=yCONFIG_PINCTRL_SPRD=yCONFIG_PINCTRL_SPRD_SC9860=yCONFIG_PINCTRL_STARFIVE_JH7100=yCONFIG_PINCTRL_STM32=yCONFIG_PINCTRL_STM32F429=yCONFIG_PINCTRL_STM32F469=yCONFIG_PINCTRL_STM32F746=yCONFIG_PINCTRL_STM32F769=yCONFIG_PINCTRL_STM32H743=yCONFIG_PINCTRL_STM32MP135=yCONFIG_PINCTRL_STM32MP157=yCONFIG_PINCTRL_TI_IODELAY=yCONFIG_PINCTRL_UNIPHIER=yCONFIG_PINCTRL_UNIPHIER_LD4=yCONFIG_PINCTRL_UNIPHIER_PRO4=yCONFIG_PINCTRL_UNIPHIER_SLD8=yCONFIG_PINCTRL_UNIPHIER_PRO5=yCONFIG_PINCTRL_UNIPHIER_PXS2=yCONFIG_PINCTRL_UNIPHIER_LD6B=yCONFIG_PINCTRL_UNIPHIER_LD11=yCONFIG_PINCTRL_UNIPHIER_LD20=yCONFIG_PINCTRL_UNIPHIER_PXS3=yCONFIG_PINCTRL_UNIPHIER_NX1=yCONFIG_PINCTRL_VISCONTI=yCONFIG_PINCTRL_TMPV7700=yCONFIG_GPIOLIB=yCONFIG_GPIOLIB_FASTPATH_LIMIT=512CONFIG_OF_GPIO=yCONFIG_GPIOLIB_IRQCHIP=yCONFIG_DEBUG_GPIO=yCONFIG_GPIO_SYSFS=yCONFIG_GPIO_CDEV=yCONFIG_GPIO_CDEV_V1=yCONFIG_GPIO_GENERIC=yCONFIG_GPIO_REGMAP=yCONFIG_GPIO_MAX730X=y
#
# Memory mapped GPIO drivers
#CONFIG_GPIO_74XX_MMIO=yCONFIG_GPIO_ALTERA=yCONFIG_GPIO_ASPEED=yCONFIG_GPIO_ASPEED_SGPIO=yCONFIG_GPIO_ATH79=yCONFIG_GPIO_RASPBERRYPI_EXP=yCONFIG_GPIO_BCM_KONA=yCONFIG_GPIO_BCM_XGS_IPROC=yCONFIG_GPIO_BRCMSTB=yCONFIG_GPIO_CADENCE=yCONFIG_GPIO_CLPS711X=yCONFIG_GPIO_DWAPB=yCONFIG_GPIO_EIC_SPRD=yCONFIG_GPIO_EM=yCONFIG_GPIO_EXAR=yCONFIG_GPIO_FTGPIO010=yCONFIG_GPIO_GENERIC_PLATFORM=yCONFIG_GPIO_GRGPIO=yCONFIG_GPIO_HISI=yCONFIG_GPIO_HLWD=yCONFIG_GPIO_IMX_SCU=yCONFIG_GPIO_IOP=yCONFIG_GPIO_LOGICVC=yCONFIG_GPIO_LPC18XX=yCONFIG_GPIO_LPC32XX=yCONFIG_GPIO_MB86S7X=yCONFIG_GPIO_MENZ127=yCONFIG_GPIO_MPC8XXX=yCONFIG_GPIO_MT7621=yCONFIG_GPIO_MXC=yCONFIG_GPIO_MXS=yCONFIG_GPIO_PMIC_EIC_SPRD=yCONFIG_GPIO_PXA=yCONFIG_GPIO_RCAR=yCONFIG_GPIO_RDA=yCONFIG_GPIO_ROCKCHIP=yCONFIG_GPIO_SAMA5D2_PIOBU=yCONFIG_GPIO_SIFIVE=yCONFIG_GPIO_SIOX=yCONFIG_GPIO_SNPS_CREG=yCONFIG_GPIO_SPRD=yCONFIG_GPIO_STP_XWAY=yCONFIG_GPIO_SYSCON=yCONFIG_GPIO_TEGRA=yCONFIG_GPIO_TEGRA186=yCONFIG_GPIO_TS4800=yCONFIG_GPIO_UNIPHIER=yCONFIG_GPIO_VISCONTI=yCONFIG_GPIO_VX855=yCONFIG_GPIO_WCD934X=yCONFIG_GPIO_XGENE_SB=yCONFIG_GPIO_XILINX=yCONFIG_GPIO_XLP=yCONFIG_GPIO_AMD_FCH=yCONFIG_GPIO_IDT3243X=y
# end of Memory mapped GPIO drivers
#
# I2C GPIO expanders
#CONFIG_GPIO_ADNP=yCONFIG_GPIO_GW_PLD=yCONFIG_GPIO_MAX7300=yCONFIG_GPIO_MAX732X=yCONFIG_GPIO_MAX732X_IRQ=yCONFIG_GPIO_PCA953X=yCONFIG_GPIO_PCA953X_IRQ=yCONFIG_GPIO_PCA9570=yCONFIG_GPIO_PCF857X=yCONFIG_GPIO_TPIC2810=yCONFIG_GPIO_TS4900=y
# end of I2C GPIO expanders
#
# MFD GPIO expanders
#CONFIG_GPIO_ADP5520=yCONFIG_GPIO_ARIZONA=yCONFIG_GPIO_BD71815=yCONFIG_GPIO_BD71828=yCONFIG_GPIO_BD9571MWV=yCONFIG_GPIO_CRYSTAL_COVE=yCONFIG_GPIO_DA9052=yCONFIG_GPIO_DA9055=yCONFIG_GPIO_DLN2=yCONFIG_GPIO_JANZ_TTL=yCONFIG_GPIO_KEMPLD=yCONFIG_GPIO_LP3943=yCONFIG_GPIO_LP873X=yCONFIG_GPIO_LP87565=yCONFIG_GPIO_MADERA=yCONFIG_GPIO_MAX77620=yCONFIG_GPIO_MAX77650=yCONFIG_GPIO_PALMAS=yCONFIG_GPIO_RC5T583=yCONFIG_GPIO_SL28CPLD=yCONFIG_GPIO_STMPE=yCONFIG_GPIO_TC3589X=yCONFIG_GPIO_TIMBERDALE=yCONFIG_GPIO_TPS65086=yCONFIG_GPIO_TPS65218=yCONFIG_GPIO_TPS6586X=yCONFIG_GPIO_TPS65910=yCONFIG_GPIO_TPS65912=yCONFIG_GPIO_TQMX86=yCONFIG_GPIO_TWL4030=yCONFIG_GPIO_TWL6040=yCONFIG_GPIO_UCB1400=yCONFIG_GPIO_WM831X=yCONFIG_GPIO_WM8350=yCONFIG_GPIO_WM8994=y
# end of MFD GPIO expanders
#
# PCI GPIO expanders
#CONFIG_GPIO_AMD8111=yCONFIG_GPIO_ML_IOH=yCONFIG_GPIO_PCH=yCONFIG_GPIO_PCI_IDIO_16=yCONFIG_GPIO_PCIE_IDIO_24=yCONFIG_GPIO_RDC321X=y
# end of PCI GPIO expanders
#
# SPI GPIO expanders
#CONFIG_GPIO_74X164=yCONFIG_GPIO_MAX3191X=yCONFIG_GPIO_MAX7301=yCONFIG_GPIO_MC33880=yCONFIG_GPIO_PISOSR=yCONFIG_GPIO_XRA1403=yCONFIG_GPIO_MOXTET=y
# end of SPI GPIO expanders
#
# USB GPIO expanders
#CONFIG_GPIO_VIPERBOARD=y
# end of USB GPIO expanders
#
# Virtual GPIO drivers
#CONFIG_GPIO_AGGREGATOR=yCONFIG_GPIO_MOCKUP=yCONFIG_GPIO_VIRTIO=yCONFIG_GPIO_SIM=y
# end of Virtual GPIO drivers
CONFIG_W1=yCONFIG_W1_CON=y
#
# 1-wire Bus Masters
#CONFIG_W1_MASTER_MATROX=yCONFIG_W1_MASTER_DS2490=yCONFIG_W1_MASTER_DS2482=yCONFIG_W1_MASTER_MXC=yCONFIG_W1_MASTER_DS1WM=yCONFIG_W1_MASTER_GPIO=yCONFIG_W1_MASTER_SGI=y
# end of 1-wire Bus Masters
#
# 1-wire Slaves
#CONFIG_W1_SLAVE_THERM=yCONFIG_W1_SLAVE_SMEM=yCONFIG_W1_SLAVE_DS2405=yCONFIG_W1_SLAVE_DS2408=yCONFIG_W1_SLAVE_DS2408_READBACK=yCONFIG_W1_SLAVE_DS2413=yCONFIG_W1_SLAVE_DS2406=yCONFIG_W1_SLAVE_DS2423=yCONFIG_W1_SLAVE_DS2805=yCONFIG_W1_SLAVE_DS2430=yCONFIG_W1_SLAVE_DS2431=yCONFIG_W1_SLAVE_DS2433=yCONFIG_W1_SLAVE_DS2433_CRC=yCONFIG_W1_SLAVE_DS2438=yCONFIG_W1_SLAVE_DS250X=yCONFIG_W1_SLAVE_DS2780=yCONFIG_W1_SLAVE_DS2781=yCONFIG_W1_SLAVE_DS28E04=yCONFIG_W1_SLAVE_DS28E17=y
# end of 1-wire Slaves
CONFIG_POWER_RESET=yCONFIG_POWER_RESET_AS3722=yCONFIG_POWER_RESET_ATC260X=yCONFIG_POWER_RESET_BRCMKONA=yCONFIG_POWER_RESET_BRCMSTB=yCONFIG_POWER_RESET_GEMINI_POWEROFF=yCONFIG_POWER_RESET_GPIO=yCONFIG_POWER_RESET_GPIO_RESTART=yCONFIG_POWER_RESET_LINKSTATION=yCONFIG_POWER_RESET_OCELOT_RESET=yCONFIG_POWER_RESET_PIIX4_POWEROFF=yCONFIG_POWER_RESET_LTC2952=yCONFIG_POWER_RESET_MT6323=yCONFIG_POWER_RESET_REGULATOR=yCONFIG_POWER_RESET_RESTART=yCONFIG_POWER_RESET_TPS65086=yCONFIG_POWER_RESET_KEYSTONE=yCONFIG_POWER_RESET_SYSCON=yCONFIG_POWER_RESET_SYSCON_POWEROFF=yCONFIG_POWER_RESET_RMOBILE=yCONFIG_REBOOT_MODE=yCONFIG_SYSCON_REBOOT_MODE=yCONFIG_POWER_RESET_SC27XX=yCONFIG_NVMEM_REBOOT_MODE=yCONFIG_POWER_SUPPLY=yCONFIG_POWER_SUPPLY_DEBUG=yCONFIG_POWER_SUPPLY_HWMON=yCONFIG_PDA_POWER=yCONFIG_GENERIC_ADC_BATTERY=yCONFIG_IP5XXX_POWER=yCONFIG_MAX8925_POWER=yCONFIG_WM831X_BACKUP=yCONFIG_WM831X_POWER=yCONFIG_WM8350_POWER=yCONFIG_TEST_POWER=yCONFIG_BATTERY_88PM860X=yCONFIG_CHARGER_ADP5061=yCONFIG_BATTERY_ACT8945A=yCONFIG_BATTERY_CPCAP=yCONFIG_BATTERY_CW2015=yCONFIG_BATTERY_DS2760=yCONFIG_BATTERY_DS2780=yCONFIG_BATTERY_DS2781=yCONFIG_BATTERY_DS2782=yCONFIG_BATTERY_LEGO_EV3=y
# CONFIG_BATTERY_PMU is not setCONFIG_BATTERY_OLPC=yCONFIG_BATTERY_SAMSUNG_SDI=yCONFIG_BATTERY_INGENIC=yCONFIG_BATTERY_WM97XX=yCONFIG_BATTERY_SBS=yCONFIG_CHARGER_SBS=yCONFIG_MANAGER_SBS=yCONFIG_BATTERY_BQ27XXX=yCONFIG_BATTERY_BQ27XXX_I2C=yCONFIG_BATTERY_BQ27XXX_HDQ=yCONFIG_BATTERY_BQ27XXX_DT_UPDATES_NVM=yCONFIG_BATTERY_DA9030=yCONFIG_BATTERY_DA9052=yCONFIG_CHARGER_DA9150=yCONFIG_BATTERY_DA9150=yCONFIG_CHARGER_AXP20X=yCONFIG_BATTERY_AXP20X=yCONFIG_AXP20X_POWER=yCONFIG_BATTERY_MAX17040=yCONFIG_BATTERY_MAX17042=yCONFIG_BATTERY_MAX1721X=yCONFIG_BATTERY_TWL4030_MADC=yCONFIG_CHARGER_88PM860X=yCONFIG_CHARGER_PCF50633=yCONFIG_BATTERY_RX51=yCONFIG_CHARGER_CPCAP=yCONFIG_CHARGER_ISP1704=yCONFIG_CHARGER_MAX8903=yCONFIG_CHARGER_TWL4030=yCONFIG_CHARGER_LP8727=yCONFIG_CHARGER_LP8788=yCONFIG_CHARGER_GPIO=yCONFIG_CHARGER_MANAGER=yCONFIG_CHARGER_LT3651=yCONFIG_CHARGER_LTC4162L=yCONFIG_CHARGER_MAX14577=yCONFIG_CHARGER_DETECTOR_MAX14656=yCONFIG_CHARGER_MAX77650=yCONFIG_CHARGER_MAX77693=yCONFIG_CHARGER_MAX77976=yCONFIG_CHARGER_MAX8997=yCONFIG_CHARGER_MAX8998=yCONFIG_CHARGER_MP2629=yCONFIG_CHARGER_MT6360=yCONFIG_CHARGER_MT6370=yCONFIG_CHARGER_QCOM_SMBB=yCONFIG_CHARGER_BQ2415X=yCONFIG_CHARGER_BQ24190=yCONFIG_CHARGER_BQ24257=yCONFIG_CHARGER_BQ24735=yCONFIG_CHARGER_BQ2515X=yCONFIG_CHARGER_BQ25890=yCONFIG_CHARGER_BQ25980=yCONFIG_CHARGER_BQ256XX=yCONFIG_CHARGER_RK817=yCONFIG_CHARGER_SMB347=yCONFIG_CHARGER_TPS65090=yCONFIG_CHARGER_TPS65217=yCONFIG_BATTERY_GAUGE_LTC2941=yCONFIG_BATTERY_GOLDFISH=yCONFIG_BATTERY_RT5033=yCONFIG_CHARGER_RT9455=yCONFIG_CHARGER_CROS_USBPD=yCONFIG_CHARGER_CROS_PCHG=yCONFIG_CHARGER_SC2731=yCONFIG_FUEL_GAUGE_SC27XX=yCONFIG_CHARGER_UCS1002=yCONFIG_CHARGER_BD99954=yCONFIG_RN5T618_POWER=yCONFIG_BATTERY_ACER_A500=yCONFIG_BATTERY_UG3105=yCONFIG_HWMON=yCONFIG_HWMON_VID=yCONFIG_HWMON_DEBUG_CHIP=y
#
# Native drivers
#CONFIG_SENSORS_AD7314=y CONFIG_SENSORS_AD7414=y CONFIG_SENSORS_AD7418=y CONFIG_SENSORS_ADM1025=y CONFIG_SENSORS_ADM1026=y CONFIG_SENSORS_ADM1029=y CONFIG_SENSORS_ADM1031=y CONFIG_SENSORS_ADM1177=y CONFIG_SENSORS_ADM9240=y CONFIG_SENSORS_ADT7X10=y CONFIG_SENSORS_ADT7310=y CONFIG_SENSORS_ADT7410=y CONFIG_SENSORS_ADT7411=y CONFIG_SENSORS_ADT7462=y CONFIG_SENSORS_ADT7470=y CONFIG_SENSORS_ADT7475=y CONFIG_SENSORS_AHT10=y CONFIG_SENSORS_AQUACOMPUTER_D5NEXT=y CONFIG_SENSORS_AS370=y CONFIG_SENSORS_ASC7621=y CONFIG_SENSORS_AXI_FAN_CONTROL=y CONFIG_SENSORS_ARM_SCMI=y CONFIG_SENSORS_ARM_SCPI=y CONFIG_SENSORS_ASB100=y CONFIG_SENSORS_ASPEED=yCONFIG_SENSORS_ATXP1=y CONFIG_SENSORS_BT1_PVT=y CONFIG_SENSORS_BT1_PVT_ALARMS=y CONFIG_SENSORS_CORSAIR_CPRO=y CONFIG_SENSORS_CORSAIR_PSU=y CONFIG_SENSORS_DRIVETEMP=y CONFIG_SENSORS_DS620=yCONFIG_SENSORS_DS1621=y CONFIG_SENSORS_DA9052_ADC=y CONFIG_SENSORS_DA9055=y CONFIG_SENSORS_I5K_AMB=y CONFIG_SENSORS_SPARX5=y CONFIG_SENSORS_F75375S=yCONFIG_SENSORS_GSC=y CONFIG_SENSORS_MC13783_ADC=y CONFIG_SENSORS_FSCHMD=y CONFIG_SENSORS_FTSTEUTATES=y CONFIG_SENSORS_GL518SM=y CONFIG_SENSORS_GL520SM=y CONFIG_SENSORS_G760A=yCONFIG_SENSORS_G762=y CONFIG_SENSORS_GPIO_FAN=y CONFIG_SENSORS_HIH6130=y CONFIG_SENSORS_IBMAEM=y CONFIG_SENSORS_IBMPEX=y CONFIG_SENSORS_IIO_HWMON=y CONFIG_SENSORS_JC42=y CONFIG_SENSORS_POWR1220=y CONFIG_SENSORS_LAN966X=y CONFIG_SENSORS_LINEAGE=y CONFIG_SENSORS_LOCHNAGAR=y CONFIG_SENSORS_LTC2945=y CONFIG_SENSORS_LTC2947=y CONFIG_SENSORS_LTC2947_I2C=y CONFIG_SENSORS_LTC2947_SPI=y CONFIG_SENSORS_LTC2990=y CONFIG_SENSORS_LTC2992=y CONFIG_SENSORS_LTC4151=y CONFIG_SENSORS_LTC4215=y CONFIG_SENSORS_LTC4222=y CONFIG_SENSORS_LTC4245=y CONFIG_SENSORS_LTC4260=y CONFIG_SENSORS_LTC4261=y CONFIG_SENSORS_MAX1111=y CONFIG_SENSORS_MAX127=y CONFIG_SENSORS_MAX16065=y CONFIG_SENSORS_MAX1619=y CONFIG_SENSORS_MAX1668=y CONFIG_SENSORS_MAX197=y CONFIG_SENSORS_MAX31722=y CONFIG_SENSORS_MAX31730=y CONFIG_SENSORS_MAX31760=y CONFIG_SENSORS_MAX6620=y CONFIG_SENSORS_MAX6621=y CONFIG_SENSORS_MAX6639=y CONFIG_SENSORS_MAX6650=y CONFIG_SENSORS_MAX6697=y CONFIG_SENSORS_MAX31790=y CONFIG_SENSORS_MCP3021=y CONFIG_SENSORS_MLXREG_FAN=y CONFIG_SENSORS_TC654=y CONFIG_SENSORS_TPS23861=y CONFIG_SENSORS_MENF21BMC_HWMON=y CONFIG_SENSORS_MR75203=y CONFIG_SENSORS_ADCXX=yCONFIG_SENSORS_LM63=yCONFIG_SENSORS_LM70=yCONFIG_SENSORS_LM73=yCONFIG_SENSORS_LM75=yCONFIG_SENSORS_LM77=yCONFIG_SENSORS_LM78=yCONFIG_SENSORS_LM80=yCONFIG_SENSORS_LM83=yCONFIG_SENSORS_LM85=yCONFIG_SENSORS_LM87=yCONFIG_SENSORS_LM90=yCONFIG_SENSORS_LM92=yCONFIG_SENSORS_LM93=yCONFIG_SENSORS_LM95234=y CONFIG_SENSORS_LM95241=y CONFIG_SENSORS_LM95245=y CONFIG_SENSORS_NTC_THERMISTOR=y CONFIG_SENSORS_NCT6775_CORE=y CONFIG_SENSORS_NCT6775_I2C=y CONFIG_SENSORS_NCT7802=y CONFIG_SENSORS_NCT7904=y CONFIG_SENSORS_NPCM7XX=y CONFIG_SENSORS_NSA320=y CONFIG_SENSORS_NZXT_KRAKEN2=y CONFIG_SENSORS_NZXT_SMART2=y CONFIG_SENSORS_OCC_P8_I2C=y CONFIG_SENSORS_OCC_P9_SBE=y CONFIG_SENSORS_OCC=yCONFIG_SENSORS_PCF8591=y CONFIG_SENSORS_PECI_CPUTEMP=y CONFIG_SENSORS_PECI_DIMMTEMP=y CONFIG_SENSORS_PECI=yCONFIG_PMBUS=yCONFIG_SENSORS_PMBUS=y CONFIG_SENSORS_ADM1266=y CONFIG_SENSORS_ADM1275=y CONFIG_SENSORS_BEL_PFE=y CONFIG_SENSORS_BPA_RS600=y CONFIG_SENSORS_DELTA_AHE50DC_FAN=y CONFIG_SENSORS_FSP_3Y=y CONFIG_SENSORS_IBM_CFFPS=y CONFIG_SENSORS_DPS920AB=y CONFIG_SENSORS_INSPUR_IPSPS=y CONFIG_SENSORS_IR35221=y CONFIG_SENSORS_IR36021=y CONFIG_SENSORS_IR38064=y CONFIG_SENSORS_IR38064_REGULATOR=y CONFIG_SENSORS_IRPS5401=y CONFIG_SENSORS_ISL68137=y CONFIG_SENSORS_LM25066=y CONFIG_SENSORS_LM25066_REGULATOR=y CONFIG_SENSORS_LT7182S=y CONFIG_SENSORS_LTC2978=y CONFIG_SENSORS_LTC2978_REGULATOR=y CONFIG_SENSORS_LTC3815=y CONFIG_SENSORS_MAX15301=y CONFIG_SENSORS_MAX16064=y CONFIG_SENSORS_MAX16601=y CONFIG_SENSORS_MAX20730=y CONFIG_SENSORS_MAX20751=y CONFIG_SENSORS_MAX31785=y CONFIG_SENSORS_MAX34440=y CONFIG_SENSORS_MAX8688=y CONFIG_SENSORS_MP2888=y CONFIG_SENSORS_MP2975=y CONFIG_SENSORS_MP5023=y CONFIG_SENSORS_PIM4328=y CONFIG_SENSORS_PLI1209BC=y CONFIG_SENSORS_PLI1209BC_REGULATOR=y CONFIG_SENSORS_PM6764TR=y CONFIG_SENSORS_PXE1610=y CONFIG_SENSORS_Q54SJ108A2=y CONFIG_SENSORS_STPDDC60=y CONFIG_SENSORS_TPS40422=y CONFIG_SENSORS_TPS53679=y CONFIG_SENSORS_TPS546D24=y CONFIG_SENSORS_UCD9000=y CONFIG_SENSORS_UCD9200=y CONFIG_SENSORS_XDPE152=y CONFIG_SENSORS_XDPE122=y CONFIG_SENSORS_XDPE122_REGULATOR=y CONFIG_SENSORS_ZL6100=y CONFIG_SENSORS_PWM_FAN=y CONFIG_SENSORS_RASPBERRYPI_HWMON=y CONFIG_SENSORS_SL28CPLD=y CONFIG_SENSORS_SBTSI=yCONFIG_SENSORS_SBRMI=yCONFIG_SENSORS_SHT15=yCONFIG_SENSORS_SHT21=y
CONFIG_SENSORS_SHT3x=y
CONFIG_SENSORS_SHT4x=yCONFIG_SENSORS_SHTC1=y CONFIG_SENSORS_SIS5595=y CONFIG_SENSORS_SY7636A=y CONFIG_SENSORS_EMC1403=y CONFIG_SENSORS_EMC2103=y CONFIG_SENSORS_EMC2305=y CONFIG_SENSORS_EMC6W201=y CONFIG_SENSORS_SMSC47M192=y CONFIG_SENSORS_STTS751=y CONFIG_SENSORS_SMM665=y CONFIG_SENSORS_ADC128D818=y CONFIG_SENSORS_ADS7828=y CONFIG_SENSORS_ADS7871=y CONFIG_SENSORS_AMC6821=y CONFIG_SENSORS_INA209=y CONFIG_SENSORS_INA2XX=y CONFIG_SENSORS_INA238=y CONFIG_SENSORS_INA3221=yCONFIG_SENSORS_TC74=yCONFIG_SENSORS_THMC50=y CONFIG_SENSORS_TMP102=y CONFIG_SENSORS_TMP103=y CONFIG_SENSORS_TMP108=y CONFIG_SENSORS_TMP401=y CONFIG_SENSORS_TMP421=y CONFIG_SENSORS_TMP464=y CONFIG_SENSORS_TMP513=y CONFIG_SENSORS_VIA686A=y CONFIG_SENSORS_VT8231=y CONFIG_SENSORS_W83773G=y CONFIG_SENSORS_W83781D=y CONFIG_SENSORS_W83791D=y CONFIG_SENSORS_W83792D=y CONFIG_SENSORS_W83793=y CONFIG_SENSORS_W83795=y CONFIG_SENSORS_W83795_FANCTRL=y CONFIG_SENSORS_W83L785TS=y CONFIG_SENSORS_W83L786NG=y CONFIG_SENSORS_WM831X=y CONFIG_SENSORS_WM8350=y CONFIG_SENSORS_INTEL_M10_BMC_HWMON=y CONFIG_THERMAL=yCONFIG_THERMAL_NETLINK=y CONFIG_THERMAL_STATISTICS=y CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 CONFIG_THERMAL_HWMON=yCONFIG_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=yCONFIG_CPU_FREQ_THERMAL=y CONFIG_CPU_IDLE_THERMAL=y CONFIG_DEVFREQ_THERMAL=y CONFIG_THERMAL_EMULATION=y CONFIG_THERMAL_MMIO=yCONFIG_HISI_THERMAL=yCONFIG_IMX_THERMAL=yCONFIG_IMX_SC_THERMAL=y CONFIG_IMX8MM_THERMAL=yCONFIG_K3_THERMAL=yCONFIG_MAX77620_THERMAL=y CONFIG_QORIQ_THERMAL=yCONFIG_SPEAR_THERMAL=yCONFIG_SUN8I_THERMAL=y CONFIG_ROCKCHIP_THERMAL=y CONFIG_RCAR_THERMAL=y CONFIG_RCAR_GEN3_THERMAL=y CONFIG_RZG2L_THERMAL=y CONFIG_KIRKWOOD_THERMAL=y CONFIG_DOVE_THERMAL=yCONFIG_ARMADA_THERMAL=y CONFIG_DA9062_THERMAL=yCONFIG_MTK_THERMAL=y
#
# Intel thermal drivers
#
#
# ACPI INT340X thermal drivers
#
# end of ACPI INT340X thermal drivers # end of Intel thermal drivers
#
# Broadcom thermal drivers
#CONFIG_BCM2711_THERMAL=yCONFIG_BCM2835_THERMAL=yCONFIG_BRCMSTB_THERMAL=yCONFIG_BCM_NS_THERMAL=yCONFIG_BCM_SR_THERMAL=y
# end of Broadcom thermal drivers
#
# Texas Instruments thermal drivers
#CONFIG_TI_SOC_THERMAL=yCONFIG_TI_THERMAL=yCONFIG_OMAP3_THERMAL=yCONFIG_OMAP4_THERMAL=yCONFIG_OMAP5_THERMAL=yCONFIG_DRA752_THERMAL=y
# end of Texas Instruments thermal drivers
#
# Samsung thermal drivers
#CONFIG_EXYNOS_THERMAL=y
# end of Samsung thermal drivers
#
# NVIDIA Tegra thermal drivers
#CONFIG_TEGRA_SOCTHERM=yCONFIG_TEGRA_BPMP_THERMAL=yCONFIG_TEGRA30_TSENSOR=y
# end of NVIDIA Tegra thermal drivers
CONFIG_GENERIC_ADC_THERMAL=y
#
# Qualcomm thermal drivers
#CONFIG_QCOM_TSENS=yCONFIG_QCOM_SPMI_ADC_TM5=yCONFIG_QCOM_SPMI_TEMP_ALARM=y
# end of Qualcomm thermal drivers
CONFIG_UNIPHIER_THERMAL=yCONFIG_SPRD_THERMAL=yCONFIG_KHADAS_MCU_FAN_THERMAL=yCONFIG_WATCHDOG=yCONFIG_WATCHDOG_CORE=yCONFIG_WATCHDOG_NOWAYOUT=yCONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=yCONFIG_WATCHDOG_OPEN_TIMEOUT=0CONFIG_WATCHDOG_SYSFS=yCONFIG_WATCHDOG_HRTIMER_PRETIMEOUT=y
#
# Watchdog Pretimeout Governors
#CONFIG_WATCHDOG_PRETIMEOUT_GOV=y CONFIG_WATCHDOG_PRETIMEOUT_GOV_SEL=m CONFIG_WATCHDOG_PRETIMEOUT_GOV_NOOP=y CONFIG_WATCHDOG_PRETIMEOUT_GOV_PANIC=y
# CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_NOOP is not set CONFIG_WATCHDOG_PRETIMEOUT_DEFAULT_GOV_PANIC=y
7,986 lines not shown · raw message
Part of this message is not shown here. View the raw message.
PATCH 4/11 sfc: add ef100 MAE counter support functions
In reply to [email protected]From: Edward Cree <[email protected]>
Start and stop MAE counter streaming, and grant credits.
--- drivers/net/ethernet/sfc/mae.c | 111 ++++++++++++++++++++++++++++++++ drivers/net/ethernet/sfc/mae.h | 4 ++ drivers/net/ethernet/sfc/mcdi.h | 5 ++ drivers/net/ethernet/sfc/tc.c | 1 + drivers/net/ethernet/sfc/tc.h | 18 ++++++ 5 files changed, 139 insertions(+)
drivers/net/ethernet/sfc/mae.c +111 -0
@@ -112,6 +112,117 @@ int efx_mae_lookup_mport(struct efx_nic *efx, u32 selector, u32 *id)return 0 ; } +int efx_mae_start_counters (struct efx_nic *efx,struct efx_rx_queue *rx_queue) +{ +MCDI_DECLARE_BUF (inbuf,MC_CMD_MAE_COUNTERS_STREAM_START_V2_IN_LEN ); +MCDI_DECLARE_BUF (outbuf,MC_CMD_MAE_COUNTERS_STREAM_START_OUT_LEN ); +u32 out_flags; +size_t outlen; +int rc; + +MCDI_SET_WORD (inbuf,MAE_COUNTERS_STREAM_START_V2_IN_QID , +efx_rx_queue_index (rx_queue)); +MCDI_SET_WORD (inbuf,MAE_COUNTERS_STREAM_START_V2_IN_PACKET_SIZE , + efx->net_dev->mtu); +MCDI_SET_DWORD (inbuf,MAE_COUNTERS_STREAM_START_V2_IN_COUNTER_TYPES_MASK , +BIT (MAE_COUNTER_TYPE_AR ) |BIT (MAE_COUNTER_TYPE_CT ) | +BIT (MAE_COUNTER_TYPE_OR )); + rc =efx_mcdi_rpc (efx,MC_CMD_MAE_COUNTERS_STREAM_START , + inbuf,sizeof (inbuf), outbuf,sizeof (outbuf), &outlen); +if (rc) +return rc; +if (outlen <sizeof (outbuf)) +return -EIO ; + out_flags =MCDI_DWORD (outbuf,MAE_COUNTERS_STREAM_START_OUT_FLAGS ); +if (out_flags &BIT (MC_CMD_MAE_COUNTERS_STREAM_START_OUT_USES_CREDITS_OFST )) { +netif_dbg (efx, drv, efx->net_dev, +"MAE counter stream uses credits\n" ); + rx_queue->grant_credits = true; + out_flags &= ~BIT (MC_CMD_MAE_COUNTERS_STREAM_START_OUT_USES_CREDITS_OFST ); + } +if (out_flags) { +netif_err (efx, drv, efx->net_dev, +"MAE counter stream start: unrecognised flags %x\n" , + out_flags); + goto out_stop; + } +return 0 ; +out_stop: +efx_mae_stop_counters (efx, rx_queue); +return -EOPNOTSUPP ; +} + +static bool efx_mae_counters_flushed (u32 *flush_gen,u32 *seen_gen) +{ +int i; + +for (i =0 ; i <EFX_TC_COUNTER_TYPE_MAX ; i++) +if ((s32)(flush_gen[i] - seen_gen[i]) >0 ) +return false; +return true; +} + +int efx_mae_stop_counters (struct efx_nic *efx,struct efx_rx_queue *rx_queue) +{ +MCDI_DECLARE_BUF (outbuf,MC_CMD_MAE_COUNTERS_STREAM_STOP_V2_OUT_LENMAX ); +MCDI_DECLARE_BUF (inbuf,MC_CMD_MAE_COUNTERS_STREAM_STOP_IN_LEN ); +size_t outlen; +int rc, i; + +MCDI_SET_WORD (inbuf,MAE_COUNTERS_STREAM_STOP_IN_QID , +efx_rx_queue_index (rx_queue)); + rc =efx_mcdi_rpc (efx,MC_CMD_MAE_COUNTERS_STREAM_STOP , + inbuf,sizeof (inbuf), outbuf,sizeof (outbuf), &outlen); + +if (rc) +return rc; + +netif_dbg (efx, drv, efx->net_dev,"Draining counters:\n" ); +/* Only process received generation counts */ +for (i =0 ; (i < (outlen /4 )) && (i <EFX_TC_COUNTER_TYPE_MAX ); i++) { + efx->tc->flush_gen[i] =MCDI_ARRAY_DWORD (outbuf, +MAE_COUNTERS_STREAM_STOP_V2_OUT_GENERATION_COUNT , + i); +netif_dbg (efx, drv, efx->net_dev, +"\ttype %u, awaiting gen %u\n" , i, + efx->tc->flush_gen[i]); + } + + efx->tc->flush_counters = true; + +/* Drain can take up to 2 seconds owing to FWRIVERHD-2884; whatever +* timeout we use, that delay is added to unload on nonresponsive +* hardware, so 2500ms seems like a reasonable compromise. +*/ +if (!wait_event_timeout (efx->tc->flush_wq, +efx_mae_counters_flushed (efx->tc->flush_gen, + efx->tc->seen_gen), +msecs_to_jiffies (2500 ))) +netif_warn (efx, drv, efx->net_dev, +"Failed to drain counters RXQ, FW may be unhappy\n" ); + + efx->tc->flush_counters = false; + +return rc; +} + +void efx_mae_counters_grant_credits (struct work_struct *work) +{ +MCDI_DECLARE_BUF (inbuf,MC_CMD_MAE_COUNTERS_STREAM_GIVE_CREDITS_IN_LEN ); + struct efx_rx_queue *rx_queue = container_of(work, struct efx_rx_queue, + grant_work); +struct efx_nic *efx = rx_queue->efx; +unsigned int credits; + +BUILD_BUG_ON (MC_CMD_MAE_COUNTERS_STREAM_GIVE_CREDITS_OUT_LEN ); + credits =READ_ONCE (rx_queue->notified_count) - rx_queue->granted_count; +MCDI_SET_DWORD (inbuf,MAE_COUNTERS_STREAM_GIVE_CREDITS_IN_NUM_CREDITS , + credits); +if (!efx_mcdi_rpc (efx,MC_CMD_MAE_COUNTERS_STREAM_GIVE_CREDITS , + inbuf,sizeof (inbuf),NULL ,0 ,NULL )) + rx_queue->granted_count += credits; +} +static int efx_mae_get_basic_caps (struct efx_nic *efx,struct mae_caps *caps) {MCDI_DECLARE_BUF (outbuf,MC_CMD_MAE_GET_CAPS_OUT_LEN );
drivers/net/ethernet/sfc/mae.h +4 -0
@@ -27,6 +27,10 @@ void efx_mae_mport_mport(struct efx_nic *efx, u32 mport_id, u32 *out);int efx_mae_lookup_mport (struct efx_nic *efx,u32 selector,u32 *id); +int efx_mae_start_counters (struct efx_nic *efx,struct efx_rx_queue *rx_queue); +int efx_mae_stop_counters (struct efx_nic *efx,struct efx_rx_queue *rx_queue); +void efx_mae_counters_grant_credits (struct work_struct *work); +#define MAE_NUM_FIELDS (MAE_FIELD_ENC_VNET_ID + 1)struct mae_caps {
drivers/net/ethernet/sfc/mcdi.h +5 -0
@@ -221,6 +221,11 @@ void efx_mcdi_sensor_event(struct efx_nic *efx, efx_qword_t *ev);#define MCDI_BYTE (_buf, _field) \ ((void)BUILD_BUG_ON_ZERO(MC_CMD_ ## _field ## _LEN != 1), \ *MCDI_PTR(_buf, _field)) +#define MCDI_SET_WORD (_buf, _field, _value) do { \ + BUILD_BUG_ON(MC_CMD_ ## _field ## _LEN != 2); \ + BUILD_BUG_ON(MC_CMD_ ## _field ## _OFST & 1); \ + *(__force __le16 *)MCDI_PTR(_buf, _field) = cpu_to_le16(_value);\ + } while (0)#define MCDI_WORD (_buf, _field) \ ((u16)BUILD_BUG_ON_ZERO(MC_CMD_ ## _field ## _LEN != 2) + \ le16_to_cpu(*(__force const __le16 *)MCDI_PTR(_buf, _field)))
drivers/net/ethernet/sfc/tc.c +1 -0
@@ -751,6 +751,7 @@ int efx_init_struct_tc(struct efx_nic *efx)INIT_LIST_HEAD (&efx->tc->block_list);mutex_init (&efx->tc->mutex); +init_waitqueue_head (&efx->tc->flush_wq); rc =rhashtable_init (&efx->tc->match_action_ht, &efx_tc_match_action_ht_params);if (rc <0 ) goto fail_match_action_ht;
drivers/net/ethernet/sfc/tc.h +18 -0
@@ -14,6 +14,14 @@#include <net/flow_offload.h> #include <linux/rhashtable.h> #include "net_driver.h" +#include "mcdi_pcol.h" /* for MAE_COUNTER_TYPE_* */ + +enum efx_tc_counter_type { +EFX_TC_COUNTER_TYPE_AR =MAE_COUNTER_TYPE_AR , +EFX_TC_COUNTER_TYPE_CT =MAE_COUNTER_TYPE_CT , +EFX_TC_COUNTER_TYPE_OR =MAE_COUNTER_TYPE_OR , +EFX_TC_COUNTER_TYPE_MAX +};#define IS_ALL_ONES (v) (!(typeof (v))~(v))
@@ -79,6 +87,12 @@ enum efx_tc_rule_prios {* @reps_filter_uc: VNIC filter for representor unicast RX (promisc) * @reps_filter_mc: VNIC filter for representor multicast RX (allmulti) * @reps_mport_vport_id: vport_id for representor RX filters +* @flush_counters: counters have been stopped, waiting for drain +* @flush_gen: final generation count per type array as reported by +* MC_CMD_MAE_COUNTERS_STREAM_STOP +* @seen_gen: most recent generation count per type as seen by efx_tc_rx() +* @flush_wq: wait queue used by efx_mae_stop_counters() to wait for +* MAE counters RXQ to finish draining * @dflt: Match-action rules for default switching; at priority * %EFX_TC_PRIO_DFLT. Named by *ingress* port * @dflt.pf: rule for traffic ingressing from PF (egresses to wire)
@@ -92,6 +106,10 @@ struct efx_tc_state {struct rhashtable match_action_ht;u32 reps_mport_id, reps_mport_vport_id;s32 reps_filter_uc, reps_filter_mc; +bool flush_counters; +u32 flush_gen[EFX_TC_COUNTER_TYPE_MAX ]; +u32 seen_gen[EFX_TC_COUNTER_TYPE_MAX ]; +wait_queue_head_t flush_wq;struct {struct efx_tc_flow_rule pf;struct efx_tc_flow_rule wire;
PATCH 5/11 sfc: add extra RX channel to receive MAE counter updates on ef100
In reply to [email protected]From: Edward Cree <[email protected]>
Currently there is no counter-allocating machinery to connect the
resulting counter update values to; that will be added in a subsequent patch.
--- drivers/net/ethernet/sfc/Makefile | 2 +- drivers/net/ethernet/sfc/mae_counter_format.h | 73 +++++ drivers/net/ethernet/sfc/net_driver.h | 3 +- drivers/net/ethernet/sfc/tc.c | 1 + drivers/net/ethernet/sfc/tc.h | 9 +- drivers/net/ethernet/sfc/tc_counters.c | 269 ++++++++++++++++++ drivers/net/ethernet/sfc/tc_counters.h | 26 ++ 7 files changed, 373 insertions(+), 10 deletions(-) create mode 100644 drivers/net/ethernet/sfc/mae_counter_format.h create mode 100644 drivers/net/ethernet/sfc/tc_counters.c create mode 100644 drivers/net/ethernet/sfc/tc_counters.h
drivers/net/ethernet/sfc/Makefile +1 -1
@@ -9,7 +9,7 @@ sfc-y += efx.o efx_common.o efx_channels.o nic.o \ ef100_ethtool.o ef100_rx.o ef100_tx.o sfc-$(CONFIG_SFC_MTD) += mtd.o sfc-$(CONFIG_SFC_SRIOV) += sriov.o ef10_sriov.o ef100_sriov.o ef100_rep.o \ - mae.o tc.o tc_bindings.o + mae.o tc.o tc_bindings.o tc_counters.o obj-$(CONFIG_SFC) += sfc.o
drivers/net/ethernet/sfc/mae_counter_format.h new file +73 -0
73 lines not on this page · raw message
drivers/net/ethernet/sfc/net_driver.h +2 -1
@@ -56,7 +56,8 @@#define EFX_MAX_RX_QUEUES EFX_MAX_CHANNELS#define EFX_EXTRA_CHANNEL_IOV 0#define EFX_EXTRA_CHANNEL_PTP 1 -#define EFX_MAX_EXTRA_CHANNELS 2U +#define EFX_EXTRA_CHANNEL_TC 2 +#define EFX_MAX_EXTRA_CHANNELS 3U/* Checksum generation is a per-queue option in hardware, so each * queue visible to the networking core is backed by two hardware TX
drivers/net/ethernet/sfc/tc.c +1 -0
@@ -761,6 +761,7 @@ int efx_init_struct_tc(struct efx_nic *efx) efx->tc->dflt.pf.fw_id =MC_CMD_MAE_ACTION_RULE_INSERT_OUT_ACTION_RULE_ID_NULL ;INIT_LIST_HEAD (&efx->tc->dflt.wire.acts.list); efx->tc->dflt.wire.fw_id =MC_CMD_MAE_ACTION_RULE_INSERT_OUT_ACTION_RULE_ID_NULL ; + efx->extra_channel_type[EFX_EXTRA_CHANNEL_TC ] = &efx_tc_channel_type;return 0 ; fail_match_action_ht:mutex_destroy (&efx->tc->mutex);
drivers/net/ethernet/sfc/tc.h +1 -8
@@ -14,14 +14,7 @@#include <net/flow_offload.h> #include <linux/rhashtable.h> #include "net_driver.h" -#include "mcdi_pcol.h" /* for MAE_COUNTER_TYPE_* */ - -enum efx_tc_counter_type { -EFX_TC_COUNTER_TYPE_AR =MAE_COUNTER_TYPE_AR , -EFX_TC_COUNTER_TYPE_CT =MAE_COUNTER_TYPE_CT , -EFX_TC_COUNTER_TYPE_OR =MAE_COUNTER_TYPE_OR , -EFX_TC_COUNTER_TYPE_MAX -}; +#include "tc_counters.h" #define IS_ALL_ONES (v) (!(typeof (v))~(v))
drivers/net/ethernet/sfc/tc_counters.c new file +269 -0
269 lines not on this page · raw message
drivers/net/ethernet/sfc/tc_counters.h new file +26 -0
@@ -0,0 +1,26 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +/**************************************************************************** +* Driver for Solarflare network controllers and boards +* Copyright 2022 Advanced Micro Devices, Inc. +* +* This program is free software; you can redistribute it and/or modify it +* under the terms of the GNU General Public License version 2 as published +* by the Free Software Foundation, incorporated herein by reference. +*/ + +#ifndef EFX_TC_COUNTERS_H +#define EFX_TC_COUNTERS_H +#include "net_driver.h" + +#include "mcdi_pcol.h" /* for MAE_COUNTER_TYPE_* */ + +enum efx_tc_counter_type { +EFX_TC_COUNTER_TYPE_AR =MAE_COUNTER_TYPE_AR , +EFX_TC_COUNTER_TYPE_CT =MAE_COUNTER_TYPE_CT , +EFX_TC_COUNTER_TYPE_OR =MAE_COUNTER_TYPE_OR , +EFX_TC_COUNTER_TYPE_MAX +}; + +extern const struct efx_channel_type efx_tc_channel_type; + +#endif /* EFX_TC_COUNTERS_H */
PATCH 6/11 sfc: add hashtables for MAE counters and counter ID mappings
In reply to [email protected]From: Edward Cree <[email protected]>
Nothing populates them yet.
--- drivers/net/ethernet/sfc/tc.c | 6 +++ drivers/net/ethernet/sfc/tc.h | 4 ++ drivers/net/ethernet/sfc/tc_counters.c | 61 ++++++++++++++++++++++++++ drivers/net/ethernet/sfc/tc_counters.h | 19 ++++++++ 4 files changed, 90 insertions(+)
drivers/net/ethernet/sfc/tc.c +6 -0
@@ -752,6 +752,9 @@ int efx_init_struct_tc(struct efx_nic *efx)mutex_init (&efx->tc->mutex);init_waitqueue_head (&efx->tc->flush_wq); + rc =efx_tc_init_counters (efx); +if (rc <0 ) + goto fail_counters; rc =rhashtable_init (&efx->tc->match_action_ht, &efx_tc_match_action_ht_params);if (rc <0 ) goto fail_match_action_ht;
@@ -764,6 +767,8 @@ int efx_init_struct_tc(struct efx_nic *efx) efx->extra_channel_type[EFX_EXTRA_CHANNEL_TC ] = &efx_tc_channel_type;return 0 ; fail_match_action_ht: +efx_tc_destroy_counters (efx); +fail_counters:mutex_destroy (&efx->tc->mutex);kfree (efx->tc->caps); fail_alloc_caps:
@@ -784,6 +789,7 @@ void efx_fini_struct_tc(struct efx_nic *efx) MC_CMD_MAE_ACTION_RULE_INSERT_OUT_ACTION_RULE_ID_NULL);rhashtable_free_and_destroy (&efx->tc->match_action_ht, efx_tc_flow_free, efx); +efx_tc_fini_counters (efx);mutex_unlock (&efx->tc->mutex);mutex_destroy (&efx->tc->mutex);kfree (efx->tc->caps);
drivers/net/ethernet/sfc/tc.h +4 -0
@@ -75,6 +75,8 @@ enum efx_tc_rule_prios {* @caps: MAE capabilities reported by MCDI * @block_list: List of &struct efx_tc_block_binding * @mutex: Used to serialise operations on TC hashtables +* @counter_ht: Hashtable of TC counters (FW IDs and counter values) +* @counter_id_ht: Hashtable mapping TC counter cookies to counters * @match_action_ht: Hashtable of TC match-action rules * @reps_mport_id: MAE port allocated for representor RX * @reps_filter_uc: VNIC filter for representor unicast RX (promisc)
@@ -96,6 +98,8 @@ struct efx_tc_state {struct mae_caps *caps;struct list_head block_list;struct mutex mutex; +struct rhashtable counter_ht; +struct rhashtable counter_id_ht;struct rhashtable match_action_ht;u32 reps_mport_id, reps_mport_vport_id;s32 reps_filter_uc, reps_filter_mc;
drivers/net/ethernet/sfc/tc_counters.c +61 -0
67 lines not on this page · raw message
drivers/net/ethernet/sfc/tc_counters.h +19 -0
@@ -10,6 +10,7 @@#ifndef EFX_TC_COUNTERS_H #define EFX_TC_COUNTERS_H +#include <linux/refcount.h> #include "net_driver.h" #include "mcdi_pcol.h" /* for MAE_COUNTER_TYPE_* */
@@ -21,6 +22,24 @@ enum efx_tc_counter_type {EFX_TC_COUNTER_TYPE_MAX }; +struct efx_tc_counter { +u32 fw_id;/* index in firmware counter table */ +enum efx_tc_counter_type type; +struct rhash_head linkage;/* efx->tc->counter_ht */ +}; + +struct efx_tc_counter_index { +unsigned long cookie; +struct rhash_head linkage;/* efx->tc->counter_id_ht */ +refcount_t ref; +struct efx_tc_counter *cnt; +}; + +/* create/uncreate/teardown hashtables */ +int efx_tc_init_counters (struct efx_nic *efx); +void efx_tc_destroy_counters (struct efx_nic *efx); +void efx_tc_fini_counters (struct efx_nic *efx); +extern const struct efx_channel_type efx_tc_channel_type;#endif /* EFX_TC_COUNTERS_H */
PATCH 7/11 sfc: add functions to allocate/free MAE counters
In reply to [email protected]From: Edward Cree <[email protected]>
efx_tc_flower_get_counter_index() will create an MAE counter mapped to
the passed (TC filter) cookie, or increment the reference if one already exists for that cookie.
--- drivers/net/ethernet/sfc/mae.c | 51 ++++++++++++ drivers/net/ethernet/sfc/mae.h | 3 + drivers/net/ethernet/sfc/tc_counters.c | 109 +++++++++++++++++++++++++ drivers/net/ethernet/sfc/tc_counters.h | 7 ++ 4 files changed, 170 insertions(+)
drivers/net/ethernet/sfc/mae.c +51 -0
@@ -434,6 +434,57 @@ int efx_mae_match_check_caps(struct efx_nic *efx,#undef CHECK_BIT#undef CHECK +int efx_mae_allocate_counter (struct efx_nic *efx,struct efx_tc_counter *cnt) +{ +MCDI_DECLARE_BUF (outbuf,MC_CMD_MAE_COUNTER_ALLOC_OUT_LEN (1 )); +MCDI_DECLARE_BUF (inbuf,MC_CMD_MAE_COUNTER_ALLOC_V2_IN_LEN ); +size_t outlen; +int rc; + +if (!cnt) +return -EINVAL ; + +MCDI_SET_DWORD (inbuf,MAE_COUNTER_ALLOC_V2_IN_REQUESTED_COUNT ,1 ); +MCDI_SET_DWORD (inbuf,MAE_COUNTER_ALLOC_V2_IN_COUNTER_TYPE , cnt->type); + rc =efx_mcdi_rpc (efx,MC_CMD_MAE_COUNTER_ALLOC , inbuf,sizeof (inbuf), + outbuf,sizeof (outbuf), &outlen); +if (rc) +return rc; +/* pcol says this can't happen, since count is 1 */ +if (outlen <sizeof (outbuf)) +return -EIO ; + cnt->fw_id =MCDI_DWORD (outbuf,MAE_COUNTER_ALLOC_OUT_COUNTER_ID ); + cnt->gen =MCDI_DWORD (outbuf,MAE_COUNTER_ALLOC_OUT_GENERATION_COUNT ); +return 0 ; +} + +int efx_mae_free_counter (struct efx_nic *efx,struct efx_tc_counter *cnt) +{ +MCDI_DECLARE_BUF (outbuf,MC_CMD_MAE_COUNTER_FREE_OUT_LEN (1 )); +MCDI_DECLARE_BUF (inbuf,MC_CMD_MAE_COUNTER_FREE_V2_IN_LEN ); +size_t outlen; +int rc; + +MCDI_SET_DWORD (inbuf,MAE_COUNTER_FREE_V2_IN_COUNTER_ID_COUNT ,1 ); +MCDI_SET_DWORD (inbuf,MAE_COUNTER_FREE_V2_IN_FREE_COUNTER_ID , cnt->fw_id); +MCDI_SET_DWORD (inbuf,MAE_COUNTER_FREE_V2_IN_COUNTER_TYPE , cnt->type); + rc =efx_mcdi_rpc (efx,MC_CMD_MAE_COUNTER_FREE , inbuf,sizeof (inbuf), + outbuf,sizeof (outbuf), &outlen); +if (rc) +return rc; +/* pcol says this can't happen, since count is 1 */ +if (outlen <sizeof (outbuf)) +return -EIO ; +/* FW freed a different ID than we asked for, should also never happen. +* Warn because it means we've now got a different idea to the FW of +* what counters exist, which could cause mayhem later. +*/ +if (WARN_ON (MCDI_DWORD (outbuf,MAE_COUNTER_FREE_OUT_FREED_COUNTER_ID ) != + cnt->fw_id)) +return -EIO ; +return 0 ; +} +static bool efx_mae_asl_id (u32 id) {return !!(id &BIT (31 ));
drivers/net/ethernet/sfc/mae.h +3 -0
@@ -45,6 +45,9 @@ int efx_mae_match_check_caps(struct efx_nic *efx,const struct efx_tc_match_fields *mask, struct netlink_ext_ack *extack); +int efx_mae_allocate_counter (struct efx_nic *efx,struct efx_tc_counter *cnt); +int efx_mae_free_counter (struct efx_nic *efx,struct efx_tc_counter *cnt); +int efx_mae_alloc_action_set (struct efx_nic *efx,struct efx_tc_action_set *act);int efx_mae_free_action_set (struct efx_nic *efx,u32 fw_id);
drivers/net/ethernet/sfc/tc_counters.c +109 -0
115 lines not on this page · raw message
drivers/net/ethernet/sfc/tc_counters.h +7 -0
@@ -26,6 +26,7 @@ struct efx_tc_counter {u32 fw_id;/* index in firmware counter table */ enum efx_tc_counter_type type;struct rhash_head linkage;/* efx->tc->counter_ht */ +u32 gen;/* Generation count at which this counter is current */ };struct efx_tc_counter_index {
@@ -40,6 +41,12 @@ int efx_tc_init_counters(struct efx_nic *efx);void efx_tc_destroy_counters (struct efx_nic *efx);void efx_tc_fini_counters (struct efx_nic *efx); +struct efx_tc_counter_index *efx_tc_flower_get_counter_index ( +struct efx_nic *efx,unsigned long cookie, +enum efx_tc_counter_type type); +void efx_tc_flower_put_counter_index (struct efx_nic *efx, +struct efx_tc_counter_index *ctr); +extern const struct efx_channel_type efx_tc_channel_type;#endif /* EFX_TC_COUNTERS_H */
PATCH 8/11 sfc: accumulate MAE counter values from update packets
In reply to [email protected]From: Edward Cree <[email protected]>
Add the packet and byte counts to the software running total, and store
the latest jiffies every time the counter is bumped.
--- drivers/net/ethernet/sfc/tc_counters.c | 54 +++++++++++++++++++++++++- drivers/net/ethernet/sfc/tc_counters.h | 4 ++ 2 files changed, 57 insertions(+), 1 deletion(-)
drivers/net/ethernet/sfc/tc_counters.c +53 -1
@@ -86,6 +86,8 @@ static struct efx_tc_counter *efx_tc_flower_allocate_counter(struct efx_nic *efxif (!cnt)return ERR_PTR (-ENOMEM ); +spin_lock_init (&cnt->lock); + cnt->touched = jiffies; cnt->type = type; rc =efx_mae_allocate_counter (efx, cnt);
@@ -131,9 +133,22 @@ static void efx_tc_flower_release_counter(struct efx_nic *efx,* is handled by the generation count. */ synchronize_rcu (); +EFX_WARN_ON_PARANOID (spin_is_locked (&cnt->lock));kfree (cnt); } +static struct efx_tc_counter *efx_tc_flower_find_counter_by_fw_id ( +struct efx_nic *efx,int type,u32 fw_id) +{ +struct efx_tc_counter key = {}; + + key.fw_id = fw_id; + key.type = type; + +return rhashtable_lookup_fast (&efx->tc->counter_ht, &key, + efx_tc_counter_ht_params); +} +/* TC cookie to counter mapping */ void efx_tc_flower_put_counter_index(struct efx_nic *efx,
@@ -241,7 +256,44 @@ static void efx_tc_counter_update(struct efx_nic *efx, u32 counter_idx, u64 packets, u64 bytes, u32 mark) { - /* Software counter objects do not exist yet, for now we ignore this */ + struct efx_tc_counter *cnt; + +rcu_read_lock ();/* Protect against deletion of 'cnt' */ + cnt =efx_tc_flower_find_counter_by_fw_id (efx, counter_type, counter_idx); +if (!cnt) { +/* This can legitimately happen when a counter is removed, +* with updates for the counter still in-flight; however this +* should be an infrequent occurrence. +*/ +if (net_ratelimit ()) +netif_dbg (efx, drv, efx->net_dev, +"Got update for unwanted MAE counter %u type %u\n" , + counter_idx, counter_type); + goto out; + } + +spin_lock_bh (&cnt->lock); +if ((s32 )mark - (s32 )cnt->gen <0 ) { +/* This counter update packet is from before the counter was +* allocated; thus it must be for a previous counter with +* the same ID that has since been freed, and it should be +* ignored. +*/ + }else { +/* Update latest seen generation count. This ensures that +* even a long-lived counter won't start getting ignored if +* the generation count wraps around, unless it somehow +* manages to go 1<<31 generations without an update. +*/ + cnt->gen = mark; +/* update counter values */ + cnt->packets += packets; + cnt->bytes += bytes; + cnt->touched = jiffies; + } +spin_unlock_bh (&cnt->lock); +out: +rcu_read_unlock (); }static void efx_tc_rx_version_1 (struct efx_nic *efx,const u8 *data,u32 mark)
drivers/net/ethernet/sfc/tc_counters.h +4 -0
@@ -26,7 +26,11 @@ struct efx_tc_counter {u32 fw_id;/* index in firmware counter table */ enum efx_tc_counter_type type;struct rhash_head linkage;/* efx->tc->counter_ht */ +spinlock_t lock;/* Serialises updates to counter values */ u32 gen;/* Generation count at which this counter is current */ +u64 packets, bytes; +/* jiffies of the last time we saw packets increase */ +unsigned long touched; };struct efx_tc_counter_index {
PATCH 9/11 sfc: attach an MAE counter to TC actions that need it
In reply to [email protected]From: Edward Cree <[email protected]>
The only actions that expect stats (that sfc HW supports) are gact shot
(drop), mirred redirect and mirred mirror. Since these are 'deliverish' actions that end an action-set, we only require at most one counter per action-set.
--- drivers/net/ethernet/sfc/mae.c | 8 ++++++-- drivers/net/ethernet/sfc/tc.c | 25 +++++++++++++++++++++++++ drivers/net/ethernet/sfc/tc.h | 1 + 3 files changed, 32 insertions(+), 2 deletions(-)
drivers/net/ethernet/sfc/mae.c +6 -2
@@ -501,8 +501,12 @@ int efx_mae_alloc_action_set(struct efx_nic *efx, struct efx_tc_action_set *act) MC_CMD_MAE_MAC_ADDR_ALLOC_OUT_MAC_ID_NULL);MCDI_SET_DWORD (inbuf,MAE_ACTION_SET_ALLOC_IN_DST_MAC_ID ,MC_CMD_MAE_MAC_ADDR_ALLOC_OUT_MAC_ID_NULL ); -MCDI_SET_DWORD (inbuf,MAE_ACTION_SET_ALLOC_IN_COUNTER_ID , -MC_CMD_MAE_COUNTER_ALLOC_OUT_COUNTER_ID_NULL ); +if (act->count && !WARN_ON (!act->count->cnt)) +MCDI_SET_DWORD (inbuf,MAE_ACTION_SET_ALLOC_IN_COUNTER_ID , + act->count->cnt->fw_id); +else +MCDI_SET_DWORD (inbuf,MAE_ACTION_SET_ALLOC_IN_COUNTER_ID , +MC_CMD_MAE_COUNTER_ALLOC_OUT_COUNTER_ID_NULL );MCDI_SET_DWORD (inbuf,MAE_ACTION_SET_ALLOC_IN_COUNTER_LIST_ID ,MC_CMD_MAE_COUNTER_LIST_ALLOC_OUT_COUNTER_LIST_ID_NULL ); MCDI_SET_DWORD(inbuf, MAE_ACTION_SET_ALLOC_IN_ENCAP_HEADER_ID,
drivers/net/ethernet/sfc/tc.c +25 -0
@@ -77,6 +77,8 @@ static void efx_tc_free_action_set(struct efx_nic *efx,*/ list_del (&act->list); } +if (act->count) +efx_tc_flower_put_counter_index (efx, act->count);kfree (act); }
@@ -376,6 +378,28 @@ static int efx_tc_flower_replace(struct efx_nic *efx, goto release; } +if ((fa->id ==FLOW_ACTION_REDIRECT || + fa->id ==FLOW_ACTION_MIRRED || + fa->id ==FLOW_ACTION_DROP ) && fa->hw_stats) { +struct efx_tc_counter_index *ctr; + +if (!(fa->hw_stats &FLOW_ACTION_HW_STATS_DELAYED )) { +NL_SET_ERR_MSG_FMT_MOD (extack,"hw_stats_type %u not supported (only 'delayed')" , + fa->hw_stats); + rc = -EOPNOTSUPP ; + goto release; + } + + ctr =efx_tc_flower_get_counter_index (efx, tc->cookie, +EFX_TC_COUNTER_TYPE_AR ); +if (IS_ERR (ctr)) { + rc =PTR_ERR (ctr); +NL_SET_ERR_MSG_MOD (extack,"Failed to obtain a counter" ); + goto release; + } + act->count = ctr; + } +switch (fa->id) {case FLOW_ACTION_DROP : rc =efx_mae_alloc_action_set (efx, act);
@@ -412,6 +436,7 @@ static int efx_tc_flower_replace(struct efx_nic *efx,if (fa->id ==FLOW_ACTION_REDIRECT )break ;/* end of the line */ /* Mirror, so continue on with saved act */ + save.count =NULL ; act =kzalloc (sizeof (*act),GFP_USER );if (!act) { rc = -ENOMEM ;
drivers/net/ethernet/sfc/tc.h +1 -0
@@ -20,6 +20,7 @@struct efx_tc_action_set {u16 deliver:1 ; +struct efx_tc_counter_index *count;u32 dest_mport;u32 fw_id;/* index of this entry in firmware actions table */ struct list_head list;
PATCH 10/11 sfc: validate MAE action order
In reply to [email protected]From: Edward Cree <[email protected]>
Currently the only actions supported are COUNT and DELIVER, which can only
happen in the right order; but when more actions are added, it will be necessary to check that they are only used in the same order in which the hardware performs them (since the hardware API takes an action *set* in which the order is implicit). For instance, a VLAN pop must not follow a VLAN push. Most practical use-cases should be unaffected by these restrictions.
Add a function efx_tc_flower_action_order_ok() that checks whether it is
appropriate to add a specified action to the existing action-set.
--- drivers/net/ethernet/sfc/tc.c | 50 +++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+)
drivers/net/ethernet/sfc/tc.c +50 -0
@@ -284,6 +284,29 @@ static int efx_tc_flower_parse_match(struct efx_nic *efx,return 0 ; } +/* For details of action order constraints refer to SF-123102-TC-1§12.6.1 */ +enum efx_tc_action_order { +EFX_TC_AO_COUNT , +EFX_TC_AO_DELIVER +}; +/* Determine whether we can add @new action without violating order */ +static bool efx_tc_flower_action_order_ok (const struct efx_tc_action_set *act, +enum efx_tc_action_order new) +{ +switch (new) { +case EFX_TC_AO_COUNT : +if (act->count) +return false; + fallthrough; +case EFX_TC_AO_DELIVER : +return !act->deliver; +default : +/* Bad caller. Whatever they wanted to do, say they can't. */ +WARN_ON_ONCE (1 ); +return false; + } +} + static int efx_tc_flower_replace(struct efx_nic *efx, struct net_device *net_dev, struct flow_cls_offload *tc,
@@ -383,6 +406,25 @@ static int efx_tc_flower_replace(struct efx_nic *efx, fa->id == FLOW_ACTION_DROP) && fa->hw_stats) {struct efx_tc_counter_index *ctr; +/* Currently the only actions that want stats are +* mirred and gact (ok, shot, trap, goto-chain), which +* means we want stats just before delivery. Also, +* note that tunnel_key set shouldn't change the length +* — it's only the subsequent mirred that does that, +* and the stats are taken _before_ the mirred action +* happens. +*/ +if (!efx_tc_flower_action_order_ok (act,EFX_TC_AO_COUNT )) { +/* All supported actions that count either steal +* (gact shot, mirred redirect) or clone act +* (mirred mirror), so we should never get two +* count actions on one action_set. +*/ +NL_SET_ERR_MSG_MOD (extack,"Count-action conflict (can't happen)" ); + rc = -EOPNOTSUPP ; + goto release; + } +if (!(fa->hw_stats &FLOW_ACTION_HW_STATS_DELAYED )) {NL_SET_ERR_MSG_FMT_MOD (extack,"hw_stats_type %u not supported (only 'delayed')" , fa->hw_stats);
@@ -413,6 +455,14 @@ static int efx_tc_flower_replace(struct efx_nic *efx,case FLOW_ACTION_REDIRECT :case FLOW_ACTION_MIRRED : save = *act; + +if (!efx_tc_flower_action_order_ok (act,EFX_TC_AO_DELIVER )) { +/* can't happen */ + rc = -EOPNOTSUPP ; +NL_SET_ERR_MSG_MOD (extack,"Deliver action violates action order (can't happen)" ); + goto release; + } + to_efv =efx_tc_flower_lookup_efv (efx, fa->dev);if (IS_ERR (to_efv)) {NL_SET_ERR_MSG_MOD (extack,"Mirred egress device not on switch" );
PATCH 11/11 sfc: implement counters readout to TC stats
In reply to [email protected]From: Edward Cree <[email protected]>
On FLOW_CLS_STATS, look up the MAE counter by TC cookie, and report the
change in packet and byte count since the last time FLOW_CLS_STATS read them.
--- drivers/net/ethernet/sfc/tc.c | 39 ++++++++++++++++++++++++++ drivers/net/ethernet/sfc/tc_counters.c | 10 +++++++ drivers/net/ethernet/sfc/tc_counters.h | 3 ++ 3 files changed, 52 insertions(+)
drivers/net/ethernet/sfc/tc.c +39 -0
@@ -595,6 +595,42 @@ static int efx_tc_flower_destroy(struct efx_nic *efx,return 0 ; } +static int efx_tc_flower_stats (struct efx_nic *efx,struct net_device *net_dev, +struct flow_cls_offload *tc) +{ +struct netlink_ext_ack *extack = tc->common.extack; +struct efx_tc_counter_index *ctr; +struct efx_tc_counter *cnt; +u64 packets, bytes; + + ctr =efx_tc_flower_find_counter_index (efx, tc->cookie); +if (!ctr) { +/* See comment in efx_tc_flower_destroy() */ +if (!IS_ERR (efx_tc_flower_lookup_efv (efx, net_dev))) +if (net_ratelimit ()) +netif_warn (efx, drv, efx->net_dev, +"Filter %lx not found for stats\n" , + tc->cookie); +NL_SET_ERR_MSG_MOD (extack,"Flow cookie not found in offloaded rules" ); +return -ENOENT ; + } +if (WARN_ON (!ctr->cnt))/* can't happen */ +return -EIO ; + cnt = ctr->cnt; + +spin_lock_bh (&cnt->lock); +/* Report only new pkts/bytes since last time TC asked */ + packets = cnt->packets; + bytes = cnt->bytes; +flow_stats_update (&tc->stats, bytes - cnt->old_bytes, + packets - cnt->old_packets,0 , cnt->touched, +FLOW_ACTION_HW_STATS_DELAYED ); + cnt->old_packets = packets; + cnt->old_bytes = bytes; +spin_unlock_bh (&cnt->lock); +return 0 ; +} +int efx_tc_flower (struct efx_nic *efx,struct net_device *net_dev,struct flow_cls_offload *tc,struct efx_rep *efv) {
@@ -611,6 +647,9 @@ int efx_tc_flower(struct efx_nic *efx, struct net_device *net_dev,case FLOW_CLS_DESTROY : rc =efx_tc_flower_destroy (efx, net_dev, tc);break ; +case FLOW_CLS_STATS : + rc =efx_tc_flower_stats (efx, net_dev, tc); +break ;default : rc = -EOPNOTSUPP ;break ;
drivers/net/ethernet/sfc/tc_counters.c +10 -0
@@ -198,6 +198,16 @@ struct efx_tc_counter_index *efx_tc_flower_get_counter_index(return ctr; } +struct efx_tc_counter_index *efx_tc_flower_find_counter_index ( +struct efx_nic *efx,unsigned long cookie) +{ +struct efx_tc_counter_index key = {}; + + key.cookie = cookie; +return rhashtable_lookup_fast (&efx->tc->counter_id_ht, &key, + efx_tc_counter_id_ht_params); +} +/* TC Channel. Counter updates are delivered on this channel's RXQ. */ static void efx_tc_handle_no_channel (struct efx_nic *efx)
drivers/net/ethernet/sfc/tc_counters.h +3 -0
@@ -29,6 +29,7 @@ struct efx_tc_counter {spinlock_t lock;/* Serialises updates to counter values */ u32 gen;/* Generation count at which this counter is current */ u64 packets, bytes; +u64 old_packets, old_bytes;/* Values last time passed to userspace */ /* jiffies of the last time we saw packets increase */ unsigned long touched; };
@@ -50,6 +51,8 @@ struct efx_tc_counter_index *efx_tc_flower_get_counter_index( enum efx_tc_counter_type type);void efx_tc_flower_put_counter_index (struct efx_nic *efx,struct efx_tc_counter_index *ctr); +struct efx_tc_counter_index *efx_tc_flower_find_counter_index ( +struct efx_nic *efx,unsigned long cookie);extern const struct efx_channel_type efx_tc_channel_type;