x86: unify pgtable*.h
PATCH 2/4 x86: unify pgtable*.h
All x86 modes and architectures have very similar pagetable
structures: the page flags, the accessors for testing/setting them, and the combinations of page flags used for kernel and usermode mappings are all the same. The main difference is between 32 and 64-bit pagetable entries, with the latter supporting the NX bit.
The most significant difference between the modes/architectures is the number of levels in the pagetable (4 for 64-bit, 3 for 32-bit/PAE, 2 for non-PAE 32-bit). This accounts for the remaining code in the various mode-specific headers.
I've tried to avoid changing formatting as much as possible, so that the code motion is more obvious. A subsequent patch will clean things up in place.
--- arch/x86/kernel/setup_32.c | 6 include/asm-x86/pgtable-2level.h | 17 - include/asm-x86/pgtable-3level.h | 38 ---- include/asm-x86/pgtable.h | 344 ++++++++++++++++++++++++++++++++++++++ include/asm-x86/pgtable_32.h | 228 ------------------------- include/asm-x86/pgtable_64.h | 284 ++++++------------------------- 6 files changed, 414 insertions(+), 503 deletions(-)
===================================================================
arch/x86/kernel/setup_32.c +3 -3
@@ -334,7 +334,7 @@ unsigned long __init find_max_low_pfn(voif (highmem_pages +MAXMEM_PFN < max_pfn) max_pfn =MAXMEM_PFN + highmem_pages;if (highmem_pages +MAXMEM_PFN > max_pfn) { -printk ("only %luMB highmem pages available, ignoring highmem size of %uMB.\n" ,pages_to_mb (max_pfn -MAXMEM_PFN ),pages_to_mb (highmem_pages)); +printk ("only %luMB highmem pages available, ignoring highmem size of %luMB.\n" ,pages_to_mb (max_pfn -MAXMEM_PFN ),pages_to_mb (highmem_pages)); highmem_pages =0 ; } max_low_pfn =MAXMEM_PFN ;
@@ -361,12 +361,12 @@ unsigned long __init find_max_low_pfn(vo highmem_pages =0 ;#ifdef CONFIG_HIGHMEM if (highmem_pages >= max_pfn) { -printk (KERN_ERR "highmem size specified (%uMB) is bigger than pages available (%luMB)!.\n" ,pages_to_mb (highmem_pages),pages_to_mb (max_pfn)); +printk (KERN_ERR "highmem size specified (%luMB) is bigger than pages available (%luMB)!.\n" ,pages_to_mb (highmem_pages),pages_to_mb (max_pfn)); highmem_pages =0 ; }if (highmem_pages) {if (max_low_pfn-highmem_pages <64 *1024 *1024 /PAGE_SIZE ){ -printk (KERN_ERR "highmem size %uMB results in smaller than 64MB lowmem, ignoring it.\n" ,pages_to_mb (highmem_pages)); +printk (KERN_ERR "highmem size %luMB results in smaller than 64MB lowmem, ignoring it.\n" ,pages_to_mb (highmem_pages)); highmem_pages =0 ; } max_low_pfn -= highmem_pages;
===================================================================
include/asm-x86/pgtable-2level.h +6 -11
@@ -15,25 +15,24 @@ static inline void native_set_pte(pte_t { *ptep = pte; } +static inline void native_set_pte_at (struct mm_struct *mm,unsigned long addr,pte_t *ptep ,pte_t pte) {native_set_pte (ptep, pte); } +static inline void native_set_pmd (pmd_t *pmdp,pmd_t pmd) { *pmdp = pmd; } -#ifndef CONFIG_PARAVIRT -#define set_pte (pteptr, pteval) native_set_pte(pteptr, pteval) -#define set_pte_at (mm,addr,ptep,pteval) native_set_pte_at(mm, addr, ptep, pteval) -#define set_pmd (pmdptr, pmdval) native_set_pmd(pmdptr, pmdval) -#endif +#undef set_pte_atomic#define set_pte_atomic (pteptr, pteval) set_pte(pteptr,pteval)#define set_pte_present (mm,addr,ptep,pteval) set_pte_at(mm,addr,ptep,pteval)#define pte_clear (mm,addr,xp) do { set_pte_at(mm, addr, xp, __pte(0)); } while (0) +#undef pmd_clear#define pmd_clear (xp) do { set_pmd(xp, __pmd(0)); } while (0)static inline void native_pte_clear (struct mm_struct *mm,unsigned long addr,pte_t *xp)
@@ -50,12 +49,6 @@ static inline pte_t native_ptep_get_and_#define native_ptep_get_and_clear (xp) native_local_ptep_get_and_clear(xp)#endif -#define pte_page (x) pfn_to_page(pte_pfn(x)) -#define pte_none (x) (!(x).pte_low) -#define pte_pfn (x) (pte_val(x) >> PAGE_SHIFT) -#define pfn_pte (pfn, prot) __pte(((pfn) << PAGE_SHIFT) | pgprot_val(prot)) -#define pfn_pmd (pfn, prot) __pmd(((pfn) << PAGE_SHIFT) | pgprot_val(prot)) -/* * All present pages are kernel-executable: */
@@ -63,6 +56,8 @@ static inline int pte_exec_kernel(pte_t {return 1 ; } + +#define __supported_pte_mask (~0ul)/* * Bits 0, 6 and 7 are taken, split up the 29 bits of offset
===================================================================
include/asm-x86/pgtable-3level.h +0 -38
@@ -94,17 +94,6 @@ static inline void native_pmd_clear(pmd_ *(tmp +1 ) =0 ; } -#ifndef CONFIG_PARAVIRT -#define set_pte (ptep, pte) native_set_pte(ptep, pte) -#define set_pte_at (mm, addr, ptep, pte) native_set_pte_at(mm, addr, ptep, pte) -#define set_pte_present (mm, addr, ptep, pte) native_set_pte_present(mm, addr, ptep, pte) -#define set_pte_atomic (ptep, pte) native_set_pte_atomic(ptep, pte) -#define set_pmd (pmdp, pmd) native_set_pmd(pmdp, pmd) -#define set_pud (pudp, pud) native_set_pud(pudp, pud) -#define pte_clear (mm, addr, ptep) native_pte_clear(mm, addr, ptep) -#define pmd_clear (pmd) native_pmd_clear(pmd) -#endif -/* * Pentium-II erratum A13: in PAE mode we explicitly have to flush * the TLB via cr3 if the top-level pgd is changed...
@@ -119,10 +108,6 @@ static inline void pud_clear (pud_t * pu#define pud_page_vaddr (pud) \ ((unsigned long) __va(pud_val(pud) & PAGE_MASK)) - -/* Find an entry in the second-level page table.. */ -#define pmd_offset (pud, address) ((pmd_t *) pud_page(*(pud)) + \ - pmd_index(address))#ifdef CONFIG_SMP static inline pte_t native_ptep_get_and_clear (pte_t *ptep)
@@ -146,31 +131,8 @@ static inline int pte_same(pte_t a, pte_return a.pte_low == b.pte_low && a.pte_high == b.pte_high; } -#define pte_page (x) pfn_to_page(pte_pfn(x)) - -static inline int pte_none (pte_t pte) -{ -return !pte.pte_low && !pte.pte_high; -} - -static inline unsigned long pte_pfn (pte_t pte) -{ -return pte_val (pte) >>PAGE_SHIFT ; -} -extern unsigned long long __supported_pte_mask; -static inline pte_t pfn_pte (unsigned long page_nr,pgprot_t pgprot) -{ -return __pte ((((unsigned long long )page_nr <<PAGE_SHIFT ) | -pgprot_val (pgprot)) & __supported_pte_mask); -} - -static inline pmd_t pfn_pmd (unsigned long page_nr,pgprot_t pgprot) -{ -return __pmd ((((unsigned long long )page_nr <<PAGE_SHIFT ) | -pgprot_val (pgprot)) & __supported_pte_mask); -}/* * Bits 0, 6 and 7 are taken in the low part of the pte,
===================================================================
include/asm-x86/pgtable.h +344 -0
349 lines not on this page · raw message
===================================================================
include/asm-x86/pgtable_32.h +1 -227
284 lines not on this page · raw message
===================================================================
include/asm-x86/pgtable_64.h +60 -224
358 lines not on this page · raw message
Quoted 6 lines · Jeremy Fitzhardinge
All x86 modes and architectures have very similar pagetable
structures: the page flags, the accessors for testing/setting them, and the combinations of page flags used for kernel and usermode mappings are all the same. The main difference is between 32 and 64-bit pagetable entries, with the latter supporting the NX bit.
Quoted 8 lines
The most significant difference between the modes/architectures is the number of levels in the pagetable (4 for 64-bit, 3 for 32-bit/PAE, 2 for non-PAE 32-bit). This accounts for the remaining code in the various mode-specific headers.
I've tried to avoid changing formatting as much as possible, so that the code motion is more obvious. A subsequent patch will clean things up in place.
the dreaded auto-qa - this patch fails to build:
arch/x86/mm/init_32.c: In function 'mark_rodata_ro':
arch/x86/mm/init_32.c:811: error: 'PAGE_KERNEL_RX' undeclared (first use in this function) arch/x86/mm/init_32.c:811: error: (Each undeclared identifier is reported only once arch/x86/mm/init_32.c:811: error: for each function it appears in.) make[1]: *** [arch/x86/mm/init_32.o] Error 1
config attached. I'll skip this series of your patches for now. I'd expect this to be one of the hardest areas to unify - it's one of the areas with the largest amount of arbitrary deviations between 32-bit and 64-bit and these include files permeate everything.
( In case you are thinking about approaching this differently, i'd
suggest a strategy that doesnt just try to unify the whole kit at once but does it with very small steps where each step is trivially verifyable. 50 small patches are generally a lot easier to create than 5 big patches. [ Of course if you can do 5 perfect patches that's just as good :-) ] )
Ingo
#
# Automatically generated make config: don't edit # Linux kernel version: 2.6.24-rc5
# Fri Dec 14 10:11:52 2007
#
# CONFIG_64BIT is not setCONFIG_X86_32=y
# CONFIG_X86_64 is not setCONFIG_X86=yCONFIG_GENERIC_TIME=yCONFIG_GENERIC_CMOS_UPDATE=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_SEMAPHORE_SLEEPERS=yCONFIG_MMU=yCONFIG_ZONE_DMA=yCONFIG_QUICKLIST=yCONFIG_GENERIC_ISA_DMA=yCONFIG_GENERIC_IOMAP=y
# CONFIG_GENERIC_GPIO is not set CONFIG_GENERIC_HWEIGHT=y CONFIG_ARCH_MAY_HAVE_PC_FDC=yCONFIG_DMI=y
# CONFIG_RWSEM_GENERIC_SPINLOCK is not set CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set CONFIG_GENERIC_CALIBRATE_DELAY=y
# CONFIG_GENERIC_TIME_VSYSCALL is not set CONFIG_ARCH_SUPPORTS_OPROFILE=y
# CONFIG_ZONE_DMA32 is not set CONFIG_ARCH_POPULATES_NODE_MAP=y
# CONFIG_AUDIT_ARCH is not set CONFIG_GENERIC_HARDIRQS=y CONFIG_GENERIC_IRQ_PROBE=y CONFIG_GENERIC_PENDING_IRQ=yCONFIG_X86_SMP=yCONFIG_X86_HT=yCONFIG_X86_BIOS_REBOOT=yCONFIG_X86_TRAMPOLINE=yCONFIG_KTIME_SCALAR=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
#
# General setup
#CONFIG_EXPERIMENTAL=yCONFIG_LOCK_KERNEL=yCONFIG_INIT_ENV_ARG_LIMIT=32CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not setCONFIG_SWAP=y
# CONFIG_SYSVIPC is not set
# CONFIG_POSIX_MQUEUE is not setCONFIG_BSD_PROCESS_ACCT=yCONFIG_BSD_PROCESS_ACCT_V3=yCONFIG_TASKSTATS=y
# CONFIG_TASK_DELAY_ACCT is not set
# CONFIG_TASK_XACCT is not set
# CONFIG_USER_NS is not setCONFIG_PID_NS=y
# CONFIG_AUDIT is not setCONFIG_IKCONFIG=y
# CONFIG_IKCONFIG_PROC is not setCONFIG_LOG_BUF_SHIFT=20
# CONFIG_CGROUPS is not set
# CONFIG_FAIR_GROUP_SCHED is not setCONFIG_SYSFS_DEPRECATED=yCONFIG_RELAY=yCONFIG_BLK_DEV_INITRD=yCONFIG_INITRAMFS_SOURCE=""
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not setCONFIG_SYSCTL=yCONFIG_EMBEDDED=y
# CONFIG_UID16 is not setCONFIG_SYSCTL_SYSCALL=yCONFIG_KALLSYMS=yCONFIG_KALLSYMS_ALL=y
# CONFIG_KALLSYMS_EXTRA_PASS is not setCONFIG_HOTPLUG=yCONFIG_PRINTK=y
# CONFIG_BUG is not set
# CONFIG_ELF_CORE is not setCONFIG_BASE_FULL=yCONFIG_FUTEX=yCONFIG_ANON_INODES=yCONFIG_EPOLL=yCONFIG_SIGNALFD=yCONFIG_EVENTFD=yCONFIG_SHMEM=yCONFIG_VM_EVENT_COUNTERS=yCONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not setCONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not setCONFIG_BASE_SMALL=0
# CONFIG_MODULES is not setCONFIG_BLOCK=y
# CONFIG_LBD is not setCONFIG_BLK_DEV_IO_TRACE=y
# CONFIG_LSF is not setCONFIG_BLK_DEV_BSG=y
#
# IO Schedulers
#CONFIG_IOSCHED_NOOP=yCONFIG_IOSCHED_AS=y
# CONFIG_IOSCHED_DEADLINE is not setCONFIG_IOSCHED_CFQ=y
# CONFIG_DEFAULT_AS is not set
# CONFIG_DEFAULT_DEADLINE is not setCONFIG_DEFAULT_CFQ=y
# CONFIG_DEFAULT_NOOP is not setCONFIG_DEFAULT_IOSCHED="cfq"
#
# Processor type and features
#CONFIG_TICK_ONESHOT=yCONFIG_NO_HZ=yCONFIG_HIGH_RES_TIMERS=y CONFIG_GENERIC_CLOCKEVENTS_BUILD=y CONFIG_SMP=yCONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_X86_RDC321X is not set
# CONFIG_X86_VSMP is not set
# CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER is not set CONFIG_PARAVIRT=yCONFIG_PARAVIRT_GUEST=yCONFIG_XEN=yCONFIG_VMI=y
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not setCONFIG_MK7=y
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MGEODE_LX is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_MVIAC7 is not set
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
# CONFIG_GENERIC_CPU is not set
# CONFIG_X86_GENERIC is not set CONFIG_X86_CMPXCHG=y CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_X86_XADD=yCONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=yCONFIG_X86_BSWAP=yCONFIG_X86_POPAD_OK=y CONFIG_X86_GOOD_APIC=y CONFIG_X86_INTEL_USERCOPY=y CONFIG_X86_USE_PPRO_CHECKSUM=y CONFIG_X86_USE_3DNOW=yCONFIG_X86_TSC=yCONFIG_X86_CMOV=y CONFIG_X86_MINIMUM_CPU_FAMILY=4 CONFIG_X86_DEBUGCTLMSR=y
# CONFIG_HPET_TIMER is not set CONFIG_NR_CPUS=8
# CONFIG_SCHED_SMT is not set CONFIG_SCHED_MC=y
# CONFIG_PREEMPT_NONE is not set CONFIG_PREEMPT_VOLUNTARY=y
# CONFIG_PREEMPT is not set CONFIG_PREEMPT_BKL=y CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y
# CONFIG_X86_MCE is not setCONFIG_VM86=y
# CONFIG_TOSHIBA is not setCONFIG_I8K=y
# CONFIG_X86_REBOOTFIXUPS is not set CONFIG_MICROCODE=y CONFIG_MICROCODE_OLD_INTERFACE=y CONFIG_X86_MSR=y
# CONFIG_X86_CPUID is not set
# CONFIG_NOHIGHMEM is not set
# CONFIG_HIGHMEM4G is not set CONFIG_HIGHMEM64G=y
# CONFIG_VMSPLIT_3G is not set
# CONFIG_VMSPLIT_3G_OPT is not set
# CONFIG_VMSPLIT_2G is not set
# CONFIG_VMSPLIT_2G_OPT is not set CONFIG_VMSPLIT_1G=y CONFIG_PAGE_OFFSET=0x40000000 CONFIG_HIGHMEM=yCONFIG_X86_PAE=y CONFIG_ARCH_FLATMEM_ENABLE=y CONFIG_ARCH_SPARSEMEM_ENABLE=y CONFIG_ARCH_SELECT_MEMORY_MODEL=y CONFIG_SELECT_MEMORY_MODEL=y CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set CONFIG_FLATMEM=y CONFIG_FLAT_NODE_MEM_MAP=y CONFIG_SPARSEMEM_STATIC=y
# CONFIG_SPARSEMEM_VMEMMAP_ENABLE is not set CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_RESOURCES_64BIT=y CONFIG_ZONE_DMA_FLAG=1CONFIG_BOUNCE=yCONFIG_NR_QUICK=1CONFIG_VIRT_TO_BUS=yCONFIG_HIGHPTE=yCONFIG_MATH_EMULATION=yCONFIG_MTRR=y
# CONFIG_IRQBALANCE is not set
# CONFIG_SECCOMP 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=250
# CONFIG_KEXEC is not set
# CONFIG_CRASH_DUMP is not set CONFIG_PHYSICAL_START=0x100000 CONFIG_RELOCATABLE=y CONFIG_PHYSICAL_ALIGN=0x100000
# CONFIG_HOTPLUG_CPU is not set
# CONFIG_COMPAT_VDSO is not set CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
#
# Power management options
#
# CONFIG_PM is not setCONFIG_SUSPEND_SMP_POSSIBLE=yCONFIG_HIBERNATION_SMP_POSSIBLE=y
#
# CPU Frequency scaling
#
# CONFIG_CPU_FREQ is not set
# CONFIG_CPU_IDLE is not set
#
# Bus options (PCI etc.)
#CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not setCONFIG_PCI_GOANY=yCONFIG_PCI_BIOS=yCONFIG_PCI_DIRECT=yCONFIG_PCI_DOMAINS=yCONFIG_PCIEPORTBUS=yCONFIG_PCIEAER=yCONFIG_ARCH_SUPPORTS_MSI=yCONFIG_PCI_MSI=yCONFIG_PCI_LEGACY=yCONFIG_PCI_DEBUG=y
# CONFIG_HT_IRQ is not setCONFIG_ISA_DMA_API=yCONFIG_ISA=yCONFIG_EISA=yCONFIG_EISA_VLB_PRIMING=y
# CONFIG_EISA_PCI_EISA is not setCONFIG_EISA_VIRTUAL_ROOT=yCONFIG_EISA_NAMES=yCONFIG_MCA=y
# CONFIG_MCA_LEGACY is not set
# CONFIG_SCx200 is not setCONFIG_K8_NB=y
# CONFIG_PCCARD is not set
# CONFIG_HOTPLUG_PCI is not set
#
# Executable file formats / Emulations
#CONFIG_BINFMT_ELF=yCONFIG_BINFMT_AOUT=y
# CONFIG_BINFMT_MISC is not set
#
# Networking
#CONFIG_NET=y
#
# Networking options
#CONFIG_PACKET=y
# CONFIG_PACKET_MMAP is not setCONFIG_UNIX=yCONFIG_XFRM=y
# CONFIG_XFRM_USER is not set
# CONFIG_XFRM_SUB_POLICY is not set CONFIG_XFRM_MIGRATE=yCONFIG_NET_KEY=yCONFIG_NET_KEY_MIGRATE=yCONFIG_INET=y
# CONFIG_IP_MULTICAST is not set CONFIG_IP_ADVANCED_ROUTER=y CONFIG_ASK_IP_FIB_HASH=y
# CONFIG_IP_FIB_TRIE is not set CONFIG_IP_FIB_HASH=y
# CONFIG_IP_MULTIPLE_TABLES is not set
# CONFIG_IP_ROUTE_MULTIPATH is not set
# CONFIG_IP_ROUTE_VERBOSE is not set CONFIG_IP_PNP=yCONFIG_IP_PNP_DHCP=yCONFIG_IP_PNP_BOOTP=yCONFIG_IP_PNP_RARP=y
# CONFIG_NET_IPIP is not set CONFIG_NET_IPGRE=y
# CONFIG_ARPD is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not setCONFIG_INET_ESP=yCONFIG_INET_IPCOMP=y CONFIG_INET_XFRM_TUNNEL=y CONFIG_INET_TUNNEL=y CONFIG_INET_XFRM_MODE_TRANSPORT=y CONFIG_INET_XFRM_MODE_TUNNEL=y
# CONFIG_INET_XFRM_MODE_BEET is not set CONFIG_INET_LRO=y
# CONFIG_INET_DIAG is not set CONFIG_TCP_CONG_ADVANCED=y CONFIG_TCP_CONG_BIC=yCONFIG_TCP_CONG_CUBIC=y
# CONFIG_TCP_CONG_WESTWOOD is not set
# CONFIG_TCP_CONG_HTCP is not set
# CONFIG_TCP_CONG_HSTCP is not set
# CONFIG_TCP_CONG_HYBLA is not set CONFIG_TCP_CONG_VEGAS=y
# CONFIG_TCP_CONG_SCALABLE is not set CONFIG_TCP_CONG_LP=y
# CONFIG_TCP_CONG_VENO is not set CONFIG_TCP_CONG_YEAH=y CONFIG_TCP_CONG_ILLINOIS=y
# CONFIG_DEFAULT_BIC is not set
# CONFIG_DEFAULT_CUBIC is not set
# CONFIG_DEFAULT_HTCP is not set
# CONFIG_DEFAULT_VEGAS is not set
# CONFIG_DEFAULT_WESTWOOD is not set CONFIG_DEFAULT_RENO=y CONFIG_DEFAULT_TCP_CONG="reno" CONFIG_TCP_MD5SIG=y
# CONFIG_IP_VS is not setCONFIG_IPV6=y
# CONFIG_IPV6_PRIVACY is not set
# CONFIG_IPV6_ROUTER_PREF is not set
# CONFIG_IPV6_OPTIMISTIC_DAD is not set CONFIG_INET6_AH=y
# CONFIG_INET6_ESP is not set CONFIG_INET6_IPCOMP=yCONFIG_IPV6_MIP6=yCONFIG_INET6_XFRM_TUNNEL=y CONFIG_INET6_TUNNEL=y
# CONFIG_INET6_XFRM_MODE_TRANSPORT is not set # CONFIG_INET6_XFRM_MODE_TUNNEL is not set CONFIG_INET6_XFRM_MODE_BEET=y
# CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION is not set CONFIG_IPV6_SIT=y
# CONFIG_IPV6_TUNNEL is not set CONFIG_IPV6_MULTIPLE_TABLES=y CONFIG_IPV6_SUBTREES=yCONFIG_NETLABEL=y
# CONFIG_NETWORK_SECMARK is not set CONFIG_NETFILTER=yCONFIG_NETFILTER_DEBUG=y
#
# Core Netfilter Configuration
#CONFIG_NETFILTER_NETLINK=yCONFIG_NETFILTER_NETLINK_QUEUE=y
# CONFIG_NETFILTER_NETLINK_LOG is not set
# CONFIG_NF_CONNTRACK_ENABLED is not set
# CONFIG_NF_CONNTRACK is not set
# CONFIG_NETFILTER_XTABLES is not set
#
# IP: Netfilter Configuration
#
# CONFIG_IP_NF_QUEUE is not set
# CONFIG_IP_NF_IPTABLES is not set
# CONFIG_IP_NF_ARPTABLES is not set
#
# IPv6: Netfilter Configuration (EXPERIMENTAL)
#
# CONFIG_IP6_NF_QUEUE is not set
# CONFIG_IP6_NF_IPTABLES is not set
#
# DECnet: Netfilter Configuration
#CONFIG_DECNET_NF_GRABULATOR=y
# CONFIG_IP_DCCP is not setCONFIG_IP_SCTP=yCONFIG_SCTP_DBG_MSG=yCONFIG_SCTP_DBG_OBJCNT=y
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not setCONFIG_SCTP_HMAC_MD5=y
# CONFIG_TIPC is not setCONFIG_ATM=y
# CONFIG_ATM_CLIP is not setCONFIG_ATM_LANE=yCONFIG_ATM_MPOA=yCONFIG_ATM_BR2684=yCONFIG_ATM_BR2684_IPFILTER=y
# CONFIG_BRIDGE is not setCONFIG_VLAN_8021Q=yCONFIG_DECNET=yCONFIG_DECNET_ROUTER=yCONFIG_LLC=y
# CONFIG_LLC2 is not setCONFIG_IPX=y
# CONFIG_IPX_INTERN is not set
# CONFIG_ATALK is not setCONFIG_X25=yCONFIG_LAPB=yCONFIG_ECONET=y
# CONFIG_ECONET_AUNUDP is not setCONFIG_ECONET_NATIVE=yCONFIG_WAN_ROUTER=yCONFIG_NET_SCHED=y
#
# Queueing/Scheduling
#CONFIG_NET_SCH_CBQ=yCONFIG_NET_SCH_HTB=yCONFIG_NET_SCH_HFSC=yCONFIG_NET_SCH_ATM=y
# CONFIG_NET_SCH_PRIO is not set
# CONFIG_NET_SCH_RR is not set
# CONFIG_NET_SCH_RED is not set
# CONFIG_NET_SCH_SFQ is not set
# CONFIG_NET_SCH_TEQL is not setCONFIG_NET_SCH_TBF=yCONFIG_NET_SCH_GRED=yCONFIG_NET_SCH_DSMARK=yCONFIG_NET_SCH_NETEM=y
# CONFIG_NET_SCH_INGRESS is not set
#
# Classification
#CONFIG_NET_CLS=yCONFIG_NET_CLS_BASIC=y
# CONFIG_NET_CLS_TCINDEX is not setCONFIG_NET_CLS_ROUTE4=yCONFIG_NET_CLS_ROUTE=yCONFIG_NET_CLS_FW=y
# CONFIG_NET_CLS_U32 is not set
# CONFIG_NET_CLS_RSVP is not set
# CONFIG_NET_CLS_RSVP6 is not set
# CONFIG_NET_EMATCH is not setCONFIG_NET_CLS_ACT=yCONFIG_NET_ACT_POLICE=y
# CONFIG_NET_ACT_GACT is not setCONFIG_NET_ACT_MIRRED=yCONFIG_NET_ACT_NAT=y
# CONFIG_NET_ACT_PEDIT is not setCONFIG_NET_ACT_SIMP=yCONFIG_NET_CLS_POLICE=yCONFIG_NET_CLS_IND=yCONFIG_NET_SCH_FIFO=y
#
# Network testing
#
# CONFIG_NET_PKTGEN is not setCONFIG_HAMRADIO=y
#
# Packet Radio protocols
#
# CONFIG_AX25 is not setCONFIG_IRDA=y
#
# IrDA protocols
#CONFIG_IRLAN=yCONFIG_IRNET=yCONFIG_IRCOMM=y
# CONFIG_IRDA_ULTRA is not set
#
# IrDA options
#
# CONFIG_IRDA_CACHE_LAST_LSAP is not setCONFIG_IRDA_FAST_RR=y
# CONFIG_IRDA_DEBUG is not set
#
# Infrared-port device drivers
#
#
# SIR device drivers
#
# CONFIG_IRTTY_SIR is not set
#
# Dongle support
#
# CONFIG_KINGSUN_DONGLE is not setCONFIG_KSDAZZLE_DONGLE=y
# CONFIG_KS959_DONGLE is not set
#
# Old SIR device drivers
#
#
# Old Serial dongle support
#
#
# FIR device drivers
#
# CONFIG_USB_IRDA is not setCONFIG_SIGMATEL_FIR=yCONFIG_NSC_FIR=yCONFIG_WINBOND_FIR=y
# CONFIG_TOSHIBA_FIR is not setCONFIG_SMC_IRCC_FIR=yCONFIG_ALI_FIR=yCONFIG_VLSI_FIR=yCONFIG_VIA_FIR=yCONFIG_MCS_FIR=yCONFIG_BT=y
# CONFIG_BT_L2CAP is not set
# CONFIG_BT_SCO is not set
#
# Bluetooth device drivers
#
# CONFIG_BT_HCIUSB is not setCONFIG_BT_HCIBTUSB=y
# CONFIG_BT_HCIUART is not set
# CONFIG_BT_HCIBCM203X is not set
# CONFIG_BT_HCIBPA10X is not setCONFIG_BT_HCIBFUSB=y
# CONFIG_BT_HCIVHCI is not set
# CONFIG_AF_RXRPC is not setCONFIG_FIB_RULES=y
#
# Wireless
#CONFIG_CFG80211=yCONFIG_NL80211=yCONFIG_WIRELESS_EXT=yCONFIG_MAC80211=yCONFIG_MAC80211_RCSIMPLE=yCONFIG_MAC80211_LEDS=y
# CONFIG_MAC80211_DEBUGFS is not set
# CONFIG_MAC80211_DEBUG is not set
# CONFIG_IEEE80211 is not setCONFIG_RFKILL=yCONFIG_RFKILL_INPUT=yCONFIG_RFKILL_LEDS=yCONFIG_NET_9P=yCONFIG_NET_9P_FD=y
# CONFIG_NET_9P_DEBUG is not set
#
# Device Drivers
#
#
# Generic Driver Options
#CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"CONFIG_STANDALONE=yCONFIG_PREVENT_FIRMWARE_BUILD=yCONFIG_FW_LOADER=yCONFIG_DEBUG_DRIVER=y
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not setCONFIG_CONNECTOR=y
# CONFIG_PROC_EVENTS is not set
# CONFIG_MTD is not setCONFIG_PARPORT=yCONFIG_PARPORT_PC=y
# CONFIG_PARPORT_PC_FIFO is not setCONFIG_PARPORT_PC_SUPERIO=y
# CONFIG_PARPORT_GSC is not setCONFIG_PARPORT_AX88796=yCONFIG_PARPORT_1284=yCONFIG_PARPORT_NOT_PC=yCONFIG_PNP=y
# CONFIG_PNP_DEBUG is not set
#
# Protocols
#CONFIG_ISAPNP=y
# CONFIG_PNPBIOS is not set
# CONFIG_PNPACPI is not setCONFIG_BLK_DEV=yCONFIG_BLK_DEV_FD=yCONFIG_BLK_DEV_XD=y
# CONFIG_PARIDE is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_CPQ_CISS_DA is not set
# CONFIG_BLK_DEV_DAC960 is not setCONFIG_BLK_DEV_UMEM=y
# CONFIG_BLK_DEV_COW_COMMON is not setCONFIG_BLK_DEV_LOOP=yCONFIG_BLK_DEV_CRYPTOLOOP=y
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_SX8 is not set
# CONFIG_BLK_DEV_UB is not setCONFIG_BLK_DEV_RAM=yCONFIG_BLK_DEV_RAM_COUNT=16CONFIG_BLK_DEV_RAM_SIZE=4096CONFIG_BLK_DEV_RAM_BLOCKSIZE=1024
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not setCONFIG_XEN_BLKDEV_FRONTEND=y
# CONFIG_MISC_DEVICES is not set
# CONFIG_IDE is not set
#
# SCSI device support
#CONFIG_RAID_ATTRS=yCONFIG_SCSI=yCONFIG_SCSI_DMA=yCONFIG_SCSI_TGT=yCONFIG_SCSI_NETLINK=yCONFIG_SCSI_PROC_FS=y
#
# SCSI support type (disk, tape, CD-ROM)
#CONFIG_BLK_DEV_SD=yCONFIG_CHR_DEV_ST=y
# CONFIG_CHR_DEV_OSST is not set
# CONFIG_BLK_DEV_SR is not set
# CONFIG_CHR_DEV_SG is not set
# CONFIG_CHR_DEV_SCH is not set
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs #CONFIG_SCSI_MULTI_LUN=yCONFIG_SCSI_CONSTANTS=yCONFIG_SCSI_LOGGING=yCONFIG_SCSI_SCAN_ASYNC=y
#
# SCSI Transports
#CONFIG_SCSI_SPI_ATTRS=yCONFIG_SCSI_FC_ATTRS=yCONFIG_SCSI_FC_TGT_ATTRS=yCONFIG_SCSI_ISCSI_ATTRS=yCONFIG_SCSI_SAS_ATTRS=yCONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_ATA is not set
# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not setCONFIG_SCSI_SRP_ATTRS=yCONFIG_SCSI_SRP_TGT_ATTRS=yCONFIG_SCSI_LOWLEVEL=y
# CONFIG_ISCSI_TCP is not setCONFIG_BLK_DEV_3W_XXXX_RAID=y
# CONFIG_SCSI_3W_9XXX is not setCONFIG_SCSI_7000FASST=yCONFIG_SCSI_ACARD=yCONFIG_SCSI_AHA152X=y
# CONFIG_SCSI_AHA1542 is not setCONFIG_SCSI_AHA1740=y
# CONFIG_SCSI_AACRAID is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_AIC7XXX_OLD is not setCONFIG_SCSI_AIC79XX=yCONFIG_AIC79XX_CMDS_PER_DEVICE=32CONFIG_AIC79XX_RESET_DELAY_MS=5000CONFIG_AIC79XX_DEBUG_ENABLE=yCONFIG_AIC79XX_DEBUG_MASK=0
# CONFIG_AIC79XX_REG_PRETTY_PRINT is not set
# CONFIG_SCSI_AIC94XX is not set
# CONFIG_SCSI_DPT_I2O is not setCONFIG_SCSI_ADVANSYS=y
# CONFIG_SCSI_IN2000 is not setCONFIG_SCSI_ARCMSR=yCONFIG_SCSI_ARCMSR_AER=y
# CONFIG_MEGARAID_NEWGEN is not set
# CONFIG_MEGARAID_LEGACY is not setCONFIG_MEGARAID_SAS=y
# CONFIG_SCSI_HPTIOP is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_DMX3191D is not setCONFIG_SCSI_DTC3280=yCONFIG_SCSI_EATA=y
# CONFIG_SCSI_EATA_TAGGED_QUEUE is not set
# CONFIG_SCSI_EATA_LINKED_COMMANDS is not setCONFIG_SCSI_EATA_MAX_TAGS=16
# CONFIG_SCSI_FUTURE_DOMAIN is not setCONFIG_SCSI_GDTH=yCONFIG_SCSI_GENERIC_NCR5380=y
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not set
# CONFIG_SCSI_GENERIC_NCR53C400 is not setCONFIG_SCSI_IBMMCA=yCONFIG_IBMMCA_SCSI_ORDER_STANDARD=yCONFIG_IBMMCA_SCSI_DEV_RESET=y
# CONFIG_SCSI_IPS is not set
# CONFIG_SCSI_INITIO is not setCONFIG_SCSI_INIA100=yCONFIG_SCSI_PPA=yCONFIG_SCSI_IMM=yCONFIG_SCSI_IZIP_EPP16=yCONFIG_SCSI_IZIP_SLOW_CTR=y
# CONFIG_SCSI_NCR53C406A is not setCONFIG_SCSI_NCR_D700=y
# CONFIG_SCSI_STEX is not setCONFIG_SCSI_SYM53C8XX_2=yCONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64CONFIG_SCSI_SYM53C8XX_MMIO=y
# CONFIG_SCSI_IPR is not setCONFIG_SCSI_NCR_Q720=yCONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=8CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32CONFIG_SCSI_NCR53C8XX_SYNC=20CONFIG_SCSI_PAS16=y
# CONFIG_SCSI_PSI240I is not set
# CONFIG_SCSI_QLOGIC_FAS is not setCONFIG_SCSI_QLOGIC_1280=yCONFIG_SCSI_QLA_FC=y
# CONFIG_SCSI_QLA_ISCSI is not setCONFIG_SCSI_LPFC=y
# CONFIG_SCSI_SEAGATE is not set
# CONFIG_SCSI_SIM710 is not setCONFIG_SCSI_SYM53C416=y
CONFIG_SCSI_DC395x=y
# CONFIG_SCSI_DC390T is not set
# CONFIG_SCSI_T128 is not setCONFIG_SCSI_U14_34F=yCONFIG_SCSI_U14_34F_TAGGED_QUEUE=y
# CONFIG_SCSI_U14_34F_LINKED_COMMANDS is not setCONFIG_SCSI_U14_34F_MAX_TAGS=8CONFIG_SCSI_ULTRASTOR=y
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_SRP is not setCONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not setCONFIG_SATA_AHCI=yCONFIG_SATA_SVW=yCONFIG_ATA_PIIX=y
# CONFIG_SATA_MV is not setCONFIG_SATA_NV=y
# CONFIG_PDC_ADMA is not setCONFIG_SATA_QSTOR=y
# CONFIG_SATA_PROMISE is not setCONFIG_SATA_SX4=yCONFIG_SATA_SIL=y
# CONFIG_SATA_SIL24 is not setCONFIG_SATA_SIS=yCONFIG_SATA_ULI=yCONFIG_SATA_VIA=yCONFIG_SATA_VITESSE=yCONFIG_SATA_INIC162X=y
# CONFIG_PATA_ALI is not setCONFIG_PATA_AMD=y
# CONFIG_PATA_ARTOP is not set
# CONFIG_PATA_ATIIXP is not setCONFIG_PATA_CMD640_PCI=yCONFIG_PATA_CMD64X=y
# CONFIG_PATA_CS5520 is not set
# CONFIG_PATA_CS5530 is not set
# CONFIG_PATA_CS5535 is not setCONFIG_PATA_CS5536=y
# CONFIG_PATA_CYPRESS is not set
# CONFIG_PATA_EFAR is not setCONFIG_ATA_GENERIC=y
# CONFIG_PATA_HPT366 is not set
# CONFIG_PATA_HPT37X is not set
# CONFIG_PATA_HPT3X2N is not setCONFIG_PATA_HPT3X3=yCONFIG_PATA_HPT3X3_DMA=yCONFIG_PATA_ISAPNP=yCONFIG_PATA_IT821X=y
# CONFIG_PATA_IT8213 is not set
# CONFIG_PATA_JMICRON is not setCONFIG_PATA_LEGACY=yCONFIG_PATA_TRIFLEX=yCONFIG_PATA_MARVELL=y
# CONFIG_PATA_MPIIX is not setCONFIG_PATA_OLDPIIX=yCONFIG_PATA_NETCELL=yCONFIG_PATA_NS87410=yCONFIG_PATA_NS87415=y
# CONFIG_PATA_OPTI is not set
# CONFIG_PATA_OPTIDMA is not setCONFIG_PATA_PDC_OLD=yCONFIG_PATA_QDI=y
# CONFIG_PATA_RADISYS is not setCONFIG_PATA_RZ1000=yCONFIG_PATA_SC1200=yCONFIG_PATA_SERVERWORKS=yCONFIG_PATA_PDC2027X=y
# CONFIG_PATA_SIL680 is not setCONFIG_PATA_SIS=y
# CONFIG_PATA_VIA is not setCONFIG_PATA_WINBOND=yCONFIG_PATA_WINBOND_VLB=y
# CONFIG_PATA_PLATFORM is not setCONFIG_MD=yCONFIG_BLK_DEV_MD=y
# CONFIG_MD_LINEAR is not setCONFIG_MD_RAID0=y
# CONFIG_MD_RAID1 is not set
# CONFIG_MD_RAID10 is not setCONFIG_MD_RAID456=yCONFIG_MD_RAID5_RESHAPE=yCONFIG_MD_MULTIPATH=y
# CONFIG_MD_FAULTY is not setCONFIG_BLK_DEV_DM=y
# CONFIG_DM_DEBUG is not setCONFIG_DM_CRYPT=y
# CONFIG_DM_SNAPSHOT is not set
# CONFIG_DM_MIRROR is not setCONFIG_DM_ZERO=y
# CONFIG_DM_MULTIPATH is not set
# CONFIG_DM_DELAY is not setCONFIG_DM_UEVENT=yCONFIG_FUSION=yCONFIG_FUSION_SPI=y
# CONFIG_FUSION_FC is not set
# CONFIG_FUSION_SAS is not setCONFIG_FUSION_MAX_SGE=128
# CONFIG_FUSION_CTL is not setCONFIG_FUSION_LOGGING=y
#
# IEEE 1394 (FireWire) support
#
# CONFIG_FIREWIRE is not set
# CONFIG_IEEE1394 is not set
# CONFIG_I2O is not setCONFIG_MACINTOSH_DRIVERS=y
# CONFIG_MAC_EMUMOUSEBTN is not setCONFIG_NETDEVICES=yCONFIG_NETDEVICES_MULTIQUEUE=y
# CONFIG_IFB is not setCONFIG_DUMMY=y
# CONFIG_BONDING is not set
# CONFIG_MACVLAN is not setCONFIG_EQUALIZER=yCONFIG_TUN=y
# CONFIG_VETH is not set
# CONFIG_NET_SB1000 is not setCONFIG_IP1000=y
# CONFIG_ARCNET is not set
# CONFIG_PHYLIB is not setCONFIG_NET_ETHERNET=yCONFIG_MII=y
# CONFIG_HAPPYMEAL is not set
# CONFIG_SUNGEM is not set
# CONFIG_CASSINI is not setCONFIG_NET_VENDOR_3COM=yCONFIG_EL1=yCONFIG_EL2=yCONFIG_ELPLUS=y
# CONFIG_EL16 is not set
# CONFIG_EL3 is not set
# CONFIG_3C515 is not set
# CONFIG_VORTEX is not setCONFIG_TYPHOON=yCONFIG_LANCE=yCONFIG_NET_VENDOR_SMC=y
# CONFIG_WD80x3 is not set
# CONFIG_ULTRAMCA is not setCONFIG_ULTRA=yCONFIG_ULTRA32=y
# CONFIG_SMC9194 is not set
# CONFIG_NET_VENDOR_RACAL is not set
# CONFIG_NET_TULIP is not set
# CONFIG_AT1700 is not setCONFIG_DEPCA=y
# CONFIG_HP100 is not set
# CONFIG_NET_ISA is not set
# CONFIG_IBM_NEW_EMAC_ZMII is not set
# CONFIG_IBM_NEW_EMAC_RGMII is not set
# CONFIG_IBM_NEW_EMAC_TAH is not set
# CONFIG_IBM_NEW_EMAC_EMAC4 is not setCONFIG_NET_PCI=y
# CONFIG_PCNET32 is not set
# CONFIG_AMD8111_ETH is not setCONFIG_ADAPTEC_STARFIRE=yCONFIG_ADAPTEC_STARFIRE_NAPI=y
# CONFIG_AC3200 is not setCONFIG_APRICOT=yCONFIG_B44=yCONFIG_B44_PCI_AUTOSELECT=yCONFIG_B44_PCICORE_AUTOSELECT=yCONFIG_B44_PCI=yCONFIG_FORCEDETH=yCONFIG_FORCEDETH_NAPI=y
CONFIG_CS89x0=yCONFIG_EEPRO100=yCONFIG_E100=y
# CONFIG_LNE390 is not set
# CONFIG_FEALNX is not set
# CONFIG_NATSEMI is not set
# CONFIG_NE2K_PCI is not set
# CONFIG_NE3210 is not setCONFIG_ES3210=y
# CONFIG_8139CP is not setCONFIG_8139TOO=y
# CONFIG_8139TOO_PIO is not setCONFIG_8139TOO_TUNE_TWISTER=y
# CONFIG_8139TOO_8129 is not set
# CONFIG_8139_OLD_RX_RESET is not setCONFIG_SIS900=y
# CONFIG_EPIC100 is not setCONFIG_SUNDANCE=yCONFIG_SUNDANCE_MMIO=y
# CONFIG_TLAN is not set
# CONFIG_VIA_RHINE is not setCONFIG_SC92031=yCONFIG_NET_POCKET=yCONFIG_ATP=y
# CONFIG_DE600 is not setCONFIG_DE620=y
# CONFIG_NETDEV_1000 is not setCONFIG_NETDEV_10000=yCONFIG_CHELSIO_T1=yCONFIG_CHELSIO_T1_1G=y
# CONFIG_CHELSIO_T1_NAPI is not set
# CONFIG_CHELSIO_T3 is not set
# CONFIG_IXGBE is not setCONFIG_IXGB=y
# CONFIG_IXGB_NAPI is not setCONFIG_S2IO=y
# CONFIG_S2IO_NAPI is not setCONFIG_MYRI10GE=y
# CONFIG_NETXEN_NIC is not setCONFIG_NIU=yCONFIG_MLX4_CORE=yCONFIG_MLX4_DEBUG=y
# CONFIG_TEHUTI is not set
# CONFIG_TR is not set
#
# Wireless LAN
#
# CONFIG_WLAN_PRE80211 is not set
# CONFIG_WLAN_80211 is not set
#
# USB Network Adapters
#CONFIG_USB_CATC=yCONFIG_USB_KAWETH=y
# CONFIG_USB_PEGASUS is not setCONFIG_USB_RTL8150=yCONFIG_USB_USBNET=yCONFIG_USB_NET_AX8817X=yCONFIG_USB_NET_CDCETHER=y
# CONFIG_USB_NET_DM9601 is not set
# CONFIG_USB_NET_GL620A is not setCONFIG_USB_NET_NET1080=yCONFIG_USB_NET_PLUSB=yCONFIG_USB_NET_MCS7830=y
# CONFIG_USB_NET_RNDIS_HOST is not setCONFIG_USB_NET_CDC_SUBSET=yCONFIG_USB_ALI_M5632=y
# CONFIG_USB_AN2720 is not set
# CONFIG_USB_BELKIN is not set
# CONFIG_USB_ARMLINUX is not setCONFIG_USB_EPSON2888=yCONFIG_USB_KC2190=yCONFIG_USB_NET_ZAURUS=yCONFIG_WAN=yCONFIG_LANMEDIA=yCONFIG_HDLC=yCONFIG_HDLC_RAW=y
# CONFIG_HDLC_RAW_ETH is not set
# CONFIG_HDLC_CISCO is not setCONFIG_HDLC_FR=yCONFIG_HDLC_PPP=yCONFIG_HDLC_X25=yCONFIG_PCI200SYN=y
# CONFIG_WANXL is not setCONFIG_PC300=y
#
# Cyclades-PC300 MLPPP support is disabled.
#
#
# Refer to the file README.mlppp, provided by PC300 package. #
# CONFIG_PC300TOO is not setCONFIG_N2=yCONFIG_C101=yCONFIG_FARSYNC=yCONFIG_DLCI=yCONFIG_DLCI_MAX=8CONFIG_SDLA=y
# CONFIG_WAN_ROUTER_DRIVERS is not set CONFIG_LAPBETHER=y
# CONFIG_X25_ASY is not set
# CONFIG_SBNI is not setCONFIG_ATM_DRIVERS=yCONFIG_ATM_DUMMY=yCONFIG_ATM_TCP=yCONFIG_ATM_LANAI=yCONFIG_ATM_ENI=y
# CONFIG_ATM_ENI_DEBUG is not set CONFIG_ATM_ENI_TUNE_BURST=y
# CONFIG_ATM_ENI_BURST_TX_16W is not set
# CONFIG_ATM_ENI_BURST_TX_8W is not set
# CONFIG_ATM_ENI_BURST_TX_4W is not set
# CONFIG_ATM_ENI_BURST_TX_2W is not set CONFIG_ATM_ENI_BURST_RX_16W=y CONFIG_ATM_ENI_BURST_RX_8W=y
# CONFIG_ATM_ENI_BURST_RX_4W is not set
# CONFIG_ATM_ENI_BURST_RX_2W is not set CONFIG_ATM_FIRESTREAM=y
# CONFIG_ATM_ZATM is not set
# CONFIG_ATM_NICSTAR is not set
# CONFIG_ATM_IDT77252 is not set CONFIG_ATM_AMBASSADOR=y
# CONFIG_ATM_AMBASSADOR_DEBUG is not set CONFIG_ATM_HORIZON=y
# CONFIG_ATM_HORIZON_DEBUG is not set
# CONFIG_ATM_IA is not set
# CONFIG_ATM_FORE200E_MAYBE is not set CONFIG_ATM_HE=y
# CONFIG_ATM_HE_USE_SUNI is not set CONFIG_XEN_NETDEV_FRONTEND=y
# CONFIG_FDDI is not setCONFIG_HIPPI=yCONFIG_ROADRUNNER=y
# CONFIG_ROADRUNNER_LARGE_RINGS is not set
# CONFIG_PLIP is not setCONFIG_PPP=y
# CONFIG_PPP_MULTILINK is not set CONFIG_PPP_FILTER=yCONFIG_PPP_ASYNC=y
# CONFIG_PPP_SYNC_TTY is not set CONFIG_PPP_DEFLATE=yCONFIG_PPP_BSDCOMP=yCONFIG_PPP_MPPE=yCONFIG_PPPOE=yCONFIG_PPPOATM=y
# CONFIG_PPPOL2TP is not setCONFIG_SLIP=y
# CONFIG_SLIP_COMPRESSED is not setCONFIG_SLHC=yCONFIG_SLIP_SMART=y
# CONFIG_SLIP_MODE_SLIP6 is not set
# CONFIG_NET_FC is not set
# CONFIG_SHAPER is not setCONFIG_NETCONSOLE=y
# CONFIG_NETCONSOLE_DYNAMIC is not set CONFIG_NETPOLL=yCONFIG_NETPOLL_TRAP=yCONFIG_NET_POLL_CONTROLLER=yCONFIG_ISDN=y
# CONFIG_ISDN_I4L is not set
# CONFIG_ISDN_CAPI is not set
# CONFIG_PHONE is not set
#
# Input device support
#CONFIG_INPUT=yCONFIG_INPUT_FF_MEMLESS=yCONFIG_INPUT_POLLDEV=y
#
# Userland interfaces
#CONFIG_INPUT_MOUSEDEV=y
# CONFIG_INPUT_MOUSEDEV_PSAUX is not setCONFIG_INPUT_MOUSEDEV_SCREEN_X=1024CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_EVBUG is not set
#
# Input Device Drivers
#CONFIG_INPUT_KEYBOARD=yCONFIG_KEYBOARD_ATKBD=yCONFIG_KEYBOARD_SUNKBD=y
# CONFIG_KEYBOARD_LKKBD is not setCONFIG_KEYBOARD_XTKBD=yCONFIG_KEYBOARD_NEWTON=y
# CONFIG_KEYBOARD_STOWAWAY is not setCONFIG_INPUT_MOUSE=y
# CONFIG_MOUSE_PS2 is not set
# CONFIG_MOUSE_SERIAL is not setCONFIG_MOUSE_APPLETOUCH=y
# CONFIG_MOUSE_INPORT is not setCONFIG_MOUSE_LOGIBM=yCONFIG_MOUSE_PC110PAD=y
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TABLET is not setCONFIG_INPUT_TOUCHSCREEN=y
# CONFIG_TOUCHSCREEN_ADS7846 is not set
# CONFIG_TOUCHSCREEN_FUJITSU is not setCONFIG_TOUCHSCREEN_GUNZE=y
# CONFIG_TOUCHSCREEN_ELO is not setCONFIG_TOUCHSCREEN_MTOUCH=y
# CONFIG_TOUCHSCREEN_MK712 is not set
# CONFIG_TOUCHSCREEN_PENMOUNT is not setCONFIG_TOUCHSCREEN_TOUCHRIGHT=y
# CONFIG_TOUCHSCREEN_TOUCHWIN is not setCONFIG_TOUCHSCREEN_UCB1400=yCONFIG_TOUCHSCREEN_USB_COMPOSITE=yCONFIG_TOUCHSCREEN_USB_EGALAX=yCONFIG_TOUCHSCREEN_USB_PANJIT=yCONFIG_TOUCHSCREEN_USB_3M=y
# CONFIG_TOUCHSCREEN_USB_ITM is not setCONFIG_TOUCHSCREEN_USB_ETURBO=yCONFIG_TOUCHSCREEN_USB_GUNZE=y
# CONFIG_TOUCHSCREEN_USB_DMC_TSC10 is not setCONFIG_TOUCHSCREEN_USB_IRTOUCH=yCONFIG_TOUCHSCREEN_USB_IDEALTEK=y
# CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH is not set
# CONFIG_TOUCHSCREEN_USB_GOTOP is not set
# CONFIG_INPUT_MISC is not set
#
# Hardware I/O ports
#CONFIG_SERIO=yCONFIG_SERIO_I8042=y
# CONFIG_SERIO_SERPORT is not set
# CONFIG_SERIO_CT82C710 is not setCONFIG_SERIO_PARKBD=y
# CONFIG_SERIO_PCIPS2 is not setCONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
# CONFIG_GAMEPORT is not set
#
# Character devices
#CONFIG_VT=yCONFIG_VT_CONSOLE=yCONFIG_HW_CONSOLE=y
# CONFIG_VT_HW_CONSOLE_BINDING is not setCONFIG_SERIAL_NONSTANDARD=y
# CONFIG_COMPUTONE is not setCONFIG_ROCKETPORT=y
# CONFIG_CYCLADES is not set
# CONFIG_DIGIEPCA is not set
# CONFIG_ESPSERIAL is not set
# CONFIG_MOXA_INTELLIO is not setCONFIG_MOXA_SMARTIO=yCONFIG_MOXA_SMARTIO_NEW=y
# CONFIG_ISI is not setCONFIG_SYNCLINK=yCONFIG_SYNCLINKMP=yCONFIG_SYNCLINK_GT=y
# CONFIG_N_HDLC is not set
# CONFIG_SPECIALIX is not setCONFIG_SX=y
# CONFIG_RIO is not setCONFIG_STALDRV=y
#
# Serial drivers
#CONFIG_SERIAL_8250=yCONFIG_SERIAL_8250_CONSOLE=yCONFIG_FIX_EARLYCON_MEM=y
# CONFIG_SERIAL_8250_PCI is not set
# CONFIG_SERIAL_8250_PNP is not setCONFIG_SERIAL_8250_NR_UARTS=4CONFIG_SERIAL_8250_RUNTIME_UARTS=4CONFIG_SERIAL_8250_EXTENDED=yCONFIG_SERIAL_8250_MANY_PORTS=yCONFIG_SERIAL_8250_FOURPORT=yCONFIG_SERIAL_8250_ACCENT=y
# CONFIG_SERIAL_8250_BOCA is not setCONFIG_SERIAL_8250_EXAR_ST16C554=yCONFIG_SERIAL_8250_HUB6=yCONFIG_SERIAL_8250_SHARE_IRQ=y
# CONFIG_SERIAL_8250_DETECT_IRQ is not set
# CONFIG_SERIAL_8250_RSA is not set
# CONFIG_SERIAL_8250_MCA is not set
#
# Non-8250 serial port support
#CONFIG_SERIAL_CORE=yCONFIG_SERIAL_CORE_CONSOLE=y
# CONFIG_SERIAL_JSM is not setCONFIG_UNIX98_PTYS=yCONFIG_LEGACY_PTYS=yCONFIG_LEGACY_PTY_COUNT=256
# CONFIG_PRINTER is not setCONFIG_PPDEV=y
# CONFIG_TIPAR is not setCONFIG_HVC_DRIVER=yCONFIG_HVC_XEN=y
# CONFIG_IPMI_HANDLER is not set
# CONFIG_HW_RANDOM is not set
# CONFIG_NVRAM is not set
# CONFIG_RTC is not set
# CONFIG_GEN_RTC is not set
# CONFIG_DTLK is not setCONFIG_R3964=yCONFIG_APPLICOM=y
# CONFIG_SONYPI is not setCONFIG_MWAVE=y
# CONFIG_PC8736x_GPIO is not set
# CONFIG_NSC_GPIO is not set
# CONFIG_CS5535_GPIO is not set
# CONFIG_RAW_DRIVER is not set
# CONFIG_HANGCHECK_TIMER is not set
# CONFIG_TCG_TPM is not setCONFIG_TELCLOCK=yCONFIG_DEVPORT=y
# CONFIG_I2C is not set
#
# SPI support
#CONFIG_SPI=y
# CONFIG_SPI_DEBUG is not setCONFIG_SPI_MASTER=y
#
# SPI Master Controller Drivers
#
# CONFIG_SPI_BITBANG is not set
# CONFIG_SPI_BUTTERFLY is not set
# CONFIG_SPI_LM70_LLP is not set
#
# SPI Protocol Masters
#CONFIG_SPI_AT25=yCONFIG_SPI_SPIDEV=y
# CONFIG_SPI_TLE62X0 is not setCONFIG_W1=y
# CONFIG_W1_CON is not set
#
# 1-wire Bus Masters
#
# CONFIG_W1_MASTER_MATROX is not setCONFIG_W1_MASTER_DS2490=y
#
# 1-wire Slaves
#
# CONFIG_W1_SLAVE_THERM is not setCONFIG_W1_SLAVE_SMEM=yCONFIG_W1_SLAVE_DS2433=y
# CONFIG_W1_SLAVE_DS2433_CRC is not setCONFIG_W1_SLAVE_DS2760=yCONFIG_POWER_SUPPLY=yCONFIG_POWER_SUPPLY_DEBUG=y
# CONFIG_PDA_POWER is not set
# CONFIG_BATTERY_DS2760 is not setCONFIG_HWMON=yCONFIG_HWMON_VID=y
# CONFIG_SENSORS_ABITUGURU is not setCONFIG_SENSORS_ABITUGURU3=yCONFIG_SENSORS_K8TEMP=y
# CONFIG_SENSORS_I5K_AMB is not set
# CONFIG_SENSORS_F71805F is not set
# CONFIG_SENSORS_F71882FG is not setCONFIG_SENSORS_CORETEMP=y
# CONFIG_SENSORS_IT87 is not set
# CONFIG_SENSORS_LM70 is not setCONFIG_SENSORS_PC87360=yCONFIG_SENSORS_PC87427=y
# CONFIG_SENSORS_SIS5595 is not setCONFIG_SENSORS_SMSC47M1=y
# CONFIG_SENSORS_SMSC47B397 is not set
# CONFIG_SENSORS_VIA686A is not set
# CONFIG_SENSORS_VT1211 is not setCONFIG_SENSORS_VT8231=y
# CONFIG_SENSORS_W83627HF is not set
# CONFIG_SENSORS_W83627EHF is not set
# CONFIG_SENSORS_HDAPS is not setCONFIG_SENSORS_APPLESMC=yCONFIG_HWMON_DEBUG_CHIP=yCONFIG_WATCHDOG=y
# CONFIG_WATCHDOG_NOWAYOUT is not set
#
# Watchdog Device Drivers
#
# CONFIG_SOFT_WATCHDOG is not set
# CONFIG_ACQUIRE_WDT is not setCONFIG_ADVANTECH_WDT=yCONFIG_ALIM1535_WDT=y
# CONFIG_ALIM7101_WDT is not set
# CONFIG_SC520_WDT is not set
# CONFIG_EUROTECH_WDT is not set
# CONFIG_IB700_WDT is not set
# CONFIG_IBMASR is not setCONFIG_WAFER_WDT=y
# CONFIG_I6300ESB_WDT is not setCONFIG_ITCO_WDT=y
# CONFIG_ITCO_VENDOR_SUPPORT is not set
# CONFIG_SC1200_WDT is not setCONFIG_PC87413_WDT=yCONFIG_60XX_WDT=y
# CONFIG_SBC8360_WDT is not set
# CONFIG_CPU5_WDT is not setCONFIG_SMSC37B787_WDT=yCONFIG_W83627HF_WDT=yCONFIG_W83697HF_WDT=y
# CONFIG_W83877F_WDT is not setCONFIG_W83977F_WDT=yCONFIG_MACHZ_WDT=yCONFIG_SBC_EPX_C3_WATCHDOG=y
#
# ISA-based Watchdog Cards
#CONFIG_PCWATCHDOG=yCONFIG_MIXCOMWD=y
# CONFIG_WDT is not set
#
# PCI-based Watchdog Cards
#
# CONFIG_PCIPCWATCHDOG is not setCONFIG_WDTPCI=y
# CONFIG_WDT_501_PCI is not set
#
# USB-based Watchdog Cards
#
# CONFIG_USBPCWATCHDOG is not set
#
# Sonics Silicon Backplane
#CONFIG_SSB_POSSIBLE=yCONFIG_SSB=yCONFIG_SSB_PCIHOST_POSSIBLE=yCONFIG_SSB_PCIHOST=yCONFIG_SSB_SILENT=yCONFIG_SSB_DRIVER_PCICORE_POSSIBLE=yCONFIG_SSB_DRIVER_PCICORE=y
#
# Multifunction device drivers
#
# CONFIG_MFD_SM501 is not set
#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not setCONFIG_DVB_CORE=y
# CONFIG_DVB_CAPTURE_DRIVERS is not set
# CONFIG_DAB is not set
#
# Graphics support
#CONFIG_AGP=y
# CONFIG_AGP_ALI is not setCONFIG_AGP_ATI=y
# CONFIG_AGP_AMD is not setCONFIG_AGP_AMD64=yCONFIG_AGP_INTEL=yCONFIG_AGP_NVIDIA=y
# CONFIG_AGP_SIS is not setCONFIG_AGP_SWORKS=yCONFIG_AGP_VIA=y
# CONFIG_AGP_EFFICEON is not set
# CONFIG_DRM is not set
# CONFIG_VGASTATE is not set
# CONFIG_VIDEO_OUTPUT_CONTROL is not set
# CONFIG_FB is not setCONFIG_BACKLIGHT_LCD_SUPPORT=yCONFIG_LCD_CLASS_DEVICE=yCONFIG_LCD_LTV350QV=yCONFIG_BACKLIGHT_CLASS_DEVICE=yCONFIG_BACKLIGHT_CORGI=yCONFIG_BACKLIGHT_PROGEAR=y
#
# Display device support
#
# CONFIG_DISPLAY_SUPPORT is not set
#
# Console display driver support
#CONFIG_VGA_CONSOLE=yCONFIG_VGACON_SOFT_SCROLLBACK=yCONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
# CONFIG_VIDEO_SELECT is not set
# CONFIG_MDA_CONSOLE is not setCONFIG_DUMMY_CONSOLE=y
#
# Sound
#
# CONFIG_SOUND is not setCONFIG_AC97_BUS=yCONFIG_HID_SUPPORT=y
# CONFIG_HID is not set
#
# USB Input Devices
#
# CONFIG_USB_HID is not set
#
# USB HID Boot Protocol drivers
#
# CONFIG_USB_KBD is not setCONFIG_USB_MOUSE=yCONFIG_USB_SUPPORT=yCONFIG_USB_ARCH_HAS_HCD=yCONFIG_USB_ARCH_HAS_OHCI=yCONFIG_USB_ARCH_HAS_EHCI=yCONFIG_USB=y
# CONFIG_USB_DEBUG is not set
#
# Miscellaneous USB options
#CONFIG_USB_DEVICEFS=yCONFIG_USB_DEVICE_CLASS=y
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_OTG is not set
#
# USB Host Controller Drivers
#CONFIG_USB_EHCI_HCD=yCONFIG_USB_EHCI_SPLIT_ISO=y
# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
# CONFIG_USB_EHCI_TT_NEWSCHED is not setCONFIG_USB_ISP116X_HCD=yCONFIG_USB_OHCI_HCD=y
# CONFIG_USB_OHCI_HCD_SSB is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not setCONFIG_USB_OHCI_LITTLE_ENDIAN=yCONFIG_USB_UHCI_HCD=y
# CONFIG_USB_SL811_HCD is not setCONFIG_USB_R8A66597_HCD=y
#
# USB Device Class drivers
#CONFIG_USB_ACM=yCONFIG_USB_PRINTER=y
#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' #
#
# may also be needed; see USB_STORAGE Help for more information # # CONFIG_USB_STORAGE is not set # CONFIG_USB_LIBUSUAL is not set
#
# USB Imaging devices
#CONFIG_USB_MDC800=y
# CONFIG_USB_MICROTEK is not setCONFIG_USB_MON=y
#
# USB port drivers
#
# CONFIG_USB_USS720 is not set
#
# USB Serial Converter support
#
# CONFIG_USB_SERIAL is not set
#
# USB Miscellaneous drivers
#CONFIG_USB_EMI62=y
# CONFIG_USB_EMI26 is not setCONFIG_USB_ADUTUX=y
# CONFIG_USB_AUERSWALD is not set
# CONFIG_USB_RIO500 is not set
# CONFIG_USB_LEGOTOWER is not setCONFIG_USB_LCD=yCONFIG_USB_BERRY_CHARGE=yCONFIG_USB_LED=y
# CONFIG_USB_CYPRESS_CY7C63 is not setCONFIG_USB_CYTHERM=yCONFIG_USB_PHIDGET=yCONFIG_USB_PHIDGETKIT=yCONFIG_USB_PHIDGETMOTORCONTROL=y
# CONFIG_USB_PHIDGETSERVO is not setCONFIG_USB_IDMOUSE=y
# CONFIG_USB_FTDI_ELAN is not setCONFIG_USB_APPLEDISPLAY=y
# CONFIG_USB_SISUSBVGA is not set
# CONFIG_USB_LD is not set
# CONFIG_USB_TRANCEVIBRATOR is not set
# CONFIG_USB_IOWARRIOR is not setCONFIG_USB_TEST=y
#
# USB DSL modem support
#CONFIG_USB_ATM=y
# CONFIG_USB_SPEEDTOUCH is not setCONFIG_USB_CXACRU=y
# CONFIG_USB_UEAGLEATM is not set
# CONFIG_USB_XUSBATM is not set
#
# USB Gadget Support
#CONFIG_USB_GADGET=y
# CONFIG_USB_GADGET_DEBUG is not setCONFIG_USB_GADGET_DEBUG_FILES=yCONFIG_USB_GADGET_DEBUG_FS=yCONFIG_USB_GADGET_SELECTED=y
# CONFIG_USB_GADGET_AMD5536UDC is not set
# CONFIG_USB_GADGET_ATMEL_USBA is not set
# CONFIG_USB_GADGET_FSL_USB2 is not set
# CONFIG_USB_GADGET_NET2280 is not set
# CONFIG_USB_GADGET_PXA2XX is not set
# CONFIG_USB_GADGET_M66592 is not set
# CONFIG_USB_GADGET_GOKU is not set
# CONFIG_USB_GADGET_LH7A40X is not set
# CONFIG_USB_GADGET_OMAP is not set
# CONFIG_USB_GADGET_S3C2410 is not set
# CONFIG_USB_GADGET_AT91 is not setCONFIG_USB_GADGET_DUMMY_HCD=yCONFIG_USB_DUMMY_HCD=yCONFIG_USB_GADGET_DUALSPEED=y
# CONFIG_USB_ZERO is not set
# CONFIG_USB_ETH is not set
# CONFIG_USB_GADGETFS is not setCONFIG_USB_FILE_STORAGE=yCONFIG_USB_FILE_STORAGE_TEST=y
# CONFIG_USB_G_SERIAL is not set
# CONFIG_USB_MIDI_GADGET is not set
# CONFIG_MMC is not setCONFIG_NEW_LEDS=yCONFIG_LEDS_CLASS=y
#
# LED drivers
#
#
# LED Triggers
#CONFIG_LEDS_TRIGGERS=y
# CONFIG_LEDS_TRIGGER_TIMER is not set
# CONFIG_LEDS_TRIGGER_HEARTBEAT is not setCONFIG_INFINIBAND=y
# CONFIG_INFINIBAND_USER_MAD is not setCONFIG_INFINIBAND_USER_ACCESS=yCONFIG_INFINIBAND_USER_MEM=yCONFIG_INFINIBAND_ADDR_TRANS=y
# CONFIG_INFINIBAND_MTHCA is not set
# CONFIG_INFINIBAND_AMSO1100 is not setCONFIG_MLX4_INFINIBAND=y
# CONFIG_INFINIBAND_IPOIB is not set
# CONFIG_INFINIBAND_SRP is not setCONFIG_INFINIBAND_ISER=yCONFIG_EDAC=y
#
# Reporting subsystems
#CONFIG_EDAC_DEBUG=y
# CONFIG_EDAC_MM_EDAC is not setCONFIG_RTC_LIB=yCONFIG_RTC_CLASS=yCONFIG_RTC_HCTOSYS=yCONFIG_RTC_HCTOSYS_DEVICE="rtc0"
# CONFIG_RTC_DEBUG is not set
#
# RTC interfaces
#CONFIG_RTC_INTF_SYSFS=y
# CONFIG_RTC_INTF_PROC is not set
# CONFIG_RTC_INTF_DEV is not set
# CONFIG_RTC_DRV_TEST is not set
#
# SPI RTC drivers
#
# CONFIG_RTC_DRV_RS5C348 is not setCONFIG_RTC_DRV_MAX6902=y
#
# Platform RTC drivers
#CONFIG_RTC_DRV_CMOS=yCONFIG_RTC_DRV_DS1553=y
# CONFIG_RTC_DRV_STK17TA8 is not set
# CONFIG_RTC_DRV_DS1742 is not set
# CONFIG_RTC_DRV_M48T86 is not set
# CONFIG_RTC_DRV_M48T59 is not set
# CONFIG_RTC_DRV_V3020 is not set
#
# on-CPU RTC drivers
#
# CONFIG_DMADEVICES is not set
# CONFIG_AUXDISPLAY is not set
# CONFIG_VIRTUALIZATION is not set
#
# Userspace I/O
#CONFIG_UIO=yCONFIG_UIO_CIF=y
#
# Firmware Drivers
#
# CONFIG_EDD is not setCONFIG_DELL_RBU=yCONFIG_DCDBAS=yCONFIG_DMIID=y
#
# File systems
#
# CONFIG_EXT2_FS is not setCONFIG_EXT3_FS=yCONFIG_EXT3_FS_XATTR=yCONFIG_EXT3_FS_POSIX_ACL=yCONFIG_EXT3_FS_SECURITY=y
# CONFIG_EXT4DEV_FS is not setCONFIG_JBD=y
# CONFIG_JBD_DEBUG is not setCONFIG_FS_MBCACHE=yCONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not setCONFIG_REISERFS_FS_XATTR=yCONFIG_REISERFS_FS_POSIX_ACL=yCONFIG_REISERFS_FS_SECURITY=y
# CONFIG_JFS_FS is not setCONFIG_FS_POSIX_ACL=y
# CONFIG_XFS_FS is not set
# CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not setCONFIG_MINIX_FS=yCONFIG_ROMFS_FS=y
# CONFIG_INOTIFY is not setCONFIG_QUOTA=y
# CONFIG_QUOTA_NETLINK_INTERFACE is not setCONFIG_PRINT_QUOTA_WARNING=y
# CONFIG_QFMT_V1 is not setCONFIG_QFMT_V2=yCONFIG_QUOTACTL=yCONFIG_DNOTIFY=y
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not setCONFIG_FUSE_FS=yCONFIG_GENERIC_ACL=y
#
# CD-ROM/DVD Filesystems
#
# CONFIG_ISO9660_FS is not setCONFIG_UDF_FS=yCONFIG_UDF_NLS=y
#
# DOS/FAT/NT Filesystems
#CONFIG_FAT_FS=yCONFIG_MSDOS_FS=y
# CONFIG_VFAT_FS is not setCONFIG_FAT_DEFAULT_CODEPAGE=437
# CONFIG_NTFS_FS is not set
#
# Pseudo filesystems
#CONFIG_PROC_FS=y
# CONFIG_PROC_KCORE is not set
# CONFIG_PROC_SYSCTL is not setCONFIG_SYSFS=yCONFIG_TMPFS=yCONFIG_TMPFS_POSIX_ACL=yCONFIG_HUGETLBFS=yCONFIG_HUGETLB_PAGE=yCONFIG_CONFIGFS_FS=y
#
# Miscellaneous filesystems
#CONFIG_ADFS_FS=yCONFIG_ADFS_FS_RW=y
# CONFIG_AFFS_FS is not setCONFIG_ECRYPT_FS=y
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not setCONFIG_BFS_FS=y
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not setCONFIG_VXFS_FS=yCONFIG_HPFS_FS=y
# CONFIG_QNX4FS_FS is not setCONFIG_SYSV_FS=yCONFIG_UFS_FS=yCONFIG_UFS_FS_WRITE=yCONFIG_UFS_DEBUG=y
# CONFIG_NETWORK_FILESYSTEMS is not set
#
# Partition Types
#CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not setCONFIG_OSF_PARTITION=yCONFIG_AMIGA_PARTITION=yCONFIG_ATARI_PARTITION=y
# CONFIG_MAC_PARTITION is not setCONFIG_MSDOS_PARTITION=yCONFIG_BSD_DISKLABEL=y
# CONFIG_MINIX_SUBPARTITION is not setCONFIG_SOLARIS_X86_PARTITION=yCONFIG_UNIXWARE_DISKLABEL=y
# CONFIG_LDM_PARTITION is not set
# CONFIG_SGI_PARTITION is not set
# CONFIG_ULTRIX_PARTITION is not setCONFIG_SUN_PARTITION=y
# CONFIG_KARMA_PARTITION is not setCONFIG_EFI_PARTITION=yCONFIG_SYSV68_PARTITION=yCONFIG_NLS=yCONFIG_NLS_DEFAULT="iso8859-1"CONFIG_NLS_CODEPAGE_437=yCONFIG_NLS_CODEPAGE_737=yCONFIG_NLS_CODEPAGE_775=y
# CONFIG_NLS_CODEPAGE_850 is not setCONFIG_NLS_CODEPAGE_852=yCONFIG_NLS_CODEPAGE_855=yCONFIG_NLS_CODEPAGE_857=yCONFIG_NLS_CODEPAGE_860=y
# CONFIG_NLS_CODEPAGE_861 is not setCONFIG_NLS_CODEPAGE_862=y
# CONFIG_NLS_CODEPAGE_863 is not setCONFIG_NLS_CODEPAGE_864=yCONFIG_NLS_CODEPAGE_865=y
# CONFIG_NLS_CODEPAGE_866 is not setCONFIG_NLS_CODEPAGE_869=y
# CONFIG_NLS_CODEPAGE_936 is not set
# CONFIG_NLS_CODEPAGE_950 is not set
# CONFIG_NLS_CODEPAGE_932 is not set
# CONFIG_NLS_CODEPAGE_949 is not set
# CONFIG_NLS_CODEPAGE_874 is not setCONFIG_NLS_ISO8859_8=y
# CONFIG_NLS_CODEPAGE_1250 is not setCONFIG_NLS_CODEPAGE_1251=y
# CONFIG_NLS_ASCII is not set
# CONFIG_NLS_ISO8859_1 is not set
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not setCONFIG_NLS_ISO8859_4=yCONFIG_NLS_ISO8859_5=yCONFIG_NLS_ISO8859_6=yCONFIG_NLS_ISO8859_7=y
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not setCONFIG_NLS_ISO8859_14=y
# CONFIG_NLS_ISO8859_15 is not setCONFIG_NLS_KOI8_R=yCONFIG_NLS_KOI8_U=y
# CONFIG_NLS_UTF8 is not setCONFIG_DLM=y
# CONFIG_DLM_DEBUG is not setCONFIG_INSTRUMENTATION=y
# CONFIG_PROFILING is not set
# CONFIG_MARKERS is not set
#
# Kernel hacking
#CONFIG_TRACE_IRQFLAGS_SUPPORT=y
# CONFIG_PRINTK_TIME is not set
# CONFIG_ENABLE_WARN_DEPRECATED is not set
# CONFIG_ENABLE_MUST_CHECK is not setCONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not setCONFIG_DEBUG_FS=yCONFIG_HEADERS_CHECK=yCONFIG_DEBUG_KERNEL=yCONFIG_DEBUG_SHIRQ=y
# CONFIG_DETECT_SOFTLOCKUP is not setCONFIG_SCHED_DEBUG=yCONFIG_SCHEDSTATS=yCONFIG_TIMER_STATS=y
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_RT_MUTEXES is not setCONFIG_RT_MUTEX_TESTER=yCONFIG_DEBUG_SPINLOCK=yCONFIG_DEBUG_MUTEXES=yCONFIG_DEBUG_LOCK_ALLOC=yCONFIG_PROVE_LOCKING=yCONFIG_LOCKDEP=yCONFIG_LOCK_STAT=yCONFIG_DEBUG_LOCKDEP=yCONFIG_TRACE_IRQFLAGS=y
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not setCONFIG_STACKTRACE=y
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_HIGHMEM is not set
# CONFIG_DEBUG_INFO is not setCONFIG_DEBUG_VM=y
# CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_SG is not setCONFIG_FRAME_POINTER=yCONFIG_FORCED_INLINING=y
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_FAULT_INJECTION is not set
# CONFIG_SAMPLES is not setCONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not setCONFIG_DEBUG_RODATA=y
# CONFIG_4KSTACKS is not setCONFIG_X86_FIND_SMP_CONFIG=yCONFIG_X86_MPPARSE=yCONFIG_DOUBLEFAULT=y
#
# Security options
#CONFIG_KEYS=yCONFIG_KEYS_DEBUG_PROC_KEYS=yCONFIG_SECURITY=y
# CONFIG_SECURITY_NETWORK is not setCONFIG_SECURITY_CAPABILITIES=y
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
# CONFIG_SECURITY_ROOTPLUG is not setCONFIG_XOR_BLOCKS=yCONFIG_ASYNC_CORE=yCONFIG_ASYNC_MEMCPY=yCONFIG_ASYNC_XOR=yCONFIG_CRYPTO=yCONFIG_CRYPTO_ALGAPI=yCONFIG_CRYPTO_BLKCIPHER=yCONFIG_CRYPTO_HASH=yCONFIG_CRYPTO_MANAGER=yCONFIG_CRYPTO_HMAC=y
# CONFIG_CRYPTO_XCBC is not set
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_MD4 is not setCONFIG_CRYPTO_MD5=yCONFIG_CRYPTO_SHA1=yCONFIG_CRYPTO_SHA256=y
# CONFIG_CRYPTO_SHA512 is not set
# CONFIG_CRYPTO_WP512 is not setCONFIG_CRYPTO_TGR192=yCONFIG_CRYPTO_GF128MUL=yCONFIG_CRYPTO_ECB=yCONFIG_CRYPTO_CBC=y
# CONFIG_CRYPTO_PCBC is not set
# CONFIG_CRYPTO_LRW is not setCONFIG_CRYPTO_XTS=y
# CONFIG_CRYPTO_CRYPTD is not setCONFIG_CRYPTO_DES=yCONFIG_CRYPTO_FCRYPT=y
# CONFIG_CRYPTO_BLOWFISH is not setCONFIG_CRYPTO_TWOFISH=yCONFIG_CRYPTO_TWOFISH_COMMON=y
# CONFIG_CRYPTO_TWOFISH_586 is not setCONFIG_CRYPTO_SERPENT=yCONFIG_CRYPTO_AES=yCONFIG_CRYPTO_AES_586=yCONFIG_CRYPTO_CAST5=yCONFIG_CRYPTO_CAST6=y
# CONFIG_CRYPTO_TEA is not setCONFIG_CRYPTO_ARC4=yCONFIG_CRYPTO_KHAZAD=y
# CONFIG_CRYPTO_ANUBIS is not setCONFIG_CRYPTO_SEED=yCONFIG_CRYPTO_DEFLATE=yCONFIG_CRYPTO_MICHAEL_MIC=y
# CONFIG_CRYPTO_CRC32C is not set
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_AUTHENC is not set
# CONFIG_CRYPTO_HW is not set
#
# Library routines
#CONFIG_BITREVERSE=yCONFIG_CRC_CCITT=yCONFIG_CRC16=y
# CONFIG_CRC_ITU_T is not setCONFIG_CRC32=yCONFIG_CRC7=y
# CONFIG_LIBCRC32C is not setCONFIG_ZLIB_INFLATE=yCONFIG_ZLIB_DEFLATE=yCONFIG_PLIST=yCONFIG_HAS_IOMEM=yCONFIG_HAS_IOPORT=yCONFIG_HAS_DMA=yCONFIG_CHECK_SIGNATURE=y
Quoted 19 lines · Ingo Molnar
Quoted 6 lines · Jeremy Fitzhardinge
All x86 modes and architectures have very similar pagetable
structures: the page flags, the accessors for testing/setting them, and the combinations of page flags used for kernel and usermode mappings are all the same. The main difference is between 32 and 64-bit pagetable entries, with the latter supporting the NX bit.Quoted 9 lines
The most significant difference between the modes/architectures is the number of levels in the pagetable (4 for 64-bit, 3 for 32-bit/PAE, 2 for non-PAE 32-bit). This accounts for the remaining code in the various mode-specific headers.
I've tried to avoid changing formatting as much as possible, so that the code motion is more obvious. A subsequent patch will clean things up in place.
Quoted 8 lines
the dreaded auto-qa - this patch fails to build:
arch/x86/mm/init_32.c: In function 'mark_rodata_ro':
arch/x86/mm/init_32.c:811: error: 'PAGE_KERNEL_RX' undeclared (first use in this function)arch/x86/mm/init_32.c:811: error: (Each undeclared identifier is reported only oncearch/x86/mm/init_32.c:811: error: for each function it appears in.) make[1]: *** [arch/x86/mm/init_32.o] Error 1
Sigh. Shouldn't be too hard to deal with.
Quoted 5 lines
config attached. I'll skip this series of your patches for now. I'd expect this to be one of the hardest areas to unify - it's one of the areas with the largest amount of arbitrary deviations between 32-bit and 64-bit and these include files permeate everything.
Yeah, it's been great fun :(. On the other hand, I think its getting there; the interactions between the various headers is getting more comprehensible, and moving to a consistent use of inline functions rather than a mixture of macros and inlines is making things more deterministic.
Quoted 7 lines
( In case you are thinking about approaching this differently, i'd
suggest a strategy that doesnt just try to unify the whole kit at once but does it with very small steps where each step is trivially verifyable. 50 small patches are generally a lot easier to create than 5 big patches. [ Of course if you can do 5 perfect patches that's just as good :-) ] )
Yeah, I tried doing it in smaller pieces, but its fairly difficult just because its all so inter-tangled. But I think its close now.
J