# # For a description of the syntax of this configuration file, # see Documentation/kbuild/kconfig-language.txt. # mainmenu "Linux/$ARCH $KERNELVERSION Kernel Configuration" config SRCARCH string option env="SRCARCH" source "arch/$SRCARCH/Kconfig" # # Configuration for initramfs # config INITRAMFS_SOURCE string "Initramfs source file(s)" default "" help This can be either a single cpio archive with a .cpio suffix or a space-separated list of directories and files for building the initramfs image. A cpio archive should contain a filesystem archive to be used as an initramfs image. Directories should contain a filesystem layout to be included in the initramfs image. Files should contain entries according to the format described by the "usr/gen_init_cpio" program in the kernel tree. When multiple directories and files are specified then the initramfs image will be the aggregate of all of them. See for more details. If you are not sure, leave it blank. config INITRAMFS_ROOT_UID int "User ID to map to 0 (user root)" depends on INITRAMFS_SOURCE!="" default "0" help This setting is only meaningful if the INITRAMFS_SOURCE is contains a directory. Setting this user ID (UID) to something other than "0" will cause all files owned by that UID to be owned by user root in the initial ramdisk image. If you are not sure, leave it set to "0". config INITRAMFS_ROOT_GID int "Group ID to map to 0 (group root)" depends on INITRAMFS_SOURCE!="" default "0" help This setting is only meaningful if the INITRAMFS_SOURCE is contains a directory. Setting this group ID (GID) to something other than "0" will cause all files owned by that GID to be owned by group root in the initial ramdisk image. If you are not sure, leave it set to "0". config RD_GZIP bool "Support initial ramdisks compressed using gzip" if EXPERT default y depends on BLK_DEV_INITRD select DECOMPRESS_GZIP help Support loading of a gzip encoded initial ramdisk or cpio buffer. If unsure, say Y. config RD_BZIP2 bool "Support initial ramdisks compressed using bzip2" if EXPERT default !EXPERT depends on BLK_DEV_INITRD select DECOMPRESS_BZIP2 help Support loading of a bzip2 encoded initial ramdisk or cpio buffer If unsure, say N. config RD_LZMA bool "Support initial ramdisks compressed using LZMA" if EXPERT default !EXPERT depends on BLK_DEV_INITRD select DECOMPRESS_LZMA help Support loading of a LZMA encoded initial ramdisk or cpio buffer If unsure, say N. config RD_XZ bool "Support initial ramdisks compressed using XZ" if EXPERT default !EXPERT depends on BLK_DEV_INITRD select DECOMPRESS_XZ help Support loading of a XZ encoded initial ramdisk or cpio buffer. If unsure, say N. config RD_LZO bool "Support initial ramdisks compressed using LZO" if EXPERT default !EXPERT depends on BLK_DEV_INITRD select DECOMPRESS_LZO help Support loading of a LZO encoded initial ramdisk or cpio buffer If unsure, say N. choice prompt "Built-in initramfs compression mode" if INITRAMFS_SOURCE!="" help This option decides by which algorithm the builtin initramfs will be compressed. Several compression algorithms are available, which differ in efficiency, compression and decompression speed. Compression speed is only relevant when building a kernel. Decompression speed is relevant at each boot. If you have any problems with bzip2 or LZMA compressed initramfs, mail me (Alain Knaff) . High compression options are mostly useful for users who are low on RAM, since it reduces the memory consumption during boot. If in doubt, select 'gzip' config INITRAMFS_COMPRESSION_NONE bool "None" help Do not compress the built-in initramfs at all. This may sound wasteful in space, but, you should be aware that the built-in initramfs will be compressed at a later stage anyways along with the rest of the kernel, on those architectures that support this. However, not compressing the initramfs may lead to slightly higher memory consumption during a short time at boot, while both the cpio image and the unpacked filesystem image will be present in memory simultaneously config INITRAMFS_COMPRESSION_GZIP bool "Gzip" depends on RD_GZIP help The old and tried gzip compression. It provides a good balance between compression ratio and decompression speed. config INITRAMFS_COMPRESSION_BZIP2 bool "Bzip2" depends on RD_BZIP2 help Its compression ratio and speed is intermediate. Decompression speed is slowest among the four. The initramfs size is about 10% smaller with bzip2, in comparison to gzip. Bzip2 uses a large amount of memory. For modern kernels you will need at least 8MB RAM or more for booting. config INITRAMFS_COMPRESSION_LZMA bool "LZMA" depends on RD_LZMA help The most recent compression algorithm. Its ratio is best, decompression speed is between the other three. Compression is slowest. The initramfs size is about 33% smaller with LZMA in comparison to gzip. config INITRAMFS_COMPRESSION_XZ bool "XZ" depends on RD_XZ help XZ uses the LZMA2 algorithm. The initramfs size is about 30% smaller with XZ in comparison to gzip. Decompression speed is better than that of bzip2 but worse than gzip and LZO. Compression is slow. config INITRAMFS_COMPRESSION_LZO bool "LZO" depends on RD_LZO help Its compression ratio is the poorest among the four. The kernel size is about 10% bigger than gzip; however its speed (both compression and decompression) is the fastest. endchoice # # Block layer core configuration # menuconfig BLOCK bool "Enable the block layer" if EXPERT default y help Provide block layer support for the kernel. Disable this option to remove the block layer support from the kernel. This may be useful for embedded devices. If this option is disabled: - block device files will become unusable - some filesystems (such as ext3) will become unavailable. Also, SCSI character devices and USB storage will be disabled since they make use of various block layer definitions and facilities. Say Y here unless you know you really don't want to mount disks and suchlike. if BLOCK config LBDAF bool "Support for large (2TB+) block devices and files" depends on !64BIT default y help Enable block devices or files of size 2TB and larger. This option is required to support the full capacity of large (2TB+) block devices, including RAID, disk, Network Block Device, Logical Volume Manager (LVM) and loopback. This option also enables support for single files larger than 2TB. The ext4 filesystem requires that this feature be enabled in order to support filesystems that have the huge_file feature enabled. Otherwise, it will refuse to mount in the read-write mode any filesystems that use the huge_file feature, which is enabled by default by mke2fs.ext4. The GFS2 filesystem also requires this feature. If unsure, say Y. config BLK_DEV_BSG bool "Block layer SG support v4" default y help Saying Y here will enable generic SG (SCSI generic) v4 support for any block device. Unlike SG v3 (aka block/scsi_ioctl.c drivers/scsi/sg.c), SG v4 can handle complicated SCSI commands: tagged variable length cdbs with bidirectional data transfers and generic request/response protocols (e.g. Task Management Functions and SMP in Serial Attached SCSI). This option is required by recent UDEV versions to properly access device serial numbers, etc. If unsure, say Y. config BLK_DEV_INTEGRITY bool "Block layer data integrity support" ---help--- Some storage devices allow extra information to be stored/retrieved to help protect the data. The block layer data integrity option provides hooks which can be used by filesystems to ensure better data integrity. Say yes here if you have a storage device that provides the T10/SCSI Data Integrity Field or the T13/ATA External Path Protection. If in doubt, say N. config BLK_DEV_THROTTLING bool "Block layer bio throttling support" depends on BLK_CGROUP=y && EXPERIMENTAL default n ---help--- Block layer bio throttling support. It can be used to limit the IO rate to a device. IO rate policies are per cgroup and one needs to mount and use blkio cgroup controller for creating cgroups and specifying per device IO rate policies. See Documentation/cgroups/blkio-controller.txt for more information. endif # BLOCK config BLOCK_COMPAT bool depends on BLOCK && COMPAT default y source block/Kconfig.iosched menu "Machine selection" config SCORE def_bool y select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_SHOW choice prompt "System type" default MACH_SPCT6600 config ARCH_SCORE7 bool "SCORE7 processor" select SYS_SUPPORTS_32BIT_KERNEL select CPU_SCORE7 select GENERIC_HAS_IOMAP config MACH_SPCT6600 bool "SPCT6600 series based machines" select SYS_SUPPORTS_32BIT_KERNEL select CPU_SCORE7 select GENERIC_HAS_IOMAP config SCORE_SIM bool "Score simulator" select SYS_SUPPORTS_32BIT_KERNEL select CPU_SCORE7 select GENERIC_HAS_IOMAP endchoice endmenu config CPU_SCORE7 bool config GENERIC_IOMAP def_bool y config NO_DMA bool default y config RWSEM_GENERIC_SPINLOCK def_bool y config GENERIC_FIND_NEXT_BIT def_bool y config GENERIC_HWEIGHT def_bool y config GENERIC_CALIBRATE_DELAY def_bool y config GENERIC_CLOCKEVENTS def_bool y config SCHED_NO_NO_OMIT_FRAME_POINTER def_bool y config GENERIC_SYSCALL_TABLE def_bool y config SCORE_L1_CACHE_SHIFT int default "4" menu "Kernel type" config 32BIT def_bool y config ARCH_FLATMEM_ENABLE def_bool y config ARCH_POPULATES_NODE_MAP def_bool y source "mm/Kconfig" config MEMORY_START hex default 0xa0000000 source "kernel/time/Kconfig" source "kernel/Kconfig.hz" source "kernel/Kconfig.preempt" endmenu config RWSEM_GENERIC_SPINLOCK def_bool y config LOCKDEP_SUPPORT def_bool y config STACKTRACE_SUPPORT def_bool y source "init/Kconfig" config PROBE_INITRD_HEADER bool "Probe initrd header created by addinitrd" depends on BLK_DEV_INITRD help Probe initrd header at the last page of kernel image. Say Y here if you are using arch/score/boot/addinitrd.c to add initrd or initramfs image to the kernel image. Otherwise, say N. config MMU def_bool y menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/score/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" # For a description of the syntax of this configuration file, # see Documentation/kbuild/kconfig-language.txt. config TILE def_bool y select HAVE_KVM if !TILEGX select GENERIC_FIND_FIRST_BIT select GENERIC_FIND_NEXT_BIT select USE_GENERIC_SMP_HELPERS select CC_OPTIMIZE_FOR_SIZE select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_PROBE select GENERIC_PENDING_IRQ if SMP select GENERIC_IRQ_SHOW # FIXME: investigate whether we need/want these options. # select HAVE_IOREMAP_PROT # select HAVE_OPTPROBES # select HAVE_REGS_AND_STACK_ACCESS_API # select HAVE_HW_BREAKPOINT # select PERF_EVENTS # select HAVE_USER_RETURN_NOTIFIER # config NO_BOOTMEM # config ARCH_SUPPORTS_DEBUG_PAGEALLOC # config HUGETLB_PAGE_SIZE_VARIABLE config MMU def_bool y config GENERIC_CSUM def_bool y config SEMAPHORE_SLEEPERS def_bool y config HAVE_ARCH_ALLOC_REMAP def_bool y config HAVE_SETUP_PER_CPU_AREA def_bool y config NEED_PER_CPU_PAGE_FIRST_CHUNK def_bool y config SYS_SUPPORTS_HUGETLBFS def_bool y config GENERIC_TIME def_bool y config GENERIC_CLOCKEVENTS def_bool y # FIXME: tilegx can implement a more efficient rwsem. config RWSEM_GENERIC_SPINLOCK def_bool y # We have a very flat architecture from a migration point of view, # so save boot time by presetting this (particularly useful on tile-sim). config DEFAULT_MIGRATION_COST int default "10000000" # We only support gcc 4.4 and above, so this should work. config ARCH_SUPPORTS_OPTIMIZED_INLINING def_bool y config ARCH_PHYS_ADDR_T_64BIT def_bool y config ARCH_DMA_ADDR_T_64BIT def_bool y config LOCKDEP_SUPPORT def_bool y config STACKTRACE_SUPPORT def_bool y select STACKTRACE # We use discontigmem for now; at some point we may want to switch # to sparsemem (Tilera bug 7996). config ARCH_DISCONTIGMEM_ENABLE def_bool y config ARCH_DISCONTIGMEM_DEFAULT def_bool y config TRACE_IRQFLAGS_SUPPORT def_bool y config STRICT_DEVMEM def_bool y # SMP is required for Tilera Linux. config SMP def_bool y # Allow checking for compile-time determined overflow errors in # copy_from_user(). There are still unprovable places in the # generic code as of 2.6.34, so this option is not really compatible # with -Werror, which is more useful in general. config DEBUG_COPY_FROM_USER def_bool n config HVC_TILE select HVC_DRIVER def_bool y # Please note: TILE-Gx support is not yet finalized; this is # the preliminary support. TILE-Gx drivers are only provided # with the alpha or beta test versions for Tilera customers. config TILEGX depends on EXPERIMENTAL bool "Building with TILE-Gx (64-bit) compiler and toolchain" config 64BIT depends on TILEGX def_bool y config ARCH_DEFCONFIG string default "arch/tile/configs/tile_defconfig" if !TILEGX default "arch/tile/configs/tilegx_defconfig" if TILEGX source "init/Kconfig" menu "Tilera-specific configuration" config NR_CPUS int "Maximum number of tiles (2-255)" range 2 255 depends on SMP default "64" ---help--- Building with 64 is the recommended value, but a slightly smaller kernel memory footprint results from using a smaller value on chips with fewer tiles. source "kernel/time/Kconfig" source "kernel/Kconfig.hz" config KEXEC bool "kexec system call" ---help--- kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware. It is used to implement the "mboot" Tilera booter. The name comes from the similarity to the exec system call. config COMPAT bool "Support 32-bit TILE-Gx binaries in addition to 64-bit" depends on TILEGX select COMPAT_BINFMT_ELF default y ---help--- If enabled, the kernel will support running TILE-Gx binaries that were built with the -m32 option. config SYSVIPC_COMPAT def_bool y depends on COMPAT && SYSVIPC # We do not currently support disabling HIGHMEM on tile64 and tilepro. config HIGHMEM bool # "Support for more than 512 MB of RAM" default !TILEGX ---help--- Linux can use the full amount of RAM in the system by default. However, the address space of TILE processors is only 4 Gigabytes large. That means that, if you have a large amount of physical memory, not all of it can be "permanently mapped" by the kernel. The physical memory that's not permanently mapped is called "high memory". If you are compiling a kernel which will never run on a machine with more than 512 MB total physical RAM, answer "false" here. This will result in the kernel mapping all of physical memory into the top 1 GB of virtual memory space. If unsure, say "true". # We do not currently support disabling NUMA. config NUMA bool # "NUMA Memory Allocation and Scheduler Support" depends on SMP && DISCONTIGMEM default y ---help--- NUMA memory allocation is required for TILE processors unless booting with memory striping enabled in the hypervisor, or with only a single memory controller. It is recommended that this option always be enabled. config NODES_SHIFT int "Log base 2 of the max number of memory controllers" default 2 depends on NEED_MULTIPLE_NODES ---help--- By default, 2, i.e. 2^2 == 4 DDR2 controllers. In a system with more controllers, this value should be raised. choice depends on !TILEGX prompt "Memory split" if EXPERT default VMSPLIT_3G ---help--- Select the desired split between kernel and user memory. If the address range available to the kernel is less than the physical memory installed, the remaining memory will be available as "high memory". Accessing high memory is a little more costly than low memory, as it needs to be mapped into the kernel first. Note that increasing the kernel address space limits the range available to user programs, making the address space there tighter. Selecting anything other than the default 3G/1G split will also likely make your kernel incompatible with binary-only kernel modules. If you are not absolutely sure what you are doing, leave this option alone! config VMSPLIT_3_75G bool "3.75G/0.25G user/kernel split (no kernel networking)" config VMSPLIT_3_5G bool "3.5G/0.5G user/kernel split" config VMSPLIT_3G bool "3G/1G user/kernel split" config VMSPLIT_2_75G bool "2.75G/1.25G user/kernel split (for full 1G low memory)" config VMSPLIT_2_5G bool "2.5G/1.5G user/kernel split" config VMSPLIT_2_25G bool "2.25G/1.75G user/kernel split" config VMSPLIT_2G bool "2G/2G user/kernel split" config VMSPLIT_1G bool "1G/3G user/kernel split" endchoice config PAGE_OFFSET hex default 0xF0000000 if VMSPLIT_3_75G default 0xE0000000 if VMSPLIT_3_5G default 0xB0000000 if VMSPLIT_2_75G default 0xA0000000 if VMSPLIT_2_5G default 0x90000000 if VMSPLIT_2_25G default 0x80000000 if VMSPLIT_2G default 0x40000000 if VMSPLIT_1G default 0xC0000000 source "mm/Kconfig" config CMDLINE_BOOL bool "Built-in kernel command line" default n ---help--- Allow for specifying boot arguments to the kernel at build time. On some systems (e.g. embedded ones), it is necessary or convenient to provide some or all of the kernel boot arguments with the kernel itself (that is, to not rely on the boot loader to provide them.) To compile command line arguments into the kernel, set this option to 'Y', then fill in the the boot arguments in CONFIG_CMDLINE. Systems with fully functional boot loaders (e.g. mboot, or if booting over PCI) should leave this option set to 'N'. config CMDLINE string "Built-in kernel command string" depends on CMDLINE_BOOL default "" ---help--- Enter arguments here that should be compiled into the kernel image and used at boot time. If the boot loader provides a command line at boot time, it is appended to this string to form the full kernel command line, when the system boots. However, you can use the CONFIG_CMDLINE_OVERRIDE option to change this behavior. In most cases, the command line (whether built-in or provided by the boot loader) should specify the device for the root file system. config CMDLINE_OVERRIDE bool "Built-in command line overrides boot loader arguments" default n depends on CMDLINE_BOOL ---help--- Set this option to 'Y' to have the kernel ignore the boot loader command line, and use ONLY the built-in command line. This is used to work around broken boot loaders. This should be set to 'N' under normal conditions. config VMALLOC_RESERVE hex default 0x1000000 config HARDWALL bool "Hardwall support to allow access to user dynamic network" default y config KERNEL_PL int "Processor protection level for kernel" range 1 2 default "1" ---help--- This setting determines the processor protection level the kernel will be built to run at. Generally you should use the default value here. endmenu # Tilera-specific configuration menu "Bus options" config PCI bool "PCI support" default y select PCI_DOMAINS ---help--- Enable PCI root complex support, so PCIe endpoint devices can be attached to the Tile chip. Many, but not all, PCI devices are supported under Tilera's root complex driver. config PCI_DOMAINS bool config NO_IOMEM def_bool !PCI config NO_IOPORT def_bool !PCI source "drivers/pci/Kconfig" source "drivers/pci/hotplug/Kconfig" endmenu menu "Executable file formats" # only elf supported config KCORE_ELF def_bool y depends on PROC_FS source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/tile/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" source "arch/tile/kvm/Kconfig" # # KVM configuration # source "virt/kvm/Kconfig" menuconfig VIRTUALIZATION bool "Virtualization" ---help--- Say Y here to get to see options for using your Linux host to run other operating systems inside virtual machines (guests). This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if VIRTUALIZATION config KVM tristate "Kernel-based Virtual Machine (KVM) support" depends on HAVE_KVM && MODULES && EXPERIMENTAL select PREEMPT_NOTIFIERS select ANON_INODES ---help--- Support hosting paravirtualized guest machines. This module provides access to the hardware capabilities through a character device node named /dev/kvm. To compile this as a module, choose M here: the module will be called kvm. If unsure, say N. source drivers/vhost/Kconfig source drivers/virtio/Kconfig endif # VIRTUALIZATION config PARISC def_bool y select HAVE_IDE select HAVE_OPROFILE select HAVE_FUNCTION_TRACER if 64BIT select HAVE_FUNCTION_GRAPH_TRACER if 64BIT select HAVE_FUNCTION_TRACE_MCOUNT_TEST if 64BIT select RTC_CLASS select RTC_DRV_GENERIC select INIT_ALL_POSSIBLE select BUG select HAVE_IRQ_WORK select HAVE_PERF_EVENTS select GENERIC_ATOMIC64 if !64BIT select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_PROBE select IRQ_PER_CPU help The PA-RISC microprocessor is designed by Hewlett-Packard and used in many of their workstations & servers (HP9000 700 and 800 series, and later HP3000 series). The PA-RISC Linux project home page is at . config MMU def_bool y config STACK_GROWSUP def_bool y config GENERIC_LOCKBREAK bool default y depends on SMP && PREEMPT config RWSEM_GENERIC_SPINLOCK def_bool y config RWSEM_XCHGADD_ALGORITHM bool config ARCH_HAS_ILOG2_U32 bool default n config ARCH_HAS_ILOG2_U64 bool default n config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_FIND_BIT_LE bool default y config GENERIC_BUG bool default y depends on BUG config GENERIC_HWEIGHT bool default y config GENERIC_CALIBRATE_DELAY bool default y config TIME_LOW_RES bool depends on SMP default y config HAVE_LATENCYTOP_SUPPORT def_bool y # unless you want to implement ACPI on PA-RISC ... ;-) config PM bool config STACKTRACE_SUPPORT def_bool y config NEED_DMA_MAP_STATE def_bool y config NEED_SG_DMA_LENGTH def_bool y config ISA_DMA_API bool config ARCH_MAY_HAVE_PC_FDC bool depends on BROKEN default y source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Processor type and features" choice prompt "Processor type" default PA7000 config PA7000 bool "PA7000/PA7100" ---help--- This is the processor type of your CPU. This information is used for optimizing purposes. In order to compile a kernel that can run on all 32-bit PA CPUs (albeit not optimally fast), you can specify "PA7000" here. Specifying "PA8000" here will allow you to select a 64-bit kernel which is required on some machines. config PA7100LC bool "PA7100LC" help Select this option for the PCX-L processor, as used in the 712, 715/64, 715/80, 715/100, 715/100XC, 725/100, 743, 748, D200, D210, D300, D310 and E-class config PA7200 bool "PA7200" help Select this option for the PCX-T' processor, as used in the C100, C110, J100, J110, J210XC, D250, D260, D350, D360, K100, K200, K210, K220, K400, K410 and K420 config PA7300LC bool "PA7300LC" help Select this option for the PCX-L2 processor, as used in the 744, A180, B132L, B160L, B180L, C132L, C160L, C180L, D220, D230, D320 and D330. config PA8X00 bool "PA8000 and up" help Select this option for PCX-U to PCX-W2 processors. endchoice # Define implied options from the CPU selection here config PA20 def_bool y depends on PA8X00 config PA11 def_bool y depends on PA7000 || PA7100LC || PA7200 || PA7300LC config PREFETCH def_bool y depends on PA8X00 || PA7200 config 64BIT bool "64-bit kernel" depends on PA8X00 help Enable this if you want to support 64bit kernel on PA-RISC platform. At the moment, only people willing to use more than 2GB of RAM, or having a 64bit-only capable PA-RISC machine should say Y here. Since there is no 64bit userland on PA-RISC, there is no point to enable this option otherwise. The 64bit kernel is significantly bigger and slower than the 32bit one. choice prompt "Kernel page size" default PARISC_PAGE_SIZE_4KB if !64BIT default PARISC_PAGE_SIZE_4KB if 64BIT # default PARISC_PAGE_SIZE_16KB if 64BIT config PARISC_PAGE_SIZE_4KB bool "4KB" help This lets you select the page size of the kernel. For best performance, a page size of 16KB is recommended. For best compatibility with 32bit applications, a page size of 4KB should be selected (the vast majority of 32bit binaries work perfectly fine with a larger page size). 4KB For best 32bit compatibility 16KB For best performance 64KB For best performance, might give more overhead. If you don't know what to do, choose 4KB. config PARISC_PAGE_SIZE_16KB bool "16KB (EXPERIMENTAL)" depends on PA8X00 && EXPERIMENTAL config PARISC_PAGE_SIZE_64KB bool "64KB (EXPERIMENTAL)" depends on PA8X00 && EXPERIMENTAL endchoice config SMP bool "Symmetric multi-processing support" select USE_GENERIC_SMP_HELPERS ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. See also and the SMP-HOWTO available at . If you don't know what to do here, say N. config HOTPLUG_CPU bool default y if SMP select HOTPLUG config ARCH_SELECT_MEMORY_MODEL def_bool y depends on 64BIT config ARCH_DISCONTIGMEM_ENABLE def_bool y depends on 64BIT config ARCH_FLATMEM_ENABLE def_bool y config ARCH_DISCONTIGMEM_DEFAULT def_bool y depends on ARCH_DISCONTIGMEM_ENABLE config NODES_SHIFT int default "3" depends on NEED_MULTIPLE_NODES source "kernel/Kconfig.preempt" source "kernel/Kconfig.hz" source "mm/Kconfig" config COMPAT def_bool y depends on 64BIT config HPUX bool "Support for HP-UX binaries" depends on !64BIT config NR_CPUS int "Maximum number of CPUs (2-32)" range 2 32 depends on SMP default "32" endmenu source "drivers/parisc/Kconfig" menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/parisc/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" # # General architecture dependent options # config OPROFILE tristate "OProfile system profiling" depends on PROFILING depends on HAVE_OPROFILE select RING_BUFFER select RING_BUFFER_ALLOW_SWAP help OProfile is a profiling system capable of profiling the whole system, include the kernel, kernel modules, libraries, and applications. If unsure, say N. config OPROFILE_EVENT_MULTIPLEX bool "OProfile multiplexing support (EXPERIMENTAL)" default n depends on OPROFILE && X86 help The number of hardware counters is limited. The multiplexing feature enables OProfile to gather more events than counters are provided by the hardware. This is realized by switching between events at an user specified time interval. If unsure, say N. config HAVE_OPROFILE bool config KPROBES bool "Kprobes" depends on MODULES depends on HAVE_KPROBES select KALLSYMS help Kprobes allows you to trap at almost any kernel address and execute a callback function. register_kprobe() establishes a probepoint and specifies the callback. Kprobes is useful for kernel debugging, non-intrusive instrumentation and testing. If in doubt, say "N". config JUMP_LABEL bool "Optimize trace point call sites" depends on HAVE_ARCH_JUMP_LABEL help If it is detected that the compiler has support for "asm goto", the kernel will compile trace point locations with just a nop instruction. When trace points are enabled, the nop will be converted to a jump to the trace function. This technique lowers overhead and stress on the branch prediction of the processor. On i386, options added to the compiler flags may increase the size of the kernel slightly. config OPTPROBES def_bool y depends on KPROBES && HAVE_OPTPROBES depends on !PREEMPT config HAVE_EFFICIENT_UNALIGNED_ACCESS bool help Some architectures are unable to perform unaligned accesses without the use of get_unaligned/put_unaligned. Others are unable to perform such accesses efficiently (e.g. trap on unaligned access and require fixing it up in the exception handler.) This symbol should be selected by an architecture if it can perform unaligned accesses efficiently to allow different code paths to be selected for these cases. Some network drivers, for example, could opt to not fix up alignment problems with received packets if doing so would not help much. See Documentation/unaligned-memory-access.txt for more information on the topic of unaligned memory accesses. config HAVE_SYSCALL_WRAPPERS bool config KRETPROBES def_bool y depends on KPROBES && HAVE_KRETPROBES config USER_RETURN_NOTIFIER bool depends on HAVE_USER_RETURN_NOTIFIER help Provide a kernel-internal notification when a cpu is about to switch to user mode. config HAVE_IOREMAP_PROT bool config HAVE_KPROBES bool config HAVE_KRETPROBES bool config HAVE_OPTPROBES bool # # An arch should select this if it provides all these things: # # task_pt_regs() in asm/processor.h or asm/ptrace.h # arch_has_single_step() if there is hardware single-step support # arch_has_block_step() if there is hardware block-step support # asm/syscall.h supplying asm-generic/syscall.h interface # linux/regset.h user_regset interfaces # CORE_DUMP_USE_REGSET #define'd in linux/elf.h # TIF_SYSCALL_TRACE calls tracehook_report_syscall_{entry,exit} # TIF_NOTIFY_RESUME calls tracehook_notify_resume() # signal delivery calls tracehook_signal_handler() # config HAVE_ARCH_TRACEHOOK bool config HAVE_DMA_ATTRS bool config USE_GENERIC_SMP_HELPERS bool config HAVE_REGS_AND_STACK_ACCESS_API bool help This symbol should be selected by an architecure if it supports the API needed to access registers and stack entries from pt_regs, declared in asm/ptrace.h For example the kprobes-based event tracer needs this API. config HAVE_CLK bool help The calls support software clock gating and thus are a key power management tool on many systems. config HAVE_DMA_API_DEBUG bool config HAVE_DEFAULT_NO_SPIN_MUTEXES bool config HAVE_HW_BREAKPOINT bool depends on PERF_EVENTS config HAVE_MIXED_BREAKPOINTS_REGS bool depends on HAVE_HW_BREAKPOINT help Depending on the arch implementation of hardware breakpoints, some of them have separate registers for data and instruction breakpoints addresses, others have mixed registers to store them but define the access type in a control register. Select this option if your arch implements breakpoints under the latter fashion. config HAVE_USER_RETURN_NOTIFIER bool config HAVE_PERF_EVENTS_NMI bool help System hardware can generate an NMI using the perf event subsystem. Also has support for calculating CPU cycle events to determine how many clock cycles in a given period. config HAVE_ARCH_JUMP_LABEL bool config HAVE_ARCH_MUTEX_CPU_RELAX bool source "kernel/gcov/Kconfig" config UNICORE32 def_bool y select HAVE_MEMBLOCK select HAVE_GENERIC_DMA_COHERENT select HAVE_GENERIC_HARDIRQS select HAVE_DMA_ATTRS select HAVE_KERNEL_GZIP select HAVE_KERNEL_BZIP2 select HAVE_KERNEL_LZO select HAVE_KERNEL_LZMA select GENERIC_FIND_FIRST_BIT select GENERIC_IRQ_PROBE select GENERIC_IRQ_SHOW select ARCH_WANT_FRAME_POINTERS help UniCore-32 is 32-bit Instruction Set Architecture, including a series of low-power-consumption RISC chip designs licensed by PKUnity Ltd. Please see web page at . config HAVE_PWM bool config GENERIC_GPIO def_bool y config GENERIC_CLOCKEVENTS bool config GENERIC_CSUM def_bool y config GENERIC_IOMAP def_bool y config NO_IOPORT bool config STACKTRACE_SUPPORT def_bool y config HAVE_LATENCYTOP_SUPPORT def_bool y config LOCKDEP_SUPPORT def_bool y config RWSEM_GENERIC_SPINLOCK def_bool y config RWSEM_XCHGADD_ALGORITHM bool config ARCH_HAS_ILOG2_U32 bool config ARCH_HAS_ILOG2_U64 bool config ARCH_HAS_CPUFREQ bool config GENERIC_HWEIGHT def_bool y config GENERIC_CALIBRATE_DELAY def_bool y config ARCH_MAY_HAVE_PC_FDC bool config NEED_DMA_MAP_STATE def_bool y source "init/Kconfig" source "kernel/Kconfig.freezer" menu "System Type" config MMU def_bool y config ARCH_FPGA bool config ARCH_PUV3 def_bool y select CPU_UCV2 select GENERIC_CLOCKEVENTS select HAVE_CLK select ARCH_REQUIRE_GPIOLIB select ARCH_HAS_CPUFREQ # CONFIGs for ARCH_PUV3 if ARCH_PUV3 choice prompt "Board Selection" default PUV3_DB0913 config PUV3_FPGA_DLX200 select ARCH_FPGA bool "FPGA board" config PUV3_DB0913 bool "DEBUG board (0913)" config PUV3_NB0916 bool "NetBook board (0916)" select HAVE_PWM config PUV3_SMW0919 bool "Security Mini-Workstation board (0919)" endchoice config PUV3_PM def_bool y if !ARCH_FPGA endif source "arch/unicore32/mm/Kconfig" comment "Floating poing support" config UNICORE_FPU_F64 def_bool y if !ARCH_FPGA endmenu menu "Bus support" config PCI bool "PCI Support" help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" endmenu menu "Kernel Features" source "kernel/time/Kconfig" source "kernel/Kconfig.preempt" source "kernel/Kconfig.hz" source "mm/Kconfig" config LEDS def_bool y depends on GENERIC_GPIO config ALIGNMENT_TRAP def_bool y help Unicore processors can not fetch/store information which is not naturally aligned on the bus, i.e., a 4 byte fetch must start at an address divisible by 4. On 32-bit Unicore processors, these non-aligned fetch/store instructions will be emulated in software if you say here, which has a severe performance impact. This is necessary for correct operation of some network protocols. With an IP-only configuration it is safe to say N, otherwise say Y. endmenu menu "Boot options" config CMDLINE string "Default kernel command string" default "" config CMDLINE_FORCE bool "Always use the default kernel command string" depends on CMDLINE != "" help Always use the default kernel command string, even if the boot loader passes other arguments to the kernel. This is useful if you cannot or don't want to change the command-line options your boot loader passes to the kernel. If unsure, say N. endmenu menu "Userspace binary formats" source "fs/Kconfig.binfmt" endmenu menu "Power management options" source "kernel/power/Kconfig" if ARCH_HAS_CPUFREQ source "drivers/cpufreq/Kconfig" endif config ARCH_SUSPEND_POSSIBLE def_bool y if !ARCH_FPGA config ARCH_HIBERNATION_POSSIBLE def_bool y if !ARCH_FPGA endmenu source "net/Kconfig" if ARCH_PUV3 config PUV3_GPIO bool depends on !ARCH_FPGA select GENERIC_GPIO select GPIO_SYSFS if EXPERIMENTAL default y config PUV3_PWM tristate default BACKLIGHT_PWM help Enable support for NB0916 PWM controllers config PUV3_RTC tristate "PKUnity v3 RTC Support" depends on !ARCH_FPGA if PUV3_NB0916 menu "PKUnity NetBook-0916 Features" config I2C_BATTERY_BQ27200 tristate "I2C Battery BQ27200 Support" select PUV3_I2C select POWER_SUPPLY select BATTERY_BQ27x00 config I2C_EEPROM_AT24 tristate "I2C EEPROMs AT24 support" select PUV3_I2C select MISC_DEVICES select EEPROM_AT24 config LCD_BACKLIGHT tristate "LCD Backlight support" select BACKLIGHT_LCD_SUPPORT select BACKLIGHT_PWM endmenu endif endif source "drivers/Kconfig" source "fs/Kconfig" source "arch/unicore32/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" comment "Processor Type" # Select CPU types depending on the architecture selected. This selects # which CPUs we support in the kernel image, and the compiler instruction # optimiser behaviour. config CPU_UCV2 def_bool y comment "Processor Features" config CPU_ICACHE_DISABLE bool "Disable I-Cache (I-bit)" help Say Y here to disable the processor instruction cache. Unless you have a reason not to or are unsure, say N. config CPU_DCACHE_DISABLE bool "Disable D-Cache (D-bit)" help Say Y here to disable the processor data cache. Unless you have a reason not to or are unsure, say N. config CPU_DCACHE_WRITETHROUGH bool "Force write through D-cache" help Say Y here to use the data cache in writethrough mode. Unless you specifically require this or are unsure, say N. config CPU_DCACHE_LINE_DISABLE bool "Disable D-cache line ops" default y help Say Y here to disable the data cache line operations. config CPU_TLB_SINGLE_ENTRY_DISABLE bool "Disable TLB single entry ops" default y help Say Y here to disable the TLB single entry operations. config SWIOTLB def_bool y config IOMMU_HELPER def_bool SWIOTLB config NEED_SG_DMA_LENGTH def_bool SWIOTLB config SUPERH def_bool y select EXPERT select CLKDEV_LOOKUP select HAVE_IDE if HAS_IOPORT select HAVE_MEMBLOCK select HAVE_OPROFILE select HAVE_GENERIC_DMA_COHERENT select HAVE_ARCH_TRACEHOOK select HAVE_DMA_API_DEBUG select HAVE_DMA_ATTRS select HAVE_IRQ_WORK select HAVE_PERF_EVENTS select PERF_USE_VMALLOC select HAVE_KERNEL_GZIP select HAVE_KERNEL_BZIP2 select HAVE_KERNEL_LZMA select HAVE_KERNEL_XZ select HAVE_KERNEL_LZO select HAVE_SYSCALL_TRACEPOINTS select HAVE_REGS_AND_STACK_ACCESS_API select HAVE_GENERIC_HARDIRQS select HAVE_SPARSE_IRQ select RTC_LIB select GENERIC_ATOMIC64 select GENERIC_IRQ_SHOW select ARCH_NO_SYSDEV_OPS help The SuperH is a RISC processor targeted for use in embedded systems and consumer electronics; it was also used in the Sega Dreamcast gaming console. The SuperH port has a home page at . config SUPERH32 def_bool ARCH = "sh" select HAVE_KPROBES select HAVE_KRETPROBES select HAVE_IOREMAP_PROT if MMU && !X2TLB select HAVE_FUNCTION_TRACER select HAVE_FTRACE_MCOUNT_RECORD select HAVE_DYNAMIC_FTRACE select HAVE_FUNCTION_TRACE_MCOUNT_TEST select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE select HAVE_FUNCTION_GRAPH_TRACER select HAVE_ARCH_KGDB select HAVE_HW_BREAKPOINT select HAVE_MIXED_BREAKPOINTS_REGS select PERF_EVENTS select ARCH_HIBERNATION_POSSIBLE if MMU select SPARSE_IRQ config SUPERH64 def_bool ARCH = "sh64" config ARCH_DEFCONFIG string default "arch/sh/configs/shx3_defconfig" if SUPERH32 default "arch/sh/configs/cayman_defconfig" if SUPERH64 config RWSEM_GENERIC_SPINLOCK def_bool y config RWSEM_XCHGADD_ALGORITHM bool config GENERIC_BUG def_bool y depends on BUG && SUPERH32 config GENERIC_CSUM def_bool y depends on SUPERH64 config GENERIC_FIND_NEXT_BIT def_bool y config GENERIC_FIND_BIT_LE def_bool y config GENERIC_HWEIGHT def_bool y config IRQ_PER_CPU def_bool y config GENERIC_GPIO def_bool n config GENERIC_CALIBRATE_DELAY bool config GENERIC_IOMAP bool config GENERIC_CLOCKEVENTS def_bool y config GENERIC_CLOCKEVENTS_BROADCAST bool config GENERIC_CMOS_UPDATE def_bool y depends on SH_SH03 || SH_DREAMCAST config GENERIC_LOCKBREAK def_bool y depends on SMP && PREEMPT config SYS_SUPPORTS_PM bool depends on !SMP config ARCH_SUSPEND_POSSIBLE def_bool n config ARCH_HIBERNATION_POSSIBLE def_bool n config SYS_SUPPORTS_APM_EMULATION bool select ARCH_SUSPEND_POSSIBLE config SYS_SUPPORTS_HUGETLBFS bool config SYS_SUPPORTS_SMP bool config SYS_SUPPORTS_NUMA bool config SYS_SUPPORTS_PCI bool config SYS_SUPPORTS_CMT bool config SYS_SUPPORTS_MTU2 bool config SYS_SUPPORTS_TMU bool config STACKTRACE_SUPPORT def_bool y config LOCKDEP_SUPPORT def_bool y config HAVE_LATENCYTOP_SUPPORT def_bool y config ARCH_HAS_ILOG2_U32 def_bool n config ARCH_HAS_ILOG2_U64 def_bool n config ARCH_NO_VIRT_TO_BUS def_bool y config ARCH_HAS_DEFAULT_IDLE def_bool y config ARCH_HAS_CPU_IDLE_WAIT def_bool y config NO_IOPORT def_bool !PCI depends on !SH_CAYMAN && !SH_SH4202_MICRODEV config IO_TRAPPED bool config DMA_COHERENT bool config DMA_NONCOHERENT def_bool !DMA_COHERENT config NEED_DMA_MAP_STATE def_bool DMA_NONCOHERENT config NEED_SG_DMA_LENGTH def_bool y source "init/Kconfig" source "kernel/Kconfig.freezer" menu "System type" # # Processor families # config CPU_SH2 bool config CPU_SH2A bool select CPU_SH2 select UNCACHED_MAPPING config CPU_SH3 bool select CPU_HAS_INTEVT select CPU_HAS_SR_RB select SYS_SUPPORTS_TMU config CPU_SH4 bool select CPU_HAS_INTEVT select CPU_HAS_SR_RB select CPU_HAS_FPU if !CPU_SH4AL_DSP select SYS_SUPPORTS_TMU select SYS_SUPPORTS_HUGETLBFS if MMU config CPU_SH4A bool select CPU_SH4 config CPU_SH4AL_DSP bool select CPU_SH4A select CPU_HAS_DSP config CPU_SH5 bool select CPU_HAS_FPU select SYS_SUPPORTS_TMU select SYS_SUPPORTS_HUGETLBFS if MMU config CPU_SHX2 bool config CPU_SHX3 bool select DMA_COHERENT select SYS_SUPPORTS_SMP select SYS_SUPPORTS_NUMA config ARCH_SHMOBILE bool select ARCH_SUSPEND_POSSIBLE select PM select PM_RUNTIME config CPU_HAS_PMU depends on CPU_SH4 || CPU_SH4A default y bool if SUPERH32 choice prompt "Processor sub-type selection" # # Processor subtypes # # SH-2 Processor Support config CPU_SUBTYPE_SH7619 bool "Support SH7619 processor" select CPU_SH2 select SYS_SUPPORTS_CMT # SH-2A Processor Support config CPU_SUBTYPE_SH7201 bool "Support SH7201 processor" select CPU_SH2A select CPU_HAS_FPU select SYS_SUPPORTS_MTU2 config CPU_SUBTYPE_SH7203 bool "Support SH7203 processor" select CPU_SH2A select CPU_HAS_FPU select SYS_SUPPORTS_CMT select SYS_SUPPORTS_MTU2 select ARCH_WANT_OPTIONAL_GPIOLIB config CPU_SUBTYPE_SH7206 bool "Support SH7206 processor" select CPU_SH2A select SYS_SUPPORTS_CMT select SYS_SUPPORTS_MTU2 config CPU_SUBTYPE_SH7263 bool "Support SH7263 processor" select CPU_SH2A select CPU_HAS_FPU select SYS_SUPPORTS_CMT select SYS_SUPPORTS_MTU2 config CPU_SUBTYPE_MXG bool "Support MX-G processor" select CPU_SH2A select SYS_SUPPORTS_MTU2 help Select MX-G if running on an R8A03022BG part. # SH-3 Processor Support config CPU_SUBTYPE_SH7705 bool "Support SH7705 processor" select CPU_SH3 config CPU_SUBTYPE_SH7706 bool "Support SH7706 processor" select CPU_SH3 help Select SH7706 if you have a 133 Mhz SH-3 HD6417706 CPU. config CPU_SUBTYPE_SH7707 bool "Support SH7707 processor" select CPU_SH3 help Select SH7707 if you have a 60 Mhz SH-3 HD6417707 CPU. config CPU_SUBTYPE_SH7708 bool "Support SH7708 processor" select CPU_SH3 help Select SH7708 if you have a 60 Mhz SH-3 HD6417708S or if you have a 100 Mhz SH-3 HD6417708R CPU. config CPU_SUBTYPE_SH7709 bool "Support SH7709 processor" select CPU_SH3 help Select SH7709 if you have a 80 Mhz SH-3 HD6417709 CPU. config CPU_SUBTYPE_SH7710 bool "Support SH7710 processor" select CPU_SH3 select CPU_HAS_DSP help Select SH7710 if you have a SH3-DSP SH7710 CPU. config CPU_SUBTYPE_SH7712 bool "Support SH7712 processor" select CPU_SH3 select CPU_HAS_DSP help Select SH7712 if you have a SH3-DSP SH7712 CPU. config CPU_SUBTYPE_SH7720 bool "Support SH7720 processor" select CPU_SH3 select CPU_HAS_DSP select SYS_SUPPORTS_CMT select ARCH_WANT_OPTIONAL_GPIOLIB select USB_ARCH_HAS_OHCI help Select SH7720 if you have a SH3-DSP SH7720 CPU. config CPU_SUBTYPE_SH7721 bool "Support SH7721 processor" select CPU_SH3 select CPU_HAS_DSP select SYS_SUPPORTS_CMT select USB_ARCH_HAS_OHCI help Select SH7721 if you have a SH3-DSP SH7721 CPU. # SH-4 Processor Support config CPU_SUBTYPE_SH7750 bool "Support SH7750 processor" select CPU_SH4 help Select SH7750 if you have a 200 Mhz SH-4 HD6417750 CPU. config CPU_SUBTYPE_SH7091 bool "Support SH7091 processor" select CPU_SH4 help Select SH7091 if you have an SH-4 based Sega device (such as the Dreamcast, Naomi, and Naomi 2). config CPU_SUBTYPE_SH7750R bool "Support SH7750R processor" select CPU_SH4 config CPU_SUBTYPE_SH7750S bool "Support SH7750S processor" select CPU_SH4 config CPU_SUBTYPE_SH7751 bool "Support SH7751 processor" select CPU_SH4 help Select SH7751 if you have a 166 Mhz SH-4 HD6417751 CPU, or if you have a HD6417751R CPU. config CPU_SUBTYPE_SH7751R bool "Support SH7751R processor" select CPU_SH4 config CPU_SUBTYPE_SH7760 bool "Support SH7760 processor" select CPU_SH4 config CPU_SUBTYPE_SH4_202 bool "Support SH4-202 processor" select CPU_SH4 # SH-4A Processor Support config CPU_SUBTYPE_SH7723 bool "Support SH7723 processor" select CPU_SH4A select CPU_SHX2 select ARCH_SHMOBILE select ARCH_SPARSEMEM_ENABLE select SYS_SUPPORTS_CMT select ARCH_WANT_OPTIONAL_GPIOLIB help Select SH7723 if you have an SH-MobileR2 CPU. config CPU_SUBTYPE_SH7724 bool "Support SH7724 processor" select CPU_SH4A select CPU_SHX2 select ARCH_SHMOBILE select ARCH_SPARSEMEM_ENABLE select SYS_SUPPORTS_CMT select ARCH_WANT_OPTIONAL_GPIOLIB help Select SH7724 if you have an SH-MobileR2R CPU. config CPU_SUBTYPE_SH7757 bool "Support SH7757 processor" select CPU_SH4A select CPU_SHX2 select ARCH_WANT_OPTIONAL_GPIOLIB select USB_ARCH_HAS_OHCI select USB_ARCH_HAS_EHCI help Select SH7757 if you have a SH4A SH7757 CPU. config CPU_SUBTYPE_SH7763 bool "Support SH7763 processor" select CPU_SH4A select USB_ARCH_HAS_OHCI help Select SH7763 if you have a SH4A SH7763(R5S77631) CPU. config CPU_SUBTYPE_SH7770 bool "Support SH7770 processor" select CPU_SH4A config CPU_SUBTYPE_SH7780 bool "Support SH7780 processor" select CPU_SH4A config CPU_SUBTYPE_SH7785 bool "Support SH7785 processor" select CPU_SH4A select CPU_SHX2 select ARCH_SPARSEMEM_ENABLE select SYS_SUPPORTS_NUMA select ARCH_WANT_OPTIONAL_GPIOLIB config CPU_SUBTYPE_SH7786 bool "Support SH7786 processor" select CPU_SH4A select CPU_SHX3 select CPU_HAS_PTEAEX select GENERIC_CLOCKEVENTS_BROADCAST if SMP select ARCH_WANT_OPTIONAL_GPIOLIB select USB_ARCH_HAS_OHCI select USB_ARCH_HAS_EHCI config CPU_SUBTYPE_SHX3 bool "Support SH-X3 processor" select CPU_SH4A select CPU_SHX3 select GENERIC_CLOCKEVENTS_BROADCAST if SMP select ARCH_REQUIRE_GPIOLIB # SH4AL-DSP Processor Support config CPU_SUBTYPE_SH7343 bool "Support SH7343 processor" select CPU_SH4AL_DSP select ARCH_SHMOBILE select SYS_SUPPORTS_CMT config CPU_SUBTYPE_SH7722 bool "Support SH7722 processor" select CPU_SH4AL_DSP select CPU_SHX2 select ARCH_SHMOBILE select ARCH_SPARSEMEM_ENABLE select SYS_SUPPORTS_NUMA select SYS_SUPPORTS_CMT select ARCH_WANT_OPTIONAL_GPIOLIB config CPU_SUBTYPE_SH7366 bool "Support SH7366 processor" select CPU_SH4AL_DSP select CPU_SHX2 select ARCH_SHMOBILE select ARCH_SPARSEMEM_ENABLE select SYS_SUPPORTS_NUMA select SYS_SUPPORTS_CMT endchoice endif if SUPERH64 choice prompt "Processor sub-type selection" # SH-5 Processor Support config CPU_SUBTYPE_SH5_101 bool "Support SH5-101 processor" select CPU_SH5 config CPU_SUBTYPE_SH5_103 bool "Support SH5-103 processor" select CPU_SH5 endchoice endif source "arch/sh/mm/Kconfig" source "arch/sh/Kconfig.cpu" source "arch/sh/boards/Kconfig" menu "Timer and clock configuration" config SH_TIMER_TMU bool "TMU timer driver" depends on SYS_SUPPORTS_TMU default y help This enables the build of the TMU timer driver. config SH_TIMER_CMT bool "CMT timer driver" depends on SYS_SUPPORTS_CMT default y help This enables build of the CMT timer driver. config SH_TIMER_MTU2 bool "MTU2 timer driver" depends on SYS_SUPPORTS_MTU2 default y help This enables build of the MTU2 timer driver. config SH_PCLK_FREQ int "Peripheral clock frequency (in Hz)" depends on SH_CLK_CPG_LEGACY default "31250000" if CPU_SUBTYPE_SH7619 default "33333333" if CPU_SUBTYPE_SH7770 || \ CPU_SUBTYPE_SH7760 || \ CPU_SUBTYPE_SH7705 || \ CPU_SUBTYPE_SH7203 || \ CPU_SUBTYPE_SH7206 || \ CPU_SUBTYPE_SH7263 || \ CPU_SUBTYPE_MXG default "60000000" if CPU_SUBTYPE_SH7751 || CPU_SUBTYPE_SH7751R default "66000000" if CPU_SUBTYPE_SH4_202 default "50000000" help This option is used to specify the peripheral clock frequency. This is necessary for determining the reference clock value on platforms lacking an RTC. config SH_CLK_CPG def_bool y config SH_CLK_CPG_LEGACY depends on SH_CLK_CPG def_bool y if !CPU_SUBTYPE_SH7785 && !ARCH_SHMOBILE && \ !CPU_SHX3 && !CPU_SUBTYPE_SH7757 source "kernel/time/Kconfig" endmenu menu "CPU Frequency scaling" source "drivers/cpufreq/Kconfig" config SH_CPU_FREQ tristate "SuperH CPU Frequency driver" depends on CPU_FREQ select CPU_FREQ_TABLE help This adds the cpufreq driver for SuperH. Any CPU that supports clock rate rounding through the clock framework can use this driver. While it will make the kernel slightly larger, this is harmless for CPUs that don't support rate rounding. The driver will also generate a notice in the boot log before disabling itself if the CPU in question is not capable of rate rounding. For details, take a look at . If unsure, say N. endmenu source "arch/sh/drivers/Kconfig" endmenu menu "Kernel features" source kernel/Kconfig.hz config KEXEC bool "kexec system call (EXPERIMENTAL)" depends on SUPERH32 && EXPERIMENTAL && MMU help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware. And like a reboot you can start any kernel with it, not just Linux. The name comes from the similarity to the exec system call. It is an ongoing process to be certain the hardware in a machine is properly shutdown, so do not be surprised if this code does not initially work for you. It may help to enable device hotplugging support. As of this writing the exact hardware interface is strongly in flux, so no good recommendation can be made. config CRASH_DUMP bool "kernel crash dumps (EXPERIMENTAL)" depends on SUPERH32 && EXPERIMENTAL && BROKEN_ON_SMP help Generate crash dump after being started by kexec. This should be normally only set in special crash dump kernels which are loaded in the main kernel with kexec-tools into a specially reserved region and then later executed after a crash by kdump/kexec. The crash dump kernel must be compiled to a memory address not used by the main kernel using MEMORY_START. For more details see Documentation/kdump/kdump.txt config KEXEC_JUMP bool "kexec jump (EXPERIMENTAL)" depends on SUPERH32 && KEXEC && HIBERNATION && EXPERIMENTAL help Jump between original kernel and kexeced kernel and invoke code via KEXEC config SECCOMP bool "Enable seccomp to safely compute untrusted bytecode" depends on PROC_FS help This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via prctl, it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. If unsure, say N. config SMP bool "Symmetric multi-processing support" depends on SYS_SUPPORTS_SMP select USE_GENERIC_SMP_HELPERS ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. See also and the SMP-HOWTO available at . If you don't know what to do here, say N. config NR_CPUS int "Maximum number of CPUs (2-32)" range 2 32 depends on SMP default "4" if CPU_SUBTYPE_SHX3 default "2" help This allows you to specify the maximum number of CPUs which this kernel will support. The maximum supported value is 32 and the minimum value which makes sense is 2. This is purely to save memory - each supported CPU adds approximately eight kilobytes to the kernel image. config HOTPLUG_CPU bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" depends on SMP && HOTPLUG && EXPERIMENTAL help Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. source "kernel/Kconfig.preempt" config GUSA def_bool y depends on !SMP && SUPERH32 help This enables support for gUSA (general UserSpace Atomicity). This is the default implementation for both UP and non-ll/sc CPUs, and is used by the libc, amongst others. For additional information, design information can be found in . This should only be disabled for special cases where alternate atomicity implementations exist. config GUSA_RB bool "Implement atomic operations by roll-back (gRB) (EXPERIMENTAL)" depends on GUSA && CPU_SH3 || (CPU_SH4 && !CPU_SH4A) help Enabling this option will allow the kernel to implement some atomic operations using a software implementation of load-locked/ store-conditional (LLSC). On machines which do not have hardware LLSC, this should be more efficient than the other alternative of disabling interrupts around the atomic sequence. config HW_PERF_EVENTS bool "Enable hardware performance counter support for perf events" depends on PERF_EVENTS && CPU_HAS_PMU default y help Enable hardware performance counter support for perf events. If disabled, perf events will use software events only. source "drivers/sh/Kconfig" endmenu menu "Boot options" config ZERO_PAGE_OFFSET hex default "0x00010000" if PAGE_SIZE_64KB || SH_RTS7751R2D || \ SH_7751_SOLUTION_ENGINE default "0x00004000" if PAGE_SIZE_16KB || SH_SH03 default "0x00002000" if PAGE_SIZE_8KB default "0x00001000" help This sets the default offset of zero page. config BOOT_LINK_OFFSET hex default "0x00210000" if SH_SHMIN default "0x00400000" if SH_CAYMAN default "0x00810000" if SH_7780_SOLUTION_ENGINE default "0x009e0000" if SH_TITAN default "0x01800000" if SH_SDK7780 default "0x02000000" if SH_EDOSK7760 default "0x00800000" help This option allows you to set the link address offset of the zImage. This can be useful if you are on a board which has a small amount of memory. config ENTRY_OFFSET hex default "0x00001000" if PAGE_SIZE_4KB default "0x00002000" if PAGE_SIZE_8KB default "0x00004000" if PAGE_SIZE_16KB default "0x00010000" if PAGE_SIZE_64KB default "0x00000000" config ROMIMAGE_MMCIF bool "Include MMCIF loader in romImage (EXPERIMENTAL)" depends on CPU_SUBTYPE_SH7724 && EXPERIMENTAL help Say Y here to include experimental MMCIF loading code in romImage. With this enabled it is possible to write the romImage kernel image to an MMC card and boot the kernel straight from the reset vector. At reset the processor Mask ROM will load the first part of the romImage which in turn loads the rest the kernel image to RAM using the MMCIF hardware block. choice prompt "Kernel command line" optional default CMDLINE_OVERWRITE help Setting this option allows the kernel command line arguments to be set. config CMDLINE_OVERWRITE bool "Overwrite bootloader kernel arguments" help Given string will overwrite any arguments passed in by a bootloader. config CMDLINE_EXTEND bool "Extend bootloader kernel arguments" help Given string will be concatenated with arguments passed in by a bootloader. endchoice config CMDLINE string "Kernel command line arguments string" depends on CMDLINE_OVERWRITE || CMDLINE_EXTEND default "console=ttySC1,115200" endmenu menu "Bus options" config SUPERHYWAY tristate "SuperHyway Bus support" depends on CPU_SUBTYPE_SH4_202 config MAPLE bool "Maple Bus support" depends on SH_DREAMCAST help The Maple Bus is SEGA's serial communication bus for peripherals on the Dreamcast. Without this bus support you won't be able to get your Dreamcast keyboard etc to work, so most users probably want to say 'Y' here, unless you are only using the Dreamcast with a serial line terminal or a remote network connection. config PCI bool "PCI support" depends on SYS_SUPPORTS_PCI select PCI_DOMAINS help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. If you have PCI, say Y, otherwise N. config PCI_DOMAINS bool source "drivers/pci/pcie/Kconfig" source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" endmenu menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu menu "Power management options (EXPERIMENTAL)" depends on EXPERIMENTAL source "kernel/power/Kconfig" source "drivers/cpuidle/Kconfig" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/sh/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" menuconfig VIRTUALIZATION bool "Virtualization" default n ---help--- Say Y here to get to see options for using your Linux host to run other operating systems inside virtual machines (guests). This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if VIRTUALIZATION source drivers/virtio/Kconfig endif # VIRTUALIZATION source "lib/Kconfig" menu "Board support" config SOLUTION_ENGINE bool config SH_ALPHA_BOARD bool config SH_SOLUTION_ENGINE bool "SolutionEngine" select SOLUTION_ENGINE select CPU_HAS_IPR_IRQ depends on CPU_SUBTYPE_SH7705 || CPU_SUBTYPE_SH7709 || CPU_SUBTYPE_SH7710 || \ CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7750S || \ CPU_SUBTYPE_SH7750R help Select SolutionEngine if configuring for a Hitachi SH7705, SH7709, SH7710, SH7712, SH7750, SH7750S or SH7750R evaluation board. config SH_7206_SOLUTION_ENGINE bool "SolutionEngine7206" select SOLUTION_ENGINE depends on CPU_SUBTYPE_SH7206 help Select 7206 SolutionEngine if configuring for a Hitachi SH7206 evaluation board. config SH_7619_SOLUTION_ENGINE bool "SolutionEngine7619" select SOLUTION_ENGINE depends on CPU_SUBTYPE_SH7619 help Select 7619 SolutionEngine if configuring for a Hitachi SH7619 evaluation board. config SH_7721_SOLUTION_ENGINE bool "SolutionEngine7721" select SOLUTION_ENGINE depends on CPU_SUBTYPE_SH7721 help Select 7721 SolutionEngine if configuring for a Hitachi SH7721 evaluation board. config SH_7722_SOLUTION_ENGINE bool "SolutionEngine7722" select SOLUTION_ENGINE depends on CPU_SUBTYPE_SH7722 help Select 7722 SolutionEngine if configuring for a Hitachi SH772 evaluation board. config SH_7724_SOLUTION_ENGINE bool "SolutionEngine7724" select SOLUTION_ENGINE depends on CPU_SUBTYPE_SH7724 select ARCH_REQUIRE_GPIOLIB help Select 7724 SolutionEngine if configuring for a Hitachi SH7724 evaluation board. config SH_7751_SOLUTION_ENGINE bool "SolutionEngine7751" select SOLUTION_ENGINE select CPU_HAS_IPR_IRQ depends on CPU_SUBTYPE_SH7751 help Select 7751 SolutionEngine if configuring for a Hitachi SH7751 evaluation board. config SH_7780_SOLUTION_ENGINE bool "SolutionEngine7780" select SOLUTION_ENGINE select SYS_SUPPORTS_PCI depends on CPU_SUBTYPE_SH7780 help Select 7780 SolutionEngine if configuring for a Renesas SH7780 evaluation board. config SH_7343_SOLUTION_ENGINE bool "SolutionEngine7343" select SOLUTION_ENGINE depends on CPU_SUBTYPE_SH7343 help Select 7343 SolutionEngine if configuring for a Hitachi SH7343 (SH-Mobile 3AS) evaluation board. config SH_HP6XX bool "HP6XX" select SYS_SUPPORTS_APM_EMULATION select HD6446X_SERIES depends on CPU_SUBTYPE_SH7709 help Select HP6XX if configuring for a HP jornada HP6xx. More information (hardware only) at . config SH_DREAMCAST bool "Dreamcast" select SYS_SUPPORTS_PCI depends on CPU_SUBTYPE_SH7091 help Select Dreamcast if configuring for a SEGA Dreamcast. More information at config SH_SH03 bool "Interface CTP/PCI-SH03" depends on CPU_SUBTYPE_SH7751 select CPU_HAS_IPR_IRQ select SYS_SUPPORTS_PCI help CTP/PCI-SH03 is a CPU module computer that is produced by Interface Corporation. More information at config SH_SECUREEDGE5410 bool "SecureEdge5410" depends on CPU_SUBTYPE_SH7751R select CPU_HAS_IPR_IRQ select SYS_SUPPORTS_PCI help Select SecureEdge5410 if configuring for a SnapGear SH board. This includes both the OEM SecureEdge products as well as the SME product line. config SH_RTS7751R2D bool "RTS7751R2D" depends on CPU_SUBTYPE_SH7751R select SYS_SUPPORTS_PCI select IO_TRAPPED if MMU help Select RTS7751R2D if configuring for a Renesas Technology Sales SH-Graphics board. config SH_RSK bool "Renesas Starter Kit" depends on CPU_SUBTYPE_SH7201 || CPU_SUBTYPE_SH7203 help Select this option if configuring for any of the RSK+ MCU evaluation platforms. config SH_SDK7780 bool "SDK7780R3" depends on CPU_SUBTYPE_SH7780 select SYS_SUPPORTS_PCI help Select SDK7780 if configuring for a Renesas SH7780 SDK7780R3 evaluation board. config SH_SDK7786 bool "SDK7786" depends on CPU_SUBTYPE_SH7786 select SYS_SUPPORTS_PCI select NO_IOPORT if !PCI select ARCH_WANT_OPTIONAL_GPIOLIB select HAVE_SRAM_POOL help Select SDK7786 if configuring for a Renesas Technology Europe SH7786-65nm board. config SH_HIGHLANDER bool "Highlander" depends on CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 select SYS_SUPPORTS_PCI select IO_TRAPPED if MMU config SH_SH7757LCR bool "SH7757LCR" depends on CPU_SUBTYPE_SH7757 select ARCH_REQUIRE_GPIOLIB config SH_SH7785LCR bool "SH7785LCR" depends on CPU_SUBTYPE_SH7785 select SYS_SUPPORTS_PCI config SH_SH7785LCR_29BIT_PHYSMAPS bool "SH7785LCR 29bit physmaps" depends on SH_SH7785LCR && 29BIT default y help This board has 2 physical memory maps. It can be changed with DIP switch(S2-5). If you set the DIP switch for S2-5 = ON, you can access all on-board device in 29bit address mode. config SH_SH7785LCR_PT bool "SH7785LCR prototype board on 32-bit MMU mode" depends on SH_SH7785LCR && 32BIT default n help If you use prototype board, this option is enabled. config SH_URQUELL bool "Urquell" depends on CPU_SUBTYPE_SH7786 select ARCH_REQUIRE_GPIOLIB select SYS_SUPPORTS_PCI select NO_IOPORT if !PCI config SH_MIGOR bool "Migo-R" depends on CPU_SUBTYPE_SH7722 select ARCH_REQUIRE_GPIOLIB help Select Migo-R if configuring for the SH7722 Migo-R platform by Renesas System Solutions Asia Pte. Ltd. config SH_AP325RXA bool "AP-325RXA" depends on CPU_SUBTYPE_SH7723 select ARCH_REQUIRE_GPIOLIB help Renesas "AP-325RXA" support. Compatible with ALGO SYSTEM CO.,LTD. "AP-320A" config SH_KFR2R09 bool "KFR2R09" depends on CPU_SUBTYPE_SH7724 select ARCH_REQUIRE_GPIOLIB help "Kit For R2R for 2009" support. config SH_ECOVEC bool "EcoVec" depends on CPU_SUBTYPE_SH7724 select ARCH_REQUIRE_GPIOLIB help Renesas "R0P7724LC0011/21RL (EcoVec)" support. config SH_SH7763RDP bool "SH7763RDP" depends on CPU_SUBTYPE_SH7763 help Select SH7763RDP if configuring for a Renesas SH7763 evaluation board. config SH_ESPT bool "ESPT" depends on CPU_SUBTYPE_SH7763 help Select ESPT if configuring for a Renesas SH7763 with gigabit ether evaluation board. config SH_EDOSK7705 bool "EDOSK7705" depends on CPU_SUBTYPE_SH7705 config SH_EDOSK7760 bool "EDOSK7760" depends on CPU_SUBTYPE_SH7760 help Select if configuring for a Renesas EDOSK7760 evaluation board. config SH_SH4202_MICRODEV bool "SH4-202 MicroDev" depends on CPU_SUBTYPE_SH4_202 help Select SH4-202 MicroDev if configuring for a SuperH MicroDev board with an SH4-202 CPU. config SH_LANDISK bool "LANDISK" depends on CPU_SUBTYPE_SH7751R select SYS_SUPPORTS_PCI help I-O DATA DEVICE, INC. "LANDISK Series" support. config SH_TITAN bool "TITAN" depends on CPU_SUBTYPE_SH7751R select CPU_HAS_IPR_IRQ select SYS_SUPPORTS_PCI help Select Titan if you are configuring for a Nimble Microsystems NetEngine NP51R. config SH_SHMIN bool "SHMIN" depends on CPU_SUBTYPE_SH7706 select CPU_HAS_IPR_IRQ help Select SHMIN if configuring for the SHMIN board. config SH_LBOX_RE2 bool "L-BOX RE2" depends on CPU_SUBTYPE_SH7751R select SYS_SUPPORTS_PCI help Select L-BOX RE2 if configuring for the NTT COMWARE L-BOX RE2. config SH_X3PROTO bool "SH-X3 Prototype board" depends on CPU_SUBTYPE_SHX3 select NO_IOPORT if !PCI config SH_MAGIC_PANEL_R2 bool "Magic Panel R2" depends on CPU_SUBTYPE_SH7720 select ARCH_REQUIRE_GPIOLIB help Select Magic Panel R2 if configuring for Magic Panel R2. config SH_CAYMAN bool "Hitachi Cayman" depends on CPU_SUBTYPE_SH5_101 || CPU_SUBTYPE_SH5_103 select SYS_SUPPORTS_PCI config SH_POLARIS bool "SMSC Polaris" select CPU_HAS_IPR_IRQ depends on CPU_SUBTYPE_SH7709 help Select if configuring for an SMSC Polaris development board config SH_SH2007 bool "SH-2007 board" select NO_IOPORT depends on CPU_SUBTYPE_SH7780 help SH-2007 is a single-board computer based around SH7780 chip intended for embedded applications. It has an Ethernet interface (SMC9118), direct connected Compact Flash socket, two serial ports and PC-104 bus. More information at . config SH_APSH4A3A bool "AP-SH4A-3A" select SH_ALPHA_BOARD depends on CPU_SUBTYPE_SH7785 help Select AP-SH4A-3A if configuring for an ALPHAPROJECT AP-SH4A-3A. config SH_APSH4AD0A bool "AP-SH4AD-0A" select SH_ALPHA_BOARD select SYS_SUPPORTS_PCI depends on CPU_SUBTYPE_SH7786 help Select AP-SH4AD-0A if configuring for an ALPHAPROJECT AP-SH4AD-0A. endmenu source "arch/sh/boards/mach-r2d/Kconfig" source "arch/sh/boards/mach-highlander/Kconfig" source "arch/sh/boards/mach-sdk7780/Kconfig" source "arch/sh/boards/mach-migor/Kconfig" source "arch/sh/boards/mach-rsk/Kconfig" if SH_MAGIC_PANEL_R2 menu "Magic Panel R2 options" config SH_MAGIC_PANEL_R2_VERSION int SH_MAGIC_PANEL_R2_VERSION default "3" help Set the version of the Magic Panel R2 endmenu endif if SH_RTS7751R2D menu "RTS7751R2D Board Revision" config RTS7751R2D_PLUS bool "R2D-PLUS" help Selecting this option will configure the kernel for R2D-PLUS. R2D-PLUS is the smaller of the two R2D board versions, equipped with a single PCI slot. config RTS7751R2D_1 bool "R2D-1" help Selecting this option will configure the kernel for R2D-1. R2D-1 is the larger of the two R2D board versions, equipped with two PCI slots. endmenu endif if SH_HIGHLANDER choice prompt "Highlander options" default SH_R7780MP config SH_R7780RP bool "R7780RP-1 board support" depends on CPU_SUBTYPE_SH7780 config SH_R7780MP bool "R7780MP board support" depends on CPU_SUBTYPE_SH7780 help Selecting this option will enable support for the mass-production version of the R7780RP. If in doubt, say Y. config SH_R7785RP bool "R7785RP board support" depends on CPU_SUBTYPE_SH7785 select ARCH_REQUIRE_GPIOLIB endchoice endif if SH_MIGOR choice prompt "Migo-R LCD Panel Board Selection" default SH_MIGOR_QVGA config SH_MIGOR_QVGA bool "QVGA (320x240)" config SH_MIGOR_RTA_WVGA bool "RTA WVGA (800x480)" endchoice endif if SH_SDK7780 choice prompt "SDK7780 options" default SH_SDK7780_BASE config SH_SDK7780_BASE bool "SDK7780 with base-board support" depends on CPU_SUBTYPE_SH7780 help Selecting this option will enable support for the expansion baseboard devices. If in doubt, say Y. endchoice endif if SH_RSK choice prompt "RSK+ options" default SH_RSK7203 config SH_RSK7201 bool "RSK7201" depends on CPU_SUBTYPE_SH7201 config SH_RSK7203 bool "RSK7203" select ARCH_REQUIRE_GPIOLIB depends on CPU_SUBTYPE_SH7203 endchoice endif source "arch/sh/drivers/dma/Kconfig" source "arch/sh/cchips/Kconfig" menu "Additional SuperH Device Drivers" config HEARTBEAT bool "Heartbeat LED" help Use the power-on LED on your machine as a load meter. The exact behavior is platform-dependent, but normally the flash frequency is a hyperbolic function of the 5-minute load average. config PUSH_SWITCH tristate "Push switch support" help This enables support for the push switch framework, a simple framework that allows for sysfs driven switch status reporting. endmenu menu "DMA support" config SH_DMA bool "SuperH on-chip DMA controller (DMAC) support" depends on CPU_SH3 || CPU_SH4 default n config SH_DMA_IRQ_MULTI bool depends on SH_DMA default y if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7751 || \ CPU_SUBTYPE_SH7750S || CPU_SUBTYPE_SH7750R || \ CPU_SUBTYPE_SH7751R || CPU_SUBTYPE_SH7091 || \ CPU_SUBTYPE_SH7763 || CPU_SUBTYPE_SH7764 || \ CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7785 || \ CPU_SUBTYPE_SH7760 config SH_DMA_API depends on SH_DMA bool "SuperH DMA API support" default n help SH_DMA_API always enabled DMA API of used SuperH. If you want to use DMA ENGINE, you must not enable this. Please enable DMA_ENGINE and SH_DMAE. config NR_ONCHIP_DMA_CHANNELS int depends on SH_DMA default "4" if CPU_SUBTYPE_SH7750 || CPU_SUBTYPE_SH7751 || \ CPU_SUBTYPE_SH7750S || CPU_SUBTYPE_SH7091 default "8" if CPU_SUBTYPE_SH7750R || CPU_SUBTYPE_SH7751R || \ CPU_SUBTYPE_SH7760 default "12" if CPU_SUBTYPE_SH7723 || CPU_SUBTYPE_SH7780 || \ CPU_SUBTYPE_SH7785 || CPU_SUBTYPE_SH7724 default "6" help This allows you to specify the number of channels that the on-chip DMAC supports. This will be 4 for SH7750/SH7751/Sh7750S/SH7091 and 8 for the SH7750R/SH7751R/SH7760, 12 for the SH7723/SH7780/SH7785/SH7724, default is 6. config NR_DMA_CHANNELS_BOOL depends on SH_DMA bool "Override default number of maximum DMA channels" help This allows you to forcibly update the maximum number of supported DMA channels for a given board. If this is unset, this will default to the number of channels that the on-chip DMAC has. config NR_DMA_CHANNELS int "Maximum number of DMA channels" depends on SH_DMA && NR_DMA_CHANNELS_BOOL default NR_ONCHIP_DMA_CHANNELS help This allows you to specify the maximum number of DMA channels to support. Setting this to a higher value allows for cascading DMACs with additional channels. config SH_DMABRG bool "SH7760 DMABRG support" depends on CPU_SUBTYPE_SH7760 help The DMABRG does data transfers from main memory to Audio/USB units of the SH7760. Say Y if you want to use Audio/USB DMA on your SH7760 board. config PVR2_DMA tristate "PowerVR 2 DMAC support" depends on SH_DREAMCAST && SH_DMA help Selecting this will enable support for the PVR2 DMA controller. As this chains off of the on-chip DMAC, that must also be enabled by default. This is primarily used by the pvr2fb framebuffer driver for certain optimizations, but is not necessary for functionality. If in doubt, say N. config G2_DMA tristate "G2 Bus DMA support" depends on SH_DREAMCAST select SH_DMA_API help This enables support for the DMA controller for the Dreamcast's G2 bus. Drivers that want this will generally enable this on their own. If in doubt, say N. endmenu menu "Companion Chips" config HD6446X_SERIES bool choice prompt "HD6446x options" depends on HD6446X_SERIES default HD64461 config HD64461 bool "Hitachi HD64461 companion chip support" ---help--- The Hitachi HD64461 provides an interface for the SH7709 CPU, supporting a LCD controller, CRT color controller, IrDA up to 4 Mbps, and a PCMCIA controller supporting 2 slots. More information is available at . Say Y if you want support for the HD64461. Otherwise, say N. endchoice # These will also be split into the Kconfig's below config HD64461_IRQ int "HD64461 IRQ" depends on HD64461 default "36" help The default setting of the HD64461 IRQ is 36. Do not change this unless you know what you are doing. config HD64461_ENABLER bool "HD64461 PCMCIA enabler" depends on HD64461 help Say Y here if you want to enable PCMCIA support via the HD64461 companion chip. Otherwise, say N. endmenu menu "Memory management options" config QUICKLIST def_bool y config MMU bool "Support for memory management hardware" depends on !CPU_SH2 default y help Some SH processors (such as SH-2/SH-2A) lack an MMU. In order to boot on these systems, this option must not be set. On other systems (such as the SH-3 and 4) where an MMU exists, turning this off will boot the kernel on these machines with the MMU implicitly switched off. config PAGE_OFFSET hex default "0x80000000" if MMU && SUPERH32 default "0x20000000" if MMU && SUPERH64 default "0x00000000" config FORCE_MAX_ZONEORDER int "Maximum zone order" range 9 64 if PAGE_SIZE_16KB default "9" if PAGE_SIZE_16KB range 7 64 if PAGE_SIZE_64KB default "7" if PAGE_SIZE_64KB range 11 64 default "14" if !MMU default "11" help The kernel memory allocator divides physically contiguous memory blocks into "zones", where each zone is a power of two number of pages. This option selects the largest power of two that the kernel keeps in the memory allocator. If you need to allocate very large blocks of physically contiguous memory, then you may need to increase this value. This config option is actually maximum order plus one. For example, a value of 11 means that the largest free memory block is 2^10 pages. The page size is not necessarily 4KB. Keep this in mind when choosing a value for this option. config MEMORY_START hex "Physical memory start address" default "0x08000000" ---help--- Computers built with Hitachi SuperH processors always map the ROM starting at address zero. But the processor does not specify the range that RAM takes. The physical memory (RAM) start address will be automatically set to 08000000. Other platforms, such as the Solution Engine boards typically map RAM at 0C000000. Tweak this only when porting to a new machine which does not already have a defconfig. Changing it from the known correct value on any of the known systems will only lead to disaster. config MEMORY_SIZE hex "Physical memory size" default "0x04000000" help This sets the default memory size assumed by your SH kernel. It can be overridden as normal by the 'mem=' argument on the kernel command line. If unsure, consult your board specifications or just leave it as 0x04000000 which was the default value before this became configurable. # Physical addressing modes config 29BIT def_bool !32BIT depends on SUPERH32 select UNCACHED_MAPPING config 32BIT bool default y if CPU_SH5 || !MMU config PMB bool "Support 32-bit physical addressing through PMB" depends on MMU && EXPERIMENTAL && CPU_SH4A && !CPU_SH4AL_DSP select 32BIT select UNCACHED_MAPPING help If you say Y here, physical addressing will be extended to 32-bits through the SH-4A PMB. If this is not set, legacy 29-bit physical addressing will be used. config X2TLB def_bool y depends on (CPU_SHX2 || CPU_SHX3) && MMU config VSYSCALL bool "Support vsyscall page" depends on MMU && (CPU_SH3 || CPU_SH4) default y help This will enable support for the kernel mapping a vDSO page in process space, and subsequently handing down the entry point to the libc through the ELF auxiliary vector. From the kernel side this is used for the signal trampoline. For systems with an MMU that can afford to give up a page, (the default value) say Y. config NUMA bool "Non Uniform Memory Access (NUMA) Support" depends on MMU && SYS_SUPPORTS_NUMA && EXPERIMENTAL default n help Some SH systems have many various memories scattered around the address space, each with varying latencies. This enables support for these blocks by binding them to nodes and allowing memory policies to be used for prioritizing and controlling allocation behaviour. config NODES_SHIFT int default "3" if CPU_SUBTYPE_SHX3 default "1" depends on NEED_MULTIPLE_NODES config ARCH_FLATMEM_ENABLE def_bool y depends on !NUMA config ARCH_SPARSEMEM_ENABLE def_bool y select SPARSEMEM_STATIC config ARCH_SPARSEMEM_DEFAULT def_bool y config MAX_ACTIVE_REGIONS int default "6" if (CPU_SUBTYPE_SHX3 && SPARSEMEM) default "2" if SPARSEMEM && (CPU_SUBTYPE_SH7722 || \ CPU_SUBTYPE_SH7785) default "1" config ARCH_POPULATES_NODE_MAP def_bool y config ARCH_SELECT_MEMORY_MODEL def_bool y config ARCH_ENABLE_MEMORY_HOTPLUG def_bool y depends on SPARSEMEM && MMU config ARCH_ENABLE_MEMORY_HOTREMOVE def_bool y depends on SPARSEMEM && MMU config ARCH_MEMORY_PROBE def_bool y depends on MEMORY_HOTPLUG config IOREMAP_FIXED def_bool y depends on X2TLB || SUPERH64 config UNCACHED_MAPPING bool config HAVE_SRAM_POOL bool select GENERIC_ALLOCATOR choice prompt "Kernel page size" default PAGE_SIZE_4KB config PAGE_SIZE_4KB bool "4kB" help This is the default page size used by all SuperH CPUs. config PAGE_SIZE_8KB bool "8kB" depends on !MMU || X2TLB help This enables 8kB pages as supported by SH-X2 and later MMUs. config PAGE_SIZE_16KB bool "16kB" depends on !MMU help This enables 16kB pages on MMU-less SH systems. config PAGE_SIZE_64KB bool "64kB" depends on !MMU || CPU_SH4 || CPU_SH5 help This enables support for 64kB pages, possible on all SH-4 CPUs and later. endchoice choice prompt "HugeTLB page size" depends on HUGETLB_PAGE default HUGETLB_PAGE_SIZE_1MB if PAGE_SIZE_64KB default HUGETLB_PAGE_SIZE_64K config HUGETLB_PAGE_SIZE_64K bool "64kB" depends on !PAGE_SIZE_64KB config HUGETLB_PAGE_SIZE_256K bool "256kB" depends on X2TLB config HUGETLB_PAGE_SIZE_1MB bool "1MB" config HUGETLB_PAGE_SIZE_4MB bool "4MB" depends on X2TLB config HUGETLB_PAGE_SIZE_64MB bool "64MB" depends on X2TLB config HUGETLB_PAGE_SIZE_512MB bool "512MB" depends on CPU_SH5 endchoice source "mm/Kconfig" config SCHED_MC bool "Multi-core scheduler support" depends on SMP default y help Multi-core scheduler support improves the CPU scheduler's decision making when dealing with multi-core CPU chips at a cost of slightly increased overhead in some places. If unsure say N here. endmenu menu "Cache configuration" config SH7705_CACHE_32KB bool "Enable 32KB cache size for SH7705" depends on CPU_SUBTYPE_SH7705 default y choice prompt "Cache mode" default CACHE_WRITEBACK if CPU_SH2A || CPU_SH3 || CPU_SH4 || CPU_SH5 default CACHE_WRITETHROUGH if (CPU_SH2 && !CPU_SH2A) config CACHE_WRITEBACK bool "Write-back" config CACHE_WRITETHROUGH bool "Write-through" help Selecting this option will configure the caches in write-through mode, as opposed to the default write-back configuration. Since there's sill some aliasing issues on SH-4, this option will unfortunately still require the majority of flushing functions to be implemented to deal with aliasing. If unsure, say N. config CACHE_OFF bool "Off" endchoice endmenu source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Processor type and features" config IA64 bool select PCI if (!IA64_HP_SIM) select ACPI if (!IA64_HP_SIM) select PM if (!IA64_HP_SIM) select ARCH_SUPPORTS_MSI select HAVE_UNSTABLE_SCHED_CLOCK select HAVE_IDE select HAVE_OPROFILE select HAVE_KPROBES select HAVE_KRETPROBES select HAVE_FTRACE_MCOUNT_RECORD select HAVE_DYNAMIC_FTRACE if (!ITANIUM) select HAVE_FUNCTION_TRACER select HAVE_DMA_ATTRS select HAVE_KVM select HAVE_ARCH_TRACEHOOK select HAVE_DMA_API_DEBUG select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_PROBE select GENERIC_PENDING_IRQ if SMP select IRQ_PER_CPU select GENERIC_IRQ_SHOW default y help The Itanium Processor Family is Intel's 64-bit successor to the 32-bit X86 line. The IA-64 Linux project has a home page at and a mailing list at . config 64BIT bool select ATA_NONSTANDARD if ATA default y config ZONE_DMA def_bool y depends on !IA64_SGI_SN2 config QUICKLIST bool default y config MMU bool default y config ARCH_DMA_ADDR_T_64BIT def_bool y config NEED_DMA_MAP_STATE def_bool y config NEED_SG_DMA_LENGTH def_bool y config SWIOTLB bool config STACKTRACE_SUPPORT def_bool y config GENERIC_LOCKBREAK def_bool n config RWSEM_XCHGADD_ALGORITHM bool default y config HUGETLB_PAGE_SIZE_VARIABLE bool depends on HUGETLB_PAGE default y config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_CALIBRATE_DELAY bool default y config GENERIC_TIME_VSYSCALL bool default y config HAVE_SETUP_PER_CPU_AREA def_bool y config DMI bool default y config EFI bool default y config GENERIC_IOMAP bool default y config SCHED_OMIT_FRAME_POINTER bool default y config IA64_UNCACHED_ALLOCATOR bool select GENERIC_ALLOCATOR config ARCH_USES_PG_UNCACHED def_bool y depends on IA64_UNCACHED_ALLOCATOR config AUDIT_ARCH bool default y menuconfig PARAVIRT_GUEST bool "Paravirtualized guest support" help Say Y here to get to see options related to running Linux under various hypervisors. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if PARAVIRT_GUEST config PARAVIRT bool "Enable paravirtualization code" depends on PARAVIRT_GUEST default y bool default y help This changes the kernel so it can modify itself when it is run under a hypervisor, potentially improving performance significantly over full virtualization. However, when run without a hypervisor the kernel is theoretically slower and slightly larger. source "arch/ia64/xen/Kconfig" endif choice prompt "System type" default IA64_GENERIC config IA64_GENERIC bool "generic" select NUMA select ACPI_NUMA select SWIOTLB select PCI_MSI select DMAR help This selects the system type of your hardware. A "generic" kernel will run on any supported IA-64 system. However, if you configure a kernel for your specific system, it will be faster and smaller. generic For any supported IA-64 system DIG-compliant For DIG ("Developer's Interface Guide") compliant systems DIG+Intel+IOMMU For DIG systems with Intel IOMMU HP-zx1/sx1000 For HP systems HP-zx1/sx1000+swiotlb For HP systems with (broken) DMA-constrained devices. SGI-SN2 For SGI Altix systems SGI-UV For SGI UV systems Ski-simulator For the HP simulator Xen-domU For xen domU system If you don't know what to do, choose "generic". config IA64_DIG bool "DIG-compliant" select SWIOTLB config IA64_DIG_VTD bool "DIG+Intel+IOMMU" select DMAR select PCI_MSI config IA64_HP_ZX1 bool "HP-zx1/sx1000" help Build a kernel that runs on HP zx1 and sx1000 systems. This adds support for the HP I/O MMU. config IA64_HP_ZX1_SWIOTLB bool "HP-zx1/sx1000 with software I/O TLB" select SWIOTLB help Build a kernel that runs on HP zx1 and sx1000 systems even when they have broken PCI devices which cannot DMA to full 32 bits. Apart from support for the HP I/O MMU, this includes support for the software I/O TLB, which allows supporting the broken devices at the expense of wasting some kernel memory (about 2MB by default). config IA64_SGI_SN2 bool "SGI-SN2" select NUMA select ACPI_NUMA help Selecting this option will optimize the kernel for use on sn2 based systems, but the resulting kernel binary will not run on other types of ia64 systems. If you have an SGI Altix system, it's safe to select this option. If in doubt, select ia64 generic support instead. config IA64_SGI_UV bool "SGI-UV" select NUMA select ACPI_NUMA select SWIOTLB help Selecting this option will optimize the kernel for use on UV based systems, but the resulting kernel binary will not run on other types of ia64 systems. If you have an SGI UV system, it's safe to select this option. If in doubt, select ia64 generic support instead. config IA64_HP_SIM bool "Ski-simulator" select SWIOTLB config IA64_XEN_GUEST bool "Xen guest" select SWIOTLB depends on XEN help Build a kernel that runs on Xen guest domain. At this moment only 16KB page size in supported. endchoice choice prompt "Processor type" default ITANIUM config ITANIUM bool "Itanium" help Select your IA-64 processor type. The default is Itanium. This choice is safe for all IA-64 systems, but may not perform optimally on systems with, say, Itanium 2 or newer processors. config MCKINLEY bool "Itanium 2" help Select this to configure for an Itanium 2 (McKinley) processor. endchoice choice prompt "Kernel page size" default IA64_PAGE_SIZE_16KB config IA64_PAGE_SIZE_4KB bool "4KB" help This lets you select the page size of the kernel. For best IA-64 performance, a page size of 8KB or 16KB is recommended. For best IA-32 compatibility, a page size of 4KB should be selected (the vast majority of IA-32 binaries work perfectly fine with a larger page size). For Itanium 2 or newer systems, a page size of 64KB can also be selected. 4KB For best IA-32 compatibility 8KB For best IA-64 performance 16KB For best IA-64 performance 64KB Requires Itanium 2 or newer processor. If you don't know what to do, choose 16KB. config IA64_PAGE_SIZE_8KB bool "8KB" config IA64_PAGE_SIZE_16KB bool "16KB" config IA64_PAGE_SIZE_64KB depends on !ITANIUM bool "64KB" endchoice choice prompt "Page Table Levels" default PGTABLE_3 config PGTABLE_3 bool "3 Levels" config PGTABLE_4 depends on !IA64_PAGE_SIZE_64KB bool "4 Levels" endchoice if IA64_HP_SIM config HZ default 32 endif if !IA64_HP_SIM source kernel/Kconfig.hz endif config IA64_BRL_EMU bool depends on ITANIUM default y # align cache-sensitive data to 128 bytes config IA64_L1_CACHE_SHIFT int default "7" if MCKINLEY default "6" if ITANIUM config IA64_CYCLONE bool "Cyclone (EXA) Time Source support" help Say Y here to enable support for IBM EXA Cyclone time source. If you're unsure, answer N. config IOSAPIC bool depends on !IA64_HP_SIM default y config FORCE_MAX_ZONEORDER int "MAX_ORDER (11 - 17)" if !HUGETLB_PAGE range 11 17 if !HUGETLB_PAGE default "17" if HUGETLB_PAGE default "11" config VIRT_CPU_ACCOUNTING bool "Deterministic task and CPU time accounting" default n help Select this option to enable more accurate task and CPU time accounting. This is done by reading a CPU counter on each kernel entry and exit and on transitions within the kernel between system, softirq and hardirq state, so there is a small performance impact. If in doubt, say N here. config SMP bool "Symmetric multi-processing support" select USE_GENERIC_SMP_HELPERS help This enables support for systems with more than one CPU. If you have a system with only one CPU, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor systems, but will use only one CPU of a multiprocessor system. If you say Y here, the kernel will run on many, but not all, single processor systems. On a single processor system, the kernel will run faster if you say N here. See also the SMP-HOWTO available at . If you don't know what to do here, say N. config NR_CPUS int "Maximum number of CPUs (2-4096)" range 2 4096 depends on SMP default "4096" help You should set this to the number of CPUs in your system, but keep in mind that a kernel compiled for, e.g., 2 CPUs will boot but only use 2 CPUs on a >2 CPU system. Setting this to a value larger than 64 will cause the use of a CPU mask array, causing a small performance hit. config HOTPLUG_CPU bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" depends on SMP && EXPERIMENTAL select HOTPLUG default n ---help--- Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. config ARCH_ENABLE_MEMORY_HOTPLUG def_bool y config ARCH_ENABLE_MEMORY_HOTREMOVE def_bool y config SCHED_SMT bool "SMT scheduler support" depends on SMP help Improves the CPU scheduler's decision making when dealing with Intel IA64 chips with MultiThreading at a cost of slightly increased overhead in some places. If unsure say N here. config PERMIT_BSP_REMOVE bool "Support removal of Bootstrap Processor" depends on HOTPLUG_CPU default n ---help--- Say Y here if your platform SAL will support removal of BSP with HOTPLUG_CPU support. config FORCE_CPEI_RETARGET bool "Force assumption that CPEI can be re-targeted" depends on PERMIT_BSP_REMOVE default n ---help--- Say Y if you need to force the assumption that CPEI can be re-targeted to any cpu in the system. This hint is available via ACPI 3.0 specifications. Tiger4 systems are capable of re-directing CPEI to any CPU other than BSP. This option it useful to enable this feature on older BIOS's as well. You can also enable this by using boot command line option force_cpei=1. source "kernel/Kconfig.preempt" source "mm/Kconfig" config ARCH_SELECT_MEMORY_MODEL def_bool y config ARCH_DISCONTIGMEM_ENABLE def_bool y help Say Y to support efficient handling of discontiguous physical memory, for architectures which are either NUMA (Non-Uniform Memory Access) or have huge holes in the physical address space for other reasons. See for more. config ARCH_FLATMEM_ENABLE def_bool y config ARCH_SPARSEMEM_ENABLE def_bool y depends on ARCH_DISCONTIGMEM_ENABLE select SPARSEMEM_VMEMMAP_ENABLE config ARCH_DISCONTIGMEM_DEFAULT def_bool y if (IA64_SGI_SN2 || IA64_GENERIC || IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB) depends on ARCH_DISCONTIGMEM_ENABLE config NUMA bool "NUMA support" depends on !IA64_HP_SIM && !FLATMEM default y if IA64_SGI_SN2 select ACPI_NUMA if ACPI help Say Y to compile the kernel to support NUMA (Non-Uniform Memory Access). This option is for configuring high-end multiprocessor server systems. If in doubt, say N. config NODES_SHIFT int "Max num nodes shift(3-10)" range 3 10 default "10" depends on NEED_MULTIPLE_NODES help This option specifies the maximum number of nodes in your SSI system. MAX_NUMNODES will be 2^(This value). If in doubt, use the default. config ARCH_POPULATES_NODE_MAP def_bool y # VIRTUAL_MEM_MAP and FLAT_NODE_MEM_MAP are functionally equivalent. # VIRTUAL_MEM_MAP has been retained for historical reasons. config VIRTUAL_MEM_MAP bool "Virtual mem map" depends on !SPARSEMEM default y if !IA64_HP_SIM help Say Y to compile the kernel with support for a virtual mem map. This code also only takes effect if a memory hole of greater than 1 Gb is found during boot. You must turn this option on if you require the DISCONTIGMEM option for your machine. If you are unsure, say Y. config HOLES_IN_ZONE bool default y if VIRTUAL_MEM_MAP config HAVE_ARCH_EARLY_PFN_TO_NID def_bool NUMA && SPARSEMEM config HAVE_ARCH_NODEDATA_EXTENSION def_bool y depends on NUMA config USE_PERCPU_NUMA_NODE_ID def_bool y depends on NUMA config HAVE_MEMORYLESS_NODES def_bool NUMA config ARCH_PROC_KCORE_TEXT def_bool y depends on PROC_KCORE config IA64_MCA_RECOVERY tristate "MCA recovery from errors other than TLB." config PERFMON bool "Performance monitor support" help Selects whether support for the IA-64 performance monitor hardware is included in the kernel. This makes some kernel data-structures a little bigger and slows down execution a bit, but it is generally a good idea to turn this on. If you're unsure, say Y. config IA64_PALINFO tristate "/proc/pal support" help If you say Y here, you are able to get PAL (Processor Abstraction Layer) information in /proc/pal. This contains useful information about the processors in your systems, such as cache and TLB sizes and the PAL firmware version in use. To use this option, you have to ensure that the "/proc file system support" (CONFIG_PROC_FS) is enabled, too. config IA64_MC_ERR_INJECT tristate "MC error injection support" help Adds support for MC error injection. If enabled, the kernel will provide a sysfs interface for user applications to call MC error injection PAL procedures to inject various errors. This is a useful tool for MCA testing. If you're unsure, do not select this option. config SGI_SN def_bool y if (IA64_SGI_SN2 || IA64_GENERIC) config IA64_ESI bool "ESI (Extensible SAL Interface) support" help If you say Y here, support is built into the kernel to make ESI calls. ESI calls are used to support vendor-specific firmware extensions, such as the ability to inject memory-errors for test-purposes. If you're unsure, say N. config IA64_HP_AML_NFW bool "Support ACPI AML calls to native firmware" help This driver installs a global ACPI Operation Region handler for region 0xA1. AML methods can use this OpRegion to call arbitrary native firmware functions. The driver installs the OpRegion handler if there is an HPQ5001 device or if the user supplies the "force" module parameter, e.g., with the "aml_nfw.force" kernel command line option. source "drivers/sn/Kconfig" config KEXEC bool "kexec system call (EXPERIMENTAL)" depends on EXPERIMENTAL && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU) help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware. And like a reboot you can start any kernel with it, not just Linux. The name comes from the similarity to the exec system call. It is an ongoing process to be certain the hardware in a machine is properly shutdown, so do not be surprised if this code does not initially work for you. It may help to enable device hotplugging support. As of this writing the exact hardware interface is strongly in flux, so no good recommendation can be made. config CRASH_DUMP bool "kernel crash dumps" depends on IA64_MCA_RECOVERY && !IA64_HP_SIM && (!SMP || HOTPLUG_CPU) help Generate crash dump after being started by kexec. source "drivers/firmware/Kconfig" source "fs/Kconfig.binfmt" endmenu menu "Power management and ACPI options" source "kernel/power/Kconfig" source "drivers/acpi/Kconfig" if PM source "arch/ia64/kernel/cpufreq/Kconfig" endif endmenu if !IA64_HP_SIM menu "Bus options (PCI, PCMCIA)" config PCI bool "PCI support" help Real IA-64 machines all have PCI/PCI-X/PCI Express busses. Say Y here unless you are using a simulator without PCI support. config PCI_DOMAINS def_bool PCI config PCI_SYSCALL def_bool PCI source "drivers/pci/pcie/Kconfig" source "drivers/pci/Kconfig" source "drivers/pci/hotplug/Kconfig" source "drivers/pcmcia/Kconfig" config DMAR bool "Support for DMA Remapping Devices (EXPERIMENTAL)" depends on IA64_GENERIC && ACPI && EXPERIMENTAL help DMA remapping (DMAR) devices support enables independent address translations for Direct Memory Access (DMA) from devices. These DMA remapping devices are reported via ACPI tables and include PCI device scope covered by these DMA remapping devices. config DMAR_DEFAULT_ON def_bool y prompt "Enable DMA Remapping Devices by default" depends on DMAR help Selecting this option will enable a DMAR device at boot time if one is found. If this option is not selected, DMAR support can be enabled by passing intel_iommu=on to the kernel. It is recommended you say N here while the DMAR code remains experimental. endmenu endif source "net/Kconfig" source "drivers/Kconfig" source "arch/ia64/hp/sim/Kconfig" config MSPEC tristate "Memory special operations driver" depends on IA64 select IA64_UNCACHED_ALLOCATOR help If you have an ia64 and you want to enable memory special operations support (formerly known as fetchop), say Y here, otherwise say N. source "fs/Kconfig" source "arch/ia64/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "arch/ia64/kvm/Kconfig" source "lib/Kconfig" config IOMMU_HELPER def_bool (IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB || IA64_GENERIC || SWIOTLB) config IOMMU_API def_bool (DMAR) # # KVM configuration # source "virt/kvm/Kconfig" menuconfig VIRTUALIZATION bool "Virtualization" depends on HAVE_KVM || IA64 default y ---help--- Say Y here to get to see options for using your Linux host to run other operating systems inside virtual machines (guests). This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if VIRTUALIZATION config KVM tristate "Kernel-based Virtual Machine (KVM) support" depends on HAVE_KVM && MODULES && EXPERIMENTAL # for device assignment: depends on PCI select PREEMPT_NOTIFIERS select ANON_INODES select HAVE_KVM_IRQCHIP select KVM_APIC_ARCHITECTURE select KVM_MMIO ---help--- Support hosting fully virtualized guest machines using hardware virtualization extensions. You will need a fairly recent processor equipped with virtualization extensions. You will also need to select one or more of the processor modules below. This module provides access to the hardware capabilities through a character device node named /dev/kvm. To compile this as a module, choose M here: the module will be called kvm. If unsure, say N. config KVM_INTEL tristate "KVM for Intel Itanium 2 processors support" depends on KVM && m ---help--- Provides support for KVM on Itanium 2 processors equipped with the VT extensions. source drivers/vhost/Kconfig source drivers/virtio/Kconfig endif # VIRTUALIZATION # # This Kconfig describes xen/ia64 options # config XEN bool "Xen hypervisor support" default y depends on PARAVIRT && MCKINLEY && IA64_PAGE_SIZE_16KB && EXPERIMENTAL select XEN_XENCOMM select NO_IDLE_HZ # followings are required to save/restore. select ARCH_SUSPEND_POSSIBLE select SUSPEND select PM_SLEEP help Enable Xen hypervisor support. Resulting kernel runs both as a guest OS on Xen and natively on hardware. config XEN_XENCOMM depends on XEN bool config NO_IDLE_HZ depends on XEN bool menu "HP Simulator drivers" depends on IA64_HP_SIM || IA64_GENERIC config HP_SIMETH bool "Simulated Ethernet " depends on NET config HP_SIMSERIAL bool "Simulated serial driver support" config HP_SIMSERIAL_CONSOLE bool "Console for HP simulator" depends on HP_SIMSERIAL config HP_SIMSCSI bool "Simulated SCSI disk" depends on SCSI=y endmenu # # CPU Frequency scaling # menu "CPU Frequency scaling" source "drivers/cpufreq/Kconfig" if CPU_FREQ comment "CPUFreq processor drivers" config IA64_ACPI_CPUFREQ tristate "ACPI Processor P-States driver" select CPU_FREQ_TABLE depends on ACPI_PROCESSOR help This driver adds a CPUFreq driver which utilizes the ACPI Processor Performance States. For details, take a look at . If in doubt, say N. endif # CPU_FREQ endmenu source "arch/powerpc/platforms/Kconfig.cputype" config PPC32 bool default y if !PPC64 config 32BIT bool default y if PPC32 config 64BIT bool default y if PPC64 config WORD_SIZE int default 64 if PPC64 default 32 if !PPC64 config ARCH_PHYS_ADDR_T_64BIT def_bool PPC64 || PHYS_64BIT config ARCH_DMA_ADDR_T_64BIT def_bool ARCH_PHYS_ADDR_T_64BIT config MMU bool default y config GENERIC_CMOS_UPDATE def_bool y config GENERIC_TIME_VSYSCALL def_bool y config GENERIC_CLOCKEVENTS def_bool y config HAVE_SETUP_PER_CPU_AREA def_bool PPC64 config NEED_PER_CPU_EMBED_FIRST_CHUNK def_bool PPC64 config NR_IRQS int "Number of virtual interrupt numbers" range 32 32768 default "512" help This defines the number of virtual interrupt numbers the kernel can manage. Virtual interrupt numbers are what you see in /proc/interrupts. If you configure your system to have too few, drivers will fail to load or worse - handle with care. config STACKTRACE_SUPPORT bool default y config HAVE_LATENCYTOP_SUPPORT def_bool y config TRACE_IRQFLAGS_SUPPORT bool default y config LOCKDEP_SUPPORT bool default y config RWSEM_GENERIC_SPINLOCK bool config RWSEM_XCHGADD_ALGORITHM bool default y config GENERIC_LOCKBREAK bool default y depends on SMP && PREEMPT config ARCH_HAS_ILOG2_U32 bool default y config ARCH_HAS_ILOG2_U64 bool default y if 64BIT config GENERIC_HWEIGHT bool default y config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_FIND_BIT_LE bool default y config GENERIC_GPIO bool help Generic GPIO API support config ARCH_NO_VIRT_TO_BUS def_bool PPC64 config PPC bool default y select OF select OF_EARLY_FLATTREE select HAVE_FTRACE_MCOUNT_RECORD select HAVE_DYNAMIC_FTRACE select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_GRAPH_TRACER select ARCH_WANT_OPTIONAL_GPIOLIB select HAVE_IDE select HAVE_IOREMAP_PROT select HAVE_EFFICIENT_UNALIGNED_ACCESS select HAVE_KPROBES select HAVE_ARCH_KGDB select HAVE_KRETPROBES select HAVE_ARCH_TRACEHOOK select HAVE_MEMBLOCK select HAVE_DMA_ATTRS select HAVE_DMA_API_DEBUG select USE_GENERIC_SMP_HELPERS if SMP select HAVE_OPROFILE select HAVE_SYSCALL_WRAPPERS if PPC64 select GENERIC_ATOMIC64 if PPC32 select HAVE_IRQ_WORK select HAVE_PERF_EVENTS select HAVE_REGS_AND_STACK_ACCESS_API select HAVE_HW_BREAKPOINT if PERF_EVENTS && PPC_BOOK3S_64 select HAVE_GENERIC_HARDIRQS select HAVE_SPARSE_IRQ select IRQ_PER_CPU select GENERIC_IRQ_SHOW select GENERIC_IRQ_SHOW_LEVEL config EARLY_PRINTK bool default y config COMPAT bool default y if PPC64 select COMPAT_BINFMT_ELF config SYSVIPC_COMPAT bool depends on COMPAT && SYSVIPC default y # All PPC32s use generic nvram driver through ppc_md config GENERIC_NVRAM bool default y if PPC32 config SCHED_OMIT_FRAME_POINTER bool default y config ARCH_MAY_HAVE_PC_FDC bool default !PPC_PSERIES || PCI config PPC_OF def_bool y config PPC_UDBG_16550 bool default n config GENERIC_TBSYNC bool default y if PPC32 && SMP default n config AUDIT_ARCH bool default y config GENERIC_BUG bool default y depends on BUG config SYS_SUPPORTS_APM_EMULATION default y if PMAC_APM_EMU bool config DEFAULT_UIMAGE bool help Used to allow a board to specify it wants a uImage built by default default n config REDBOOT bool config ARCH_HIBERNATION_POSSIBLE bool default y config ARCH_SUSPEND_POSSIBLE def_bool y depends on ADB_PMU || PPC_EFIKA || PPC_LITE5200 || PPC_83xx || \ (PPC_85xx && !SMP) || PPC_86xx || PPC_PSERIES || 44x || 40x config PPC_DCR_NATIVE bool default n config PPC_DCR_MMIO bool default n config PPC_DCR bool depends on PPC_DCR_NATIVE || PPC_DCR_MMIO default y config PPC_OF_PLATFORM_PCI bool depends on PCI depends on PPC64 # not supported on 32 bits yet default n config ARCH_SUPPORTS_DEBUG_PAGEALLOC def_bool y config PPC_ADV_DEBUG_REGS bool depends on 40x || BOOKE default y config PPC_ADV_DEBUG_IACS int depends on PPC_ADV_DEBUG_REGS default 4 if 44x default 2 config PPC_ADV_DEBUG_DACS int depends on PPC_ADV_DEBUG_REGS default 2 config PPC_ADV_DEBUG_DVCS int depends on PPC_ADV_DEBUG_REGS default 2 if 44x default 0 config PPC_ADV_DEBUG_DAC_RANGE bool depends on PPC_ADV_DEBUG_REGS && 44x default y source "init/Kconfig" source "kernel/Kconfig.freezer" source "arch/powerpc/sysdev/Kconfig" source "arch/powerpc/platforms/Kconfig" menu "Kernel options" config HIGHMEM bool "High memory support" depends on PPC32 source kernel/time/Kconfig source kernel/Kconfig.hz source kernel/Kconfig.preempt source "fs/Kconfig.binfmt" config HUGETLB_PAGE_SIZE_VARIABLE bool depends on HUGETLB_PAGE default y config MATH_EMULATION bool "Math emulation" depends on 4xx || 8xx || E200 || PPC_MPC832x || E500 ---help--- Some PowerPC chips designed for embedded applications do not have a floating-point unit and therefore do not implement the floating-point instructions in the PowerPC instruction set. If you say Y here, the kernel will include code to emulate a floating-point unit, which will allow programs that use floating-point instructions to run. config 8XX_MINIMAL_FPEMU bool "Minimal math emulation for 8xx" depends on 8xx && !MATH_EMULATION help Older arch/ppc kernels still emulated a few floating point instructions such as load and store, even when full math emulation is disabled. Say "Y" here if you want to preserve this behavior. It is recommended that you build a soft-float userspace instead. config IOMMU_HELPER def_bool PPC64 config SWIOTLB bool "SWIOTLB support" default n select IOMMU_HELPER ---help--- Support for IO bounce buffering for systems without an IOMMU. This allows us to DMA to the full physical address space on platforms where the size of a physical address is larger than the bus address. Not all platforms support this. config HOTPLUG_CPU bool "Support for enabling/disabling CPUs" depends on SMP && HOTPLUG && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC) ---help--- Say Y here to be able to disable and re-enable individual CPUs at runtime on SMP machines. Say N if you are unsure. config ARCH_CPU_PROBE_RELEASE def_bool y depends on HOTPLUG_CPU config ARCH_ENABLE_MEMORY_HOTPLUG def_bool y config ARCH_HAS_WALK_MEMORY def_bool y config ARCH_ENABLE_MEMORY_HOTREMOVE def_bool y config KEXEC bool "kexec system call (EXPERIMENTAL)" depends on (PPC_BOOK3S || FSL_BOOKE) && EXPERIMENTAL help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware. And like a reboot you can start any kernel with it, not just Linux. The name comes from the similarity to the exec system call. It is an ongoing process to be certain the hardware in a machine is properly shutdown, so do not be surprised if this code does not initially work for you. It may help to enable device hotplugging support. As of this writing the exact hardware interface is strongly in flux, so no good recommendation can be made. config CRASH_DUMP bool "Build a kdump crash kernel" depends on PPC64 || 6xx || FSL_BOOKE select RELOCATABLE if PPC64 || FSL_BOOKE help Build a kernel suitable for use as a kdump capture kernel. The same kernel binary can be used as production kernel and dump capture kernel. config PHYP_DUMP bool "Hypervisor-assisted dump (EXPERIMENTAL)" depends on PPC_PSERIES && EXPERIMENTAL help Hypervisor-assisted dump is meant to be a kdump replacement offering robustness and speed not possible without system hypervisor assistance. If unsure, say "N" config PPCBUG_NVRAM bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC default y if PPC_PREP config IRQ_ALL_CPUS bool "Distribute interrupts on all CPUs by default" depends on SMP && !MV64360 help This option gives the kernel permission to distribute IRQs across multiple CPUs. Saying N here will route all IRQs to the first CPU. Generally saying Y is safe, although some problems have been reported with SMP Power Macintoshes with this option enabled. config NUMA bool "NUMA support" depends on PPC64 default y if SMP && PPC_PSERIES config NODES_SHIFT int default "8" if PPC64 default "4" depends on NEED_MULTIPLE_NODES config MAX_ACTIVE_REGIONS int default "256" if PPC64 default "32" config ARCH_SELECT_MEMORY_MODEL def_bool y depends on PPC64 config ARCH_FLATMEM_ENABLE def_bool y depends on (PPC64 && !NUMA) || PPC32 config ARCH_SPARSEMEM_ENABLE def_bool y depends on PPC64 select SPARSEMEM_VMEMMAP_ENABLE config ARCH_SPARSEMEM_DEFAULT def_bool y depends on (SMP && PPC_PSERIES) || PPC_PS3 config ARCH_POPULATES_NODE_MAP def_bool y config SYS_SUPPORTS_HUGETLBFS def_bool y depends on PPC_BOOK3S_64 source "mm/Kconfig" config ARCH_MEMORY_PROBE def_bool y depends on MEMORY_HOTPLUG # Some NUMA nodes have memory ranges that span # other nodes. Even though a pfn is valid and # between a node's start and end pfns, it may not # reside on that node. See memmap_init_zone() # for details. config NODES_SPAN_OTHER_NODES def_bool y depends on NEED_MULTIPLE_NODES config PPC_HAS_HASH_64K bool depends on PPC64 default n config STDBINUTILS bool "Using standard binutils settings" depends on 44x default y help Turning this option off allows you to select 256KB PAGE_SIZE on 44x. Note, that kernel will be able to run only those applications, which had been compiled using binutils later than 2.17.50.0.3 with '-zmax-page-size' set to 256K (the default is 64K). Or, if using the older binutils, you can patch them with a trivial patch, which changes the ELF_MAXPAGESIZE definition from 0x10000 to 0x40000. choice prompt "Page size" default PPC_4K_PAGES help Select the kernel logical page size. Increasing the page size will reduce software overhead at each page boundary, allow hardware prefetch mechanisms to be more effective, and allow larger dma transfers increasing IO efficiency and reducing overhead. However the utilization of memory will increase. For example, each cached file will using a multiple of the page size to hold its contents and the difference between the end of file and the end of page is wasted. Some dedicated systems, such as software raid serving with accelerated calculations, have shown significant increases. If you configure a 64 bit kernel for 64k pages but the processor does not support them, then the kernel will simulate them with 4k pages, loading them on demand, but with the reduced software overhead and larger internal fragmentation. For the 32 bit kernel, a large page option will not be offered unless it is supported by the configured processor. If unsure, choose 4K_PAGES. config PPC_4K_PAGES bool "4k page size" config PPC_16K_PAGES bool "16k page size" if 44x config PPC_64K_PAGES bool "64k page size" if 44x || PPC_STD_MMU_64 || PPC_BOOK3E_64 select PPC_HAS_HASH_64K if PPC_STD_MMU_64 config PPC_256K_PAGES bool "256k page size" if 44x depends on !STDBINUTILS help Make the page size 256k. As the ELF standard only requires alignment to support page sizes up to 64k, you will need to compile all of your user space applications with a non-standard binutils settings (see the STDBINUTILS description for details). Say N unless you know what you are doing. endchoice config FORCE_MAX_ZONEORDER int "Maximum zone order" range 9 64 if PPC64 && PPC_64K_PAGES default "9" if PPC64 && PPC_64K_PAGES range 13 64 if PPC64 && !PPC_64K_PAGES default "13" if PPC64 && !PPC_64K_PAGES range 9 64 if PPC32 && PPC_16K_PAGES default "9" if PPC32 && PPC_16K_PAGES range 7 64 if PPC32 && PPC_64K_PAGES default "7" if PPC32 && PPC_64K_PAGES range 5 64 if PPC32 && PPC_256K_PAGES default "5" if PPC32 && PPC_256K_PAGES range 11 64 default "11" help The kernel memory allocator divides physically contiguous memory blocks into "zones", where each zone is a power of two number of pages. This option selects the largest power of two that the kernel keeps in the memory allocator. If you need to allocate very large blocks of physically contiguous memory, then you may need to increase this value. This config option is actually maximum order plus one. For example, a value of 11 means that the largest free memory block is 2^10 pages. The page size is not necessarily 4KB. For example, on 64-bit systems, 64KB pages can be enabled via CONFIG_PPC_64K_PAGES. Keep this in mind when choosing a value for this option. config PPC_SUBPAGE_PROT bool "Support setting protections for 4k subpages" depends on PPC_STD_MMU_64 && PPC_64K_PAGES help This option adds support for a system call to allow user programs to set access permissions (read/write, readonly, or no access) on the 4k subpages of each 64k page. config SCHED_SMT bool "SMT (Hyperthreading) scheduler support" depends on PPC64 && SMP help SMT scheduler support improves the CPU scheduler's decision making when dealing with POWER5 cpus at a cost of slightly increased overhead in some places. If unsure say N here. config CMDLINE_BOOL bool "Default bootloader kernel arguments" config CMDLINE string "Initial kernel command string" depends on CMDLINE_BOOL default "console=ttyS0,9600 console=tty0 root=/dev/sda2" help On some platforms, there is currently no way for the boot loader to pass arguments to the kernel. For these platforms, you can supply some command-line options at build time by entering them here. In most cases you will need to specify the root device here. config EXTRA_TARGETS string "Additional default image types" help List additional targets to be built by the bootwrapper here (separated by spaces). This is useful for targets that depend of device tree files in the .dts directory. Targets in this list will be build as part of the default build target, or when the user does a 'make zImage' or a 'make zImage.initrd'. If unsure, leave blank config ARCH_WANTS_FREEZER_CONTROL def_bool y depends on ADB_PMU source kernel/power/Kconfig config SECCOMP bool "Enable seccomp to safely compute untrusted bytecode" depends on PROC_FS default y help This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via /proc//seccomp, it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. If unsure, say Y. Only embedded should say N here. endmenu config ISA_DMA_API bool default !PPC_ISERIES || PCI menu "Bus options" config ISA bool "Support for ISA-bus hardware" depends on PPC_PREP || PPC_CHRP select PPC_I8259 help Find out whether you have ISA slots on your motherboard. ISA is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. If you have an Apple machine, say N here; if you have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If you have an embedded board, consult your board documentation. config ZONE_DMA bool default y config NEED_DMA_MAP_STATE def_bool (PPC64 || NOT_COHERENT_CACHE) config NEED_SG_DMA_LENGTH def_bool y config GENERIC_ISA_DMA bool depends on ISA_DMA_API default y config PPC_INDIRECT_PCI bool depends on PCI default y if 40x || 44x default n config EISA bool config SBUS bool config FSL_SOC bool config FSL_PCI bool select PPC_INDIRECT_PCI select PCI_QUIRKS config FSL_PMC bool default y depends on SUSPEND && (PPC_85xx || PPC_86xx) help Freescale MPC85xx/MPC86xx power management controller support (suspend/resume). For MPC83xx see platforms/83xx/suspend.c config PPC4xx_CPM bool default y depends on SUSPEND && (44x || 40x) help PPC4xx Clock Power Management (CPM) support (suspend/resume). It also enables support for two different idle states (idle-wait and idle-doze). config 4xx_SOC bool config FSL_LBC bool "Freescale Local Bus support" depends on FSL_SOC help Enables reporting of errors from the Freescale local bus controller. Also contains some common code used by drivers for specific local bus peripherals. config FSL_GTM bool depends on PPC_83xx || QUICC_ENGINE || CPM2 help Freescale General-purpose Timers support # Yes MCA RS/6000s exist but Linux-PPC does not currently support any config MCA bool # Platforms that what PCI turned unconditionally just do select PCI # in their config node. Platforms that want to choose at config # time should select PPC_PCI_CHOICE config PPC_PCI_CHOICE bool config PCI bool "PCI support" if PPC_PCI_CHOICE default y if !40x && !CPM2 && !8xx && !PPC_83xx \ && !PPC_85xx && !PPC_86xx && !GAMECUBE_COMMON default PCI_PERMEDIA if !4xx && !CPM2 && !8xx default PCI_QSPAN if !4xx && !CPM2 && 8xx select ARCH_SUPPORTS_MSI help Find out whether your system includes a PCI bus. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. If you say Y here, the kernel will include drivers and infrastructure code to support PCI bus devices. config PCI_DOMAINS def_bool PCI config PCI_SYSCALL def_bool PCI config PCI_QSPAN bool "QSpan PCI" depends on !4xx && !CPM2 && 8xx select PPC_I8259 help Say Y here if you have a system based on a Motorola 8xx-series embedded processor with a QSPAN PCI interface, otherwise say N. config PCI_8260 bool depends on PCI && 8260 select PPC_INDIRECT_PCI default y config 8260_PCI9 bool "Enable workaround for MPC826x erratum PCI 9" depends on PCI_8260 && !8272 default y choice prompt "IDMA channel for PCI 9 workaround" depends on 8260_PCI9 config 8260_PCI9_IDMA1 bool "IDMA1" config 8260_PCI9_IDMA2 bool "IDMA2" config 8260_PCI9_IDMA3 bool "IDMA3" config 8260_PCI9_IDMA4 bool "IDMA4" endchoice source "drivers/pci/pcie/Kconfig" source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" config HAS_RAPIDIO bool default n config RAPIDIO bool "RapidIO support" depends on HAS_RAPIDIO || PCI help If you say Y here, the kernel will include drivers and infrastructure code to support RapidIO interconnect devices. config FSL_RIO bool "Freescale Embedded SRIO Controller support" depends on RAPIDIO && HAS_RAPIDIO default "n" ---help--- Include support for RapidIO controller on Freescale embedded processors (MPC8548, MPC8641, etc). source "drivers/rapidio/Kconfig" endmenu menu "Advanced setup" depends on PPC32 config ADVANCED_OPTIONS bool "Prompt for advanced kernel configuration options" help This option will enable prompting for a variety of advanced kernel configuration options. These options can cause the kernel to not work if they are set incorrectly, but can be used to optimize certain aspects of kernel memory management. Unless you know what you are doing, say N here. comment "Default settings for advanced configuration options are used" depends on !ADVANCED_OPTIONS config LOWMEM_SIZE_BOOL bool "Set maximum low memory" depends on ADVANCED_OPTIONS help This option allows you to set the maximum amount of memory which will be used as "low memory", that is, memory which the kernel can access directly, without having to set up a kernel virtual mapping. This can be useful in optimizing the layout of kernel virtual memory. Say N here unless you know what you are doing. config LOWMEM_SIZE hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL default "0x30000000" config LOWMEM_CAM_NUM_BOOL bool "Set number of CAMs to use to map low memory" depends on ADVANCED_OPTIONS && FSL_BOOKE help This option allows you to set the maximum number of CAM slots that will be used to map low memory. There are a limited number of slots available and even more limited number that will fit in the L1 MMU. However, using more entries will allow mapping more low memory. This can be useful in optimizing the layout of kernel virtual memory. Say N here unless you know what you are doing. config LOWMEM_CAM_NUM depends on FSL_BOOKE int "Number of CAMs to use to map low memory" if LOWMEM_CAM_NUM_BOOL default 3 config RELOCATABLE bool "Build a relocatable kernel (EXPERIMENTAL)" depends on EXPERIMENTAL && ADVANCED_OPTIONS && FLATMEM && FSL_BOOKE help This builds a kernel image that is capable of running at the location the kernel is loaded at (some alignment restrictions may exist). One use is for the kexec on panic case where the recovery kernel must live at a different physical address than the primary kernel. Note: If CONFIG_RELOCATABLE=y, then the kernel runs from the address it has been loaded at and the compile time physical addresses CONFIG_PHYSICAL_START is ignored. However CONFIG_PHYSICAL_START setting can still be useful to bootwrappers that need to know the load location of the kernel (eg. u-boot/mkimage). config PAGE_OFFSET_BOOL bool "Set custom page offset address" depends on ADVANCED_OPTIONS help This option allows you to set the kernel virtual address at which the kernel will map low memory. This can be useful in optimizing the virtual memory layout of the system. Say N here unless you know what you are doing. config PAGE_OFFSET hex "Virtual address of memory base" if PAGE_OFFSET_BOOL default "0xc0000000" config KERNEL_START_BOOL bool "Set custom kernel base address" depends on ADVANCED_OPTIONS help This option allows you to set the kernel virtual address at which the kernel will be loaded. Normally this should match PAGE_OFFSET however there are times (like kdump) that one might not want them to be the same. Say N here unless you know what you are doing. config KERNEL_START hex "Virtual address of kernel base" if KERNEL_START_BOOL default PAGE_OFFSET if PAGE_OFFSET_BOOL default "0xc2000000" if CRASH_DUMP && !RELOCATABLE default "0xc0000000" config PHYSICAL_START_BOOL bool "Set physical address where the kernel is loaded" depends on ADVANCED_OPTIONS && FLATMEM && FSL_BOOKE help This gives the physical address where the kernel is loaded. Say N here unless you know what you are doing. config PHYSICAL_START hex "Physical address where the kernel is loaded" if PHYSICAL_START_BOOL default "0x02000000" if PPC_STD_MMU && CRASH_DUMP && !RELOCATABLE default "0x00000000" config PHYSICAL_ALIGN hex default "0x04000000" if FSL_BOOKE help This value puts the alignment restrictions on physical address where kernel is loaded and run from. Kernel is compiled for an address which meets above alignment restriction. config TASK_SIZE_BOOL bool "Set custom user task size" depends on ADVANCED_OPTIONS help This option allows you to set the amount of virtual address space allocated to user tasks. This can be useful in optimizing the virtual memory layout of the system. Say N here unless you know what you are doing. config TASK_SIZE hex "Size of user task space" if TASK_SIZE_BOOL default "0x80000000" if PPC_PREP || PPC_8xx default "0xc0000000" config CONSISTENT_SIZE_BOOL bool "Set custom consistent memory pool size" depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE help This option allows you to set the size of the consistent memory pool. This pool of virtual memory is used to make consistent memory allocations. config CONSISTENT_SIZE hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL default "0x00200000" if NOT_COHERENT_CACHE config PIN_TLB bool "Pinned Kernel TLBs (860 ONLY)" depends on ADVANCED_OPTIONS && 8xx endmenu if PPC64 config RELOCATABLE bool "Build a relocatable kernel" help This builds a kernel image that is capable of running anywhere in the RMA (real memory area) at any 16k-aligned base address. The kernel is linked as a position-independent executable (PIE) and contains dynamic relocations which are processed early in the bootup process. One use is for the kexec on panic case where the recovery kernel must live at a different physical address than the primary kernel. config PAGE_OFFSET hex default "0xc000000000000000" config KERNEL_START hex default "0xc000000000000000" config PHYSICAL_START hex default "0x00000000" endif source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/powerpc/sysdev/qe_lib/Kconfig" source "lib/Kconfig" source "arch/powerpc/Kconfig.debug" source "security/Kconfig" config KEYS_COMPAT bool depends on COMPAT && KEYS default y source "crypto/Kconfig" config PPC_CLOCK bool default n select HAVE_CLK config PPC_LIB_RHEAP bool source "arch/powerpc/kvm/Kconfig" config PPC_PMAC bool "Apple PowerMac based machines" depends on PPC_BOOK3S select MPIC select PCI select PPC_INDIRECT_PCI if PPC32 select PPC_MPC106 if PPC32 select PPC_NATIVE default y config PPC_PMAC64 bool depends on PPC_PMAC && POWER4 select MPIC select U3_DART select MPIC_U3_HT_IRQS select GENERIC_TBSYNC select PPC_970_NAP default y menu "Platform support" source "arch/powerpc/platforms/pseries/Kconfig" source "arch/powerpc/platforms/iseries/Kconfig" source "arch/powerpc/platforms/chrp/Kconfig" source "arch/powerpc/platforms/512x/Kconfig" source "arch/powerpc/platforms/52xx/Kconfig" source "arch/powerpc/platforms/powermac/Kconfig" source "arch/powerpc/platforms/prep/Kconfig" source "arch/powerpc/platforms/maple/Kconfig" source "arch/powerpc/platforms/pasemi/Kconfig" source "arch/powerpc/platforms/ps3/Kconfig" source "arch/powerpc/platforms/cell/Kconfig" source "arch/powerpc/platforms/8xx/Kconfig" source "arch/powerpc/platforms/82xx/Kconfig" source "arch/powerpc/platforms/83xx/Kconfig" source "arch/powerpc/platforms/85xx/Kconfig" source "arch/powerpc/platforms/86xx/Kconfig" source "arch/powerpc/platforms/embedded6xx/Kconfig" source "arch/powerpc/platforms/44x/Kconfig" source "arch/powerpc/platforms/40x/Kconfig" source "arch/powerpc/platforms/amigaone/Kconfig" config KVM_GUEST bool "KVM Guest support" default y ---help--- This option enables various optimizations for running under the KVM hypervisor. Overhead for the kernel when not running inside KVM should be minimal. In case of doubt, say Y config PPC_NATIVE bool depends on 6xx || PPC64 help Support for running natively on the hardware, i.e. without a hypervisor. This option is not user-selectable but should be selected by all platforms that need it. config PPC_OF_BOOT_TRAMPOLINE bool "Support booting from Open Firmware or yaboot" depends on 6xx || PPC64 default y help Support from booting from Open Firmware or yaboot using an Open Firmware client interface. This enables the kernel to communicate with open firmware to retrieve system information such as the device tree. In case of doubt, say Y config UDBG_RTAS_CONSOLE bool "RTAS based debug console" depends on PPC_RTAS default n config PPC_UDBG_BEAT bool "BEAT based debug console" depends on PPC_CELLEB default n config XICS depends on PPC_PSERIES bool default y config IPIC bool default n config MPIC bool default n config MPIC_WEIRD bool default n config PPC_I8259 bool default n config U3_DART bool depends on PPC64 default n config PPC_RTAS bool default n config RTAS_ERROR_LOGGING bool depends on PPC_RTAS default n config PPC_RTAS_DAEMON bool depends on PPC_RTAS default n config RTAS_PROC bool "Proc interface to RTAS" depends on PPC_RTAS default y config RTAS_FLASH tristate "Firmware flash interface" depends on PPC64 && RTAS_PROC config MMIO_NVRAM bool default n config MPIC_U3_HT_IRQS bool default n config MPIC_BROKEN_REGREAD bool depends on MPIC help This option enables a MPIC driver workaround for some chips that have a bug that causes some interrupt source information to not read back properly. It is safe to use on other chips as well, but enabling it uses about 8KB of memory to keep copies of the register contents in software. config IBMVIO depends on PPC_PSERIES || PPC_ISERIES bool default y config IBMEBUS depends on PPC_PSERIES bool "Support for GX bus based adapters" help Bus device driver for GX bus based adapters. config PPC_MPC106 bool default n config PPC_970_NAP bool default n config PPC_INDIRECT_IO bool select GENERIC_IOMAP default n config GENERIC_IOMAP bool default n source "drivers/cpufreq/Kconfig" menu "CPU Frequency drivers" depends on CPU_FREQ config CPU_FREQ_PMAC bool "Support for Apple PowerBooks" depends on ADB_PMU && PPC32 select CPU_FREQ_TABLE help This adds support for frequency switching on Apple PowerBooks, this currently includes some models of iBook & Titanium PowerBook. config CPU_FREQ_PMAC64 bool "Support for some Apple G5s" depends on PPC_PMAC && PPC64 select CPU_FREQ_TABLE help This adds support for frequency switching on Apple iMac G5, and some of the more recent desktop G5 machines as well. config PPC_PASEMI_CPUFREQ bool "Support for PA Semi PWRficient" depends on PPC_PASEMI default y select CPU_FREQ_TABLE help This adds the support for frequency switching on PA Semi PWRficient processors. endmenu config PPC601_SYNC_FIX bool "Workarounds for PPC601 bugs" depends on 6xx && (PPC_PREP || PPC_PMAC) help Some versions of the PPC601 (the first PowerPC chip) have bugs which mean that extra synchronization instructions are required near certain instructions, typically those that make major changes to the CPU state. These extra instructions reduce performance slightly. If you say N here, these extra instructions will not be included, resulting in a kernel which will run faster but may not run at all on some systems with the PPC601 chip. If in doubt, say Y here. config TAU bool "On-chip CPU temperature sensor support" depends on 6xx help G3 and G4 processors have an on-chip temperature sensor called the 'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die temperature within 2-4 degrees Celsius. This option shows the current on-die temperature in /proc/cpuinfo if the cpu supports it. Unfortunately, on some chip revisions, this sensor is very inaccurate and in many cases, does not work at all, so don't assume the cpu temp is actually what /proc/cpuinfo says it is. config TAU_INT bool "Interrupt driven TAU driver (DANGEROUS)" depends on TAU ---help--- The TAU supports an interrupt driven mode which causes an interrupt whenever the temperature goes out of range. This is the fastest way to get notified the temp has exceeded a range. With this option off, a timer is used to re-check the temperature periodically. However, on some cpus it appears that the TAU interrupt hardware is buggy and can cause a situation which would lead unexplained hard lockups. Unless you are extending the TAU driver, or enjoy kernel/hardware debugging, leave this option off. config TAU_AVERAGE bool "Average high and low temp" depends on TAU ---help--- The TAU hardware can compare the temperature to an upper and lower bound. The default behavior is to show both the upper and lower bound in /proc/cpuinfo. If the range is large, the temperature is either changing a lot, or the TAU hardware is broken (likely on some G4's). If the range is small (around 4 degrees), the temperature is relatively stable. If you say Y here, a single temperature value, halfway between the upper and lower bounds, will be reported in /proc/cpuinfo. If in doubt, say N here. config QUICC_ENGINE bool "Freescale QUICC Engine (QE) Support" depends on FSL_SOC select PPC_LIB_RHEAP select CRC32 help The QUICC Engine (QE) is a new generation of communications coprocessors on Freescale embedded CPUs (akin to CPM in older chips). Selecting this option means that you wish to build a kernel for a machine with a QE coprocessor. config QE_GPIO bool "QE GPIO support" depends on QUICC_ENGINE select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB help Say Y here if you're going to use hardware that connects to the QE GPIOs. config CPM2 bool "Enable support for the CPM2 (Communications Processor Module)" depends on (FSL_SOC_BOOKE && PPC32) || 8260 select CPM select PPC_LIB_RHEAP select PPC_PCI_CHOICE select ARCH_REQUIRE_GPIOLIB select GENERIC_GPIO help The CPM2 (Communications Processor Module) is a coprocessor on embedded CPUs made by Freescale. Selecting this option means that you wish to build a kernel for a machine with a CPM2 coprocessor on it (826x, 827x, 8560). config AXON_RAM tristate "Axon DDR2 memory device driver" depends on PPC_IBM_CELL_BLADE && BLOCK default m help It registers one block device per Axon's DDR2 memory bank found on a system. Block devices are called axonram?, their major and minor numbers are available in /proc/devices, /proc/partitions or in /sys/block/axonram?/dev. config FSL_ULI1575 bool default n select GENERIC_ISA_DMA help Supports for the ULI1575 PCIe south bridge that exists on some Freescale reference boards. The boards all use the ULI in pretty much the same way. config CPM bool select PPC_CLOCK config OF_RTC bool help Uses information from the OF or flattened device tree to instantiate platform devices for direct mapped RTC chips like the DS1742 or DS1743. source "arch/powerpc/sysdev/bestcomm/Kconfig" config MPC8xxx_GPIO bool "MPC512x/MPC8xxx GPIO support" depends on PPC_MPC512x || PPC_MPC831x || PPC_MPC834x || PPC_MPC837x || \ FSL_SOC_BOOKE || PPC_86xx select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB help Say Y here if you're going to use hardware that connects to the MPC512x/831x/834x/837x/8572/8610 GPIOs. config SIMPLE_GPIO bool "Support for simple, memory-mapped GPIO controllers" depends on PPC select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB help Say Y here to support simple, memory-mapped GPIO controllers. These are usually BCSRs used to control board's switches, LEDs, chip-selects, Ethernet/USB PHY's power and various other small on-board peripherals. config MCU_MPC8349EMITX tristate "MPC8349E-mITX MCU driver" depends on I2C && PPC_83xx select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB help Say Y here to enable soft power-off functionality on the Freescale boards with the MPC8349E-mITX-compatible MCU chips. This driver will also register MCU GPIOs with the generic GPIO API, so you'll able to use MCU pins as GPIOs. config XILINX_PCI bool "Xilinx PCI host bridge support" depends on PCI && XILINX_VIRTEX endmenu menuconfig PPC_82xx bool "82xx-based boards (PQ II)" depends on 6xx if PPC_82xx config MPC8272_ADS bool "Freescale MPC8272 ADS" select DEFAULT_UIMAGE select PQ2ADS select 8272 select 8260 select FSL_SOC select PQ2_ADS_PCI_PIC if PCI help This option enables support for the MPC8272 ADS board config PQ2FADS bool "Freescale PQ2FADS" select DEFAULT_UIMAGE select PQ2ADS select 8260 select FSL_SOC select PQ2_ADS_PCI_PIC if PCI help This option enables support for the PQ2FADS board config EP8248E bool "Embedded Planet EP8248E (a.k.a. CWH-PPC-8248N-VE)" select 8272 select 8260 select FSL_SOC select PHYLIB select MDIO_BITBANG help This enables support for the Embedded Planet EP8248E board. This board is also resold by Freescale as the QUICCStart MPC8248 Evaluation System and/or the CWH-PPC-8248N-VE. config MGCOGE bool "Keymile MGCOGE" select 8272 select 8260 select FSL_SOC help This enables support for the Keymile MGCOGE board. endif config PQ2ADS bool default n config 8260 bool depends on 6xx select CPM2 help The MPC8260 is a typical embedded CPU made by Freescale. Selecting this option means that you wish to build a kernel for a machine with an 8260 class CPU. config 8272 bool select 8260 help The MPC8272 CPM has a different internal dpram setup than other CPM2 devices config PQ2_ADS_PCI_PIC bool config PPC_47x bool "Support for 47x variant" depends on 44x default n select MPIC help This option enables support for the 47x family of processors and is not currently compatible with other 44x or 46x varients config BAMBOO bool "Bamboo" depends on 44x default n select PPC44x_SIMPLE select 440EP select PCI help This option enables support for the IBM PPC440EP evaluation board. config BLUESTONE bool "Bluestone" depends on 44x default n select PPC44x_SIMPLE select APM821xx select IBM_NEW_EMAC_RGMII help This option enables support for the APM APM821xx Evaluation board. config EBONY bool "Ebony" depends on 44x default y select 440GP select PCI select OF_RTC help This option enables support for the IBM PPC440GP evaluation board. config SAM440EP bool "Sam440ep" depends on 44x default n select 440EP select PCI help This option enables support for the ACube Sam440ep board. config SEQUOIA bool "Sequoia" depends on 44x default n select PPC44x_SIMPLE select 440EPX help This option enables support for the AMCC PPC440EPX evaluation board. config TAISHAN bool "Taishan" depends on 44x default n select PPC44x_SIMPLE select 440GX select PCI help This option enables support for the AMCC PPC440GX "Taishan" evaluation board. config KATMAI bool "Katmai" depends on 44x default n select PPC44x_SIMPLE select 440SPe select PCI select PPC4xx_PCI_EXPRESS help This option enables support for the AMCC PPC440SPe evaluation board. config RAINIER bool "Rainier" depends on 44x default n select PPC44x_SIMPLE select 440GRX select PCI help This option enables support for the AMCC PPC440GRX evaluation board. config WARP bool "PIKA Warp" depends on 44x default n select 440EP help This option enables support for the PIKA Warp(tm) Appliance. The Warp is a small computer replacement with up to 9 ports of FXO/FXS plus VOIP stations and trunks. See http://www.pikatechnologies.com/ and follow the "PIKA for Computer Telephony Developers" link for more information. config ARCHES bool "Arches" depends on 44x default n select PPC44x_SIMPLE select 460EX # Odd since it uses 460GT but the effects are the same select PCI select PPC4xx_PCI_EXPRESS help This option enables support for the AMCC Dual PPC460GT evaluation board. config CANYONLANDS bool "Canyonlands" depends on 44x default n select 460EX select PCI select PPC4xx_PCI_EXPRESS select IBM_NEW_EMAC_RGMII select IBM_NEW_EMAC_ZMII help This option enables support for the AMCC PPC460EX evaluation board. config GLACIER bool "Glacier" depends on 44x default n select PPC44x_SIMPLE select 460EX # Odd since it uses 460GT but the effects are the same select PCI select PPC4xx_PCI_EXPRESS select IBM_NEW_EMAC_RGMII select IBM_NEW_EMAC_ZMII help This option enables support for the AMCC PPC460GT evaluation board. config REDWOOD bool "Redwood" depends on 44x default n select PPC44x_SIMPLE select 460SX select PCI select PPC4xx_PCI_EXPRESS help This option enables support for the AMCC PPC460SX Redwood board. config EIGER bool "Eiger" depends on 44x default n select PPC44x_SIMPLE select 460SX select PCI select PPC4xx_PCI_EXPRESS select IBM_NEW_EMAC_RGMII help This option enables support for the AMCC PPC460SX evaluation board. config YOSEMITE bool "Yosemite" depends on 44x default n select PPC44x_SIMPLE select 440EP select PCI help This option enables support for the AMCC PPC440EP evaluation board. config ISS4xx bool "ISS 4xx Simulator" depends on (44x || 40x) default n select 405GP if 40x select 440GP if 44x && !PPC_47x select PPC_FPU select OF_RTC help This option enables support for the IBM ISS simulation environment config ICON bool "Icon" depends on 44x default n select PPC44x_SIMPLE select 440SPe select PCI select PPC4xx_PCI_EXPRESS help This option enables support for the AMCC PPC440SPe evaluation board. #config LUAN # bool "Luan" # depends on 44x # default n # select 440SP # help # This option enables support for the IBM PPC440SP evaluation board. #config OCOTEA # bool "Ocotea" # depends on 44x # default n # select 440GX # help # This option enables support for the IBM PPC440GX evaluation board. config XILINX_VIRTEX440_GENERIC_BOARD bool "Generic Xilinx Virtex 5 FXT board support" depends on 44x default n select XILINX_VIRTEX_5_FXT help This option enables generic support for Xilinx Virtex based boards that use a 440 based processor in the Virtex 5 FXT FPGA architecture. The generic virtex board support matches any device tree which specifies 'xlnx,virtex440' in its compatible field. This includes the Xilinx ML5xx reference designs using the powerpc core. Most Virtex 5 designs should use this unless it needs to do some special configuration at board probe time. config XILINX_ML510 bool "Xilinx ML510 extra support" depends on XILINX_VIRTEX440_GENERIC_BOARD select PPC_PCI_CHOICE select XILINX_PCI if PCI select PPC_INDIRECT_PCI if PCI select PPC_I8259 if PCI help This option enables extra support for features on the Xilinx ML510 board. The ML510 has a PCI bus with ALI south bridge. config PPC44x_SIMPLE bool "Simple PowerPC 44x board support" depends on 44x default n help This option enables the simple PowerPC 44x platform support. config PPC4xx_GPIO bool "PPC4xx GPIO support" depends on 44x select ARCH_REQUIRE_GPIOLIB select GENERIC_GPIO help Enable gpiolib support for ppc440 based boards # 44x specific CPU modules, selected based on the board above. config 440EP bool select PPC_FPU select IBM440EP_ERR42 select IBM_NEW_EMAC_ZMII select USB_ARCH_HAS_OHCI config 440EPX bool select PPC_FPU select IBM_NEW_EMAC_EMAC4 select IBM_NEW_EMAC_RGMII select IBM_NEW_EMAC_ZMII config 440GRX bool select IBM_NEW_EMAC_EMAC4 select IBM_NEW_EMAC_RGMII select IBM_NEW_EMAC_ZMII config 440GP bool select IBM_NEW_EMAC_ZMII config 440GX bool select IBM_NEW_EMAC_EMAC4 select IBM_NEW_EMAC_RGMII select IBM_NEW_EMAC_ZMII #test only select IBM_NEW_EMAC_TAH #test only config 440SP bool config 440SPe bool select IBM_NEW_EMAC_EMAC4 config 460EX bool select PPC_FPU select IBM_NEW_EMAC_EMAC4 select IBM_NEW_EMAC_TAH config 460SX bool select PPC_FPU select IBM_NEW_EMAC_EMAC4 select IBM_NEW_EMAC_RGMII select IBM_NEW_EMAC_ZMII select IBM_NEW_EMAC_TAH config APM821xx bool select PPC_FPU select IBM_NEW_EMAC_EMAC4 select IBM_NEW_EMAC_TAH # 44x errata/workaround config symbols, selected by the CPU models above config IBM440EP_ERR42 bool # Xilinx specific config options. config XILINX_VIRTEX bool select DEFAULT_UIMAGE # Xilinx Virtex 5 FXT FPGA architecture, selected by a Xilinx board above config XILINX_VIRTEX_5_FXT bool select XILINX_VIRTEX #config BUBINGA # bool "Bubinga" # depends on 40x # default n # select 405EP # help # This option enables support for the IBM 405EP evaluation board. #config CPCI405 # bool "CPCI405" # depends on 40x # default n # select 405GP # help # This option enables support for the CPCI405 board. config ACADIA bool "Acadia" depends on 40x default n select PPC40x_SIMPLE select 405EZ help This option enables support for the AMCC 405EZ Acadia evaluation board. config EP405 bool "EP405/EP405PC" depends on 40x default n select 405GP select PCI help This option enables support for the EP405/EP405PC boards. config HCU4 bool "Hcu4" depends on 40x default n select 405GPR help This option enables support for the Nestal Maschinen HCU4 board. config HOTFOOT bool "Hotfoot" depends on 40x default n select 405EP select PPC40x_SIMPLE select PCI help This option enables support for the ESTEEM 195E Hotfoot board. config KILAUEA bool "Kilauea" depends on 40x default n select 405EX select PPC40x_SIMPLE select PPC4xx_PCI_EXPRESS help This option enables support for the AMCC PPC405EX evaluation board. config MAKALU bool "Makalu" depends on 40x default n select 405EX select PCI select PPC4xx_PCI_EXPRESS select PPC40x_SIMPLE help This option enables support for the AMCC PPC405EX board. #config SYCAMORE # bool "Sycamore" # depends on 40x # default n # select 405GPR # help # This option enables support for the IBM PPC405GPr evaluation board. config WALNUT bool "Walnut" depends on 40x default y select 405GP select PCI select OF_RTC help This option enables support for the IBM PPC405GP evaluation board. config XILINX_VIRTEX_GENERIC_BOARD bool "Generic Xilinx Virtex board" depends on 40x default n select XILINX_VIRTEX_II_PRO select XILINX_VIRTEX_4_FX help This option enables generic support for Xilinx Virtex based boards. The generic virtex board support matches any device tree which specifies 'xilinx,virtex' in its compatible field. This includes the Xilinx ML3xx and ML4xx reference designs using the powerpc core. Most Virtex designs should use this unless it needs to do some special configuration at board probe time. config PPC40x_SIMPLE bool "Simple PowerPC 40x board support" depends on 40x default n help This option enables the simple PowerPC 40x platform support. # 40x specific CPU modules, selected based on the board above. config NP405H bool #depends on ASH # OAK doesn't exist but wanted to keep this around for any future 403GCX boards config 403GCX bool #depends on OAK select IBM405_ERR51 config 405GP bool select IBM405_ERR77 select IBM405_ERR51 select IBM_NEW_EMAC_ZMII config 405EP bool config 405EX bool select IBM_NEW_EMAC_EMAC4 select IBM_NEW_EMAC_RGMII config 405EZ bool select IBM_NEW_EMAC_NO_FLOW_CTRL select IBM_NEW_EMAC_MAL_CLR_ICINTSTAT select IBM_NEW_EMAC_MAL_COMMON_ERR config 405GPR bool config XILINX_VIRTEX bool select DEFAULT_UIMAGE config XILINX_VIRTEX_II_PRO bool select XILINX_VIRTEX select IBM405_ERR77 select IBM405_ERR51 config XILINX_VIRTEX_4_FX bool select XILINX_VIRTEX config STB03xxx bool select IBM405_ERR77 select IBM405_ERR51 config PPC4xx_GPIO bool "PPC4xx GPIO support" depends on 40x select ARCH_REQUIRE_GPIOLIB select GENERIC_GPIO help Enable gpiolib support for ppc40x based boards # 40x errata/workaround config symbols, selected by the CPU models above # All 405-based cores up until the 405GPR and 405EP have this errata. config IBM405_ERR77 bool # All 40x-based cores, up until the 405GPR and 405EP have this errata. config IBM405_ERR51 bool #config BIOS_FIXUP # bool # depends on BUBINGA || EP405 || SYCAMORE || WALNUT # default y #config PPC4xx_DMA # bool "PPC4xx DMA controller support" # depends on 4xx #config PPC4xx_EDMA # bool # depends on !STB03xxx && PPC4xx_DMA # default y config FADS bool config CPM1 bool select CPM choice prompt "8xx Machine Type" depends on PPC_8xx depends on 8xx default MPC885ADS config MPC8XXFADS bool "FADS" select FADS config MPC86XADS bool "MPC86XADS" select CPM1 help MPC86x Application Development System by Freescale Semiconductor. The MPC86xADS is meant to serve as a platform for s/w and h/w development around the MPC86X processor families. config MPC885ADS bool "MPC885ADS" select CPM1 help Freescale Semiconductor MPC885 Application Development System (ADS). Also known as DUET. The MPC885ADS is meant to serve as a platform for s/w and h/w development around the MPC885 processor family. config PPC_EP88XC bool "Embedded Planet EP88xC (a.k.a. CWH-PPC-885XN-VE)" select CPM1 help This enables support for the Embedded Planet EP88xC board. This board is also resold by Freescale as the QUICCStart MPC885 Evaluation System and/or the CWH-PPC-885XN-VE. config PPC_ADDER875 bool "Analogue & Micro Adder 875" select CPM1 select REDBOOT help This enables support for the Analogue & Micro Adder 875 board. config TQM8XX bool "TQM8XX" select CPM1 help support for the mpc8xx based boards from TQM. endchoice menu "Freescale Ethernet driver platform-specific options" depends on (FS_ENET && MPC885ADS) config MPC8xx_SECOND_ETH bool "Second Ethernet channel" depends on MPC885ADS default y help This enables support for second Ethernet on MPC885ADS and MPC86xADS boards. The latter will use SCC1, for 885ADS you can select it below. choice prompt "Second Ethernet channel" depends on MPC8xx_SECOND_ETH default MPC8xx_SECOND_ETH_FEC2 config MPC8xx_SECOND_ETH_FEC2 bool "FEC2" depends on MPC885ADS help Enable FEC2 to serve as 2-nd Ethernet channel. Note that SMC2 (often 2-nd UART) will not work if this is enabled. config MPC8xx_SECOND_ETH_SCC3 bool "SCC3" depends on MPC885ADS help Enable SCC3 to serve as 2-nd Ethernet channel. Note that SMC1 (often 1-nd UART) will not work if this is enabled. endchoice endmenu # # MPC8xx Communication options # menu "MPC8xx CPM Options" depends on 8xx # This doesn't really belong here, but it is convenient to ask # 8xx specific questions. comment "Generic MPC8xx Options" config 8xx_COPYBACK bool "Copy-Back Data Cache (else Writethrough)" help Saying Y here will cause the cache on an MPC8xx processor to be used in Copy-Back mode. If you say N here, it is used in Writethrough mode. If in doubt, say Y here. config 8xx_GPIO bool "GPIO API Support" select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB help Saying Y here will cause the ports on an MPC8xx processor to be used with the GPIO API. If you say N here, the kernel needs less memory. If in doubt, say Y here. config 8xx_CPU6 bool "CPU6 Silicon Errata (860 Pre Rev. C)" help MPC860 CPUs, prior to Rev C have some bugs in the silicon, which require workarounds for Linux (and most other OSes to work). If you get a BUG() very early in boot, this might fix the problem. For more details read the document entitled "MPC860 Family Device Errata Reference" on Freescale's website. This option also incurs a performance hit. If in doubt, say N here. config 8xx_CPU15 bool "CPU15 Silicon Errata" default y help This enables a workaround for erratum CPU15 on MPC8xx chips. This bug can cause incorrect code execution under certain circumstances. This workaround adds some overhead (a TLB miss every time execution crosses a page boundary), and you may wish to disable it if you have worked around the bug in the compiler (by not placing conditional branches or branches to LR or CTR in the last word of a page, with a target of the last cache line in the next page), or if you have used some other workaround. If in doubt, say Y here. choice prompt "Microcode patch selection" default NO_UCODE_PATCH help Help not implemented yet, coming soon. config NO_UCODE_PATCH bool "None" config USB_SOF_UCODE_PATCH bool "USB SOF patch" help Help not implemented yet, coming soon. config I2C_SPI_UCODE_PATCH bool "I2C/SPI relocation patch" help Help not implemented yet, coming soon. config I2C_SPI_SMC1_UCODE_PATCH bool "I2C/SPI/SMC1 relocation patch" help Help not implemented yet, coming soon. endchoice config UCODE_PATCH bool default y depends on !NO_UCODE_PATCH endmenu config PPC_MPC52xx bool "52xx-based boards" depends on 6xx select PPC_CLOCK select PPC_PCI_CHOICE config PPC_MPC5200_SIMPLE bool "Generic support for simple MPC5200 based boards" depends on PPC_MPC52xx select DEFAULT_UIMAGE help This option enables support for a simple MPC52xx based boards which do not need a custom platform specific setup. Such boards are supported assuming the following: - GPIO pins are configured by the firmware, - CDM configuration (clocking) is setup correctly by firmware, - if the 'fsl,has-wdt' property is present in one of the gpt nodes, then it is safe to use such gpt to reset the board, - PCI is supported if enabled in the kernel configuration and if there is a PCI bus node defined in the device tree. Boards that are compatible with this generic platform support are: intercontrol,digsy-mtc phytec,pcm030 phytec,pcm032 promess,motionpro schindler,cm5200 tqc,tqm5200 config PPC_EFIKA bool "bPlan Efika 5k2. MPC5200B based computer" depends on PPC_MPC52xx select PPC_RTAS select RTAS_PROC select PPC_NATIVE config PPC_LITE5200 bool "Freescale Lite5200 Eval Board" depends on PPC_MPC52xx select DEFAULT_UIMAGE config PPC_MEDIA5200 bool "Freescale Media5200 Eval Board" depends on PPC_MPC52xx select DEFAULT_UIMAGE config PPC_MPC5200_BUGFIX bool "MPC5200 (L25R) bugfix support" depends on PPC_MPC52xx help Enable workarounds for original MPC5200 errata. This is not required for MPC5200B based boards. It is safe to say 'Y' here config PPC_MPC5200_GPIO bool "MPC5200 GPIO support" depends on PPC_MPC52xx select ARCH_REQUIRE_GPIOLIB select GENERIC_GPIO help Enable gpiolib support for mpc5200 based boards config PPC_MPC5200_LPBFIFO tristate "MPC5200 LocalPlus bus FIFO driver" depends on PPC_MPC52xx select PPC_BESTCOMM_GEN_BD config PPC_MAPLE depends on PPC64 && PPC_BOOK3S bool "Maple 970FX Evaluation Board" select PCI select MPIC select U3_DART select MPIC_U3_HT_IRQS select GENERIC_TBSYNC select PPC_UDBG_16550 select PPC_970_NAP select PPC_NATIVE select PPC_RTAS select MMIO_NVRAM select ATA_NONSTANDARD if ATA default n help This option enables support for the Maple 970FX Evaluation Board. For more information, refer to config PPC_MPC512x bool "512x-based boards" depends on 6xx select FSL_SOC select IPIC select PPC_CLOCK select PPC_PCI_CHOICE select FSL_PCI if PCI config MPC5121_ADS bool "Freescale MPC5121E ADS" depends on PPC_MPC512x select DEFAULT_UIMAGE select MPC5121_ADS_CPLD help This option enables support for the MPC5121E ADS board. config MPC5121_GENERIC bool "Generic support for simple MPC5121 based boards" depends on PPC_MPC512x select DEFAULT_UIMAGE help This option enables support for simple MPC5121 based boards which do not need custom platform specific setup. Compatible boards include: Protonic LVT base boards (ZANMCU and VICVT2). config PDM360NG bool "ifm PDM360NG board" depends on PPC_MPC512x select DEFAULT_UIMAGE help This option enables support for the PDM360NG board. menuconfig FSL_SOC_BOOKE bool "Freescale Book-E Machine Type" depends on PPC_85xx || PPC_BOOK3E select FSL_SOC select PPC_UDBG_16550 select MPIC select PPC_PCI_CHOICE select FSL_PCI if PCI select SERIAL_8250_SHARE_IRQ if SERIAL_8250 default y if FSL_SOC_BOOKE if PPC32 config MPC8540_ADS bool "Freescale MPC8540 ADS" select DEFAULT_UIMAGE help This option enables support for the MPC 8540 ADS board config MPC8560_ADS bool "Freescale MPC8560 ADS" select DEFAULT_UIMAGE select CPM2 help This option enables support for the MPC 8560 ADS board config MPC85xx_CDS bool "Freescale MPC85xx CDS" select DEFAULT_UIMAGE select PPC_I8259 help This option enables support for the MPC85xx CDS board config MPC85xx_MDS bool "Freescale MPC85xx MDS" select DEFAULT_UIMAGE select PHYLIB select HAS_RAPIDIO select SWIOTLB help This option enables support for the MPC85xx MDS board config MPC8536_DS bool "Freescale MPC8536 DS" select DEFAULT_UIMAGE select SWIOTLB help This option enables support for the MPC8536 DS board config MPC85xx_DS bool "Freescale MPC85xx DS" select PPC_I8259 select DEFAULT_UIMAGE select FSL_ULI1575 if PCI select SWIOTLB help This option enables support for the MPC85xx DS (MPC8544 DS) board config MPC85xx_RDB bool "Freescale MPC85xx RDB" select PPC_I8259 select DEFAULT_UIMAGE select FSL_ULI1575 if PCI select SWIOTLB help This option enables support for the MPC85xx RDB (P2020 RDB) board config P1022_DS bool "Freescale P1022 DS" select DEFAULT_UIMAGE select CONFIG_PHYS_64BIT # The DTS has 36-bit addresses select SWIOTLB help This option enables support for the Freescale P1022DS reference board. config SOCRATES bool "Socrates" select DEFAULT_UIMAGE help This option enables support for the Socrates board. config KSI8560 bool "Emerson KSI8560" select DEFAULT_UIMAGE help This option enables support for the Emerson KSI8560 board config XES_MPC85xx bool "X-ES single-board computer" select DEFAULT_UIMAGE help This option enables support for the various single-board computers from Extreme Engineering Solutions (X-ES) based on Freescale MPC85xx processors. Manufacturer: Extreme Engineering Solutions, Inc. URL: config STX_GP3 bool "Silicon Turnkey Express GP3" help This option enables support for the Silicon Turnkey Express GP3 board. select CPM2 select DEFAULT_UIMAGE config TQM8540 bool "TQ Components TQM8540" help This option enables support for the TQ Components TQM8540 board. select DEFAULT_UIMAGE select TQM85xx config TQM8541 bool "TQ Components TQM8541" help This option enables support for the TQ Components TQM8541 board. select DEFAULT_UIMAGE select TQM85xx select CPM2 config TQM8548 bool "TQ Components TQM8548" help This option enables support for the TQ Components TQM8548 board. select DEFAULT_UIMAGE select TQM85xx config TQM8555 bool "TQ Components TQM8555" help This option enables support for the TQ Components TQM8555 board. select DEFAULT_UIMAGE select TQM85xx select CPM2 config TQM8560 bool "TQ Components TQM8560" help This option enables support for the TQ Components TQM8560 board. select DEFAULT_UIMAGE select TQM85xx select CPM2 config SBC8548 bool "Wind River SBC8548" select DEFAULT_UIMAGE help This option enables support for the Wind River SBC8548 board config SBC8560 bool "Wind River SBC8560" select DEFAULT_UIMAGE help This option enables support for the Wind River SBC8560 board config P3041_DS bool "Freescale P3041 DS" select DEFAULT_UIMAGE select PPC_E500MC select PHYS_64BIT select SWIOTLB select MPC8xxx_GPIO select HAS_RAPIDIO help This option enables support for the P3041 DS board config P4080_DS bool "Freescale P4080 DS" select DEFAULT_UIMAGE select PPC_E500MC select PHYS_64BIT select SWIOTLB select MPC8xxx_GPIO select HAS_RAPIDIO help This option enables support for the P4080 DS board endif # PPC32 config P5020_DS bool "Freescale P5020 DS" select DEFAULT_UIMAGE select E500 select PPC_E500MC select PHYS_64BIT select SWIOTLB select MPC8xxx_GPIO select HAS_RAPIDIO help This option enables support for the P5020 DS board endif # FSL_SOC_BOOKE config TQM85xx bool config PPC_PREP bool "PowerPC Reference Platform (PReP) based machines" depends on 6xx && BROKEN select MPIC select PPC_I8259 select PPC_INDIRECT_PCI select PPC_UDBG_16550 select PPC_NATIVE default n config PREP_RESIDUAL bool "Support for PReP Residual Data" depends on PPC_PREP help Some PReP systems have residual data passed to the kernel by the firmware. This allows detection of memory size, devices present and other useful pieces of information. Sometimes this information is not present or incorrect, in which case it could lead to the machine behaving incorrectly. If this happens, either disable PREP_RESIDUAL or pass the 'noresidual' option to the kernel. If you are running a PReP system, say Y here, otherwise say N. config PROC_PREPRESIDUAL bool "Support for reading of PReP Residual Data in /proc" depends on PREP_RESIDUAL && PROC_FS help Enabling this option will create a /proc/residual file which allows you to get at the residual data on PReP systems. You will need a tool (lsresidual) to parse it. If you aren't on a PReP system, you don't want this. config PPC_CHRP bool "Common Hardware Reference Platform (CHRP) based machines" depends on 6xx select MPIC select PPC_I8259 select PPC_INDIRECT_PCI select PPC_RTAS select PPC_RTAS_DAEMON select RTAS_ERROR_LOGGING select PPC_MPC106 select PPC_UDBG_16550 select PPC_NATIVE select PCI default y config PPC_ISERIES bool "IBM Legacy iSeries" depends on PPC64 && PPC_BOOK3S select PPC_INDIRECT_IO select PPC_PCI_CHOICE if EXPERT menu "iSeries device drivers" depends on PPC_ISERIES config VIODASD tristate "iSeries Virtual I/O disk support" depends on BLOCK select VIOPATH help If you are running on an iSeries system and you want to use virtual disks created and managed by OS/400, say Y. config VIOCD tristate "iSeries Virtual I/O CD support" depends on BLOCK select VIOPATH help If you are running Linux on an IBM iSeries system and you want to read a CD drive owned by OS/400, say Y here. config VIOTAPE tristate "iSeries Virtual Tape Support" select VIOPATH help If you are running Linux on an iSeries system and you want Linux to read and/or write a tape drive owned by OS/400, say Y here. endmenu config VIOPATH bool config EMBEDDED6xx bool "Embedded 6xx/7xx/7xxx-based boards" depends on 6xx && BROKEN_ON_SMP config LINKSTATION bool "Linkstation / Kurobox(HG) from Buffalo" depends on EMBEDDED6xx select MPIC select FSL_SOC select PPC_UDBG_16550 if SERIAL_8250 select DEFAULT_UIMAGE select MPC10X_OPENPIC select MPC10X_BRIDGE help Select LINKSTATION if configuring for one of PPC- (MPC8241) based NAS systems from Buffalo Technology. So far only KuroboxHG has been tested. In the future classical Kurobox, Linkstation-I HD-HLAN and HD-HGLAN versions, and PPC-based Terastation systems should be supported too. config STORCENTER bool "IOMEGA StorCenter" depends on EMBEDDED6xx select MPIC select FSL_SOC select PPC_UDBG_16550 if SERIAL_8250 select MPC10X_OPENPIC select MPC10X_BRIDGE help Select STORCENTER if configuring for the iomega StorCenter with an 8241 CPU in it. config MPC7448HPC2 bool "Freescale MPC7448HPC2(Taiga)" depends on EMBEDDED6xx select TSI108_BRIDGE select DEFAULT_UIMAGE select PPC_UDBG_16550 select TSI108_BRIDGE help Select MPC7448HPC2 if configuring for Freescale MPC7448HPC2 (Taiga) platform config PPC_HOLLY bool "PPC750GX/CL with TSI10x bridge (Hickory/Holly)" depends on EMBEDDED6xx select TSI108_BRIDGE select PPC_UDBG_16550 select TSI108_BRIDGE help Select PPC_HOLLY if configuring for an IBM 750GX/CL Eval Board with TSI108/9 bridge (Hickory/Holly) config PPC_PRPMC2800 bool "Motorola-PrPMC2800" depends on EMBEDDED6xx select MV64X60 select NOT_COHERENT_CACHE help This option enables support for the Motorola PrPMC2800 board config PPC_C2K bool "SBS/GEFanuc C2K board" depends on EMBEDDED6xx select MV64X60 select NOT_COHERENT_CACHE select MTD_CFI_I4 help This option enables support for the GE Fanuc C2K board (formerly an SBS board). config TSI108_BRIDGE bool select PCI select MPIC select MPIC_WEIRD config MPC10X_BRIDGE bool select PPC_INDIRECT_PCI config MV64X60 bool select PPC_INDIRECT_PCI select CHECK_CACHE_COHERENCY config MPC10X_OPENPIC bool config MPC10X_STORE_GATHERING bool "Enable MPC10x store gathering" depends on MPC10X_BRIDGE config GAMECUBE_COMMON bool config USBGECKO_UDBG bool "USB Gecko udbg console for the Nintendo GameCube/Wii" depends on GAMECUBE_COMMON help If you say yes to this option, support will be included for the USB Gecko adapter as an udbg console. The USB Gecko is a EXI to USB Serial converter that can be plugged into a memcard slot in the Nintendo GameCube/Wii. This driver bypasses the EXI layer completely. If in doubt, say N here. config GAMECUBE bool "Nintendo-GameCube" depends on EMBEDDED6xx select GAMECUBE_COMMON help Select GAMECUBE if configuring for the Nintendo GameCube. More information at: config WII bool "Nintendo-Wii" depends on EMBEDDED6xx select GAMECUBE_COMMON help Select WII if configuring for the Nintendo Wii. More information at: config PPC_PS3 bool "Sony PS3" depends on PPC64 && PPC_BOOK3S select PPC_CELL select USB_ARCH_HAS_OHCI select USB_OHCI_LITTLE_ENDIAN select USB_OHCI_BIG_ENDIAN_MMIO select USB_ARCH_HAS_EHCI select USB_EHCI_BIG_ENDIAN_MMIO select MEMORY_HOTPLUG select PPC_PCI_CHOICE help This option enables support for the Sony PS3 game console and other platforms using the PS3 hypervisor. Enabling this option will allow building otheros.bld, a kernel image suitable for programming into flash memory, and vmlinux, a kernel image suitable for loading via kexec. menu "PS3 Platform Options" depends on PPC_PS3 config PS3_ADVANCED depends on PPC_PS3 bool "PS3 Advanced configuration options" help This gives you access to some advanced options for the PS3. The defaults should be fine for most users, but these options may make it possible to better control the kernel configuration if you know what you are doing. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about these options. Most users should say N to this question. config PS3_HTAB_SIZE depends on PPC_PS3 int "PS3 Platform pagetable size" if PS3_ADVANCED range 18 20 default 20 help This option is only for experts who may have the desire to fine tune the pagetable size on their system. The value here is expressed as the log2 of the page table size. Valid values are 18, 19, and 20, corresponding to 256KB, 512KB and 1MB respectively. If unsure, choose the default (20) with the confidence that your system will have optimal runtime performance. config PS3_DYNAMIC_DMA depends on PPC_PS3 && EXPERIMENTAL bool "PS3 Platform dynamic DMA page table management" default n help This option will enable kernel support to take advantage of the per device dynamic DMA page table management provided by the Cell processor's IO Controller. This support incurs some runtime overhead and also slightly increases kernel memory usage. The current implementation should be considered experimental. This support is mainly for Linux kernel development. If unsure, say N. config PS3_VUART depends on PPC_PS3 tristate config PS3_PS3AV depends on PPC_PS3 tristate "PS3 AV settings driver" if PS3_ADVANCED select PS3_VUART default y help Include support for the PS3 AV Settings driver. This support is required for graphics and sound. In general, all users will say Y or M. config PS3_SYS_MANAGER depends on PPC_PS3 tristate "PS3 System Manager driver" if PS3_ADVANCED select PS3_VUART default y help Include support for the PS3 System Manager. This support is required for system control. In general, all users will say Y or M. config PS3_STORAGE depends on PPC_PS3 tristate config PS3_DISK tristate "PS3 Disk Storage Driver" depends on PPC_PS3 && BLOCK select PS3_STORAGE help Include support for the PS3 Disk Storage. This support is required to access the PS3 hard disk. In general, all users will say Y or M. config PS3_ROM tristate "PS3 BD/DVD/CD-ROM Storage Driver" depends on PPC_PS3 && SCSI select PS3_STORAGE help Include support for the PS3 ROM Storage. This support is required to access the PS3 BD/DVD/CD-ROM drive. In general, all users will say Y or M. Also make sure to say Y or M to "SCSI CDROM support" later. config PS3_FLASH tristate "PS3 FLASH ROM Storage Driver" depends on PPC_PS3 select PS3_STORAGE help Include support for the PS3 FLASH ROM Storage. This support is required to access the PS3 FLASH ROM, which contains the boot loader and some boot options. In general, all users will say Y or M. As this driver needs a fixed buffer of 256 KiB of memory, it can be disabled on the kernel command line using "ps3flash=off", to not allocate this fixed buffer. config PS3_VRAM tristate "PS3 Video RAM Storage Driver" depends on FB_PS3=y && BLOCK && m help This driver allows you to use excess PS3 video RAM as volatile storage or system swap. config PS3_LPM tristate "PS3 Logical Performance Monitor support" depends on PPC_PS3 help Include support for the PS3 Logical Performance Monitor. This support is required to use the logical performance monitor of the PS3's LV1 hypervisor. If you intend to use the advanced performance monitoring and profiling support of the Cell processor with programs like oprofile and perfmon2, then say Y or M, otherwise say N. endmenu config PPC_PSERIES depends on PPC64 && PPC_BOOK3S bool "IBM pSeries & new (POWER5-based) iSeries" select MPIC select PCI_MSI select XICS select PPC_I8259 select PPC_RTAS select PPC_RTAS_DAEMON select RTAS_ERROR_LOGGING select PPC_UDBG_16550 select PPC_NATIVE select PPC_PCI_CHOICE if EXPERT default y config PPC_SPLPAR depends on PPC_PSERIES bool "Support for shared-processor logical partitions" default n help Enabling this option will make the kernel run more efficiently on logically-partitioned pSeries systems which use shared processors, that is, which share physical processors between two or more partitions. config EEH bool "PCI Extended Error Handling (EEH)" if EXPERT depends on PPC_PSERIES && PCI default y if !EXPERT config PSERIES_MSI bool depends on PCI_MSI && EEH default y config PSERIES_ENERGY tristate "pSeries energy management capabilities driver" depends on PPC_PSERIES default y help Provides interface to platform energy management capabilities on supported PSERIES platforms. Provides: /sys/devices/system/cpu/pseries_(de)activation_hint_list and /sys/devices/system/cpu/cpuN/pseries_(de)activation_hint config SCANLOG tristate "Scanlog dump interface" depends on RTAS_PROC && PPC_PSERIES config LPARCFG bool "LPAR Configuration Data" depends on PPC_PSERIES || PPC_ISERIES help Provide system capacity information via human readable = pairs through a /proc/ppc64/lparcfg interface. config PPC_PSERIES_DEBUG depends on PPC_PSERIES && PPC_EARLY_DEBUG bool "Enable extra debug logging in platforms/pseries" help Say Y here if you want the pseries core to produce a bunch of debug messages to the system log. Select this if you are having a problem with the pseries core and want to see more of what is going on. This does not enable debugging in lpar.c, which must be manually done due to its verbosity. default y config PPC_SMLPAR bool "Support for shared-memory logical partitions" depends on PPC_PSERIES select LPARCFG default n help Select this option to enable shared memory partition support. With this option a system running in an LPAR can be given more memory than physically available and will allow firmware to balance memory across many LPARs. config CMM tristate "Collaborative memory management" depends on PPC_SMLPAR default y help Select this option, if you want to enable the kernel interface to reduce the memory size of the system. This is accomplished by allocating pages of memory and put them "on hold". This only makes sense for a system running in an LPAR where the unused pages will be reused for other LPARs. The interface allows firmware to balance memory across many LPARs. config DTL bool "Dispatch Trace Log" depends on PPC_SPLPAR && DEBUG_FS help SPLPAR machines can log hypervisor preempt & dispatch events to a kernel buffer. Saying Y here will enable logging these events, which are accessible through a debugfs file. Say N if you are unsure. config PPC_PASEMI depends on PPC64 && PPC_BOOK3S bool "PA Semi SoC-based platforms" default n select MPIC select PCI select PPC_UDBG_16550 select PPC_NATIVE select MPIC_BROKEN_REGREAD help This option enables support for PA Semi's PWRficient line of SoC processors, including PA6T-1682M menu "PA Semi PWRficient options" depends on PPC_PASEMI config PPC_PASEMI_IOMMU bool "PA Semi IOMMU support" depends on PPC_PASEMI help IOMMU support for PA Semi PWRficient config PPC_PASEMI_IOMMU_DMA_FORCE bool "Force DMA engine to use IOMMU" depends on PPC_PASEMI_IOMMU help This option forces the use of the IOMMU also for the DMA engine. Otherwise the kernel will use it only when running under a hypervisor. If in doubt, say "N". config PPC_PASEMI_MDIO depends on PHYLIB tristate "MDIO support via GPIO" default y help Driver for MDIO via GPIO on PWRficient platforms endmenu config PPC_86xx menuconfig PPC_86xx bool "86xx-based boards" depends on 6xx select FSL_SOC select ALTIVEC help The Freescale E600 SoCs have 74xx cores. if PPC_86xx config MPC8641_HPCN bool "Freescale MPC8641 HPCN" select PPC_I8259 select DEFAULT_UIMAGE select FSL_ULI1575 if PCI select HAS_RAPIDIO select SWIOTLB help This option enables support for the MPC8641 HPCN board. config SBC8641D bool "Wind River SBC8641D" select DEFAULT_UIMAGE help This option enables support for the WRS SBC8641D board. config MPC8610_HPCD bool "Freescale MPC8610 HPCD" select DEFAULT_UIMAGE select FSL_ULI1575 if PCI help This option enables support for the MPC8610 HPCD board. config GEF_PPC9A bool "GE PPC9A" select DEFAULT_UIMAGE select MMIO_NVRAM select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB help This option enables support for the GE PPC9A. config GEF_SBC310 bool "GE SBC310" select DEFAULT_UIMAGE select MMIO_NVRAM select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB help This option enables support for the GE SBC310. config GEF_SBC610 bool "GE SBC610" select DEFAULT_UIMAGE select MMIO_NVRAM select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB select HAS_RAPIDIO help This option enables support for the GE SBC610. endif config MPC8641 bool select PPC_PCI_CHOICE select FSL_PCI if PCI select PPC_UDBG_16550 select MPIC default y if MPC8641_HPCN || SBC8641D || GEF_SBC610 || GEF_SBC310 || GEF_PPC9A config MPC8610 bool select PPC_PCI_CHOICE select FSL_PCI if PCI select PPC_UDBG_16550 select MPIC default y if MPC8610_HPCD config PPC_CELL bool default n config PPC_CELL_COMMON bool select PPC_CELL select PPC_DCR_MMIO select PPC_INDIRECT_IO select PPC_NATIVE select PPC_RTAS select IRQ_EDGE_EOI_HANDLER config PPC_CELL_NATIVE bool select PPC_CELL_COMMON select MPIC select IBM_NEW_EMAC_EMAC4 select IBM_NEW_EMAC_RGMII select IBM_NEW_EMAC_ZMII #test only select IBM_NEW_EMAC_TAH #test only default n config PPC_IBM_CELL_BLADE bool "IBM Cell Blade" depends on PPC64 && PPC_BOOK3S select PPC_CELL_NATIVE select PPC_OF_PLATFORM_PCI select PCI select MMIO_NVRAM select PPC_UDBG_16550 select UDBG_RTAS_CONSOLE config PPC_CELLEB bool "Toshiba's Cell Reference Set 'Celleb' Architecture" depends on PPC64 && PPC_BOOK3S select PPC_CELL_NATIVE select PPC_OF_PLATFORM_PCI select PCI select HAS_TXX9_SERIAL select PPC_UDBG_BEAT select USB_OHCI_BIG_ENDIAN_MMIO select USB_EHCI_BIG_ENDIAN_MMIO config PPC_CELL_QPACE bool "IBM Cell - QPACE" depends on PPC64 && PPC_BOOK3S select PPC_CELL_COMMON config AXON_MSI bool depends on PPC_IBM_CELL_BLADE && PCI_MSI default y menu "Cell Broadband Engine options" depends on PPC_CELL config SPU_FS tristate "SPU file system" default m depends on PPC_CELL select SPU_BASE select MEMORY_HOTPLUG help The SPU file system is used to access Synergistic Processing Units on machines implementing the Broadband Processor Architecture. config SPU_FS_64K_LS bool "Use 64K pages to map SPE local store" # we depend on PPC_MM_SLICES for now rather than selecting # it because we depend on hugetlbfs hooks being present. We # will fix that when the generic code has been improved to # not require hijacking hugetlbfs hooks. depends on SPU_FS && PPC_MM_SLICES && !PPC_64K_PAGES default y select PPC_HAS_HASH_64K help This option causes SPE local stores to be mapped in process address spaces using 64K pages while the rest of the kernel uses 4K pages. This can improve performances of applications using multiple SPEs by lowering the TLB pressure on them. config SPU_BASE bool default n config CBE_RAS bool "RAS features for bare metal Cell BE" depends on PPC_CELL_NATIVE default y config PPC_IBM_CELL_RESETBUTTON bool "IBM Cell Blade Pinhole reset button" depends on CBE_RAS && PPC_IBM_CELL_BLADE default y help Support Pinhole Resetbutton on IBM Cell blades. This adds a method to trigger system reset via front panel pinhole button. config PPC_IBM_CELL_POWERBUTTON tristate "IBM Cell Blade power button" depends on PPC_IBM_CELL_BLADE && INPUT_EVDEV default y help Support Powerbutton on IBM Cell blades. This will enable the powerbutton as an input device. config CBE_THERM tristate "CBE thermal support" default m depends on CBE_RAS && SPU_BASE config CBE_CPUFREQ tristate "CBE frequency scaling" depends on CBE_RAS && CPU_FREQ default m help This adds the cpufreq driver for Cell BE processors. For details, take a look at . If you don't have such processor, say N config CBE_CPUFREQ_PMI_ENABLE bool "CBE frequency scaling using PMI interface" depends on CBE_CPUFREQ && EXPERIMENTAL default n help Select this, if you want to use the PMI interface to switch frequencies. Using PMI, the processor will not only be able to run at lower speed, but also at lower core voltage. config CBE_CPUFREQ_PMI tristate depends on CBE_CPUFREQ_PMI_ENABLE default CBE_CPUFREQ config PPC_PMI tristate default y depends on CBE_CPUFREQ_PMI || PPC_IBM_CELL_POWERBUTTON help PMI (Platform Management Interrupt) is a way to communicate with the BMC (Baseboard Management Controller). It is used in some IBM Cell blades. config CBE_CPUFREQ_SPU_GOVERNOR tristate "CBE frequency scaling based on SPU usage" depends on SPU_FS && CPU_FREQ default m help This governor checks for spu usage to adjust the cpu frequency. If no spu is running on a given cpu, that cpu will be throttled to the minimal possible frequency. endmenu config OPROFILE_CELL def_bool y depends on PPC_CELL_NATIVE && (OPROFILE = m || OPROFILE = y) && SPU_BASE menuconfig PPC_83xx bool "83xx-based boards" depends on 6xx select PPC_UDBG_16550 select PPC_PCI_CHOICE select FSL_PCI if PCI select FSL_SOC select IPIC if PPC_83xx config MPC830x_RDB bool "Freescale MPC830x RDB and derivatives" select DEFAULT_UIMAGE select PPC_MPC831x select FSL_GTM help This option enables support for the MPC8308 RDB and MPC8308 P1M boards. config MPC831x_RDB bool "Freescale MPC831x RDB" select DEFAULT_UIMAGE select PPC_MPC831x help This option enables support for the MPC8313 RDB and MPC8315 RDB boards. config MPC832x_MDS bool "Freescale MPC832x MDS" select DEFAULT_UIMAGE select PPC_MPC832x help This option enables support for the MPC832x MDS evaluation board. config MPC832x_RDB bool "Freescale MPC832x RDB" select DEFAULT_UIMAGE select PPC_MPC832x help This option enables support for the MPC8323 RDB board. config MPC834x_MDS bool "Freescale MPC834x MDS" select DEFAULT_UIMAGE select PPC_MPC834x help This option enables support for the MPC 834x MDS evaluation board. Be aware that PCI buses can only function when MDS board is plugged into the PIB (Platform IO Board) board from Freescale which provide 3 PCI slots. The PIBs PCI initialization is the bootloader's responsibility. config MPC834x_ITX bool "Freescale MPC834x ITX" select DEFAULT_UIMAGE select PPC_MPC834x help This option enables support for the MPC 834x ITX evaluation board. Be aware that PCI initialization is the bootloader's responsibility. config MPC836x_MDS bool "Freescale MPC836x MDS" select DEFAULT_UIMAGE help This option enables support for the MPC836x MDS Processor Board. config MPC836x_RDK bool "Freescale/Logic MPC836x RDK" select DEFAULT_UIMAGE select FSL_GTM select FSL_LBC help This option enables support for the MPC836x RDK Processor Board, also known as ZOOM PowerQUICC Kit. config MPC837x_MDS bool "Freescale MPC837x MDS" select DEFAULT_UIMAGE select PPC_MPC837x help This option enables support for the MPC837x MDS Processor Board. config MPC837x_RDB bool "Freescale MPC837x RDB/WLAN" select DEFAULT_UIMAGE select PPC_MPC837x help This option enables support for the MPC837x RDB and WLAN Boards. config SBC834x bool "Wind River SBC834x" select DEFAULT_UIMAGE select PPC_MPC834x help This option enables support for the Wind River SBC834x board. config ASP834x bool "Analogue & Micro ASP 834x" select PPC_MPC834x select REDBOOT help This enables support for the Analogue & Micro ASP 83xx board. config KMETER1 bool "Keymile KMETER1" select DEFAULT_UIMAGE select QUICC_ENGINE help This enables support for the Keymile KMETER1 board. endif # used for usb config PPC_MPC831x bool # used for math-emu config PPC_MPC832x bool # used for usb config PPC_MPC834x bool # used for usb config PPC_MPC837x bool config AMIGAONE bool "Eyetech AmigaOne/MAI Teron" depends on 6xx && BROKEN_ON_SMP select PPC_I8259 select PPC_INDIRECT_PCI select PPC_UDBG_16550 select PCI select NOT_COHERENT_CACHE select CHECK_CACHE_COHERENCY select DEFAULT_UIMAGE select PCSPKR_PLATFORM help Select AmigaOne for the following machines: - AmigaOne SE/Teron CX (G3 only) - AmigaOne XE/Teron PX - uA1/Teron mini More information is available at: . # # KVM configuration # source "virt/kvm/Kconfig" menuconfig VIRTUALIZATION bool "Virtualization" ---help--- Say Y here to get to see options for using your Linux host to run other operating systems inside virtual machines (guests). This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if VIRTUALIZATION config KVM bool select PREEMPT_NOTIFIERS select ANON_INODES select KVM_MMIO config KVM_BOOK3S_HANDLER bool config KVM_BOOK3S_32_HANDLER bool select KVM_BOOK3S_HANDLER config KVM_BOOK3S_64_HANDLER bool select KVM_BOOK3S_HANDLER config KVM_BOOK3S_32 tristate "KVM support for PowerPC book3s_32 processors" depends on EXPERIMENTAL && PPC_BOOK3S_32 && !SMP && !PTE_64BIT select KVM select KVM_BOOK3S_32_HANDLER ---help--- Support running unmodified book3s_32 guest kernels in virtual machines on book3s_32 host processors. This module provides access to the hardware capabilities through a character device node named /dev/kvm. If unsure, say N. config KVM_BOOK3S_64 tristate "KVM support for PowerPC book3s_64 processors" depends on EXPERIMENTAL && PPC_BOOK3S_64 select KVM select KVM_BOOK3S_64_HANDLER ---help--- Support running unmodified book3s_64 and book3s_32 guest kernels in virtual machines on book3s_64 host processors. This module provides access to the hardware capabilities through a character device node named /dev/kvm. If unsure, say N. config KVM_440 bool "KVM support for PowerPC 440 processors" depends on EXPERIMENTAL && 44x select KVM ---help--- Support running unmodified 440 guest kernels in virtual machines on 440 host processors. This module provides access to the hardware capabilities through a character device node named /dev/kvm. If unsure, say N. config KVM_EXIT_TIMING bool "Detailed exit timing" depends on KVM_440 || KVM_E500 ---help--- Calculate elapsed time for every exit/enter cycle. A per-vcpu report is available in debugfs kvm/vm#_vcpu#_timing. The overhead is relatively small, however it is not recommended for production environments. If unsure, say N. config KVM_E500 bool "KVM support for PowerPC E500 processors" depends on EXPERIMENTAL && E500 select KVM ---help--- Support running unmodified E500 guest kernels in virtual machines on E500 host processors. This module provides access to the hardware capabilities through a character device node named /dev/kvm. If unsure, say N. source drivers/vhost/Kconfig source drivers/virtio/Kconfig endif # VIRTUALIZATION # For a description of the syntax of this configuration file, # see Documentation/kbuild/kconfig-language.txt. # config PPC4xx_PCI_EXPRESS bool depends on PCI && 4xx default n config PPC_MSI_BITMAP bool depends on PCI_MSI default y if MPIC default y if FSL_PCI # # Kconfig options for Bestcomm # config PPC_BESTCOMM tristate "Bestcomm DMA engine support" depends on PPC_MPC52xx default n select PPC_LIB_RHEAP help BestComm is the name of the communication coprocessor found on the Freescale MPC5200 family of processor. Its usage is optional for some drivers (like ATA), but required for others (like FEC). If you want to use drivers that require DMA operations, answer Y or M. Otherwise say N. config PPC_BESTCOMM_ATA tristate depends on PPC_BESTCOMM help This option enables the support for the ATA task. config PPC_BESTCOMM_FEC tristate depends on PPC_BESTCOMM help This option enables the support for the FEC tasks. config PPC_BESTCOMM_GEN_BD tristate depends on PPC_BESTCOMM help This option enables the support for the GenBD tasks. # # QE Communication options # config UCC_SLOW bool default y if SERIAL_QE help This option provides qe_lib support to UCC slow protocols: UART, BISYNC, QMC config UCC_FAST bool default y if UCC_GETH help This option provides qe_lib support to UCC fast protocols: HDLC, Ethernet, ATM, transparent config UCC bool default y if UCC_FAST || UCC_SLOW config QE_USB bool default y if USB_GADGET_FSL_QE help QE USB Controller support config MN10300 def_bool y select HAVE_OPROFILE select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_SHOW select HAVE_ARCH_TRACEHOOK select HAVE_ARCH_KGDB config AM33_2 def_bool n config AM33_3 def_bool n config AM34_2 def_bool n select MN10300_HAS_ATOMIC_OPS_UNIT select MN10300_HAS_CACHE_SNOOP config ERRATUM_NEED_TO_RELOAD_MMUCTR def_bool y if AM33_3 || AM34_2 config MMU def_bool y config HIGHMEM def_bool n config NUMA def_bool n config UID16 def_bool y config RWSEM_GENERIC_SPINLOCK def_bool y config RWSEM_XCHGADD_ALGORITHM bool config GENERIC_CALIBRATE_DELAY def_bool y config GENERIC_CMOS_UPDATE def_bool n config GENERIC_FIND_NEXT_BIT def_bool y config GENERIC_HWEIGHT def_bool y config GENERIC_TIME def_bool y config GENERIC_CLOCKEVENTS def_bool y config GENERIC_BUG def_bool y config QUICKLIST def_bool y config ARCH_HAS_ILOG2_U32 def_bool y config HOTPLUG_CPU def_bool n source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Panasonic MN10300 system setup" choice prompt "Unit type" default MN10300_UNIT_ASB2303 help This option specifies board for which the kernel will be compiled. It affects the external peripherals catered for. config MN10300_UNIT_ASB2303 bool "ASB2303" config MN10300_UNIT_ASB2305 bool "ASB2305" config MN10300_UNIT_ASB2364 bool "ASB2364" select SMSC911X_ARCH_HOOKS if SMSC911X endchoice choice prompt "Processor support" default MN10300_PROC_MN103E010 help This option specifies the processor for which the kernel will be compiled. It affects the on-chip peripherals catered for. config MN10300_PROC_MN103E010 bool "MN103E010" depends on MN10300_UNIT_ASB2303 || MN10300_UNIT_ASB2305 select AM33_2 select MN10300_PROC_HAS_TTYSM0 select MN10300_PROC_HAS_TTYSM1 select MN10300_PROC_HAS_TTYSM2 config MN10300_PROC_MN2WS0050 bool "MN2WS0050" depends on MN10300_UNIT_ASB2364 select AM34_2 select MN10300_PROC_HAS_TTYSM0 select MN10300_PROC_HAS_TTYSM1 select MN10300_PROC_HAS_TTYSM2 endchoice config MN10300_HAS_ATOMIC_OPS_UNIT def_bool n help This should be enabled if the processor has an atomic ops unit capable of doing LL/SC equivalent operations. config FPU bool "FPU present" default y depends on MN10300_PROC_MN103E010 || MN10300_PROC_MN2WS0050 config LAZY_SAVE_FPU bool "Save FPU state lazily" default y depends on FPU && !SMP help Enable this to be lazy in the saving of the FPU state to the owning task's thread struct. This is useful if most tasks on the system don't use the FPU as only those tasks that use it will pass it between them, and the state needn't be saved for a task that isn't using it. This can't be so easily used on SMP as the process that owns the FPU state on a CPU may be currently running on another CPU, so for the moment, it is disabled. source "arch/mn10300/mm/Kconfig.cache" config MN10300_TLB_USE_PIDR def_bool y menu "Memory layout options" config KERNEL_RAM_BASE_ADDRESS hex "Base address of kernel RAM" default "0x90000000" config INTERRUPT_VECTOR_BASE hex "Base address of vector table" default "0x90000000" help The base address of the vector table will be programmed into the TBR register. It must be on 16MiB address boundary. config KERNEL_TEXT_ADDRESS hex "Base address of kernel" default "0x90001000" config KERNEL_ZIMAGE_BASE_ADDRESS hex "Base address of compressed vmlinux image" default "0x50700000" config BOOT_STACK_OFFSET hex default "0xF00" if SMP default "0xFF0" if !SMP config BOOT_STACK_SIZE hex depends on SMP default "0x100" endmenu config SMP bool "Symmetric multi-processing support" default y select USE_GENERIC_SMP_HELPERS depends on MN10300_PROC_MN2WS0038 || MN10300_PROC_MN2WS0050 ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. See also , and the SMP-HOWTO available at . If you don't know what to do here, say N. config NR_CPUS int depends on SMP default "2" source "kernel/Kconfig.preempt" config MN10300_CURRENT_IN_E2 bool "Hold current task address in E2 register" depends on !SMP default y help This option removes the E2/R2 register from the set available to gcc for normal use and instead uses it to store the address of the current process's task_struct whilst in the kernel. This means the kernel doesn't need to calculate the address each time "current" is used (take SP, AND with mask and dereference pointer just to get the address), and instead can just use E2+offset addressing each time. This has no effect on userspace. config MN10300_USING_JTAG bool "Using JTAG to debug kernel" default y help This options indicates that JTAG will be used to debug the kernel. It suppresses the use of certain hardware debugging features, such as single-stepping, which are taken over completely by the JTAG unit. source "kernel/Kconfig.hz" source "kernel/time/Kconfig" config MN10300_RTC bool "Using MN10300 RTC" depends on MN10300_PROC_MN103E010 || MN10300_PROC_MN2WS0050 select GENERIC_CMOS_UPDATE default n help This option enables support for the RTC, thus enabling time to be tracked, even when system is powered down. This is available on-chip on the MN103E010. config MN10300_WD_TIMER bool "Using MN10300 watchdog timer" default y help This options indicates that the watchdog timer will be used. config PCI bool "Use PCI" depends on MN10300_UNIT_ASB2305 default y help Some systems (such as the ASB2305) have PCI onboard. If you have one of these boards and you wish to use the PCI facilities, say Y here. The PCI-HOWTO, available from , contains valuable information about which PCI hardware does work under Linux and which doesn't. source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" menu "MN10300 internal serial options" config MN10300_PROC_HAS_TTYSM0 bool default n config MN10300_PROC_HAS_TTYSM1 bool default n config MN10300_PROC_HAS_TTYSM2 bool default n config MN10300_TTYSM bool "Support for ttySM serial ports" depends on MN10300 default y select SERIAL_CORE help This option enables support for the on-chip serial ports that the MN10300 has available. config MN10300_TTYSM_CONSOLE bool "Support for console on ttySM serial ports" depends on MN10300_TTYSM select SERIAL_CORE_CONSOLE help This option enables support for a console on the on-chip serial ports that the MN10300 has available. # # /dev/ttySM0 # config MN10300_TTYSM0 bool "Enable SIF0 (/dev/ttySM0)" depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM0 help Enable access to SIF0 through /dev/ttySM0 or gdb-stub choice prompt "Select the timer to supply the clock for SIF0" default MN10300_TTYSM0_TIMER8 depends on MN10300_TTYSM0 config MN10300_TTYSM0_TIMER8 bool "Use timer 8 (16-bit)" config MN10300_TTYSM0_TIMER2 bool "Use timer 2 (8-bit)" endchoice # # /dev/ttySM1 # config MN10300_TTYSM1 bool "Enable SIF1 (/dev/ttySM1)" depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM1 help Enable access to SIF1 through /dev/ttySM1 or gdb-stub choice prompt "Select the timer to supply the clock for SIF1" default MN10300_TTYSM1_TIMER12 \ if !(AM33_2 || AM33_3) default MN10300_TTYSM1_TIMER9 \ if AM33_2 || AM33_3 depends on MN10300_TTYSM1 config MN10300_TTYSM1_TIMER12 bool "Use timer 12 (16-bit)" depends on !(AM33_2 || AM33_3) config MN10300_TTYSM1_TIMER9 bool "Use timer 9 (16-bit)" depends on AM33_2 || AM33_3 config MN10300_TTYSM1_TIMER3 bool "Use timer 3 (8-bit)" depends on AM33_2 || AM33_3 endchoice # # /dev/ttySM2 # config MN10300_TTYSM2 bool "Enable SIF2 (/dev/ttySM2)" depends on MN10300_TTYSM && MN10300_PROC_HAS_TTYSM2 help Enable access to SIF2 through /dev/ttySM2 or gdb-stub choice prompt "Select the timer to supply the clock for SIF2" default MN10300_TTYSM2_TIMER3 \ if !(AM33_2 || AM33_3) default MN10300_TTYSM2_TIMER10 \ if AM33_2 || AM33_3 depends on MN10300_TTYSM2 config MN10300_TTYSM2_TIMER9 bool "Use timer 9 (16-bit)" depends on !(AM33_2 || AM33_3) config MN10300_TTYSM2_TIMER1 bool "Use timer 1 (8-bit)" depends on !(AM33_2 || AM33_3) config MN10300_TTYSM2_TIMER3 bool "Use timer 3 (8-bit)" depends on !(AM33_2 || AM33_3) config MN10300_TTYSM2_TIMER10 bool "Use timer 10 (16-bit)" depends on AM33_2 || AM33_3 endchoice config MN10300_TTYSM2_CTS bool "Enable the use of the CTS line /dev/ttySM2" depends on MN10300_TTYSM2 && AM33_2 endmenu menu "Interrupt request priority options" comment "[!] NOTE: A lower number/level indicates a higher priority (0 is highest, 6 is lowest)" comment "____Non-maskable interrupt levels____" comment "The following must be set to a higher priority than local_irq_disable() and on-chip serial" config DEBUGGER_IRQ_LEVEL int "DEBUGGER interrupt priority" depends on KERNEL_DEBUGGER range 0 1 if LINUX_CLI_LEVEL = 2 range 0 2 if LINUX_CLI_LEVEL = 3 range 0 3 if LINUX_CLI_LEVEL = 4 range 0 4 if LINUX_CLI_LEVEL = 5 range 0 5 if LINUX_CLI_LEVEL = 6 default 0 comment "The following must be set to a higher priority than local_irq_disable()" config MN10300_SERIAL_IRQ_LEVEL int "MN10300 on-chip serial interrupt priority" depends on MN10300_TTYSM range 1 1 if LINUX_CLI_LEVEL = 2 range 1 2 if LINUX_CLI_LEVEL = 3 range 1 3 if LINUX_CLI_LEVEL = 4 range 1 4 if LINUX_CLI_LEVEL = 5 range 1 5 if LINUX_CLI_LEVEL = 6 default 1 comment "-" comment "____Maskable interrupt levels____" config LINUX_CLI_LEVEL int "The highest interrupt priority excluded by local_irq_disable() (2-6)" range 2 6 default 2 help local_irq_disable() doesn't actually disable maskable interrupts - what it does is restrict the levels of interrupt which are permitted (a lower level indicates a higher priority) by lowering the value in EPSW.IM from 7. Any interrupt is permitted for which the level is lower than EPSW.IM. Certain interrupts, such as DEBUGGER and virtual MN10300 on-chip serial DMA interrupts are allowed to interrupt normal disabled sections. comment "The following must be set to a equal to or lower priority than LINUX_CLI_LEVEL" config TIMER_IRQ_LEVEL int "Kernel timer interrupt priority" range LINUX_CLI_LEVEL 6 default 4 config PCI_IRQ_LEVEL int "PCI interrupt priority" depends on PCI range LINUX_CLI_LEVEL 6 default 5 config ETHERNET_IRQ_LEVEL int "Ethernet interrupt priority" depends on SMC91X || SMC911X || SMSC911X range LINUX_CLI_LEVEL 6 default 6 config EXT_SERIAL_IRQ_LEVEL int "External serial port interrupt priority" depends on SERIAL_8250 range LINUX_CLI_LEVEL 6 default 6 endmenu source "mm/Kconfig" menu "Power management options" source kernel/power/Kconfig endmenu endmenu menu "Executable formats" source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/mn10300/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" # Select 32 or 64 bit config 64BIT bool "64-bit kernel" if ARCH = "x86" default ARCH = "x86_64" ---help--- Say yes to build a 64-bit kernel - formerly known as x86_64 Say no to build a 32-bit kernel - formerly known as i386 config X86_32 def_bool !64BIT config X86_64 def_bool 64BIT ### Arch settings config X86 def_bool y select HAVE_AOUT if X86_32 select HAVE_READQ select HAVE_WRITEQ select HAVE_UNSTABLE_SCHED_CLOCK select HAVE_IDE select HAVE_OPROFILE select HAVE_PERF_EVENTS select HAVE_IRQ_WORK select HAVE_IOREMAP_PROT select HAVE_KPROBES select HAVE_MEMBLOCK select ARCH_WANT_OPTIONAL_GPIOLIB select ARCH_WANT_FRAME_POINTERS select HAVE_DMA_ATTRS select HAVE_KRETPROBES select HAVE_OPTPROBES select HAVE_FTRACE_MCOUNT_RECORD select HAVE_C_RECORDMCOUNT select HAVE_DYNAMIC_FTRACE select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_GRAPH_TRACER select HAVE_FUNCTION_GRAPH_FP_TEST select HAVE_FUNCTION_TRACE_MCOUNT_TEST select HAVE_FTRACE_NMI_ENTER if DYNAMIC_FTRACE select HAVE_SYSCALL_TRACEPOINTS select HAVE_KVM select HAVE_ARCH_KGDB select HAVE_ARCH_TRACEHOOK select HAVE_GENERIC_DMA_COHERENT if X86_32 select HAVE_EFFICIENT_UNALIGNED_ACCESS select USER_STACKTRACE_SUPPORT select HAVE_REGS_AND_STACK_ACCESS_API select HAVE_DMA_API_DEBUG select HAVE_KERNEL_GZIP select HAVE_KERNEL_BZIP2 select HAVE_KERNEL_LZMA select HAVE_KERNEL_XZ select HAVE_KERNEL_LZO select HAVE_HW_BREAKPOINT select HAVE_MIXED_BREAKPOINTS_REGS select PERF_EVENTS select HAVE_PERF_EVENTS_NMI select ANON_INODES select HAVE_ARCH_KMEMCHECK select HAVE_USER_RETURN_NOTIFIER select HAVE_ARCH_JUMP_LABEL select HAVE_TEXT_POKE_SMP select HAVE_GENERIC_HARDIRQS select HAVE_SPARSE_IRQ select GENERIC_FIND_FIRST_BIT select GENERIC_FIND_NEXT_BIT select GENERIC_IRQ_PROBE select GENERIC_PENDING_IRQ if SMP select GENERIC_IRQ_SHOW select IRQ_FORCED_THREADING select USE_GENERIC_SMP_HELPERS if SMP select ARCH_NO_SYSDEV_OPS config INSTRUCTION_DECODER def_bool (KPROBES || PERF_EVENTS) config OUTPUT_FORMAT string default "elf32-i386" if X86_32 default "elf64-x86-64" if X86_64 config ARCH_DEFCONFIG string default "arch/x86/configs/i386_defconfig" if X86_32 default "arch/x86/configs/x86_64_defconfig" if X86_64 config GENERIC_CMOS_UPDATE def_bool y config CLOCKSOURCE_WATCHDOG def_bool y config GENERIC_CLOCKEVENTS def_bool y config GENERIC_CLOCKEVENTS_BROADCAST def_bool y depends on X86_64 || (X86_32 && X86_LOCAL_APIC) config LOCKDEP_SUPPORT def_bool y config STACKTRACE_SUPPORT def_bool y config HAVE_LATENCYTOP_SUPPORT def_bool y config MMU def_bool y config ZONE_DMA def_bool y config SBUS bool config NEED_DMA_MAP_STATE def_bool (X86_64 || DMAR || DMA_API_DEBUG) config NEED_SG_DMA_LENGTH def_bool y config GENERIC_ISA_DMA def_bool ISA_DMA_API config GENERIC_IOMAP def_bool y config GENERIC_BUG def_bool y depends on BUG select GENERIC_BUG_RELATIVE_POINTERS if X86_64 config GENERIC_BUG_RELATIVE_POINTERS bool config GENERIC_HWEIGHT def_bool y config GENERIC_GPIO bool config ARCH_MAY_HAVE_PC_FDC def_bool ISA_DMA_API config RWSEM_GENERIC_SPINLOCK def_bool !X86_XADD config RWSEM_XCHGADD_ALGORITHM def_bool X86_XADD config ARCH_HAS_CPU_IDLE_WAIT def_bool y config GENERIC_CALIBRATE_DELAY def_bool y config GENERIC_TIME_VSYSCALL bool default X86_64 config ARCH_HAS_CPU_RELAX def_bool y config ARCH_HAS_DEFAULT_IDLE def_bool y config ARCH_HAS_CACHE_LINE_SIZE def_bool y config HAVE_SETUP_PER_CPU_AREA def_bool y config NEED_PER_CPU_EMBED_FIRST_CHUNK def_bool y config NEED_PER_CPU_PAGE_FIRST_CHUNK def_bool y config HAVE_CPUMASK_OF_CPU_MAP def_bool X86_64_SMP config ARCH_HIBERNATION_POSSIBLE def_bool y config ARCH_SUSPEND_POSSIBLE def_bool y config ZONE_DMA32 bool default X86_64 config ARCH_POPULATES_NODE_MAP def_bool y config AUDIT_ARCH bool default X86_64 config ARCH_SUPPORTS_OPTIMIZED_INLINING def_bool y config ARCH_SUPPORTS_DEBUG_PAGEALLOC def_bool y config HAVE_INTEL_TXT def_bool y depends on EXPERIMENTAL && DMAR && ACPI config X86_32_SMP def_bool y depends on X86_32 && SMP config X86_64_SMP def_bool y depends on X86_64 && SMP config X86_HT def_bool y depends on SMP config X86_32_LAZY_GS def_bool y depends on X86_32 && !CC_STACKPROTECTOR config ARCH_HWEIGHT_CFLAGS string default "-fcall-saved-ecx -fcall-saved-edx" if X86_32 default "-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11" if X86_64 config KTIME_SCALAR def_bool X86_32 config ARCH_CPU_PROBE_RELEASE def_bool y depends on HOTPLUG_CPU source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Processor type and features" source "kernel/time/Kconfig" config SMP bool "Symmetric multi-processing support" ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. Note that if you say Y here and choose architecture "586" or "Pentium" under "Processor family", the kernel will not work on 486 architectures. Similarly, multiprocessor kernels for the "PPro" architecture may not work on all Pentium based boards. People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. The "Advanced Power Management" code will be disabled if you say Y here. See also , and the SMP-HOWTO available at . If you don't know what to do here, say N. config X86_X2APIC bool "Support x2apic" depends on X86_LOCAL_APIC && X86_64 && INTR_REMAP ---help--- This enables x2apic support on CPUs that have this feature. This allows 32-bit apic IDs (so it can support very large systems), and accesses the local apic via MSRs not via mmio. If you don't know what to do here, say N. config X86_MPPARSE bool "Enable MPS table" if ACPI default y depends on X86_LOCAL_APIC ---help--- For old smp systems that do not have proper acpi support. Newer systems (esp with 64bit cpus) with acpi support, MADT and DSDT will override it config X86_BIGSMP bool "Support for big SMP systems with more than 8 CPUs" depends on X86_32 && SMP ---help--- This option is needed for the systems that have more than 8 CPUs if X86_32 config X86_EXTENDED_PLATFORM bool "Support for extended (non-PC) x86 platforms" default y ---help--- If you disable this option then the kernel will only support standard PC platforms. (which covers the vast majority of systems out there.) If you enable this option then you'll be able to select support for the following (non-PC) 32 bit x86 platforms: AMD Elan NUMAQ (IBM/Sequent) RDC R-321x SoC SGI 320/540 (Visual Workstation) Summit/EXA (IBM x440) Unisys ES7000 IA32 series Moorestown MID devices If you have one of these systems, or if you want to build a generic distribution kernel, say Y here - otherwise say N. endif if X86_64 config X86_EXTENDED_PLATFORM bool "Support for extended (non-PC) x86 platforms" default y ---help--- If you disable this option then the kernel will only support standard PC platforms. (which covers the vast majority of systems out there.) If you enable this option then you'll be able to select support for the following (non-PC) 64 bit x86 platforms: ScaleMP vSMP SGI Ultraviolet If you have one of these systems, or if you want to build a generic distribution kernel, say Y here - otherwise say N. endif # This is an alphabetically sorted list of 64 bit extended platforms # Please maintain the alphabetic order if and when there are additions config X86_VSMP bool "ScaleMP vSMP" select PARAVIRT_GUEST select PARAVIRT depends on X86_64 && PCI depends on X86_EXTENDED_PLATFORM ---help--- Support for ScaleMP vSMP systems. Say 'Y' here if this kernel is supposed to run on these EM64T-based machines. Only choose this option if you have one of these machines. config X86_UV bool "SGI Ultraviolet" depends on X86_64 depends on X86_EXTENDED_PLATFORM depends on NUMA depends on X86_X2APIC ---help--- This option is needed in order to support SGI Ultraviolet systems. If you don't have one of these, you should say N here. # Following is an alphabetically sorted list of 32 bit extended platforms # Please maintain the alphabetic order if and when there are additions config X86_ELAN bool "AMD Elan" depends on X86_32 depends on X86_EXTENDED_PLATFORM ---help--- Select this for an AMD Elan processor. Do not use this option for K6/Athlon/Opteron processors! If unsure, choose "PC-compatible" instead. config X86_INTEL_CE bool "CE4100 TV platform" depends on PCI depends on PCI_GODIRECT depends on X86_32 depends on X86_EXTENDED_PLATFORM select X86_REBOOTFIXUPS select OF select OF_EARLY_FLATTREE ---help--- Select for the Intel CE media processor (CE4100) SOC. This option compiles in support for the CE4100 SOC for settop boxes and media devices. config X86_MRST bool "Moorestown MID platform" depends on PCI depends on PCI_GOANY depends on X86_32 depends on X86_EXTENDED_PLATFORM depends on X86_IO_APIC select APB_TIMER select I2C select SPI select INTEL_SCU_IPC select X86_PLATFORM_DEVICES ---help--- Moorestown is Intel's Low Power Intel Architecture (LPIA) based Moblin Internet Device(MID) platform. Moorestown consists of two chips: Lincroft (CPU core, graphics, and memory controller) and Langwell IOH. Unlike standard x86 PCs, Moorestown does not have many legacy devices nor standard legacy replacement devices/features. e.g. Moorestown does not contain i8259, i8254, HPET, legacy BIOS, most of the io ports. config X86_RDC321X bool "RDC R-321x SoC" depends on X86_32 depends on X86_EXTENDED_PLATFORM select M486 select X86_REBOOTFIXUPS ---help--- This option is needed for RDC R-321x system-on-chip, also known as R-8610-(G). If you don't have one of these chips, you should say N here. config X86_32_NON_STANDARD bool "Support non-standard 32-bit SMP architectures" depends on X86_32 && SMP depends on X86_EXTENDED_PLATFORM ---help--- This option compiles in the NUMAQ, Summit, bigsmp, ES7000, default subarchitectures. It is intended for a generic binary kernel. if you select them all, kernel will probe it one by one. and will fallback to default. # Alphabetically sorted list of Non standard 32 bit platforms config X86_NUMAQ bool "NUMAQ (IBM/Sequent)" depends on X86_32_NON_STANDARD depends on PCI select NUMA select X86_MPPARSE ---help--- This option is used for getting Linux to run on a NUMAQ (IBM/Sequent) NUMA multiquad box. This changes the way that processors are bootstrapped, and uses Clustered Logical APIC addressing mode instead of Flat Logical. You will need a new lynxer.elf file to flash your firmware with - send email to . config X86_SUPPORTS_MEMORY_FAILURE def_bool y # MCE code calls memory_failure(): depends on X86_MCE # On 32-bit this adds too big of NODES_SHIFT and we run out of page flags: depends on !X86_NUMAQ # On 32-bit SPARSEMEM adds too big of SECTIONS_WIDTH: depends on X86_64 || !SPARSEMEM select ARCH_SUPPORTS_MEMORY_FAILURE config X86_VISWS bool "SGI 320/540 (Visual Workstation)" depends on X86_32 && PCI && X86_MPPARSE && PCI_GODIRECT depends on X86_32_NON_STANDARD ---help--- The SGI Visual Workstation series is an IA32-based workstation based on SGI systems chips with some legacy PC hardware attached. Say Y here to create a kernel to run on the SGI 320 or 540. A kernel compiled for the Visual Workstation will run on general PCs as well. See for details. config X86_SUMMIT bool "Summit/EXA (IBM x440)" depends on X86_32_NON_STANDARD ---help--- This option is needed for IBM systems that use the Summit/EXA chipset. In particular, it is needed for the x440. config X86_ES7000 bool "Unisys ES7000 IA32 series" depends on X86_32_NON_STANDARD && X86_BIGSMP ---help--- Support for Unisys ES7000 systems. Say 'Y' here if this kernel is supposed to run on an IA32-based Unisys ES7000 system. config X86_32_IRIS tristate "Eurobraille/Iris poweroff module" depends on X86_32 ---help--- The Iris machines from EuroBraille do not have APM or ACPI support to shut themselves down properly. A special I/O sequence is needed to do so, which is what this module does at kernel shutdown. This is only for Iris machines from EuroBraille. If unused, say N. config SCHED_OMIT_FRAME_POINTER def_bool y prompt "Single-depth WCHAN output" depends on X86 ---help--- Calculate simpler /proc//wchan values. If this option is disabled then wchan values will recurse back to the caller function. This provides more accurate wchan values, at the expense of slightly more scheduling overhead. If in doubt, say "Y". menuconfig PARAVIRT_GUEST bool "Paravirtualized guest support" ---help--- Say Y here to get to see options related to running Linux under various hypervisors. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if PARAVIRT_GUEST source "arch/x86/xen/Kconfig" config KVM_CLOCK bool "KVM paravirtualized clock" select PARAVIRT select PARAVIRT_CLOCK ---help--- Turning on this option will allow you to run a paravirtualized clock when running over the KVM hypervisor. Instead of relying on a PIT (or probably other) emulation by the underlying device model, the host provides the guest with timing infrastructure such as time of day, and system time config KVM_GUEST bool "KVM Guest support" select PARAVIRT ---help--- This option enables various optimizations for running under the KVM hypervisor. source "arch/x86/lguest/Kconfig" config PARAVIRT bool "Enable paravirtualization code" ---help--- This changes the kernel so it can modify itself when it is run under a hypervisor, potentially improving performance significantly over full virtualization. However, when run without a hypervisor the kernel is theoretically slower and slightly larger. config PARAVIRT_SPINLOCKS bool "Paravirtualization layer for spinlocks" depends on PARAVIRT && SMP && EXPERIMENTAL ---help--- Paravirtualized spinlocks allow a pvops backend to replace the spinlock implementation with something virtualization-friendly (for example, block the virtual CPU rather than spinning). Unfortunately the downside is an up to 5% performance hit on native kernels, with various workloads. If you are unsure how to answer this question, answer N. config PARAVIRT_CLOCK bool endif config PARAVIRT_DEBUG bool "paravirt-ops debugging" depends on PARAVIRT && DEBUG_KERNEL ---help--- Enable to debug paravirt_ops internals. Specifically, BUG if a paravirt_op is missing when it is called. config NO_BOOTMEM def_bool y config MEMTEST bool "Memtest" ---help--- This option adds a kernel parameter 'memtest', which allows memtest to be set. memtest=0, mean disabled; -- default memtest=1, mean do 1 test pattern; ... memtest=4, mean do 4 test patterns. If you are unsure how to answer this question, answer N. config X86_SUMMIT_NUMA def_bool y depends on X86_32 && NUMA && X86_32_NON_STANDARD config X86_CYCLONE_TIMER def_bool y depends on X86_32_NON_STANDARD source "arch/x86/Kconfig.cpu" config HPET_TIMER def_bool X86_64 prompt "HPET Timer Support" if X86_32 ---help--- Use the IA-PC HPET (High Precision Event Timer) to manage time in preference to the PIT and RTC, if a HPET is present. HPET is the next generation timer replacing legacy 8254s. The HPET provides a stable time base on SMP systems, unlike the TSC, but it is more expensive to access, as it is off-chip. You can find the HPET spec at . You can safely choose Y here. However, HPET will only be activated if the platform and the BIOS support this feature. Otherwise the 8254 will be used for timing services. Choose N to continue using the legacy 8254 timer. config HPET_EMULATE_RTC def_bool y depends on HPET_TIMER && (RTC=y || RTC=m || RTC_DRV_CMOS=m || RTC_DRV_CMOS=y) config APB_TIMER def_bool y if MRST prompt "Langwell APB Timer Support" if X86_MRST help APB timer is the replacement for 8254, HPET on X86 MID platforms. The APBT provides a stable time base on SMP systems, unlike the TSC, but it is more expensive to access, as it is off-chip. APB timers are always running regardless of CPU C states, they are used as per CPU clockevent device when possible. # Mark as expert because too many people got it wrong. # The code disables itself when not needed. config DMI default y bool "Enable DMI scanning" if EXPERT ---help--- Enabled scanning of DMI to identify machine quirks. Say Y here unless you have verified that your setup is not affected by entries in the DMI blacklist. Required by PNP BIOS code. config GART_IOMMU bool "GART IOMMU support" if EXPERT default y select SWIOTLB depends on X86_64 && PCI && AMD_NB ---help--- Support for full DMA access of devices with 32bit memory access only on systems with more than 3GB. This is usually needed for USB, sound, many IDE/SATA chipsets and some other devices. Provides a driver for the AMD Athlon64/Opteron/Turion/Sempron GART based hardware IOMMU and a software bounce buffer based IOMMU used on Intel systems and as fallback. The code is only active when needed (enough memory and limited device) unless CONFIG_IOMMU_DEBUG or iommu=force is specified too. config CALGARY_IOMMU bool "IBM Calgary IOMMU support" select SWIOTLB depends on X86_64 && PCI && EXPERIMENTAL ---help--- Support for hardware IOMMUs in IBM's xSeries x366 and x460 systems. Needed to run systems with more than 3GB of memory properly with 32-bit PCI devices that do not support DAC (Double Address Cycle). Calgary also supports bus level isolation, where all DMAs pass through the IOMMU. This prevents them from going anywhere except their intended destination. This catches hard-to-find kernel bugs and mis-behaving drivers and devices that do not use the DMA-API properly to set up their DMA buffers. The IOMMU can be turned off at boot time with the iommu=off parameter. Normally the kernel will make the right choice by itself. If unsure, say Y. config CALGARY_IOMMU_ENABLED_BY_DEFAULT def_bool y prompt "Should Calgary be enabled by default?" depends on CALGARY_IOMMU ---help--- Should Calgary be enabled by default? if you choose 'y', Calgary will be used (if it exists). If you choose 'n', Calgary will not be used even if it exists. If you choose 'n' and would like to use Calgary anyway, pass 'iommu=calgary' on the kernel command line. If unsure, say Y. config AMD_IOMMU bool "AMD IOMMU support" select SWIOTLB select PCI_MSI depends on X86_64 && PCI && ACPI ---help--- With this option you can enable support for AMD IOMMU hardware in your system. An IOMMU is a hardware component which provides remapping of DMA memory accesses from devices. With an AMD IOMMU you can isolate the the DMA memory of different devices and protect the system from misbehaving device drivers or hardware. You can find out if your system has an AMD IOMMU if you look into your BIOS for an option to enable it or if you have an IVRS ACPI table. config AMD_IOMMU_STATS bool "Export AMD IOMMU statistics to debugfs" depends on AMD_IOMMU select DEBUG_FS ---help--- This option enables code in the AMD IOMMU driver to collect various statistics about whats happening in the driver and exports that information to userspace via debugfs. If unsure, say N. # need this always selected by IOMMU for the VIA workaround config SWIOTLB def_bool y if X86_64 ---help--- Support for software bounce buffers used on x86-64 systems which don't have a hardware IOMMU (e.g. the current generation of Intel's x86-64 CPUs). Using this PCI devices which can only access 32-bits of memory can be used on systems with more than 3 GB of memory. If unsure, say Y. config IOMMU_HELPER def_bool (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU) config IOMMU_API def_bool (AMD_IOMMU || DMAR) config MAXSMP bool "Enable Maximum number of SMP Processors and NUMA Nodes" depends on X86_64 && SMP && DEBUG_KERNEL && EXPERIMENTAL select CPUMASK_OFFSTACK ---help--- Enable maximum number of CPUS and NUMA Nodes for this architecture. If unsure, say N. config NR_CPUS int "Maximum number of CPUs" if SMP && !MAXSMP range 2 8 if SMP && X86_32 && !X86_BIGSMP range 2 512 if SMP && !MAXSMP default "1" if !SMP default "4096" if MAXSMP default "32" if SMP && (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP || X86_ES7000) default "8" if SMP ---help--- This allows you to specify the maximum number of CPUs which this kernel will support. The maximum supported value is 512 and the minimum value which makes sense is 2. This is purely to save memory - each supported CPU adds approximately eight kilobytes to the kernel image. config SCHED_SMT bool "SMT (Hyperthreading) scheduler support" depends on X86_HT ---help--- SMT scheduler support improves the CPU scheduler's decision making when dealing with Intel Pentium 4 chips with HyperThreading at a cost of slightly increased overhead in some places. If unsure say N here. config SCHED_MC def_bool y prompt "Multi-core scheduler support" depends on X86_HT ---help--- Multi-core scheduler support improves the CPU scheduler's decision making when dealing with multi-core CPU chips at a cost of slightly increased overhead in some places. If unsure say N here. config IRQ_TIME_ACCOUNTING bool "Fine granularity task level IRQ time accounting" default n ---help--- Select this option to enable fine granularity task irq time accounting. This is done by reading a timestamp on each transitions between softirq and hardirq state, so there can be a small performance impact. If in doubt, say N here. source "kernel/Kconfig.preempt" config X86_UP_APIC bool "Local APIC support on uniprocessors" depends on X86_32 && !SMP && !X86_32_NON_STANDARD ---help--- A local APIC (Advanced Programmable Interrupt Controller) is an integrated interrupt controller in the CPU. If you have a single-CPU system which has a processor with a local APIC, you can say Y here to enable and use it. If you say Y here even though your machine doesn't have a local APIC, then the kernel will still run with no slowdown at all. The local APIC supports CPU-generated self-interrupts (timer, performance counters), and the NMI watchdog which detects hard lockups. config X86_UP_IOAPIC bool "IO-APIC support on uniprocessors" depends on X86_UP_APIC ---help--- An IO-APIC (I/O Advanced Programmable Interrupt Controller) is an SMP-capable replacement for PC-style interrupt controllers. Most SMP systems and many recent uniprocessor systems have one. If you have a single-CPU system with an IO-APIC, you can say Y here to use it. If you say Y here even though your machine doesn't have an IO-APIC, then the kernel will still run with no slowdown at all. config X86_LOCAL_APIC def_bool y depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_APIC config X86_IO_APIC def_bool y depends on X86_64 || SMP || X86_32_NON_STANDARD || X86_UP_IOAPIC config X86_VISWS_APIC def_bool y depends on X86_32 && X86_VISWS config X86_REROUTE_FOR_BROKEN_BOOT_IRQS bool "Reroute for broken boot IRQs" depends on X86_IO_APIC ---help--- This option enables a workaround that fixes a source of spurious interrupts. This is recommended when threaded interrupt handling is used on systems where the generation of superfluous "boot interrupts" cannot be disabled. Some chipsets generate a legacy INTx "boot IRQ" when the IRQ entry in the chipset's IO-APIC is masked (as, e.g. the RT kernel does during interrupt handling). On chipsets where this boot IRQ generation cannot be disabled, this workaround keeps the original IRQ line masked so that only the equivalent "boot IRQ" is delivered to the CPUs. The workaround also tells the kernel to set up the IRQ handler on the boot IRQ line. In this way only one interrupt is delivered to the kernel. Otherwise the spurious second interrupt may cause the kernel to bring down (vital) interrupt lines. Only affects "broken" chipsets. Interrupt sharing may be increased on these systems. config X86_MCE bool "Machine Check / overheating reporting" ---help--- Machine Check support allows the processor to notify the kernel if it detects a problem (e.g. overheating, data corruption). The action the kernel takes depends on the severity of the problem, ranging from warning messages to halting the machine. config X86_MCE_INTEL def_bool y prompt "Intel MCE features" depends on X86_MCE && X86_LOCAL_APIC ---help--- Additional support for intel specific MCE features such as the thermal monitor. config X86_MCE_AMD def_bool y prompt "AMD MCE features" depends on X86_MCE && X86_LOCAL_APIC ---help--- Additional support for AMD specific MCE features such as the DRAM Error Threshold. config X86_ANCIENT_MCE bool "Support for old Pentium 5 / WinChip machine checks" depends on X86_32 && X86_MCE ---help--- Include support for machine check handling on old Pentium 5 or WinChip systems. These typically need to be enabled explicitely on the command line. config X86_MCE_THRESHOLD depends on X86_MCE_AMD || X86_MCE_INTEL def_bool y config X86_MCE_INJECT depends on X86_MCE tristate "Machine check injector support" ---help--- Provide support for injecting machine checks for testing purposes. If you don't know what a machine check is and you don't do kernel QA it is safe to say n. config X86_THERMAL_VECTOR def_bool y depends on X86_MCE_INTEL config VM86 bool "Enable VM86 support" if EXPERT default y depends on X86_32 ---help--- This option is required by programs like DOSEMU to run 16-bit legacy code on X86 processors. It also may be needed by software like XFree86 to initialize some video cards via BIOS. Disabling this option saves about 6k. config TOSHIBA tristate "Toshiba Laptop support" depends on X86_32 ---help--- This adds a driver to safely access the System Management Mode of the CPU on Toshiba portables with a genuine Toshiba BIOS. It does not work on models with a Phoenix BIOS. The System Management Mode is used to set the BIOS and power saving options on Toshiba portables. For information on utilities to make use of this driver see the Toshiba Linux utilities web site at: . Say Y if you intend to run this kernel on a Toshiba portable. Say N otherwise. config I8K tristate "Dell laptop support" ---help--- This adds a driver to safely access the System Management Mode of the CPU on the Dell Inspiron 8000. The System Management Mode is used to read cpu temperature and cooling fan status and to control the fans on the I8K portables. This driver has been tested only on the Inspiron 8000 but it may also work with other Dell laptops. You can force loading on other models by passing the parameter `force=1' to the module. Use at your own risk. For information on utilities to make use of this driver see the I8K Linux utilities web site at: Say Y if you intend to run this kernel on a Dell Inspiron 8000. Say N otherwise. config X86_REBOOTFIXUPS bool "Enable X86 board specific fixups for reboot" depends on X86_32 ---help--- This enables chipset and/or board specific fixups to be done in order to get reboot to work correctly. This is only needed on some combinations of hardware and BIOS. The symptom, for which this config is intended, is when reboot ends with a stalled/hung system. Currently, the only fixup is for the Geode machines using CS5530A and CS5536 chipsets and the RDC R-321x SoC. Say Y if you want to enable the fixup. Currently, it's safe to enable this option even if you don't need it. Say N otherwise. config MICROCODE tristate "/dev/cpu/microcode - microcode support" select FW_LOADER ---help--- If you say Y here, you will be able to update the microcode on certain Intel and AMD processors. The Intel support is for the IA32 family, e.g. Pentium Pro, Pentium II, Pentium III, Pentium 4, Xeon etc. The AMD support is for family 0x10 and 0x11 processors, e.g. Opteron, Phenom and Turion 64 Ultra. You will obviously need the actual microcode binary data itself which is not shipped with the Linux kernel. This option selects the general module only, you need to select at least one vendor specific module as well. To compile this driver as a module, choose M here: the module will be called microcode. config MICROCODE_INTEL bool "Intel microcode patch loading support" depends on MICROCODE default MICROCODE select FW_LOADER ---help--- This options enables microcode patch loading support for Intel processors. For latest news and information on obtaining all the required Intel ingredients for this driver, check: . config MICROCODE_AMD bool "AMD microcode patch loading support" depends on MICROCODE select FW_LOADER ---help--- If you select this option, microcode patch loading support for AMD processors will be enabled. config MICROCODE_OLD_INTERFACE def_bool y depends on MICROCODE config X86_MSR tristate "/dev/cpu/*/msr - Model-specific register support" ---help--- This device gives privileged processes access to the x86 Model-Specific Registers (MSRs). It is a character device with major 202 and minors 0 to 31 for /dev/cpu/0/msr to /dev/cpu/31/msr. MSR accesses are directed to a specific CPU on multi-processor systems. config X86_CPUID tristate "/dev/cpu/*/cpuid - CPU information support" ---help--- This device gives processes access to the x86 CPUID instruction to be executed on a specific processor. It is a character device with major 203 and minors 0 to 31 for /dev/cpu/0/cpuid to /dev/cpu/31/cpuid. choice prompt "High Memory Support" default HIGHMEM64G if X86_NUMAQ default HIGHMEM4G depends on X86_32 config NOHIGHMEM bool "off" depends on !X86_NUMAQ ---help--- Linux can use up to 64 Gigabytes of physical memory on x86 systems. However, the address space of 32-bit x86 processors is only 4 Gigabytes large. That means that, if you have a large amount of physical memory, not all of it can be "permanently mapped" by the kernel. The physical memory that's not permanently mapped is called "high memory". If you are compiling a kernel which will never run on a machine with more than 1 Gigabyte total physical RAM, answer "off" here (default choice and suitable for most users). This will result in a "3GB/1GB" split: 3GB are mapped so that each process sees a 3GB virtual memory space and the remaining part of the 4GB virtual memory space is used by the kernel to permanently map as much physical memory as possible. If the machine has between 1 and 4 Gigabytes physical RAM, then answer "4GB" here. If more than 4 Gigabytes is used then answer "64GB" here. This selection turns Intel PAE (Physical Address Extension) mode on. PAE implements 3-level paging on IA32 processors. PAE is fully supported by Linux, PAE mode is implemented on all recent Intel processors (Pentium Pro and better). NOTE: If you say "64GB" here, then the kernel will not boot on CPUs that don't support PAE! The actual amount of total physical memory will either be auto detected or can be forced by using a kernel command line option such as "mem=256M". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) If unsure, say "off". config HIGHMEM4G bool "4GB" depends on !X86_NUMAQ ---help--- Select this if you have a 32-bit processor and between 1 and 4 gigabytes of physical RAM. config HIGHMEM64G bool "64GB" depends on !M386 && !M486 select X86_PAE ---help--- Select this if you have a 32-bit processor and more than 4 gigabytes of physical RAM. endchoice choice depends on EXPERIMENTAL prompt "Memory split" if EXPERT default VMSPLIT_3G depends on X86_32 ---help--- Select the desired split between kernel and user memory. If the address range available to the kernel is less than the physical memory installed, the remaining memory will be available as "high memory". Accessing high memory is a little more costly than low memory, as it needs to be mapped into the kernel first. Note that increasing the kernel address space limits the range available to user programs, making the address space there tighter. Selecting anything other than the default 3G/1G split will also likely make your kernel incompatible with binary-only kernel modules. If you are not absolutely sure what you are doing, leave this option alone! config VMSPLIT_3G bool "3G/1G user/kernel split" config VMSPLIT_3G_OPT depends on !X86_PAE bool "3G/1G user/kernel split (for full 1G low memory)" config VMSPLIT_2G bool "2G/2G user/kernel split" config VMSPLIT_2G_OPT depends on !X86_PAE bool "2G/2G user/kernel split (for full 2G low memory)" config VMSPLIT_1G bool "1G/3G user/kernel split" endchoice config PAGE_OFFSET hex default 0xB0000000 if VMSPLIT_3G_OPT default 0x80000000 if VMSPLIT_2G default 0x78000000 if VMSPLIT_2G_OPT default 0x40000000 if VMSPLIT_1G default 0xC0000000 depends on X86_32 config HIGHMEM def_bool y depends on X86_32 && (HIGHMEM64G || HIGHMEM4G) config X86_PAE bool "PAE (Physical Address Extension) Support" depends on X86_32 && !HIGHMEM4G ---help--- PAE is required for NX support, and furthermore enables larger swapspace support for non-overcommit purposes. It has the cost of more pagetable lookup overhead, and also consumes more pagetable space per process. config ARCH_PHYS_ADDR_T_64BIT def_bool X86_64 || X86_PAE config ARCH_DMA_ADDR_T_64BIT def_bool X86_64 || HIGHMEM64G config DIRECT_GBPAGES bool "Enable 1GB pages for kernel pagetables" if EXPERT default y depends on X86_64 ---help--- Allow the kernel linear mapping to use 1GB pages on CPUs that support it. This can improve the kernel's performance a tiny bit by reducing TLB pressure. If in doubt, say "Y". # Common NUMA Features config NUMA bool "Numa Memory Allocation and Scheduler Support" depends on SMP depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL) default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) ---help--- Enable NUMA (Non Uniform Memory Access) support. The kernel will try to allocate memory used by a CPU on the local memory controller of the CPU and add some more NUMA awareness to the kernel. For 64-bit this is recommended if the system is Intel Core i7 (or later), AMD Opteron, or EM64T NUMA. For 32-bit this is only needed on (rare) 32-bit-only platforms that support NUMA topologies, such as NUMAQ / Summit, or if you boot a 32-bit kernel on a 64-bit NUMA platform. Otherwise, you should say N. comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" depends on X86_32 && X86_SUMMIT && (!HIGHMEM64G || !ACPI) config AMD_NUMA def_bool y prompt "Old style AMD Opteron NUMA detection" depends on X86_64 && NUMA && PCI ---help--- Enable AMD NUMA node topology detection. You should say Y here if you have a multi processor AMD system. This uses an old method to read the NUMA configuration directly from the builtin Northbridge of Opteron. It is recommended to use X86_64_ACPI_NUMA instead, which also takes priority if both are compiled in. config X86_64_ACPI_NUMA def_bool y prompt "ACPI NUMA detection" depends on X86_64 && NUMA && ACPI && PCI select ACPI_NUMA ---help--- Enable ACPI SRAT based node topology detection. # Some NUMA nodes have memory ranges that span # other nodes. Even though a pfn is valid and # between a node's start and end pfns, it may not # reside on that node. See memmap_init_zone() # for details. config NODES_SPAN_OTHER_NODES def_bool y depends on X86_64_ACPI_NUMA config NUMA_EMU bool "NUMA emulation" depends on X86_64 && NUMA ---help--- Enable NUMA emulation. A flat machine will be split into virtual nodes when booted with "numa=fake=N", where N is the number of nodes. This is only useful for debugging. config NODES_SHIFT int "Maximum NUMA Nodes (as a power of 2)" if !MAXSMP range 1 10 default "10" if MAXSMP default "6" if X86_64 default "4" if X86_NUMAQ default "3" depends on NEED_MULTIPLE_NODES ---help--- Specify the maximum number of NUMA Nodes available on the target system. Increases memory reserved to accommodate various tables. config HAVE_ARCH_BOOTMEM def_bool y depends on X86_32 && NUMA config ARCH_HAVE_MEMORY_PRESENT def_bool y depends on X86_32 && DISCONTIGMEM config NEED_NODE_MEMMAP_SIZE def_bool y depends on X86_32 && (DISCONTIGMEM || SPARSEMEM) config HAVE_ARCH_ALLOC_REMAP def_bool y depends on X86_32 && NUMA config ARCH_FLATMEM_ENABLE def_bool y depends on X86_32 && ARCH_SELECT_MEMORY_MODEL && !NUMA config ARCH_DISCONTIGMEM_ENABLE def_bool y depends on NUMA && X86_32 config ARCH_DISCONTIGMEM_DEFAULT def_bool y depends on NUMA && X86_32 config ARCH_PROC_KCORE_TEXT def_bool y depends on X86_64 && PROC_KCORE config ARCH_SPARSEMEM_DEFAULT def_bool y depends on X86_64 config ARCH_SPARSEMEM_ENABLE def_bool y depends on X86_64 || NUMA || (EXPERIMENTAL && X86_32) || X86_32_NON_STANDARD select SPARSEMEM_STATIC if X86_32 select SPARSEMEM_VMEMMAP_ENABLE if X86_64 config ARCH_SELECT_MEMORY_MODEL def_bool y depends on ARCH_SPARSEMEM_ENABLE config ARCH_MEMORY_PROBE def_bool X86_64 depends on MEMORY_HOTPLUG config ILLEGAL_POINTER_VALUE hex default 0 if X86_32 default 0xdead000000000000 if X86_64 source "mm/Kconfig" config HIGHPTE bool "Allocate 3rd-level pagetables from highmem" depends on HIGHMEM ---help--- The VM uses one page table entry for each page of physical memory. For systems with a lot of RAM, this can be wasteful of precious low memory. Setting this option will put user-space page table entries in high memory. config X86_CHECK_BIOS_CORRUPTION bool "Check for low memory corruption" ---help--- Periodically check for memory corruption in low memory, which is suspected to be caused by BIOS. Even when enabled in the configuration, it is disabled at runtime. Enable it by setting "memory_corruption_check=1" on the kernel command line. By default it scans the low 64k of memory every 60 seconds; see the memory_corruption_check_size and memory_corruption_check_period parameters in Documentation/kernel-parameters.txt to adjust this. When enabled with the default parameters, this option has almost no overhead, as it reserves a relatively small amount of memory and scans it infrequently. It both detects corruption and prevents it from affecting the running system. It is, however, intended as a diagnostic tool; if repeatable BIOS-originated corruption always affects the same memory, you can use memmap= to prevent the kernel from using that memory. config X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK bool "Set the default setting of memory_corruption_check" depends on X86_CHECK_BIOS_CORRUPTION default y ---help--- Set whether the default state of memory_corruption_check is on or off. config X86_RESERVE_LOW int "Amount of low memory, in kilobytes, to reserve for the BIOS" default 64 range 4 640 ---help--- Specify the amount of low memory to reserve for the BIOS. The first page contains BIOS data structures that the kernel must not use, so that page must always be reserved. By default we reserve the first 64K of physical RAM, as a number of BIOSes are known to corrupt that memory range during events such as suspend/resume or monitor cable insertion, so it must not be used by the kernel. You can set this to 4 if you are absolutely sure that you trust the BIOS to get all its memory reservations and usages right. If you know your BIOS have problems beyond the default 64K area, you can set this to 640 to avoid using the entire low memory range. If you have doubts about the BIOS (e.g. suspend/resume does not work or there's kernel crashes after certain hardware hotplug events) then you might want to enable X86_CHECK_BIOS_CORRUPTION=y to allow the kernel to check typical corruption patterns. Leave this to the default value of 64 if you are unsure. config MATH_EMULATION bool prompt "Math emulation" if X86_32 ---help--- Linux can emulate a math coprocessor (used for floating point operations) if you don't have one. 486DX and Pentium processors have a math coprocessor built in, 486SX and 386 do not, unless you added a 487DX or 387, respectively. (The messages during boot time can give you some hints here ["man dmesg"].) Everyone needs either a coprocessor or this emulation. If you don't have a math coprocessor, you need to say Y here; if you say Y here even though you have a coprocessor, the coprocessor will be used nevertheless. (This behavior can be changed with the kernel command line option "no387", which comes handy if your coprocessor is broken. Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) This means that it is a good idea to say Y here if you intend to use this kernel on different machines. More information about the internals of the Linux math coprocessor emulation can be found in . If you are not sure, say Y; apart from resulting in a 66 KB bigger kernel, it won't hurt. config MTRR def_bool y prompt "MTRR (Memory Type Range Register) support" if EXPERT ---help--- On Intel P6 family processors (Pentium Pro, Pentium II and later) the Memory Type Range Registers (MTRRs) may be used to control processor access to memory ranges. This is most useful if you have a video (VGA) card on a PCI or AGP bus. Enabling write-combining allows bus write transfers to be combined into a larger transfer before bursting over the PCI/AGP bus. This can increase performance of image write operations 2.5 times or more. Saying Y here creates a /proc/mtrr file which may be used to manipulate your processor's MTRRs. Typically the X server should use this. This code has a reasonably generic interface so that similar control registers on other processors can be easily supported as well: The Cyrix 6x86, 6x86MX and M II processors have Address Range Registers (ARRs) which provide a similar functionality to MTRRs. For these, the ARRs are used to emulate the MTRRs. The AMD K6-2 (stepping 8 and above) and K6-3 processors have two MTRRs. The Centaur C6 (WinChip) has 8 MCRs, allowing write-combining. All of these processors are supported by this code and it makes sense to say Y here if you have one of them. Saying Y here also fixes a problem with buggy SMP BIOSes which only set the MTRRs for the boot CPU and not for the secondary CPUs. This can lead to all sorts of problems, so it's good to say Y here. You can safely say Y even if your machine doesn't have MTRRs, you'll just add about 9 KB to your kernel. See for more information. config MTRR_SANITIZER def_bool y prompt "MTRR cleanup support" depends on MTRR ---help--- Convert MTRR layout from continuous to discrete, so X drivers can add writeback entries. Can be disabled with disable_mtrr_cleanup on the kernel command line. The largest mtrr entry size for a continuous block can be set with mtrr_chunk_size. If unsure, say Y. config MTRR_SANITIZER_ENABLE_DEFAULT int "MTRR cleanup enable value (0-1)" range 0 1 default "0" depends on MTRR_SANITIZER ---help--- Enable mtrr cleanup default value config MTRR_SANITIZER_SPARE_REG_NR_DEFAULT int "MTRR cleanup spare reg num (0-7)" range 0 7 default "1" depends on MTRR_SANITIZER ---help--- mtrr cleanup spare entries default, it can be changed via mtrr_spare_reg_nr=N on the kernel command line. config X86_PAT def_bool y prompt "x86 PAT support" if EXPERT depends on MTRR ---help--- Use PAT attributes to setup page level cache control. PATs are the modern equivalents of MTRRs and are much more flexible than MTRRs. Say N here if you see bootup problems (boot crash, boot hang, spontaneous reboots) or a non-working video driver. If unsure, say Y. config ARCH_USES_PG_UNCACHED def_bool y depends on X86_PAT config EFI bool "EFI runtime service support" depends on ACPI ---help--- This enables the kernel to use EFI runtime services that are available (such as the EFI variable services). This option is only useful on systems that have EFI firmware. In addition, you should use the latest ELILO loader available at in order to take advantage of EFI runtime services. However, even with this option, the resultant kernel should continue to boot on existing non-EFI platforms. config SECCOMP def_bool y prompt "Enable seccomp to safely compute untrusted bytecode" ---help--- This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via prctl(PR_SET_SECCOMP), it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. If unsure, say Y. Only embedded should say N here. config CC_STACKPROTECTOR bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" ---help--- This option turns on the -fstack-protector GCC feature. This feature puts, at the beginning of functions, a canary value on the stack just before the return address, and validates the value just before actually returning. Stack based buffer overflows (that need to overwrite this return address) now also overwrite the canary, which gets detected and the attack is then neutralized via a kernel panic. This feature requires gcc version 4.2 or above, or a distribution gcc with the feature backported. Older versions are automatically detected and for those versions, this configuration option is ignored. (and a warning is printed during bootup) source kernel/Kconfig.hz config KEXEC bool "kexec system call" ---help--- kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware. And like a reboot you can start any kernel with it, not just Linux. The name comes from the similarity to the exec system call. It is an ongoing process to be certain the hardware in a machine is properly shutdown, so do not be surprised if this code does not initially work for you. It may help to enable device hotplugging support. As of this writing the exact hardware interface is strongly in flux, so no good recommendation can be made. config CRASH_DUMP bool "kernel crash dumps" depends on X86_64 || (X86_32 && HIGHMEM) ---help--- Generate crash dump after being started by kexec. This should be normally only set in special crash dump kernels which are loaded in the main kernel with kexec-tools into a specially reserved region and then later executed after a crash by kdump/kexec. The crash dump kernel must be compiled to a memory address not used by the main kernel or BIOS using PHYSICAL_START, or it must be built as a relocatable image (CONFIG_RELOCATABLE=y). For more details see Documentation/kdump/kdump.txt config KEXEC_JUMP bool "kexec jump (EXPERIMENTAL)" depends on EXPERIMENTAL depends on KEXEC && HIBERNATION ---help--- Jump between original kernel and kexeced kernel and invoke code in physical address mode via KEXEC config PHYSICAL_START hex "Physical address where the kernel is loaded" if (EXPERT || CRASH_DUMP) default "0x1000000" ---help--- This gives the physical address where the kernel is loaded. If kernel is a not relocatable (CONFIG_RELOCATABLE=n) then bzImage will decompress itself to above physical address and run from there. Otherwise, bzImage will run from the address where it has been loaded by the boot loader and will ignore above physical address. In normal kdump cases one does not have to set/change this option as now bzImage can be compiled as a completely relocatable image (CONFIG_RELOCATABLE=y) and be used to load and run from a different address. This option is mainly useful for the folks who don't want to use a bzImage for capturing the crash dump and want to use a vmlinux instead. vmlinux is not relocatable hence a kernel needs to be specifically compiled to run from a specific memory area (normally a reserved region) and this option comes handy. So if you are using bzImage for capturing the crash dump, leave the value here unchanged to 0x1000000 and set CONFIG_RELOCATABLE=y. Otherwise if you plan to use vmlinux for capturing the crash dump change this value to start of the reserved region. In other words, it can be set based on the "X" value as specified in the "crashkernel=YM@XM" command line boot parameter passed to the panic-ed kernel. Please take a look at Documentation/kdump/kdump.txt for more details about crash dumps. Usage of bzImage for capturing the crash dump is recommended as one does not have to build two kernels. Same kernel can be used as production kernel and capture kernel. Above option should have gone away after relocatable bzImage support is introduced. But it is present because there are users out there who continue to use vmlinux for dump capture. This option should go away down the line. Don't change this unless you know what you are doing. config RELOCATABLE bool "Build a relocatable kernel" default y ---help--- This builds a kernel image that retains relocation information so it can be loaded someplace besides the default 1MB. The relocations tend to make the kernel binary about 10% larger, but are discarded at runtime. One use is for the kexec on panic case where the recovery kernel must live at a different physical address than the primary kernel. Note: If CONFIG_RELOCATABLE=y, then the kernel runs from the address it has been loaded at and the compile time physical address (CONFIG_PHYSICAL_START) is ignored. # Relocation on x86-32 needs some additional build support config X86_NEED_RELOCS def_bool y depends on X86_32 && RELOCATABLE config PHYSICAL_ALIGN hex "Alignment value to which kernel should be aligned" if X86_32 default "0x1000000" range 0x2000 0x1000000 ---help--- This value puts the alignment restrictions on physical address where kernel is loaded and run from. Kernel is compiled for an address which meets above alignment restriction. If bootloader loads the kernel at a non-aligned address and CONFIG_RELOCATABLE is set, kernel will move itself to nearest address aligned to above value and run from there. If bootloader loads the kernel at a non-aligned address and CONFIG_RELOCATABLE is not set, kernel will ignore the run time load address and decompress itself to the address it has been compiled for and run from there. The address for which kernel is compiled already meets above alignment restrictions. Hence the end result is that kernel runs from a physical address meeting above alignment restrictions. Don't change this unless you know what you are doing. config HOTPLUG_CPU bool "Support for hot-pluggable CPUs" depends on SMP && HOTPLUG ---help--- Say Y here to allow turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. ( Note: power management support will enable this option automatically on SMP systems. ) Say N if you want to disable CPU hotplug. config COMPAT_VDSO def_bool y prompt "Compat VDSO support" depends on X86_32 || IA32_EMULATION ---help--- Map the 32-bit VDSO to the predictable old-style address too. Say N here if you are running a sufficiently recent glibc version (2.3.3 or later), to remove the high-mapped VDSO mapping and to exclusively use the randomized VDSO. If unsure, say Y. config CMDLINE_BOOL bool "Built-in kernel command line" ---help--- Allow for specifying boot arguments to the kernel at build time. On some systems (e.g. embedded ones), it is necessary or convenient to provide some or all of the kernel boot arguments with the kernel itself (that is, to not rely on the boot loader to provide them.) To compile command line arguments into the kernel, set this option to 'Y', then fill in the the boot arguments in CONFIG_CMDLINE. Systems with fully functional boot loaders (i.e. non-embedded) should leave this option set to 'N'. config CMDLINE string "Built-in kernel command string" depends on CMDLINE_BOOL default "" ---help--- Enter arguments here that should be compiled into the kernel image and used at boot time. If the boot loader provides a command line at boot time, it is appended to this string to form the full kernel command line, when the system boots. However, you can use the CONFIG_CMDLINE_OVERRIDE option to change this behavior. In most cases, the command line (whether built-in or provided by the boot loader) should specify the device for the root file system. config CMDLINE_OVERRIDE bool "Built-in command line overrides boot loader arguments" depends on CMDLINE_BOOL ---help--- Set this option to 'Y' to have the kernel ignore the boot loader command line, and use ONLY the built-in command line. This is used to work around broken boot loaders. This should be set to 'N' under normal conditions. endmenu config ARCH_ENABLE_MEMORY_HOTPLUG def_bool y depends on X86_64 || (X86_32 && HIGHMEM) config ARCH_ENABLE_MEMORY_HOTREMOVE def_bool y depends on MEMORY_HOTPLUG config HAVE_ARCH_EARLY_PFN_TO_NID def_bool X86_64 depends on NUMA config USE_PERCPU_NUMA_NODE_ID def_bool y depends on NUMA menu "Power management and ACPI options" config ARCH_HIBERNATION_HEADER def_bool y depends on X86_64 && HIBERNATION source "kernel/power/Kconfig" source "drivers/acpi/Kconfig" source "drivers/sfi/Kconfig" config X86_APM_BOOT def_bool y depends on APM || APM_MODULE menuconfig APM tristate "APM (Advanced Power Management) BIOS support" depends on X86_32 && PM_SLEEP ---help--- APM is a BIOS specification for saving power using several different techniques. This is mostly useful for battery powered laptops with APM compliant BIOSes. If you say Y here, the system time will be reset after a RESUME operation, the /proc/apm device will provide battery status information, and user-space programs will receive notification of APM "events" (e.g. battery status change). If you select "Y" here, you can disable actual use of the APM BIOS by passing the "apm=off" option to the kernel at boot time. Note that the APM support is almost completely disabled for machines with more than one CPU. In order to use APM, you will need supporting software. For location and more information, read and the Battery Powered Linux mini-HOWTO, available from . This driver does not spin down disk drives (see the hdparm(8) manpage ("man 8 hdparm") for that), and it doesn't turn off VESA-compliant "green" monitors. This driver does not support the TI 4000M TravelMate and the ACER 486/DX4/75 because they don't have compliant BIOSes. Many "green" desktop machines also don't have compliant BIOSes, and this driver may cause those machines to panic during the boot phase. Generally, if you don't have a battery in your machine, there isn't much point in using this driver and you should say N. If you get random kernel OOPSes or reboots that don't seem to be related to anything, try disabling/enabling this option (or disabling/enabling APM in your BIOS). Some other things you should try when experiencing seemingly random, "weird" problems: 1) make sure that you have enough swap space and that it is enabled. 2) pass the "no-hlt" option to the kernel 3) switch on floating point emulation in the kernel and pass the "no387" option to the kernel 4) pass the "floppy=nodma" option to the kernel 5) pass the "mem=4M" option to the kernel (thereby disabling all but the first 4 MB of RAM) 6) make sure that the CPU is not over clocked. 7) read the sig11 FAQ at 8) disable the cache from your BIOS settings 9) install a fan for the video card or exchange video RAM 10) install a better fan for the CPU 11) exchange RAM chips 12) exchange the motherboard. To compile this driver as a module, choose M here: the module will be called apm. if APM config APM_IGNORE_USER_SUSPEND bool "Ignore USER SUSPEND" ---help--- This option will ignore USER SUSPEND requests. On machines with a compliant APM BIOS, you want to say N. However, on the NEC Versa M series notebooks, it is necessary to say Y because of a BIOS bug. config APM_DO_ENABLE bool "Enable PM at boot time" ---help--- Enable APM features at boot time. From page 36 of the APM BIOS specification: "When disabled, the APM BIOS does not automatically power manage devices, enter the Standby State, enter the Suspend State, or take power saving steps in response to CPU Idle calls." This driver will make CPU Idle calls when Linux is idle (unless this feature is turned off -- see "Do CPU IDLE calls", below). This should always save battery power, but more complicated APM features will be dependent on your BIOS implementation. You may need to turn this option off if your computer hangs at boot time when using APM support, or if it beeps continuously instead of suspending. Turn this off if you have a NEC UltraLite Versa 33/C or a Toshiba T400CDT. This is off by default since most machines do fine without this feature. config APM_CPU_IDLE bool "Make CPU Idle calls when idle" ---help--- Enable calls to APM CPU Idle/CPU Busy inside the kernel's idle loop. On some machines, this can activate improved power savings, such as a slowed CPU clock rate, when the machine is idle. These idle calls are made after the idle loop has run for some length of time (e.g., 333 mS). On some machines, this will cause a hang at boot time or whenever the CPU becomes idle. (On machines with more than one CPU, this option does nothing.) config APM_DISPLAY_BLANK bool "Enable console blanking using APM" ---help--- Enable console blanking using the APM. Some laptops can use this to turn off the LCD backlight when the screen blanker of the Linux virtual console blanks the screen. Note that this is only used by the virtual console screen blanker, and won't turn off the backlight when using the X Window system. This also doesn't have anything to do with your VESA-compliant power-saving monitor. Further, this option doesn't work for all laptops -- it might not turn off your backlight at all, or it might print a lot of errors to the console, especially if you are using gpm. config APM_ALLOW_INTS bool "Allow interrupts during APM BIOS calls" ---help--- Normally we disable external interrupts while we are making calls to the APM BIOS as a measure to lessen the effects of a badly behaving BIOS implementation. The BIOS should reenable interrupts if it needs to. Unfortunately, some BIOSes do not -- especially those in many of the newer IBM Thinkpads. If you experience hangs when you suspend, try setting this to Y. Otherwise, say N. endif # APM source "arch/x86/kernel/cpu/cpufreq/Kconfig" source "drivers/cpuidle/Kconfig" source "drivers/idle/Kconfig" endmenu menu "Bus options (PCI etc.)" config PCI bool "PCI support" default y select ARCH_SUPPORTS_MSI if (X86_LOCAL_APIC && X86_IO_APIC) ---help--- Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. choice prompt "PCI access mode" depends on X86_32 && PCI default PCI_GOANY ---help--- On PCI systems, the BIOS can be used to detect the PCI devices and determine their configuration. However, some old PCI motherboards have BIOS bugs and may crash if this is done. Also, some embedded PCI-based systems don't have any BIOS at all. Linux can also try to detect the PCI hardware directly without using the BIOS. With this option, you can specify how Linux should detect the PCI devices. If you choose "BIOS", the BIOS will be used, if you choose "Direct", the BIOS won't be used, and if you choose "MMConfig", then PCI Express MMCONFIG will be used. If you choose "Any", the kernel will try MMCONFIG, then the direct access method and falls back to the BIOS if that doesn't work. If unsure, go with the default, which is "Any". config PCI_GOBIOS bool "BIOS" config PCI_GOMMCONFIG bool "MMConfig" config PCI_GODIRECT bool "Direct" config PCI_GOOLPC bool "OLPC XO-1" depends on OLPC config PCI_GOANY bool "Any" endchoice config PCI_BIOS def_bool y depends on X86_32 && PCI && (PCI_GOBIOS || PCI_GOANY) # x86-64 doesn't support PCI BIOS access from long mode so always go direct. config PCI_DIRECT def_bool y depends on PCI && (X86_64 || (PCI_GODIRECT || PCI_GOANY || PCI_GOOLPC)) config PCI_MMCONFIG def_bool y depends on X86_32 && PCI && (ACPI || SFI) && (PCI_GOMMCONFIG || PCI_GOANY) config PCI_OLPC def_bool y depends on PCI && OLPC && (PCI_GOOLPC || PCI_GOANY) config PCI_XEN def_bool y depends on PCI && XEN select SWIOTLB_XEN config PCI_DOMAINS def_bool y depends on PCI config PCI_MMCONFIG bool "Support mmconfig PCI config space access" depends on X86_64 && PCI && ACPI config PCI_CNB20LE_QUIRK bool "Read CNB20LE Host Bridge Windows" if EXPERT default n depends on PCI && EXPERIMENTAL help Read the PCI windows out of the CNB20LE host bridge. This allows PCI hotplug to work on systems with the CNB20LE chipset which do not have ACPI. There's no public spec for this chipset, and this functionality is known to be incomplete. You should say N unless you know you need this. config DMAR bool "Support for DMA Remapping Devices (EXPERIMENTAL)" depends on PCI_MSI && ACPI && EXPERIMENTAL help DMA remapping (DMAR) devices support enables independent address translations for Direct Memory Access (DMA) from devices. These DMA remapping devices are reported via ACPI tables and include PCI device scope covered by these DMA remapping devices. config DMAR_DEFAULT_ON def_bool y prompt "Enable DMA Remapping Devices by default" depends on DMAR help Selecting this option will enable a DMAR device at boot time if one is found. If this option is not selected, DMAR support can be enabled by passing intel_iommu=on to the kernel. It is recommended you say N here while the DMAR code remains experimental. config DMAR_BROKEN_GFX_WA bool "Workaround broken graphics drivers (going away soon)" depends on DMAR && BROKEN ---help--- Current Graphics drivers tend to use physical address for DMA and avoid using DMA APIs. Setting this config option permits the IOMMU driver to set a unity map for all the OS-visible memory. Hence the driver can continue to use physical addresses for DMA, at least until this option is removed in the 2.6.32 kernel. config DMAR_FLOPPY_WA def_bool y depends on DMAR ---help--- Floppy disk drivers are known to bypass DMA API calls thereby failing to work when IOMMU is enabled. This workaround will setup a 1:1 mapping for the first 16MiB to make floppy (an ISA device) work. config INTR_REMAP bool "Support for Interrupt Remapping (EXPERIMENTAL)" depends on X86_64 && X86_IO_APIC && PCI_MSI && ACPI && EXPERIMENTAL ---help--- Supports Interrupt remapping for IO-APIC and MSI devices. To use x2apic mode in the CPU's which support x2APIC enhancements or to support platforms with CPU's having > 8 bit APIC ID, say Y. source "drivers/pci/pcie/Kconfig" source "drivers/pci/Kconfig" # x86_64 have no ISA slots, but can have ISA-style DMA. config ISA_DMA_API bool "ISA-style DMA support" if (X86_64 && EXPERT) default y help Enables ISA-style DMA support for devices requiring such controllers. If unsure, say Y. if X86_32 config ISA bool "ISA support" ---help--- Find out whether you have ISA slots on your motherboard. ISA is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are PCI, EISA, MicroChannel (MCA) or VESA. ISA is an older system, now being displaced by PCI; newer boards don't support it. If you have ISA, say Y, otherwise N. config EISA bool "EISA support" depends on ISA ---help--- The Extended Industry Standard Architecture (EISA) bus was developed as an open alternative to the IBM MicroChannel bus. The EISA bus provided some of the features of the IBM MicroChannel bus while maintaining backward compatibility with cards made for the older ISA bus. The EISA bus saw limited use between 1988 and 1995 when it was made obsolete by the PCI bus. Say Y here if you are building a kernel for an EISA-based machine. Otherwise, say N. source "drivers/eisa/Kconfig" config MCA bool "MCA support" ---help--- MicroChannel Architecture is found in some IBM PS/2 machines and laptops. It is a bus system similar to PCI or ISA. See (and especially the web page given there) before attempting to build an MCA bus kernel. source "drivers/mca/Kconfig" config SCx200 tristate "NatSemi SCx200 support" ---help--- This provides basic support for National Semiconductor's (now AMD's) Geode processors. The driver probes for the PCI-IDs of several on-chip devices, so its a good dependency for other scx200_* drivers. If compiled as a module, the driver is named scx200. config SCx200HR_TIMER tristate "NatSemi SCx200 27MHz High-Resolution Timer Support" depends on SCx200 default y ---help--- This driver provides a clocksource built upon the on-chip 27MHz high-resolution timer. Its also a workaround for NSC Geode SC-1100's buggy TSC, which loses time when the processor goes idle (as is done by the scheduler). The other workaround is idle=poll boot option. config OLPC bool "One Laptop Per Child support" depends on !X86_PAE select GPIOLIB select OF select OF_PROMTREE if PROC_DEVICETREE ---help--- Add support for detecting the unique features of the OLPC XO hardware. config OLPC_XO1 tristate "OLPC XO-1 support" depends on OLPC && MFD_CS5535 ---help--- Add support for non-essential features of the OLPC XO-1 laptop. endif # X86_32 config AMD_NB def_bool y depends on CPU_SUP_AMD && PCI source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" config RAPIDIO bool "RapidIO support" depends on PCI default n help If you say Y here, the kernel will include drivers and infrastructure code to support RapidIO interconnect devices. source "drivers/rapidio/Kconfig" endmenu menu "Executable file formats / Emulations" source "fs/Kconfig.binfmt" config IA32_EMULATION bool "IA32 Emulation" depends on X86_64 select COMPAT_BINFMT_ELF ---help--- Include code to run 32-bit programs under a 64-bit kernel. You should likely turn this on, unless you're 100% sure that you don't have any 32-bit programs left. config IA32_AOUT tristate "IA32 a.out support" depends on IA32_EMULATION ---help--- Support old a.out binaries in the 32bit emulation. config COMPAT def_bool y depends on IA32_EMULATION config COMPAT_FOR_U64_ALIGNMENT def_bool COMPAT depends on X86_64 config SYSVIPC_COMPAT def_bool y depends on COMPAT && SYSVIPC config KEYS_COMPAT bool depends on COMPAT && KEYS default y endmenu config HAVE_ATOMIC_IOMAP def_bool y depends on X86_32 config HAVE_TEXT_POKE_SMP bool select STOP_MACHINE if SMP source "net/Kconfig" source "drivers/Kconfig" source "drivers/firmware/Kconfig" source "fs/Kconfig" source "arch/x86/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "arch/x86/kvm/Kconfig" source "lib/Kconfig" config LGUEST_GUEST bool "Lguest guest support" select PARAVIRT depends on X86_32 select VIRTUALIZATION select VIRTIO select VIRTIO_RING select VIRTIO_CONSOLE help Lguest is a tiny in-kernel hypervisor. Selecting this will allow your kernel to boot under lguest. This option will increase your kernel size by about 6k. If in doubt, say N. If you say Y here, make sure you say Y (or M) to the virtio block and net drivers which lguest needs. # # KVM configuration # source "virt/kvm/Kconfig" menuconfig VIRTUALIZATION bool "Virtualization" depends on HAVE_KVM || X86 default y ---help--- Say Y here to get to see options for using your Linux host to run other operating systems inside virtual machines (guests). This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if VIRTUALIZATION config KVM tristate "Kernel-based Virtual Machine (KVM) support" depends on HAVE_KVM # for device assignment: depends on PCI select PREEMPT_NOTIFIERS select MMU_NOTIFIER select ANON_INODES select HAVE_KVM_IRQCHIP select HAVE_KVM_EVENTFD select KVM_APIC_ARCHITECTURE select KVM_ASYNC_PF select USER_RETURN_NOTIFIER select KVM_MMIO ---help--- Support hosting fully virtualized guest machines using hardware virtualization extensions. You will need a fairly recent processor equipped with virtualization extensions. You will also need to select one or more of the processor modules below. This module provides access to the hardware capabilities through a character device node named /dev/kvm. To compile this as a module, choose M here: the module will be called kvm. If unsure, say N. config KVM_INTEL tristate "KVM for Intel processors support" depends on KVM ---help--- Provides support for KVM on Intel processors equipped with the VT extensions. To compile this as a module, choose M here: the module will be called kvm-intel. config KVM_AMD tristate "KVM for AMD processors support" depends on KVM ---help--- Provides support for KVM on AMD processors equipped with the AMD-V (SVM) extensions. To compile this as a module, choose M here: the module will be called kvm-amd. config KVM_MMU_AUDIT bool "Audit KVM MMU" depends on KVM && TRACEPOINTS ---help--- This option adds a R/W kVM module parameter 'mmu_audit', which allows audit KVM MMU at runtime. # OK, it's a little counter-intuitive to do this, but it puts it neatly under # the virtualization menu. source drivers/vhost/Kconfig source drivers/lguest/Kconfig source drivers/virtio/Kconfig endif # VIRTUALIZATION # # This Kconfig describes xen options # config XEN bool "Xen guest support" select PARAVIRT select PARAVIRT_CLOCK depends on X86_64 || (X86_32 && X86_PAE && !X86_VISWS) depends on X86_CMPXCHG && X86_TSC help This is the Linux Xen port. Enabling this will allow the kernel to boot in a paravirtualized environment under the Xen hypervisor. config XEN_DOM0 def_bool y depends on XEN && PCI_XEN && SWIOTLB_XEN depends on X86_LOCAL_APIC && X86_IO_APIC && ACPI && PCI # Dummy symbol since people have come to rely on the PRIVILEGED_GUEST # name in tools. config XEN_PRIVILEGED_GUEST def_bool XEN_DOM0 config XEN_PVHVM def_bool y depends on XEN depends on X86_LOCAL_APIC config XEN_MAX_DOMAIN_MEMORY int default 128 depends on XEN help This only affects the sizing of some bss arrays, the unused portions of which are freed. config XEN_SAVE_RESTORE bool depends on XEN select HIBERNATE_CALLBACKS default y config XEN_DEBUG_FS bool "Enable Xen debug and tuning parameters in debugfs" depends on XEN && DEBUG_FS default n help Enable statistics output and various tuning options in debugfs. Enabling this option may incur a significant performance overhead. config XEN_DEBUG bool "Enable Xen debug checks" depends on XEN default n help Enable various WARN_ON checks in the Xen MMU code. Enabling this option WILL incur a significant performance overhead. # # CPU Frequency scaling # menu "CPU Frequency scaling" source "drivers/cpufreq/Kconfig" if CPU_FREQ comment "CPUFreq processor drivers" config X86_PCC_CPUFREQ tristate "Processor Clocking Control interface driver" depends on ACPI && ACPI_PROCESSOR help This driver adds support for the PCC interface. For details, take a look at: . To compile this driver as a module, choose M here: the module will be called pcc-cpufreq. If in doubt, say N. config X86_ACPI_CPUFREQ tristate "ACPI Processor P-States driver" select CPU_FREQ_TABLE depends on ACPI_PROCESSOR help This driver adds a CPUFreq driver which utilizes the ACPI Processor Performance States. This driver also supports Intel Enhanced Speedstep. To compile this driver as a module, choose M here: the module will be called acpi-cpufreq. For details, take a look at . If in doubt, say N. config ELAN_CPUFREQ tristate "AMD Elan SC400 and SC410" select CPU_FREQ_TABLE depends on X86_ELAN ---help--- This adds the CPUFreq driver for AMD Elan SC400 and SC410 processors. You need to specify the processor maximum speed as boot parameter: elanfreq=maxspeed (in kHz) or as module parameter "max_freq". For details, take a look at . If in doubt, say N. config SC520_CPUFREQ tristate "AMD Elan SC520" select CPU_FREQ_TABLE depends on X86_ELAN ---help--- This adds the CPUFreq driver for AMD Elan SC520 processor. For details, take a look at . If in doubt, say N. config X86_POWERNOW_K6 tristate "AMD Mobile K6-2/K6-3 PowerNow!" select CPU_FREQ_TABLE depends on X86_32 help This adds the CPUFreq driver for mobile AMD K6-2+ and mobile AMD K6-3+ processors. For details, take a look at . If in doubt, say N. config X86_POWERNOW_K7 tristate "AMD Mobile Athlon/Duron PowerNow!" select CPU_FREQ_TABLE depends on X86_32 help This adds the CPUFreq driver for mobile AMD K7 mobile processors. For details, take a look at . If in doubt, say N. config X86_POWERNOW_K7_ACPI bool depends on X86_POWERNOW_K7 && ACPI_PROCESSOR depends on !(X86_POWERNOW_K7 = y && ACPI_PROCESSOR = m) depends on X86_32 default y config X86_POWERNOW_K8 tristate "AMD Opteron/Athlon64 PowerNow!" select CPU_FREQ_TABLE depends on ACPI && ACPI_PROCESSOR help This adds the CPUFreq driver for K8/K10 Opteron/Athlon64 processors. To compile this driver as a module, choose M here: the module will be called powernow-k8. For details, take a look at . config X86_GX_SUSPMOD tristate "Cyrix MediaGX/NatSemi Geode Suspend Modulation" depends on X86_32 && PCI help This add the CPUFreq driver for NatSemi Geode processors which support suspend modulation. For details, take a look at . If in doubt, say N. config X86_SPEEDSTEP_CENTRINO tristate "Intel Enhanced SpeedStep (deprecated)" select CPU_FREQ_TABLE select X86_SPEEDSTEP_CENTRINO_TABLE if X86_32 depends on X86_32 || (X86_64 && ACPI_PROCESSOR) help This is deprecated and this functionality is now merged into acpi_cpufreq (X86_ACPI_CPUFREQ). Use that driver instead of speedstep_centrino. This adds the CPUFreq driver for Enhanced SpeedStep enabled mobile CPUs. This means Intel Pentium M (Centrino) CPUs or 64bit enabled Intel Xeons. To compile this driver as a module, choose M here: the module will be called speedstep-centrino. For details, take a look at . If in doubt, say N. config X86_SPEEDSTEP_CENTRINO_TABLE bool "Built-in tables for Banias CPUs" depends on X86_32 && X86_SPEEDSTEP_CENTRINO default y help Use built-in tables for Banias CPUs if ACPI encoding is not available. If in doubt, say N. config X86_SPEEDSTEP_ICH tristate "Intel Speedstep on ICH-M chipsets (ioport interface)" select CPU_FREQ_TABLE depends on X86_32 help This adds the CPUFreq driver for certain mobile Intel Pentium III (Coppermine), all mobile Intel Pentium III-M (Tualatin) and all mobile Intel Pentium 4 P4-M on systems which have an Intel ICH2, ICH3 or ICH4 southbridge. For details, take a look at . If in doubt, say N. config X86_SPEEDSTEP_SMI tristate "Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)" select CPU_FREQ_TABLE depends on X86_32 && EXPERIMENTAL help This adds the CPUFreq driver for certain mobile Intel Pentium III (Coppermine), all mobile Intel Pentium III-M (Tualatin) on systems which have an Intel 440BX/ZX/MX southbridge. For details, take a look at . If in doubt, say N. config X86_P4_CLOCKMOD tristate "Intel Pentium 4 clock modulation" select CPU_FREQ_TABLE help This adds the CPUFreq driver for Intel Pentium 4 / XEON processors. When enabled it will lower CPU temperature by skipping clocks. This driver should be only used in exceptional circumstances when very low power is needed because it causes severe slowdowns and noticeable latencies. Normally Speedstep should be used instead. To compile this driver as a module, choose M here: the module will be called p4-clockmod. For details, take a look at . Unless you are absolutely sure say N. config X86_CPUFREQ_NFORCE2 tristate "nVidia nForce2 FSB changing" depends on X86_32 && EXPERIMENTAL help This adds the CPUFreq driver for FSB changing on nVidia nForce2 platforms. For details, take a look at . If in doubt, say N. config X86_LONGRUN tristate "Transmeta LongRun" depends on X86_32 help This adds the CPUFreq driver for Transmeta Crusoe and Efficeon processors which support LongRun. For details, take a look at . If in doubt, say N. config X86_LONGHAUL tristate "VIA Cyrix III Longhaul" select CPU_FREQ_TABLE depends on X86_32 && ACPI_PROCESSOR help This adds the CPUFreq driver for VIA Samuel/CyrixIII, VIA Cyrix Samuel/C3, VIA Cyrix Ezra and VIA Cyrix Ezra-T processors. For details, take a look at . If in doubt, say N. config X86_E_POWERSAVER tristate "VIA C7 Enhanced PowerSaver (DANGEROUS)" select CPU_FREQ_TABLE depends on X86_32 && EXPERIMENTAL help This adds the CPUFreq driver for VIA C7 processors. However, this driver does not have any safeguards to prevent operating the CPU out of spec and is thus considered dangerous. Please use the regular ACPI cpufreq driver, enabled by CONFIG_X86_ACPI_CPUFREQ. If in doubt, say N. comment "shared options" config X86_SPEEDSTEP_LIB tristate default (X86_SPEEDSTEP_ICH || X86_SPEEDSTEP_SMI || X86_P4_CLOCKMOD) config X86_SPEEDSTEP_RELAXED_CAP_CHECK bool "Relaxed speedstep capability checks" depends on X86_32 && (X86_SPEEDSTEP_SMI || X86_SPEEDSTEP_ICH) help Don't perform all checks for a speedstep capable system which would normally be done. Some ancient or strange systems, though speedstep capable, don't always indicate that they are speedstep capable. This option lets the probing code bypass some of those checks if the parameter "relaxed_check=1" is passed to the module. endif # CPU_FREQ endmenu config ALPHA bool default y select HAVE_AOUT select HAVE_IDE select HAVE_OPROFILE select HAVE_SYSCALL_WRAPPERS select HAVE_IRQ_WORK select HAVE_PERF_EVENTS select HAVE_DMA_ATTRS select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_PROBE select AUTO_IRQ_AFFINITY if SMP select GENERIC_IRQ_SHOW help The Alpha is a 64-bit general-purpose processor designed and marketed by the Digital Equipment Corporation of blessed memory, now Hewlett-Packard. The Alpha Linux project has a home page at . config 64BIT def_bool y config MMU bool default y config RWSEM_GENERIC_SPINLOCK bool config RWSEM_XCHGADD_ALGORITHM bool default y config ARCH_HAS_ILOG2_U32 bool default n config ARCH_HAS_ILOG2_U64 bool default n config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_CALIBRATE_DELAY bool default y config GENERIC_CMOS_UPDATE def_bool y config ZONE_DMA bool default y config ARCH_DMA_ADDR_T_64BIT def_bool y config NEED_DMA_MAP_STATE def_bool y config NEED_SG_DMA_LENGTH def_bool y config GENERIC_ISA_DMA bool default y config GENERIC_IOMAP bool default n source "init/Kconfig" source "kernel/Kconfig.freezer" menu "System setup" choice prompt "Alpha system type" default ALPHA_GENERIC ---help--- This is the system type of your hardware. A "generic" kernel will run on any supported Alpha system. However, if you configure a kernel for your specific system, it will be faster and smaller. To find out what type of Alpha system you have, you may want to check out the Linux/Alpha FAQ, accessible on the WWW from . In summary: Alcor/Alpha-XLT AS 600, AS 500, XL-300, XL-366 Alpha-XL XL-233, XL-266 AlphaBook1 Alpha laptop Avanti AS 200, AS 205, AS 250, AS 255, AS 300, AS 400 Cabriolet AlphaPC64, AlphaPCI64 DP264 DP264 / DS20 / ES40 / DS10 / DS10L EB164 EB164 21164 evaluation board EB64+ EB64+ 21064 evaluation board EB66 EB66 21066 evaluation board EB66+ EB66+ 21066 evaluation board Jensen DECpc 150, DEC 2000 models 300, 500 LX164 AlphaPC164-LX Lynx AS 2100A Miata Personal Workstation 433/500/600 a/au Marvel AlphaServer ES47 / ES80 / GS1280 Mikasa AS 1000 Noname AXPpci33, UDB (Multia) Noritake AS 1000A, AS 600A, AS 800 PC164 AlphaPC164 Rawhide AS 1200, AS 4000, AS 4100 Ruffian RPX164-2, AlphaPC164-UX, AlphaPC164-BX SX164 AlphaPC164-SX Sable AS 2000, AS 2100 Shark DS 20L Takara Takara (OEM) Titan AlphaServer ES45 / DS25 / DS15 Wildfire AlphaServer GS 40/80/160/320 If you don't know what to do, choose "generic". config ALPHA_GENERIC bool "Generic" help A generic kernel will run on all supported Alpha hardware. config ALPHA_ALCOR bool "Alcor/Alpha-XLT" help For systems using the Digital ALCOR chipset: 5 chips (4, 64-bit data slices (Data Switch, DSW) - 208-pin PQFP and 1 control (Control, I/O Address, CIA) - a 383 pin plastic PGA). It provides a DRAM controller (256-bit memory bus) and a PCI interface. It also does all the work required to support an external Bcache and to maintain memory coherence when a PCI device DMAs into (or out of) memory. config ALPHA_XL bool "Alpha-XL" help XL-233 and XL-266-based Alpha systems. config ALPHA_BOOK1 bool "AlphaBook1" help Dec AlphaBook1/Burns Alpha-based laptops. config ALPHA_AVANTI_CH bool "Avanti" config ALPHA_CABRIOLET bool "Cabriolet" help Cabriolet AlphaPC64, AlphaPCI64 systems. Derived from EB64+ but now baby-AT with Flash boot ROM, no on-board SCSI or Ethernet. 3 ISA slots, 4 PCI slots (one pair are on a shared slot), uses plug-in Bcache SIMMs. Requires power supply with 3.3V output. config ALPHA_DP264 bool "DP264" help Various 21264 systems with the tsunami core logic chipset. API Networks: 264DP, UP2000(+), CS20; Compaq: DS10(E,L), XP900, XP1000, DS20(E), ES40. config ALPHA_EB164 bool "EB164" help EB164 21164 evaluation board from DEC. Uses 21164 and ALCOR. Has ISA and PCI expansion (3 ISA slots, 2 64-bit PCI slots (one is shared with an ISA slot) and 2 32-bit PCI slots. Uses plus-in Bcache SIMMs. I/O sub-system provides SuperI/O (2S, 1P, FD), KBD, MOUSE (PS2 style), RTC/NVRAM. Boot ROM is Flash. PC-AT-sized motherboard. Requires power supply with 3.3V output. config ALPHA_EB64P_CH bool "EB64+" config ALPHA_EB66 bool "EB66" help A Digital DS group board. Uses 21066 or 21066A. I/O sub-system is identical to EB64+. Baby PC-AT size. Runs from standard PC power supply. The EB66 schematic was published as a marketing poster advertising the 21066 as "the first microprocessor in the world with embedded PCI". config ALPHA_EB66P bool "EB66+" help Later variant of the EB66 board. config ALPHA_EIGER bool "Eiger" help Apparently an obscure OEM single-board computer based on the Typhoon/Tsunami chipset family. Information on it is scanty. config ALPHA_JENSEN bool "Jensen" help DEC PC 150 AXP (aka Jensen): This is a very old Digital system - one of the first-generation Alpha systems. A number of these systems seem to be available on the second- hand market. The Jensen is a floor-standing tower system which originally used a 150MHz 21064 It used programmable logic to interface a 486 EISA I/O bridge to the CPU. config ALPHA_LX164 bool "LX164" help A technical overview of this board is available at . config ALPHA_LYNX bool "Lynx" help AlphaServer 2100A-based systems. config ALPHA_MARVEL bool "Marvel" help AlphaServer ES47 / ES80 / GS1280 based on EV7. config ALPHA_MIATA bool "Miata" help The Digital PersonalWorkStation (PWS 433a, 433au, 500a, 500au, 600a, or 600au). config ALPHA_MIKASA bool "Mikasa" help AlphaServer 1000-based Alpha systems. config ALPHA_NAUTILUS bool "Nautilus" help Alpha systems based on the AMD 751 & ALI 1543C chipsets. config ALPHA_NONAME_CH bool "Noname" config ALPHA_NORITAKE bool "Noritake" help AlphaServer 1000A, AlphaServer 600A, and AlphaServer 800-based systems. config ALPHA_PC164 bool "PC164" config ALPHA_P2K bool "Platform2000" config ALPHA_RAWHIDE bool "Rawhide" help AlphaServer 1200, AlphaServer 4000 and AlphaServer 4100 machines. See HOWTO at . config ALPHA_RUFFIAN bool "Ruffian" help Samsung APC164UX. There is a page on known problems and workarounds at . config ALPHA_RX164 bool "RX164" config ALPHA_SX164 bool "SX164" config ALPHA_SABLE bool "Sable" help Digital AlphaServer 2000 and 2100-based systems. config ALPHA_SHARK bool "Shark" config ALPHA_TAKARA bool "Takara" help Alpha 11164-based OEM single-board computer. config ALPHA_TITAN bool "Titan" help AlphaServer ES45/DS25 SMP based on EV68 and Titan chipset. config ALPHA_WILDFIRE bool "Wildfire" help AlphaServer GS 40/80/160/320 SMP based on the EV67 core. endchoice # clear all implied options (don't want default values for those): # Most of these machines have ISA slots; not exactly sure which don't, # and this doesn't activate hordes of code, so do it always. config ISA bool default y help Find out whether you have ISA slots on your motherboard. ISA is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are PCI, EISA, MicroChannel (MCA) or VESA. ISA is an older system, now being displaced by PCI; newer boards don't support it. If you have ISA, say Y, otherwise N. config ISA_DMA_API bool default y config PCI bool depends on !ALPHA_JENSEN default y help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. config PCI_DOMAINS bool default y config PCI_SYSCALL def_bool PCI config IOMMU_HELPER def_bool PCI config ALPHA_NONAME bool depends on ALPHA_BOOK1 || ALPHA_NONAME_CH default y help The AXPpci33 (aka NoName), is based on the EB66 (includes the Multia UDB). This design was produced by Digital's Technical OEM (TOEM) group. It uses the 21066 processor running at 166MHz or 233MHz. It is a baby-AT size, and runs from a standard PC power supply. It has 5 ISA slots and 3 PCI slots (one pair are a shared slot). There are 2 versions, with either PS/2 or large DIN connectors for the keyboard. config ALPHA_EV4 bool depends on ALPHA_JENSEN || (ALPHA_SABLE && !ALPHA_GAMMA) || ALPHA_LYNX || ALPHA_NORITAKE && !ALPHA_PRIMO || ALPHA_MIKASA && !ALPHA_PRIMO || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL || ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K default y if !ALPHA_LYNX config ALPHA_LCA bool depends on ALPHA_NONAME || ALPHA_EB66 || ALPHA_EB66P || ALPHA_P2K default y config ALPHA_APECS bool depends on !ALPHA_PRIMO && (ALPHA_NORITAKE || ALPHA_MIKASA) || ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P_CH || ALPHA_XL default y config ALPHA_EB64P bool depends on ALPHA_CABRIOLET || ALPHA_EB64P_CH default y help Uses 21064 or 21064A and APECs. Has ISA and PCI expansion (3 ISA, 2 PCI, one pair are on a shared slot). Supports 36-bit DRAM SIMs. ISA bus generated by Intel SaturnI/O PCI-ISA bridge. On-board SCSI (NCR 810 on PCI) Ethernet (Digital 21040), KBD, MOUSE (PS2 style), SuperI/O (2S, 1P, FD), RTC/NVRAM. Boot ROM is EPROM. PC-AT size. Runs from standard PC power supply. config ALPHA_EV5 bool "EV5 CPU(s) (model 5/xxx)?" if ALPHA_LYNX default y if ALPHA_RX164 || ALPHA_RAWHIDE || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_SABLE && ALPHA_GAMMA || ALPHA_NORITAKE && ALPHA_PRIMO || ALPHA_MIKASA && ALPHA_PRIMO || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR config ALPHA_EV4 bool default y if ALPHA_LYNX && !ALPHA_EV5 config ALPHA_CIA bool depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_NORITAKE && ALPHA_PRIMO || ALPHA_MIKASA && ALPHA_PRIMO || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR default y config ALPHA_EV56 bool "EV56 CPU (speed >= 366MHz)?" if ALPHA_ALCOR default y if ALPHA_RX164 || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN || ALPHA_PC164 || ALPHA_TAKARA config ALPHA_EV56 prompt "EV56 CPU (speed >= 333MHz)?" depends on ALPHA_NORITAKE || ALPHA_PRIMO config ALPHA_EV56 prompt "EV56 CPU (speed >= 400MHz)?" depends on ALPHA_RAWHIDE config ALPHA_PRIMO bool "EV5 CPU daughtercard (model 5/xxx)?" depends on ALPHA_NORITAKE || ALPHA_MIKASA help Say Y if you have an AS 1000 5/xxx or an AS 1000A 5/xxx. config ALPHA_GAMMA bool "EV5 CPU(s) (model 5/xxx)?" depends on ALPHA_SABLE help Say Y if you have an AS 2000 5/xxx or an AS 2100 5/xxx. config ALPHA_GAMMA bool depends on ALPHA_LYNX default y config ALPHA_T2 bool depends on ALPHA_SABLE || ALPHA_LYNX default y config ALPHA_PYXIS bool depends on ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_RUFFIAN default y config ALPHA_EV6 bool depends on ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER || ALPHA_MARVEL default y config ALPHA_TSUNAMI bool depends on ALPHA_SHARK || ALPHA_DP264 || ALPHA_EIGER default y config ALPHA_EV67 bool "EV67 (or later) CPU (speed > 600MHz)?" if ALPHA_DP264 || ALPHA_EIGER default y if ALPHA_NAUTILUS || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL help Is this a machine based on the EV67 core? If in doubt, select N here and the machine will be treated as an EV6. config ALPHA_EV7 bool depends on ALPHA_MARVEL default y config ALPHA_MCPCIA bool depends on ALPHA_RAWHIDE default y config ALPHA_POLARIS bool depends on ALPHA_RX164 default y config ALPHA_IRONGATE bool depends on ALPHA_NAUTILUS default y config GENERIC_HWEIGHT bool default y if !ALPHA_EV67 config ALPHA_AVANTI bool depends on ALPHA_XL || ALPHA_AVANTI_CH default y help Avanti AS 200, AS 205, AS 250, AS 255, AS 300, and AS 400-based Alphas. Info at . config ALPHA_BROKEN_IRQ_MASK bool depends on ALPHA_GENERIC || ALPHA_PC164 default y config VGA_HOSE bool depends on ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL || ALPHA_TSUNAMI default y help Support VGA on an arbitrary hose; needed for several platforms which always have multiple hoses, and whose consoles support it. config ALPHA_SRM bool "Use SRM as bootloader" if ALPHA_CABRIOLET || ALPHA_AVANTI_CH || ALPHA_EB64P || ALPHA_PC164 || ALPHA_TAKARA || ALPHA_EB164 || ALPHA_ALCOR || ALPHA_MIATA || ALPHA_LX164 || ALPHA_SX164 || ALPHA_NAUTILUS || ALPHA_NONAME default y if ALPHA_JENSEN || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_DP264 || ALPHA_RAWHIDE || ALPHA_EIGER || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_SHARK || ALPHA_MARVEL ---help--- There are two different types of booting firmware on Alphas: SRM, which is command line driven, and ARC, which uses menus and arrow keys. Details about the Linux/Alpha booting process are contained in the Linux/Alpha FAQ, accessible on the WWW from . The usual way to load Linux on an Alpha machine is to use MILO (a bootloader that lets you pass command line parameters to the kernel just like lilo does for the x86 architecture) which can be loaded either from ARC or can be installed directly as a permanent firmware replacement from floppy (which requires changing a certain jumper on the motherboard). If you want to do either of these, say N here. If MILO doesn't work on your system (true for Jensen motherboards), you can bypass it altogether and boot Linux directly from an SRM console; say Y here in order to do that. Note that you won't be able to boot from an IDE disk using SRM. If unsure, say N. config EISA bool depends on ALPHA_GENERIC || ALPHA_JENSEN || ALPHA_ALCOR || ALPHA_MIKASA || ALPHA_SABLE || ALPHA_LYNX || ALPHA_NORITAKE || ALPHA_RAWHIDE default y config ARCH_MAY_HAVE_PC_FDC def_bool y config SMP bool "Symmetric multi-processing support" depends on ALPHA_SABLE || ALPHA_LYNX || ALPHA_RAWHIDE || ALPHA_DP264 || ALPHA_WILDFIRE || ALPHA_TITAN || ALPHA_GENERIC || ALPHA_SHARK || ALPHA_MARVEL select USE_GENERIC_SMP_HELPERS ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. See also the SMP-HOWTO available at . If you don't know what to do here, say N. config HAVE_DEC_LOCK bool depends on SMP default y config NR_CPUS int "Maximum number of CPUs (2-32)" range 2 32 depends on SMP default "32" if ALPHA_GENERIC || ALPHA_MARVEL default "4" if !ALPHA_GENERIC && !ALPHA_MARVEL help MARVEL support can handle a maximum of 32 CPUs, all the others with working support have a maximum of 4 CPUs. config ARCH_DISCONTIGMEM_ENABLE bool "Discontiguous Memory Support (EXPERIMENTAL)" depends on EXPERIMENTAL help Say Y to support efficient handling of discontiguous physical memory, for architectures which are either NUMA (Non-Uniform Memory Access) or have huge holes in the physical address space for other reasons. See for more. source "mm/Kconfig" config NUMA bool "NUMA Support (EXPERIMENTAL)" depends on DISCONTIGMEM && BROKEN help Say Y to compile the kernel to support NUMA (Non-Uniform Memory Access). This option is for configuring high-end multiprocessor server machines. If in doubt, say N. config NODES_SHIFT int default "7" depends on NEED_MULTIPLE_NODES # LARGE_VMALLOC is racy, if you *really* need it then fix it first config ALPHA_LARGE_VMALLOC bool ---help--- Process creation and other aspects of virtual memory management can be streamlined if we restrict the kernel to one PGD for all vmalloc allocations. This equates to about 8GB. Under normal circumstances, this is so far and above what is needed as to be laughable. However, there are certain applications (such as benchmark-grade in-kernel web serving) that can make use of as much vmalloc space as is available. Say N unless you know you need gobs and gobs of vmalloc space. config VERBOSE_MCHECK bool "Verbose Machine Checks" config VERBOSE_MCHECK_ON int "Verbose Printing Mode (0=off, 1=on, 2=all)" depends on VERBOSE_MCHECK default 1 ---help--- This option allows the default printing mode to be set, and then possibly overridden by a boot command argument. For example, if one wanted the option of printing verbose machine checks, but wanted the default to be as if verbose machine check printing was turned off, then one would choose the printing mode to be 0. Then, upon reboot, one could add the boot command line "verbose_mcheck=1" to get the normal verbose machine check printing, or "verbose_mcheck=2" to get the maximum information available. Take the default (1) unless you want more control or more info. config HZ int default 1200 if ALPHA_RAWHIDE default 1024 source "drivers/pci/Kconfig" source "drivers/eisa/Kconfig" source "drivers/pcmcia/Kconfig" config SRM_ENV tristate "SRM environment through procfs" depends on PROC_FS ---help--- If you enable this option, a subdirectory inside /proc called /proc/srm_environment will give you access to the all important SRM environment variables (those which have a name) and also to all others (by their internal number). SRM is something like a BIOS for Alpha machines. There are some other such BIOSes, like AlphaBIOS, which this driver cannot support (hey, that's not SRM!). Despite the fact that this driver doesn't work on all Alphas (but only on those which have SRM as their firmware), it's save to build it even if your particular machine doesn't know about SRM (or if you intend to compile a generic kernel). It will simply not create those subdirectory in /proc (and give you some warning, of course). This driver is also available as a module and will be called srm_env then. source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/alpha/Kconfig.debug" # DUMMY_CONSOLE may be defined in drivers/video/console/Kconfig # but we also need it if VGA_HOSE is set config DUMMY_CONSOLE bool depends on VGA_HOSE default y source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" config M32R bool default y select HAVE_IDE select HAVE_OPROFILE select INIT_ALL_POSSIBLE select HAVE_KERNEL_GZIP select HAVE_KERNEL_BZIP2 select HAVE_KERNEL_LZMA select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_PROBE select GENERIC_IRQ_SHOW config SBUS bool config GENERIC_ISA_DMA bool default y config ZONE_DMA bool default y config NO_IOPORT def_bool y config NO_DMA def_bool y config HZ int default 100 config ARCH_USES_GETTIMEOFFSET def_bool y source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Processor type and features" choice prompt "Platform Type" default PLAT_MAPPI config PLAT_MAPPI bool "Mappi-I" help The Mappi-I is an FPGA board for SOC (System-On-a-Chip) prototyping. You can operate a Linux system on this board by using an M32R softmacro core, which is a fully-synthesizable functional model described in Verilog-HDL. The Mappi-I board was the first platform, which had been used to port and develop a Linux system for the M32R processor. Currently, the Mappi-II, an heir to the Mappi-I, is available. config PLAT_USRV bool "uServer" select PLAT_HAS_INT1ICU config PLAT_M32700UT bool "M32700UT" select PLAT_HAS_INT0ICU select PLAT_HAS_INT1ICU select PLAT_HAS_INT2ICU help The M3T-M32700UT is an evaluation board based on uT-Engine specification. This board has an M32700 (Chaos) evaluation chip. You can say Y for SMP, because the M32700 is a single chip multiprocessor. config PLAT_OPSPUT bool "OPSPUT" select PLAT_HAS_INT0ICU select PLAT_HAS_INT1ICU select PLAT_HAS_INT2ICU help The OPSPUT is an evaluation board based on uT-Engine specification. This board has a OPSP-REP chip. config PLAT_OAKS32R bool "OAKS32R" help The OAKS32R is a tiny, inexpensive evaluation board. Please note that if you say Y here and choose chip "M32102", say N for MMU and select a no-MMU version kernel, otherwise a kernel with MMU support will not work, because the M32102 is a microcontroller for embedded systems and it has no MMU. config PLAT_MAPPI2 bool "Mappi-II(M3A-ZA36/M3A-ZA52)" config PLAT_MAPPI3 bool "Mappi-III(M3A-2170)" config PLAT_M32104UT bool "M32104UT" select PLAT_HAS_INT1ICU help The M3T-M32104UT is an reference board based on uT-Engine specification. This board has a M32104 chip. endchoice choice prompt "Processor family" default CHIP_M32700 config CHIP_M32700 bool "M32700 (Chaos)" config CHIP_M32102 bool "M32102" config CHIP_M32104 bool "M32104" depends on PLAT_M32104UT config CHIP_VDEC2 bool "VDEC2" config CHIP_OPSP bool "OPSP" endchoice config MMU bool "Support for memory management hardware" depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP default y config TLB_ENTRIES int "TLB Entries" depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP default 32 if CHIP_M32700 || CHIP_OPSP default 16 if CHIP_VDEC2 config ISA_M32R bool depends on CHIP_M32102 || CHIP_M32104 default y config ISA_M32R2 bool depends on CHIP_M32700 || CHIP_VDEC2 || CHIP_OPSP default y config ISA_DSP_LEVEL2 bool depends on CHIP_M32700 || CHIP_OPSP default y config ISA_DUAL_ISSUE bool depends on CHIP_M32700 || CHIP_OPSP default y config PLAT_HAS_INT0ICU bool default n config PLAT_HAS_INT1ICU bool default n config PLAT_HAS_INT2ICU bool default n config BUS_CLOCK int "Bus Clock [Hz] (integer)" default "70000000" if PLAT_MAPPI default "25000000" if PLAT_USRV default "50000000" if PLAT_MAPPI3 default "50000000" if PLAT_M32700UT default "50000000" if PLAT_OPSPUT default "54000000" if PLAT_M32104UT default "33333333" if PLAT_OAKS32R default "20000000" if PLAT_MAPPI2 config TIMER_DIVIDE int "Timer divider (integer)" default "128" config CPU_LITTLE_ENDIAN bool "Generate little endian code" default n config MEMORY_START hex "Physical memory start address (hex)" default "08000000" if PLAT_MAPPI || PLAT_MAPPI2 || PLAT_MAPPI3 default "08000000" if PLAT_USRV default "08000000" if PLAT_M32700UT default "08000000" if PLAT_OPSPUT default "04000000" if PLAT_M32104UT default "01000000" if PLAT_OAKS32R config MEMORY_SIZE hex "Physical memory size (hex)" default "08000000" if PLAT_MAPPI3 default "04000000" if PLAT_MAPPI || PLAT_MAPPI2 default "02000000" if PLAT_USRV default "01000000" if PLAT_M32700UT default "01000000" if PLAT_OPSPUT default "01000000" if PLAT_M32104UT default "00800000" if PLAT_OAKS32R config ARCH_DISCONTIGMEM_ENABLE bool "Internal RAM Support" depends on CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104 default y source "mm/Kconfig" config IRAM_START hex "Internal memory start address (hex)" default "00f00000" if !CHIP_M32104 default "00700000" if CHIP_M32104 depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM config IRAM_SIZE hex "Internal memory size (hex)" depends on (CHIP_M32700 || CHIP_M32102 || CHIP_VDEC2 || CHIP_OPSP || CHIP_M32104) && DISCONTIGMEM default "00080000" if CHIP_M32700 default "00010000" if CHIP_M32102 || CHIP_OPSP || CHIP_M32104 default "00008000" if CHIP_VDEC2 # # Define implied options from the CPU selection here # config GENERIC_LOCKBREAK bool default y depends on SMP && PREEMPT config RWSEM_GENERIC_SPINLOCK bool depends on M32R default y config RWSEM_XCHGADD_ALGORITHM bool default n config ARCH_HAS_ILOG2_U32 bool default n config ARCH_HAS_ILOG2_U64 bool default n config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_FIND_BIT_LE bool default y config GENERIC_HWEIGHT bool default y config GENERIC_CALIBRATE_DELAY bool default y config SCHED_OMIT_FRAME_POINTER bool default y config PREEMPT bool "Preemptible Kernel" help This option reduces the latency of the kernel when reacting to real-time or interactive events by allowing a low priority process to be preempted even if it is in kernel mode executing a system call. This allows applications to run more reliably even when the system is under load. Say Y here if you are building a kernel for a desktop, embedded or real-time system. Say N if you are unsure. config SMP bool "Symmetric multi-processing support" select USE_GENERIC_SMP_HELPERS ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. The "Advanced Power Management" code will be disabled if you say Y here. See also the SMP-HOWTO available at . If you don't know what to do here, say N. config CHIP_M32700_TS1 bool "Workaround code for the M32700 TS1 chip's bug" depends on (CHIP_M32700 && SMP) default n config NR_CPUS int "Maximum number of CPUs (2-32)" range 2 32 depends on SMP default "2" help This allows you to specify the maximum number of CPUs which this kernel will support. The maximum supported value is 32 and the minimum value which makes sense is 2. This is purely to save memory - each supported CPU adds approximately eight kilobytes to the kernel image. # Common NUMA Features config NUMA bool "Numa Memory Allocation Support" depends on SMP && BROKEN default n config NODES_SHIFT int default "1" depends on NEED_MULTIPLE_NODES # turning this on wastes a bunch of space. # Summit needs it only when NUMA is on config BOOT_IOREMAP bool depends on NUMA default n endmenu menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)" config PCI bool "PCI support" depends on BROKEN default n help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. choice prompt "PCI access mode" depends on PCI default PCI_GOANY config PCI_GOBIOS bool "BIOS" ---help--- On PCI systems, the BIOS can be used to detect the PCI devices and determine their configuration. However, some old PCI motherboards have BIOS bugs and may crash if this is done. Also, some embedded PCI-based systems don't have any BIOS at all. Linux can also try to detect the PCI hardware directly without using the BIOS. With this option, you can specify how Linux should detect the PCI devices. If you choose "BIOS", the BIOS will be used, if you choose "Direct", the BIOS won't be used, and if you choose "Any", the kernel will try the direct access method and falls back to the BIOS if that doesn't work. If unsure, go with the default, which is "Any". config PCI_GODIRECT bool "Direct" config PCI_GOANY bool "Any" endchoice config PCI_BIOS bool depends on PCI && (PCI_GOBIOS || PCI_GOANY) default y config PCI_DIRECT bool depends on PCI && (PCI_GODIRECT || PCI_GOANY) default y source "drivers/pci/Kconfig" config ISA bool source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" endmenu menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/m32r/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" config MICROBLAZE def_bool y select HAVE_MEMBLOCK select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_TRACE_MCOUNT_TEST select HAVE_FUNCTION_GRAPH_TRACER select HAVE_DYNAMIC_FTRACE select HAVE_FTRACE_MCOUNT_RECORD select ARCH_WANT_OPTIONAL_GPIOLIB select HAVE_OPROFILE select HAVE_ARCH_KGDB select HAVE_DMA_ATTRS select HAVE_DMA_API_DEBUG select TRACING_SUPPORT select OF select OF_EARLY_FLATTREE select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_PROBE select GENERIC_IRQ_SHOW config SWAP def_bool n config RWSEM_GENERIC_SPINLOCK def_bool y config RWSEM_XCHGADD_ALGORITHM bool config ARCH_HAS_ILOG2_U32 def_bool n config ARCH_HAS_ILOG2_U64 def_bool n config GENERIC_FIND_NEXT_BIT def_bool y config GENERIC_FIND_BIT_LE def_bool y config GENERIC_HWEIGHT def_bool y config GENERIC_CALIBRATE_DELAY def_bool y config GENERIC_TIME_VSYSCALL def_bool n config GENERIC_CLOCKEVENTS def_bool y config GENERIC_GPIO def_bool y config GENERIC_CSUM def_bool y config STACKTRACE_SUPPORT def_bool y config LOCKDEP_SUPPORT def_bool y config HAVE_LATENCYTOP_SUPPORT def_bool y source "init/Kconfig" source "kernel/Kconfig.freezer" source "arch/microblaze/platform/Kconfig.platform" menu "Processor type and features" source "kernel/time/Kconfig" source "kernel/Kconfig.preempt" source "kernel/Kconfig.hz" config MMU bool "MMU support" default n config NO_MMU bool depends on !MMU default y comment "Boot options" config CMDLINE_BOOL bool "Default bootloader kernel arguments" config CMDLINE string "Default kernel command string" depends on CMDLINE_BOOL default "console=ttyUL0,115200" help On some architectures there is currently no way for the boot loader to pass arguments to the kernel. For these architectures, you should supply some command-line options at build time by entering them here. config CMDLINE_FORCE bool "Force default kernel command string" depends on CMDLINE_BOOL default n help Set this to have arguments from the default kernel command string override those passed by the boot loader. config SECCOMP bool "Enable seccomp to safely compute untrusted bytecode" depends on PROC_FS default y help This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via /proc//seccomp, it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. If unsure, say Y. Only embedded should say N here. endmenu menu "Advanced setup" config ADVANCED_OPTIONS bool "Prompt for advanced kernel configuration options" help This option will enable prompting for a variety of advanced kernel configuration options. These options can cause the kernel to not work if they are set incorrectly, but can be used to optimize certain aspects of kernel memory management. Unless you know what you are doing, say N here. comment "Default settings for advanced configuration options are used" depends on !ADVANCED_OPTIONS config XILINX_UNCACHED_SHADOW bool "Are you using uncached shadow for RAM ?" depends on ADVANCED_OPTIONS && !MMU default n help This is needed to be able to allocate uncachable memory regions. The feature requires the design to define the RAM memory controller window to be twice as large as the actual physical memory. config HIGHMEM_START_BOOL bool "Set high memory pool address" depends on ADVANCED_OPTIONS && HIGHMEM help This option allows you to set the base address of the kernel virtual area used to map high memory pages. This can be useful in optimizing the layout of kernel virtual memory. Say N here unless you know what you are doing. config HIGHMEM_START hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL depends on MMU default "0xfe000000" config LOWMEM_SIZE_BOOL bool "Set maximum low memory" depends on ADVANCED_OPTIONS && MMU help This option allows you to set the maximum amount of memory which will be used as "low memory", that is, memory which the kernel can access directly, without having to set up a kernel virtual mapping. This can be useful in optimizing the layout of kernel virtual memory. Say N here unless you know what you are doing. config LOWMEM_SIZE hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL default "0x30000000" config MANUAL_RESET_VECTOR hex "Microblaze reset vector address setup" default "0x0" help Set this option to have the kernel override the CPU Reset vector. If zero, no change will be made to the MicroBlaze reset vector at address 0x0. If non-zero, a jump instruction to this address, will be written to the reset vector at address 0x0. If you are unsure, set it to default value 0x0. config KERNEL_START_BOOL bool "Set custom kernel base address" depends on ADVANCED_OPTIONS help This option allows you to set the kernel virtual address at which the kernel will map low memory (the kernel image will be linked at this address). This can be useful in optimizing the virtual memory layout of the system. Say N here unless you know what you are doing. config KERNEL_START hex "Virtual address of kernel base" if KERNEL_START_BOOL default "0xc0000000" if MMU default KERNEL_BASE_ADDR if !MMU config TASK_SIZE_BOOL bool "Set custom user task size" depends on ADVANCED_OPTIONS && MMU help This option allows you to set the amount of virtual address space allocated to user tasks. This can be useful in optimizing the virtual memory layout of the system. Say N here unless you know what you are doing. config TASK_SIZE hex "Size of user task space" if TASK_SIZE_BOOL default "0x80000000" choice prompt "Page size" default MICROBLAZE_4K_PAGES depends on ADVANCED_OPTIONS && !MMU help Select the kernel logical page size. Increasing the page size will reduce software overhead at each page boundary, allow hardware prefetch mechanisms to be more effective, and allow larger dma transfers increasing IO efficiency and reducing overhead. However the utilization of memory will increase. For example, each cached file will using a multiple of the page size to hold its contents and the difference between the end of file and the end of page is wasted. If unsure, choose 4K_PAGES. config MICROBLAZE_4K_PAGES bool "4k page size" config MICROBLAZE_8K_PAGES bool "8k page size" config MICROBLAZE_16K_PAGES bool "16k page size" config MICROBLAZE_32K_PAGES bool "32k page size" endchoice endmenu source "mm/Kconfig" menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu menu "Bus Options" config PCI bool "PCI support" config PCI_DOMAINS def_bool PCI config PCI_SYSCALL def_bool PCI config PCI_XILINX bool "Xilinx PCI host bridge support" depends on PCI source "drivers/pci/Kconfig" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/microblaze/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" config MMU bool default y config ZONE_DMA bool default y config RWSEM_GENERIC_SPINLOCK bool default y config RWSEM_XCHGADD_ALGORITHM bool config GENERIC_CMOS_UPDATE def_bool y config ARCH_USES_GETTIMEOFFSET def_bool n config GENERIC_IOMAP bool default y config ARCH_HAS_ILOG2_U32 bool default n config ARCH_HAS_ILOG2_U64 bool default n config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_HWEIGHT bool default y config GENERIC_CALIBRATE_DELAY bool default y config NO_IOPORT def_bool y config FORCE_MAX_ZONEORDER int default 6 config CRIS bool default y select HAVE_IDE select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_SHOW config HZ int default 100 source "init/Kconfig" source "kernel/Kconfig.freezer" menu "General setup" source "fs/Kconfig.binfmt" config ETRAX_CMDLINE string "Kernel command line" default "root=/dev/mtdblock3" help Pass additional commands to the kernel. config ETRAX_WATCHDOG bool "Enable ETRAX watchdog" help Enable the built-in watchdog timer support on ETRAX based embedded network computers. config ETRAX_WATCHDOG_NICE_DOGGY bool "Disable watchdog during Oops printouts" depends on ETRAX_WATCHDOG help By enabling this you make sure that the watchdog does not bite while printing oopses. Recommended for development systems but not for production releases. config ETRAX_FAST_TIMER bool "Enable ETRAX fast timer API" help This options enables the API to a fast timer implementation using timer1 to get sub jiffie resolution timers (primarily one-shot timers). This is needed if CONFIG_ETRAX_SERIAL_FAST_TIMER is enabled. config ETRAX_KMALLOCED_MODULES bool "Enable module allocation with kmalloc" help Enable module allocation with kmalloc instead of vmalloc. config OOM_REBOOT bool "Enable reboot at out of memory" source "kernel/Kconfig.preempt" source mm/Kconfig endmenu menu "Hardware setup" choice prompt "Processor type" default ETRAX100LX config ETRAX100LX bool "ETRAX-100LX-v1" select ARCH_USES_GETTIMEOFFSET help Support version 1 of the ETRAX 100LX. config ETRAX100LX_V2 bool "ETRAX-100LX-v2" select ARCH_USES_GETTIMEOFFSET help Support version 2 of the ETRAX 100LX. config SVINTO_SIM bool "ETRAX-100LX-for-xsim-simulator" select ARCH_USES_GETTIMEOFFSET help Support the xsim ETRAX Simulator. config ETRAXFS bool "ETRAX-FS-V32" help Support CRIS V32. config CRIS_MACH_ARTPEC3 bool "ARTPEC-3" help Support Axis ARTPEC-3. endchoice config ETRAX_VCS_SIM bool "VCS Simulator" help Setup hardware to be run in the VCS simulator. config ETRAX_ARCH_V10 bool default y if ETRAX100LX || ETRAX100LX_V2 default n if !(ETRAX100LX || ETRAX100LX_V2) config ETRAX_ARCH_V32 bool default y if (ETRAXFS || CRIS_MACH_ARTPEC3) default n if !(ETRAXFS || CRIS_MACH_ARTPEC3) config ETRAX_DRAM_SIZE int "DRAM size (dec, in MB)" default "8" help Size of DRAM (decimal in MB) typically 2, 8 or 16. config ETRAX_VMEM_SIZE int "Video memory size (dec, in MB)" depends on ETRAX_ARCH_V32 && !ETRAXFS default 8 if !ETRAXFS help Size of Video accessible memory (decimal, in MB). config ETRAX_FLASH_BUSWIDTH int "Buswidth of NOR flash in bytes" default "2" help Width in bytes of the NOR Flash bus (1, 2 or 4). Is usually 2. config ETRAX_NANDFLASH_BUSWIDTH int "Buswidth of NAND flash in bytes" default "1" help Width in bytes of the NAND flash (1 or 2). config ETRAX_FLASH1_SIZE int "FLASH1 size (dec, in MB. 0 = Unknown)" default "0" choice prompt "Product debug-port" default ETRAX_DEBUG_PORT0 config ETRAX_DEBUG_PORT0 bool "Serial-0" help Choose a serial port for the ETRAX debug console. Default to port 0. config ETRAX_DEBUG_PORT1 bool "Serial-1" help Use serial port 1 for the console. config ETRAX_DEBUG_PORT2 bool "Serial-2" help Use serial port 2 for the console. config ETRAX_DEBUG_PORT3 bool "Serial-3" help Use serial port 3 for the console. config ETRAX_DEBUG_PORT_NULL bool "disabled" help Disable serial-port debugging. endchoice choice prompt "Kernel GDB port" depends on ETRAX_KGDB default ETRAX_KGDB_PORT0 help Choose a serial port for kernel debugging. NOTE: This port should not be enabled under Drivers for built-in interfaces (as it has its own initialization code) and should not be the same as the debug port. config ETRAX_KGDB_PORT0 bool "Serial-0" help Use serial port 0 for kernel debugging. config ETRAX_KGDB_PORT1 bool "Serial-1" help Use serial port 1 for kernel debugging. config ETRAX_KGDB_PORT2 bool "Serial-2" help Use serial port 2 for kernel debugging. config ETRAX_KGDB_PORT3 bool "Serial-3" help Use serial port 3 for kernel debugging. endchoice source arch/cris/arch-v10/Kconfig source arch/cris/arch-v32/Kconfig endmenu source "net/Kconfig" # bring in ETRAX built-in drivers menu "Drivers for built-in interfaces" source arch/cris/arch-v10/drivers/Kconfig source arch/cris/arch-v32/drivers/Kconfig config ETRAX_AXISFLASHMAP bool "Axis flash-map support" select MTD select MTD_CFI select MTD_CFI_AMDSTD select MTD_JEDECPROBE if ETRAX_ARCH_V32 select MTD_CHAR select MTD_BLOCK select MTD_PARTITIONS select MTD_COMPLEX_MAPPINGS help This option enables MTD mapping of flash devices. Needed to use flash memories. If unsure, say Y. config ETRAX_RTC bool "Real Time Clock support" depends on ETRAX_I2C help Enables drivers for the Real-Time Clock battery-backed chips on some products. The kernel reads the time when booting, and the date can be set using ioctl(fd, RTC_SET_TIME, &rt) with rt a rtc_time struct (see ) on the /dev/rtc device. You can check the time with cat /proc/rtc, but normal time reading should be done using libc function time and friends. choice prompt "RTC chip" depends on ETRAX_RTC default ETRAX_DS1302 config ETRAX_DS1302 depends on ETRAX_ARCH_V10 bool "DS1302" help Enables the driver for the DS1302 Real-Time Clock battery-backed chip on some products. config ETRAX_PCF8563 bool "PCF8563" help Enables the driver for the PCF8563 Real-Time Clock battery-backed chip on some products. endchoice config ETRAX_SYNCHRONOUS_SERIAL bool "Synchronous serial-port support" help Select this to enable the synchronous serial port driver. config ETRAX_SYNCHRONOUS_SERIAL_PORT0 bool "Synchronous serial port 0 enabled" depends on ETRAX_SYNCHRONOUS_SERIAL help Enabled synchronous serial port 0. config ETRAX_SYNCHRONOUS_SERIAL0_DMA bool "Enable DMA on synchronous serial port 0." depends on ETRAX_SYNCHRONOUS_SERIAL_PORT0 help A synchronous serial port can run in manual or DMA mode. Selecting this option will make it run in DMA mode. config ETRAX_SYNCHRONOUS_SERIAL_PORT1 bool "Synchronous serial port 1 enabled" depends on ETRAX_SYNCHRONOUS_SERIAL && (ETRAXFS || ETRAX_ARCH_V10) help Enabled synchronous serial port 1. config ETRAX_SYNCHRONOUS_SERIAL1_DMA bool "Enable DMA on synchronous serial port 1." depends on ETRAX_SYNCHRONOUS_SERIAL_PORT1 help A synchronous serial port can run in manual or DMA mode. Selecting this option will make it run in DMA mode. choice prompt "Network LED behavior" depends on ETRAX_ETHERNET default ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY config ETRAX_NETWORK_LED_ON_WHEN_LINK bool "LED_on_when_link" help Selecting LED_on_when_link will light the LED when there is a connection and will flash off when there is activity. Selecting LED_on_when_activity will light the LED only when there is activity. This setting will also affect the behaviour of other activity LEDs e.g. Bluetooth. config ETRAX_NETWORK_LED_ON_WHEN_ACTIVITY bool "LED_on_when_activity" help Selecting LED_on_when_link will light the LED when there is a connection and will flash off when there is activity. Selecting LED_on_when_activity will light the LED only when there is activity. This setting will also affect the behaviour of other activity LEDs e.g. Bluetooth. endchoice choice prompt "Ser0 DMA out channel" depends on ETRAX_SERIAL_PORT0 default ETRAX_SERIAL_PORT0_DMA6_OUT if ETRAX_ARCH_V32 default ETRAX_SERIAL_PORT0_NO_DMA_OUT if ETRAX_ARCH_V10 config ETRAX_SERIAL_PORT0_NO_DMA_OUT bool "Ser0 uses no DMA for output" help Do not use DMA for ser0 output. config ETRAX_SERIAL_PORT0_DMA6_OUT bool "Ser0 uses DMA6 for output" depends on ETRAXFS help Enables the DMA6 output channel for ser0 (ttyS0). If you do not enable DMA, an interrupt for each character will be used when transmitting data. Normally you want to use DMA, unless you use the DMA channel for something else. config ETRAX_SERIAL_PORT0_DMA0_OUT bool "Ser0 uses DMA0 for output" depends on CRIS_MACH_ARTPEC3 help Enables the DMA0 output channel for ser0 (ttyS0). If you do not enable DMA, an interrupt for each character will be used when transmitting data. Normally you want to use DMA, unless you use the DMA channel for something else. endchoice choice prompt "Ser0 DMA in channel " depends on ETRAX_SERIAL_PORT0 default ETRAX_SERIAL_PORT0_NO_DMA_IN if ETRAX_ARCH_V32 default ETRAX_SERIAL_PORT0_DMA7_IN if ETRAX_ARCH_V10 help What DMA channel to use for ser0. config ETRAX_SERIAL_PORT0_NO_DMA_IN bool "Ser0 uses no DMA for input" help Do not use DMA for ser0 input. config ETRAX_SERIAL_PORT0_DMA7_IN bool "Ser0 uses DMA7 for input" depends on ETRAXFS help Enables the DMA7 input channel for ser0 (ttyS0). If you do not enable DMA, an interrupt for each character will be used when receiving data. Normally you want to use DMA, unless you use the DMA channel for something else. config ETRAX_SERIAL_PORT0_DMA1_IN bool "Ser0 uses DMA1 for input" depends on CRIS_MACH_ARTPEC3 help Enables the DMA1 input channel for ser0 (ttyS0). If you do not enable DMA, an interrupt for each character will be used when receiving data. Normally you want to use DMA, unless you use the DMA channel for something else. endchoice choice prompt "Ser1 DMA in channel " depends on ETRAX_SERIAL_PORT1 default ETRAX_SERIAL_PORT1_NO_DMA_IN if ETRAX_ARCH_V32 default ETRAX_SERIAL_PORT1_DMA9_IN if ETRAX_ARCH_V10 help What DMA channel to use for ser1. config ETRAX_SERIAL_PORT1_NO_DMA_IN bool "Ser1 uses no DMA for input" help Do not use DMA for ser1 input. config ETRAX_SERIAL_PORT1_DMA5_IN bool "Ser1 uses DMA5 for input" depends on ETRAX_ARCH_V32 help Enables the DMA5 input channel for ser1 (ttyS1). If you do not enable DMA, an interrupt for each character will be used when receiving data. Normally you want this on, unless you use the DMA channel for something else. config ETRAX_SERIAL_PORT1_DMA9_IN depends on ETRAX_ARCH_V10 bool "Ser1 uses DMA9 for input" endchoice choice prompt "Ser1 DMA out channel" depends on ETRAX_SERIAL_PORT1 default ETRAX_SERIAL_PORT1_NO_DMA_OUT if ETRAX_ARCH_V32 default ETRAX_SERIAL_PORT1_DMA8_OUT if ETRAX_ARCH_V10 help What DMA channel to use for ser1. config ETRAX_SERIAL_PORT1_NO_DMA_OUT bool "Ser1 uses no DMA for output" help Do not use DMA for ser1 output. config ETRAX_SERIAL_PORT1_DMA8_OUT depends on ETRAX_ARCH_V10 bool "Ser1 uses DMA8 for output" config ETRAX_SERIAL_PORT1_DMA4_OUT depends on ETRAX_ARCH_V32 bool "Ser1 uses DMA4 for output" help Enables the DMA4 output channel for ser1 (ttyS1). If you do not enable DMA, an interrupt for each character will be used when transmitting data. Normally you want this on, unless you use the DMA channel for something else. endchoice choice prompt "Ser2 DMA out channel" depends on ETRAX_SERIAL_PORT2 default ETRAX_SERIAL_PORT2_NO_DMA_OUT if ETRAX_ARCH_V32 default ETRAX_SERIAL_PORT2_DMA2_OUT if ETRAX_ARCH_V10 config ETRAX_SERIAL_PORT2_NO_DMA_OUT bool "Ser2 uses no DMA for output" help Do not use DMA for ser2 output. config ETRAX_SERIAL_PORT2_DMA2_OUT bool "Ser2 uses DMA2 for output" depends on ETRAXFS || ETRAX_ARCH_V10 help Enables the DMA2 output channel for ser2 (ttyS2). If you do not enable DMA, an interrupt for each character will be used when transmitting data. Normally you want to use DMA, unless you use the DMA channel for something else. config ETRAX_SERIAL_PORT2_DMA6_OUT bool "Ser2 uses DMA6 for output" depends on CRIS_MACH_ARTPEC3 help Enables the DMA6 output channel for ser2 (ttyS2). If you do not enable DMA, an interrupt for each character will be used when transmitting data. Normally you want to use DMA, unless you use the DMA channel for something else. endchoice choice prompt "Ser2 DMA in channel" depends on ETRAX_SERIAL_PORT2 default ETRAX_SERIAL_PORT2_NO_DMA_IN if ETRAX_ARCH_V32 default ETRAX_SERIAL_PORT2_DMA3_IN if ETRAX_ARCH_V10 help What DMA channel to use for ser2. config ETRAX_SERIAL_PORT2_NO_DMA_IN bool "Ser2 uses no DMA for input" help Do not use DMA for ser2 input. config ETRAX_SERIAL_PORT2_DMA3_IN bool "Ser2 uses DMA3 for input" depends on ETRAXFS || ETRAX_ARCH_V10 help Enables the DMA3 input channel for ser2 (ttyS2). If you do not enable DMA, an interrupt for each character will be used when receiving data. Normally you want to use DMA, unless you use the DMA channel for something else. config ETRAX_SERIAL_PORT2_DMA7_IN bool "Ser2 uses DMA7 for input" depends on CRIS_MACH_ARTPEC3 help Enables the DMA7 input channel for ser2 (ttyS2). If you do not enable DMA, an interrupt for each character will be used when receiving data. Normally you want to use DMA, unless you use the DMA channel for something else. endchoice choice prompt "Ser3 DMA in channel" depends on ETRAX_SERIAL_PORT3 default ETRAX_SERIAL_PORT3_NO_DMA_IN if ETRAX_ARCH_V32 default ETRAX_SERIAL_PORT3_DMA5_IN if ETRAX_ARCH_V10 help What DMA channel to use for ser3. config ETRAX_SERIAL_PORT3_NO_DMA_IN bool "Ser3 uses no DMA for input" help Do not use DMA for ser3 input. config ETRAX_SERIAL_PORT3_DMA5_IN depends on ETRAX_ARCH_V10 bool "DMA 5" config ETRAX_SERIAL_PORT3_DMA9_IN bool "Ser3 uses DMA9 for input" depends on ETRAXFS help Enables the DMA9 input channel for ser3 (ttyS3). If you do not enable DMA, an interrupt for each character will be used when receiving data. Normally you want to use DMA, unless you use the DMA channel for something else. config ETRAX_SERIAL_PORT3_DMA3_IN bool "Ser3 uses DMA3 for input" depends on CRIS_MACH_ARTPEC3 help Enables the DMA3 input channel for ser3 (ttyS3). If you do not enable DMA, an interrupt for each character will be used when receiving data. Normally you want to use DMA, unless you use the DMA channel for something else. endchoice choice prompt "Ser3 DMA out channel" depends on ETRAX_SERIAL_PORT3 default ETRAX_SERIAL_PORT3_NO_DMA_OUT if ETRAX_ARCH_V32 default ETRAX_SERIAL_PORT3_DMA4_OUT if ETRAX_ARCH_V10 config ETRAX_SERIAL_PORT3_NO_DMA_OUT bool "Ser3 uses no DMA for output" help Do not use DMA for ser3 output. config ETRAX_SERIAL_PORT3_DMA4_OUT depends on ETRAX_ARCH_V10 bool "DMA 4" config ETRAX_SERIAL_PORT3_DMA8_OUT bool "Ser3 uses DMA8 for output" depends on ETRAXFS help Enables the DMA8 output channel for ser3 (ttyS3). If you do not enable DMA, an interrupt for each character will be used when transmitting data. Normally you want to use DMA, unless you use the DMA channel for something else. config ETRAX_SERIAL_PORT3_DMA2_OUT bool "Ser3 uses DMA2 for output" depends on CRIS_MACH_ARTPEC3 help Enables the DMA2 output channel for ser3 (ttyS3). If you do not enable DMA, an interrupt for each character will be used when transmitting data. Normally you want to use DMA, unless you use the DMA channel for something else. endchoice endmenu source "drivers/base/Kconfig" # standard linux drivers source "drivers/mtd/Kconfig" source "drivers/parport/Kconfig" source "drivers/pnp/Kconfig" source "drivers/block/Kconfig" source "drivers/ide/Kconfig" source "drivers/net/Kconfig" source "drivers/i2c/Kconfig" source "drivers/rtc/Kconfig" # # input before char - char/joystick depends on it. As does USB. # source "drivers/input/Kconfig" source "drivers/char/Kconfig" source "fs/Kconfig" source "drivers/usb/Kconfig" source "drivers/uwb/Kconfig" source "drivers/staging/Kconfig" source "arch/cris/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" if ETRAX_ARCH_V10 menu "CRIS v10 options" # ETRAX 100LX v1 has a MMU "feature" requiring a low mapping config CRIS_LOW_MAP bool depends on ETRAX_ARCH_V10 && ETRAX100LX default y config ETRAX_DRAM_VIRTUAL_BASE hex depends on ETRAX_ARCH_V10 default "c0000000" if !ETRAX100LX default "60000000" if ETRAX100LX choice prompt "Product LED port" depends on ETRAX_ARCH_V10 default ETRAX_PA_LEDS config ETRAX_PA_LEDS bool "Port-PA-LEDs" help The ETRAX network driver is responsible for flashing LED's when packets arrive and are sent. It uses macros defined in , and those macros are defined after what YOU choose in this option. The actual bits used are configured separately. Select this if the LEDs are on port PA. Some products put the leds on PB or a memory-mapped latch (CSP0) instead. config ETRAX_PB_LEDS bool "Port-PB-LEDs" help The ETRAX network driver is responsible for flashing LED's when packets arrive and are sent. It uses macros defined in , and those macros are defined after what YOU choose in this option. The actual bits used are configured separately. Select this if the LEDs are on port PB. Some products put the leds on PA or a memory-mapped latch (CSP0) instead. config ETRAX_CSP0_LEDS bool "Port-CSP0-LEDs" help The ETRAX network driver is responsible for flashing LED's when packets arrive and are sent. It uses macros defined in , and those macros are defined after what YOU choose in this option. The actual bits used are configured separately. Select this if the LEDs are on a memory-mapped latch using chip select CSP0, this is mapped at 0x90000000. Some products put the leds on PA or PB instead. config ETRAX_NO_LEDS bool "None" help Select this option if you don't have any LED at all. endchoice config ETRAX_LED1G int "First green LED bit" depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS default "2" help Bit to use for the first green LED. Most Axis products use bit 2 here. config ETRAX_LED1R int "First red LED bit" depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS default "3" help Bit to use for the first red LED. Most Axis products use bit 3 here. For products with only one controllable LED, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED2G int "Second green LED bit" depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS default "4" help Bit to use for the second green LED. The "Active" LED. Most Axis products use bit 4 here. For products with only one controllable LED, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED2R int "Second red LED bit" depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS default "5" help Bit to use for the second red LED. Most Axis products use bit 5 here. For products with only one controllable LED, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED3G int "Third green LED bit" depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS default "2" help Bit to use for the third green LED. The "Drive" LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED3R int "Third red LED bit" depends on ETRAX_ARCH_V10 && !ETRAX_NO_LEDS default "2" help Bit to use for the third red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED4R int "Fourth red LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the fourth red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED4G int "Fourth green LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the fourth green LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED5R int "Fifth red LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the fifth red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED5G int "Fifth green LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the fifth green LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED6R int "Sixth red LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the sixth red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED6G int "Sixth green LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the sixth green LED. The "Drive" LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED7R int "Seventh red LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the seventh red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED7G int "Seventh green LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the seventh green LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED8Y int "Eighth yellow LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the eighth yellow LED. The "Drive" LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED9Y int "Ninth yellow LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the ninth yellow LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED10Y int "Tenth yellow LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the tenth yellow LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED11Y int "Eleventh yellow LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the eleventh yellow LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). config ETRAX_LED12R int "Twelfth red LED bit" depends on ETRAX_CSP0_LEDS default "2" help Bit to use for the twelfth red LED. For products with only one or two controllable LEDs, set this to same as CONFIG_ETRAX_LED1G (normally 2). choice prompt "Product rescue-port" depends on ETRAX_ARCH_V10 default ETRAX_RESCUE_SER0 config ETRAX_RESCUE_SER0 bool "Serial-0" help Select one of the four serial ports as a rescue port. The default is port 0. config ETRAX_RESCUE_SER1 bool "Serial-1" help Use serial port 1 as the rescue port. config ETRAX_RESCUE_SER2 bool "Serial-2" help Use serial port 2 as the rescue port. config ETRAX_RESCUE_SER3 bool "Serial-3" help Use serial port 3 as the rescue port. endchoice config ETRAX_DEF_R_WAITSTATES hex "R_WAITSTATES" depends on ETRAX_ARCH_V10 default "95a6" help Waitstates for SRAM, Flash and peripherals (not DRAM). 95f8 is a good choice for most Axis products... config ETRAX_DEF_R_BUS_CONFIG hex "R_BUS_CONFIG" depends on ETRAX_ARCH_V10 default "104" help Assorted bits controlling write mode, DMA burst length etc. 104 is a good choice for most Axis products... config ETRAX_SDRAM bool "SDRAM support" depends on ETRAX_ARCH_V10 help Enable this if you use SDRAM chips and configure R_SDRAM_CONFIG and R_SDRAM_TIMING as well. config ETRAX_DEF_R_DRAM_CONFIG hex "R_DRAM_CONFIG" depends on ETRAX_ARCH_V10 && !ETRAX_SDRAM default "1a200040" help The R_DRAM_CONFIG register specifies everything on how the DRAM chips in the system are connected to the ETRAX CPU. This is different depending on the manufacturer, chip type and number of chips. So this value often needs to be different for each Axis product. config ETRAX_DEF_R_DRAM_TIMING hex "R_DRAM_TIMING" depends on ETRAX_ARCH_V10 && !ETRAX_SDRAM default "5611" help Different DRAM chips have different speeds. Current Axis products use 50ns DRAM chips which can use the timing: 5611. config ETRAX_DEF_R_SDRAM_CONFIG hex "R_SDRAM_CONFIG" depends on ETRAX_ARCH_V10 && ETRAX_SDRAM default "d2fa7878" help The R_SDRAM_CONFIG register specifies everything on how the SDRAM chips in the system are connected to the ETRAX CPU. This is different depending on the manufacturer, chip type and number of chips. So this value often needs to be different for each Axis product. config ETRAX_DEF_R_SDRAM_TIMING hex "R_SDRAM_TIMING" depends on ETRAX_ARCH_V10 && ETRAX_SDRAM default "80004801" help Different SDRAM chips have different timing. config ETRAX_DEF_R_PORT_PA_DIR hex "R_PORT_PA_DIR" depends on ETRAX_ARCH_V10 default "1c" help Configures the direction of general port A bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_R_PORT_PA_DATA hex "R_PORT_PA_DATA" depends on ETRAX_ARCH_V10 default "00" help Configures the initial data for the general port A bits. Most products should use 00 here. config ETRAX_DEF_R_PORT_PB_CONFIG hex "R_PORT_PB_CONFIG" depends on ETRAX_ARCH_V10 default "00" help Configures the type of the general port B bits. 1 is chip select, 0 is port. Most products should use 00 here. config ETRAX_DEF_R_PORT_PB_DIR hex "R_PORT_PB_DIR" depends on ETRAX_ARCH_V10 default "00" help Configures the direction of general port B bits. 1 is out, 0 is in. This is often totally different depending on the product used. Bits 0 and 1 on port PB are usually used for I2C communication, but the kernel I2C driver sets the appropriate directions itself so you don't need to take that into consideration when setting this option. If you don't know what to use, it is always safe to put all as inputs. config ETRAX_DEF_R_PORT_PB_DATA hex "R_PORT_PB_DATA" depends on ETRAX_ARCH_V10 default "ff" help Configures the initial data for the general port A bits. Most products should use FF here. config ETRAX_SOFT_SHUTDOWN bool "Software Shutdown Support" depends on ETRAX_ARCH_V10 help Enable this if ETRAX is used with a power-supply that can be turned off and on with PS_ON signal. Gives the possibility to detect powerbutton and then do a power off after unmounting disks. config ETRAX_SHUTDOWN_BIT int "Shutdown bit on port CSP0" depends on ETRAX_SOFT_SHUTDOWN default "12" help Configure what pin on CSPO-port that is used for controlling power supply. config ETRAX_POWERBUTTON_BIT int "Power button bit on port G" depends on ETRAX_SOFT_SHUTDOWN default "25" help Configure where power button is connected. endmenu endif if ETRAX_ARCH_V10 config ETRAX_ETHERNET bool "Ethernet support" depends on ETRAX_ARCH_V10 select NET_ETHERNET select MII help This option enables the ETRAX 100LX built-in 10/100Mbit Ethernet controller. config ETRAX_SERIAL bool "Serial-port support" depends on ETRAX_ARCH_V10 help Enables the ETRAX 100 serial driver for ser0 (ttyS0) You probably want this enabled. config ETRAX_SERIAL_FAST_TIMER bool "Use fast timers for serial DMA flush (experimental)" depends on ETRAX_SERIAL help Select this to have the serial DMAs flushed at a higher rate than normally, possible by using the fast timer API, the timeout is approx. 4 character times. If unsure, say N. config ETRAX_SERIAL_FLUSH_DMA_FAST bool "Fast serial port DMA flush" depends on ETRAX_SERIAL && !ETRAX_SERIAL_FAST_TIMER help Select this to have the serial DMAs flushed at a higher rate than normally possible through a fast timer interrupt (currently at 15360 Hz). If unsure, say N. config ETRAX_SERIAL_RX_TIMEOUT_TICKS int "Receive flush timeout (ticks) " depends on ETRAX_SERIAL && !ETRAX_SERIAL_FAST_TIMER && !ETRAX_SERIAL_FLUSH_DMA_FAST default "5" help Number of timer ticks between flush of receive fifo (1 tick = 10ms). Try 0-3 for low latency applications. Approx 5 for high load applications (e.g. PPP). Maybe this should be more adaptive some day... config ETRAX_SERIAL_PORT0 bool "Serial port 0 enabled" depends on ETRAX_SERIAL help Enables the ETRAX 100 serial driver for ser0 (ttyS0) Normally you want this on, unless you use external DMA 1 that uses the same DMA channels. choice prompt "Ser0 DTR, RI, DSR and CD assignment" depends on ETRAX_SERIAL_PORT0 default ETRAX_SER0_DTR_RI_DSR_CD_ON_NONE config ETRAX_SER0_DTR_RI_DSR_CD_ON_NONE bool "No_DTR_RI_DSR_CD" config ETRAX_SER0_DTR_RI_DSR_CD_ON_PA bool "DTR_RI_DSR_CD_on_PA" config ETRAX_SER0_DTR_RI_DSR_CD_ON_PB bool "DTR_RI_DSR_CD_on_PB" help Enables the status and control signals DTR, RI, DSR and CD on PB for ser0. config ETRAX_SER0_DTR_RI_DSR_CD_MIXED bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB" endchoice config ETRAX_SER0_DTR_ON_PA_BIT int "Ser0 DTR on PA bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT0 default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED default "4" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED config ETRAX_SER0_RI_ON_PA_BIT int "Ser0 RI on PA bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT0 default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED default "5" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED config ETRAX_SER0_DSR_ON_PA_BIT int "Ser0 DSR on PA bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT0 default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED default "6" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED config ETRAX_SER0_CD_ON_PA_BIT int "Ser0 CD on PA bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT0 default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED default "7" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PA || ETRAX_SER0_DTR_RI_DSR_CD_MIXED config ETRAX_SER0_DTR_ON_PB_BIT int "Ser0 DTR on PB bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT0 default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED default "4" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED help Specify the pin of the PB port to carry the DTR signal for serial port 0. config ETRAX_SER0_RI_ON_PB_BIT int "Ser0 RI on PB bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT0 default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED default "5" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED help Specify the pin of the PB port to carry the RI signal for serial port 0. config ETRAX_SER0_DSR_ON_PB_BIT int "Ser0 DSR on PB bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT0 default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED default "6" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED help Specify the pin of the PB port to carry the DSR signal for serial port 0. config ETRAX_SER0_CD_ON_PB_BIT int "Ser0 CD on PB bit (-1 = not used)" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT0 default "-1" if !ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER0_DTR_RI_DSR_CD_MIXED default "7" if ETRAX_SER0_DTR_RI_DSR_CD_ON_PB || ETRAX_SER0_DTR_RI_DSR_CD_MIXED help Specify the pin of the PB port to carry the CD signal for serial port 0. config ETRAX_SERIAL_PORT1 bool "Serial port 1 enabled" depends on ETRAX_SERIAL help Enables the ETRAX 100 serial driver for ser1 (ttyS1). choice prompt "Ser1 DTR, RI, DSR and CD assignment" depends on ETRAX_SERIAL_PORT1 default ETRAX_SER1_DTR_RI_DSR_CD_ON_NONE config ETRAX_SER1_DTR_RI_DSR_CD_ON_NONE bool "No_DTR_RI_DSR_CD" config ETRAX_SER1_DTR_RI_DSR_CD_ON_PA bool "DTR_RI_DSR_CD_on_PA" config ETRAX_SER1_DTR_RI_DSR_CD_ON_PB bool "DTR_RI_DSR_CD_on_PB" help Enables the status and control signals DTR, RI, DSR and CD on PB for ser1. config ETRAX_SER1_DTR_RI_DSR_CD_MIXED bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB" endchoice config ETRAX_SER1_DTR_ON_PA_BIT int "Ser1 DTR on PA bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT1 default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED default "4" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED config ETRAX_SER1_RI_ON_PA_BIT int "Ser1 RI on PA bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT1 default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED default "5" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED config ETRAX_SER1_DSR_ON_PA_BIT int "Ser1 DSR on PA bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT1 default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED default "6" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED config ETRAX_SER1_CD_ON_PA_BIT int "Ser1 CD on PA bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT1 default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED default "7" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PA || ETRAX_SER1_DTR_RI_DSR_CD_MIXED config ETRAX_SER1_DTR_ON_PB_BIT int "Ser1 DTR on PB bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT1 default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED default "4" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED help Specify the pin of the PB port to carry the DTR signal for serial port 1. config ETRAX_SER1_RI_ON_PB_BIT int "Ser1 RI on PB bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT1 default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED default "5" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED help Specify the pin of the PB port to carry the RI signal for serial port 1. config ETRAX_SER1_DSR_ON_PB_BIT int "Ser1 DSR on PB bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT1 default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED default "6" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED help Specify the pin of the PB port to carry the DSR signal for serial port 1. config ETRAX_SER1_CD_ON_PB_BIT int "Ser1 CD on PB bit (-1 = not used)" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT1 default "-1" if !ETRAX_SER1_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER1_DTR_RI_DSR_CD_MIXED default "7" if ETRAX_SER1_DTR_RI_DSR_CD_ON_PB || ETRAX_SER1_DTR_RI_DSR_CD_MIXED help Specify the pin of the PB port to carry the CD signal for serial port 1. comment "Make sure you do not have the same PB bits more than once!" depends on ETRAX_SERIAL && ETRAX_SER0_DTR_RI_DSR_CD_ON_PB && ETRAX_SER1_DTR_RI_DSR_CD_ON_PB config ETRAX_SERIAL_PORT2 bool "Serial port 2 enabled" depends on ETRAX_SERIAL help Enables the ETRAX 100 serial driver for ser2 (ttyS2). choice prompt "Ser2 DTR, RI, DSR and CD assignment" depends on ETRAX_SERIAL_PORT2 default ETRAX_SER2_DTR_RI_DSR_CD_ON_NONE config ETRAX_SER2_DTR_RI_DSR_CD_ON_NONE bool "No_DTR_RI_DSR_CD" config ETRAX_SER2_DTR_RI_DSR_CD_ON_PA bool "DTR_RI_DSR_CD_on_PA" help Enables the status and control signals DTR, RI, DSR and CD on PA for ser2. config ETRAX_SER2_DTR_RI_DSR_CD_ON_PB bool "DTR_RI_DSR_CD_on_PB" config ETRAX_SER2_DTR_RI_DSR_CD_MIXED bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB" endchoice config ETRAX_SER2_DTR_ON_PA_BIT int "Ser2 DTR on PA bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT2 default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED default "4" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED help Specify the pin of the PA port to carry the DTR signal for serial port 2. config ETRAX_SER2_RI_ON_PA_BIT int "Ser2 RI on PA bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT2 default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED default "5" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED help Specify the pin of the PA port to carry the RI signal for serial port 2. config ETRAX_SER2_DSR_ON_PA_BIT int "Ser2 DSR on PA bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT2 default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED default "6" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED help Specify the pin of the PA port to carry the DTR signal for serial port 2. config ETRAX_SER2_CD_ON_PA_BIT int "Ser2 CD on PA bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT2 default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PA && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED default "7" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PA || ETRAX_SER2_DTR_RI_DSR_CD_MIXED help Specify the pin of the PA port to carry the CD signal for serial port 2. config ETRAX_SER2_DTR_ON_PB_BIT int "Ser2 DTR on PB bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT2 default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED default "4" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED config ETRAX_SER2_RI_ON_PB_BIT int "Ser2 RI on PB bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT2 default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED default "5" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED config ETRAX_SER2_DSR_ON_PB_BIT int "Ser2 DSR on PB bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT2 default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED default "6" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED config ETRAX_SER2_CD_ON_PB_BIT int "Ser2 CD on PB bit (-1 = not used)" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT2 default "-1" if !ETRAX_SER2_DTR_RI_DSR_CD_ON_PB && !ETRAX_SER2_DTR_RI_DSR_CD_MIXED default "7" if ETRAX_SER2_DTR_RI_DSR_CD_ON_PB || ETRAX_SER2_DTR_RI_DSR_CD_MIXED config ETRAX_SERIAL_PORT3 bool "Serial port 3 enabled" depends on ETRAX_SERIAL help Enables the ETRAX 100 serial driver for ser3 (ttyS3). choice prompt "Ser3 DTR, RI, DSR and CD assignment" depends on ETRAX_SERIAL_PORT3 default ETRAX_SER3_DTR_RI_DSR_CD_ON_NONE config ETRAX_SER3_DTR_RI_DSR_CD_ON_NONE bool "No_DTR_RI_DSR_CD" config ETRAX_SER3_DTR_RI_DSR_CD_ON_PA bool "DTR_RI_DSR_CD_on_PA" config ETRAX_SER3_DTR_RI_DSR_CD_ON_PB bool "DTR_RI_DSR_CD_on_PB" config ETRAX_SER3_DTR_RI_DSR_CD_MIXED bool "DTR_RI_DSR_CD_mixed_on_PA_and_PB" endchoice config ETRAX_SER3_DTR_ON_PA_BIT int "Ser3 DTR on PA bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PA || ETRAX_SER3_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT3 default "-1" config ETRAX_SER3_RI_ON_PA_BIT int "Ser3 RI on PA bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PA || ETRAX_SER3_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT3 default "-1" config ETRAX_SER3_DSR_ON_PA_BIT int "Ser3 DSR on PA bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PA || ETRAX_SER3_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT3 default "-1" config ETRAX_SER3_CD_ON_PA_BIT int "Ser3 CD on PA bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PA || ETRAX_SER3_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT3 default "-1" config ETRAX_SER3_DTR_ON_PB_BIT int "Ser3 DTR on PB bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PB || ETRAX_SER3_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT3 default "-1" config ETRAX_SER3_RI_ON_PB_BIT int "Ser3 RI on PB bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PB || ETRAX_SER3_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT3 default "-1" config ETRAX_SER3_DSR_ON_PB_BIT int "Ser3 DSR on PB bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PB || ETRAX_SER3_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT3 default "-1" config ETRAX_SER3_CD_ON_PB_BIT int "Ser3 CD on PB bit (-1 = not used)" if ETRAX_SER3_DTR_RI_DSR_CD_ON_PB || ETRAX_SER3_DTR_RI_DSR_CD_MIXED depends on ETRAX_SERIAL_PORT3 default "-1" config ETRAX_RS485 bool "RS-485 support" depends on ETRAX_SERIAL help Enables support for RS-485 serial communication. For a primer on RS-485, see config ETRAX_RS485_ON_PA bool "RS-485 mode on PA" depends on ETRAX_RS485 help Control Driver Output Enable on RS485 transceiver using a pin on PA port: Axis 2400/2401 uses PA 3. config ETRAX_RS485_ON_PA_BIT int "RS-485 mode on PA bit" depends on ETRAX_RS485_ON_PA default "3" help Control Driver Output Enable on RS485 transceiver using a this bit on PA port. config ETRAX_RS485_DISABLE_RECEIVER bool "Disable serial receiver" depends on ETRAX_RS485 help It's necessary to disable the serial receiver to avoid serial loopback. Not all products are able to do this in software only. Axis 2400/2401 must disable receiver. config ETRAX_USB_HOST bool "USB host" select USB help This option enables the host functionality of the ETRAX 100LX built-in USB controller. In host mode the controller is designed for CTRL and BULK traffic only, INTR traffic may work as well however (depending on the requirements of timeliness). config ETRAX_USB_HOST_PORT1 bool "USB port 1 enabled" depends on ETRAX_USB_HOST default n config ETRAX_USB_HOST_PORT2 bool "USB port 2 enabled" depends on ETRAX_USB_HOST default n config ETRAX_PTABLE_SECTOR int "Byte-offset of partition table sector" depends on ETRAX_AXISFLASHMAP default "65536" help Byte-offset of the partition table in the first flash chip. The default value is 64kB and should not be changed unless you know exactly what you are doing. The only valid reason for changing this is when the flash block size is bigger than 64kB (e.g. when using two parallel 16 bit flashes). config ETRAX_I2C bool "I2C support" depends on ETRAX_ARCH_V10 help Enables an I2C driver on ETRAX100. EXAMPLE usage: i2c_arg = I2C_WRITEARG(STA013_WRITE_ADDR, reg, val); ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_WRITEREG), i2c_arg); i2c_arg = I2C_READARG(STA013_READ_ADDR, reg); val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg); # this is true for most products since PB-I2C seems to be somewhat # flawed.. config ETRAX_I2C_USES_PB_NOT_PB_I2C bool "I2C uses PB not PB-I2C" depends on ETRAX_I2C help Select whether to use the special I2C mode in the PB I/O register or not. This option needs to be selected in order to use some drivers that access the I2C I/O pins directly instead of going through the I2C driver, like the DS1302 realtime-clock driver. If you are uncertain, choose Y here. config ETRAX_I2C_DATA_PORT int "I2C SDA bit number" depends on ETRAX_I2C_USES_PB_NOT_PB_I2C default "0" help Selects the pin on Port B where the data pin is connected config ETRAX_I2C_CLK_PORT int "I2C SCL bit number" depends on ETRAX_I2C_USES_PB_NOT_PB_I2C default "1" help Select the pin on Port B where the clock pin is connected config ETRAX_I2C_EEPROM bool "I2C EEPROM (non-volatile RAM) support" depends on ETRAX_I2C help Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C driver. Select size option: Probed, 2k, 8k, 16k. (Probing works for 2k and 8k but not that well for 16k) choice prompt "EEPROM size" depends on ETRAX_I2C_EEPROM default ETRAX_I2C_EEPROM_PROBE config ETRAX_I2C_EEPROM_PROBE bool "Probed" help Specifies size or auto probe of the EEPROM size. Options: Probed, 2k, 8k, 16k. (Probing works for 2k and 8k but not that well for 16k) config ETRAX_I2C_EEPROM_2KB bool "2kB" help Use a 2kB EEPROM. config ETRAX_I2C_EEPROM_8KB bool "8kB" help Use a 8kB EEPROM. config ETRAX_I2C_EEPROM_16KB bool "16kB" help Use a 16kB EEPROM. endchoice config ETRAX_GPIO bool "GPIO support" depends on ETRAX_ARCH_V10 ---help--- Enables the ETRAX general port device (major 120, minors 0 and 1). You can use this driver to access the general port bits. It supports these ioctl's: #include fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set); ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear); val = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READBITS), NULL); Remember that you need to setup the port directions appropriately in the General configuration. config ETRAX_PA_BUTTON_BITMASK hex "PA-buttons bitmask" depends on ETRAX_GPIO default "02" help This is a bitmask with information about what bits on PA that are used for buttons. Most products has a so called TEST button on PA1, if that's true use 02 here. Use 00 if there are no buttons on PA. If the bitmask is <> 00 a button driver will be included in the gpio driver. ETRAX general I/O support must be enabled. config ETRAX_PA_CHANGEABLE_DIR hex "PA user changeable dir mask" depends on ETRAX_GPIO default "00" help This is a bitmask with information of what bits in PA that a user can change direction on using ioctl's. Bit set = changeable. You probably want 00 here. config ETRAX_PA_CHANGEABLE_BITS hex "PA user changeable bits mask" depends on ETRAX_GPIO default "FF" help This is a bitmask with information of what bits in PA that a user can change the value on using ioctl's. Bit set = changeable. You probably want 00 here. config ETRAX_PB_CHANGEABLE_DIR hex "PB user changeable dir mask" depends on ETRAX_GPIO default "00" help This is a bitmask with information of what bits in PB that a user can change direction on using ioctl's. Bit set = changeable. You probably want 00 here. config ETRAX_PB_CHANGEABLE_BITS hex "PB user changeable bits mask" depends on ETRAX_GPIO default "FF" help This is a bitmask with information of what bits in PB that a user can change the value on using ioctl's. Bit set = changeable. You probably want 00 here. config ETRAX_DS1302_RST_ON_GENERIC_PORT bool "DS1302 RST on Generic Port" depends on ETRAX_DS1302 help If your product has the RST signal line for the DS1302 RTC on the Generic Port then say Y here, otherwise leave it as N in which case the RST signal line is assumed to be connected to Port PB (just like the SCL and SDA lines). config ETRAX_DS1302_RSTBIT int "DS1302 RST bit number" depends on ETRAX_DS1302 default "2" help This is the bit number for the RST signal line of the DS1302 RTC on the selected port. If you have selected the generic port then it should be bit 27, otherwise your best bet is bit 5. config ETRAX_DS1302_SCLBIT int "DS1302 SCL bit number" depends on ETRAX_DS1302 default "1" help This is the bit number for the SCL signal line of the DS1302 RTC on Port PB. This is probably best left at 3. config ETRAX_DS1302_SDABIT int "DS1302 SDA bit number" depends on ETRAX_DS1302 default "0" help This is the bit number for the SDA signal line of the DS1302 RTC on Port PB. This is probably best left at 2. config ETRAX_DS1302_TRICKLE_CHARGE int "DS1302 Trickle charger value" depends on ETRAX_DS1302 default "0" help This controls the initial value of the trickle charge register. 0 = disabled (use this if you are unsure or have a non rechargeable battery) Otherwise the following values can be OR:ed together to control the charge current: 1 = 2kohm, 2 = 4kohm, 3 = 4kohm 4 = 1 diode, 8 = 2 diodes Allowed values are (increasing current): 0, 11, 10, 9, 7, 6, 5 endif if ETRAXFS menu "ETRAX FS options" depends on ETRAXFS config ETRAX_DRAM_VIRTUAL_BASE hex depends on ETRAX_ARCH_V32 default "c0000000" config ETRAX_SERIAL_PORTS int default 4 config ETRAX_MEM_GRP1_CONFIG hex "MEM_GRP1_CONFIG" depends on ETRAX_ARCH_V32 default "4044a" help Waitstates for flash. The default value is suitable for the standard flashes used in axis products (120 ns). config ETRAX_MEM_GRP2_CONFIG hex "MEM_GRP2_CONFIG" depends on ETRAX_ARCH_V32 default "0" help Waitstates for SRAM. 0 is a good choice for most Axis products. config ETRAX_MEM_GRP3_CONFIG hex "MEM_GRP3_CONFIG" depends on ETRAX_ARCH_V32 default "0" help Waitstates for CSP0-3. 0 is a good choice for most Axis products. It may need to be changed if external devices such as extra register-mapped LEDs are used. config ETRAX_MEM_GRP4_CONFIG hex "MEM_GRP4_CONFIG" depends on ETRAX_ARCH_V32 default "0" help Waitstates for CSP4-6. 0 is a good choice for most Axis products. config ETRAX_SDRAM_GRP0_CONFIG hex "SDRAM_GRP0_CONFIG" depends on ETRAX_ARCH_V32 default "336" help SDRAM configuration for group 0. The value depends on the hardware configuration. The default value is suitable for 32 MB organized as two 16 bits chips (e.g. Axis part number 18550) connected as one 32 bit device (i.e. in the same group). config ETRAX_SDRAM_GRP1_CONFIG hex "SDRAM_GRP1_CONFIG" depends on ETRAX_ARCH_V32 default "0" help SDRAM configuration for group 1. The default value is 0 because group 1 is not used in the default configuration, described in the help for SDRAM_GRP0_CONFIG. config ETRAX_SDRAM_TIMING hex "SDRAM_TIMING" depends on ETRAX_ARCH_V32 default "104a" help SDRAM timing parameters. The default value is ok for most hardwares but large SDRAMs may require a faster refresh (a.k.a 8K refresh). The default value implies 100MHz clock and SDR mode. config ETRAX_SDRAM_COMMAND hex "SDRAM_COMMAND" depends on ETRAX_ARCH_V32 default "0" help SDRAM command. Should be 0 unless you really know what you are doing (may be != 0 for unusual address line mappings such as in a MCM).. config ETRAX_DEF_GIO_PA_OE hex "GIO_PA_OE" depends on ETRAX_ARCH_V32 default "1c" help Configures the direction of general port A bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PA_OUT hex "GIO_PA_OUT" depends on ETRAX_ARCH_V32 default "00" help Configures the initial data for the general port A bits. Most products should use 00 here. config ETRAX_DEF_GIO_PB_OE hex "GIO_PB_OE" depends on ETRAX_ARCH_V32 default "00000" help Configures the direction of general port B bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PB_OUT hex "GIO_PB_OUT" depends on ETRAX_ARCH_V32 default "00000" help Configures the initial data for the general port B bits. Most products should use 00000 here. config ETRAX_DEF_GIO_PC_OE hex "GIO_PC_OE" depends on ETRAX_ARCH_V32 default "00000" help Configures the direction of general port C bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PC_OUT hex "GIO_PC_OUT" depends on ETRAX_ARCH_V32 default "00000" help Configures the initial data for the general port C bits. Most products should use 00000 here. config ETRAX_DEF_GIO_PD_OE hex "GIO_PD_OE" depends on ETRAX_ARCH_V32 default "00000" help Configures the direction of general port D bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PD_OUT hex "GIO_PD_OUT" depends on ETRAX_ARCH_V32 default "00000" help Configures the initial data for the general port D bits. Most products should use 00000 here. config ETRAX_DEF_GIO_PE_OE hex "GIO_PE_OE" depends on ETRAX_ARCH_V32 default "00000" help Configures the direction of general port E bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PE_OUT hex "GIO_PE_OUT" depends on ETRAX_ARCH_V32 default "00000" help Configures the initial data for the general port E bits. Most products should use 00000 here. config ETRAX_DEF_GIO_PV_OE hex "GIO_PV_OE" depends on ETRAX_VIRTUAL_GPIO default "0000" help Configures the direction of virtual general port V bits. 1 is out, 0 is in. This is often totally different depending on the product used. These bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PV_OUT hex "GIO_PV_OUT" depends on ETRAX_VIRTUAL_GPIO default "0000" help Configures the initial data for the virtual general port V bits. Most products should use 0000 here. endmenu endif if CRIS_MACH_ARTPEC3 menu "Artpec-3 options" depends on CRIS_MACH_ARTPEC3 config ETRAX_DRAM_VIRTUAL_BASE hex default "c0000000" config ETRAX_L2CACHE bool default y config ETRAX_SERIAL_PORTS int default 5 config ETRAX_DDR bool default y config ETRAX_DDR2_MRS hex "DDR2 MRS" default "0" config ETRAX_DDR2_TIMING hex "DDR2 SDRAM timing" default "0" help SDRAM timing parameters. config ETRAX_DDR2_CONFIG hex "DDR2 config" default "0" config ETRAX_DDR2_LATENCY hex "DDR2 latency" default "0" config ETRAX_PIO_CE0_CFG hex "PIO CE0 configuration" default "0" config ETRAX_PIO_CE1_CFG hex "PIO CE1 configuration" default "0" config ETRAX_PIO_CE2_CFG hex "PIO CE2 configuration" default "0" config ETRAX_DEF_GIO_PA_OE hex "GIO_PA_OE" default "00000000" help Configures the direction of general port A bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PA_OUT hex "GIO_PA_OUT" default "00000000" help Configures the initial data for the general port A bits. Most products should use 00 here. config ETRAX_DEF_GIO_PB_OE hex "GIO_PB_OE" default "000000000" help Configures the direction of general port B bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PB_OUT hex "GIO_PB_OUT" default "000000000" help Configures the initial data for the general port B bits. Most products should use 00000 here. config ETRAX_DEF_GIO_PC_OE hex "GIO_PC_OE" default "00000" help Configures the direction of general port C bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PC_OUT hex "GIO_PC_OUT" default "00000" help Configures the initial data for the general port C bits. Most products should use 00000 here. endmenu endif if ETRAX_ARCH_V32 source arch/cris/arch-v32/mach-fs/Kconfig source arch/cris/arch-v32/mach-a3/Kconfig source drivers/cpufreq/Kconfig config ETRAX_DRAM_VIRTUAL_BASE hex depends on ETRAX_ARCH_V32 default "c0000000" choice prompt "Nbr of Ethernet LED groups" depends on ETRAX_ARCH_V32 default ETRAX_NBR_LED_GRP_ONE help Select how many Ethernet LED groups that can be used. Usually one per Ethernet interface is a good choice. config ETRAX_NBR_LED_GRP_ZERO bool "Use zero LED groups" help Select this if you do not want any Ethernet LEDs. config ETRAX_NBR_LED_GRP_ONE bool "Use one LED group" help Select this if you want one Ethernet LED group. This LED group can be used for one or more Ethernet interfaces. However, it is recommended that each Ethernet interface use a dedicated LED group. config ETRAX_NBR_LED_GRP_TWO bool "Use two LED groups" help Select this if you want two Ethernet LED groups. This is the best choice if you have more than one Ethernet interface and would like to have separate LEDs for the interfaces. endchoice config ETRAX_LED_G_NET0 string "Ethernet LED group 0 green LED bit" depends on ETRAX_ARCH_V32 && (ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO) default "PA3" help Bit to use for the green LED in Ethernet LED group 0. config ETRAX_LED_R_NET0 string "Ethernet LED group 0 red LED bit" depends on ETRAX_ARCH_V32 && (ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO) default "PA4" help Bit to use for the red LED in Ethernet LED group 0. config ETRAX_LED_G_NET1 string "Ethernet group 1 green LED bit" depends on ETRAX_ARCH_V32 && ETRAX_NBR_LED_GRP_TWO default "" help Bit to use for the green LED in Ethernet LED group 1. config ETRAX_LED_R_NET1 string "Ethernet group 1 red LED bit" depends on ETRAX_ARCH_V32 && ETRAX_NBR_LED_GRP_TWO default "" help Bit to use for the red LED in Ethernet LED group 1. config ETRAX_V32_LED2G string "Second green LED bit" depends on ETRAX_ARCH_V32 default "PA5" help Bit to use for the first green LED (status LED). Most Axis products use bit A5 here. config ETRAX_V32_LED2R string "Second red LED bit" depends on ETRAX_ARCH_V32 default "PA6" help Bit to use for the first red LED (network LED). Most Axis products use bit A6 here. config ETRAX_V32_LED3G string "Third green LED bit" depends on ETRAX_ARCH_V32 default "PA7" help Bit to use for the first green LED (drive/power LED). Most Axis products use bit A7 here. config ETRAX_V32_LED3R string "Third red LED bit" depends on ETRAX_ARCH_V32 default "PA7" help Bit to use for the first red LED (drive/power LED). Most Axis products use bit A7 here. choice prompt "Kernel GDB port" depends on ETRAX_KGDB default ETRAX_KGDB_PORT0 help Choose a serial port for kernel debugging. NOTE: This port should not be enabled under Drivers for built-in interfaces (as it has its own initialization code) and should not be the same as the debug port. config ETRAX_KGDB_PORT4 bool "Serial-4" depends on ETRAX_SERIAL_PORTS = 5 help Use serial port 4 for kernel debugging. endchoice config ETRAX_MEM_GRP1_CONFIG hex "MEM_GRP1_CONFIG" depends on ETRAX_ARCH_V32 default "4044a" help Waitstates for flash. The default value is suitable for the standard flashes used in axis products (120 ns). config ETRAX_MEM_GRP2_CONFIG hex "MEM_GRP2_CONFIG" depends on ETRAX_ARCH_V32 default "0" help Waitstates for SRAM. 0 is a good choice for most Axis products. config ETRAX_MEM_GRP3_CONFIG hex "MEM_GRP3_CONFIG" depends on ETRAX_ARCH_V32 default "0" help Waitstates for CSP0-3. 0 is a good choice for most Axis products. It may need to be changed if external devices such as extra register-mapped LEDs are used. config ETRAX_MEM_GRP4_CONFIG hex "MEM_GRP4_CONFIG" depends on ETRAX_ARCH_V32 default "0" help Waitstates for CSP4-6. 0 is a good choice for most Axis products. config ETRAX_SDRAM_GRP0_CONFIG hex "SDRAM_GRP0_CONFIG" depends on ETRAX_ARCH_V32 default "336" help SDRAM configuration for group 0. The value depends on the hardware configuration. The default value is suitable for 32 MB organized as two 16 bits chips (e.g. Axis part number 18550) connected as one 32 bit device (i.e. in the same group). config ETRAX_SDRAM_GRP1_CONFIG hex "SDRAM_GRP1_CONFIG" depends on ETRAX_ARCH_V32 default "0" help SDRAM configuration for group 1. The default value is 0 because group 1 is not used in the default configuration, described in the help for SDRAM_GRP0_CONFIG. config ETRAX_SDRAM_TIMING hex "SDRAM_TIMING" depends on ETRAX_ARCH_V32 default "104a" help SDRAM timing parameters. The default value is ok for most hardwares but large SDRAMs may require a faster refresh (a.k.a 8K refresh). The default value implies 100MHz clock and SDR mode. config ETRAX_SDRAM_COMMAND hex "SDRAM_COMMAND" depends on ETRAX_ARCH_V32 default "0" help SDRAM command. Should be 0 unless you really know what you are doing (may be != 0 for unusual address line mappings such as in a MCM).. config ETRAX_DEF_GIO_PA_OE hex "GIO_PA_OE" depends on ETRAX_ARCH_V32 default "1c" help Configures the direction of general port A bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PA_OUT hex "GIO_PA_OUT" depends on ETRAX_ARCH_V32 default "00" help Configures the initial data for the general port A bits. Most products should use 00 here. config ETRAX_DEF_GIO_PB_OE hex "GIO_PB_OE" depends on ETRAX_ARCH_V32 default "00000" help Configures the direction of general port B bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PB_OUT hex "GIO_PB_OUT" depends on ETRAX_ARCH_V32 default "00000" help Configures the initial data for the general port B bits. Most products should use 00000 here. config ETRAX_DEF_GIO_PC_OE hex "GIO_PC_OE" depends on ETRAX_ARCH_V32 default "00000" help Configures the direction of general port C bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PC_OUT hex "GIO_PC_OUT" depends on ETRAX_ARCH_V32 default "00000" help Configures the initial data for the general port C bits. Most products should use 00000 here. config ETRAX_DEF_GIO_PD_OE hex "GIO_PD_OE" depends on ETRAX_ARCH_V32 default "00000" help Configures the direction of general port D bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PD_OUT hex "GIO_PD_OUT" depends on ETRAX_ARCH_V32 default "00000" help Configures the initial data for the general port D bits. Most products should use 00000 here. config ETRAX_DEF_GIO_PE_OE hex "GIO_PE_OE" depends on ETRAX_ARCH_V32 default "00000" help Configures the direction of general port E bits. 1 is out, 0 is in. This is often totally different depending on the product used. There are some guidelines though - if you know that only LED's are connected to port PA, then they are usually connected to bits 2-4 and you can therefore use 1c. On other boards which don't have the LED's at the general ports, these bits are used for all kinds of stuff. If you don't know what to use, it is always safe to put all as inputs, although floating inputs isn't good. config ETRAX_DEF_GIO_PE_OUT hex "GIO_PE_OUT" depends on ETRAX_ARCH_V32 default "00000" help Configures the initial data for the general port E bits. Most products should use 00000 here. endif if ETRAX_ARCH_V32 config ETRAX_ETHERNET bool "Ethernet support" depends on ETRAX_ARCH_V32 select NET_ETHERNET select MII help This option enables the ETRAX FS built-in 10/100Mbit Ethernet controller. config ETRAX_NO_PHY bool "PHY not present" depends on ETRAX_ETHERNET default N help This option disables all MDIO communication with an ethernet transceiver connected to the MII interface. This option shall typically be enabled if the MII interface is connected to a switch. This option should normally be disabled. If enabled, speed and duplex will be locked to 100 Mbit and full duplex. config ETRAX_ETHERNET_IFACE0 depends on ETRAX_ETHERNET bool "Enable network interface 0" config ETRAX_ETHERNET_IFACE1 depends on (ETRAX_ETHERNET && ETRAXFS) bool "Enable network interface 1 (uses DMA6 and DMA7)" config ETRAX_ETHERNET_GBIT depends on (ETRAX_ETHERNET && CRIS_MACH_ARTPEC3) bool "Enable gigabit Ethernet support" choice prompt "Eth0 led group" depends on ETRAX_ETHERNET_IFACE0 default ETRAX_ETH0_USE_LEDGRP0 config ETRAX_ETH0_USE_LEDGRP0 bool "Use LED grp 0" depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO help Use LED grp 0 for eth0 config ETRAX_ETH0_USE_LEDGRP1 bool "Use LED grp 1" depends on ETRAX_NBR_LED_GRP_TWO help Use LED grp 1 for eth0 config ETRAX_ETH0_USE_LEDGRPNULL bool "Use no LEDs for eth0" help Use no LEDs for eth0 endchoice choice prompt "Eth1 led group" depends on ETRAX_ETHERNET_IFACE1 default ETRAX_ETH1_USE_LEDGRP1 config ETRAX_ETH1_USE_LEDGRP0 bool "Use LED grp 0" depends on ETRAX_NBR_LED_GRP_ONE || ETRAX_NBR_LED_GRP_TWO help Use LED grp 0 for eth1 config ETRAX_ETH1_USE_LEDGRP1 bool "Use LED grp 1" depends on ETRAX_NBR_LED_GRP_TWO help Use LED grp 1 for eth1 config ETRAX_ETH1_USE_LEDGRPNULL bool "Use no LEDs for eth1" help Use no LEDs for eth1 endchoice config ETRAXFS_SERIAL bool "Serial-port support" depends on ETRAX_ARCH_V32 select SERIAL_CORE select SERIAL_CORE_CONSOLE help Enables the ETRAX FS serial driver for ser0 (ttyS0) You probably want this enabled. config ETRAX_RS485 bool "RS-485 support" depends on ETRAXFS_SERIAL help Enables support for RS-485 serial communication. config ETRAX_RS485_DISABLE_RECEIVER bool "Disable serial receiver" depends on ETRAX_RS485 help It is necessary to disable the serial receiver to avoid serial loopback. Not all products are able to do this in software only. config ETRAX_SERIAL_PORT0 bool "Serial port 0 enabled" depends on ETRAXFS_SERIAL help Enables the ETRAX FS serial driver for ser0 (ttyS0) Normally you want this on. You can control what DMA channels to use if you do not need DMA to something else. ser0 can use dma4 or dma6 for output and dma5 or dma7 for input. choice prompt "Ser0 default port type " depends on ETRAX_SERIAL_PORT0 default ETRAX_SERIAL_PORT0_TYPE_232 help Type of serial port. config ETRAX_SERIAL_PORT0_TYPE_232 bool "Ser0 is a RS-232 port" help Configure serial port 0 to be a RS-232 port. config ETRAX_SERIAL_PORT0_TYPE_485HD bool "Ser0 is a half duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 0 to be a half duplex (two wires) RS-485 port. config ETRAX_SERIAL_PORT0_TYPE_485FD bool "Ser0 is a full duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 0 to be a full duplex (four wires) RS-485 port. endchoice config ETRAX_SER0_DTR_BIT string "Ser 0 DTR bit (empty = not used)" depends on ETRAX_SERIAL_PORT0 config ETRAX_SER0_RI_BIT string "Ser 0 RI bit (empty = not used)" depends on ETRAX_SERIAL_PORT0 config ETRAX_SER0_DSR_BIT string "Ser 0 DSR bit (empty = not used)" depends on ETRAX_SERIAL_PORT0 config ETRAX_SER0_CD_BIT string "Ser 0 CD bit (empty = not used)" depends on ETRAX_SERIAL_PORT0 config ETRAX_SERIAL_PORT1 bool "Serial port 1 enabled" depends on ETRAXFS_SERIAL help Enables the ETRAX FS serial driver for ser1 (ttyS1). choice prompt "Ser1 default port type" depends on ETRAX_SERIAL_PORT1 default ETRAX_SERIAL_PORT1_TYPE_232 help Type of serial port. config ETRAX_SERIAL_PORT1_TYPE_232 bool "Ser1 is a RS-232 port" help Configure serial port 1 to be a RS-232 port. config ETRAX_SERIAL_PORT1_TYPE_485HD bool "Ser1 is a half duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 1 to be a half duplex (two wires) RS-485 port. config ETRAX_SERIAL_PORT1_TYPE_485FD bool "Ser1 is a full duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 1 to be a full duplex (four wires) RS-485 port. endchoice config ETRAX_SER1_DTR_BIT string "Ser 1 DTR bit (empty = not used)" depends on ETRAX_SERIAL_PORT1 config ETRAX_SER1_RI_BIT string "Ser 1 RI bit (empty = not used)" depends on ETRAX_SERIAL_PORT1 config ETRAX_SER1_DSR_BIT string "Ser 1 DSR bit (empty = not used)" depends on ETRAX_SERIAL_PORT1 config ETRAX_SER1_CD_BIT string "Ser 1 CD bit (empty = not used)" depends on ETRAX_SERIAL_PORT1 config ETRAX_SERIAL_PORT2 bool "Serial port 2 enabled" depends on ETRAXFS_SERIAL help Enables the ETRAX FS serial driver for ser2 (ttyS2). choice prompt "Ser2 default port type" depends on ETRAX_SERIAL_PORT2 default ETRAX_SERIAL_PORT2_TYPE_232 help What DMA channel to use for ser2 config ETRAX_SERIAL_PORT2_TYPE_232 bool "Ser2 is a RS-232 port" help Configure serial port 2 to be a RS-232 port. config ETRAX_SERIAL_PORT2_TYPE_485HD bool "Ser2 is a half duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 2 to be a half duplex (two wires) RS-485 port. config ETRAX_SERIAL_PORT2_TYPE_485FD bool "Ser2 is a full duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 2 to be a full duplex (four wires) RS-485 port. endchoice config ETRAX_SER2_DTR_BIT string "Ser 2 DTR bit (empty = not used)" depends on ETRAX_SERIAL_PORT2 config ETRAX_SER2_RI_BIT string "Ser 2 RI bit (empty = not used)" depends on ETRAX_SERIAL_PORT2 config ETRAX_SER2_DSR_BIT string "Ser 2 DSR bit (empty = not used)" depends on ETRAX_SERIAL_PORT2 config ETRAX_SER2_CD_BIT string "Ser 2 CD bit (empty = not used)" depends on ETRAX_SERIAL_PORT2 config ETRAX_SERIAL_PORT3 bool "Serial port 3 enabled" depends on ETRAXFS_SERIAL help Enables the ETRAX FS serial driver for ser3 (ttyS3). choice prompt "Ser3 default port type" depends on ETRAX_SERIAL_PORT3 default ETRAX_SERIAL_PORT3_TYPE_232 help What DMA channel to use for ser3. config ETRAX_SERIAL_PORT3_TYPE_232 bool "Ser3 is a RS-232 port" help Configure serial port 3 to be a RS-232 port. config ETRAX_SERIAL_PORT3_TYPE_485HD bool "Ser3 is a half duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 3 to be a half duplex (two wires) RS-485 port. config ETRAX_SERIAL_PORT3_TYPE_485FD bool "Ser3 is a full duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 3 to be a full duplex (four wires) RS-485 port. endchoice config ETRAX_SER3_DTR_BIT string "Ser 3 DTR bit (empty = not used)" depends on ETRAX_SERIAL_PORT3 config ETRAX_SER3_RI_BIT string "Ser 3 RI bit (empty = not used)" depends on ETRAX_SERIAL_PORT3 config ETRAX_SER3_DSR_BIT string "Ser 3 DSR bit (empty = not used)" depends on ETRAX_SERIAL_PORT3 config ETRAX_SER3_CD_BIT string "Ser 3 CD bit (empty = not used)" depends on ETRAX_SERIAL_PORT3 config ETRAX_SERIAL_PORT4 bool "Serial port 4 enabled" depends on ETRAXFS_SERIAL && CRIS_MACH_ARTPEC3 help Enables the ETRAX FS serial driver for ser4 (ttyS4). choice prompt "Ser4 default port type" depends on ETRAX_SERIAL_PORT4 default ETRAX_SERIAL_PORT4_TYPE_232 help What DMA channel to use for ser4. config ETRAX_SERIAL_PORT4_TYPE_232 bool "Ser4 is a RS-232 port" help Configure serial port 4 to be a RS-232 port. config ETRAX_SERIAL_PORT4_TYPE_485HD bool "Ser4 is a half duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 4 to be a half duplex (two wires) RS-485 port. config ETRAX_SERIAL_PORT4_TYPE_485FD bool "Ser4 is a full duplex RS-485 port" depends on ETRAX_RS485 help Configure serial port 4 to be a full duplex (four wires) RS-485 port. endchoice choice prompt "Ser4 DMA in channel " depends on ETRAX_SERIAL_PORT4 default ETRAX_SERIAL_PORT4_NO_DMA_IN help What DMA channel to use for ser4. config ETRAX_SERIAL_PORT4_NO_DMA_IN bool "Ser4 uses no DMA for input" help Do not use DMA for ser4 input. config ETRAX_SERIAL_PORT4_DMA9_IN bool "Ser4 uses DMA9 for input" depends on ETRAX_SERIAL_PORT4 help Enables the DMA9 input channel for ser4 (ttyS4). If you do not enable DMA, an interrupt for each character will be used when receiving data. Normally you want to use DMA, unless you use the DMA channel for something else. endchoice config ETRAX_SER4_DTR_BIT string "Ser 4 DTR bit (empty = not used)" depends on ETRAX_SERIAL_PORT4 config ETRAX_SER4_RI_BIT string "Ser 4 RI bit (empty = not used)" depends on ETRAX_SERIAL_PORT4 config ETRAX_SER4_DSR_BIT string "Ser 4 DSR bit (empty = not used)" depends on ETRAX_SERIAL_PORT4 config ETRAX_SER4_CD_BIT string "Ser 4 CD bit (empty = not used)" depends on ETRAX_SERIAL_PORT4 config ETRAX_SYNCHRONOUS_SERIAL bool "Synchronous serial-port support" depends on ETRAX_ARCH_V32 help Enables the ETRAX FS synchronous serial driver. config ETRAX_SYNCHRONOUS_SERIAL_PORT0 bool "Synchronous serial port 0 enabled" depends on ETRAX_SYNCHRONOUS_SERIAL help Enabled synchronous serial port 0. config ETRAX_SYNCHRONOUS_SERIAL0_DMA bool "Enable DMA on synchronous serial port 0." depends on ETRAX_SYNCHRONOUS_SERIAL_PORT0 help A synchronous serial port can run in manual or DMA mode. Selecting this option will make it run in DMA mode. config ETRAX_SYNCHRONOUS_SERIAL_PORT1 bool "Synchronous serial port 1 enabled" depends on ETRAX_SYNCHRONOUS_SERIAL && ETRAXFS help Enabled synchronous serial port 1. config ETRAX_SYNCHRONOUS_SERIAL1_DMA bool "Enable DMA on synchronous serial port 1." depends on ETRAX_SYNCHRONOUS_SERIAL_PORT1 help A synchronous serial port can run in manual or DMA mode. Selecting this option will make it run in DMA mode. config ETRAX_AXISFLASHMAP bool "Axis flash-map support" depends on ETRAX_ARCH_V32 select MTD select MTD_CFI select MTD_CFI_AMDSTD select MTD_JEDECPROBE select MTD_CHAR select MTD_BLOCK select MTD_PARTITIONS select MTD_COMPLEX_MAPPINGS help This option enables MTD mapping of flash devices. Needed to use flash memories. If unsure, say Y. config ETRAX_AXISFLASHMAP_MTD0WHOLE bool "MTD0 is whole boot flash device" depends on ETRAX_AXISFLASHMAP default N help When this option is not set, mtd0 refers to the first partition on the boot flash device. When set, mtd0 refers to the whole device, with mtd1 referring to the first partition etc. config ETRAX_PTABLE_SECTOR int "Byte-offset of partition table sector" depends on ETRAX_AXISFLASHMAP default "65536" help Byte-offset of the partition table in the first flash chip. The default value is 64kB and should not be changed unless you know exactly what you are doing. The only valid reason for changing this is when the flash block size is bigger than 64kB (e.g. when using two parallel 16 bit flashes). config ETRAX_NANDFLASH bool "NAND flash support" depends on ETRAX_ARCH_V32 select MTD_NAND select MTD_NAND_IDS help This option enables MTD mapping of NAND flash devices. Needed to use NAND flash memories. If unsure, say Y. config ETRAX_NANDBOOT bool "Boot from NAND flash" depends on ETRAX_NANDFLASH help This options enables booting from NAND flash devices. Say Y if your boot code, kernel and root file system is in NAND flash. Say N if they are in NOR flash. config ETRAX_I2C bool "I2C driver" depends on ETRAX_ARCH_V32 help This option enables the I2C driver used by e.g. the RTC driver. config ETRAX_V32_I2C_DATA_PORT string "I2C data pin" depends on ETRAX_I2C help The pin to use for I2C data. config ETRAX_V32_I2C_CLK_PORT string "I2C clock pin" depends on ETRAX_I2C help The pin to use for I2C clock. config ETRAX_GPIO bool "GPIO support" depends on ETRAX_ARCH_V32 ---help--- Enables the ETRAX general port device (major 120, minors 0-4). You can use this driver to access the general port bits. It supports these ioctl's: #include fd = open("/dev/gpioa", O_RDWR); // or /dev/gpiob ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_SETBITS), bits_to_set); ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_CLRBITS), bits_to_clear); err = ioctl(fd, _IO(ETRAXGPIO_IOCTYPE, IO_READ_INBITS), &val); Remember that you need to setup the port directions appropriately in the General configuration. config ETRAX_VIRTUAL_GPIO bool "Virtual GPIO support" depends on ETRAX_GPIO help Enables the virtual Etrax general port device (major 120, minor 6). It uses an I/O expander for the I2C-bus. config ETRAX_VIRTUAL_GPIO_INTERRUPT_PA_PIN int "Virtual GPIO interrupt pin on PA pin" range 0 7 depends on ETRAX_VIRTUAL_GPIO help The pin to use on PA for virtual gpio interrupt. config ETRAX_PA_CHANGEABLE_DIR hex "PA user changeable dir mask" depends on ETRAX_GPIO default "0x00" if ETRAXFS default "0x00000000" if !ETRAXFS help This is a bitmask (8 bits) with information of what bits in PA that a user can change direction on using ioctl's. Bit set = changeable. You probably want 0 here, but it depends on your hardware. config ETRAX_PA_CHANGEABLE_BITS hex "PA user changeable bits mask" depends on ETRAX_GPIO default "0x00" if ETRAXFS default "0x00000000" if !ETRAXFS help This is a bitmask (8 bits) with information of what bits in PA that a user can change the value on using ioctl's. Bit set = changeable. config ETRAX_PB_CHANGEABLE_DIR hex "PB user changeable dir mask" depends on ETRAX_GPIO default "0x00000" if ETRAXFS default "0x00000000" if !ETRAXFS help This is a bitmask (18 bits) with information of what bits in PB that a user can change direction on using ioctl's. Bit set = changeable. You probably want 0 here, but it depends on your hardware. config ETRAX_PB_CHANGEABLE_BITS hex "PB user changeable bits mask" depends on ETRAX_GPIO default "0x00000" if ETRAXFS default "0x00000000" if !ETRAXFS help This is a bitmask (18 bits) with information of what bits in PB that a user can change the value on using ioctl's. Bit set = changeable. config ETRAX_PC_CHANGEABLE_DIR hex "PC user changeable dir mask" depends on ETRAX_GPIO default "0x00000" if ETRAXFS default "0x00000000" if !ETRAXFS help This is a bitmask (18 bits) with information of what bits in PC that a user can change direction on using ioctl's. Bit set = changeable. You probably want 0 here, but it depends on your hardware. config ETRAX_PC_CHANGEABLE_BITS hex "PC user changeable bits mask" depends on ETRAX_GPIO default "0x00000" if ETRAXFS default "0x00000000" if ETRAXFS help This is a bitmask (18 bits) with information of what bits in PC that a user can change the value on using ioctl's. Bit set = changeable. config ETRAX_PD_CHANGEABLE_DIR hex "PD user changeable dir mask" depends on ETRAX_GPIO && ETRAXFS default "0x00000" help This is a bitmask (18 bits) with information of what bits in PD that a user can change direction on using ioctl's. Bit set = changeable. You probably want 0x00000 here, but it depends on your hardware. config ETRAX_PD_CHANGEABLE_BITS hex "PD user changeable bits mask" depends on ETRAX_GPIO && ETRAXFS default "0x00000" help This is a bitmask (18 bits) with information of what bits in PD that a user can change the value on using ioctl's. Bit set = changeable. config ETRAX_PE_CHANGEABLE_DIR hex "PE user changeable dir mask" depends on ETRAX_GPIO && ETRAXFS default "0x00000" help This is a bitmask (18 bits) with information of what bits in PE that a user can change direction on using ioctl's. Bit set = changeable. You probably want 0x00000 here, but it depends on your hardware. config ETRAX_PE_CHANGEABLE_BITS hex "PE user changeable bits mask" depends on ETRAX_GPIO && ETRAXFS default "0x00000" help This is a bitmask (18 bits) with information of what bits in PE that a user can change the value on using ioctl's. Bit set = changeable. config ETRAX_PV_CHANGEABLE_DIR hex "PV user changeable dir mask" depends on ETRAX_VIRTUAL_GPIO default "0x0000" help This is a bitmask (16 bits) with information of what bits in PV that a user can change direction on using ioctl's. Bit set = changeable. You probably want 0x0000 here, but it depends on your hardware. config ETRAX_PV_CHANGEABLE_BITS hex "PV user changeable bits mask" depends on ETRAX_VIRTUAL_GPIO default "0x0000" help This is a bitmask (16 bits) with information of what bits in PV that a user can change the value on using ioctl's. Bit set = changeable. config ETRAX_CARDBUS bool "Cardbus support" depends on ETRAX_ARCH_V32 select HOTPLUG help Enabled the ETRAX Cardbus driver. config PCI bool depends on ETRAX_CARDBUS default y select HAVE_GENERIC_DMA_COHERENT config ETRAX_IOP_FW_LOAD tristate "IO-processor hotplug firmware loading support" depends on ETRAX_ARCH_V32 select FW_LOADER help Enables IO-processor hotplug firmware loading support. config ETRAX_STREAMCOPROC tristate "Stream co-processor driver enabled" depends on ETRAX_ARCH_V32 help This option enables a driver for the stream co-processor for cryptographic operations. source drivers/mmc/Kconfig config ETRAX_MMC_IOP tristate "MMC/SD host driver using IO-processor" depends on ETRAX_ARCH_V32 && MMC help This option enables the SD/MMC host controller interface. The host controller is implemented using the built in IO-Processor. Only the SPU is used in this implementation. config ETRAX_SPI_MMC # Make this one of several "choices" (possible simultaneously but # suggested uniquely) when an IOP driver emerges for "real" MMC/SD # protocol support. tristate depends on !ETRAX_MMC_IOP default MMC select SPI select MMC_SPI select ETRAX_SPI_MMC_BOARD # For the parts that can't be a module (due to restrictions in # framework elsewhere). config ETRAX_SPI_MMC_BOARD boolean default n # While the board info is MMC_SPI only, the drivers are written to be # independent of MMC_SPI, so we'll keep SPI non-dependent on the # MMC_SPI config choices (well, except for a single depends-on-line # for the board-info file until a separate non-MMC SPI board file # emerges). # FIXME: When that happens, we'll need to be able to ask for and # configure non-MMC SPI ports together with MMC_SPI ports (if multiple # SPI ports are enabled). config SPI_ETRAX_SSER tristate depends on SPI_MASTER && ETRAX_ARCH_V32 && EXPERIMENTAL select SPI_BITBANG help This enables using an synchronous serial (sser) port as a SPI master controller on Axis ETRAX FS and later. The driver can be configured to use any sser port. config SPI_ETRAX_GPIO tristate depends on SPI_MASTER && ETRAX_ARCH_V32 && EXPERIMENTAL select SPI_BITBANG help This enables using GPIO pins port as a SPI master controller on Axis ETRAX FS and later. The driver can be configured to use any GPIO pins. config ETRAX_SPI_SSER0 tristate "SPI using synchronous serial port 0 (sser0)" depends on ETRAX_SPI_MMC default m if MMC_SPI=m default y if MMC_SPI=y default y if MMC_SPI=n select SPI_ETRAX_SSER help Say Y for an MMC/SD socket connected to synchronous serial port 0, or for devices using the SPI protocol on that port. Say m if you want to build it as a module, which will be named spi_crisv32_sser. (You need to select MMC separately.) config ETRAX_SPI_SSER0_DMA bool "DMA for SPI on sser0 enabled" depends on ETRAX_SPI_SSER0 depends on !ETRAX_SERIAL_PORT1_DMA4_OUT && !ETRAX_SERIAL_PORT1_DMA5_IN default y help Say Y if using DMA (dma4/dma5) for SPI on synchronous serial port 0. config ETRAX_SPI_MMC_CD_SSER0_PIN string "MMC/SD card detect pin for SPI on sser0" depends on ETRAX_SPI_SSER0 && MMC_SPI default "pd11" help The pin to use for SD/MMC card detect. This pin should be pulled up and grounded when a card is present. If defined as " " (space), no pin is selected. A card must then always be inserted for proper action. config ETRAX_SPI_MMC_WP_SSER0_PIN string "MMC/SD card write-protect pin for SPI on sser0" depends on ETRAX_SPI_SSER0 && MMC_SPI default "pd10" help The pin to use for the SD/MMC write-protect signal for a memory card. If defined as " " (space), the card is considered writable. config ETRAX_SPI_SSER1 tristate "SPI using synchronous serial port 1 (sser1)" depends on ETRAX_SPI_MMC default m if MMC_SPI=m && ETRAX_SPI_SSER0=n default y if MMC_SPI=y && ETRAX_SPI_SSER0=n default y if MMC_SPI=n && ETRAX_SPI_SSER0=n select SPI_ETRAX_SSER help Say Y for an MMC/SD socket connected to synchronous serial port 1, or for devices using the SPI protocol on that port. Say m if you want to build it as a module, which will be named spi_crisv32_sser. (You need to select MMC separately.) config ETRAX_SPI_SSER1_DMA bool "DMA for SPI on sser1 enabled" depends on ETRAX_SPI_SSER1 && !ETRAX_ETHERNET_IFACE1 depends on !ETRAX_SERIAL_PORT0_DMA6_OUT && !ETRAX_SERIAL_PORT0_DMA7_IN default y help Say Y if using DMA (dma6/dma7) for SPI on synchronous serial port 1. config ETRAX_SPI_MMC_CD_SSER1_PIN string "MMC/SD card detect pin for SPI on sser1" depends on ETRAX_SPI_SSER1 && MMC_SPI default "pd12" help The pin to use for SD/MMC card detect. This pin should be pulled up and grounded when a card is present. If defined as " " (space), no pin is selected. A card must then always be inserted for proper action. config ETRAX_SPI_MMC_WP_SSER1_PIN string "MMC/SD card write-protect pin for SPI on sser1" depends on ETRAX_SPI_SSER1 && MMC_SPI default "pd9" help The pin to use for the SD/MMC write-protect signal for a memory card. If defined as " " (space), the card is considered writable. config ETRAX_SPI_GPIO tristate "Bitbanged SPI using gpio pins" depends on ETRAX_SPI_MMC select SPI_ETRAX_GPIO default m if MMC_SPI=m && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n default y if MMC_SPI=y && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n default y if MMC_SPI=n && ETRAX_SPI_SSER0=n && ETRAX_SPI_SSER1=n help Say Y for an MMC/SD socket connected to general I/O pins (but not a complete synchronous serial ports), or for devices using the SPI protocol on general I/O pins. Slow and slows down the system. Say m to build it as a module, which will be called spi_crisv32_gpio. (You need to select MMC separately.) # The default match that of sser0, only because that's how it was tested. config ETRAX_SPI_CS_PIN string "SPI chip select pin" depends on ETRAX_SPI_GPIO default "pc3" help The pin to use for SPI chip select. config ETRAX_SPI_CLK_PIN string "SPI clock pin" depends on ETRAX_SPI_GPIO default "pc1" help The pin to use for the SPI clock. config ETRAX_SPI_DATAIN_PIN string "SPI MISO (data in) pin" depends on ETRAX_SPI_GPIO default "pc16" help The pin to use for SPI data in from the device. config ETRAX_SPI_DATAOUT_PIN string "SPI MOSI (data out) pin" depends on ETRAX_SPI_GPIO default "pc0" help The pin to use for SPI data out to the device. config ETRAX_SPI_MMC_CD_GPIO_PIN string "MMC/SD card detect pin for SPI using gpio (space for none)" depends on ETRAX_SPI_GPIO && MMC_SPI default "pd11" help The pin to use for SD/MMC card detect. This pin should be pulled up and grounded when a card is present. If defined as " " (space), no pin is selected. A card must then always be inserted for proper action. config ETRAX_SPI_MMC_WP_GPIO_PIN string "MMC/SD card write-protect pin for SPI using gpio (space for none)" depends on ETRAX_SPI_GPIO && MMC_SPI default "pd10" help The pin to use for the SD/MMC write-protect signal for a memory card. If defined as " " (space), the card is considered writable. # Avoid choices causing non-working configs by conditionalizing the inclusion. if ETRAX_SPI_MMC source drivers/spi/Kconfig endif endif config H8300 bool default y select HAVE_IDE select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_SHOW config SYMBOL_PREFIX string default "_" config MMU bool default n config SWAP bool default n config ZONE_DMA bool default y config FPU bool default n config RWSEM_GENERIC_SPINLOCK bool default y config RWSEM_XCHGADD_ALGORITHM bool default n config ARCH_HAS_ILOG2_U32 bool default n config ARCH_HAS_ILOG2_U64 bool default n config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_FIND_BIT_LE bool default y config GENERIC_HWEIGHT bool default y config GENERIC_CALIBRATE_DELAY bool default y config GENERIC_BUG bool depends on BUG config TIME_LOW_RES bool default y config NO_IOPORT def_bool y config NO_DMA def_bool y config ISA bool default y config PCI bool default n config HZ int default 100 source "init/Kconfig" source "kernel/Kconfig.freezer" source "arch/h8300/Kconfig.cpu" menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/base/Kconfig" source "drivers/mtd/Kconfig" source "drivers/block/Kconfig" source "drivers/ide/Kconfig" source "arch/h8300/Kconfig.ide" source "drivers/net/Kconfig" # # input - input/joystick depends on it. As does USB. # source "drivers/input/Kconfig" menu "Character devices" config VT bool "Virtual terminal" ---help--- If you say Y here, you will get support for terminal devices with display and keyboard devices. These are called "virtual" because you can run several virtual terminals (also called virtual consoles) on one physical terminal. This is rather useful, for example one virtual terminal can collect system messages and warnings, another one can be used for a text-mode user session, and a third could run an X session, all in parallel. Switching between virtual terminals is done with certain key combinations, usually Alt-. The setterm command ("man setterm") can be used to change the properties (such as colors or beeping) of a virtual terminal. The man page console_codes(4) ("man console_codes") contains the special character sequences that can be used to change those properties directly. The fonts used on virtual terminals can be changed with the setfont ("man setfont") command and the key bindings are defined with the loadkeys ("man loadkeys") command. You need at least one virtual terminal device in order to make use of your keyboard and monitor. Therefore, only people configuring an embedded system would want to say N here in order to save some memory; the only way to log into such a system is then via a serial or network connection. If unsure, say Y, or else you won't be able to do much with your new shiny Linux system :-) config VT_CONSOLE bool "Support for console on virtual terminal" depends on VT ---help--- The system console is the device which receives all kernel messages and warnings and which allows logins in single user mode. If you answer Y here, a virtual terminal (the device used to interact with a physical terminal) can be used as system console. This is the most common mode of operations, so you should say Y here unless you want the kernel messages be output only to a serial port (in which case you should say Y to "Console on serial port", below). If you do say Y here, by default the currently visible virtual terminal (/dev/tty0) will be used as system console. You can change that with a kernel command line option such as "console=tty3" which would use the third virtual terminal as system console. (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) If unsure, say Y. config HW_CONSOLE bool depends on VT && !S390 && !UM default y comment "Unix98 PTY support" config UNIX98_PTYS bool "Unix98 PTY support" ---help--- A pseudo terminal (PTY) is a software device consisting of two halves: a master and a slave. The slave device behaves identical to a physical terminal; the master device is used by a process to read data from and write data to the slave, thereby emulating a terminal. Typical programs for the master side are telnet servers and xterms. Linux has traditionally used the BSD-like names /dev/ptyxx for masters and /dev/ttyxx for slaves of pseudo terminals. This scheme has a number of problems. The GNU C library glibc 2.1 and later, however, supports the Unix98 naming standard: in order to acquire a pseudo terminal, a process opens /dev/ptmx; the number of the pseudo terminal is then made available to the process and the pseudo terminal slave can be accessed as /dev/pts/. What was traditionally /dev/ttyp2 will then be /dev/pts/2, for example. The entries in /dev/pts/ are created on the fly by a virtual file system; therefore, if you say Y here you should say Y to "/dev/pts file system for Unix98 PTYs" as well. If you want to say Y here, you need to have the C library glibc 2.1 or later (equal to libc-6.1, check with "ls -l /lib/libc.so.*"). Read the instructions in pertaining to pseudo terminals. It's safe to say N. source "drivers/char/pcmcia/Kconfig" source "drivers/serial/Kconfig" source "drivers/i2c/Kconfig" source "drivers/hwmon/Kconfig" source "drivers/usb/Kconfig" source "drivers/uwb/Kconfig" endmenu source "drivers/staging/Kconfig" source "fs/Kconfig" source "arch/h8300/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" if MACH_LOONGSON choice prompt "Machine Type" config LEMOTE_FULOONG2E bool "Lemote Fuloong(2e) mini-PC" select ARCH_SPARSEMEM_ENABLE select CEVT_R4K select CSRC_R4K select SYS_HAS_CPU_LOONGSON2E select DMA_NONCOHERENT select BOOT_ELF32 select BOARD_SCACHE select HW_HAS_PCI select I8259 select ISA select IRQ_CPU select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_HAS_EARLY_PRINTK select GENERIC_ISA_DMA_SUPPORT_BROKEN select CPU_HAS_WB select LOONGSON_MC146818 help Lemote Fuloong(2e) mini-PC board based on the Chinese Loongson-2E CPU and an FPGA northbridge Lemote Fuloong(2e) mini PC have a VIA686B south bridge. config LEMOTE_MACH2F bool "Lemote Loongson 2F family machines" select ARCH_SPARSEMEM_ENABLE select BOARD_SCACHE select BOOT_ELF32 select CEVT_R4K if ! MIPS_EXTERNAL_TIMER select CPU_HAS_WB select CS5536 select CSRC_R4K if ! MIPS_EXTERNAL_TIMER select DMA_NONCOHERENT select GENERIC_ISA_DMA_SUPPORT_BROKEN select HW_HAS_PCI select I8259 select IRQ_CPU select ISA select SYS_HAS_CPU_LOONGSON2F select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_LITTLE_ENDIAN select LOONGSON_MC146818 help Lemote Loongson 2F family machines utilize the 2F revision of Loongson processor and the AMD CS5536 south bridge. These family machines include fuloong2f mini PC, yeeloong2f notebook, LingLoong allinone PC and so forth. endchoice config CS5536 bool config CS5536_MFGPT bool "CS5536 MFGPT Timer" depends on CS5536 select MIPS_EXTERNAL_TIMER help This option enables the mfgpt0 timer of AMD CS5536. If you want to enable the Loongson2 CPUFreq Driver, Please enable this option at first, otherwise, You will get wrong system time. If unsure, say Yes. config LOONGSON_SUSPEND bool default y depends on CPU_SUPPORTS_CPUFREQ && SUSPEND config LOONGSON_UART_BASE bool default y depends on EARLY_PRINTK || SERIAL_8250 config LOONGSON_MC146818 bool default n endif # MACH_LOONGSON #config SGI_SN0_XXL # bool "IP27 XXL" # depends on SGI_IP27 # This options adds support for userspace processes up to 16TB size. # Normally the limit is just .5TB. choice prompt "Node addressing mode" depends on SGI_IP27 default SGI_SN_M_MODE config SGI_SN_M_MODE bool "IP27 M-Mode" help The nodes of Origin, Onyx, Fuel and Tezro systems can be configured in either N-Modes which allows for more nodes or M-Mode which allows for more memory. Your hardware is almost certainly running in M-Mode, so choose M-mode here. config SGI_SN_N_MODE bool "IP27 N-Mode" depends on EXPERIMENTAL help The nodes of Origin, Onyx, Fuel and Tezro systems can be configured in either N-Modes which allows for more nodes or M-Mode which allows for more memory. Your hardware is almost certainly running in M-Mode, so choose M-mode here. endchoice config MAPPED_KERNEL bool "Mapped kernel support" depends on SGI_IP27 help Change the way a Linux kernel is loaded into memory on a MIPS64 machine. This is required in order to support text replication on NUMA. If you need to understand it, read the source code. config REPLICATE_KTEXT bool "Kernel text replication support" depends on SGI_IP27 select MAPPED_KERNEL help Say Y here to enable replicating the kernel text across multiple nodes in a NUMA cluster. This trades memory for speed. config REPLICATE_EXHANDLERS bool "Exception handler replication support" depends on SGI_IP27 help Say Y here to enable replicating the kernel exception handlers across multiple nodes in a NUMA cluster. This trades memory for speed. config MIPS bool default y select HAVE_GENERIC_DMA_COHERENT select HAVE_IDE select HAVE_OPROFILE select HAVE_IRQ_WORK select HAVE_PERF_EVENTS select PERF_USE_VMALLOC select HAVE_ARCH_KGDB select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_TRACE_MCOUNT_TEST select HAVE_DYNAMIC_FTRACE select HAVE_FTRACE_MCOUNT_RECORD select HAVE_C_RECORDMCOUNT select HAVE_FUNCTION_GRAPH_TRACER select HAVE_KPROBES select HAVE_KRETPROBES select RTC_LIB if !MACH_LOONGSON select GENERIC_ATOMIC64 if !64BIT select HAVE_DMA_ATTRS select HAVE_DMA_API_DEBUG select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_PROBE select GENERIC_IRQ_SHOW select HAVE_ARCH_JUMP_LABEL menu "Machine selection" config ZONE_DMA bool choice prompt "System type" default SGI_IP22 config MIPS_ALCHEMY bool "Alchemy processor based machines" select 64BIT_PHYS_ADDR select CEVT_R4K_LIB select CSRC_R4K_LIB select IRQ_CPU select SYS_HAS_CPU_MIPS32_R1 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_APM_EMULATION select GENERIC_GPIO select ARCH_WANT_OPTIONAL_GPIOLIB select SYS_SUPPORTS_ZBOOT config AR7 bool "Texas Instruments AR7" select BOOT_ELF32 select DMA_NONCOHERENT select CEVT_R4K select CSRC_R4K select IRQ_CPU select NO_EXCEPT_FILL select SWAP_IO_SPACE select SYS_HAS_CPU_MIPS32_R1 select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_SUPPORTS_ZBOOT_UART16550 select ARCH_REQUIRE_GPIOLIB select GCD select VLYNQ help Support for the Texas Instruments AR7 System-on-a-Chip family: TNETD7100, 7200 and 7300. config ATH79 bool "Atheros AR71XX/AR724X/AR913X based boards" select ARCH_REQUIRE_GPIOLIB select BOOT_RAW select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select IRQ_CPU select MIPS_MACHINE select SYS_HAS_CPU_MIPS32_R2 select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN help Support for the Atheros AR71XX/AR724X/AR913X SoCs. config BCM47XX bool "Broadcom BCM47XX based boards" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select HW_HAS_PCI select IRQ_CPU select SYS_HAS_CPU_MIPS32_R1 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN select SSB select SSB_DRIVER_MIPS select SSB_DRIVER_EXTIF select SSB_EMBEDDED select SSB_B43_PCI_BRIDGE if PCI select SSB_PCICORE_HOSTMODE if PCI select GENERIC_GPIO select SYS_HAS_EARLY_PRINTK select CFE help Support for BCM47XX based boards config BCM63XX bool "Broadcom BCM63XX based boards" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select IRQ_CPU select SYS_HAS_CPU_MIPS32_R1 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_HAS_EARLY_PRINTK select SWAP_IO_SPACE select ARCH_REQUIRE_GPIOLIB help Support for BCM63XX based boards config MIPS_COBALT bool "Cobalt Server" select CEVT_R4K select CSRC_R4K select CEVT_GT641XX select DMA_NONCOHERENT select HW_HAS_PCI select I8253 select I8259 select IRQ_CPU select IRQ_GT641XX select PCI_GT64XXX_PCI0 select PCI select SYS_HAS_CPU_NEVADA select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN config MACH_DECSTATION bool "DECstations" select BOOT_ELF32 select CEVT_DS1287 select CEVT_R4K select CSRC_IOASIC select CSRC_R4K select CPU_DADDI_WORKAROUNDS if 64BIT select CPU_R4000_WORKAROUNDS if 64BIT select CPU_R4400_WORKAROUNDS if 64BIT select DMA_NONCOHERENT select NO_IOPORT select IRQ_CPU select SYS_HAS_CPU_R3000 select SYS_HAS_CPU_R4X00 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_SUPPORTS_128HZ select SYS_SUPPORTS_256HZ select SYS_SUPPORTS_1024HZ help This enables support for DEC's MIPS based workstations. For details see the Linux/MIPS FAQ on and the DECstation porting pages on . If you have one of the following DECstation Models you definitely want to choose R4xx0 for the CPU Type: DECstation 5000/50 DECstation 5000/150 DECstation 5000/260 DECsystem 5900/260 otherwise choose R3000. config MACH_JAZZ bool "Jazz family of machines" select ARC select ARC32 select ARCH_MAY_HAVE_PC_FDC select CEVT_R4K select CSRC_R4K select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN select GENERIC_ISA_DMA select IRQ_CPU select I8253 select I8259 select ISA select SYS_HAS_CPU_R4X00 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL select SYS_SUPPORTS_100HZ help This a family of machines based on the MIPS R4030 chipset which was used by several vendors to build RISC/os and Windows NT workstations. Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and Olivetti M700-10 workstations. config MACH_JZ4740 bool "Ingenic JZ4740 based machines" select SYS_HAS_CPU_MIPS32_R1 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN select DMA_NONCOHERENT select IRQ_CPU select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB select SYS_HAS_EARLY_PRINTK select HAVE_PWM select HAVE_CLK config LASAT bool "LASAT Networks platforms" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select SYS_HAS_EARLY_PRINTK select HW_HAS_PCI select IRQ_CPU select PCI_GT64XXX_PCI0 select MIPS_NILE4 select R5000_CPU_SCACHE select SYS_HAS_CPU_R5000 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL if BROKEN select SYS_SUPPORTS_LITTLE_ENDIAN config MACH_LOONGSON bool "Loongson family of machines" select SYS_SUPPORTS_ZBOOT help This enables the support of Loongson family of machines. Loongson is a family of general-purpose MIPS-compatible CPUs. developed at Institute of Computing Technology (ICT), Chinese Academy of Sciences (CAS) in the People's Republic of China. The chief architect is Professor Weiwu Hu. config MIPS_MALTA bool "MIPS Malta board" select ARCH_MAY_HAVE_PC_FDC select BOOT_ELF32 select BOOT_RAW select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select GENERIC_ISA_DMA select IRQ_CPU select IRQ_GIC select HW_HAS_PCI select I8253 select I8259 select MIPS_BOARDS_GEN select MIPS_BONITO64 select MIPS_CPU_SCACHE select PCI_GT64XXX_PCI0 select MIPS_MSC select SWAP_IO_SPACE select SYS_HAS_CPU_MIPS32_R1 select SYS_HAS_CPU_MIPS32_R2 select SYS_HAS_CPU_MIPS64_R1 select SYS_HAS_CPU_NEVADA select SYS_HAS_CPU_RM7000 select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_SUPPORTS_MIPS_CMP select SYS_SUPPORTS_MULTITHREADING select SYS_SUPPORTS_SMARTMIPS select SYS_SUPPORTS_ZBOOT help This enables support for the MIPS Technologies Malta evaluation board. config MIPS_SIM bool 'MIPS simulator (MIPSsim)' select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select SYS_HAS_EARLY_PRINTK select IRQ_CPU select BOOT_RAW select SYS_HAS_CPU_MIPS32_R1 select SYS_HAS_CPU_MIPS32_R2 select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_MULTITHREADING select SYS_SUPPORTS_LITTLE_ENDIAN help This option enables support for MIPS Technologies MIPSsim software emulator. config NEC_MARKEINS bool "NEC EMMA2RH Mark-eins board" select SOC_EMMA2RH select HW_HAS_PCI help This enables support for the NEC Electronics Mark-eins boards. config MACH_VR41XX bool "NEC VR4100 series based machines" select CEVT_R4K select CSRC_R4K select SYS_HAS_CPU_VR41XX select ARCH_REQUIRE_GPIOLIB config NXP_STB220 bool "NXP STB220 board" select SOC_PNX833X help Support for NXP Semiconductors STB220 Development Board. config NXP_STB225 bool "NXP 225 board" select SOC_PNX833X select SOC_PNX8335 help Support for NXP Semiconductors STB225 Development Board. config PNX8550_JBS bool "NXP PNX8550 based JBS board" select PNX8550 select SYS_SUPPORTS_LITTLE_ENDIAN config PNX8550_STB810 bool "NXP PNX8550 based STB810 board" select PNX8550 select SYS_SUPPORTS_LITTLE_ENDIAN config PMC_MSP bool "PMC-Sierra MSP chipsets" depends on EXPERIMENTAL select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select SWAP_IO_SPACE select NO_EXCEPT_FILL select BOOT_RAW select SYS_HAS_CPU_MIPS32_R1 select SYS_HAS_CPU_MIPS32_R2 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select IRQ_CPU select SERIAL_8250 select SERIAL_8250_CONSOLE help This adds support for the PMC-Sierra family of Multi-Service Processor System-On-A-Chips. These parts include a number of integrated peripherals, interfaces and DSPs in addition to a variety of MIPS cores. config PMC_YOSEMITE bool "PMC-Sierra Yosemite eval board" select CEVT_R4K select CSRC_R4K select DMA_COHERENT select HW_HAS_PCI select IRQ_CPU select IRQ_CPU_RM7K select IRQ_CPU_RM9K select SWAP_IO_SPACE select SYS_HAS_CPU_RM9000 select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_SMP help Yosemite is an evaluation board for the RM9000x2 processor manufactured by PMC-Sierra. config POWERTV bool "Cisco PowerTV" select BOOT_ELF32 select CEVT_R4K select CPU_MIPSR2_IRQ_VI select CPU_MIPSR2_IRQ_EI select CSRC_POWERTV select DMA_NONCOHERENT select HW_HAS_PCI select SYS_HAS_EARLY_PRINTK select SYS_HAS_CPU_MIPS32_R2 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select USB_OHCI_LITTLE_ENDIAN help This enables support for the Cisco PowerTV Platform. config SGI_IP22 bool "SGI IP22 (Indy/Indigo2)" select ARC select ARC32 select BOOT_ELF32 select CEVT_R4K select CSRC_R4K select DEFAULT_SGI_PARTITION select DMA_NONCOHERENT select HW_HAS_EISA select I8253 select I8259 select IP22_CPU_SCACHE select IRQ_CPU select GENERIC_ISA_DMA_SUPPORT_BROKEN select SGI_HAS_I8042 select SGI_HAS_INDYDOG select SGI_HAS_HAL2 select SGI_HAS_SEEQ select SGI_HAS_WD93 select SGI_HAS_ZILOG select SWAP_IO_SPACE select SYS_HAS_CPU_R4X00 select SYS_HAS_CPU_R5000 # # Disable EARLY_PRINTK for now since it leads to overwritten prom # memory during early boot on some machines. # # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com # for a more details discussion # # select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN help This are the SGI Indy, Challenge S and Indigo2, as well as certain OEM variants like the Tandem CMN B006S. To compile a Linux kernel that runs on these, say Y here. config SGI_IP27 bool "SGI IP27 (Origin200/2000)" select ARC select ARC64 select BOOT_ELF64 select DEFAULT_SGI_PARTITION select DMA_COHERENT select SYS_HAS_EARLY_PRINTK select HW_HAS_PCI select NR_CPUS_DEFAULT_64 select SYS_HAS_CPU_R10000 select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_NUMA select SYS_SUPPORTS_SMP help This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics workstations. To compile a Linux kernel that runs on these, say Y here. config SGI_IP28 bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)" depends on EXPERIMENTAL select ARC select ARC64 select BOOT_ELF64 select CEVT_R4K select CSRC_R4K select DEFAULT_SGI_PARTITION select DMA_NONCOHERENT select GENERIC_ISA_DMA_SUPPORT_BROKEN select IRQ_CPU select HW_HAS_EISA select I8253 select I8259 select SGI_HAS_I8042 select SGI_HAS_INDYDOG select SGI_HAS_HAL2 select SGI_HAS_SEEQ select SGI_HAS_WD93 select SGI_HAS_ZILOG select SWAP_IO_SPACE select SYS_HAS_CPU_R10000 # # Disable EARLY_PRINTK for now since it leads to overwritten prom # memory during early boot on some machines. # # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com # for a more details discussion # # select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN help This is the SGI Indigo2 with R10000 processor. To compile a Linux kernel that runs on these, say Y here. config SGI_IP32 bool "SGI IP32 (O2)" select ARC select ARC32 select BOOT_ELF32 select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select HW_HAS_PCI select IRQ_CPU select R5000_CPU_SCACHE select RM7000_CPU_SCACHE select SYS_HAS_CPU_R5000 select SYS_HAS_CPU_R10000 if BROKEN select SYS_HAS_CPU_RM7000 select SYS_HAS_CPU_NEVADA select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN help If you want this kernel to run on SGI O2 workstation, say Y here. config SIBYTE_CRHINE bool "Sibyte BCM91120C-CRhine" depends on EXPERIMENTAL select BOOT_ELF32 select DMA_COHERENT select SIBYTE_BCM1120 select SWAP_IO_SPACE select SYS_HAS_CPU_SB1 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_LITTLE_ENDIAN config SIBYTE_CARMEL bool "Sibyte BCM91120x-Carmel" depends on EXPERIMENTAL select BOOT_ELF32 select DMA_COHERENT select SIBYTE_BCM1120 select SWAP_IO_SPACE select SYS_HAS_CPU_SB1 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_LITTLE_ENDIAN config SIBYTE_CRHONE bool "Sibyte BCM91125C-CRhone" depends on EXPERIMENTAL select BOOT_ELF32 select DMA_COHERENT select SIBYTE_BCM1125 select SWAP_IO_SPACE select SYS_HAS_CPU_SB1 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_LITTLE_ENDIAN config SIBYTE_RHONE bool "Sibyte BCM91125E-Rhone" depends on EXPERIMENTAL select BOOT_ELF32 select DMA_COHERENT select SIBYTE_BCM1125H select SWAP_IO_SPACE select SYS_HAS_CPU_SB1 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_LITTLE_ENDIAN config SIBYTE_SWARM bool "Sibyte BCM91250A-SWARM" select BOOT_ELF32 select DMA_COHERENT select HAVE_PATA_PLATFORM select NR_CPUS_DEFAULT_2 select SIBYTE_SB1250 select SWAP_IO_SPACE select SYS_HAS_CPU_SB1 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_LITTLE_ENDIAN select ZONE_DMA32 if 64BIT config SIBYTE_LITTLESUR bool "Sibyte BCM91250C2-LittleSur" depends on EXPERIMENTAL select BOOT_ELF32 select DMA_COHERENT select HAVE_PATA_PLATFORM select NR_CPUS_DEFAULT_2 select SIBYTE_SB1250 select SWAP_IO_SPACE select SYS_HAS_CPU_SB1 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_LITTLE_ENDIAN config SIBYTE_SENTOSA bool "Sibyte BCM91250E-Sentosa" depends on EXPERIMENTAL select BOOT_ELF32 select DMA_COHERENT select NR_CPUS_DEFAULT_2 select SIBYTE_SB1250 select SWAP_IO_SPACE select SYS_HAS_CPU_SB1 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_LITTLE_ENDIAN config SIBYTE_BIGSUR bool "Sibyte BCM91480B-BigSur" select BOOT_ELF32 select DMA_COHERENT select NR_CPUS_DEFAULT_4 select SIBYTE_BCM1x80 select SWAP_IO_SPACE select SYS_HAS_CPU_SB1 select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_LITTLE_ENDIAN select ZONE_DMA32 if 64BIT config SNI_RM bool "SNI RM200/300/400" select ARC if CPU_LITTLE_ENDIAN select ARC32 if CPU_LITTLE_ENDIAN select SNIPROM if CPU_BIG_ENDIAN select ARCH_MAY_HAVE_PC_FDC select BOOT_ELF32 select CEVT_R4K select CSRC_R4K select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN select DMA_NONCOHERENT select GENERIC_ISA_DMA select HW_HAS_EISA select HW_HAS_PCI select IRQ_CPU select I8253 select I8259 select ISA select SWAP_IO_SPACE if CPU_BIG_ENDIAN select SYS_HAS_CPU_R4X00 select SYS_HAS_CPU_R5000 select SYS_HAS_CPU_R10000 select R5000_CPU_SCACHE select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_LITTLE_ENDIAN help The SNI RM200/300/400 are MIPS-based machines manufactured by Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid Technology and now in turn merged with Fujitsu. Say Y here to support this machine type. config MACH_TX39XX bool "Toshiba TX39 series based machines" config MACH_TX49XX bool "Toshiba TX49 series based machines" config MIKROTIK_RB532 bool "Mikrotik RB532 boards" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select HW_HAS_PCI select IRQ_CPU select SYS_HAS_CPU_MIPS32_R1 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN select SWAP_IO_SPACE select BOOT_RAW select ARCH_REQUIRE_GPIOLIB help Support the Mikrotik(tm) RouterBoard 532 series, based on the IDT RC32434 SoC. config WR_PPMC bool "Wind River PPMC board" select CEVT_R4K select CSRC_R4K select IRQ_CPU select BOOT_ELF32 select DMA_NONCOHERENT select HW_HAS_PCI select PCI_GT64XXX_PCI0 select SWAP_IO_SPACE select SYS_HAS_CPU_MIPS32_R1 select SYS_HAS_CPU_MIPS32_R2 select SYS_HAS_CPU_MIPS64_R1 select SYS_HAS_CPU_NEVADA select SYS_HAS_CPU_RM7000 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_LITTLE_ENDIAN help This enables support for the Wind River MIPS32 4KC PPMC evaluation board, which is based on GT64120 bridge chip. config CAVIUM_OCTEON_SIMULATOR bool "Cavium Networks Octeon Simulator" select CEVT_R4K select 64BIT_PHYS_ADDR select DMA_COHERENT select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_HOTPLUG_CPU select SYS_HAS_CPU_CAVIUM_OCTEON help The Octeon simulator is software performance model of the Cavium Octeon Processor. It supports simulating Octeon processors on x86 hardware. config CAVIUM_OCTEON_REFERENCE_BOARD bool "Cavium Networks Octeon reference board" select CEVT_R4K select 64BIT_PHYS_ADDR select DMA_COHERENT select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_HIGHMEM select SYS_SUPPORTS_HOTPLUG_CPU select SYS_HAS_EARLY_PRINTK select SYS_HAS_CPU_CAVIUM_OCTEON select SWAP_IO_SPACE select HW_HAS_PCI select ARCH_SUPPORTS_MSI select ZONE_DMA32 select USB_ARCH_HAS_OHCI select USB_ARCH_HAS_EHCI help This option supports all of the Octeon reference boards from Cavium Networks. It builds a kernel that dynamically determines the Octeon CPU type and supports all known board reference implementations. Some of the supported boards are: EBT3000 EBH3000 EBH3100 Thunder Kodama Hikari Say Y here for most Octeon reference boards. endchoice source "arch/mips/alchemy/Kconfig" source "arch/mips/ath79/Kconfig" source "arch/mips/bcm63xx/Kconfig" source "arch/mips/jazz/Kconfig" source "arch/mips/jz4740/Kconfig" source "arch/mips/lasat/Kconfig" source "arch/mips/pmc-sierra/Kconfig" source "arch/mips/powertv/Kconfig" source "arch/mips/sgi-ip27/Kconfig" source "arch/mips/sibyte/Kconfig" source "arch/mips/txx9/Kconfig" source "arch/mips/vr41xx/Kconfig" source "arch/mips/cavium-octeon/Kconfig" source "arch/mips/loongson/Kconfig" endmenu config RWSEM_GENERIC_SPINLOCK bool default y config RWSEM_XCHGADD_ALGORITHM bool config ARCH_HAS_ILOG2_U32 bool default n config ARCH_HAS_ILOG2_U64 bool default n config ARCH_SUPPORTS_OPROFILE bool default y if !MIPS_MT_SMTC config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_FIND_BIT_LE bool default y config GENERIC_HWEIGHT bool default y config GENERIC_CALIBRATE_DELAY bool default y config GENERIC_CLOCKEVENTS bool default y config GENERIC_CMOS_UPDATE bool default y config SCHED_OMIT_FRAME_POINTER bool default y # # Select some configuration options automatically based on user selections. # config ARC bool config ARCH_MAY_HAVE_PC_FDC bool config BOOT_RAW bool config CEVT_BCM1480 bool config CEVT_DS1287 bool config CEVT_GT641XX bool config CEVT_R4K_LIB bool config CEVT_R4K select CEVT_R4K_LIB bool config CEVT_SB1250 bool config CEVT_TXX9 bool config CSRC_BCM1480 bool config CSRC_IOASIC bool config CSRC_POWERTV bool config CSRC_R4K_LIB bool config CSRC_R4K select CSRC_R4K_LIB bool config CSRC_SB1250 bool config GPIO_TXX9 select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB bool config CFE bool config ARCH_DMA_ADDR_T_64BIT def_bool (HIGHMEM && 64BIT_PHYS_ADDR) || 64BIT config DMA_COHERENT bool config DMA_NONCOHERENT bool select NEED_DMA_MAP_STATE config NEED_DMA_MAP_STATE bool config SYS_HAS_EARLY_PRINTK bool config HOTPLUG_CPU bool "Support for hot-pluggable CPUs" depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU help Say Y here to allow turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. (Note: power management support will enable this option automatically on SMP systems. ) Say N if you want to disable CPU hotplug. config SYS_SUPPORTS_HOTPLUG_CPU bool config I8259 bool config MIPS_BONITO64 bool config MIPS_MSC bool config MIPS_NILE4 bool config MIPS_DISABLE_OBSOLETE_IDE bool config SYNC_R4K bool config MIPS_MACHINE def_bool n config NO_IOPORT def_bool n config GENERIC_ISA_DMA bool select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n select ISA_DMA_API config GENERIC_ISA_DMA_SUPPORT_BROKEN bool select GENERIC_ISA_DMA config ISA_DMA_API bool config GENERIC_GPIO bool # # Endianess selection. Sufficiently obscure so many users don't know what to # answer,so we try hard to limit the available choices. Also the use of a # choice statement should be more obvious to the user. # choice prompt "Endianess selection" help Some MIPS machines can be configured for either little or big endian byte order. These modes require different kernels and a different Linux distribution. In general there is one preferred byteorder for a particular system but some systems are just as commonly used in the one or the other endianness. config CPU_BIG_ENDIAN bool "Big endian" depends on SYS_SUPPORTS_BIG_ENDIAN config CPU_LITTLE_ENDIAN bool "Little endian" depends on SYS_SUPPORTS_LITTLE_ENDIAN help endchoice config EXPORT_UASM bool config SYS_SUPPORTS_APM_EMULATION bool config SYS_SUPPORTS_BIG_ENDIAN bool config SYS_SUPPORTS_LITTLE_ENDIAN bool config SYS_SUPPORTS_HUGETLBFS bool depends on CPU_SUPPORTS_HUGEPAGES && 64BIT default y config IRQ_CPU bool config IRQ_CPU_RM7K bool config IRQ_CPU_RM9K bool config IRQ_MSP_SLP bool config IRQ_MSP_CIC bool config IRQ_TXX9 bool config IRQ_GT641XX bool config IRQ_GIC bool config MIPS_BOARDS_GEN bool config PCI_GT64XXX_PCI0 bool config NO_EXCEPT_FILL bool config MIPS_RM9122 bool select SERIAL_RM9000 config SOC_EMMA2RH bool select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select IRQ_CPU select SWAP_IO_SPACE select SYS_HAS_CPU_R5500 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_BIG_ENDIAN config SOC_PNX833X bool select CEVT_R4K select CSRC_R4K select IRQ_CPU select DMA_NONCOHERENT select SYS_HAS_CPU_MIPS32_R2 select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_SUPPORTS_BIG_ENDIAN select GENERIC_GPIO select CPU_MIPSR2_IRQ_VI config SOC_PNX8335 bool select SOC_PNX833X config PNX8550 bool select SOC_PNX8550 config SOC_PNX8550 bool select DMA_NONCOHERENT select HW_HAS_PCI select SYS_HAS_CPU_MIPS32_R1 select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select GENERIC_GPIO config SWAP_IO_SPACE bool config SERIAL_RM9000 bool config SGI_HAS_INDYDOG bool config SGI_HAS_HAL2 bool config SGI_HAS_SEEQ bool config SGI_HAS_WD93 bool config SGI_HAS_ZILOG bool config SGI_HAS_I8042 bool config DEFAULT_SGI_PARTITION bool config ARC32 bool config SNIPROM bool config BOOT_ELF32 bool config MIPS_L1_CACHE_SHIFT int default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL default "6" if MIPS_CPU_SCACHE default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON default "5" config HAVE_STD_PC_SERIAL_PORT bool config ARC_CONSOLE bool "ARC console support" depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN) config ARC_MEMORY bool depends on MACH_JAZZ || SNI_RM || SGI_IP32 default y config ARC_PROMLIB bool depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32 default y config ARC64 bool config BOOT_ELF64 bool menu "CPU selection" choice prompt "CPU type" default CPU_R4X00 config CPU_LOONGSON2E bool "Loongson 2E" depends on SYS_HAS_CPU_LOONGSON2E select CPU_LOONGSON2 help The Loongson 2E processor implements the MIPS III instruction set with many extensions. It has an internal FPGA northbridge, which is compatible to bonito64. config CPU_LOONGSON2F bool "Loongson 2F" depends on SYS_HAS_CPU_LOONGSON2F select CPU_LOONGSON2 select GENERIC_GPIO select ARCH_REQUIRE_GPIOLIB help The Loongson 2F processor implements the MIPS III instruction set with many extensions. Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller have a similar programming interface with FPGA northbridge used in Loongson2E. config CPU_MIPS32_R1 bool "MIPS32 Release 1" depends on SYS_HAS_CPU_MIPS32_R1 select CPU_HAS_PREFETCH select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_HIGHMEM help Choose this option to build a kernel for release 1 or later of the MIPS32 architecture. Most modern embedded systems with a 32-bit MIPS processor are based on a MIPS32 processor. If you know the specific type of processor in your system, choose those that one otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system. Release 2 of the MIPS32 architecture is available since several years so chances are you even have a MIPS32 Release 2 processor in which case you should choose CPU_MIPS32_R2 instead for better performance. config CPU_MIPS32_R2 bool "MIPS32 Release 2" depends on SYS_HAS_CPU_MIPS32_R2 select CPU_HAS_PREFETCH select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_HIGHMEM help Choose this option to build a kernel for release 2 or later of the MIPS32 architecture. Most modern embedded systems with a 32-bit MIPS processor are based on a MIPS32 processor. If you know the specific type of processor in your system, choose those that one otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system. config CPU_MIPS64_R1 bool "MIPS64 Release 1" depends on SYS_HAS_CPU_MIPS64_R1 select CPU_HAS_PREFETCH select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL select CPU_SUPPORTS_HIGHMEM select CPU_SUPPORTS_HUGEPAGES help Choose this option to build a kernel for release 1 or later of the MIPS64 architecture. Many modern embedded systems with a 64-bit MIPS processor are based on a MIPS64 processor. If you know the specific type of processor in your system, choose those that one otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system. Release 2 of the MIPS64 architecture is available since several years so chances are you even have a MIPS64 Release 2 processor in which case you should choose CPU_MIPS64_R2 instead for better performance. config CPU_MIPS64_R2 bool "MIPS64 Release 2" depends on SYS_HAS_CPU_MIPS64_R2 select CPU_HAS_PREFETCH select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL select CPU_SUPPORTS_HIGHMEM select CPU_SUPPORTS_HUGEPAGES help Choose this option to build a kernel for release 2 or later of the MIPS64 architecture. Many modern embedded systems with a 64-bit MIPS processor are based on a MIPS64 processor. If you know the specific type of processor in your system, choose those that one otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system. config CPU_R3000 bool "R3000" depends on SYS_HAS_CPU_R3000 select CPU_HAS_WB select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_HIGHMEM help Please make sure to pick the right CPU type. Linux/MIPS is not designed to be generic, i.e. Kernels compiled for R3000 CPUs will *not* work on R4000 machines and vice versa. However, since most of the supported machines have an R4000 (or similar) CPU, R4x00 might be a safe bet. If the resulting kernel does not work, try to recompile with R3000. config CPU_TX39XX bool "R39XX" depends on SYS_HAS_CPU_TX39XX select CPU_SUPPORTS_32BIT_KERNEL config CPU_VR41XX bool "R41xx" depends on SYS_HAS_CPU_VR41XX select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL help The options selects support for the NEC VR4100 series of processors. Only choose this option if you have one of these processors as a kernel built with this option will not run on any other type of processor or vice versa. config CPU_R4300 bool "R4300" depends on SYS_HAS_CPU_R4300 select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL help MIPS Technologies R4300-series processors. config CPU_R4X00 bool "R4x00" depends on SYS_HAS_CPU_R4X00 select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL help MIPS Technologies R4000-series processors other than 4300, including the R4000, R4400, R4600, and 4700. config CPU_TX49XX bool "R49XX" depends on SYS_HAS_CPU_TX49XX select CPU_HAS_PREFETCH select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL config CPU_R5000 bool "R5000" depends on SYS_HAS_CPU_R5000 select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL help MIPS Technologies R5000-series processors other than the Nevada. config CPU_R5432 bool "R5432" depends on SYS_HAS_CPU_R5432 select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL config CPU_R5500 bool "R5500" depends on SYS_HAS_CPU_R5500 select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL select CPU_SUPPORTS_HUGEPAGES help NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV instruction set. config CPU_R6000 bool "R6000" depends on EXPERIMENTAL depends on SYS_HAS_CPU_R6000 select CPU_SUPPORTS_32BIT_KERNEL help MIPS Technologies R6000 and R6000A series processors. Note these processors are extremely rare and the support for them is incomplete. config CPU_NEVADA bool "RM52xx" depends on SYS_HAS_CPU_NEVADA select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL help QED / PMC-Sierra RM52xx-series ("Nevada") processors. config CPU_R8000 bool "R8000" depends on EXPERIMENTAL depends on SYS_HAS_CPU_R8000 select CPU_HAS_PREFETCH select CPU_SUPPORTS_64BIT_KERNEL help MIPS Technologies R8000 processors. Note these processors are uncommon and the support for them is incomplete. config CPU_R10000 bool "R10000" depends on SYS_HAS_CPU_R10000 select CPU_HAS_PREFETCH select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL select CPU_SUPPORTS_HIGHMEM help MIPS Technologies R10000-series processors. config CPU_RM7000 bool "RM7000" depends on SYS_HAS_CPU_RM7000 select CPU_HAS_PREFETCH select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL select CPU_SUPPORTS_HIGHMEM config CPU_RM9000 bool "RM9000" depends on SYS_HAS_CPU_RM9000 select CPU_HAS_PREFETCH select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL select CPU_SUPPORTS_HIGHMEM select WEAK_ORDERING config CPU_SB1 bool "SB1" depends on SYS_HAS_CPU_SB1 select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL select CPU_SUPPORTS_HIGHMEM select WEAK_ORDERING config CPU_CAVIUM_OCTEON bool "Cavium Octeon processor" depends on SYS_HAS_CPU_CAVIUM_OCTEON select CPU_HAS_PREFETCH select CPU_SUPPORTS_64BIT_KERNEL select SYS_SUPPORTS_SMP select NR_CPUS_DEFAULT_16 select WEAK_ORDERING select CPU_SUPPORTS_HIGHMEM select CPU_SUPPORTS_HUGEPAGES help The Cavium Octeon processor is a highly integrated chip containing many ethernet hardware widgets for networking tasks. The processor can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets. Full details can be found at http://www.caviumnetworks.com. config CPU_BMIPS3300 bool "BMIPS3300" depends on SYS_HAS_CPU_BMIPS3300 select DMA_NONCOHERENT select IRQ_CPU select SWAP_IO_SPACE select SYS_SUPPORTS_32BIT_KERNEL select WEAK_ORDERING help Broadcom BMIPS3300 processors. config CPU_BMIPS4350 bool "BMIPS4350" depends on SYS_HAS_CPU_BMIPS4350 select CPU_SUPPORTS_32BIT_KERNEL select DMA_NONCOHERENT select IRQ_CPU select SWAP_IO_SPACE select SYS_SUPPORTS_SMP select SYS_SUPPORTS_HOTPLUG_CPU select WEAK_ORDERING help Broadcom BMIPS4350 ("VIPER") processors. config CPU_BMIPS4380 bool "BMIPS4380" depends on SYS_HAS_CPU_BMIPS4380 select CPU_SUPPORTS_32BIT_KERNEL select DMA_NONCOHERENT select IRQ_CPU select SWAP_IO_SPACE select SYS_SUPPORTS_SMP select SYS_SUPPORTS_HOTPLUG_CPU select WEAK_ORDERING help Broadcom BMIPS4380 processors. config CPU_BMIPS5000 bool "BMIPS5000" depends on SYS_HAS_CPU_BMIPS5000 select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_HIGHMEM select DMA_NONCOHERENT select IRQ_CPU select SWAP_IO_SPACE select SYS_SUPPORTS_SMP select SYS_SUPPORTS_HOTPLUG_CPU select WEAK_ORDERING help Broadcom BMIPS5000 processors. endchoice if CPU_LOONGSON2F config CPU_NOP_WORKAROUNDS bool config CPU_JUMP_WORKAROUNDS bool config CPU_LOONGSON2F_WORKAROUNDS bool "Loongson 2F Workarounds" default y select CPU_NOP_WORKAROUNDS select CPU_JUMP_WORKAROUNDS help Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which require workarounds. Without workarounds the system may hang unexpectedly. For more information please refer to the gas -mfix-loongson2f-nop and -mfix-loongson2f-jump options. Loongson 2F03 and later have fixed these issues and no workarounds are needed. The workarounds have no significant side effect on them but may decrease the performance of the system so this option should be disabled unless the kernel is intended to be run on 2F01 or 2F02 systems. If unsure, please say Y. endif # CPU_LOONGSON2F config SYS_SUPPORTS_ZBOOT bool select HAVE_KERNEL_GZIP select HAVE_KERNEL_BZIP2 select HAVE_KERNEL_LZMA select HAVE_KERNEL_LZO config SYS_SUPPORTS_ZBOOT_UART16550 bool select SYS_SUPPORTS_ZBOOT config CPU_LOONGSON2 bool select CPU_SUPPORTS_32BIT_KERNEL select CPU_SUPPORTS_64BIT_KERNEL select CPU_SUPPORTS_HIGHMEM config SYS_HAS_CPU_LOONGSON2E bool config SYS_HAS_CPU_LOONGSON2F bool select CPU_SUPPORTS_CPUFREQ select CPU_SUPPORTS_ADDRWINCFG if 64BIT select CPU_SUPPORTS_UNCACHED_ACCELERATED config SYS_HAS_CPU_MIPS32_R1 bool config SYS_HAS_CPU_MIPS32_R2 bool config SYS_HAS_CPU_MIPS64_R1 bool config SYS_HAS_CPU_MIPS64_R2 bool config SYS_HAS_CPU_R3000 bool config SYS_HAS_CPU_TX39XX bool config SYS_HAS_CPU_VR41XX bool config SYS_HAS_CPU_R4300 bool config SYS_HAS_CPU_R4X00 bool config SYS_HAS_CPU_TX49XX bool config SYS_HAS_CPU_R5000 bool config SYS_HAS_CPU_R5432 bool config SYS_HAS_CPU_R5500 bool config SYS_HAS_CPU_R6000 bool config SYS_HAS_CPU_NEVADA bool config SYS_HAS_CPU_R8000 bool config SYS_HAS_CPU_R10000 bool config SYS_HAS_CPU_RM7000 bool config SYS_HAS_CPU_RM9000 bool config SYS_HAS_CPU_SB1 bool config SYS_HAS_CPU_CAVIUM_OCTEON bool config SYS_HAS_CPU_BMIPS3300 bool config SYS_HAS_CPU_BMIPS4350 bool config SYS_HAS_CPU_BMIPS4380 bool config SYS_HAS_CPU_BMIPS5000 bool # # CPU may reorder R->R, R->W, W->R, W->W # Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC # config WEAK_ORDERING bool # # CPU may reorder reads and writes beyond LL/SC # CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC # config WEAK_REORDERING_BEYOND_LLSC bool endmenu # # These two indicate any level of the MIPS32 and MIPS64 architecture # config CPU_MIPS32 bool default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 config CPU_MIPS64 bool default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 # # These two indicate the revision of the architecture, either Release 1 or Release 2 # config CPU_MIPSR1 bool default y if CPU_MIPS32_R1 || CPU_MIPS64_R1 config CPU_MIPSR2 bool default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON config SYS_SUPPORTS_32BIT_KERNEL bool config SYS_SUPPORTS_64BIT_KERNEL bool config CPU_SUPPORTS_32BIT_KERNEL bool config CPU_SUPPORTS_64BIT_KERNEL bool config CPU_SUPPORTS_CPUFREQ bool config CPU_SUPPORTS_ADDRWINCFG bool config CPU_SUPPORTS_HUGEPAGES bool config CPU_SUPPORTS_UNCACHED_ACCELERATED bool config MIPS_PGD_C0_CONTEXT bool default y if 64BIT && CPU_MIPSR2 # # Set to y for ptrace access to watch registers. # config HARDWARE_WATCHPOINTS bool default y if CPU_MIPSR1 || CPU_MIPSR2 menu "Kernel type" choice prompt "Kernel code model" help You should only select this option if you have a workload that actually benefits from 64-bit processing or if your machine has large memory. You will only be presented a single option in this menu if your system does not support both 32-bit and 64-bit kernels. config 32BIT bool "32-bit kernel" depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL select TRAD_SIGNALS help Select this option if you want to build a 32-bit kernel. config 64BIT bool "64-bit kernel" depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL select HAVE_SYSCALL_WRAPPERS help Select this option if you want to build a 64-bit kernel. endchoice choice prompt "Kernel page size" default PAGE_SIZE_4KB config PAGE_SIZE_4KB bool "4kB" depends on !CPU_LOONGSON2 help This option select the standard 4kB Linux page size. On some R3000-family processors this is the only available page size. Using 4kB page size will minimize memory consumption and is therefore recommended for low memory systems. config PAGE_SIZE_8KB bool "8kB" depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON help Using 8kB page size will result in higher performance kernel at the price of higher memory consumption. This option is available only on R8000 and cnMIPS processors. Note that you will need a suitable Linux distribution to support this. config PAGE_SIZE_16KB bool "16kB" depends on !CPU_R3000 && !CPU_TX39XX help Using 16kB page size will result in higher performance kernel at the price of higher memory consumption. This option is available on all non-R3000 family processors. Note that you will need a suitable Linux distribution to support this. config PAGE_SIZE_32KB bool "32kB" depends on CPU_CAVIUM_OCTEON help Using 32kB page size will result in higher performance kernel at the price of higher memory consumption. This option is available only on cnMIPS cores. Note that you will need a suitable Linux distribution to support this. config PAGE_SIZE_64KB bool "64kB" depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX help Using 64kB page size will result in higher performance kernel at the price of higher memory consumption. This option is available on all non-R3000 family processor. Not that at the time of this writing this option is still high experimental. endchoice config FORCE_MAX_ZONEORDER int "Maximum zone order" range 13 64 if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_32KB default "13" if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_32KB range 12 64 if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_16KB default "12" if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_16KB range 11 64 default "11" help The kernel memory allocator divides physically contiguous memory blocks into "zones", where each zone is a power of two number of pages. This option selects the largest power of two that the kernel keeps in the memory allocator. If you need to allocate very large blocks of physically contiguous memory, then you may need to increase this value. This config option is actually maximum order plus one. For example, a value of 11 means that the largest free memory block is 2^10 pages. The page size is not necessarily 4KB. Keep this in mind when choosing a value for this option. config BOARD_SCACHE bool config IP22_CPU_SCACHE bool select BOARD_SCACHE # # Support for a MIPS32 / MIPS64 style S-caches # config MIPS_CPU_SCACHE bool select BOARD_SCACHE config R5000_CPU_SCACHE bool select BOARD_SCACHE config RM7000_CPU_SCACHE bool select BOARD_SCACHE config SIBYTE_DMA_PAGEOPS bool "Use DMA to clear/copy pages" depends on CPU_SB1 help Instead of using the CPU to zero and copy pages, use a Data Mover channel. These DMA channels are otherwise unused by the standard SiByte Linux port. Seems to give a small performance benefit. config CPU_HAS_PREFETCH bool choice prompt "MIPS MT options" config MIPS_MT_DISABLED bool "Disable multithreading support." help Use this option if your workload can't take advantage of MIPS hardware multithreading support. On systems that don't have the option of an MT-enabled processor this option will be the only option in this menu. config MIPS_MT_SMP bool "Use 1 TC on each available VPE for SMP" depends on SYS_SUPPORTS_MULTITHREADING select CPU_MIPSR2_IRQ_VI select CPU_MIPSR2_IRQ_EI select MIPS_MT select NR_CPUS_DEFAULT_2 select SMP select SYS_SUPPORTS_SCHED_SMT if SMP select SYS_SUPPORTS_SMP select SMP_UP help This is a kernel model which is known a VSMP but lately has been marketesed into SMVP. Virtual SMP uses the processor's VPEs to implement virtual processors. In currently available configuration of the 34K processor this allows for a dual processor. Both processors will share the same primary caches; each will obtain the half of the TLB for it's own exclusive use. For a layman this model can be described as similar to what Intel calls Hyperthreading. For further information see http://www.linux-mips.org/wiki/34K#VSMP config MIPS_MT_SMTC bool "SMTC: Use all TCs on all VPEs for SMP" depends on CPU_MIPS32_R2 #depends on CPU_MIPS64_R2 # once there is hardware ... depends on SYS_SUPPORTS_MULTITHREADING select CPU_MIPSR2_IRQ_VI select CPU_MIPSR2_IRQ_EI select MIPS_MT select NR_CPUS_DEFAULT_8 select SMP select SYS_SUPPORTS_SMP select SMP_UP help This is a kernel model which is known a SMTC or lately has been marketesed into SMVP. is presenting the available TC's of the core as processors to Linux. On currently available 34K processors this means a Linux system will see up to 5 processors. The implementation of the SMTC kernel differs significantly from VSMP and cannot efficiently coexist in the same kernel binary so the choice between VSMP and SMTC is a compile time decision. For further information see http://www.linux-mips.org/wiki/34K#SMTC endchoice config MIPS_MT bool config SCHED_SMT bool "SMT (multithreading) scheduler support" depends on SYS_SUPPORTS_SCHED_SMT default n help SMT scheduler support improves the CPU scheduler's decision making when dealing with MIPS MT enabled cores at a cost of slightly increased overhead in some places. If unsure say N here. config SYS_SUPPORTS_SCHED_SMT bool config SYS_SUPPORTS_MULTITHREADING bool config MIPS_MT_FPAFF bool "Dynamic FPU affinity for FP-intensive threads" default y depends on MIPS_MT_SMP || MIPS_MT_SMTC config MIPS_VPE_LOADER bool "VPE loader support." depends on SYS_SUPPORTS_MULTITHREADING select CPU_MIPSR2_IRQ_VI select CPU_MIPSR2_IRQ_EI select MIPS_MT help Includes a loader for loading an elf relocatable object onto another VPE and running it. config MIPS_MT_SMTC_IM_BACKSTOP bool "Use per-TC register bits as backstop for inhibited IM bits" depends on MIPS_MT_SMTC default n help To support multiple TC microthreads acting as "CPUs" within a VPE, VPE-wide interrupt mask bits must be specially manipulated during interrupt handling. To support legacy drivers and interrupt controller management code, SMTC has a "backstop" to track and if necessary restore the interrupt mask. This has some performance impact on interrupt service overhead. config MIPS_MT_SMTC_IRQAFF bool "Support IRQ affinity API" depends on MIPS_MT_SMTC default n help Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.) for SMTC Linux kernel. Requires platform support, of which an example can be found in the MIPS kernel i8259 and Malta platform code. Adds some overhead to interrupt dispatch, and should be used only if you know what you are doing. config MIPS_VPE_LOADER_TOM bool "Load VPE program into memory hidden from linux" depends on MIPS_VPE_LOADER default y help The loader can use memory that is present but has been hidden from Linux using the kernel command line option "mem=xxMB". It's up to you to ensure the amount you put in the option and the space your program requires is less or equal to the amount physically present. # this should possibly be in drivers/char, but it is rather cpu related. Hmmm config MIPS_VPE_APSP_API bool "Enable support for AP/SP API (RTLX)" depends on MIPS_VPE_LOADER help config MIPS_APSP_KSPD bool "Enable KSPD" depends on MIPS_VPE_APSP_API default y help KSPD is a kernel daemon that accepts syscall requests from the SP side, actions them and returns the results. It also handles the "exit" syscall notifying other kernel modules the SP program is exiting. You probably want to say yes here. config MIPS_CMP bool "MIPS CMP framework support" depends on SYS_SUPPORTS_MIPS_CMP select SYNC_R4K select SYS_SUPPORTS_SMP select SYS_SUPPORTS_SCHED_SMT if SMP select WEAK_ORDERING default n help This is a placeholder option for the GCMP work. It will need to be handled differently... config SB1_PASS_1_WORKAROUNDS bool depends on CPU_SB1_PASS_1 default y config SB1_PASS_2_WORKAROUNDS bool depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2) default y config SB1_PASS_2_1_WORKAROUNDS bool depends on CPU_SB1 && CPU_SB1_PASS_2 default y config 64BIT_PHYS_ADDR bool config ARCH_PHYS_ADDR_T_64BIT def_bool 64BIT_PHYS_ADDR config CPU_HAS_SMARTMIPS depends on SYS_SUPPORTS_SMARTMIPS bool "Support for the SmartMIPS ASE" help SmartMIPS is a extension of the MIPS32 architecture aimed at increased security at both hardware and software level for smartcards. Enabling this option will allow proper use of the SmartMIPS instructions by Linux applications. However a kernel with this option will not work on a MIPS core without SmartMIPS core. If you don't know you probably don't have SmartMIPS and should say N here. config CPU_HAS_WB bool # # Vectored interrupt mode is an R2 feature # config CPU_MIPSR2_IRQ_VI bool # # Extended interrupt mode is an R2 feature # config CPU_MIPSR2_IRQ_EI bool config CPU_HAS_SYNC bool depends on !CPU_R3000 default y config GENERIC_CLOCKEVENTS_BROADCAST bool # # CPU non-features # config CPU_DADDI_WORKAROUNDS bool config CPU_R4000_WORKAROUNDS bool select CPU_R4400_WORKAROUNDS config CPU_R4400_WORKAROUNDS bool # # - Highmem only makes sense for the 32-bit kernel. # - The current highmem code will only work properly on physically indexed # caches such as R3000, SB1, R7000 or those that look like they're virtually # indexed such as R4000/R4400 SC and MC versions or R10000. So for the # moment we protect the user and offer the highmem option only on machines # where it's known to be safe. This will not offer highmem on a few systems # such as MIPS32 and MIPS64 CPUs which may have virtual and physically # indexed CPUs but we're playing safe. # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we # know they might have memory configurations that could make use of highmem # support. # config HIGHMEM bool "High Memory Support" depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM config CPU_SUPPORTS_HIGHMEM bool config SYS_SUPPORTS_HIGHMEM bool config SYS_SUPPORTS_SMARTMIPS bool config ARCH_FLATMEM_ENABLE def_bool y depends on !NUMA && !CPU_LOONGSON2 config ARCH_DISCONTIGMEM_ENABLE bool default y if SGI_IP27 help Say Y to support efficient handling of discontiguous physical memory, for architectures which are either NUMA (Non-Uniform Memory Access) or have huge holes in the physical address space for other reasons. See for more. config ARCH_POPULATES_NODE_MAP def_bool y config ARCH_SPARSEMEM_ENABLE bool select SPARSEMEM_STATIC config NUMA bool "NUMA Support" depends on SYS_SUPPORTS_NUMA help Say Y to compile the kernel to support NUMA (Non-Uniform Memory Access). This option improves performance on systems with more than two nodes; on two node systems it is generally better to leave it disabled; on single node systems disable this option disabled. config SYS_SUPPORTS_NUMA bool config NODES_SHIFT int default "6" depends on NEED_MULTIPLE_NODES config HW_PERF_EVENTS bool "Enable hardware performance counter support for perf events" depends on PERF_EVENTS && !MIPS_MT_SMTC && OPROFILE=n && CPU_MIPS32 default y help Enable hardware performance counter support for perf events. If disabled, perf events will use software events only. source "mm/Kconfig" config SMP bool "Multi-Processing support" depends on SYS_SUPPORTS_SMP select IRQ_PER_CPU select USE_GENERIC_SMP_HELPERS help This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. See also the SMP-HOWTO available at . If you don't know what to do here, say N. config SMP_UP bool config SYS_SUPPORTS_MIPS_CMP bool config SYS_SUPPORTS_SMP bool config NR_CPUS_DEFAULT_1 bool config NR_CPUS_DEFAULT_2 bool config NR_CPUS_DEFAULT_4 bool config NR_CPUS_DEFAULT_8 bool config NR_CPUS_DEFAULT_16 bool config NR_CPUS_DEFAULT_32 bool config NR_CPUS_DEFAULT_64 bool config NR_CPUS int "Maximum number of CPUs (2-64)" range 1 64 if NR_CPUS_DEFAULT_1 depends on SMP default "1" if NR_CPUS_DEFAULT_1 default "2" if NR_CPUS_DEFAULT_2 default "4" if NR_CPUS_DEFAULT_4 default "8" if NR_CPUS_DEFAULT_8 default "16" if NR_CPUS_DEFAULT_16 default "32" if NR_CPUS_DEFAULT_32 default "64" if NR_CPUS_DEFAULT_64 help This allows you to specify the maximum number of CPUs which this kernel will support. The maximum supported value is 32 for 32-bit kernel and 64 for 64-bit kernels; the minimum value which makes sense is 1 for Qemu (useful only for kernel debugging purposes) and 2 for all others. This is purely to save memory - each supported CPU adds approximately eight kilobytes to the kernel image. For best performance should round up your number of processors to the next power of two. source "kernel/time/Kconfig" # # Timer Interrupt Frequency Configuration # choice prompt "Timer frequency" default HZ_250 help Allows the configuration of the timer frequency. config HZ_48 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ config HZ_100 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ config HZ_128 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ config HZ_250 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ config HZ_256 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ config HZ_1000 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ config HZ_1024 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ endchoice config SYS_SUPPORTS_48HZ bool config SYS_SUPPORTS_100HZ bool config SYS_SUPPORTS_128HZ bool config SYS_SUPPORTS_250HZ bool config SYS_SUPPORTS_256HZ bool config SYS_SUPPORTS_1000HZ bool config SYS_SUPPORTS_1024HZ bool config SYS_SUPPORTS_ARBIT_HZ bool default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \ !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \ !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \ !SYS_SUPPORTS_1024HZ config HZ int default 48 if HZ_48 default 100 if HZ_100 default 128 if HZ_128 default 250 if HZ_250 default 256 if HZ_256 default 1000 if HZ_1000 default 1024 if HZ_1024 source "kernel/Kconfig.preempt" config MIPS_INSANE_LARGE bool "Support for large 64-bit configurations" depends on CPU_R10000 && 64BIT help MIPS R10000 does support a 44 bit / 16TB address space as opposed to previous 64-bit processors which only supported 40 bit / 1TB. If you need processes of more than 1TB virtual address space, say Y here. This will result in additional memory usage, so it is not recommended for normal users. config KEXEC bool "Kexec system call (EXPERIMENTAL)" depends on EXPERIMENTAL help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware. And like a reboot you can start any kernel with it, not just Linux. The name comes from the similarity to the exec system call. It is an ongoing process to be certain the hardware in a machine is properly shutdown, so do not be surprised if this code does not initially work for you. It may help to enable device hotplugging support. As of this writing the exact hardware interface is strongly in flux, so no good recommendation can be made. config SECCOMP bool "Enable seccomp to safely compute untrusted bytecode" depends on PROC_FS default y help This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via /proc//seccomp, it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. If unsure, say Y. Only embedded should say N here. config USE_OF bool "Flattened Device Tree support" select OF select OF_EARLY_FLATTREE help Include support for flattened device tree machine descriptions. endmenu config LOCKDEP_SUPPORT bool default y config STACKTRACE_SUPPORT bool default y source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)" config HW_HAS_EISA bool config HW_HAS_PCI bool config PCI bool "Support for PCI controller" depends on HW_HAS_PCI select PCI_DOMAINS help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, or VESA. If you have PCI, say Y, otherwise N. config PCI_DOMAINS bool source "drivers/pci/Kconfig" # # ISA support is now enabled via select. Too many systems still have the one # or other ISA chip on the board that users don't know about so don't expect # users to choose the right thing ... # config ISA bool config EISA bool "EISA support" depends on HW_HAS_EISA select ISA select GENERIC_ISA_DMA ---help--- The Extended Industry Standard Architecture (EISA) bus was developed as an open alternative to the IBM MicroChannel bus. The EISA bus provided some of the features of the IBM MicroChannel bus while maintaining backward compatibility with cards made for the older ISA bus. The EISA bus saw limited use between 1988 and 1995 when it was made obsolete by the PCI bus. Say Y here if you are building a kernel for an EISA-based machine. Otherwise, say N. source "drivers/eisa/Kconfig" config TC bool "TURBOchannel support" depends on MACH_DECSTATION help TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS processors. TURBOchannel programming specifications are available at: and: Linux driver support status is documented at: #config ACCESSBUS # bool "Access.Bus support" # depends on TC config MMU bool default y config I8253 bool select MIPS_EXTERNAL_TIMER config ZONE_DMA32 bool source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" config RAPIDIO bool "RapidIO support" depends on PCI default n help If you say Y here, the kernel will include drivers and infrastructure code to support RapidIO interconnect devices. source "drivers/rapidio/Kconfig" endmenu menu "Executable file formats" source "fs/Kconfig.binfmt" config TRAD_SIGNALS bool config MIPS32_COMPAT bool "Kernel support for Linux/MIPS 32-bit binary compatibility" depends on 64BIT help Select this option if you want Linux/MIPS 32-bit binary compatibility. Since all software available for Linux/MIPS is currently 32-bit you should say Y here. config COMPAT bool depends on MIPS32_COMPAT default y config SYSVIPC_COMPAT bool depends on COMPAT && SYSVIPC default y config MIPS32_O32 bool "Kernel support for o32 binaries" depends on MIPS32_COMPAT help Select this option if you want to run o32 binaries. These are pure 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of existing binaries are in this format. If unsure, say Y. config MIPS32_N32 bool "Kernel support for n32 binaries" depends on MIPS32_COMPAT help Select this option if you want to run n32 binaries. These are 64-bit binaries using 32-bit quantities for addressing and certain data that would normally be 64-bit. They are used in special cases. If unsure, say N. config BINFMT_ELF32 bool default y if MIPS32_O32 || MIPS32_N32 endmenu menu "Power management options" config ARCH_HIBERNATION_POSSIBLE def_bool y depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP config ARCH_SUSPEND_POSSIBLE def_bool y depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP source "kernel/power/Kconfig" endmenu source "arch/mips/kernel/cpufreq/Kconfig" source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/mips/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" menuconfig VIRTUALIZATION bool "Virtualization" default n ---help--- Say Y here to get to see options for using your Linux host to run other operating systems inside virtual machines (guests). This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if VIRTUALIZATION source drivers/virtio/Kconfig endif # VIRTUALIZATION source "lib/Kconfig" config ACER_PICA_61 bool "Support for Acer PICA 1 chipset (EXPERIMENTAL)" depends on MACH_JAZZ && EXPERIMENTAL select DMA_NONCOHERENT select SYS_SUPPORTS_LITTLE_ENDIAN help This is a machine with a R4400 133/150 MHz CPU. To compile a Linux kernel that runs on these, say Y here. For details about Linux on the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at . config MIPS_MAGNUM_4000 bool "Support for MIPS Magnum 4000" depends on MACH_JAZZ select DMA_NONCOHERENT select SYS_SUPPORTS_BIG_ENDIAN if EXPERIMENTAL select SYS_SUPPORTS_LITTLE_ENDIAN help This is a machine with a R4000 100 MHz CPU. To compile a Linux kernel that runs on these, say Y here. For details about Linux on the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at . config OLIVETTI_M700 bool "Support for Olivetti M700-10" depends on MACH_JAZZ select DMA_NONCOHERENT select SYS_SUPPORTS_LITTLE_ENDIAN help This is a machine with a R4000 100 MHz CPU. To compile a Linux kernel that runs on these, say Y here. For details about Linux on the MIPS architecture, check out the Linux/MIPS FAQ on the WWW at . config PICVUE tristate "PICVUE LCD display driver" depends on LASAT config PICVUE_PROC tristate "PICVUE LCD display driver /proc interface" depends on PICVUE config DS1603 bool "DS1603 RTC driver" depends on LASAT config LASAT_SYSCTL bool "LASAT sysctl interface" depends on LASAT choice prompt "Machine type" depends on MACH_VR41XX default TANBAC_TB022X config CASIO_E55 bool "CASIO CASSIOPEIA E-10/15/55/65" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select IRQ_CPU select ISA select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN config IBM_WORKPAD bool "IBM WorkPad z50" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select IRQ_CPU select ISA select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN config TANBAC_TB022X bool "TANBAC VR4131 multichip module and TANBAC VR4131DIMM" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select IRQ_CPU select HW_HAS_PCI select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN help The TANBAC VR4131 multichip module(TB0225) and the TANBAC VR4131DIMM(TB0229) are MIPS-based platforms manufactured by TANBAC. Please refer to about VR4131 multichip module and VR4131DIMM. config VICTOR_MPC30X bool "Victor MP-C303/304" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select IRQ_CPU select HW_HAS_PCI select PCI_VR41XX select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN config ZAO_CAPCELLA bool "ZAO Networks Capcella" select CEVT_R4K select CSRC_R4K select DMA_NONCOHERENT select IRQ_CPU select HW_HAS_PCI select PCI_VR41XX select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN endchoice choice prompt "Base board type" depends on TANBAC_TB022X default TANBAC_TB0287 config TANBAC_TB0219 bool "TANBAC DIMM Evaluation Kit(TB0219)" select GPIO_VR41XX select PCI_VR41XX help The TANBAC DIMM Evaluation Kit(TB0219) is a MIPS-based platform manufactured by TANBAC. Please refer to about DIMM Evaluation Kit. config TANBAC_TB0226 bool "TANBAC Mbase(TB0226)" select GPIO_VR41XX select PCI_VR41XX help The TANBAC Mbase(TB0226) is a MIPS-based platform manufactured by TANBAC. Please refer to about Mbase. config TANBAC_TB0287 bool "TANBAC Mini-ITX DIMM base(TB0287)" select PCI_VR41XX help The TANBAC Mini-ITX DIMM base(TB0287) is a MIPS-based platform manufactured by TANBAC. Please refer to about Mini-ITX DIMM base. endchoice config PCI_VR41XX bool "Add PCI control unit support of NEC VR4100 series" depends on MACH_VR41XX && HW_HAS_PCI default y select PCI config MACH_TX39XX bool select MACH_TXX9 select SYS_HAS_CPU_TX39XX config MACH_TX49XX bool select MACH_TXX9 select CEVT_R4K select CSRC_R4K select IRQ_CPU select SYS_HAS_CPU_TX49XX select SYS_SUPPORTS_64BIT_KERNEL config MACH_TXX9 bool select DMA_NONCOHERENT select SWAP_IO_SPACE select SYS_HAS_EARLY_PRINTK select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_SUPPORTS_BIG_ENDIAN config TOSHIBA_JMR3927 bool "Toshiba JMR-TX3927 board" depends on MACH_TX39XX select SOC_TX3927 config TOSHIBA_RBTX4927 bool "Toshiba RBTX49[23]7 board" depends on MACH_TX49XX select SOC_TX4927 # TX4937 is subset of TX4938 select SOC_TX4938 help This Toshiba board is based on the TX4927 processor. Say Y here to support this machine type config TOSHIBA_RBTX4938 bool "Toshiba RBTX4938 board" depends on MACH_TX49XX select SOC_TX4938 help This Toshiba board is based on the TX4938 processor. Say Y here to support this machine type config TOSHIBA_RBTX4939 bool "Toshiba RBTX4939 board" depends on MACH_TX49XX select SOC_TX4939 select TXX9_7SEGLED help This Toshiba board is based on the TX4939 processor. Say Y here to support this machine type config SOC_TX3927 bool select CEVT_TXX9 select HAS_TXX9_SERIAL select HW_HAS_PCI select IRQ_TXX9 select GPIO_TXX9 config SOC_TX4927 bool select CEVT_TXX9 select HAS_TXX9_SERIAL select HW_HAS_PCI select IRQ_TXX9 select PCI_TX4927 select GPIO_TXX9 select HAS_TXX9_ACLC config SOC_TX4938 bool select CEVT_TXX9 select HAS_TXX9_SERIAL select HW_HAS_PCI select IRQ_TXX9 select PCI_TX4927 select GPIO_TXX9 select HAS_TXX9_ACLC config SOC_TX4939 bool select CEVT_TXX9 select HAS_TXX9_SERIAL select HW_HAS_PCI select PCI_TX4927 select HAS_TXX9_ACLC config TXX9_7SEGLED bool config TOSHIBA_FPCIB0 bool "FPCIB0 Backplane Support" depends on PCI && MACH_TXX9 select I8259 config PICMG_PCI_BACKPLANE_DEFAULT bool "Support for PICMG PCI Backplane" depends on PCI && MACH_TXX9 default y if !TOSHIBA_FPCIB0 if TOSHIBA_RBTX4938 comment "Multiplex Pin Select" choice prompt "PIO[58:61]" default TOSHIBA_RBTX4938_MPLEX_PIO58_61 config TOSHIBA_RBTX4938_MPLEX_PIO58_61 bool "PIO" config TOSHIBA_RBTX4938_MPLEX_NAND bool "NAND" config TOSHIBA_RBTX4938_MPLEX_ATA bool "ATA" config TOSHIBA_RBTX4938_MPLEX_KEEP bool "Keep firmware settings" endchoice endif config PCI_TX4927 bool config SIBYTE_SB1250 bool select CEVT_SB1250 select CSRC_SB1250 select HW_HAS_PCI select IRQ_CPU select SIBYTE_ENABLE_LDT_IF_PCI select SIBYTE_HAS_ZBUS_PROFILING select SIBYTE_SB1xxx_SOC select SYS_SUPPORTS_SMP config SIBYTE_BCM1120 bool select CEVT_SB1250 select CSRC_SB1250 select IRQ_CPU select SIBYTE_BCM112X select SIBYTE_HAS_ZBUS_PROFILING select SIBYTE_SB1xxx_SOC config SIBYTE_BCM1125 bool select CEVT_SB1250 select CSRC_SB1250 select HW_HAS_PCI select IRQ_CPU select SIBYTE_BCM112X select SIBYTE_HAS_ZBUS_PROFILING select SIBYTE_SB1xxx_SOC config SIBYTE_BCM1125H bool select CEVT_SB1250 select CSRC_SB1250 select HW_HAS_PCI select IRQ_CPU select SIBYTE_BCM112X select SIBYTE_ENABLE_LDT_IF_PCI select SIBYTE_HAS_ZBUS_PROFILING select SIBYTE_SB1xxx_SOC config SIBYTE_BCM112X bool select CEVT_SB1250 select CSRC_SB1250 select IRQ_CPU select SIBYTE_SB1xxx_SOC select SIBYTE_HAS_ZBUS_PROFILING config SIBYTE_BCM1x80 bool select CEVT_BCM1480 select CSRC_BCM1480 select HW_HAS_PCI select IRQ_CPU select SIBYTE_HAS_ZBUS_PROFILING select SIBYTE_SB1xxx_SOC select SYS_SUPPORTS_SMP config SIBYTE_BCM1x55 bool select CEVT_BCM1480 select CSRC_BCM1480 select HW_HAS_PCI select IRQ_CPU select SIBYTE_SB1xxx_SOC select SIBYTE_HAS_ZBUS_PROFILING select SYS_SUPPORTS_SMP config SIBYTE_SB1xxx_SOC bool select DMA_COHERENT select IRQ_CPU select SIBYTE_CFE select SWAP_IO_SPACE select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_64BIT_KERNEL select CFE select SYS_HAS_EARLY_PRINTK choice prompt "SiByte SOC Stepping" depends on SIBYTE_SB1xxx_SOC config CPU_SB1_PASS_1 bool "1250 Pass1" depends on SIBYTE_SB1250 select CPU_HAS_PREFETCH config CPU_SB1_PASS_2_1250 bool "1250 An" depends on SIBYTE_SB1250 select CPU_SB1_PASS_2 help Also called BCM1250 Pass 2 config CPU_SB1_PASS_2_2 bool "1250 Bn" depends on SIBYTE_SB1250 select CPU_HAS_PREFETCH help Also called BCM1250 Pass 2.2 config CPU_SB1_PASS_4 bool "1250 Cn" depends on SIBYTE_SB1250 select CPU_HAS_PREFETCH help Also called BCM1250 Pass 3 config CPU_SB1_PASS_2_112x bool "112x Hybrid" depends on SIBYTE_BCM112X select CPU_SB1_PASS_2 config CPU_SB1_PASS_3 bool "112x An" depends on SIBYTE_BCM112X select CPU_HAS_PREFETCH endchoice config CPU_SB1_PASS_2 bool config SIBYTE_HAS_LDT bool config SIBYTE_ENABLE_LDT_IF_PCI bool select SIBYTE_HAS_LDT if PCI config SB1_CEX_ALWAYS_FATAL bool "All cache exceptions considered fatal (no recovery attempted)" depends on SIBYTE_SB1xxx_SOC config SB1_CERR_STALL bool "Stall (rather than panic) on fatal cache error" depends on SIBYTE_SB1xxx_SOC config SIBYTE_CFE_CONSOLE bool "Use firmware console" depends on SIBYTE_SB1xxx_SOC help Use the CFE API's console write routines during boot. Other console options (VT console, sb1250 duart console, etc.) should not be configured. config SIBYTE_BUS_WATCHER bool "Support for Bus Watcher statistics" depends on SIBYTE_SB1xxx_SOC help Handle and keep statistics on the bus error interrupts (COR_ECC, BAD_ECC, IO_BUS). config SIBYTE_BW_TRACE bool "Capture bus trace before bus error" depends on SIBYTE_BUS_WATCHER help Run a continuous bus trace, dumping the raw data as soon as a ZBbus error is detected. Cannot work if ZBbus profiling is turned on, and also will interfere with JTAG-based trace buffer activity. Raw buffer data is dumped to console, and must be processed off-line. config SIBYTE_TBPROF tristate "Support for ZBbus profiling" depends on SIBYTE_HAS_ZBUS_PROFILING config SIBYTE_HAS_ZBUS_PROFILING bool menu "CPU support" depends on BCM63XX config BCM63XX_CPU_6338 bool "support 6338 CPU" select HW_HAS_PCI select USB_ARCH_HAS_OHCI select USB_OHCI_BIG_ENDIAN_DESC select USB_OHCI_BIG_ENDIAN_MMIO config BCM63XX_CPU_6345 bool "support 6345 CPU" select USB_OHCI_BIG_ENDIAN_DESC select USB_OHCI_BIG_ENDIAN_MMIO config BCM63XX_CPU_6348 bool "support 6348 CPU" select HW_HAS_PCI config BCM63XX_CPU_6358 bool "support 6358 CPU" select HW_HAS_PCI endmenu source "arch/mips/bcm63xx/boards/Kconfig" choice prompt "Board support" depends on BCM63XX default BOARD_BCM963XX config BOARD_BCM963XX bool "Generic Broadcom 963xx boards" select SSB help endchoice choice prompt "Machine type" depends on MACH_JZ4740 default JZ4740_QI_LB60 config JZ4740_QI_LB60 bool "Qi Hardware Ben NanoNote" endchoice config HAVE_PWM bool if CPU_CAVIUM_OCTEON config CAVIUM_CN63XXP1 bool "Enable CN63XXP1 errata worarounds" default "n" help The CN63XXP1 chip requires build time workarounds to function reliably, select this option to enable them. These workarounds will cause a slight decrease in performance on non-CN63XXP1 hardware, so it is recommended to select "n" unless it is known the workarounds are needed. config CAVIUM_OCTEON_2ND_KERNEL bool "Build the kernel to be used as a 2nd kernel on the same chip" default "n" help This option configures this kernel to be linked at a different address and use the 2nd uart for output. This allows a kernel built with this option to be run at the same time as one built without this option. config CAVIUM_OCTEON_HW_FIX_UNALIGNED bool "Enable hardware fixups of unaligned loads and stores" default "y" help Configure the Octeon hardware to automatically fix unaligned loads and stores. Normally unaligned accesses are fixed using a kernel exception handler. This option enables the hardware automatic fixups, which requires only an extra 3 cycles. Disable this option if you are running code that relies on address exceptions on unaligned accesses. config CAVIUM_OCTEON_CVMSEG_SIZE int "Number of L1 cache lines reserved for CVMSEG memory" range 0 54 default 1 help CVMSEG LM is a segment that accesses portions of the dcache as a local memory; the larger CVMSEG is, the smaller the cache is. This selects the size of CVMSEG LM, which is in cache blocks. The legally range is from zero to 54 cache blocks (i.e. CVMSEG LM is between zero and 6192 bytes). config CAVIUM_OCTEON_LOCK_L2 bool "Lock often used kernel code in the L2" default "y" help Enable locking parts of the kernel into the L2 cache. config CAVIUM_OCTEON_LOCK_L2_TLB bool "Lock the TLB handler in L2" depends on CAVIUM_OCTEON_LOCK_L2 default "y" help Lock the low level TLB fast path into L2. config CAVIUM_OCTEON_LOCK_L2_EXCEPTION bool "Lock the exception handler in L2" depends on CAVIUM_OCTEON_LOCK_L2 default "y" help Lock the low level exception handler into L2. config CAVIUM_OCTEON_LOCK_L2_LOW_LEVEL_INTERRUPT bool "Lock the interrupt handler in L2" depends on CAVIUM_OCTEON_LOCK_L2 default "y" help Lock the low level interrupt handler into L2. config CAVIUM_OCTEON_LOCK_L2_INTERRUPT bool "Lock the 2nd level interrupt handler in L2" depends on CAVIUM_OCTEON_LOCK_L2 default "y" help Lock the 2nd level interrupt handler in L2. config CAVIUM_OCTEON_LOCK_L2_MEMCPY bool "Lock memcpy() in L2" depends on CAVIUM_OCTEON_LOCK_L2 default "y" help Lock the kernel's implementation of memcpy() into L2. config ARCH_SPARSEMEM_ENABLE def_bool y select SPARSEMEM_STATIC config CAVIUM_OCTEON_HELPER def_bool y depends on OCTEON_ETHERNET || PCI config IOMMU_HELPER bool config NEED_SG_DMA_LENGTH bool config SWIOTLB def_bool y select IOMMU_HELPER select NEED_SG_DMA_LENGTH endif # CPU_CAVIUM_OCTEON config MIN_RUNTIME_RESOURCES bool "Support for minimum runtime resources" default n depends on POWERTV help Enables support for minimizing the number of (SA asic) runtime resources that are preallocated by the kernel. config MIN_RUNTIME_DOCSIS bool "Support for minimum DOCSIS resource" default y depends on MIN_RUNTIME_RESOURCES help Enables support for the preallocated DOCSIS resource. config MIN_RUNTIME_PMEM bool "Support for minimum PMEM resource" default y depends on MIN_RUNTIME_RESOURCES help Enables support for the preallocated Memory resource. config MIN_RUNTIME_TFTP bool "Support for minimum TFTP resource" default y depends on MIN_RUNTIME_RESOURCES help Enables support for the preallocated TFTP resource. source "arch/mips/powertv/asic/Kconfig" config BOOTLOADER_DRIVER bool "PowerTV Bootloader Driver Support" default n depends on POWERTV help Use this option if you want to load bootloader driver. config BOOTLOADER_FAMILY string "POWERTV Bootloader Family string" default "85" depends on POWERTV && !BOOTLOADER_DRIVER help This value should be specified when the bootloader driver is disabled and must be exactly two characters long. Families supported are: R1 - RNG-100 R2 - RNG-200 A1 - Class A B1 - Class B E1 - Class E F1 - Class F 44 - 45xx 46 - 46xx 85 - 85xx 86 - 86xx if ATH79 menu "Atheros AR71XX/AR724X/AR913X machine selection" config ATH79_MACH_AP81 bool "Atheros AP81 reference board" select SOC_AR913X select ATH79_DEV_AR913X_WMAC select ATH79_DEV_GPIO_BUTTONS select ATH79_DEV_LEDS_GPIO select ATH79_DEV_SPI help Say 'Y' here if you want your kernel to support the Atheros AP81 reference board. config ATH79_MACH_PB44 bool "Atheros PB44 reference board" select SOC_AR71XX select ATH79_DEV_GPIO_BUTTONS select ATH79_DEV_LEDS_GPIO select ATH79_DEV_SPI help Say 'Y' here if you want your kernel to support the Atheros PB44 reference board. endmenu config SOC_AR71XX def_bool n config SOC_AR724X def_bool n config SOC_AR913X def_bool n config ATH79_DEV_AR913X_WMAC depends on SOC_AR913X def_bool n config ATH79_DEV_GPIO_BUTTONS def_bool n config ATH79_DEV_LEDS_GPIO def_bool n config ATH79_DEV_SPI def_bool n endif # # CPU Frequency scaling # config MIPS_EXTERNAL_TIMER bool config MIPS_CPUFREQ bool default y depends on CPU_SUPPORTS_CPUFREQ && MIPS_EXTERNAL_TIMER if MIPS_CPUFREQ menu "CPU Frequency scaling" source "drivers/cpufreq/Kconfig" if CPU_FREQ comment "CPUFreq processor drivers" config LOONGSON2_CPUFREQ tristate "Loongson2 CPUFreq Driver" select CPU_FREQ_TABLE depends on MIPS_CPUFREQ help This option adds a CPUFreq driver for loongson processors which support software configurable cpu frequency. Loongson2F and it's successors support this feature. For details, take a look at . If in doubt, say N. endif # CPU_FREQ endmenu endif # MIPS_CPUFREQ choice prompt "PMC-Sierra MSP SOC type" depends on PMC_MSP config PMC_MSP4200_EVAL bool "PMC-Sierra MSP4200 Eval Board" select IRQ_MSP_SLP select HW_HAS_PCI config PMC_MSP4200_GW bool "PMC-Sierra MSP4200 VoIP Gateway" select IRQ_MSP_SLP select HW_HAS_PCI config PMC_MSP7120_EVAL bool "PMC-Sierra MSP7120 Eval Board" select SYS_SUPPORTS_MULTITHREADING select IRQ_MSP_CIC select HW_HAS_PCI config PMC_MSP7120_GW bool "PMC-Sierra MSP7120 Residential Gateway" select SYS_SUPPORTS_MULTITHREADING select IRQ_MSP_CIC select HW_HAS_PCI select MSP_HAS_USB select MSP_ETH config PMC_MSP7120_FPGA bool "PMC-Sierra MSP7120 FPGA" select SYS_SUPPORTS_MULTITHREADING select IRQ_MSP_CIC select HW_HAS_PCI endchoice config HYPERTRANSPORT bool "Hypertransport Support for PMC-Sierra Yosemite" depends on PMC_YOSEMITE config MSP_HAS_USB boolean depends on PMC_MSP config MSP_ETH boolean select MSP_HAS_MAC depends on PMC_MSP config MSP_HAS_MAC boolean depends on PMC_MSP # au1000-style gpio and interrupt controllers config ALCHEMY_GPIOINT_AU1000 bool # select this in your board config if you don't want to use the gpio # namespace as documented in the manuals. In this case however you need # to create the necessary gpio_* functions in your board code/headers! # see arch/mips/include/asm/mach-au1x00/gpio.h for more information. config ALCHEMY_GPIO_INDIRECT def_bool n choice prompt "Machine type" depends on MIPS_ALCHEMY default MIPS_DB1000 config MIPS_MTX1 bool "4G Systems MTX-1 board" select DMA_NONCOHERENT select HW_HAS_PCI select SOC_AU1500 select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_BOSPORUS bool "Alchemy Bosporus board" select SOC_AU1500 select DMA_NONCOHERENT select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_DB1000 bool "Alchemy DB1000 board" select SOC_AU1000 select DMA_NONCOHERENT select HW_HAS_PCI select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_DB1100 bool "Alchemy DB1100 board" select SOC_AU1100 select DMA_NONCOHERENT select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_DB1200 bool "Alchemy DB1200 board" select SOC_AU1200 select DMA_COHERENT select MIPS_DISABLE_OBSOLETE_IDE select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_DB1500 bool "Alchemy DB1500 board" select SOC_AU1500 select DMA_NONCOHERENT select HW_HAS_PCI select MIPS_DISABLE_OBSOLETE_IDE select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_DB1550 bool "Alchemy DB1550 board" select SOC_AU1550 select HW_HAS_PCI select DMA_NONCOHERENT select MIPS_DISABLE_OBSOLETE_IDE select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_MIRAGE bool "Alchemy Mirage board" select DMA_NONCOHERENT select SOC_AU1500 select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_PB1000 bool "Alchemy PB1000 board" select SOC_AU1000 select DMA_NONCOHERENT select HW_HAS_PCI select SWAP_IO_SPACE select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_PB1100 bool "Alchemy PB1100 board" select SOC_AU1100 select DMA_NONCOHERENT select HW_HAS_PCI select SWAP_IO_SPACE select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_PB1200 bool "Alchemy PB1200 board" select SOC_AU1200 select DMA_NONCOHERENT select MIPS_DISABLE_OBSOLETE_IDE select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_PB1500 bool "Alchemy PB1500 board" select SOC_AU1500 select DMA_NONCOHERENT select HW_HAS_PCI select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_PB1550 bool "Alchemy PB1550 board" select SOC_AU1550 select DMA_NONCOHERENT select HW_HAS_PCI select MIPS_DISABLE_OBSOLETE_IDE select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_XXS1500 bool "MyCable XXS1500 board" select DMA_NONCOHERENT select SOC_AU1500 select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK config MIPS_GPR bool "Trapeze ITS GPR board" select SOC_AU1550 select HW_HAS_PCI select DMA_NONCOHERENT select MIPS_DISABLE_OBSOLETE_IDE select SYS_SUPPORTS_LITTLE_ENDIAN select SYS_HAS_EARLY_PRINTK endchoice config SOC_AU1000 bool select ALCHEMY_GPIOINT_AU1000 config SOC_AU1100 bool select ALCHEMY_GPIOINT_AU1000 config SOC_AU1500 bool select ALCHEMY_GPIOINT_AU1000 config SOC_AU1550 bool select ALCHEMY_GPIOINT_AU1000 config SOC_AU1200 bool select ALCHEMY_GPIOINT_AU1000 config SYMBOL_PREFIX string default "_" config MMU def_bool n config FPU def_bool n config RWSEM_GENERIC_SPINLOCK def_bool y config RWSEM_XCHGADD_ALGORITHM def_bool n config BLACKFIN def_bool y select HAVE_ARCH_KGDB select HAVE_ARCH_TRACEHOOK select HAVE_DYNAMIC_FTRACE select HAVE_FTRACE_MCOUNT_RECORD select HAVE_FUNCTION_GRAPH_TRACER select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_TRACE_MCOUNT_TEST select HAVE_IDE select HAVE_KERNEL_GZIP if RAMKERNEL select HAVE_KERNEL_BZIP2 if RAMKERNEL select HAVE_KERNEL_LZMA if RAMKERNEL select HAVE_KERNEL_LZO if RAMKERNEL select HAVE_OPROFILE select ARCH_WANT_OPTIONAL_GPIOLIB select HAVE_GENERIC_HARDIRQS select GENERIC_ATOMIC64 select GENERIC_IRQ_PROBE select IRQ_PER_CPU if SMP config GENERIC_CSUM def_bool y config GENERIC_BUG def_bool y depends on BUG config ZONE_DMA def_bool y config GENERIC_FIND_NEXT_BIT def_bool y config GENERIC_GPIO def_bool y config FORCE_MAX_ZONEORDER int default "14" config GENERIC_CALIBRATE_DELAY def_bool y config LOCKDEP_SUPPORT def_bool y config STACKTRACE_SUPPORT def_bool y config TRACE_IRQFLAGS_SUPPORT def_bool y source "init/Kconfig" source "kernel/Kconfig.preempt" source "kernel/Kconfig.freezer" menu "Blackfin Processor Options" comment "Processor and Board Settings" choice prompt "CPU" default BF533 config BF512 bool "BF512" help BF512 Processor Support. config BF514 bool "BF514" help BF514 Processor Support. config BF516 bool "BF516" help BF516 Processor Support. config BF518 bool "BF518" help BF518 Processor Support. config BF522 bool "BF522" help BF522 Processor Support. config BF523 bool "BF523" help BF523 Processor Support. config BF524 bool "BF524" help BF524 Processor Support. config BF525 bool "BF525" help BF525 Processor Support. config BF526 bool "BF526" help BF526 Processor Support. config BF527 bool "BF527" help BF527 Processor Support. config BF531 bool "BF531" help BF531 Processor Support. config BF532 bool "BF532" help BF532 Processor Support. config BF533 bool "BF533" help BF533 Processor Support. config BF534 bool "BF534" help BF534 Processor Support. config BF536 bool "BF536" help BF536 Processor Support. config BF537 bool "BF537" help BF537 Processor Support. config BF538 bool "BF538" help BF538 Processor Support. config BF539 bool "BF539" help BF539 Processor Support. config BF542_std bool "BF542" help BF542 Processor Support. config BF542M bool "BF542m" help BF542 Processor Support. config BF544_std bool "BF544" help BF544 Processor Support. config BF544M bool "BF544m" help BF544 Processor Support. config BF547_std bool "BF547" help BF547 Processor Support. config BF547M bool "BF547m" help BF547 Processor Support. config BF548_std bool "BF548" help BF548 Processor Support. config BF548M bool "BF548m" help BF548 Processor Support. config BF549_std bool "BF549" help BF549 Processor Support. config BF549M bool "BF549m" help BF549 Processor Support. config BF561 bool "BF561" help BF561 Processor Support. endchoice config SMP depends on BF561 select TICKSOURCE_CORETMR bool "Symmetric multi-processing support" ---help--- This enables support for systems with more than one CPU, like the dual core BF561. If you have a system with only one CPU, say N. If you have a system with more than one CPU, say Y. If you don't know what to do here, say N. config NR_CPUS int depends on SMP default 2 if BF561 config HOTPLUG_CPU bool "Support for hot-pluggable CPUs" depends on SMP && HOTPLUG default y config HAVE_LEGACY_PER_CPU_AREA def_bool y depends on SMP config BF_REV_MIN int default 0 if (BF51x || BF52x || (BF54x && !BF54xM)) default 2 if (BF537 || BF536 || BF534) default 3 if (BF561 || BF533 || BF532 || BF531 || BF54xM) default 4 if (BF538 || BF539) config BF_REV_MAX int default 2 if (BF51x || BF52x || (BF54x && !BF54xM)) default 3 if (BF537 || BF536 || BF534 || BF54xM) default 5 if (BF561 || BF538 || BF539) default 6 if (BF533 || BF532 || BF531) choice prompt "Silicon Rev" default BF_REV_0_0 if (BF51x || BF52x) default BF_REV_0_2 if (BF534 || BF536 || BF537 || (BF54x && !BF54xM)) default BF_REV_0_3 if (BF531 || BF532 || BF533 || BF54xM || BF561) config BF_REV_0_0 bool "0.0" depends on (BF51x || BF52x || (BF54x && !BF54xM)) config BF_REV_0_1 bool "0.1" depends on (BF51x || BF52x || (BF54x && !BF54xM)) config BF_REV_0_2 bool "0.2" depends on (BF51x || BF52x || BF537 || BF536 || BF534 || (BF54x && !BF54xM)) config BF_REV_0_3 bool "0.3" depends on (BF54xM || BF561 || BF537 || BF536 || BF534 || BF533 || BF532 || BF531) config BF_REV_0_4 bool "0.4" depends on (BF561 || BF533 || BF532 || BF531 || BF538 || BF539) config BF_REV_0_5 bool "0.5" depends on (BF561 || BF533 || BF532 || BF531 || BF538 || BF539) config BF_REV_0_6 bool "0.6" depends on (BF533 || BF532 || BF531) config BF_REV_ANY bool "any" config BF_REV_NONE bool "none" endchoice config BF53x bool depends on (BF531 || BF532 || BF533 || BF534 || BF536 || BF537) default y config MEM_MT48LC64M4A2FB_7E bool depends on (BFIN533_STAMP) default y config MEM_MT48LC16M16A2TG_75 bool depends on (BFIN533_EZKIT || BFIN561_EZKIT \ || BFIN533_BLUETECHNIX_CM || BFIN537_BLUETECHNIX_CM_E \ || BFIN537_BLUETECHNIX_CM_U || H8606_HVSISTEMAS \ || BFIN527_BLUETECHNIX_CM) default y config MEM_MT48LC32M8A2_75 bool depends on (BFIN518F_EZBRD || BFIN537_STAMP || PNAV10 || BFIN538_EZKIT) default y config MEM_MT48LC8M32B2B5_7 bool depends on (BFIN561_BLUETECHNIX_CM) default y config MEM_MT48LC32M16A2TG_75 bool depends on (BFIN527_EZKIT || BFIN527_EZKIT_V2 || BFIN532_IP0X || BLACKSTAMP || BFIN527_AD7160EVAL) default y config MEM_MT48H32M16LFCJ_75 bool depends on (BFIN526_EZBRD) default y source "arch/blackfin/mach-bf518/Kconfig" source "arch/blackfin/mach-bf527/Kconfig" source "arch/blackfin/mach-bf533/Kconfig" source "arch/blackfin/mach-bf561/Kconfig" source "arch/blackfin/mach-bf537/Kconfig" source "arch/blackfin/mach-bf538/Kconfig" source "arch/blackfin/mach-bf548/Kconfig" menu "Board customizations" config CMDLINE_BOOL bool "Default bootloader kernel arguments" config CMDLINE string "Initial kernel command string" depends on CMDLINE_BOOL default "console=ttyBF0,57600" help If you don't have a boot loader capable of passing a command line string to the kernel, you may specify one here. As a minimum, you should specify the memory size and the root device (e.g., mem=8M, root=/dev/nfs). config BOOT_LOAD hex "Kernel load address for booting" default "0x1000" range 0x1000 0x20000000 help This option allows you to set the load address of the kernel. This can be useful if you are on a board which has a small amount of memory or you wish to reserve some memory at the beginning of the address space. Note that you need to keep this value above 4k (0x1000) as this memory region is used to capture NULL pointer references as well as some core kernel functions. config ROM_BASE hex "Kernel ROM Base" depends on ROMKERNEL default "0x20040040" range 0x20000000 0x20400000 if !(BF54x || BF561) range 0x20000000 0x30000000 if (BF54x || BF561) help Make sure your ROM base does not include any file-header information that is prepended to the kernel. For example, the bootable U-Boot format (created with mkimage) has a 64 byte header (0x40). So while the image you write to flash might start at say 0x20080000, you have to add 0x40 to get the kernel's ROM base as it will come after the header. comment "Clock/PLL Setup" config CLKIN_HZ int "Frequency of the crystal on the board in Hz" default "10000000" if BFIN532_IP0X default "11059200" if BFIN533_STAMP default "24576000" if PNAV10 default "25000000" # most people use this default "27000000" if BFIN533_EZKIT default "30000000" if BFIN561_EZKIT default "24000000" if BFIN527_AD7160EVAL help The frequency of CLKIN crystal oscillator on the board in Hz. Warning: This value should match the crystal on the board. Otherwise, peripherals won't work properly. config BFIN_KERNEL_CLOCK bool "Re-program Clocks while Kernel boots?" default n help This option decides if kernel clocks are re-programed from the bootloader settings. If the clocks are not set, the SDRAM settings are also not changed, and the Bootloader does 100% of the hardware configuration. config PLL_BYPASS bool "Bypass PLL" depends on BFIN_KERNEL_CLOCK default n config CLKIN_HALF bool "Half Clock In" depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS) default n help If this is set the clock will be divided by 2, before it goes to the PLL. config VCO_MULT int "VCO Multiplier" depends on BFIN_KERNEL_CLOCK && (! PLL_BYPASS) range 1 64 default "22" if BFIN533_EZKIT default "45" if BFIN533_STAMP default "20" if (BFIN537_STAMP || BFIN527_EZKIT || BFIN527_EZKIT_V2 || BFIN548_EZKIT || BFIN548_BLUETECHNIX_CM || BFIN538_EZKIT) default "22" if BFIN533_BLUETECHNIX_CM default "20" if (BFIN537_BLUETECHNIX_CM_E || BFIN537_BLUETECHNIX_CM_U || BFIN527_BLUETECHNIX_CM || BFIN561_BLUETECHNIX_CM) default "20" if BFIN561_EZKIT default "16" if (H8606_HVSISTEMAS || BLACKSTAMP || BFIN526_EZBRD || BFIN518F_EZBRD) default "25" if BFIN527_AD7160EVAL help This controls the frequency of the on-chip PLL. This can be between 1 and 64. PLL Frequency = (Crystal Frequency) * (this setting) choice prompt "Core Clock Divider" depends on BFIN_KERNEL_CLOCK default CCLK_DIV_1 help This sets the frequency of the core. It can be 1, 2, 4 or 8 Core Frequency = (PLL frequency) / (this setting) config CCLK_DIV_1 bool "1" config CCLK_DIV_2 bool "2" config CCLK_DIV_4 bool "4" config CCLK_DIV_8 bool "8" endchoice config SCLK_DIV int "System Clock Divider" depends on BFIN_KERNEL_CLOCK range 1 15 default 5 help This sets the frequency of the system clock (including SDRAM or DDR). This can be between 1 and 15 System Clock = (PLL frequency) / (this setting) choice prompt "DDR SDRAM Chip Type" depends on BFIN_KERNEL_CLOCK depends on BF54x default MEM_MT46V32M16_5B config MEM_MT46V32M16_6T bool "MT46V32M16_6T" config MEM_MT46V32M16_5B bool "MT46V32M16_5B" endchoice choice prompt "DDR/SDRAM Timing" depends on BFIN_KERNEL_CLOCK default BFIN_KERNEL_CLOCK_MEMINIT_CALC help This option allows you to specify Blackfin SDRAM/DDR Timing parameters The calculated SDRAM timing parameters may not be 100% accurate - This option is therefore marked experimental. config BFIN_KERNEL_CLOCK_MEMINIT_CALC bool "Calculate Timings (EXPERIMENTAL)" depends on EXPERIMENTAL config BFIN_KERNEL_CLOCK_MEMINIT_SPEC bool "Provide accurate Timings based on target SCLK" help Please consult the Blackfin Hardware Reference Manuals as well as the memory device datasheet. http://docs.blackfin.uclinux.org/doku.php?id=bfin:sdram endchoice menu "Memory Init Control" depends on BFIN_KERNEL_CLOCK_MEMINIT_SPEC config MEM_DDRCTL0 depends on BF54x hex "DDRCTL0" default 0x0 config MEM_DDRCTL1 depends on BF54x hex "DDRCTL1" default 0x0 config MEM_DDRCTL2 depends on BF54x hex "DDRCTL2" default 0x0 config MEM_EBIU_DDRQUE depends on BF54x hex "DDRQUE" default 0x0 config MEM_SDRRC depends on !BF54x hex "SDRRC" default 0x0 config MEM_SDGCTL depends on !BF54x hex "SDGCTL" default 0x0 endmenu # # Max & Min Speeds for various Chips # config MAX_VCO_HZ int default 400000000 if BF512 default 400000000 if BF514 default 400000000 if BF516 default 400000000 if BF518 default 400000000 if BF522 default 600000000 if BF523 default 400000000 if BF524 default 600000000 if BF525 default 400000000 if BF526 default 600000000 if BF527 default 400000000 if BF531 default 400000000 if BF532 default 750000000 if BF533 default 500000000 if BF534 default 400000000 if BF536 default 600000000 if BF537 default 533333333 if BF538 default 533333333 if BF539 default 600000000 if BF542 default 533333333 if BF544 default 600000000 if BF547 default 600000000 if BF548 default 533333333 if BF549 default 600000000 if BF561 config MIN_VCO_HZ int default 50000000 config MAX_SCLK_HZ int default 133333333 config MIN_SCLK_HZ int default 27000000 comment "Kernel Timer/Scheduler" source kernel/Kconfig.hz config GENERIC_CLOCKEVENTS bool "Generic clock events" default y menu "Clock event device" depends on GENERIC_CLOCKEVENTS config TICKSOURCE_GPTMR0 bool "GPTimer0" depends on !SMP select BFIN_GPTIMERS config TICKSOURCE_CORETMR bool "Core timer" default y endmenu menu "Clock souce" depends on GENERIC_CLOCKEVENTS config CYCLES_CLOCKSOURCE bool "CYCLES" default y depends on !BFIN_SCRATCH_REG_CYCLES depends on !SMP help If you say Y here, you will enable support for using the 'cycles' registers as a clock source. Doing so means you will be unable to safely write to the 'cycles' register during runtime. You will still be able to read it (such as for performance monitoring), but writing the registers will most likely crash the kernel. config GPTMR0_CLOCKSOURCE bool "GPTimer0" select BFIN_GPTIMERS depends on !TICKSOURCE_GPTMR0 endmenu config ARCH_USES_GETTIMEOFFSET depends on !GENERIC_CLOCKEVENTS def_bool y source kernel/time/Kconfig comment "Misc" choice prompt "Blackfin Exception Scratch Register" default BFIN_SCRATCH_REG_RETN help Select the resource to reserve for the Exception handler: - RETN: Non-Maskable Interrupt (NMI) - RETE: Exception Return (JTAG/ICE) - CYCLES: Performance counter If you are unsure, please select "RETN". config BFIN_SCRATCH_REG_RETN bool "RETN" help Use the RETN register in the Blackfin exception handler as a stack scratch register. This means you cannot safely use NMI on the Blackfin while running Linux, but you can debug the system with a JTAG ICE and use the CYCLES performance registers. If you are unsure, please select "RETN". config BFIN_SCRATCH_REG_RETE bool "RETE" help Use the RETE register in the Blackfin exception handler as a stack scratch register. This means you cannot safely use a JTAG ICE while debugging a Blackfin board, but you can safely use the CYCLES performance registers and the NMI. If you are unsure, please select "RETN". config BFIN_SCRATCH_REG_CYCLES bool "CYCLES" help Use the CYCLES register in the Blackfin exception handler as a stack scratch register. This means you cannot safely use the CYCLES performance registers on a Blackfin board at anytime, but you can debug the system with a JTAG ICE and use the NMI. If you are unsure, please select "RETN". endchoice endmenu menu "Blackfin Kernel Optimizations" comment "Memory Optimizations" config I_ENTRY_L1 bool "Locate interrupt entry code in L1 Memory" default y depends on !SMP help If enabled, interrupt entry code (STORE/RESTORE CONTEXT) is linked into L1 instruction memory. (less latency) config EXCPT_IRQ_SYSC_L1 bool "Locate entire ASM lowlevel exception / interrupt - Syscall and CPLB handler code in L1 Memory" default y depends on !SMP help If enabled, the entire ASM lowlevel exception and interrupt entry code (STORE/RESTORE CONTEXT) is linked into L1 instruction memory. (less latency) config DO_IRQ_L1 bool "Locate frequently called do_irq dispatcher function in L1 Memory" default y depends on !SMP help If enabled, the frequently called do_irq dispatcher function is linked into L1 instruction memory. (less latency) config CORE_TIMER_IRQ_L1 bool "Locate frequently called timer_interrupt() function in L1 Memory" default y depends on !SMP help If enabled, the frequently called timer_interrupt() function is linked into L1 instruction memory. (less latency) config IDLE_L1 bool "Locate frequently idle function in L1 Memory" default y depends on !SMP help If enabled, the frequently called idle function is linked into L1 instruction memory. (less latency) config SCHEDULE_L1 bool "Locate kernel schedule function in L1 Memory" default y depends on !SMP help If enabled, the frequently called kernel schedule is linked into L1 instruction memory. (less latency) config ARITHMETIC_OPS_L1 bool "Locate kernel owned arithmetic functions in L1 Memory" default y depends on !SMP help If enabled, arithmetic functions are linked into L1 instruction memory. (less latency) config ACCESS_OK_L1 bool "Locate access_ok function in L1 Memory" default y depends on !SMP help If enabled, the access_ok function is linked into L1 instruction memory. (less latency) config MEMSET_L1 bool "Locate memset function in L1 Memory" default y depends on !SMP help If enabled, the memset function is linked into L1 instruction memory. (less latency) config MEMCPY_L1 bool "Locate memcpy function in L1 Memory" default y depends on !SMP help If enabled, the memcpy function is linked into L1 instruction memory. (less latency) config STRCMP_L1 bool "locate strcmp function in L1 Memory" default y depends on !SMP help If enabled, the strcmp function is linked into L1 instruction memory (less latency). config STRNCMP_L1 bool "locate strncmp function in L1 Memory" default y depends on !SMP help If enabled, the strncmp function is linked into L1 instruction memory (less latency). config STRCPY_L1 bool "locate strcpy function in L1 Memory" default y depends on !SMP help If enabled, the strcpy function is linked into L1 instruction memory (less latency). config STRNCPY_L1 bool "locate strncpy function in L1 Memory" default y depends on !SMP help If enabled, the strncpy function is linked into L1 instruction memory (less latency). config SYS_BFIN_SPINLOCK_L1 bool "Locate sys_bfin_spinlock function in L1 Memory" default y depends on !SMP help If enabled, sys_bfin_spinlock function is linked into L1 instruction memory. (less latency) config IP_CHECKSUM_L1 bool "Locate IP Checksum function in L1 Memory" default n depends on !SMP help If enabled, the IP Checksum function is linked into L1 instruction memory. (less latency) config CACHELINE_ALIGNED_L1 bool "Locate cacheline_aligned data to L1 Data Memory" default y if !BF54x default n if BF54x depends on !SMP && !BF531 help If enabled, cacheline_aligned data is linked into L1 data memory. (less latency) config SYSCALL_TAB_L1 bool "Locate Syscall Table L1 Data Memory" default n depends on !SMP && !BF531 help If enabled, the Syscall LUT is linked into L1 data memory. (less latency) config CPLB_SWITCH_TAB_L1 bool "Locate CPLB Switch Tables L1 Data Memory" default n depends on !SMP && !BF531 help If enabled, the CPLB Switch Tables are linked into L1 data memory. (less latency) config ICACHE_FLUSH_L1 bool "Locate icache flush funcs in L1 Inst Memory" default y help If enabled, the Blackfin icache flushing functions are linked into L1 instruction memory. Note that this might be required to address anomalies, but these functions are pretty small, so it shouldn't be too bad. If you are using a processor affected by an anomaly, the build system will double check for you and prevent it. config DCACHE_FLUSH_L1 bool "Locate dcache flush funcs in L1 Inst Memory" default y depends on !SMP help If enabled, the Blackfin dcache flushing functions are linked into L1 instruction memory. config APP_STACK_L1 bool "Support locating application stack in L1 Scratch Memory" default y depends on !SMP help If enabled the application stack can be located in L1 scratch memory (less latency). Currently only works with FLAT binaries. config EXCEPTION_L1_SCRATCH bool "Locate exception stack in L1 Scratch Memory" default n depends on !SMP && !APP_STACK_L1 help Whenever an exception occurs, use the L1 Scratch memory for stack storage. You cannot place the stacks of FLAT binaries in L1 when using this option. If you don't use L1 Scratch, then you should say Y here. comment "Speed Optimizations" config BFIN_INS_LOWOVERHEAD bool "ins[bwl] low overhead, higher interrupt latency" default y depends on !SMP help Reads on the Blackfin are speculative. In Blackfin terms, this means they can be interrupted at any time (even after they have been issued on to the external bus), and re-issued after the interrupt occurs. For memory - this is not a big deal, since memory does not change if it sees a read. If a FIFO is sitting on the end of the read, it will see two reads, when the core only sees one since the FIFO receives both the read which is cancelled (and not delivered to the core) and the one which is re-issued (which is delivered to the core). To solve this, interrupts are turned off before reads occur to I/O space. This option controls which the overhead/latency of controlling interrupts during this time "n" turns interrupts off every read (higher overhead, but lower interrupt latency) "y" turns interrupts off every loop (low overhead, but longer interrupt latency) default behavior is to leave this set to on (type "Y"). If you are experiencing interrupt latency issues, it is safe and OK to turn this off. endmenu choice prompt "Kernel executes from" help Choose the memory type that the kernel will be running in. config RAMKERNEL bool "RAM" help The kernel will be resident in RAM when running. config ROMKERNEL bool "ROM" help The kernel will be resident in FLASH/ROM when running. endchoice # Common code uses "ROMKERNEL" or "XIP_KERNEL", so define both config XIP_KERNEL bool default y depends on ROMKERNEL source "mm/Kconfig" config BFIN_GPTIMERS tristate "Enable Blackfin General Purpose Timers API" default n help Enable support for the General Purpose Timers API. If you are unsure, say N. To compile this driver as a module, choose M here: the module will be called gptimers. choice prompt "Uncached DMA region" default DMA_UNCACHED_1M config DMA_UNCACHED_4M bool "Enable 4M DMA region" config DMA_UNCACHED_2M bool "Enable 2M DMA region" config DMA_UNCACHED_1M bool "Enable 1M DMA region" config DMA_UNCACHED_512K bool "Enable 512K DMA region" config DMA_UNCACHED_256K bool "Enable 256K DMA region" config DMA_UNCACHED_128K bool "Enable 128K DMA region" config DMA_UNCACHED_NONE bool "Disable DMA region" endchoice comment "Cache Support" config BFIN_ICACHE bool "Enable ICACHE" default y config BFIN_EXTMEM_ICACHEABLE bool "Enable ICACHE for external memory" depends on BFIN_ICACHE default y config BFIN_L2_ICACHEABLE bool "Enable ICACHE for L2 SRAM" depends on BFIN_ICACHE depends on BF54x || BF561 default n config BFIN_DCACHE bool "Enable DCACHE" default y config BFIN_DCACHE_BANKA bool "Enable only 16k BankA DCACHE - BankB is SRAM" depends on BFIN_DCACHE && !BF531 default n config BFIN_EXTMEM_DCACHEABLE bool "Enable DCACHE for external memory" depends on BFIN_DCACHE default y choice prompt "External memory DCACHE policy" depends on BFIN_EXTMEM_DCACHEABLE default BFIN_EXTMEM_WRITEBACK if !SMP default BFIN_EXTMEM_WRITETHROUGH if SMP config BFIN_EXTMEM_WRITEBACK bool "Write back" depends on !SMP help Write Back Policy: Cached data will be written back to SDRAM only when needed. This can give a nice increase in performance, but beware of broken drivers that do not properly invalidate/flush their cache. Write Through Policy: Cached data will always be written back to SDRAM when the cache is updated. This is a completely safe setting, but performance is worse than Write Back. If you are unsure of the options and you want to be safe, then go with Write Through. config BFIN_EXTMEM_WRITETHROUGH bool "Write through" help Write Back Policy: Cached data will be written back to SDRAM only when needed. This can give a nice increase in performance, but beware of broken drivers that do not properly invalidate/flush their cache. Write Through Policy: Cached data will always be written back to SDRAM when the cache is updated. This is a completely safe setting, but performance is worse than Write Back. If you are unsure of the options and you want to be safe, then go with Write Through. endchoice config BFIN_L2_DCACHEABLE bool "Enable DCACHE for L2 SRAM" depends on BFIN_DCACHE depends on (BF54x || BF561) && !SMP default n choice prompt "L2 SRAM DCACHE policy" depends on BFIN_L2_DCACHEABLE default BFIN_L2_WRITEBACK config BFIN_L2_WRITEBACK bool "Write back" config BFIN_L2_WRITETHROUGH bool "Write through" endchoice comment "Memory Protection Unit" config MPU bool "Enable the memory protection unit (EXPERIMENTAL)" default n help Use the processor's MPU to protect applications from accessing memory they do not own. This comes at a performance penalty and is recommended only for debugging. comment "Asynchronous Memory Configuration" menu "EBIU_AMGCTL Global Control" config C_AMCKEN bool "Enable CLKOUT" default y config C_CDPRIO bool "DMA has priority over core for ext. accesses" default n config C_B0PEN depends on BF561 bool "Bank 0 16 bit packing enable" default y config C_B1PEN depends on BF561 bool "Bank 1 16 bit packing enable" default y config C_B2PEN depends on BF561 bool "Bank 2 16 bit packing enable" default y config C_B3PEN depends on BF561 bool "Bank 3 16 bit packing enable" default n choice prompt "Enable Asynchronous Memory Banks" default C_AMBEN_ALL config C_AMBEN bool "Disable All Banks" config C_AMBEN_B0 bool "Enable Bank 0" config C_AMBEN_B0_B1 bool "Enable Bank 0 & 1" config C_AMBEN_B0_B1_B2 bool "Enable Bank 0 & 1 & 2" config C_AMBEN_ALL bool "Enable All Banks" endchoice endmenu menu "EBIU_AMBCTL Control" config BANK_0 hex "Bank 0 (AMBCTL0.L)" default 0x7BB0 help These are the low 16 bits of the EBIU_AMBCTL0 MMR which are used to control the Asynchronous Memory Bank 0 settings. config BANK_1 hex "Bank 1 (AMBCTL0.H)" default 0x7BB0 default 0x5558 if BF54x help These are the high 16 bits of the EBIU_AMBCTL0 MMR which are used to control the Asynchronous Memory Bank 1 settings. config BANK_2 hex "Bank 2 (AMBCTL1.L)" default 0x7BB0 help These are the low 16 bits of the EBIU_AMBCTL1 MMR which are used to control the Asynchronous Memory Bank 2 settings. config BANK_3 hex "Bank 3 (AMBCTL1.H)" default 0x99B3 help These are the high 16 bits of the EBIU_AMBCTL1 MMR which are used to control the Asynchronous Memory Bank 3 settings. endmenu config EBIU_MBSCTLVAL hex "EBIU Bank Select Control Register" depends on BF54x default 0 config EBIU_MODEVAL hex "Flash Memory Mode Control Register" depends on BF54x default 1 config EBIU_FCTLVAL hex "Flash Memory Bank Control Register" depends on BF54x default 6 endmenu ############################################################################# menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)" config PCI bool "PCI support" depends on BROKEN help Support for PCI bus. source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" endmenu menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu menu "Power management options" source "kernel/power/Kconfig" config ARCH_SUSPEND_POSSIBLE def_bool y choice prompt "Standby Power Saving Mode" depends on PM default PM_BFIN_SLEEP_DEEPER config PM_BFIN_SLEEP_DEEPER bool "Sleep Deeper" help Sleep "Deeper" Mode (High Power Savings) - This mode reduces dynamic power dissipation by disabling the clock to the processor core (CCLK). Furthermore, Standby sets the internal power supply voltage (VDDINT) to 0.85 V to provide the greatest power savings, while preserving the processor state. The PLL and system clock (SCLK) continue to operate at a very low frequency of about 3.3 MHz. To preserve data integrity in the SDRAM, the SDRAM is put into Self Refresh Mode. Typically an external event such as GPIO interrupt or RTC activity wakes up the processor. Various Peripherals such as UART, SPORT, PPI may not function as normal during Sleep Deeper, due to the reduced SCLK frequency. When in the sleep mode, system DMA access to L1 memory is not supported. If unsure, select "Sleep Deeper". config PM_BFIN_SLEEP bool "Sleep" help Sleep Mode (High Power Savings) - The sleep mode reduces power dissipation by disabling the clock to the processor core (CCLK). The PLL and system clock (SCLK), however, continue to operate in this mode. Typically an external event or RTC activity will wake up the processor. When in the sleep mode, system DMA access to L1 memory is not supported. If unsure, select "Sleep Deeper". endchoice comment "Possible Suspend Mem / Hibernate Wake-Up Sources" depends on PM config PM_BFIN_WAKE_PH6 bool "Allow Wake-Up from on-chip PHY or PH6 GP" depends on PM && (BF51x || BF52x || BF534 || BF536 || BF537) default n help Enable PHY and PH6 GP Wake-Up (Voltage Regulator Power-Up) config PM_BFIN_WAKE_GP bool "Allow Wake-Up from GPIOs" depends on PM && BF54x default n help Enable General-Purpose Wake-Up (Voltage Regulator Power-Up) (all processors, except ADSP-BF549). This option sets the general-purpose wake-up enable (GPWE) control bit to enable wake-up upon detection of an active low signal on the /GPW (PH7) pin. On ADSP-BF549 this option enables the the same functionality on the /MRXON pin also PH7. endmenu menu "CPU Frequency scaling" source "drivers/cpufreq/Kconfig" config BFIN_CPU_FREQ bool depends on CPU_FREQ select CPU_FREQ_TABLE default y config CPU_VOLTAGE bool "CPU Voltage scaling" depends on EXPERIMENTAL depends on CPU_FREQ default n help Say Y here if you want CPU voltage scaling according to the CPU frequency. This option violates the PLL BYPASS recommendation in the Blackfin Processor manuals. There is a theoretical risk that during VDDINT transitions the PLL may unlock. endmenu source "net/Kconfig" source "drivers/Kconfig" source "drivers/firmware/Kconfig" source "fs/Kconfig" source "arch/blackfin/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" config BF52x def_bool y depends on (BF522 || BF523 || BF524 || BF525 || BF526 || BF527) if (BF52x) source "arch/blackfin/mach-bf527/boards/Kconfig" menu "BF527 Specific Configuration" comment "Alternative Multiplexing Scheme" choice prompt "SPORT0" default BF527_SPORT0_PORTG help Select PORT used for SPORT0. See Hardware Reference Manual config BF527_SPORT0_PORTF bool "PORT F" help PORT F config BF527_SPORT0_PORTG bool "PORT G" help PORT G endchoice choice prompt "SPORT0 TSCLK Location" depends on BF527_SPORT0_PORTG default BF527_SPORT0_TSCLK_PG10 help Select PIN used for SPORT0_TSCLK. See Hardware Reference Manual config BF527_SPORT0_TSCLK_PG10 bool "PORT PG10" help PORT PG10 config BF527_SPORT0_TSCLK_PG14 bool "PORT PG14" help PORT PG14 endchoice choice prompt "UART1" default BF527_UART1_PORTF help Select PORT used for UART1. See Hardware Reference Manual config BF527_UART1_PORTF bool "PORT F" help PORT F config BF527_UART1_PORTG bool "PORT G" help PORT G endchoice choice prompt "NAND (NFC) Data" default BF527_NAND_D_PORTH help Select PORT used for NAND Data Bus. See Hardware Reference Manual config BF527_NAND_D_PORTF bool "PORT F" help PORT F config BF527_NAND_D_PORTH bool "PORT H" help PORT H endchoice comment "Hysteresis/Schmitt Trigger Control" config BFIN_HYSTERESIS_CONTROL bool "Enable Hysteresis Control" help The ADSP-BF52x allows to control input hysteresis for Port F, Port G and Port H and other processor signal inputs. The Schmitt trigger enables can be set only for pin groups. Saying Y will overwrite the default reset or boot loader initialization. menu "PORT F" depends on BFIN_HYSTERESIS_CONTROL config GPIO_HYST_PORTF_0_7 bool "Enable Hysteresis on PORTF {0...7}" config GPIO_HYST_PORTF_8_9 bool "Enable Hysteresis on PORTF {8, 9}" config GPIO_HYST_PORTF_10 bool "Enable Hysteresis on PORTF 10" config GPIO_HYST_PORTF_11 bool "Enable Hysteresis on PORTF 11" config GPIO_HYST_PORTF_12_13 bool "Enable Hysteresis on PORTF {12, 13}" config GPIO_HYST_PORTF_14_15 bool "Enable Hysteresis on PORTF {14, 15}" endmenu menu "PORT G" depends on BFIN_HYSTERESIS_CONTROL config GPIO_HYST_PORTG_0 bool "Enable Hysteresis on PORTG 0" config GPIO_HYST_PORTG_1_4 bool "Enable Hysteresis on PORTG {1...4}" config GPIO_HYST_PORTG_5_6 bool "Enable Hysteresis on PORTG {5, 6}" config GPIO_HYST_PORTG_7_8 bool "Enable Hysteresis on PORTG {7, 8}" config GPIO_HYST_PORTG_9 bool "Enable Hysteresis on PORTG 9" config GPIO_HYST_PORTG_10 bool "Enable Hysteresis on PORTG 10" config GPIO_HYST_PORTG_11_13 bool "Enable Hysteresis on PORTG {11...13}" config GPIO_HYST_PORTG_14_15 bool "Enable Hysteresis on PORTG {14, 15}" endmenu menu "PORT H" depends on BFIN_HYSTERESIS_CONTROL config GPIO_HYST_PORTH_0_7 bool "Enable Hysteresis on PORTH {0...7}" config GPIO_HYST_PORTH_8 bool "Enable Hysteresis on PORTH 8" config GPIO_HYST_PORTH_9_15 bool "Enable Hysteresis on PORTH {9...15}" endmenu menu "None-GPIO" depends on BFIN_HYSTERESIS_CONTROL config NONEGPIO_HYST_TMR0_FS1_PPICLK bool "Enable Hysteresis on {TMR0, PPI_FS1, PPI_CLK}" config NONEGPIO_HYST_NMI_RST_BMODE bool "Enable Hysteresis on {NMI, RESET, BMODE}" config NONEGPIO_HYST_JTAG bool "Enable Hysteresis on JTAG" endmenu comment "Interrupt Priority Assignment" menu "Priority" config IRQ_PLL_WAKEUP int "IRQ_PLL_WAKEUP" default 7 config IRQ_DMA0_ERROR int "IRQ_DMA0_ERROR" default 7 config IRQ_DMAR0_BLK int "IRQ_DMAR0_BLK" default 7 config IRQ_DMAR1_BLK int "IRQ_DMAR1_BLK" default 7 config IRQ_DMAR0_OVR int "IRQ_DMAR0_OVR" default 7 config IRQ_DMAR1_OVR int "IRQ_DMAR1_OVR" default 7 config IRQ_PPI_ERROR int "IRQ_PPI_ERROR" default 7 config IRQ_MAC_ERROR int "IRQ_MAC_ERROR" default 7 config IRQ_SPORT0_ERROR int "IRQ_SPORT0_ERROR" default 7 config IRQ_SPORT1_ERROR int "IRQ_SPORT1_ERROR" default 7 config IRQ_UART0_ERROR int "IRQ_UART0_ERROR" default 7 config IRQ_UART1_ERROR int "IRQ_UART1_ERROR" default 7 config IRQ_RTC int "IRQ_RTC" default 8 config IRQ_PPI int "IRQ_PPI" default 8 config IRQ_SPORT0_RX int "IRQ_SPORT0_RX" default 9 config IRQ_SPORT0_TX int "IRQ_SPORT0_TX" default 9 config IRQ_SPORT1_RX int "IRQ_SPORT1_RX" default 9 config IRQ_SPORT1_TX int "IRQ_SPORT1_TX" default 9 config IRQ_TWI int "IRQ_TWI" default 10 config IRQ_SPI int "IRQ_SPI" default 10 config IRQ_UART0_RX int "IRQ_UART0_RX" default 10 config IRQ_UART0_TX int "IRQ_UART0_TX" default 10 config IRQ_UART1_RX int "IRQ_UART1_RX" default 10 config IRQ_UART1_TX int "IRQ_UART1_TX" default 10 config IRQ_OPTSEC int "IRQ_OPTSEC" default 11 config IRQ_CNT int "IRQ_CNT" default 11 config IRQ_MAC_RX int "IRQ_MAC_RX" default 11 config IRQ_PORTH_INTA int "IRQ_PORTH_INTA" default 11 config IRQ_MAC_TX int "IRQ_MAC_TX/NFC" default 11 config IRQ_PORTH_INTB int "IRQ_PORTH_INTB" default 11 config IRQ_TIMER0 int "IRQ_TIMER0" default 7 if TICKSOURCE_GPTMR0 default 8 config IRQ_TIMER1 int "IRQ_TIMER1" default 12 config IRQ_TIMER2 int "IRQ_TIMER2" default 12 config IRQ_TIMER3 int "IRQ_TIMER3" default 12 config IRQ_TIMER4 int "IRQ_TIMER4" default 12 config IRQ_TIMER5 int "IRQ_TIMER5" default 12 config IRQ_TIMER6 int "IRQ_TIMER6" default 12 config IRQ_TIMER7 int "IRQ_TIMER7" default 12 config IRQ_PORTG_INTA int "IRQ_PORTG_INTA" default 12 config IRQ_PORTG_INTB int "IRQ_PORTG_INTB" default 12 config IRQ_MEM_DMA0 int "IRQ_MEM_DMA0" default 13 config IRQ_MEM_DMA1 int "IRQ_MEM_DMA1" default 13 config IRQ_WATCH int "IRQ_WATCH" default 13 config IRQ_PORTF_INTA int "IRQ_PORTF_INTA" default 13 config IRQ_PORTF_INTB int "IRQ_PORTF_INTB" default 13 config IRQ_SPI_ERROR int "IRQ_SPI_ERROR" default 7 config IRQ_NFC_ERROR int "IRQ_NFC_ERROR" default 7 config IRQ_HDMA_ERROR int "IRQ_HDMA_ERROR" default 7 config IRQ_HDMA int "IRQ_HDMA" default 7 config IRQ_USB_EINT int "IRQ_USB_EINT" default 10 config IRQ_USB_INT0 int "IRQ_USB_INT0" default 10 config IRQ_USB_INT1 int "IRQ_USB_INT1" default 10 config IRQ_USB_INT2 int "IRQ_USB_INT2" default 10 config IRQ_USB_DMA int "IRQ_USB_DMA" default 10 help Enter the priority numbers between 7-13 ONLY. Others are Reserved. This applies to all the above. It is not recommended to assign the highest priority number 7 to UART or any other device. endmenu endmenu endif choice prompt "System type" default BFIN527_EZKIT help Select your board! config BFIN527_EZKIT bool "BF527-EZKIT" help BF527-EZKIT-LITE board support. config BFIN527_EZKIT_V2 bool "BF527-EZKIT-V2" help BF527-EZKIT-LITE V2.1+ board support. config BFIN527_BLUETECHNIX_CM bool "Bluetechnix CM-BF527" help CM-BF527 support for EVAL- and DEV-Board. config BFIN526_EZBRD bool "BF526-EZBRD" help BF526-EZBRD/EZKIT Lite board support. config BFIN527_AD7160EVAL bool "BF527-AD7160-EVAL" help BF527-AD7160-EVAL board support. config BFIN527_TLL6527M bool "The Learning Labs TLL6527M" help TLL6527M V1.0 platform support endchoice config BF542 def_bool y depends on BF542_std || BF542M config BF544 def_bool y depends on BF544_std || BF544M config BF547 def_bool y depends on BF547_std || BF547M config BF548 def_bool y depends on BF548_std || BF548M config BF549 def_bool y depends on BF549_std || BF549M config BF54xM def_bool y depends on (BF542M || BF544M || BF547M || BF548M || BF549M) config BF54x def_bool y depends on (BF542 || BF544 || BF547 || BF548 || BF549) if (BF54x) source "arch/blackfin/mach-bf548/boards/Kconfig" menu "BF548 Specific Configuration" config DEB_DMA_URGENT bool "DMA has priority over core for ext. accesses" depends on BF54x default y help Treat any DEB1, DEB2 and DEB3 request as Urgent config BF548_ATAPI_ALTERNATIVE_PORT bool "BF548 ATAPI alternative port via GPIO" help BF548 ATAPI data and address PINs can be routed through async address or GPIO port F and G. Select y to route it to GPIO. choice prompt "UART2 DMA channel selection" depends on SERIAL_BFIN_UART2 default UART2_DMA_RX_ON_DMA18 help UART2 DMA channel selection RX -> DMA18 TX -> DMA19 or RX -> DMA13 TX -> DMA14 config UART2_DMA_RX_ON_DMA18 bool "UART2 DMA RX -> DMA18 TX -> DMA19" help UART2 DMA channel assignment RX -> DMA18 TX -> DMA19 use SPORT2 default DMA channel config UART2_DMA_RX_ON_DMA13 bool "UART2 DMA RX -> DMA13 TX -> DMA14" help UART2 DMA channel assignment RX -> DMA13 TX -> DMA14 use EPPI1 EPPI2 default DMA channel endchoice choice prompt "UART3 DMA channel selection" depends on SERIAL_BFIN_UART3 default UART3_DMA_RX_ON_DMA20 help UART3 DMA channel selection RX -> DMA20 TX -> DMA21 or RX -> DMA15 TX -> DMA16 config UART3_DMA_RX_ON_DMA20 bool "UART3 DMA RX -> DMA20 TX -> DMA21" help UART3 DMA channel assignment RX -> DMA20 TX -> DMA21 use SPORT3 default DMA channel config UART3_DMA_RX_ON_DMA15 bool "UART3 DMA RX -> DMA15 TX -> DMA16" help UART3 DMA channel assignment RX -> DMA15 TX -> DMA16 use PIXC default DMA channel endchoice comment "Interrupt Priority Assignment" menu "Priority" config IRQ_PLL_WAKEUP int "IRQ_PLL_WAKEUP" default 7 config IRQ_DMAC0_ERR int "IRQ_DMAC0_ERR" default 7 config IRQ_EPPI0_ERR int "IRQ_EPPI0_ERR" default 7 config IRQ_SPORT0_ERR int "IRQ_SPORT0_ERR" default 7 config IRQ_SPORT1_ERR int "IRQ_SPORT1_ERR" default 7 config IRQ_SPI0_ERR int "IRQ_SPI0_ERR" default 7 config IRQ_UART0_ERR int "IRQ_UART0_ERR" default 7 config IRQ_RTC int "IRQ_RTC" default 8 config IRQ_EPPI0 int "IRQ_EPPI0" default 8 config IRQ_SPORT0_RX int "IRQ_SPORT0_RX" default 9 config IRQ_SPORT0_TX int "IRQ_SPORT0_TX" default 9 config IRQ_SPORT1_RX int "IRQ_SPORT1_RX" default 9 config IRQ_SPORT1_TX int "IRQ_SPORT1_TX" default 9 config IRQ_SPI0 int "IRQ_SPI0" default 10 config IRQ_UART0_RX int "IRQ_UART0_RX" default 10 config IRQ_UART0_TX int "IRQ_UART0_TX" default 10 config IRQ_TIMER8 int "IRQ_TIMER8" default 11 config IRQ_TIMER9 int "IRQ_TIMER9" default 11 config IRQ_TIMER10 int "IRQ_TIMER10" default 11 config IRQ_PINT0 int "IRQ_PINT0" default 12 config IRQ_PINT1 int "IRQ_PINT0" default 12 config IRQ_MDMAS0 int "IRQ_MDMAS0" default 13 config IRQ_MDMAS1 int "IRQ_DMDMAS1" default 13 config IRQ_WATCHDOG int "IRQ_WATCHDOG" default 13 config IRQ_DMAC1_ERR int "IRQ_DMAC1_ERR" default 7 config IRQ_SPORT2_ERR int "IRQ_SPORT2_ERR" default 7 config IRQ_SPORT3_ERR int "IRQ_SPORT3_ERR" default 7 config IRQ_MXVR_DATA int "IRQ MXVR Data" default 7 config IRQ_SPI1_ERR int "IRQ_SPI1_ERR" default 7 config IRQ_SPI2_ERR int "IRQ_SPI2_ERR" default 7 config IRQ_UART1_ERR int "IRQ_UART1_ERR" default 7 config IRQ_UART2_ERR int "IRQ_UART2_ERR" default 7 config IRQ_CAN0_ERR int "IRQ_CAN0_ERR" default 7 config IRQ_SPORT2_RX int "IRQ_SPORT2_RX" default 9 config IRQ_SPORT2_TX int "IRQ_SPORT2_TX" default 9 config IRQ_SPORT3_RX int "IRQ_SPORT3_RX" default 9 config IRQ_SPORT3_TX int "IRQ_SPORT3_TX" default 9 config IRQ_EPPI1 int "IRQ_EPPI1" default 9 config IRQ_EPPI2 int "IRQ_EPPI2" default 9 config IRQ_SPI1 int "IRQ_SPI1" default 10 config IRQ_SPI2 int "IRQ_SPI2" default 10 config IRQ_UART1_RX int "IRQ_UART1_RX" default 10 config IRQ_UART1_TX int "IRQ_UART1_TX" default 10 config IRQ_ATAPI_RX int "IRQ_ATAPI_RX" default 10 config IRQ_ATAPI_TX int "IRQ_ATAPI_TX" default 10 config IRQ_TWI0 int "IRQ_TWI0" default 11 config IRQ_TWI1 int "IRQ_TWI1" default 11 config IRQ_CAN0_RX int "IRQ_CAN_RX" default 11 config IRQ_CAN0_TX int "IRQ_CAN_TX" default 11 config IRQ_MDMAS2 int "IRQ_MDMAS2" default 13 config IRQ_MDMAS3 int "IRQ_DMMAS3" default 13 config IRQ_MXVR_ERR int "IRQ_MXVR_ERR" default 11 config IRQ_MXVR_MSG int "IRQ_MXVR_MSG" default 11 config IRQ_MXVR_PKT int "IRQ_MXVR_PKT" default 11 config IRQ_EPPI1_ERR int "IRQ_EPPI1_ERR" default 7 config IRQ_EPPI2_ERR int "IRQ_EPPI2_ERR" default 7 config IRQ_UART3_ERR int "IRQ_UART3_ERR" default 7 config IRQ_HOST_ERR int "IRQ_HOST_ERR" default 7 config IRQ_PIXC_ERR int "IRQ_PIXC_ERR" default 7 config IRQ_NFC_ERR int "IRQ_NFC_ERR" default 7 config IRQ_ATAPI_ERR int "IRQ_ATAPI_ERR" default 7 config IRQ_CAN1_ERR int "IRQ_CAN1_ERR" default 7 config IRQ_HS_DMA_ERR int "IRQ Handshake DMA Status" default 7 config IRQ_PIXC_IN0 int "IRQ PIXC IN0" default 8 config IRQ_PIXC_IN1 int "IRQ PIXC IN1" default 8 config IRQ_PIXC_OUT int "IRQ PIXC OUT" default 8 config IRQ_SDH int "IRQ SDH" default 8 config IRQ_CNT int "IRQ CNT" default 8 config IRQ_KEY int "IRQ KEY" default 8 config IRQ_CAN1_RX int "IRQ CAN1 RX" default 11 config IRQ_CAN1_TX int "IRQ_CAN1_TX" default 11 config IRQ_SDH_MASK0 int "IRQ_SDH_MASK0" default 11 config IRQ_SDH_MASK1 int "IRQ_SDH_MASK1" default 11 config IRQ_USB_INT0 int "IRQ USB INT0" default 11 config IRQ_USB_INT1 int "IRQ USB INT1" default 11 config IRQ_USB_INT2 int "IRQ USB INT2" default 11 config IRQ_USB_DMA int "IRQ USB DMA" default 11 config IRQ_OTPSEC int "IRQ OPTSEC" default 11 config IRQ_TIMER0 int "IRQ_TIMER0" default 7 if TICKSOURCE_GPTMR0 default 8 config IRQ_TIMER1 int "IRQ_TIMER1" default 11 config IRQ_TIMER2 int "IRQ_TIMER2" default 11 config IRQ_TIMER3 int "IRQ_TIMER3" default 11 config IRQ_TIMER4 int "IRQ_TIMER4" default 11 config IRQ_TIMER5 int "IRQ_TIMER5" default 11 config IRQ_TIMER6 int "IRQ_TIMER6" default 11 config IRQ_TIMER7 int "IRQ_TIMER7" default 11 config IRQ_PINT2 int "IRQ_PIN2" default 11 config IRQ_PINT3 int "IRQ_PIN3" default 11 help Enter the priority numbers between 7-13 ONLY. Others are Reserved. This applies to all the above. It is not recommended to assign the highest priority number 7 to UART or any other device. endmenu comment "Pin Interrupt to Port Assignment" menu "Assignment" config PINTx_REASSIGN bool "Reprogram PINT Assignment" default y help The interrupt assignment registers controls the pin-to-interrupt assignment in a byte-wide manner. Each option allows you to select a set of pins (High/Low Byte) of an specific Port being mapped to one of the four PIN Interrupts IRQ_PINTx. You shouldn't change any of these unless you know exactly what you're doing. Please consult the Blackfin BF54x Processor Hardware Reference Manual. config PINT0_ASSIGN hex "PINT0_ASSIGN" depends on PINTx_REASSIGN default 0x00000101 config PINT1_ASSIGN hex "PINT1_ASSIGN" depends on PINTx_REASSIGN default 0x01010000 config PINT2_ASSIGN hex "PINT2_ASSIGN" depends on PINTx_REASSIGN default 0x07000101 config PINT3_ASSIGN hex "PINT3_ASSIGN" depends on PINTx_REASSIGN default 0x02020303 endmenu endmenu endif choice prompt "System type" default BFIN548_EZKIT help Select your board! config BFIN548_EZKIT bool "BF548-EZKIT" help BFIN548-EZKIT board support. config BFIN548_BLUETECHNIX_CM bool "Bluetechnix CM-BF548" depends on (BF548) help CM-BF548 support for DEV-Board. endchoice if (BF533 || BF532 || BF531) source "arch/blackfin/mach-bf533/boards/Kconfig" menu "BF533/2/1 Specific Configuration" comment "Interrupt Priority Assignment" menu "Priority" config UART_ERROR int "UART ERROR" default 7 config SPORT0_ERROR int "SPORT0 ERROR" default 7 config SPI_ERROR int "SPI ERROR" default 7 config SPORT1_ERROR int "SPORT1 ERROR" default 7 config PPI_ERROR int "PPI ERROR" default 7 config DMA_ERROR int "DMA ERROR" default 7 config PLLWAKE_ERROR int "PLL WAKEUP ERROR" default 7 config RTC_ERROR int "RTC ERROR" default 8 config DMA0_PPI int "DMA0 PPI" default 8 config DMA1_SPORT0RX int "DMA1 (SPORT0 RX)" default 9 config DMA2_SPORT0TX int "DMA2 (SPORT0 TX)" default 9 config DMA3_SPORT1RX int "DMA3 (SPORT1 RX)" default 9 config DMA4_SPORT1TX int "DMA4 (SPORT1 TX)" default 9 config DMA5_SPI int "DMA5 (SPI)" default 10 config DMA6_UARTRX int "DMA6 (UART0 RX)" default 10 config DMA7_UARTTX int "DMA7 (UART0 TX)" default 10 config TIMER0 int "TIMER0" default 7 if TICKSOURCE_GPTMR0 default 8 config TIMER1 int "TIMER1" default 11 config TIMER2 int "TIMER2" default 11 config PFA int "PF Interrupt A" default 12 config PFB int "PF Interrupt B" default 12 config MEMDMA0 int "MEMORY DMA0" default 13 config MEMDMA1 int "MEMORY DMA1" default 13 config WDTIMER int "WATCH DOG TIMER" default 13 help Enter the priority numbers between 7-13 ONLY. Others are Reserved. This applies to all the above. It is not recommended to assign the highest priority number 7 to UART or any other device. endmenu endmenu endif choice prompt "System type" default BFIN533_STAMP help Select your board! config BFIN533_EZKIT bool "BF533-EZKIT" help BF533-EZKIT-LITE board support. config BFIN533_STAMP bool "BF533-STAMP" help BF533-STAMP board support. config BLACKSTAMP bool "BlackStamp" help Support for the BlackStamp board. Hardware info available at http://blackfin.uclinux.org/gf/project/blackstamp/ config BFIN533_BLUETECHNIX_CM bool "Bluetechnix CM-BF533" depends on (BF533) help CM-BF533 support for EVAL- and DEV-Board. config H8606_HVSISTEMAS bool "HV Sistemas H8606" depends on (BF532) help HV Sistemas H8606 board support. config BFIN532_IP0X bool "IP04/IP08 IP-PBX" depends on (BF532) help Core support for IP04/IP04 open hardware IP-PBX. endchoice if (BF537 || BF534 || BF536) source "arch/blackfin/mach-bf537/boards/Kconfig" menu "BF537 Specific Configuration" comment "Interrupt Priority Assignment" menu "Priority" config IRQ_PLL_WAKEUP int "IRQ_PLL_WAKEUP" default 7 config IRQ_DMA_ERROR int "IRQ_DMA_ERROR Generic" default 7 config IRQ_ERROR int "IRQ_ERROR: PPI CAN MAC SPORT0 SPORT1 SPI UART0 UART1" default 11 config IRQ_RTC int "IRQ_RTC" default 8 config IRQ_PPI int "IRQ_PPI" default 8 config IRQ_SPORT0_RX int "IRQ_SPORT0_RX" default 9 config IRQ_SPORT0_TX int "IRQ_SPORT0_TX" default 9 config IRQ_SPORT1_RX int "IRQ_SPORT1_RX" default 9 config IRQ_SPORT1_TX int "IRQ_SPORT1_TX" default 9 config IRQ_TWI int "IRQ_TWI" default 10 config IRQ_SPI int "IRQ_SPI" default 10 config IRQ_UART0_RX int "IRQ_UART0_RX" default 10 config IRQ_UART0_TX int "IRQ_UART0_TX" default 10 config IRQ_UART1_RX int "IRQ_UART1_RX" default 10 config IRQ_UART1_TX int "IRQ_UART1_TX" default 10 config IRQ_CAN_RX int "IRQ_CAN_RX" default 11 config IRQ_CAN_TX int "IRQ_CAN_TX" default 11 config IRQ_MAC_RX int "IRQ_MAC_RX" default 11 config IRQ_MAC_TX int "IRQ_MAC_TX" default 11 config IRQ_TIMER0 int "IRQ_TIMER0" default 7 if TICKSOURCE_GPTMR0 default 8 config IRQ_TIMER1 int "IRQ_TIMER1" default 12 config IRQ_TIMER2 int "IRQ_TIMER2" default 12 config IRQ_TIMER3 int "IRQ_TIMER3" default 12 config IRQ_TIMER4 int "IRQ_TIMER4" default 12 config IRQ_TIMER5 int "IRQ_TIMER5" default 12 config IRQ_TIMER6 int "IRQ_TIMER6" default 12 config IRQ_TIMER7 int "IRQ_TIMER7" default 12 config IRQ_PROG_INTA int "IRQ_PROG_INTA" default 12 config IRQ_PORTG_INTB int "IRQ_PORTG_INTB" default 12 config IRQ_MEM_DMA0 int "IRQ_MEM_DMA0" default 13 config IRQ_MEM_DMA1 int "IRQ_MEM_DMA1" default 13 config IRQ_WATCH int "IRQ_WATCH" default 13 help Enter the priority numbers between 7-13 ONLY. Others are Reserved. This applies to all the above. It is not recommended to assign the highest priority number 7 to UART or any other device. endmenu endmenu endif choice prompt "System type" default BFIN537_STAMP help Select your board! config BFIN537_STAMP bool "BF537-STAMP" help BF537-STAMP board support. config BFIN537_BLUETECHNIX_CM_E bool "Bluetechnix CM-BF537E" depends on (BF537) help CM-BF537E support for EVAL- and DEV-Board. config BFIN537_BLUETECHNIX_CM_U bool "Bluetechnix CM-BF537U" depends on (BF537) help CM-BF537U support for EVAL- and DEV-Board. config BFIN537_BLUETECHNIX_TCM bool "Bluetechnix TCM-BF537" depends on (BF537) help TCM-BF537 support for EVAL- and DEV-Board. config PNAV10 bool "PNAV board" depends on (BF537) help PNAV board support. config CAMSIG_MINOTAUR bool "Cambridge Signal Processing LTD Minotaur" depends on (BF537) help Board supply package for CSP Minotaur config DNP5370 bool "SSV Dil/NetPC DNP/5370" depends on (BF537) help Board supply package for DNP/5370 DIL64 module endchoice if (BF538 || BF539) source "arch/blackfin/mach-bf538/boards/Kconfig" menu "BF538 Specific Configuration" comment "Interrupt Priority Assignment" menu "Priority" config IRQ_PLL_WAKEUP int "IRQ_PLL_WAKEUP" default 7 config IRQ_DMA0_ERROR int "IRQ_DMA0_ERROR" default 7 config IRQ_PPI_ERROR int "IRQ_PPI_ERROR" default 7 config IRQ_SPORT0_ERROR int "IRQ_SPORT0_ERROR" default 7 config IRQ_SPORT1_ERROR int "IRQ_SPORT1_ERROR" default 7 config IRQ_SPI0_ERROR int "IRQ_SPI0_ERROR" default 7 config IRQ_UART0_ERROR int "IRQ_UART0_ERROR" default 7 config IRQ_RTC int "IRQ_RTC" default 8 config IRQ_PPI int "IRQ_PPI" default 8 config IRQ_SPORT0_RX int "IRQ_SPORT0_RX" default 9 config IRQ_SPORT0_TX int "IRQ_SPORT0_TX" default 9 config IRQ_SPORT1_RX int "IRQ_SPORT1_RX" default 9 config IRQ_SPORT1_TX int "IRQ_SPORT1_TX" default 9 config IRQ_SPI0 int "IRQ_SPI0" default 10 config IRQ_UART0_RX int "IRQ_UART0_RX" default 10 config IRQ_UART0_TX int "IRQ_UART0_TX" default 10 config IRQ_TIMER0 int "IRQ_TIMER0" default 7 if TICKSOURCE_GPTMR0 default 8 config IRQ_TIMER1 int "IRQ_TIMER1" default 11 config IRQ_TIMER2 int "IRQ_TIMER2" default 11 config IRQ_PORTF_INTA int "IRQ_PORTF_INTA" default 12 config IRQ_PORTF_INTB int "IRQ_PORTF_INTB" default 12 config IRQ_MEM0_DMA0 int "IRQ_MEM0_DMA0" default 13 config IRQ_MEM0_DMA1 int "IRQ_MEM0_DMA1" default 13 config IRQ_WATCH int "IRQ_WATCH" default 13 config IRQ_DMA1_ERROR int "IRQ_DMA1_ERROR" default 7 config IRQ_SPORT2_ERROR int "IRQ_SPORT2_ERROR" default 7 config IRQ_SPORT3_ERROR int "IRQ_SPORT3_ERROR" default 7 config IRQ_SPI1_ERROR int "IRQ_SPI1_ERROR" default 7 config IRQ_SPI2_ERROR int "IRQ_SPI2_ERROR" default 7 config IRQ_UART1_ERROR int "IRQ_UART1_ERROR" default 7 config IRQ_UART2_ERROR int "IRQ_UART2_ERROR" default 7 config IRQ_CAN_ERROR int "IRQ_CAN_ERROR" default 7 config IRQ_SPORT2_RX int "IRQ_SPORT2_RX" default 9 config IRQ_SPORT2_TX int "IRQ_SPORT2_TX" default 9 config IRQ_SPORT3_RX int "IRQ_SPORT3_RX" default 9 config IRQ_SPORT3_TX int "IRQ_SPORT3_TX" default 9 config IRQ_SPI1 int "IRQ_SPI1" default 10 config IRQ_SPI2 int "IRQ_SPI2" default 10 config IRQ_UART1_RX int "IRQ_UART1_RX" default 10 config IRQ_UART1_TX int "IRQ_UART1_TX" default 10 config IRQ_UART2_RX int "IRQ_UART2_RX" default 10 config IRQ_UART2_TX int "IRQ_UART2_TX" default 10 config IRQ_TWI0 int "IRQ_TWI0" default 11 config IRQ_TWI1 int "IRQ_TWI1" default 11 config IRQ_CAN_RX int "IRQ_CAN_RX" default 11 config IRQ_CAN_TX int "IRQ_CAN_TX" default 11 config IRQ_MEM1_DMA0 int "IRQ_MEM1_DMA0" default 13 config IRQ_MEM1_DMA1 int "IRQ_MEM1_DMA1" default 13 help Enter the priority numbers between 7-13 ONLY. Others are Reserved. This applies to all the above. It is not recommended to assign the highest priority number 7 to UART or any other device. endmenu endmenu endif choice prompt "System type" default BFIN538_EZKIT help Select your board! config BFIN538_EZKIT bool "BF538-EZKIT" help BF538-EZKIT-LITE board support. endchoice config BF51x def_bool y depends on (BF512 || BF514 || BF516 || BF518) if (BF51x) source "arch/blackfin/mach-bf518/boards/Kconfig" menu "BF518 Specific Configuration" comment "Alternative Multiplexing Scheme" choice prompt "SPORT0" default BF518_SPORT0_PORTG help Select PORT used for SPORT0. See Hardware Reference Manual config BF518_SPORT0_PORTF bool "PORT F" help PORT F config BF518_SPORT0_PORTG bool "PORT G" help PORT G endchoice choice prompt "SPORT0 TSCLK Location" depends on BF518_SPORT0_PORTG default BF518_SPORT0_TSCLK_PG10 help Select PIN used for SPORT0_TSCLK. See Hardware Reference Manual config BF518_SPORT0_TSCLK_PG10 bool "PORT PG10" help PORT PG10 config BF518_SPORT0_TSCLK_PG14 bool "PORT PG14" help PORT PG14 endchoice choice prompt "UART1" default BF518_UART1_PORTF help Select PORT used for UART1. See Hardware Reference Manual config BF518_UART1_PORTF bool "PORT F" help PORT F config BF518_UART1_PORTG bool "PORT G" help PORT G endchoice comment "Hysteresis/Schmitt Trigger Control" config BFIN_HYSTERESIS_CONTROL bool "Enable Hysteresis Control" help The ADSP-BF51x allows to control input hysteresis for Port F, Port G and Port H and other processor signal inputs. The Schmitt trigger enables can be set only for pin groups. Saying Y will overwrite the default reset or boot loader initialization. menu "PORT F" depends on BFIN_HYSTERESIS_CONTROL config GPIO_HYST_PORTF_0_7 bool "Enable Hysteresis on PORTF {0...7}" config GPIO_HYST_PORTF_8_9 bool "Enable Hysteresis on PORTF {8, 9}" config GPIO_HYST_PORTF_10 bool "Enable Hysteresis on PORTF 10" config GPIO_HYST_PORTF_11 bool "Enable Hysteresis on PORTF 11" config GPIO_HYST_PORTF_12_13 bool "Enable Hysteresis on PORTF {12, 13}" config GPIO_HYST_PORTF_14_15 bool "Enable Hysteresis on PORTF {14, 15}" endmenu menu "PORT G" depends on BFIN_HYSTERESIS_CONTROL config GPIO_HYST_PORTG_0 bool "Enable Hysteresis on PORTG 0" config GPIO_HYST_PORTG_1_4 bool "Enable Hysteresis on PORTG {1...4}" config GPIO_HYST_PORTG_5_6 bool "Enable Hysteresis on PORTG {5, 6}" config GPIO_HYST_PORTG_7_8 bool "Enable Hysteresis on PORTG {7, 8}" config GPIO_HYST_PORTG_9 bool "Enable Hysteresis on PORTG 9" config GPIO_HYST_PORTG_10 bool "Enable Hysteresis on PORTG 10" config GPIO_HYST_PORTG_11_13 bool "Enable Hysteresis on PORTG {11...13}" config GPIO_HYST_PORTG_14_15 bool "Enable Hysteresis on PORTG {14, 15}" endmenu menu "PORT H" depends on BFIN_HYSTERESIS_CONTROL config GPIO_HYST_PORTH_0_7 bool "Enable Hysteresis on PORTH {0...7}" endmenu menu "None-GPIO" depends on BFIN_HYSTERESIS_CONTROL config NONEGPIO_HYST_NMI_RST_BMODE bool "Enable Hysteresis on {NMI, RESET, BMODE}" config NONEGPIO_HYST_JTAG bool "Enable Hysteresis on JTAG" endmenu comment "Interrupt Priority Assignment" menu "Priority" config IRQ_PLL_WAKEUP int "IRQ_PLL_WAKEUP" default 7 config IRQ_DMA0_ERROR int "IRQ_DMA0_ERROR" default 7 config IRQ_DMAR0_BLK int "IRQ_DMAR0_BLK" default 7 config IRQ_DMAR1_BLK int "IRQ_DMAR1_BLK" default 7 config IRQ_DMAR0_OVR int "IRQ_DMAR0_OVR" default 7 config IRQ_DMAR1_OVR int "IRQ_DMAR1_OVR" default 7 config IRQ_PPI_ERROR int "IRQ_PPI_ERROR" default 7 config IRQ_MAC_ERROR int "IRQ_MAC_ERROR" default 7 config IRQ_SPORT0_ERROR int "IRQ_SPORT0_ERROR" default 7 config IRQ_SPORT1_ERROR int "IRQ_SPORT1_ERROR" default 7 config IRQ_PTP_ERROR int "IRQ_PTP_ERROR" default 7 config IRQ_UART0_ERROR int "IRQ_UART0_ERROR" default 7 config IRQ_UART1_ERROR int "IRQ_UART1_ERROR" default 7 config IRQ_RTC int "IRQ_RTC" default 8 config IRQ_PPI int "IRQ_PPI" default 8 config IRQ_SPORT0_RX int "IRQ_SPORT0_RX" default 9 config IRQ_SPORT0_TX int "IRQ_SPORT0_TX" default 9 config IRQ_SPORT1_RX int "IRQ_SPORT1_RX" default 9 config IRQ_SPORT1_TX int "IRQ_SPORT1_TX" default 9 config IRQ_TWI int "IRQ_TWI" default 10 config IRQ_SPI0 int "IRQ_SPI" default 10 config IRQ_UART0_RX int "IRQ_UART0_RX" default 10 config IRQ_UART0_TX int "IRQ_UART0_TX" default 10 config IRQ_UART1_RX int "IRQ_UART1_RX" default 10 config IRQ_UART1_TX int "IRQ_UART1_TX" default 10 config IRQ_OPTSEC int "IRQ_OPTSEC" default 11 config IRQ_CNT int "IRQ_CNT" default 11 config IRQ_MAC_RX int "IRQ_MAC_RX" default 11 config IRQ_PORTH_INTA int "IRQ_PORTH_INTA" default 11 config IRQ_MAC_TX int "IRQ_MAC_TX/NFC" default 11 config IRQ_PORTH_INTB int "IRQ_PORTH_INTB" default 11 config IRQ_TIMER0 int "IRQ_TIMER0" default 7 if TICKSOURCE_GPTMR0 default 8 config IRQ_TIMER1 int "IRQ_TIMER1" default 12 config IRQ_TIMER2 int "IRQ_TIMER2" default 12 config IRQ_TIMER3 int "IRQ_TIMER3" default 12 config IRQ_TIMER4 int "IRQ_TIMER4" default 12 config IRQ_TIMER5 int "IRQ_TIMER5" default 12 config IRQ_TIMER6 int "IRQ_TIMER6" default 12 config IRQ_TIMER7 int "IRQ_TIMER7" default 12 config IRQ_PORTG_INTA int "IRQ_PORTG_INTA" default 12 config IRQ_PORTG_INTB int "IRQ_PORTG_INTB" default 12 config IRQ_MEM_DMA0 int "IRQ_MEM_DMA0" default 13 config IRQ_MEM_DMA1 int "IRQ_MEM_DMA1" default 13 config IRQ_WATCH int "IRQ_WATCH" default 13 config IRQ_PORTF_INTA int "IRQ_PORTF_INTA" default 13 config IRQ_PORTF_INTB int "IRQ_PORTF_INTB" default 13 config IRQ_SPI0_ERROR int "IRQ_SPI0_ERROR" default 7 config IRQ_SPI1_ERROR int "IRQ_SPI1_ERROR" default 7 config IRQ_RSI_INT0 int "IRQ_RSI_INT0" default 7 config IRQ_RSI_INT1 int "IRQ_RSI_INT1" default 7 config IRQ_PWM_TRIP int "IRQ_PWM_TRIP" default 10 config IRQ_PWM_SYNC int "IRQ_PWM_SYNC" default 10 config IRQ_PTP_STAT int "IRQ_PTP_STAT" default 10 help Enter the priority numbers between 7-13 ONLY. Others are Reserved. This applies to all the above. It is not recommended to assign the highest priority number 7 to UART or any other device. endmenu endmenu endif choice prompt "System type" default BFIN518F_EZBRD help Select your board! config BFIN518F_EZBRD bool "BF518F-EZBRD" help BF518-EZBRD board support. config BFIN518F_TCM bool "Bluetechnix TCM-BF518" help Bluetechnix TCM-BF518 board support. endchoice if (BF561) source "arch/blackfin/mach-bf561/boards/Kconfig" menu "BF561 Specific Configuration" if (!SMP) comment "Core B Support" config BF561_COREB bool "Enable Core B loader" default y endif comment "Interrupt Priority Assignment" menu "Priority" config IRQ_PLL_WAKEUP int "PLL Wakeup Interrupt" default 7 config IRQ_DMA1_ERROR int "DMA1 Error (generic)" default 7 config IRQ_DMA2_ERROR int "DMA2 Error (generic)" default 7 config IRQ_IMDMA_ERROR int "IMDMA Error (generic)" default 7 config IRQ_PPI0_ERROR int "PPI0 Error Interrupt" default 7 config IRQ_PPI1_ERROR int "PPI1 Error Interrupt" default 7 config IRQ_SPORT0_ERROR int "SPORT0 Error Interrupt" default 7 config IRQ_SPORT1_ERROR int "SPORT1 Error Interrupt" default 7 config IRQ_SPI_ERROR int "SPI Error Interrupt" default 7 config IRQ_UART_ERROR int "UART Error Interrupt" default 7 config IRQ_RESERVED_ERROR int "Reserved Interrupt" default 7 config IRQ_DMA1_0 int "DMA1 0 Interrupt(PPI1)" default 8 config IRQ_DMA1_1 int "DMA1 1 Interrupt(PPI2)" default 8 config IRQ_DMA1_2 int "DMA1 2 Interrupt" default 8 config IRQ_DMA1_3 int "DMA1 3 Interrupt" default 8 config IRQ_DMA1_4 int "DMA1 4 Interrupt" default 8 config IRQ_DMA1_5 int "DMA1 5 Interrupt" default 8 config IRQ_DMA1_6 int "DMA1 6 Interrupt" default 8 config IRQ_DMA1_7 int "DMA1 7 Interrupt" default 8 config IRQ_DMA1_8 int "DMA1 8 Interrupt" default 8 config IRQ_DMA1_9 int "DMA1 9 Interrupt" default 8 config IRQ_DMA1_10 int "DMA1 10 Interrupt" default 8 config IRQ_DMA1_11 int "DMA1 11 Interrupt" default 8 config IRQ_DMA2_0 int "DMA2 0 (SPORT0 RX)" default 9 config IRQ_DMA2_1 int "DMA2 1 (SPORT0 TX)" default 9 config IRQ_DMA2_2 int "DMA2 2 (SPORT1 RX)" default 9 config IRQ_DMA2_3 int "DMA2 3 (SPORT2 TX)" default 9 config IRQ_DMA2_4 int "DMA2 4 (SPI)" default 9 config IRQ_DMA2_5 int "DMA2 5 (UART RX)" default 9 config IRQ_DMA2_6 int "DMA2 6 (UART TX)" default 9 config IRQ_DMA2_7 int "DMA2 7 Interrupt" default 9 config IRQ_DMA2_8 int "DMA2 8 Interrupt" default 9 config IRQ_DMA2_9 int "DMA2 9 Interrupt" default 9 config IRQ_DMA2_10 int "DMA2 10 Interrupt" default 9 config IRQ_DMA2_11 int "DMA2 11 Interrupt" default 9 config IRQ_TIMER0 int "TIMER 0 Interrupt" default 7 if TICKSOURCE_GPTMR0 default 8 config IRQ_TIMER1 int "TIMER 1 Interrupt" default 10 config IRQ_TIMER2 int "TIMER 2 Interrupt" default 10 config IRQ_TIMER3 int "TIMER 3 Interrupt" default 10 config IRQ_TIMER4 int "TIMER 4 Interrupt" default 10 config IRQ_TIMER5 int "TIMER 5 Interrupt" default 10 config IRQ_TIMER6 int "TIMER 6 Interrupt" default 10 config IRQ_TIMER7 int "TIMER 7 Interrupt" default 10 config IRQ_TIMER8 int "TIMER 8 Interrupt" default 10 config IRQ_TIMER9 int "TIMER 9 Interrupt" default 10 config IRQ_TIMER10 int "TIMER 10 Interrupt" default 10 config IRQ_TIMER11 int "TIMER 11 Interrupt" default 10 config IRQ_PROG0_INTA int "Programmable Flags0 A (8)" default 11 config IRQ_PROG0_INTB int "Programmable Flags0 B (8)" default 11 config IRQ_PROG1_INTA int "Programmable Flags1 A (8)" default 11 config IRQ_PROG1_INTB int "Programmable Flags1 B (8)" default 11 config IRQ_PROG2_INTA int "Programmable Flags2 A (8)" default 11 config IRQ_PROG2_INTB int "Programmable Flags2 B (8)" default 11 config IRQ_DMA1_WRRD0 int "MDMA1 0 write/read INT" default 8 config IRQ_DMA1_WRRD1 int "MDMA1 1 write/read INT" default 8 config IRQ_DMA2_WRRD0 int "MDMA2 0 write/read INT" default 9 config IRQ_DMA2_WRRD1 int "MDMA2 1 write/read INT" default 9 config IRQ_IMDMA_WRRD0 int "IMDMA 0 write/read INT" default 12 config IRQ_IMDMA_WRRD1 int "IMDMA 1 write/read INT" default 12 config IRQ_WDTIMER int "Watch Dog Timer" default 13 help Enter the priority numbers between 7-13 ONLY. Others are Reserved. This applies to all the above. It is not recommended to assign the highest priority number 7 to UART or any other device. endmenu endmenu endif choice prompt "System type" default BFIN561_EZKIT help Select your board! config BFIN561_EZKIT bool "BF561-EZKIT" help BF561-EZKIT-LITE board support. config BFIN561_TEPLA bool "BF561-TEPLA" help BF561-TEPLA board support. config BFIN561_BLUETECHNIX_CM bool "Bluetechnix CM-BF561" help CM-BF561 support for EVAL- and DEV-Board. config BFIN561_ACVILON bool "BF561-ACVILON" help BF561-ACVILON System On Module support (SO-DIMM 144). For more information about Acvilon BF561 SoM please go to http://www.niistt.ru/ endchoice config FRV bool default y select HAVE_IDE select HAVE_ARCH_TRACEHOOK select HAVE_IRQ_WORK select HAVE_PERF_EVENTS select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_SHOW config ZONE_DMA bool default y config RWSEM_GENERIC_SPINLOCK bool default y config RWSEM_XCHGADD_ALGORITHM bool config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_FIND_BIT_LE bool default y config GENERIC_HWEIGHT bool default y config GENERIC_CALIBRATE_DELAY bool default n config TIME_LOW_RES bool default y config QUICKLIST bool default y config ARCH_HAS_ILOG2_U32 bool default y config ARCH_HAS_ILOG2_U64 bool default y config HZ int default 1000 source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Fujitsu FR-V system setup" config MMU bool "MMU support" help This options switches on and off support for the FR-V MMU (effectively switching between vmlinux and uClinux). Not all FR-V CPUs support this. Currently only the FR451 has a sufficiently featured MMU. config FRV_OUTOFLINE_ATOMIC_OPS bool "Out-of-line the FRV atomic operations" default n help Setting this option causes the FR-V atomic operations to be mostly implemented out-of-line. See Documentation/frv/atomic-ops.txt for more information. config HIGHMEM bool "High memory support" depends on MMU default y help If you wish to use more than 256MB of memory with your MMU based system, you will need to select this option. The kernel can only see the memory between 0xC0000000 and 0xD0000000 directly... everything else must be kmapped. The arch is, however, capable of supporting up to 3GB of SDRAM. config HIGHPTE bool "Allocate page tables in highmem" depends on HIGHMEM default y help The VM uses one page of memory for each page table. For systems with a lot of RAM, this can be wasteful of precious low memory. Setting this option will put user-space page tables in high memory. source "mm/Kconfig" choice prompt "uClinux kernel load address" depends on !MMU default UCPAGE_OFFSET_C0000000 help This option sets the base address for the uClinux kernel. The kernel will rearrange the SDRAM layout to start at this address, and move itself to start there. It must be greater than 0, and it must be sufficiently less than 0xE0000000 that the SDRAM does not intersect the I/O region. The base address must also be aligned such that the SDRAM controller can decode it. For instance, a 512MB SDRAM bank must be 512MB aligned. config UCPAGE_OFFSET_20000000 bool "0x20000000" config UCPAGE_OFFSET_40000000 bool "0x40000000" config UCPAGE_OFFSET_60000000 bool "0x60000000" config UCPAGE_OFFSET_80000000 bool "0x80000000" config UCPAGE_OFFSET_A0000000 bool "0xA0000000" config UCPAGE_OFFSET_C0000000 bool "0xC0000000 (Recommended)" endchoice config PAGE_OFFSET hex default 0x20000000 if UCPAGE_OFFSET_20000000 default 0x40000000 if UCPAGE_OFFSET_40000000 default 0x60000000 if UCPAGE_OFFSET_60000000 default 0x80000000 if UCPAGE_OFFSET_80000000 default 0xA0000000 if UCPAGE_OFFSET_A0000000 default 0xC0000000 config PROTECT_KERNEL bool "Protect core kernel against userspace" depends on !MMU default y help Selecting this option causes the uClinux kernel to change the permittivity of DAMPR register covering the core kernel image to prevent userspace accessing the underlying memory directly. choice prompt "CPU Caching mode" default FRV_DEFL_CACHE_WBACK help This option determines the default caching mode for the kernel. Write-Back caching mode involves the all reads and writes causing the affected cacheline to be read into the cache first before being operated upon. Memory is not then updated by a write until the cache is filled and a cacheline needs to be displaced from the cache to make room. Only at that point is it written back. Write-Behind caching is similar to Write-Back caching, except that a write won't fetch a cacheline into the cache if there isn't already one there; it will write directly to memory instead. Write-Through caching only fetches cachelines from memory on a read. Writes always get written directly to memory. If the affected cacheline is also in cache, it will be updated too. The final option is to turn of caching entirely. Note that not all CPUs support Write-Behind caching. If the CPU on which the kernel is running doesn't, it'll fall back to Write-Back caching. config FRV_DEFL_CACHE_WBACK bool "Write-Back" config FRV_DEFL_CACHE_WBEHIND bool "Write-Behind" config FRV_DEFL_CACHE_WTHRU bool "Write-Through" config FRV_DEFL_CACHE_DISABLED bool "Disabled" endchoice menu "CPU core support" config CPU_FR401 bool "Include FR401 core support" depends on !MMU default y help This enables support for the FR401, FR401A and FR403 CPUs config CPU_FR405 bool "Include FR405 core support" depends on !MMU default y help This enables support for the FR405 CPU config CPU_FR451 bool "Include FR451 core support" default y help This enables support for the FR451 CPU config CPU_FR451_COMPILE bool "Specifically compile for FR451 core" depends on CPU_FR451 && !CPU_FR401 && !CPU_FR405 && !CPU_FR551 default y help This causes appropriate flags to be passed to the compiler to optimise for the FR451 CPU config CPU_FR551 bool "Include FR551 core support" depends on !MMU default y help This enables support for the FR555 CPU config CPU_FR551_COMPILE bool "Specifically compile for FR551 core" depends on CPU_FR551 && !CPU_FR401 && !CPU_FR405 && !CPU_FR451 default y help This causes appropriate flags to be passed to the compiler to optimise for the FR555 CPU config FRV_L1_CACHE_SHIFT int default "5" if CPU_FR401 || CPU_FR405 || CPU_FR451 default "6" if CPU_FR551 endmenu choice prompt "System support" default MB93091_VDK config MB93091_VDK bool "MB93091 CPU board with or without motherboard" config MB93093_PDK bool "MB93093 PDK unit" endchoice if MB93091_VDK choice prompt "Motherboard support" default MB93090_MB00 config MB93090_MB00 bool "Use the MB93090-MB00 motherboard" help Select this option if the MB93091 CPU board is going to be used with a MB93090-MB00 VDK motherboard config MB93091_NO_MB bool "Use standalone" help Select this option if the MB93091 CPU board is going to be used without a motherboard endchoice endif config FUJITSU_MB93493 bool "MB93493 Multimedia chip" help Select this option if the MB93493 multimedia chip is going to be used. choice prompt "GP-Relative data support" default GPREL_DATA_8 help This option controls what data, if any, should be placed in the GP relative data sections. Using this means that the compiler can generate accesses to the data using GR16-relative addressing which is faster than absolute instructions and saves space (2 instructions per access). However, the GPREL region is limited in size because the immediate value used in the load and store instructions is limited to a 12-bit signed number. So if the linker starts complaining that accesses to GPREL data are out of range, try changing this option from the default. Note that modules will always be compiled with this feature disabled as the module data will not be in range of the GP base address. config GPREL_DATA_8 bool "Put data objects of up to 8 bytes into GP-REL" config GPREL_DATA_4 bool "Put data objects of up to 4 bytes into GP-REL" config GPREL_DATA_NONE bool "Don't use GP-REL" endchoice config FRV_ONCPU_SERIAL bool "Use on-CPU serial ports" select SERIAL_8250 default y config PCI bool "Use PCI" depends on MB93090_MB00 default y help Some FR-V systems (such as the MB93090-MB00 VDK) have PCI onboard. If you have one of these boards and you wish to use the PCI facilities, say Y here. config RESERVE_DMA_COHERENT bool "Reserve DMA coherent memory" depends on PCI && !MMU default y help Many PCI drivers require access to uncached memory for DMA device communications (such as is done with some Ethernet buffer rings). If a fully featured MMU is available, this can be done through page table settings, but if not, a region has to be set aside and marked with a special DAMPR register. Setting this option causes uClinux to set aside a portion of the available memory for use in this manner. The memory will then be unavailable for normal kernel use. source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" #config MATH_EMULATION # bool "Math emulation support (EXPERIMENTAL)" # depends on EXPERIMENTAL # help # At some point in the future, this will cause floating-point math # instructions to be emulated by the kernel on machines that lack a # floating-point math coprocessor. Thrill-seekers and chronically # sleep-deprived psychotic hacker types can say Y now, everyone else # should probably wait a while. menu "Power management options" config ARCH_SUSPEND_POSSIBLE def_bool y source kernel/power/Kconfig endmenu endmenu menu "Executable formats" source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/frv/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" menu "NetX Implementations" depends on ARCH_NETX config MACH_NXDKN bool "Enable Hilscher nxdkn Eval Board support" depends on ARCH_NETX help Board support for the Hilscher NetX Eval Board config MACH_NXDB500 bool "Enable Hilscher nxdb500 Eval Board support" depends on ARCH_NETX select ARM_AMBA help Board support for the Hilscher nxdb500 Eval Board config MACH_NXEB500HMI bool "Enable Hilscher nxeb500hmi Eval Board support" depends on ARCH_NETX select ARM_AMBA help Board support for the Hilscher nxeb500hmi Eval Board endmenu if ARCH_TEGRA comment "NVIDIA Tegra options" choice prompt "Select Tegra processor family for target system" config ARCH_TEGRA_2x_SOC bool "Tegra 2 family" select CPU_V7 select ARM_GIC select ARCH_REQUIRE_GPIOLIB select USB_ARCH_HAS_EHCI if USB_SUPPORT select USB_ULPI if USB_SUPPORT select USB_ULPI_VIEWPORT if USB_SUPPORT help Support for NVIDIA Tegra AP20 and T20 processors, based on the ARM CortexA9MP CPU and the ARM PL310 L2 cache controller endchoice config TEGRA_PCI bool "PCI Express support" select PCI comment "Tegra board type" config MACH_HARMONY bool "Harmony board" help Support for nVidia Harmony development platform config MACH_KAEN bool "Kaen board" select MACH_SEABOARD help Support for the Kaen version of Seaboard config MACH_PAZ00 bool "Paz00 board" help Support for the Toshiba AC100/Dynabook AZ netbook config MACH_SEABOARD bool "Seaboard board" help Support for nVidia Seaboard development platform. It will also be included for some of the derivative boards that have large similarities with the seaboard design. config MACH_TRIMSLICE bool "TrimSlice board" select TEGRA_PCI help Support for CompuLab TrimSlice platform config MACH_WARIO bool "Wario board" select MACH_SEABOARD help Support for the Wario version of Seaboard choice prompt "Low-level debug console UART" default TEGRA_DEBUG_UART_NONE config TEGRA_DEBUG_UART_NONE bool "None" config TEGRA_DEBUG_UARTA bool "UART-A" config TEGRA_DEBUG_UARTB bool "UART-B" config TEGRA_DEBUG_UARTC bool "UART-C" config TEGRA_DEBUG_UARTD bool "UART-D" config TEGRA_DEBUG_UARTE bool "UART-E" endchoice config TEGRA_SYSTEM_DMA bool "Enable system DMA driver for NVIDIA Tegra SoCs" default y help Adds system DMA functionality for NVIDIA Tegra SoCs, used by several Tegra device drivers config TEGRA_EMC_SCALING_ENABLE bool "Enable scaling the memory frequency" endif if ARCH_SHMOBILE comment "SH-Mobile System Type" config ARCH_SH7367 bool "SH-Mobile G3 (SH7367)" select CPU_V6 select SH_CLK_CPG select ARCH_WANT_OPTIONAL_GPIOLIB config ARCH_SH7377 bool "SH-Mobile G4 (SH7377)" select CPU_V7 select SH_CLK_CPG select ARCH_WANT_OPTIONAL_GPIOLIB config ARCH_SH7372 bool "SH-Mobile AP4 (SH7372)" select CPU_V7 select SH_CLK_CPG select ARCH_WANT_OPTIONAL_GPIOLIB config ARCH_SH73A0 bool "SH-Mobile AG5 (R8A73A00)" select CPU_V7 select SH_CLK_CPG select ARCH_WANT_OPTIONAL_GPIOLIB select ARM_GIC comment "SH-Mobile Board Type" config MACH_G3EVM bool "G3EVM board" depends on ARCH_SH7367 select ARCH_REQUIRE_GPIOLIB config MACH_G4EVM bool "G4EVM board" depends on ARCH_SH7377 select ARCH_REQUIRE_GPIOLIB config MACH_AP4EVB bool "AP4EVB board" depends on ARCH_SH7372 select ARCH_REQUIRE_GPIOLIB select SH_LCD_MIPI_DSI choice prompt "AP4EVB LCD panel selection" default AP4EVB_QHD depends on MACH_AP4EVB config AP4EVB_QHD bool "MIPI-DSI QHD (960x540)" config AP4EVB_WVGA bool "Parallel WVGA (800x480)" endchoice config MACH_AG5EVM bool "AG5EVM board" select ARCH_REQUIRE_GPIOLIB select SH_LCD_MIPI_DSI depends on ARCH_SH73A0 config MACH_MACKEREL bool "mackerel board" depends on ARCH_SH7372 select ARCH_REQUIRE_GPIOLIB comment "SH-Mobile System Configuration" menu "Memory configuration" config MEMORY_START hex "Physical memory start address" default "0x50000000" if MACH_G3EVM default "0x40000000" if MACH_G4EVM || MACH_AP4EVB || MACH_AG5EVM || \ MACH_MACKEREL default "0x00000000" ---help--- Tweak this only when porting to a new machine which does not already have a defconfig. Changing it from the known correct value on any of the known systems will only lead to disaster. config MEMORY_SIZE hex "Physical memory size" default "0x08000000" if MACH_G3EVM default "0x08000000" if MACH_G4EVM default "0x20000000" if MACH_AG5EVM default "0x10000000" if MACH_AP4EVB || MACH_MACKEREL default "0x04000000" help This sets the default memory size assumed by your kernel. It can be overridden as normal by the 'mem=' argument on the kernel command line. endmenu menu "Timer and clock configuration" config SHMOBILE_TIMER_HZ int "Kernel HZ (jiffies per second)" range 32 1024 default "128" help Allows the configuration of the timer frequency. It is customary to have the timer interrupt run at 1000 Hz or 100 Hz, but in the case of low timer frequencies other values may be more suitable. SH-Mobile systems using a 32768 Hz RCLK for clock events may want to select a HZ value such as 128 that can evenly divide RCLK. A HZ value that does not divide evenly may cause timer drift. config SH_TIMER_CMT bool "CMT timer driver" default y help This enables build of the CMT timer driver. config SH_TIMER_TMU bool "TMU timer driver" default y help This enables build of the TMU timer driver. endmenu config SH_CLK_CPG bool source "drivers/sh/Kconfig" endif # arch/arm/mach-s5pv210/Kconfig # # Copyright (c) 2010 Samsung Electronics Co., Ltd. # http://www.samsung.com/ # # Licensed under GPLv2 # Configuration options for the S5PV210/S5PC110 if ARCH_S5PV210 config CPU_S5PV210 bool select S3C_PL330_DMA select S5P_EXT_INT select S5P_HRT select S5PV210_PM if PM help Enable S5PV210 CPU support config S5PV210_SETUP_I2C1 bool help Common setup code for i2c bus 1. config S5PV210_SETUP_I2C2 bool help Common setup code for i2c bus 2. config S5PV210_SETUP_IDE bool help Common setup code for S5PV210 IDE GPIO configurations config S5PV210_SETUP_FB_24BPP bool help Common setup code for S5PV210 with an 24bpp RGB display helper. config S5PV210_SETUP_KEYPAD bool help Common setup code for keypad. config S5PV210_SETUP_SDHCI bool select S5PV210_SETUP_SDHCI_GPIO help Internal helper functions for S5PV210 based SDHCI systems config S5PV210_SETUP_SDHCI_GPIO bool help Common setup code for SDHCI gpio. config S5PV210_SETUP_FIMC bool help Common setup code for the camera interfaces. menu "S5PC110 Machines" config MACH_AQUILA bool "Aquila" select CPU_S5PV210 select S3C_DEV_FB select S5P_DEV_FIMC0 select S5P_DEV_FIMC1 select S5P_DEV_FIMC2 select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 select S5P_DEV_ONENAND select S5PV210_SETUP_FB_24BPP select S5PV210_SETUP_SDHCI help Machine support for the Samsung Aquila target based on S5PC110 SoC config MACH_GONI bool "GONI" select CPU_S5PV210 select S5P_GPIO_INT select S3C_DEV_FB select S5P_DEV_FIMC0 select S5P_DEV_FIMC1 select S5P_DEV_FIMC2 select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 select S3C_DEV_I2C1 select S3C_DEV_I2C2 select S3C_DEV_USB_HSOTG select S5P_DEV_ONENAND select SAMSUNG_DEV_KEYPAD select S5PV210_SETUP_FB_24BPP select S5PV210_SETUP_I2C1 select S5PV210_SETUP_I2C2 select S5PV210_SETUP_KEYPAD select S5PV210_SETUP_SDHCI help Machine support for Samsung GONI board S5PC110(MCP) is one of package option of S5PV210 config MACH_SMDKC110 bool "SMDKC110" select CPU_S5PV210 select S3C_DEV_I2C1 select S3C_DEV_I2C2 select S3C_DEV_RTC select S3C_DEV_WDT select SAMSUNG_DEV_IDE select S5PV210_SETUP_I2C1 select S5PV210_SETUP_I2C2 select S5PV210_SETUP_IDE help Machine support for Samsung SMDKC110 S5PC110(MCP) is one of package option of S5PV210 endmenu menu "S5PV210 Machines" config MACH_SMDKV210 bool "SMDKV210" select CPU_S5PV210 select S3C_DEV_FB select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC3 select S3C_DEV_I2C1 select S3C_DEV_I2C2 select S3C_DEV_RTC select S3C_DEV_WDT select SAMSUNG_DEV_ADC select SAMSUNG_DEV_IDE select SAMSUNG_DEV_KEYPAD select SAMSUNG_DEV_PWM select SAMSUNG_DEV_TS select S5PV210_SETUP_FB_24BPP select S5PV210_SETUP_I2C1 select S5PV210_SETUP_I2C2 select S5PV210_SETUP_IDE select S5PV210_SETUP_KEYPAD select S5PV210_SETUP_SDHCI help Machine support for Samsung SMDKV210 config MACH_TORBRECK bool "Torbreck" select CPU_S5PV210 select ARCH_SPARSEMEM_ENABLE select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC3 select S3C_DEV_I2C1 select S3C_DEV_I2C2 select S3C_DEV_RTC select S3C_DEV_WDT select S5PV210_SETUP_I2C1 select S5PV210_SETUP_I2C2 select S5PV210_SETUP_SDHCI help Machine support for aESOP Torbreck endmenu config S5PV210_PM bool help Power Management code common to S5PV210 endif config IMX_HAVE_DMA_V1 bool config SOC_IMX1 bool select CPU_ARM920T select IMX_HAVE_DMA_V1 select IMX_HAVE_IOMUX_V1 select MXC_AVIC config SOC_IMX21 bool select CPU_ARM926T select ARCH_MXC_AUDMUX_V1 select IMX_HAVE_DMA_V1 select IMX_HAVE_IOMUX_V1 select MXC_AVIC config SOC_IMX25 bool select CPU_ARM926T select ARCH_MXC_AUDMUX_V2 select ARCH_MXC_IOMUX_V3 select MXC_AVIC config SOC_IMX27 bool select CPU_ARM926T select ARCH_MXC_AUDMUX_V1 select IMX_HAVE_DMA_V1 select IMX_HAVE_IOMUX_V1 select MXC_AVIC if ARCH_MX1 comment "MX1 platforms:" config MACH_MXLADS bool config ARCH_MX1ADS bool "MX1ADS platform" select MACH_MXLADS select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART help Say Y here if you are using Motorola MX1ADS/MXLADS boards config MACH_SCB9328 bool "Synertronixx scb9328" select IMX_HAVE_PLATFORM_IMX_UART help Say Y here if you are using a Synertronixx scb9328 board endif if ARCH_MX2 choice prompt "CPUs:" default MACH_MX21 config MACH_MX21 bool "i.MX21 support" help This enables support for Freescale's MX2 based i.MX21 processor. config MACH_MX27 bool "i.MX27 support" help This enables support for Freescale's MX2 based i.MX27 processor. endchoice endif if MACH_MX21 comment "MX21 platforms:" config MACH_MX21ADS bool "MX21ADS platform" select SOC_IMX21 select IMX_HAVE_PLATFORM_IMX_FB select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_MXC_NAND help Include support for MX21ADS platform. This includes specific configurations for the board and its peripherals. endif if ARCH_MX25 comment "MX25 platforms:" config MACH_MX25_3DS bool "Support MX25PDK (3DS) Platform" select SOC_IMX25 select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMXDI_RTC select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_FB select IMX_HAVE_PLATFORM_IMX_KEYPAD select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX config MACH_EUKREA_CPUIMX25 bool "Support Eukrea CPUIMX25 Platform" select SOC_IMX25 select IMX_HAVE_PLATFORM_FLEXCAN select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMXDI_RTC select IMX_HAVE_PLATFORM_IMX_FB select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select MXC_ULPI if USB_ULPI choice prompt "Baseboard" depends on MACH_EUKREA_CPUIMX25 default MACH_EUKREA_MBIMXSD25_BASEBOARD config MACH_EUKREA_MBIMXSD25_BASEBOARD bool "Eukrea MBIMXSD development board" select IMX_HAVE_PLATFORM_IMX_SSI help This adds board specific devices that can be found on Eukrea's MBIMXSD evaluation board. endchoice endif if MACH_MX27 comment "MX27 platforms:" config MACH_MX27ADS bool "MX27ADS platform" select SOC_IMX27 select IMX_HAVE_PLATFORM_IMX_FB select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_MXC_W1 help Include support for MX27ADS platform. This includes specific configurations for the board and its peripherals. config MACH_PCM038 bool "Phytec phyCORE-i.MX27 CPU module (pcm038)" select SOC_IMX27 select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_MXC_W1 select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for phyCORE-i.MX27 (aka pcm038) platform. This includes specific configurations for the module and its peripherals. choice prompt "Baseboard" depends on MACH_PCM038 default MACH_PCM970_BASEBOARD config MACH_PCM970_BASEBOARD bool "PHYTEC PCM970 development board" select IMX_HAVE_PLATFORM_IMX_FB select IMX_HAVE_PLATFORM_MXC_MMC help This adds board specific devices that can be found on Phytec's PCM970 evaluation board. endchoice config MACH_CPUIMX27 bool "Eukrea CPUIMX27 module" select SOC_IMX27 select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_MXC_W1 select MXC_ULPI if USB_ULPI help Include support for Eukrea CPUIMX27 platform. This includes specific configurations for the module and its peripherals. config MACH_EUKREA_CPUIMX27_USESDHC2 bool "CPUIMX27 integrates SDHC2 module" depends on MACH_CPUIMX27 select IMX_HAVE_PLATFORM_MXC_MMC help This adds support for the internal SDHC2 used on CPUIMX27 for wifi or eMMC. config MACH_EUKREA_CPUIMX27_USEUART4 bool "CPUIMX27 integrates UART4 module" depends on MACH_CPUIMX27 help This adds support for the internal UART4 used on CPUIMX27 for bluetooth. choice prompt "Baseboard" depends on MACH_CPUIMX27 default MACH_EUKREA_MBIMX27_BASEBOARD config MACH_EUKREA_MBIMX27_BASEBOARD bool "Eukrea MBIMX27 development board" select IMX_HAVE_PLATFORM_IMX_FB select IMX_HAVE_PLATFORM_IMX_KEYPAD select IMX_HAVE_PLATFORM_IMX_SSI select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_SPI_IMX help This adds board specific devices that can be found on Eukrea's MBIMX27 evaluation board. endchoice config MACH_MX27_3DS bool "MX27PDK platform" select SOC_IMX27 select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_KEYPAD select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_SPI_IMX select MXC_DEBUG_BOARD select MXC_ULPI if USB_ULPI help Include support for MX27PDK platform. This includes specific configurations for the board and its peripherals. config MACH_IMX27_VISSTRIM_M10 bool "Vista Silicon i.MX27 Visstrim_m10" select SOC_IMX27 select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_SSI select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_MXC_EHCI help Include support for Visstrim_m10 platform and its different variants. This includes specific configurations for the board and its peripherals. config MACH_IMX27LITE bool "LogicPD MX27 LITEKIT platform" select SOC_IMX27 select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_IMX_SSI help Include support for MX27 LITEKIT platform. This includes specific configurations for the board and its peripherals. config MACH_PCA100 bool "Phytec phyCARD-s (pca100)" select SOC_IMX27 select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_FB select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_SSI select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_MXC_W1 select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for phyCARD-s (aka pca100) platform. This includes specific configurations for the module and its peripherals. config MACH_MXT_TD60 bool "Maxtrack i-MXT TD60" select SOC_IMX27 select IMX_HAVE_PLATFORM_IMX_FB select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_MXC_NAND help Include support for i-MXT (aka td60) platform. This includes specific configurations for the module and its peripherals. config MACH_IMX27IPCAM bool "IMX27 IPCAM platform" select SOC_IMX27 select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_UART help Include support for IMX27 IPCAM platform. This includes specific configurations for the board and its peripherals. endif if ARCH_IXP4XX config ARCH_SUPPORTS_BIG_ENDIAN bool default y menu "Intel IXP4xx Implementation Options" comment "IXP4xx Platforms" config MACH_NSLU2 bool prompt "Linksys NSLU2" select PCI help Say 'Y' here if you want your kernel to support Linksys's NSLU2 NAS device. For more information on this platform, see http://www.nslu2-linux.org config MACH_AVILA bool "Avila" select PCI help Say 'Y' here if you want your kernel to support the Gateworks Avila Network Platform. For more information on this platform, see . config MACH_LOFT bool "Loft" depends on MACH_AVILA help Say 'Y' here if you want your kernel to support the Giant Shoulder Inc Loft board (a minor variation on the standard Gateworks Avila Network Platform). config ARCH_ADI_COYOTE bool "Coyote" select PCI help Say 'Y' here if you want your kernel to support the ADI Engineering Coyote Gateway Reference Platform. For more information on this platform, see . config MACH_GATEWAY7001 bool "Gateway 7001" select PCI help Say 'Y' here if you want your kernel to support Gateway's 7001 Access Point. For more information on this platform, see http://openwrt.org config MACH_WG302V2 bool "Netgear WG302 v2 / WAG302 v2" select PCI help Say 'Y' here if you want your kernel to support Netgear's WG302 v2 or WAG302 v2 Access Points. For more information on this platform, see http://openwrt.org config ARCH_IXDP425 bool "IXDP425" help Say 'Y' here if you want your kernel to support Intel's IXDP425 Development Platform (Also known as Richfield). For more information on this platform, see . config MACH_IXDPG425 bool "IXDPG425" help Say 'Y' here if you want your kernel to support Intel's IXDPG425 Development Platform (Also known as Montajade). For more information on this platform, see . config MACH_IXDP465 bool "IXDP465" help Say 'Y' here if you want your kernel to support Intel's IXDP465 Development Platform (Also known as BMP). For more information on this platform, see . config MACH_GORAMO_MLR bool "GORAMO Multi Link Router" help Say 'Y' here if you want your kernel to support GORAMO MultiLink router. config MACH_KIXRP435 bool "KIXRP435" help Say 'Y' here if you want your kernel to support Intel's KIXRP435 Reference Platform. For more information on this platform, see . # # IXCDP1100 is the exact same HW as IXDP425, but with a different machine # number from the bootloader due to marketing monkeys, so we just enable it # by default if IXDP425 is enabled. # config ARCH_IXCDP1100 bool depends on ARCH_IXDP425 default y config ARCH_PRPMC1100 bool "PrPMC1100" help Say 'Y' here if you want your kernel to support the Motorola PrPCM1100 Processor Mezanine Module. For more information on this platform, see . config MACH_NAS100D bool prompt "NAS100D" select PCI help Say 'Y' here if you want your kernel to support Iomega's NAS 100d device. For more information on this platform, see http://www.nslu2-linux.org/wiki/NAS100d/HomePage config MACH_DSMG600 bool prompt "D-Link DSM-G600 RevA" select PCI help Say 'Y' here if you want your kernel to support D-Link's DSM-G600 RevA device. For more information on this platform, see http://www.nslu2-linux.org/wiki/DSMG600/HomePage config ARCH_IXDP4XX bool depends on ARCH_IXDP425 || MACH_IXDP465 || MACH_KIXRP435 default y config MACH_FSG bool prompt "Freecom FSG-3" select PCI help Say 'Y' here if you want your kernel to support Freecom's FSG-3 device. For more information on this platform, see http://www.nslu2-linux.org/wiki/FSG3/HomePage config MACH_ARCOM_VULCAN bool prompt "Arcom/Eurotech Vulcan" select PCI help Say 'Y' here if you want your kernel to support Arcom's Vulcan board. # # Certain registers and IRQs are only enabled if supporting IXP465 CPUs # config CPU_IXP46X bool depends on MACH_IXDP465 default y config CPU_IXP43X bool depends on MACH_KIXRP435 default y config MACH_GTWX5715 bool "Gemtek WX5715 (Linksys WRV54G)" depends on ARCH_IXP4XX select PCI help This board is currently inside the Linksys WRV54G Gateways. IXP425 - 266mhz 32mb SDRAM 8mb Flash miniPCI slot 0 does not have a card connector soldered to the board miniPCI slot 1 has an ISL3880 802.11g card (Prism54) npe0 is connected to a Kendin KS8995M Switch (4 ports) npe1 is the "wan" port "Console" UART is available on J11 as console "High Speed" UART is n/c (as far as I can tell) 20 Pin ARM/Xscale JTAG interface on J2 comment "IXP4xx Options" config IXP4XX_INDIRECT_PCI bool "Use indirect PCI memory access" depends on PCI help IXP4xx provides two methods of accessing PCI memory space: 1) A direct mapped window from 0x48000000 to 0x4BFFFFFF (64MB). To access PCI via this space, we simply ioremap() the BAR into the kernel and we can use the standard read[bwl]/write[bwl] macros. This is the preferred method due to speed but it limits the system to just 64MB of PCI memory. This can be problematic if using video cards and other memory-heavy devices. 2) If > 64MB of memory space is required, the IXP4xx can be configured to use indirect registers to access the whole PCI memory space. This currently allows for up to 1 GB (0x10000000 to 0x4FFFFFFF) of memory on the bus. The disadvantage of this is that every PCI access requires three local register accesses plus a spinlock, but in some cases the performance hit is acceptable. In addition, you cannot mmap() PCI devices in this case due to the indirect nature of the PCI window. By default, the direct method is used. Choose this option if you need to use the indirect method instead. If you don't know what you need, leave this option unselected. config IXP4XX_QMGR tristate "IXP4xx Queue Manager support" help This driver supports IXP4xx built-in hardware queue manager and is automatically selected by Ethernet and HSS drivers. config IXP4XX_NPE tristate "IXP4xx Network Processor Engine support" select HOTPLUG select FW_LOADER help This driver supports IXP4xx built-in network coprocessors and is automatically selected by Ethernet and HSS drivers. endmenu endif if ARCH_IXP2000 config ARCH_SUPPORTS_BIG_ENDIAN bool default y menu "Intel IXP2400/2800 Implementation Options" comment "IXP2400/2800 Platforms" config ARCH_ENP2611 bool "Support Radisys ENP-2611" help Say 'Y' here if you want your kernel to support the Radisys ENP2611 PCI network processing card. For more information on this card, see . config ARCH_IXDP2400 bool "Support Intel IXDP2400" help Say 'Y' here if you want your kernel to support the Intel IXDP2400 reference platform. For more information on this platform, see . config ARCH_IXDP2800 bool "Support Intel IXDP2800" help Say 'Y' here if you want your kernel to support the Intel IXDP2800 reference platform. For more information on this platform, see . config ARCH_IXDP2X00 bool depends on ARCH_IXDP2400 || ARCH_IXDP2800 default y config ARCH_IXDP2401 bool "Support Intel IXDP2401" help Say 'Y' here if you want your kernel to support the Intel IXDP2401 reference platform. For more information on this platform, see . config ARCH_IXDP2801 bool "Support Intel IXDP2801 and IXDP28x5" help Say 'Y' here if you want your kernel to support the Intel IXDP2801/2805/2855 reference platforms. For more information on this platform, see . config MACH_IXDP28X5 bool depends on ARCH_IXDP2801 default y config ARCH_IXDP2X01 bool depends on ARCH_IXDP2401 || ARCH_IXDP2801 default y config IXP2000_SUPPORT_BROKEN_PCI_IO bool "Support broken PCI I/O on older IXP2000s" default y help Say 'N' here if you only intend to run your kernel on an IXP2000 B0 or later model and do not need the PCI I/O byteswap workaround. Say 'Y' otherwise. endmenu endif # Copyright 2007 Simtec Electronics # # Licensed under GPLv2 config PLAT_S3C24XX bool depends on ARCH_S3C2410 || ARCH_S3C24A0 default y select NO_IOPORT select ARCH_REQUIRE_GPIOLIB select S3C_DEV_NAND select S3C_GPIO_CFG_S3C24XX help Base platform code for any Samsung S3C24XX device if PLAT_S3C24XX # low-level serial option nodes config CPU_LLSERIAL_S3C2410_ONLY bool default y if CPU_LLSERIAL_S3C2410 && !CPU_LLSERIAL_S3C2440 config CPU_LLSERIAL_S3C2440_ONLY bool default y if CPU_LLSERIAL_S3C2440 && !CPU_LLSERIAL_S3C2410 config CPU_LLSERIAL_S3C2410 bool help Selected if there is an S3C2410 (or register compatible) serial low-level implementation needed config CPU_LLSERIAL_S3C2440 bool help Selected if there is an S3C2440 (or register compatible) serial low-level implementation needed # code that is shared between a number of the s3c24xx implementations config S3C2410_CLOCK bool help Clock code for the S3C2410, and similar processors which is currently includes the S3C2410, S3C2440, S3C2442. config S3C2443_CLOCK bool help Clock code for the S3C2443 and similar processors, which includes the S3C2416 and S3C2450. config S3C24XX_DCLK bool help Clock code for supporting DCLK/CLKOUT on S3C24XX architectures # gpio configurations config S3C24XX_GPIO_EXTRA int default 128 if S3C24XX_GPIO_EXTRA128 default 64 if S3C24XX_GPIO_EXTRA64 default 16 if ARCH_H1940 default 0 config S3C24XX_GPIO_EXTRA64 bool help Add an extra 64 gpio numbers to the available GPIO pool. This is available for boards that need extra gpios for external devices. config S3C24XX_GPIO_EXTRA128 bool help Add an extra 128 gpio numbers to the available GPIO pool. This is available for boards that need extra gpios for external devices. config PM_SIMTEC bool help Common power management code for systems that are compatible with the Simtec style of power management config S3C2410_DMA bool "S3C2410 DMA support" depends on ARCH_S3C2410 select S3C_DMA help S3C2410 DMA support. This is needed for drivers like sound which use the S3C2410's DMA system to move data to and from the peripheral blocks. config S3C2410_DMA_DEBUG bool "S3C2410 DMA support debug" depends on ARCH_S3C2410 && S3C2410_DMA help Enable debugging output for the DMA code. This option sends info to the kernel log, at priority KERN_DEBUG. # SPI default pin configuration code config S3C24XX_SPI_BUS0_GPE11_GPE12_GPE13 bool help SPI GPIO configuration code for BUS0 when connected to GPE11, GPE12 and GPE13. config S3C24XX_SPI_BUS1_GPG5_GPG6_GPG7 bool help SPI GPIO configuration code for BUS 1 when connected to GPG5, GPG6 and GPG7. config S3C24XX_SPI_BUS1_GPD8_GPD9_GPD10 bool help SPI GPIO configuration code for BUS 1 when connected to GPD8, GPD9 and GPD10. # common code for s3c24xx based machines, such as the SMDKs. # cpu frequency items common between s3c2410 and s3c2440/s3c2442 config S3C2410_IOTIMING bool depends on CPU_FREQ_S3C24XX help Internal node to select io timing code that is common to the s3c2410 and s3c2440/s3c2442 cpu frequency support. config S3C2410_CPUFREQ_UTILS bool depends on CPU_FREQ_S3C24XX help Internal node to select timing code that is common to the s3c2410 and s3c2440/s3c244 cpu frequency support. # cpu frequency support common to s3c2412, s3c2413 and s3c2442 config S3C2412_IOTIMING bool depends on CPU_FREQ_S3C24XX && (CPU_S3C2412 || CPU_S3C2443) help Intel node to select io timing code that is common to the s3c2412 and the s3c2443. config MACH_SMDK bool help Common machine code for SMDK2410 and SMDK2440 config S3C24XX_SIMTEC_AUDIO bool depends on (ARCH_BAST || MACH_VR1000 || MACH_OSIRIS || MACH_ANUBIS) default y help Add audio devices for common Simtec S3C24XX boards config S3C2410_SETUP_TS bool help Compile in platform device definition for Samsung TouchScreen. endif if ARCH_MXC source "arch/arm/plat-mxc/devices/Kconfig" menu "Freescale MXC Implementations" choice prompt "Freescale CPU family:" default ARCH_MX3 config ARCH_MX1 bool "MX1-based" select SOC_IMX1 help This enables support for systems based on the Freescale i.MX1 family config ARCH_MX2 bool "MX2-based" help This enables support for systems based on the Freescale i.MX2 family config ARCH_MX25 bool "MX25-based" help This enables support for systems based on the Freescale i.MX25 family config ARCH_MX3 bool "MX3-based" select CPU_V6 help This enables support for systems based on the Freescale i.MX3 family config ARCH_MXC91231 bool "MXC91231-based" select CPU_V6 select MXC_AVIC help This enables support for systems based on the Freescale MXC91231 family config ARCH_MX5 bool "MX5-based" select CPU_V7 select ARM_L1_CACHE_SHIFT_6 help This enables support for systems based on the Freescale i.MX51 family endchoice source "arch/arm/mach-imx/Kconfig" source "arch/arm/mach-mx3/Kconfig" source "arch/arm/mach-mxc91231/Kconfig" source "arch/arm/mach-mx5/Kconfig" endmenu config MXC_IRQ_PRIOR bool "Use IRQ priority" help Select this if you want to use prioritized IRQ handling. This feature prevents higher priority ISR to be interrupted by lower priority IRQ even IRQF_DISABLED flag is not set. This may be useful in embedded applications, where are strong requirements for timing. Say N here, unless you have a specialized requirement. config MXC_TZIC bool config MXC_AVIC bool config MXC_PWM tristate "Enable PWM driver" select HAVE_PWM help Enable support for the i.MX PWM controller(s). config MXC_DEBUG_BOARD bool "Enable MXC debug board(for 3-stack)" help The debug board is an integral part of the MXC 3-stack(PDK) platforms, it can be attached or removed from the peripheral board. On debug board, several debug devices(ethernet, UART, buttons, LEDs and JTAG) are implemented. Between the MCU and these devices, a CPLD is added as a bridge which performs data/address de-multiplexing and decode, signal level shift, interrupt control and various board functions. config HAVE_EPIT bool config MXC_USE_EPIT bool "Use EPIT instead of GPT" depends on HAVE_EPIT help Use EPIT as the system timer on systems that have it. Normally you don't have a reason to do so as the EPIT has the same features and uses the same clocks as the GPT. Anyway, on some systems the GPT may be in use for other purposes. config MXC_ULPI bool config ARCH_HAS_RNGA bool config IMX_HAVE_IOMUX_V1 bool config ARCH_MXC_IOMUX_V3 bool config ARCH_MXC_AUDMUX_V1 bool config ARCH_MXC_AUDMUX_V2 bool config IRAM_ALLOC bool select GENERIC_ALLOCATOR endif config IMX_HAVE_PLATFORM_FEC bool default y if ARCH_MX25 || SOC_IMX27 || SOC_IMX35 || SOC_IMX51 || SOC_IMX53 config IMX_HAVE_PLATFORM_FLEXCAN select HAVE_CAN_FLEXCAN if CAN bool config IMX_HAVE_PLATFORM_FSL_USB2_UDC bool config IMX_HAVE_PLATFORM_GPIO_KEYS bool default y if SOC_IMX51 config IMX_HAVE_PLATFORM_IMX21_HCD bool config IMX_HAVE_PLATFORM_IMX2_WDT bool config IMX_HAVE_PLATFORM_IMXDI_RTC bool config IMX_HAVE_PLATFORM_IMX_FB bool select HAVE_FB_IMX config IMX_HAVE_PLATFORM_IMX_I2C bool config IMX_HAVE_PLATFORM_IMX_KEYPAD bool config IMX_HAVE_PLATFORM_IMX_SSI bool config IMX_HAVE_PLATFORM_IMX_UART bool config IMX_HAVE_PLATFORM_IMX_UDC bool config IMX_HAVE_PLATFORM_MX1_CAMERA bool config IMX_HAVE_PLATFORM_MX2_CAMERA bool config IMX_HAVE_PLATFORM_MXC_EHCI bool config IMX_HAVE_PLATFORM_MXC_MMC bool config IMX_HAVE_PLATFORM_MXC_NAND bool config IMX_HAVE_PLATFORM_MXC_PWM bool config IMX_HAVE_PLATFORM_MXC_RNGA bool select ARCH_HAS_RNGA config IMX_HAVE_PLATFORM_MXC_W1 bool config IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX bool config IMX_HAVE_PLATFORM_SPI_IMX bool if ARCH_MMP menu "Marvell PXA168/910/MMP2 Implmentations" config MACH_ASPENITE bool "Marvell's PXA168 Aspenite Development Board" select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based Aspenite Development Board. config MACH_ZYLONITE2 bool "Marvell's PXA168 Zylonite2 Development Board" select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based Zylonite2 Development Board. config MACH_AVENGERS_LITE bool "Marvell's PXA168 Avengers Lite Development Board" select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based Avengers Lite Development Board. config MACH_TAVOREVB bool "Marvell's PXA910 TavorEVB Development Board" select CPU_PXA910 help Say 'Y' here if you want to support the Marvell PXA910-based TavorEVB Development Board. config MACH_TTC_DKB bool "Marvell's PXA910 TavorEVB Development Board" select CPU_PXA910 help Say 'Y' here if you want to support the Marvell PXA910-based TTC_DKB Development Board. config MACH_BROWNSTONE bool "Marvell's Brownstone Development Platform" depends on !CPU_MOHAWK select CPU_MMP2 help Say 'Y' here if you want to support the Marvell MMP2-based Brown Development Platform. MMP2-based board can't be co-existed with PXA168-based & PXA910-based development board. Since MMP2 is compatible to ARMv7 architecture. config MACH_FLINT bool "Marvell's Flint Development Platform" depends on !CPU_MOHAWK select CPU_MMP2 help Say 'Y' here if you want to support the Marvell MMP2-based Flint Development Platform. MMP2-based board can't be co-existed with PXA168-based & PXA910-based development board. Since MMP2 is compatible to ARMv7 architecture. config MACH_MARVELL_JASPER bool "Marvell's Jasper Development Platform" depends on !CPU_MOHAWK select CPU_MMP2 help Say 'Y' here if you want to support the Marvell MMP2-base Jasper Development Platform. MMP2-based board can't be co-existed with PXA168-based & PXA910-based development board. Since MMP2 is compatible to ARMv7 architecture. config MACH_TETON_BGA bool "Marvell's PXA168 Teton BGA Development Board" select CPU_PXA168 help Say 'Y' here if you want to support the Marvell PXA168-based Teton BGA Development Board. endmenu config CPU_PXA168 bool select CPU_MOHAWK help Select code specific to PXA168 config CPU_PXA910 bool select CPU_MOHAWK help Select code specific to PXA910 config CPU_MMP2 bool select CPU_PJ4 help Select code specific to MMP2. MMP2 is ARMv7 compatible. endif # Copyright 2009 Samsung Electronics Co. # Byungho Min # # Licensed under GPLv2 # Configuration options for the S5PC100 CPU if ARCH_S5PC100 config CPU_S5PC100 bool select S5P_EXT_INT select S3C_PL330_DMA help Enable S5PC100 CPU support config S5PC100_SETUP_FB_24BPP bool help Common setup code for S5PC1XX with an 24bpp RGB display helper. config S5PC100_SETUP_I2C1 bool help Common setup code for i2c bus 1. config S5PC100_SETUP_IDE bool help Common setup code for S5PC100 IDE GPIO configurations config S5PC100_SETUP_KEYPAD bool help Common setup code for KEYPAD GPIO configurations. config S5PC100_SETUP_SDHCI bool select S5PC100_SETUP_SDHCI_GPIO help Internal helper functions for S5PC100 based SDHCI systems config S5PC100_SETUP_SDHCI_GPIO bool help Common setup code for SDHCI gpio. config MACH_SMDKC100 bool "SMDKC100" select CPU_S5PC100 select S3C_DEV_FB select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 select S3C_DEV_I2C1 select S3C_DEV_RTC select S3C_DEV_WDT select SAMSUNG_DEV_ADC select SAMSUNG_DEV_IDE select SAMSUNG_DEV_KEYPAD select SAMSUNG_DEV_PWM select SAMSUNG_DEV_TS select S5PC100_SETUP_FB_24BPP select S5PC100_SETUP_I2C1 select S5PC100_SETUP_IDE select S5PC100_SETUP_KEYPAD select S5PC100_SETUP_SDHCI select S5P_DEV_FIMC0 select S5P_DEV_FIMC1 select S5P_DEV_FIMC2 help Machine support for the Samsung SMDKC100 endif # arch/arm/plat-s5p/Kconfig # # Copyright (c) 2009 Samsung Electronics Co., Ltd. # http://www.samsung.com/ # # Licensed under GPLv2 config PLAT_S5P bool depends on (ARCH_S5P64X0 || ARCH_S5P6442 || ARCH_S5PC100 || ARCH_S5PV210 || ARCH_EXYNOS4) default y select ARM_VIC if !ARCH_EXYNOS4 select ARM_GIC if ARCH_EXYNOS4 select NO_IOPORT select ARCH_REQUIRE_GPIOLIB select S3C_GPIO_TRACK select S5P_GPIO_DRVSTR select SAMSUNG_GPIOLIB_4BIT select S3C_GPIO_CFG_S3C64XX select S3C_GPIO_PULL_UPDOWN select S3C_GPIO_CFG_S3C24XX select PLAT_SAMSUNG select SAMSUNG_CLKSRC select SAMSUNG_IRQ_VIC_TIMER select SAMSUNG_IRQ_UART help Base platform code for Samsung's S5P series SoC. config S5P_EXT_INT bool help Use the external interrupts (other than GPIO interrupts.) Note: Do not choose this for S5P6440 and S5P6450. config S5P_GPIO_INT bool help Common code for the GPIO interrupts (other than external interrupts.) config S5P_HRT bool help Use the High Resolution timer support comment "System MMU" config S5P_SYSTEM_MMU bool "S5P SYSTEM MMU" depends on ARCH_EXYNOS4 help Say Y here if you want to enable System MMU config S5P_DEV_FIMC0 bool help Compile in platform device definitions for FIMC controller 0 config S5P_DEV_FIMC1 bool help Compile in platform device definitions for FIMC controller 1 config S5P_DEV_FIMC2 bool help Compile in platform device definitions for FIMC controller 2 config S5P_DEV_FIMC3 bool help Compile in platform device definitions for FIMC controller 3 config S5P_DEV_ONENAND bool help Compile in platform device definition for OneNAND controller config S5P_DEV_CSIS0 bool help Compile in platform device definitions for MIPI-CSIS channel 0 config S5P_DEV_CSIS1 bool help Compile in platform device definitions for MIPI-CSIS channel 1 config S5P_SETUP_MIPIPHY bool help Compile in common setup code for MIPI-CSIS and MIPI-DSIM devices # arch/arm/mach-s5p6442/Kconfig # # Copyright (c) 2010 Samsung Electronics Co., Ltd. # http://www.samsung.com/ # # Licensed under GPLv2 # Configuration options for the S5P6442 if ARCH_S5P6442 config CPU_S5P6442 bool select S3C_PL330_DMA help Enable S5P6442 CPU support config MACH_SMDK6442 bool "SMDK6442" select CPU_S5P6442 select S3C_DEV_WDT help Machine support for Samsung SMDK6442 endif config ARM bool default y select HAVE_AOUT select HAVE_DMA_API_DEBUG select HAVE_IDE select HAVE_MEMBLOCK select RTC_LIB select SYS_SUPPORTS_APM_EMULATION select GENERIC_ATOMIC64 if (CPU_V6 || !CPU_32v6K || !AEABI) select HAVE_OPROFILE if (HAVE_PERF_EVENTS) select HAVE_ARCH_KGDB select HAVE_KPROBES if (!XIP_KERNEL && !THUMB2_KERNEL) select HAVE_KRETPROBES if (HAVE_KPROBES) select HAVE_FUNCTION_TRACER if (!XIP_KERNEL) select HAVE_FTRACE_MCOUNT_RECORD if (!XIP_KERNEL) select HAVE_DYNAMIC_FTRACE if (!XIP_KERNEL) select HAVE_FUNCTION_GRAPH_TRACER if (!THUMB2_KERNEL) select HAVE_GENERIC_DMA_COHERENT select HAVE_KERNEL_GZIP select HAVE_KERNEL_LZO select HAVE_KERNEL_LZMA select HAVE_IRQ_WORK select HAVE_PERF_EVENTS select PERF_USE_VMALLOC select HAVE_REGS_AND_STACK_ACCESS_API select HAVE_HW_BREAKPOINT if (PERF_EVENTS && (CPU_V6 || CPU_V6K || CPU_V7)) select HAVE_C_RECORDMCOUNT select HAVE_GENERIC_HARDIRQS select HAVE_SPARSE_IRQ select GENERIC_IRQ_SHOW help The ARM series is a line of low-power-consumption RISC chip designs licensed by ARM Ltd and targeted at embedded applications and handhelds such as the Compaq IPAQ. ARM-based PCs are no longer manufactured, but legacy ARM-based PC hardware remains popular in Europe. There is an ARM Linux project with a web page at . config HAVE_PWM bool config MIGHT_HAVE_PCI bool config SYS_SUPPORTS_APM_EMULATION bool config HAVE_SCHED_CLOCK bool config GENERIC_GPIO bool config ARCH_USES_GETTIMEOFFSET bool default n config GENERIC_CLOCKEVENTS bool config GENERIC_CLOCKEVENTS_BROADCAST bool depends on GENERIC_CLOCKEVENTS default y if SMP config KTIME_SCALAR bool default y config HAVE_TCM bool select GENERIC_ALLOCATOR config HAVE_PROC_CPU bool config NO_IOPORT bool config EISA bool ---help--- The Extended Industry Standard Architecture (EISA) bus was developed as an open alternative to the IBM MicroChannel bus. The EISA bus provided some of the features of the IBM MicroChannel bus while maintaining backward compatibility with cards made for the older ISA bus. The EISA bus saw limited use between 1988 and 1995 when it was made obsolete by the PCI bus. Say Y here if you are building a kernel for an EISA-based machine. Otherwise, say N. config SBUS bool config MCA bool help MicroChannel Architecture is found in some IBM PS/2 machines and laptops. It is a bus system similar to PCI or ISA. See (and especially the web page given there) before attempting to build an MCA bus kernel. config STACKTRACE_SUPPORT bool default y config HAVE_LATENCYTOP_SUPPORT bool depends on !SMP default y config LOCKDEP_SUPPORT bool default y config TRACE_IRQFLAGS_SUPPORT bool default y config HARDIRQS_SW_RESEND bool default y config GENERIC_IRQ_PROBE bool default y config GENERIC_LOCKBREAK bool default y depends on SMP && PREEMPT config RWSEM_GENERIC_SPINLOCK bool default y config RWSEM_XCHGADD_ALGORITHM bool config ARCH_HAS_ILOG2_U32 bool config ARCH_HAS_ILOG2_U64 bool config ARCH_HAS_CPUFREQ bool help Internal node to signify that the ARCH has CPUFREQ support and that the relevant menu configurations are displayed for it. config ARCH_HAS_CPU_IDLE_WAIT def_bool y config GENERIC_HWEIGHT bool default y config GENERIC_CALIBRATE_DELAY bool default y config ARCH_MAY_HAVE_PC_FDC bool config ZONE_DMA bool config NEED_DMA_MAP_STATE def_bool y config GENERIC_ISA_DMA bool config FIQ bool config ARCH_MTD_XIP bool config VECTORS_BASE hex default 0xffff0000 if MMU || CPU_HIGH_VECTOR default DRAM_BASE if REMAP_VECTORS_TO_RAM default 0x00000000 help The base address of exception vectors. config ARM_PATCH_PHYS_VIRT bool "Patch physical to virtual translations at runtime (EXPERIMENTAL)" depends on EXPERIMENTAL depends on !XIP_KERNEL && MMU depends on !ARCH_REALVIEW || !SPARSEMEM help Patch phys-to-virt translation functions at runtime according to the position of the kernel in system memory. This can only be used with non-XIP with MMU kernels where the base of physical memory is at a 16MB boundary. config ARM_PATCH_PHYS_VIRT_16BIT def_bool y depends on ARM_PATCH_PHYS_VIRT && ARCH_MSM source "init/Kconfig" source "kernel/Kconfig.freezer" menu "System Type" config MMU bool "MMU-based Paged Memory Management Support" default y help Select if you want MMU-based virtualised addressing space support by paged memory management. If unsure, say 'Y'. # # The "ARM system type" choice list is ordered alphabetically by option # text. Please add new entries in the option alphabetic order. # choice prompt "ARM system type" default ARCH_VERSATILE config ARCH_INTEGRATOR bool "ARM Ltd. Integrator family" select ARM_AMBA select ARCH_HAS_CPUFREQ select CLKDEV_LOOKUP select ICST select GENERIC_CLOCKEVENTS select PLAT_VERSATILE select PLAT_VERSATILE_FPGA_IRQ help Support for ARM's Integrator platform. config ARCH_REALVIEW bool "ARM Ltd. RealView family" select ARM_AMBA select CLKDEV_LOOKUP select ICST select GENERIC_CLOCKEVENTS select ARCH_WANT_OPTIONAL_GPIOLIB select PLAT_VERSATILE select PLAT_VERSATILE_CLCD select ARM_TIMER_SP804 select GPIO_PL061 if GPIOLIB help This enables support for ARM Ltd RealView boards. config ARCH_VERSATILE bool "ARM Ltd. Versatile family" select ARM_AMBA select ARM_VIC select CLKDEV_LOOKUP select ICST select GENERIC_CLOCKEVENTS select ARCH_WANT_OPTIONAL_GPIOLIB select PLAT_VERSATILE select PLAT_VERSATILE_CLCD select PLAT_VERSATILE_FPGA_IRQ select ARM_TIMER_SP804 help This enables support for ARM Ltd Versatile board. config ARCH_VEXPRESS bool "ARM Ltd. Versatile Express family" select ARCH_WANT_OPTIONAL_GPIOLIB select ARM_AMBA select ARM_TIMER_SP804 select CLKDEV_LOOKUP select GENERIC_CLOCKEVENTS select HAVE_CLK select HAVE_PATA_PLATFORM select ICST select PLAT_VERSATILE select PLAT_VERSATILE_CLCD help This enables support for the ARM Ltd Versatile Express boards. config ARCH_AT91 bool "Atmel AT91" select ARCH_REQUIRE_GPIOLIB select HAVE_CLK help This enables support for systems based on the Atmel AT91RM9200, AT91SAM9 and AT91CAP9 processors. config ARCH_BCMRING bool "Broadcom BCMRING" depends on MMU select CPU_V6 select ARM_AMBA select CLKDEV_LOOKUP select GENERIC_CLOCKEVENTS select ARCH_WANT_OPTIONAL_GPIOLIB help Support for Broadcom's BCMRing platform. config ARCH_CLPS711X bool "Cirrus Logic CLPS711x/EP721x-based" select CPU_ARM720T select ARCH_USES_GETTIMEOFFSET help Support for Cirrus Logic 711x/721x based boards. config ARCH_CNS3XXX bool "Cavium Networks CNS3XXX family" select CPU_V6 select GENERIC_CLOCKEVENTS select ARM_GIC select MIGHT_HAVE_PCI select PCI_DOMAINS if PCI help Support for Cavium Networks CNS3XXX platform. config ARCH_GEMINI bool "Cortina Systems Gemini" select CPU_FA526 select ARCH_REQUIRE_GPIOLIB select ARCH_USES_GETTIMEOFFSET help Support for the Cortina Systems Gemini family SoCs config ARCH_EBSA110 bool "EBSA-110" select CPU_SA110 select ISA select NO_IOPORT select ARCH_USES_GETTIMEOFFSET help This is an evaluation board for the StrongARM processor available from Digital. It has limited hardware on-board, including an Ethernet interface, two PCMCIA sockets, two serial ports and a parallel port. config ARCH_EP93XX bool "EP93xx-based" select CPU_ARM920T select ARM_AMBA select ARM_VIC select CLKDEV_LOOKUP select ARCH_REQUIRE_GPIOLIB select ARCH_HAS_HOLES_MEMORYMODEL select ARCH_USES_GETTIMEOFFSET help This enables support for the Cirrus EP93xx series of CPUs. config ARCH_FOOTBRIDGE bool "FootBridge" select CPU_SA110 select FOOTBRIDGE select GENERIC_CLOCKEVENTS help Support for systems based on the DC21285 companion chip ("FootBridge"), such as the Simtec CATS and the Rebel NetWinder. config ARCH_MXC bool "Freescale MXC/iMX-based" select GENERIC_CLOCKEVENTS select ARCH_REQUIRE_GPIOLIB select CLKDEV_LOOKUP select HAVE_SCHED_CLOCK help Support for Freescale MXC/iMX-based family of processors config ARCH_MXS bool "Freescale MXS-based" select GENERIC_CLOCKEVENTS select ARCH_REQUIRE_GPIOLIB select CLKDEV_LOOKUP help Support for Freescale MXS-based family of processors config ARCH_STMP3XXX bool "Freescale STMP3xxx" select CPU_ARM926T select CLKDEV_LOOKUP select ARCH_REQUIRE_GPIOLIB select GENERIC_CLOCKEVENTS select USB_ARCH_HAS_EHCI help Support for systems based on the Freescale 3xxx CPUs. config ARCH_NETX bool "Hilscher NetX based" select CPU_ARM926T select ARM_VIC select GENERIC_CLOCKEVENTS help This enables support for systems based on the Hilscher NetX Soc config ARCH_H720X bool "Hynix HMS720x-based" select CPU_ARM720T select ISA_DMA_API select ARCH_USES_GETTIMEOFFSET help This enables support for systems based on the Hynix HMS720x config ARCH_IOP13XX bool "IOP13xx-based" depends on MMU select CPU_XSC3 select PLAT_IOP select PCI select ARCH_SUPPORTS_MSI select VMSPLIT_1G help Support for Intel's IOP13XX (XScale) family of processors. config ARCH_IOP32X bool "IOP32x-based" depends on MMU select CPU_XSCALE select PLAT_IOP select PCI select ARCH_REQUIRE_GPIOLIB help Support for Intel's 80219 and IOP32X (XScale) family of processors. config ARCH_IOP33X bool "IOP33x-based" depends on MMU select CPU_XSCALE select PLAT_IOP select PCI select ARCH_REQUIRE_GPIOLIB help Support for Intel's IOP33X (XScale) family of processors. config ARCH_IXP23XX bool "IXP23XX-based" depends on MMU select CPU_XSC3 select PCI select ARCH_USES_GETTIMEOFFSET help Support for Intel's IXP23xx (XScale) family of processors. config ARCH_IXP2000 bool "IXP2400/2800-based" depends on MMU select CPU_XSCALE select PCI select ARCH_USES_GETTIMEOFFSET help Support for Intel's IXP2400/2800 (XScale) family of processors. config ARCH_IXP4XX bool "IXP4xx-based" depends on MMU select CPU_XSCALE select GENERIC_GPIO select GENERIC_CLOCKEVENTS select HAVE_SCHED_CLOCK select MIGHT_HAVE_PCI select DMABOUNCE if PCI help Support for Intel's IXP4XX (XScale) family of processors. config ARCH_DOVE bool "Marvell Dove" select CPU_V6K select PCI select ARCH_REQUIRE_GPIOLIB select GENERIC_CLOCKEVENTS select PLAT_ORION help Support for the Marvell Dove SoC 88AP510 config ARCH_KIRKWOOD bool "Marvell Kirkwood" select CPU_FEROCEON select PCI select ARCH_REQUIRE_GPIOLIB select GENERIC_CLOCKEVENTS select PLAT_ORION help Support for the following Marvell Kirkwood series SoCs: 88F6180, 88F6192 and 88F6281. config ARCH_LOKI bool "Marvell Loki (88RC8480)" select CPU_FEROCEON select GENERIC_CLOCKEVENTS select PLAT_ORION help Support for the Marvell Loki (88RC8480) SoC. config ARCH_LPC32XX bool "NXP LPC32XX" select CPU_ARM926T select ARCH_REQUIRE_GPIOLIB select HAVE_IDE select ARM_AMBA select USB_ARCH_HAS_OHCI select CLKDEV_LOOKUP select GENERIC_TIME select GENERIC_CLOCKEVENTS help Support for the NXP LPC32XX family of processors config ARCH_MV78XX0 bool "Marvell MV78xx0" select CPU_FEROCEON select PCI select ARCH_REQUIRE_GPIOLIB select GENERIC_CLOCKEVENTS select PLAT_ORION help Support for the following Marvell MV78xx0 series SoCs: MV781x0, MV782x0. config ARCH_ORION5X bool "Marvell Orion" depends on MMU select CPU_FEROCEON select PCI select ARCH_REQUIRE_GPIOLIB select GENERIC_CLOCKEVENTS select PLAT_ORION help Support for the following Marvell Orion 5x series SoCs: Orion-1 (5181), Orion-VoIP (5181L), Orion-NAS (5182), Orion-2 (5281), Orion-1-90 (6183). config ARCH_MMP bool "Marvell PXA168/910/MMP2" depends on MMU select ARCH_REQUIRE_GPIOLIB select CLKDEV_LOOKUP select GENERIC_CLOCKEVENTS select HAVE_SCHED_CLOCK select TICK_ONESHOT select PLAT_PXA select SPARSE_IRQ help Support for Marvell's PXA168/PXA910(MMP) and MMP2 processor line. config ARCH_KS8695 bool "Micrel/Kendin KS8695" select CPU_ARM922T select ARCH_REQUIRE_GPIOLIB select ARCH_USES_GETTIMEOFFSET help Support for Micrel/Kendin KS8695 "Centaur" (ARM922T) based System-on-Chip devices. config ARCH_NS9XXX bool "NetSilicon NS9xxx" select CPU_ARM926T select GENERIC_GPIO select GENERIC_CLOCKEVENTS select HAVE_CLK help Say Y here if you intend to run this kernel on a NetSilicon NS9xxx System. config ARCH_W90X900 bool "Nuvoton W90X900 CPU" select CPU_ARM926T select ARCH_REQUIRE_GPIOLIB select CLKDEV_LOOKUP select GENERIC_CLOCKEVENTS help Support for Nuvoton (Winbond logic dept.) ARM9 processor, At present, the w90x900 has been renamed nuc900, regarding the ARM series product line, you can login the following link address to know more. config ARCH_NUC93X bool "Nuvoton NUC93X CPU" select CPU_ARM926T select CLKDEV_LOOKUP help Support for Nuvoton (Winbond logic dept.) NUC93X MCU,The NUC93X is a low-power and high performance MPEG-4/JPEG multimedia controller chip. config ARCH_TEGRA bool "NVIDIA Tegra" select CLKDEV_LOOKUP select GENERIC_TIME select GENERIC_CLOCKEVENTS select GENERIC_GPIO select HAVE_CLK select HAVE_SCHED_CLOCK select ARCH_HAS_BARRIERS if CACHE_L2X0 select ARCH_HAS_CPUFREQ help This enables support for NVIDIA Tegra based systems (Tegra APX, Tegra 6xx and Tegra 2 series). config ARCH_PNX4008 bool "Philips Nexperia PNX4008 Mobile" select CPU_ARM926T select CLKDEV_LOOKUP select ARCH_USES_GETTIMEOFFSET help This enables support for Philips PNX4008 mobile platform. config ARCH_PXA bool "PXA2xx/PXA3xx-based" depends on MMU select ARCH_MTD_XIP select ARCH_HAS_CPUFREQ select CLKDEV_LOOKUP select ARCH_REQUIRE_GPIOLIB select GENERIC_CLOCKEVENTS select HAVE_SCHED_CLOCK select TICK_ONESHOT select PLAT_PXA select SPARSE_IRQ help Support for Intel/Marvell's PXA2xx/PXA3xx processor line. config ARCH_MSM bool "Qualcomm MSM" select HAVE_CLK select GENERIC_CLOCKEVENTS select ARCH_REQUIRE_GPIOLIB select CLKDEV_LOOKUP help Support for Qualcomm MSM/QSD based systems. This runs on the apps processor of the MSM/QSD and depends on a shared memory interface to the modem processor which runs the baseband stack and controls some vital subsystems (clock and power control, etc). config ARCH_SHMOBILE bool "Renesas SH-Mobile / R-Mobile" select HAVE_CLK select CLKDEV_LOOKUP select GENERIC_CLOCKEVENTS select NO_IOPORT select SPARSE_IRQ select MULTI_IRQ_HANDLER help Support for Renesas's SH-Mobile and R-Mobile ARM platforms. config ARCH_RPC bool "RiscPC" select ARCH_ACORN select FIQ select TIMER_ACORN select ARCH_MAY_HAVE_PC_FDC select HAVE_PATA_PLATFORM select ISA_DMA_API select NO_IOPORT select ARCH_SPARSEMEM_ENABLE select ARCH_USES_GETTIMEOFFSET help On the Acorn Risc-PC, Linux can support the internal IDE disk and CD-ROM interface, serial and parallel port, and the floppy drive. config ARCH_SA1100 bool "SA1100-based" select CPU_SA1100 select ISA select ARCH_SPARSEMEM_ENABLE select ARCH_MTD_XIP select ARCH_HAS_CPUFREQ select CPU_FREQ select GENERIC_CLOCKEVENTS select HAVE_CLK select HAVE_SCHED_CLOCK select TICK_ONESHOT select ARCH_REQUIRE_GPIOLIB help Support for StrongARM 11x0 based boards. config ARCH_S3C2410 bool "Samsung S3C2410, S3C2412, S3C2413, S3C2416, S3C2440, S3C2442, S3C2443, S3C2450" select GENERIC_GPIO select ARCH_HAS_CPUFREQ select HAVE_CLK select ARCH_USES_GETTIMEOFFSET select HAVE_S3C2410_I2C if I2C help Samsung S3C2410X CPU based systems, such as the Simtec Electronics BAST (), the IPAQ 1940 or the Samsung SMDK2410 development board (and derivatives). Note, the S3C2416 and the S3C2450 are so close that they even share the same SoC ID code. This means that there is no separate machine directory (no arch/arm/mach-s3c2450) as the S3C2416 was first. config ARCH_S3C64XX bool "Samsung S3C64XX" select PLAT_SAMSUNG select CPU_V6 select ARM_VIC select HAVE_CLK select NO_IOPORT select ARCH_USES_GETTIMEOFFSET select ARCH_HAS_CPUFREQ select ARCH_REQUIRE_GPIOLIB select SAMSUNG_CLKSRC select SAMSUNG_IRQ_VIC_TIMER select SAMSUNG_IRQ_UART select S3C_GPIO_TRACK select S3C_GPIO_PULL_UPDOWN select S3C_GPIO_CFG_S3C24XX select S3C_GPIO_CFG_S3C64XX select S3C_DEV_NAND select USB_ARCH_HAS_OHCI select SAMSUNG_GPIOLIB_4BIT select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG help Samsung S3C64XX series based systems config ARCH_S5P64X0 bool "Samsung S5P6440 S5P6450" select CPU_V6 select GENERIC_GPIO select HAVE_CLK select HAVE_S3C2410_WATCHDOG if WATCHDOG select GENERIC_CLOCKEVENTS select HAVE_SCHED_CLOCK select HAVE_S3C2410_I2C if I2C select HAVE_S3C_RTC if RTC_CLASS help Samsung S5P64X0 CPU based systems, such as the Samsung SMDK6440, SMDK6450. config ARCH_S5P6442 bool "Samsung S5P6442" select CPU_V6 select GENERIC_GPIO select HAVE_CLK select ARCH_USES_GETTIMEOFFSET select HAVE_S3C2410_WATCHDOG if WATCHDOG help Samsung S5P6442 CPU based systems config ARCH_S5PC100 bool "Samsung S5PC100" select GENERIC_GPIO select HAVE_CLK select CPU_V7 select ARM_L1_CACHE_SHIFT_6 select ARCH_USES_GETTIMEOFFSET select HAVE_S3C2410_I2C if I2C select HAVE_S3C_RTC if RTC_CLASS select HAVE_S3C2410_WATCHDOG if WATCHDOG help Samsung S5PC100 series based systems config ARCH_S5PV210 bool "Samsung S5PV210/S5PC110" select CPU_V7 select ARCH_SPARSEMEM_ENABLE select GENERIC_GPIO select HAVE_CLK select ARM_L1_CACHE_SHIFT_6 select ARCH_HAS_CPUFREQ select GENERIC_CLOCKEVENTS select HAVE_SCHED_CLOCK select HAVE_S3C2410_I2C if I2C select HAVE_S3C_RTC if RTC_CLASS select HAVE_S3C2410_WATCHDOG if WATCHDOG help Samsung S5PV210/S5PC110 series based systems config ARCH_EXYNOS4 bool "Samsung EXYNOS4" select CPU_V7 select ARCH_SPARSEMEM_ENABLE select GENERIC_GPIO select HAVE_CLK select ARCH_HAS_CPUFREQ select GENERIC_CLOCKEVENTS select HAVE_S3C_RTC if RTC_CLASS select HAVE_S3C2410_I2C if I2C select HAVE_S3C2410_WATCHDOG if WATCHDOG help Samsung EXYNOS4 series based systems config ARCH_SHARK bool "Shark" select CPU_SA110 select ISA select ISA_DMA select ZONE_DMA select PCI select ARCH_USES_GETTIMEOFFSET help Support for the StrongARM based Digital DNARD machine, also known as "Shark" (). config ARCH_TCC_926 bool "Telechips TCC ARM926-based systems" select CPU_ARM926T select HAVE_CLK select CLKDEV_LOOKUP select GENERIC_CLOCKEVENTS help Support for Telechips TCC ARM926-based systems. config ARCH_U300 bool "ST-Ericsson U300 Series" depends on MMU select CPU_ARM926T select HAVE_SCHED_CLOCK select HAVE_TCM select ARM_AMBA select ARM_VIC select GENERIC_CLOCKEVENTS select CLKDEV_LOOKUP select GENERIC_GPIO help Support for ST-Ericsson U300 series mobile platforms. config ARCH_U8500 bool "ST-Ericsson U8500 Series" select CPU_V7 select ARM_AMBA select GENERIC_CLOCKEVENTS select CLKDEV_LOOKUP select ARCH_REQUIRE_GPIOLIB select ARCH_HAS_CPUFREQ help Support for ST-Ericsson's Ux500 architecture config ARCH_NOMADIK bool "STMicroelectronics Nomadik" select ARM_AMBA select ARM_VIC select CPU_ARM926T select CLKDEV_LOOKUP select GENERIC_CLOCKEVENTS select ARCH_REQUIRE_GPIOLIB help Support for the Nomadik platform by ST-Ericsson config ARCH_DAVINCI bool "TI DaVinci" select GENERIC_CLOCKEVENTS select ARCH_REQUIRE_GPIOLIB select ZONE_DMA select HAVE_IDE select CLKDEV_LOOKUP select GENERIC_ALLOCATOR select ARCH_HAS_HOLES_MEMORYMODEL help Support for TI's DaVinci platform. config ARCH_OMAP bool "TI OMAP" select HAVE_CLK select ARCH_REQUIRE_GPIOLIB select ARCH_HAS_CPUFREQ select GENERIC_CLOCKEVENTS select HAVE_SCHED_CLOCK select ARCH_HAS_HOLES_MEMORYMODEL help Support for TI's OMAP platform (OMAP1/2/3/4). config PLAT_SPEAR bool "ST SPEAr" select ARM_AMBA select ARCH_REQUIRE_GPIOLIB select CLKDEV_LOOKUP select GENERIC_CLOCKEVENTS select HAVE_CLK help Support for ST's SPEAr platform (SPEAr3xx, SPEAr6xx and SPEAr13xx). config ARCH_VT8500 bool "VIA/WonderMedia 85xx" select CPU_ARM926T select GENERIC_GPIO select ARCH_HAS_CPUFREQ select GENERIC_CLOCKEVENTS select ARCH_REQUIRE_GPIOLIB select HAVE_PWM help Support for VIA/WonderMedia VT8500/WM85xx System-on-Chip. endchoice # # This is sorted alphabetically by mach-* pathname. However, plat-* # Kconfigs may be included either alphabetically (according to the # plat- suffix) or along side the corresponding mach-* source. # source "arch/arm/mach-at91/Kconfig" source "arch/arm/mach-bcmring/Kconfig" source "arch/arm/mach-clps711x/Kconfig" source "arch/arm/mach-cns3xxx/Kconfig" source "arch/arm/mach-davinci/Kconfig" source "arch/arm/mach-dove/Kconfig" source "arch/arm/mach-ep93xx/Kconfig" source "arch/arm/mach-footbridge/Kconfig" source "arch/arm/mach-gemini/Kconfig" source "arch/arm/mach-h720x/Kconfig" source "arch/arm/mach-integrator/Kconfig" source "arch/arm/mach-iop32x/Kconfig" source "arch/arm/mach-iop33x/Kconfig" source "arch/arm/mach-iop13xx/Kconfig" source "arch/arm/mach-ixp4xx/Kconfig" source "arch/arm/mach-ixp2000/Kconfig" source "arch/arm/mach-ixp23xx/Kconfig" source "arch/arm/mach-kirkwood/Kconfig" source "arch/arm/mach-ks8695/Kconfig" source "arch/arm/mach-loki/Kconfig" source "arch/arm/mach-lpc32xx/Kconfig" source "arch/arm/mach-msm/Kconfig" source "arch/arm/mach-mv78xx0/Kconfig" source "arch/arm/plat-mxc/Kconfig" source "arch/arm/mach-mxs/Kconfig" source "arch/arm/mach-netx/Kconfig" source "arch/arm/mach-nomadik/Kconfig" source "arch/arm/plat-nomadik/Kconfig" source "arch/arm/mach-ns9xxx/Kconfig" source "arch/arm/mach-nuc93x/Kconfig" source "arch/arm/plat-omap/Kconfig" source "arch/arm/mach-omap1/Kconfig" source "arch/arm/mach-omap2/Kconfig" source "arch/arm/mach-orion5x/Kconfig" source "arch/arm/mach-pxa/Kconfig" source "arch/arm/plat-pxa/Kconfig" source "arch/arm/mach-mmp/Kconfig" source "arch/arm/mach-realview/Kconfig" source "arch/arm/mach-sa1100/Kconfig" source "arch/arm/plat-samsung/Kconfig" source "arch/arm/plat-s3c24xx/Kconfig" source "arch/arm/plat-s5p/Kconfig" source "arch/arm/plat-spear/Kconfig" source "arch/arm/plat-tcc/Kconfig" if ARCH_S3C2410 source "arch/arm/mach-s3c2400/Kconfig" source "arch/arm/mach-s3c2410/Kconfig" source "arch/arm/mach-s3c2412/Kconfig" source "arch/arm/mach-s3c2416/Kconfig" source "arch/arm/mach-s3c2440/Kconfig" source "arch/arm/mach-s3c2443/Kconfig" endif if ARCH_S3C64XX source "arch/arm/mach-s3c64xx/Kconfig" endif source "arch/arm/mach-s5p64x0/Kconfig" source "arch/arm/mach-s5p6442/Kconfig" source "arch/arm/mach-s5pc100/Kconfig" source "arch/arm/mach-s5pv210/Kconfig" source "arch/arm/mach-exynos4/Kconfig" source "arch/arm/mach-shmobile/Kconfig" source "arch/arm/plat-stmp3xxx/Kconfig" source "arch/arm/mach-tegra/Kconfig" source "arch/arm/mach-u300/Kconfig" source "arch/arm/mach-ux500/Kconfig" source "arch/arm/mach-versatile/Kconfig" source "arch/arm/mach-vexpress/Kconfig" source "arch/arm/plat-versatile/Kconfig" source "arch/arm/mach-vt8500/Kconfig" source "arch/arm/mach-w90x900/Kconfig" # Definitions to make life easier config ARCH_ACORN bool config PLAT_IOP bool select GENERIC_CLOCKEVENTS select HAVE_SCHED_CLOCK config PLAT_ORION bool select HAVE_SCHED_CLOCK config PLAT_PXA bool config PLAT_VERSATILE bool config ARM_TIMER_SP804 bool source arch/arm/mm/Kconfig config IWMMXT bool "Enable iWMMXt support" depends on CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_PJ4 default y if PXA27x || PXA3xx || PXA95x || ARCH_MMP help Enable support for iWMMXt context switching at run time if running on a CPU that supports it. # bool 'Use XScale PMU as timer source' CONFIG_XSCALE_PMU_TIMER config XSCALE_PMU bool depends on CPU_XSCALE && !XSCALE_PMU_TIMER default y config CPU_HAS_PMU depends on (CPU_V6 || CPU_V6K || CPU_V7 || XSCALE_PMU) && \ (!ARCH_OMAP3 || OMAP3_EMU) default y bool config MULTI_IRQ_HANDLER bool help Allow each machine to specify it's own IRQ handler at run time. if !MMU source "arch/arm/Kconfig-nommu" endif config ARM_ERRATA_411920 bool "ARM errata: Invalidation of the Instruction Cache operation can fail" depends on CPU_V6 || CPU_V6K help Invalidation of the Instruction Cache operation can fail. This erratum is present in 1136 (before r1p4), 1156 and 1176. It does not affect the MPCore. This option enables the ARM Ltd. recommended workaround. config ARM_ERRATA_430973 bool "ARM errata: Stale prediction on replaced interworking branch" depends on CPU_V7 help This option enables the workaround for the 430973 Cortex-A8 (r1p0..r1p2) erratum. If a code sequence containing an ARM/Thumb interworking branch is replaced with another code sequence at the same virtual address, whether due to self-modifying code or virtual to physical address re-mapping, Cortex-A8 does not recover from the stale interworking branch prediction. This results in Cortex-A8 executing the new code sequence in the incorrect ARM or Thumb state. The workaround enables the BTB/BTAC operations by setting ACTLR.IBE and also flushes the branch target cache at every context switch. Note that setting specific bits in the ACTLR register may not be available in non-secure mode. config ARM_ERRATA_458693 bool "ARM errata: Processor deadlock when a false hazard is created" depends on CPU_V7 help This option enables the workaround for the 458693 Cortex-A8 (r2p0) erratum. For very specific sequences of memory operations, it is possible for a hazard condition intended for a cache line to instead be incorrectly associated with a different cache line. This false hazard might then cause a processor deadlock. The workaround enables the L1 caching of the NEON accesses and disables the PLD instruction in the ACTLR register. Note that setting specific bits in the ACTLR register may not be available in non-secure mode. config ARM_ERRATA_460075 bool "ARM errata: Data written to the L2 cache can be overwritten with stale data" depends on CPU_V7 help This option enables the workaround for the 460075 Cortex-A8 (r2p0) erratum. Any asynchronous access to the L2 cache may encounter a situation in which recent store transactions to the L2 cache are lost and overwritten with stale memory contents from external memory. The workaround disables the write-allocate mode for the L2 cache via the ACTLR register. Note that setting specific bits in the ACTLR register may not be available in non-secure mode. config ARM_ERRATA_742230 bool "ARM errata: DMB operation may be faulty" depends on CPU_V7 && SMP help This option enables the workaround for the 742230 Cortex-A9 (r1p0..r2p2) erratum. Under rare circumstances, a DMB instruction between two write operations may not ensure the correct visibility ordering of the two writes. This workaround sets a specific bit in the diagnostic register of the Cortex-A9 which causes the DMB instruction to behave as a DSB, ensuring the correct behaviour of the two writes. config ARM_ERRATA_742231 bool "ARM errata: Incorrect hazard handling in the SCU may lead to data corruption" depends on CPU_V7 && SMP help This option enables the workaround for the 742231 Cortex-A9 (r2p0..r2p2) erratum. Under certain conditions, specific to the Cortex-A9 MPCore micro-architecture, two CPUs working in SMP mode, accessing some data located in the same cache line, may get corrupted data due to bad handling of the address hazard when the line gets replaced from one of the CPUs at the same time as another CPU is accessing it. This workaround sets specific bits in the diagnostic register of the Cortex-A9 which reduces the linefill issuing capabilities of the processor. config PL310_ERRATA_588369 bool "Clean & Invalidate maintenance operations do not invalidate clean lines" depends on CACHE_L2X0 help The PL310 L2 cache controller implements three types of Clean & Invalidate maintenance operations: by Physical Address (offset 0x7F0), by Index/Way (0x7F8) and by Way (0x7FC). They are architecturally defined to behave as the execution of a clean operation followed immediately by an invalidate operation, both performing to the same memory location. This functionality is not correctly implemented in PL310 as clean lines are not invalidated as a result of these operations. config ARM_ERRATA_720789 bool "ARM errata: TLBIASIDIS and TLBIMVAIS operations can broadcast a faulty ASID" depends on CPU_V7 && SMP help This option enables the workaround for the 720789 Cortex-A9 (prior to r2p0) erratum. A faulty ASID can be sent to the other CPUs for the broadcasted CP15 TLB maintenance operations TLBIASIDIS and TLBIMVAIS. As a consequence of this erratum, some TLB entries which should be invalidated are not, resulting in an incoherency in the system page tables. The workaround changes the TLB flushing routines to invalidate entries regardless of the ASID. config PL310_ERRATA_727915 bool "Background Clean & Invalidate by Way operation can cause data corruption" depends on CACHE_L2X0 help PL310 implements the Clean & Invalidate by Way L2 cache maintenance operation (offset 0x7FC). This operation runs in background so that PL310 can handle normal accesses while it is in progress. Under very rare circumstances, due to this erratum, write data can be lost when PL310 treats a cacheable write transaction during a Clean & Invalidate by Way operation. config ARM_ERRATA_743622 bool "ARM errata: Faulty hazard checking in the Store Buffer may lead to data corruption" depends on CPU_V7 help This option enables the workaround for the 743622 Cortex-A9 (r2p0..r2p2) erratum. Under very rare conditions, a faulty optimisation in the Cortex-A9 Store Buffer may lead to data corruption. This workaround sets a specific bit in the diagnostic register of the Cortex-A9 which disables the Store Buffer optimisation, preventing the defect from occurring. This has no visible impact on the overall performance or power consumption of the processor. config ARM_ERRATA_751472 bool "ARM errata: Interrupted ICIALLUIS may prevent completion of broadcasted operation" depends on CPU_V7 && SMP help This option enables the workaround for the 751472 Cortex-A9 (prior to r3p0) erratum. An interrupted ICIALLUIS operation may prevent the completion of a following broadcasted operation if the second operation is received by a CPU before the ICIALLUIS has completed, potentially leading to corrupted entries in the cache or TLB. config ARM_ERRATA_753970 bool "ARM errata: cache sync operation may be faulty" depends on CACHE_PL310 help This option enables the workaround for the 753970 PL310 (r3p0) erratum. Under some condition the effect of cache sync operation on the store buffer still remains when the operation completes. This means that the store buffer is always asked to drain and this prevents it from merging any further writes. The workaround is to replace the normal offset of cache sync operation (0x730) by another offset targeting an unmapped PL310 register 0x740. This has the same effect as the cache sync operation: store buffer drain and waiting for all buffers empty. config ARM_ERRATA_754322 bool "ARM errata: possible faulty MMU translations following an ASID switch" depends on CPU_V7 help This option enables the workaround for the 754322 Cortex-A9 (r2p*, r3p*) erratum. A speculative memory access may cause a page table walk which starts prior to an ASID switch but completes afterwards. This can populate the micro-TLB with a stale entry which may be hit with the new ASID. This workaround places two dsb instructions in the mm switching code so that no page table walks can cross the ASID switch. config ARM_ERRATA_754327 bool "ARM errata: no automatic Store Buffer drain" depends on CPU_V7 && SMP help This option enables the workaround for the 754327 Cortex-A9 (prior to r2p0) erratum. The Store Buffer does not have any automatic draining mechanism and therefore a livelock may occur if an external agent continuously polls a memory location waiting to observe an update. This workaround defines cpu_relax() as smp_mb(), preventing correctly written polling loops from denying visibility of updates to memory. endmenu source "arch/arm/common/Kconfig" menu "Bus support" config ARM_AMBA bool config ISA bool help Find out whether you have ISA slots on your motherboard. ISA is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are PCI, EISA, MicroChannel (MCA) or VESA. ISA is an older system, now being displaced by PCI; newer boards don't support it. If you have ISA, say Y, otherwise N. # Select ISA DMA controller support config ISA_DMA bool select ISA_DMA_API # Select ISA DMA interface config ISA_DMA_API bool config PCI bool "PCI support" if MIGHT_HAVE_PCI help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. config PCI_DOMAINS bool depends on PCI config PCI_NANOENGINE bool "BSE nanoEngine PCI support" depends on SA1100_NANOENGINE help Enable PCI on the BSE nanoEngine board. config PCI_SYSCALL def_bool PCI # Select the host bridge type config PCI_HOST_VIA82C505 bool depends on PCI && ARCH_SHARK default y config PCI_HOST_ITE8152 bool depends on PCI && MACH_ARMCORE default y select DMABOUNCE source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" endmenu menu "Kernel Features" source "kernel/time/Kconfig" config SMP bool "Symmetric Multi-Processing (EXPERIMENTAL)" depends on EXPERIMENTAL depends on CPU_V6K || CPU_V7 depends on GENERIC_CLOCKEVENTS depends on REALVIEW_EB_ARM11MP || REALVIEW_EB_A9MP || \ MACH_REALVIEW_PB11MP || MACH_REALVIEW_PBX || ARCH_OMAP4 || \ ARCH_EXYNOS4 || ARCH_TEGRA || ARCH_U8500 || ARCH_VEXPRESS_CA9X4 || \ ARCH_MSM_SCORPIONMP || ARCH_SHMOBILE select USE_GENERIC_SMP_HELPERS select HAVE_ARM_SCU if !ARCH_MSM_SCORPIONMP help This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, single processor machines. On a single processor machine, the kernel will run faster if you say N here. See also , and the SMP-HOWTO available at . If you don't know what to do here, say N. config SMP_ON_UP bool "Allow booting SMP kernel on uniprocessor systems (EXPERIMENTAL)" depends on EXPERIMENTAL depends on SMP && !XIP_KERNEL default y help SMP kernels contain instructions which fail on non-SMP processors. Enabling this option allows the kernel to modify itself to make these instructions safe. Disabling it allows about 1K of space savings. If you don't know what to do here, say Y. config HAVE_ARM_SCU bool depends on SMP help This option enables support for the ARM system coherency unit config HAVE_ARM_TWD bool depends on SMP select TICK_ONESHOT help This options enables support for the ARM timer and watchdog unit choice prompt "Memory split" default VMSPLIT_3G help Select the desired split between kernel and user memory. If you are not absolutely sure what you are doing, leave this option alone! config VMSPLIT_3G bool "3G/1G user/kernel split" config VMSPLIT_2G bool "2G/2G user/kernel split" config VMSPLIT_1G bool "1G/3G user/kernel split" endchoice config PAGE_OFFSET hex default 0x40000000 if VMSPLIT_1G default 0x80000000 if VMSPLIT_2G default 0xC0000000 config NR_CPUS int "Maximum number of CPUs (2-32)" range 2 32 depends on SMP default "4" config HOTPLUG_CPU bool "Support for hot-pluggable CPUs (EXPERIMENTAL)" depends on SMP && HOTPLUG && EXPERIMENTAL depends on !ARCH_MSM help Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu. config LOCAL_TIMERS bool "Use local timer interrupts" depends on SMP default y select HAVE_ARM_TWD if (!ARCH_MSM_SCORPIONMP && !EXYNOS4_MCT) help Enable support for local timers on SMP platforms, rather then the legacy IPI broadcast method. Local timers allows the system accounting to be spread across the timer interval, preventing a "thundering herd" at every timer tick. source kernel/Kconfig.preempt config HZ int default 200 if ARCH_EBSA110 || ARCH_S3C2410 || ARCH_S5P64X0 || \ ARCH_S5P6442 || ARCH_S5PV210 || ARCH_EXYNOS4 default OMAP_32K_TIMER_HZ if ARCH_OMAP && OMAP_32K_TIMER default AT91_TIMER_HZ if ARCH_AT91 default SHMOBILE_TIMER_HZ if ARCH_SHMOBILE default 100 config THUMB2_KERNEL bool "Compile the kernel in Thumb-2 mode (EXPERIMENTAL)" depends on CPU_V7 && !CPU_V6 && !CPU_V6K && EXPERIMENTAL select AEABI select ARM_ASM_UNIFIED help By enabling this option, the kernel will be compiled in Thumb-2 mode. A compiler/assembler that understand the unified ARM-Thumb syntax is needed. If unsure, say N. config THUMB2_AVOID_R_ARM_THM_JUMP11 bool "Work around buggy Thumb-2 short branch relocations in gas" depends on THUMB2_KERNEL && MODULES default y help Various binutils versions can resolve Thumb-2 branches to locally-defined, preemptible global symbols as short-range "b.n" branch instructions. This is a problem, because there's no guarantee the final destination of the symbol, or any candidate locations for a trampoline, are within range of the branch. For this reason, the kernel does not support fixing up the R_ARM_THM_JUMP11 (102) relocation in modules at all, and it makes little sense to add support. The symptom is that the kernel fails with an "unsupported relocation" error when loading some modules. Until fixed tools are available, passing -fno-optimize-sibling-calls to gcc should prevent gcc generating code which hits this problem, at the cost of a bit of extra runtime stack usage in some cases. The problem is described in more detail at: https://bugs.launchpad.net/binutils-linaro/+bug/725126 Only Thumb-2 kernels are affected. Unless you are sure your tools don't have this problem, say Y. config ARM_ASM_UNIFIED bool config AEABI bool "Use the ARM EABI to compile the kernel" help This option allows for the kernel to be compiled using the latest ARM ABI (aka EABI). This is only useful if you are using a user space environment that is also compiled with EABI. Since there are major incompatibilities between the legacy ABI and EABI, especially with regard to structure member alignment, this option also changes the kernel syscall calling convention to disambiguate both ABIs and allow for backward compatibility support (selected with CONFIG_OABI_COMPAT). To use this you need GCC version 4.0.0 or later. config OABI_COMPAT bool "Allow old ABI binaries to run with this kernel (EXPERIMENTAL)" depends on AEABI && EXPERIMENTAL && !THUMB2_KERNEL default y help This option preserves the old syscall interface along with the new (ARM EABI) one. It also provides a compatibility layer to intercept syscalls that have structure arguments which layout in memory differs between the legacy ABI and the new ARM EABI (only for non "thumb" binaries). This option adds a tiny overhead to all syscalls and produces a slightly larger kernel. If you know you'll be using only pure EABI user space then you can say N here. If this option is not selected and you attempt to execute a legacy ABI binary then the result will be UNPREDICTABLE (in fact it can be predicted that it won't work at all). If in doubt say Y. config ARCH_HAS_HOLES_MEMORYMODEL bool config ARCH_SPARSEMEM_ENABLE bool config ARCH_SPARSEMEM_DEFAULT def_bool ARCH_SPARSEMEM_ENABLE config ARCH_SELECT_MEMORY_MODEL def_bool ARCH_SPARSEMEM_ENABLE config HIGHMEM bool "High Memory Support (EXPERIMENTAL)" depends on MMU && EXPERIMENTAL help The address space of ARM processors is only 4 Gigabytes large and it has to accommodate user address space, kernel address space as well as some memory mapped IO. That means that, if you have a large amount of physical memory and/or IO, not all of the memory can be "permanently mapped" by the kernel. The physical memory that is not permanently mapped is called "high memory". Depending on the selected kernel/user memory split, minimum vmalloc space and actual amount of RAM, you may not need this option which should result in a slightly faster kernel. If unsure, say n. config HIGHPTE bool "Allocate 2nd-level pagetables from highmem" depends on HIGHMEM config HW_PERF_EVENTS bool "Enable hardware performance counter support for perf events" depends on PERF_EVENTS && CPU_HAS_PMU default y help Enable hardware performance counter support for perf events. If disabled, perf events will use software events only. source "mm/Kconfig" config FORCE_MAX_ZONEORDER int "Maximum zone order" if ARCH_SHMOBILE range 11 64 if ARCH_SHMOBILE default "9" if SA1111 default "11" help The kernel memory allocator divides physically contiguous memory blocks into "zones", where each zone is a power of two number of pages. This option selects the largest power of two that the kernel keeps in the memory allocator. If you need to allocate very large blocks of physically contiguous memory, then you may need to increase this value. This config option is actually maximum order plus one. For example, a value of 11 means that the largest free memory block is 2^10 pages. config LEDS bool "Timer and CPU usage LEDs" depends on ARCH_CDB89712 || ARCH_EBSA110 || \ ARCH_EBSA285 || ARCH_INTEGRATOR || \ ARCH_LUBBOCK || MACH_MAINSTONE || ARCH_NETWINDER || \ ARCH_OMAP || ARCH_P720T || ARCH_PXA_IDP || \ ARCH_SA1100 || ARCH_SHARK || ARCH_VERSATILE || \ ARCH_AT91 || ARCH_DAVINCI || \ ARCH_KS8695 || MACH_RD88F5182 || ARCH_REALVIEW help If you say Y here, the LEDs on your machine will be used to provide useful information about your current system status. If you are compiling a kernel for a NetWinder or EBSA-285, you will be able to select which LEDs are active using the options below. If you are compiling a kernel for the EBSA-110 or the LART however, the red LED will simply flash regularly to indicate that the system is still functional. It is safe to say Y here if you have a CATS system, but the driver will do nothing. config LEDS_TIMER bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \ OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ || MACH_OMAP_PERSEUS2 depends on LEDS depends on !GENERIC_CLOCKEVENTS default y if ARCH_EBSA110 help If you say Y here, one of the system LEDs (the green one on the NetWinder, the amber one on the EBSA285, or the red one on the LART) will flash regularly to indicate that the system is still operational. This is mainly useful to kernel hackers who are debugging unstable kernels. The LART uses the same LED for both Timer LED and CPU usage LED functions. You may choose to use both, but the Timer LED function will overrule the CPU usage LED. config LEDS_CPU bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \ !ARCH_OMAP) \ || OMAP_OSK_MISTRAL || MACH_OMAP_H2 \ || MACH_OMAP_PERSEUS2 depends on LEDS help If you say Y here, the red LED will be used to give a good real time indication of CPU usage, by lighting whenever the idle task is not currently executing. The LART uses the same LED for both Timer LED and CPU usage LED functions. You may choose to use both, but the Timer LED function will overrule the CPU usage LED. config ALIGNMENT_TRAP bool depends on CPU_CP15_MMU default y if !ARCH_EBSA110 select HAVE_PROC_CPU if PROC_FS help ARM processors cannot fetch/store information which is not naturally aligned on the bus, i.e., a 4 byte fetch must start at an address divisible by 4. On 32-bit ARM processors, these non-aligned fetch/store instructions will be emulated in software if you say here, which has a severe performance impact. This is necessary for correct operation of some network protocols. With an IP-only configuration it is safe to say N, otherwise say Y. config UACCESS_WITH_MEMCPY bool "Use kernel mem{cpy,set}() for {copy_to,clear}_user() (EXPERIMENTAL)" depends on MMU && EXPERIMENTAL default y if CPU_FEROCEON help Implement faster copy_to_user and clear_user methods for CPU cores where a 8-word STM instruction give significantly higher memory write throughput than a sequence of individual 32bit stores. A possible side effect is a slight increase in scheduling latency between threads sharing the same address space if they invoke such copy operations with large buffers. However, if the CPU data cache is using a write-allocate mode, this option is unlikely to provide any performance gain. config SECCOMP bool prompt "Enable seccomp to safely compute untrusted bytecode" ---help--- This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via prctl(PR_SET_SECCOMP), it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. config CC_STACKPROTECTOR bool "Enable -fstack-protector buffer overflow detection (EXPERIMENTAL)" depends on EXPERIMENTAL help This option turns on the -fstack-protector GCC feature. This feature puts, at the beginning of functions, a canary value on the stack just before the return address, and validates the value just before actually returning. Stack based buffer overflows (that need to overwrite this return address) now also overwrite the canary, which gets detected and the attack is then neutralized via a kernel panic. This feature requires gcc version 4.2 or above. config DEPRECATED_PARAM_STRUCT bool "Provide old way to pass kernel parameters" help This was deprecated in 2001 and announced to live on for 5 years. Some old boot loaders still use this way. endmenu menu "Boot options" # Compressed boot loader in ROM. Yes, we really want to ask about # TEXT and BSS so we preserve their values in the config files. config ZBOOT_ROM_TEXT hex "Compressed ROM boot loader base address" default "0" help The physical address at which the ROM-able zImage is to be placed in the target. Platforms which normally make use of ROM-able zImage formats normally set this to a suitable value in their defconfig file. If ZBOOT_ROM is not enabled, this has no effect. config ZBOOT_ROM_BSS hex "Compressed ROM boot loader BSS address" default "0" help The base address of an area of read/write memory in the target for the ROM-able zImage which must be available while the decompressor is running. It must be large enough to hold the entire decompressed kernel plus an additional 128 KiB. Platforms which normally make use of ROM-able zImage formats normally set this to a suitable value in their defconfig file. If ZBOOT_ROM is not enabled, this has no effect. config ZBOOT_ROM bool "Compressed boot loader in ROM/flash" depends on ZBOOT_ROM_TEXT != ZBOOT_ROM_BSS help Say Y here if you intend to execute your compressed kernel image (zImage) directly from ROM or flash. If unsure, say N. config ZBOOT_ROM_MMCIF bool "Include MMCIF loader in zImage (EXPERIMENTAL)" depends on ZBOOT_ROM && ARCH_SH7372 && EXPERIMENTAL help Say Y here to include experimental MMCIF loading code in the ROM-able zImage. With this enabled it is possible to write the the ROM-able zImage kernel image to an MMC card and boot the kernel straight from the reset vector. At reset the processor Mask ROM will load the first part of the the ROM-able zImage which in turn loads the rest the kernel image to RAM using the MMCIF hardware block. config CMDLINE string "Default kernel command string" default "" help On some architectures (EBSA110 and CATS), there is currently no way for the boot loader to pass arguments to the kernel. For these architectures, you should supply some command-line options at build time by entering them here. As a minimum, you should specify the memory size and the root device (e.g., mem=64M root=/dev/nfs). config CMDLINE_FORCE bool "Always use the default kernel command string" depends on CMDLINE != "" help Always use the default kernel command string, even if the boot loader passes other arguments to the kernel. This is useful if you cannot or don't want to change the command-line options your boot loader passes to the kernel. If unsure, say N. config XIP_KERNEL bool "Kernel Execute-In-Place from ROM" depends on !ZBOOT_ROM help Execute-In-Place allows the kernel to run from non-volatile storage directly addressable by the CPU, such as NOR flash. This saves RAM space since the text section of the kernel is not loaded from flash to RAM. Read-write sections, such as the data section and stack, are still copied to RAM. The XIP kernel is not compressed since it has to run directly from flash, so it will take more space to store it. The flash address used to link the kernel object files, and for storing it, is configuration dependent. Therefore, if you say Y here, you must know the proper physical address where to store the kernel image depending on your own flash memory usage. Also note that the make target becomes "make xipImage" rather than "make zImage" or "make Image". The final kernel binary to put in ROM memory will be arch/arm/boot/xipImage. If unsure, say N. config XIP_PHYS_ADDR hex "XIP Kernel Physical Location" depends on XIP_KERNEL default "0x00080000" help This is the physical address in your flash memory the kernel will be linked for and stored to. This address is dependent on your own flash usage. config KEXEC bool "Kexec system call (EXPERIMENTAL)" depends on EXPERIMENTAL help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but it is independent of the system firmware. And like a reboot you can start any kernel with it, not just Linux. It is an ongoing process to be certain the hardware in a machine is properly shutdown, so do not be surprised if this code does not initially work for you. It may help to enable device hotplugging support. config ATAGS_PROC bool "Export atags in procfs" depends on KEXEC default y help Should the atags used to boot the kernel be exported in an "atags" file in procfs. Useful with kexec. config CRASH_DUMP bool "Build kdump crash kernel (EXPERIMENTAL)" depends on EXPERIMENTAL help Generate crash dump after being started by kexec. This should be normally only set in special crash dump kernels which are loaded in the main kernel with kexec-tools into a specially reserved region and then later executed after a crash by kdump/kexec. The crash dump kernel must be compiled to a memory address not used by the main kernel For more details see Documentation/kdump/kdump.txt config AUTO_ZRELADDR bool "Auto calculation of the decompressed kernel image address" depends on !ZBOOT_ROM && !ARCH_U300 help ZRELADDR is the physical address where the decompressed kernel image will be placed. If AUTO_ZRELADDR is selected, the address will be determined at run-time by masking the current IP with 0xf8000000. This assumes the zImage being placed in the first 128MB from start of memory. endmenu menu "CPU Power Management" if ARCH_HAS_CPUFREQ source "drivers/cpufreq/Kconfig" config CPU_FREQ_IMX tristate "CPUfreq driver for i.MX CPUs" depends on ARCH_MXC && CPU_FREQ help This enables the CPUfreq driver for i.MX CPUs. config CPU_FREQ_SA1100 bool config CPU_FREQ_SA1110 bool config CPU_FREQ_INTEGRATOR tristate "CPUfreq driver for ARM Integrator CPUs" depends on ARCH_INTEGRATOR && CPU_FREQ default y help This enables the CPUfreq driver for ARM Integrator CPUs. For details, take a look at . If in doubt, say Y. config CPU_FREQ_PXA bool depends on CPU_FREQ && ARCH_PXA && PXA25x default y select CPU_FREQ_DEFAULT_GOV_USERSPACE config CPU_FREQ_S3C64XX bool "CPUfreq support for Samsung S3C64XX CPUs" depends on CPU_FREQ && CPU_S3C6410 config CPU_FREQ_S3C bool help Internal configuration node for common cpufreq on Samsung SoC config CPU_FREQ_S3C24XX bool "CPUfreq driver for Samsung S3C24XX series CPUs (EXPERIMENTAL)" depends on ARCH_S3C2410 && CPU_FREQ && EXPERIMENTAL select CPU_FREQ_S3C help This enables the CPUfreq driver for the Samsung S3C24XX family of CPUs. For details, take a look at . If in doubt, say N. config CPU_FREQ_S3C24XX_PLL bool "Support CPUfreq changing of PLL frequency (EXPERIMENTAL)" depends on CPU_FREQ_S3C24XX && EXPERIMENTAL help Compile in support for changing the PLL frequency from the S3C24XX series CPUfreq driver. The PLL takes time to settle after a frequency change, so by default it is not enabled. This also means that the PLL tables for the selected CPU(s) will be built which may increase the size of the kernel image. config CPU_FREQ_S3C24XX_DEBUG bool "Debug CPUfreq Samsung driver core" depends on CPU_FREQ_S3C24XX help Enable s3c_freq_dbg for the Samsung S3C CPUfreq core config CPU_FREQ_S3C24XX_IODEBUG bool "Debug CPUfreq Samsung driver IO timing" depends on CPU_FREQ_S3C24XX help Enable s3c_freq_iodbg for the Samsung S3C CPUfreq core config CPU_FREQ_S3C24XX_DEBUGFS bool "Export debugfs for CPUFreq" depends on CPU_FREQ_S3C24XX && DEBUG_FS help Export status information via debugfs. endif source "drivers/cpuidle/Kconfig" endmenu menu "Floating point emulation" comment "At least one emulation must be selected" config FPE_NWFPE bool "NWFPE math emulation" depends on (!AEABI || OABI_COMPAT) && !THUMB2_KERNEL ---help--- Say Y to include the NWFPE floating point emulator in the kernel. This is necessary to run most binaries. Linux does not currently support floating point hardware so you need to say Y here even if your machine has an FPA or floating point co-processor podule. You may say N here if you are going to load the Acorn FPEmulator early in the bootup. config FPE_NWFPE_XP bool "Support extended precision" depends on FPE_NWFPE help Say Y to include 80-bit support in the kernel floating-point emulator. Otherwise, only 32 and 64-bit support is compiled in. Note that gcc does not generate 80-bit operations by default, so in most cases this option only enlarges the size of the floating point emulator without any good reason. You almost surely want to say N here. config FPE_FASTFPE bool "FastFPE math emulation (EXPERIMENTAL)" depends on (!AEABI || OABI_COMPAT) && !CPU_32v3 && EXPERIMENTAL ---help--- Say Y here to include the FAST floating point emulator in the kernel. This is an experimental much faster emulator which now also has full precision for the mantissa. It does not support any exceptions. It is very simple, and approximately 3-6 times faster than NWFPE. It should be sufficient for most programs. It may be not suitable for scientific calculations, but you have to check this for yourself. If you do not feel you need a faster FP emulation you should better choose NWFPE. config VFP bool "VFP-format floating point maths" depends on CPU_V6 || CPU_V6K || CPU_ARM926T || CPU_V7 || CPU_FEROCEON help Say Y to include VFP support code in the kernel. This is needed if your hardware includes a VFP unit. Please see for release notes and additional status information. Say N if your target does not have VFP hardware. config VFPv3 bool depends on VFP default y if CPU_V7 config NEON bool "Advanced SIMD (NEON) Extension support" depends on VFPv3 && CPU_V7 help Say Y to include support code for NEON, the ARMv7 Advanced SIMD Extension. endmenu menu "Userspace binary formats" source "fs/Kconfig.binfmt" config ARTHUR tristate "RISC OS personality" depends on !AEABI help Say Y here to include the kernel code necessary if you want to run Acorn RISC OS/Arthur binaries under Linux. This code is still very experimental; if this sounds frightening, say N and sleep in peace. You can also say M here to compile this support as a module (which will be called arthur). endmenu menu "Power management options" source "kernel/power/Kconfig" config ARCH_SUSPEND_POSSIBLE depends on !ARCH_S5P64X0 && !ARCH_S5P6442 depends on CPU_ARM920T || CPU_ARM926T || CPU_SA1100 || \ CPU_V6 || CPU_V6K || CPU_V7 || CPU_XSC3 || CPU_XSCALE def_bool y endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/arm/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" if ARCH_TCC8K comment "TCC8000 systems:" config MACH_TCC8000_SDK bool "Telechips TCC8000-SDK development kit" default y help Support for the Telechips TCC8000-SDK board. endif if ARCH_U8500 config UX500_SOC_COMMON bool default y select ARM_GIC select HAS_MTU select NOMADIK_GPIO select ARM_ERRATA_753970 menu "Ux500 SoC" config UX500_SOC_DB5500 bool "DB5500" config UX500_SOC_DB8500 bool "DB8500" endmenu menu "Ux500 target platform" config MACH_U8500 bool "U8500 Development platform" depends on UX500_SOC_DB8500 select TPS6105X help Include support for the mop500 development platform. config MACH_U5500 bool "U5500 Development platform" depends on UX500_SOC_DB5500 help Include support for the U5500 development platform. endmenu config UX500_DEBUG_UART int "Ux500 UART to use for low-level debug" default 2 help Choose the UART on which kernel low-level debug messages should be output. config U5500_MODEM_IRQ bool "Modem IRQ support" depends on UX500_SOC_DB5500 default y help Add support for handling IRQ:s from modem side config U5500_MBOX bool "Mailbox support" depends on U5500_MODEM_IRQ default y help Add support for U5500 mailbox communication with modem side endif if ARCH_LPC32XX menu "Individual UART enable selections" config ARCH_LPC32XX_UART3_SELECT bool "Add support for standard UART3" help Adds support for standard UART 3 when the 8250 serial support is enabled. config ARCH_LPC32XX_UART4_SELECT bool "Add support for standard UART4" help Adds support for standard UART 4 when the 8250 serial support is enabled. config ARCH_LPC32XX_UART5_SELECT bool "Add support for standard UART5" default y help Adds support for standard UART 5 when the 8250 serial support is enabled. config ARCH_LPC32XX_UART6_SELECT bool "Add support for standard UART6" help Adds support for standard UART 6 when the 8250 serial support is enabled. endmenu endif if ARCH_VT8500 config VTWM_VERSION_VT8500 bool config VTWM_VERSION_WM8505 bool config MACH_BV07 bool "Benign BV07-8500 Mini Netbook" depends on ARCH_VT8500 select VTWM_VERSION_VT8500 help Add support for the inexpensive 7-inch netbooks sold by many Chinese distributors under various names. Note that there are many hardware implementations in identical exterior, make sure that yours is indeed based on a VIA VT8500 chip. config MACH_WM8505_7IN_NETBOOK bool "WM8505 7-inch generic netbook" depends on ARCH_VT8500 select VTWM_VERSION_WM8505 help Add support for the inexpensive 7-inch netbooks sold by many Chinese distributors under various names. Note that there are many hardware implementations in identical exterior, make sure that yours is indeed based on a WonderMedia WM8505 chip. comment "LCD panel size" config WMT_PANEL_800X480 bool "7-inch with 800x480 resolution" depends on (FB_VT8500 || FB_WM8505) default y help These are found in most of the netbooks in generic cases, as well as in Eken M001 tablets and possibly elsewhere. To select this panel at runtime, say y here and append 'panel=800x480' to your kernel command line. Otherwise, the largest one available will be used. config WMT_PANEL_800X600 bool "8-inch with 800x600 resolution" depends on (FB_VT8500 || FB_WM8505) help These are found in Eken M003 tablets and possibly elsewhere. To select this panel at runtime, say y here and append 'panel=800x600' to your kernel command line. Otherwise, the largest one available will be used. config WMT_PANEL_1024X576 bool "10-inch with 1024x576 resolution" depends on (FB_VT8500 || FB_WM8505) help These are found in CherryPal netbooks and possibly elsewhere. To select this panel at runtime, say y here and append 'panel=1024x576' to your kernel command line. Otherwise, the largest one available will be used. config WMT_PANEL_1024X600 bool "10-inch with 1024x600 resolution" depends on (FB_VT8500 || FB_WM8505) help These are found in Eken M006 tablets and possibly elsewhere. To select this panel at runtime, say y here and append 'panel=1024x600' to your kernel command line. Otherwise, the largest one available will be used. endif # Copyright 2007 Simtec Electronics # # Licensed under GPLv2 config CPU_S3C2443 bool depends on ARCH_S3C2410 select CPU_ARM920T select S3C2443_DMA if S3C2410_DMA select CPU_LLSERIAL_S3C2440 select SAMSUNG_CLKSRC select S3C2443_CLOCK select S3C_GPIO_PULL_S3C2443 help Support for the S3C2443 SoC from the S3C24XX line config S3C2443_DMA bool depends on CPU_S3C2443 help Internal config node for S3C2443 DMA support menu "S3C2443 Machines" config MACH_SMDK2443 bool "SMDK2443" select CPU_S3C2443 select MACH_SMDK select S3C_DEV_HSMMC1 help Say Y here if you are using an SMDK2443 endmenu if ARCH_GEMINI menu "Cortina Systems Gemini Implementations" config MACH_NAS4220B bool "Raidsonic NAS-4220-B" select GEMINI_MEM_SWAP help Say Y here if you intend to run this kernel on a Raidsonic NAS-4220-B. config MACH_RUT100 bool "Teltonika RUT100" select GEMINI_MEM_SWAP help Say Y here if you intend to run this kernel on a Teltonika 3G Router RUT100. config MACH_WBD111 bool "Wiliboard WBD-111" select GEMINI_MEM_SWAP help Say Y here if you intend to run this kernel on a Wiliboard WBD-111. config MACH_WBD222 bool "Wiliboard WBD-222" select GEMINI_MEM_SWAP help Say Y here if you intend to run this kernel on a Wiliboard WBD-222. endmenu config GEMINI_MEM_SWAP bool "Gemini memory is swapped" help Say Y here if Gemini memory is swapped by bootloader. endif if ARCH_OMAP1 menu "TI OMAP1 specific features" comment "OMAP Core Type" depends on ARCH_OMAP1 config ARCH_OMAP730 depends on ARCH_OMAP1 bool "OMAP730 Based System" select CPU_ARM926T select OMAP_MPU_TIMER select ARCH_OMAP_OTG config ARCH_OMAP850 depends on ARCH_OMAP1 bool "OMAP850 Based System" select CPU_ARM926T select ARCH_OMAP_OTG config ARCH_OMAP15XX depends on ARCH_OMAP1 default y bool "OMAP15xx Based System" select CPU_ARM925T select OMAP_MPU_TIMER config ARCH_OMAP16XX depends on ARCH_OMAP1 bool "OMAP16xx Based System" select CPU_ARM926T select ARCH_OMAP_OTG comment "OMAP Board Type" depends on ARCH_OMAP1 config MACH_OMAP_INNOVATOR bool "TI Innovator" depends on ARCH_OMAP1 && (ARCH_OMAP15XX || ARCH_OMAP16XX) select OMAP_MCBSP help TI OMAP 1510 or 1610 Innovator board support. Say Y here if you have such a board. config MACH_OMAP_H2 bool "TI H2 Support" depends on ARCH_OMAP1 && ARCH_OMAP16XX select OMAP_MCBSP help TI OMAP 1610/1611B H2 board support. Say Y here if you have such a board. config MACH_OMAP_H3 bool "TI H3 Support" depends on ARCH_OMAP1 && ARCH_OMAP16XX help TI OMAP 1710 H3 board support. Say Y here if you have such a board. config MACH_OMAP_HTCWIZARD bool "HTC Wizard" depends on ARCH_OMAP850 help HTC Wizard smartphone support (AKA QTEK 9100, ...) config MACH_HERALD bool "HTC Herald" depends on ARCH_OMAP850 help HTC Herald smartphone support (AKA T-Mobile Wing, ...) config MACH_OMAP_OSK bool "TI OSK Support" depends on ARCH_OMAP1 && ARCH_OMAP16XX select OMAP_MCBSP help TI OMAP 5912 OSK (OMAP Starter Kit) board support. Say Y here if you have such a board. config OMAP_OSK_MISTRAL bool "Mistral QVGA board Support" depends on MACH_OMAP_OSK help The OSK supports an optional add-on board with a Quarter-VGA touchscreen, PDA-ish buttons, a resume button, bicolor LED, and camera connector. Say Y here if you have this board. config MACH_OMAP_PERSEUS2 bool "TI Perseus2" depends on ARCH_OMAP1 && ARCH_OMAP730 help Support for TI OMAP 730 Perseus2 board. Say Y here if you have such a board. config MACH_OMAP_FSAMPLE bool "TI F-Sample" depends on ARCH_OMAP1 && ARCH_OMAP730 help Support for TI OMAP 850 F-Sample board. Say Y here if you have such a board. config MACH_VOICEBLUE bool "Voiceblue" depends on ARCH_OMAP1 && ARCH_OMAP15XX help Support for Voiceblue GSM/VoIP gateway. Say Y here if you have such a board. config MACH_OMAP_PALMTE bool "Palm Tungsten E" depends on ARCH_OMAP1 && ARCH_OMAP15XX help Support for the Palm Tungsten E PDA. To boot the kernel, you'll need a PalmOS compatible bootloader; check out http://palmtelinux.sourceforge.net/ for more information. Say Y here if you have this PDA model, say N otherwise. config MACH_OMAP_PALMZ71 bool "Palm Zire71" depends on ARCH_OMAP1 && ARCH_OMAP15XX help Support for the Palm Zire71 PDA. To boot the kernel, you'll need a PalmOS compatible bootloader; check out http://hackndev.com/palm/z71 for more information. Say Y here if you have such a PDA, say N otherwise. config MACH_OMAP_PALMTT bool "Palm Tungsten|T" depends on ARCH_OMAP1 && ARCH_OMAP15XX help Support for the Palm Tungsten|T PDA. To boot the kernel, you'll need a PalmOS compatible bootloader (Garux); check out http://garux.sourceforge.net/ for more information. Say Y here if you have this PDA model, say N otherwise. config MACH_SX1 bool "Siemens SX1" depends on ARCH_OMAP1 && ARCH_OMAP15XX help Support for the Siemens SX1 phone. To boot the kernel, you'll need a SX1 compatible bootloader; check out http://forum.oslik.ru and http://www.handhelds.org/moin/moin.cgi/SiemensSX1 for more information. Say Y here if you have such a phone, say NO otherwise. config MACH_NOKIA770 bool "Nokia 770" depends on ARCH_OMAP1 && ARCH_OMAP16XX help Support for the Nokia 770 Internet Tablet. Say Y here if you have such a device. config MACH_AMS_DELTA bool "Amstrad E3 (Delta)" depends on ARCH_OMAP1 && ARCH_OMAP15XX select FIQ help Support for the Amstrad E3 (codename Delta) videophone. Say Y here if you have such a device. config MACH_OMAP_GENERIC bool "Generic OMAP board" depends on ARCH_OMAP1 && (ARCH_OMAP15XX || ARCH_OMAP16XX) help Support for generic OMAP-1510, 1610 or 1710 board with no FPGA. Can be used as template for porting Linux to custom OMAP boards. Say Y here if you have a custom board. comment "OMAP CPU Speed" depends on ARCH_OMAP1 config OMAP_CLOCKS_SET_BY_BOOTLOADER bool "OMAP clocks set by bootloader" depends on ARCH_OMAP1 help Enable this option to prevent the kernel from overriding the clock frequencies programmed by bootloader for MPU, DSP, MMUs, TC, internal LCD controller and MPU peripherals. config OMAP_ARM_216MHZ bool "OMAP ARM 216 MHz CPU (1710 only)" depends on ARCH_OMAP1 && ARCH_OMAP16XX help Enable 216 MHz clock for OMAP1710 CPU. If unsure, say N. config OMAP_ARM_195MHZ bool "OMAP ARM 195 MHz CPU" depends on ARCH_OMAP1 && (ARCH_OMAP730 || ARCH_OMAP850) help Enable 195MHz clock for OMAP CPU. If unsure, say N. config OMAP_ARM_192MHZ bool "OMAP ARM 192 MHz CPU" depends on ARCH_OMAP1 && ARCH_OMAP16XX help Enable 192MHz clock for OMAP CPU. If unsure, say N. config OMAP_ARM_182MHZ bool "OMAP ARM 182 MHz CPU" depends on ARCH_OMAP1 && (ARCH_OMAP730 || ARCH_OMAP850) help Enable 182MHz clock for OMAP CPU. If unsure, say N. config OMAP_ARM_168MHZ bool "OMAP ARM 168 MHz CPU" depends on ARCH_OMAP1 && (ARCH_OMAP15XX || ARCH_OMAP16XX || ARCH_OMAP730 || ARCH_OMAP850) help Enable 168MHz clock for OMAP CPU. If unsure, say N. config OMAP_ARM_150MHZ bool "OMAP ARM 150 MHz CPU" depends on ARCH_OMAP1 && ARCH_OMAP15XX help Enable 150MHz clock for OMAP CPU. If unsure, say N. config OMAP_ARM_120MHZ bool "OMAP ARM 120 MHz CPU" depends on ARCH_OMAP1 && (ARCH_OMAP15XX || ARCH_OMAP16XX || ARCH_OMAP730 || ARCH_OMAP850) help Enable 120MHz clock for OMAP CPU. If unsure, say N. config OMAP_ARM_96MHZ bool "OMAP ARM 96 MHz CPU" depends on ARCH_OMAP1 && (ARCH_OMAP15XX || ARCH_OMAP16XX || ARCH_OMAP730 || ARCH_OMAP850) help Enable 96MHz clock for OMAP CPU. If unsure, say N. config OMAP_ARM_60MHZ bool "OMAP ARM 60 MHz CPU" depends on ARCH_OMAP1 && (ARCH_OMAP15XX || ARCH_OMAP16XX || ARCH_OMAP730 || ARCH_OMAP850) default y help Enable 60MHz clock for OMAP CPU. If unsure, say Y. config OMAP_ARM_30MHZ bool "OMAP ARM 30 MHz CPU" depends on ARCH_OMAP1 && (ARCH_OMAP15XX || ARCH_OMAP16XX || ARCH_OMAP730 || ARCH_OMAP850) help Enable 30MHz clock for OMAP CPU. If unsure, say N. endmenu endif if ARCH_NUC93X config CPU_NUC932 bool help Support for NUC932 of Nuvoton NUC93X CPUs. menu "NUC932 Machines" config MACH_NUC932EVB bool "Nuvoton NUC932 Evaluation Board" default y select CPU_NUC932 help Say Y here if you are using the Nuvoton NUC932EVB endmenu endif if ARCH_LOKI menu "Marvell Loki (88RC8480) Implementations" config MACH_LB88RC8480 bool "Marvell LB88RC8480 Development Board" help Say 'Y' here if you want your kernel to support the Marvell LB88RC8480 Development Board. endmenu endif if ARCH_DOVE menu "Marvell Dove Implementations" config MACH_DOVE_DB bool "Marvell DB-MV88AP510 Development Board" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the Marvell DB-MV88AP510 Development Board. config MACH_CM_A510 bool "CompuLab CM-A510 Board" help Say 'Y' here if you want your kernel to support the CompuLab CM-A510 Board. endmenu endif if ARCH_U300 menu "ST-Ericsson AB U300/U330/U335/U365 Platform" comment "ST-Ericsson Mobile Platform Products" config MACH_U300 bool "U300" comment "ST-Ericsson U300/U330/U335/U365 Feature Selections" choice prompt "U300/U330/U335/U365 system type" default MACH_U300_BS2X ---help--- You need to select the target system, i.e. the U300/U330/U335/U365 board that you want to compile your kernel for. config MACH_U300_BS2X bool "S26/S26/B25/B26 Test Products" depends on MACH_U300 help Select this if you're developing on the S26/S25 test products. (Also works on B26/B25 big boards.) config MACH_U300_BS330 bool "S330/B330 Test Products" depends on MACH_U300 help Select this if you're developing on the S330/B330 test products. config MACH_U300_BS335 bool "S335/B335 Test Products" depends on MACH_U300 help Select this if you're developing on the S335/B335 test products. config MACH_U300_BS365 bool "S365/B365 Test Products" depends on MACH_U300 help Select this if you're developing on the S365/B365 test products. endchoice choice prompt "Memory configuration" default MACH_U300_SINGLE_RAM ---help--- You have to config the kernel according to the physical memory configuration. config MACH_U300_SINGLE_RAM bool "Single RAM" help Select this if you want support for Single RAM phones. config MACH_U300_DUAL_RAM bool "Dual RAM" help Select this if you want support for Dual RAM phones. This is two RAM memories on different EMIFs. endchoice config U300_DEBUG bool "Debug support for U300" depends on PM help Debug support for U300 in sysfs, procfs etc. config MACH_U300_SEMI_IS_SHARED bool "The SEMI is used by both the access and application side" depends on MACH_U300 help This makes it possible to use the SEMI (Shared External Memory Interface) from both from access and application side. config MACH_U300_SPIDUMMY bool "SSP/SPI dummy chip" select SPI select SPI_MASTER select SPI_PL022 help This creates a small kernel module that creates a dummy SPI device to be used for loopback tests. Regularly used to test reference designs. If you're not testing SPI, you don't need it. Selecting this will activate the SPI framework and ARM PL022 support. comment "All the settings below must match the bootloader's settings" config MACH_U300_ACCESS_MEM_SIZE int "Access CPU memory allocation" range 7 25 depends on MACH_U300_SINGLE_RAM default 13 help How much memory in MiB that the Access side CPU has allocated config MACH_U300_2MB_ALIGNMENT_FIX bool "2MiB alignment fix" depends on MACH_U300_SINGLE_RAM default y help If yes and the Access side CPU has allocated an odd size in MiB, this fix gives you one MiB extra that would otherwise be lost due to Linux 2 MiB alignment policy. endmenu endif config ARM_GIC bool config ARM_VIC bool config ARM_VIC_NR int default 4 if ARCH_S5PV210 default 3 if ARCH_S5P6442 || ARCH_S5PC100 default 2 depends on ARM_VIC help The maximum number of VICs available in the system, for power management. config ICST bool config PL330 bool config SA1111 bool select DMABOUNCE if !ARCH_PXA config DMABOUNCE bool select ZONE_DMA config TIMER_ACORN bool config SHARP_LOCOMO bool config SHARP_PARAM bool config SHARP_SCOOP bool if ARCH_IXP23XX config ARCH_SUPPORTS_BIG_ENDIAN bool default y menu "Intel IXP23xx Implementation Options" comment "IXP23xx Platforms" config MACH_ESPRESSO bool "Support IP Fabrics Double Espresso platform" help config MACH_IXDP2351 bool "Support Intel IXDP2351 platform" help config MACH_ROADRUNNER bool "Support ADI RoadRunner platform" help endmenu endif if ARCH_IOP33X menu "IOP33x Implementation Options" comment "IOP33x Platform Types" config ARCH_IQ80331 bool "Enable support for IQ80331" help Say Y here if you want to run your kernel on the Intel IQ80331 evaluation kit for the IOP331 chipset. config MACH_IQ80332 bool "Enable support for IQ80332" help Say Y here if you want to run your kernel on the Intel IQ80332 evaluation kit for the IOP332 chipset. endmenu endif menu "RealView platform type" depends on ARCH_REALVIEW config MACH_REALVIEW_EB bool "Support RealView(R) Emulation Baseboard" select ARM_GIC help Include support for the ARM(R) RealView(R) Emulation Baseboard platform. config REALVIEW_EB_A9MP bool "Support Multicore Cortex-A9 Tile" depends on MACH_REALVIEW_EB select CPU_V7 help Enable support for the Cortex-A9MPCore tile fitted to the Realview(R) Emulation Baseboard platform. config REALVIEW_EB_ARM11MP bool "Support ARM11MPCore Tile" depends on MACH_REALVIEW_EB select CPU_V6K select ARCH_HAS_BARRIERS if SMP help Enable support for the ARM11MPCore tile fitted to the Realview(R) Emulation Baseboard platform. config REALVIEW_EB_ARM11MP_REVB bool "Support ARM11MPCore RevB Tile" depends on REALVIEW_EB_ARM11MP help Enable support for the ARM11MPCore Revision B tile on the Realview(R) Emulation Baseboard platform. Since there are device address differences, a kernel built with this option enabled is not compatible with other revisions of the ARM11MPCore tile. config MACH_REALVIEW_PB11MP bool "Support RealView(R) Platform Baseboard for ARM11MPCore" select CPU_V6K select ARM_GIC select HAVE_PATA_PLATFORM select ARCH_HAS_BARRIERS if SMP help Include support for the ARM(R) RealView(R) Platform Baseboard for the ARM11MPCore. This platform has an on-board ARM11MPCore and has support for PCI-E and Compact Flash. # ARMv6 CPU without K extensions, but does have the new exclusive ops config MACH_REALVIEW_PB1176 bool "Support RealView(R) Platform Baseboard for ARM1176JZF-S" select CPU_V6 select ARM_GIC help Include support for the ARM(R) RealView(R) Platform Baseboard for ARM1176JZF-S. config REALVIEW_PB1176_SECURE_FLASH bool "Allow access to the secure flash memory block" depends on MACH_REALVIEW_PB1176 default n help Select this option if Linux will only run in secure mode on the RealView PB1176 platform and access to the secure flash memory block (64MB @ 0x3c000000) is required. config MACH_REALVIEW_PBA8 bool "Support RealView(R) Platform Baseboard for Cortex(tm)-A8 platform" select CPU_V7 select ARM_GIC select HAVE_PATA_PLATFORM help Include support for the ARM(R) RealView Platform Baseboard for Cortex(tm)-A8. This platform has an on-board Cortex-A8 and has support for PCI-E and Compact Flash. config MACH_REALVIEW_PBX bool "Support RealView(R) Platform Baseboard Explore" select ARM_GIC select HAVE_PATA_PLATFORM select ARCH_SPARSEMEM_ENABLE if CPU_V7 && !REALVIEW_HIGH_PHYS_OFFSET select ZONE_DMA if SPARSEMEM help Include support for the ARM(R) RealView(R) Platform Baseboard Explore. config REALVIEW_HIGH_PHYS_OFFSET bool "High physical base address for the RealView platform" depends on MMU && !MACH_REALVIEW_PB1176 default y help RealView boards other than PB1176 have the RAM available at 0x70000000, 256MB of which being mirrored at 0x00000000. If the board supports 512MB of RAM, this option allows the memory to be accessed contiguously at the high physical offset. On the PBX board, disabling this option allows 1GB of RAM to be used with SPARSEMEM. endmenu if ARCH_MV78XX0 menu "Marvell MV78xx0 Implementations" config MACH_DB78X00_BP bool "Marvell DB-78x00-BP Development Board" help Say 'Y' here if you want your kernel to support the Marvell DB-78x00-BP Development Board. config MACH_RD78X00_MASA bool "Marvell RD-78x00-mASA Reference Design" help Say 'Y' here if you want your kernel to support the Marvell RD-78x00-mASA Reference Design. config MACH_TERASTATION_WXL bool "Buffalo WLX (Terastation Duo) NAS" help Say 'Y' here if you want your kernel to support the Buffalo WXL Nas. endmenu endif if ARCH_OMAP2PLUS menu "TI OMAP2/3/4 Specific Features" config ARCH_OMAP2PLUS_TYPICAL bool "Typical OMAP configuration" default y select AEABI select REGULATOR select PM select PM_RUNTIME select VFP select NEON if ARCH_OMAP3 || ARCH_OMAP4 select SERIAL_OMAP select SERIAL_OMAP_CONSOLE select I2C select I2C_OMAP select MFD_SUPPORT select MENELAUS if ARCH_OMAP2 select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4 select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4 help Compile a kernel suitable for booting most boards config ARCH_OMAP2 bool "TI OMAP2" depends on ARCH_OMAP2PLUS default y select CPU_V6 config ARCH_OMAP3 bool "TI OMAP3" depends on ARCH_OMAP2PLUS default y select CPU_V7 select USB_ARCH_HAS_EHCI select ARM_L1_CACHE_SHIFT_6 if !ARCH_OMAP4 select ARCH_HAS_OPP select PM_OPP if PM config ARCH_OMAP4 bool "TI OMAP4" default y depends on ARCH_OMAP2PLUS select CPU_V7 select ARM_GIC select LOCAL_TIMERS if SMP select PL310_ERRATA_588369 select PL310_ERRATA_727915 select ARM_ERRATA_720789 select ARCH_HAS_OPP select PM_OPP if PM select USB_ARCH_HAS_EHCI comment "OMAP Core Type" depends on ARCH_OMAP2 config SOC_OMAP2420 bool "OMAP2420 support" depends on ARCH_OMAP2 default y select OMAP_DM_TIMER select ARCH_OMAP_OTG config SOC_OMAP2430 bool "OMAP2430 support" depends on ARCH_OMAP2 default y select ARCH_OMAP_OTG config SOC_OMAP3430 bool "OMAP3430 support" depends on ARCH_OMAP3 default y select ARCH_OMAP_OTG config SOC_OMAPTI816X bool "TI816X support" depends on ARCH_OMAP3 default y config OMAP_PACKAGE_ZAF bool config OMAP_PACKAGE_ZAC bool config OMAP_PACKAGE_CBC bool config OMAP_PACKAGE_CBB bool config OMAP_PACKAGE_CUS bool config OMAP_PACKAGE_CBP bool config OMAP_PACKAGE_CBL bool config OMAP_PACKAGE_CBS bool comment "OMAP Board Type" depends on ARCH_OMAP2PLUS config MACH_OMAP_GENERIC bool "Generic OMAP board" depends on ARCH_OMAP2 default y config MACH_OMAP2_TUSB6010 bool depends on ARCH_OMAP2 && SOC_OMAP2420 default y if MACH_NOKIA_N8X0 config MACH_OMAP_H4 bool "OMAP 2420 H4 board" depends on SOC_OMAP2420 default y select OMAP_PACKAGE_ZAF select OMAP_DEBUG_DEVICES config MACH_OMAP_APOLLON bool "OMAP 2420 Apollon board" depends on SOC_OMAP2420 default y select OMAP_PACKAGE_ZAC config MACH_OMAP_2430SDP bool "OMAP 2430 SDP board" depends on SOC_OMAP2430 default y select OMAP_PACKAGE_ZAC config MACH_OMAP3_BEAGLE bool "OMAP3 BEAGLE board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_DEVKIT8000 bool "DEVKIT8000 board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CUS config MACH_OMAP_LDP bool "OMAP3 LDP board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_OMAP3530_LV_SOM bool "OMAP3 Logic 3530 LV SOM board" depends on ARCH_OMAP3 select OMAP_PACKAGE_CBB default y help Support for the LogicPD OMAP3530 SOM Development kit for full description please see the products webpage at http://www.logicpd.com/products/development-kits/texas-instruments-zoom%E2%84%A2-omap35x-development-kit config MACH_OMAP3_TORPEDO bool "OMAP3 Logic 35x Torpedo board" depends on ARCH_OMAP3 select OMAP_PACKAGE_CBB default y help Support for the LogicPD OMAP35x Torpedo Development kit for full description please see the products webpage at http://www.logicpd.com/products/development-kits/zoom-omap35x-torpedo-development-kit config MACH_OVERO bool "Gumstix Overo board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_OMAP3EVM bool "OMAP 3530 EVM board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_OMAP3517EVM bool "OMAP3517/ AM3517 EVM board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_CRANEBOARD bool "AM3517/05 CRANE board" depends on ARCH_OMAP3 select OMAP_PACKAGE_CBB config MACH_OMAP3_PANDORA bool "OMAP3 Pandora" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB select REGULATOR_FIXED_VOLTAGE config MACH_OMAP3_TOUCHBOOK bool "OMAP3 Touch Book" depends on ARCH_OMAP3 default y select BACKLIGHT_CLASS_DEVICE config MACH_OMAP_3430SDP bool "OMAP 3430 SDP board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_NOKIA_N800 bool config MACH_NOKIA_N810 bool config MACH_NOKIA_N810_WIMAX bool config MACH_NOKIA_N8X0 bool "Nokia N800/N810" depends on SOC_OMAP2420 default y select OMAP_PACKAGE_ZAC select MACH_NOKIA_N800 select MACH_NOKIA_N810 select MACH_NOKIA_N810_WIMAX config MACH_NOKIA_RM680 bool "Nokia RM-680 board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_NOKIA_RX51 bool "Nokia RX-51 board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_OMAP_ZOOM2 bool "OMAP3 Zoom2 board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB select SERIAL_8250 select SERIAL_CORE_CONSOLE select SERIAL_8250_CONSOLE select REGULATOR_FIXED_VOLTAGE config MACH_OMAP_ZOOM3 bool "OMAP3630 Zoom3 board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBP select SERIAL_8250 select SERIAL_CORE_CONSOLE select SERIAL_8250_CONSOLE select REGULATOR_FIXED_VOLTAGE config MACH_CM_T35 bool "CompuLab CM-T35 module" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CUS config MACH_CM_T3517 bool "CompuLab CM-T3517 module" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_IGEP0020 bool "IGEP v2 board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_IGEP0030 bool "IGEP OMAP3 module" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBB config MACH_SBC3530 bool "OMAP3 SBC STALKER board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CUS config MACH_OMAP_3630SDP bool "OMAP3630 SDP board" depends on ARCH_OMAP3 default y select OMAP_PACKAGE_CBP config MACH_TI8168EVM bool "TI8168 Evaluation Module" depends on SOC_OMAPTI816X default y config MACH_OMAP_4430SDP bool "OMAP 4430 SDP board" default y depends on ARCH_OMAP4 select OMAP_PACKAGE_CBL select OMAP_PACKAGE_CBS select REGULATOR_FIXED_VOLTAGE config MACH_OMAP4_PANDA bool "OMAP4 Panda Board" default y depends on ARCH_OMAP4 select OMAP_PACKAGE_CBL select OMAP_PACKAGE_CBS select REGULATOR_FIXED_VOLTAGE config OMAP3_EMU bool "OMAP3 debugging peripherals" depends on ARCH_OMAP3 select OC_ETM help Say Y here to enable debugging hardware of omap3 config OMAP3_SDRC_AC_TIMING bool "Enable SDRC AC timing register changes" depends on ARCH_OMAP3 default n help If you know that none of your system initiators will attempt to access SDRAM during CORE DVFS, select Y here. This should boost SDRAM performance at lower CORE OPPs. There are relatively few users who will wish to say yes at this point - almost everyone will wish to say no. Selecting yes without understanding what is going on could result in system crashes; endmenu endif if ARCH_NOMADIK menu "Nomadik boards" config MACH_NOMADIK_8815NHK bool "ST 8815 Nomadik Hardware Kit (evaluation board)" select NOMADIK_8815 select HAS_MTU select NOMADIK_GPIO endmenu config NOMADIK_8815 bool config I2C_BITBANG_8815NHK tristate "Driver for bit-bang busses found on the 8815 NHK" depends on I2C && MACH_NOMADIK_8815NHK select I2C_ALGOBIT default y endif if ARCH_MSM choice prompt "Qualcomm MSM SoC Type" default ARCH_MSM7X00A config ARCH_MSM7X00A bool "MSM7x00A / MSM7x01A" select MACH_TROUT if !MACH_HALIBUT select ARCH_MSM_ARM11 select MSM_SMD select MSM_SMD_PKG3 select CPU_V6 select MSM_PROC_COMM select HAS_MSM_DEBUG_UART_PHYS config ARCH_MSM7X30 bool "MSM7x30" select MACH_MSM7X30_SURF # if ! select ARCH_MSM_SCORPION select MSM_SMD select MSM_VIC select CPU_V7 select MSM_GPIOMUX select MSM_PROC_COMM select HAS_MSM_DEBUG_UART_PHYS config ARCH_QSD8X50 bool "QSD8X50" select MACH_QSD8X50_SURF if !MACH_QSD8X50A_ST1_5 select ARCH_MSM_SCORPION select MSM_SMD select MSM_VIC select CPU_V7 select MSM_GPIOMUX select MSM_PROC_COMM select HAS_MSM_DEBUG_UART_PHYS config ARCH_MSM8X60 bool "MSM8X60" select MACH_MSM8X60_SURF if (!MACH_MSM8X60_RUMI3 && !MACH_MSM8X60_SIM \ && !MACH_MSM8X60_FFA) select ARCH_MSM_SCORPIONMP select ARM_GIC select CPU_V7 select MSM_V2_TLMM select MSM_GPIOMUX select MSM_SCM if SMP config ARCH_MSM8960 bool "MSM8960" select ARCH_MSM_SCORPIONMP select MACH_MSM8960_SIM if (!MACH_MSM8960_RUMI3) select ARM_GIC select CPU_V7 select MSM_V2_TLMM select MSM_GPIOMUX select MSM_SCM if SMP endchoice config MSM_SOC_REV_A bool config ARCH_MSM_SCORPIONMP bool config ARCH_MSM_ARM11 bool config ARCH_MSM_SCORPION bool config HAS_MSM_DEBUG_UART_PHYS bool config MSM_VIC bool menu "Qualcomm MSM Board Type" config MACH_HALIBUT depends on ARCH_MSM depends on ARCH_MSM7X00A bool "Halibut Board (QCT SURF7201A)" help Support for the Qualcomm SURF7201A eval board. config MACH_TROUT depends on ARCH_MSM depends on ARCH_MSM7X00A bool "HTC Dream (aka trout)" help Support for the HTC Dream, T-Mobile G1, Android ADP1 devices. config MACH_MSM7X30_SURF depends on ARCH_MSM7X30 bool "MSM7x30 SURF" help Support for the Qualcomm MSM7x30 SURF eval board. config MACH_QSD8X50_SURF depends on ARCH_QSD8X50 bool "QSD8x50 SURF" help Support for the Qualcomm QSD8x50 SURF eval board. config MACH_QSD8X50A_ST1_5 depends on ARCH_QSD8X50 select MSM_SOC_REV_A bool "QSD8x50A ST1.5" help Support for the Qualcomm ST1.5. config MACH_MSM8X60_RUMI3 depends on ARCH_MSM8X60 bool "MSM8x60 RUMI3" help Support for the Qualcomm MSM8x60 RUMI3 emulator. config MACH_MSM8X60_SURF depends on ARCH_MSM8X60 bool "MSM8x60 SURF" help Support for the Qualcomm MSM8x60 SURF eval board. config MACH_MSM8X60_SIM depends on ARCH_MSM8X60 bool "MSM8x60 Simulator" help Support for the Qualcomm MSM8x60 simulator. config MACH_MSM8X60_FFA depends on ARCH_MSM8X60 bool "MSM8x60 FFA" help Support for the Qualcomm MSM8x60 FFA eval board. config MACH_MSM8960_SIM depends on ARCH_MSM8960 bool "MSM8960 Simulator" help Support for the Qualcomm MSM8960 simulator. config MACH_MSM8960_RUMI3 depends on ARCH_MSM8960 bool "MSM8960 RUMI3" help Support for the Qualcomm MSM8960 RUMI3 emulator. endmenu config MSM_IOMMU bool "MSM IOMMU Support" depends on ARCH_MSM8X60 || ARCH_MSM8960 select IOMMU_API default n help Support for the IOMMUs found on certain Qualcomm SOCs. These IOMMUs allow virtualization of the address space used by most cores within the multimedia subsystem. If unsure, say N here. config IOMMU_PGTABLES_L2 def_bool y depends on MSM_IOMMU && MMU && SMP && CPU_DCACHE_DISABLE=n config MSM_DEBUG_UART int default 1 if MSM_DEBUG_UART1 default 2 if MSM_DEBUG_UART2 default 3 if MSM_DEBUG_UART3 if HAS_MSM_DEBUG_UART_PHYS choice prompt "Debug UART" default MSM_DEBUG_UART_NONE config MSM_DEBUG_UART_NONE bool "None" config MSM_DEBUG_UART1 bool "UART1" config MSM_DEBUG_UART2 bool "UART2" config MSM_DEBUG_UART3 bool "UART3" endchoice endif config MSM_SMD_PKG3 bool config MSM_PROC_COMM bool config MSM_SMD bool config MSM_GPIOMUX bool config MSM_V2_TLMM bool config IOMMU_API bool config MSM_SCM bool endif if ARCH_TCC_926 menu "Telechips ARM926-based CPUs" choice prompt "Telechips CPU type:" default ARCH_TCC8K config ARCH_TCC8K bool TCC8000 select USB_ARCH_HAS_OHCI help Support for Telechips TCC8000 systems endchoice source "arch/arm/mach-tcc8k/Kconfig" endmenu endif if ARCH_NS9XXX menu "NS9xxx Implementations" config NS9XXX_HAVE_SERIAL8250 bool config PROCESSOR_NS9360 bool config MODULE_CC9P9360 bool select PROCESSOR_NS9360 config BOARD_A9M9750DEV select NS9XXX_HAVE_SERIAL8250 bool config BOARD_JSCC9P9360 bool config MACH_CC9P9360DEV bool "ConnectCore 9P 9360 on an A9M9750 Devboard" select MODULE_CC9P9360 select BOARD_A9M9750DEV help Say Y here if you are using the Digi ConnectCore 9P 9360 on an A9M9750 Development Board. config MACH_CC9P9360JS bool "ConnectCore 9P 9360 on a JSCC9P9360 Devboard" select MODULE_CC9P9360 select BOARD_JSCC9P9360 help Say Y here if you are using the Digi ConnectCore 9P 9360 on an JSCC9P9360 Development Board. endmenu endif # We keep common IP's here for Nomadik and other similar # familiy of processors from ST-Ericsson. At the moment we have # just MTU, others to follow soon. config PLAT_NOMADIK bool depends on ARCH_NOMADIK || ARCH_U8500 default y help Common platform code for Nomadik and other ST-Ericsson platforms. if PLAT_NOMADIK config HAS_MTU bool select HAVE_SCHED_CLOCK help Support for Multi Timer Unit. MTU provides access to multiple interrupt generating programmable 32-bit free running decrementing counters. config NOMADIK_GPIO bool help Support for the Nomadik GPIO controller. endif # Copyright 2007 Simtec Electronics # # Licensed under GPLv2 config CPU_S3C2440 bool select CPU_ARM920T select S3C_GPIO_PULL_UP select S3C2410_CLOCK select S3C2410_PM if PM select S3C2410_GPIO select S3C2440_DMA if S3C2410_DMA select CPU_S3C244X select CPU_LLSERIAL_S3C2440 help Support for S3C2440 Samsung Mobile CPU based systems. config CPU_S3C2442 bool select CPU_ARM920T select S3C_GPIO_PULL_DOWN select S3C2410_CLOCK select S3C2410_GPIO select S3C2410_PM if PM select CPU_S3C244X select CPU_LLSERIAL_S3C2440 help Support for S3C2442 Samsung Mobile CPU based systems. config CPU_S3C244X bool depends on CPU_S3C2440 || CPU_S3C2442 help Support for S3C2440 and S3C2442 Samsung Mobile CPU based systems. config S3C2440_CPUFREQ bool "S3C2440/S3C2442 CPU Frequency scaling support" depends on CPU_FREQ_S3C24XX && (CPU_S3C2440 || CPU_S3C2442) select S3C2410_CPUFREQ_UTILS default y help CPU Frequency scaling support for S3C2440 and S3C2442 SoC CPUs. config S3C2440_XTAL_12000000 bool help Indicate that the build needs to support 12MHz system crystal. config S3C2440_XTAL_16934400 bool help Indicate that the build needs to support 16.9344MHz system crystal. config S3C2440_PLL_12000000 bool depends on S3C2440_CPUFREQ && S3C2440_XTAL_12000000 default y if CPU_FREQ_S3C24XX_PLL help PLL tables for S3C2440 or S3C2442 CPUs with 12MHz crystals. config S3C2440_PLL_16934400 bool depends on S3C2440_CPUFREQ && S3C2440_XTAL_16934400 default y if CPU_FREQ_S3C24XX_PLL help PLL tables for S3C2440 or S3C2442 CPUs with 16.934MHz crystals. config S3C2440_DMA bool depends on CPU_S3C2440 help Support for S3C2440 specific DMA code5A menu "S3C2440 and S3C2442 Machines" config MACH_ANUBIS bool "Simtec Electronics ANUBIS" select CPU_S3C2440 select S3C24XX_DCLK select PM_SIMTEC if PM select HAVE_PATA_PLATFORM select S3C24XX_GPIO_EXTRA64 select S3C2440_XTAL_12000000 select S3C_DEV_USB_HOST help Say Y here if you are using the Simtec Electronics ANUBIS development system config MACH_NEO1973_GTA02 bool "Openmoko GTA02 / Freerunner phone" select CPU_S3C2442 select S3C24XX_GPIO_EXTRA64 select MFD_PCF50633 select GPIO_PCF50633 select I2C select POWER_SUPPLY select MACH_NEO1973 select S3C2410_PWM select S3C_DEV_USB_HOST select SPARSE_IRQ select FIQ help Say Y here if you are using the Openmoko GTA02 / Freerunner GSM Phone config MACH_OSIRIS bool "Simtec IM2440D20 (OSIRIS) module" select CPU_S3C2440 select S3C24XX_DCLK select PM_SIMTEC if PM select S3C24XX_GPIO_EXTRA128 select S3C2440_XTAL_12000000 select S3C2410_IOTIMING if S3C2440_CPUFREQ select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using the Simtec IM2440D20 module, also known as the Osiris. config MACH_OSIRIS_DVS tristate "Simtec IM2440D20 (OSIRIS) Dynamic Voltage Scaling driver" depends on MACH_OSIRIS select TPS65010 help Say Y/M here if you want to have dynamic voltage scaling support on the Simtec IM2440D20 (OSIRIS) module via the TPS65011. The DVS driver alters the voltage supplied to the ARM core depending on the frequency it is running at. The driver itself does not do any of the frequency alteration, which is left up to the cpufreq driver. config MACH_RX3715 bool "HP iPAQ rx3715" select CPU_S3C2440 select S3C2440_XTAL_16934400 select PM_H1940 if PM select S3C_DEV_NAND help Say Y here if you are using the HP iPAQ rx3715. config ARCH_S3C2440 bool "SMDK2440" select CPU_S3C2440 select S3C2440_XTAL_16934400 select MACH_SMDK select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using the SMDK2440. config MACH_NEXCODER_2440 bool "NexVision NEXCODER 2440 Light Board" select CPU_S3C2440 select S3C2440_XTAL_12000000 select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board config SMDK2440_CPU2440 bool "SMDK2440 with S3C2440 CPU module" default y if ARCH_S3C2440 select S3C2440_XTAL_16934400 select CPU_S3C2440 config SMDK2440_CPU2442 bool "SMDM2440 with S3C2442 CPU module" select CPU_S3C2442 config MACH_AT2440EVB bool "Avantech AT2440EVB development board" select CPU_S3C2440 select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using the AT2440EVB development board config MACH_MINI2440 bool "MINI2440 development board" select CPU_S3C2440 select EEPROM_AT24 select NEW_LEDS select LEDS_CLASS select LEDS_TRIGGER select LEDS_TRIGGER_BACKLIGHT select S3C_DEV_NAND select S3C_DEV_USB_HOST help Say Y here to select support for the MINI2440. Is a 10cm x 10cm board available via various sources. It can come with a 3.5" or 7" touch LCD. config MACH_RX1950 bool "HP iPAQ rx1950" select CPU_S3C2442 select S3C24XX_DCLK select PM_H1940 if PM select I2C select S3C2410_PWM select S3C_DEV_NAND select S3C2410_IOTIMING if S3C2440_CPUFREQ select S3C2440_XTAL_16934400 help Say Y here if you're using HP iPAQ rx1950 endmenu if ARCH_DAVINCI config AINTC bool config CP_INTC bool config ARCH_DAVINCI_DMx select CPU_ARM926T bool menu "TI DaVinci Implementations" comment "DaVinci Core Type" config ARCH_DAVINCI_DM644x bool "DaVinci 644x based system" select AINTC select ARCH_DAVINCI_DMx config ARCH_DAVINCI_DM355 bool "DaVinci 355 based system" select AINTC select ARCH_DAVINCI_DMx config ARCH_DAVINCI_DM646x bool "DaVinci 646x based system" select AINTC select ARCH_DAVINCI_DMx config ARCH_DAVINCI_DA830 bool "DA830/OMAP-L137/AM17x based system" select CP_INTC select ARCH_DAVINCI_DA8XX select CPU_DCACHE_WRITETHROUGH # needed on silicon revs 1.0, 1.1 config ARCH_DAVINCI_DA850 bool "DA850/OMAP-L138/AM18x based system" select CP_INTC select ARCH_DAVINCI_DA8XX select ARCH_HAS_CPUFREQ config ARCH_DAVINCI_DA8XX select CPU_ARM926T bool config ARCH_DAVINCI_DM365 bool "DaVinci 365 based system" select AINTC select ARCH_DAVINCI_DMx config ARCH_DAVINCI_TNETV107X select CPU_V6 select CP_INTC bool "TNETV107X based system" comment "DaVinci Board Type" config MACH_DAVINCI_EVM bool "TI DM644x EVM" default ARCH_DAVINCI_DM644x depends on ARCH_DAVINCI_DM644x select MISC_DEVICES select EEPROM_AT24 select I2C help Configure this option to specify the whether the board used for development is a DM644x EVM config MACH_SFFSDR bool "Lyrtech SFFSDR" depends on ARCH_DAVINCI_DM644x select MISC_DEVICES select EEPROM_AT24 select I2C help Say Y here to select the Lyrtech Small Form Factor Software Defined Radio (SFFSDR) board. config MACH_NEUROS_OSD2 bool "Neuros OSD2 Open Television Set Top Box" depends on ARCH_DAVINCI_DM644x help Configure this option to specify the whether the board used for development is a Neuros OSD2 Open Set Top Box. config MACH_DAVINCI_DM355_EVM bool "TI DM355 EVM" default ARCH_DAVINCI_DM355 depends on ARCH_DAVINCI_DM355 help Configure this option to specify the whether the board used for development is a DM355 EVM config MACH_DM355_LEOPARD bool "DM355 Leopard board" depends on ARCH_DAVINCI_DM355 help Configure this option to specify the whether the board used for development is a DM355 Leopard board. config MACH_DAVINCI_DM6467_EVM bool "TI DM6467 EVM" default ARCH_DAVINCI_DM646x depends on ARCH_DAVINCI_DM646x select MACH_DAVINCI_DM6467TEVM select MISC_DEVICES select EEPROM_AT24 select I2C help Configure this option to specify the whether the board used for development is a DM6467 EVM config MACH_DAVINCI_DM6467TEVM bool config MACH_DAVINCI_DM365_EVM bool "TI DM365 EVM" default ARCH_DAVINCI_DM365 depends on ARCH_DAVINCI_DM365 select MISC_DEVICES select EEPROM_AT24 select I2C help Configure this option to specify whether the board used for development is a DM365 EVM config MACH_DAVINCI_DA830_EVM bool "TI DA830/OMAP-L137/AM17x Reference Platform" default ARCH_DAVINCI_DA830 depends on ARCH_DAVINCI_DA830 select GPIO_PCF857X select MISC_DEVICES select EEPROM_AT24 select I2C help Say Y here to select the TI DA830/OMAP-L137/AM17x Evaluation Module. choice prompt "Select DA830/OMAP-L137/AM17x UI board peripheral" depends on MACH_DAVINCI_DA830_EVM help The presence of UI card on the DA830/OMAP-L137/AM17x EVM is detected automatically based on successful probe of the I2C based GPIO expander on that board. This option selected in this menu has an effect only in case of a successful UI card detection. config DA830_UI_LCD bool "LCD" help Say Y here to use the LCD as a framebuffer or simple character display. config DA830_UI_NAND bool "NAND flash" help Say Y here to use the NAND flash. Do not forget to setup the switch correctly. endchoice config MACH_DAVINCI_DA850_EVM bool "TI DA850/OMAP-L138/AM18x Reference Platform" default ARCH_DAVINCI_DA850 depends on ARCH_DAVINCI_DA850 help Say Y here to select the TI DA850/OMAP-L138/AM18x Evaluation Module. choice prompt "Select peripherals connected to expander on UI board" depends on MACH_DAVINCI_DA850_EVM help The presence of User Interface (UI) card on the DA850/OMAP-L138/AM18x EVM is detected automatically based on successful probe of the I2C based GPIO expander on that card. This option selected in this menu has an effect only in case of a successful UI card detection. config DA850_UI_NONE bool "No peripheral is enabled" help Say Y if you do not want to enable any of the peripherals connected to TCA6416 expander on DA850/OMAP-L138/AM18x EVM UI card config DA850_UI_RMII bool "RMII Ethernet PHY" help Say Y if you want to use the RMII PHY on the DA850/OMAP-L138/AM18x EVM. This PHY is found on the UI daughter card that is supplied with the EVM. NOTE: Please take care while choosing this option, MII PHY will not be functional if RMII mode is selected. endchoice config GPIO_PCA953X default MACH_DAVINCI_DA850_EVM config KEYBOARD_GPIO_POLLED default MACH_DAVINCI_DA850_EVM config MACH_TNETV107X bool "TI TNETV107X Reference Platform" default ARCH_DAVINCI_TNETV107X depends on ARCH_DAVINCI_TNETV107X help Say Y here to select the TI TNETV107X Evaluation Module. config MACH_MITYOMAPL138 bool "Critical Link MityDSP-L138/MityARM-1808 SoM" depends on ARCH_DAVINCI_DA850 select MISC_DEVICES select EEPROM_AT24 select I2C help Say Y here to select the Critical Link MityDSP-L138/MityARM-1808 System on Module. Information on this SoM may be found at http://www.mitydsp.com config MACH_OMAPL138_HAWKBOARD bool "TI AM1808 / OMAPL-138 Hawkboard platform" depends on ARCH_DAVINCI_DA850 help Say Y here to select the TI AM1808 / OMAPL-138 Hawkboard platform . Information of this board may be found at http://www.hawkboard.org/ config DAVINCI_MUX bool "DAVINCI multiplexing support" depends on ARCH_DAVINCI default y help Pin multiplexing support for DAVINCI boards. If your bootloader sets the multiplexing correctly, say N. Otherwise, or if unsure, say Y. config DAVINCI_MUX_DEBUG bool "Multiplexing debug output" depends on DAVINCI_MUX help Makes the multiplexing functions print out a lot of debug info. This is useful if you want to find out the correct values of the multiplexing registers. config DAVINCI_MUX_WARNINGS bool "Warn about pins the bootloader didn't set up" depends on DAVINCI_MUX help Choose Y here to warn whenever driver initialization logic needs to change the pin multiplexing setup. When there are no warnings printed, it's safe to deselect DAVINCI_MUX for your product. config DAVINCI_RESET_CLOCKS bool "Reset unused clocks during boot" depends on ARCH_DAVINCI help Say Y if you want to reset unused clocks during boot. This option saves power, but assumes all drivers are using the clock framework. Broken drivers that do not yet use clock framework may not work with this option. If you are booting from another operating system, you probably do not want this option enabled until your device drivers work properly. endmenu endif if ARCH_MXS source "arch/arm/mach-mxs/devices/Kconfig" config MXS_OCOTP bool config SOC_IMX23 bool select CPU_ARM926T select HAVE_PWM config SOC_IMX28 bool select CPU_ARM926T select HAVE_PWM comment "MXS platforms:" config MACH_MX23EVK bool "Support MX23EVK Platform" select SOC_IMX23 select MXS_HAVE_AMBA_DUART select MXS_HAVE_PLATFORM_AUART select MXS_HAVE_PLATFORM_MXS_MMC select MXS_HAVE_PLATFORM_MXSFB default y help Include support for MX23EVK platform. This includes specific configurations for the board and its peripherals. config MACH_MX28EVK bool "Support MX28EVK Platform" select SOC_IMX28 select MXS_HAVE_AMBA_DUART select MXS_HAVE_PLATFORM_AUART select MXS_HAVE_PLATFORM_FEC select MXS_HAVE_PLATFORM_FLEXCAN select MXS_HAVE_PLATFORM_MXS_MMC select MXS_HAVE_PLATFORM_MXSFB select MXS_OCOTP default y help Include support for MX28EVK platform. This includes specific configurations for the board and its peripherals. config MODULE_TX28 bool select SOC_IMX28 select MXS_HAVE_AMBA_DUART select MXS_HAVE_PLATFORM_AUART select MXS_HAVE_PLATFORM_FEC select MXS_HAVE_PLATFORM_MXS_I2C select MXS_HAVE_PLATFORM_MXS_PWM config MACH_TX28 bool "Ka-Ro TX28 module" select MODULE_TX28 endif config MXS_HAVE_AMBA_DUART bool select ARM_AMBA config MXS_HAVE_PLATFORM_AUART bool config MXS_HAVE_PLATFORM_FEC bool config MXS_HAVE_PLATFORM_FLEXCAN select HAVE_CAN_FLEXCAN if CAN bool config MXS_HAVE_PLATFORM_MXS_I2C bool config MXS_HAVE_PLATFORM_MXS_MMC bool config MXS_HAVE_PLATFORM_MXS_PWM bool config MXS_HAVE_PLATFORM_MXSFB bool # Copyright 2007 Simtec Electronics # # Licensed under GPLv2 config CPU_S3C2412 bool depends on ARCH_S3C2410 select CPU_ARM926T select CPU_LLSERIAL_S3C2440 select S3C2412_PM if PM select S3C2412_DMA if S3C2410_DMA select S3C2410_GPIO help Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line config CPU_S3C2412_ONLY bool depends on ARCH_S3C2410 && !CPU_S3C2400 && !CPU_S3C2410 && \ !CPU_S3C2416 && !CPU_S3C2440 && !CPU_S3C2442 && \ !CPU_S3C2443 && CPU_S3C2412 default y if CPU_S3C2412 config S3C2412_DMA bool depends on CPU_S3C2412 help Internal config node for S3C2412 DMA support config S3C2412_PM bool select S3C2412_PM_SLEEP help Internal config node to apply S3C2412 power management config S3C2412_PM_SLEEP bool help Internal config node to apply sleep for S3C2412 power management. Can be selected by another SoCs with similar sleep procedure. # Note, the S3C2412 IOtiming support is in plat-s3c24xx config S3C2412_CPUFREQ bool depends on CPU_FREQ_S3C24XX && CPU_S3C2412 select S3C2412_IOTIMING default y help CPU Frequency scaling support for S3C2412 and S3C2413 SoC CPUs. menu "S3C2412 Machines" config MACH_JIVE bool "Logitech Jive" select CPU_S3C2412 select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using the Logitech Jive. config MACH_JIVE_SHOW_BOOTLOADER bool "Allow access to bootloader partitions in MTD (EXPERIMENTAL)" depends on MACH_JIVE && EXPERIMENTAL config MACH_SMDK2413 bool "SMDK2413" select CPU_S3C2412 select MACH_S3C2413 select MACH_SMDK select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using an SMDK2413 config MACH_S3C2413 bool help Internal node for S3C2413 version of SMDK2413, so that machine_is_s3c2413() will work when MACH_SMDK2413 is selected config MACH_SMDK2412 bool "SMDK2412" select MACH_SMDK2413 help Say Y here if you are using an SMDK2412 Note, this shares support with SMDK2413, so will automatically select MACH_SMDK2413. config MACH_VSTMS bool "VMSTMS" select CPU_S3C2412 select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using an VSTMS board endmenu if ARCH_ORION5X menu "Orion Implementations" config MACH_DB88F5281 bool "Marvell Orion-2 Development Board" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the Marvell Orion-2 (88F5281) Development Board config MACH_RD88F5182 bool "Marvell Orion-NAS Reference Design" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the Marvell Orion-NAS (88F5182) RD2 config MACH_KUROBOX_PRO bool "KuroBox Pro" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the KuroBox Pro platform. config MACH_DNS323 bool "D-Link DNS-323" select I2C_BOARDINFO select PHYLIB help Say 'Y' here if you want your kernel to support the D-Link DNS-323 platform. config MACH_TS209 bool "QNAP TS-109/TS-209" help Say 'Y' here if you want your kernel to support the QNAP TS-109/TS-209 platform. config MACH_TERASTATION_PRO2 bool "Buffalo Terastation Pro II/Live" help Say 'Y' here if you want your kernel to support the Buffalo Terastation Pro II/Live platform. config MACH_LINKSTATION_PRO bool "Buffalo Linkstation Pro/Live" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the Buffalo Linkstation Pro/Live platform. Both v1 and v2 devices are supported. config MACH_LINKSTATION_LSCHL bool "Buffalo Linkstation Live v3 (LS-CHL)" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the Buffalo Linkstation Live v3 (LS-CHL) platform. config MACH_LINKSTATION_MINI bool "Buffalo Linkstation Mini" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the Buffalo Linkstation Mini platform. config MACH_LINKSTATION_LS_HGL bool "Buffalo Linkstation LS-HGL" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the Buffalo Linkstation LS-HGL platform. config MACH_TS409 bool "QNAP TS-409" help Say 'Y' here if you want your kernel to support the QNAP TS-409 platform. config MACH_WRT350N_V2 bool "Linksys WRT350N v2" help Say 'Y' here if you want your kernel to support the Linksys WRT350N v2 platform. config MACH_TS78XX bool "Technologic Systems TS-78xx" select PM help Say 'Y' here if you want your kernel to support the Technologic Systems TS-78xx platform. config MACH_MV2120 bool "HP Media Vault mv2120" help Say 'Y' here if you want your kernel to support the HP Media Vault mv2120 or mv5100. config MACH_EDMINI_V2 bool "LaCie Ethernet Disk mini V2" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the LaCie Ethernet Disk mini V2. config MACH_D2NET bool "LaCie d2 Network" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the LaCie d2 Network NAS. config MACH_BIGDISK bool "LaCie Big Disk Network" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the LaCie Big Disk Network NAS. config MACH_NET2BIG bool "LaCie 2Big Network" select I2C_BOARDINFO help Say 'Y' here if you want your kernel to support the LaCie 2Big Network NAS. config MACH_MSS2 bool "Maxtor Shared Storage II" help Say 'Y' here if you want your kernel to support the Maxtor Shared Storage II platform. config MACH_WNR854T bool "Netgear WNR854T" help Say 'Y' here if you want your kernel to support the Netgear WNR854T platform. config MACH_RD88F5181L_GE bool "Marvell Orion-VoIP GE Reference Design" help Say 'Y' here if you want your kernel to support the Marvell Orion-VoIP GE (88F5181L) RD. config MACH_RD88F5181L_FXO bool "Marvell Orion-VoIP FXO Reference Design" help Say 'Y' here if you want your kernel to support the Marvell Orion-VoIP FXO (88F5181L) RD. config MACH_RD88F6183AP_GE bool "Marvell Orion-1-90 AP GE Reference Design" help Say 'Y' here if you want your kernel to support the Marvell Orion-1-90 (88F6183) AP GE RD. endmenu endif # arch/arm/plat-samsung/Kconfig # # Copyright 2009 Simtec Electronics # # Licensed under GPLv2 config PLAT_SAMSUNG bool depends on PLAT_S3C24XX || ARCH_S3C64XX || PLAT_S5P select NO_IOPORT default y help Base platform code for all Samsung SoC based systems if PLAT_SAMSUNG # boot configurations comment "Boot options" config S3C_BOOT_WATCHDOG bool "S3C Initialisation watchdog" depends on S3C2410_WATCHDOG help Say y to enable the watchdog during the kernel decompression stage. If the kernel fails to uncompress, then the watchdog will trigger a reset and the system should restart. config S3C_BOOT_ERROR_RESET bool "S3C Reboot on decompression error" help Say y here to use the watchdog to reset the system if the kernel decompressor detects an error during decompression. config S3C_BOOT_UART_FORCE_FIFO bool "Force UART FIFO on during boot process" default y help Say Y here to force the UART FIFOs on during the kernel uncompressor config S3C_LOWLEVEL_UART_PORT int "S3C UART to use for low-level messages" default 0 help Choice of which UART port to use for the low-level messages, such as the `Uncompressing...` at start time. The value of this configuration should be between zero and two. The port must have been initialised by the boot-loader before use. # clock options config SAMSUNG_CLKSRC bool help Select the clock code for the clksrc implementation used by newer systems such as the S3C64XX. # options for IRQ support config SAMSUNG_IRQ_VIC_TIMER bool help Internal configuration to build the VIC timer interrupt code. config SAMSUNG_IRQ_UART bool help Internal configuration to build the IRQ UART demux code. # options for gpio configuration support config SAMSUNG_GPIOLIB_4BIT bool help GPIOlib file contains the 4 bit modification functions for gpio configuration. GPIOlib shall be compiled only for S3C64XX and S5P series of processors. config S3C_GPIO_CFG_S3C24XX bool help Internal configuration to enable S3C24XX style GPIO configuration functions. config S3C_GPIO_CFG_S3C64XX bool help Internal configuration to enable S3C64XX style GPIO configuration functions. config S3C_GPIO_PULL_UPDOWN bool help Internal configuration to enable the correct GPIO pull helper config S3C_GPIO_PULL_S3C2443 bool select S3C_GPIO_PULL_UPDOWN help Internal configuration to enable the correct GPIO pull helper for S3C2443-style GPIO config S3C_GPIO_PULL_DOWN bool help Internal configuration to enable the correct GPIO pull helper config S3C_GPIO_PULL_UP bool help Internal configuration to enable the correct GPIO pull helper config S5P_GPIO_DRVSTR bool help Internal configuration to get and set correct GPIO driver strength helper config SAMSUNG_GPIO_EXTRA int "Number of additional GPIO pins" default 0 help Use additional GPIO space in addition to the GPIO's the SOC provides. This allows expanding the GPIO space for use with GPIO expanders. config S3C_GPIO_SPACE int "Space between gpio banks" default 0 help Add a number of spare GPIO entries between each bank for debugging purposes. This allows any problems where an counter overflows from one bank to another to be caught, at the expense of using a little more memory. config S3C_GPIO_TRACK bool help Internal configuration option to enable the s3c specific gpio chip tracking if the platform requires it. # ADC driver config S3C_ADC bool "ADC common driver support" help Core support for the ADC block found in the Samsung SoC systems for drivers such as the touchscreen and hwmon to use to share this resource. # device definitions to compile in config S3C_DEV_HSMMC bool help Compile in platform device definitions for HSMMC code config S3C_DEV_HSMMC1 bool help Compile in platform device definitions for HSMMC channel 1 config S3C_DEV_HSMMC2 bool help Compile in platform device definitions for HSMMC channel 2 config S3C_DEV_HSMMC3 bool help Compile in platform device definitions for HSMMC channel 3 config S3C_DEV_HWMON bool help Compile in platform device definitions for HWMON config S3C_DEV_I2C1 bool help Compile in platform device definitions for I2C channel 1 config S3C_DEV_I2C2 bool help Compile in platform device definitions for I2C channel 2 config S3C_DEV_I2C3 bool help Compile in platform device definition for I2C controller 3 config S3C_DEV_I2C4 bool help Compile in platform device definition for I2C controller 4 config S3C_DEV_I2C5 bool help Compile in platform device definition for I2C controller 5 config S3C_DEV_I2C6 bool help Compile in platform device definition for I2C controller 6 config S3C_DEV_I2C7 bool help Compile in platform device definition for I2C controller 7 config S3C_DEV_FB bool help Compile in platform device definition for framebuffer config S3C_DEV_USB_HOST bool help Compile in platform device definition for USB host. config S3C_DEV_USB_HSOTG bool help Compile in platform device definition for USB high-speed OtG config S3C_DEV_WDT bool default y if ARCH_S3C2410 help Complie in platform device definition for Watchdog Timer config S3C_DEV_NAND bool help Compile in platform device definition for NAND controller config S3C_DEV_ONENAND bool help Compile in platform device definition for OneNAND controller config S3C_DEV_RTC bool help Complie in platform device definition for RTC config SAMSUNG_DEV_ADC bool help Compile in platform device definition for ADC controller config SAMSUNG_DEV_IDE bool help Compile in platform device definitions for IDE config S3C64XX_DEV_SPI bool help Compile in platform device definitions for S3C64XX's type SPI controllers. config SAMSUNG_DEV_TS bool help Common in platform device definitions for touchscreen device config SAMSUNG_DEV_KEYPAD bool help Compile in platform device definitions for keypad config SAMSUNG_DEV_PWM bool default y if ARCH_S3C2410 help Compile in platform device definition for PWM Timer config S3C24XX_PWM bool "PWM device support" select HAVE_PWM help Support for exporting the PWM timer blocks via the pwm device system # DMA config S3C_DMA bool help Internal configuration for S3C DMA core config S3C_PL330_DMA bool select PL330 help S3C DMA API Driver for PL330 DMAC. comment "Power management" config SAMSUNG_PM_DEBUG bool "S3C2410 PM Suspend debug" depends on PM help Say Y here if you want verbose debugging from the PM Suspend and Resume code. See for more information. config S3C_PM_DEBUG_LED_SMDK bool "SMDK LED suspend/resume debugging" depends on PM && (MACH_SMDK6410) help Say Y here to enable the use of the SMDK LEDs on the baseboard for debugging of the state of the suspend and resume process. Note, this currently only works for S3C64XX based SMDK boards. config SAMSUNG_PM_CHECK bool "S3C2410 PM Suspend Memory CRC" depends on PM && CRC32 help Enable the PM code's memory area checksum over sleep. This option will generate CRCs of all blocks of memory, and store them before going to sleep. The blocks are then checked on resume for any errors. Note, this can take several seconds depending on memory size and CPU speed. See config SAMSUNG_PM_CHECK_CHUNKSIZE int "S3C2410 PM Suspend CRC Chunksize (KiB)" depends on PM && SAMSUNG_PM_CHECK default 64 help Set the chunksize in Kilobytes of the CRC for checking memory corruption over suspend and resume. A smaller value will mean that the CRC data block will take more memory, but wil identify any faults with better precision. See config SAMSUNG_WAKEMASK bool depends on PM help Compile support for wakeup-mask controls found on the S3C6400 and above. This code allows a set of interrupt to wakeup-mask mappings. See comment "Power Domain" config SAMSUNG_PD bool "Samsung Power Domain" depends on PM_RUNTIME help Say Y here if you want to control Power Domain by Runtime PM. endif choice prompt "Processor selection in BCMRING family of devices" depends on ARCH_BCMRING default ARCH_BCM11107 config ARCH_FPGA11107 bool "FPGA11107" config ARCH_BCM11107 bool "BCM11107" endchoice menu "BCMRING Options" depends on ARCH_BCMRING config BCM_ZRELADDR hex "Compressed ZREL ADDR" endmenu # source "drivers/char/bcmring/Kconfig" if ARCH_AT91 config HAVE_AT91_DATAFLASH_CARD bool config HAVE_NAND_ATMEL_BUSWIDTH_16 bool config HAVE_AT91_USART3 bool config HAVE_AT91_USART4 bool config HAVE_AT91_USART5 bool menu "Atmel AT91 System-on-Chip" choice prompt "Atmel AT91 Processor" config ARCH_AT91RM9200 bool "AT91RM9200" select CPU_ARM920T select GENERIC_CLOCKEVENTS select HAVE_AT91_USART3 config ARCH_AT91SAM9260 bool "AT91SAM9260 or AT91SAM9XE" select CPU_ARM926T select GENERIC_CLOCKEVENTS select HAVE_AT91_USART3 select HAVE_AT91_USART4 select HAVE_AT91_USART5 select HAVE_NET_MACB config ARCH_AT91SAM9261 bool "AT91SAM9261" select CPU_ARM926T select GENERIC_CLOCKEVENTS select HAVE_FB_ATMEL config ARCH_AT91SAM9G10 bool "AT91SAM9G10" select CPU_ARM926T select GENERIC_CLOCKEVENTS select HAVE_FB_ATMEL config ARCH_AT91SAM9263 bool "AT91SAM9263" select CPU_ARM926T select GENERIC_CLOCKEVENTS select HAVE_FB_ATMEL select HAVE_NET_MACB config ARCH_AT91SAM9RL bool "AT91SAM9RL" select CPU_ARM926T select GENERIC_CLOCKEVENTS select HAVE_AT91_USART3 select HAVE_FB_ATMEL config ARCH_AT91SAM9G20 bool "AT91SAM9G20" select CPU_ARM926T select GENERIC_CLOCKEVENTS select HAVE_AT91_USART3 select HAVE_AT91_USART4 select HAVE_AT91_USART5 select HAVE_NET_MACB config ARCH_AT91SAM9G45 bool "AT91SAM9G45" select CPU_ARM926T select GENERIC_CLOCKEVENTS select HAVE_AT91_USART3 select HAVE_FB_ATMEL select HAVE_NET_MACB config ARCH_AT91CAP9 bool "AT91CAP9" select CPU_ARM926T select GENERIC_CLOCKEVENTS select HAVE_FB_ATMEL select HAVE_NET_MACB config ARCH_AT572D940HF bool "AT572D940HF" select CPU_ARM926T select GENERIC_CLOCKEVENTS config ARCH_AT91X40 bool "AT91x40" select ARCH_USES_GETTIMEOFFSET endchoice config AT91_PMC_UNIT bool default !ARCH_AT91X40 # ---------------------------------------------------------- if ARCH_AT91RM9200 comment "AT91RM9200 Board Type" config MACH_ONEARM bool "Ajeco 1ARM Single Board Computer" help Select this if you are using Ajeco's 1ARM Single Board Computer. config ARCH_AT91RM9200DK bool "Atmel AT91RM9200-DK Development board" select HAVE_AT91_DATAFLASH_CARD help Select this if you are using Atmel's AT91RM9200-DK Development board. (Discontinued) config MACH_AT91RM9200EK bool "Atmel AT91RM9200-EK Evaluation Kit" select HAVE_AT91_DATAFLASH_CARD help Select this if you are using Atmel's AT91RM9200-EK Evaluation Kit. config MACH_CSB337 bool "Cogent CSB337" help Select this if you are using Cogent's CSB337 board. config MACH_CSB637 bool "Cogent CSB637" help Select this if you are using Cogent's CSB637 board. config MACH_CARMEVA bool "Conitec ARM&EVA" help Select this if you are using Conitec's AT91RM9200-MCU-Module. config MACH_ATEB9200 bool "Embest ATEB9200" help Select this if you are using Embest's ATEB9200 board. config MACH_KB9200 bool "KwikByte KB920x" help Select this if you are using KwikByte's KB920x board. config MACH_PICOTUX2XX bool "picotux 200" help Select this if you are using a picotux 200. config MACH_KAFA bool "Sperry-Sun KAFA board" help Select this if you are using Sperry-Sun's KAFA board. config MACH_ECBAT91 bool "emQbit ECB_AT91 SBC" select HAVE_AT91_DATAFLASH_CARD help Select this if you are using emQbit's ECB_AT91 board. config MACH_YL9200 bool "ucDragon YL-9200" help Select this if you are using the ucDragon YL-9200 board. config MACH_CPUAT91 bool "Eukrea CPUAT91" help Select this if you are using the Eukrea Electromatique's CPUAT91 board . config MACH_ECO920 bool "eco920" help Select this if you are using the eco920 board endif # ---------------------------------------------------------- if ARCH_AT91SAM9260 comment "AT91SAM9260 Variants" config ARCH_AT91SAM9260_SAM9XE bool "AT91SAM9XE" help Select this if you are using Atmel's AT91SAM9XE System-on-Chip. They are basically AT91SAM9260s with various sizes of embedded Flash. comment "AT91SAM9260 / AT91SAM9XE Board Type" config MACH_AT91SAM9260EK bool "Atmel AT91SAM9260-EK / AT91SAM9XE Evaluation Kit" select HAVE_AT91_DATAFLASH_CARD select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using Atmel's AT91SAM9260-EK or AT91SAM9XE Evaluation Kit config MACH_CAM60 bool "KwikByte KB9260 (CAM60) board" help Select this if you are using KwikByte's KB9260 (CAM60) board based on the Atmel AT91SAM9260. config MACH_SAM9_L9260 bool "Olimex SAM9-L9260 board" select HAVE_AT91_DATAFLASH_CARD help Select this if you are using Olimex's SAM9-L9260 board based on the Atmel AT91SAM9260. config MACH_AFEB9260 bool "Custom afeb9260 board v1" help Select this if you are using custom afeb9260 board based on open hardware design. Select this for revision 1 of the board. config MACH_USB_A9260 bool "CALAO USB-A9260" help Select this if you are using a Calao Systems USB-A9260. config MACH_QIL_A9260 bool "CALAO QIL-A9260 board" help Select this if you are using a Calao Systems QIL-A9260 Board. config MACH_CPU9260 bool "Eukrea CPU9260 board" help Select this if you are using a Eukrea Electromatique's CPU9260 Board config MACH_FLEXIBITY bool "Flexibity Connect board" help Select this if you are using Flexibity Connect board endif # ---------------------------------------------------------- if ARCH_AT91SAM9261 comment "AT91SAM9261 Board Type" config MACH_AT91SAM9261EK bool "Atmel AT91SAM9261-EK Evaluation Kit" select HAVE_AT91_DATAFLASH_CARD select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using Atmel's AT91SAM9261-EK Evaluation Kit. endif # ---------------------------------------------------------- if ARCH_AT91SAM9G10 comment "AT91SAM9G10 Board Type" config MACH_AT91SAM9G10EK bool "Atmel AT91SAM9G10-EK Evaluation Kit" select HAVE_AT91_DATAFLASH_CARD select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using Atmel's AT91SAM9G10-EK Evaluation Kit. endif # ---------------------------------------------------------- if ARCH_AT91SAM9263 comment "AT91SAM9263 Board Type" config MACH_AT91SAM9263EK bool "Atmel AT91SAM9263-EK Evaluation Kit" select HAVE_AT91_DATAFLASH_CARD select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using Atmel's AT91SAM9263-EK Evaluation Kit. config MACH_USB_A9263 bool "CALAO USB-A9263" help Select this if you are using a Calao Systems USB-A9263. config MACH_NEOCORE926 bool "Adeneo NEOCORE926" select HAVE_AT91_DATAFLASH_CARD help Select this if you are using the Adeneo Neocore 926 board. endif # ---------------------------------------------------------- if ARCH_AT91SAM9RL comment "AT91SAM9RL Board Type" config MACH_AT91SAM9RLEK bool "Atmel AT91SAM9RL-EK Evaluation Kit" help Select this if you are using Atmel's AT91SAM9RL-EK Evaluation Kit. endif # ---------------------------------------------------------- if ARCH_AT91SAM9G20 comment "AT91SAM9G20 Board Type" config MACH_AT91SAM9G20EK bool "Atmel AT91SAM9G20-EK Evaluation Kit" select HAVE_AT91_DATAFLASH_CARD select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using Atmel's AT91SAM9G20-EK Evaluation Kit that embeds only one SD/MMC slot. config MACH_AT91SAM9G20EK_2MMC depends on MACH_AT91SAM9G20EK bool "Atmel AT91SAM9G20-EK Evaluation Kit with 2 SD/MMC Slots" select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using an Atmel AT91SAM9G20-EK Evaluation Kit with 2 SD/MMC Slots. This is the case for AT91SAM9G20-EK rev. C and onwards. config MACH_CPU9G20 bool "Eukrea CPU9G20 board" help Select this if you are using a Eukrea Electromatique's CPU9G20 Board config MACH_ACMENETUSFOXG20 bool "Acme Systems srl FOX Board G20" help Select this if you are using Acme Systems FOX Board G20 config MACH_PORTUXG20 bool "taskit PortuxG20" help Select this if you are using taskit's PortuxG20. config MACH_STAMP9G20 bool "taskit Stamp9G20 CPU module" help Select this if you are using taskit's Stamp9G20 CPU module on its evaluation board. config MACH_PCONTROL_G20 bool "PControl G20 CPU module" help Select this if you are using taskit's Stamp9G20 CPU module on this carrier board, beeing the decentralized unit of a building automation system; featuring nvram, eth-switch, iso-rs485, display, io config MACH_GSIA18S bool "GS_IA18_S board" help This enables support for the GS_IA18_S board produced by GeoSIG Ltd company. This is an internet accelerograph. endif if (ARCH_AT91SAM9260 || ARCH_AT91SAM9G20) comment "AT91SAM9260/AT91SAM9G20 boards" config MACH_SNAPPER_9260 bool "Bluewater Systems Snapper 9260/9G20 module" help Select this if you are using the Bluewater Systems Snapper 9260 or Snapper 9G20 modules. endif # ---------------------------------------------------------- if ARCH_AT91SAM9G45 comment "AT91SAM9G45 Board Type" config MACH_AT91SAM9M10G45EK bool "Atmel AT91SAM9M10G45-EK Evaluation Kits" select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using Atmel's AT91SAM9G45-EKES Evaluation Kit. "ES" at the end of the name means that this board is an Engineering Sample. endif # ---------------------------------------------------------- if ARCH_AT91CAP9 comment "AT91CAP9 Board Type" config MACH_AT91CAP9ADK bool "Atmel AT91CAP9A-DK Evaluation Kit" select HAVE_AT91_DATAFLASH_CARD select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using Atmel's AT91CAP9A-DK Evaluation Kit. endif # ---------------------------------------------------------- if ARCH_AT572D940HF comment "AT572D940HF Board Type" config MACH_AT572D940HFEB bool "AT572D940HF-EK" depends on ARCH_AT572D940HF select HAVE_AT91_DATAFLASH_CARD select HAVE_NAND_ATMEL_BUSWIDTH_16 help Select this if you are using Atmel's AT572D940HF-EK evaluation kit. endif # ---------------------------------------------------------- if ARCH_AT91X40 comment "AT91X40 Board Type" config MACH_AT91EB01 bool "Atmel AT91EB01 Evaluation Kit" help Select this if you are using Atmel's AT91EB01 Evaluation Kit. It is also a popular target for simulators such as GDB's ARM simulator (commonly known as the ARMulator) and the Skyeye simulator. endif # ---------------------------------------------------------- comment "AT91 Board Options" config MTD_AT91_DATAFLASH_CARD bool "Enable DataFlash Card support" depends on HAVE_AT91_DATAFLASH_CARD help Enable support for the DataFlash card. config MTD_NAND_ATMEL_BUSWIDTH_16 bool "Enable 16-bit data bus interface to NAND flash" depends on HAVE_NAND_ATMEL_BUSWIDTH_16 help On AT91SAM926x boards both types of NAND flash can be present (8 and 16 bit data bus width). # ---------------------------------------------------------- comment "AT91 Feature Selections" config AT91_PROGRAMMABLE_CLOCKS bool "Programmable Clocks" help Select this if you need to program one or more of the PCK0..PCK3 programmable clock outputs. config AT91_SLOW_CLOCK bool "Suspend-to-RAM disables main oscillator" depends on SUSPEND help Select this if you want Suspend-to-RAM to save the most power possible (without powering off the CPU) by disabling the PLLs and main oscillator so that only the 32 KiHz clock is available. When only that slow-clock is available, some peripherals lose functionality. Many can't issue wakeup events unless faster clocks are available. Some lose their operating state and need to be completely re-initialized. config AT91_TIMER_HZ int "Kernel HZ (jiffies per second)" range 32 1024 depends on ARCH_AT91 default "128" if ARCH_AT91RM9200 default "100" help On AT91rm9200 chips where you're using a system clock derived from the 32768 Hz hardware clock, this tick rate should divide it exactly: use a power-of-two value, such as 128 or 256, to reduce timing errors caused by rounding. On AT91sam926x chips, or otherwise when using a higher precision system clock (of at least several MHz), rounding is less of a problem so it can be safer to use a decimal values like 100. choice prompt "Select a UART for early kernel messages" config AT91_EARLY_DBGU bool "DBGU" config AT91_EARLY_USART0 bool "USART0" config AT91_EARLY_USART1 bool "USART1" config AT91_EARLY_USART2 bool "USART2" depends on ! ARCH_AT91X40 config AT91_EARLY_USART3 bool "USART3" depends on HAVE_AT91_USART3 config AT91_EARLY_USART4 bool "USART4" depends on HAVE_AT91_USART4 config AT91_EARLY_USART5 bool "USART5" depends on HAVE_AT91_USART5 endchoice endmenu endif if ARCH_H720X menu "h720x Implementations" config ARCH_H7201 bool "gms30c7201" depends on ARCH_H720X select CPU_H7201 help Say Y here if you are using the Hynix GMS30C7201 Reference Board config ARCH_H7202 bool "hms30c7202" select CPU_H7202 depends on ARCH_H720X help Say Y here if you are using the Hynix HMS30C7202 Reference Board endmenu config CPU_H7201 bool help Select code specific to h7201 variants config CPU_H7202 bool help Select code specific to h7202 variants config H7202_SERIAL23 depends on CPU_H7202 bool "Use serial ports 2+3" help Say Y here if you wish to use serial ports 2+3. They share their pins with the keyboard matrix controller, so you have to decide. endif comment "Processor Type" # Select CPU types depending on the architecture selected. This selects # which CPUs we support in the kernel image, and the compiler instruction # optimiser behaviour. # ARM610 config CPU_ARM610 bool "Support ARM610 processor" if ARCH_RPC select CPU_32v3 select CPU_CACHE_V3 select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V3 if MMU select CPU_TLB_V3 if MMU select CPU_PABRT_LEGACY help The ARM610 is the successor to the ARM3 processor and was produced by VLSI Technology Inc. Say Y if you want support for the ARM610 processor. Otherwise, say N. # ARM7TDMI config CPU_ARM7TDMI bool "Support ARM7TDMI processor" depends on !MMU select CPU_32v4T select CPU_ABRT_LV4T select CPU_PABRT_LEGACY select CPU_CACHE_V4 help A 32-bit RISC microprocessor based on the ARM7 processor core which has no memory control unit and cache. Say Y if you want support for the ARM7TDMI processor. Otherwise, say N. # ARM710 config CPU_ARM710 bool "Support ARM710 processor" if ARCH_RPC select CPU_32v3 select CPU_CACHE_V3 select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V3 if MMU select CPU_TLB_V3 if MMU select CPU_PABRT_LEGACY help A 32-bit RISC microprocessor based on the ARM7 processor core designed by Advanced RISC Machines Ltd. The ARM710 is the successor to the ARM610 processor. It was released in July 1994 by VLSI Technology Inc. Say Y if you want support for the ARM710 processor. Otherwise, say N. # ARM720T config CPU_ARM720T bool "Support ARM720T processor" if ARCH_INTEGRATOR select CPU_32v4T select CPU_ABRT_LV4T select CPU_PABRT_LEGACY select CPU_CACHE_V4 select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WT if MMU select CPU_TLB_V4WT if MMU help A 32-bit RISC processor with 8kByte Cache, Write Buffer and MMU built around an ARM7TDMI core. Say Y if you want support for the ARM720T processor. Otherwise, say N. # ARM740T config CPU_ARM740T bool "Support ARM740T processor" if ARCH_INTEGRATOR depends on !MMU select CPU_32v4T select CPU_ABRT_LV4T select CPU_PABRT_LEGACY select CPU_CACHE_V3 # although the core is v4t select CPU_CP15_MPU help A 32-bit RISC processor with 8KB cache or 4KB variants, write buffer and MPU(Protection Unit) built around an ARM7TDMI core. Say Y if you want support for the ARM740T processor. Otherwise, say N. # ARM9TDMI config CPU_ARM9TDMI bool "Support ARM9TDMI processor" depends on !MMU select CPU_32v4T select CPU_ABRT_NOMMU select CPU_PABRT_LEGACY select CPU_CACHE_V4 help A 32-bit RISC microprocessor based on the ARM9 processor core which has no memory control unit and cache. Say Y if you want support for the ARM9TDMI processor. Otherwise, say N. # ARM920T config CPU_ARM920T bool "Support ARM920T processor" if ARCH_INTEGRATOR select CPU_32v4T select CPU_ABRT_EV4T select CPU_PABRT_LEGACY select CPU_CACHE_V4WT select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU select CPU_TLB_V4WBI if MMU help The ARM920T is licensed to be produced by numerous vendors, and is used in the Cirrus EP93xx and the Samsung S3C2410. Say Y if you want support for the ARM920T processor. Otherwise, say N. # ARM922T config CPU_ARM922T bool "Support ARM922T processor" if ARCH_INTEGRATOR select CPU_32v4T select CPU_ABRT_EV4T select CPU_PABRT_LEGACY select CPU_CACHE_V4WT select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU select CPU_TLB_V4WBI if MMU help The ARM922T is a version of the ARM920T, but with smaller instruction and data caches. It is used in Altera's Excalibur XA device family and Micrel's KS8695 Centaur. Say Y if you want support for the ARM922T processor. Otherwise, say N. # ARM925T config CPU_ARM925T bool "Support ARM925T processor" if ARCH_OMAP1 select CPU_32v4T select CPU_ABRT_EV4T select CPU_PABRT_LEGACY select CPU_CACHE_V4WT select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU select CPU_TLB_V4WBI if MMU help The ARM925T is a mix between the ARM920T and ARM926T, but with different instruction and data caches. It is used in TI's OMAP device family. Say Y if you want support for the ARM925T processor. Otherwise, say N. # ARM926T config CPU_ARM926T bool "Support ARM926T processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB select CPU_32v5 select CPU_ABRT_EV5TJ select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU select CPU_TLB_V4WBI if MMU help This is a variant of the ARM920. It has slightly different instruction sequences for cache and TLB operations. Curiously, there is no documentation on it at the ARM corporate website. Say Y if you want support for the ARM926T processor. Otherwise, say N. # FA526 config CPU_FA526 bool select CPU_32v4 select CPU_ABRT_EV4 select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_CACHE_FA select CPU_COPY_FA if MMU select CPU_TLB_FA if MMU help The FA526 is a version of the ARMv4 compatible processor with Branch Target Buffer, Unified TLB and cache line size 16. Say Y if you want support for the FA526 processor. Otherwise, say N. # ARM940T config CPU_ARM940T bool "Support ARM940T processor" if ARCH_INTEGRATOR depends on !MMU select CPU_32v4T select CPU_ABRT_NOMMU select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MPU help ARM940T is a member of the ARM9TDMI family of general- purpose microprocessors with MPU and separate 4KB instruction and 4KB data cases, each with a 4-word line length. Say Y if you want support for the ARM940T processor. Otherwise, say N. # ARM946E-S config CPU_ARM946E bool "Support ARM946E-S processor" if ARCH_INTEGRATOR depends on !MMU select CPU_32v5 select CPU_ABRT_NOMMU select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MPU help ARM946E-S is a member of the ARM9E-S family of high- performance, 32-bit system-on-chip processor solutions. The TCM and ARMv5TE 32-bit instruction set is supported. Say Y if you want support for the ARM946E-S processor. Otherwise, say N. # ARM1020 - needs validating config CPU_ARM1020 bool "Support ARM1020T (rev 0) processor" if ARCH_INTEGRATOR select CPU_32v5 select CPU_ABRT_EV4T select CPU_PABRT_LEGACY select CPU_CACHE_V4WT select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU select CPU_TLB_V4WBI if MMU help The ARM1020 is the 32K cached version of the ARM10 processor, with an addition of a floating-point unit. Say Y if you want support for the ARM1020 processor. Otherwise, say N. # ARM1020E - needs validating config CPU_ARM1020E bool "Support ARM1020E processor" if ARCH_INTEGRATOR select CPU_32v5 select CPU_ABRT_EV4T select CPU_PABRT_LEGACY select CPU_CACHE_V4WT select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU select CPU_TLB_V4WBI if MMU depends on n # ARM1022E config CPU_ARM1022 bool "Support ARM1022E processor" if ARCH_INTEGRATOR select CPU_32v5 select CPU_ABRT_EV4T select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU # can probably do better select CPU_TLB_V4WBI if MMU help The ARM1022E is an implementation of the ARMv5TE architecture based upon the ARM10 integer core with a 16KiB L1 Harvard cache, embedded trace macrocell, and a floating-point unit. Say Y if you want support for the ARM1022E processor. Otherwise, say N. # ARM1026EJ-S config CPU_ARM1026 bool "Support ARM1026EJ-S processor" if ARCH_INTEGRATOR select CPU_32v5 select CPU_ABRT_EV5T # But need Jazelle, but EV5TJ ignores bit 10 select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU # can probably do better select CPU_TLB_V4WBI if MMU help The ARM1026EJ-S is an implementation of the ARMv5TEJ architecture based upon the ARM10 integer core. Say Y if you want support for the ARM1026EJ-S processor. Otherwise, say N. # SA110 config CPU_SA110 bool "Support StrongARM(R) SA-110 processor" if ARCH_RPC select CPU_32v3 if ARCH_RPC select CPU_32v4 if !ARCH_RPC select CPU_ABRT_EV4 select CPU_PABRT_LEGACY select CPU_CACHE_V4WB select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_V4WB if MMU select CPU_TLB_V4WB if MMU help The Intel StrongARM(R) SA-110 is a 32-bit microprocessor and is available at five speeds ranging from 100 MHz to 233 MHz. More information is available at . Say Y if you want support for the SA-110 processor. Otherwise, say N. # SA1100 config CPU_SA1100 bool select CPU_32v4 select CPU_ABRT_EV4 select CPU_PABRT_LEGACY select CPU_CACHE_V4WB select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_TLB_V4WB if MMU # XScale config CPU_XSCALE bool select CPU_32v5 select CPU_ABRT_EV5T select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_TLB_V4WBI if MMU # XScale Core Version 3 config CPU_XSC3 bool select CPU_32v5 select CPU_ABRT_EV5T select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_TLB_V4WBI if MMU select IO_36 # Marvell PJ1 (Mohawk) config CPU_MOHAWK bool select CPU_32v5 select CPU_ABRT_EV5T select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_TLB_V4WBI if MMU select CPU_COPY_V4WB if MMU # Feroceon config CPU_FEROCEON bool select CPU_32v5 select CPU_ABRT_EV5T select CPU_PABRT_LEGACY select CPU_CACHE_VIVT select CPU_CP15_MMU select CPU_COPY_FEROCEON if MMU select CPU_TLB_FEROCEON if MMU config CPU_FEROCEON_OLD_ID bool "Accept early Feroceon cores with an ARM926 ID" depends on CPU_FEROCEON && !CPU_ARM926T default y help This enables the usage of some old Feroceon cores for which the CPU ID is equal to the ARM926 ID. Relevant for Feroceon-1850 and early Feroceon-2850. # Marvell PJ4 config CPU_PJ4 bool select CPU_V7 select ARM_THUMBEE # ARMv6 config CPU_V6 bool "Support ARM V6 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX select CPU_32v6 select CPU_ABRT_EV6 select CPU_PABRT_V6 select CPU_CACHE_V6 select CPU_CACHE_VIPT select CPU_CP15_MMU select CPU_HAS_ASID if MMU select CPU_COPY_V6 if MMU select CPU_TLB_V6 if MMU # ARMv6k config CPU_V6K bool "Support ARM V6K processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX select CPU_32v6 select CPU_32v6K select CPU_ABRT_EV6 select CPU_PABRT_V6 select CPU_CACHE_V6 select CPU_CACHE_VIPT select CPU_CP15_MMU select CPU_HAS_ASID if MMU select CPU_COPY_V6 if MMU select CPU_TLB_V6 if MMU # ARMv7 config CPU_V7 bool "Support ARM V7 processor" if ARCH_INTEGRATOR || MACH_REALVIEW_EB || MACH_REALVIEW_PBX select CPU_32v6K select CPU_32v7 select CPU_ABRT_EV7 select CPU_PABRT_V7 select CPU_CACHE_V7 select CPU_CACHE_VIPT select CPU_CP15_MMU select CPU_HAS_ASID if MMU select CPU_COPY_V6 if MMU select CPU_TLB_V7 if MMU # Figure out what processor architecture version we should be using. # This defines the compiler instruction set which depends on the machine type. config CPU_32v3 bool select TLS_REG_EMUL if SMP || !MMU select NEEDS_SYSCALL_FOR_CMPXCHG if SMP select CPU_USE_DOMAINS if MMU config CPU_32v4 bool select TLS_REG_EMUL if SMP || !MMU select NEEDS_SYSCALL_FOR_CMPXCHG if SMP select CPU_USE_DOMAINS if MMU config CPU_32v4T bool select TLS_REG_EMUL if SMP || !MMU select NEEDS_SYSCALL_FOR_CMPXCHG if SMP select CPU_USE_DOMAINS if MMU config CPU_32v5 bool select TLS_REG_EMUL if SMP || !MMU select NEEDS_SYSCALL_FOR_CMPXCHG if SMP select CPU_USE_DOMAINS if MMU config CPU_32v6 bool select TLS_REG_EMUL if !CPU_32v6K && !MMU select CPU_USE_DOMAINS if CPU_V6 && MMU config CPU_32v6K bool config CPU_32v7 bool # The abort model config CPU_ABRT_NOMMU bool config CPU_ABRT_EV4 bool config CPU_ABRT_EV4T bool config CPU_ABRT_LV4T bool config CPU_ABRT_EV5T bool config CPU_ABRT_EV5TJ bool config CPU_ABRT_EV6 bool config CPU_ABRT_EV7 bool config CPU_PABRT_LEGACY bool config CPU_PABRT_V6 bool config CPU_PABRT_V7 bool # The cache model config CPU_CACHE_V3 bool config CPU_CACHE_V4 bool config CPU_CACHE_V4WT bool config CPU_CACHE_V4WB bool config CPU_CACHE_V6 bool config CPU_CACHE_V7 bool config CPU_CACHE_VIVT bool config CPU_CACHE_VIPT bool config CPU_CACHE_FA bool if MMU # The copy-page model config CPU_COPY_V3 bool config CPU_COPY_V4WT bool config CPU_COPY_V4WB bool config CPU_COPY_FEROCEON bool config CPU_COPY_FA bool config CPU_COPY_V6 bool # This selects the TLB model config CPU_TLB_V3 bool help ARM Architecture Version 3 TLB. config CPU_TLB_V4WT bool help ARM Architecture Version 4 TLB with writethrough cache. config CPU_TLB_V4WB bool help ARM Architecture Version 4 TLB with writeback cache. config CPU_TLB_V4WBI bool help ARM Architecture Version 4 TLB with writeback cache and invalidate instruction cache entry. config CPU_TLB_FEROCEON bool help Feroceon TLB (v4wbi with non-outer-cachable page table walks). config CPU_TLB_FA bool help Faraday ARM FA526 architecture, unified TLB with writeback cache and invalidate instruction cache entry. Branch target buffer is also supported. config CPU_TLB_V6 bool config CPU_TLB_V7 bool config VERIFY_PERMISSION_FAULT bool endif config CPU_HAS_ASID bool help This indicates whether the CPU has the ASID register; used to tag TLB and possibly cache entries. config CPU_CP15 bool help Processor has the CP15 register. config CPU_CP15_MMU bool select CPU_CP15 help Processor has the CP15 register, which has MMU related registers. config CPU_CP15_MPU bool select CPU_CP15 help Processor has the CP15 register, which has MPU related registers. config CPU_USE_DOMAINS bool help This option enables or disables the use of domain switching via the set_fs() function. # # CPU supports 36-bit I/O # config IO_36 bool comment "Processor Features" config ARM_THUMB bool "Support Thumb user binaries" depends on CPU_ARM720T || CPU_ARM740T || CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM940T || CPU_ARM946E || CPU_ARM1020 || CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_V6 || CPU_V6K || CPU_V7 || CPU_FEROCEON default y help Say Y if you want to include kernel support for running user space Thumb binaries. The Thumb instruction set is a compressed form of the standard ARM instruction set resulting in smaller binaries at the expense of slightly less efficient code. If you don't know what this all is, saying Y is a safe choice. config ARM_THUMBEE bool "Enable ThumbEE CPU extension" depends on CPU_V7 help Say Y here if you have a CPU with the ThumbEE extension and code to make use of it. Say N for code that can run on CPUs without ThumbEE. config SWP_EMULATE bool "Emulate SWP/SWPB instructions" depends on !CPU_USE_DOMAINS && CPU_V7 select HAVE_PROC_CPU if PROC_FS default y if SMP help ARMv6 architecture deprecates use of the SWP/SWPB instructions. ARMv7 multiprocessing extensions introduce the ability to disable these instructions, triggering an undefined instruction exception when executed. Say Y here to enable software emulation of these instructions for userspace (not kernel) using LDREX/STREX. Also creates /proc/cpu/swp_emulation for statistics. In some older versions of glibc [<=2.8] SWP is used during futex trylock() operations with the assumption that the code will not be preempted. This invalid assumption may be more likely to fail with SWP emulation enabled, leading to deadlock of the user application. NOTE: when accessing uncached shared regions, LDREX/STREX rely on an external transaction monitoring block called a global monitor to maintain update atomicity. If your system does not implement a global monitor, this option can cause programs that perform SWP operations to uncached memory to deadlock. If unsure, say Y. config CPU_BIG_ENDIAN bool "Build big-endian kernel" depends on ARCH_SUPPORTS_BIG_ENDIAN help Say Y if you plan on running a kernel in big-endian mode. Note that your board must be properly built and your board port must properly enable any big-endian related features of your chipset/board/processor. config CPU_ENDIAN_BE8 bool depends on CPU_BIG_ENDIAN default CPU_V6 || CPU_V6K || CPU_V7 help Support for the BE-8 (big-endian) mode on ARMv6 and ARMv7 processors. config CPU_ENDIAN_BE32 bool depends on CPU_BIG_ENDIAN default !CPU_ENDIAN_BE8 help Support for the BE-32 (big-endian) mode on pre-ARMv6 processors. config CPU_HIGH_VECTOR depends on !MMU && CPU_CP15 && !CPU_ARM740T bool "Select the High exception vector" help Say Y here to select high exception vector(0xFFFF0000~). The exception vector can be vary depending on the platform design in nommu mode. If your platform needs to select high exception vector, say Y. Otherwise or if you are unsure, say N, and the low exception vector (0x00000000~) will be used. config CPU_ICACHE_DISABLE bool "Disable I-Cache (I-bit)" depends on CPU_CP15 && !(CPU_ARM610 || CPU_ARM710 || CPU_ARM720T || CPU_ARM740T || CPU_XSCALE || CPU_XSC3) help Say Y here to disable the processor instruction cache. Unless you have a reason not to or are unsure, say N. config CPU_DCACHE_DISABLE bool "Disable D-Cache (C-bit)" depends on CPU_CP15 help Say Y here to disable the processor data cache. Unless you have a reason not to or are unsure, say N. config CPU_DCACHE_SIZE hex depends on CPU_ARM740T || CPU_ARM946E default 0x00001000 if CPU_ARM740T default 0x00002000 # default size for ARM946E-S help Some cores are synthesizable to have various sized cache. For ARM946E-S case, it can vary from 0KB to 1MB. To support such cache operations, it is efficient to know the size before compile time. If your SoC is configured to have a different size, define the value here with proper conditions. config CPU_DCACHE_WRITETHROUGH bool "Force write through D-cache" depends on (CPU_ARM740T || CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM940T || CPU_ARM946E || CPU_ARM1020 || CPU_FA526) && !CPU_DCACHE_DISABLE default y if CPU_ARM925T help Say Y here to use the data cache in writethrough mode. Unless you specifically require this or are unsure, say N. config CPU_CACHE_ROUND_ROBIN bool "Round robin I and D cache replacement algorithm" depends on (CPU_ARM926T || CPU_ARM946E || CPU_ARM1020) && (!CPU_ICACHE_DISABLE || !CPU_DCACHE_DISABLE) help Say Y here to use the predictable round-robin cache replacement policy. Unless you specifically require this or are unsure, say N. config CPU_BPREDICT_DISABLE bool "Disable branch prediction" depends on CPU_ARM1020 || CPU_V6 || CPU_V6K || CPU_MOHAWK || CPU_XSC3 || CPU_V7 || CPU_FA526 help Say Y here to disable branch prediction. If unsure, say N. config TLS_REG_EMUL bool help An SMP system using a pre-ARMv6 processor (there are apparently a few prototypes like that in existence) and therefore access to that required register must be emulated. config NEEDS_SYSCALL_FOR_CMPXCHG bool help SMP on a pre-ARMv6 processor? Well OK then. Forget about fast user space cmpxchg support. It is just not possible. config DMA_CACHE_RWFO bool "Enable read/write for ownership DMA cache maintenance" depends on CPU_V6K && SMP default y help The Snoop Control Unit on ARM11MPCore does not detect the cache maintenance operations and the dma_{map,unmap}_area() functions may leave stale cache entries on other CPUs. By enabling this option, Read or Write For Ownership in the ARMv6 DMA cache maintenance functions is performed. These LDR/STR instructions change the cache line state to shared or modified so that the cache operation has the desired effect. Note that the workaround is only valid on processors that do not perform speculative loads into the D-cache. For such processors, if cache maintenance operations are not broadcast in hardware, other workarounds are needed (e.g. cache maintenance broadcasting in software via FIQ). config OUTER_CACHE bool config OUTER_CACHE_SYNC bool help The outer cache has a outer_cache_fns.sync function pointer that can be used to drain the write buffer of the outer cache. config CACHE_FEROCEON_L2 bool "Enable the Feroceon L2 cache controller" depends on ARCH_KIRKWOOD || ARCH_MV78XX0 default y select OUTER_CACHE help This option enables the Feroceon L2 cache controller. config CACHE_FEROCEON_L2_WRITETHROUGH bool "Force Feroceon L2 cache write through" depends on CACHE_FEROCEON_L2 help Say Y here to use the Feroceon L2 cache in writethrough mode. Unless you specifically require this, say N for writeback mode. config CACHE_L2X0 bool "Enable the L2x0 outer cache controller" depends on REALVIEW_EB_ARM11MP || MACH_REALVIEW_PB11MP || MACH_REALVIEW_PB1176 || \ REALVIEW_EB_A9MP || SOC_IMX35 || SOC_IMX31 || MACH_REALVIEW_PBX || \ ARCH_NOMADIK || ARCH_OMAP4 || ARCH_EXYNOS4 || ARCH_TEGRA || \ ARCH_U8500 || ARCH_VEXPRESS_CA9X4 || ARCH_SHMOBILE default y select OUTER_CACHE select OUTER_CACHE_SYNC help This option enables the L2x0 PrimeCell. config CACHE_PL310 bool depends on CACHE_L2X0 default y if CPU_V7 && !(CPU_V6 || CPU_V6K) help This option enables optimisations for the PL310 cache controller. config CACHE_TAUROS2 bool "Enable the Tauros2 L2 cache controller" depends on (ARCH_DOVE || ARCH_MMP || CPU_PJ4) default y select OUTER_CACHE help This option enables the Tauros2 L2 cache controller (as found on PJ1/PJ4). config CACHE_XSC3L2 bool "Enable the L2 cache on XScale3" depends on CPU_XSC3 default y select OUTER_CACHE help This option enables the L2 cache on XScale3. config ARM_L1_CACHE_SHIFT_6 bool help Setting ARM L1 cache line size to 64 Bytes. config ARM_L1_CACHE_SHIFT int default 6 if ARM_L1_CACHE_SHIFT_6 default 5 config ARM_DMA_MEM_BUFFERABLE bool "Use non-cacheable memory for DMA" if (CPU_V6 || CPU_V6K) && !CPU_V7 depends on !(MACH_REALVIEW_PB1176 || REALVIEW_EB_ARM11MP || \ MACH_REALVIEW_PB11MP) default y if CPU_V6 || CPU_V6K || CPU_V7 help Historically, the kernel has used strongly ordered mappings to provide DMA coherent memory. With the advent of ARMv7, mapping memory with differing types results in unpredictable behaviour, so on these CPUs, this option is forced on. Multiple mappings with differing attributes is also unpredictable on ARMv6 CPUs, but since they do not have aggressive speculative prefetch, no harm appears to occur. However, drivers may be missing the necessary barriers for ARMv6, and therefore turning this on may result in unpredictable driver behaviour. Therefore, we offer this as an option. You are recommended say 'Y' here and debug any affected drivers. config ARCH_HAS_BARRIERS bool help This option allows the use of custom mandatory barriers included via the mach/barriers.h file. if ARCH_SA1100 menu "SA11x0 Implementations" config SA1100_ASSABET bool "Assabet" select CPU_FREQ_SA1110 help Say Y here if you are using the Intel(R) StrongARM(R) SA-1110 Microprocessor Development Board (also known as the Assabet). config ASSABET_NEPONSET bool "Include support for Neponset" depends on SA1100_ASSABET select SA1111 help Say Y here if you are using the Intel(R) StrongARM(R) SA-1110 Microprocessor Development Board (Assabet) with the SA-1111 Development Board (Nepon). config SA1100_CERF bool "CerfBoard" select CPU_FREQ_SA1110 help The Intrinsyc CerfBoard is based on the StrongARM 1110 (Discontinued). More information is available at: . Say Y if configuring for an Intrinsyc CerfBoard. Say N otherwise. choice prompt "Cerf Flash available" depends on SA1100_CERF default SA1100_CERF_FLASH_8MB config SA1100_CERF_FLASH_8MB bool "8MB" config SA1100_CERF_FLASH_16MB bool "16MB" config SA1100_CERF_FLASH_32MB bool "32MB" endchoice config SA1100_COLLIE bool "Sharp Zaurus SL5500" # FIXME: select CPU_FREQ_SA11x0 select SHARP_LOCOMO select SHARP_SCOOP select SHARP_PARAM help Say Y here to support the Sharp Zaurus SL5500 PDAs. config SA1100_H3100 bool "Compaq iPAQ H3100" select HTC_EGPIO select CPU_FREQ_SA1110 help Say Y here if you intend to run this kernel on the Compaq iPAQ H3100 handheld computer. Information about this machine and the Linux port to this machine can be found at: config SA1100_H3600 bool "Compaq iPAQ H3600/H3700" select HTC_EGPIO select CPU_FREQ_SA1110 help Say Y here if you intend to run this kernel on the Compaq iPAQ H3600 handheld computer. Information about this machine and the Linux port to this machine can be found at: config SA1100_BADGE4 bool "HP Labs BadgePAD 4" select SA1111 select CPU_FREQ_SA1100 help Say Y here if you want to build a kernel for the HP Laboratories BadgePAD 4. config SA1100_JORNADA720 bool "HP Jornada 720" select SA1111 # FIXME: select CPU_FREQ_SA11x0 help Say Y here if you want to build a kernel for the HP Jornada 720 handheld computer. See config SA1100_JORNADA720_SSP bool "HP Jornada 720 Extended SSP driver" select SA1100_SSP depends on SA1100_JORNADA720 help Say Y here if you have a HP Jornada 7xx handheld computer and you want to access devices connected to the MCU. Those include the keyboard, touchscreen, backlight and battery. This driver also activates the generic SSP which it extends. config SA1100_HACKKIT bool "HackKit Core CPU Board" select CPU_FREQ_SA1100 help Say Y here to support the HackKit Core CPU Board ; config SA1100_LART bool "LART" select CPU_FREQ_SA1100 help Say Y here if you are using the Linux Advanced Radio Terminal (also known as the LART). See for information on the LART. config SA1100_NANOENGINE bool "nanoEngine" select CPU_FREQ_SA1110 select PCI select PCI_NANOENGINE help Say Y here if you are using the Bright Star Engineering nanoEngine. See for information on the BSE nanoEngine. config SA1100_PLEB bool "PLEB" select CPU_FREQ_SA1100 help Say Y here if you are using version 1 of the Portable Linux Embedded Board (also known as PLEB). See for more information. config SA1100_SHANNON bool "Shannon" select CPU_FREQ_SA1100 help The Shannon (also known as a Tuxscreen, and also as a IS2630) was a limited edition webphone produced by Philips. The Shannon is a SA1100 platform with a 640x480 LCD, touchscreen, CIR keyboard, PCMCIA slots, and a telco interface. config SA1100_SIMPAD bool "Simpad" select CPU_FREQ_SA1110 help The SIEMENS webpad SIMpad is based on the StrongARM 1110. There are two different versions CL4 and SL4. CL4 has 32MB RAM and 16MB FLASH. The SL4 version got 64 MB RAM and 32 MB FLASH and a PCMCIA-Slot. The version for the Germany Telecom (DTAG) is the same like CL4 in additional it has a PCMCIA-Slot. For more information visit or . config SA1100_SSP tristate "Generic PIO SSP" help Say Y here to enable support for the generic PIO SSP driver. This isn't for audio support, but for attached sensors and other devices, eg for BadgePAD 4 sensor support. endmenu endif if ARCH_IOP13XX menu "IOP13XX Implementation Options" comment "IOP13XX Platform Support" config MACH_IQ81340SC bool "Enable IQ81340SC Hardware Support" help Say Y here if you want to support running on the Intel IQ81340SC evaluation kit. config MACH_IQ81340MC bool "Enable IQ81340MC Hardware Support" help Say Y here if you want to support running on the Intel IQ81340MC evaluation kit. endmenu endif if ARCH_W90X900 config CPU_W90P910 bool help Support for W90P910 of Nuvoton W90X900 CPUs. config CPU_NUC950 bool help Support for NUCP950 of Nuvoton NUC900 CPUs. config CPU_NUC960 bool help Support for NUCP960 of Nuvoton NUC900 CPUs. menu "W90P910 Machines" config MACH_W90P910EVB bool "Nuvoton W90P910 Evaluation Board" default y select CPU_W90P910 help Say Y here if you are using the Nuvoton W90P910EVB endmenu menu "NUC950 Machines" config MACH_W90P950EVB bool "Nuvoton NUC950 Evaluation Board" select CPU_NUC950 help Say Y here if you are using the Nuvoton NUC950EVB endmenu menu "NUC960 Machines" config MACH_W90N960EVB bool "Nuvoton NUC960 Evaluation Board" select CPU_NUC960 help Say Y here if you are using the Nuvoton NUC960EVB endmenu endif # # SPEAr6XX Machine configuration file # if ARCH_SPEAR6XX choice prompt "SPEAr6XX Family" default MACH_SPEAR600 config MACH_SPEAR600 bool "SPEAr600" help Supports ST SPEAr600 Machine endchoice # Adding SPEAr6XX machine specific configuration files source "arch/arm/mach-spear6xx/Kconfig600" endif #ARCH_SPEAR6XX if ARCH_OMAP menu "TI OMAP Common Features" config ARCH_OMAP_OTG bool choice prompt "OMAP System Type" default ARCH_OMAP2PLUS config ARCH_OMAP1 bool "TI OMAP1" select CLKDEV_LOOKUP help "Systems based on omap7xx, omap15xx or omap16xx" config ARCH_OMAP2PLUS bool "TI OMAP2/3/4" select CLKDEV_LOOKUP select OMAP_DM_TIMER help "Systems based on OMAP2, OMAP3 or OMAP4" endchoice comment "OMAP Feature Selections" config OMAP_DEBUG_DEVICES bool help For debug cards on TI reference boards. config OMAP_DEBUG_LEDS bool depends on OMAP_DEBUG_DEVICES default y if LEDS_CLASS config OMAP_SMARTREFLEX bool "SmartReflex support" depends on (ARCH_OMAP3 || ARCH_OMAP4) && PM help Say Y if you want to enable SmartReflex. SmartReflex can perform continuous dynamic voltage scaling around the nominal operating point voltage according to silicon characteristics and operating conditions. Enabling SmartReflex reduces power consumption. Please note, that by default SmartReflex is only initialized. To enable the automatic voltage compensation for vdd mpu and vdd core from user space, user must write 1 to /debug/voltage/vdd_/smartreflex/autocomp, where X is mpu or core for OMAP3. Optionally autocompensation can be enabled in the kernel by default during system init via the enable_on_init flag which an be passed as platform data to the smartreflex driver. config OMAP_SMARTREFLEX_CLASS3 bool "Class 3 mode of Smartreflex Implementation" depends on OMAP_SMARTREFLEX && TWL4030_CORE help Say Y to enable Class 3 implementation of Smartreflex Class 3 implementation of Smartreflex employs continuous hardware voltage calibration. config OMAP_RESET_CLOCKS bool "Reset unused clocks during boot" depends on ARCH_OMAP help Say Y if you want to reset unused clocks during boot. This option saves power, but assumes all drivers are using the clock framework. Broken drivers that do not yet use clock framework may not work with this option. If you are booting from another operating system, you probably do not want this option enabled until your device drivers work properly. config OMAP_MUX bool "OMAP multiplexing support" depends on ARCH_OMAP default y help Pin multiplexing support for OMAP boards. If your bootloader sets the multiplexing correctly, say N. Otherwise, or if unsure, say Y. config OMAP_MUX_DEBUG bool "Multiplexing debug output" depends on OMAP_MUX help Makes the multiplexing functions print out a lot of debug info. This is useful if you want to find out the correct values of the multiplexing registers. config OMAP_MUX_WARNINGS bool "Warn about pins the bootloader didn't set up" depends on OMAP_MUX default y help Choose Y here to warn whenever driver initialization logic needs to change the pin multiplexing setup. When there are no warnings printed, it's safe to deselect OMAP_MUX for your product. config OMAP_MCBSP bool "McBSP support" depends on ARCH_OMAP default y help Say Y here if you want support for the OMAP Multichannel Buffered Serial Port. config OMAP_MBOX_FWK tristate "Mailbox framework support" depends on ARCH_OMAP help Say Y here if you want to use OMAP Mailbox framework support for DSP, IVA1.0 and IVA2 in OMAP1/2/3. config OMAP_MBOX_KFIFO_SIZE int "Mailbox kfifo default buffer size (bytes)" depends on OMAP_MBOX_FWK default 256 help Specify the default size of mailbox's kfifo buffers (bytes). This can also be changed at runtime (via the mbox_kfifo_size module parameter). config OMAP_IOMMU tristate config OMAP_IOMMU_DEBUG tristate "Export OMAP IOMMU internals in DebugFS" depends on OMAP_IOMMU && DEBUG_FS help Select this to see extensive information about the internal state of OMAP IOMMU in debugfs. Say N unless you know you need this. config OMAP_IOMMU_IVA2 bool config OMAP_MPU_TIMER bool "Use mpu timer" depends on ARCH_OMAP1 help Select this option if you want to use the OMAP mpu timer. This timer provides more intra-tick resolution than the 32KHz timer, but consumes more power. config OMAP_32K_TIMER bool "Use 32KHz timer" depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS default y if (ARCH_OMAP16XX || ARCH_OMAP2PLUS) help Select this option if you want to enable the OMAP 32KHz timer. This timer saves power compared to the OMAP_MPU_TIMER, and has support for no tick during idle. The 32KHz timer provides less intra-tick resolution than OMAP_MPU_TIMER. The 32KHz timer is currently only available for OMAP16XX, 24XX, 34XX and OMAP4. config OMAP3_L2_AUX_SECURE_SAVE_RESTORE bool "OMAP3 HS/EMU save and restore for L2 AUX control register" depends on ARCH_OMAP3 && PM default n help Without this option, L2 Auxiliary control register contents are lost during off-mode entry on HS/EMU devices. This feature requires support from PPA / boot-loader in HS/EMU devices, which currently does not exist by default. config OMAP3_L2_AUX_SECURE_SERVICE_SET_ID int "Service ID for the support routine to set L2 AUX control" depends on OMAP3_L2_AUX_SECURE_SAVE_RESTORE default 43 help PPA routine service ID for setting L2 auxiliary control register. config OMAP_32K_TIMER_HZ int "Kernel internal timer frequency for 32KHz timer" range 32 1024 depends on OMAP_32K_TIMER default "128" help Kernel internal timer frequency should be a divisor of 32768, such as 64 or 128. config OMAP_DM_TIMER bool "Use dual-mode timer" depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS help Select this option if you want to use OMAP Dual-Mode timers. config OMAP_SERIAL_WAKE bool "Enable wake-up events for serial ports" depends on ARCH_OMAP1 && OMAP_MUX default y help Select this option if you want to have your system wake up to data on the serial RX line. This allows you to wake the system from serial console. choice prompt "OMAP PM layer selection" depends on ARCH_OMAP default OMAP_PM_NOOP config OMAP_PM_NONE bool "No PM layer" config OMAP_PM_NOOP bool "No-op/debug PM layer" endchoice endmenu endif # arch/arm/mach-exynos4/Kconfig # # Copyright (c) 2010-2011 Samsung Electronics Co., Ltd. # http://www.samsung.com/ # # Licensed under GPLv2 # Configuration options for the EXYNOS4 if ARCH_EXYNOS4 config CPU_EXYNOS4210 bool select S3C_PL330_DMA help Enable EXYNOS4210 CPU support config EXYNOS4_MCT bool "Kernel timer support by MCT" help Use MCT (Multi Core Timer) as kernel timers config EXYNOS4_DEV_AHCI bool help Compile in platform device definitions for AHCI config EXYNOS4_DEV_PD bool help Compile in platform device definitions for Power Domain config EXYNOS4_DEV_SYSMMU bool help Common setup code for SYSTEM MMU in EXYNOS4 config EXYNOS4_SETUP_I2C1 bool help Common setup code for i2c bus 1. config EXYNOS4_SETUP_I2C2 bool help Common setup code for i2c bus 2. config EXYNOS4_SETUP_I2C3 bool help Common setup code for i2c bus 3. config EXYNOS4_SETUP_I2C4 bool help Common setup code for i2c bus 4. config EXYNOS4_SETUP_I2C5 bool help Common setup code for i2c bus 5. config EXYNOS4_SETUP_I2C6 bool help Common setup code for i2c bus 6. config EXYNOS4_SETUP_I2C7 bool help Common setup code for i2c bus 7. config EXYNOS4_SETUP_KEYPAD bool help Common setup code for keypad. config EXYNOS4_SETUP_SDHCI bool select EXYNOS4_SETUP_SDHCI_GPIO help Internal helper functions for EXYNOS4 based SDHCI systems. config EXYNOS4_SETUP_SDHCI_GPIO bool help Common setup code for SDHCI gpio. config EXYNOS4_SETUP_FIMC bool help Common setup code for the camera interfaces. # machine support menu "EXYNOS4 Machines" config MACH_SMDKC210 bool "SMDKC210" select CPU_EXYNOS4210 select S3C_DEV_RTC select S3C_DEV_WDT select S3C_DEV_I2C1 select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC3 select EXYNOS4_DEV_PD select EXYNOS4_DEV_SYSMMU select EXYNOS4_SETUP_I2C1 select EXYNOS4_SETUP_SDHCI help Machine support for Samsung SMDKC210 config MACH_SMDKV310 bool "SMDKV310" select CPU_EXYNOS4210 select S3C_DEV_RTC select S3C_DEV_WDT select S3C_DEV_I2C1 select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC3 select SAMSUNG_DEV_KEYPAD select EXYNOS4_DEV_PD select EXYNOS4_DEV_SYSMMU select EXYNOS4_SETUP_I2C1 select EXYNOS4_SETUP_KEYPAD select EXYNOS4_SETUP_SDHCI help Machine support for Samsung SMDKV310 config MACH_ARMLEX4210 bool "ARMLEX4210" select CPU_EXYNOS4210 select S3C_DEV_RTC select S3C_DEV_WDT select S3C_DEV_HSMMC select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC3 select EXYNOS4_DEV_AHCI select EXYNOS4_DEV_SYSMMU select EXYNOS4_SETUP_SDHCI help Machine support for Samsung ARMLEX4210 based on EXYNOS4210 config MACH_UNIVERSAL_C210 bool "Mobile UNIVERSAL_C210 Board" select CPU_EXYNOS4210 select S3C_DEV_HSMMC select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC3 select S3C_DEV_I2C1 select S3C_DEV_I2C5 select S5P_DEV_ONENAND select EXYNOS4_SETUP_I2C1 select EXYNOS4_SETUP_I2C5 select EXYNOS4_SETUP_SDHCI help Machine support for Samsung Mobile Universal S5PC210 Reference Board. config MACH_NURI bool "Mobile NURI Board" select CPU_EXYNOS4210 select S3C_DEV_WDT select S3C_DEV_HSMMC select S3C_DEV_HSMMC2 select S3C_DEV_HSMMC3 select S3C_DEV_I2C1 select S3C_DEV_I2C5 select EXYNOS4_SETUP_I2C1 select EXYNOS4_SETUP_I2C5 select EXYNOS4_SETUP_SDHCI select SAMSUNG_DEV_PWM help Machine support for Samsung Mobile NURI Board. endmenu comment "Configuration for HSMMC bus width" menu "Use 8-bit bus width" config EXYNOS4_SDHCI_CH0_8BIT bool "Channel 0 with 8-bit bus" help Support HSMMC Channel 0 8-bit bus. If selected, Channel 1 is disabled. config EXYNOS4_SDHCI_CH2_8BIT bool "Channel 2 with 8-bit bus" help Support HSMMC Channel 2 8-bit bus. If selected, Channel 3 is disabled. endmenu endif if ARCH_PXA menu "Intel PXA2xx/PXA3xx Implementations" comment "Intel/Marvell Dev Platforms (sorted by hardware release time)" config ARCH_LUBBOCK bool "Intel DBPXA250 Development Platform (aka Lubbock)" select PXA25x select SA1111 config MACH_MAINSTONE bool "Intel HCDDBBVA0 Development Platform (aka Mainstone)" select PXA27x select HAVE_PWM config MACH_ZYLONITE bool select PXA3xx select HAVE_PWM config MACH_ZYLONITE300 bool "PXA3xx Development Platform (aka Zylonite) PXA300/310" select CPU_PXA300 select CPU_PXA310 select MACH_ZYLONITE config MACH_ZYLONITE320 bool "PXA3xx Development Platform (aka Zylonite) PXA320" select CPU_PXA320 select MACH_ZYLONITE config MACH_LITTLETON bool "PXA3xx Form Factor Platform (aka Littleton)" select PXA3xx select CPU_PXA300 select CPU_PXA310 config MACH_TAVOREVB bool "PXA930 Evaluation Board (aka TavorEVB)" select PXA3xx select CPU_PXA930 config MACH_TAVOREVB3 bool "PXA95x Development Platform (aka TavorEVB III)" select CPU_PXA950 config MACH_SAAR bool "PXA930 Handheld Platform (aka SAAR)" select PXA3xx select CPU_PXA930 config MACH_SAARB bool "PXA955 Handheld Platform (aka SAARB)" select CPU_PXA955 comment "Third Party Dev Platforms (sorted by vendor name)" config ARCH_PXA_IDP bool "Accelent Xscale IDP" select PXA25x config ARCH_VIPER bool "Arcom/Eurotech VIPER SBC" select PXA25x select ISA select I2C_GPIO select HAVE_PWM select PXA_HAVE_ISA_IRQS select ARCOM_PCMCIA config MACH_ARCOM_ZEUS bool "Arcom/Eurotech ZEUS SBC" select PXA27x select ISA select PXA_HAVE_ISA_IRQS select ARCOM_PCMCIA config MACH_BALLOON3 bool "Balloon 3 board" select PXA27x select IWMMXT config MACH_CSB726 bool "Enable Cogent CSB726 System On a Module" select PXA27x select IWMMXT help Say Y here if you intend to run this kernel on a Cogent CSB726 System On Module. config CSB726_CSB701 bool "Enable support for CSB701 baseboard" depends on MACH_CSB726 config MACH_ARMCORE bool "CompuLab CM-X255/CM-X270 modules" select PXA27x select IWMMXT select PXA25x select MIGHT_HAVE_PCI config MACH_EM_X270 bool "CompuLab EM-x270 platform" select PXA27x config MACH_EXEDA bool "CompuLab eXeda platform" select PXA27x config MACH_CM_X300 bool "CompuLab CM-X300 modules" select PXA3xx select CPU_PXA300 select CPU_PXA310 select HAVE_PWM config MACH_CAPC7117 bool "Embedian CAPC-7117 evaluation kit based on the MXM-8x10 CoM" select CPU_PXA320 select PXA3xx config ARCH_GUMSTIX bool "Gumstix XScale 255 boards" select PXA25x help Say Y here if you intend to run this kernel on Basix, Connex, ws-200ax, ws-400ax systems choice prompt "Gumstix Carrier/Expansion Board" depends on ARCH_GUMSTIX config GUMSTIX_AM200EPD bool "Enable AM200EPD board support" config GUMSTIX_AM300EPD bool "Enable AM300EPD board support" endchoice config MACH_INTELMOTE2 bool "Intel Mote 2 Platform" select PXA27x select IWMMXT config MACH_STARGATE2 bool "Intel Stargate 2 Platform" select PXA27x select IWMMXT config MACH_XCEP bool "Iskratel Electronics XCEP" select PXA25x select MTD select MTD_PARTITIONS select MTD_PHYSMAP select MTD_CFI_INTELEXT select MTD_CFI select MTD_CHAR select SMC91X help PXA255 based Single Board Computer with SMC 91C111 ethernet chip and 64 MB of flash. Tuned for usage in Libera instruments for particle accelerators. config TRIZEPS_PXA bool "PXA based Keith und Koep Trizeps DIMM-Modules" config MACH_TRIZEPS4 bool "Keith und Koep Trizeps4 DIMM-Module" depends on TRIZEPS_PXA select TRIZEPS_PCMCIA select PXA27x config MACH_TRIZEPS4WL bool "Keith und Koep Trizeps4-WL DIMM-Module" depends on TRIZEPS_PXA select TRIZEPS_PCMCIA select PXA27x choice prompt "Select base board for Trizeps module" depends on TRIZEPS_PXA config MACH_TRIZEPS_CONXS bool "ConXS Eval Board" config MACH_TRIZEPS_UCONXS bool "uConXS Eval Board" config MACH_TRIZEPS_ANY bool "another Board" endchoice config ARCOM_PCMCIA bool help Generic option for Arcom Viper/Zeus PCMCIA config TRIZEPS_PCMCIA bool help Enable PCMCIA support for Trizeps modules config MACH_LOGICPD_PXA270 bool "LogicPD PXA270 Card Engine Development Platform" select PXA27x select HAVE_PWM config MACH_PCM027 bool "Phytec phyCORE-PXA270 CPU module (PCM-027)" select PXA27x select IWMMXT config MACH_PCM990_BASEBOARD bool "PHYTEC PCM-990 development board" select HAVE_PWM depends on MACH_PCM027 choice prompt "display on pcm990" depends on MACH_PCM990_BASEBOARD config PCM990_DISPLAY_SHARP bool "sharp lq084v1dg21 stn display" config PCM990_DISPLAY_NEC bool "nec nl6448bc20_18d tft display" config PCM990_DISPLAY_NONE bool "no display" endchoice config MACH_COLIBRI bool "Toradex Colibri PXA270" select PXA27x config MACH_COLIBRI_PXA270_INCOME bool "Income s.r.o. PXA270 SBC" depends on MACH_COLIBRI select PXA27x select HAVE_PWM config MACH_COLIBRI300 bool "Toradex Colibri PXA300/310" select PXA3xx select CPU_PXA300 select CPU_PXA310 config MACH_COLIBRI320 bool "Toradex Colibri PXA320" select PXA3xx select CPU_PXA320 config MACH_COLIBRI_EVALBOARD bool "Toradex Colibri Evaluation Carrier Board support" depends on MACH_COLIBRI || MACH_COLIBRI300 || MACH_COLIBRI320 config MACH_VPAC270 bool "Voipac PXA270" select PXA27x select HAVE_PATA_PLATFORM help PXA270 based Single Board Computer. comment "End-user Products (sorted by vendor name)" config MACH_H4700 bool "HP iPAQ hx4700" select PXA27x select IWMMXT select HAVE_PWM config MACH_H5000 bool "HP iPAQ h5000" select PXA25x config MACH_HIMALAYA bool "HTC Himalaya Support" select CPU_PXA26x config MACH_MAGICIAN bool "Enable HTC Magician Support" select PXA27x select IWMMXT select HAVE_PWM config MACH_MIOA701 bool "Mitac Mio A701 Support" select PXA27x select IWMMXT select HAVE_PWM select GPIO_SYSFS help Say Y here if you intend to run this kernel on a MIO A701. Currently there is only basic support for this PDA. config PXA_EZX bool "Motorola EZX Platform" select PXA27x select IWMMXT select HAVE_PWM config MACH_EZX_A780 bool "Motorola EZX A780" default y depends on PXA_EZX config MACH_EZX_E680 bool "Motorola EZX E680" default y depends on PXA_EZX config MACH_EZX_A1200 bool "Motorola EZX A1200" default y depends on PXA_EZX config MACH_EZX_A910 bool "Motorola EZX A910" default y depends on PXA_EZX config MACH_EZX_E6 bool "Motorola EZX E6" default y depends on PXA_EZX config MACH_EZX_E2 bool "Motorola EZX E2" default y depends on PXA_EZX config MACH_MP900C bool "Nec Mobilepro 900/c" select PXA25x config ARCH_PXA_PALM bool "PXA based Palm PDAs" select HAVE_PWM config MACH_PALM27X bool config MACH_PALMTE2 bool "Palm Tungsten|E2" default y depends on ARCH_PXA_PALM select PXA25x help Say Y here if you intend to run this kernel on a Palm Tungsten|E2 handheld computer. config MACH_PALMTC bool "Palm Tungsten|C" default y depends on ARCH_PXA_PALM select PXA25x help Say Y here if you intend to run this kernel on a Palm Tungsten|C handheld computer. config MACH_PALMT5 bool "Palm Tungsten|T5" default y depends on ARCH_PXA_PALM select PXA27x select IWMMXT select MACH_PALM27X help Say Y here if you intend to run this kernel on a Palm Tungsten|T5 handheld computer. config MACH_PALMTX bool "Palm T|X" default y depends on ARCH_PXA_PALM select PXA27x select IWMMXT select MACH_PALM27X help Say Y here if you intend to run this kernel on a Palm T|X handheld computer. config MACH_PALMZ72 bool "Palm Zire 72" default y depends on ARCH_PXA_PALM select PXA27x select IWMMXT select MACH_PALM27X help Say Y here if you intend to run this kernel on Palm Zire 72 handheld computer. config MACH_PALMLD bool "Palm LifeDrive" default y depends on ARCH_PXA_PALM select PXA27x select IWMMXT select MACH_PALM27X help Say Y here if you intend to run this kernel on a Palm LifeDrive handheld computer. config PALM_TREO bool depends on ARCH_PXA_PALM config MACH_CENTRO bool "Palm Centro 685 (GSM)" default y depends on ARCH_PXA_PALM select PXA27x select IWMMXT select PALM_TREO help Say Y here if you intend to run this kernel on Palm Centro 685 (GSM) smartphone. config MACH_TREO680 bool "Palm Treo 680" default y depends on ARCH_PXA_PALM select PXA27x select IWMMXT select PALM_TREO help Say Y here if you intend to run this kernel on Palm Treo 680 smartphone. config MACH_RAUMFELD_RC bool "Raumfeld Controller" select PXA3xx select CPU_PXA300 select HAVE_PWM config MACH_RAUMFELD_CONNECTOR bool "Raumfeld Connector" select PXA3xx select CPU_PXA300 config MACH_RAUMFELD_SPEAKER bool "Raumfeld Speaker" select PXA3xx select CPU_PXA300 config PXA_SHARPSL bool "SHARP Zaurus SL-5600, SL-C7xx and SL-Cxx00 Models" select SHARP_SCOOP select SHARP_PARAM help Say Y here if you intend to run this kernel on a Sharp Zaurus SL-5600 (Poodle), SL-C700 (Corgi), SL-C750 (Shepherd), SL-C760 (Husky), SL-C1000 (Akita), SL-C3000 (Spitz), SL-C3100 (Borzoi) or SL-C6000x (Tosa) handheld computer. config PXA_SHARPSL_DETECT_MACH_ID bool "Detect machine ID at run-time in the decompressor" depends on PXA_SHARPSL help Say Y here if you want the zImage decompressor to detect the Zaurus machine ID at run-time. For latest kexec-based boot loader, this is not necessary. config MACH_POODLE bool "Enable Sharp SL-5600 (Poodle) Support" depends on PXA_SHARPSL select PXA25x select SHARP_LOCOMO config MACH_CORGI bool "Enable Sharp SL-C700 (Corgi) Support" depends on PXA_SHARPSL select PXA25x select PXA_SHARP_C7xx config MACH_SHEPHERD bool "Enable Sharp SL-C750 (Shepherd) Support" depends on PXA_SHARPSL select PXA25x select PXA_SHARP_C7xx config MACH_HUSKY bool "Enable Sharp SL-C760 (Husky) Support" depends on PXA_SHARPSL select PXA25x select PXA_SHARP_C7xx config MACH_AKITA bool "Enable Sharp SL-1000 (Akita) Support" depends on PXA_SHARPSL select PXA27x select PXA_SHARP_Cxx00 select MACH_SPITZ select I2C select I2C_PXA config MACH_SPITZ bool "Enable Sharp Zaurus SL-3000 (Spitz) Support" depends on PXA_SHARPSL select PXA27x select PXA_SHARP_Cxx00 config MACH_BORZOI bool "Enable Sharp Zaurus SL-3100 (Borzoi) Support" depends on PXA_SHARPSL select PXA27x select PXA_SHARP_Cxx00 config MACH_TOSA bool "Enable Sharp SL-6000x (Tosa) Support" depends on PXA_SHARPSL select PXA25x config TOSA_BT tristate "Control the state of built-in bluetooth chip on Sharp SL-6000" depends on MACH_TOSA select RFKILL help This is a simple driver that is able to control the state of built in bluetooth chip on tosa. config TOSA_USE_EXT_KEYCODES bool "Tosa keyboard: use extended keycodes" depends on MACH_TOSA default n help Say Y here to enable the tosa keyboard driver to generate extended (>= 127) keycodes. Be aware, that they can't be correctly interpreted by either console keyboard driver or by Kdrive keybd driver. Say Y only if you know, what you are doing! config MACH_ICONTROL bool "TMT iControl/SafeTCam based on the MXM-8x10 CoM" select CPU_PXA320 select PXA3xx config ARCH_PXA_ESERIES bool "PXA based Toshiba e-series PDAs" select PXA25x select FB_W100 config MACH_E330 bool "Toshiba e330" default y depends on ARCH_PXA_ESERIES help Say Y here if you intend to run this kernel on a Toshiba e330 family PDA. config MACH_E350 bool "Toshiba e350" default y depends on ARCH_PXA_ESERIES help Say Y here if you intend to run this kernel on a Toshiba e350 family PDA. config MACH_E740 bool "Toshiba e740" default y depends on ARCH_PXA_ESERIES help Say Y here if you intend to run this kernel on a Toshiba e740 family PDA. config MACH_E750 bool "Toshiba e750" default y depends on ARCH_PXA_ESERIES help Say Y here if you intend to run this kernel on a Toshiba e750 family PDA. config MACH_E400 bool "Toshiba e400" default y depends on ARCH_PXA_ESERIES help Say Y here if you intend to run this kernel on a Toshiba e400 family PDA. config MACH_E800 bool "Toshiba e800" default y depends on ARCH_PXA_ESERIES help Say Y here if you intend to run this kernel on a Toshiba e800 family PDA. config MACH_ZIPIT2 bool "Zipit Z2 Handheld" select PXA27x select HAVE_PWM endmenu config PXA25x bool select CPU_XSCALE help Select code specific to PXA21x/25x/26x variants config PXA27x bool select CPU_XSCALE help Select code specific to PXA27x variants config CPU_PXA26x bool select PXA25x help Select code specific to PXA26x (codename Dalhart) config PXA3xx bool select CPU_XSC3 help Select code specific to PXA3xx variants config CPU_PXA300 bool select PXA3xx help PXA300 (codename Monahans-L) config CPU_PXA310 bool select CPU_PXA300 select PXA310_ULPI if USB_ULPI help PXA310 (codename Monahans-LV) config CPU_PXA320 bool select PXA3xx help PXA320 (codename Monahans-P) config CPU_PXA930 bool select PXA3xx help PXA930 (codename Tavor-P) config CPU_PXA935 bool select CPU_PXA930 help PXA935 (codename Tavor-P65) config PXA95x bool select CPU_PJ4 help Select code specific to PXA95x variants config CPU_PXA955 bool select PXA95x help PXA950 (codename MG1) config PXA_SHARP_C7xx bool select SHARPSL_PM help Enable support for all Sharp C7xx models config PXA_SHARP_Cxx00 bool select SHARPSL_PM help Enable common support for Sharp Cxx00 models config SHARPSL_PM bool select APM_EMULATION select SHARPSL_PM_MAX1111 config SHARPSL_PM_MAX1111 bool select HWMON select SENSORS_MAX1111 config PXA_HAVE_ISA_IRQS bool config PXA310_ULPI bool endif # Copyright 2007 Simtec Electronics # # Licensed under GPLv2 config CPU_S3C2410 bool depends on ARCH_S3C2410 select CPU_ARM920T select S3C_GPIO_PULL_UP select S3C2410_CLOCK select S3C2410_GPIO select CPU_LLSERIAL_S3C2410 select S3C2410_PM if PM select S3C2410_CPUFREQ if CPU_FREQ_S3C24XX help Support for S3C2410 and S3C2410A family from the S3C24XX line of Samsung Mobile CPUs. config CPU_S3C2410_DMA bool depends on S3C2410_DMA && (CPU_S3C2410 || CPU_S3C2442) default y if CPU_S3C2410 || CPU_S3C2442 help DMA device selection for S3C2410 and compatible CPUs config S3C2410_PM bool help Power Management code common to S3C2410 and better config S3C2410_GPIO bool help GPIO code for S3C2410 and similar processors config SIMTEC_NOR bool help Internal node to specify machine has simtec NOR mapping config MACH_BAST_IDE bool select HAVE_PATA_PLATFORM help Internal node for machines with an BAST style IDE interface # cpu frequency scaling support config S3C2410_CPUFREQ bool depends on CPU_FREQ_S3C24XX && CPU_S3C2410 select S3C2410_CPUFREQ_UTILS help CPU Frequency scaling support for S3C2410 config S3C2410_PLLTABLE bool depends on S3C2410_CPUFREQ && CPU_FREQ_S3C24XX_PLL default y help Select the PLL table for the S3C2410 menu "S3C2410 Machines" config ARCH_SMDK2410 bool "SMDK2410/A9M2410" select CPU_S3C2410 select MACH_SMDK help Say Y here if you are using the SMDK2410 or the derived module A9M2410 config ARCH_H1940 bool "IPAQ H1940" select CPU_S3C2410 select PM_H1940 if PM select S3C_DEV_USB_HOST select S3C_DEV_NAND select S3C2410_SETUP_TS help Say Y here if you are using the HP IPAQ H1940 config H1940BT tristate "Control the state of H1940 bluetooth chip" depends on ARCH_H1940 select RFKILL help This is a simple driver that is able to control the state of built in bluetooth chip on h1940. config PM_H1940 bool help Internal node for H1940 and related PM config MACH_N30 bool "Acer N30 family" select CPU_S3C2410 select MACH_N35 select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you want suppt for the Acer N30, Acer N35, Navman PiN570, Yakumo AlphaX or Airis NC05 PDAs. config MACH_N35 bool help Internal node in order to enable support for Acer N35 if Acer N30 is selected. config ARCH_BAST bool "Simtec Electronics BAST (EB2410ITX)" select CPU_S3C2410 select S3C2410_IOTIMING if S3C2410_CPUFREQ select PM_SIMTEC if PM select SIMTEC_NOR select MACH_BAST_IDE select S3C24XX_DCLK select ISA select S3C_DEV_HWMON select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using the Simtec Electronics EB2410ITX development board (also known as BAST) config MACH_OTOM bool "NexVision OTOM Board" select CPU_S3C2410 select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using the Nex Vision OTOM board config MACH_AML_M5900 bool "AML M5900 Series" select CPU_S3C2410 select PM_SIMTEC if PM select S3C_DEV_USB_HOST help Say Y here if you are using the American Microsystems M5900 Series config BAST_PC104_IRQ bool "BAST PC104 IRQ support" depends on ARCH_BAST default y help Say Y here to enable the PC104 IRQ routing on the Simtec BAST (EB2410ITX) config MACH_TCT_HAMMER bool "TCT Hammer Board" select CPU_S3C2410 select S3C_DEV_USB_HOST help Say Y here if you are using the TinCanTools Hammer Board config MACH_VR1000 bool "Thorcom VR1000" select PM_SIMTEC if PM select S3C24XX_DCLK select SIMTEC_NOR select MACH_BAST_IDE select CPU_S3C2410 select S3C_DEV_USB_HOST help Say Y here if you are using the Thorcom VR1000 board. config MACH_QT2410 bool "QT2410" select CPU_S3C2410 select S3C_DEV_USB_HOST select S3C_DEV_NAND help Say Y here if you are using the Armzone QT2410 endmenu # Copyright 2008 Openmoko, Inc. # Simtec Electronics, Ben Dooks # # Licensed under GPLv2 # temporary until we can eliminate all drivers using it. config PLAT_S3C64XX bool depends on ARCH_S3C64XX select SAMSUNG_WAKEMASK default y help Base platform code for any Samsung S3C64XX device # Configuration options for the S3C6410 CPU config CPU_S3C6400 bool help Enable S3C6400 CPU support config CPU_S3C6410 bool help Enable S3C6410 CPU support config S3C64XX_DMA bool "S3C64XX DMA" select S3C_DMA config S3C64XX_SETUP_SDHCI select S3C64XX_SETUP_SDHCI_GPIO bool help Internal configuration for default SDHCI setup for S3C6400 and S3C6410 SoCs. config S3C64XX_DEV_ONENAND1 bool help Compile in platform device definition for OneNAND1 controller # platform specific device setup config S3C64XX_SETUP_I2C0 bool default y help Common setup code for i2c bus 0. Note, currently since i2c0 is always compiled, this setup helper is always compiled with it. config S3C64XX_SETUP_I2C1 bool help Common setup code for i2c bus 1. config S3C64XX_SETUP_IDE bool help Common setup code for S3C64XX IDE. config S3C64XX_SETUP_FB_24BPP bool help Common setup code for S3C64XX with an 24bpp RGB display helper. config S3C64XX_SETUP_KEYPAD bool help Common setup code for S3C64XX KEYPAD GPIO configurations config S3C64XX_SETUP_SDHCI_GPIO bool help Common setup code for S3C64XX SDHCI GPIO configurations # S36400 Macchine support config MACH_SMDK6400 bool "SMDK6400" select CPU_S3C6400 select S3C_DEV_HSMMC select S3C_DEV_NAND select S3C64XX_SETUP_SDHCI help Machine support for the Samsung SMDK6400 # S3C6410 machine support config MACH_ANW6410 bool "A&W6410" select CPU_S3C6410 select S3C_DEV_FB select S3C64XX_SETUP_FB_24BPP help Machine support for the A&W6410 config MACH_MINI6410 bool "MINI6410" select CPU_S3C6410 select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C64XX_SETUP_SDHCI select S3C_DEV_USB_HOST select S3C_DEV_NAND select S3C_DEV_FB select S3C64XX_SETUP_FB_24BPP select SAMSUNG_DEV_ADC select SAMSUNG_DEV_TS help Machine support for the FriendlyARM MINI6410 config MACH_REAL6410 bool "REAL6410" select CPU_S3C6410 select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C64XX_SETUP_SDHCI select S3C_DEV_FB select S3C64XX_SETUP_FB_24BPP select S3C_DEV_NAND select SAMSUNG_DEV_ADC select SAMSUNG_DEV_TS select S3C_DEV_USB_HOST help Machine support for the CoreWind REAL6410 config MACH_SMDK6410 bool "SMDK6410" select CPU_S3C6410 select SAMSUNG_DEV_ADC select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_I2C1 select SAMSUNG_DEV_IDE select S3C_DEV_FB select S3C_DEV_RTC select SAMSUNG_DEV_TS select S3C_DEV_USB_HOST select S3C_DEV_USB_HSOTG select S3C_DEV_WDT select SAMSUNG_DEV_KEYPAD select SAMSUNG_DEV_PWM select HAVE_S3C2410_WATCHDOG if WATCHDOG select S3C64XX_SETUP_SDHCI select S3C64XX_SETUP_I2C1 select S3C64XX_SETUP_IDE select S3C64XX_SETUP_FB_24BPP select S3C64XX_SETUP_KEYPAD help Machine support for the Samsung SMDK6410 # At least some of the SMDK6410s were shipped with the card detect # for the MMC/SD slots connected to the same input. This means that # either the boards need to be altered to have channel0 to an alternate # configuration or that only one slot can be used. choice prompt "SMDK6410 MMC/SD slot setup" depends on MACH_SMDK6410 config SMDK6410_SD_CH0 bool "Use channel 0 only" depends on MACH_SMDK6410 help Select CON7 (channel 0) as the MMC/SD slot, as at least some SMDK6410 boards come with the resistors fitted so that the card detects for channels 0 and 1 are the same. config SMDK6410_SD_CH1 bool "Use channel 1 only" depends on MACH_SMDK6410 help Select CON6 (channel 1) as the MMC/SD slot, as at least some SMDK6410 boards come with the resistors fitted so that the card detects for channels 0 and 1 are the same. endchoice config SMDK6410_WM1190_EV1 bool "Support Wolfson Microelectronics 1190-EV1 PMIC card" depends on MACH_SMDK6410 select REGULATOR select REGULATOR_WM8350 select S3C24XX_GPIO_EXTRA64 select MFD_WM8350_I2C select MFD_WM8350_CONFIG_MODE_0 select MFD_WM8350_CONFIG_MODE_3 select MFD_WM8352_CONFIG_MODE_0 help The Wolfson Microelectronics 1190-EV1 is a WM835x based PMIC and audio daughtercard for the Samsung SMDK6410 reference platform. Enabling this option will build support for this module into the kernel. The presence of the module will be detected at runtime so the the resulting kernel can be used with or without the 1190-EV1 fitted. config SMDK6410_WM1192_EV1 bool "Support Wolfson Microelectronics 1192-EV1 PMIC card" depends on MACH_SMDK6410 select REGULATOR select REGULATOR_WM831X select S3C24XX_GPIO_EXTRA64 select MFD_WM831X select MFD_WM831X_I2C help The Wolfson Microelectronics 1192-EV1 is a WM831x based PMIC daughtercard for the Samsung SMDK6410 reference platform. Enabling this option will build support for this module into the kernel. The presence of the daughtercard will be detected at runtime so the the resulting kernel can be used with or without the 1192-EV1 fitted. config MACH_NCP bool "NCP" select CPU_S3C6410 select S3C_DEV_I2C1 select S3C_DEV_HSMMC1 select S3C64XX_SETUP_I2C1 help Machine support for the Samsung NCP config MACH_HMT bool "Airgoo HMT" select CPU_S3C6410 select S3C_DEV_FB select S3C_DEV_NAND select S3C_DEV_USB_HOST select S3C64XX_SETUP_FB_24BPP select SAMSUNG_DEV_PWM help Machine support for the Airgoo HMT config MACH_SMARTQ bool select CPU_S3C6410 select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_HSMMC2 select S3C_DEV_FB select S3C_DEV_HWMON select S3C_DEV_RTC select S3C_DEV_USB_HSOTG select S3C_DEV_USB_HOST select S3C64XX_SETUP_SDHCI select S3C64XX_SETUP_FB_24BPP select SAMSUNG_DEV_ADC select SAMSUNG_DEV_PWM select SAMSUNG_DEV_TS help Shared machine support for SmartQ 5/7 config MACH_SMARTQ5 bool "SmartQ 5" select MACH_SMARTQ help Machine support for the SmartQ 5 config MACH_SMARTQ7 bool "SmartQ 7" select MACH_SMARTQ help Machine support for the SmartQ 7 # arch/arm/mach-s3c2416/Kconfig # # Copyright 2009 Yauhen Kharuzhy # # Licensed under GPLv2 # note, this also supports the S3C2450 which is so similar it has the same # ID code as the S3C2416. config CPU_S3C2416 bool depends on ARCH_S3C2410 select CPU_ARM926T select S3C2416_DMA if S3C2410_DMA select CPU_LLSERIAL_S3C2440 select S3C_GPIO_PULL_UPDOWN select SAMSUNG_CLKSRC select S3C2443_CLOCK help Support for the S3C2416 SoC from the S3C24XX line config S3C2416_DMA bool depends on CPU_S3C2416 help Internal config node for S3C2416 DMA support config S3C2416_PM bool select S3C2412_PM_SLEEP help Internal config node to apply S3C2416 power management config S3C2416_SETUP_SDHCI bool select S3C2416_SETUP_SDHCI_GPIO help Internal helper functions for S3C2416 based SDHCI systems config S3C2416_SETUP_SDHCI_GPIO bool help Common setup code for SDHCI gpio. menu "S3C2416 Machines" config MACH_SMDK2416 bool "SMDK2416" select CPU_S3C2416 select MACH_SMDK select S3C_DEV_FB select S3C_DEV_HSMMC select S3C_DEV_HSMMC1 select S3C_DEV_NAND select S3C_DEV_USB_HOST select S3C2416_SETUP_SDHCI select S3C2416_PM if PM help Say Y here if you are using an SMDK2416 endmenu if ARCH_KIRKWOOD menu "Marvell Kirkwood Implementations" config MACH_DB88F6281_BP bool "Marvell DB-88F6281-BP Development Board" help Say 'Y' here if you want your kernel to support the Marvell DB-88F6281-BP Development Board. config MACH_RD88F6192_NAS bool "Marvell RD-88F6192-NAS Reference Board" help Say 'Y' here if you want your kernel to support the Marvell RD-88F6192-NAS Reference Board. config MACH_RD88F6281 bool "Marvell RD-88F6281 Reference Board" help Say 'Y' here if you want your kernel to support the Marvell RD-88F6281 Reference Board. config MACH_MV88F6281GTW_GE bool "Marvell 88F6281 GTW GE Board" help Say 'Y' here if you want your kernel to support the Marvell 88F6281 GTW GE Board. config MACH_SHEEVAPLUG bool "Marvell SheevaPlug Reference Board" help Say 'Y' here if you want your kernel to support the Marvell SheevaPlug Reference Board. config MACH_ESATA_SHEEVAPLUG bool "Marvell eSATA SheevaPlug Reference Board" help Say 'Y' here if you want your kernel to support the Marvell eSATA SheevaPlug Reference Board. config MACH_GURUPLUG bool "Marvell GuruPlug Reference Board" help Say 'Y' here if you want your kernel to support the Marvell GuruPlug Reference Board. config MACH_TS219 bool "QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS" help Say 'Y' here if you want your kernel to support the QNAP TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and TS-219P+ Turbo NAS devices. config MACH_TS41X bool "QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo NAS" help Say 'Y' here if you want your kernel to support the QNAP TS-410, TS-410U, TS-419P, TS-419P+ and TS-419U Turbo NAS devices. config MACH_DOCKSTAR bool "Seagate FreeAgent DockStar" help Say 'Y' here if you want your kernel to support the Seagate FreeAgent DockStar. config MACH_OPENRD bool config MACH_OPENRD_BASE bool "Marvell OpenRD Base Board" select MACH_OPENRD help Say 'Y' here if you want your kernel to support the Marvell OpenRD Base Board. config MACH_OPENRD_CLIENT bool "Marvell OpenRD Client Board" select MACH_OPENRD help Say 'Y' here if you want your kernel to support the Marvell OpenRD Client Board. config MACH_OPENRD_ULTIMATE bool "Marvell OpenRD Ultimate Board" select MACH_OPENRD help Say 'Y' here if you want your kernel to support the Marvell OpenRD Ultimate Board. config MACH_NETSPACE_V2 bool "LaCie Network Space v2 NAS Board" help Say 'Y' here if you want your kernel to support the LaCie Network Space v2 NAS. config MACH_INETSPACE_V2 bool "LaCie Internet Space v2 NAS Board" help Say 'Y' here if you want your kernel to support the LaCie Internet Space v2 NAS. config MACH_NETSPACE_MAX_V2 bool "LaCie Network Space Max v2 NAS Board" help Say 'Y' here if you want your kernel to support the LaCie Network Space Max v2 NAS. config MACH_D2NET_V2 bool "LaCie d2 Network v2 NAS Board" help Say 'Y' here if you want your kernel to support the LaCie d2 Network v2 NAS. config MACH_NET2BIG_V2 bool "LaCie 2Big Network v2 NAS Board" help Say 'Y' here if you want your kernel to support the LaCie 2Big Network v2 NAS. config MACH_NET5BIG_V2 bool "LaCie 5Big Network v2 NAS Board" help Say 'Y' here if you want your kernel to support the LaCie 5Big Network v2 NAS. config MACH_T5325 bool "HP t5325 Thin Client" help Say 'Y' here if you want your kernel to support the HP t5325 Thin Client. endmenu endif menu "Versatile platform type" depends on ARCH_VERSATILE config ARCH_VERSATILE_PB bool "Support Versatile Platform Baseboard for ARM926EJ-S" select CPU_ARM926T select MIGHT_HAVE_PCI default y help Include support for the ARM(R) Versatile Platform Baseboard for the ARM926EJ-S. config MACH_VERSATILE_AB bool "Support Versatile Application Baseboard for ARM926EJ-S" select CPU_ARM926T help Include support for the ARM(R) Versatile Application Baseboard for the ARM926EJ-S. endmenu if PLAT_PXA config PXA_SSP tristate help Enable support for PXA2xx SSP ports endif if ARCH_KS8695 menu "Kendin/Micrel KS8695 Implementations" config MACH_KS8695 bool "KS8695 development board" select MIGHT_HAVE_PCI help Say 'Y' here if you want your kernel to run on the original Kendin-Micrel KS8695 development board. config MACH_DSM320 bool "DSM-320 Wireless Media Player" help Say 'Y' here if you want your kernel to run on the D-Link DSM-320 Wireless Media Player. config MACH_ACS5K bool "Brivo Systems LLC, ACS-5000 Master board" help say 'Y' here if you want your kernel to run on the Brivo Systems LLC, ACS-5000 Master board. endmenu endif if ARCH_MX3 # ARCH_MX31 and ARCH_MX35 are left for compatibility # Some usages assume that having one of them implies not having (e.g.) ARCH_MX2. # To easily distinguish good and reviewed from unreviewed usages new (and IMHO # more sensible) names are used: SOC_IMX31 and SOC_IMX35 config ARCH_MX31 bool config ARCH_MX35 bool config SOC_IMX31 bool select IMX_HAVE_PLATFORM_MXC_RNGA select ARCH_MXC_AUDMUX_V2 select ARCH_MX31 select MXC_AVIC config SOC_IMX35 bool select ARCH_MXC_IOMUX_V3 select ARCH_MXC_AUDMUX_V2 select HAVE_EPIT select ARCH_MX35 select MXC_AVIC comment "MX3 platforms:" config MACH_MX31ADS bool "Support MX31ADS platforms" select SOC_IMX31 select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_SSI select IMX_HAVE_PLATFORM_IMX_UART default y help Include support for MX31ADS platform. This includes specific configurations for the board and its peripherals. config MACH_MX31ADS_WM1133_EV1 bool "Support Wolfson Microelectronics 1133-EV1 module" depends on MACH_MX31ADS depends on MFD_WM8350_I2C depends on REGULATOR_WM8350 select MFD_WM8350_CONFIG_MODE_0 select MFD_WM8352_CONFIG_MODE_0 help Include support for the Wolfson Microelectronics 1133-EV1 PMU and audio module for the MX31ADS platform. config MACH_PCM037 bool "Support Phytec pcm037 (i.MX31) platforms" select SOC_IMX31 select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_MXC_W1 select MXC_ULPI if USB_ULPI help Include support for Phytec pcm037 platform. This includes specific configurations for the board and its peripherals. config MACH_PCM037_EET bool "Support pcm037 EET board extensions" depends on MACH_PCM037 select IMX_HAVE_PLATFORM_SPI_IMX help Add support for PCM037 EET baseboard extensions. If you are using the OLED display with EET, use "video=mx3fb:CMEL-OLED" kernel command-line parameter. config MACH_MX31LITE bool "Support MX31 LITEKIT (LogicPD)" select SOC_IMX31 select MXC_ULPI if USB_ULPI select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SPI_IMX help Include support for MX31 LITEKIT platform. This includes specific configurations for the board and its peripherals. config MACH_MX31_3DS bool "Support MX31PDK (3DS)" select SOC_IMX31 select MXC_DEBUG_BOARD select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_KEYPAD select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for MX31PDK (3DS) platform. This includes specific configurations for the board and its peripherals. config MACH_MX31_3DS_MXC_NAND_USE_BBT bool "Make the MXC NAND driver use the in flash Bad Block Table" depends on MACH_MX31_3DS depends on MTD_NAND_MXC help Enable this if you want that the MXC NAND driver uses the in flash Bad Block Table to know what blocks are bad instead of scanning the entire flash looking for bad block markers. config MACH_MX31MOBOARD bool "Support mx31moboard platforms (EPFL Mobots group)" select SOC_IMX31 select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for mx31moboard platform. This includes specific configurations for the board and its peripherals. config MACH_MX31LILLY bool "Support MX31 LILLY-1131 platforms (INCO startec)" select SOC_IMX31 select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI help Include support for mx31 based LILLY1131 modules. This includes specific configurations for the board and its peripherals. config MACH_QONG bool "Support Dave/DENX QongEVB-LITE platform" select SOC_IMX31 select IMX_HAVE_PLATFORM_IMX_UART help Include support for Dave/DENX QongEVB-LITE platform. This includes specific configurations for the board and its peripherals. config MACH_PCM043 bool "Support Phytec pcm043 (i.MX35) platforms" select SOC_IMX35 select IMX_HAVE_PLATFORM_FLEXCAN select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_SSI select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select MXC_ULPI if USB_ULPI help Include support for Phytec pcm043 platform. This includes specific configurations for the board and its peripherals. config MACH_ARMADILLO5X0 bool "Support Atmark Armadillo-500 Development Base Board" select SOC_IMX31 select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_MMC select IMX_HAVE_PLATFORM_MXC_NAND select MXC_ULPI if USB_ULPI help Include support for Atmark Armadillo-500 platform. This includes specific configurations for the board and its peripherals. config MACH_MX35_3DS bool "Support MX35PDK platform" select SOC_IMX35 select MXC_DEBUG_BOARD select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX help Include support for MX35PDK platform. This includes specific configurations for the board and its peripherals. config MACH_KZM_ARM11_01 bool "Support KZM-ARM11-01(Kyoto Microcomputer)" select SOC_IMX31 select IMX_HAVE_PLATFORM_IMX_UART help Include support for KZM-ARM11-01. This includes specific configurations for the board and its peripherals. config MACH_BUG bool "Support Buglabs BUGBase platform" select SOC_IMX31 select IMX_HAVE_PLATFORM_IMX_UART default y help Include support for BUGBase 1.3 platform. This includes specific configurations for the board and its peripherals. config MACH_EUKREA_CPUIMX35 bool "Support Eukrea CPUIMX35 Platform" select SOC_IMX35 select IMX_HAVE_PLATFORM_FLEXCAN select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select MXC_ULPI if USB_ULPI help Include support for Eukrea CPUIMX35 platform. This includes specific configurations for the board and its peripherals. choice prompt "Baseboard" depends on MACH_EUKREA_CPUIMX35 default MACH_EUKREA_MBIMXSD35_BASEBOARD config MACH_EUKREA_MBIMXSD35_BASEBOARD bool "Eukrea MBIMXSD development board" select IMX_HAVE_PLATFORM_IMX_SSI help This adds board specific devices that can be found on Eukrea's MBIMXSD evaluation board. endchoice config MACH_VPR200 bool "Support VPR200 platform" select SOC_IMX35 select IMX_HAVE_PLATFORM_FSL_USB2_UDC select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_MXC_EHCI select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX help Include support for VPR200 platform. This includes specific configurations for the board and its peripherals. endif if ARCH_FOOTBRIDGE menu "Footbridge Implementations" config ARCH_CATS bool "CATS" select FOOTBRIDGE_HOST select ISA select ISA_DMA select PCI help Say Y here if you intend to run this kernel on the CATS. Saying N will reduce the size of the Footbridge kernel. config ARCH_PERSONAL_SERVER bool "Compaq Personal Server" select FOOTBRIDGE_HOST select ISA select ISA_DMA select PCI ---help--- Say Y here if you intend to run this kernel on the Compaq Personal Server. Saying N will reduce the size of the Footbridge kernel. The Compaq Personal Server is not available for purchase. There are no product plans beyond the current research prototypes at this time. Information is available at: If you have any questions or comments about the Compaq Personal Server, send e-mail to . config ARCH_EBSA285_ADDIN bool "EBSA285 (addin mode)" select ARCH_EBSA285 select FOOTBRIDGE_ADDIN help Say Y here if you intend to run this kernel on the EBSA285 card in addin mode. Saying N will reduce the size of the Footbridge kernel. config ARCH_EBSA285_HOST bool "EBSA285 (host mode)" select ARCH_EBSA285 select FOOTBRIDGE_HOST select ISA select ISA_DMA select PCI help Say Y here if you intend to run this kernel on the EBSA285 card in host ("central function") mode. Saying N will reduce the size of the Footbridge kernel. config ARCH_NETWINDER bool "NetWinder" select FOOTBRIDGE_HOST select ISA select ISA_DMA select PCI help Say Y here if you intend to run this kernel on the Rebel.COM NetWinder. Information about this machine can be found at: Saying N will reduce the size of the Footbridge kernel. endmenu # Footbridge support config FOOTBRIDGE bool # Footbridge in host mode config FOOTBRIDGE_HOST bool # Footbridge in addin mode config FOOTBRIDGE_ADDIN bool # EBSA285 board in either host or addin mode config ARCH_EBSA285 select ARCH_MAY_HAVE_PC_FDC bool endif menu "CNS3XXX platform type" depends on ARCH_CNS3XXX config MACH_CNS3420VB bool "Support for CNS3420 Validation Board" select MIGHT_HAVE_PCI help Include support for the Cavium Networks CNS3420 MPCore Platform Baseboard. This is a platform with an on-board ARM11 MPCore and has support for USB, USB-OTG, MMC/SD/SDIO, SATA, PCI-E, etc. endmenu # # SPEAr Platform configuration file # if PLAT_SPEAR choice prompt "ST SPEAr Family" default ARCH_SPEAR3XX config ARCH_SPEAR3XX bool "SPEAr3XX" select ARM_VIC select CPU_ARM926T help Supports for ARM's SPEAR3XX family config ARCH_SPEAR6XX bool "SPEAr6XX" select ARM_VIC select CPU_ARM926T help Supports for ARM's SPEAR6XX family endchoice # Adding SPEAr machine specific configuration files source "arch/arm/mach-spear3xx/Kconfig" source "arch/arm/mach-spear6xx/Kconfig" endif # arch/arm/mach-s5p64x0/Kconfig # # Copyright (c) 2009-2010 Samsung Electronics Co., Ltd. # http://www.samsung.com/ # # Licensed under GPLv2 if ARCH_S5P64X0 config CPU_S5P6440 bool select S3C_PL330_DMA select S5P_HRT help Enable S5P6440 CPU support config CPU_S5P6450 bool select S3C_PL330_DMA select S5P_HRT help Enable S5P6450 CPU support config S5P64X0_SETUP_I2C1 bool help Common setup code for i2c bus 1. # machine support config MACH_SMDK6440 bool "SMDK6440" select CPU_S5P6440 select S3C_DEV_I2C1 select S3C_DEV_RTC select S3C_DEV_WDT select S3C64XX_DEV_SPI select SAMSUNG_DEV_ADC select SAMSUNG_DEV_PWM select SAMSUNG_DEV_TS select S5P64X0_SETUP_I2C1 help Machine support for the Samsung SMDK6440 config MACH_SMDK6450 bool "SMDK6450" select CPU_S5P6450 select S3C_DEV_I2C1 select S3C_DEV_RTC select S3C_DEV_WDT select S3C64XX_DEV_SPI select SAMSUNG_DEV_ADC select SAMSUNG_DEV_PWM select SAMSUNG_DEV_TS select S5P64X0_SETUP_I2C1 help Machine support for the Samsung SMDK6450 endif if ARCH_EP93XX menu "Cirrus EP93xx Implementation Options" config CRUNCH bool "Support for MaverickCrunch" help Enable kernel support for MaverickCrunch. comment "EP93xx Platforms" choice prompt "EP93xx first SDRAM bank selection" default EP93XX_SDCE3_SYNC_PHYS_OFFSET config EP93XX_SDCE3_SYNC_PHYS_OFFSET bool "0x00000000 - SDCE3/SyncBoot" help Select this option if you want support for EP93xx boards with the first SDRAM bank at 0x00000000. config EP93XX_SDCE0_PHYS_OFFSET bool "0xc0000000 - SDCEO" help Select this option if you want support for EP93xx boards with the first SDRAM bank at 0xc0000000. config EP93XX_SDCE1_PHYS_OFFSET bool "0xd0000000 - SDCE1" help Select this option if you want support for EP93xx boards with the first SDRAM bank at 0xd0000000. config EP93XX_SDCE2_PHYS_OFFSET bool "0xe0000000 - SDCE2" help Select this option if you want support for EP93xx boards with the first SDRAM bank at 0xe0000000. config EP93XX_SDCE3_ASYNC_PHYS_OFFSET bool "0xf0000000 - SDCE3/AsyncBoot" help Select this option if you want support for EP93xx boards with the first SDRAM bank at 0xf0000000. endchoice config MACH_ADSSPHERE bool "Support ADS Sphere" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET help Say 'Y' here if you want your kernel to support the ADS Sphere board. config MACH_EDB93XX bool config MACH_EDB9301 bool "Support Cirrus Logic EDB9301" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET select MACH_EDB93XX help Say 'Y' here if you want your kernel to support the Cirrus Logic EDB9301 Evaluation Board. config MACH_EDB9302 bool "Support Cirrus Logic EDB9302" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET select MACH_EDB93XX help Say 'Y' here if you want your kernel to support the Cirrus Logic EDB9302 Evaluation Board. config MACH_EDB9302A bool "Support Cirrus Logic EDB9302A" depends on EP93XX_SDCE0_PHYS_OFFSET select MACH_EDB93XX help Say 'Y' here if you want your kernel to support the Cirrus Logic EDB9302A Evaluation Board. config MACH_EDB9307 bool "Support Cirrus Logic EDB9307" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET select MACH_EDB93XX help Say 'Y' here if you want your kernel to support the Cirrus Logic EDB9307 Evaluation Board. config MACH_EDB9307A bool "Support Cirrus Logic EDB9307A" depends on EP93XX_SDCE0_PHYS_OFFSET select MACH_EDB93XX help Say 'Y' here if you want your kernel to support the Cirrus Logic EDB9307A Evaluation Board. config MACH_EDB9312 bool "Support Cirrus Logic EDB9312" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET select MACH_EDB93XX help Say 'Y' here if you want your kernel to support the Cirrus Logic EDB9312 Evaluation Board. config MACH_EDB9315 bool "Support Cirrus Logic EDB9315" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET select MACH_EDB93XX help Say 'Y' here if you want your kernel to support the Cirrus Logic EDB9315 Evaluation Board. config MACH_EDB9315A bool "Support Cirrus Logic EDB9315A" depends on EP93XX_SDCE0_PHYS_OFFSET select MACH_EDB93XX help Say 'Y' here if you want your kernel to support the Cirrus Logic EDB9315A Evaluation Board. config MACH_GESBC9312 depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET bool "Support Glomation GESBC-9312-sx" help Say 'Y' here if you want your kernel to support the Glomation GESBC-9312-sx board. config MACH_MICRO9 bool config MACH_MICRO9H bool "Support Contec Micro9-High" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET select MACH_MICRO9 help Say 'Y' here if you want your kernel to support the Contec Micro9-High board. config MACH_MICRO9M bool "Support Contec Micro9-Mid" depends on EP93XX_SDCE3_ASYNC_PHYS_OFFSET select MACH_MICRO9 help Say 'Y' here if you want your kernel to support the Contec Micro9-Mid board. config MACH_MICRO9L bool "Support Contec Micro9-Lite" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET select MACH_MICRO9 help Say 'Y' here if you want your kernel to support the Contec Micro9-Lite board. config MACH_MICRO9S bool "Support Contec Micro9-Slim" depends on EP93XX_SDCE3_ASYNC_PHYS_OFFSET select MACH_MICRO9 help Say 'Y' here if you want your kernel to support the Contec Micro9-Slim board. config MACH_SIM_ONE bool "Support Simplemachines Sim.One board" depends on EP93XX_SDCE0_PHYS_OFFSET help Say 'Y' here if you want your kernel to support the Simplemachines Sim.One board. config MACH_SNAPPER_CL15 bool "Support Bluewater Systems Snapper CL15 Module" depends on EP93XX_SDCE0_PHYS_OFFSET help Say 'Y' here if you want your kernel to support the Bluewater Systems Snapper CL15 Module. config MACH_TS72XX bool "Support Technologic Systems TS-72xx SBC" depends on EP93XX_SDCE3_SYNC_PHYS_OFFSET help Say 'Y' here if you want your kernel to support the Technologic Systems TS-72xx board. choice prompt "Select a UART for early kernel messages" config EP93XX_EARLY_UART1 bool "UART1" config EP93XX_EARLY_UART2 bool "UART2" config EP93XX_EARLY_UART3 bool "UART3" endchoice endmenu endif menu "Versatile Express platform type" depends on ARCH_VEXPRESS config ARCH_VEXPRESS_CA9X4 bool "Versatile Express Cortex-A9x4 tile" select CPU_V7 select ARM_GIC select ARM_ERRATA_720789 select ARM_ERRATA_751472 select ARM_ERRATA_753970 endmenu if ARCH_INTEGRATOR menu "Integrator Options" config ARCH_INTEGRATOR_AP bool "Support Integrator/AP and Integrator/PP2 platforms" select MIGHT_HAVE_PCI help Include support for the ARM(R) Integrator/AP and Integrator/PP2 platforms. config ARCH_INTEGRATOR_CP bool "Support Integrator/CP platform" select ARCH_CINTEGRATOR select ARM_TIMER_SP804 select PLAT_VERSATILE_CLCD help Include support for the ARM(R) Integrator CP platform. config ARCH_CINTEGRATOR bool config INTEGRATOR_IMPD1 tristate "Include support for Integrator/IM-PD1" depends on ARCH_INTEGRATOR_AP help The IM-PD1 is an add-on logic module for the Integrator which allows ARM(R) Ltd PrimeCells to be developed and evaluated. The IM-PD1 can be found on the Integrator/PP2 platform. To compile this driver as a module, choose M here: the module will be called impd1. endmenu endif if ARCH_IOP32X menu "IOP32x Implementation Options" comment "IOP32x Platform Types" config MACH_EP80219 bool config MACH_GLANTANK bool "Enable support for the IO-Data GLAN Tank" help Say Y here if you want to run your kernel on the GLAN Tank NAS appliance or machines from IO-Data's HDL-Gxxx, HDL-GWxxx and HDL-GZxxx series. config ARCH_IQ80321 bool "Enable support for IQ80321" help Say Y here if you want to run your kernel on the Intel IQ80321 evaluation kit for the IOP321 processor. config ARCH_IQ31244 bool "Enable support for EP80219/IQ31244" select MACH_EP80219 help Say Y here if you want to run your kernel on the Intel EP80219 evaluation kit for the Intel 80219 processor (a IOP321 variant) or the IQ31244 evaluation kit for the IOP321 processor. config MACH_N2100 bool "Enable support for the Thecus n2100" help Say Y here if you want to run your kernel on the Thecus n2100 NAS appliance. config MACH_EM7210 bool "Enable support for the Lanner EM7210" help Say Y here if you want to run your kernel on the Lanner EM7210 board. Say also Y here if you have a SS4000e Baxter Creek NAS appliance." endmenu endif if PLAT_VERSATILE config PLAT_VERSATILE_CLCD bool config PLAT_VERSATILE_FPGA_IRQ bool config PLAT_VERSATILE_LEDS def_bool y if LEDS_CLASS depends on ARCH_REALVIEW || ARCH_VERSATILE config PLAT_VERSATILE_SCHED_CLOCK def_bool y if !ARCH_INTEGRATOR_AP select HAVE_SCHED_CLOCK endif if ARCH_STMP3XXX menu "Freescale STMP3xxx implementations" choice prompt "Select STMP3xxx chip family" config ARCH_STMP37XX bool "Freescale SMTP37xx" select CPU_ARM926T ---help--- STMP37xx refers to 3700 through 3769 chips config ARCH_STMP378X bool "Freescale STMP378x" select CPU_ARM926T ---help--- STMP378x refers to 3780 through 3789 chips endchoice choice prompt "Select STMP3xxx board type" config MACH_STMP37XX depends on ARCH_STMP37XX bool "Freescale STMP37xx development board" config MACH_STMP378X depends on ARCH_STMP378X bool "Freescale STMP378x development board" endchoice endmenu endif # # SPEAr3XX Machine configuration file # if ARCH_SPEAR3XX choice prompt "SPEAr3XX Family" default MACH_SPEAR300 config MACH_SPEAR300 bool "SPEAr300" help Supports ST SPEAr300 Machine config MACH_SPEAR310 bool "SPEAr310" help Supports ST SPEAr310 Machine config MACH_SPEAR320 bool "SPEAr320" help Supports ST SPEAr320 Machine endchoice # Adding SPEAr3XX machine specific configuration files source "arch/arm/mach-spear3xx/Kconfig300" source "arch/arm/mach-spear3xx/Kconfig310" source "arch/arm/mach-spear3xx/Kconfig320" endif #ARCH_SPEAR3XX if ARCH_MXC91231 comment "MXC91231 platforms:" config MACH_MAGX_ZN5 bool "Support Motorola Zn5 GSM phone" default n help Include support for Motorola Zn5 GSM phone. endif if ARCH_CLPS711X menu "CLPS711X/EP721X Implementations" config ARCH_AUTCPU12 bool "AUTCPU12" help Say Y if you intend to run the kernel on the autronix autcpu12 board. This board is based on a Cirrus Logic CS89712. config ARCH_CDB89712 bool "CDB89712" select ISA help This is an evaluation board from Cirrus for the CS89712 processor. The board includes 2 serial ports, Ethernet, IRDA, and expansion headers. It comes with 16 MB SDRAM and 8 MB flash ROM. config ARCH_CEIVA bool "CEIVA" help Say Y here if you intend to run this kernel on the Ceiva/Polaroid PhotoMax Digital Picture Frame. config ARCH_CLEP7312 bool "CLEP7312" help Boards based on the Cirrus Logic 7212/7312 chips. config ARCH_EDB7211 bool "EDB7211" select ISA select ARCH_SPARSEMEM_ENABLE select ARCH_SELECT_MEMORY_MODEL help Say Y here if you intend to run this kernel on a Cirrus Logic EDB-7211 evaluation board. config ARCH_P720T bool "P720T" help Say Y here if you intend to run this kernel on the ARM Prospector 720T. config ARCH_FORTUNET bool "FORTUNET" # XXX Maybe these should indicate register compatibility # instead of being mutually exclusive. config ARCH_EP7211 bool depends on ARCH_EDB7211 default y config ARCH_EP7212 bool depends on ARCH_P720T || ARCH_CEIVA default y config EP72XX_ROM_BOOT bool "EP72xx ROM boot" depends on ARCH_EP7211 || ARCH_EP7212 ---help--- If you say Y here, your CLPS711x-based kernel will use the bootstrap mode memory map instead of the normal memory map. Processors derived from the Cirrus CLPS-711X core support two boot modes. Normal mode boots from the external memory device at CS0. Bootstrap mode rearranges parts of the memory map, placing an internal 128 byte bootstrap ROM at CS0. This option performs the address map changes required to support booting in this mode. You almost surely want to say N here. endmenu endif # Copyright 2007 Simtec Electronics # # Licensed under GPLv2 menu "S3C2400 Machines" endmenu if ARCH_MX5 # ARCH_MX50/51/53 are left to mark places where prevent multi-soc in single # image. So for most time, SOC_IMX50/51/53 should be used. config ARCH_MX50 bool config ARCH_MX51 bool config ARCH_MX53 bool config SOC_IMX50 bool select MXC_TZIC select ARCH_MXC_IOMUX_V3 select ARCH_MXC_AUDMUX_V2 select ARCH_HAS_CPUFREQ select ARCH_MX50 config SOC_IMX51 bool select MXC_TZIC select ARCH_MXC_IOMUX_V3 select ARCH_MXC_AUDMUX_V2 select ARCH_HAS_CPUFREQ select ARCH_MX51 config SOC_IMX53 bool select MXC_TZIC select ARCH_MXC_IOMUX_V3 select ARCH_MX53 comment "MX5 platforms:" config MACH_MX51_BABBAGE bool "Support MX51 BABBAGE platforms" select SOC_IMX51 select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select IMX_HAVE_PLATFORM_SPI_IMX help Include support for MX51 Babbage platform, also known as MX51EVK in u-boot. This includes specific configurations for the board and its peripherals. config MACH_MX51_3DS bool "Support MX51PDK (3DS)" select SOC_IMX51 select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_KEYPAD select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select IMX_HAVE_PLATFORM_SPI_IMX select MXC_DEBUG_BOARD help Include support for MX51PDK (3DS) platform. This includes specific configurations for the board and its peripherals. config MACH_EUKREA_CPUIMX51 bool "Support Eukrea CPUIMX51 module" select SOC_IMX51 select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_NAND select IMX_HAVE_PLATFORM_SPI_IMX help Include support for Eukrea CPUIMX51 platform. This includes specific configurations for the module and its peripherals. choice prompt "Baseboard" depends on MACH_EUKREA_CPUIMX51 default MACH_EUKREA_MBIMX51_BASEBOARD config MACH_EUKREA_MBIMX51_BASEBOARD prompt "Eukrea MBIMX51 development board" bool select IMX_HAVE_PLATFORM_IMX_KEYPAD select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX help This adds board specific devices that can be found on Eukrea's MBIMX51 evaluation board. endchoice config MACH_EUKREA_CPUIMX51SD bool "Support Eukrea CPUIMX51SD module" select SOC_IMX51 select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_SPI_IMX select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_MXC_NAND help Include support for Eukrea CPUIMX51SD platform. This includes specific configurations for the module and its peripherals. choice prompt "Baseboard" depends on MACH_EUKREA_CPUIMX51SD default MACH_EUKREA_MBIMXSD51_BASEBOARD config MACH_EUKREA_MBIMXSD51_BASEBOARD prompt "Eukrea MBIMXSD development board" bool select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX help This adds board specific devices that can be found on Eukrea's MBIMXSD evaluation board. endchoice config MX51_EFIKA_COMMON bool select SOC_IMX51 select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select IMX_HAVE_PLATFORM_SPI_IMX select MXC_ULPI if USB_ULPI config MACH_MX51_EFIKAMX bool "Support MX51 Genesi Efika MX nettop" select MX51_EFIKA_COMMON help Include support for Genesi Efika MX nettop. This includes specific configurations for the board and its peripherals. config MACH_MX51_EFIKASB bool "Support MX51 Genesi Efika Smartbook" select MX51_EFIKA_COMMON help Include support for Genesi Efika Smartbook. This includes specific configurations for the board and its peripherals. config MACH_MX53_EVK bool "Support MX53 EVK platforms" select SOC_IMX53 select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select IMX_HAVE_PLATFORM_SPI_IMX help Include support for MX53 EVK platform. This includes specific configurations for the board and its peripherals. config MACH_MX53_SMD bool "Support MX53 SMD platforms" select SOC_IMX53 select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART help Include support for MX53 SMD platform. This includes specific configurations for the board and its peripherals. config MACH_MX53_LOCO bool "Support MX53 LOCO platforms" select SOC_IMX53 select IMX_HAVE_PLATFORM_IMX2_WDT select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select IMX_HAVE_PLATFORM_GPIO_KEYS help Include support for MX53 LOCO platform. This includes specific configurations for the board and its peripherals. config MACH_MX50_RDP bool "Support MX50 reference design platform" depends on BROKEN select SOC_IMX50 select IMX_HAVE_PLATFORM_IMX_I2C select IMX_HAVE_PLATFORM_IMX_UART select IMX_HAVE_PLATFORM_SDHCI_ESDHC_IMX select IMX_HAVE_PLATFORM_SPI_IMX select IMX_HAVE_PLATFORM_FEC help Include support for MX50 reference design platform (RDP) board. This includes specific configurations for the board and its peripherals. endif config FRAME_POINTER def_bool n config ZONE_DMA def_bool y config XTENSA def_bool y select HAVE_IDE select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_SHOW help Xtensa processors are 32-bit RISC machines designed by Tensilica primarily for embedded systems. These processors are both configurable and extensible. The Linux port to the Xtensa architecture supports all processor configurations and extensions, with reasonable minimum requirements. The Xtensa Linux project has a home page at . config RWSEM_XCHGADD_ALGORITHM def_bool y config GENERIC_FIND_NEXT_BIT def_bool y config GENERIC_FIND_BIT_LE def_bool y config GENERIC_HWEIGHT def_bool y config GENERIC_GPIO def_bool y config ARCH_HAS_ILOG2_U32 def_bool n config ARCH_HAS_ILOG2_U64 def_bool n config NO_IOPORT def_bool y config HZ int default 100 source "init/Kconfig" source "kernel/Kconfig.freezer" config MMU def_bool n config VARIANT_IRQ_SWITCH def_bool n menu "Processor type and features" choice prompt "Xtensa Processor Configuration" default XTENSA_VARIANT_FSF config XTENSA_VARIANT_FSF bool "fsf - default (not generic) configuration" select MMU config XTENSA_VARIANT_DC232B bool "dc232b - Diamond 232L Standard Core Rev.B (LE)" select MMU help This variant refers to Tensilica's Diamond 232L Standard core Rev.B (LE). config XTENSA_VARIANT_S6000 bool "s6000 - Stretch software configurable processor" select VARIANT_IRQ_SWITCH select ARCH_REQUIRE_GPIOLIB select XTENSA_CALIBRATE_CCOUNT endchoice config XTENSA_UNALIGNED_USER bool "Unaligned memory access in use space" help The Xtensa architecture currently does not handle unaligned memory accesses in hardware but through an exception handler. Per default, unaligned memory accesses are disabled in user space. Say Y here to enable unaligned memory access in user space. config PREEMPT bool "Preemptible Kernel" help This option reduces the latency of the kernel when reacting to real-time or interactive events by allowing a low priority process to be preempted even if it is in kernel mode executing a system call. Unfortunately the kernel code has some race conditions if both CONFIG_SMP and CONFIG_PREEMPT are enabled, so this option is currently disabled if you are building an SMP kernel. Say Y here if you are building a kernel for a desktop, embedded or real-time system. Say N if you are unsure. config MATH_EMULATION bool "Math emulation" help Can we use information of configuration file? endmenu config XTENSA_CALIBRATE_CCOUNT def_bool n help On some platforms (XT2000, for example), the CPU clock rate can vary. The frequency can be determined, however, by measuring against a well known, fixed frequency, such as an UART oscillator. config SERIAL_CONSOLE def_bool n config XTENSA_ISS_NETWORK def_bool n menu "Bus options" config PCI bool "PCI support" default y help Find out whether you have a PCI motherboard. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. Other bus systems are ISA, EISA, MicroChannel (MCA) or VESA. If you have PCI, say Y, otherwise N. source "drivers/pci/Kconfig" endmenu menu "Platform options" choice prompt "Xtensa System Type" default XTENSA_PLATFORM_ISS config XTENSA_PLATFORM_ISS bool "ISS" select XTENSA_CALIBRATE_CCOUNT select SERIAL_CONSOLE select XTENSA_ISS_NETWORK help ISS is an acronym for Tensilica's Instruction Set Simulator. config XTENSA_PLATFORM_XT2000 bool "XT2000" help XT2000 is the name of Tensilica's feature-rich emulation platform. This hardware is capable of running a full Linux distribution. config XTENSA_PLATFORM_S6105 bool "S6105" select SERIAL_CONSOLE endchoice config XTENSA_CPU_CLOCK int "CPU clock rate [MHz]" depends on !XTENSA_CALIBRATE_CCOUNT default 16 config GENERIC_CALIBRATE_DELAY bool "Auto calibration of the BogoMIPS value" help The BogoMIPS value can easily be derived from the CPU frequency. config CMDLINE_BOOL bool "Default bootloader kernel arguments" config CMDLINE string "Initial kernel command string" depends on CMDLINE_BOOL default "console=ttyS0,38400 root=/dev/ram" help On some architectures (EBSA110 and CATS), there is currently no way for the boot loader to pass arguments to the kernel. For these architectures, you should supply some command-line options at build time by entering them here. As a minimum, you should specify the memory size and the root device (e.g., mem=64M root=/dev/nfs). source "mm/Kconfig" config HOTPLUG bool "Support for hot-pluggable devices" help Say Y here if you want to plug devices into your computer while the system is running, and be able to use them quickly. In many cases, the devices can likewise be unplugged at any time too. One well known example of this is PCMCIA- or PC-cards, credit-card size devices such as network cards, modems or hard drives which are plugged into slots found on all modern laptop computers. Another example, used on modern desktops as well as laptops, is USB. Enable HOTPLUG and build a modular kernel. Get agent software (from ) and install it. Then your kernel will automatically call out to a user mode "policy agent" (/sbin/hotplug) to load modules and set up software needed to use devices as you hotplug them. source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" endmenu menu "Executable file formats" # only elf supported config KCORE_ELF def_bool y depends on PROC_FS help If you enabled support for /proc file system then the file /proc/kcore will contain the kernel core image in ELF format. This can be used in gdb: $ cd /usr/src/linux ; gdb vmlinux /proc/kcore This is especially useful if you have compiled the kernel with the "-g" option to preserve debugging information. It is mainly used for examining kernel data structures on the live kernel. source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" menu "Xtensa initrd options" depends on BLK_DEV_INITRD config EMBEDDED_RAMDISK bool "Embed root filesystem ramdisk into the kernel" config EMBEDDED_RAMDISK_IMAGE string "Filename of gzipped ramdisk image" depends on EMBEDDED_RAMDISK default "ramdisk.gz" help This is the filename of the ramdisk image to be built into the kernel. Relative pathnames are relative to arch/xtensa/boot/ramdisk/. The ramdisk image is not part of the kernel distribution; you must provide one yourself. endmenu source "arch/xtensa/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" config 64BIT bool "64-bit kernel" if ARCH = "sparc" default ARCH = "sparc64" help SPARC is a family of RISC microprocessors designed and marketed by Sun Microsystems, incorporated. They are very widely found in Sun workstations and clones. Say yes to build a 64-bit kernel - formerly known as sparc64 Say no to build a 32-bit kernel - formerly known as sparc config SPARC bool default y select OF select OF_PROMTREE select HAVE_IDE select HAVE_OPROFILE select HAVE_ARCH_KGDB if !SMP || SPARC64 select HAVE_ARCH_TRACEHOOK select ARCH_WANT_OPTIONAL_GPIOLIB select RTC_CLASS select RTC_DRV_M48T59 select HAVE_IRQ_WORK select HAVE_DMA_ATTRS select HAVE_DMA_API_DEBUG select HAVE_ARCH_JUMP_LABEL config SPARC32 def_bool !64BIT config SPARC64 def_bool 64BIT select ARCH_SUPPORTS_MSI select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_GRAPH_TRACER select HAVE_FUNCTION_GRAPH_FP_TEST select HAVE_FUNCTION_TRACE_MCOUNT_TEST select HAVE_KRETPROBES select HAVE_KPROBES select HAVE_MEMBLOCK select HAVE_SYSCALL_WRAPPERS select HAVE_DYNAMIC_FTRACE select HAVE_FTRACE_MCOUNT_RECORD select HAVE_SYSCALL_TRACEPOINTS select USE_GENERIC_SMP_HELPERS if SMP select RTC_DRV_CMOS select RTC_DRV_BQ4802 select RTC_DRV_SUN4V select RTC_DRV_STARFIRE select HAVE_PERF_EVENTS select PERF_USE_VMALLOC select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_SHOW select IRQ_PREFLOW_FASTEOI config ARCH_DEFCONFIG string default "arch/sparc/configs/sparc32_defconfig" if SPARC32 default "arch/sparc/configs/sparc64_defconfig" if SPARC64 # CONFIG_BITS can be used at source level to get 32/64 bits config BITS int default 32 if SPARC32 default 64 if SPARC64 config ARCH_USES_GETTIMEOFFSET bool default y if SPARC32 config GENERIC_CMOS_UPDATE bool default y config GENERIC_CLOCKEVENTS bool default y if SPARC64 config IOMMU_HELPER bool default y if SPARC64 config QUICKLIST bool default y if SPARC64 config STACKTRACE_SUPPORT bool default y if SPARC64 config LOCKDEP_SUPPORT bool default y if SPARC64 config HAVE_LATENCYTOP_SUPPORT bool default y if SPARC64 config AUDIT_ARCH bool default y config HAVE_SETUP_PER_CPU_AREA def_bool y if SPARC64 config NEED_PER_CPU_EMBED_FIRST_CHUNK def_bool y if SPARC64 config NEED_PER_CPU_PAGE_FIRST_CHUNK def_bool y if SPARC64 config MMU bool default y config HIGHMEM bool default y if SPARC32 config ZONE_DMA bool default y if SPARC32 config NEED_DMA_MAP_STATE def_bool y config NEED_SG_DMA_LENGTH def_bool y config GENERIC_ISA_DMA bool default y if SPARC32 config GENERIC_GPIO bool help Generic GPIO API support config ARCH_NO_VIRT_TO_BUS def_bool y config ARCH_SUPPORTS_DEBUG_PAGEALLOC def_bool y if SPARC64 source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Processor type and features" config SMP bool "Symmetric multi-processing support (does not work on sun4/sun4c)" ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. People using multiprocessor machines who say Y here should also say Y to "Enhanced Real Time Clock Support", below. The "Advanced Power Management" code will be disabled if you say Y here. See also and the SMP-HOWTO available at . If you don't know what to do here, say N. config NR_CPUS int "Maximum number of CPUs" depends on SMP range 2 32 if SPARC32 range 2 1024 if SPARC64 default 32 if SPARC32 default 64 if SPARC64 source kernel/Kconfig.hz config RWSEM_GENERIC_SPINLOCK bool default y if SPARC32 config RWSEM_XCHGADD_ALGORITHM bool default y if SPARC64 config GENERIC_FIND_NEXT_BIT bool default y config GENERIC_FIND_BIT_LE bool default y config GENERIC_HWEIGHT bool default y if !ULTRA_HAS_POPULATION_COUNT config GENERIC_CALIBRATE_DELAY bool default y config ARCH_MAY_HAVE_PC_FDC bool default y config EMULATED_CMPXCHG bool default y if SPARC32 help Sparc32 does not have a CAS instruction like sparc64. cmpxchg() is emulated, and therefore it is not completely atomic. # Makefile helpers config SPARC32_SMP bool default y depends on SPARC32 && SMP config SPARC64_SMP bool default y depends on SPARC64 && SMP config EARLYFB bool "Support for early boot text console" default y depends on SPARC64 help Say Y here to enable a faster early framebuffer boot console. choice prompt "Kernel page size" if SPARC64 default SPARC64_PAGE_SIZE_8KB config SPARC64_PAGE_SIZE_8KB bool "8KB" help This lets you select the page size of the kernel. 8KB and 64KB work quite well, since SPARC ELF sections provide for up to 64KB alignment. If you don't know what to do, choose 8KB. config SPARC64_PAGE_SIZE_64KB bool "64KB" endchoice config SECCOMP bool "Enable seccomp to safely compute untrusted bytecode" depends on SPARC64 && PROC_FS default y help This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via /proc//seccomp, it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. If unsure, say Y. Only embedded should say N here. config HOTPLUG_CPU bool "Support for hot-pluggable CPUs" depends on SPARC64 && SMP select HOTPLUG help Say Y here to experiment with turning CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. source "kernel/time/Kconfig" if SPARC64 source "drivers/cpufreq/Kconfig" config US3_FREQ tristate "UltraSPARC-III CPU Frequency driver" depends on CPU_FREQ select CPU_FREQ_TABLE help This adds the CPUFreq driver for UltraSPARC-III processors. For details, take a look at . If in doubt, say N. config US2E_FREQ tristate "UltraSPARC-IIe CPU Frequency driver" depends on CPU_FREQ select CPU_FREQ_TABLE help This adds the CPUFreq driver for UltraSPARC-IIe processors. For details, take a look at . If in doubt, say N. endif config US3_MC tristate "UltraSPARC-III Memory Controller driver" depends on SPARC64 default y help This adds a driver for the UltraSPARC-III memory controller. Loading this driver allows exact mnemonic strings to be printed in the event of a memory error, so that the faulty DIMM on the motherboard can be matched to the error. If in doubt, say Y, as this information can be very useful. # Global things across all Sun machines. config GENERIC_LOCKBREAK bool default y depends on SPARC64 && SMP && PREEMPT choice prompt "SPARC64 Huge TLB Page Size" depends on SPARC64 && HUGETLB_PAGE default HUGETLB_PAGE_SIZE_4MB config HUGETLB_PAGE_SIZE_4MB bool "4MB" config HUGETLB_PAGE_SIZE_512K bool "512K" config HUGETLB_PAGE_SIZE_64K depends on !SPARC64_PAGE_SIZE_64KB bool "64K" endchoice config NUMA bool "NUMA support" depends on SPARC64 && SMP config NODES_SHIFT int default "4" depends on NEED_MULTIPLE_NODES # Some NUMA nodes have memory ranges that span # other nodes. Even though a pfn is valid and # between a node's start and end pfns, it may not # reside on that node. See memmap_init_zone() # for details. config NODES_SPAN_OTHER_NODES def_bool y depends on NEED_MULTIPLE_NODES config ARCH_POPULATES_NODE_MAP def_bool y if SPARC64 config ARCH_SELECT_MEMORY_MODEL def_bool y if SPARC64 config ARCH_SPARSEMEM_ENABLE def_bool y if SPARC64 select SPARSEMEM_VMEMMAP_ENABLE config ARCH_SPARSEMEM_DEFAULT def_bool y if SPARC64 source "mm/Kconfig" config SCHED_SMT bool "SMT (Hyperthreading) scheduler support" depends on SPARC64 && SMP default y help SMT scheduler support improves the CPU scheduler's decision making when dealing with SPARC cpus at a cost of slightly increased overhead in some places. If unsure say N here. config SCHED_MC bool "Multi-core scheduler support" depends on SPARC64 && SMP default y help Multi-core scheduler support improves the CPU scheduler's decision making when dealing with multi-core CPU chips at a cost of slightly increased overhead in some places. If unsure say N here. if SPARC64 source "kernel/Kconfig.preempt" endif config CMDLINE_BOOL bool "Default bootloader kernel arguments" depends on SPARC64 config CMDLINE string "Initial kernel command string" depends on CMDLINE_BOOL default "console=ttyS0,9600 root=/dev/sda1" help Say Y here if you want to be able to pass default arguments to the kernel. This will be overridden by the bootloader, if you use one (such as SILO). This is most useful if you want to boot a kernel from TFTP, and want default options to be available with having them passed on the command line. NOTE: This option WILL override the PROM bootargs setting! config SUN_PM bool default y if SPARC32 help Enable power management and CPU standby features on supported SPARC platforms. config SPARC_LED tristate "Sun4m LED driver" depends on SPARC32 help This driver toggles the front-panel LED on sun4m systems in a user-specifiable manner. Its state can be probed by reading /proc/led and its blinking mode can be changed via writes to /proc/led config SERIAL_CONSOLE bool depends on SPARC32 default y ---help--- If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). This could be useful if some terminal or printer is connected to that serial port. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyS1". (Try "man bootparam" or see the documentation of your boot loader (silo) about how to pass options to the kernel at boot time.) If you don't have a graphics card installed and you say Y here, the kernel will automatically use the first serial line, /dev/ttyS0, as system console. If unsure, say N. config SPARC_LEON bool "Sparc Leon processor family" depends on SPARC32 ---help--- If you say Y here if you are running on a SPARC-LEON processor. The LEON processor is a synthesizable VHDL model of the SPARC-v8 standard. LEON is part of the GRLIB collection of IP cores that are distributed under GPL. GRLIB can be downloaded from www.gaisler.com. You can download a sparc-linux cross-compilation toolchain at www.gaisler.com. if SPARC_LEON menu "U-Boot options" config UBOOT_LOAD_ADDR hex "uImage Load Address" default 0x40004000 ---help--- U-Boot kernel load address, the address in physical address space where u-boot will place the Linux kernel before booting it. This address is normally the base address of main memory + 0x4000. config UBOOT_FLASH_ADDR hex "uImage.o Load Address" default 0x00080000 ---help--- Optional setting only affecting the uImage.o ELF-image used to download the uImage file to the target using a ELF-loader other than U-Boot. It may for example be used to download an uImage to FLASH with the GRMON utility before even starting u-boot. config UBOOT_ENTRY_ADDR hex "uImage Entry Address" default 0xf0004000 ---help--- Do not change this unless you know what you're doing. This is hardcoded by the SPARC32 and LEON port. This is the virtual address u-boot jumps to when booting the Linux Kernel. endmenu endif endmenu menu "Bus options (PCI etc.)" config SBUS bool default y config SBUSCHAR bool default y config SUN_LDOMS bool "Sun Logical Domains support" depends on SPARC64 help Say Y here is you want to support virtual devices via Logical Domains. config PCI bool "Support for PCI and PS/2 keyboard/mouse" help Find out whether your system includes a PCI bus. PCI is the name of a bus system, i.e. the way the CPU talks to the other stuff inside your box. If you say Y here, the kernel will include drivers and infrastructure code to support PCI bus devices. CONFIG_PCI is needed for all JavaStation's (including MrCoffee), CP-1200, JavaEngine-1, Corona, Red October, and Serengeti SGSC. All of these platforms are extremely obscure, so say N if unsure. config PCI_DOMAINS def_bool PCI if SPARC64 config PCI_SYSCALL def_bool PCI source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" config SUN_OPENPROMFS tristate "Openprom tree appears in /proc/openprom" help If you say Y, the OpenPROM device tree will be available as a virtual file system, which you can mount to /proc/openprom by "mount -t openpromfs none /proc/openprom". To compile the /proc/openprom support as a module, choose M here: the module will be called openpromfs. Only choose N if you know in advance that you will not need to modify OpenPROM settings on the running system. # Makefile helpers config SPARC32_PCI bool default y depends on SPARC32 && PCI config SPARC64_PCI bool default y depends on SPARC64 && PCI endmenu menu "Executable file formats" source "fs/Kconfig.binfmt" config COMPAT bool depends on SPARC64 default y select COMPAT_BINFMT_ELF config SYSVIPC_COMPAT bool depends on COMPAT && SYSVIPC default y endmenu source "net/Kconfig" source "drivers/Kconfig" source "drivers/sbus/char/Kconfig" source "fs/Kconfig" source "arch/sparc/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" config M68K bool default y select HAVE_IDE select HAVE_AOUT if MMU select GENERIC_ATOMIC64 if MMU select HAVE_GENERIC_HARDIRQS if !MMU config RWSEM_GENERIC_SPINLOCK bool default y config RWSEM_XCHGADD_ALGORITHM bool config ARCH_HAS_ILOG2_U32 bool config ARCH_HAS_ILOG2_U64 bool config GENERIC_HWEIGHT bool default y config GENERIC_CALIBRATE_DELAY bool default y config TIME_LOW_RES bool default y config NO_IOPORT def_bool y config NO_DMA def_bool (MMU && SUN3) || (!MMU && !COLDFIRE) config ZONE_DMA bool default y config HZ int default 1000 if CLEOPATRA default 100 source "init/Kconfig" source "kernel/Kconfig.freezer" config MMU bool "MMU-based Paged Memory Management Support" default y help Select if you want MMU-based virtualised addressing space support by paged memory management. If unsure, say 'Y'. menu "Platform dependent setup" if MMU source arch/m68k/Kconfig.mmu endif if !MMU source arch/m68k/Kconfig.nommu endif source "mm/Kconfig" endmenu menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu if !MMU menu "Power management options" config PM bool "Power Management support" help Support processor power management modes endmenu endif source "net/Kconfig" source "drivers/Kconfig" if MMU menu "Character devices" config ATARI_MFPSER tristate "Atari MFP serial support" depends on ATARI ---help--- If you like to use the MFP serial ports ("Modem1", "Serial1") under Linux, say Y. The driver equally supports all kinds of MFP serial ports and automatically detects whether Serial1 is available. To compile this driver as a module, choose M here. Note for Falcon users: You also have an MFP port, it's just not wired to the outside... But you could use the port under Linux. config ATARI_MIDI tristate "Atari MIDI serial support" depends on ATARI help If you want to use your Atari's MIDI port in Linux, say Y. To compile this driver as a module, choose M here. config ATARI_DSP56K tristate "Atari DSP56k support (EXPERIMENTAL)" depends on ATARI && EXPERIMENTAL help If you want to be able to use the DSP56001 in Falcons, say Y. This driver is still experimental, and if you don't know what it is, or if you don't have this processor, just say N. To compile this driver as a module, choose M here. config AMIGA_BUILTIN_SERIAL tristate "Amiga builtin serial support" depends on AMIGA help If you want to use your Amiga's built-in serial port in Linux, answer Y. To compile this driver as a module, choose M here. config MULTIFACE_III_TTY tristate "Multiface Card III serial support" depends on AMIGA help If you want to use a Multiface III card's serial port in Linux, answer Y. To compile this driver as a module, choose M here. config GVPIOEXT tristate "GVP IO-Extender support" depends on PARPORT=n && ZORRO help If you want to use a GVP IO-Extender serial card in Linux, say Y. Otherwise, say N. config GVPIOEXT_LP tristate "GVP IO-Extender parallel printer support" depends on GVPIOEXT help Say Y to enable driving a printer from the parallel port on your GVP IO-Extender card, N otherwise. config GVPIOEXT_PLIP tristate "GVP IO-Extender PLIP support" depends on GVPIOEXT help Say Y to enable doing IP over the parallel port on your GVP IO-Extender card, N otherwise. config MAC_HID bool depends on INPUT_ADBHID default y config HPDCA tristate "HP DCA serial support" depends on DIO && SERIAL_8250 help If you want to use the internal "DCA" serial ports on an HP300 machine, say Y here. config HPAPCI tristate "HP APCI serial support" depends on HP300 && SERIAL_8250 && EXPERIMENTAL help If you want to use the internal "APCI" serial ports on an HP400 machine, say Y here. config MVME147_SCC bool "SCC support for MVME147 serial ports" depends on MVME147 && BROKEN help This is the driver for the serial ports on the Motorola MVME147 boards. Everyone using one of these boards should say Y here. config MVME162_SCC bool "SCC support for MVME162 serial ports" depends on MVME16x && BROKEN help This is the driver for the serial ports on the Motorola MVME162 and 172 boards. Everyone using one of these boards should say Y here. config BVME6000_SCC bool "SCC support for BVME6000 serial ports" depends on BVME6000 && BROKEN help This is the driver for the serial ports on the BVME4000 and BVME6000 boards from BVM Ltd. Everyone using one of these boards should say Y here. config DN_SERIAL bool "Support for DN serial port (dummy)" depends on APOLLO config SERIAL_CONSOLE bool "Support for serial port console" depends on (AMIGA || ATARI || SUN3 || SUN3X || VME || APOLLO) && (ATARI_MFPSER=y || ATARI_MIDI=y || AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y || SERIAL=y || MVME147_SCC || SERIAL167 || MVME162_SCC || BVME6000_SCC || DN_SERIAL) ---help--- If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). This could be useful if some terminal or printer is connected to that serial port. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyS1". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) If you don't have a VGA card installed and you say Y here, the kernel will automatically use the first serial line, /dev/ttyS0, as system console. If unsure, say N. endmenu endif source "fs/Kconfig" source "arch/m68k/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" config AVR32 def_bool y # With EXPERT=n, we get lots of stuff automatically selected # that we usually don't need on AVR32. select EXPERT select HAVE_CLK select HAVE_OPROFILE select HAVE_KPROBES select HAVE_GENERIC_HARDIRQS select GENERIC_IRQ_PROBE select HARDIRQS_SW_RESEND select GENERIC_IRQ_SHOW help AVR32 is a high-performance 32-bit RISC microprocessor core, designed for cost-sensitive embedded applications, with particular emphasis on low power consumption and high code density. There is an AVR32 Linux project with a web page at http://avr32linux.org/. config GENERIC_GPIO def_bool y config STACKTRACE_SUPPORT def_bool y config LOCKDEP_SUPPORT def_bool y config TRACE_IRQFLAGS_SUPPORT def_bool y config RWSEM_GENERIC_SPINLOCK def_bool y config GENERIC_CLOCKEVENTS def_bool y config RWSEM_XCHGADD_ALGORITHM def_bool n config ARCH_HAS_ILOG2_U32 def_bool n config ARCH_HAS_ILOG2_U64 def_bool n config GENERIC_HWEIGHT def_bool y config GENERIC_CALIBRATE_DELAY def_bool y config GENERIC_BUG def_bool y depends on BUG source "init/Kconfig" source "kernel/Kconfig.freezer" menu "System Type and features" source "kernel/time/Kconfig" config SUBARCH_AVR32B bool config MMU bool config PERFORMANCE_COUNTERS bool config PLATFORM_AT32AP bool select SUBARCH_AVR32B select MMU select PERFORMANCE_COUNTERS select ARCH_REQUIRE_GPIOLIB select GENERIC_ALLOCATOR select HAVE_FB_ATMEL select HAVE_NET_MACB # # CPU types # # AP7000 derivatives config CPU_AT32AP700X bool select PLATFORM_AT32AP config CPU_AT32AP7000 bool select CPU_AT32AP700X config CPU_AT32AP7001 bool select CPU_AT32AP700X config CPU_AT32AP7002 bool select CPU_AT32AP700X # AP700X boards config BOARD_ATNGW100_COMMON bool select CPU_AT32AP7000 choice prompt "AVR32 board type" default BOARD_ATSTK1000 config BOARD_ATSTK1000 bool "ATSTK1000 evaluation board" config BOARD_ATNGW100_MKI bool "ATNGW100 Network Gateway" select BOARD_ATNGW100_COMMON config BOARD_ATNGW100_MKII bool "ATNGW100 mkII Network Gateway" select BOARD_ATNGW100_COMMON config BOARD_HAMMERHEAD bool "Hammerhead board" select CPU_AT32AP7000 select USB_ARCH_HAS_HCD help The Hammerhead platform is built around an AVR32 32-bit microcontroller from Atmel. It offers versatile peripherals, such as ethernet, usb device, usb host etc. The board also incorporates a power supply and is a Power over Ethernet (PoE) Powered Device (PD). Additionally, a Cyclone III FPGA from Altera is integrated on the board. The FPGA is mapped into the 32-bit AVR memory bus. The FPGA offers two DDR2 SDRAM interfaces, which will cover even the most exceptional need of memory bandwidth. Together with the onboard video decoder the board is ready for video processing. For more information see: http://www.miromico.ch/index.php/hammerhead.html config BOARD_FAVR_32 bool "Favr-32 LCD-board" select CPU_AT32AP7000 config BOARD_MERISC bool "Merisc board" select CPU_AT32AP7000 help Merisc is the family name for a range of AVR32-based boards. The boards are designed to be used in a man-machine interfacing environment, utilizing a touch-based graphical user interface. They host a vast range of I/O peripherals as well as a large SDRAM & Flash memory bank. For more information see: http://www.martinsson.se/merisc config BOARD_MIMC200 bool "MIMC200 CPU board" select CPU_AT32AP7000 endchoice source "arch/avr32/boards/atstk1000/Kconfig" source "arch/avr32/boards/atngw100/Kconfig" source "arch/avr32/boards/hammerhead/Kconfig" source "arch/avr32/boards/favr-32/Kconfig" source "arch/avr32/boards/merisc/Kconfig" choice prompt "Boot loader type" default LOADER_U_BOOT config LOADER_U_BOOT bool "U-Boot (or similar) bootloader" endchoice source "arch/avr32/mach-at32ap/Kconfig" config LOAD_ADDRESS hex default 0x10000000 if LOADER_U_BOOT=y && CPU_AT32AP700X=y config ENTRY_ADDRESS hex default 0x90000000 if LOADER_U_BOOT=y && CPU_AT32AP700X=y config PHYS_OFFSET hex default 0x10000000 if CPU_AT32AP700X=y source "kernel/Kconfig.preempt" config QUICKLIST def_bool y config HAVE_ARCH_BOOTMEM def_bool n config ARCH_HAVE_MEMORY_PRESENT def_bool n config NEED_NODE_MEMMAP_SIZE def_bool n config ARCH_FLATMEM_ENABLE def_bool y config ARCH_DISCONTIGMEM_ENABLE def_bool n config ARCH_SPARSEMEM_ENABLE def_bool n source "mm/Kconfig" config OWNERSHIP_TRACE bool "Ownership trace support" default y help Say Y to generate an Ownership Trace message on every context switch, enabling Nexus-compliant debuggers to keep track of the PID of the currently executing task. config NMI_DEBUGGING bool "NMI Debugging" default n help Say Y here and pass the nmi_debug command-line parameter to the kernel to turn on NMI debugging. Depending on the value of the nmi_debug option, various pieces of information will be dumped to the console when a Non-Maskable Interrupt happens. # FPU emulation goes here source "kernel/Kconfig.hz" config CMDLINE string "Default kernel command line" default "" help If you don't have a boot loader capable of passing a command line string to the kernel, you may specify one here. As a minimum, you should specify the memory size and the root device (e.g., mem=8M, root=/dev/nfs). endmenu menu "Power management options" source "kernel/power/Kconfig" config ARCH_SUSPEND_POSSIBLE def_bool y menu "CPU Frequency scaling" source "drivers/cpufreq/Kconfig" config CPU_FREQ_AT32AP bool "CPU frequency driver for AT32AP" depends on CPU_FREQ && PLATFORM_AT32AP default n help This enables the CPU frequency driver for AT32AP processors. For details, take a look in . If in doubt, say N. endmenu endmenu menu "Bus options" config PCI bool source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" endmenu menu "Executable file formats" source "fs/Kconfig.binfmt" endmenu source "net/Kconfig" source "drivers/Kconfig" source "fs/Kconfig" source "arch/avr32/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" # Hammerhead customization if BOARD_HAMMERHEAD config BOARD_HAMMERHEAD_USB bool "Philips ISP116x-hcd USB support" help This enables USB support for Hammerheads internal ISP116x controller from Philips. Choose 'Y' here if you want to have your board USB driven. config BOARD_HAMMERHEAD_LCD bool "Atmel AT91/AT32 LCD support" help This enables LCD support for the Hammerhead board. You may also add support for framebuffer devices (AT91/AT32 LCD Controller) and framebuffer console support to get the most out of your LCD. Choose 'Y' here if you have ordered a Corona daugther board and want to have support for your Hantronix HDA-351T-LV LCD. config BOARD_HAMMERHEAD_SND bool "Atmel AC97 Sound support" help This enables Sound support for the Hammerhead board. You may also go through the ALSA settings to get it working. Choose 'Y' here if you have ordered a Corona daugther board and want to make your board funky. config BOARD_HAMMERHEAD_FPGA bool "Hammerhead FPGA Support" default y help This adds support for the Cyclone III FPGA from Altera found on Miromico's Hammerhead board. Choose 'Y' here if you want to have FPGA support enabled. You will have to choose the "Hammerhead FPGA Device Support" in Device Drivers->Misc to be able to use FPGA functionality. endif # BOARD_ATNGW100 # STK1000 customization if BOARD_ATSTK1000 choice prompt "ATSTK1000 CPU daughterboard type" default BOARD_ATSTK1002 config BOARD_ATSTK1002 bool "ATSTK1002" select CPU_AT32AP7000 config BOARD_ATSTK1003 bool "ATSTK1003" select CPU_AT32AP7001 config BOARD_ATSTK1004 bool "ATSTK1004" select CPU_AT32AP7002 config BOARD_ATSTK1006 bool "ATSTK1006" select CPU_AT32AP7000 endchoice config BOARD_ATSTK100X_CUSTOM bool "Non-default STK1002/STK1003/STK1004 jumper settings" help You will normally leave the jumpers on the CPU card at their default settings. If you need to use certain peripherals, you will need to change some of those jumpers. if BOARD_ATSTK100X_CUSTOM config BOARD_ATSTK100X_SW1_CUSTOM bool "SW1: use SSC1 (not SPI0)" help This also prevents using the external DAC as an audio interface, and means you can't initialize the on-board QVGA display. config BOARD_ATSTK100X_SW2_CUSTOM bool "SW2: use IRDA or TIMER0 (not UART-A, MMC/SD, and PS2-A)" help If you change this you'll want an updated boot loader putting the console on UART-C not UART-A. config BOARD_ATSTK100X_SW3_CUSTOM bool "SW3: use TIMER1 (not SSC0 and GCLK)" help This also prevents using the external DAC as an audio interface. config BOARD_ATSTK100X_SW4_CUSTOM bool "SW4: use ISI/Camera (not GPIOs, SPI1, and PS2-B)" help To use the camera interface you'll need a custom card (on the PCI-format connector) connect a video sensor. config BOARD_ATSTK1002_SW5_CUSTOM bool "SW5: use MACB1 (not LCDC)" depends on BOARD_ATSTK1002 config BOARD_ATSTK1002_SW6_CUSTOM bool "SW6: more GPIOs (not MACB0)" depends on BOARD_ATSTK1002 endif # custom config BOARD_ATSTK100X_SPI1 bool "Configure SPI1 controller" depends on !BOARD_ATSTK100X_SW4_CUSTOM help All the signals for the second SPI controller are available on GPIO lines and accessed through the J1 jumper block. Say "y" here to configure that SPI controller. config BOARD_ATSTK1000_J2_LED bool default BOARD_ATSTK1000_J2_LED8 || BOARD_ATSTK1000_J2_RGB choice prompt "LEDs connected to J2:" depends on LEDS_GPIO && !BOARD_ATSTK100X_SW4_CUSTOM optional help Select this if you have jumpered the J2 jumper block to the LED0..LED7 amber leds, or to the RGB leds, using a ten-pin IDC cable. A default "heartbeat" trigger is provided, but you can of course override this. config BOARD_ATSTK1000_J2_LED8 bool "LED0..LED7" help Select this if J2 is jumpered to LED0..LED7 amber leds. config BOARD_ATSTK1000_J2_RGB bool "RGB leds" help Select this if J2 is jumpered to the RGB leds. endchoice config BOARD_ATSTK1000_EXTDAC bool depends on !BOARD_ATSTK100X_SW1_CUSTOM && !BOARD_ATSTK100X_SW3_CUSTOM default y endif # stk 1000 # Merisc customization if BOARD_MERISC endif # BOARD_MERISC # Favr-32 customization if BOARD_FAVR_32 config BOARD_FAVR32_ABDAC_RATE int "DAC target rate" default 44100 range 32000 50000 help Specify the target rate the internal DAC should try to match. This will use PLL1 to generate a frequency as close as possible to this rate. Must be within the range 32000 to 50000, which should be suitable to generate most other frequencies in power of 2 steps. Ex: 48000 will also suit 24000 and 12000 44100 will also suit 22050 and 11025 32000 will also suit 16000 and 8000 endif # BOARD_FAVR_32 # NGW100 customization if BOARD_ATNGW100_COMMON config BOARD_ATNGW100_MKII_LCD bool "Enable ATNGW100 mkII LCD interface" depends on BOARD_ATNGW100_MKII help This enables the LCD controller (LCDC) in the AT32AP7000. Since the LCDC is multiplexed with MACB1 (LAN) Ethernet port, only one can be enabled at a time. This choice enables the LCDC and disables the MACB1 interface marked LAN on the PCB. choice prompt "Select an NGW100 add-on board to support" default BOARD_ATNGW100_ADDON_NONE config BOARD_ATNGW100_ADDON_NONE bool "None" config BOARD_ATNGW100_EVKLCD10X bool "EVKLCD10X addon board" depends on BOARD_ATNGW100_MKI || BOARD_ATNGW100_MKII_LCD help This enables support for the EVKLCD100 (QVGA) or EVKLCD101 (VGA) addon board for the NGW100 and NGW100 mkII. By enabling this the LCD controller and AC97 controller is added as platform devices. config BOARD_ATNGW100_MRMT bool "Mediama RMT1/2 add-on board" help This enables support for the Mediama RMT1 or RMT2 board. RMT provides LCD support, AC97 codec and other optional peripherals to the Atmel NGW100. This choice disables the detect pin and the write-protect pin for the MCI platform device, since it conflicts with the LCD platform device. The MCI pins can be reenabled by editing the "add device function" but this may break the setup for other displays that use these pins. endchoice choice prompt "LCD panel resolution on EVKLCD10X" depends on BOARD_ATNGW100_EVKLCD10X default BOARD_ATNGW100_EVKLCD10X_VGA config BOARD_ATNGW100_EVKLCD10X_QVGA bool "QVGA (320x240)" config BOARD_ATNGW100_EVKLCD10X_VGA bool "VGA (640x480)" config BOARD_ATNGW100_EVKLCD10X_POW_QVGA bool "Powertip QVGA (320x240)" endchoice if BOARD_ATNGW100_MRMT source "arch/avr32/boards/atngw100/Kconfig_mrmt" endif endif # BOARD_ATNGW100_COMMON if PLATFORM_AT32AP menu "Atmel AVR32 AP options" choice prompt "AT32AP700x static memory bus width" depends on CPU_AT32AP700X default AP700X_16_BIT_SMC help Define the width of the AP7000 external static memory interface. This is used to determine how to mangle the address and/or data when doing little-endian port access. The current code can only support a single external memory bus width for all chip selects, excluding the flash (which is using raw access and is thus not affected by any of this.) config AP700X_32_BIT_SMC bool "32 bit" config AP700X_16_BIT_SMC bool "16 bit" config AP700X_8_BIT_SMC bool "8 bit" endchoice endmenu endif # PLATFORM_AT32AP config MMU def_bool y config ZONE_DMA def_bool y if 64BIT config LOCKDEP_SUPPORT def_bool y config STACKTRACE_SUPPORT def_bool y config HAVE_LATENCYTOP_SUPPORT def_bool y config RWSEM_GENERIC_SPINLOCK bool config RWSEM_XCHGADD_ALGORITHM def_bool y config ARCH_HAS_ILOG2_U32 def_bool n config ARCH_HAS_ILOG2_U64 def_bool n config GENERIC_HWEIGHT def_bool y config GENERIC_TIME_VSYSCALL def_bool y config GENERIC_CLOCKEVENTS def_bool y config GENERIC_BUG def_bool y if BUG config GENERIC_BUG_RELATIVE_POINTERS def_bool y config NO_IOMEM def_bool y config NO_DMA def_bool y config ARCH_DMA_ADDR_T_64BIT def_bool 64BIT config GENERIC_LOCKBREAK def_bool y if SMP && PREEMPT config PGSTE def_bool y if KVM config VIRT_CPU_ACCOUNTING def_bool y config ARCH_SUPPORTS_DEBUG_PAGEALLOC def_bool y config S390 def_bool y select USE_GENERIC_SMP_HELPERS if SMP select HAVE_SYSCALL_WRAPPERS select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_TRACE_MCOUNT_TEST select HAVE_FTRACE_MCOUNT_RECORD select HAVE_C_RECORDMCOUNT select HAVE_SYSCALL_TRACEPOINTS select HAVE_DYNAMIC_FTRACE select HAVE_FUNCTION_GRAPH_TRACER select HAVE_REGS_AND_STACK_ACCESS_API select HAVE_OPROFILE select HAVE_KPROBES select HAVE_KRETPROBES select HAVE_KVM if 64BIT select HAVE_ARCH_TRACEHOOK select INIT_ALL_POSSIBLE select HAVE_IRQ_WORK select HAVE_PERF_EVENTS select HAVE_KERNEL_GZIP select HAVE_KERNEL_BZIP2 select HAVE_KERNEL_LZMA select HAVE_KERNEL_LZO select HAVE_KERNEL_XZ select HAVE_GET_USER_PAGES_FAST select HAVE_ARCH_MUTEX_CPU_RELAX select ARCH_INLINE_SPIN_TRYLOCK select ARCH_INLINE_SPIN_TRYLOCK_BH select ARCH_INLINE_SPIN_LOCK select ARCH_INLINE_SPIN_LOCK_BH select ARCH_INLINE_SPIN_LOCK_IRQ select ARCH_INLINE_SPIN_LOCK_IRQSAVE select ARCH_INLINE_SPIN_UNLOCK select ARCH_INLINE_SPIN_UNLOCK_BH select ARCH_INLINE_SPIN_UNLOCK_IRQ select ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE select ARCH_INLINE_READ_TRYLOCK select ARCH_INLINE_READ_LOCK select ARCH_INLINE_READ_LOCK_BH select ARCH_INLINE_READ_LOCK_IRQ select ARCH_INLINE_READ_LOCK_IRQSAVE select ARCH_INLINE_READ_UNLOCK select ARCH_INLINE_READ_UNLOCK_BH select ARCH_INLINE_READ_UNLOCK_IRQ select ARCH_INLINE_READ_UNLOCK_IRQRESTORE select ARCH_INLINE_WRITE_TRYLOCK select ARCH_INLINE_WRITE_LOCK select ARCH_INLINE_WRITE_LOCK_BH select ARCH_INLINE_WRITE_LOCK_IRQ select ARCH_INLINE_WRITE_LOCK_IRQSAVE select ARCH_INLINE_WRITE_UNLOCK select ARCH_INLINE_WRITE_UNLOCK_BH select ARCH_INLINE_WRITE_UNLOCK_IRQ select ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE config SCHED_OMIT_FRAME_POINTER def_bool y source "init/Kconfig" source "kernel/Kconfig.freezer" menu "Base setup" comment "Processor type and features" source "kernel/time/Kconfig" config 64BIT def_bool y prompt "64 bit kernel" help Select this option if you have an IBM z/Architecture machine and want to use the 64 bit addressing mode. config 32BIT def_bool y if !64BIT config KTIME_SCALAR def_bool 32BIT config SMP def_bool y prompt "Symmetric multi-processing support" ---help--- This enables support for systems with more than one CPU. If you have a system with only one CPU, like most personal computers, say N. If you have a system with more than one CPU, say Y. If you say N here, the kernel will run on single and multiprocessor machines, but will use only one CPU of a multiprocessor machine. If you say Y here, the kernel will run on many, but not all, singleprocessor machines. On a singleprocessor machine, the kernel will run faster if you say N here. See also the SMP-HOWTO available at . Even if you don't know what to do here, say Y. config NR_CPUS int "Maximum number of CPUs (2-64)" range 2 64 depends on SMP default "32" if !64BIT default "64" if 64BIT help This allows you to specify the maximum number of CPUs which this kernel will support. The maximum supported value is 64 and the minimum value which makes sense is 2. This is purely to save memory - each supported CPU adds approximately sixteen kilobytes to the kernel image. config HOTPLUG_CPU def_bool y prompt "Support for hot-pluggable CPUs" depends on SMP select HOTPLUG help Say Y here to be able to turn CPUs off and on. CPUs can be controlled through /sys/devices/system/cpu/cpu#. Say N if you want to disable CPU hotplug. config SCHED_MC def_bool y prompt "Multi-core scheduler support" depends on SMP help Multi-core scheduler support improves the CPU scheduler's decision making when dealing with multi-core CPU chips at a cost of slightly increased overhead in some places. config SCHED_BOOK def_bool y prompt "Book scheduler support" depends on SMP && SCHED_MC help Book scheduler support improves the CPU scheduler's decision making when dealing with machines that have several books. config MATHEMU def_bool y prompt "IEEE FPU emulation" depends on MARCH_G5 help This option is required for IEEE compliant floating point arithmetic on older ESA/390 machines. Say Y unless you know your machine doesn't need this. config COMPAT def_bool y prompt "Kernel support for 31 bit emulation" depends on 64BIT select COMPAT_BINFMT_ELF help Select this option if you want to enable your system kernel to handle system-calls from ELF binaries for 31 bit ESA. This option (and some other stuff like libraries and such) is needed for executing 31 bit applications. It is safe to say "Y". config SYSVIPC_COMPAT def_bool y if COMPAT && SYSVIPC config AUDIT_ARCH def_bool y config S390_EXEC_PROTECT def_bool y prompt "Data execute protection" help This option allows to enable a buffer overflow protection for user space programs and it also selects the addressing mode option above. The kernel parameter noexec=on will enable this feature and also switch the addressing modes, default is disabled. Enabling this (via kernel parameter) on machines earlier than IBM System z9 this will reduce system performance. comment "Code generation options" choice prompt "Processor type" default MARCH_G5 config MARCH_G5 bool "System/390 model G5 and G6" depends on !64BIT help Select this to build a 31 bit kernel that works on all ESA/390 and z/Architecture machines. config MARCH_Z900 bool "IBM zSeries model z800 and z900" help Select this to enable optimizations for model z800/z900 (2064 and 2066 series). This will enable some optimizations that are not available on older ESA/390 (31 Bit) only CPUs. config MARCH_Z990 bool "IBM zSeries model z890 and z990" help Select this to enable optimizations for model z890/z990 (2084 and 2086 series). The kernel will be slightly faster but will not work on older machines. config MARCH_Z9_109 bool "IBM System z9" help Select this to enable optimizations for IBM System z9 (2094 and 2096 series). The kernel will be slightly faster but will not work on older machines. config MARCH_Z10 bool "IBM System z10" help Select this to enable optimizations for IBM System z10 (2097 and 2098 series). The kernel will be slightly faster but will not work on older machines. config MARCH_Z196 bool "IBM zEnterprise 196" help Select this to enable optimizations for IBM zEnterprise 196 (2817 series). The kernel will be slightly faster but will not work on older machines. endchoice config PACK_STACK def_bool y prompt "Pack kernel stack" help This option enables the compiler option -mkernel-backchain if it is available. If the option is available the compiler supports the new stack layout which dramatically reduces the minimum stack frame size. With an old compiler a non-leaf function needs a minimum of 96 bytes on 31 bit and 160 bytes on 64 bit. With -mkernel-backchain the minimum size drops to 16 byte on 31 bit and 24 byte on 64 bit. Say Y if you are unsure. config SMALL_STACK def_bool n prompt "Use 8kb for kernel stack instead of 16kb" depends on PACK_STACK && 64BIT && !LOCKDEP help If you say Y here and the compiler supports the -mkernel-backchain option the kernel will use a smaller kernel stack size. The reduced size is 8kb instead of 16kb. This allows to run more threads on a system and reduces the pressure on the memory management for higher order page allocations. Say N if you are unsure. config CHECK_STACK def_bool y prompt "Detect kernel stack overflow" help This option enables the compiler option -mstack-guard and -mstack-size if they are available. If the compiler supports them it will emit additional code to each function prolog to trigger an illegal operation if the kernel stack is about to overflow. Say N if you are unsure. config STACK_GUARD int "Size of the guard area (128-1024)" range 128 1024 depends on CHECK_STACK default "256" help This allows you to specify the size of the guard area at the lower end of the kernel stack. If the kernel stack points into the guard area on function entry an illegal operation is triggered. The size needs to be a power of 2. Please keep in mind that the size of an interrupt frame is 184 bytes for 31 bit and 328 bytes on 64 bit. The minimum size for the stack guard should be 256 for 31 bit and 512 for 64 bit. config WARN_DYNAMIC_STACK def_bool n prompt "Emit compiler warnings for function with dynamic stack usage" help This option enables the compiler option -mwarn-dynamicstack. If the compiler supports this options generates warnings for functions that dynamically allocate stack space using alloca. Say N if you are unsure. config ARCH_POPULATES_NODE_MAP def_bool y comment "Kernel preemption" source "kernel/Kconfig.preempt" config ARCH_SPARSEMEM_ENABLE def_bool y select SPARSEMEM_VMEMMAP_ENABLE select SPARSEMEM_VMEMMAP select SPARSEMEM_STATIC if !64BIT config ARCH_SPARSEMEM_DEFAULT def_bool y config ARCH_SELECT_MEMORY_MODEL def_bool y config ARCH_ENABLE_MEMORY_HOTPLUG def_bool y if SPARSEMEM config ARCH_ENABLE_MEMORY_HOTREMOVE def_bool y config ARCH_HIBERNATION_POSSIBLE def_bool y if 64BIT source "mm/Kconfig" comment "I/O subsystem configuration" config QDIO def_tristate y prompt "QDIO support" ---help--- This driver provides the Queued Direct I/O base support for IBM System z. To compile this driver as a module, choose M here: the module will be called qdio. If unsure, say Y. config CHSC_SCH def_tristate m prompt "Support for CHSC subchannels" help This driver allows usage of CHSC subchannels. A CHSC subchannel is usually present on LPAR only. The driver creates a device /dev/chsc, which may be used to obtain I/O configuration information about the machine and to issue asynchronous chsc commands (DANGEROUS). You will usually only want to use this interface on a special LPAR designated for system management. To compile this driver as a module, choose M here: the module will be called chsc_sch. If unsure, say N. comment "Misc" config IPL def_bool y prompt "Builtin IPL record support" help If you want to use the produced kernel to IPL directly from a device, you have to merge a bootsector specific to the device into the first bytes of the kernel. You will have to select the IPL device. choice prompt "IPL method generated into head.S" depends on IPL default IPL_VM help Select "tape" if you want to IPL the image from a Tape. Select "vm_reader" if you are running under VM/ESA and want to IPL the image from the emulated card reader. config IPL_TAPE bool "tape" config IPL_VM bool "vm_reader" endchoice source "fs/Kconfig.binfmt" config FORCE_MAX_ZONEORDER int default "9" config PFAULT def_bool y prompt "Pseudo page fault support" help Select this option, if you want to use PFAULT pseudo page fault handling under VM. If running native or in LPAR, this option has no effect. If your VM does not support PFAULT, PAGEEX pseudo page fault handling will be used. Note that VM 4.2 supports PFAULT but has a bug in its implementation that causes some problems. Everybody who wants to run Linux under VM != VM4.2 should select this option. config SHARED_KERNEL def_bool y prompt "VM shared kernel support" help Select this option, if you want to share the text segment of the Linux kernel between different VM guests. This reduces memory usage with lots of guests but greatly increases kernel size. Also if a kernel was IPL'ed from a shared segment the kexec system call will not work. You should only select this option if you know what you are doing and want to exploit this feature. config CMM def_tristate n prompt "Cooperative memory management" help Select this option, if you want to enable the kernel interface to reduce the memory size of the system. This is accomplished by allocating pages of memory and put them "on hold". This only makes sense for a system running under VM where the unused pages will be reused by VM for other guest systems. The interface allows an external monitor to balance memory of many systems. Everybody who wants to run Linux under VM should select this option. config CMM_IUCV def_bool y prompt "IUCV special message interface to cooperative memory management" depends on CMM && (SMSGIUCV=y || CMM=SMSGIUCV) help Select this option to enable the special message interface to the cooperative memory management. config APPLDATA_BASE def_bool n prompt "Linux - VM Monitor Stream, base infrastructure" depends on PROC_FS help This provides a kernel interface for creating and updating z/VM APPLDATA monitor records. The monitor records are updated at certain time intervals, once the timer is started. Writing 1 or 0 to /proc/appldata/timer starts(1) or stops(0) the timer, i.e. enables or disables monitoring on the Linux side. A custom interval value (in seconds) can be written to /proc/appldata/interval. Defaults are 60 seconds interval and timer off. The /proc entries can also be read from, showing the current settings. config APPLDATA_MEM def_tristate m prompt "Monitor memory management statistics" depends on APPLDATA_BASE && VM_EVENT_COUNTERS help This provides memory management related data to the Linux - VM Monitor Stream, like paging/swapping rate, memory utilisation, etc. Writing 1 or 0 to /proc/appldata/memory creates(1) or removes(0) a z/VM APPLDATA monitor record, i.e. enables or disables monitoring this record on the z/VM side. Default is disabled. The /proc entry can also be read from, showing the current settings. This can also be compiled as a module, which will be called appldata_mem.o. config APPLDATA_OS def_tristate m prompt "Monitor OS statistics" depends on APPLDATA_BASE help This provides OS related data to the Linux - VM Monitor Stream, like CPU utilisation, etc. Writing 1 or 0 to /proc/appldata/os creates(1) or removes(0) a z/VM APPLDATA monitor record, i.e. enables or disables monitoring this record on the z/VM side. Default is disabled. This can also be compiled as a module, which will be called appldata_os.o. config APPLDATA_NET_SUM def_tristate m prompt "Monitor overall network statistics" depends on APPLDATA_BASE && NET help This provides network related data to the Linux - VM Monitor Stream, currently there is only a total sum of network I/O statistics, no per-interface data. Writing 1 or 0 to /proc/appldata/net_sum creates(1) or removes(0) a z/VM APPLDATA monitor record, i.e. enables or disables monitoring this record on the z/VM side. Default is disabled. This can also be compiled as a module, which will be called appldata_net_sum.o. source kernel/Kconfig.hz config S390_HYPFS_FS def_bool y prompt "s390 hypervisor file system support" select SYS_HYPERVISOR help This is a virtual file system intended to provide accounting information in an s390 hypervisor environment. config KEXEC def_bool n prompt "kexec system call" help kexec is a system call that implements the ability to shutdown your current kernel, and to start another kernel. It is like a reboot but is independent of hardware/microcode support. config ZFCPDUMP def_bool n prompt "zfcpdump support" select SMP help Select this option if you want to build an zfcpdump enabled kernel. Refer to for more details on this. config S390_GUEST def_bool y prompt "s390 guest support for KVM (EXPERIMENTAL)" depends on 64BIT && EXPERIMENTAL select VIRTIO select VIRTIO_RING select VIRTIO_CONSOLE help Select this option if you want to run the kernel as a guest under the KVM hypervisor. This will add detection for KVM as well as a virtio transport. If KVM is detected, the virtio console will be the default console. config SECCOMP def_bool y prompt "Enable seccomp to safely compute untrusted bytecode" depends on PROC_FS help This kernel feature is useful for number crunching applications that may need to compute untrusted bytecode during their execution. By using pipes or other transports made available to the process as file descriptors supporting the read/write syscalls, it's possible to isolate those applications in their own address space using seccomp. Once seccomp is enabled via /proc//seccomp, it cannot be disabled and the task is only allowed to execute a few safe syscalls defined by each seccomp mode. If unsure, say Y. endmenu menu "Power Management" source "kernel/power/Kconfig" endmenu source "net/Kconfig" config PCMCIA def_bool n config CCW def_bool y source "drivers/Kconfig" source "fs/Kconfig" source "arch/s390/Kconfig.debug" source "security/Kconfig" source "crypto/Kconfig" source "lib/Kconfig" source "arch/s390/kvm/Kconfig" # # KVM configuration # source "virt/kvm/Kconfig" menuconfig VIRTUALIZATION def_bool y prompt "Virtualization" ---help--- Say Y here to get to see options for using your Linux host to run other operating systems inside virtual machines (guests). This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if VIRTUALIZATION config KVM def_tristate y prompt "Kernel-based Virtual Machine (KVM) support" depends on HAVE_KVM && EXPERIMENTAL select PREEMPT_NOTIFIERS select ANON_INODES ---help--- Support hosting paravirtualized guest machines using the SIE virtualization capability on the mainframe. This should work on any 64bit machine. This module provides access to the hardware capabilities through a character device node named /dev/kvm. To compile this as a module, choose M here: the module will be called kvm. If unsure, say N. # OK, it's a little counter-intuitive to do this, but it puts it neatly under # the virtualization menu. source drivers/vhost/Kconfig source drivers/virtio/Kconfig endif # VIRTUALIZATION menuconfig SAMPLES bool "Sample kernel code" help You can build and test sample kernel code here. if SAMPLES config SAMPLE_TRACEPOINTS tristate "Build tracepoints examples -- loadable modules only" depends on TRACEPOINTS && m help This build tracepoints example modules. config SAMPLE_TRACE_EVENTS tristate "Build trace_events examples -- loadable modules only" depends on EVENT_TRACING && m help This build trace event example modules. config SAMPLE_KOBJECT tristate "Build kobject examples -- loadable modules only" depends on m help This config option will allow you to build a number of different kobject sample modules showing how to use kobjects, ksets, and ktypes properly. If in doubt, say "N" here. config SAMPLE_KPROBES tristate "Build kprobes examples -- loadable modules only" depends on KPROBES && m help This build several kprobes example modules. config SAMPLE_KRETPROBES tristate "Build kretprobes example -- loadable modules only" default m depends on SAMPLE_KPROBES && KRETPROBES config SAMPLE_HW_BREAKPOINT tristate "Build kernel hardware breakpoint examples -- loadable module only" depends on HAVE_HW_BREAKPOINT && m help This builds kernel hardware breakpoint example modules. config SAMPLE_KFIFO tristate "Build kfifo examples -- loadable modules only" depends on m help This config option will allow you to build a number of different kfifo sample modules showing how to use the generic kfifo API. If in doubt, say "N" here. config SAMPLE_KDB tristate "Build kdb command example -- loadable modules only" depends on KGDB_KDB && m help Build an example of how to dynamically add the hello command to the kdb shell. endif # SAMPLES # # CCITT X.25 Packet Layer # config X25 tristate "CCITT X.25 Packet Layer (EXPERIMENTAL)" depends on EXPERIMENTAL ---help--- X.25 is a set of standardized network protocols, similar in scope to frame relay; the one physical line from your box to the X.25 network entry point can carry several logical point-to-point connections (called "virtual circuits") to other computers connected to the X.25 network. Governments, banks, and other organizations tend to use it to connect to each other or to form Wide Area Networks (WANs). Many countries have public X.25 networks. X.25 consists of two protocols: the higher level Packet Layer Protocol (PLP) (say Y here if you want that) and the lower level data link layer protocol LAPB (say Y to "LAPB Data Link Driver" below if you want that). You can read more about X.25 at and . Information about X.25 for Linux is contained in the files and . One connects to an X.25 network either with a dedicated network card using the X.21 protocol (not yet supported by Linux) or one can do X.25 over a standard telephone line using an ordinary modem (say Y to "X.25 async driver" below) or over Ethernet using an ordinary Ethernet card and the LAPB over Ethernet (say Y to "LAPB Data Link Driver" and "LAPB over Ethernet driver" below). To compile this driver as a module, choose M here: the module will be called x25. If unsure, say N. # # LAPB Data Link Drive # config LAPB tristate "LAPB Data Link Driver (EXPERIMENTAL)" depends on EXPERIMENTAL ---help--- Link Access Procedure, Balanced (LAPB) is the data link layer (i.e. the lower) part of the X.25 protocol. It offers a reliable connection service to exchange data frames with one other host, and it is used to transport higher level protocols (mostly X.25 Packet Layer, the higher part of X.25, but others are possible as well). Usually, LAPB is used with specialized X.21 network cards, but Linux currently supports LAPB only over Ethernet connections. If you want to use LAPB connections over Ethernet, say Y here and to "LAPB over Ethernet driver" below. Read for technical details. To compile this driver as a module, choose M here: the module will be called lapb. If unsure, say N. config RDS tristate "The RDS Protocol (EXPERIMENTAL)" depends on INET && EXPERIMENTAL ---help--- The RDS (Reliable Datagram Sockets) protocol provides reliable, sequenced delivery of datagrams over Infiniband, iWARP, or TCP. config RDS_RDMA tristate "RDS over Infiniband and iWARP" depends on RDS && INFINIBAND && INFINIBAND_ADDR_TRANS ---help--- Allow RDS to use Infiniband and iWARP as a transport. This transport supports RDMA operations. config RDS_TCP tristate "RDS over TCP" depends on RDS ---help--- Allow RDS to use TCP as a transport. This transport does not support RDMA operations. config RDS_DEBUG bool "RDS debugging messages" depends on RDS default n menu "Core Netfilter Configuration" depends on NET && INET && NETFILTER config NETFILTER_NETLINK tristate config NETFILTER_NETLINK_QUEUE tristate "Netfilter NFQUEUE over NFNETLINK interface" depends on NETFILTER_ADVANCED select NETFILTER_NETLINK help If this option is enabled, the kernel will include support for queueing packets via NFNETLINK. config NETFILTER_NETLINK_LOG tristate "Netfilter LOG over NFNETLINK interface" default m if NETFILTER_ADVANCED=n select NETFILTER_NETLINK help If this option is enabled, the kernel will include support for logging packets via NFNETLINK. This obsoletes the existing ipt_ULOG and ebg_ulog mechanisms, and is also scheduled to replace the old syslog-based ipt_LOG and ip6t_LOG modules. config NF_CONNTRACK tristate "Netfilter connection tracking support" default m if NETFILTER_ADVANCED=n help Connection tracking keeps a record of what packets have passed through your machine, in order to figure out how they are related into connections. This is required to do Masquerading or other kinds of Network Address Translation. It can also be used to enhance packet filtering (see `Connection state match support' below). To compile it as a module, choose M here. If unsure, say N. if NF_CONNTRACK config NF_CONNTRACK_MARK bool 'Connection mark tracking support' depends on NETFILTER_ADVANCED help This option enables support for connection marks, used by the `CONNMARK' target and `connmark' match. Similar to the mark value of packets, but this mark value is kept in the conntrack session instead of the individual packets. config NF_CONNTRACK_SECMARK bool 'Connection tracking security mark support' depends on NETWORK_SECMARK default m if NETFILTER_ADVANCED=n help This option enables security markings to be applied to connections. Typically they are copied to connections from packets using the CONNSECMARK target and copied back from connections to packets with the same target, with the packets being originally labeled via SECMARK. If unsure, say 'N'. config NF_CONNTRACK_ZONES bool 'Connection tracking zones' depends on NETFILTER_ADVANCED depends on NETFILTER_XT_TARGET_CT help This option enables support for connection tracking zones. Normally, each connection needs to have a unique system wide identity. Connection tracking zones allow to have multiple connections using the same identity, as long as they are contained in different zones. If unsure, say `N'. config NF_CONNTRACK_EVENTS bool "Connection tracking events" depends on NETFILTER_ADVANCED help If this option is enabled, the connection tracking code will provide a notifier chain that can be used by other kernel code to get notified about changes in the connection tracking state. If unsure, say `N'. config NF_CONNTRACK_TIMESTAMP bool 'Connection tracking timestamping' depends on NETFILTER_ADVANCED help This option enables support for connection tracking timestamping. This allows you to store the flow start-time and to obtain the flow-stop time (once it has been destroyed) via Connection tracking events. If unsure, say `N'. config NF_CT_PROTO_DCCP tristate 'DCCP protocol connection tracking support (EXPERIMENTAL)' depends on EXPERIMENTAL depends on NETFILTER_ADVANCED default IP_DCCP help With this option enabled, the layer 3 independent connection tracking code will be able to do state tracking on DCCP connections. If unsure, say 'N'. config NF_CT_PROTO_GRE tristate config NF_CT_PROTO_SCTP tristate 'SCTP protocol connection tracking support (EXPERIMENTAL)' depends on EXPERIMENTAL depends on NETFILTER_ADVANCED default IP_SCTP help With this option enabled, the layer 3 independent connection tracking code will be able to do state tracking on SCTP connections. If you want to compile it as a module, say M here and read . If unsure, say `N'. config NF_CT_PROTO_UDPLITE tristate 'UDP-Lite protocol connection tracking support' depends on NETFILTER_ADVANCED help With this option enabled, the layer 3 independent connection tracking code will be able to do state tracking on UDP-Lite connections. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_AMANDA tristate "Amanda backup protocol support" depends on NETFILTER_ADVANCED select TEXTSEARCH select TEXTSEARCH_KMP help If you are running the Amanda backup package on this machine or machines that will be MASQUERADED through this machine, then you may want to enable this feature. This allows the connection tracking and natting code to allow the sub-channels that Amanda requires for communication of the backup data, messages and index. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_FTP tristate "FTP protocol support" default m if NETFILTER_ADVANCED=n help Tracking FTP connections is problematic: special helpers are required for tracking them, and doing masquerading and other forms of Network Address Translation on them. This is FTP support on Layer 3 independent connection tracking. Layer 3 independent connection tracking is experimental scheme which generalize ip_conntrack to support other layer 3 protocols. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_H323 tristate "H.323 protocol support" depends on (IPV6 || IPV6=n) depends on NETFILTER_ADVANCED help H.323 is a VoIP signalling protocol from ITU-T. As one of the most important VoIP protocols, it is widely used by voice hardware and software including voice gateways, IP phones, Netmeeting, OpenPhone, Gnomemeeting, etc. With this module you can support H.323 on a connection tracking/NAT firewall. This module supports RAS, Fast Start, H.245 Tunnelling, Call Forwarding, RTP/RTCP and T.120 based audio, video, fax, chat, whiteboard, file transfer, etc. For more information, please visit http://nath323.sourceforge.net/. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_IRC tristate "IRC protocol support" default m if NETFILTER_ADVANCED=n help There is a commonly-used extension to IRC called Direct Client-to-Client Protocol (DCC). This enables users to send files to each other, and also chat to each other without the need of a server. DCC Sending is used anywhere you send files over IRC, and DCC Chat is most commonly used by Eggdrop bots. If you are using NAT, this extension will enable you to send files and initiate chats. Note that you do NOT need this extension to get files or have others initiate chats, or everything else in IRC. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_BROADCAST tristate config NF_CONNTRACK_NETBIOS_NS tristate "NetBIOS name service protocol support" depends on NETFILTER_ADVANCED select NF_CONNTRACK_BROADCAST help NetBIOS name service requests are sent as broadcast messages from an unprivileged port and responded to with unicast messages to the same port. This make them hard to firewall properly because connection tracking doesn't deal with broadcasts. This helper tracks locally originating NetBIOS name service requests and the corresponding responses. It relies on correct IP address configuration, specifically netmask and broadcast address. When properly configured, the output of "ip address show" should look similar to this: $ ip -4 address show eth0 4: eth0: mtu 1500 qdisc pfifo_fast qlen 1000 inet 172.16.2.252/24 brd 172.16.2.255 scope global eth0 To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_SNMP tristate "SNMP service protocol support" depends on NETFILTER_ADVANCED select NF_CONNTRACK_BROADCAST help SNMP service requests are sent as broadcast messages from an unprivileged port and responded to with unicast messages to the same port. This make them hard to firewall properly because connection tracking doesn't deal with broadcasts. This helper tracks locally originating SNMP service requests and the corresponding responses. It relies on correct IP address configuration, specifically netmask and broadcast address. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_PPTP tristate "PPtP protocol support" depends on NETFILTER_ADVANCED select NF_CT_PROTO_GRE help This module adds support for PPTP (Point to Point Tunnelling Protocol, RFC2637) connection tracking and NAT. If you are running PPTP sessions over a stateful firewall or NAT box, you may want to enable this feature. Please note that not all PPTP modes of operation are supported yet. Specifically these limitations exist: - Blindly assumes that control connections are always established in PNS->PAC direction. This is a violation of RFC2637. - Only supports a single call within each session To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_SANE tristate "SANE protocol support (EXPERIMENTAL)" depends on EXPERIMENTAL depends on NETFILTER_ADVANCED help SANE is a protocol for remote access to scanners as implemented by the 'saned' daemon. Like FTP, it uses separate control and data connections. With this module you can support SANE on a connection tracking firewall. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_SIP tristate "SIP protocol support" default m if NETFILTER_ADVANCED=n help SIP is an application-layer control protocol that can establish, modify, and terminate multimedia sessions (conferences) such as Internet telephony calls. With the ip_conntrack_sip and the nf_nat_sip modules you can support the protocol on a connection tracking/NATing firewall. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_TFTP tristate "TFTP protocol support" depends on NETFILTER_ADVANCED help TFTP connection tracking helper, this is required depending on how restrictive your ruleset is. If you are using a tftp client behind -j SNAT or -j MASQUERADING you will need this. To compile it as a module, choose M here. If unsure, say N. config NF_CT_NETLINK tristate 'Connection tracking netlink interface' select NETFILTER_NETLINK default m if NETFILTER_ADVANCED=n help This option enables support for a netlink-based userspace interface endif # NF_CONNTRACK # transparent proxy support config NETFILTER_TPROXY tristate "Transparent proxying support (EXPERIMENTAL)" depends on EXPERIMENTAL depends on IP_NF_MANGLE depends on NETFILTER_ADVANCED help This option enables transparent proxying support, that is, support for handling non-locally bound IPv4 TCP and UDP sockets. For it to work you will have to configure certain iptables rules and use policy routing. For more information on how to set it up see Documentation/networking/tproxy.txt. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XTABLES tristate "Netfilter Xtables support (required for ip_tables)" default m if NETFILTER_ADVANCED=n help This is required if you intend to use any of ip_tables, ip6_tables or arp_tables. if NETFILTER_XTABLES comment "Xtables combined modules" config NETFILTER_XT_MARK tristate 'nfmark target and match support' default m if NETFILTER_ADVANCED=n ---help--- This option adds the "MARK" target and "mark" match. Netfilter mark matching allows you to match packets based on the "nfmark" value in the packet. The target allows you to create rules in the "mangle" table which alter the netfilter mark (nfmark) field associated with the packet. Prior to routing, the nfmark can influence the routing method (see "Use netfilter MARK value as routing key") and can also be used by other subsystems to change their behavior. config NETFILTER_XT_CONNMARK tristate 'ctmark target and match support' depends on NF_CONNTRACK depends on NETFILTER_ADVANCED select NF_CONNTRACK_MARK ---help--- This option adds the "CONNMARK" target and "connmark" match. Netfilter allows you to store a mark value per connection (a.k.a. ctmark), similarly to the packet mark (nfmark). Using this target and match, you can set and match on this mark. config NETFILTER_XT_SET tristate 'set target and match support' depends on IP_SET depends on NETFILTER_ADVANCED help This option adds the "SET" target and "set" match. Using this target and match, you can add/delete and match elements in the sets created by ipset(8). To compile it as a module, choose M here. If unsure, say N. # alphabetically ordered list of targets comment "Xtables targets" config NETFILTER_XT_TARGET_AUDIT tristate "AUDIT target support" depends on AUDIT depends on NETFILTER_ADVANCED ---help--- This option adds a 'AUDIT' target, which can be used to create audit records for packets dropped/accepted. To compileit as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_CHECKSUM tristate "CHECKSUM target support" depends on IP_NF_MANGLE || IP6_NF_MANGLE depends on NETFILTER_ADVANCED ---help--- This option adds a `CHECKSUM' target, which can be used in the iptables mangle table. You can use this target to compute and fill in the checksum in a packet that lacks a checksum. This is particularly useful, if you need to work around old applications such as dhcp clients, that do not work well with checksum offloads, but don't want to disable checksum offload in your device. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_CLASSIFY tristate '"CLASSIFY" target support' depends on NETFILTER_ADVANCED help This option adds a `CLASSIFY' target, which enables the user to set the priority of a packet. Some qdiscs can use this value for classification, among these are: atm, cbq, dsmark, pfifo_fast, htb, prio To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_CONNMARK tristate '"CONNMARK" target support' depends on NF_CONNTRACK depends on NETFILTER_ADVANCED select NETFILTER_XT_CONNMARK ---help--- This is a backwards-compat option for the user's convenience (e.g. when running oldconfig). It selects CONFIG_NETFILTER_XT_CONNMARK (combined connmark/CONNMARK module). config NETFILTER_XT_TARGET_CONNSECMARK tristate '"CONNSECMARK" target support' depends on NF_CONNTRACK && NF_CONNTRACK_SECMARK default m if NETFILTER_ADVANCED=n help The CONNSECMARK target copies security markings from packets to connections, and restores security markings from connections to packets (if the packets are not already marked). This would normally be used in conjunction with the SECMARK target. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_CT tristate '"CT" target support' depends on NF_CONNTRACK depends on IP_NF_RAW || IP6_NF_RAW depends on NETFILTER_ADVANCED help This options adds a `CT' target, which allows to specify initial connection tracking parameters like events to be delivered and the helper to be used. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_DSCP tristate '"DSCP" and "TOS" target support' depends on IP_NF_MANGLE || IP6_NF_MANGLE depends on NETFILTER_ADVANCED help This option adds a `DSCP' target, which allows you to manipulate the IPv4/IPv6 header DSCP field (differentiated services codepoint). The DSCP field can have any value between 0x0 and 0x3f inclusive. It also adds the "TOS" target, which allows you to create rules in the "mangle" table which alter the Type Of Service field of an IPv4 or the Priority field of an IPv6 packet, prior to routing. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_HL tristate '"HL" hoplimit target support' depends on IP_NF_MANGLE || IP6_NF_MANGLE depends on NETFILTER_ADVANCED ---help--- This option adds the "HL" (for IPv6) and "TTL" (for IPv4) targets, which enable the user to change the hoplimit/time-to-live value of the IP header. While it is safe to decrement the hoplimit/TTL value, the modules also allow to increment and set the hoplimit value of the header to arbitrary values. This is EXTREMELY DANGEROUS since you can easily create immortal packets that loop forever on the network. config NETFILTER_XT_TARGET_IDLETIMER tristate "IDLETIMER target support" depends on NETFILTER_ADVANCED help This option adds the `IDLETIMER' target. Each matching packet resets the timer associated with label specified when the rule is added. When the timer expires, it triggers a sysfs notification. The remaining time for expiration can be read via sysfs. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_LED tristate '"LED" target support' depends on LEDS_CLASS && LEDS_TRIGGERS depends on NETFILTER_ADVANCED help This option adds a `LED' target, which allows you to blink LEDs in response to particular packets passing through your machine. This can be used to turn a spare LED into a network activity LED, which only flashes in response to FTP transfers, for example. Or you could have an LED which lights up for a minute or two every time somebody connects to your machine via SSH. You will need support for the "led" class to make this work. To create an LED trigger for incoming SSH traffic: iptables -A INPUT -p tcp --dport 22 -j LED --led-trigger-id ssh --led-delay 1000 Then attach the new trigger to an LED on your system: echo netfilter-ssh > /sys/class/leds//trigger For more information on the LEDs available on your system, see Documentation/leds-class.txt config NETFILTER_XT_TARGET_MARK tristate '"MARK" target support' depends on NETFILTER_ADVANCED select NETFILTER_XT_MARK ---help--- This is a backwards-compat option for the user's convenience (e.g. when running oldconfig). It selects CONFIG_NETFILTER_XT_MARK (combined mark/MARK module). config NETFILTER_XT_TARGET_NFLOG tristate '"NFLOG" target support' default m if NETFILTER_ADVANCED=n select NETFILTER_NETLINK_LOG help This option enables the NFLOG target, which allows to LOG messages through nfnetlink_log. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_NFQUEUE tristate '"NFQUEUE" target Support' depends on NETFILTER_ADVANCED select NETFILTER_NETLINK_QUEUE help This target replaced the old obsolete QUEUE target. As opposed to QUEUE, it supports 65535 different queues, not just one. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_NOTRACK tristate '"NOTRACK" target support' depends on IP_NF_RAW || IP6_NF_RAW depends on NF_CONNTRACK depends on NETFILTER_ADVANCED help The NOTRACK target allows a select rule to specify which packets *not* to enter the conntrack/NAT subsystem with all the consequences (no ICMP error tracking, no protocol helpers for the selected packets). If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_TARGET_RATEEST tristate '"RATEEST" target support' depends on NETFILTER_ADVANCED help This option adds a `RATEEST' target, which allows to measure rates similar to TC estimators. The `rateest' match can be used to match on the measured rates. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_TEE tristate '"TEE" - packet cloning to alternate destination' depends on NETFILTER_ADVANCED depends on (IPV6 || IPV6=n) depends on !NF_CONNTRACK || NF_CONNTRACK ---help--- This option adds a "TEE" target with which a packet can be cloned and this clone be rerouted to another nexthop. config NETFILTER_XT_TARGET_TPROXY tristate '"TPROXY" target support (EXPERIMENTAL)' depends on EXPERIMENTAL depends on NETFILTER_TPROXY depends on NETFILTER_XTABLES depends on NETFILTER_ADVANCED select NF_DEFRAG_IPV4 select NF_DEFRAG_IPV6 if IP6_NF_IPTABLES help This option adds a `TPROXY' target, which is somewhat similar to REDIRECT. It can only be used in the mangle table and is useful to redirect traffic to a transparent proxy. It does _not_ depend on Netfilter connection tracking and NAT, unlike REDIRECT. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_TRACE tristate '"TRACE" target support' depends on IP_NF_RAW || IP6_NF_RAW depends on NETFILTER_ADVANCED help The TRACE target allows you to mark packets so that the kernel will log every rule which match the packets as those traverse the tables, chains, rules. If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_TARGET_SECMARK tristate '"SECMARK" target support' depends on NETWORK_SECMARK default m if NETFILTER_ADVANCED=n help The SECMARK target allows security marking of network packets, for use with security subsystems. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_TCPMSS tristate '"TCPMSS" target support' depends on (IPV6 || IPV6=n) default m if NETFILTER_ADVANCED=n ---help--- This option adds a `TCPMSS' target, which allows you to alter the MSS value of TCP SYN packets, to control the maximum size for that connection (usually limiting it to your outgoing interface's MTU minus 40). This is used to overcome criminally braindead ISPs or servers which block ICMP Fragmentation Needed packets. The symptoms of this problem are that everything works fine from your Linux firewall/router, but machines behind it can never exchange large packets: 1) Web browsers connect, then hang with no data received. 2) Small mail works fine, but large emails hang. 3) ssh works fine, but scp hangs after initial handshaking. Workaround: activate this option and add a rule to your firewall configuration like: iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN \ -j TCPMSS --clamp-mss-to-pmtu To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_TARGET_TCPOPTSTRIP tristate '"TCPOPTSTRIP" target support (EXPERIMENTAL)' depends on EXPERIMENTAL depends on IP_NF_MANGLE || IP6_NF_MANGLE depends on NETFILTER_ADVANCED help This option adds a "TCPOPTSTRIP" target, which allows you to strip TCP options from TCP packets. # alphabetically ordered list of matches comment "Xtables matches" config NETFILTER_XT_MATCH_ADDRTYPE tristate '"addrtype" address type match support' depends on NETFILTER_ADVANCED ---help--- This option allows you to match what routing thinks of an address, eg. UNICAST, LOCAL, BROADCAST, ... If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_MATCH_CLUSTER tristate '"cluster" match support' depends on NF_CONNTRACK depends on NETFILTER_ADVANCED ---help--- This option allows you to build work-load-sharing clusters of network servers/stateful firewalls without having a dedicated load-balancing router/server/switch. Basically, this match returns true when the packet must be handled by this cluster node. Thus, all nodes see all packets and this match decides which node handles what packets. The work-load sharing algorithm is based on source address hashing. If you say Y or M here, try `iptables -m cluster --help` for more information. config NETFILTER_XT_MATCH_COMMENT tristate '"comment" match support' depends on NETFILTER_ADVANCED help This option adds a `comment' dummy-match, which allows you to put comments in your iptables ruleset. If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_MATCH_CONNBYTES tristate '"connbytes" per-connection counter match support' depends on NF_CONNTRACK depends on NETFILTER_ADVANCED help This option adds a `connbytes' match, which allows you to match the number of bytes and/or packets for each direction within a connection. If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_MATCH_CONNLIMIT tristate '"connlimit" match support"' depends on NF_CONNTRACK depends on NETFILTER_ADVANCED ---help--- This match allows you to match against the number of parallel connections to a server per client IP address (or address block). config NETFILTER_XT_MATCH_CONNMARK tristate '"connmark" connection mark match support' depends on NF_CONNTRACK depends on NETFILTER_ADVANCED select NETFILTER_XT_CONNMARK ---help--- This is a backwards-compat option for the user's convenience (e.g. when running oldconfig). It selects CONFIG_NETFILTER_XT_CONNMARK (combined connmark/CONNMARK module). config NETFILTER_XT_MATCH_CONNTRACK tristate '"conntrack" connection tracking match support' depends on NF_CONNTRACK default m if NETFILTER_ADVANCED=n help This is a general conntrack match module, a superset of the state match. It allows matching on additional conntrack information, which is useful in complex configurations, such as NAT gateways with multiple internet links or tunnels. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_CPU tristate '"cpu" match support' depends on NETFILTER_ADVANCED help CPU matching allows you to match packets based on the CPU currently handling the packet. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_DCCP tristate '"dccp" protocol match support' depends on NETFILTER_ADVANCED default IP_DCCP help With this option enabled, you will be able to use the iptables `dccp' match in order to match on DCCP source/destination ports and DCCP flags. If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_MATCH_DEVGROUP tristate '"devgroup" match support' depends on NETFILTER_ADVANCED help This options adds a `devgroup' match, which allows to match on the device group a network device is assigned to. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_DSCP tristate '"dscp" and "tos" match support' depends on NETFILTER_ADVANCED help This option adds a `DSCP' match, which allows you to match against the IPv4/IPv6 header DSCP field (differentiated services codepoint). The DSCP field can have any value between 0x0 and 0x3f inclusive. It will also add a "tos" match, which allows you to match packets based on the Type Of Service fields of the IPv4 packet (which share the same bits as DSCP). To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_ESP tristate '"esp" match support' depends on NETFILTER_ADVANCED help This match extension allows you to match a range of SPIs inside ESP header of IPSec packets. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_HASHLIMIT tristate '"hashlimit" match support' depends on (IP6_NF_IPTABLES || IP6_NF_IPTABLES=n) depends on NETFILTER_ADVANCED help This option adds a `hashlimit' match. As opposed to `limit', this match dynamically creates a hash table of limit buckets, based on your selection of source/destination addresses and/or ports. It enables you to express policies like `10kpps for any given destination address' or `500pps from any given source address' with a single rule. config NETFILTER_XT_MATCH_HELPER tristate '"helper" match support' depends on NF_CONNTRACK depends on NETFILTER_ADVANCED help Helper matching allows you to match packets in dynamic connections tracked by a conntrack-helper, ie. ip_conntrack_ftp To compile it as a module, choose M here. If unsure, say Y. config NETFILTER_XT_MATCH_HL tristate '"hl" hoplimit/TTL match support' depends on NETFILTER_ADVANCED ---help--- HL matching allows you to match packets based on the hoplimit in the IPv6 header, or the time-to-live field in the IPv4 header of the packet. config NETFILTER_XT_MATCH_IPRANGE tristate '"iprange" address range match support' depends on NETFILTER_ADVANCED ---help--- This option adds a "iprange" match, which allows you to match based on an IP address range. (Normal iptables only matches on single addresses with an optional mask.) If unsure, say M. config NETFILTER_XT_MATCH_IPVS tristate '"ipvs" match support' depends on IP_VS depends on NETFILTER_ADVANCED depends on NF_CONNTRACK help This option allows you to match against IPVS properties of a packet. If unsure, say N. config NETFILTER_XT_MATCH_LENGTH tristate '"length" match support' depends on NETFILTER_ADVANCED help This option allows you to match the length of a packet against a specific value or range of values. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_LIMIT tristate '"limit" match support' depends on NETFILTER_ADVANCED help limit matching allows you to control the rate at which a rule can be matched: mainly useful in combination with the LOG target ("LOG target support", below) and to avoid some Denial of Service attacks. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_MAC tristate '"mac" address match support' depends on NETFILTER_ADVANCED help MAC matching allows you to match packets based on the source Ethernet address of the packet. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_MARK tristate '"mark" match support' depends on NETFILTER_ADVANCED select NETFILTER_XT_MARK ---help--- This is a backwards-compat option for the user's convenience (e.g. when running oldconfig). It selects CONFIG_NETFILTER_XT_MARK (combined mark/MARK module). config NETFILTER_XT_MATCH_MULTIPORT tristate '"multiport" Multiple port match support' depends on NETFILTER_ADVANCED help Multiport matching allows you to match TCP or UDP packets based on a series of source or destination ports: normally a rule can only match a single range of ports. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_OSF tristate '"osf" Passive OS fingerprint match' depends on NETFILTER_ADVANCED && NETFILTER_NETLINK help This option selects the Passive OS Fingerprinting match module that allows to passively match the remote operating system by analyzing incoming TCP SYN packets. Rules and loading software can be downloaded from http://www.ioremap.net/projects/osf To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_OWNER tristate '"owner" match support' depends on NETFILTER_ADVANCED ---help--- Socket owner matching allows you to match locally-generated packets based on who created the socket: the user or group. It is also possible to check whether a socket actually exists. config NETFILTER_XT_MATCH_POLICY tristate 'IPsec "policy" match support' depends on XFRM default m if NETFILTER_ADVANCED=n help Policy matching allows you to match packets based on the IPsec policy that was used during decapsulation/will be used during encapsulation. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_PHYSDEV tristate '"physdev" match support' depends on BRIDGE && BRIDGE_NETFILTER depends on NETFILTER_ADVANCED help Physdev packet matching matches against the physical bridge ports the IP packet arrived on or will leave by. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_PKTTYPE tristate '"pkttype" packet type match support' depends on NETFILTER_ADVANCED help Packet type matching allows you to match a packet by its "class", eg. BROADCAST, MULTICAST, ... Typical usage: iptables -A INPUT -m pkttype --pkt-type broadcast -j LOG To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_QUOTA tristate '"quota" match support' depends on NETFILTER_ADVANCED help This option adds a `quota' match, which allows to match on a byte counter. If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_MATCH_RATEEST tristate '"rateest" match support' depends on NETFILTER_ADVANCED select NETFILTER_XT_TARGET_RATEEST help This option adds a `rateest' match, which allows to match on the rate estimated by the RATEEST target. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_REALM tristate '"realm" match support' depends on NETFILTER_ADVANCED select IP_ROUTE_CLASSID help This option adds a `realm' match, which allows you to use the realm key from the routing subsystem inside iptables. This match pretty much resembles the CONFIG_NET_CLS_ROUTE4 option in tc world. If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_MATCH_RECENT tristate '"recent" match support' depends on NETFILTER_ADVANCED ---help--- This match is used for creating one or many lists of recently used addresses and then matching against that/those list(s). Short options are available by using 'iptables -m recent -h' Official Website: config NETFILTER_XT_MATCH_SCTP tristate '"sctp" protocol match support (EXPERIMENTAL)' depends on EXPERIMENTAL depends on NETFILTER_ADVANCED default IP_SCTP help With this option enabled, you will be able to use the `sctp' match in order to match on SCTP source/destination ports and SCTP chunk types. If you want to compile it as a module, say M here and read . If unsure, say `N'. config NETFILTER_XT_MATCH_SOCKET tristate '"socket" match support (EXPERIMENTAL)' depends on EXPERIMENTAL depends on NETFILTER_TPROXY depends on NETFILTER_XTABLES depends on NETFILTER_ADVANCED depends on !NF_CONNTRACK || NF_CONNTRACK select NF_DEFRAG_IPV4 select NF_DEFRAG_IPV6 if IP6_NF_IPTABLES help This option adds a `socket' match, which can be used to match packets for which a TCP or UDP socket lookup finds a valid socket. It can be used in combination with the MARK target and policy routing to implement full featured non-locally bound sockets. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_STATE tristate '"state" match support' depends on NF_CONNTRACK default m if NETFILTER_ADVANCED=n help Connection state matching allows you to match packets based on their relationship to a tracked connection (ie. previous packets). This is a powerful tool for packet classification. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_STATISTIC tristate '"statistic" match support' depends on NETFILTER_ADVANCED help This option adds a `statistic' match, which allows you to match on packets periodically or randomly with a given percentage. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_STRING tristate '"string" match support' depends on NETFILTER_ADVANCED select TEXTSEARCH select TEXTSEARCH_KMP select TEXTSEARCH_BM select TEXTSEARCH_FSM help This option adds a `string' match, which allows you to look for pattern matchings in packets. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_TCPMSS tristate '"tcpmss" match support' depends on NETFILTER_ADVANCED help This option adds a `tcpmss' match, which allows you to examine the MSS value of TCP SYN packets, which control the maximum packet size for that connection. To compile it as a module, choose M here. If unsure, say N. config NETFILTER_XT_MATCH_TIME tristate '"time" match support' depends on NETFILTER_ADVANCED ---help--- This option adds a "time" match, which allows you to match based on the packet arrival time (at the machine which netfilter is running) on) or departure time/date (for locally generated packets). If you say Y here, try `iptables -m time --help` for more information. If you want to compile it as a module, say M here. If unsure, say N. config NETFILTER_XT_MATCH_U32 tristate '"u32" match support' depends on NETFILTER_ADVANCED ---help--- u32 allows you to extract quantities of up to 4 bytes from a packet, AND them with specified masks, shift them by specified amounts and test whether the results are in any of a set of specified ranges. The specification of what to extract is general enough to skip over headers with lengths stored in the packet, as in IP or TCP header lengths. Details and examples are in the kernel module source. endif # NETFILTER_XTABLES endmenu source "net/netfilter/ipset/Kconfig" source "net/netfilter/ipvs/Kconfig" menuconfig IP_SET tristate "IP set support" depends on INET && NETFILTER depends on NETFILTER_NETLINK help This option adds IP set support to the kernel. In order to define and use the sets, you need the userspace utility ipset(8). You can use the sets in netfilter via the "set" match and "SET" target. To compile it as a module, choose M here. If unsure, say N. if IP_SET config IP_SET_MAX int "Maximum number of IP sets" default 256 range 2 65534 depends on IP_SET help You can define here default value of the maximum number of IP sets for the kernel. The value can be overriden by the 'max_sets' module parameter of the 'ip_set' module. config IP_SET_BITMAP_IP tristate "bitmap:ip set support" depends on IP_SET help This option adds the bitmap:ip set type support, by which one can store IPv4 addresses (or network addresse) from a range. To compile it as a module, choose M here. If unsure, say N. config IP_SET_BITMAP_IPMAC tristate "bitmap:ip,mac set support" depends on IP_SET help This option adds the bitmap:ip,mac set type support, by which one can store IPv4 address and (source) MAC address pairs from a range. To compile it as a module, choose M here. If unsure, say N. config IP_SET_BITMAP_PORT tristate "bitmap:port set support" depends on IP_SET help This option adds the bitmap:port set type support, by which one can store TCP/UDP port numbers from a range. To compile it as a module, choose M here. If unsure, say N. config IP_SET_HASH_IP tristate "hash:ip set support" depends on IP_SET help This option adds the hash:ip set type support, by which one can store arbitrary IPv4 or IPv6 addresses (or network addresses) in a set. To compile it as a module, choose M here. If unsure, say N. config IP_SET_HASH_IPPORT tristate "hash:ip,port set support" depends on IP_SET help This option adds the hash:ip,port set type support, by which one can store IPv4/IPv6 address and protocol/port pairs. To compile it as a module, choose M here. If unsure, say N. config IP_SET_HASH_IPPORTIP tristate "hash:ip,port,ip set support" depends on IP_SET help This option adds the hash:ip,port,ip set type support, by which one can store IPv4/IPv6 address, protocol/port, and IPv4/IPv6 address triples in a set. To compile it as a module, choose M here. If unsure, say N. config IP_SET_HASH_IPPORTNET tristate "hash:ip,port,net set support" depends on IP_SET help This option adds the hash:ip,port,net set type support, by which one can store IPv4/IPv6 address, protocol/port, and IPv4/IPv6 network address/prefix triples in a set. To compile it as a module, choose M here. If unsure, say N. config IP_SET_HASH_NET tristate "hash:net set support" depends on IP_SET help This option adds the hash:net set type support, by which one can store IPv4/IPv6 network address/prefix elements in a set. To compile it as a module, choose M here. If unsure, say N. config IP_SET_HASH_NETPORT tristate "hash:net,port set support" depends on IP_SET help This option adds the hash:net,port set type support, by which one can store IPv4/IPv6 network address/prefix and protocol/port pairs as elements in a set. To compile it as a module, choose M here. If unsure, say N. config IP_SET_LIST_SET tristate "list:set set support" depends on IP_SET help This option adds the list:set set type support. In this kind of set one can store the name of other sets and it forms an ordered union of the member sets. To compile it as a module, choose M here. If unsure, say N. endif # IP_SET # # IP Virtual Server configuration # menuconfig IP_VS tristate "IP virtual server support" depends on NET && INET && NETFILTER depends on (NF_CONNTRACK || NF_CONNTRACK=n) ---help--- IP Virtual Server support will let you build a high-performance virtual server based on cluster of two or more real servers. This option must be enabled for at least one of the clustered computers that will take care of intercepting incoming connections to a single IP address and scheduling them to real servers. Three request dispatching techniques are implemented, they are virtual server via NAT, virtual server via tunneling and virtual server via direct routing. The several scheduling algorithms can be used to choose which server the connection is directed to, thus load balancing can be achieved among the servers. For more information and its administration program, please visit the following URL: . If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. if IP_VS config IP_VS_IPV6 bool "IPv6 support for IPVS" depends on IPV6 = y || IP_VS = IPV6 ---help--- Add IPv6 support to IPVS. This is incomplete and might be dangerous. See http://www.mindbasket.com/ipvs for more information. Say N if unsure. config IP_VS_DEBUG bool "IP virtual server debugging" ---help--- Say Y here if you want to get additional messages useful in debugging the IP virtual server code. You can change the debug level in /proc/sys/net/ipv4/vs/debug_level config IP_VS_TAB_BITS int "IPVS connection table size (the Nth power of 2)" range 8 20 default 12 ---help--- The IPVS connection hash table uses the chaining scheme to handle hash collisions. Using a big IPVS connection hash table will greatly reduce conflicts when there are hundreds of thousands of connections in the hash table. Note the table size must be power of 2. The table size will be the value of 2 to the your input number power. The number to choose is from 8 to 20, the default number is 12, which means the table size is 4096. Don't input the number too small, otherwise you will lose performance on it. You can adapt the table size yourself, according to your virtual server application. It is good to set the table size not far less than the number of connections per second multiplying average lasting time of connection in the table. For example, your virtual server gets 200 connections per second, the connection lasts for 200 seconds in average in the connection table, the table size should be not far less than 200x200, it is good to set the table size 32768 (2**15). Another note that each connection occupies 128 bytes effectively and each hash entry uses 8 bytes, so you can estimate how much memory is needed for your box. You can overwrite this number setting conn_tab_bits module parameter or by appending ip_vs.conn_tab_bits=? to the kernel command line if IP VS was compiled built-in. comment "IPVS transport protocol load balancing support" config IP_VS_PROTO_TCP bool "TCP load balancing support" ---help--- This option enables support for load balancing TCP transport protocol. Say Y if unsure. config IP_VS_PROTO_UDP bool "UDP load balancing support" ---help--- This option enables support for load balancing UDP transport protocol. Say Y if unsure. config IP_VS_PROTO_AH_ESP def_bool IP_VS_PROTO_ESP || IP_VS_PROTO_AH config IP_VS_PROTO_ESP bool "ESP load balancing support" ---help--- This option enables support for load balancing ESP (Encapsulation Security Payload) transport protocol. Say Y if unsure. config IP_VS_PROTO_AH bool "AH load balancing support" ---help--- This option enables support for load balancing AH (Authentication Header) transport protocol. Say Y if unsure. config IP_VS_PROTO_SCTP bool "SCTP load balancing support" select LIBCRC32C ---help--- This option enables support for load balancing SCTP transport protocol. Say Y if unsure. comment "IPVS scheduler" config IP_VS_RR tristate "round-robin scheduling" ---help--- The robin-robin scheduling algorithm simply directs network connections to different real servers in a round-robin manner. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_WRR tristate "weighted round-robin scheduling" select GCD ---help--- The weighted robin-robin scheduling algorithm directs network connections to different real servers based on server weights in a round-robin manner. Servers with higher weights receive new connections first than those with less weights, and servers with higher weights get more connections than those with less weights and servers with equal weights get equal connections. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_LC tristate "least-connection scheduling" ---help--- The least-connection scheduling algorithm directs network connections to the server with the least number of active connections. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_WLC tristate "weighted least-connection scheduling" ---help--- The weighted least-connection scheduling algorithm directs network connections to the server with the least active connections normalized by the server weight. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_LBLC tristate "locality-based least-connection scheduling" ---help--- The locality-based least-connection scheduling algorithm is for destination IP load balancing. It is usually used in cache cluster. This algorithm usually directs packet destined for an IP address to its server if the server is alive and under load. If the server is overloaded (its active connection numbers is larger than its weight) and there is a server in its half load, then allocate the weighted least-connection server to this IP address. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_LBLCR tristate "locality-based least-connection with replication scheduling" ---help--- The locality-based least-connection with replication scheduling algorithm is also for destination IP load balancing. It is usually used in cache cluster. It differs from the LBLC scheduling as follows: the load balancer maintains mappings from a target to a set of server nodes that can serve the target. Requests for a target are assigned to the least-connection node in the target's server set. If all the node in the server set are over loaded, it picks up a least-connection node in the cluster and adds it in the sever set for the target. If the server set has not been modified for the specified time, the most loaded node is removed from the server set, in order to avoid high degree of replication. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_DH tristate "destination hashing scheduling" ---help--- The destination hashing scheduling algorithm assigns network connections to the servers through looking up a statically assigned hash table by their destination IP addresses. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_SH tristate "source hashing scheduling" ---help--- The source hashing scheduling algorithm assigns network connections to the servers through looking up a statically assigned hash table by their source IP addresses. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_SED tristate "shortest expected delay scheduling" ---help--- The shortest expected delay scheduling algorithm assigns network connections to the server with the shortest expected delay. The expected delay that the job will experience is (Ci + 1) / Ui if sent to the ith server, in which Ci is the number of connections on the ith server and Ui is the fixed service rate (weight) of the ith server. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_NQ tristate "never queue scheduling" ---help--- The never queue scheduling algorithm adopts a two-speed model. When there is an idle server available, the job will be sent to the idle server, instead of waiting for a fast one. When there is no idle server available, the job will be sent to the server that minimize its expected delay (The Shortest Expected Delay scheduling algorithm). If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. comment 'IPVS application helper' config IP_VS_FTP tristate "FTP protocol helper" depends on IP_VS_PROTO_TCP && NF_CONNTRACK && NF_NAT select IP_VS_NFCT ---help--- FTP is a protocol that transfers IP address and/or port number in the payload. In the virtual server via Network Address Translation, the IP address and port number of real servers cannot be sent to clients in ftp connections directly, so FTP protocol helper is required for tracking the connection and mangling it back to that of virtual service. If you want to compile it in kernel, say Y. To compile it as a module, choose M here. If unsure, say N. config IP_VS_NFCT bool "Netfilter connection tracking" depends on NF_CONNTRACK ---help--- The Netfilter connection tracking support allows the IPVS connection state to be exported to the Netfilter framework for filtering purposes. config IP_VS_PE_SIP tristate "SIP persistence engine" depends on IP_VS_PROTO_UDP depends on NF_CONNTRACK_SIP ---help--- Allow persistence based on the SIP Call-ID endif # IP_VS # # CAIF net configurations # menuconfig CAIF tristate "CAIF support" select CRC_CCITT default n ---help--- The "Communication CPU to Application CPU Interface" (CAIF) is a packet based connection-oriented MUX protocol developed by ST-Ericsson for use with its modems. It is accessed from user space as sockets (PF_CAIF). Say Y (or M) here if you build for a phone product (e.g. Android or MeeGo ) that uses CAIF as transport, if unsure say N. If you select to build it as module then CAIF_NETDEV also needs to be built as modules. You will also need to say yes to any CAIF physical devices that your platform requires. See Documentation/networking/caif for a further explanation on how to use and configure CAIF. config CAIF_DEBUG bool "Enable Debug" depends on CAIF default n --- help --- Enable the inclusion of debug code in the CAIF stack. Be aware that doing this will impact performance. If unsure say N. config CAIF_NETDEV tristate "CAIF GPRS Network device" depends on CAIF default CAIF ---help--- Say Y if you will be using a CAIF based GPRS network device. This can be either built-in or a loadable module, If you select to build it as a built-in then the main CAIF device must also be a built-in. If unsure say Y. # # IrDA protocol configuration # menuconfig IRDA depends on NET && !S390 tristate "IrDA (infrared) subsystem support" select CRC_CCITT ---help--- Say Y here if you want to build support for the IrDA (TM) protocols. The Infrared Data Associations (tm) specifies standards for wireless infrared communication and is supported by most laptops and PDA's. To use Linux support for the IrDA (tm) protocols, you will also need some user-space utilities like irattach. For more information, see the file . You also want to read the IR-HOWTO, available at . If you want to exchange bits of data (vCal, vCard) with a PDA, you will need to install some OBEX application, such as OpenObex : To compile this support as a module, choose M here: the module will be called irda. comment "IrDA protocols" depends on IRDA source "net/irda/irlan/Kconfig" source "net/irda/irnet/Kconfig" source "net/irda/ircomm/Kconfig" config IRDA_ULTRA bool "Ultra (connectionless) protocol" depends on IRDA help Say Y here to support the connectionless Ultra IRDA protocol. Ultra allows to exchange data over IrDA with really simple devices (watch, beacon) without the overhead of the IrDA protocol (no handshaking, no management frames, simple fixed header). Ultra is available as a special socket : socket(AF_IRDA, SOCK_DGRAM, 1); comment "IrDA options" depends on IRDA config IRDA_CACHE_LAST_LSAP bool "Cache last LSAP" depends on IRDA help Say Y here if you want IrLMP to cache the last LSAP used. This makes sense since most frames will be sent/received on the same connection. Enabling this option will save a hash-lookup per frame. If unsure, say Y. config IRDA_FAST_RR bool "Fast RRs (low latency)" depends on IRDA ---help--- Say Y here is you want IrLAP to send fast RR (Receive Ready) frames when acting as a primary station. Disabling this option will make latency over IrDA very bad. Enabling this option will make the IrDA stack send more packet than strictly necessary, thus reduce your battery life (but not that much). Fast RR will make IrLAP send out a RR frame immediately when receiving a frame if its own transmit queue is currently empty. This will give a lot of speed improvement when receiving much data since the secondary station will not have to wait the max. turn around time (usually 500ms) before it is allowed to transmit the next time. If the transmit queue of the secondary is also empty, the primary will start backing-off before sending another RR frame, waiting longer each time until the back-off reaches the max. turn around time. This back-off increase in controlled via /proc/sys/net/irda/fast_poll_increase If unsure, say Y. config IRDA_DEBUG bool "Debug information" depends on IRDA help Say Y here if you want the IrDA subsystem to write debug information to your syslog. You can change the debug level in /proc/sys/net/irda/debug . When this option is enabled, the IrDA also perform many extra internal verifications which will usually prevent the kernel to crash in case of bugs. If unsure, say Y (since it makes it easier to find the bugs). source "drivers/net/irda/Kconfig" config IRNET tristate "IrNET protocol" depends on IRDA && PPP help Say Y here if you want to build support for the IrNET protocol. To compile it as a module, choose M here: the module will be called irnet. IrNET is a PPP driver, so you will also need a working PPP subsystem (driver, daemon and config)... IrNET is an alternate way to transfer TCP/IP traffic over IrDA. It uses synchronous PPP over a set of point to point IrDA sockets. You can use it between Linux machine or with W2k. config IRLAN tristate "IrLAN protocol" depends on IRDA help Say Y here if you want to build support for the IrLAN protocol. To compile it as a module, choose M here: the module will be called irlan. IrLAN emulates an Ethernet and makes it possible to put up a wireless LAN using infrared beams. The IrLAN protocol can be used to talk with infrared access points like the HP NetbeamIR, or the ESI JetEye NET. You can also connect to another Linux machine running the IrLAN protocol for ad-hoc networking! config IRCOMM tristate "IrCOMM protocol" depends on IRDA help Say Y here if you want to build support for the IrCOMM protocol. To compile it as modules, choose M here: the modules will be called ircomm and ircomm_tty. IrCOMM implements serial port emulation, and makes it possible to use all existing applications that understands TTY's with an infrared link. Thus you should be able to use application like PPP, minicom and others. config SUNRPC tristate config SUNRPC_GSS tristate config SUNRPC_XPRT_RDMA tristate depends on SUNRPC && INFINIBAND && INFINIBAND_ADDR_TRANS && EXPERIMENTAL default SUNRPC && INFINIBAND help This option allows the NFS client and server to support an RDMA-enabled transport. To compile RPC client RDMA transport support as a module, choose M here: the module will be called xprtrdma. If unsure, say N. config RPCSEC_GSS_KRB5 tristate "Secure RPC: Kerberos V mechanism" depends on SUNRPC && CRYPTO depends on CRYPTO_MD5 && CRYPTO_DES && CRYPTO_CBC && CRYPTO_CTS depends on CRYPTO_ECB && CRYPTO_HMAC && CRYPTO_SHA1 && CRYPTO_AES depends on CRYPTO_ARC4 default y select SUNRPC_GSS help Choose Y here to enable Secure RPC using the Kerberos version 5 GSS-API mechanism (RFC 1964). Secure RPC calls with Kerberos require an auxiliary user-space daemon which may be found in the Linux nfs-utils package available from http://linux-nfs.org/. In addition, user-space Kerberos support should be installed. If unsure, say Y. # # Network configuration # menuconfig NET bool "Networking support" select NLATTR ---help--- Unless you really know what you are doing, you should say Y here. The reason is that some programs need kernel networking support even when running on a stand-alone machine that isn't connected to any other computer. If you are upgrading from an older kernel, you should consider updating your networking tools too because changes in the kernel and the tools often go hand in hand. The tools are contained in the package net-tools, the location and version number of which are given in . For a general introduction to Linux networking, it is highly recommended to read the NET-HOWTO, available from . if NET config WANT_COMPAT_NETLINK_MESSAGES bool help This option can be selected by other options that need compat netlink messages. config COMPAT_NETLINK_MESSAGES def_bool y depends on COMPAT depends on WEXT_CORE || WANT_COMPAT_NETLINK_MESSAGES help This option makes it possible to send different netlink messages to tasks depending on whether the task is a compat task or not. To achieve this, you need to set skb_shinfo(skb)->frag_list to the compat skb before sending the skb, the netlink code will sort out which message to actually pass to the task. Newly written code should NEVER need this option but do compat-independent messages instead! menu "Networking options" source "net/packet/Kconfig" source "net/unix/Kconfig" source "net/xfrm/Kconfig" source "net/iucv/Kconfig" config INET bool "TCP/IP networking" ---help--- These are the protocols used on the Internet and on most local Ethernets. It is highly recommended to say Y here (this will enlarge your kernel by about 400 KB), since some programs (e.g. the X window system) use TCP/IP even if your machine is not connected to any other computer. You will get the so-called loopback device which allows you to ping yourself (great fun, that!). For an excellent introduction to Linux networking, please read the Linux Networking HOWTO, available from . If you say Y here and also to "/proc file system support" and "Sysctl support" below, you can change various aspects of the behavior of the TCP/IP code by writing to the (virtual) files in /proc/sys/net/ipv4/*; the options are explained in the file . Short answer: say Y. if INET source "net/ipv4/Kconfig" source "net/ipv6/Kconfig" source "net/netlabel/Kconfig" endif # if INET config NETWORK_SECMARK bool "Security Marking" help This enables security marking of network packets, similar to nfmark, but designated for security purposes. If you are unsure how to answer this question, answer N. config NETWORK_PHY_TIMESTAMPING bool "Timestamping in PHY devices" depends on EXPERIMENTAL help This allows timestamping of network packets by PHYs with hardware timestamping capabilities. This option adds some overhead in the transmit and receive paths. If you are unsure how to answer this question, answer N. menuconfig NETFILTER bool "Network packet filtering framework (Netfilter)" ---help--- Netfilter is a framework for filtering and mangling network packets that pass through your Linux box. The most common use of packet filtering is to run your Linux box as a firewall protecting a local network from the Internet. The type of firewall provided by this kernel support is called a "packet filter", which means that it can reject individual network packets based on type, source, destination etc. The other kind of firewall, a "proxy-based" one, is more secure but more intrusive and more bothersome to set up; it inspects the network traffic much more closely, modifies it and has knowledge about the higher level protocols, which a packet filter lacks. Moreover, proxy-based firewalls often require changes to the programs running on the local clients. Proxy-based firewalls don't need support by the kernel, but they are often combined with a packet filter, which only works if you say Y here. You should also say Y here if you intend to use your Linux box as the gateway to the Internet for a local network of machines without globally valid IP addresses. This is called "masquerading": if one of the computers on your local network wants to send something to the outside, your box can "masquerade" as that computer, i.e. it forwards the traffic to the intended outside destination, but modifies the packets to make it look like they came from the firewall box itself. It works both ways: if the outside host replies, the Linux box will silently forward the traffic to the correct local computer. This way, the computers on your local net are completely invisible to the outside world, even though they can reach the outside and can receive replies. It is even possible to run globally visible servers from within a masqueraded local network using a mechanism called portforwarding. Masquerading is also often called NAT (Network Address Translation). Another use of Netfilter is in transparent proxying: if a machine on the local network tries to connect to an outside host, your Linux box can transparently forward the traffic to a local server, typically a caching proxy server. Yet another use of Netfilter is building a bridging firewall. Using a bridge with Network packet filtering enabled makes iptables "see" the bridged traffic. For filtering on the lower network and Ethernet protocols over the bridge, use ebtables (under bridge netfilter configuration). Various modules exist for netfilter which replace the previous masquerading (ipmasqadm), packet filtering (ipchains), transparent proxying, and portforwarding mechanisms. Please see under "iptables" for the location of these packages. if NETFILTER config NETFILTER_DEBUG bool "Network packet filtering debugging" depends on NETFILTER help You can say Y here if you want to get additional messages useful in debugging the netfilter code. config NETFILTER_ADVANCED bool "Advanced netfilter configuration" depends on NETFILTER default y help If you say Y here you can select between all the netfilter modules. If you say N the more unusual ones will not be shown and the basic ones needed by most people will default to 'M'. If unsure, say Y. config BRIDGE_NETFILTER bool "Bridged IP/ARP packets filtering" depends on BRIDGE && NETFILTER && INET depends on NETFILTER_ADVANCED default y ---help--- Enabling this option will let arptables resp. iptables see bridged ARP resp. IP traffic. If you want a bridging firewall, you probably want this option enabled. Enabling or disabling this option doesn't enable or disable ebtables. If unsure, say N. source "net/netfilter/Kconfig" source "net/ipv4/netfilter/Kconfig" source "net/ipv6/netfilter/Kconfig" source "net/decnet/netfilter/Kconfig" source "net/bridge/netfilter/Kconfig" endif source "net/dccp/Kconfig" source "net/sctp/Kconfig" source "net/rds/Kconfig" source "net/tipc/Kconfig" source "net/atm/Kconfig" source "net/l2tp/Kconfig" source "net/802/Kconfig" source "net/bridge/Kconfig" source "net/dsa/Kconfig" source "net/8021q/Kconfig" source "net/decnet/Kconfig" source "net/llc/Kconfig" source "net/ipx/Kconfig" source "drivers/net/appletalk/Kconfig" source "net/x25/Kconfig" source "net/lapb/Kconfig" source "net/econet/Kconfig" source "net/wanrouter/Kconfig" source "net/phonet/Kconfig" source "net/ieee802154/Kconfig" source "net/sched/Kconfig" source "net/dcb/Kconfig" source "net/dns_resolver/Kconfig" source "net/batman-adv/Kconfig" config RPS boolean depends on SMP && SYSFS && USE_GENERIC_SMP_HELPERS default y config RFS_ACCEL boolean depends on RPS && GENERIC_HARDIRQS select CPU_RMAP default y config XPS boolean depends on SMP && SYSFS && USE_GENERIC_SMP_HELPERS default y menu "Network testing" config NET_PKTGEN tristate "Packet Generator (USE WITH CAUTION)" depends on PROC_FS ---help--- This module will inject preconfigured packets, at a configurable rate, out of a given interface. It is used for network interface stress testing and performance analysis. If you don't understand what was just said, you don't need it: say N. Documentation on how to use the packet generator can be found at . To compile this code as a module, choose M here: the module will be called pktgen. config NET_TCPPROBE tristate "TCP connection probing" depends on INET && EXPERIMENTAL && PROC_FS && KPROBES ---help--- This module allows for capturing the changes to TCP connection state in response to incoming packets. It is used for debugging TCP congestion avoidance modules. If you don't understand what was just said, you don't need it: say N. Documentation on how to use TCP connection probing can be found at: http://www.linuxfoundation.org/collaborate/workgroups/networking/tcpprobe To compile this code as a module, choose M here: the module will be called tcp_probe. config NET_DROP_MONITOR boolean "Network packet drop alerting service" depends on INET && EXPERIMENTAL && TRACEPOINTS ---help--- This feature provides an alerting service to userspace in the event that packets are discarded in the network stack. Alerts are broadcast via netlink socket to any listening user space process. If you don't need network drop alerts, or if you are ok just checking the various proc files and other utilities for drop statistics, say N here. endmenu endmenu source "net/ax25/Kconfig" source "net/can/Kconfig" source "net/irda/Kconfig" source "net/bluetooth/Kconfig" source "net/rxrpc/Kconfig" config FIB_RULES bool menuconfig WIRELESS bool "Wireless" depends on !S390 default y if WIRELESS source "net/wireless/Kconfig" source "net/mac80211/Kconfig" endif # WIRELESS source "net/wimax/Kconfig" source "net/rfkill/Kconfig" source "net/9p/Kconfig" source "net/caif/Kconfig" source "net/ceph/Kconfig" endif # if NET # # Acorn Econet/AUN protocols # config ECONET tristate "Acorn Econet/AUN protocols (EXPERIMENTAL)" depends on EXPERIMENTAL && INET ---help--- Econet is a fairly old and slow networking protocol mainly used by Acorn computers to access file and print servers. It uses native Econet network cards. AUN is an implementation of the higher level parts of Econet that runs over ordinary Ethernet connections, on top of the UDP packet protocol, which in turn runs on top of the Internet protocol IP. If you say Y here, you can choose with the next two options whether to send Econet/AUN traffic over a UDP Ethernet connection or over a native Econet network card. To compile this driver as a module, choose M here: the module will be called econet. config ECONET_AUNUDP bool "AUN over UDP" depends on ECONET help Say Y here if you want to send Econet/AUN traffic over a UDP connection (UDP is a packet based protocol that runs on top of the Internet protocol IP) using an ordinary Ethernet network card. config ECONET_NATIVE bool "Native Econet" depends on ECONET help Say Y here if you have a native Econet network card installed in your computer. config IUCV tristate "IUCV support (S390 - z/VM only)" depends on S390 help Select this option if you want to use inter-user communication under VM or VIF. If you run on z/VM, say "Y" to enable a fast communication link between VM guests. config AFIUCV tristate "AF_IUCV support (S390 - z/VM only)" depends on IUCV help Select this option if you want to use inter-user communication under VM or VIF sockets. If you run on z/VM, say "Y" to enable a fast communication link between VM guests. config MAC80211 tristate "Generic IEEE 802.11 Networking Stack (mac80211)" depends on CFG80211 select CRYPTO select CRYPTO_ECB select CRYPTO_ARC4 select CRYPTO_AES select CRC32 select AVERAGE ---help--- This option enables the hardware independent IEEE 802.11 networking stack. comment "CFG80211 needs to be enabled for MAC80211" depends on CFG80211=n if MAC80211 != n config MAC80211_HAS_RC bool config MAC80211_RC_PID bool "PID controller based rate control algorithm" if EXPERT select MAC80211_HAS_RC ---help--- This option enables a TX rate control algorithm for mac80211 that uses a PID controller to select the TX rate. config MAC80211_RC_MINSTREL bool "Minstrel" if EXPERT select MAC80211_HAS_RC default y ---help--- This option enables the 'minstrel' TX rate control algorithm config MAC80211_RC_MINSTREL_HT bool "Minstrel 802.11n support" if EXPERT depends on MAC80211_RC_MINSTREL default y ---help--- This option enables the 'minstrel_ht' TX rate control algorithm choice prompt "Default rate control algorithm" depends on MAC80211_HAS_RC default MAC80211_RC_DEFAULT_MINSTREL ---help--- This option selects the default rate control algorithm mac80211 will use. Note that this default can still be overridden through the ieee80211_default_rc_algo module parameter if different algorithms are available. config MAC80211_RC_DEFAULT_PID bool "PID controller based rate control algorithm" depends on MAC80211_RC_PID ---help--- Select the PID controller based rate control as the default rate control algorithm. You should choose this unless you know what you are doing. config MAC80211_RC_DEFAULT_MINSTREL bool "Minstrel" depends on MAC80211_RC_MINSTREL ---help--- Select Minstrel as the default rate control algorithm. endchoice config MAC80211_RC_DEFAULT string default "minstrel_ht" if MAC80211_RC_DEFAULT_MINSTREL && MAC80211_RC_MINSTREL_HT default "minstrel" if MAC80211_RC_DEFAULT_MINSTREL default "pid" if MAC80211_RC_DEFAULT_PID default "" endif comment "Some wireless drivers require a rate control algorithm" depends on MAC80211 && MAC80211_HAS_RC=n config MAC80211_MESH bool "Enable mac80211 mesh networking (pre-802.11s) support" depends on MAC80211 && EXPERIMENTAL ---help--- This options enables support of Draft 802.11s mesh networking. The implementation is based on Draft 2.08 of the Mesh Networking amendment. However, no compliance with that draft is claimed or even possible, as drafts leave a number of identifiers to be defined after ratification. For more information visit http://o11s.org/. config MAC80211_LEDS bool "Enable LED triggers" depends on MAC80211 depends on LEDS_CLASS select LEDS_TRIGGERS ---help--- This option enables a few LED triggers for different packet receive/transmit events. config MAC80211_DEBUGFS bool "Export mac80211 internals in DebugFS" depends on MAC80211 && DEBUG_FS ---help--- Select this to see extensive information about the internal state of mac80211 in debugfs. Say N unless you know you need this. menuconfig MAC80211_DEBUG_MENU bool "Select mac80211 debugging features" depends on MAC80211 ---help--- This option collects various mac80211 debug settings. config MAC80211_NOINLINE bool "Do not inline TX/RX handlers" depends on MAC80211_DEBUG_MENU ---help--- This option affects code generation in mac80211, when selected some functions are marked "noinline" to allow easier debugging of problems in the transmit and receive paths. This option increases code size a bit and inserts a lot of function calls in the code, but is otherwise safe to enable. If unsure, say N unless you expect to be finding problems in mac80211. config MAC80211_VERBOSE_DEBUG bool "Verbose debugging output" depends on MAC80211_DEBUG_MENU ---help--- Selecting this option causes mac80211 to print out many debugging messages. It should not be selected on production systems as some of the messages are remotely triggerable. Do not select this option. config MAC80211_HT_DEBUG bool "Verbose HT debugging" depends on MAC80211_DEBUG_MENU ---help--- This option enables 802.11n High Throughput features debug tracing output. It should not be selected on production systems as some of the messages are remotely triggerable. Do not select this option. config MAC80211_TKIP_DEBUG bool "Verbose TKIP debugging" depends on MAC80211_DEBUG_MENU ---help--- Selecting this option causes mac80211 to print out very verbose TKIP debugging messages. It should not be selected on production systems as those messages are remotely triggerable. Do not select this option. config MAC80211_IBSS_DEBUG bool "Verbose IBSS debugging" depends on MAC80211_DEBUG_MENU ---help--- Selecting this option causes mac80211 to print out very verbose IBSS debugging messages. It should not be selected on production systems as those messages are remotely triggerable. Do not select this option. config MAC80211_VERBOSE_PS_DEBUG bool "Verbose powersave mode debugging" depends on MAC80211_DEBUG_MENU ---help--- Selecting this option causes mac80211 to print out very verbose power save mode debugging messages (when mac80211 is an AP and has power saving stations.) It should not be selected on production systems as those messages are remotely triggerable. Do not select this option. config MAC80211_VERBOSE_MPL_DEBUG bool "Verbose mesh peer link debugging" depends on MAC80211_DEBUG_MENU depends on MAC80211_MESH ---help--- Selecting this option causes mac80211 to print out very verbose mesh peer link debugging messages (when mac80211 is taking part in a mesh network). It should not be selected on production systems as those messages are remotely triggerable. Do not select this option. config MAC80211_VERBOSE_MHWMP_DEBUG bool "Verbose mesh HWMP routing debugging" depends on MAC80211_DEBUG_MENU depends on MAC80211_MESH ---help--- Selecting this option causes mac80211 to print out very verbose mesh routing (HWMP) debugging messages (when mac80211 is taking part in a mesh network). It should not be selected on production systems as those messages are remotely triggerable. Do not select this option. config MAC80211_DEBUG_COUNTERS bool "Extra statistics for TX/RX debugging" depends on MAC80211_DEBUG_MENU depends on MAC80211_DEBUGFS ---help--- Selecting this option causes mac80211 to keep additional and very verbose statistics about TX and RX handler use and show them in debugfs. If unsure, say N. config MAC80211_DRIVER_API_TRACER bool "Driver API tracer" depends on MAC80211_DEBUG_MENU depends on EVENT_TRACING help Say Y here to make mac80211 register with the ftrace framework for the driver API -- you can then see which driver methods it is calling and which API functions drivers are calling by looking at the trace. If unsure, say Y. # # B.A.T.M.A.N meshing protocol # config BATMAN_ADV tristate "B.A.T.M.A.N. Advanced Meshing Protocol" depends on NET default n ---help--- B.A.T.M.A.N. (better approach to mobile ad-hoc networking) is a routing protocol for multi-hop ad-hoc mesh networks. The networks may be wired or wireless. See http://www.open-mesh.org/ for more information and user space tools. config BATMAN_ADV_DEBUG bool "B.A.T.M.A.N. debugging" depends on BATMAN_ADV != n ---help--- This is an option for use by developers; most people should say N here. This enables compilation of support for outputting debugging information to the kernel log. The output is controlled via the module parameter debug. # # Bluetooth subsystem configuration # menuconfig BT tristate "Bluetooth subsystem support" depends on NET && !S390 depends on RFKILL || !RFKILL help Bluetooth is low-cost, low-power, short-range wireless technology. It was designed as a replacement for cables and other short-range technologies like IrDA. Bluetooth operates in personal area range that typically extends up to 10 meters. More information about Bluetooth can be found at . Linux Bluetooth subsystem consist of several layers: Bluetooth Core (HCI device and connection manager, scheduler) HCI Device drivers (Interface to the hardware) SCO Module (SCO audio links) L2CAP Module (Logical Link Control and Adaptation Protocol) RFCOMM Module (RFCOMM Protocol) BNEP Module (Bluetooth Network Encapsulation Protocol) CMTP Module (CAPI Message Transport Protocol) HIDP Module (Human Interface Device Protocol) Say Y here to compile Bluetooth support into the kernel or say M to compile it as module (bluetooth). To use Linux Bluetooth subsystem, you will need several user-space utilities like hciconfig and bluetoothd. These utilities and updates to Bluetooth kernel modules are provided in the BlueZ packages. For more information, see . if BT != n config BT_L2CAP bool "L2CAP protocol support" select CRC16 help L2CAP (Logical Link Control and Adaptation Protocol) provides connection oriented and connection-less data transport. L2CAP support is required for most Bluetooth applications. config BT_SCO bool "SCO links support" help SCO link provides voice transport over Bluetooth. SCO support is required for voice applications like Headset and Audio. endif source "net/bluetooth/rfcomm/Kconfig" source "net/bluetooth/bnep/Kconfig" source "net/bluetooth/cmtp/Kconfig" source "net/bluetooth/hidp/Kconfig" source "drivers/bluetooth/Kconfig" config BT_RFCOMM tristate "RFCOMM protocol support" depends on BT && BT_L2CAP help RFCOMM provides connection oriented stream transport. RFCOMM support is required for Dialup Networking, OBEX and other Bluetooth applications. Say Y here to compile RFCOMM support into the kernel or say M to compile it as module (rfcomm). config BT_RFCOMM_TTY bool "RFCOMM TTY support" depends on BT_RFCOMM help This option enables TTY emulation support for RFCOMM channels. config BT_CMTP tristate "CMTP protocol support" depends on BT && BT_L2CAP && ISDN_CAPI help CMTP (CAPI Message Transport Protocol) is a transport layer for CAPI messages. CMTP is required for the Bluetooth Common ISDN Access Profile. Say Y here to compile CMTP support into the kernel or say M to compile it as module (cmtp). config BT_BNEP tristate "BNEP protocol support" depends on BT && BT_L2CAP select CRC32 help BNEP (Bluetooth Network Encapsulation Protocol) is Ethernet emulation layer on top of Bluetooth. BNEP is required for Bluetooth PAN (Personal Area Network). Say Y here to compile BNEP support into the kernel or say M to compile it as module (bnep). config BT_BNEP_MC_FILTER bool "Multicast filter support" depends on BT_BNEP help This option enables the multicast filter support for BNEP. config BT_BNEP_PROTO_FILTER bool "Protocol filter support" depends on BT_BNEP help This option enables the protocol filter support for BNEP. config BT_HIDP tristate "HIDP protocol support" depends on BT && BT_L2CAP && INPUT && HID_SUPPORT select HID help HIDP (Human Interface Device Protocol) is a transport layer for HID reports. HIDP is required for the Bluetooth Human Interface Device Profile. Say Y here to compile HIDP support into the kernel or say M to compile it as module (hidp). config DCB bool "Data Center Bridging support" default n ---help--- This enables support for configuring Data Center Bridging (DCB) features on DCB capable Ethernet adapters via rtnetlink. Say 'Y' if you have a DCB capable Ethernet adapter which supports this interface and you are connected to a DCB capable switch. DCB is a collection of Ethernet enhancements which allow DCB capable NICs and switches to support network traffic with differing requirements (highly reliable, no drops vs. best effort vs. low latency) to co-exist on Ethernet. DCB features include: Enhanced Transmission Selection (aka Priority Grouping) - provides a framework for assigning bandwidth guarantees to traffic classes. Priority-based Flow Control (PFC) - a MAC control pause frame which works at the granularity of the 802.1p priority instead of the link (802.3x). If unsure, say N. # # Configuration for WAN router # config WAN_ROUTER tristate "WAN router" depends on EXPERIMENTAL ---help--- Wide Area Networks (WANs), such as X.25, frame relay and leased lines, are used to interconnect Local Area Networks (LANs) over vast distances with data transfer rates significantly higher than those achievable with commonly used asynchronous modem connections. Usually, a quite expensive external device called a `WAN router' is needed to connect to a WAN. As an alternative, WAN routing can be built into the Linux kernel. With relatively inexpensive WAN interface cards available on the market, a perfectly usable router can be built for less than half the price of an external router. If you have one of those cards and wish to use your Linux box as a WAN router, say Y here and also to the WAN driver for your card, below. You will then need the wan-tools package which is available from . To compile WAN routing support as a module, choose M here: the module will be called wanrouter. If unsure, say N. menuconfig NET_DSA bool "Distributed Switch Architecture support" default n depends on EXPERIMENTAL && NETDEVICES && !S390 select PHYLIB ---help--- This allows you to use hardware switch chips that use the Distributed Switch Architecture. if NET_DSA # tagging formats config NET_DSA_TAG_DSA bool default n config NET_DSA_TAG_EDSA bool default n config NET_DSA_TAG_TRAILER bool default n # switch drivers config NET_DSA_MV88E6XXX bool default n config NET_DSA_MV88E6060 bool "Marvell 88E6060 ethernet switch chip support" select NET_DSA_TAG_TRAILER ---help--- This enables support for the Marvell 88E6060 ethernet switch chip. config NET_DSA_MV88E6XXX_NEED_PPU bool default n config NET_DSA_MV88E6131 bool "Marvell 88E6085/6095/6095F/6131 ethernet switch chip support" select NET_DSA_MV88E6XXX select NET_DSA_MV88E6XXX_NEED_PPU select NET_DSA_TAG_DSA ---help--- This enables support for the Marvell 88E6085/6095/6095F/6131 ethernet switch chips. config NET_DSA_MV88E6123_61_65 bool "Marvell 88E6123/6161/6165 ethernet switch chip support" select NET_DSA_MV88E6XXX select NET_DSA_TAG_EDSA ---help--- This enables support for the Marvell 88E6123/6161/6165 ethernet switch chips. endif config STP tristate select LLC config GARP tristate select STP # # IPX configuration # config IPX tristate "The IPX protocol" select LLC ---help--- This is support for the Novell networking protocol, IPX, commonly used for local networks of Windows machines. You need it if you want to access Novell NetWare file or print servers using the Linux Novell client ncpfs (available from ) or from within the Linux DOS emulator DOSEMU (read the DOSEMU-HOWTO, available from ). In order to do the former, you'll also have to say Y to "NCP file system support", below. IPX is similar in scope to IP, while SPX, which runs on top of IPX, is similar to TCP. To turn your Linux box into a fully featured NetWare file server and IPX router, say Y here and fetch either lwared from or mars_nwe from . For more information, read the IPX-HOWTO available from . The IPX driver would enlarge your kernel by about 16 KB. To compile this driver as a module, choose M here: the module will be called ipx. Unless you want to integrate your Linux box with a local Novell network, say N. config IPX_INTERN bool "IPX: Full internal IPX network" depends on IPX ---help--- Every IPX network has an address that identifies it. Sometimes it is useful to give an IPX "network" address to your Linux box as well (for example if your box is acting as a file server for different IPX networks: it will then be accessible from everywhere using the same address). The way this is done is to create a virtual internal "network" inside your box and to assign an IPX address to this network. Say Y here if you want to do this; read the IPX-HOWTO at for details. The full internal IPX network enables you to allocate sockets on different virtual nodes of the internal network. This is done by evaluating the field sipx_node of the socket address given to the bind call. So applications should always initialize the node field to 0 when binding a socket on the primary network. In this case the socket is assigned the default node that has been given to the kernel when the internal network was created. By enabling the full internal IPX network the cross-forwarding of packets targeted at 'special' sockets to sockets listening on the primary network is disabled. This might break existing applications, especially RIP/SAP daemons. A RIP/SAP daemon that works well with the full internal net can be found on . If you don't know what you are doing, say N. config IEEE802154 tristate "IEEE Std 802.15.4 Low-Rate Wireless Personal Area Networks support (EXPERIMENTAL)" depends on EXPERIMENTAL ---help--- IEEE Std 802.15.4 defines a low data rate, low power and low complexity short range wireless personal area networks. It was designed to organise networks of sensors, switches, etc automation devices. Maximum allowed data rate is 250 kb/s and typical personal operating space around 10m. Say Y here to compile LR-WPAN support into the kernel or say M to compile it as modules. # # RF switch subsystem configuration # menuconfig RFKILL tristate "RF switch subsystem support" help Say Y here if you want to have control over RF switches found on many WiFi and Bluetooth cards. To compile this driver as a module, choose M here: the module will be called rfkill. # LED trigger support config RFKILL_LEDS bool depends on RFKILL depends on LEDS_TRIGGERS = y || RFKILL = LEDS_TRIGGERS default y config RFKILL_INPUT bool "RF switch input support" if EXPERT depends on RFKILL depends on INPUT = y || RFKILL = INPUT default y if !EXPERT # # NetLabel configuration # config NETLABEL bool "NetLabel subsystem support" depends on SECURITY default n ---help--- NetLabel provides support for explicit network packet labeling protocols such as CIPSO and RIPSO. For more information see Documentation/netlabel as well as the NetLabel SourceForge project for configuration tools and additional documentation. * http://netlabel.sf.net If you are unsure, say N. # # Packet configuration # config PACKET tristate "Packet socket" ---help--- The Packet protocol is used by applications which communicate directly with network devices without an intermediate network protocol implemented in the kernel, e.g. tcpdump. If you want them to work, choose Y. To compile this driver as a module, choose M here: the module will be called af_packet. If unsure, say Y. # # Asynchronous Transfer Mode (ATM) # config ATM tristate "Asynchronous Transfer Mode (ATM)" ---help--- ATM is a high-speed networking technology for Local Area Networks and Wide Area Networks. It uses a fixed packet size and is connection oriented, allowing for the negotiation of minimum bandwidth requirements. In order to participate in an ATM network, your Linux box needs an ATM networking card. If you have that, say Y here and to the driver of your ATM card below. Note that you need a set of user-space programs to actually make use of ATM. See the file for further details. config ATM_CLIP tristate "Classical IP over ATM" depends on ATM && INET help Classical IP over ATM for PVCs and SVCs, supporting InARP and ATMARP. If you want to communication with other IP hosts on your ATM network, you will typically either say Y here or to "LAN Emulation (LANE)" below. config ATM_CLIP_NO_ICMP bool "Do NOT send ICMP if no neighbour" depends on ATM_CLIP help Normally, an "ICMP host unreachable" message is sent if a neighbour cannot be reached because there is no VC to it in the kernel's ATMARP table. This may cause problems when ATMARP table entries are briefly removed during revalidation. If you say Y here, packets to such neighbours are silently discarded instead. config ATM_LANE tristate "LAN Emulation (LANE) support" depends on ATM help LAN Emulation emulates services of existing LANs across an ATM network. Besides operating as a normal ATM end station client, Linux LANE client can also act as an proxy client bridging packets between ELAN and Ethernet segments. You need LANE if you want to try MPOA. config ATM_MPOA tristate "Multi-Protocol Over ATM (MPOA) support" depends on ATM && INET && ATM_LANE!=n help Multi-Protocol Over ATM allows ATM edge devices such as routers, bridges and ATM attached hosts establish direct ATM VCs across subnetwork boundaries. These shortcut connections bypass routers enhancing overall network performance. config ATM_BR2684 tristate "RFC1483/2684 Bridged protocols" depends on ATM && INET help ATM PVCs can carry ethernet PDUs according to RFC2684 (formerly 1483) This device will act like an ethernet from the kernels point of view, with the traffic being carried by ATM PVCs (currently 1 PVC/device). This is sometimes used over DSL lines. If in doubt, say N. config ATM_BR2684_IPFILTER bool "Per-VC IP filter kludge" depends on ATM_BR2684 help This is an experimental mechanism for users who need to terminate a large number of IP-only vcc's. Do not enable this unless you are sure you know what you are doing. # # IP netfilter configuration # menu "IP: Netfilter Configuration" depends on INET && NETFILTER config NF_DEFRAG_IPV4 tristate default n config NF_CONNTRACK_IPV4 tristate "IPv4 connection tracking support (required for NAT)" depends on NF_CONNTRACK default m if NETFILTER_ADVANCED=n select NF_DEFRAG_IPV4 ---help--- Connection tracking keeps a record of what packets have passed through your machine, in order to figure out how they are related into connections. This is IPv4 support on Layer 3 independent connection tracking. Layer 3 independent connection tracking is experimental scheme which generalize ip_conntrack to support other layer 3 protocols. To compile it as a module, choose M here. If unsure, say N. config NF_CONNTRACK_PROC_COMPAT bool "proc/sysctl compatibility with old connection tracking" depends on NF_CONNTRACK_IPV4 default y help This option enables /proc and sysctl compatibility with the old layer 3 dependent connection tracking. This is needed to keep old programs that have not been adapted to the new names working. If unsure, say Y. config IP_NF_QUEUE tristate "IP Userspace queueing via NETLINK (OBSOLETE)" depends on NETFILTER_ADVANCED help Netfilter has the ability to queue packets to user space: the netlink device can be used to access them using this driver. This option enables the old IPv4-only "ip_queue" implementation which has been obsoleted by the new "nfnetlink_queue" code (see CONFIG_NETFILTER_NETLINK_QUEUE). To compile it as a module, choose M here. If unsure, say N. config IP_NF_IPTABLES tristate "IP tables support (required for filtering/masq/NAT)" default m if NETFILTER_ADVANCED=n select NETFILTER_XTABLES help iptables is a general, extensible packet identification framework. The packet filtering and full NAT (masquerading, port forwarding, etc) subsystems now use this: say `Y' or `M' here if you want to use either of those. To compile it as a module, choose M here. If unsure, say N. if IP_NF_IPTABLES # The matches. config IP_NF_MATCH_AH tristate '"ah" match support' depends on NETFILTER_ADVANCED help This match extension allows you to match a range of SPIs inside AH header of IPSec packets. To compile it as a module, choose M here. If unsure, say N. config IP_NF_MATCH_ECN tristate '"ecn" match support' depends on NETFILTER_ADVANCED help This option adds a `ECN' match, which allows you to match against the IPv4 and TCP header ECN fields. To compile it as a module, choose M here. If unsure, say N. config IP_NF_MATCH_TTL tristate '"ttl" match support' depends on NETFILTER_ADVANCED select NETFILTER_XT_MATCH_HL ---help--- This is a backwards-compat option for the user's convenience (e.g. when running oldconfig). It selects CONFIG_NETFILTER_XT_MATCH_HL. # `filter', generic and specific targets config IP_NF_FILTER tristate "Packet filtering" default m if NETFILTER_ADVANCED=n help Packet filtering defines a table `filter', which has a series of rules for simple packet filtering at local input, forwarding and local output. See the man page for iptables(8). To compile it as a module, choose M here. If unsure, say N. config IP_NF_TARGET_REJECT tristate "REJECT target support" depends on IP_NF_FILTER default m if NETFILTER_ADVANCED=n help The REJECT target allows a filtering rule to specify that an ICMP error should be issued in response to an incoming packet, rather than silently being dropped. To compile it as a module, choose M here. If unsure, say N. config IP_NF_TARGET_LOG tristate "LOG target support" default m if NETFILTER_ADVANCED=n help This option adds a `LOG' target, which allows you to create rules in any iptables table which records the packet header to the syslog. To compile it as a module, choose M here. If unsure, say N. config IP_NF_TARGET_ULOG tristate "ULOG target support" default m if NETFILTER_ADVANCED=n ---help--- This option enables the old IPv4-only "ipt_ULOG" implementation which has been obsoleted by the new "nfnetlink_log" code (see CONFIG_NETFILTER_NETLINK_LOG). This option adds a `ULOG' target, which allows you to create rules in any iptables table. The packet is passed to a userspace logging daemon using netlink multicast sockets; unlike the LOG target which can only be viewed through syslog. The appropriate userspace logging daemon (ulogd) may be obtained from To compile it as a module, choose M here. If unsure, say N. # NAT + specific targets: nf_conntrack config NF_NAT tristate "Full NAT" depends on NF_CONNTRACK_IPV4 default m if NETFILTER_ADVANCED=n help The Full NAT option allows masquerading, port forwarding and other forms of full Network Address Port Translation. It is controlled by the `nat' table in iptables: see the man page for iptables(8). To compile it as a module, choose M here. If unsure, say N. config NF_NAT_NEEDED bool depends on NF_NAT default y config IP_NF_TARGET_MASQUERADE tristate "MASQUERADE target support" depends on NF_NAT default m if NETFILTER_ADVANCED=n help Masquerading is a special case of NAT: all outgoing connections are changed to seem to come from a particular interface's address, and if the interface goes down, those connections are lost. This is only useful for dialup accounts with dynamic IP address (ie. your IP address will be different on next dialup). To compile it as a module, choose M here. If unsure, say N. config IP_NF_TARGET_NETMAP tristate "NETMAP target support" depends on NF_NAT depends on NETFILTER_ADVANCED help NETMAP is an implementation of static 1:1 NAT mapping of network addresses. It maps the network address part, while keeping the host address part intact. To compile it as a module, choose M here. If unsure, say N. config IP_NF_TARGET_REDIRECT tristate "REDIRECT target support" depends on NF_NAT depends on NETFILTER_ADVANCED help REDIRECT is a special case of NAT: all incoming connections are mapped onto the incoming interface's address, causing the packets to come to the local machine instead of passing through. This is useful for transparent proxies. To compile it as a module, choose M here. If unsure, say N. config NF_NAT_SNMP_BASIC tristate "Basic SNMP-ALG support" depends on NF_CONNTRACK_SNMP && NF_NAT depends on NETFILTER_ADVANCED default NF_NAT && NF_CONNTRACK_SNMP ---help--- This module implements an Application Layer Gateway (ALG) for SNMP payloads. In conjunction with NAT, it allows a network management system to access multiple private networks with conflicting addresses. It works by modifying IP addresses inside SNMP payloads to match IP-layer NAT mapping. This is the "basic" form of SNMP-ALG, as described in RFC 2962 To compile it as a module, choose M here. If unsure, say N. # If they want FTP, set to $CONFIG_IP_NF_NAT (m or y), # or $CONFIG_IP_NF_FTP (m or y), whichever is weaker. # From kconfig-language.txt: # # '&&' (6) # # (6) Returns the result of min(/expr/, /expr/). config NF_NAT_PROTO_DCCP tristate depends on NF_NAT && NF_CT_PROTO_DCCP default NF_NAT && NF_CT_PROTO_DCCP config NF_NAT_PROTO_GRE tristate depends on NF_NAT && NF_CT_PROTO_GRE config NF_NAT_PROTO_UDPLITE tristate depends on NF_NAT && NF_CT_PROTO_UDPLITE default NF_NAT && NF_CT_PROTO_UDPLITE config NF_NAT_PROTO_SCTP tristate default NF_NAT && NF_CT_PROTO_SCTP depends on NF_NAT && NF_CT_PROTO_SCTP select LIBCRC32C config NF_NAT_FTP tristate depends on NF_CONNTRACK && NF_NAT default NF_NAT && NF_CONNTRACK_FTP config NF_NAT_IRC tristate depends on NF_CONNTRACK && NF_NAT default NF_NAT && NF_CONNTRACK_IRC config NF_NAT_TFTP tristate depends on NF_CONNTRACK && NF_NAT default NF_NAT && NF_CONNTRACK_TFTP config NF_NAT_AMANDA tristate depends on NF_CONNTRACK && NF_NAT default NF_NAT && NF_CONNTRACK_AMANDA config NF_NAT_PPTP tristate depends on NF_CONNTRACK && NF_NAT default NF_NAT && NF_CONNTRACK_PPTP select NF_NAT_PROTO_GRE config NF_NAT_H323 tristate depends on NF_CONNTRACK && NF_NAT default NF_NAT && NF_CONNTRACK_H323 config NF_NAT_SIP tristate depends on NF_CONNTRACK && NF_NAT default NF_NAT && NF_CONNTRACK_SIP # mangle + specific targets config IP_NF_MANGLE tristate "Packet mangling" default m if NETFILTER_ADVANCED=n help This option adds a `mangle' table to iptables: see the man page for iptables(8). This table is used for various packet alterations which can effect how the packet is routed. To compile it as a module, choose M here. If unsure, say N. config IP_NF_TARGET_CLUSTERIP tristate "CLUSTERIP target support (EXPERIMENTAL)" depends on IP_NF_MANGLE && EXPERIMENTAL depends on NF_CONNTRACK_IPV4 depends on NETFILTER_ADVANCED select NF_CONNTRACK_MARK help The CLUSTERIP target allows you to build load-balancing clusters of network servers without having a dedicated load-balancing router/server/switch. To compile it as a module, choose M here. If unsure, say N. config IP_NF_TARGET_ECN tristate "ECN target support" depends on IP_NF_MANGLE depends on NETFILTER_ADVANCED ---help--- This option adds a `ECN' target, which can be used in the iptables mangle table. You can use this target to remove the ECN bits from the IPv4 header of an IP packet. This is particularly useful, if you need to work around existing ECN blackholes on the internet, but don't want to disable ECN support in general. To compile it as a module, choose M here. If unsure, say N. config IP_NF_TARGET_TTL tristate '"TTL" target support' depends on NETFILTER_ADVANCED && IP_NF_MANGLE select NETFILTER_XT_TARGET_HL ---help--- This is a backwards-compatible option for the user's convenience (e.g. when running oldconfig). It selects CONFIG_NETFILTER_XT_TARGET_HL. # raw + specific targets config IP_NF_RAW tristate 'raw table support (required for NOTRACK/TRACE)' depends on NETFILTER_ADVANCED help This option adds a `raw' table to iptables. This table is the very first in the netfilter framework and hooks in at the PREROUTING and OUTPUT chains. If you want to compile it as a module, say M here and read . If unsure, say `N'. # security table for MAC policy config IP_NF_SECURITY tristate "Security table" depends on SECURITY depends on NETFILTER_ADVANCED help This option adds a `security' table to iptables, for use with Mandatory Access Control (MAC) policy. If unsure, say N. endif # IP_NF_IPTABLES # ARP tables config IP_NF_ARPTABLES tristate "ARP tables support" select NETFILTER_XTABLES depends on NETFILTER_ADVANCED help arptables is a general, extensible packet identification framework. The ARP packet filtering and mangling (manipulation)subsystems use this: say Y or M here if you want to use either of those. To compile it as a module, choose M here. If unsure, say N. if IP_NF_ARPTABLES config IP_NF_ARPFILTER tristate "ARP packet filtering" help ARP packet filtering defines a table `filter', which has a series of rules for simple ARP packet filtering at local input and local output. On a bridge, you can also specify filtering rules for forwarded ARP packets. See the man page for arptables(8). To compile it as a module, choose M here. If unsure, say N. config IP_NF_ARP_MANGLE tristate "ARP payload mangling" help Allows altering the ARP packet payload: source and destination hardware and network addresses. endif # IP_NF_ARPTABLES endmenu # # IP configuration # config IP_MULTICAST bool "IP: multicasting" help This is code for addressing several networked computers at once, enlarging your kernel by about 2 KB. You need multicasting if you intend to participate in the MBONE, a high bandwidth network on top of the Internet which carries audio and video broadcasts. More information about the MBONE is on the WWW at . Information about the multicast capabilities of the various network cards is contained in . For most people, it's safe to say N. config IP_ADVANCED_ROUTER bool "IP: advanced router" ---help--- If you intend to run your Linux box mostly as a router, i.e. as a computer that forwards and redistributes network packets, say Y; you will then be presented with several options that allow more precise control about the routing process. The answer to this question won't directly affect the kernel: answering N will just cause the configurator to skip all the questions about advanced routing. Note that your box can only act as a router if you enable IP forwarding in your kernel; you can do that by saying Y to "/proc file system support" and "Sysctl support" below and executing the line echo "1" > /proc/sys/net/ipv4/ip_forward at boot time after the /proc file system has been mounted. If you turn on IP forwarding, you should consider the rp_filter, which automatically rejects incoming packets if the routing table entry for their source address doesn't match the network interface they're arriving on. This has security advantages because it prevents the so-called IP spoofing, however it can pose problems if you use asymmetric routing (packets from you to a host take a different path than packets from that host to you) or if you operate a non-routing host which has several IP addresses on different interfaces. To turn rp_filter on use: echo 1 > /proc/sys/net/ipv4/conf//rp_filter or echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter Note that some distributions enable it in startup scripts. For details about rp_filter strict and loose mode read . If unsure, say N here. config IP_FIB_TRIE_STATS bool "FIB TRIE statistics" depends on IP_ADVANCED_ROUTER ---help--- Keep track of statistics on structure of FIB TRIE table. Useful for testing and measuring TRIE performance. config IP_MULTIPLE_TABLES bool "IP: policy routing" depends on IP_ADVANCED_ROUTER select FIB_RULES ---help--- Normally, a router decides what to do with a received packet based solely on the packet's final destination address. If you say Y here, the Linux router will also be able to take the packet's source address into account. Furthermore, the TOS (Type-Of-Service) field of the packet can be used for routing decisions as well. If you are interested in this, please see the preliminary documentation at and . You will need supporting software from . If unsure, say N. config IP_ROUTE_MULTIPATH bool "IP: equal cost multipath" depends on IP_ADVANCED_ROUTER help Normally, the routing tables specify a single action to be taken in a deterministic manner for a given packet. If you say Y here however, it becomes possible to attach several actions to a packet pattern, in effect specifying several alternative paths to travel for those packets. The router considers all these paths to be of equal "cost" and chooses one of them in a non-deterministic fashion if a matching packet arrives. config IP_ROUTE_VERBOSE bool "IP: verbose route monitoring" depends on IP_ADVANCED_ROUTER help If you say Y here, which is recommended, then the kernel will print verbose messages regarding the routing, for example warnings about received packets which look strange and could be evidence of an attack or a misconfigured system somewhere. The information is handled by the klogd daemon which is responsible for kernel messages ("man klogd"). config IP_ROUTE_CLASSID bool config IP_PNP bool "IP: kernel level autoconfiguration" help This enables automatic configuration of IP addresses of devices and of the routing table during kernel boot, based on either information supplied on the kernel command line or by BOOTP or RARP protocols. You need to say Y only for diskless machines requiring network access to boot (in which case you want to say Y to "Root file system on NFS" as well), because all other machines configure the network in their startup scripts. config IP_PNP_DHCP bool "IP: DHCP support" depends on IP_PNP ---help--- If you want your Linux box to mount its whole root file system (the one containing the directory /) from some other computer over the net via NFS and you want the IP address of your computer to be discovered automatically at boot time using the DHCP protocol (a special protocol designed for doing this job), say Y here. In case the boot ROM of your network card was designed for booting Linux and does DHCP itself, providing all necessary information on the kernel command line, you can say N here. If unsure, say Y. Note that if you want to use DHCP, a DHCP server must be operating on your network. Read for details. config IP_PNP_BOOTP bool "IP: BOOTP support" depends on IP_PNP ---help--- If you want your Linux box to mount its whole root file system (the one containing the directory /) from some other computer over the net via NFS and you want the IP address of your computer to be discovered automatically at boot time using the BOOTP protocol (a special protocol designed for doing this job), say Y here. In case the boot ROM of your network card was designed for booting Linux and does BOOTP itself, providing all necessary information on the kernel command line, you can say N here. If unsure, say Y. Note that if you want to use BOOTP, a BOOTP server must be operating on your network. Read for details. config IP_PNP_RARP bool "IP: RARP support" depends on IP_PNP help If you want your Linux box to mount its whole root file system (the one containing the directory /) from some other computer over the net via NFS and you want the IP address of your computer to be discovered automatically at boot time using the RARP protocol (an older protocol which is being obsoleted by BOOTP and DHCP), say Y here. Note that if you want to use RARP, a RARP server must be operating on your network. Read for details. # not yet ready.. # bool ' IP: ARP support' CONFIG_IP_PNP_ARP config NET_IPIP tristate "IP: tunneling" select INET_TUNNEL ---help--- Tunneling means encapsulating data of one protocol type within another protocol and sending it over a channel that understands the encapsulating protocol. This particular tunneling driver implements encapsulation of IP within IP, which sounds kind of pointless, but can be useful if you want to make your (or some other) machine appear on a different network than it physically is, or to use mobile-IP facilities (allowing laptops to seamlessly move between networks without changing their IP addresses). Saying Y to this option will produce two modules ( = code which can be inserted in and removed from the running kernel whenever you want). Most people won't need this and can say N. config NET_IPGRE_DEMUX tristate "IP: GRE demultiplexer" help This is helper module to demultiplex GRE packets on GRE version field criteria. Required by ip_gre and pptp modules. config NET_IPGRE tristate "IP: GRE tunnels over IP" depends on (IPV6 || IPV6=n) && NET_IPGRE_DEMUX help Tunneling means encapsulating data of one protocol type within another protocol and sending it over a channel that understands the encapsulating protocol. This particular tunneling driver implements GRE (Generic Routing Encapsulation) and at this time allows encapsulating of IPv4 or IPv6 over existing IPv4 infrastructure. This driver is useful if the other endpoint is a Cisco router: Cisco likes GRE much better than the other Linux tunneling driver ("IP tunneling" above). In addition, GRE allows multicast redistribution through the tunnel. config NET_IPGRE_BROADCAST bool "IP: broadcast GRE over IP" depends on IP_MULTICAST && NET_IPGRE help One application of GRE/IP is to construct a broadcast WAN (Wide Area Network), which looks like a normal Ethernet LAN (Local Area Network), but can be distributed all over the Internet. If you want to do that, say Y here and to "IP multicast routing" below. config IP_MROUTE bool "IP: multicast routing" depends on IP_MULTICAST help This is used if you want your machine to act as a router for IP packets that have several destination addresses. It is needed on the MBONE, a high bandwidth network on top of the Internet which carries audio and video broadcasts. In order to do that, you would most likely run the program mrouted. Information about the multicast capabilities of the various network cards is contained in . If you haven't heard about it, you don't need it. config IP_MROUTE_MULTIPLE_TABLES bool "IP: multicast policy routing" depends on IP_MROUTE && IP_ADVANCED_ROUTER select FIB_RULES help Normally, a multicast router runs a userspace daemon and decides what to do with a multicast packet based on the source and destination addresses. If you say Y here, the multicast router will also be able to take interfaces and packet marks into account and run multiple instances of userspace daemons simultaneously, each one handling a single table. If unsure, say N. config IP_PIMSM_V1 bool "IP: PIM-SM version 1 support" depends on IP_MROUTE help Kernel side support for Sparse Mode PIM (Protocol Independent Multicast) version 1. This multicast routing protocol is used widely because Cisco supports it. You need special software to use it (pimd-v1). Please see for more information about PIM. Say Y if you want to use PIM-SM v1. Note that you can say N here if you just want to use Dense Mode PIM. config IP_PIMSM_V2 bool "IP: PIM-SM version 2 support" depends on IP_MROUTE help Kernel side support for Sparse Mode PIM version 2. In order to use this, you need an experimental routing daemon supporting it (pimd or gated-5). This routing protocol is not used widely, so say N unless you want to play with it. config ARPD bool "IP: ARP daemon support" ---help--- The kernel maintains an internal cache which maps IP addresses to hardware addresses on the local network, so that Ethernet/Token Ring/ etc. frames are sent to the proper address on the physical networking layer. Normally, kernel uses the ARP protocol to resolve these mappings. Saying Y here adds support to have an user space daemon to do this resolution instead. This is useful for implementing an alternate address resolution protocol (e.g. NHRP on mGRE tunnels) and also for testing purposes. If unsure, say N. config SYN_COOKIES bool "IP: TCP syncookie support" ---help--- Normal TCP/IP networking is open to an attack known as "SYN flooding". This denial-of-service attack prevents legitimate remote users from being able to connect to your computer during an ongoing attack and requires very little work from the attacker, who can operate from anywhere on the Internet. SYN cookies provide protection against this type of attack. If you say Y here, the TCP/IP stack will use a cryptographic challenge protocol known as "SYN cookies" to enable legitimate users to continue to connect, even when your machine is under attack. There is no need for the legitimate users to change their TCP/IP software; SYN cookies work transparently to them. For technical information about SYN cookies, check out . If you are SYN flooded, the source address reported by the kernel is likely to have been forged by the attacker; it is only reported as an aid in tracing the packets to their actual source and should not be taken as absolute truth. SYN cookies may prevent correct error reporting on clients when the server is really overloaded. If this happens frequently better turn them off. If you say Y here, you can disable SYN cookies at run time by saying Y to "/proc file system support" and "Sysctl support" below and executing the command echo 0 > /proc/sys/net/ipv4/tcp_syncookies after the /proc file system has been mounted. If unsure, say N. config INET_AH tristate "IP: AH transformation" select XFRM select CRYPTO select CRYPTO_HMAC select CRYPTO_MD5 select CRYPTO_SHA1 ---help--- Support for IPsec AH. If unsure, say Y. config INET_ESP tristate "IP: ESP transformation" select XFRM select CRYPTO select CRYPTO_AUTHENC select CRYPTO_HMAC select CRYPTO_MD5 select CRYPTO_CBC select CRYPTO_SHA1 select CRYPTO_DES ---help--- Support for IPsec ESP. If unsure, say Y. config INET_IPCOMP tristate "IP: IPComp transformation" select INET_XFRM_TUNNEL select XFRM_IPCOMP ---help--- Support for IP Payload Compression Protocol (IPComp) (RFC3173), typically needed for IPsec. If unsure, say Y. config INET_XFRM_TUNNEL tristate select INET_TUNNEL default n config INET_TUNNEL tristate default n config INET_XFRM_MODE_TRANSPORT tristate "IP: IPsec transport mode" default y select XFRM ---help--- Support for IPsec transport mode. If unsure, say Y. config INET_XFRM_MODE_TUNNEL tristate "IP: IPsec tunnel mode" default y select XFRM ---help--- Support for IPsec tunnel mode. If unsure, say Y. config INET_XFRM_MODE_BEET tristate "IP: IPsec BEET mode" default y select XFRM ---help--- Support for IPsec BEET mode. If unsure, say Y. config INET_LRO tristate "Large Receive Offload (ipv4/tcp)" default y ---help--- Support for Large Receive Offload (ipv4/tcp). If unsure, say Y. config INET_DIAG tristate "INET: socket monitoring interface" default y ---help--- Support for INET (TCP, DCCP, etc) socket monitoring interface used by native Linux tools such as ss. ss is included in iproute2, currently downloadable at: http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2 If unsure, say Y. config INET_TCP_DIAG depends on INET_DIAG def_tristate INET_DIAG menuconfig TCP_CONG_ADVANCED bool "TCP: advanced congestion control" ---help--- Support for selection of various TCP congestion control modules. Nearly all users can safely say no here, and a safe default selection will be made (CUBIC with new Reno as a fallback). If unsure, say N. if TCP_CONG_ADVANCED config TCP_CONG_BIC tristate "Binary Increase Congestion (BIC) control" default m ---help--- BIC-TCP is a sender-side only change that ensures a linear RTT fairness under large windows while offering both scalability and bounded TCP-friendliness. The protocol combines two schemes called additive increase and binary search increase. When the congestion window is large, additive increase with a large increment ensures linear RTT fairness as well as good scalability. Under small congestion windows, binary search increase provides TCP friendliness. See http://www.csc.ncsu.edu/faculty/rhee/export/bitcp/ config TCP_CONG_CUBIC tristate "CUBIC TCP" default y ---help--- This is version 2.0 of BIC-TCP which uses a cubic growth function among other techniques. See http://www.csc.ncsu.edu/faculty/rhee/export/bitcp/cubic-paper.pdf config TCP_CONG_WESTWOOD tristate "TCP Westwood+" default m ---help--- TCP Westwood+ is a sender-side only modification of the TCP Reno protocol stack that optimizes the performance of TCP congestion control. It is based on end-to-end bandwidth estimation to set congestion window and slow start threshold after a congestion episode. Using this estimation, TCP Westwood+ adaptively sets a slow start threshold and a congestion window which takes into account the bandwidth used at the time congestion is experienced. TCP Westwood+ significantly increases fairness wrt TCP Reno in wired networks and throughput over wireless links. config TCP_CONG_HTCP tristate "H-TCP" default m ---help--- H-TCP is a send-side only modifications of the TCP Reno protocol stack that optimizes the performance of TCP congestion control for high speed network links. It uses a modeswitch to change the alpha and beta parameters of TCP Reno based on network conditions and in a way so as to be fair with other Reno and H-TCP flows. config TCP_CONG_HSTCP tristate "High Speed TCP" depends on EXPERIMENTAL default n ---help--- Sally Floyd's High Speed TCP (RFC 3649) congestion control. A modification to TCP's congestion control mechanism for use with large congestion windows. A table indicates how much to increase the congestion window by when an ACK is received. For more detail see http://www.icir.org/floyd/hstcp.html config TCP_CONG_HYBLA tristate "TCP-Hybla congestion control algorithm" depends on EXPERIMENTAL default n ---help--- TCP-Hybla is a sender-side only change that eliminates penalization of long-RTT, large-bandwidth connections, like when satellite legs are involved, especially when sharing a common bottleneck with normal terrestrial connections. config TCP_CONG_VEGAS tristate "TCP Vegas" depends on EXPERIMENTAL default n ---help--- TCP Vegas is a sender-side only change to TCP that anticipates the onset of congestion by estimating the bandwidth. TCP Vegas adjusts the sending rate by modifying the congestion window. TCP Vegas should provide less packet loss, but it is not as aggressive as TCP Reno. config TCP_CONG_SCALABLE tristate "Scalable TCP" depends on EXPERIMENTAL default n ---help--- Scalable TCP is a sender-side only change to TCP which uses a MIMD congestion control algorithm which has some nice scaling properties, though is known to have fairness issues. See http://www.deneholme.net/tom/scalable/ config TCP_CONG_LP tristate "TCP Low Priority" depends on EXPERIMENTAL default n ---help--- TCP Low Priority (TCP-LP), a distributed algorithm whose goal is to utilize only the excess network bandwidth as compared to the ``fair share`` of bandwidth as targeted by TCP. See http://www-ece.rice.edu/networks/TCP-LP/ config TCP_CONG_VENO tristate "TCP Veno" depends on EXPERIMENTAL default n ---help--- TCP Veno is a sender-side only enhancement of TCP to obtain better throughput over wireless networks. TCP Veno makes use of state distinguishing to circumvent the difficult judgment of the packet loss type. TCP Veno cuts down less congestion window in response to random loss packets. See config TCP_CONG_YEAH tristate "YeAH TCP" depends on EXPERIMENTAL select TCP_CONG_VEGAS default n ---help--- YeAH-TCP is a sender-side high-speed enabled TCP congestion control algorithm, which uses a mixed loss/delay approach to compute the congestion window. It's design goals target high efficiency, internal, RTT and Reno fairness, resilience to link loss while keeping network elements load as low as possible. For further details look here: http://wil.cs.caltech.edu/pfldnet2007/paper/YeAH_TCP.pdf config TCP_CONG_ILLINOIS tristate "TCP Illinois" depends on EXPERIMENTAL default n ---help--- TCP-Illinois is a sender-side modification of TCP Reno for high speed long delay links. It uses round-trip-time to adjust the alpha and beta parameters to achieve a higher average throughput and maintain fairness. For further details see: http://www.ews.uiuc.edu/~shaoliu/tcpillinois/index.html choice prompt "Default TCP congestion control" default DEFAULT_CUBIC help Select the TCP congestion control that will be used by default for all connections. config DEFAULT_BIC bool "Bic" if TCP_CONG_BIC=y config DEFAULT_CUBIC bool "Cubic" if TCP_CONG_CUBIC=y config DEFAULT_HTCP bool "Htcp" if TCP_CONG_HTCP=y config DEFAULT_HYBLA bool "Hybla" if TCP_CONG_HYBLA=y config DEFAULT_VEGAS bool "Vegas" if TCP_CONG_VEGAS=y config DEFAULT_VENO bool "Veno" if TCP_CONG_VENO=y config DEFAULT_WESTWOOD bool "Westwood" if TCP_CONG_WESTWOOD=y config DEFAULT_RENO bool "Reno" endchoice endif config TCP_CONG_CUBIC tristate depends on !TCP_CONG_ADVANCED default y config DEFAULT_TCP_CONG string default "bic" if DEFAULT_BIC default "cubic" if DEFAULT_CUBIC default "htcp" if DEFAULT_HTCP default "hybla" if DEFAULT_HYBLA default "vegas" if DEFAULT_VEGAS default "westwood" if DEFAULT_WESTWOOD default "veno" if DEFAULT_VENO default "reno" if DEFAULT_RENO default "cubic" config TCP_MD5SIG bool "TCP: MD5 Signature Option support (RFC2385) (EXPERIMENTAL)" depends on EXPERIMENTAL select CRYPTO select CRYPTO_MD5 ---help--- RFC2385 specifies a method of giving MD5 protection to TCP sessions. Its main (only?) use is to protect BGP sessions between core routers on the Internet. If unsure, say N. # # RxRPC session sockets # config AF_RXRPC tristate "RxRPC session sockets" depends on INET && EXPERIMENTAL select CRYPTO select KEYS help Say Y or M here to include support for RxRPC session sockets (just the transport part, not the presentation part: (un)marshalling is left to the application). These are used for AFS kernel filesystem and userspace utilities. This module at the moment only supports client operations and is currently incomplete. See Documentation/networking/rxrpc.txt. config AF_RXRPC_DEBUG bool "RxRPC dynamic debugging" depends on AF_RXRPC help Say Y here to make runtime controllable debugging messages appear. See Documentation/networking/rxrpc.txt. config RXKAD tristate "RxRPC Kerberos security" depends on AF_RXRPC select CRYPTO select CRYPTO_MANAGER select CRYPTO_BLKCIPHER select CRYPTO_PCBC select CRYPTO_FCRYPT help Provide kerberos 4 and AFS kaserver security handling for AF_RXRPC through the use of the key retention service. See Documentation/networking/rxrpc.txt. # # SCTP configuration # menuconfig IP_SCTP tristate "The SCTP Protocol (EXPERIMENTAL)" depends on INET && EXPERIMENTAL depends on IPV6 || IPV6=n select CRYPTO select CRYPTO_HMAC select CRYPTO_SHA1 select CRYPTO_MD5 if SCTP_HMAC_MD5 select LIBCRC32C ---help--- Stream Control Transmission Protocol From RFC 2960 . "SCTP is a reliable transport protocol operating on top of a connectionless packet network such as IP. It offers the following services to its users: -- acknowledged error-free non-duplicated transfer of user data, -- data fragmentation to conform to discovered path MTU size, -- sequenced delivery of user messages within multiple streams, with an option for order-of-arrival delivery of individual user messages, -- optional bundling of multiple user messages into a single SCTP packet, and -- network-level fault tolerance through supporting of multi- homing at either or both ends of an association." To compile this protocol support as a module, choose M here: the module will be called sctp. If in doubt, say N. if IP_SCTP config NET_SCTPPROBE tristate "SCTP: Association probing" depends on PROC_FS && KPROBES ---help--- This module allows for capturing the changes to SCTP association state in response to incoming packets. It is used for debugging SCTP congestion control algorithms. If you don't understand what was just said, you don't need it: say N. To compile this code as a module, choose M here: the module will be called sctp_probe. config SCTP_DBG_MSG bool "SCTP: Debug messages" help If you say Y, this will enable verbose debugging messages. If unsure, say N. However, if you are running into problems, use this option to gather detailed trace information config SCTP_DBG_OBJCNT bool "SCTP: Debug object counts" depends on PROC_FS help If you say Y, this will enable debugging support for counting the type of objects that are currently allocated. This is useful for identifying memory leaks. This debug information can be viewed by 'cat /proc/net/sctp/sctp_dbg_objcnt' If unsure, say N choice prompt "SCTP: Cookie HMAC Algorithm" default SCTP_HMAC_MD5 help HMAC algorithm to be used during association initialization. It is strongly recommended to use HMAC-SHA1 or HMAC-MD5. See configuration for Cryptographic API and enable those algorithms to make usable by SCTP. config SCTP_HMAC_NONE bool "None" help Choosing this disables the use of an HMAC during association establishment. It is advised to use either HMAC-MD5 or HMAC-SHA1. config SCTP_HMAC_SHA1 bool "HMAC-SHA1" help Enable the use of HMAC-SHA1 during association establishment. It is advised to use either HMAC-MD5 or HMAC-SHA1. config SCTP_HMAC_MD5 bool "HMAC-MD5" help Enable the use of HMAC-MD5 during association establishment. It is advised to use either HMAC-MD5 or HMAC-SHA1. endchoice endif # IP_SCTP # # Unix Domain Sockets # config UNIX tristate "Unix domain sockets" ---help--- If you say Y here, you will include support for Unix domain sockets; sockets are the standard Unix mechanism for establishing and accessing network connections. Many commonly used programs such as the X Window system and syslog use these sockets even if your machine is not connected to any network. Unless you are working on an embedded system or something similar, you therefore definitely want to say Y here. To compile this driver as a module, choose M here: the module will be called unix. Note that several important services won't work correctly if you say M here and then neglect to load the module. Say Y unless you know what you are doing. # # Traffic control configuration. # menuconfig NET_SCHED bool "QoS and/or fair queueing" select NET_SCH_FIFO ---help--- When the kernel has several packets to send out over a network device, it has to decide which ones to send first, which ones to delay, and which ones to drop. This is the job of the queueing disciplines, several different algorithms for how to do this "fairly" have been proposed. If you say N here, you will get the standard packet scheduler, which is a FIFO (first come, first served). If you say Y here, you will be able to choose from among several alternative algorithms which can then be attached to different network devices. This is useful for example if some of your network devices are real time devices that need a certain minimum data flow rate, or if you need to limit the maximum data flow rate for traffic which matches specified criteria. This code is considered to be experimental. To administer these schedulers, you'll need the user-level utilities from the package iproute2+tc at . That package also contains some documentation; for more, check out . This Quality of Service (QoS) support will enable you to use Differentiated Services (diffserv) and Resource Reservation Protocol (RSVP) on your Linux router if you also say Y to the corresponding classifiers below. Documentation and software is at . If you say Y here and to "/proc file system" below, you will be able to read status information about packet schedulers from the file /proc/net/psched. The available schedulers are listed in the following questions; you can say Y to as many as you like. If unsure, say N now. if NET_SCHED comment "Queueing/Scheduling" config NET_SCH_CBQ tristate "Class Based Queueing (CBQ)" ---help--- Say Y here if you want to use the Class-Based Queueing (CBQ) packet scheduling algorithm. This algorithm classifies the waiting packets into a tree-like hierarchy of classes; the leaves of this tree are in turn scheduled by separate algorithms. See the top of for more details. CBQ is a commonly used scheduler, so if you're unsure, you should say Y here. Then say Y to all the queueing algorithms below that you want to use as leaf disciplines. To compile this code as a module, choose M here: the module will be called sch_cbq. config NET_SCH_HTB tristate "Hierarchical Token Bucket (HTB)" ---help--- Say Y here if you want to use the Hierarchical Token Buckets (HTB) packet scheduling algorithm. See for complete manual and in-depth articles. HTB is very similar to CBQ regarding its goals however is has different properties and different algorithm. To compile this code as a module, choose M here: the module will be called sch_htb. config NET_SCH_HFSC tristate "Hierarchical Fair Service Curve (HFSC)" ---help--- Say Y here if you want to use the Hierarchical Fair Service Curve (HFSC) packet scheduling algorithm. To compile this code as a module, choose M here: the module will be called sch_hfsc. config NET_SCH_ATM tristate "ATM Virtual Circuits (ATM)" depends on ATM ---help--- Say Y here if you want to use the ATM pseudo-scheduler. This provides a framework for invoking classifiers, which in turn select classes of this queuing discipline. Each class maps the flow(s) it is handling to a given virtual circuit. See the top of for more details. To compile this code as a module, choose M here: the module will be called sch_atm. config NET_SCH_PRIO tristate "Multi Band Priority Queueing (PRIO)" ---help--- Say Y here if you want to use an n-band priority queue packet scheduler. To compile this code as a module, choose M here: the module will be called sch_prio. config NET_SCH_MULTIQ tristate "Hardware Multiqueue-aware Multi Band Queuing (MULTIQ)" ---help--- Say Y here if you want to use an n-band queue packet scheduler to support devices that have multiple hardware transmit queues. To compile this code as a module, choose M here: the module will be called sch_multiq. config NET_SCH_RED tristate "Random Early Detection (RED)" ---help--- Say Y here if you want to use the Random Early Detection (RED) packet scheduling algorithm. See the top of for more details. To compile this code as a module, choose M here: the module will be called sch_red. config NET_SCH_SFB tristate "Stochastic Fair Blue (SFB)" ---help--- Say Y here if you want to use the Stochastic Fair Blue (SFB) packet scheduling algorithm. See the top of for more details. To compile this code as a module, choose M here: the module will be called sch_sfb. config NET_SCH_SFQ tristate "Stochastic Fairness Queueing (SFQ)" ---help--- Say Y here if you want to use the Stochastic Fairness Queueing (SFQ) packet scheduling algorithm. See the top of for more details. To compile this code as a module, choose M here: the module will be called sch_sfq. config NET_SCH_TEQL tristate "True Link Equalizer (TEQL)" ---help--- Say Y here if you want to use the True Link Equalizer (TLE) packet scheduling algorithm. This queueing discipline allows the combination of several physical devices into one virtual device. See the top of for more details. To compile this code as a module, choose M here: the module will be called sch_teql. config NET_SCH_TBF tristate "Token Bucket Filter (TBF)" ---help--- Say Y here if you want to use the Token Bucket Filter (TBF) packet scheduling algorithm. See the top of for more details. To compile this code as a module, choose M here: the module will be called sch_tbf. config NET_SCH_GRED tristate "Generic Random Early Detection (GRED)" ---help--- Say Y here if you want to use the Generic Random Early Detection (GRED) packet scheduling algorithm for some of your network devices (see the top of for details and references about the algorithm). To compile this code as a module, choose M here: the module will be called sch_gred. config NET_SCH_DSMARK tristate "Differentiated Services marker (DSMARK)" ---help--- Say Y if you want to schedule packets according to the Differentiated Services architecture proposed in RFC 2475. Technical information on this method, with pointers to associated RFCs, is available at . To compile this code as a module, choose M here: the module will be called sch_dsmark. config NET_SCH_NETEM tristate "Network emulator (NETEM)" ---help--- Say Y if you want to emulate network delay, loss, and packet re-ordering. This is often useful to simulate networks when testing applications or protocols. To compile this driver as a module, choose M here: the module will be called sch_netem. If unsure, say N. config NET_SCH_DRR tristate "Deficit Round Robin scheduler (DRR)" help Say Y here if you want to use the Deficit Round Robin (DRR) packet scheduling algorithm. To compile this driver as a module, choose M here: the module will be called sch_drr. If unsure, say N. config NET_SCH_MQPRIO tristate "Multi-queue priority scheduler (MQPRIO)" help Say Y here if you want to use the Multi-queue Priority scheduler. This scheduler allows QOS to be offloaded on NICs that have support for offloading QOS schedulers. To compile this driver as a module, choose M here: the module will be called sch_mqprio. If unsure, say N. config NET_SCH_CHOKE tristate "CHOose and Keep responsive flow scheduler (CHOKE)" help Say Y here if you want to use the CHOKe packet scheduler (CHOose and Keep for responsive flows, CHOose and Kill for unresponsive flows). This is a variation of RED which trys to penalize flows that monopolize the queue. To compile this code as a module, choose M here: the module will be called sch_choke. config NET_SCH_INGRESS tristate "Ingress Qdisc" depends on NET_CLS_ACT ---help--- Say Y here if you want to use classifiers for incoming packets. If unsure, say Y. To compile this code as a module, choose M here: the module will be called sch_ingress. comment "Classification" config NET_CLS boolean config NET_CLS_BASIC tristate "Elementary classification (BASIC)" select NET_CLS ---help--- Say Y here if you want to be able to classify packets using only extended matches and actions. To compile this code as a module, choose M here: the module will be called cls_basic. config NET_CLS_TCINDEX tristate "Traffic-Control Index (TCINDEX)" select NET_CLS ---help--- Say Y here if you want to be able to classify packets based on traffic control indices. You will want this feature if you want to implement Differentiated Services together with DSMARK. To compile this code as a module, choose M here: the module will be called cls_tcindex. config NET_CLS_ROUTE4 tristate "Routing decision (ROUTE)" select IP_ROUTE_CLASSID select NET_CLS ---help--- If you say Y here, you will be able to classify packets according to the route table entry they matched. To compile this code as a module, choose M here: the module will be called cls_route. config NET_CLS_FW tristate "Netfilter mark (FW)" select NET_CLS ---help--- If you say Y here, you will be able to classify packets according to netfilter/firewall marks. To compile this code as a module, choose M here: the module will be called cls_fw. config NET_CLS_U32 tristate "Universal 32bit comparisons w/ hashing (U32)" select NET_CLS ---help--- Say Y here to be able to classify packets using a universal 32bit pieces based comparison scheme. To compile this code as a module, choose M here: the module will be called cls_u32. config CLS_U32_PERF bool "Performance counters support" depends on NET_CLS_U32 ---help--- Say Y here to make u32 gather additional statistics useful for fine tuning u32 classifiers. config CLS_U32_MARK bool "Netfilter marks support" depends on NET_CLS_U32 ---help--- Say Y here to be able to use netfilter marks as u32 key. config NET_CLS_RSVP tristate "IPv4 Resource Reservation Protocol (RSVP)" select NET_CLS ---help--- The Resource Reservation Protocol (RSVP) permits end systems to request a minimum and maximum data flow rate for a connection; this is important for real time data such as streaming sound or video. Say Y here if you want to be able to classify outgoing packets based on their RSVP requests. To compile this code as a module, choose M here: the module will be called cls_rsvp. config NET_CLS_RSVP6 tristate "IPv6 Resource Reservation Protocol (RSVP6)" select NET_CLS ---help--- The Resource Reservation Protocol (RSVP) permits end systems to request a minimum and maximum data flow rate for a connection; this is important for real time data such as streaming sound or video. Say Y here if you want to be able to classify outgoing packets based on their RSVP requests and you are using the IPv6 protocol. To compile this code as a module, choose M here: the module will be called cls_rsvp6. config NET_CLS_FLOW tristate "Flow classifier" select NET_CLS ---help--- If you say Y here, you will be able to classify packets based on a configurable combination of packet keys. This is mostly useful in combination with SFQ. To compile this code as a module, choose M here: the module will be called cls_flow. config NET_CLS_CGROUP tristate "Control Group Classifier" select NET_CLS depends on CGROUPS ---help--- Say Y here if you want to classify packets based on the control cgroup of their process. To compile this code as a module, choose M here: the module will be called cls_cgroup. config NET_EMATCH bool "Extended Matches" select NET_CLS ---help--- Say Y here if you want to use extended matches on top of classifiers and select the extended matches below. Extended matches are small classification helpers not worth writing a separate classifier for. A recent version of the iproute2 package is required to use extended matches. config NET_EMATCH_STACK int "Stack size" depends on NET_EMATCH default "32" ---help--- Size of the local stack variable used while evaluating the tree of ematches. Limits the depth of the tree, i.e. the number of encapsulated precedences. Every level requires 4 bytes of additional stack space. config NET_EMATCH_CMP tristate "Simple packet data comparison" depends on NET_EMATCH ---help--- Say Y here if you want to be able to classify packets based on simple packet data comparisons for 8, 16, and 32bit values. To compile this code as a module, choose M here: the module will be called em_cmp. config NET_EMATCH_NBYTE tristate "Multi byte comparison" depends on NET_EMATCH ---help--- Say Y here if you want to be able to classify packets based on multiple byte comparisons mainly useful for IPv6 address comparisons. To compile this code as a module, choose M here: the module will be called em_nbyte. config NET_EMATCH_U32 tristate "U32 key" depends on NET_EMATCH ---help--- Say Y here if you want to be able to classify packets using the famous u32 key in combination with logic relations. To compile this code as a module, choose M here: the module will be called em_u32. config NET_EMATCH_META tristate "Metadata" depends on NET_EMATCH ---help--- Say Y here if you want to be able to classify packets based on metadata such as load average, netfilter attributes, socket attributes and routing decisions. To compile this code as a module, choose M here: the module will be called em_meta. config NET_EMATCH_TEXT tristate "Textsearch" depends on NET_EMATCH select TEXTSEARCH select TEXTSEARCH_KMP select TEXTSEARCH_BM select TEXTSEARCH_FSM ---help--- Say Y here if you want to be able to classify packets based on textsearch comparisons. To compile this code as a module, choose M here: the module will be called em_text. config NET_CLS_ACT bool "Actions" ---help--- Say Y here if you want to use traffic control actions. Actions get attached to classifiers and are invoked after a successful classification. They are used to overwrite the classification result, instantly drop or redirect packets, etc. A recent version of the iproute2 package is required to use extended matches. config NET_ACT_POLICE tristate "Traffic Policing" depends on NET_CLS_ACT ---help--- Say Y here if you want to do traffic policing, i.e. strict bandwidth limiting. This action replaces the existing policing module. To compile this code as a module, choose M here: the module will be called act_police. config NET_ACT_GACT tristate "Generic actions" depends on NET_CLS_ACT ---help--- Say Y here to take generic actions such as dropping and accepting packets. To compile this code as a module, choose M here: the module will be called act_gact. config GACT_PROB bool "Probability support" depends on NET_ACT_GACT ---help--- Say Y here to use the generic action randomly or deterministically. config NET_ACT_MIRRED tristate "Redirecting and Mirroring" depends on NET_CLS_ACT ---help--- Say Y here to allow packets to be mirrored or redirected to other devices. To compile this code as a module, choose M here: the module will be called act_mirred. config NET_ACT_IPT tristate "IPtables targets" depends on NET_CLS_ACT && NETFILTER && IP_NF_IPTABLES ---help--- Say Y here to be able to invoke iptables targets after successful classification. To compile this code as a module, choose M here: the module will be called act_ipt. config NET_ACT_NAT tristate "Stateless NAT" depends on NET_CLS_ACT ---help--- Say Y here to do stateless NAT on IPv4 packets. You should use netfilter for NAT unless you know what you are doing. To compile this code as a module, choose M here: the module will be called act_nat. config NET_ACT_PEDIT tristate "Packet Editing" depends on NET_CLS_ACT ---help--- Say Y here if you want to mangle the content of packets. To compile this code as a module, choose M here: the module will be called act_pedit. config NET_ACT_SIMP tristate "Simple Example (Debug)" depends on NET_CLS_ACT ---help--- Say Y here to add a simple action for demonstration purposes. It is meant as an example and for debugging purposes. It will print a configured policy string followed by the packet count to the console for every packet that passes by. If unsure, say N. To compile this code as a module, choose M here: the module will be called act_simple. config NET_ACT_SKBEDIT tristate "SKB Editing" depends on NET_CLS_ACT ---help--- Say Y here to change skb priority or queue_mapping settings. If unsure, say N. To compile this code as a module, choose M here: the module will be called act_skbedit. config NET_ACT_CSUM tristate "Checksum Updating" depends on NET_CLS_ACT && INET ---help--- Say Y here to update some common checksum after some direct packet alterations. To compile this code as a module, choose M here: the module will be called act_csum. config NET_CLS_IND bool "Incoming device classification" depends on NET_CLS_U32 || NET_CLS_FW ---help--- Say Y here to extend the u32 and fw classifier to support classification based on the incoming device. This option is likely to disappear in favour of the metadata ematch. endif # NET_SCHED config NET_SCH_FIFO bool # # DECnet netfilter configuration # menu "DECnet: Netfilter Configuration" depends on DECNET && NETFILTER && EXPERIMENTAL depends on NETFILTER_ADVANCED config DECNET_NF_GRABULATOR tristate "Routing message grabulator (for userland routing daemon)" help Enable this module if you want to use the userland DECnet routing daemon. You will also need to enable routing support for DECnet unless you just want to monitor routing messages from other nodes. endmenu # # DECnet configuration # config DECNET tristate "DECnet Support" ---help--- The DECnet networking protocol was used in many products made by Digital (now Compaq). It provides reliable stream and sequenced packet communications over which run a variety of services similar to those which run over TCP/IP. To find some tools to use with the kernel layer support, please look at Patrick Caulfield's web site: . More detailed documentation is available in . Be sure to say Y to "/proc file system support" and "Sysctl support" below when using DECnet, since you will need sysctl support to aid in configuration at run time. The DECnet code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module is called decnet. config DECNET_ROUTER bool "DECnet: router support (EXPERIMENTAL)" depends on DECNET && EXPERIMENTAL select FIB_RULES ---help--- Add support for turning your DECnet Endnode into a level 1 or 2 router. This is an experimental, but functional option. If you do say Y here, then make sure that you also say Y to "Kernel/User network link driver", "Routing messages" and "Network packet filtering". The first two are required to allow configuration via rtnetlink (you will need Alexey Kuznetsov's iproute2 package from ). The "Network packet filtering" option will be required for the forthcoming routing daemon to work. See for more information. # # Amateur Radio protocols and AX.25 device configuration # menuconfig HAMRADIO depends on NET && !S390 bool "Amateur Radio support" help If you want to connect your Linux box to an amateur radio, answer Y here. You want to read and more specifically about AX.25 on Linux . Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about amateur radio. comment "Packet Radio protocols" depends on HAMRADIO config AX25 tristate "Amateur Radio AX.25 Level 2 protocol" depends on HAMRADIO help This is the protocol used for computer communication over amateur radio. It is either used by itself for point-to-point links, or to carry other protocols such as tcp/ip. To use it, you need a device that connects your Linux box to your amateur radio. You can either use a low speed TNC (a Terminal Node Controller acts as a kind of modem connecting your computer's serial port to your radio's microphone input and speaker output) supporting the KISS protocol or one of the various SCC cards that are supported by the generic Z8530 or the DMA SCC driver. Another option are the Baycom modem serial and parallel port hacks or the sound card modem (supported by their own drivers). If you say Y here, you also have to say Y to one of those drivers. Information about where to get supporting software for Linux amateur radio as well as information about how to configure an AX.25 port is contained in the AX25-HOWTO, available from . You might also want to check out the file in the kernel source. More information about digital amateur radio in general is on the WWW at . To compile this driver as a module, choose M here: the module will be called ax25. config AX25_DAMA_SLAVE bool "AX.25 DAMA Slave support" default y depends on AX25 help DAMA is a mechanism to prevent collisions when doing AX.25 networking. A DAMA server (called "master") accepts incoming traffic from clients (called "slaves") and redistributes it to other slaves. If you say Y here, your Linux box will act as a DAMA slave; this is transparent in that you don't have to do any special DAMA configuration. Linux cannot yet act as a DAMA server. This option only compiles DAMA slave support into the kernel. It still needs to be enabled at runtime. For more about DAMA see . If unsure, say Y. # placeholder until implemented config AX25_DAMA_MASTER bool 'AX.25 DAMA Master support' depends on AX25_DAMA_SLAVE && BROKEN help DAMA is a mechanism to prevent collisions when doing AX.25 networking. A DAMA server (called "master") accepts incoming traffic from clients (called "slaves") and redistributes it to other slaves. If you say Y here, your Linux box will act as a DAMA master; this is transparent in that you don't have to do any special DAMA configuration. Linux cannot yet act as a DAMA server. This option only compiles DAMA slave support into the kernel. It still needs to be explicitly enabled, so if unsure, say Y. config NETROM tristate "Amateur Radio NET/ROM protocol" depends on AX25 help NET/ROM is a network layer protocol on top of AX.25 useful for routing. A comprehensive listing of all the software for Linux amateur radio users as well as information about how to configure an AX.25 port is contained in the Linux Ham Wiki, available from . You also might want to check out the file . More information about digital amateur radio in general is on the WWW at . To compile this driver as a module, choose M here: the module will be called netrom. config ROSE tristate "Amateur Radio X.25 PLP (Rose)" depends on AX25 help The Packet Layer Protocol (PLP) is a way to route packets over X.25 connections in general and amateur radio AX.25 connections in particular, essentially an alternative to NET/ROM. A comprehensive listing of all the software for Linux amateur radio users as well as information about how to configure an AX.25 port is contained in the Linux Ham Wiki, available from . You also might want to check out the file . More information about digital amateur radio in general is on the WWW at . To compile this driver as a module, choose M here: the module will be called rose. menu "AX.25 network device drivers" depends on HAMRADIO && AX25 source "drivers/net/hamradio/Kconfig" endmenu # # Controller Area Network (CAN) network layer core configuration # menuconfig CAN depends on NET tristate "CAN bus subsystem support" ---help--- Controller Area Network (CAN) is a slow (up to 1Mbit/s) serial communications protocol which was developed by Bosch in 1991, mainly for automotive, but now widely used in marine (NMEA2000), industrial, and medical applications. More information on the CAN network protocol family PF_CAN is contained in . If you want CAN support you should say Y here and also to the specific driver for your controller(s) below. config CAN_RAW tristate "Raw CAN Protocol (raw access with CAN-ID filtering)" depends on CAN default N ---help--- The raw CAN protocol option offers access to the CAN bus via the BSD socket API. You probably want to use the raw socket in most cases where no higher level protocol is being used. The raw socket has several filter options e.g. ID masking / error frames. To receive/send raw CAN messages, use AF_CAN with protocol CAN_RAW. config CAN_BCM tristate "Broadcast Manager CAN Protocol (with content filtering)" depends on CAN default N ---help--- The Broadcast Manager offers content filtering, timeout monitoring, sending of RTR frames, and cyclic CAN messages without permanent user interaction. The BCM can be 'programmed' via the BSD socket API and informs you on demand e.g. only on content updates / timeouts. You probably want to use the bcm socket in most cases where cyclic CAN messages are used on the bus (e.g. in automotive environments). To use the Broadcast Manager, use AF_CAN with protocol CAN_BCM. source "drivers/net/can/Kconfig" config CEPH_LIB tristate "Ceph core library (EXPERIMENTAL)" depends on INET && EXPERIMENTAL select LIBCRC32C select CRYPTO_AES select CRYPTO select KEYS default n help Choose Y or M here to include cephlib, which provides the common functionality to both the Ceph filesystem and to the rados block device (rbd). More information at http://ceph.newdream.net/. If unsure, say N. config CEPH_LIB_PRETTYDEBUG bool "Include file:line in ceph debug output" depends on CEPH_LIB default n help If you say Y here, debug output will include a filename and line to aid debugging. This increases kernel size and slows execution slightly when debug call sites are enabled (e.g., via CONFIG_DYNAMIC_DEBUG). If unsure, say N. # # Phonet protocol # config PHONET tristate "Phonet protocols family" help The Phone Network protocol (PhoNet) is a packet-oriented communication protocol developed by Nokia for use with its modems. This is required for Maemo to use cellular data connectivity (if supported). It can also be used to control Nokia phones from a Linux computer, although AT commands may be easier to use. To compile this driver as a module, choose M here: the module will be called phonet. If unsure, say N. # # TIPC configuration # menuconfig TIPC tristate "The TIPC Protocol (EXPERIMENTAL)" depends on INET && EXPERIMENTAL ---help--- The Transparent Inter Process Communication (TIPC) protocol is specially designed for intra cluster communication. This protocol originates from Ericsson where it has been used in carrier grade cluster applications for many years. For more information about TIPC, see http://tipc.sourceforge.net. This protocol support is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called tipc. If you want to compile it as a module, say M here and read . If in doubt, say N. if TIPC config TIPC_ADVANCED bool "Advanced TIPC configuration" default n help Saying Y here will open some advanced configuration for TIPC. Most users do not need to bother; if unsure, just say N. config TIPC_PORTS int "Maximum number of ports in a node" depends on TIPC_ADVANCED range 127 65535 default "8191" help Specifies how many ports can be supported by a node. Can range from 127 to 65535 ports; default is 8191. Setting this to a smaller value saves some memory, setting it to higher allows for more ports. config TIPC_LOG int "Size of log buffer" depends on TIPC_ADVANCED range 0 32768 default "0" help Size (in bytes) of TIPC's internal log buffer, which records the occurrence of significant events. Can range from 0 to 32768 bytes; default is 0. There is no need to enable the log buffer unless the node will be managed remotely via TIPC. config TIPC_DEBUG bool "Enable debugging support" default n help Saying Y here enables TIPC debugging capabilities used by developers. Most users do not need to bother; if unsure, just say N. Enabling debugging support causes TIPC to display data about its internal state when certain abnormal conditions occur. It also makes it easy for developers to capture additional information of interest using the dbg() or msg_dbg() macros. endif # TIPC # # XFRM configuration # config XFRM bool select CRYPTO depends on NET config XFRM_USER tristate "Transformation user configuration interface" depends on INET && XFRM ---help--- Support for Transformation(XFRM) user configuration interface like IPsec used by native Linux tools. If unsure, say Y. config XFRM_SUB_POLICY bool "Transformation sub policy support (EXPERIMENTAL)" depends on XFRM && EXPERIMENTAL ---help--- Support sub policy for developers. By using sub policy with main one, two policies can be applied to the same packet at once. Policy which lives shorter time in kernel should be a sub. If unsure, say N. config XFRM_MIGRATE bool "Transformation migrate database (EXPERIMENTAL)" depends on XFRM && EXPERIMENTAL ---help--- A feature to update locator(s) of a given IPsec security association dynamically. This feature is required, for instance, in a Mobile IPv6 environment with IPsec configuration where mobile nodes change their attachment point to the Internet. If unsure, say N. config XFRM_STATISTICS bool "Transformation statistics (EXPERIMENTAL)" depends on INET && XFRM && PROC_FS && EXPERIMENTAL ---help--- This statistics is not a SNMP/MIB specification but shows statistics about transformation error (or almost error) factor at packet processing for developer. If unsure, say N. config XFRM_IPCOMP tristate select XFRM select CRYPTO select CRYPTO_DEFLATE config NET_KEY tristate "PF_KEY sockets" select XFRM ---help--- PF_KEYv2 socket family, compatible to KAME ones. They are required if you are going to use IPsec tools ported from KAME. Say Y unless you know what you are doing. config NET_KEY_MIGRATE bool "PF_KEY MIGRATE (EXPERIMENTAL)" depends on NET_KEY && EXPERIMENTAL select XFRM_MIGRATE ---help--- Add a PF_KEY MIGRATE message to PF_KEYv2 socket family. The PF_KEY MIGRATE message is used to dynamically update locator(s) of a given IPsec security association. This feature is required, for instance, in a Mobile IPv6 environment with IPsec configuration where mobile nodes change their attachment point to the Internet. Detail information can be found in the internet-draft . If unsure, say N. # # Configuration for DNS Resolver # config DNS_RESOLVER tristate "DNS Resolver support" depends on NET && KEYS help Saying Y here will include support for the DNS Resolver key type which can be used to make upcalls to perform DNS lookups in userspace. DNS Resolver is used to query DNS server for information. Examples being resolving a UNC hostname element to an IP address for CIFS or performing a DNS query for AFSDB records so that AFS can locate a cell's volume location database servers. DNS Resolver is used by the CIFS and AFS modules, and would support SMB2 later. DNS Resolver is supported by the userspace upcall helper "/sbin/dns.resolver" via /etc/request-key.conf. See for further information. To compile this as a module, choose M here: the module will be called dnsresolver. If unsure, say N. menuconfig IP_DCCP tristate "The DCCP Protocol (EXPERIMENTAL)" depends on INET && EXPERIMENTAL ---help--- Datagram Congestion Control Protocol (RFC 4340) From http://www.ietf.org/rfc/rfc4340.txt: The Datagram Congestion Control Protocol (DCCP) is a transport protocol that implements bidirectional, unicast connections of congestion-controlled, unreliable datagrams. It should be suitable for use by applications such as streaming media, Internet telephony, and on-line games. To compile this protocol support as a module, choose M here: the module will be called dccp. If in doubt, say N. if IP_DCCP config INET_DCCP_DIAG depends on INET_DIAG def_tristate y if (IP_DCCP = y && INET_DIAG = y) def_tristate m source "net/dccp/ccids/Kconfig" menu "DCCP Kernel Hacking" depends on DEBUG_KERNEL=y config IP_DCCP_DEBUG bool "DCCP debug messages" ---help--- Only use this if you're hacking DCCP. When compiling DCCP as a module, this debugging output can be toggled by setting the parameter dccp_debug of the `dccp' module to 0 or 1. Just say N. config NET_DCCPPROBE tristate "DCCP connection probing" depends on PROC_FS && KPROBES ---help--- This module allows for capturing the changes to DCCP connection state in response to incoming packets. It is used for debugging DCCP congestion avoidance modules. If you don't understand what was just said, you don't need it: say N. Documentation on how to use DCCP connection probing can be found at: http://www.linuxfoundation.org/collaborate/workgroups/networking/dccpprobe To compile this code as a module, choose M here: the module will be called dccp_probe. endmenu endif # IP_DDCP menu "DCCP CCIDs Configuration (EXPERIMENTAL)" depends on EXPERIMENTAL config IP_DCCP_CCID2_DEBUG bool "CCID-2 debugging messages" ---help--- Enable CCID-2 specific debugging messages. The debugging output can additionally be toggled by setting the ccid2_debug parameter to 0 or 1. If in doubt, say N. config IP_DCCP_CCID3 bool "CCID-3 (TCP-Friendly) (EXPERIMENTAL)" def_bool y if (IP_DCCP = y || IP_DCCP = m) ---help--- CCID-3 denotes TCP-Friendly Rate Control (TFRC), an equation-based rate-controlled congestion control mechanism. TFRC is designed to be reasonably fair when competing for bandwidth with TCP-like flows, where a flow is "reasonably fair" if its sending rate is generally within a factor of two of the sending rate of a TCP flow under the same conditions. However, TFRC has a much lower variation of throughput over time compared with TCP, which makes CCID-3 more suitable than CCID-2 for applications such streaming media where a relatively smooth sending rate is of importance. CCID-3 is further described in RFC 4342, http://www.ietf.org/rfc/rfc4342.txt The TFRC congestion control algorithms were initially described in RFC 5348. This text was extracted from RFC 4340 (sec. 10.2), http://www.ietf.org/rfc/rfc4340.txt If in doubt, say N. config IP_DCCP_CCID3_DEBUG bool "CCID-3 debugging messages" depends on IP_DCCP_CCID3 ---help--- Enable CCID-3 specific debugging messages. The debugging output can additionally be toggled by setting the ccid3_debug parameter to 0 or 1. If in doubt, say N. config IP_DCCP_TFRC_LIB def_bool y if IP_DCCP_CCID3 config IP_DCCP_TFRC_DEBUG def_bool y if IP_DCCP_CCID3_DEBUG endmenu # # Layer Two Tunneling Protocol (L2TP) # menuconfig L2TP tristate "Layer Two Tunneling Protocol (L2TP)" depends on INET ---help--- Layer Two Tunneling Protocol From RFC 2661 . L2TP facilitates the tunneling of packets across an intervening network in a way that is as transparent as possible to both end-users and applications. L2TP is often used to tunnel PPP traffic over IP tunnels. One IP tunnel may carry thousands of individual PPP connections. L2TP is also used as a VPN protocol, popular with home workers to connect to their offices. L2TPv3 allows other protocols as well as PPP to be carried over L2TP tunnels. L2TPv3 is defined in RFC 3931 . The kernel component handles only L2TP data packets: a userland daemon handles L2TP the control protocol (tunnel and session setup). One such daemon is OpenL2TP (http://openl2tp.org/). If you don't need L2TP, say N. To compile all L2TP code as modules, choose M here. config L2TP_DEBUGFS tristate "L2TP debugfs support" depends on L2TP && DEBUG_FS help Support for l2tp directory in debugfs filesystem. This may be used to dump internal state of the l2tp drivers for problem analysis. If unsure, say 'Y'. To compile this driver as a module, choose M here. The module will be called l2tp_debugfs. config L2TP_V3 bool "L2TPv3 support (EXPERIMENTAL)" depends on EXPERIMENTAL && L2TP help Layer Two Tunneling Protocol Version 3 From RFC 3931 . The Layer Two Tunneling Protocol (L2TP) provides a dynamic mechanism for tunneling Layer 2 (L2) "circuits" across a packet-oriented data network (e.g., over IP). L2TP, as originally defined in RFC 2661, is a standard method for tunneling Point-to-Point Protocol (PPP) [RFC1661] sessions. L2TP has since been adopted for tunneling a number of other L2 protocols, including ATM, Frame Relay, HDLC and even raw ethernet frames. If you are connecting to L2TPv3 equipment, or you want to tunnel raw ethernet frames using L2TP, say Y here. If unsure, say N. config L2TP_IP tristate "L2TP IP encapsulation for L2TPv3" depends on L2TP_V3 help Support for L2TP-over-IP socket family. The L2TPv3 protocol defines two possible encapsulations for L2TP frames, namely UDP and plain IP (without UDP). This driver provides a new L2TPIP socket family with which userspace L2TPv3 daemons may create L2TP/IP tunnel sockets when UDP encapsulation is not required. When L2TP is carried in IP packets, it used IP protocol number 115, so this port must be enabled in firewalls. To compile this driver as a module, choose M here. The module will be called l2tp_ip. config L2TP_ETH tristate "L2TP ethernet pseudowire support for L2TPv3" depends on L2TP_V3 help Support for carrying raw ethernet frames over L2TPv3. From RFC 4719 . The Layer 2 Tunneling Protocol, Version 3 (L2TPv3) can be used as a control protocol and for data encapsulation to set up Pseudowires for transporting layer 2 Packet Data Units across an IP network [RFC3931]. This driver provides an ethernet virtual interface for each L2TP ethernet pseudowire instance. Standard Linux tools may be used to assign an IP address to the local virtual interface, or add the interface to a bridge. If you are using L2TPv3, you will almost certainly want to enable this option. To compile this driver as a module, choose M here. The module will be called l2tp_eth. # # IP netfilter configuration # menu "IPv6: Netfilter Configuration" depends on INET && IPV6 && NETFILTER config NF_DEFRAG_IPV6 tristate default n config NF_CONNTRACK_IPV6 tristate "IPv6 connection tracking support" depends on INET && IPV6 && NF_CONNTRACK default m if NETFILTER_ADVANCED=n select NF_DEFRAG_IPV6 ---help--- Connection tracking keeps a record of what packets have passed through your machine, in order to figure out how they are related into connections. This is IPv6 support on Layer 3 independent connection tracking. Layer 3 independent connection tracking is experimental scheme which generalize ip_conntrack to support other layer 3 protocols. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_QUEUE tristate "IP6 Userspace queueing via NETLINK (OBSOLETE)" depends on INET && IPV6 && NETFILTER depends on NETFILTER_ADVANCED ---help--- This option adds a queue handler to the kernel for IPv6 packets which enables users to receive the filtered packets with QUEUE target using libipq. This option enables the old IPv6-only "ip6_queue" implementation which has been obsoleted by the new "nfnetlink_queue" code (see CONFIG_NETFILTER_NETLINK_QUEUE). (C) Fernando Anton 2001 IPv64 Project - Work based in IPv64 draft by Arturo Azcorra. Universidad Carlos III de Madrid Universidad Politecnica de Alcala de Henares email: . To compile it as a module, choose M here. If unsure, say N. config IP6_NF_IPTABLES tristate "IP6 tables support (required for filtering)" depends on INET && IPV6 select NETFILTER_XTABLES default m if NETFILTER_ADVANCED=n help ip6tables is a general, extensible packet identification framework. Currently only the packet filtering and packet mangling subsystem for IPv6 use this, but connection tracking is going to follow. Say 'Y' or 'M' here if you want to use either of those. To compile it as a module, choose M here. If unsure, say N. if IP6_NF_IPTABLES # The simple matches. config IP6_NF_MATCH_AH tristate '"ah" match support' depends on NETFILTER_ADVANCED help This module allows one to match AH packets. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_MATCH_EUI64 tristate '"eui64" address check' depends on NETFILTER_ADVANCED help This module performs checking on the IPv6 source address Compares the last 64 bits with the EUI64 (delivered from the MAC address) address To compile it as a module, choose M here. If unsure, say N. config IP6_NF_MATCH_FRAG tristate '"frag" Fragmentation header match support' depends on NETFILTER_ADVANCED help frag matching allows you to match packets based on the fragmentation header of the packet. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_MATCH_OPTS tristate '"hbh" hop-by-hop and "dst" opts header match support' depends on NETFILTER_ADVANCED help This allows one to match packets based on the hop-by-hop and destination options headers of a packet. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_MATCH_HL tristate '"hl" hoplimit match support' depends on NETFILTER_ADVANCED select NETFILTER_XT_MATCH_HL ---help--- This is a backwards-compat option for the user's convenience (e.g. when running oldconfig). It selects CONFIG_NETFILTER_XT_MATCH_HL. config IP6_NF_MATCH_IPV6HEADER tristate '"ipv6header" IPv6 Extension Headers Match' default m if NETFILTER_ADVANCED=n help This module allows one to match packets based upon the ipv6 extension headers. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_MATCH_MH tristate '"mh" match support' depends on NETFILTER_ADVANCED help This module allows one to match MH packets. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_MATCH_RT tristate '"rt" Routing header match support' depends on NETFILTER_ADVANCED help rt matching allows you to match packets based on the routing header of the packet. To compile it as a module, choose M here. If unsure, say N. # The targets config IP6_NF_TARGET_HL tristate '"HL" hoplimit target support' depends on NETFILTER_ADVANCED && IP6_NF_MANGLE select NETFILTER_XT_TARGET_HL ---help--- This is a backwards-compatible option for the user's convenience (e.g. when running oldconfig). It selects CONFIG_NETFILTER_XT_TARGET_HL. config IP6_NF_TARGET_LOG tristate "LOG target support" default m if NETFILTER_ADVANCED=n help This option adds a `LOG' target, which allows you to create rules in any iptables table which records the packet header to the syslog. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_FILTER tristate "Packet filtering" default m if NETFILTER_ADVANCED=n help Packet filtering defines a table `filter', which has a series of rules for simple packet filtering at local input, forwarding and local output. See the man page for iptables(8). To compile it as a module, choose M here. If unsure, say N. config IP6_NF_TARGET_REJECT tristate "REJECT target support" depends on IP6_NF_FILTER default m if NETFILTER_ADVANCED=n help The REJECT target allows a filtering rule to specify that an ICMPv6 error should be issued in response to an incoming packet, rather than silently being dropped. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_MANGLE tristate "Packet mangling" default m if NETFILTER_ADVANCED=n help This option adds a `mangle' table to iptables: see the man page for iptables(8). This table is used for various packet alterations which can effect how the packet is routed. To compile it as a module, choose M here. If unsure, say N. config IP6_NF_RAW tristate 'raw table support (required for TRACE)' depends on NETFILTER_ADVANCED help This option adds a `raw' table to ip6tables. This table is the very first in the netfilter framework and hooks in at the PREROUTING and OUTPUT chains. If you want to compile it as a module, say M here and read . If unsure, say `N'. # security table for MAC policy config IP6_NF_SECURITY tristate "Security table" depends on SECURITY depends on NETFILTER_ADVANCED help This option adds a `security' table to iptables, for use with Mandatory Access Control (MAC) policy. If unsure, say N. endif # IP6_NF_IPTABLES endmenu # # IPv6 configuration # # IPv6 as module will cause a CRASH if you try to unload it menuconfig IPV6 tristate "The IPv6 protocol" default m ---help--- This is complemental support for the IP version 6. You will still be able to do traditional IPv4 networking as well. For general information about IPv6, see . For Linux IPv6 development information, see . For specific information about IPv6 under Linux, read the HOWTO at . To compile this protocol support as a module, choose M here: the module will be called ipv6. if IPV6 config IPV6_PRIVACY bool "IPv6: Privacy Extensions (RFC 3041) support" ---help--- Privacy Extensions for Stateless Address Autoconfiguration in IPv6 support. With this option, additional periodically-altered pseudo-random global-scope unicast address(es) will be assigned to your interface(s). We use our standard pseudo-random algorithm to generate the randomized interface identifier, instead of one described in RFC 3041. By default the kernel does not generate temporary addresses. To use temporary addresses, do echo 2 >/proc/sys/net/ipv6/conf/all/use_tempaddr See for details. config IPV6_ROUTER_PREF bool "IPv6: Router Preference (RFC 4191) support" ---help--- Router Preference is an optional extension to the Router Advertisement message which improves the ability of hosts to pick an appropriate router, especially when the hosts are placed in a multi-homed network. If unsure, say N. config IPV6_ROUTE_INFO bool "IPv6: Route Information (RFC 4191) support (EXPERIMENTAL)" depends on IPV6_ROUTER_PREF && EXPERIMENTAL ---help--- This is experimental support of Route Information. If unsure, say N. config IPV6_OPTIMISTIC_DAD bool "IPv6: Enable RFC 4429 Optimistic DAD (EXPERIMENTAL)" depends on EXPERIMENTAL ---help--- This is experimental support for optimistic Duplicate Address Detection. It allows for autoconfigured addresses to be used more quickly. If unsure, say N. config INET6_AH tristate "IPv6: AH transformation" select XFRM select CRYPTO select CRYPTO_HMAC select CRYPTO_MD5 select CRYPTO_SHA1 ---help--- Support for IPsec AH. If unsure, say Y. config INET6_ESP tristate "IPv6: ESP transformation" select XFRM select CRYPTO select CRYPTO_AUTHENC select CRYPTO_HMAC select CRYPTO_MD5 select CRYPTO_CBC select CRYPTO_SHA1 select CRYPTO_DES ---help--- Support for IPsec ESP. If unsure, say Y. config INET6_IPCOMP tristate "IPv6: IPComp transformation" select INET6_XFRM_TUNNEL select XFRM_IPCOMP ---help--- Support for IP Payload Compression Protocol (IPComp) (RFC3173), typically needed for IPsec. If unsure, say Y. config IPV6_MIP6 tristate "IPv6: Mobility (EXPERIMENTAL)" depends on EXPERIMENTAL select XFRM ---help--- Support for IPv6 Mobility described in RFC 3775. If unsure, say N. config INET6_XFRM_TUNNEL tristate select INET6_TUNNEL default n config INET6_TUNNEL tristate default n config INET6_XFRM_MODE_TRANSPORT tristate "IPv6: IPsec transport mode" default IPV6 select XFRM ---help--- Support for IPsec transport mode. If unsure, say Y. config INET6_XFRM_MODE_TUNNEL tristate "IPv6: IPsec tunnel mode" default IPV6 select XFRM ---help--- Support for IPsec tunnel mode. If unsure, say Y. config INET6_XFRM_MODE_BEET tristate "IPv6: IPsec BEET mode" default IPV6 select XFRM ---help--- Support for IPsec BEET mode. If unsure, say Y. config INET6_XFRM_MODE_ROUTEOPTIMIZATION tristate "IPv6: MIPv6 route optimization mode (EXPERIMENTAL)" depends on EXPERIMENTAL select XFRM ---help--- Support for MIPv6 route optimization mode. config IPV6_SIT tristate "IPv6: IPv6-in-IPv4 tunnel (SIT driver)" select INET_TUNNEL select IPV6_NDISC_NODETYPE default y ---help--- Tunneling means encapsulating data of one protocol type within another protocol and sending it over a channel that understands the encapsulating protocol. This driver implements encapsulation of IPv6 into IPv4 packets. This is useful if you want to connect two IPv6 networks over an IPv4-only path. Saying M here will produce a module called sit. If unsure, say Y. config IPV6_SIT_6RD bool "IPv6: IPv6 Rapid Deployment (6RD) (EXPERIMENTAL)" depends on IPV6_SIT && EXPERIMENTAL default n ---help--- IPv6 Rapid Deployment (6rd; draft-ietf-softwire-ipv6-6rd) builds upon mechanisms of 6to4 (RFC3056) to enable a service provider to rapidly deploy IPv6 unicast service to IPv4 sites to which it provides customer premise equipment. Like 6to4, it utilizes stateless IPv6 in IPv4 encapsulation in order to transit IPv4-only network infrastructure. Unlike 6to4, a 6rd service provider uses an IPv6 prefix of its own in place of the fixed 6to4 prefix. With this option enabled, the SIT driver offers 6rd functionality by providing additional ioctl API to configure the IPv6 Prefix for in stead of static 2002::/16 for 6to4. If unsure, say N. config IPV6_NDISC_NODETYPE bool config IPV6_TUNNEL tristate "IPv6: IP-in-IPv6 tunnel (RFC2473)" select INET6_TUNNEL ---help--- Support for IPv6-in-IPv6 and IPv4-in-IPv6 tunnels described in RFC 2473. If unsure, say N. config IPV6_MULTIPLE_TABLES bool "IPv6: Multiple Routing Tables" depends on EXPERIMENTAL select FIB_RULES ---help--- Support multiple routing tables. config IPV6_SUBTREES bool "IPv6: source address based routing" depends on IPV6_MULTIPLE_TABLES ---help--- Enable routing by source address or prefix. The destination address is still the primary routing key, so mixing normal and source prefix specific routes in the same routing table may sometimes lead to unintended routing behavior. This can be avoided by defining different routing tables for the normal and source prefix specific routes. If unsure, say N. config IPV6_MROUTE bool "IPv6: multicast routing (EXPERIMENTAL)" depends on IPV6 && EXPERIMENTAL ---help--- Experimental support for IPv6 multicast forwarding. If unsure, say N. config IPV6_MROUTE_MULTIPLE_TABLES bool "IPv6: multicast policy routing" depends on IPV6_MROUTE select FIB_RULES help Normally, a multicast router runs a userspace daemon and decides what to do with a multicast packet based on the source and destination addresses. If you say Y here, the multicast router will also be able to take interfaces and packet marks into account and run multiple instances of userspace daemons simultaneously, each one handling a single table. If unsure, say N. config IPV6_PIMSM_V2 bool "IPv6: PIM-SM version 2 support (EXPERIMENTAL)" depends on IPV6_MROUTE ---help--- Support for IPv6 PIM multicast routing protocol PIM-SMv2. If unsure, say N. endif # IPV6 # # 9P protocol configuration # menuconfig NET_9P depends on NET && EXPERIMENTAL tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)" help If you say Y here, you will get experimental support for Plan 9 resource sharing via the 9P2000 protocol. See for more information. If unsure, say N. if NET_9P config NET_9P_VIRTIO depends on EXPERIMENTAL && VIRTIO tristate "9P Virtio Transport (Experimental)" help This builds support for a transports between guest partitions and a host partition. config NET_9P_RDMA depends on INET && INFINIBAND && INFINIBAND_ADDR_TRANS && EXPERIMENTAL tristate "9P RDMA Transport (Experimental)" help This builds support for an RDMA transport. config NET_9P_DEBUG bool "Debug information" help Say Y if you want the 9P subsystem to log debug information. endif # # WiMAX LAN device configuration # menuconfig WIMAX tristate "WiMAX Wireless Broadband support" depends on RFKILL || !RFKILL help Select to configure support for devices that provide wireless broadband connectivity using the WiMAX protocol (IEEE 802.16). Please note that most of these devices require signing up for a service plan with a provider. The different WiMAX drivers can be enabled in the menu entry Device Drivers > Network device support > WiMAX Wireless Broadband devices If unsure, it is safe to select M (module). config WIMAX_DEBUG_LEVEL int "WiMAX debug level" depends on WIMAX default 8 help Select the maximum debug verbosity level to be compiled into the WiMAX stack code. By default, debug messages are disabled at runtime and can be selectively enabled for different parts of the code using the sysfs debug-levels file. If set at zero, this will compile out all the debug code. It is recommended that it is left at 8. # # Configuration for 802.1Q VLAN support # config VLAN_8021Q tristate "802.1Q VLAN Support" ---help--- Select this and you will be able to create 802.1Q VLAN interfaces on your ethernet interfaces. 802.1Q VLAN supports almost everything a regular ethernet interface does, including firewalling, bridging, and of course IP traffic. You will need the 'vconfig' tool from the VLAN project in order to effectively use VLANs. See the VLAN web page for more information: To compile this code as a module, choose M here: the module will be called 8021q. If unsure, say N. config VLAN_8021Q_GVRP bool "GVRP (GARP VLAN Registration Protocol) support" depends on VLAN_8021Q select GARP help Select this to enable GVRP end-system support. GVRP is used for automatic propagation of registered VLANs to switches. If unsure, say N. config WIRELESS_EXT bool config WEXT_CORE def_bool y depends on CFG80211_WEXT || WIRELESS_EXT config WEXT_PROC def_bool y depends on PROC_FS depends on WEXT_CORE config WEXT_SPY bool config WEXT_PRIV bool config CFG80211 tristate "cfg80211 - wireless configuration API" depends on RFKILL || !RFKILL ---help--- cfg80211 is the Linux wireless LAN (802.11) configuration API. Enable this if you have a wireless device. For more information refer to documentation on the wireless wiki: http://wireless.kernel.org/en/developers/Documentation/cfg80211 When built as a module it will be called cfg80211. config NL80211_TESTMODE bool "nl80211 testmode command" depends on CFG80211 help The nl80211 testmode command helps implementing things like factory calibration or validation tools for wireless chips. Select this option ONLY for kernels that are specifically built for such purposes. Debugging tools that are supposed to end up in the hands of users should better be implemented with debugfs. Say N. config CFG80211_DEVELOPER_WARNINGS bool "enable developer warnings" depends on CFG80211 default n help This option enables some additional warnings that help cfg80211 developers and driver developers, but that can trigger due to races with userspace. For example, when a driver reports that it was disconnected from the AP, but the user disconnects manually at the same time, the warning might trigger spuriously due to races. Say Y only if you are developing cfg80211 or a driver based on it (or mac80211). config CFG80211_REG_DEBUG bool "cfg80211 regulatory debugging" depends on CFG80211 default n ---help--- You can enable this if you want to debug regulatory changes. For more information on cfg80211 regulatory refer to the wireless wiki: http://wireless.kernel.org/en/developers/Regulatory If unsure, say N. config CFG80211_DEFAULT_PS bool "enable powersave by default" depends on CFG80211 default y help This option enables powersave mode by default. If this causes your applications to misbehave you should fix your applications instead -- they need to register their network latency requirement, see Documentation/power/pm_qos_interface.txt. config CFG80211_DEBUGFS bool "cfg80211 DebugFS entries" depends on CFG80211 depends on DEBUG_FS ---help--- You can enable this if you want to debugfs entries for cfg80211. If unsure, say N. config CFG80211_INTERNAL_REGDB bool "use statically compiled regulatory rules database" if EXPERT default n depends on CFG80211 ---help--- This option generates an internal data structure representing the wireless regulatory rules described in net/wireless/db.txt and includes code to query that database. This is an alternative to using CRDA for defining regulatory rules for the kernel. For details see: http://wireless.kernel.org/en/developers/Regulatory Most distributions have a CRDA package. So if unsure, say N. config CFG80211_WEXT bool "cfg80211 wireless extensions compatibility" depends on CFG80211 select WEXT_CORE default y help Enable this option if you need old userspace for wireless extensions with cfg80211-based drivers. config WIRELESS_EXT_SYSFS bool "Wireless extensions sysfs files" default y depends on WEXT_CORE && SYSFS help This option enables the deprecated wireless statistics files in /sys/class/net/*/wireless/. The same information is available via the ioctls as well. Say Y if you have programs using it, like old versions of hal. config LIB80211 tristate "Common routines for IEEE802.11 drivers" default n help This options enables a library of common routines used by IEEE802.11 wireless LAN drivers. Drivers should select this themselves if needed. Say Y if you want this built into your kernel. config LIB80211_CRYPT_WEP tristate config LIB80211_CRYPT_CCMP tristate config LIB80211_CRYPT_TKIP tristate config LIB80211_DEBUG bool "lib80211 debugging messages" depends on LIB80211 default n ---help--- You can enable this if you want verbose debugging messages from lib80211. If unsure, say N. # # Bridge netfilter configuration # menuconfig BRIDGE_NF_EBTABLES tristate "Ethernet Bridge tables (ebtables) support" depends on BRIDGE && BRIDGE_NETFILTER select NETFILTER_XTABLES help ebtables is a general, extensible frame/packet identification framework. Say 'Y' or 'M' here if you want to do Ethernet filtering/NAT/brouting on the Ethernet bridge. if BRIDGE_NF_EBTABLES # # tables # config BRIDGE_EBT_BROUTE tristate "ebt: broute table support" help The ebtables broute table is used to define rules that decide between bridging and routing frames, giving Linux the functionality of a brouter. See the man page for ebtables(8) and examples on the ebtables website. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_T_FILTER tristate "ebt: filter table support" help The ebtables filter table is used to define frame filtering rules at local input, forwarding and local output. See the man page for ebtables(8). To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_T_NAT tristate "ebt: nat table support" help The ebtables nat table is used to define rules that alter the MAC source address (MAC SNAT) or the MAC destination address (MAC DNAT). See the man page for ebtables(8). To compile it as a module, choose M here. If unsure, say N. # # matches # config BRIDGE_EBT_802_3 tristate "ebt: 802.3 filter support" help This option adds matching support for 802.3 Ethernet frames. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_AMONG tristate "ebt: among filter support" help This option adds the among match, which allows matching the MAC source and/or destination address on a list of addresses. Optionally, MAC/IP address pairs can be matched, f.e. for anti-spoofing rules. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_ARP tristate "ebt: ARP filter support" help This option adds the ARP match, which allows ARP and RARP header field filtering. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_IP tristate "ebt: IP filter support" help This option adds the IP match, which allows basic IP header field filtering. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_IP6 tristate "ebt: IP6 filter support" depends on BRIDGE_NF_EBTABLES && IPV6 help This option adds the IP6 match, which allows basic IPV6 header field filtering. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_LIMIT tristate "ebt: limit match support" help This option adds the limit match, which allows you to control the rate at which a rule can be matched. This match is the equivalent of the iptables limit match. If you want to compile it as a module, say M here and read . If unsure, say `N'. config BRIDGE_EBT_MARK tristate "ebt: mark filter support" help This option adds the mark match, which allows matching frames based on the 'nfmark' value in the frame. This can be set by the mark target. This value is the same as the one used in the iptables mark match and target. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_PKTTYPE tristate "ebt: packet type filter support" help This option adds the packet type match, which allows matching on the type of packet based on its Ethernet "class" (as determined by the generic networking code): broadcast, multicast, for this host alone or for another host. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_STP tristate "ebt: STP filter support" help This option adds the Spanning Tree Protocol match, which allows STP header field filtering. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_VLAN tristate "ebt: 802.1Q VLAN filter support" help This option adds the 802.1Q vlan match, which allows the filtering of 802.1Q vlan fields. To compile it as a module, choose M here. If unsure, say N. # # targets # config BRIDGE_EBT_ARPREPLY tristate "ebt: arp reply target support" depends on BRIDGE_NF_EBTABLES && INET help This option adds the arp reply target, which allows automatically sending arp replies to arp requests. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_DNAT tristate "ebt: dnat target support" help This option adds the MAC DNAT target, which allows altering the MAC destination address of frames. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_MARK_T tristate "ebt: mark target support" help This option adds the mark target, which allows marking frames by setting the 'nfmark' value in the frame. This value is the same as the one used in the iptables mark match and target. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_REDIRECT tristate "ebt: redirect target support" help This option adds the MAC redirect target, which allows altering the MAC destination address of a frame to that of the device it arrived on. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_SNAT tristate "ebt: snat target support" help This option adds the MAC SNAT target, which allows altering the MAC source address of frames. To compile it as a module, choose M here. If unsure, say N. # # watchers # config BRIDGE_EBT_LOG tristate "ebt: log support" help This option adds the log watcher, that you can use in any rule in any ebtables table. It records info about the frame header to the syslog. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_ULOG tristate "ebt: ulog support (OBSOLETE)" help This option enables the old bridge-specific "ebt_ulog" implementation which has been obsoleted by the new "nfnetlink_log" code (see CONFIG_NETFILTER_NETLINK_LOG). This option adds the ulog watcher, that you can use in any rule in any ebtables table. The packet is passed to a userspace logging daemon using netlink multicast sockets. This differs from the log watcher in the sense that the complete packet is sent to userspace instead of a descriptive text and that netlink multicast sockets are used instead of the syslog. To compile it as a module, choose M here. If unsure, say N. config BRIDGE_EBT_NFLOG tristate "ebt: nflog support" help This option enables the nflog watcher, which allows to LOG messages through the netfilter logging API, which can use either the old LOG target, the old ULOG target or nfnetlink_log as backend. This option adds the nflog watcher, that you can use in any rule in any ebtables table. To compile it as a module, choose M here. If unsure, say N. endif # BRIDGE_NF_EBTABLES # # 802.1d Ethernet Bridging # config BRIDGE tristate "802.1d Ethernet Bridging" select LLC select STP depends on IPV6 || IPV6=n ---help--- If you say Y here, then your Linux box will be able to act as an Ethernet bridge, which means that the different Ethernet segments it is connected to will appear as one Ethernet to the participants. Several such bridges can work together to create even larger networks of Ethernets using the IEEE 802.1 spanning tree algorithm. As this is a standard, Linux bridges will cooperate properly with other third party bridge products. In order to use the Ethernet bridge, you'll need the bridge configuration tools; see for location. Please read the Bridge mini-HOWTO for more information. If you enable iptables support along with the bridge support then you turn your bridge into a bridging IP firewall. iptables will then see the IP packets being bridged, so you need to take this into account when setting up your firewall rules. Enabling arptables support when bridging will let arptables see bridged ARP traffic in the arptables FORWARD chain. To compile this code as a module, choose M here: the module will be called bridge. If unsure, say N. config BRIDGE_IGMP_SNOOPING bool "IGMP/MLD snooping" depends on BRIDGE depends on INET default y ---help--- If you say Y here, then the Ethernet bridge will be able selectively forward multicast traffic based on IGMP/MLD traffic received from each port. Say N to exclude this support and reduce the binary size. If unsure, say Y. config LLC tristate depends on NET config LLC2 tristate "ANSI/IEEE 802.2 LLC type 2 Support" select LLC help This is a Logical Link Layer type 2, connection oriented support. Select this if you want to have support for PF_LLC sockets. # # Generic algorithms support # config XOR_BLOCKS tristate # # async_tx api: hardware offloaded memory transfer/transform support # source "crypto/async_tx/Kconfig" # # Cryptographic API Configuration # menuconfig CRYPTO tristate "Cryptographic API" help This option provides the core Cryptographic API. if CRYPTO comment "Crypto core or helper" config CRYPTO_FIPS bool "FIPS 200 compliance" depends on CRYPTO_ANSI_CPRNG && !CRYPTO_MANAGER_DISABLE_TESTS help This options enables the fips boot option which is required if you want to system to operate in a FIPS 200 certification. You should say no unless you know what this is. config CRYPTO_ALGAPI tristate select CRYPTO_ALGAPI2 help This option provides the API for cryptographic algorithms. config CRYPTO_ALGAPI2 tristate config CRYPTO_AEAD tristate select CRYPTO_AEAD2 select CRYPTO_ALGAPI config CRYPTO_AEAD2 tristate select CRYPTO_ALGAPI2 config CRYPTO_BLKCIPHER tristate select CRYPTO_BLKCIPHER2 select CRYPTO_ALGAPI config CRYPTO_BLKCIPHER2 tristate select CRYPTO_ALGAPI2 select CRYPTO_RNG2 select CRYPTO_WORKQUEUE config CRYPTO_HASH tristate select CRYPTO_HASH2 select CRYPTO_ALGAPI config CRYPTO_HASH2 tristate select CRYPTO_ALGAPI2 config CRYPTO_RNG tristate select CRYPTO_RNG2 select CRYPTO_ALGAPI config CRYPTO_RNG2 tristate select CRYPTO_ALGAPI2 config CRYPTO_PCOMP tristate select CRYPTO_PCOMP2 select CRYPTO_ALGAPI config CRYPTO_PCOMP2 tristate select CRYPTO_ALGAPI2 config CRYPTO_MANAGER tristate "Cryptographic algorithm manager" select CRYPTO_MANAGER2 help Create default cryptographic template instantiations such as cbc(aes). config CRYPTO_MANAGER2 def_tristate CRYPTO_MANAGER || (CRYPTO_MANAGER!=n && CRYPTO_ALGAPI=y) select CRYPTO_AEAD2 select CRYPTO_HASH2 select CRYPTO_BLKCIPHER2 select CRYPTO_PCOMP2 config CRYPTO_MANAGER_DISABLE_TESTS bool "Disable run-time self tests" default y depends on CRYPTO_MANAGER2 help Disable run-time self tests that normally take place at algorithm registration. config CRYPTO_GF128MUL tristate "GF(2^128) multiplication functions (EXPERIMENTAL)" help Efficient table driven implementation of multiplications in the field GF(2^128). This is needed by some cypher modes. This option will be selected automatically if you select such a cipher mode. Only select this option by hand if you expect to load an external module that requires these functions. config CRYPTO_NULL tristate "Null algorithms" select CRYPTO_ALGAPI select CRYPTO_BLKCIPHER select CRYPTO_HASH help These are 'Null' algorithms, used by IPsec, which do nothing. config CRYPTO_PCRYPT tristate "Parallel crypto engine (EXPERIMENTAL)" depends on SMP && EXPERIMENTAL select PADATA select CRYPTO_MANAGER select CRYPTO_AEAD help This converts an arbitrary crypto algorithm into a parallel algorithm that executes in kernel threads. config CRYPTO_WORKQUEUE tristate config CRYPTO_CRYPTD tristate "Software async crypto daemon" select CRYPTO_BLKCIPHER select CRYPTO_HASH select CRYPTO_MANAGER select CRYPTO_WORKQUEUE help This is a generic software asynchronous crypto daemon that converts an arbitrary synchronous software crypto algorithm into an asynchronous algorithm that executes in a kernel thread. config CRYPTO_AUTHENC tristate "Authenc support" select CRYPTO_AEAD select CRYPTO_BLKCIPHER select CRYPTO_MANAGER select CRYPTO_HASH help Authenc: Combined mode wrapper for IPsec. This is required for IPSec. config CRYPTO_TEST tristate "Testing module" depends on m select CRYPTO_MANAGER help Quick & dirty crypto test module. comment "Authenticated Encryption with Associated Data" config CRYPTO_CCM tristate "CCM support" select CRYPTO_CTR select CRYPTO_AEAD help Support for Counter with CBC MAC. Required for IPsec. config CRYPTO_GCM tristate "GCM/GMAC support" select CRYPTO_CTR select CRYPTO_AEAD select CRYPTO_GHASH help Support for Galois/Counter Mode (GCM) and Galois Message Authentication Code (GMAC). Required for IPSec. config CRYPTO_SEQIV tristate "Sequence Number IV Generator" select CRYPTO_AEAD select CRYPTO_BLKCIPHER select CRYPTO_RNG help This IV generator generates an IV based on a sequence number by xoring it with a salt. This algorithm is mainly useful for CTR comment "Block modes" config CRYPTO_CBC tristate "CBC support" select CRYPTO_BLKCIPHER select CRYPTO_MANAGER help CBC: Cipher Block Chaining mode This block cipher algorithm is required for IPSec. config CRYPTO_CTR tristate "CTR support" select CRYPTO_BLKCIPHER select CRYPTO_SEQIV select CRYPTO_MANAGER help CTR: Counter mode This block cipher algorithm is required for IPSec. config CRYPTO_CTS tristate "CTS support" select CRYPTO_BLKCIPHER help CTS: Cipher Text Stealing This is the Cipher Text Stealing mode as described by Section 8 of rfc2040 and referenced by rfc3962. (rfc3962 includes errata information in its Appendix A) This mode is required for Kerberos gss mechanism support for AES encryption. config CRYPTO_ECB tristate "ECB support" select CRYPTO_BLKCIPHER select CRYPTO_MANAGER help ECB: Electronic CodeBook mode This is the simplest block cipher algorithm. It simply encrypts the input block by block. config CRYPTO_LRW tristate "LRW support (EXPERIMENTAL)" depends on EXPERIMENTAL select CRYPTO_BLKCIPHER select CRYPTO_MANAGER select CRYPTO_GF128MUL help LRW: Liskov Rivest Wagner, a tweakable, non malleable, non movable narrow block cipher mode for dm-crypt. Use it with cipher specification string aes-lrw-benbi, the key must be 256, 320 or 384. The first 128, 192 or 256 bits in the key are used for AES and the rest is used to tie each cipher block to its logical position. config CRYPTO_PCBC tristate "PCBC support" select CRYPTO_BLKCIPHER select CRYPTO_MANAGER help PCBC: Propagating Cipher Block Chaining mode This block cipher algorithm is required for RxRPC. config CRYPTO_XTS tristate "XTS support (EXPERIMENTAL)" depends on EXPERIMENTAL select CRYPTO_BLKCIPHER select CRYPTO_MANAGER select CRYPTO_GF128MUL help XTS: IEEE1619/D16 narrow block cipher use with aes-xts-plain, key size 256, 384 or 512 bits. This implementation currently can't handle a sectorsize which is not a multiple of 16 bytes. config CRYPTO_FPU tristate select CRYPTO_BLKCIPHER select CRYPTO_MANAGER comment "Hash modes" config CRYPTO_HMAC tristate "HMAC support" select CRYPTO_HASH select CRYPTO_MANAGER help HMAC: Keyed-Hashing for Message Authentication (RFC2104). This is required for IPSec. config CRYPTO_XCBC tristate "XCBC support" depends on EXPERIMENTAL select CRYPTO_HASH select CRYPTO_MANAGER help XCBC: Keyed-Hashing with encryption algorithm http://www.ietf.org/rfc/rfc3566.txt http://csrc.nist.gov/encryption/modes/proposedmodes/ xcbc-mac/xcbc-mac-spec.pdf config CRYPTO_VMAC tristate "VMAC support" depends on EXPERIMENTAL select CRYPTO_HASH select CRYPTO_MANAGER help VMAC is a message authentication algorithm designed for very high speed on 64-bit architectures. See also: comment "Digest" config CRYPTO_CRC32C tristate "CRC32c CRC algorithm" select CRYPTO_HASH help Castagnoli, et al Cyclic Redundancy-Check Algorithm. Used by iSCSI for header and data digests and by others. See Castagnoli93. Module will be crc32c. config CRYPTO_CRC32C_INTEL tristate "CRC32c INTEL hardware acceleration" depends on X86 select CRYPTO_HASH help In Intel processor with SSE4.2 supported, the processor will support CRC32C implementation using hardware accelerated CRC32 instruction. This option will create 'crc32c-intel' module, which will enable any routine to use the CRC32 instruction to gain performance compared with software implementation. Module will be crc32c-intel. config CRYPTO_GHASH tristate "GHASH digest algorithm" select CRYPTO_SHASH select CRYPTO_GF128MUL help GHASH is message digest algorithm for GCM (Galois/Counter Mode). config CRYPTO_MD4 tristate "MD4 digest algorithm" select CRYPTO_HASH help MD4 message digest algorithm (RFC1320). config CRYPTO_MD5 tristate "MD5 digest algorithm" select CRYPTO_HASH help MD5 message digest algorithm (RFC1321). config CRYPTO_MICHAEL_MIC tristate "Michael MIC keyed digest algorithm" select CRYPTO_HASH help Michael MIC is used for message integrity protection in TKIP (IEEE 802.11i). This algorithm is required for TKIP, but it should not be used for other purposes because of the weakness of the algorithm. config CRYPTO_RMD128 tristate "RIPEMD-128 digest algorithm" select CRYPTO_HASH help RIPEMD-128 (ISO/IEC 10118-3:2004). RIPEMD-128 is a 128-bit cryptographic hash function. It should only to be used as a secure replacement for RIPEMD. For other use cases RIPEMD-160 should be used. Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. See config CRYPTO_RMD160 tristate "RIPEMD-160 digest algorithm" select CRYPTO_HASH help RIPEMD-160 (ISO/IEC 10118-3:2004). RIPEMD-160 is a 160-bit cryptographic hash function. It is intended to be used as a secure replacement for the 128-bit hash functions MD4, MD5 and it's predecessor RIPEMD (not to be confused with RIPEMD-128). It's speed is comparable to SHA1 and there are no known attacks against RIPEMD-160. Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. See config CRYPTO_RMD256 tristate "RIPEMD-256 digest algorithm" select CRYPTO_HASH help RIPEMD-256 is an optional extension of RIPEMD-128 with a 256 bit hash. It is intended for applications that require longer hash-results, without needing a larger security level (than RIPEMD-128). Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. See config CRYPTO_RMD320 tristate "RIPEMD-320 digest algorithm" select CRYPTO_HASH help RIPEMD-320 is an optional extension of RIPEMD-160 with a 320 bit hash. It is intended for applications that require longer hash-results, without needing a larger security level (than RIPEMD-160). Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. See config CRYPTO_SHA1 tristate "SHA1 digest algorithm" select CRYPTO_HASH help SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2). config CRYPTO_SHA256 tristate "SHA224 and SHA256 digest algorithm" select CRYPTO_HASH help SHA256 secure hash standard (DFIPS 180-2). This version of SHA implements a 256 bit hash with 128 bits of security against collision attacks. This code also includes SHA-224, a 224 bit hash with 112 bits of security against collision attacks. config CRYPTO_SHA512 tristate "SHA384 and SHA512 digest algorithms" select CRYPTO_HASH help SHA512 secure hash standard (DFIPS 180-2). This version of SHA implements a 512 bit hash with 256 bits of security against collision attacks. This code also includes SHA-384, a 384 bit hash with 192 bits of security against collision attacks. config CRYPTO_TGR192 tristate "Tiger digest algorithms" select CRYPTO_HASH help Tiger hash algorithm 192, 160 and 128-bit hashes Tiger is a hash function optimized for 64-bit processors while still having decent performance on 32-bit processors. Tiger was developed by Ross Anderson and Eli Biham. See also: . config CRYPTO_WP512 tristate "Whirlpool digest algorithms" select CRYPTO_HASH help Whirlpool hash algorithm 512, 384 and 256-bit hashes Whirlpool-512 is part of the NESSIE cryptographic primitives. Whirlpool will be part of the ISO/IEC 10118-3:2003(E) standard See also: config CRYPTO_GHASH_CLMUL_NI_INTEL tristate "GHASH digest algorithm (CLMUL-NI accelerated)" depends on (X86 || UML_X86) && 64BIT select CRYPTO_SHASH select CRYPTO_CRYPTD help GHASH is message digest algorithm for GCM (Galois/Counter Mode). The implementation is accelerated by CLMUL-NI of Intel. comment "Ciphers" config CRYPTO_AES tristate "AES cipher algorithms" select CRYPTO_ALGAPI help AES cipher algorithms (FIPS-197). AES uses the Rijndael algorithm. Rijndael appears to be consistently a very good performer in both hardware and software across a wide range of computing environments regardless of its use in feedback or non-feedback modes. Its key setup time is excellent, and its key agility is good. Rijndael's very low memory requirements make it very well suited for restricted-space environments, in which it also demonstrates excellent performance. Rijndael's operations are among the easiest to defend against power and timing attacks. The AES specifies three key sizes: 128, 192 and 256 bits See for more information. config CRYPTO_AES_586 tristate "AES cipher algorithms (i586)" depends on (X86 || UML_X86) && !64BIT select CRYPTO_ALGAPI select CRYPTO_AES help AES cipher algorithms (FIPS-197). AES uses the Rijndael algorithm. Rijndael appears to be consistently a very good performer in both hardware and software across a wide range of computing environments regardless of its use in feedback or non-feedback modes. Its key setup time is excellent, and its key agility is good. Rijndael's very low memory requirements make it very well suited for restricted-space environments, in which it also demonstrates excellent performance. Rijndael's operations are among the easiest to defend against power and timing attacks. The AES specifies three key sizes: 128, 192 and 256 bits See for more information. config CRYPTO_AES_X86_64 tristate "AES cipher algorithms (x86_64)" depends on (X86 || UML_X86) && 64BIT select CRYPTO_ALGAPI select CRYPTO_AES help AES cipher algorithms (FIPS-197). AES uses the Rijndael algorithm. Rijndael appears to be consistently a very good performer in both hardware and software across a wide range of computing environments regardless of its use in feedback or non-feedback modes. Its key setup time is excellent, and its key agility is good. Rijndael's very low memory requirements make it very well suited for restricted-space environments, in which it also demonstrates excellent performance. Rijndael's operations are among the easiest to defend against power and timing attacks. The AES specifies three key sizes: 128, 192 and 256 bits See for more information. config CRYPTO_AES_NI_INTEL tristate "AES cipher algorithms (AES-NI)" depends on (X86 || UML_X86) select CRYPTO_AES_X86_64 if 64BIT select CRYPTO_AES_586 if !64BIT select CRYPTO_CRYPTD select CRYPTO_ALGAPI select CRYPTO_FPU help Use Intel AES-NI instructions for AES algorithm. AES cipher algorithms (FIPS-197). AES uses the Rijndael algorithm. Rijndael appears to be consistently a very good performer in both hardware and software across a wide range of computing environments regardless of its use in feedback or non-feedback modes. Its key setup time is excellent, and its key agility is good. Rijndael's very low memory requirements make it very well suited for restricted-space environments, in which it also demonstrates excellent performance. Rijndael's operations are among the easiest to defend against power and timing attacks. The AES specifies three key sizes: 128, 192 and 256 bits See for more information. In addition to AES cipher algorithm support, the acceleration for some popular block cipher mode is supported too, including ECB, CBC, LRW, PCBC, XTS. The 64 bit version has additional acceleration for CTR. config CRYPTO_ANUBIS tristate "Anubis cipher algorithm" select CRYPTO_ALGAPI help Anubis cipher algorithm. Anubis is a variable key length cipher which can use keys from 128 bits to 320 bits in length. It was evaluated as a entrant in the NESSIE competition. See also: config CRYPTO_ARC4 tristate "ARC4 cipher algorithm" select CRYPTO_ALGAPI help ARC4 cipher algorithm. ARC4 is a stream cipher using keys ranging from 8 bits to 2048 bits in length. This algorithm is required for driver-based WEP, but it should not be for other purposes because of the weakness of the algorithm. config CRYPTO_BLOWFISH tristate "Blowfish cipher algorithm" select CRYPTO_ALGAPI help Blowfish cipher algorithm, by Bruce Schneier. This is a variable key length cipher which can use keys from 32 bits to 448 bits in length. It's fast, simple and specifically designed for use on "large microprocessors". See also: config CRYPTO_CAMELLIA tristate "Camellia cipher algorithms" depends on CRYPTO select CRYPTO_ALGAPI help Camellia cipher algorithms module. Camellia is a symmetric key block cipher developed jointly at NTT and Mitsubishi Electric Corporation. The Camellia specifies three key sizes: 128, 192 and 256 bits. See also: config CRYPTO_CAST5 tristate "CAST5 (CAST-128) cipher algorithm" select CRYPTO_ALGAPI help The CAST5 encryption algorithm (synonymous with CAST-128) is described in RFC2144. config CRYPTO_CAST6 tristate "CAST6 (CAST-256) cipher algorithm" select CRYPTO_ALGAPI help The CAST6 encryption algorithm (synonymous with CAST-256) is described in RFC2612. config CRYPTO_DES tristate "DES and Triple DES EDE cipher algorithms" select CRYPTO_ALGAPI help DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3). config CRYPTO_FCRYPT tristate "FCrypt cipher algorithm" select CRYPTO_ALGAPI select CRYPTO_BLKCIPHER help FCrypt algorithm used by RxRPC. config CRYPTO_KHAZAD tristate "Khazad cipher algorithm" select CRYPTO_ALGAPI help Khazad cipher algorithm. Khazad was a finalist in the initial NESSIE competition. It is an algorithm optimized for 64-bit processors with good performance on 32-bit processors. Khazad uses an 128 bit key size. See also: config CRYPTO_SALSA20 tristate "Salsa20 stream cipher algorithm (EXPERIMENTAL)" depends on EXPERIMENTAL select CRYPTO_BLKCIPHER help Salsa20 stream cipher algorithm. Salsa20 is a stream cipher submitted to eSTREAM, the ECRYPT Stream Cipher Project. See The Salsa20 stream cipher algorithm is designed by Daniel J. Bernstein . See config CRYPTO_SALSA20_586 tristate "Salsa20 stream cipher algorithm (i586) (EXPERIMENTAL)" depends on (X86 || UML_X86) && !64BIT depends on EXPERIMENTAL select CRYPTO_BLKCIPHER help Salsa20 stream cipher algorithm. Salsa20 is a stream cipher submitted to eSTREAM, the ECRYPT Stream Cipher Project. See The Salsa20 stream cipher algorithm is designed by Daniel J. Bernstein . See config CRYPTO_SALSA20_X86_64 tristate "Salsa20 stream cipher algorithm (x86_64) (EXPERIMENTAL)" depends on (X86 || UML_X86) && 64BIT depends on EXPERIMENTAL select CRYPTO_BLKCIPHER help Salsa20 stream cipher algorithm. Salsa20 is a stream cipher submitted to eSTREAM, the ECRYPT Stream Cipher Project. See The Salsa20 stream cipher algorithm is designed by Daniel J. Bernstein . See config CRYPTO_SEED tristate "SEED cipher algorithm" select CRYPTO_ALGAPI help SEED cipher algorithm (RFC4269). SEED is a 128-bit symmetric key block cipher that has been developed by KISA (Korea Information Security Agency) as a national standard encryption algorithm of the Republic of Korea. It is a 16 round block cipher with the key size of 128 bit. See also: config CRYPTO_SERPENT tristate "Serpent cipher algorithm" select CRYPTO_ALGAPI help Serpent cipher algorithm, by Anderson, Biham & Knudsen. Keys are allowed to be from 0 to 256 bits in length, in steps of 8 bits. Also includes the 'Tnepres' algorithm, a reversed variant of Serpent for compatibility with old kerneli.org code. See also: config CRYPTO_TEA tristate "TEA, XTEA and XETA cipher algorithms" select CRYPTO_ALGAPI help TEA cipher algorithm. Tiny Encryption Algorithm is a simple cipher that uses many rounds for security. It is very fast and uses little memory. Xtendend Tiny Encryption Algorithm is a modification to the TEA algorithm to address a potential key weakness in the TEA algorithm. Xtendend Encryption Tiny Algorithm is a mis-implementation of the XTEA algorithm for compatibility purposes. config CRYPTO_TWOFISH tristate "Twofish cipher algorithm" select CRYPTO_ALGAPI select CRYPTO_TWOFISH_COMMON help Twofish cipher algorithm. Twofish was submitted as an AES (Advanced Encryption Standard) candidate cipher by researchers at CounterPane Systems. It is a 16 round block cipher supporting key sizes of 128, 192, and 256 bits. See also: config CRYPTO_TWOFISH_COMMON tristate help Common parts of the Twofish cipher algorithm shared by the generic c and the assembler implementations. config CRYPTO_TWOFISH_586 tristate "Twofish cipher algorithms (i586)" depends on (X86 || UML_X86) && !64BIT select CRYPTO_ALGAPI select CRYPTO_TWOFISH_COMMON help Twofish cipher algorithm. Twofish was submitted as an AES (Advanced Encryption Standard) candidate cipher by researchers at CounterPane Systems. It is a 16 round block cipher supporting key sizes of 128, 192, and 256 bits. See also: config CRYPTO_TWOFISH_X86_64 tristate "Twofish cipher algorithm (x86_64)" depends on (X86 || UML_X86) && 64BIT select CRYPTO_ALGAPI select CRYPTO_TWOFISH_COMMON help Twofish cipher algorithm (x86_64). Twofish was submitted as an AES (Advanced Encryption Standard) candidate cipher by researchers at CounterPane Systems. It is a 16 round block cipher supporting key sizes of 128, 192, and 256 bits. See also: comment "Compression" config CRYPTO_DEFLATE tristate "Deflate compression algorithm" select CRYPTO_ALGAPI select ZLIB_INFLATE select ZLIB_DEFLATE help This is the Deflate algorithm (RFC1951), specified for use in IPSec with the IPCOMP protocol (RFC3173, RFC2394). You will most probably want this if using IPSec. config CRYPTO_ZLIB tristate "Zlib compression algorithm" select CRYPTO_PCOMP select ZLIB_INFLATE select ZLIB_DEFLATE select NLATTR help This is the zlib algorithm. config CRYPTO_LZO tristate "LZO compression algorithm" select CRYPTO_ALGAPI select LZO_COMPRESS select LZO_DECOMPRESS help This is the LZO algorithm. comment "Random Number Generation" config CRYPTO_ANSI_CPRNG tristate "Pseudo Random Number Generation for Cryptographic modules" default m select CRYPTO_AES select CRYPTO_RNG help This option enables the generic pseudo random number generator for cryptographic modules. Uses the Algorithm specified in ANSI X9.31 A.2.4. Note that this option must be enabled if CRYPTO_FIPS is selected config CRYPTO_USER_API tristate config CRYPTO_USER_API_HASH tristate "User-space interface for hash algorithms" depends on NET select CRYPTO_HASH select CRYPTO_USER_API help This option enables the user-spaces interface for hash algorithms. config CRYPTO_USER_API_SKCIPHER tristate "User-space interface for symmetric key cipher algorithms" depends on NET select CRYPTO_BLKCIPHER select CRYPTO_USER_API help This option enables the user-spaces interface for symmetric key cipher algorithms. source "drivers/crypto/Kconfig" endif # if CRYPTO config ASYNC_CORE tristate config ASYNC_MEMCPY tristate select ASYNC_CORE config ASYNC_XOR tristate select ASYNC_CORE select XOR_BLOCKS config ASYNC_MEMSET tristate select ASYNC_CORE config ASYNC_PQ tristate select ASYNC_CORE config ASYNC_RAID6_RECOV tristate select ASYNC_CORE select ASYNC_PQ select ASYNC_XOR config ASYNC_TX_DISABLE_PQ_VAL_DMA bool config ASYNC_TX_DISABLE_XOR_VAL_DMA bool # # Watchdog device configuration # menuconfig WATCHDOG bool "Watchdog Timer Support" ---help--- If you say Y here (and to one of the following options) and create a character special file /dev/watchdog with major number 10 and minor number 130 using mknod ("man mknod"), you will get a watchdog, i.e.: subsequently opening the file and then failing to write to it for longer than 1 minute will result in rebooting the machine. This could be useful for a networked machine that needs to come back on-line as fast as possible after a lock-up. There's both a watchdog implementation entirely in software (which can sometimes fail to reboot the machine) and a driver for hardware watchdog boards, which are more robust and can also keep track of the temperature inside your computer. For details, read in the kernel source. The watchdog is usually used together with the watchdog daemon which is available from . This daemon can also monitor NFS connections and can reboot the machine when the process table is full. If unsure, say N. if WATCHDOG config WATCHDOG_NOWAYOUT bool "Disable watchdog shutdown on close" help The default watchdog behaviour (which you get if you say N here) is to stop the timer if the process managing it closes the file /dev/watchdog. It's always remotely possible that this process might get killed. If you say Y here, the watchdog cannot be stopped once it has been started. # # General Watchdog drivers # comment "Watchdog Device Drivers" # Architecture Independent config SOFT_WATCHDOG tristate "Software watchdog" help A software monitoring watchdog. This will fail to reboot your system from some situations that the hardware watchdog will recover from. Equally it's a lot cheaper to install. To compile this driver as a module, choose M here: the module will be called softdog. config WM831X_WATCHDOG tristate "WM831x watchdog" depends on MFD_WM831X help Support for the watchdog in the WM831x AudioPlus PMICs. When the watchdog triggers the system will be reset. config WM8350_WATCHDOG tristate "WM8350 watchdog" depends on MFD_WM8350 help Support for the watchdog in the WM8350 AudioPlus PMIC. When the watchdog triggers the system will be reset. # ALPHA Architecture # ARM Architecture config ARM_SP805_WATCHDOG tristate "ARM SP805 Watchdog" depends on ARM_AMBA help ARM Primecell SP805 Watchdog timer. This will reboot your system when the timeout is reached. config AT91RM9200_WATCHDOG tristate "AT91RM9200 watchdog" depends on ARCH_AT91RM9200 help Watchdog timer embedded into AT91RM9200 chips. This will reboot your system when the timeout is reached. config AT91SAM9X_WATCHDOG tristate "AT91SAM9X / AT91CAP9 watchdog" depends on ARCH_AT91 && !ARCH_AT91RM9200 help Watchdog timer embedded into AT91SAM9X and AT91CAP9 chips. This will reboot your system when the timeout is reached. config 21285_WATCHDOG tristate "DC21285 watchdog" depends on FOOTBRIDGE help The Intel Footbridge chip contains a built-in watchdog circuit. Say Y here if you wish to use this. Alternatively say M to compile the driver as a module, which will be called wdt285. This driver does not work on all machines. In particular, early CATS boards have hardware problems that will cause the machine to simply lock up if the watchdog fires. "If in doubt, leave it out" - say N. config 977_WATCHDOG tristate "NetWinder WB83C977 watchdog" depends on FOOTBRIDGE && ARCH_NETWINDER help Say Y here to include support for the WB977 watchdog included in NetWinder machines. Alternatively say M to compile the driver as a module, which will be called wdt977. Not sure? It's safe to say N. config IXP2000_WATCHDOG tristate "IXP2000 Watchdog" depends on ARCH_IXP2000 help Say Y here if to include support for the watchdog timer in the Intel IXP2000(2400, 2800, 2850) network processors. This driver can be built as a module by choosing M. The module will be called ixp2000_wdt. Say N if you are unsure. config IXP4XX_WATCHDOG tristate "IXP4xx Watchdog" depends on ARCH_IXP4XX help Say Y here if to include support for the watchdog timer in the Intel IXP4xx network processors. This driver can be built as a module by choosing M. The module will be called ixp4xx_wdt. Note: The internal IXP4xx watchdog does a soft CPU reset which doesn't reset any peripherals. There are circumstances where the watchdog will fail to reset the board correctly (e.g., if the boot ROM is in an unreadable state). Say N if you are unsure. config KS8695_WATCHDOG tristate "KS8695 watchdog" depends on ARCH_KS8695 help Watchdog timer embedded into KS8695 processor. This will reboot your system when the timeout is reached. config HAVE_S3C2410_WATCHDOG bool help This will include watchdog timer support for Samsung SoCs. If you want to include watchdog support for any machine, kindly select this in the respective mach-XXXX/Kconfig file. config S3C2410_WATCHDOG tristate "S3C2410 Watchdog" depends on ARCH_S3C2410 || HAVE_S3C2410_WATCHDOG help Watchdog timer block in the Samsung SoCs. This will reboot the system when the timer expires with the watchdog enabled. The driver is limited by the speed of the system's PCLK signal, so with reasonably fast systems (PCLK around 50-66MHz) then watchdog intervals of over approximately 20seconds are unavailable. The driver can be built as a module by choosing M, and will be called s3c2410_wdt config SA1100_WATCHDOG tristate "SA1100/PXA2xx watchdog" depends on ARCH_SA1100 || ARCH_PXA help Watchdog timer embedded into SA11x0 and PXA2xx chips. This will reboot your system when timeout is reached. NOTE: once enabled, this timer cannot be disabled. To compile this driver as a module, choose M here: the module will be called sa1100_wdt. config MPCORE_WATCHDOG tristate "MPcore watchdog" depends on HAVE_ARM_TWD help Watchdog timer embedded into the MPcore system. To compile this driver as a module, choose M here: the module will be called mpcore_wdt. config EP93XX_WATCHDOG tristate "EP93xx Watchdog" depends on ARCH_EP93XX help Say Y here if to include support for the watchdog timer embedded in the Cirrus Logic EP93xx family of devices. To compile this driver as a module, choose M here: the module will be called ep93xx_wdt. config OMAP_WATCHDOG tristate "OMAP Watchdog" depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS help Support for TI OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog. Say 'Y' here to enable the OMAP1610/OMAP1710/OMAP2420/OMAP3430/OMAP4430 watchdog timer. config PNX4008_WATCHDOG tristate "PNX4008 and LPC32XX Watchdog" depends on ARCH_PNX4008 || ARCH_LPC32XX help Say Y here if to include support for the watchdog timer in the PNX4008 or LPC32XX processor. This driver can be built as a module by choosing M. The module will be called pnx4008_wdt. Say N if you are unsure. config IOP_WATCHDOG tristate "IOP Watchdog" depends on PLAT_IOP select WATCHDOG_NOWAYOUT if (ARCH_IOP32X || ARCH_IOP33X) help Say Y here if to include support for the watchdog timer in the Intel IOP3XX & IOP13XX I/O Processors. This driver can be built as a module by choosing M. The module will be called iop_wdt. Note: The IOP13XX watchdog does an Internal Bus Reset which will affect both cores and the peripherals of the IOP. The ATU-X and/or ATUe configuration registers will remain intact, but if operating as an Root Complex and/or Central Resource, the PCI-X and/or PCIe busses will also be reset. THIS IS A VERY BIG HAMMER. config DAVINCI_WATCHDOG tristate "DaVinci watchdog" depends on ARCH_DAVINCI help Say Y here if to include support for the watchdog timer in the DaVinci DM644x/DM646x processors. To compile this driver as a module, choose M here: the module will be called davinci_wdt. NOTE: once enabled, this timer cannot be disabled. Say N if you are unsure. config ORION_WATCHDOG tristate "Orion watchdog" depends on ARCH_ORION5X || ARCH_KIRKWOOD help Say Y here if to include support for the watchdog timer in the Marvell Orion5x and Kirkwood ARM SoCs. To compile this driver as a module, choose M here: the module will be called orion_wdt. config COH901327_WATCHDOG bool "ST-Ericsson COH 901 327 watchdog" depends on ARCH_U300 default y if MACH_U300 help Say Y here to include Watchdog timer support for the watchdog embedded into the ST-Ericsson U300 series platforms. This watchdog is used to reset the system and thus cannot be compiled as a module. config TWL4030_WATCHDOG tristate "TWL4030 Watchdog" depends on TWL4030_CORE help Support for TI TWL4030 watchdog. Say 'Y' here to enable the watchdog timer support for TWL4030 chips. config STMP3XXX_WATCHDOG tristate "Freescale STMP3XXX watchdog" depends on ARCH_STMP3XXX help Say Y here if to include support for the watchdog timer for the Sigmatel STMP37XX/378X SoC. To compile this driver as a module, choose M here: the module will be called stmp3xxx_wdt. config NUC900_WATCHDOG tristate "Nuvoton NUC900 watchdog" depends on ARCH_W90X900 help Say Y here if to include support for the watchdog timer for the Nuvoton NUC900 series SoCs. To compile this driver as a module, choose M here: the module will be called nuc900_wdt. config ADX_WATCHDOG tristate "Avionic Design Xanthos watchdog" depends on ARCH_PXA_ADX help Say Y here if you want support for the watchdog timer on Avionic Design Xanthos boards. config TS72XX_WATCHDOG tristate "TS-72XX SBC Watchdog" depends on MACH_TS72XX help Technologic Systems TS-7200, TS-7250 and TS-7260 boards have watchdog timer implemented in a external CPLD chip. Say Y here if you want to support for the watchdog timer on TS-72XX boards. To compile this driver as a module, choose M here: the module will be called ts72xx_wdt. config MAX63XX_WATCHDOG tristate "Max63xx watchdog" depends on ARM && HAS_IOMEM help Support for memory mapped max63{69,70,71,72,73,74} watchdog timer. config IMX2_WDT tristate "IMX2+ Watchdog" depends on ARCH_MX2 || ARCH_MX25 || ARCH_MX3 || ARCH_MX5 help This is the driver for the hardware watchdog on the Freescale IMX2 and later processors. If you have one of these processors and wish to have watchdog support enabled, say Y, otherwise say N. To compile this driver as a module, choose M here: the module will be called imx2_wdt. # AVR32 Architecture config AT32AP700X_WDT tristate "AT32AP700x watchdog" depends on CPU_AT32AP700X help Watchdog timer embedded into AT32AP700x devices. This will reboot your system when the timeout is reached. # BLACKFIN Architecture config BFIN_WDT tristate "Blackfin On-Chip Watchdog Timer" depends on BLACKFIN ---help--- If you say yes here you will get support for the Blackfin On-Chip Watchdog Timer. If you have one of these processors and wish to have watchdog support enabled, say Y, otherwise say N. To compile this driver as a module, choose M here: the module will be called bfin_wdt. # CRIS Architecture # FRV Architecture # H8300 Architecture # X86 (i386 + ia64 + x86_64) Architecture config ACQUIRE_WDT tristate "Acquire SBC Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog on Single Board Computers produced by Acquire Inc (and others). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called acquirewdt. Most people will say N. config ADVANTECH_WDT tristate "Advantech SBC Watchdog Timer" depends on X86 help If you are configuring a Linux kernel for the Advantech single-board computer, say `Y' here to support its built-in watchdog timer feature. More information can be found at config ALIM1535_WDT tristate "ALi M1535 PMU Watchdog Timer" depends on X86 && PCI ---help--- This is the driver for the hardware watchdog on the ALi M1535 PMU. To compile this driver as a module, choose M here: the module will be called alim1535_wdt. Most people will say N. config ALIM7101_WDT tristate "ALi M7101 PMU Computer Watchdog" depends on PCI help This is the driver for the hardware watchdog on the ALi M7101 PMU as used in the x86 Cobalt servers and also found in some SPARC Netra servers too. To compile this driver as a module, choose M here: the module will be called alim7101_wdt. Most people will say N. config F71808E_WDT tristate "Fintek F71808E, F71862FG, F71869, F71882FG and F71889FG Watchdog" depends on X86 && EXPERIMENTAL help This is the driver for the hardware watchdog on the Fintek F71808E, F71862FG, F71869, F71882FG and F71889FG Super I/O controllers. You can compile this driver directly into the kernel, or use it as a module. The module will be called f71808e_wdt. config SP5100_TCO tristate "AMD/ATI SP5100 TCO Timer/Watchdog" depends on X86 && PCI ---help--- Hardware watchdog driver for the AMD/ATI SP5100 chipset. The TCO (Total Cost of Ownership) timer is a watchdog timer that will reboot the machine after its expiration. The expiration time can be configured with the "heartbeat" parameter. To compile this driver as a module, choose M here: the module will be called sp5100_tco. config GEODE_WDT tristate "AMD Geode CS5535/CS5536 Watchdog" depends on CS5535_MFGPT help This driver enables a watchdog capability built into the CS5535/CS5536 companion chips for the AMD Geode GX and LX processors. This watchdog watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. You can compile this driver directly into the kernel, or use it as a module. The module will be called geodewdt. config SC520_WDT tristate "AMD Elan SC520 processor Watchdog" depends on X86 help This is the driver for the hardware watchdog built in to the AMD "Elan" SC520 microcomputer commonly used in embedded systems. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. You can compile this driver directly into the kernel, or use it as a module. The module will be called sc520_wdt. config SBC_FITPC2_WATCHDOG tristate "Compulab SBC-FITPC2 watchdog" depends on X86 ---help--- This is the driver for the built-in watchdog timer on the fit-PC2, fit-PC2i, CM-iAM single-board computers made by Compulab. It`s possible to enable watchdog timer either from BIOS (F2) or from booted Linux. When "Watchdog Timer Value" enabled one can set 31-255 s operational range. Entering BIOS setup temporary disables watchdog operation regardless to current state, so system will not be restarted while user in BIOS setup. Once watchdog was enabled the system will be restarted every "Watchdog Timer Value" period, so to prevent it user can restart or disable the watchdog. To compile this driver as a module, choose M here: the module will be called sbc_fitpc2_wdt. Most people will say N. config EUROTECH_WDT tristate "Eurotech CPU-1220/1410 Watchdog Timer" depends on X86 help Enable support for the watchdog timer on the Eurotech CPU-1220 and CPU-1410 cards. These are PC/104 SBCs. Spec sheets and product information are at . config IB700_WDT tristate "IB700 SBC Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog on the IB700 Single Board Computer produced by TMC Technology (www.tmc-uk.com). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. This driver is like the WDT501 driver but for slightly different hardware. To compile this driver as a module, choose M here: the module will be called ib700wdt. Most people will say N. config IBMASR tristate "IBM Automatic Server Restart" depends on X86 help This is the driver for the IBM Automatic Server Restart watchdog timer built-in into some eServer xSeries machines. To compile this driver as a module, choose M here: the module will be called ibmasr. config WAFER_WDT tristate "ICP Single Board Computer Watchdog Timer" depends on X86 help This is a driver for the hardware watchdog on the ICP Single Board Computer. This driver is working on (at least) the following IPC SBC's: Wafer 5823, Rocky 4783, Rocky 3703 and Rocky 3782. To compile this driver as a module, choose M here: the module will be called wafer5823wdt. config I6300ESB_WDT tristate "Intel 6300ESB Timer/Watchdog" depends on X86 && PCI ---help--- Hardware driver for the watchdog timer built into the Intel 6300ESB controller hub. To compile this driver as a module, choose M here: the module will be called i6300esb. config INTEL_SCU_WATCHDOG bool "Intel SCU Watchdog for Mobile Platforms" depends on WATCHDOG depends on INTEL_SCU_IPC ---help--- Hardware driver for the watchdog time built into the Intel SCU for Intel Mobile Platforms. To compile this driver as a module, choose M here. config ITCO_WDT tristate "Intel TCO Timer/Watchdog" depends on (X86 || IA64) && PCI ---help--- Hardware driver for the intel TCO timer based watchdog devices. These drivers are included in the Intel 82801 I/O Controller Hub family (from ICH0 up to ICH10) and in the Intel 63xxESB controller hub. The TCO (Total Cost of Ownership) timer is a watchdog timer that will reboot the machine after its second expiration. The expiration time can be configured with the "heartbeat" parameter. On some motherboards the driver may fail to reset the chipset's NO_REBOOT flag which prevents the watchdog from rebooting the machine. If this is the case you will get a kernel message like "failed to reset NO_REBOOT flag, reboot disabled by hardware". To compile this driver as a module, choose M here: the module will be called iTCO_wdt. config ITCO_VENDOR_SUPPORT bool "Intel TCO Timer/Watchdog Specific Vendor Support" depends on ITCO_WDT ---help--- Add vendor specific support to the intel TCO timer based watchdog devices. At this moment we only have additional support for some SuperMicro Inc. motherboards. config IT8712F_WDT tristate "IT8712F (Smart Guardian) Watchdog Timer" depends on X86 ---help--- This is the driver for the built-in watchdog timer on the IT8712F Super I/0 chipset used on many motherboards. If the driver does not work, then make sure that the game port in the BIOS is enabled. To compile this driver as a module, choose M here: the module will be called it8712f_wdt. config IT87_WDT tristate "IT87 Watchdog Timer" depends on X86 && EXPERIMENTAL ---help--- This is the driver for the hardware watchdog on the ITE IT8702, IT8712, IT8716, IT8718, IT8720, IT8721, IT8726 Super I/O chips. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called it87_wdt. config HP_WATCHDOG tristate "HP ProLiant iLO2+ Hardware Watchdog Timer" depends on X86 default m help A software monitoring watchdog and NMI sourcing driver. This driver will detect lockups and provide a stack trace. This is a driver that will only load on an HP ProLiant system with a minimum of iLO2 support. To compile this driver as a module, choose M here: the module will be called hpwdt. config HPWDT_NMI_DECODING bool "NMI decoding support for the HP ProLiant iLO2+ Hardware Watchdog Timer" depends on HP_WATCHDOG default y help When an NMI occurs this feature will make the necessary BIOS calls to log the cause of the NMI. config SC1200_WDT tristate "National Semiconductor PC87307/PC97307 (ala SC1200) Watchdog" depends on X86 help This is a driver for National Semiconductor PC87307/PC97307 hardware watchdog cards as found on the SC1200. This watchdog is mainly used for power management purposes and can be used to power down the device during inactivity periods (includes interrupt activity monitoring). To compile this driver as a module, choose M here: the module will be called sc1200wdt. Most people will say N. config SCx200_WDT tristate "National Semiconductor SCx200 Watchdog" depends on SCx200 && PCI help Enable the built-in watchdog timer support on the National Semiconductor SCx200 processors. If compiled as a module, it will be called scx200_wdt. config PC87413_WDT tristate "NS PC87413 watchdog" depends on X86 ---help--- This is the driver for the hardware watchdog on the PC87413 chipset This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called pc87413_wdt. Most people will say N. config NV_TCO tristate "nVidia TCO Timer/Watchdog" depends on X86 && PCI ---help--- Hardware driver for the TCO timer built into the nVidia Hub family (such as the MCP51). The TCO (Total Cost of Ownership) timer is a watchdog timer that will reboot the machine after its second expiration. The expiration time can be configured with the "heartbeat" parameter. On some motherboards the driver may fail to reset the chipset's NO_REBOOT flag which prevents the watchdog from rebooting the machine. If this is the case you will get a kernel message like "failed to reset NO_REBOOT flag, reboot disabled by hardware". To compile this driver as a module, choose M here: the module will be called nv_tco. config RDC321X_WDT tristate "RDC R-321x SoC watchdog" depends on X86_RDC321X help This is the driver for the built in hardware watchdog in the RDC R-321x SoC. To compile this driver as a module, choose M here: the module will be called rdc321x_wdt. config 60XX_WDT tristate "SBC-60XX Watchdog Timer" depends on X86 help This driver can be used with the watchdog timer found on some single board computers, namely the 6010 PII based computer. It may well work with other cards. It reads port 0x443 to enable and re-set the watchdog timer, and reads port 0x45 to disable the watchdog. If you have a card that behave in similar ways, you can probably make this driver work with your card as well. You can compile this driver directly into the kernel, or use it as a module. The module will be called sbc60xxwdt. config SBC8360_WDT tristate "SBC8360 Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog on the SBC8360 Single Board Computer produced by Axiomtek Co., Ltd. (www.axiomtek.com). To compile this driver as a module, choose M here: the module will be called sbc8360. Most people will say N. config SBC7240_WDT tristate "SBC Nano 7240 Watchdog Timer" depends on X86_32 ---help--- This is the driver for the hardware watchdog found on the IEI single board computers EPIC Nano 7240 (and likely others). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called sbc7240_wdt. config CPU5_WDT tristate "SMA CPU5 Watchdog" depends on X86 ---help--- TBD. To compile this driver as a module, choose M here: the module will be called cpu5wdt. config SMSC_SCH311X_WDT tristate "SMSC SCH311X Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog timer on the SMSC SCH3112, SCH3114 and SCH3116 Super IO chipset (LPC IO with 8042 KBC, Reset Generation, HWM and multiple serial ports). To compile this driver as a module, choose M here: the module will be called sch311x_wdt. config SMSC37B787_WDT tristate "Winbond SMsC37B787 Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog component on the Winbond SMsC37B787 chipset as used on the NetRunner Mainboard from Vision Systems and maybe others. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. Usually a userspace daemon will notify the kernel WDT driver that userspace is still alive, at regular intervals. To compile this driver as a module, choose M here: the module will be called smsc37b787_wdt. Most people will say N. config W83627HF_WDT tristate "W83627HF/W83627DHG Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog on the W83627HF chipset as used in Advantech PC-9578 and Tyan S2721-533 motherboards (and likely others). The driver also supports the W83627DHG chip. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called w83627hf_wdt. Most people will say N. config W83697HF_WDT tristate "W83697HF/W83697HG Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog on the W83697HF/HG chipset as used in Dedibox/VIA motherboards (and likely others). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called w83697hf_wdt. Most people will say N. config W83697UG_WDT tristate "W83697UG/W83697UF Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog on the W83697UG/UF chipset as used in MSI Fuzzy CX700 VIA motherboards (and likely others). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called w83697ug_wdt. Most people will say N. config W83877F_WDT tristate "W83877F (EMACS) Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog on the W83877F chipset as used in EMACS PC-104 motherboards (and likely others). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called w83877f_wdt. Most people will say N. config W83977F_WDT tristate "W83977F (PCM-5335) Watchdog Timer" depends on X86 ---help--- This is the driver for the hardware watchdog on the W83977F I/O chip as used in AAEON's PCM-5335 SBC (and likely others). This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called w83977f_wdt. config MACHZ_WDT tristate "ZF MachZ Watchdog" depends on X86 ---help--- If you are using a ZF Micro MachZ processor, say Y here, otherwise N. This is the driver for the watchdog timer built-in on that processor using ZF-Logic interface. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called machzwd. config SBC_EPX_C3_WATCHDOG tristate "Winsystems SBC EPX-C3 watchdog" depends on X86 ---help--- This is the driver for the built-in watchdog timer on the EPX-C3 Single-board computer made by Winsystems, Inc. *Note*: This hardware watchdog is not probeable and thus there is no way to know if writing to its IO address will corrupt your system or have any real effect. The only way to be sure that this driver does what you want is to make sure you are running it on an EPX-C3 from Winsystems with the watchdog timer at IO address 0x1ee and 0x1ef. It will write to both those IO ports. Basically, the assumption is made that if you compile this driver into your kernel and/or load it as a module, that you know what you are doing and that you are in fact running on an EPX-C3 board! To compile this driver as a module, choose M here: the module will be called sbc_epx_c3. # M32R Architecture # M68K Architecture config M54xx_WATCHDOG tristate "MCF54xx watchdog support" depends on M548x help To compile this driver as a module, choose M here: the module will be called m54xx_wdt. # MIPS Architecture config ATH79_WDT tristate "Atheros AR71XX/AR724X/AR913X hardware watchdog" depends on ATH79 help Hardware driver for the built-in watchdog timer on the Atheros AR71XX/AR724X/AR913X SoCs. config BCM47XX_WDT tristate "Broadcom BCM47xx Watchdog Timer" depends on BCM47XX help Hardware driver for the Broadcom BCM47xx Watchog Timer. config RC32434_WDT tristate "IDT RC32434 SoC Watchdog Timer" depends on MIKROTIK_RB532 help Hardware driver for the IDT RC32434 SoC built-in watchdog timer. To compile this driver as a module, choose M here: the module will be called rc32434_wdt. config INDYDOG tristate "Indy/I2 Hardware Watchdog" depends on SGI_HAS_INDYDOG help Hardware driver for the Indy's/I2's watchdog. This is a watchdog timer that will reboot the machine after a 60 second timer expired and no process has written to /dev/watchdog during that time. config JZ4740_WDT tristate "Ingenic jz4740 SoC hardware watchdog" depends on MACH_JZ4740 help Hardware driver for the built-in watchdog timer on Ingenic jz4740 SoCs. config WDT_MTX1 tristate "MTX-1 Hardware Watchdog" depends on MIPS_MTX1 help Hardware driver for the MTX-1 boards. This is a watchdog timer that will reboot the machine after a 100 seconds timer expired. config PNX833X_WDT tristate "PNX833x Hardware Watchdog" depends on SOC_PNX8335 help Hardware driver for the PNX833x's watchdog. This is a watchdog timer that will reboot the machine after a programmable timer has expired and no process has written to /dev/watchdog during that time. config SIBYTE_WDOG tristate "Sibyte SoC hardware watchdog" depends on CPU_SB1 help Watchdog driver for the built in watchdog hardware in Sibyte SoC processors. There are apparently two watchdog timers on such processors; this driver supports only the first one, because currently Linux only supports exporting one watchdog to userspace. To compile this driver as a loadable module, choose M here. The module will be called sb_wdog. config AR7_WDT tristate "TI AR7 Watchdog Timer" depends on AR7 help Hardware driver for the TI AR7 Watchdog Timer. config TXX9_WDT tristate "Toshiba TXx9 Watchdog Timer" depends on CPU_TX39XX || CPU_TX49XX help Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs. config OCTEON_WDT tristate "Cavium OCTEON SOC family Watchdog Timer" depends on CPU_CAVIUM_OCTEON default y select EXPORT_UASM if OCTEON_WDT = m help Hardware driver for OCTEON's on chip watchdog timer. Enables the watchdog for all cores running Linux. It installs a NMI handler and pokes the watchdog based on an interrupt. On first expiration of the watchdog, the interrupt handler pokes it. The second expiration causes an NMI that prints a message. The third expiration causes a global soft reset. When userspace has /dev/watchdog open, no poking is done from the first interrupt, it is then only poked when the device is written. config BCM63XX_WDT tristate "Broadcom BCM63xx hardware watchdog" depends on BCM63XX help Watchdog driver for the built in watchdog hardware in Broadcom BCM63xx SoC. To compile this driver as a loadable module, choose M here. The module will be called bcm63xx_wdt. # PARISC Architecture # POWERPC Architecture config GEF_WDT tristate "GE Watchdog Timer" depends on GEF_SBC610 || GEF_SBC310 || GEF_PPC9A ---help--- Watchdog timer found in a number of GE single board computers. config MPC5200_WDT bool "MPC52xx Watchdog Timer" depends on PPC_MPC52xx help Use General Purpose Timer (GPT) 0 on the MPC5200 as Watchdog. config 8xxx_WDT tristate "MPC8xxx Platform Watchdog Timer" depends on PPC_8xx || PPC_83xx || PPC_86xx help This driver is for a SoC level watchdog that exists on some Freescale PowerPC processors. So far this driver supports: - MPC8xx watchdogs - MPC83xx watchdogs - MPC86xx watchdogs For BookE processors (MPC85xx) use the BOOKE_WDT driver instead. config MV64X60_WDT tristate "MV64X60 (Marvell Discovery) Watchdog Timer" depends on MV64X60 config PIKA_WDT tristate "PIKA FPGA Watchdog" depends on WARP default y help This enables the watchdog in the PIKA FPGA. Currently used on the Warp platform. config BOOKE_WDT tristate "PowerPC Book-E Watchdog Timer" depends on BOOKE || 4xx ---help--- Watchdog driver for PowerPC Book-E chips, such as the Freescale MPC85xx SOCs and the IBM PowerPC 440. Please see Documentation/watchdog/watchdog-api.txt for more information. config BOOKE_WDT_DEFAULT_TIMEOUT int "PowerPC Book-E Watchdog Timer Default Timeout" depends on BOOKE_WDT default 38 if FSL_BOOKE range 0 63 if FSL_BOOKE default 3 if !FSL_BOOKE range 0 3 if !FSL_BOOKE help Select the default watchdog timer period to be used by the PowerPC Book-E watchdog driver. A watchdog "event" occurs when the bit position represented by this number transitions from zero to one. For Freescale Book-E processors, this is a number between 0 and 63. For other Book-E processors, this is a number between 0 and 3. The value can be overidden by the wdt_period command-line parameter. # PPC64 Architecture config WATCHDOG_RTAS tristate "RTAS watchdog" depends on PPC_RTAS help This driver adds watchdog support for the RTAS watchdog. To compile this driver as a module, choose M here. The module will be called wdrtas. # S390 Architecture config ZVM_WATCHDOG tristate "z/VM Watchdog Timer" depends on S390 help IBM s/390 and zSeries machines running under z/VM 5.1 or later provide a virtual watchdog timer to their guest that cause a user define Control Program command to be executed after a timeout. To compile this driver as a module, choose M here. The module will be called vmwatchdog. # SUPERH (sh + sh64) Architecture config SH_WDT tristate "SuperH Watchdog" depends on SUPERH && (CPU_SH3 || CPU_SH4) help This driver adds watchdog support for the integrated watchdog in the SuperH processors. If you have one of these processors and wish to have watchdog support enabled, say Y, otherwise say N. As a side note, saying Y here will automatically boost HZ to 1000 so that the timer has a chance to clear the overflow counter. On slower systems (such as the SH-2 and SH-3) this will likely yield some performance issues. As such, the WDT should be avoided here unless it is absolutely necessary. To compile this driver as a module, choose M here: the module will be called shwdt. # SPARC Architecture # SPARC64 Architecture config WATCHDOG_CP1XXX tristate "CP1XXX Hardware Watchdog support" depends on SPARC64 && PCI ---help--- This is the driver for the hardware watchdog timers present on Sun Microsystems CompactPCI models CP1400 and CP1500. To compile this driver as a module, choose M here: the module will be called cpwatchdog. If you do not have a CompactPCI model CP1400 or CP1500, or another UltraSPARC-IIi-cEngine boardset with hardware watchdog, you should say N to this option. config WATCHDOG_RIO tristate "RIO Hardware Watchdog support" depends on SPARC64 && PCI help Say Y here to support the hardware watchdog capability on Sun RIO machines. The watchdog timeout period is normally one minute but can be changed with a boot-time parameter. # XTENSA Architecture # Xen Architecture config XEN_WDT tristate "Xen Watchdog support" depends on XEN help Say Y here to support the hypervisor watchdog capability provided by Xen 4.0 and newer. The watchdog timeout period is normally one minute but can be changed with a boot-time parameter. # # ISA-based Watchdog Cards # comment "ISA-based Watchdog Cards" depends on ISA config PCWATCHDOG tristate "Berkshire Products ISA-PC Watchdog" depends on ISA ---help--- This is the driver for the Berkshire Products ISA-PC Watchdog card. This card simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. This driver is like the WDT501 driver but for different hardware. Please read . The PC watchdog cards can be ordered from . To compile this driver as a module, choose M here: the module will be called pcwd. Most people will say N. config MIXCOMWD tristate "Mixcom Watchdog" depends on ISA ---help--- This is a driver for the Mixcom hardware watchdog cards. This watchdog simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. To compile this driver as a module, choose M here: the module will be called mixcomwd. Most people will say N. config WDT tristate "WDT Watchdog timer" depends on ISA ---help--- If you have a WDT500P or WDT501P watchdog board, say Y here, otherwise N. It is not possible to probe for this board, which means that you have to inform the kernel about the IO port and IRQ that is needed (you can do this via the io and irq parameters) To compile this driver as a module, choose M here: the module will be called wdt. # # PCI-based Watchdog Cards # comment "PCI-based Watchdog Cards" depends on PCI config PCIPCWATCHDOG tristate "Berkshire Products PCI-PC Watchdog" depends on PCI ---help--- This is the driver for the Berkshire Products PCI-PC Watchdog card. This card simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. The card can also monitor the internal temperature of the PC. More info is available at . To compile this driver as a module, choose M here: the module will be called pcwd_pci. Most people will say N. config WDTPCI tristate "PCI-WDT500/501 Watchdog timer" depends on PCI ---help--- If you have a PCI-WDT500/501 watchdog board, say Y here, otherwise N. If you have a PCI-WDT501 watchdog board then you can enable the temperature sensor by setting the type parameter to 501. If you want to enable the Fan Tachometer on the PCI-WDT501, then you can do this via the tachometer parameter. Only do this if you have a fan tachometer actually set up. To compile this driver as a module, choose M here: the module will be called wdt_pci. # # USB-based Watchdog Cards # comment "USB-based Watchdog Cards" depends on USB config USBPCWATCHDOG tristate "Berkshire Products USB-PC Watchdog" depends on USB ---help--- This is the driver for the Berkshire Products USB-PC Watchdog card. This card simply watches your kernel to make sure it doesn't freeze, and if it does, it reboots your computer after a certain amount of time. The card can also monitor the internal temperature of the PC. More info is available at . To compile this driver as a module, choose M here: the module will be called pcwd_usb. Most people will say N. endif # WATCHDOG config SSB_POSSIBLE bool depends on HAS_IOMEM && HAS_DMA default y menu "Sonics Silicon Backplane" depends on SSB_POSSIBLE config SSB tristate "Sonics Silicon Backplane support" depends on SSB_POSSIBLE help Support for the Sonics Silicon Backplane bus. You only need to enable this option, if you are configuring a kernel for an embedded system with this bus. It will be auto-selected if needed in other environments. The module will be called ssb. If unsure, say N. # Common SPROM support routines config SSB_SPROM bool # Support for Block-I/O. SELECT this from the driver that needs it. config SSB_BLOCKIO bool depends on SSB config SSB_PCIHOST_POSSIBLE bool depends on SSB && (PCI = y || PCI = SSB) default y config SSB_PCIHOST bool "Support for SSB on PCI-bus host" depends on SSB_PCIHOST_POSSIBLE select SSB_SPROM default y help Support for a Sonics Silicon Backplane on top of a PCI device. If unsure, say Y config SSB_B43_PCI_BRIDGE bool depends on SSB_PCIHOST default n config SSB_PCMCIAHOST_POSSIBLE bool depends on SSB && (PCMCIA = y || PCMCIA = SSB) default y config SSB_PCMCIAHOST bool "Support for SSB on PCMCIA-bus host" depends on SSB_PCMCIAHOST_POSSIBLE select SSB_SPROM help Support for a Sonics Silicon Backplane on top of a PCMCIA device. If unsure, say N config SSB_SDIOHOST_POSSIBLE bool depends on SSB && (MMC = y || MMC = SSB) default y config SSB_SDIOHOST bool "Support for SSB on SDIO-bus host" depends on SSB_SDIOHOST_POSSIBLE help Support for a Sonics Silicon Backplane on top of a SDIO device. If unsure, say N config SSB_SILENT bool "No SSB kernel messages" depends on SSB && EXPERT help This option turns off all Sonics Silicon Backplane printks. Note that you won't be able to identify problems, once messages are turned off. This might only be desired for production kernels on embedded devices to reduce the kernel size. Say N config SSB_DEBUG bool "SSB debugging" depends on SSB && !SSB_SILENT help This turns on additional runtime checks and debugging messages. Turn this on for SSB troubleshooting. If unsure, say N config SSB_SERIAL bool depends on SSB # ChipCommon and ExtIf serial support routines. config SSB_DRIVER_PCICORE_POSSIBLE bool depends on SSB_PCIHOST default y config SSB_DRIVER_PCICORE bool "SSB PCI core driver" depends on SSB_DRIVER_PCICORE_POSSIBLE help Driver for the Sonics Silicon Backplane attached Broadcom PCI core. If unsure, say Y config SSB_PCICORE_HOSTMODE bool "Hostmode support for SSB PCI core" depends on SSB_DRIVER_PCICORE && SSB_DRIVER_MIPS help PCIcore hostmode operation (external PCI bus). config SSB_DRIVER_MIPS bool "SSB Broadcom MIPS core driver" depends on SSB && MIPS select SSB_SERIAL help Driver for the Sonics Silicon Backplane attached Broadcom MIPS core. If unsure, say N # Assumption: We are on embedded, if we compile the MIPS core. config SSB_EMBEDDED bool depends on SSB_DRIVER_MIPS default y config SSB_DRIVER_EXTIF bool "SSB Broadcom EXTIF core driver" depends on SSB_DRIVER_MIPS help Driver for the Sonics Silicon Backplane attached Broadcom EXTIF core. If unsure, say N config SSB_DRIVER_GIGE bool "SSB Broadcom Gigabit Ethernet driver" depends on SSB_PCIHOST_POSSIBLE && SSB_EMBEDDED && MIPS help Driver for the Sonics Silicon Backplane attached Broadcom Gigabit Ethernet. If unsure, say N endmenu config CLKDEV_LOOKUP bool select HAVE_CLK # # USB Monitor configuration # config USB_MON tristate "USB Monitor" depends on USB help If you select this option, a component which captures the USB traffic between peripheral-specific drivers and HC drivers will be built. For more information, see . If unsure, say Y, if allowed, otherwise M. # # Wireless USB Core configuration # config USB_WUSB tristate "Enable Wireless USB extensions (EXPERIMENTAL)" depends on EXPERIMENTAL depends on USB select UWB select CRYPTO select CRYPTO_BLKCIPHER select CRYPTO_CBC select CRYPTO_MANAGER select CRYPTO_AES help Enable the host-side support for Wireless USB. To compile this support select Y (built in). It is safe to select even if you don't have the hardware. config USB_WUSB_CBAF tristate "Support WUSB Cable Based Association (CBA)" depends on USB help Some WUSB devices support Cable Based Association. It's used to enable the secure communication between the host and the device. Enable this option if your WUSB device must to be connected via wired USB before establishing a wireless link. It is safe to select even if you don't have a compatible hardware. config USB_WUSB_CBAF_DEBUG bool "Enable CBA debug messages" depends on USB_WUSB_CBAF help Say Y here if you want the CBA to produce a bunch of debug messages to the system log. Select this if you are having a problem with CBA support and want to see more of what is going on. # # USB device configuration # menuconfig USB_SUPPORT bool "USB support" depends on HAS_IOMEM default y ---help--- This option adds core support for Universal Serial Bus (USB). You will also need drivers from the following menu to make use of it. if USB_SUPPORT # Host-side USB depends on having a host controller # NOTE: dummy_hcd is always an option, but it's ignored here ... # NOTE: SL-811 option should be board-specific ... config USB_ARCH_HAS_HCD boolean default y if USB_ARCH_HAS_OHCI default y if USB_ARCH_HAS_EHCI default y if PCMCIA && !M32R # sl811_cs default y if ARM # SL-811 default y if BLACKFIN # SL-811 default y if SUPERH # r8a66597-hcd default PCI # many non-PCI SOC chips embed OHCI config USB_ARCH_HAS_OHCI boolean # ARM: default y if SA1111 default y if ARCH_OMAP default y if ARCH_S3C2410 default y if PXA27x default y if PXA3xx default y if ARCH_EP93XX default y if ARCH_AT91 default y if ARCH_PNX4008 && I2C default y if MFD_TC6393XB default y if ARCH_W90X900 default y if ARCH_DAVINCI_DA8XX default y if ARCH_CNS3XXX default y if PLAT_SPEAR # PPC: default y if STB03xxx default y if PPC_MPC52xx # MIPS: default y if MIPS_ALCHEMY default y if MACH_JZ4740 # more: default PCI # some non-PCI hcds implement EHCI config USB_ARCH_HAS_EHCI boolean default y if PPC_83xx default y if PPC_MPC512x default y if SOC_AU1200 default y if ARCH_IXP4XX default y if ARCH_W90X900 default y if ARCH_AT91SAM9G45 default y if ARCH_MXC default y if ARCH_OMAP3 default y if ARCH_CNS3XXX default y if ARCH_VT8500 default y if PLAT_SPEAR default y if ARCH_MSM default y if MICROBLAZE default PCI # ARM SA1111 chips have a non-PCI based "OHCI-compatible" USB host interface. config USB tristate "Support for Host-side USB" depends on USB_ARCH_HAS_HCD select NLS # for UTF-8 strings ---help--- Universal Serial Bus (USB) is a specification for a serial bus subsystem which offers higher speeds and more features than the traditional PC serial port. The bus supplies power to peripherals and allows for hot swapping. Up to 127 USB peripherals can be connected to a single USB host in a tree structure. The USB host is the root of the tree, the peripherals are the leaves and the inner nodes are special USB devices called hubs. Most PCs now have USB host ports, used to connect peripherals such as scanners, keyboards, mice, modems, cameras, disks, flash memory, network links, and printers to the PC. Say Y here if your computer has a host-side USB port and you want to use USB devices. You then need to say Y to at least one of the Host Controller Driver (HCD) options below. Choose a USB 1.1 controller, such as "UHCI HCD support" or "OHCI HCD support", and "EHCI HCD (USB 2.0) support" except for older systems that do not have USB 2.0 support. It doesn't normally hurt to select them all if you are not certain. If your system has a device-side USB port, used in the peripheral side of the USB protocol, see the "USB Gadget" framework instead. After choosing your HCD, then select drivers for the USB peripherals you'll be using. You may want to check out the information provided in and especially the links given in . To compile this driver as a module, choose M here: the module will be called usbcore. source "drivers/usb/core/Kconfig" source "drivers/usb/mon/Kconfig" source "drivers/usb/wusbcore/Kconfig" source "drivers/usb/host/Kconfig" source "drivers/usb/musb/Kconfig" source "drivers/usb/class/Kconfig" source "drivers/usb/storage/Kconfig" source "drivers/usb/image/Kconfig" comment "USB port drivers" depends on USB config USB_USS720 tristate "USS720 parport driver" depends on USB && PARPORT select PARPORT_NOT_PC ---help--- This driver is for USB parallel port adapters that use the Lucent Technologies USS-720 chip. These cables are plugged into your USB port and provide USB compatibility to peripherals designed with parallel port interfaces. The chip has two modes: automatic mode and manual mode. In automatic mode, it looks to the computer like a standard USB printer. Only printers may be connected to the USS-720 in this mode. The generic USB printer driver ("USB Printer support", above) may be used in that mode, and you can say N here if you want to use the chip only in this mode. Manual mode is not limited to printers, any parallel port device should work. This driver utilizes manual mode. Note however that some operations are three orders of magnitude slower than on a PCI/ISA Parallel Port, so timing critical applications might not work. Say Y here if you own an USS-720 USB->Parport cable and intend to connect anything other than a printer to it. To compile this driver as a module, choose M here: the module will be called uss720. source "drivers/usb/serial/Kconfig" source "drivers/usb/misc/Kconfig" source "drivers/usb/atm/Kconfig" source "drivers/usb/gadget/Kconfig" source "drivers/usb/otg/Kconfig" endif # USB_SUPPORT # # USB Host Controller Drivers # comment "USB Host Controller Drivers" depends on USB config USB_C67X00_HCD tristate "Cypress C67x00 HCD support" depends on USB help The Cypress C67x00 (EZ-Host/EZ-OTG) chips are dual-role host/peripheral/OTG USB controllers. Enable this option to support this chip in host controller mode. If unsure, say N. To compile this driver as a module, choose M here: the module will be called c67x00. config USB_XHCI_HCD tristate "xHCI HCD (USB 3.0) support (EXPERIMENTAL)" depends on USB && PCI && EXPERIMENTAL ---help--- The eXtensible Host Controller Interface (xHCI) is standard for USB 3.0 "SuperSpeed" host controller hardware. To compile this driver as a module, choose M here: the module will be called xhci-hcd. config USB_XHCI_HCD_DEBUGGING bool "Debugging for the xHCI host controller" depends on USB_XHCI_HCD ---help--- Say 'Y' to turn on debugging for the xHCI host controller driver. This will spew debugging output, even in interrupt context. This should only be used for debugging xHCI driver bugs. If unsure, say N. config USB_EHCI_HCD tristate "EHCI HCD (USB 2.0) support" depends on USB && USB_ARCH_HAS_EHCI ---help--- The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 "high speed" (480 Mbit/sec, 60 Mbyte/sec) host controller hardware. If your USB host controller supports USB 2.0, you will likely want to configure this Host Controller Driver. EHCI controllers are packaged with "companion" host controllers (OHCI or UHCI) to handle USB 1.1 devices connected to root hub ports. Ports will connect to EHCI if the device is high speed, otherwise they connect to a companion controller. If you configure EHCI, you should probably configure the OHCI (for NEC and some other vendors) USB Host Controller Driver or UHCI (for Via motherboards) Host Controller Driver too. You may want to read . To compile this driver as a module, choose M here: the module will be called ehci-hcd. config USB_EHCI_ROOT_HUB_TT bool "Root Hub Transaction Translators" depends on USB_EHCI_HCD ---help--- Some EHCI chips have vendor-specific extensions to integrate transaction translators, so that no OHCI or UHCI companion controller is needed. It's safe to say "y" even if your controller doesn't support this feature. This supports the EHCI implementation that's originally from ARC, and has since changed hands a few times. config USB_EHCI_TT_NEWSCHED bool "Improved Transaction Translator scheduling" depends on USB_EHCI_HCD default y ---help--- This changes the periodic scheduling code to fill more of the low and full speed bandwidth available from the Transaction Translator (TT) in USB 2.0 hubs. Without this, only one transfer will be issued in each microframe, significantly reducing the number of periodic low/fullspeed transfers possible. If you have multiple periodic low/fullspeed devices connected to a highspeed USB hub which is connected to a highspeed USB Host Controller, and some of those devices will not work correctly (possibly due to "ENOSPC" or "-28" errors), say Y. Conversely, if you have only one such device and it doesn't work, you could try saying N. If unsure, say Y. config USB_EHCI_HCD_PMC_MSP tristate "EHCI support for on-chip PMC MSP71xx USB controller" depends on USB_EHCI_HCD && MSP_HAS_USB default n select USB_EHCI_BIG_ENDIAN_DESC select USB_EHCI_BIG_ENDIAN_MMIO ---help--- Enables support for the onchip USB controller on the PMC_MSP7100 Family SoC's. If unsure, say N. config USB_EHCI_BIG_ENDIAN_MMIO bool depends on USB_EHCI_HCD && (PPC_CELLEB || PPC_PS3 || 440EPX || \ ARCH_IXP4XX || XPS_USB_HCD_XILINX || \ PPC_MPC512x || CPU_CAVIUM_OCTEON || \ PMC_MSP) default y config USB_EHCI_BIG_ENDIAN_DESC bool depends on USB_EHCI_HCD && (440EPX || ARCH_IXP4XX || XPS_USB_HCD_XILINX || \ PPC_MPC512x || PMC_MSP) default y config XPS_USB_HCD_XILINX bool "Use Xilinx usb host EHCI controller core" depends on USB_EHCI_HCD && (PPC32 || MICROBLAZE) select USB_EHCI_BIG_ENDIAN_DESC select USB_EHCI_BIG_ENDIAN_MMIO ---help--- Xilinx xps USB host controller core is EHCI compilant and has transaction translator built-in. It can be configured to either support both high speed and full speed devices, or high speed devices only. config USB_FSL_MPH_DR_OF tristate config USB_EHCI_FSL bool "Support for Freescale on-chip EHCI USB controller" depends on USB_EHCI_HCD && FSL_SOC select USB_EHCI_ROOT_HUB_TT select USB_FSL_MPH_DR_OF if OF ---help--- Variation of ARC USB block used in some Freescale chips. config USB_EHCI_MXC bool "Support for Freescale on-chip EHCI USB controller" depends on USB_EHCI_HCD && ARCH_MXC select USB_EHCI_ROOT_HUB_TT ---help--- Variation of ARC USB block used in some Freescale chips. config USB_EHCI_HCD_OMAP bool "EHCI support for OMAP3 and later chips" depends on USB_EHCI_HCD && ARCH_OMAP default y --- help --- Enables support for the on-chip EHCI controller on OMAP3 and later chips. config USB_EHCI_MSM bool "Support for MSM on-chip EHCI USB controller" depends on USB_EHCI_HCD && ARCH_MSM select USB_EHCI_ROOT_HUB_TT select USB_MSM_OTG ---help--- Enables support for the USB Host controller present on the Qualcomm chipsets. Root Hub has inbuilt TT. This driver depends on OTG driver for PHY initialization, clock management, powering up VBUS, and power management. This driver is not supported on boards like trout which has an external PHY. config USB_EHCI_TEGRA boolean "NVIDIA Tegra HCD support" depends on USB_EHCI_HCD && ARCH_TEGRA select USB_EHCI_ROOT_HUB_TT help This driver enables support for the internal USB Host Controllers found in NVIDIA Tegra SoCs. The controllers are EHCI compliant. config USB_EHCI_HCD_PPC_OF bool "EHCI support for PPC USB controller on OF platform bus" depends on USB_EHCI_HCD && PPC_OF default y ---help--- Enables support for the USB controller present on the PowerPC OpenFirmware platform bus. config USB_EHCI_SH bool "EHCI support for SuperH USB controller" depends on USB_EHCI_HCD && SUPERH ---help--- Enables support for the on-chip EHCI controller on the SuperH. If you use the PCI EHCI controller, this option is not necessary. config USB_W90X900_EHCI bool "W90X900(W90P910) EHCI support" depends on USB_EHCI_HCD && ARCH_W90X900 ---help--- Enables support for the W90X900 USB controller config USB_CNS3XXX_EHCI bool "Cavium CNS3XXX EHCI Module" depends on USB_EHCI_HCD && ARCH_CNS3XXX ---help--- Enable support for the CNS3XXX SOC's on-chip EHCI controller. It is needed for high-speed (480Mbit/sec) USB 2.0 device support. config USB_OXU210HP_HCD tristate "OXU210HP HCD support" depends on USB ---help--- The OXU210HP is an USB host/OTG/device controller. Enable this option if your board has this chip. If unsure, say N. This driver does not support isochronous transfers and doesn't implement OTG nor USB device controllers. To compile this driver as a module, choose M here: the module will be called oxu210hp-hcd. config USB_ISP116X_HCD tristate "ISP116X HCD support" depends on USB ---help--- The ISP1160 and ISP1161 chips are USB host controllers. Enable this option if your board has this chip. If unsure, say N. This driver does not support isochronous transfers. To compile this driver as a module, choose M here: the module will be called isp116x-hcd. config USB_ISP1760_HCD tristate "ISP 1760 HCD support" depends on USB && EXPERIMENTAL ---help--- The ISP1760 chip is a USB 2.0 host controller. This driver does not support isochronous transfers or OTG. This USB controller is usually attached to a non-DMA-Master capable bus. NXP's eval kit brings this chip on PCI card where the chip itself is behind a PLB to simulate such a bus. To compile this driver as a module, choose M here: the module will be called isp1760. config USB_ISP1362_HCD tristate "ISP1362 HCD support" depends on USB default N ---help--- Supports the Philips ISP1362 chip as a host controller This driver does not support isochronous transfers. To compile this driver as a module, choose M here: the module will be called isp1362-hcd. config USB_OHCI_HCD tristate "OHCI HCD support" depends on USB && USB_ARCH_HAS_OHCI select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 select USB_OTG_UTILS if ARCH_OMAP ---help--- The Open Host Controller Interface (OHCI) is a standard for accessing USB 1.1 host controller hardware. It does more in hardware than Intel's UHCI specification. If your USB host controller follows the OHCI spec, say Y. On most non-x86 systems, and on x86 hardware that's not using a USB controller from Intel or VIA, this is appropriate. If your host controller doesn't use PCI, this is probably appropriate. For a PCI based system where you're not sure, the "lspci -v" entry will list the right "prog-if" for your USB controller(s): EHCI, OHCI, or UHCI. To compile this driver as a module, choose M here: the module will be called ohci-hcd. config USB_OHCI_HCD_OMAP1 bool "OHCI support for OMAP1/2 chips" depends on USB_OHCI_HCD && (ARCH_OMAP1 || ARCH_OMAP2) default y ---help--- Enables support for the OHCI controller on OMAP1/2 chips. config USB_OHCI_HCD_OMAP3 bool "OHCI support for OMAP3 and later chips" depends on USB_OHCI_HCD && (ARCH_OMAP3 || ARCH_OMAP4) default y ---help--- Enables support for the on-chip OHCI controller on OMAP3 and later chips. config USB_OHCI_HCD_PPC_SOC bool "OHCI support for on-chip PPC USB controller" depends on USB_OHCI_HCD && (STB03xxx || PPC_MPC52xx) default y select USB_OHCI_BIG_ENDIAN_DESC select USB_OHCI_BIG_ENDIAN_MMIO ---help--- Enables support for the USB controller on the MPC52xx or STB03xxx processor chip. If unsure, say Y. config USB_OHCI_HCD_PPC_OF_BE bool "OHCI support for OF platform bus (big endian)" depends on USB_OHCI_HCD && PPC_OF select USB_OHCI_BIG_ENDIAN_DESC select USB_OHCI_BIG_ENDIAN_MMIO ---help--- Enables support for big-endian USB controllers present on the OpenFirmware platform bus. config USB_OHCI_HCD_PPC_OF_LE bool "OHCI support for OF platform bus (little endian)" depends on USB_OHCI_HCD && PPC_OF select USB_OHCI_LITTLE_ENDIAN ---help--- Enables support for little-endian USB controllers present on the OpenFirmware platform bus. config USB_OHCI_HCD_PPC_OF bool depends on USB_OHCI_HCD && PPC_OF default USB_OHCI_HCD_PPC_OF_BE || USB_OHCI_HCD_PPC_OF_LE config USB_OHCI_HCD_PCI bool "OHCI support for PCI-bus USB controllers" depends on USB_OHCI_HCD && PCI && (STB03xxx || PPC_MPC52xx || USB_OHCI_HCD_PPC_OF) default y select USB_OHCI_LITTLE_ENDIAN ---help--- Enables support for PCI-bus plug-in USB controller cards. If unsure, say Y. config USB_OHCI_HCD_SSB bool "OHCI support for Broadcom SSB OHCI core" depends on USB_OHCI_HCD && (SSB = y || SSB = USB_OHCI_HCD) && EXPERIMENTAL default n ---help--- Support for the Sonics Silicon Backplane (SSB) attached Broadcom USB OHCI core. This device is present in some embedded devices with Broadcom based SSB bus. If unsure, say N. config USB_OHCI_SH bool "OHCI support for SuperH USB controller" depends on USB_OHCI_HCD && SUPERH ---help--- Enables support for the on-chip OHCI controller on the SuperH. If you use the PCI OHCI controller, this option is not necessary. config USB_CNS3XXX_OHCI bool "Cavium CNS3XXX OHCI Module" depends on USB_OHCI_HCD && ARCH_CNS3XXX ---help--- Enable support for the CNS3XXX SOC's on-chip OHCI controller. It is needed for low-speed USB 1.0 device support. config USB_OHCI_BIG_ENDIAN_DESC bool depends on USB_OHCI_HCD default n config USB_OHCI_BIG_ENDIAN_MMIO bool depends on USB_OHCI_HCD default n config USB_OHCI_LITTLE_ENDIAN bool depends on USB_OHCI_HCD default n if STB03xxx || PPC_MPC52xx default y config USB_UHCI_HCD tristate "UHCI HCD (most Intel and VIA) support" depends on USB && PCI ---help--- The Universal Host Controller Interface is a standard by Intel for accessing the USB hardware in the PC (which is also called the USB host controller). If your USB host controller conforms to this standard, you may want to say Y, but see below. All recent boards with Intel PCI chipsets (like intel 430TX, 440FX, 440LX, 440BX, i810, i820) conform to this standard. Also all VIA PCI chipsets (like VIA VP2, VP3, MVP3, Apollo Pro, Apollo Pro II or Apollo Pro 133). If unsure, say Y. To compile this driver as a module, choose M here: the module will be called uhci-hcd. config USB_FHCI_HCD tristate "Freescale QE USB Host Controller support" depends on USB && OF_GPIO && QE_GPIO && QUICC_ENGINE select FSL_GTM select QE_USB help This driver enables support for Freescale QE USB Host Controller (as found on MPC8360 and MPC8323 processors), the driver supports Full and Low Speed USB. config FHCI_DEBUG bool "Freescale QE USB Host Controller debug support" depends on USB_FHCI_HCD && DEBUG_FS help Say "y" to see some FHCI debug information and statistics through debugfs. config USB_U132_HCD tristate "Elan U132 Adapter Host Controller" depends on USB && USB_FTDI_ELAN default M help The U132 adapter is a USB to CardBus adapter specifically designed for PC cards that contain an OHCI host controller. Typical PC cards are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132 adapter will *NOT* work with PC cards that do not contain an OHCI controller. For those PC cards that contain multiple OHCI controllers only the first one is used. The driver consists of two modules, the "ftdi-elan" module is a USB client driver that interfaces to the FTDI chip within ELAN's USB-to-PCMCIA adapter, and this "u132-hcd" module is a USB host controller driver that talks to the OHCI controller within the CardBus cards that are inserted in the U132 adapter. This driver has been tested with a CardBus OHCI USB adapter, and worked with a USB PEN Drive inserted into the first USB port of the PCCARD. A rather pointless thing to do, but useful for testing. It is safe to say M here. See also config USB_SL811_HCD tristate "SL811HS HCD support" depends on USB help The SL811HS is a single-port USB controller that supports either host side or peripheral side roles. Enable this option if your board has this chip, and you want to use it as a host controller. If unsure, say N. To compile this driver as a module, choose M here: the module will be called sl811-hcd. config USB_SL811_CS tristate "CF/PCMCIA support for SL811HS HCD" depends on USB_SL811_HCD && PCMCIA help Wraps a PCMCIA driver around the SL811HS HCD, supporting the RATOC REX-CFU1U CF card (often used with PDAs). If unsure, say N. To compile this driver as a module, choose M here: the module will be called "sl811_cs". config USB_R8A66597_HCD tristate "R8A66597 HCD support" depends on USB help The R8A66597 is a USB 2.0 host and peripheral controller. Enable this option if your board has this chip, and you want to use it as a host controller. If unsure, say N. To compile this driver as a module, choose M here: the module will be called r8a66597-hcd. config USB_WHCI_HCD tristate "Wireless USB Host Controller Interface (WHCI) driver (EXPERIMENTAL)" depends on EXPERIMENTAL depends on PCI && USB select USB_WUSB select UWB_WHCI help A driver for PCI-based Wireless USB Host Controllers that are compliant with the WHCI specification. To compile this driver a module, choose M here: the module will be called "whci-hcd". config USB_HWA_HCD tristate "Host Wire Adapter (HWA) driver (EXPERIMENTAL)" depends on EXPERIMENTAL depends on USB select USB_WUSB select UWB_HWA help This driver enables you to connect Wireless USB devices to your system using a Host Wire Adaptor USB dongle. This is an UWB Radio Controller and WUSB Host Controller connected to your machine via USB (specified in WUSB1.0). To compile this driver a module, choose M here: the module will be called "hwa-hc". config USB_IMX21_HCD tristate "iMX21 HCD support" depends on USB && ARM && MACH_MX21 help This driver enables support for the on-chip USB host in the iMX21 processor. To compile this driver as a module, choose M here: the module will be called "imx21-hcd". config USB_OCTEON_EHCI bool "Octeon on-chip EHCI support" depends on USB && USB_EHCI_HCD && CPU_CAVIUM_OCTEON default n select USB_EHCI_BIG_ENDIAN_MMIO help Enable support for the Octeon II SOC's on-chip EHCI controller. It is needed for high-speed (480Mbit/sec) USB 2.0 device support. All CN6XXX based chips with USB are supported. config USB_OCTEON_OHCI bool "Octeon on-chip OHCI support" depends on USB && USB_OHCI_HCD && CPU_CAVIUM_OCTEON default USB_OCTEON_EHCI select USB_OHCI_BIG_ENDIAN_MMIO select USB_OHCI_LITTLE_ENDIAN help Enable support for the Octeon II SOC's on-chip OHCI controller. It is needed for low-speed USB 1.0 device support. All CN6XXX based chips with USB are supported. config USB_OCTEON2_COMMON bool default y if USB_OCTEON_EHCI || USB_OCTEON_OHCI # # USB Class driver configuration # comment "USB Device Class drivers" depends on USB config USB_ACM tristate "USB Modem (CDC ACM) support" depends on USB ---help--- This driver supports USB modems and ISDN adapters which support the Communication Device Class Abstract Control Model interface. Please read for details. If your modem only reports "Cls=ff(vend.)" in the descriptors in /proc/bus/usb/devices, then your modem will not work with this driver. To compile this driver as a module, choose M here: the module will be called cdc-acm. config USB_PRINTER tristate "USB Printer support" depends on USB help Say Y here if you want to connect a USB printer to your computer's USB port. To compile this driver as a module, choose M here: the module will be called usblp. config USB_WDM tristate "USB Wireless Device Management support" depends on USB ---help--- This driver supports the WMC Device Management functionality of cell phones compliant to the CDC WMC specification. You can use AT commands over this device. To compile this driver as a module, choose M here: the module will be called cdc-wdm. config USB_TMC tristate "USB Test and Measurement Class support" depends on USB help Say Y here if you want to connect a USB device that follows the USB.org specification for USB Test and Measurement devices to your computer's USB port. To compile this driver as a module, choose M here: the module will be called usbtmc. # # USB OTG infrastructure may be needed for peripheral-only, host-only, # or OTG-capable configurations when OTG transceivers or controllers # are used. # comment "OTG and related infrastructure" config USB_OTG_UTILS bool help Select this to make sure the build includes objects from the OTG infrastructure directory. if USB || USB_GADGET # # USB Transceiver Drivers # config USB_GPIO_VBUS tristate "GPIO based peripheral-only VBUS sensing 'transceiver'" depends on GENERIC_GPIO select USB_OTG_UTILS help Provides simple GPIO VBUS sensing for controllers with an internal transceiver via the otg_transceiver interface, and optionally control of a D+ pullup GPIO as well as a VBUS current limit regulator. config ISP1301_OMAP tristate "Philips ISP1301 with OMAP OTG" depends on I2C && ARCH_OMAP_OTG select USB_OTG_UTILS help If you say yes here you get support for the Philips ISP1301 USB-On-The-Go transceiver working with the OMAP OTG controller. The ISP1301 is a full speed USB transceiver which is used in products including H2, H3, and H4 development boards for Texas Instruments OMAP processors. This driver can also be built as a module. If so, the module will be called isp1301_omap. config USB_ULPI bool "Generic ULPI Transceiver Driver" depends on ARM select USB_OTG_UTILS help Enable this to support ULPI connected USB OTG transceivers which are likely found on embedded boards. config USB_ULPI_VIEWPORT bool depends on USB_ULPI help Provides read/write operations to the ULPI phy register set for controllers with a viewport register (e.g. Chipidea/ARC controllers). config TWL4030_USB tristate "TWL4030 USB Transceiver Driver" depends on TWL4030_CORE && REGULATOR_TWL4030 select USB_OTG_UTILS help Enable this to support the USB OTG transceiver on TWL4030 family chips (including the TWL5030 and TPS659x0 devices). This transceiver supports high and full speed devices plus, in host mode, low speed. config TWL6030_USB tristate "TWL6030 USB Transceiver Driver" depends on TWL4030_CORE select USB_OTG_UTILS help Enable this to support the USB OTG transceiver on TWL6030 family chips. This TWL6030 transceiver has the VBUS and ID GND and OTG SRP events capabilities. For all other transceiver functionality UTMI PHY is embedded in OMAP4430. The internal PHY configurations APIs are hooked to this driver through platform_data structure. The definition of internal PHY APIs are in the mach-omap2 layer. config NOP_USB_XCEIV tristate "NOP USB Transceiver Driver" select USB_OTG_UTILS help this driver is to be used by all the usb transceiver which are either built-in with usb ip or which are autonomous and doesn't require any phy programming such as ISP1x04 etc. config USB_LANGWELL_OTG tristate "Intel Langwell USB OTG dual-role support" depends on USB && PCI && INTEL_SCU_IPC select USB_OTG select USB_OTG_UTILS help Say Y here if you want to build Intel Langwell USB OTG transciever driver in kernel. This driver implements role switch between EHCI host driver and Langwell USB OTG client driver. To compile this driver as a module, choose M here: the module will be called langwell_otg. config USB_MSM_OTG tristate "OTG support for Qualcomm on-chip USB controller" depends on (USB || USB_GADGET) && ARCH_MSM select USB_OTG_UTILS help Enable this to support the USB OTG transceiver on MSM chips. It handles PHY initialization, clock management, and workarounds required after resetting the hardware and power management. This driver is required even for peripheral only or host only mode configurations. This driver is not supported on boards like trout which has an external PHY. config AB8500_USB tristate "AB8500 USB Transceiver Driver" depends on AB8500_CORE select USB_OTG_UTILS help Enable this to support the USB OTG transceiver in AB8500 chip. This transceiver supports high and full speed devices plus, in host mode, low speed. endif # USB || OTG # # USB/ATM DSL configuration # menuconfig USB_ATM tristate "USB DSL modem support" depends on USB && ATM select CRC32 default n help Say Y here if you want to connect a USB Digital Subscriber Line (DSL) modem to your computer's USB port. You will then need to choose your modem from the list below. To compile this driver as a module, choose M here: the module will be called usbatm. if USB_ATM config USB_SPEEDTOUCH tristate "Speedtouch USB support" select FW_LOADER help Say Y here if you have an SpeedTouch USB or SpeedTouch 330 modem. In order to use your modem you will need to install the two parts of the firmware, extracted by the user space tools; see for details. To compile this driver as a module, choose M here: the module will be called speedtch. config USB_CXACRU tristate "Conexant AccessRunner USB support" select FW_LOADER help Say Y here if you have an ADSL USB modem based on the Conexant AccessRunner chipset. In order to use your modem you will need to install the firmware, extracted by the user space tools; see for details. To compile this driver as a module, choose M here: the module will be called cxacru. config USB_UEAGLEATM tristate "ADI 930 and eagle USB DSL modem" select FW_LOADER help Say Y here if you have an ADSL USB modem based on the ADI 930 or eagle chipset. In order to use your modem you will need to install firmwares and CMV (Command Management Variables); see for details. To compile this driver as a module, choose M here: the module will be called ueagle-atm. config USB_XUSBATM tristate "Other USB DSL modem support" help Say Y here if you have a DSL USB modem not explicitly supported by another USB DSL drivers. In order to use your modem you will need to pass the vendor ID, product ID, and endpoint numbers for transmission and reception as module parameters. You may need to initialize the modem using a user space utility (a firmware loader for example). To compile this driver as a module, choose M here: the module will be called xusbatm. endif # USB_ATM # # USB Storage driver configuration # comment "NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may" comment "also be needed; see USB_STORAGE Help for more info" depends on USB config USB_STORAGE tristate "USB Mass Storage support" depends on USB && SCSI ---help--- Say Y here if you want to connect USB mass storage devices to your computer's USB port. This is the driver you need for USB floppy drives, USB hard disks, USB tape drives, USB CD-ROMs, USB flash devices, and memory sticks, along with similar devices. This driver may also be used for some cameras and card readers. This option depends on 'SCSI' support being enabled, but you probably also need 'SCSI device support: SCSI disk support' (BLK_DEV_SD) for most USB storage devices. To compile this driver as a module, choose M here: the module will be called usb-storage. config USB_STORAGE_DEBUG bool "USB Mass Storage verbose debug" depends on USB_STORAGE help Say Y here in order to have the USB Mass Storage code generate verbose debugging messages. config USB_STORAGE_REALTEK tristate "Realtek Card Reader support" depends on USB_STORAGE help Say Y here to include additional code to support the power-saving function for Realtek RTS51xx USB card readers. If this driver is compiled as a module, it will be named ums-realtek. config USB_STORAGE_DATAFAB tristate "Datafab Compact Flash Reader support" depends on USB_STORAGE help Support for certain Datafab CompactFlash readers. Datafab has a web page at . If this driver is compiled as a module, it will be named ums-datafab. config USB_STORAGE_FREECOM tristate "Freecom USB/ATAPI Bridge support" depends on USB_STORAGE help Support for the Freecom USB to IDE/ATAPI adaptor. Freecom has a web page at . If this driver is compiled as a module, it will be named ums-freecom. config USB_STORAGE_ISD200 tristate "ISD-200 USB/ATA Bridge support" depends on USB_STORAGE ---help--- Say Y here if you want to use USB Mass Store devices based on the In-Systems Design ISD-200 USB/ATA bridge. Some of the products that use this chip are: - Archos Jukebox 6000 - ISD SmartCable for Storage - Taiwan Skymaster CD530U/DEL-0241 IDE bridge - Sony CRX10U CD-R/RW drive - CyQ've CQ8060A CDRW drive - Planex eXtreme Drive RX-25HU USB-IDE cable (not model RX-25U) If this driver is compiled as a module, it will be named ums-isd200. config USB_STORAGE_USBAT tristate "USBAT/USBAT02-based storage support" depends on USB_STORAGE help Say Y here to include additional code to support storage devices based on the SCM/Shuttle USBAT/USBAT02 processors. Devices reported to work with this driver include: - CompactFlash reader included with Kodak DC3800 camera - Dane-Elec Zmate CompactFlash reader - Delkin Efilm reader2 - HP 8200e/8210e/8230e CD-Writer Plus drives - I-JAM JS-50U - Jessops CompactFlash JESDCFRU BLACK - Kingston Technology PCREAD-USB/CF - Maxell UA4 CompactFlash reader - Memorex UCF-100 - Microtech ZiO! ICS-45 CF2 - RCA LYRA MP3 portable - Sandisk ImageMate SDDR-05b If this driver is compiled as a module, it will be named ums-usbat. config USB_STORAGE_SDDR09 tristate "SanDisk SDDR-09 (and other SmartMedia, including DPCM) support" depends on USB_STORAGE help Say Y here to include additional code to support the Sandisk SDDR-09 SmartMedia reader in the USB Mass Storage driver. Also works for the Microtech Zio! CompactFlash/SmartMedia reader. If this driver is compiled as a module, it will be named ums-sddr09. config USB_STORAGE_SDDR55 tristate "SanDisk SDDR-55 SmartMedia support" depends on USB_STORAGE help Say Y here to include additional code to support the Sandisk SDDR-55 SmartMedia reader in the USB Mass Storage driver. If this driver is compiled as a module, it will be named ums-sddr55. config USB_STORAGE_JUMPSHOT tristate "Lexar Jumpshot Compact Flash Reader" depends on USB_STORAGE help Say Y here to include additional code to support the Lexar Jumpshot USB CompactFlash reader. If this driver is compiled as a module, it will be named ums-jumpshot. config USB_STORAGE_ALAUDA tristate "Olympus MAUSB-10/Fuji DPC-R1 support" depends on USB_STORAGE help Say Y here to include additional code to support the Olympus MAUSB-10 and Fujifilm DPC-R1 USB Card reader/writer devices. These devices are based on the Alauda chip and support both XD and SmartMedia cards. If this driver is compiled as a module, it will be named ums-alauda. config USB_STORAGE_ONETOUCH tristate "Support OneTouch Button on Maxtor Hard Drives" depends on USB_STORAGE depends on INPUT=y || INPUT=USB_STORAGE help Say Y here to include additional code to support the Maxtor OneTouch USB hard drive's onetouch button. This code registers the button on the front of Maxtor OneTouch USB hard drive's as an input device. An action can be associated with this input in any keybinding software. (e.g. gnome's keyboard short- cuts) If this driver is compiled as a module, it will be named ums-onetouch. config USB_STORAGE_KARMA tristate "Support for Rio Karma music player" depends on USB_STORAGE help Say Y here to include additional code to support the Rio Karma USB interface. This code places the Rio Karma into mass storage mode, enabling it to be mounted as an ordinary filesystem. Performing an eject on the resulting scsi device node returns the Karma to normal operation. If this driver is compiled as a module, it will be named ums-karma. config USB_STORAGE_CYPRESS_ATACB tristate "SAT emulation on Cypress USB/ATA Bridge with ATACB" depends on USB_STORAGE ---help--- Say Y here if you want to use SAT (ata pass through) on devices based on the Cypress USB/ATA bridge supporting ATACB. This will allow you to use tools to tune and monitor your drive (like hdparm or smartctl). If you say no here your device will still work with the standard usb mass storage class. If this driver is compiled as a module, it will be named ums-cypress. config USB_STORAGE_ENE_UB6250 tristate "USB ENE card reader support" depends on USB && SCSI depends on USB_STORAGE ---help--- Say Y here if you wish to control a ENE SD Card reader. To use SM/MS card, please build driver/staging/keucr/keucr.ko This option depends on 'SCSI' support being enabled, but you probably also need 'SCSI device support: SCSI disk support' (BLK_DEV_SD) for most USB storage devices. To compile this driver as a module, choose M here: the module will be called ums-eneub6250. config USB_UAS tristate "USB Attached SCSI" depends on USB && SCSI help The USB Attached SCSI protocol is supported by some USB storage devices. It permits higher performance by supporting multiple outstanding commands. If you don't know whether you have a UAS device, it is safe to say 'Y' or 'M' here and the kernel will use the right driver. If you compile this driver as a module, it will be named uas. config USB_LIBUSUAL bool "The shared table of common (or usual) storage devices" depends on USB help This module contains a table of common (or usual) devices for usb-storage and ub drivers, and allows to switch binding of these devices without rebuilding modules. Typical syntax of /etc/modprobe.conf is: options libusual bias="ub" If unsure, say N. # # USB Dual Role (OTG-ready) Controller Drivers # for silicon based on Mentor Graphics INVENTRA designs # comment "Enable Host or Gadget support to see Inventra options" depends on !USB && USB_GADGET=n # (M)HDRC = (Multipoint) Highspeed Dual-Role Controller config USB_MUSB_HDRC depends on (USB || USB_GADGET) depends on (ARM || (BF54x && !BF544) || (BF52x && !BF522 && !BF523)) select NOP_USB_XCEIV if (ARCH_DAVINCI || MACH_OMAP3EVM || BLACKFIN) select TWL4030_USB if MACH_OMAP_3430SDP select TWL6030_USB if MACH_OMAP_4430SDP || MACH_OMAP4_PANDA select USB_OTG_UTILS bool 'Inventra Highspeed Dual Role Controller (TI, ADI, ...)' help Say Y here if your system has a dual role high speed USB controller based on the Mentor Graphics silicon IP. Then configure options to match your silicon and the board it's being used with, including the USB peripheral role, or the USB host role, or both. Texas Instruments familiies using this IP include DaVinci (35x, 644x ...), OMAP 243x, OMAP 3, and TUSB 6010. Analog Devices parts using this IP include Blackfin BF54x, BF525 and BF527. If you do not know what this is, please say N. # To compile this driver as a module, choose M here; the # module will be called "musb-hdrc". choice prompt "Platform Glue Layer" depends on USB_MUSB_HDRC config USB_MUSB_DAVINCI bool "DaVinci" depends on ARCH_DAVINCI_DMx config USB_MUSB_DA8XX bool "DA8xx/OMAP-L1x" depends on ARCH_DAVINCI_DA8XX config USB_MUSB_TUSB6010 bool "TUSB6010" depends on ARCH_OMAP config USB_MUSB_OMAP2PLUS bool "OMAP2430 and onwards" depends on ARCH_OMAP2PLUS config USB_MUSB_AM35X bool "AM35x" depends on ARCH_OMAP config USB_MUSB_BLACKFIN bool "Blackfin" depends on (BF54x && !BF544) || (BF52x && ! BF522 && !BF523) config USB_MUSB_UX500 bool "U8500 and U5500" depends on (ARCH_U8500 && AB8500_USB) || (ARCH_U5500) endchoice choice prompt "Driver Mode" depends on USB_MUSB_HDRC help Dual-Role devices can support both host and peripheral roles, as well as a the special "OTG Device" role which can switch between both roles as needed. # use USB_MUSB_HDRC_HCD not USB_MUSB_HOST to #ifdef host side support; # OTG needs both roles, not just USB_MUSB_HOST. config USB_MUSB_HOST depends on USB bool "USB Host" help Say Y here if your system supports the USB host role. If it has a USB "A" (rectangular), "Mini-A" (uncommon), or "Mini-AB" connector, it supports the host role. (With a "Mini-AB" connector, you should enable USB OTG.) # use USB_GADGET_MUSB_HDRC not USB_MUSB_PERIPHERAL to #ifdef peripheral # side support ... OTG needs both roles config USB_MUSB_PERIPHERAL depends on USB_GADGET bool "USB Peripheral (gadget stack)" select USB_GADGET_MUSB_HDRC help Say Y here if your system supports the USB peripheral role. If it has a USB "B" (squarish), "Mini-B", or "Mini-AB" connector, it supports the peripheral role. (With a "Mini-AB" connector, you should enable USB OTG.) config USB_MUSB_OTG depends on USB && USB_GADGET && PM && EXPERIMENTAL bool "Both host and peripheral: USB OTG (On The Go) Device" select USB_GADGET_MUSB_HDRC select USB_OTG help The most notable feature of USB OTG is support for a "Dual-Role" device, which can act as either a device or a host. The initial role choice can be changed later, when two dual-role devices talk to each other. At this writing, the OTG support in this driver is incomplete, omitting the mandatory HNP or SRP protocols. However, some of the cable based role switching works. (That is, grounding the ID pin switches the controller to host mode, while leaving it floating leaves it in peripheral mode.) Select this if your system has a Mini-AB connector, or to simplify certain kinds of configuration. To implement your OTG Targeted Peripherals List (TPL), enable USB_OTG_WHITELIST and update "drivers/usb/core/otg_whitelist.h" to match your requirements. endchoice # enable peripheral support (including with OTG) config USB_GADGET_MUSB_HDRC bool depends on USB_MUSB_HDRC && (USB_MUSB_PERIPHERAL || USB_MUSB_OTG) # default y # select USB_GADGET_DUALSPEED # select USB_GADGET_SELECTED # enables host support (including with OTG) config USB_MUSB_HDRC_HCD bool depends on USB_MUSB_HDRC && (USB_MUSB_HOST || USB_MUSB_OTG) select USB_OTG if USB_GADGET_MUSB_HDRC default y config MUSB_PIO_ONLY bool 'Disable DMA (always use PIO)' depends on USB_MUSB_HDRC default USB_MUSB_TUSB6010 || USB_MUSB_DA8XX || USB_MUSB_AM35X help All data is copied between memory and FIFO by the CPU. DMA controllers are ignored. Do not select 'n' here unless DMA support for your SOC or board is unavailable (or unstable). When DMA is enabled at compile time, you can still disable it at run time using the "use_dma=n" module parameter. config USB_INVENTRA_DMA bool depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY default USB_MUSB_OMAP2PLUS || USB_MUSB_BLACKFIN help Enable DMA transfers using Mentor's engine. config USB_TI_CPPI_DMA bool depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY default USB_MUSB_DAVINCI help Enable DMA transfers when TI CPPI DMA is available. config USB_TUSB_OMAP_DMA bool depends on USB_MUSB_HDRC && !MUSB_PIO_ONLY depends on USB_MUSB_TUSB6010 depends on ARCH_OMAP default y help Enable DMA transfers on TUSB 6010 when OMAP DMA is available. config USB_MUSB_DEBUG depends on USB_MUSB_HDRC bool "Enable debugging messages" default n help This enables musb debugging. To set the logging level use the debug module parameter. Starting at level 3, per-transfer (urb, usb_request, packet, or dma transfer) tracing may kick in. # # USB Core configuration # config USB_DEBUG bool "USB verbose debug messages" depends on USB help Say Y here if you want the USB core & hub drivers to produce a bunch of debug messages to the system log. Select this if you are having a problem with USB support and want to see more of what is going on. config USB_ANNOUNCE_NEW_DEVICES bool "USB announce new devices" depends on USB default N help Say Y here if you want the USB core to always announce the idVendor, idProduct, Manufacturer, Product, and SerialNumber strings for every new USB device to the syslog. This option is usually used by distro vendors to help with debugging and to let users know what specific device was added to the machine in what location. If you do not want this kind of information sent to the system log, or have any doubts about this, say N here. comment "Miscellaneous USB options" depends on USB config USB_DEVICEFS bool "USB device filesystem (DEPRECATED)" depends on USB ---help--- If you say Y here (and to "/proc file system support" in the "File systems" section, above), you will get a file /proc/bus/usb/devices which lists the devices currently connected to your USB bus or busses, and for every connected device a file named "/proc/bus/usb/xxx/yyy", where xxx is the bus number and yyy the device number; the latter files can be used by user space programs to talk directly to the device. These files are "virtual", meaning they are generated on the fly and not stored on the hard drive. You may need to mount the usbfs file system to see the files, use mount -t usbfs none /proc/bus/usb For the format of the various /proc/bus/usb/ files, please read . Modern Linux systems do not use this. Usbfs entries are files and not character devices; usbfs can't handle Access Control Lists (ACL) which are the default way to grant access to USB devices for untrusted users of a desktop system. The usbfs functionality is replaced by real device-nodes managed by udev. These nodes lived in /dev/bus/usb and are used by libusb. config USB_DEVICE_CLASS bool "USB device class-devices (DEPRECATED)" depends on USB default y ---help--- Userspace access to USB devices is granted by device-nodes exported directly from the usbdev in sysfs. Old versions of the driver core and udev needed additional class devices to export device nodes. These additional devices are difficult to handle in userspace, if information about USB interfaces must be available. One device contains the device node, the other device contains the interface data. Both devices are at the same level in sysfs (siblings) and one can't access the other. The device node created directly by the usb device is the parent device of the interface and therefore easily accessible from the interface event. This option provides backward compatibility for libusb device nodes (lsusb) when usbfs is not used, and the following udev rule doesn't exist: SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", \ NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}", MODE="0644" config USB_DYNAMIC_MINORS bool "Dynamic USB minor allocation" depends on USB help If you say Y here, the USB subsystem will use dynamic minor allocation for any device that uses the USB major number. This means that you can have more than 16 of a single type of device (like USB printers). If you are unsure about this, say N here. config USB_SUSPEND bool "USB runtime power management (autosuspend) and wakeup" depends on USB && PM_RUNTIME help If you say Y here, you can use driver calls or the sysfs "power/control" file to enable or disable autosuspend for individual USB peripherals (see Documentation/usb/power-management.txt for more details). Also, USB "remote wakeup" signaling is supported, whereby some USB devices (like keyboards and network adapters) can wake up their parent hub. That wakeup cascades up the USB tree, and could wake the system from states like suspend-to-RAM. If you are unsure about this, say N here. config USB_OTG bool "OTG support" depends on USB && EXPERIMENTAL depends on USB_SUSPEND default n help The most notable feature of USB OTG is support for a "Dual-Role" device, which can act as either a device or a host. The initial role is decided by the type of plug inserted and can be changed later when two dual role devices talk to each other. Select this only if your board has Mini-AB/Micro-AB connector. config USB_OTG_WHITELIST bool "Rely on OTG Targeted Peripherals List" depends on USB_OTG || EXPERT default y if USB_OTG default n if EXPERT help If you say Y here, the "otg_whitelist.h" file will be used as a product whitelist, so USB peripherals not listed there will be rejected during enumeration. This behavior is required by the USB OTG specification for all devices not on your product's "Targeted Peripherals List". "Embedded Hosts" are likewise allowed to support only a limited number of peripherals. Otherwise, peripherals not listed there will only generate a warning and enumeration will continue. That's more like what normal Linux-USB hosts do (other than the warning), and is convenient for many stages of product development. config USB_OTG_BLACKLIST_HUB bool "Disable external hubs" depends on USB_OTG || EXPERT help If you say Y here, then Linux will refuse to enumerate external hubs. OTG hosts are allowed to reduce hardware and software costs by not supporting external hubs. So are "Embedded Hosts" that don't offer OTG support. # # USB Imaging devices configuration # comment "USB Imaging devices" depends on USB config USB_MDC800 tristate "USB Mustek MDC800 Digital Camera support" depends on USB ---help--- Say Y here if you want to connect this type of still camera to your computer's USB port. This driver can be used with gphoto 0.4.3 and higher (look at ). To use it create a device node with "mknod /dev/mustek c 180 32" and configure it in your software. To compile this driver as a module, choose M here: the module will be called mdc800. config USB_MICROTEK tristate "Microtek X6USB scanner support" depends on USB && SCSI help Say Y here if you want support for the Microtek X6USB and possibly the Phantom 336CX, Phantom C6 and ScanMaker V6U(S)L. Support for anything but the X6 is experimental. Please report failures and successes. The scanner will appear as a scsi generic device to the rest of the system. Scsi support is required. This driver can be compiled as a module, called microtek. config USB_SISUSBVGA tristate "USB 2.0 SVGA dongle support (Net2280/SiS315)" depends on USB && (USB_MUSB_HDRC || USB_EHCI_HCD) ---help--- Say Y here if you intend to attach a USB2VGA dongle based on a Net2280 and a SiS315 chip. Note that this device requires a USB 2.0 host controller. It will not work with USB 1.x controllers. To compile this driver as a module, choose M here; the module will be called sisusbvga. If unsure, say N. config USB_SISUSBVGA_CON bool "Text console and mode switching support" if USB_SISUSBVGA depends on VT select FONT_8x16 ---help--- Say Y here if you want a VGA text console via the USB dongle or want to support userland applications that utilize the driver's display mode switching capabilities. Note that this console supports VGA/EGA text mode only. By default, the console part of the driver will not kick in when the driver is initialized. If you want the driver to take over one or more of the consoles, you need to specify the number of the first and last consoles (starting at 1) as driver parameters. For example, if the driver is compiled as a module: modprobe sisusbvga first=1 last=5 If you use hotplug, add this to your modutils config files with the "options" keyword, such as eg. options sisusbvga first=1 last=5 If the driver is compiled into the kernel image, the parameters must be given in the kernel command like, such as sisusbvga.first=1 sisusbvga.last=5 # # USB Miscellaneous driver configuration # comment "USB Miscellaneous drivers" depends on USB config USB_EMI62 tristate "EMI 6|2m USB Audio interface support" depends on USB ---help--- This driver loads firmware to Emagic EMI 6|2m low latency USB Audio and Midi interface. After firmware load the device is handled with standard linux USB Audio driver. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called audio. If you want to compile it as a module, say M here and read . config USB_EMI26 tristate "EMI 2|6 USB Audio interface support" depends on USB ---help--- This driver loads firmware to Emagic EMI 2|6 low latency USB Audio interface. After firmware load the device is handled with standard linux USB Audio driver. To compile this driver as a module, choose M here: the module will be called emi26. config USB_ADUTUX tristate "ADU devices from Ontrak Control Systems" depends on USB help Say Y if you want to use an ADU device from Ontrak Control Systems. To compile this driver as a module, choose M here. The module will be called adutux. config USB_SEVSEG tristate "USB 7-Segment LED Display" depends on USB help Say Y here if you have a USB 7-Segment Display by Delcom To compile this driver as a module, choose M here: the module will be called usbsevseg. config USB_RIO500 tristate "USB Diamond Rio500 support" depends on USB help Say Y here if you want to connect a USB Rio500 mp3 player to your computer's USB port. Please read for more information. To compile this driver as a module, choose M here: the module will be called rio500. config USB_LEGOTOWER tristate "USB Lego Infrared Tower support" depends on USB help Say Y here if you want to connect a USB Lego Infrared Tower to your computer's USB port. This code is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called legousbtower. If you want to compile it as a module, say M here and read . config USB_LCD tristate "USB LCD driver support" depends on USB help Say Y here if you want to connect an USBLCD to your computer's USB port. The USBLCD is a small USB interface board for alphanumeric LCD modules. See for more information. To compile this driver as a module, choose M here: the module will be called usblcd. config USB_LED tristate "USB LED driver support" depends on USB help Say Y here if you want to connect an USBLED device to your computer's USB port. To compile this driver as a module, choose M here: the module will be called usbled. config USB_CYPRESS_CY7C63 tristate "Cypress CY7C63xxx USB driver support" depends on USB help Say Y here if you want to connect a Cypress CY7C63xxx micro controller to your computer's USB port. Currently this driver supports the pre-programmed devices (incl. firmware) by AK Modul-Bus Computer GmbH. Please see: http://www.ak-modul-bus.de/stat/mikrocontroller.html To compile this driver as a module, choose M here: the module will be called cypress_cy7c63. config USB_CYTHERM tristate "Cypress USB thermometer driver support" depends on USB help Say Y here if you want to connect a Cypress USB thermometer device to your computer's USB port. This device is also known as the Cypress USB Starter kit or demo board. The Elektor magazine published a modified version of this device in issue #291. To compile this driver as a module, choose M here: the module will be called cytherm. config USB_IDMOUSE tristate "Siemens ID USB Mouse Fingerprint sensor support" depends on USB help Say Y here if you want to use the fingerprint sensor on the Siemens ID Mouse. There is also a Siemens ID Mouse _Professional_, which has not been tested with this driver, but uses the same sensor and may therefore work. This driver creates an entry "/dev/idmouseX" or "/dev/usb/idmouseX", which can be used by, e.g.,"cat /dev/idmouse0 > fingerprint.pnm". See also . config USB_FTDI_ELAN tristate "Elan PCMCIA CardBus Adapter USB Client" depends on USB default M help ELAN's Uxxx series of adapters are USB to PCMCIA CardBus adapters. Currently only the U132 adapter is available. The U132 is specifically designed for CardBus PC cards that contain an OHCI host controller. Typical PC cards are the Orange Mobile 3G Option GlobeTrotter Fusion card. The U132 adapter will *NOT* work with PC cards that do not contain an OHCI controller. To use a U132 adapter you will need this "ftdi-elan" module as well as the "u132-hcd" module which is a USB host controller driver that talks to the OHCI controller within CardBus card that are inserted in the U132 adapter. This driver has been tested with a CardBus OHCI USB adapter, and worked with a USB PEN Drive inserted into the first USB port of the PCCARD. A rather pointless thing to do, but useful for testing. See also the USB_U132_HCD entry "Elan U132 Adapter Host Controller" It is safe to say M here. config USB_APPLEDISPLAY tristate "Apple Cinema Display support" depends on USB select BACKLIGHT_LCD_SUPPORT select BACKLIGHT_CLASS_DEVICE help Say Y here if you want to control the backlight of Apple Cinema Displays over USB. This driver provides a sysfs interface. source "drivers/usb/misc/sisusbvga/Kconfig" config USB_LD tristate "USB LD driver" depends on USB help This driver is for generic USB devices that use interrupt transfers, like LD Didactic's USB devices. To compile this driver as a module, choose M here: the module will be called ldusb. config USB_TRANCEVIBRATOR tristate "PlayStation 2 Trance Vibrator driver support" depends on USB help Say Y here if you want to connect a PlayStation 2 Trance Vibrator device to your computer's USB port. To compile this driver as a module, choose M here: the module will be called trancevibrator. config USB_IOWARRIOR tristate "IO Warrior driver support" depends on USB help Say Y here if you want to support the IO Warrior devices from Code Mercenaries. This includes support for the following devices: IO Warrior 40 IO Warrior 24 IO Warrior 56 IO Warrior 24 Power Vampire To compile this driver as a module, choose M here: the module will be called iowarrior. config USB_TEST tristate "USB testing driver" depends on USB help This driver is for testing host controller software. It is used with specialized device firmware for regression and stress testing, to help prevent problems from cropping up with "real" drivers. See for more information, including sample test device firmware and "how to use it". config USB_ISIGHTFW tristate "iSight firmware loading support" depends on USB select FW_LOADER help This driver loads firmware for USB Apple iSight cameras, allowing them to be driven by the USB video class driver available at http://linux-uvc.berlios.de The firmware for this driver must be extracted from the MacOS driver beforehand. Tools for doing so are available at http://bersace03.free.fr config USB_YUREX tristate "USB YUREX driver support" depends on USB help Say Y here if you want to connect a YUREX to your computer's USB port. The YUREX is a leg-shakes sensor. See for further information. This driver supports read/write of leg-shakes counter and fasync for the counter update via a device file /dev/yurex*. To compile this driver as a module, choose M here: the module will be called yurex. # # USB Gadget support on a system involves # (a) a peripheral controller, and # (b) the gadget driver using it. # # NOTE: Gadget support ** DOES NOT ** depend on host-side CONFIG_USB !! # # - Host systems (like PCs) need CONFIG_USB (with "A" jacks). # - Peripherals (like PDAs) need CONFIG_USB_GADGET (with "B" jacks). # - Some systems have both kinds of controllers. # # With help from a special transceiver and a "Mini-AB" jack, systems with # both kinds of controller can also support "USB On-the-Go" (CONFIG_USB_OTG). # menuconfig USB_GADGET tristate "USB Gadget Support" help USB is a master/slave protocol, organized with one master host (such as a PC) controlling up to 127 peripheral devices. The USB hardware is asymmetric, which makes it easier to set up: you can't connect a "to-the-host" connector to a peripheral. Linux can run in the host, or in the peripheral. In both cases you need a low level bus controller driver, and some software talking to it. Peripheral controllers are often discrete silicon, or are integrated with the CPU in a microcontroller. The more familiar host side controllers have names like "EHCI", "OHCI", or "UHCI", and are usually integrated into southbridges on PC motherboards. Enable this configuration option if you want to run Linux inside a USB peripheral device. Configure one hardware driver for your peripheral/device side bus controller, and a "gadget driver" for your peripheral protocol. (If you use modular gadget drivers, you may configure more than one.) If in doubt, say "N" and don't enable these drivers; most people don't have this kind of hardware (except maybe inside Linux PDAs). For more information, see and the kernel DocBook documentation for this API. if USB_GADGET config USB_GADGET_DEBUG boolean "Debugging messages (DEVELOPMENT)" depends on DEBUG_KERNEL help Many controller and gadget drivers will print some debugging messages if you use this option to ask for those messages. Avoid enabling these messages, even if you're actively debugging such a driver. Many drivers will emit so many messages that the driver timings are affected, which will either create new failure modes or remove the one you're trying to track down. Never enable these messages for a production build. config USB_GADGET_DEBUG_FILES boolean "Debugging information files (DEVELOPMENT)" depends on PROC_FS help Some of the drivers in the "gadget" framework can expose debugging information in files such as /proc/driver/udc (for a peripheral controller). The information in these files may help when you're troubleshooting or bringing up a driver on a new board. Enable these files by choosing "Y" here. If in doubt, or to conserve kernel memory, say "N". config USB_GADGET_DEBUG_FS boolean "Debugging information files in debugfs (DEVELOPMENT)" depends on DEBUG_FS help Some of the drivers in the "gadget" framework can expose debugging information in files under /sys/kernel/debug/. The information in these files may help when you're troubleshooting or bringing up a driver on a new board. Enable these files by choosing "Y" here. If in doubt, or to conserve kernel memory, say "N". config USB_GADGET_VBUS_DRAW int "Maximum VBUS Power usage (2-500 mA)" range 2 500 default 2 help Some devices need to draw power from USB when they are configured, perhaps to operate circuitry or to recharge batteries. This is in addition to any local power supply, such as an AC adapter or batteries. Enter the maximum power your device draws through USB, in milliAmperes. The permitted range of values is 2 - 500 mA; 0 mA would be legal, but can make some hosts misbehave. This value will be used except for system-specific gadget drivers that have more specific information. config USB_GADGET_SELECTED boolean # # USB Peripheral Controller Support # # The order here is alphabetical, except that integrated controllers go # before discrete ones so they will be the initial/default value: # - integrated/SOC controllers first # - licensed IP used in both SOC and discrete versions # - discrete ones (including all PCI-only controllers) # - debug/dummy gadget+hcd is last. # choice prompt "USB Peripheral Controller" depends on USB_GADGET help A USB device uses a controller to talk to its host. Systems should have only one such upstream link. Many controller drivers are platform-specific; these often need board-specific hooks. # # Integrated controllers # config USB_GADGET_AT91 boolean "Atmel AT91 USB Device Port" depends on ARCH_AT91 && !ARCH_AT91SAM9RL && !ARCH_AT91CAP9 && !ARCH_AT91SAM9G45 select USB_GADGET_SELECTED help Many Atmel AT91 processors (such as the AT91RM2000) have a full speed USB Device Port with support for five configurable endpoints (plus endpoint zero). Say "y" to link the driver statically, or "m" to build a dynamically linked module called "at91_udc" and force all gadget drivers to also be dynamically linked. config USB_AT91 tristate depends on USB_GADGET_AT91 default USB_GADGET config USB_GADGET_ATMEL_USBA boolean "Atmel USBA" select USB_GADGET_DUALSPEED depends on AVR32 || ARCH_AT91CAP9 || ARCH_AT91SAM9RL || ARCH_AT91SAM9G45 help USBA is the integrated high-speed USB Device controller on the AT32AP700x, some AT91SAM9 and AT91CAP9 processors from Atmel. config USB_ATMEL_USBA tristate depends on USB_GADGET_ATMEL_USBA default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_FSL_USB2 boolean "Freescale Highspeed USB DR Peripheral Controller" depends on FSL_SOC || ARCH_MXC select USB_GADGET_DUALSPEED select USB_FSL_MPH_DR_OF if OF help Some of Freescale PowerPC processors have a High Speed Dual-Role(DR) USB controller, which supports device mode. The number of programmable endpoints is different through SOC revisions. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "fsl_usb2_udc" and force all gadget drivers to also be dynamically linked. config USB_FSL_USB2 tristate depends on USB_GADGET_FSL_USB2 default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_FUSB300 boolean "Faraday FUSB300 USB Peripheral Controller" select USB_GADGET_DUALSPEED help Faraday usb device controller FUSB300 driver config USB_FUSB300 tristate depends on USB_GADGET_FUSB300 default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_OMAP boolean "OMAP USB Device Controller" depends on ARCH_OMAP select ISP1301_OMAP if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_H4_OTG select USB_OTG_UTILS if ARCH_OMAP help Many Texas Instruments OMAP processors have flexible full speed USB device controllers, with support for up to 30 endpoints (plus endpoint zero). This driver supports the controller in the OMAP 1611, and should work with controllers in other OMAP processors too, given minor tweaks. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "omap_udc" and force all gadget drivers to also be dynamically linked. config USB_OMAP tristate depends on USB_GADGET_OMAP default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_PXA25X boolean "PXA 25x or IXP 4xx" depends on (ARCH_PXA && PXA25x) || ARCH_IXP4XX select USB_OTG_UTILS help Intel's PXA 25x series XScale ARM-5TE processors include an integrated full speed USB 1.1 device controller. The controller in the IXP 4xx series is register-compatible. It has fifteen fixed-function endpoints, as well as endpoint zero (for control transfers). Say "y" to link the driver statically, or "m" to build a dynamically linked module called "pxa25x_udc" and force all gadget drivers to also be dynamically linked. config USB_PXA25X tristate depends on USB_GADGET_PXA25X default USB_GADGET select USB_GADGET_SELECTED # if there's only one gadget driver, using only two bulk endpoints, # don't waste memory for the other endpoints config USB_PXA25X_SMALL depends on USB_GADGET_PXA25X bool default n if USB_ETH_RNDIS default y if USB_ZERO default y if USB_ETH default y if USB_G_SERIAL config USB_GADGET_R8A66597 boolean "Renesas R8A66597 USB Peripheral Controller" select USB_GADGET_DUALSPEED help R8A66597 is a discrete USB host and peripheral controller chip that supports both full and high speed USB 2.0 data transfers. It has nine configurable endpoints, and endpoint zero. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "r8a66597_udc" and force all gadget drivers to also be dynamically linked. config USB_R8A66597 tristate depends on USB_GADGET_R8A66597 default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_PXA27X boolean "PXA 27x" depends on ARCH_PXA && (PXA27x || PXA3xx) select USB_OTG_UTILS help Intel's PXA 27x series XScale ARM v5TE processors include an integrated full speed USB 1.1 device controller. It has up to 23 endpoints, as well as endpoint zero (for control transfers). Say "y" to link the driver statically, or "m" to build a dynamically linked module called "pxa27x_udc" and force all gadget drivers to also be dynamically linked. config USB_PXA27X tristate depends on USB_GADGET_PXA27X default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_S3C_HSOTG boolean "S3C HS/OtG USB Device controller" depends on S3C_DEV_USB_HSOTG select USB_GADGET_S3C_HSOTG_PIO select USB_GADGET_DUALSPEED help The Samsung S3C64XX USB2.0 high-speed gadget controller integrated into the S3C64XX series SoC. config USB_S3C_HSOTG tristate depends on USB_GADGET_S3C_HSOTG default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_IMX boolean "Freescale IMX USB Peripheral Controller" depends on ARCH_MX1 help Freescale's IMX series include an integrated full speed USB 1.1 device controller. The controller in the IMX series is register-compatible. It has Six fixed-function endpoints, as well as endpoint zero (for control transfers). Say "y" to link the driver statically, or "m" to build a dynamically linked module called "imx_udc" and force all gadget drivers to also be dynamically linked. config USB_IMX tristate depends on USB_GADGET_IMX default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_S3C2410 boolean "S3C2410 USB Device Controller" depends on ARCH_S3C2410 help Samsung's S3C2410 is an ARM-4 processor with an integrated full speed USB 1.1 device controller. It has 4 configurable endpoints, as well as endpoint zero (for control transfers). This driver has been tested on the S3C2410, S3C2412, and S3C2440 processors. config USB_S3C2410 tristate depends on USB_GADGET_S3C2410 default USB_GADGET select USB_GADGET_SELECTED config USB_S3C2410_DEBUG boolean "S3C2410 udc debug messages" depends on USB_GADGET_S3C2410 config USB_GADGET_PXA_U2O boolean "PXA9xx Processor USB2.0 controller" select USB_GADGET_DUALSPEED help PXA9xx Processor series include a high speed USB2.0 device controller, which support high speed and full speed USB peripheral. config USB_PXA_U2O tristate depends on USB_GADGET_PXA_U2O default USB_GADGET select USB_GADGET_SELECTED # # Controllers available in both integrated and discrete versions # # musb builds in ../musb along with host support config USB_GADGET_MUSB_HDRC boolean "Inventra HDRC USB Peripheral (TI, ADI, ...)" depends on USB_MUSB_HDRC && (USB_MUSB_PERIPHERAL || USB_MUSB_OTG) select USB_GADGET_DUALSPEED select USB_GADGET_SELECTED help This OTG-capable silicon IP is used in dual designs including the TI DaVinci, OMAP 243x, OMAP 343x, TUSB 6010, and ADI Blackfin config USB_GADGET_M66592 boolean "Renesas M66592 USB Peripheral Controller" select USB_GADGET_DUALSPEED help M66592 is a discrete USB peripheral controller chip that supports both full and high speed USB 2.0 data transfers. It has seven configurable endpoints, and endpoint zero. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "m66592_udc" and force all gadget drivers to also be dynamically linked. config USB_M66592 tristate depends on USB_GADGET_M66592 default USB_GADGET select USB_GADGET_SELECTED # # Controllers available only in discrete form (and all PCI controllers) # config USB_GADGET_AMD5536UDC boolean "AMD5536 UDC" depends on PCI select USB_GADGET_DUALSPEED help The AMD5536 UDC is part of the AMD Geode CS5536, an x86 southbridge. It is a USB Highspeed DMA capable USB device controller. Beside ep0 it provides 4 IN and 4 OUT endpoints (bulk or interrupt type). The UDC port supports OTG operation, and may be used as a host port if it's not being used to implement peripheral or OTG roles. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "amd5536udc" and force all gadget drivers to also be dynamically linked. config USB_AMD5536UDC tristate depends on USB_GADGET_AMD5536UDC default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_FSL_QE boolean "Freescale QE/CPM USB Device Controller" depends on FSL_SOC && (QUICC_ENGINE || CPM) help Some of Freescale PowerPC processors have a Full Speed QE/CPM2 USB controller, which support device mode with 4 programmable endpoints. This driver supports the controller in the MPC8360 and MPC8272, and should work with controllers having QE or CPM2, given minor tweaks. Set CONFIG_USB_GADGET to "m" to build this driver as a dynamically linked module called "fsl_qe_udc". config USB_FSL_QE tristate depends on USB_GADGET_FSL_QE default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_CI13XXX_PCI boolean "MIPS USB CI13xxx PCI UDC" depends on PCI select USB_GADGET_DUALSPEED help MIPS USB IP core family device controller Currently it only supports IP part number CI13412 Say "y" to link the driver statically, or "m" to build a dynamically linked module called "ci13xxx_udc" and force all gadget drivers to also be dynamically linked. config USB_CI13XXX_PCI tristate depends on USB_GADGET_CI13XXX_PCI default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_NET2280 boolean "NetChip 228x" depends on PCI select USB_GADGET_DUALSPEED help NetChip 2280 / 2282 is a PCI based USB peripheral controller which supports both full and high speed USB 2.0 data transfers. It has six configurable endpoints, as well as endpoint zero (for control transfers) and several endpoints with dedicated functions. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "net2280" and force all gadget drivers to also be dynamically linked. config USB_NET2280 tristate depends on USB_GADGET_NET2280 default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_GOKU boolean "Toshiba TC86C001 'Goku-S'" depends on PCI help The Toshiba TC86C001 is a PCI device which includes controllers for full speed USB devices, IDE, I2C, SIO, plus a USB host (OHCI). The device controller has three configurable (bulk or interrupt) endpoints, plus endpoint zero (for control transfers). Say "y" to link the driver statically, or "m" to build a dynamically linked module called "goku_udc" and to force all gadget drivers to also be dynamically linked. config USB_GOKU tristate depends on USB_GADGET_GOKU default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_LANGWELL boolean "Intel Langwell USB Device Controller" depends on PCI select USB_GADGET_DUALSPEED help Intel Langwell USB Device Controller is a High-Speed USB On-The-Go device controller. The number of programmable endpoints is different through controller revision. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "langwell_udc" and force all gadget drivers to also be dynamically linked. config USB_LANGWELL tristate depends on USB_GADGET_LANGWELL default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_EG20T boolean "Intel EG20T PCH/OKI SEMICONDUCTOR ML7213 IOH UDC" depends on PCI select USB_GADGET_DUALSPEED help This is a USB device driver for EG20T PCH. EG20T PCH is the platform controller hub that is used in Intel's general embedded platform. EG20T PCH has USB device interface. Using this interface, it is able to access system devices connected to USB device. This driver enables USB device function. USB device is a USB peripheral controller which supports both full and high speed USB 2.0 data transfers. This driver supports both control transfer and bulk transfer modes. This driver dose not support interrupt transfer or isochronous transfer modes. This driver also can be used for OKI SEMICONDUCTOR's ML7213 which is for IVI(In-Vehicle Infotainment) use. ML7213 is companion chip for Intel Atom E6xx series. ML7213 is completely compatible for Intel EG20T PCH. config USB_EG20T tristate depends on USB_GADGET_EG20T default USB_GADGET select USB_GADGET_SELECTED config USB_GADGET_CI13XXX_MSM boolean "MIPS USB CI13xxx for MSM" depends on ARCH_MSM select USB_GADGET_DUALSPEED select USB_MSM_OTG help MSM SoC has chipidea USB controller. This driver uses ci13xxx_udc core. This driver depends on OTG driver for PHY initialization, clock management, powering up VBUS, and power management. This driver is not supported on boards like trout which has an external PHY. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "ci13xxx_msm" and force all gadget drivers to also be dynamically linked. config USB_CI13XXX_MSM tristate depends on USB_GADGET_CI13XXX_MSM default USB_GADGET select USB_GADGET_SELECTED # # LAST -- dummy/emulated controller # config USB_GADGET_DUMMY_HCD boolean "Dummy HCD (DEVELOPMENT)" depends on USB=y || (USB=m && USB_GADGET=m) select USB_GADGET_DUALSPEED help This host controller driver emulates USB, looping all data transfer requests back to a USB "gadget driver" in the same host. The host side is the master; the gadget side is the slave. Gadget drivers can be high, full, or low speed; and they have access to endpoints like those from NET2280, PXA2xx, or SA1100 hardware. This may help in some stages of creating a driver to embed in a Linux device, since it lets you debug several parts of the gadget driver without its hardware or drivers being involved. Since such a gadget side driver needs to interoperate with a host side Linux-USB device driver, this may help to debug both sides of a USB protocol stack. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "dummy_hcd" and force all gadget drivers to also be dynamically linked. config USB_DUMMY_HCD tristate depends on USB_GADGET_DUMMY_HCD default USB_GADGET select USB_GADGET_SELECTED # NOTE: Please keep dummy_hcd LAST so that "real hardware" appears # first and will be selected by default. endchoice config USB_GADGET_DUALSPEED bool depends on USB_GADGET default n help Means that gadget drivers should include extra descriptors and code to handle dual-speed controllers. # # USB Gadget Drivers # choice tristate "USB Gadget Drivers" depends on USB_GADGET && USB_GADGET_SELECTED default USB_ETH help A Linux "Gadget Driver" talks to the USB Peripheral Controller driver through the abstract "gadget" API. Some other operating systems call these "client" drivers, of which "class drivers" are a subset (implementing a USB device class specification). A gadget driver implements one or more USB functions using the peripheral hardware. Gadget drivers are hardware-neutral, or "platform independent", except that they sometimes must understand quirks or limitations of the particular controllers they work with. For example, when a controller doesn't support alternate configurations or provide enough of the right types of endpoints, the gadget driver might not be able work with that controller, or might need to implement a less common variant of a device class protocol. # this first set of drivers all depend on bulk-capable hardware. config USB_ZERO tristate "Gadget Zero (DEVELOPMENT)" help Gadget Zero is a two-configuration device. It either sinks and sources bulk data; or it loops back a configurable number of transfers. It also implements control requests, for "chapter 9" conformance. The driver needs only two bulk-capable endpoints, so it can work on top of most device-side usb controllers. It's useful for testing, and is also a working example showing how USB "gadget drivers" can be written. Make this be the first driver you try using on top of any new USB peripheral controller driver. Then you can use host-side test software, like the "usbtest" driver, to put your hardware and its driver through a basic set of functional tests. Gadget Zero also works with the host-side "usb-skeleton" driver, and with many kinds of host-side test software. You may need to tweak product and vendor IDs before host software knows about this device, and arrange to select an appropriate configuration. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_zero". config USB_ZERO_HNPTEST boolean "HNP Test Device" depends on USB_ZERO && USB_OTG help You can configure this device to enumerate using the device identifiers of the USB-OTG test device. That means that when this gadget connects to another OTG device, with this one using the "B-Peripheral" role, that device will use HNP to let this one serve as the USB host instead (in the "B-Host" role). config USB_AUDIO tristate "Audio Gadget (EXPERIMENTAL)" depends on SND select SND_PCM help Gadget Audio is compatible with USB Audio Class specification 1.0. It will include at least one AudioControl interface, zero or more AudioStream interface and zero or more MIDIStream interface. Gadget Audio will use on-board ALSA (CONFIG_SND) audio card to playback or capture audio stream. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_audio". config USB_ETH tristate "Ethernet Gadget (with CDC Ethernet support)" depends on NET select CRC32 help This driver implements Ethernet style communication, in one of several ways: - The "Communication Device Class" (CDC) Ethernet Control Model. That protocol is often avoided with pure Ethernet adapters, in favor of simpler vendor-specific hardware, but is widely supported by firmware for smart network devices. - On hardware can't implement that protocol, a simple CDC subset is used, placing fewer demands on USB. - CDC Ethernet Emulation Model (EEM) is a newer standard that has a simpler interface that can be used by more USB hardware. RNDIS support is an additional option, more demanding than than subset. Within the USB device, this gadget driver exposes a network device "usbX", where X depends on what other networking devices you have. Treat it like a two-node Ethernet link: host, and gadget. The Linux-USB host-side "usbnet" driver interoperates with this driver, so that deep I/O queues can be supported. On 2.4 kernels, use "CDCEther" instead, if you're using the CDC option. That CDC mode should also interoperate with standard CDC Ethernet class drivers on other host operating systems. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_ether". config USB_ETH_RNDIS bool "RNDIS support" depends on USB_ETH default y help Microsoft Windows XP bundles the "Remote NDIS" (RNDIS) protocol, and Microsoft provides redistributable binary RNDIS drivers for older versions of Windows. If you say "y" here, the Ethernet gadget driver will try to provide a second device configuration, supporting RNDIS to talk to such Microsoft USB hosts. To make MS-Windows work with this, use Documentation/usb/linux.inf as the "driver info file". For versions of MS-Windows older than XP, you'll need to download drivers from Microsoft's website; a URL is given in comments found in that info file. config USB_ETH_EEM bool "Ethernet Emulation Model (EEM) support" depends on USB_ETH default n help CDC EEM is a newer USB standard that is somewhat simpler than CDC ECM and therefore can be supported by more hardware. Technically ECM and EEM are designed for different applications. The ECM model extends the network interface to the target (e.g. a USB cable modem), and the EEM model is for mobile devices to communicate with hosts using ethernet over USB. For Linux gadgets, however, the interface with the host is the same (a usbX device), so the differences are minimal. If you say "y" here, the Ethernet gadget driver will use the EEM protocol rather than ECM. If unsure, say "n". config USB_G_NCM tristate "Network Control Model (NCM) support" depends on NET select CRC32 help This driver implements USB CDC NCM subclass standard. NCM is an advanced protocol for Ethernet encapsulation, allows grouping of several ethernet frames into one USB transfer and diffferent alignment possibilities. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_ncm". config USB_GADGETFS tristate "Gadget Filesystem (EXPERIMENTAL)" depends on EXPERIMENTAL help This driver provides a filesystem based API that lets user mode programs implement a single-configuration USB device, including endpoint I/O and control requests that don't relate to enumeration. All endpoints, transfer speeds, and transfer types supported by the hardware are available, through read() and write() calls. Currently, this option is still labelled as EXPERIMENTAL because of existing race conditions in the underlying in-kernel AIO core. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "gadgetfs". config USB_FUNCTIONFS tristate "Function Filesystem (EXPERIMENTAL)" depends on EXPERIMENTAL select USB_FUNCTIONFS_GENERIC if !(USB_FUNCTIONFS_ETH || USB_FUNCTIONFS_RNDIS) help The Function Filesystem (FunctionFS) lets one create USB composite functions in user space in the same way GadgetFS lets one create USB gadgets in user space. This allows creation of composite gadgets such that some of the functions are implemented in kernel space (for instance Ethernet, serial or mass storage) and other are implemented in user space. If you say "y" or "m" here you will be able what kind of configurations the gadget will provide. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_ffs". config USB_FUNCTIONFS_ETH bool "Include configuration with CDC ECM (Ethernet)" depends on USB_FUNCTIONFS && NET help Include a configuration with CDC ECM function (Ethernet) and the Function Filesystem. config USB_FUNCTIONFS_RNDIS bool "Include configuration with RNDIS (Ethernet)" depends on USB_FUNCTIONFS && NET help Include a configuration with RNDIS function (Ethernet) and the Filesystem. config USB_FUNCTIONFS_GENERIC bool "Include 'pure' configuration" depends on USB_FUNCTIONFS help Include a configuration with the Function Filesystem alone with no Ethernet interface. config USB_FILE_STORAGE tristate "File-backed Storage Gadget" depends on BLOCK help The File-backed Storage Gadget acts as a USB Mass Storage disk drive. As its storage repository it can use a regular file or a block device (in much the same way as the "loop" device driver), specified as a module parameter. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_file_storage". config USB_FILE_STORAGE_TEST bool "File-backed Storage Gadget testing version" depends on USB_FILE_STORAGE default n help Say "y" to generate the larger testing version of the File-backed Storage Gadget, useful for probing the behavior of USB Mass Storage hosts. Not needed for normal operation. config USB_MASS_STORAGE tristate "Mass Storage Gadget" depends on BLOCK help The Mass Storage Gadget acts as a USB Mass Storage disk drive. As its storage repository it can use a regular file or a block device (in much the same way as the "loop" device driver), specified as a module parameter or sysfs option. This is heavily based on File-backed Storage Gadget and in most cases you will want to use FSG instead. This gadget is mostly here to test the functionality of the Mass Storage Function which may be used with composite framework. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_mass_storage". If unsure, consider File-backed Storage Gadget. config USB_G_SERIAL tristate "Serial Gadget (with CDC ACM and CDC OBEX support)" help The Serial Gadget talks to the Linux-USB generic serial driver. This driver supports a CDC-ACM module option, which can be used to interoperate with MS-Windows hosts or with the Linux-USB "cdc-acm" driver. This driver also supports a CDC-OBEX option. You will need a user space OBEX server talking to /dev/ttyGS*, since the kernel itself doesn't implement the OBEX protocol. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_serial". For more information, see Documentation/usb/gadget_serial.txt which includes instructions and a "driver info file" needed to make MS-Windows work with CDC ACM. config USB_MIDI_GADGET tristate "MIDI Gadget (EXPERIMENTAL)" depends on SND && EXPERIMENTAL select SND_RAWMIDI help The MIDI Gadget acts as a USB Audio device, with one MIDI input and one MIDI output. These MIDI jacks appear as a sound "card" in the ALSA sound system. Other MIDI connections can then be made on the gadget system, using ALSA's aconnect utility etc. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_midi". config USB_G_PRINTER tristate "Printer Gadget" help The Printer Gadget channels data between the USB host and a userspace program driving the print engine. The user space program reads and writes the device file /dev/g_printer to receive or send printer data. It can use ioctl calls to the device file to get or set printer status. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_printer". For more information, see Documentation/usb/gadget_printer.txt which includes sample code for accessing the device file. config USB_CDC_COMPOSITE tristate "CDC Composite Device (Ethernet and ACM)" depends on NET help This driver provides two functions in one configuration: a CDC Ethernet (ECM) link, and a CDC ACM (serial port) link. This driver requires four bulk and two interrupt endpoints, plus the ability to handle altsettings. Not all peripheral controllers are that capable. Say "y" to link the driver statically, or "m" to build a dynamically linked module. config USB_G_NOKIA tristate "Nokia composite gadget" depends on PHONET help The Nokia composite gadget provides support for acm, obex and phonet in only one composite gadget driver. It's only really useful for N900 hardware. If you're building a kernel for N900, say Y or M here. If unsure, say N. config USB_G_MULTI tristate "Multifunction Composite Gadget (EXPERIMENTAL)" depends on BLOCK && NET select USB_G_MULTI_CDC if !USB_G_MULTI_RNDIS help The Multifunction Composite Gadget provides Ethernet (RNDIS and/or CDC Ethernet), mass storage and ACM serial link interfaces. You will be asked to choose which of the two configurations is to be available in the gadget. At least one configuration must be chosen to make the gadget usable. Selecting more than one configuration will prevent Windows from automatically detecting the gadget as a composite gadget, so an INF file will be needed to use the gadget. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_multi". config USB_G_MULTI_RNDIS bool "RNDIS + CDC Serial + Storage configuration" depends on USB_G_MULTI default y help This option enables a configuration with RNDIS, CDC Serial and Mass Storage functions available in the Multifunction Composite Gadget. This is the configuration dedicated for Windows since RNDIS is Microsoft's protocol. If unsure, say "y". config USB_G_MULTI_CDC bool "CDC Ethernet + CDC Serial + Storage configuration" depends on USB_G_MULTI default n help This option enables a configuration with CDC Ethernet (ECM), CDC Serial and Mass Storage functions available in the Multifunction Composite Gadget. If unsure, say "y". config USB_G_HID tristate "HID Gadget" help The HID gadget driver provides generic emulation of USB Human Interface Devices (HID). For more information, see Documentation/usb/gadget_hid.txt which includes sample code for accessing the device files. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_hid". config USB_G_DBGP tristate "EHCI Debug Device Gadget" help This gadget emulates an EHCI Debug device. This is useful when you want to interact with an EHCI Debug Port. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_dbgp". if USB_G_DBGP choice prompt "EHCI Debug Device mode" default USB_G_DBGP_SERIAL config USB_G_DBGP_PRINTK depends on USB_G_DBGP bool "printk" help Directly printk() received data. No interaction. config USB_G_DBGP_SERIAL depends on USB_G_DBGP bool "serial" help Userland can interact using /dev/ttyGSxxx. endchoice endif # put drivers that need isochronous transfer support (for audio # or video class gadget drivers), or specific hardware, here. config USB_G_WEBCAM tristate "USB Webcam Gadget" depends on VIDEO_DEV help The Webcam Gadget acts as a composite USB Audio and Video Class device. It provides a userspace API to process UVC control requests and stream video data to the host. Say "y" to link the driver statically, or "m" to build a dynamically linked module called "g_webcam". endchoice endif # USB_GADGET # # USB Serial device configuration # menuconfig USB_SERIAL tristate "USB Serial Converter support" depends on USB ---help--- Say Y here if you have a USB device that provides normal serial ports, or acts like a serial device, and you want to connect it to your USB bus. Please read for more information on the specifics of the different devices that are supported, and on how to use them. To compile this driver as a module, choose M here: the module will be called usbserial. if USB_SERIAL config USB_SERIAL_CONSOLE bool "USB Serial Console device support" depends on USB_SERIAL=y ---help--- If you say Y here, it will be possible to use a USB to serial converter port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). This could be useful if some terminal or printer is connected to that serial port. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyUSB0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) If you don't have a VGA card installed and you say Y here, the kernel will automatically use the first USB to serial converter port, /dev/ttyUSB0, as system console. If unsure, say N. config USB_EZUSB bool "Functions for loading firmware on EZUSB chips" help Say Y here if you need EZUSB device support. config USB_SERIAL_GENERIC bool "USB Generic Serial Driver" help Say Y here if you want to use the generic USB serial driver. Please read for more information on using this driver. It is recommended that the "USB Serial converter support" be compiled as a module for this driver to be used properly. config USB_SERIAL_AIRCABLE tristate "USB AIRcable Bluetooth Dongle Driver" help Say Y here if you want to use USB AIRcable Bluetooth Dongle. To compile this driver as a module, choose M here: the module will be called aircable. config USB_SERIAL_ARK3116 tristate "USB ARK Micro 3116 USB Serial Driver" help Say Y here if you want to use a ARK Micro 3116 USB to Serial device. To compile this driver as a module, choose M here: the module will be called ark3116 config USB_SERIAL_BELKIN tristate "USB Belkin and Peracom Single Port Serial Driver" help Say Y here if you want to use a Belkin USB Serial single port adaptor (F5U103 is one of the model numbers) or the Peracom single port USB to serial adapter. To compile this driver as a module, choose M here: the module will be called belkin_sa. config USB_SERIAL_CH341 tristate "USB Winchiphead CH341 Single Port Serial Driver" help Say Y here if you want to use a Winchiphead CH341 single port USB to serial adapter. To compile this driver as a module, choose M here: the module will be called ch341. config USB_SERIAL_WHITEHEAT tristate "USB ConnectTech WhiteHEAT Serial Driver" select USB_EZUSB help Say Y here if you want to use a ConnectTech WhiteHEAT 4 port USB to serial converter device. To compile this driver as a module, choose M here: the module will be called whiteheat. config USB_SERIAL_DIGI_ACCELEPORT tristate "USB Digi International AccelePort USB Serial Driver" ---help--- Say Y here if you want to use Digi AccelePort USB 2 or 4 devices, 2 port (plus parallel port) and 4 port USB serial converters. The parallel port on the USB 2 appears as a third serial port on Linux. The Digi Acceleport USB 8 is not yet supported by this driver. This driver works under SMP with the usb-uhci driver. It does not work under SMP with the uhci driver. To compile this driver as a module, choose M here: the module will be called digi_acceleport. config USB_SERIAL_CP210X tristate "USB CP210x family of UART Bridge Controllers" help Say Y here if you want to use a CP2101/CP2102/CP2103 based USB to RS232 converters. To compile this driver as a module, choose M here: the module will be called cp210x. config USB_SERIAL_CYPRESS_M8 tristate "USB Cypress M8 USB Serial Driver" help Say Y here if you want to use a device that contains the Cypress USB to Serial microcontroller, such as the DeLorme Earthmate GPS. Attempted SMP support... send bug reports! Supported microcontrollers in the CY4601 family are: CY7C63741 CY7C63742 CY7C63743 CY7C64013 To compile this driver as a module, choose M here: the module will be called cypress_m8. config USB_SERIAL_EMPEG tristate "USB Empeg empeg-car Mark I/II Driver" help Say Y here if you want to connect to your Empeg empeg-car Mark I/II mp3 player via USB. The driver uses a single ttyUSB{0,1,2,...} device node. See for more tidbits of information. To compile this driver as a module, choose M here: the module will be called empeg. config USB_SERIAL_FTDI_SIO tristate "USB FTDI Single Port Serial Driver" ---help--- Say Y here if you want to use a FTDI SIO single port USB to serial converter device. The implementation I have is called the USC-1000. This driver has also be tested with the 245 and 232 devices. See for more information on this driver and the device. To compile this driver as a module, choose M here: the module will be called ftdi_sio. config USB_SERIAL_FUNSOFT tristate "USB Fundamental Software Dongle Driver" ---help--- Say Y here if you want to use the Fundamental Software dongle. To compile this driver as a module, choose M here: the module will be called funsoft. config USB_SERIAL_VISOR tristate "USB Handspring Visor / Palm m50x / Sony Clie Driver" help Say Y here if you want to connect to your HandSpring Visor, Palm m500 or m505 through its USB docking station. See for more information on using this driver. To compile this driver as a module, choose M here: the module will be called visor. config USB_SERIAL_IPAQ tristate "USB PocketPC PDA Driver" help Say Y here if you want to connect to your Compaq iPAQ, HP Jornada or any other PDA running Windows CE 3.0 or PocketPC 2002 using a USB cradle/cable. For information on using the driver, read . To compile this driver as a module, choose M here: the module will be called ipaq. config USB_SERIAL_IR tristate "USB IR Dongle Serial Driver" help Say Y here if you want to enable simple serial support for USB IrDA devices. This is useful if you do not want to use the full IrDA stack. To compile this driver as a module, choose M here: the module will be called ir-usb. config USB_SERIAL_EDGEPORT tristate "USB Inside Out Edgeport Serial Driver" ---help--- Say Y here if you want to use any of the following devices from Inside Out Networks (Digi): Edgeport/4 Rapidport/4 Edgeport/4t Edgeport/2 Edgeport/4i Edgeport/2i Edgeport/421 Edgeport/21 Edgeport/8 Edgeport/8 Dual Edgeport/2D8 Edgeport/4D8 Edgeport/8i Edgeport/2 DIN Edgeport/4 DIN Edgeport/16 Dual To compile this driver as a module, choose M here: the module will be called io_edgeport. config USB_SERIAL_EDGEPORT_TI tristate "USB Inside Out Edgeport Serial Driver (TI devices)" help Say Y here if you want to use any of the devices from Inside Out Networks (Digi) that are not supported by the io_edgeport driver. This includes the Edgeport/1 device. To compile this driver as a module, choose M here: the module will be called io_ti. config USB_SERIAL_GARMIN tristate "USB Garmin GPS driver" help Say Y here if you want to connect to your Garmin GPS. Should work with most Garmin GPS devices which have a native USB port. See for the latest version of the driver. To compile this driver as a module, choose M here: the module will be called garmin_gps. config USB_SERIAL_IPW tristate "USB IPWireless (3G UMTS TDD) Driver" help Say Y here if you want to use a IPWireless USB modem such as the ones supplied by Axity3G/Sentech South Africa. To compile this driver as a module, choose M here: the module will be called ipw. config USB_SERIAL_IUU tristate "USB Infinity USB Unlimited Phoenix Driver" help Say Y here if you want to use a IUU in phoenix mode and get an extra ttyUSBx device. More information available on http://eczema.ecze.com/iuu_phoenix.html To compile this driver as a module, choose M here: the module will be called iuu_phoenix.o config USB_SERIAL_KEYSPAN_PDA tristate "USB Keyspan PDA Single Port Serial Driver" select USB_EZUSB help Say Y here if you want to use a Keyspan PDA single port USB to serial converter device. This driver makes use of firmware developed from scratch by Brian Warner. To compile this driver as a module, choose M here: the module will be called keyspan_pda. config USB_SERIAL_KEYSPAN tristate "USB Keyspan USA-xxx Serial Driver" select USB_EZUSB ---help--- Say Y here if you want to use Keyspan USB to serial converter devices. This driver makes use of Keyspan's official firmware and was developed with their support. You must also include firmware to support your particular device(s). See for more information. To compile this driver as a module, choose M here: the module will be called keyspan. config USB_SERIAL_KEYSPAN_MPR bool "USB Keyspan MPR Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the Keyspan MPR converter. config USB_SERIAL_KEYSPAN_USA28 bool "USB Keyspan USA-28 Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-28 converter. config USB_SERIAL_KEYSPAN_USA28X bool "USB Keyspan USA-28X Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-28X converter. Be sure you have a USA-28X, there are also 28XA and 28XB models, the label underneath has the actual part number. config USB_SERIAL_KEYSPAN_USA28XA bool "USB Keyspan USA-28XA Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-28XA converter. Be sure you have a USA-28XA, there are also 28X and 28XB models, the label underneath has the actual part number. config USB_SERIAL_KEYSPAN_USA28XB bool "USB Keyspan USA-28XB Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-28XB converter. Be sure you have a USA-28XB, there are also 28X and 28XA models, the label underneath has the actual part number. config USB_SERIAL_KEYSPAN_USA19 bool "USB Keyspan USA-19 Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-19 converter. config USB_SERIAL_KEYSPAN_USA18X bool "USB Keyspan USA-18X Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-18X converter. config USB_SERIAL_KEYSPAN_USA19W bool "USB Keyspan USA-19W Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-19W converter. config USB_SERIAL_KEYSPAN_USA19QW bool "USB Keyspan USA-19QW Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-19QW converter. config USB_SERIAL_KEYSPAN_USA19QI bool "USB Keyspan USA-19QI Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-19QI converter. config USB_SERIAL_KEYSPAN_USA49W bool "USB Keyspan USA-49W Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-49W converter. config USB_SERIAL_KEYSPAN_USA49WLC bool "USB Keyspan USA-49WLC Firmware" depends on USB_SERIAL_KEYSPAN && FIRMWARE_IN_KERNEL help Say Y here to include firmware for the USA-49WLC converter. config USB_SERIAL_KLSI tristate "USB KL5KUSB105 (Palmconnect) Driver" ---help--- Say Y here if you want to use a KL5KUSB105 - based single port serial adapter. The most widely known -- and currently the only tested -- device in this category is the PalmConnect USB Serial adapter sold by Palm Inc. for use with their Palm III and Palm V series PDAs. Please read for more information. To compile this driver as a module, choose M here: the module will be called kl5kusb105. config USB_SERIAL_KOBIL_SCT tristate "USB KOBIL chipcard reader" ---help--- Say Y here if you want to use one of the following KOBIL USB chipcard readers: - USB TWIN - KAAN Standard Plus - KAAN SIM - SecOVID Reader Plus - B1 Professional - KAAN Professional Note that you need a current CT-API. To compile this driver as a module, choose M here: the module will be called kobil_sct. config USB_SERIAL_MCT_U232 tristate "USB MCT Single Port Serial Driver" ---help--- Say Y here if you want to use a USB Serial single port adapter from Magic Control Technology Corp. (U232 is one of the model numbers). This driver also works with Sitecom U232-P25 and D-Link DU-H3SP USB BAY, Belkin F5U109, and Belkin F5U409 devices. To compile this driver as a module, choose M here: the module will be called mct_u232. config USB_SERIAL_MOS7720 tristate "USB Moschip 7720 Serial Driver" ---help--- Say Y here if you want to use USB Serial single and double port adapters from Moschip Semiconductor Tech. To compile this driver as a module, choose M here: the module will be called mos7720. config USB_SERIAL_MOS7715_PARPORT bool "Support for parallel port on the Moschip 7715" depends on USB_SERIAL_MOS7720 depends on PARPORT=y || PARPORT=USB_SERIAL_MOS7720 select PARPORT_NOT_PC ---help--- Say Y if you have a Moschip 7715 device and would like to use the parallel port it provides. The port will register with the parport subsystem as a low-level driver. config USB_SERIAL_MOS7840 tristate "USB Moschip 7840/7820 USB Serial Driver" ---help--- Say Y here if you want to use a MCS7840 Quad-Serial or MCS7820 Dual-Serial port device from MosChip Semiconductor. The MCS7840 and MCS7820 have been developed to connect a wide range of standard serial devices to a USB host. The MCS7840 has a USB device controller connected to four (4) individual UARTs while the MCS7820 controller connects to two (2) individual UARTs. To compile this driver as a module, choose M here: the module will be called mos7840. If unsure, choose N. config USB_SERIAL_MOTOROLA tristate "USB Motorola Phone modem driver" ---help--- Say Y here if you want to use a Motorola phone with a USB connector as a modem link. To compile this driver as a module, choose M here: the module will be called moto_modem. If unsure, choose N. config USB_SERIAL_NAVMAN tristate "USB Navman GPS device" help To compile this driver as a module, choose M here: the module will be called navman. config USB_SERIAL_PL2303 tristate "USB Prolific 2303 Single Port Serial Driver" help Say Y here if you want to use the PL2303 USB Serial single port adapter from Prolific. To compile this driver as a module, choose M here: the module will be called pl2303. config USB_SERIAL_OTI6858 tristate "USB Ours Technology Inc. OTi-6858 USB To RS232 Bridge Controller" help Say Y here if you want to use the OTi-6858 single port USB to serial converter device. To compile this driver as a module, choose M here: the module will be called oti6858. config USB_SERIAL_QCAUX tristate "USB Qualcomm Auxiliary Serial Port Driver" help Say Y here if you want to use the auxiliary serial ports provided by many modems based on Qualcomm chipsets. These ports often use a proprietary protocol called DM and cannot be used for AT- or PPP-based communication. To compile this driver as a module, choose M here: the module will be called qcaux. If unsure, choose N. config USB_SERIAL_QUALCOMM tristate "USB Qualcomm Serial modem" select USB_SERIAL_WWAN help Say Y here if you have a Qualcomm USB modem device. These are usually wireless cellular modems. To compile this driver as a module, choose M here: the module will be called qcserial. config USB_SERIAL_SPCP8X5 tristate "USB SPCP8x5 USB To Serial Driver" help Say Y here if you want to use the spcp8x5 converter chip. This is commonly found in some Z-Wave USB devices. To compile this driver as a module, choose M here: the module will be called spcp8x5. config USB_SERIAL_HP4X tristate "USB HP4x Calculators support" help Say Y here if you want to use an Hewlett-Packard 4x Calculator. To compile this driver as a module, choose M here: the module will be called hp4x. config USB_SERIAL_SAFE tristate "USB Safe Serial (Encapsulated) Driver" config USB_SERIAL_SAFE_PADDED bool "USB Secure Encapsulated Driver - Padded" depends on USB_SERIAL_SAFE config USB_SERIAL_SAMBA tristate "USB Atmel SAM Boot Assistant (SAM-BA) driver" help Say Y here if you want to access the SAM-BA boot application of an Atmel AT91SAM device. To compile this driver as a module, choose M here: the module will be called sam-ba. config USB_SERIAL_SIEMENS_MPI tristate "USB Siemens MPI driver" help Say M here if you want to use a Siemens USB/MPI adapter. To compile this driver as a module, choose M here: the module will be called siemens_mpi. config USB_SERIAL_SIERRAWIRELESS tristate "USB Sierra Wireless Driver" help Say M here if you want to use Sierra Wireless devices. Many devices have a feature known as TRU-Install. For those devices to work properly, the USB Storage Sierra feature must be enabled. To compile this driver as a module, choose M here: the module will be called sierra. config USB_SERIAL_SYMBOL tristate "USB Symbol Barcode driver (serial mode)" help Say Y here if you want to use a Symbol USB Barcode device in serial emulation mode. To compile this driver as a module, choose M here: the module will be called symbolserial. config USB_SERIAL_TI tristate "USB TI 3410/5052 Serial Driver" help Say Y here if you want to use the TI USB 3410 or 5052 serial devices. To compile this driver as a module, choose M here: the module will be called ti_usb_3410_5052. config USB_SERIAL_CYBERJACK tristate "USB REINER SCT cyberJack pinpad/e-com chipcard reader" ---help--- Say Y here if you want to use a cyberJack pinpad/e-com USB chipcard reader. This is an interface to ISO 7816 compatible contact-based chipcards, e.g. GSM SIMs. To compile this driver as a module, choose M here: the module will be called cyberjack. If unsure, say N. config USB_SERIAL_XIRCOM tristate "USB Xircom / Entregra Single Port Serial Driver" select USB_EZUSB help Say Y here if you want to use a Xircom or Entregra single port USB to serial converter device. This driver makes use of firmware developed from scratch by Brian Warner. To compile this driver as a module, choose M here: the module will be called keyspan_pda. config USB_SERIAL_WWAN tristate config USB_SERIAL_OPTION tristate "USB driver for GSM and CDMA modems" select USB_SERIAL_WWAN help Say Y here if you have a GSM or CDMA modem that's connected to USB. This driver also supports several PCMCIA cards which have a built-in OHCI-USB adapter and an internally-connected GSM modem. The USB bus on these cards is not accessible externally. Supported devices include (some of?) those made by: Option, Huawei, Audiovox, Novatel Wireless, or Anydata. To compile this driver as a module, choose M here: the module will be called option. If this driver doesn't recognize your device, it might be accessible via the FTDI_SIO driver. config USB_SERIAL_OMNINET tristate "USB ZyXEL omni.net LCD Plus Driver" help Say Y here if you want to use a ZyXEL omni.net LCD ISDN TA. To compile this driver as a module, choose M here: the module will be called omninet. config USB_SERIAL_OPTICON tristate "USB Opticon Barcode driver (serial mode)" help Say Y here if you want to use a Opticon USB Barcode device in serial emulation mode. To compile this driver as a module, choose M here: the module will be called opticon. config USB_SERIAL_VIVOPAY_SERIAL tristate "USB ViVOpay serial interface driver" help Say Y here if you want to use a ViVOtech ViVOpay USB device. To compile this driver as a module, choose M here: the module will be called vivopay-serial. config USB_SERIAL_ZIO tristate "ZIO Motherboard USB serial interface driver" help Say Y here if you want to use ZIO Motherboard. To compile this driver as a module, choose M here: the module will be called zio. config USB_SERIAL_SSU100 tristate "USB Quatech SSU-100 Single Port Serial Driver" help Say Y here if you want to use the Quatech SSU-100 single port usb to serial adapter. To compile this driver as a module, choose M here: the module will be called ssu100. config USB_SERIAL_DEBUG tristate "USB Debugging Device" help Say Y here if you have a USB debugging device used to receive debugging data from another machine. The most common of these devices is the NetChip TurboCONNECT device. To compile this driver as a module, choose M here: the module will be called usb-debug. endif # USB_SERIAL menuconfig MTD tristate "Memory Technology Device (MTD) support" depends on HAS_IOMEM help Memory Technology Devices are flash, RAM and similar chips, often used for solid state file systems on embedded devices. This option will provide the generic support for MTD drivers to register themselves with the kernel and for potential users of MTD devices to enumerate the devices which are present and obtain a handle on them. It will also allow you to select individual drivers for particular hardware and users of MTD devices. If unsure, say N. if MTD config MTD_DEBUG bool "Debugging" help This turns on low-level debugging for the entire MTD sub-system. Normally, you should say 'N'. config MTD_DEBUG_VERBOSE int "Debugging verbosity (0 = quiet, 3 = noisy)" depends on MTD_DEBUG default "0" help Determines the verbosity level of the MTD debugging messages. config MTD_TESTS tristate "MTD tests support" depends on m help This option includes various MTD tests into compilation. The tests should normally be compiled as kernel modules. The modules perform various checks and verifications when loaded. config MTD_PARTITIONS bool "MTD partitioning support" help If you have a device which needs to divide its flash chip(s) up into multiple 'partitions', each of which appears to the user as a separate MTD device, you require this option to be enabled. If unsure, say 'Y'. Note, however, that you don't need this option for the DiskOnChip devices. Partitioning on NFTL 'devices' is a different - that's the 'normal' form of partitioning used on a block device. if MTD_PARTITIONS config MTD_REDBOOT_PARTS tristate "RedBoot partition table parsing" ---help--- RedBoot is a ROM monitor and bootloader which deals with multiple 'images' in flash devices by putting a table one of the erase blocks on the device, similar to a partition table, which gives the offsets, lengths and names of all the images stored in the flash. If you need code which can detect and parse this table, and register MTD 'partitions' corresponding to each image in the table, enable this option. You will still need the parsing functions to be called by the driver for your particular device. It won't happen automatically. The SA1100 map driver (CONFIG_MTD_SA1100) has an option for this, for example. if MTD_REDBOOT_PARTS config MTD_REDBOOT_DIRECTORY_BLOCK int "Location of RedBoot partition table" default "-1" ---help--- This option is the Linux counterpart to the CYGNUM_REDBOOT_FIS_DIRECTORY_BLOCK RedBoot compile time option. The option specifies which Flash sectors holds the RedBoot partition table. A zero or positive value gives an absolute erase block number. A negative value specifies a number of sectors before the end of the device. For example "2" means block number 2, "-1" means the last block and "-2" means the penultimate block. config MTD_REDBOOT_PARTS_UNALLOCATED bool "Include unallocated flash regions" help If you need to register each unallocated flash region as a MTD 'partition', enable this option. config MTD_REDBOOT_PARTS_READONLY bool "Force read-only for RedBoot system images" help If you need to force read-only for 'RedBoot', 'RedBoot Config' and 'FIS directory' images, enable this option. endif # MTD_REDBOOT_PARTS config MTD_CMDLINE_PARTS bool "Command line partition table parsing" depends on MTD_PARTITIONS = "y" && MTD = "y" ---help--- Allow generic configuration of the MTD partition tables via the kernel command line. Multiple flash resources are supported for hardware where different kinds of flash memory are available. You will still need the parsing functions to be called by the driver for your particular device. It won't happen automatically. The SA1100 map driver (CONFIG_MTD_SA1100) has an option for this, for example. The format for the command line is as follows: mtdparts=[; := :[,] := [@offset][][ro] := unique id used in mapping driver/device := standard linux memsize OR "-" to denote all remaining space := (NAME) Due to the way Linux handles the command line, no spaces are allowed in the partition definition, including mtd id's and partition names. Examples: 1 flash resource (mtd-id "sa1100"), with 1 single writable partition: mtdparts=sa1100:- Same flash, but 2 named partitions, the first one being read-only: mtdparts=sa1100:256k(ARMboot)ro,-(root) If unsure, say 'N'. config MTD_AFS_PARTS tristate "ARM Firmware Suite partition parsing" depends on ARM ---help--- The ARM Firmware Suite allows the user to divide flash devices into multiple 'images'. Each such image has a header containing its name and offset/size etc. If you need code which can detect and parse these tables, and register MTD 'partitions' corresponding to each image detected, enable this option. You will still need the parsing functions to be called by the driver for your particular device. It won't happen automatically. The 'armflash' map driver (CONFIG_MTD_ARM_INTEGRATOR) does this, for example. config MTD_OF_PARTS def_bool y depends on OF help This provides a partition parsing function which derives the partition map from the children of the flash node, as described in Documentation/powerpc/booting-without-of.txt. config MTD_AR7_PARTS tristate "TI AR7 partitioning support" ---help--- TI AR7 partitioning support endif # MTD_PARTITIONS comment "User Modules And Translation Layers" config MTD_CHAR tristate "Direct char device access to MTD devices" help This provides a character device for each MTD device present in the system, allowing the user to read and write directly to the memory chips, and also use ioctl() to obtain information about the device, or to erase parts of it. config HAVE_MTD_OTP bool help Enable access to OTP regions using MTD_CHAR. config MTD_BLKDEVS tristate "Common interface to block layer for MTD 'translation layers'" depends on BLOCK default n config MTD_BLOCK tristate "Caching block device access to MTD devices" depends on BLOCK select MTD_BLKDEVS ---help--- Although most flash chips have an erase size too large to be useful as block devices, it is possible to use MTD devices which are based on RAM chips in this manner. This block device is a user of MTD devices performing that function. At the moment, it is also required for the Journalling Flash File System(s) to obtain a handle on the MTD device when it's mounted (although JFFS and JFFS2 don't actually use any of the functionality of the mtdblock device). Later, it may be extended to perform read/erase/modify/write cycles on flash chips to emulate a smaller block size. Needless to say, this is very unsafe, but could be useful for file systems which are almost never written to. You do not need this option for use with the DiskOnChip devices. For those, enable NFTL support (CONFIG_NFTL) instead. config MTD_BLOCK_RO tristate "Readonly block device access to MTD devices" depends on MTD_BLOCK!=y && BLOCK select MTD_BLKDEVS help This allows you to mount read-only file systems (such as cramfs) from an MTD device, without the overhead (and danger) of the caching driver. You do not need this option for use with the DiskOnChip devices. For those, enable NFTL support (CONFIG_NFTL) instead. config FTL tristate "FTL (Flash Translation Layer) support" depends on BLOCK select MTD_BLKDEVS ---help--- This provides support for the original Flash Translation Layer which is part of the PCMCIA specification. It uses a kind of pseudo- file system on a flash device to emulate a block device with 512-byte sectors, on top of which you put a 'normal' file system. You may find that the algorithms used in this code are patented unless you live in the Free World where software patents aren't legal - in the USA you are only permitted to use this on PCMCIA hardware, although under the terms of the GPL you're obviously permitted to copy, modify and distribute the code as you wish. Just not use it. config NFTL tristate "NFTL (NAND Flash Translation Layer) support" depends on BLOCK select MTD_BLKDEVS ---help--- This provides support for the NAND Flash Translation Layer which is used on M-Systems' DiskOnChip devices. It uses a kind of pseudo- file system on a flash device to emulate a block device with 512-byte sectors, on top of which you put a 'normal' file system. You may find that the algorithms used in this code are patented unless you live in the Free World where software patents aren't legal - in the USA you are only permitted to use this on DiskOnChip hardware, although under the terms of the GPL you're obviously permitted to copy, modify and distribute the code as you wish. Just not use it. config NFTL_RW bool "Write support for NFTL" depends on NFTL help Support for writing to the NAND Flash Translation Layer, as used on the DiskOnChip. config INFTL tristate "INFTL (Inverse NAND Flash Translation Layer) support" depends on BLOCK select MTD_BLKDEVS ---help--- This provides support for the Inverse NAND Flash Translation Layer which is used on M-Systems' newer DiskOnChip devices. It uses a kind of pseudo-file system on a flash device to emulate a block device with 512-byte sectors, on top of which you put a 'normal' file system. You may find that the algorithms used in this code are patented unless you live in the Free World where software patents aren't legal - in the USA you are only permitted to use this on DiskOnChip hardware, although under the terms of the GPL you're obviously permitted to copy, modify and distribute the code as you wish. Just not use it. config RFD_FTL tristate "Resident Flash Disk (Flash Translation Layer) support" depends on BLOCK select MTD_BLKDEVS ---help--- This provides support for the flash translation layer known as the Resident Flash Disk (RFD), as used by the Embedded BIOS of General Software. There is a blurb at: http://www.gensw.com/pages/prod/bios/rfd.htm config SSFDC tristate "NAND SSFDC (SmartMedia) read only translation layer" depends on BLOCK select MTD_BLKDEVS help This enables read only access to SmartMedia formatted NAND flash. You can mount it with FAT file system. config SM_FTL tristate "SmartMedia/xD new translation layer" depends on EXPERIMENTAL && BLOCK select MTD_BLKDEVS select MTD_NAND_ECC help This enables EXPERIMENTAL R/W support for SmartMedia/xD FTL (Flash translation layer). Write support is only lightly tested, therefore this driver isn't recommended to use with valuable data (anyway if you have valuable data, do backups regardless of software/hardware you use, because you never know what will eat your data...) If you only need R/O access, you can use older R/O driver (CONFIG_SSFDC) config MTD_OOPS tristate "Log panic/oops to an MTD buffer" help This enables panic and oops messages to be logged to a circular buffer in a flash partition where it can be read back at some later point. To use, add console=ttyMTDx to the kernel command line, where x is the MTD device number to use. config MTD_SWAP tristate "Swap on MTD device support" depends on MTD && SWAP select MTD_BLKDEVS help Provides volatile block device driver on top of mtd partition suitable for swapping. The mapping of written blocks is not saved. The driver provides wear leveling by storing erase counter into the OOB. source "drivers/mtd/chips/Kconfig" source "drivers/mtd/maps/Kconfig" source "drivers/mtd/devices/Kconfig" source "drivers/mtd/nand/Kconfig" source "drivers/mtd/onenand/Kconfig" source "drivers/mtd/lpddr/Kconfig" source "drivers/mtd/ubi/Kconfig" endif # MTD menuconfig MTD_ONENAND tristate "OneNAND Device Support" depends on MTD select MTD_PARTITIONS help This enables support for accessing all type of OneNAND flash devices. For further information see if MTD_ONENAND config MTD_ONENAND_VERIFY_WRITE bool "Verify OneNAND page writes" help This adds an extra check when data is written to the flash. The OneNAND flash device internally checks only bits transitioning from 1 to 0. There is a rare possibility that even though the device thinks the write was successful, a bit could have been flipped accidentally due to device wear or something else. config MTD_ONENAND_GENERIC tristate "OneNAND Flash device via platform device driver" help Support for OneNAND flash via platform device driver. config MTD_ONENAND_OMAP2 tristate "OneNAND on OMAP2/OMAP3 support" depends on ARCH_OMAP2 || ARCH_OMAP3 help Support for a OneNAND flash device connected to an OMAP2/OMAP3 CPU via the GPMC memory controller. config MTD_ONENAND_SAMSUNG tristate "OneNAND on Samsung SOC controller support" depends on ARCH_S3C64XX || ARCH_S5PC100 || ARCH_S5PV210 || ARCH_EXYNOS4 help Support for a OneNAND flash device connected to an Samsung SOC. S3C64XX/S5PC100 use command mapping method. S5PC110/S5PC210 use generic OneNAND method. config MTD_ONENAND_OTP bool "OneNAND OTP Support" select HAVE_MTD_OTP help One Block of the NAND Flash Array memory is reserved as a One-Time Programmable Block memory area. Also, 1st Block of NAND Flash Array can be used as OTP. The OTP block can be read, programmed and locked using the same operations as any other NAND Flash Array memory block. OTP block cannot be erased. OTP block is fully-guaranteed to be a valid block. config MTD_ONENAND_2X_PROGRAM bool "OneNAND 2X program support" help The 2X Program is an extension of Program Operation. Since the device is equipped with two DataRAMs, and two-plane NAND Flash memory array, these two component enables simultaneous program of 4KiB. Plane1 has only even blocks such as block0, block2, block4 while Plane2 has only odd blocks such as block1, block3, block5. So MTD regards it as 4KiB page size and 256KiB block size Now the following chips support it. (KFXXX16Q2M) Demux: KFG2G16Q2M, KFH4G16Q2M, KFW8G16Q2M, Mux: KFM2G16Q2M, KFN4G16Q2M, And more recent chips config MTD_ONENAND_SIM tristate "OneNAND simulator support" help The simulator may simulate various OneNAND flash chips for the OneNAND MTD layer. endif # MTD_ONENAND config MTD_NAND_ECC tristate config MTD_NAND_ECC_SMC bool "NAND ECC Smart Media byte order" depends on MTD_NAND_ECC default n help Software ECC according to the Smart Media Specification. The original Linux implementation had byte 0 and 1 swapped. menuconfig MTD_NAND tristate "NAND Device Support" depends on MTD select MTD_NAND_IDS select MTD_NAND_ECC help This enables support for accessing all type of NAND flash devices. For further information see . if MTD_NAND config MTD_NAND_VERIFY_WRITE bool "Verify NAND page writes" help This adds an extra check when data is written to the flash. The NAND flash device internally checks only bits transitioning from 1 to 0. There is a rare possibility that even though the device thinks the write was successful, a bit could have been flipped accidentally due to device wear or something else. config MTD_NAND_BCH tristate select BCH depends on MTD_NAND_ECC_BCH default MTD_NAND config MTD_NAND_ECC_BCH bool "Support software BCH ECC" default n help This enables support for software BCH error correction. Binary BCH codes are more powerful and cpu intensive than traditional Hamming ECC codes. They are used with NAND devices requiring more than 1 bit of error correction. config MTD_SM_COMMON tristate default n config MTD_NAND_MUSEUM_IDS bool "Enable chip ids for obsolete ancient NAND devices" default n help Enable this option only when your board has first generation NAND chips (page size 256 byte, erase size 4-8KiB). The IDs of these chips were reused by later, larger chips. config MTD_NAND_AUTCPU12 tristate "SmartMediaCard on autronix autcpu12 board" depends on ARCH_AUTCPU12 help This enables the driver for the autronix autcpu12 board to access the SmartMediaCard. config MTD_NAND_DENALI depends on PCI tristate "Support Denali NAND controller on Intel Moorestown" help Enable the driver for NAND flash on Intel Moorestown, using the Denali NAND controller core. config MTD_NAND_DENALI_SCRATCH_REG_ADDR hex "Denali NAND size scratch register address" default "0xFF108018" depends on MTD_NAND_DENALI help Some platforms place the NAND chip size in a scratch register because (some versions of) the driver aren't able to automatically determine the size of certain chips. Set the address of the scratch register here to enable this feature. On Intel Moorestown boards, the scratch register is at 0xFF108018. config MTD_NAND_EDB7312 tristate "Support for Cirrus Logic EBD7312 evaluation board" depends on ARCH_EDB7312 help This enables the driver for the Cirrus Logic EBD7312 evaluation board to access the onboard NAND Flash. config MTD_NAND_H1900 tristate "iPAQ H1900 flash" depends on ARCH_PXA && MTD_PARTITIONS help This enables the driver for the iPAQ h1900 flash. config MTD_NAND_GPIO tristate "GPIO NAND Flash driver" depends on GENERIC_GPIO && ARM help This enables a GPIO based NAND flash driver. config MTD_NAND_SPIA tristate "NAND Flash device on SPIA board" depends on ARCH_P720T help If you had to ask, you don't have one. Say 'N'. config MTD_NAND_AMS_DELTA tristate "NAND Flash device on Amstrad E3" depends on MACH_AMS_DELTA default y help Support for NAND flash on Amstrad E3 (Delta). config MTD_NAND_OMAP2 tristate "NAND Flash device on OMAP2 and OMAP3" depends on ARM && (ARCH_OMAP2 || ARCH_OMAP3) help Support for NAND flash on Texas Instruments OMAP2 and OMAP3 platforms. config MTD_NAND_IDS tristate config MTD_NAND_RICOH tristate "Ricoh xD card reader" default n depends on PCI select MTD_SM_COMMON help Enable support for Ricoh R5C852 xD card reader You also need to enable ether NAND SSFDC (SmartMedia) read only translation layer' or new expermental, readwrite 'SmartMedia/xD new translation layer' config MTD_NAND_AU1550 tristate "Au1550/1200 NAND support" depends on SOC_AU1200 || SOC_AU1550 help This enables the driver for the NAND flash controller on the AMD/Alchemy 1550 SOC. config MTD_NAND_BF5XX tristate "Blackfin on-chip NAND Flash Controller driver" depends on BF54x || BF52x help This enables the Blackfin on-chip NAND flash controller No board specific support is done by this driver, each board must advertise a platform_device for the driver to attach. This driver can also be built as a module. If so, the module will be called bf5xx-nand. config MTD_NAND_BF5XX_HWECC bool "BF5XX NAND Hardware ECC" default y depends on MTD_NAND_BF5XX help Enable the use of the BF5XX's internal ECC generator when using NAND. config MTD_NAND_BF5XX_BOOTROM_ECC bool "Use Blackfin BootROM ECC Layout" default n depends on MTD_NAND_BF5XX_HWECC help If you wish to modify NAND pages and allow the Blackfin on-chip BootROM to boot from them, say Y here. This is only necessary if you are booting U-Boot out of NAND and you wish to update U-Boot from Linux' userspace. Otherwise, you should say N here. If unsure, say N. config MTD_NAND_RTC_FROM4 tristate "Renesas Flash ROM 4-slot interface board (FROM_BOARD4)" depends on SH_SOLUTION_ENGINE select REED_SOLOMON select REED_SOLOMON_DEC8 select BITREVERSE help This enables the driver for the Renesas Technology AG-AND flash interface board (FROM_BOARD4) config MTD_NAND_PPCHAMELEONEVB tristate "NAND Flash device on PPChameleonEVB board" depends on PPCHAMELEONEVB && BROKEN help This enables the NAND flash driver on the PPChameleon EVB Board. config MTD_NAND_S3C2410 tristate "NAND Flash support for Samsung S3C SoCs" depends on ARCH_S3C2410 || ARCH_S3C64XX help This enables the NAND flash controller on the S3C24xx and S3C64xx SoCs No board specific support is done by this driver, each board must advertise a platform_device for the driver to attach. config MTD_NAND_S3C2410_DEBUG bool "Samsung S3C NAND driver debug" depends on MTD_NAND_S3C2410 help Enable debugging of the S3C NAND driver config MTD_NAND_S3C2410_HWECC bool "Samsung S3C NAND Hardware ECC" depends on MTD_NAND_S3C2410 help Enable the use of the controller's internal ECC generator when using NAND. Early versions of the chips have had problems with incorrect ECC generation, and if using these, the default of software ECC is preferable. config MTD_NAND_NDFC tristate "NDFC NanD Flash Controller" depends on 4xx select MTD_NAND_ECC_SMC help NDFC Nand Flash Controllers are integrated in IBM/AMCC's 4xx SoCs config MTD_NAND_S3C2410_CLKSTOP bool "Samsung S3C NAND IDLE clock stop" depends on MTD_NAND_S3C2410 default n help Stop the clock to the NAND controller when there is no chip selected to save power. This will mean there is a small delay when the is NAND chip selected or released, but will save approximately 5mA of power when there is nothing happening. config MTD_NAND_BCM_UMI tristate "NAND Flash support for BCM Reference Boards" depends on ARCH_BCMRING help This enables the NAND flash controller on the BCM UMI block. No board specific support is done by this driver, each board must advertise a platform_device for the driver to attach. config MTD_NAND_BCM_UMI_HWCS bool "BCM UMI NAND Hardware CS" depends on MTD_NAND_BCM_UMI help Enable the use of the BCM UMI block's internal CS using NAND. This should only be used if you know the external NAND CS can toggle. config MTD_NAND_DISKONCHIP tristate "DiskOnChip 2000, Millennium and Millennium Plus (NAND reimplementation) (EXPERIMENTAL)" depends on EXPERIMENTAL select REED_SOLOMON select REED_SOLOMON_DEC16 help This is a reimplementation of M-Systems DiskOnChip 2000, Millennium and Millennium Plus as a standard NAND device driver, as opposed to the earlier self-contained MTD device drivers. This should enable, among other things, proper JFFS2 operation on these devices. config MTD_NAND_DISKONCHIP_PROBE_ADVANCED bool "Advanced detection options for DiskOnChip" depends on MTD_NAND_DISKONCHIP help This option allows you to specify nonstandard address at which to probe for a DiskOnChip, or to change the detection options. You are unlikely to need any of this unless you are using LinuxBIOS. Say 'N'. config MTD_NAND_DISKONCHIP_PROBE_ADDRESS hex "Physical address of DiskOnChip" if MTD_NAND_DISKONCHIP_PROBE_ADVANCED depends on MTD_NAND_DISKONCHIP default "0" ---help--- By default, the probe for DiskOnChip devices will look for a DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. This option allows you to specify a single address at which to probe for the device, which is useful if you have other devices in that range which get upset when they are probed. (Note that on PowerPC, the normal probe will only check at 0xE4000000.) Normally, you should leave this set to zero, to allow the probe at the normal addresses. config MTD_NAND_DISKONCHIP_PROBE_HIGH bool "Probe high addresses" depends on MTD_NAND_DISKONCHIP_PROBE_ADVANCED help By default, the probe for DiskOnChip devices will look for a DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. This option changes to make it probe between 0xFFFC8000 and 0xFFFEE000. Unless you are using LinuxBIOS, this is unlikely to be useful to you. Say 'N'. config MTD_NAND_DISKONCHIP_BBTWRITE bool "Allow BBT writes on DiskOnChip Millennium and 2000TSOP" depends on MTD_NAND_DISKONCHIP help On DiskOnChip devices shipped with the INFTL filesystem (Millennium and 2000 TSOP/Alon), Linux reserves some space at the end of the device for the Bad Block Table (BBT). If you have existing INFTL data on your device (created by non-Linux tools such as M-Systems' DOS drivers), your data might overlap the area Linux wants to use for the BBT. If this is a concern for you, leave this option disabled and Linux will not write BBT data into this area. The downside of leaving this option disabled is that if bad blocks are detected by Linux, they will not be recorded in the BBT, which could cause future problems. Once you enable this option, new filesystems (INFTL or others, created in Linux or other operating systems) will not use the reserved area. The only reason not to enable this option is to prevent damage to preexisting filesystems. Even if you leave this disabled, you can enable BBT writes at module load time (assuming you build diskonchip as a module) with the module parameter "inftl_bbt_write=1". config MTD_NAND_SHARPSL tristate "Support for NAND Flash on Sharp SL Series (C7xx + others)" depends on ARCH_PXA config MTD_NAND_CAFE tristate "NAND support for OLPC CAFÉ chip" depends on PCI select REED_SOLOMON select REED_SOLOMON_DEC16 help Use NAND flash attached to the CAFÉ chip designed for the OLPC laptop. config MTD_NAND_CS553X tristate "NAND support for CS5535/CS5536 (AMD Geode companion chip)" depends on X86_32 help The CS553x companion chips for the AMD Geode processor include NAND flash controllers with built-in hardware ECC capabilities; enabling this option will allow you to use these. The driver will check the MSRs to verify that the controller is enabled for NAND, and currently requires that the controller be in MMIO mode. If you say "m", the module will be called cs553x_nand. config MTD_NAND_ATMEL tristate "Support for NAND Flash / SmartMedia on AT91 and AVR32" depends on ARCH_AT91 || AVR32 help Enables support for NAND Flash / Smart Media Card interface on Atmel AT91 and AVR32 processors. choice prompt "ECC management for NAND Flash / SmartMedia on AT91 / AVR32" depends on MTD_NAND_ATMEL config MTD_NAND_ATMEL_ECC_HW bool "Hardware ECC" depends on ARCH_AT91SAM9263 || ARCH_AT91SAM9260 || AVR32 help Use hardware ECC instead of software ECC when the chip supports it. The hardware ECC controller is capable of single bit error correction and 2-bit random detection per page. NB : hardware and software ECC schemes are incompatible. If you switch from one to another, you'll have to erase your mtd partition. If unsure, say Y config MTD_NAND_ATMEL_ECC_SOFT bool "Software ECC" help Use software ECC. NB : hardware and software ECC schemes are incompatible. If you switch from one to another, you'll have to erase your mtd partition. config MTD_NAND_ATMEL_ECC_NONE bool "No ECC (testing only, DANGEROUS)" depends on DEBUG_KERNEL help No ECC will be used. It's not a good idea and it should be reserved for testing purpose only. If unsure, say N endchoice config MTD_NAND_PXA3xx tristate "Support for NAND flash devices on PXA3xx" depends on PXA3xx || ARCH_MMP help This enables the driver for the NAND flash device found on PXA3xx processors config MTD_NAND_CM_X270 tristate "Support for NAND Flash on CM-X270 modules" depends on MACH_ARMCORE config MTD_NAND_PASEMI tristate "NAND support for PA Semi PWRficient" depends on PPC_PASEMI help Enables support for NAND Flash interface on PA Semi PWRficient based boards config MTD_NAND_TMIO tristate "NAND Flash device on Toshiba Mobile IO Controller" depends on MFD_TMIO help Support for NAND flash connected to a Toshiba Mobile IO Controller in some PDAs, including the Sharp SL6000x. config MTD_NAND_NANDSIM tristate "Support for NAND Flash Simulator" depends on MTD_PARTITIONS help The simulator may simulate various NAND flash chips for the MTD nand layer. config MTD_NAND_PLATFORM tristate "Support for generic platform NAND driver" help This implements a generic NAND driver for on-SOC platform devices. You will need to provide platform-specific functions via platform_data. config MTD_ALAUDA tristate "MTD driver for Olympus MAUSB-10 and Fujifilm DPC-R1" depends on USB help These two (and possibly other) Alauda-based cardreaders for SmartMedia and xD allow raw flash access. config MTD_NAND_ORION tristate "NAND Flash support for Marvell Orion SoC" depends on PLAT_ORION help This enables the NAND flash controller on Orion machines. No board specific support is done by this driver, each board must advertise a platform_device for the driver to attach. config MTD_NAND_FSL_ELBC tristate "NAND support for Freescale eLBC controllers" depends on PPC_OF select FSL_LBC help Various Freescale chips, including the 8313, include a NAND Flash Controller Module with built-in hardware ECC capabilities. Enabling this option will enable you to use this to control external NAND devices. config MTD_NAND_FSL_UPM tristate "Support for NAND on Freescale UPM" depends on PPC_83xx || PPC_85xx select FSL_LBC help Enables support for NAND Flash chips wired onto Freescale PowerPC processor localbus with User-Programmable Machine support. config MTD_NAND_MPC5121_NFC tristate "MPC5121 built-in NAND Flash Controller support" depends on PPC_MPC512x help This enables the driver for the NAND flash controller on the MPC5121 SoC. config MTD_NAND_MXC tristate "MXC NAND support" depends on IMX_HAVE_PLATFORM_MXC_NAND help This enables the driver for the NAND flash controller on the MXC processors. config MTD_NAND_NOMADIK tristate "ST Nomadik 8815 NAND support" depends on ARCH_NOMADIK help Driver for the NAND flash controller on the Nomadik, with ECC. config MTD_NAND_SH_FLCTL tristate "Support for NAND on Renesas SuperH FLCTL" depends on SUPERH || ARCH_SHMOBILE help Several Renesas SuperH CPU has FLCTL. This option enables support for NAND Flash using FLCTL. config MTD_NAND_DAVINCI tristate "Support NAND on DaVinci SoC" depends on ARCH_DAVINCI help Enable the driver for NAND flash chips on Texas Instruments DaVinci processors. config MTD_NAND_TXX9NDFMC tristate "NAND Flash support for TXx9 SoC" depends on SOC_TX4938 || SOC_TX4939 help This enables the NAND flash controller on the TXx9 SoCs. config MTD_NAND_SOCRATES tristate "Support for NAND on Socrates board" depends on SOCRATES help Enables support for NAND Flash chips wired onto Socrates board. config MTD_NAND_NUC900 tristate "Support for NAND on Nuvoton NUC9xx/w90p910 evaluation boards." depends on ARCH_W90X900 && MTD_PARTITIONS help This enables the driver for the NAND Flash on evaluation board based on w90p910 / NUC9xx. config MTD_NAND_JZ4740 tristate "Support for JZ4740 SoC NAND controller" depends on MACH_JZ4740 help Enables support for NAND Flash on JZ4740 SoC based boards. config MTD_NAND_FSMC tristate "Support for NAND on ST Micros FSMC" depends on PLAT_SPEAR || PLAT_NOMADIK || MACH_U300 help Enables support for NAND Flash chips on the ST Microelectronics Flexible Static Memory Controller (FSMC) endif # MTD_NAND menu "Self-contained MTD device drivers" depends on MTD!=n config MTD_PMC551 tristate "Ramix PMC551 PCI Mezzanine RAM card support" depends on PCI ---help--- This provides a MTD device driver for the Ramix PMC551 RAM PCI card from Ramix Inc. . These devices come in memory configurations from 32M - 1G. If you have one, you probably want to enable this. If this driver is compiled as a module you get the ability to select the size of the aperture window pointing into the devices memory. What this means is that if you have a 1G card, normally the kernel will use a 1G memory map as its view of the device. As a module, you can select a 1M window into the memory and the driver will "slide" the window around the PMC551's memory. This was particularly useful on the 2.2 kernels on PPC architectures as there was limited kernel space to deal with. config MTD_PMC551_BUGFIX bool "PMC551 256M DRAM Bugfix" depends on MTD_PMC551 help Some of Ramix's PMC551 boards with 256M configurations have invalid column and row mux values. This option will fix them, but will break other memory configurations. If unsure say N. config MTD_PMC551_DEBUG bool "PMC551 Debugging" depends on MTD_PMC551 help This option makes the PMC551 more verbose during its operation and is only really useful if you are developing on this driver or suspect a possible hardware or driver bug. If unsure say N. config MTD_MS02NV tristate "DEC MS02-NV NVRAM module support" depends on MACH_DECSTATION help This is an MTD driver for the DEC's MS02-NV (54-20948-01) battery backed-up NVRAM module. The module was originally meant as an NFS accelerator. Say Y here if you have a DECstation 5000/2x0 or a DECsystem 5900 equipped with such a module. If you want to compile this driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called ms02-nv. config MTD_DATAFLASH tristate "Support for AT45xxx DataFlash" depends on SPI_MASTER && EXPERIMENTAL help This enables access to AT45xxx DataFlash chips, using SPI. Sometimes DataFlash chips are packaged inside MMC-format cards; at this writing, the MMC stack won't handle those. config MTD_DATAFLASH_WRITE_VERIFY bool "Verify DataFlash page writes" depends on MTD_DATAFLASH help This adds an extra check when data is written to the flash. It may help if you are verifying chip setup (timings etc) on your board. There is a rare possibility that even though the device thinks the write was successful, a bit could have been flipped accidentally due to device wear or something else. config MTD_DATAFLASH_OTP bool "DataFlash OTP support (Security Register)" depends on MTD_DATAFLASH select HAVE_MTD_OTP help Newer DataFlash chips (revisions C and D) support 128 bytes of one-time-programmable (OTP) data. The first half may be written (once) with up to 64 bytes of data, such as a serial number or other key product data. The second half is programmed with a unique-to-each-chip bit pattern at the factory. config MTD_M25P80 tristate "Support most SPI Flash chips (AT26DF, M25P, W25X, ...)" depends on SPI_MASTER && EXPERIMENTAL help This enables access to most modern SPI flash chips, used for program and data storage. Series supported include Atmel AT26DF, Spansion S25SL, SST 25VF, ST M25P, and Winbond W25X. Other chips are supported as well. See the driver source for the current list, or to add other chips. Note that the original DataFlash chips (AT45 series, not AT26DF), need an entirely different driver. Set up your spi devices with the right board-specific platform data, if you want to specify device partitioning or to use a device which doesn't support the JEDEC ID instruction. config M25PXX_USE_FAST_READ bool "Use FAST_READ OPCode allowing SPI CLK <= 50MHz" depends on MTD_M25P80 default y help This option enables FAST_READ access supported by ST M25Pxx. config MTD_SST25L tristate "Support SST25L (non JEDEC) SPI Flash chips" depends on SPI_MASTER help This enables access to the non JEDEC SST25L SPI flash chips, used for program and data storage. Set up your spi devices with the right board-specific platform data, if you want to specify device partitioning. config MTD_SLRAM tristate "Uncached system RAM" help If your CPU cannot cache all of the physical memory in your machine, you can still use it for storage or swap by using this driver to present it to the system as a Memory Technology Device. config MTD_PHRAM tristate "Physical system RAM" help This is a re-implementation of the slram driver above. Use this driver to access physical memory that the kernel proper doesn't have access to, memory beyond the mem=xxx limit, nvram, memory on the video card, etc... config MTD_LART tristate "28F160xx flash driver for LART" depends on SA1100_LART help This enables the flash driver for LART. Please note that you do not need any mapping/chip driver for LART. This one does it all for you, so go disable all of those if you enabled some of them (: config MTD_MTDRAM tristate "Test driver using RAM" help This enables a test MTD device driver which uses vmalloc() to provide storage. You probably want to say 'N' unless you're testing stuff. config MTDRAM_TOTAL_SIZE int "MTDRAM device size in KiB" depends on MTD_MTDRAM default "4096" help This allows you to configure the total size of the MTD device emulated by the MTDRAM driver. If the MTDRAM driver is built as a module, it is also possible to specify this as a parameter when loading the module. config MTDRAM_ERASE_SIZE int "MTDRAM erase block size in KiB" depends on MTD_MTDRAM default "128" help This allows you to configure the size of the erase blocks in the device emulated by the MTDRAM driver. If the MTDRAM driver is built as a module, it is also possible to specify this as a parameter when loading the module. #If not a module (I don't want to test it as a module) config MTDRAM_ABS_POS hex "SRAM Hexadecimal Absolute position or 0" depends on MTD_MTDRAM=y default "0" help If you have system RAM accessible by the CPU but not used by Linux in normal operation, you can give the physical address at which the available RAM starts, and the MTDRAM driver will use it instead of allocating space from Linux's available memory. Otherwise, leave this set to zero. Most people will want to leave this as zero. config MTD_BLOCK2MTD tristate "MTD using block device" depends on BLOCK help This driver allows a block device to appear as an MTD. It would generally be used in the following cases: Using Compact Flash as an MTD, these usually present themselves to the system as an ATA drive. Testing MTD users (eg JFFS2) on large media and media that might be removed during a write (using the floppy drive). comment "Disk-On-Chip Device Drivers" config MTD_DOC2000 tristate "M-Systems Disk-On-Chip 2000 and Millennium (DEPRECATED)" select MTD_DOCPROBE select MTD_NAND_IDS ---help--- This provides an MTD device driver for the M-Systems DiskOnChip 2000 and Millennium devices. Originally designed for the DiskOnChip 2000, it also now includes support for the DiskOnChip Millennium. If you have problems with this driver and the DiskOnChip Millennium, you may wish to try the alternative Millennium driver below. To use the alternative driver, you will need to undefine DOC_SINGLE_DRIVER in the source code. If you use this device, you probably also want to enable the NFTL 'NAND Flash Translation Layer' option below, which is used to emulate a block device by using a kind of file system on the flash chips. NOTE: This driver is deprecated and will probably be removed soon. Please try the new DiskOnChip driver under "NAND Flash Device Drivers". config MTD_DOC2001 tristate "M-Systems Disk-On-Chip Millennium-only alternative driver (DEPRECATED)" select MTD_DOCPROBE select MTD_NAND_IDS ---help--- This provides an alternative MTD device driver for the M-Systems DiskOnChip Millennium devices. Use this if you have problems with the combined DiskOnChip 2000 and Millennium driver above. To get the DiskOnChip probe code to load and use this driver instead of the other one, you will need to undefine DOC_SINGLE_DRIVER near the beginning of . If you use this device, you probably also want to enable the NFTL 'NAND Flash Translation Layer' option below, which is used to emulate a block device by using a kind of file system on the flash chips. NOTE: This driver is deprecated and will probably be removed soon. Please try the new DiskOnChip driver under "NAND Flash Device Drivers". config MTD_DOC2001PLUS tristate "M-Systems Disk-On-Chip Millennium Plus" select MTD_DOCPROBE select MTD_NAND_IDS ---help--- This provides an MTD device driver for the M-Systems DiskOnChip Millennium Plus devices. If you use this device, you probably also want to enable the INFTL 'Inverse NAND Flash Translation Layer' option below, which is used to emulate a block device by using a kind of file system on the flash chips. NOTE: This driver will soon be replaced by the new DiskOnChip driver under "NAND Flash Device Drivers" (currently that driver does not support all Millennium Plus devices). config MTD_DOCPROBE tristate select MTD_DOCECC config MTD_DOCECC tristate config MTD_DOCPROBE_ADVANCED bool "Advanced detection options for DiskOnChip" depends on MTD_DOCPROBE help This option allows you to specify nonstandard address at which to probe for a DiskOnChip, or to change the detection options. You are unlikely to need any of this unless you are using LinuxBIOS. Say 'N'. config MTD_DOCPROBE_ADDRESS hex "Physical address of DiskOnChip" if MTD_DOCPROBE_ADVANCED depends on MTD_DOCPROBE default "0x0000" if MTD_DOCPROBE_ADVANCED default "0" if !MTD_DOCPROBE_ADVANCED ---help--- By default, the probe for DiskOnChip devices will look for a DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. This option allows you to specify a single address at which to probe for the device, which is useful if you have other devices in that range which get upset when they are probed. (Note that on PowerPC, the normal probe will only check at 0xE4000000.) Normally, you should leave this set to zero, to allow the probe at the normal addresses. config MTD_DOCPROBE_HIGH bool "Probe high addresses" depends on MTD_DOCPROBE_ADVANCED help By default, the probe for DiskOnChip devices will look for a DiskOnChip at every multiple of 0x2000 between 0xC8000 and 0xEE000. This option changes to make it probe between 0xFFFC8000 and 0xFFFEE000. Unless you are using LinuxBIOS, this is unlikely to be useful to you. Say 'N'. config MTD_DOCPROBE_55AA bool "Probe for 0x55 0xAA BIOS Extension Signature" depends on MTD_DOCPROBE_ADVANCED help Check for the 0x55 0xAA signature of a DiskOnChip, and do not continue with probing if it is absent. The signature will always be present for a DiskOnChip 2000 or a normal DiskOnChip Millennium. Only if you have overwritten the first block of a DiskOnChip Millennium will it be absent. Enable this option if you are using LinuxBIOS or if you need to recover a DiskOnChip Millennium on which you have managed to wipe the first block. endmenu menu "Mapping drivers for chip access" depends on MTD!=n config MTD_COMPLEX_MAPPINGS bool "Support non-linear mappings of flash chips" help This causes the chip drivers to allow for complicated paged mappings of flash chips. config MTD_PHYSMAP tristate "Flash device in physical memory map" depends on MTD_CFI || MTD_JEDECPROBE || MTD_ROM || MTD_LPDDR help This provides a 'mapping' driver which allows the NOR Flash and ROM driver code to communicate with chips which are mapped physically into the CPU's memory. You will need to configure the physical address and size of the flash chips on your particular board as well as the bus width, either statically with config options or at run-time. To compile this driver as a module, choose M here: the module will be called physmap. config MTD_PHYSMAP_COMPAT bool "Physmap compat support" depends on MTD_PHYSMAP default n help Setup a simple mapping via the Kconfig options. Normally the physmap configuration options are done via your board's resource file. If unsure, say N here. config MTD_PHYSMAP_START hex "Physical start address of flash mapping" depends on MTD_PHYSMAP_COMPAT default "0x8000000" help This is the physical memory location at which the flash chips are mapped on your particular target board. Refer to the memory map which should hopefully be in the documentation for your board. Ignore this option if you use run-time physmap configuration (i.e., run-time calling physmap_configure()). config MTD_PHYSMAP_LEN hex "Physical length of flash mapping" depends on MTD_PHYSMAP_COMPAT default "0" help This is the total length of the mapping of the flash chips on your particular board. If there is space, or aliases, in the physical memory map between the chips, this could be larger than the total amount of flash present. Refer to the memory map which should hopefully be in the documentation for your board. Ignore this option if you use run-time physmap configuration (i.e., run-time calling physmap_configure()). config MTD_PHYSMAP_BANKWIDTH int "Bank width in octets" depends on MTD_PHYSMAP_COMPAT default "2" help This is the total width of the data bus of the flash devices in octets. For example, if you have a data bus width of 32 bits, you would set the bus width octet value to 4. This is used internally by the CFI drivers. Ignore this option if you use run-time physmap configuration (i.e., run-time calling physmap_configure()). config MTD_PHYSMAP_OF tristate "Flash device in physical memory map based on OF description" depends on OF && (MTD_CFI || MTD_JEDECPROBE || MTD_ROM) help This provides a 'mapping' driver which allows the NOR Flash and ROM driver code to communicate with chips which are mapped physically into the CPU's memory. The mapping description here is taken from OF device tree. config MTD_PMC_MSP_EVM tristate "CFI Flash device mapped on PMC-Sierra MSP" depends on PMC_MSP && MTD_CFI select MTD_PARTITIONS help This provides a 'mapping' driver which supports the way in which user-programmable flash chips are connected on the PMC-Sierra MSP eval/demo boards. choice prompt "Maximum mappable memory available for flash IO" depends on MTD_PMC_MSP_EVM default MSP_FLASH_MAP_LIMIT_32M config MSP_FLASH_MAP_LIMIT_32M bool "32M" endchoice config MSP_FLASH_MAP_LIMIT hex default "0x02000000" depends on MSP_FLASH_MAP_LIMIT_32M config MTD_SUN_UFLASH tristate "Sun Microsystems userflash support" depends on SPARC && MTD_CFI && PCI help This provides a 'mapping' driver which supports the way in which user-programmable flash chips are connected on various Sun Microsystems boardsets. This driver will require CFI support in the kernel, so if you did not enable CFI previously, do that now. config MTD_SC520CDP tristate "CFI Flash device mapped on AMD SC520 CDP" depends on X86 && MTD_CFI help The SC520 CDP board has two banks of CFI-compliant chips and one Dual-in-line JEDEC chip. This 'mapping' driver supports that arrangement, implementing three MTD devices. config MTD_NETSC520 tristate "CFI Flash device mapped on AMD NetSc520" depends on X86 && MTD_CFI && MTD_PARTITIONS help This enables access routines for the flash chips on the AMD NetSc520 demonstration board. If you have one of these boards and would like to use the flash chips on it, say 'Y'. config MTD_TS5500 tristate "JEDEC Flash device mapped on Technologic Systems TS-5500" depends on X86 select MTD_PARTITIONS select MTD_JEDECPROBE select MTD_CFI_AMDSTD help This provides a driver for the on-board flash of the Technologic System's TS-5500 board. The 2MB flash is split into 3 partitions which are accessed as separate MTD devices. mtd0 and mtd2 are the two BIOS drives, which use the resident flash disk (RFD) flash translation layer. mtd1 allows you to reprogram your BIOS. BE VERY CAREFUL. Note that jumper 3 ("Write Enable Drive A") must be set otherwise detection won't succeed. config MTD_SBC_GXX tristate "CFI Flash device mapped on Arcom SBC-GXx boards" depends on X86 && MTD_CFI_INTELEXT && MTD_PARTITIONS && MTD_COMPLEX_MAPPINGS help This provides a driver for the on-board flash of Arcom Control Systems' SBC-GXn family of boards, formerly known as SBC-MediaGX. By default the flash is split into 3 partitions which are accessed as separate MTD devices. This board utilizes Intel StrataFlash. More info at . config MTD_PXA2XX tristate "CFI Flash device mapped on Intel XScale PXA2xx based boards" depends on (PXA25x || PXA27x) && MTD_CFI_INTELEXT select MTD_PARTITIONS help This provides a driver for the NOR flash attached to a PXA2xx chip. config MTD_OCTAGON tristate "JEDEC Flash device mapped on Octagon 5066 SBC" depends on X86 && MTD_JEDEC && MTD_COMPLEX_MAPPINGS help This provides a 'mapping' driver which supports the way in which the flash chips are connected in the Octagon-5066 Single Board Computer. More information on the board is available at . config MTD_VMAX tristate "JEDEC Flash device mapped on Tempustech VMAX SBC301" depends on X86 && MTD_JEDEC && MTD_COMPLEX_MAPPINGS help This provides a 'mapping' driver which supports the way in which the flash chips are connected in the Tempustech VMAX SBC301 Single Board Computer. More information on the board is available at . config MTD_SCx200_DOCFLASH tristate "Flash device mapped with DOCCS on NatSemi SCx200" depends on SCx200 && MTD_CFI && MTD_PARTITIONS help Enable support for a flash chip mapped using the DOCCS signal on a National Semiconductor SCx200 processor. If you don't know what to do here, say N. If compiled as a module, it will be called scx200_docflash. config MTD_AMD76XROM tristate "BIOS flash chip on AMD76x southbridge" depends on X86 && MTD_JEDECPROBE help Support for treating the BIOS flash chip on AMD76x motherboards as an MTD device - with this you can reprogram your BIOS. BE VERY CAREFUL. config MTD_ICHXROM tristate "BIOS flash chip on Intel Controller Hub 2/3/4/5" depends on X86 && MTD_JEDECPROBE help Support for treating the BIOS flash chip on ICHX motherboards as an MTD device - with this you can reprogram your BIOS. BE VERY CAREFUL. config MTD_ESB2ROM tristate "BIOS flash chip on Intel ESB Controller Hub 2" depends on X86 && MTD_JEDECPROBE && PCI help Support for treating the BIOS flash chip on ESB2 motherboards as an MTD device - with this you can reprogram your BIOS. BE VERY CAREFUL. config MTD_CK804XROM tristate "BIOS flash chip on Nvidia CK804" depends on X86 && MTD_JEDECPROBE && PCI help Support for treating the BIOS flash chip on nvidia motherboards as an MTD device - with this you can reprogram your BIOS. BE VERY CAREFUL. config MTD_SCB2_FLASH tristate "BIOS flash chip on Intel SCB2 boards" depends on X86 && MTD_JEDECPROBE help Support for treating the BIOS flash chip on Intel SCB2 boards as an MTD device - with this you can reprogram your BIOS. BE VERY CAREFUL. config MTD_TSUNAMI tristate "Flash chips on Tsunami TIG bus" depends on ALPHA_TSUNAMI && MTD_COMPLEX_MAPPINGS help Support for the flash chip on Tsunami TIG bus. config MTD_NETtel tristate "CFI flash device on SnapGear/SecureEdge" depends on X86 && MTD_PARTITIONS && MTD_JEDECPROBE help Support for flash chips on NETtel/SecureEdge/SnapGear boards. config MTD_BCM963XX tristate "Map driver for Broadcom BCM963xx boards" depends on BCM63XX select MTD_MAP_BANK_WIDTH_2 select MTD_CFI_I1 help Support for parsing CFE image tag and creating MTD partitions on Broadcom BCM63xx boards. config MTD_DILNETPC tristate "CFI Flash device mapped on DIL/Net PC" depends on X86 && MTD_PARTITIONS && MTD_CFI_INTELEXT && BROKEN help MTD map driver for SSV DIL/Net PC Boards "DNP" and "ADNP". For details, see and config MTD_DILNETPC_BOOTSIZE hex "Size of DIL/Net PC flash boot partition" depends on MTD_DILNETPC default "0x80000" help The amount of space taken up by the kernel or Etherboot on the DIL/Net PC flash chips. config MTD_L440GX tristate "BIOS flash chip on Intel L440GX boards" depends on X86 && MTD_JEDECPROBE help Support for treating the BIOS flash chip on Intel L440GX motherboards as an MTD device - with this you can reprogram your BIOS. BE VERY CAREFUL. config MTD_TQM8XXL tristate "CFI Flash device mapped on TQM8XXL" depends on MTD_CFI && TQM8xxL help The TQM8xxL PowerPC board has up to two banks of CFI-compliant chips, currently uses AMD one. This 'mapping' driver supports that arrangement, allowing the CFI probe and command set driver code to communicate with the chips on the TQM8xxL board. More at . config MTD_RPXLITE tristate "CFI Flash device mapped on RPX Lite or CLLF" depends on MTD_CFI && (RPXCLASSIC || RPXLITE) help The RPXLite PowerPC board has CFI-compliant chips mapped in a strange sparse mapping. This 'mapping' driver supports that arrangement, allowing the CFI probe and command set driver code to communicate with the chips on the RPXLite board. More at . config MTD_MBX860 tristate "System flash on MBX860 board" depends on MTD_CFI && MBX help This enables access routines for the flash chips on the Motorola MBX860 board. If you have one of these boards and would like to use the flash chips on it, say 'Y'. config MTD_DBOX2 tristate "CFI Flash device mapped on D-Box2" depends on DBOX2 && MTD_CFI_INTELSTD && MTD_CFI_INTELEXT && MTD_CFI_AMDSTD help This enables access routines for the flash chips on the Nokia/Sagem D-Box 2 board. If you have one of these boards and would like to use the flash chips on it, say 'Y'. config MTD_CFI_FLAGADM tristate "CFI Flash device mapping on FlagaDM" depends on 8xx && MTD_CFI help Mapping for the Flaga digital module. If you don't have one, ignore this setting. config MTD_SOLUTIONENGINE tristate "CFI Flash device mapped on Hitachi SolutionEngine" depends on SUPERH && SOLUTION_ENGINE && MTD_CFI && MTD_REDBOOT_PARTS help This enables access to the flash chips on the Hitachi SolutionEngine and similar boards. Say 'Y' if you are building a kernel for such a board. config MTD_ARM_INTEGRATOR tristate "CFI Flash device mapped on ARM Integrator/P720T" depends on ARM && MTD_CFI config MTD_CDB89712 tristate "Cirrus CDB89712 evaluation board mappings" depends on MTD_CFI && ARCH_CDB89712 help This enables access to the flash or ROM chips on the CDB89712 board. If you have such a board, say 'Y'. config MTD_SA1100 tristate "CFI Flash device mapped on StrongARM SA11x0" depends on MTD_CFI && ARCH_SA1100 && MTD_PARTITIONS help This enables access to the flash chips on most platforms based on the SA1100 and SA1110, including the Assabet and the Compaq iPAQ. If you have such a board, say 'Y'. config MTD_DC21285 tristate "CFI Flash device mapped on DC21285 Footbridge" depends on MTD_CFI && ARCH_FOOTBRIDGE && MTD_COMPLEX_MAPPINGS help This provides a driver for the flash accessed using Intel's 21285 bridge used with Intel's StrongARM processors. More info at . config MTD_IXP4XX tristate "CFI Flash device mapped on Intel IXP4xx based systems" depends on MTD_CFI && MTD_COMPLEX_MAPPINGS && ARCH_IXP4XX help This enables MTD access to flash devices on platforms based on Intel's IXP4xx family of network processors such as the IXDP425 and Coyote. If you have an IXP4xx based board and would like to use the flash chips on it, say 'Y'. config MTD_IXP2000 tristate "CFI Flash device mapped on Intel IXP2000 based systems" depends on MTD_CFI && MTD_COMPLEX_MAPPINGS && ARCH_IXP2000 help This enables MTD access to flash devices on platforms based on Intel's IXP2000 family of network processors. If you have an IXP2000 based board and would like to use the flash chips on it, say 'Y'. config MTD_FORTUNET tristate "CFI Flash device mapped on the FortuNet board" depends on MTD_CFI && MTD_PARTITIONS && SA1100_FORTUNET help This enables access to the Flash on the FortuNet board. If you have such a board, say 'Y'. config MTD_AUTCPU12 tristate "NV-RAM mapping AUTCPU12 board" depends on ARCH_AUTCPU12 help This enables access to the NV-RAM on autronix autcpu12 board. If you have such a board, say 'Y'. config MTD_EDB7312 tristate "CFI Flash device mapped on EDB7312" depends on ARCH_EDB7312 && MTD_CFI help This enables access to the CFI Flash on the Cogent EDB7312 board. If you have such a board, say 'Y' here. config MTD_IMPA7 tristate "JEDEC Flash device mapped on impA7" depends on ARM && MTD_JEDECPROBE help This enables access to the NOR Flash on the impA7 board of implementa GmbH. If you have such a board, say 'Y' here. config MTD_CEIVA tristate "JEDEC Flash device mapped on Ceiva/Polaroid PhotoMax Digital Picture Frame" depends on MTD_JEDECPROBE && ARCH_CEIVA help This enables access to the flash chips on the Ceiva/Polaroid PhotoMax Digital Picture Frame. If you have such a device, say 'Y'. config MTD_H720X tristate "Hynix evaluation board mappings" depends on MTD_CFI && ( ARCH_H7201 || ARCH_H7202 ) help This enables access to the flash chips on the Hynix evaluation boards. If you have such a board, say 'Y'. # This needs CFI or JEDEC, depending on the cards found. config MTD_PCI tristate "PCI MTD driver" depends on PCI && MTD_COMPLEX_MAPPINGS help Mapping for accessing flash devices on add-in cards like the Intel XScale IQ80310 card, and the Intel EBSA285 card in blank ROM programming mode (please see the manual for the link settings). If you are not sure, say N. config MTD_PCMCIA tristate "PCMCIA MTD driver" depends on PCMCIA && MTD_COMPLEX_MAPPINGS help Map driver for accessing PCMCIA linear flash memory cards. These cards are usually around 4-16MiB in size. This does not include Compact Flash cards which are treated as IDE devices. config MTD_PCMCIA_ANONYMOUS bool "Use PCMCIA MTD drivers for anonymous PCMCIA cards" depends on MTD_PCMCIA help If this option is enabled, PCMCIA cards which do not report anything about themselves are assumed to be MTD cards. If unsure, say N. config MTD_BFIN_ASYNC tristate "Blackfin BF533-STAMP Flash Chip Support" depends on BFIN533_STAMP && MTD_CFI && MTD_COMPLEX_MAPPINGS select MTD_PARTITIONS default y help Map driver which allows for simultaneous utilization of ethernet and CFI parallel flash. If compiled as a module, it will be called bfin-async-flash. config MTD_GPIO_ADDR tristate "GPIO-assisted Flash Chip Support" depends on GENERIC_GPIO || GPIOLIB depends on MTD_COMPLEX_MAPPINGS select MTD_PARTITIONS help Map driver which allows flashes to be partially physically addressed and assisted by GPIOs. If compiled as a module, it will be called gpio-addr-flash. config MTD_UCLINUX bool "Generic uClinux RAM/ROM filesystem support" depends on MTD_PARTITIONS && MTD_RAM=y && !MMU help Map driver to support image based filesystems for uClinux. config MTD_WRSBC8260 tristate "Map driver for WindRiver PowerQUICC II MPC82xx board" depends on (SBC82xx || SBC8560) select MTD_PARTITIONS select MTD_MAP_BANK_WIDTH_4 select MTD_MAP_BANK_WIDTH_1 select MTD_CFI_I1 select MTD_CFI_I4 help Map driver for WindRiver PowerQUICC II MPC82xx board. Drives all three flash regions on CS0, CS1 and CS6 if they are configured correctly by the boot loader. config MTD_DMV182 tristate "Map driver for Dy-4 SVME/DMV-182 board." depends on DMV182 select MTD_PARTITIONS select MTD_MAP_BANK_WIDTH_32 select MTD_CFI_I8 select MTD_CFI_AMDSTD help Map driver for Dy-4 SVME/DMV-182 board. config MTD_INTEL_VR_NOR tristate "NOR flash on Intel Vermilion Range Expansion Bus CS0" depends on PCI help Map driver for a NOR flash bank located on the Expansion Bus of the Intel Vermilion Range chipset. config MTD_RBTX4939 tristate "Map driver for RBTX4939 board" depends on TOSHIBA_RBTX4939 && MTD_CFI && MTD_COMPLEX_MAPPINGS help Map driver for NOR flash chips on RBTX4939 board. config MTD_PLATRAM tristate "Map driver for platform device RAM (mtd-ram)" select MTD_RAM help Map driver for RAM areas described via the platform device system. This selection automatically selects the map_ram driver. config MTD_VMU tristate "Map driver for Dreamcast VMU" depends on MAPLE help This driver enables access to the Dreamcast Visual Memory Unit (VMU). Most Dreamcast users will want to say Y here. To build this as a module select M here, the module will be called vmu-flash. config MTD_PISMO tristate "MTD discovery driver for PISMO modules" depends on I2C depends on ARCH_VERSATILE help This driver allows for discovery of PISMO modules - see . These are small modules containing up to five memory devices (eg, SRAM, flash, DOC) described by an I2C EEPROM. This driver does not create any MTD maps itself; instead it creates MTD physmap and MTD SRAM platform devices. If you enable this option, you should consider enabling MTD_PHYSMAP and/or MTD_PLATRAM according to the devices on your module. When built as a module, it will be called pismo.ko config MTD_LATCH_ADDR tristate "Latch-assisted Flash Chip Support" depends on MTD_COMPLEX_MAPPINGS help Map driver which allows flashes to be partially physically addressed and have the upper address lines set by a board specific code. If compiled as a module, it will be called latch-addr-flash. endmenu menuconfig MTD_UBI tristate "Enable UBI - Unsorted block images" select CRC32 help UBI is a software layer above MTD layer which admits of LVM-like logical volumes on top of MTD devices, hides some complexities of flash chips like wear and bad blocks and provides some other useful capabilities. Please, consult the MTD web site for more details (www.linux-mtd.infradead.org). if MTD_UBI config MTD_UBI_WL_THRESHOLD int "UBI wear-leveling threshold" default 4096 range 2 65536 help This parameter defines the maximum difference between the highest erase counter value and the lowest erase counter value of eraseblocks of UBI devices. When this threshold is exceeded, UBI starts performing wear leveling by means of moving data from eraseblock with low erase counter to eraseblocks with high erase counter. The default value should be OK for SLC NAND flashes, NOR flashes and other flashes which have eraseblock life-cycle 100000 or more. However, in case of MLC NAND flashes which typically have eraseblock life-cycle less than 10000, the threshold should be lessened (e.g., to 128 or 256, although it does not have to be power of 2). config MTD_UBI_BEB_RESERVE int "Percentage of reserved eraseblocks for bad eraseblocks handling" default 1 range 0 25 help If the MTD device admits of bad eraseblocks (e.g. NAND flash), UBI reserves some amount of physical eraseblocks to handle new bad eraseblocks. For example, if a flash physical eraseblock becomes bad, UBI uses these reserved physical eraseblocks to relocate the bad one. This option specifies how many physical eraseblocks will be reserved for bad eraseblock handling (percents of total number of good flash eraseblocks). If the underlying flash does not admit of bad eraseblocks (e.g. NOR flash), this value is ignored and nothing is reserved. Leave the default value if unsure. config MTD_UBI_GLUEBI tristate "MTD devices emulation driver (gluebi)" help This option enables gluebi - an additional driver which emulates MTD devices on top of UBI volumes: for each UBI volumes an MTD device is created, and all I/O to this MTD device is redirected to the UBI volume. This is handy to make MTD-oriented software (like JFFS2) work on top of UBI. Do not enable this unless you use legacy software. config MTD_UBI_DEBUG bool "UBI debugging" depends on SYSFS select DEBUG_FS select KALLSYMS help This option enables UBI debugging. endif # MTD_UBI menu "RAM/ROM/Flash chip drivers" depends on MTD!=n config MTD_CFI tristate "Detect flash chips by Common Flash Interface (CFI) probe" select MTD_GEN_PROBE select MTD_CFI_UTIL help The Common Flash Interface specification was developed by Intel, AMD and other flash manufactures that provides a universal method for probing the capabilities of flash devices. If you wish to support any device that is CFI-compliant, you need to enable this option. Visit for more information on CFI. config MTD_JEDECPROBE tristate "Detect non-CFI AMD/JEDEC-compatible flash chips" select MTD_GEN_PROBE help This option enables JEDEC-style probing of flash chips which are not compatible with the Common Flash Interface, but will use the common CFI-targeted flash drivers for any chips which are identified which are in fact compatible in all but the probe method. This actually covers most AMD/Fujitsu-compatible chips and also non-CFI Intel chips. config MTD_GEN_PROBE tristate config MTD_CFI_ADV_OPTIONS bool "Flash chip driver advanced configuration options" depends on MTD_GEN_PROBE help If you need to specify a specific endianness for access to flash chips, or if you wish to reduce the size of the kernel by including support for only specific arrangements of flash chips, say 'Y'. This option does not directly affect the code, but will enable other configuration options which allow you to do so. If unsure, say 'N'. choice prompt "Flash cmd/query data swapping" depends on MTD_CFI_ADV_OPTIONS default MTD_CFI_NOSWAP config MTD_CFI_NOSWAP bool "NO" ---help--- This option defines the way in which the CPU attempts to arrange data bits when writing the 'magic' commands to the chips. Saying 'NO', which is the default when CONFIG_MTD_CFI_ADV_OPTIONS isn't enabled, means that the CPU will not do any swapping; the chips are expected to be wired to the CPU in 'host-endian' form. Specific arrangements are possible with the BIG_ENDIAN_BYTE and LITTLE_ENDIAN_BYTE, if the bytes are reversed. If you have a LART, on which the data (and address) lines were connected in a fashion which ensured that the nets were as short as possible, resulting in a bit-shuffling which seems utterly random to the untrained eye, you need the LART_ENDIAN_BYTE option. Yes, there really exists something sicker than PDP-endian :) config MTD_CFI_BE_BYTE_SWAP bool "BIG_ENDIAN_BYTE" config MTD_CFI_LE_BYTE_SWAP bool "LITTLE_ENDIAN_BYTE" endchoice config MTD_CFI_GEOMETRY bool "Specific CFI Flash geometry selection" depends on MTD_CFI_ADV_OPTIONS help This option does not affect the code directly, but will enable some other configuration options which would allow you to reduce the size of the kernel by including support for only certain arrangements of CFI chips. If unsure, say 'N' and all options which are supported by the current code will be enabled. config MTD_MAP_BANK_WIDTH_1 bool "Support 8-bit buswidth" if MTD_CFI_GEOMETRY default y help If you wish to support CFI devices on a physical bus which is 8 bits wide, say 'Y'. config MTD_MAP_BANK_WIDTH_2 bool "Support 16-bit buswidth" if MTD_CFI_GEOMETRY default y help If you wish to support CFI devices on a physical bus which is 16 bits wide, say 'Y'. config MTD_MAP_BANK_WIDTH_4 bool "Support 32-bit buswidth" if MTD_CFI_GEOMETRY default y help If you wish to support CFI devices on a physical bus which is 32 bits wide, say 'Y'. config MTD_MAP_BANK_WIDTH_8 bool "Support 64-bit buswidth" if MTD_CFI_GEOMETRY default n help If you wish to support CFI devices on a physical bus which is 64 bits wide, say 'Y'. config MTD_MAP_BANK_WIDTH_16 bool "Support 128-bit buswidth" if MTD_CFI_GEOMETRY default n help If you wish to support CFI devices on a physical bus which is 128 bits wide, say 'Y'. config MTD_MAP_BANK_WIDTH_32 bool "Support 256-bit buswidth" if MTD_CFI_GEOMETRY default n help If you wish to support CFI devices on a physical bus which is 256 bits wide, say 'Y'. config MTD_CFI_I1 bool "Support 1-chip flash interleave" if MTD_CFI_GEOMETRY default y help If your flash chips are not interleaved - i.e. you only have one flash chip addressed by each bus cycle, then say 'Y'. config MTD_CFI_I2 bool "Support 2-chip flash interleave" if MTD_CFI_GEOMETRY default y help If your flash chips are interleaved in pairs - i.e. you have two flash chips addressed by each bus cycle, then say 'Y'. config MTD_CFI_I4 bool "Support 4-chip flash interleave" if MTD_CFI_GEOMETRY default n help If your flash chips are interleaved in fours - i.e. you have four flash chips addressed by each bus cycle, then say 'Y'. config MTD_CFI_I8 bool "Support 8-chip flash interleave" if MTD_CFI_GEOMETRY default n help If your flash chips are interleaved in eights - i.e. you have eight flash chips addressed by each bus cycle, then say 'Y'. config MTD_OTP bool "Protection Registers aka one-time programmable (OTP) bits" depends on MTD_CFI_ADV_OPTIONS select HAVE_MTD_OTP default n help This enables support for reading, writing and locking so called "Protection Registers" present on some flash chips. A subset of them are pre-programmed at the factory with a unique set of values. The rest is user-programmable. The user-programmable Protection Registers contain one-time programmable (OTP) bits; when programmed, register bits cannot be erased. Each Protection Register can be accessed multiple times to program individual bits, as long as the register remains unlocked. Each Protection Register has an associated Lock Register bit. When a Lock Register bit is programmed, the associated Protection Register can only be read; it can no longer be programmed. Additionally, because the Lock Register bits themselves are OTP, when programmed, Lock Register bits cannot be erased. Therefore, when a Protection Register is locked, it cannot be unlocked. This feature should therefore be used with extreme care. Any mistake in the programming of OTP bits will waste them. config MTD_CFI_INTELEXT tristate "Support for Intel/Sharp flash chips" depends on MTD_GEN_PROBE select MTD_CFI_UTIL help The Common Flash Interface defines a number of different command sets which a CFI-compliant chip may claim to implement. This code provides support for one of those command sets, used on Intel StrataFlash and other parts. config MTD_CFI_AMDSTD tristate "Support for AMD/Fujitsu/Spansion flash chips" depends on MTD_GEN_PROBE select MTD_CFI_UTIL help The Common Flash Interface defines a number of different command sets which a CFI-compliant chip may claim to implement. This code provides support for one of those command sets, used on chips including the AMD Am29LV320. config MTD_CFI_STAA tristate "Support for ST (Advanced Architecture) flash chips" depends on MTD_GEN_PROBE select MTD_CFI_UTIL help The Common Flash Interface defines a number of different command sets which a CFI-compliant chip may claim to implement. This code provides support for one of those command sets. config MTD_CFI_UTIL tristate config MTD_RAM tristate "Support for RAM chips in bus mapping" help This option enables basic support for RAM chips accessed through a bus mapping driver. config MTD_ROM tristate "Support for ROM chips in bus mapping" help This option enables basic support for ROM chips accessed through a bus mapping driver. config MTD_ABSENT tristate "Support for absent chips in bus mapping" help This option enables support for a dummy probing driver used to allocated placeholder MTD devices on systems that have socketed or removable media. Use of this driver as a fallback chip probe preserves the expected registration order of MTD device nodes on the system regardless of media presence. Device nodes created with this driver will return -ENODEV upon access. config MTD_XIP bool "XIP aware MTD support" depends on !SMP && (MTD_CFI_INTELEXT || MTD_CFI_AMDSTD) && EXPERIMENTAL && ARCH_MTD_XIP default y if XIP_KERNEL help This allows MTD support to work with flash memory which is also used for XIP purposes. If you're not sure what this is all about then say N. endmenu menu "LPDDR flash memory drivers" depends on MTD!=n config MTD_LPDDR tristate "Support for LPDDR flash chips" select MTD_QINFO_PROBE help This option enables support of LPDDR (Low power double data rate) flash chips. Synonymous with Mobile-DDR. It is a new standard for DDR memories, intended for battery-operated systems. config MTD_QINFO_PROBE depends on MTD_LPDDR tristate "Detect flash chips by QINFO probe" help Device Information for LPDDR chips is offered through the Overlay Window QINFO interface, permits software to be used for entire families of devices. This serves similar purpose of CFI on legacy Flash products endmenu menu "IEEE 1394 (FireWire) support" depends on PCI || BROKEN # firewire-core does not depend on PCI but is # not useful without PCI controller driver config FIREWIRE tristate "FireWire driver stack" select CRC_ITU_T help This is the new-generation IEEE 1394 (FireWire) driver stack a.k.a. Juju, a new implementation designed for robustness and simplicity. See http://ieee1394.wiki.kernel.org/index.php/Juju_Migration for information about migration from the older Linux 1394 stack to the new driver stack. To compile this driver as a module, say M here: the module will be called firewire-core. config FIREWIRE_OHCI tristate "OHCI-1394 controllers" depends on PCI && FIREWIRE && MMU help Enable this driver if you have a FireWire controller based on the OHCI specification. For all practical purposes, this is the only chipset in use, so say Y here. To compile this driver as a module, say M here: The module will be called firewire-ohci. config FIREWIRE_OHCI_DEBUG bool depends on FIREWIRE_OHCI default y config FIREWIRE_SBP2 tristate "Storage devices (SBP-2 protocol)" depends on FIREWIRE && SCSI help This option enables you to use SBP-2 devices connected to a FireWire bus. SBP-2 devices include storage devices like harddisks and DVD drives, also some other FireWire devices like scanners. To compile this driver as a module, say M here: The module will be called firewire-sbp2. You should also enable support for disks, CD-ROMs, etc. in the SCSI configuration section. config FIREWIRE_NET tristate "IP networking over 1394" depends on FIREWIRE && INET help This enables IPv4 over IEEE 1394, providing IP connectivity with other implementations of RFC 2734 as found on several operating systems. Multicast support is currently limited. To compile this driver as a module, say M here: The module will be called firewire-net. config FIREWIRE_NOSY tristate "Nosy - a FireWire traffic sniffer for PCILynx cards" depends on PCI help Nosy is an IEEE 1394 packet sniffer that is used for protocol analysis and in development of IEEE 1394 drivers, applications, or firmwares. This driver lets you use a Texas Instruments PCILynx 1394 to PCI link layer controller TSB12LV21/A/B as a low-budget bus analyzer. PCILynx is a nowadays very rare IEEE 1394 controller which is not OHCI 1394 compliant. The following cards are known to be based on PCILynx or PCILynx-2: IOI IOI-1394TT (PCI card), Unibrain Fireboard 400 PCI Lynx-2 (PCI card), Newer Technology FireWire 2 Go (CardBus card), Apple Power Mac G3 blue & white and G4 with PCI graphics (onboard controller). To compile this driver as a module, say M here: The module will be called nosy. Source code of a userspace interface to nosy, called nosy-dump, can be found in tools/firewire/ of the kernel sources. If unsure, say N. endmenu # # MMC subsystem configuration # menuconfig MMC tristate "MMC/SD/SDIO card support" depends on HAS_IOMEM help This selects MultiMediaCard, Secure Digital and Secure Digital I/O support. If you want MMC/SD/SDIO support, you should say Y here and also to your specific host controller driver. config MMC_DEBUG bool "MMC debugging" depends on MMC != n help This is an option for use by developers; most people should say N here. This enables MMC core and driver debugging. if MMC source "drivers/mmc/core/Kconfig" source "drivers/mmc/card/Kconfig" source "drivers/mmc/host/Kconfig" endif # MMC # # MMC/SD host controller drivers # comment "MMC/SD/SDIO Host Controller Drivers" config MMC_ARMMMCI tristate "ARM AMBA Multimedia Card Interface support" depends on ARM_AMBA help This selects the ARM(R) AMBA(R) PrimeCell Multimedia Card Interface (PL180 and PL181) support. If you have an ARM(R) platform with a Multimedia Card slot, say Y or M here. If unsure, say N. config MMC_PXA tristate "Intel PXA25x/26x/27x Multimedia Card Interface support" depends on ARCH_PXA help This selects the Intel(R) PXA(R) Multimedia card Interface. If you have a PXA(R) platform with a Multimedia Card slot, say Y or M here. If unsure, say N. config MMC_SDHCI tristate "Secure Digital Host Controller Interface support" depends on HAS_DMA help This selects the generic Secure Digital Host Controller Interface. It is used by manufacturers such as Texas Instruments(R), Ricoh(R) and Toshiba(R). Most controllers found in laptops are of this type. If you have a controller with this interface, say Y or M here. You also need to enable an appropriate bus interface. If unsure, say N. config MMC_SDHCI_IO_ACCESSORS bool depends on MMC_SDHCI help This is silent Kconfig symbol that is selected by the drivers that need to overwrite SDHCI IO memory accessors. config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER bool select MMC_SDHCI_IO_ACCESSORS help This option is selected by drivers running on big endian hosts and performing I/O to a SDHCI controller through a bus that implements a hardware byte swapper using a 32-bit datum. This endian mapping mode is called "data invariance" and has the effect of scrambling the addresses and formats of data accessed in sizes other than the datum size. This is the case for the Freescale eSDHC and Nintendo Wii SDHCI. config MMC_SDHCI_PCI tristate "SDHCI support on PCI bus" depends on MMC_SDHCI && PCI help This selects the PCI Secure Digital Host Controller Interface. Most controllers found today are PCI devices. If you have a controller with this interface, say Y or M here. If unsure, say N. config MMC_RICOH_MMC bool "Ricoh MMC Controller Disabler (EXPERIMENTAL)" depends on MMC_SDHCI_PCI help This adds a pci quirk to disable Ricoh MMC Controller. This proprietary controller is unnecessary because the SDHCI driver supports MMC cards on the SD controller, but if it is not disabled, it will steal the MMC cards away - rendering them useless. It is safe to select this even if you don't have a Ricoh based card reader. If unsure, say Y. config MMC_SDHCI_OF tristate "SDHCI support on OpenFirmware platforms" depends on MMC_SDHCI && OF help This selects the OF support for Secure Digital Host Controller Interfaces. If unsure, say N. config MMC_SDHCI_OF_ESDHC bool "SDHCI OF support for the Freescale eSDHC controller" depends on MMC_SDHCI_OF depends on PPC_OF select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER help This selects the Freescale eSDHC controller support. If unsure, say N. config MMC_SDHCI_OF_HLWD bool "SDHCI OF support for the Nintendo Wii SDHCI controllers" depends on MMC_SDHCI_OF depends on PPC_OF select MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER help This selects the Secure Digital Host Controller Interface (SDHCI) found in the "Hollywood" chipset of the Nintendo Wii video game console. If unsure, say N. config MMC_SDHCI_PLTFM tristate "SDHCI support on the platform specific bus" depends on MMC_SDHCI help This selects the platform specific bus support for Secure Digital Host Controller Interface. If you have a controller with this interface, say Y or M here. If unsure, say N. config MMC_SDHCI_CNS3XXX bool "SDHCI support on the Cavium Networks CNS3xxx SoC" depends on ARCH_CNS3XXX depends on MMC_SDHCI_PLTFM help This selects the SDHCI support for CNS3xxx System-on-Chip devices. If unsure, say N. config MMC_SDHCI_ESDHC_IMX bool "SDHCI platform support for the Freescale eSDHC i.MX controller" depends on MMC_SDHCI_PLTFM && (ARCH_MX25 || ARCH_MX35 || ARCH_MX5) select MMC_SDHCI_IO_ACCESSORS help This selects the Freescale eSDHC controller support on the platform bus, found on platforms like mx35/51. If unsure, say N. config MMC_SDHCI_DOVE bool "SDHCI support on Marvell's Dove SoC" depends on ARCH_DOVE depends on MMC_SDHCI_PLTFM select MMC_SDHCI_IO_ACCESSORS help This selects the Secure Digital Host Controller Interface in Marvell's Dove SoC. If unsure, say N. config MMC_SDHCI_TEGRA tristate "SDHCI platform support for the Tegra SD/MMC Controller" depends on MMC_SDHCI_PLTFM && ARCH_TEGRA select MMC_SDHCI_IO_ACCESSORS help This selects the Tegra SD/MMC controller. If you have a Tegra platform with SD or MMC devices, say Y or M here. If unsure, say N. config MMC_SDHCI_S3C tristate "SDHCI support on Samsung S3C SoC" depends on MMC_SDHCI && PLAT_SAMSUNG help This selects the Secure Digital Host Controller Interface (SDHCI) often referrered to as the HSMMC block in some of the Samsung S3C range of SoC. Note, due to the problems with DMA, the DMA support is only available with CONFIG_EXPERIMENTAL is selected. If you have a controller with this interface, say Y or M here. If unsure, say N. config MMC_SDHCI_PXA tristate "Marvell PXA168/PXA910/MMP2 SD Host Controller support" depends on ARCH_PXA || ARCH_MMP select MMC_SDHCI select MMC_SDHCI_IO_ACCESSORS help This selects the Marvell(R) PXA168/PXA910/MMP2 SD Host Controller. If you have a PXA168/PXA910/MMP2 platform with SD Host Controller and a card slot, say Y or M here. If unsure, say N. config MMC_SDHCI_SPEAR tristate "SDHCI support on ST SPEAr platform" depends on MMC_SDHCI && PLAT_SPEAR help This selects the Secure Digital Host Controller Interface (SDHCI) often referrered to as the HSMMC block in some of the ST SPEAR range of SoC If you have a controller with this interface, say Y or M here. If unsure, say N. config MMC_SDHCI_S3C_DMA bool "DMA support on S3C SDHCI" depends on MMC_SDHCI_S3C && EXPERIMENTAL help Enable DMA support on the Samsung S3C SDHCI glue. The DMA has proved to be problematic if the controller encounters certain errors, and thus should be treated with care. YMMV. config MMC_OMAP tristate "TI OMAP Multimedia Card Interface support" depends on ARCH_OMAP select TPS65010 if MACH_OMAP_H2 help This selects the TI OMAP Multimedia card Interface. If you have an OMAP board with a Multimedia Card slot, say Y or M here. If unsure, say N. config MMC_OMAP_HS tristate "TI OMAP High Speed Multimedia Card Interface support" depends on SOC_OMAP2430 || ARCH_OMAP3 || ARCH_OMAP4 help This selects the TI OMAP High Speed Multimedia card Interface. If you have an OMAP2430 or OMAP3 board or OMAP4 board with a Multimedia Card slot, say Y or M here. If unsure, say N. config MMC_WBSD tristate "Winbond W83L51xD SD/MMC Card Interface support" depends on ISA_DMA_API help This selects the Winbond(R) W83L51xD Secure digital and Multimedia card Interface. If you have a machine with a integrated W83L518D or W83L519D SD/MMC card reader, say Y or M here. If unsure, say N. config MMC_AU1X tristate "Alchemy AU1XX0 MMC Card Interface support" depends on SOC_AU1200 help This selects the AMD Alchemy(R) Multimedia card interface. If you have a Alchemy platform with a MMC slot, say Y or M here. If unsure, say N. choice prompt "Atmel SD/MMC Driver" depends on AVR32 || ARCH_AT91 default MMC_ATMELMCI if AVR32 help Choose which driver to use for the Atmel MCI Silicon config MMC_AT91 tristate "AT91 SD/MMC Card Interface support" depends on ARCH_AT91 help This selects the AT91 MCI controller. If unsure, say N. config MMC_ATMELMCI tristate "Atmel Multimedia Card Interface support" depends on AVR32 || ARCH_AT91 help This selects the Atmel Multimedia Card Interface driver. If you have an AT32 (AVR32) or AT91 platform with a Multimedia Card slot, say Y or M here. If unsure, say N. endchoice config MMC_ATMELMCI_DMA bool "Atmel MCI DMA support (EXPERIMENTAL)" depends on MMC_ATMELMCI && (AVR32 || ARCH_AT91SAM9G45) && DMA_ENGINE && EXPERIMENTAL help Say Y here to have the Atmel MCI driver use a DMA engine to do data transfers and thus increase the throughput and reduce the CPU utilization. Note that this is highly experimental and may cause the driver to lock up. If unsure, say N. config MMC_IMX tristate "Motorola i.MX Multimedia Card Interface support" depends on ARCH_MX1 help This selects the Motorola i.MX Multimedia card Interface. If you have a i.MX platform with a Multimedia Card slot, say Y or M here. If unsure, say N. config MMC_MSM tristate "Qualcomm SDCC Controller Support" depends on MMC && ARCH_MSM help This provides support for the SD/MMC cell found in the MSM and QSD SOCs from Qualcomm. The controller also has support for SDIO devices. config MMC_MXC tristate "Freescale i.MX2/3 Multimedia Card Interface support" depends on MACH_MX21 || MACH_MX27 || ARCH_MX31 help This selects the Freescale i.MX2/3 Multimedia card Interface. If you have a i.MX platform with a Multimedia Card slot, say Y or M here. If unsure, say N. config MMC_MXS tristate "Freescale MXS Multimedia Card Interface support" depends on ARCH_MXS && MXS_DMA help This selects the Freescale SSP MMC controller found on MXS based platforms like mx23/28. If unsure, say N. config MMC_TIFM_SD tristate "TI Flash Media MMC/SD Interface support (EXPERIMENTAL)" depends on EXPERIMENTAL && PCI select TIFM_CORE help Say Y here if you want to be able to access MMC/SD cards with the Texas Instruments(R) Flash Media card reader, found in many laptops. This option 'selects' (turns on, enables) 'TIFM_CORE', but you probably also need appropriate card reader host adapter, such as 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support (TIFM_7XX1)'. To compile this driver as a module, choose M here: the module will be called tifm_sd. config MMC_MVSDIO tristate "Marvell MMC/SD/SDIO host driver" depends on PLAT_ORION ---help--- This selects the Marvell SDIO host driver. SDIO may currently be found on the Kirkwood 88F6281 and 88F6192 SoC controllers. To compile this driver as a module, choose M here: the module will be called mvsdio. config MMC_DAVINCI tristate "TI DAVINCI Multimedia Card Interface support" depends on ARCH_DAVINCI help This selects the TI DAVINCI Multimedia card Interface. If you have an DAVINCI board with a Multimedia Card slot, say Y or M here. If unsure, say N. config MMC_SPI tristate "MMC/SD/SDIO over SPI" depends on SPI_MASTER && !HIGHMEM && HAS_DMA select CRC7 select CRC_ITU_T help Some systems access MMC/SD/SDIO cards using a SPI controller instead of using a "native" MMC/SD/SDIO controller. This has a disadvantage of being relatively high overhead, but a compensating advantage of working on many systems without dedicated MMC/SD/SDIO controllers. If unsure, or if your system has no SPI master driver, say N. config MMC_S3C tristate "Samsung S3C SD/MMC Card Interface support" depends on ARCH_S3C2410 help This selects a driver for the MCI interface found in Samsung's S3C2410, S3C2412, S3C2440, S3C2442 CPUs. If you have a board based on one of those and a MMC/SD slot, say Y or M here. If unsure, say N. config MMC_S3C_HW_SDIO_IRQ bool "Hardware support for SDIO IRQ" depends on MMC_S3C help Enable the hardware support for SDIO interrupts instead of using the generic polling code. choice prompt "Samsung S3C SD/MMC transfer code" depends on MMC_S3C config MMC_S3C_PIO bool "Use PIO transfers only" help Use PIO to transfer data between memory and the hardware. PIO is slower than DMA as it requires CPU instructions to move the data. This has been the traditional default for the S3C MCI driver. config MMC_S3C_DMA bool "Use DMA transfers only (EXPERIMENTAL)" depends on EXPERIMENTAL help Use DMA to transfer data between memory and the hardare. Currently, the DMA support in this driver seems to not be working properly and needs to be debugged before this option is useful. config MMC_S3C_PIODMA bool "Support for both PIO and DMA (EXPERIMENTAL)" help Compile both the PIO and DMA transfer routines into the driver and let the platform select at run-time which one is best. See notes for the DMA option. endchoice config MMC_GLAMO tristate "Glamo S3C SD/MMC Card Interface support" depends on MFD_GLAMO && MMC && REGULATOR select CRC7 help This selects a driver for the MCI interface found in the S-Media GLAMO chip, as used in Openmoko neo1973 GTA-02. If unsure, say N. config MMC_SDRICOH_CS tristate "MMC/SD driver for Ricoh Bay1Controllers (EXPERIMENTAL)" depends on EXPERIMENTAL && PCI && PCMCIA help Say Y here if your Notebook reports a Ricoh Bay1Controller PCMCIA card whenever you insert a MMC or SD card into the card slot. To compile this driver as a module, choose M here: the module will be called sdricoh_cs. config MMC_TMIO_CORE tristate config MMC_TMIO tristate "Toshiba Mobile IO Controller (TMIO) MMC/SD function support" depends on MFD_TMIO || MFD_ASIC3 select MMC_TMIO_CORE help This provides support for the SD/MMC cell found in TC6393XB, T7L66XB and also HTC ASIC3 config MMC_SDHI tristate "SH-Mobile SDHI SD/SDIO controller support" depends on SUPERH || ARCH_SHMOBILE select MMC_TMIO_CORE help This provides support for the SDHI SD/SDIO controller found in SuperH and ARM SH-Mobile SoCs config MMC_CB710 tristate "ENE CB710 MMC/SD Interface support" depends on PCI select MISC_DEVICES select CB710_CORE help This option enables support for MMC/SD part of ENE CB710/720 Flash memory card reader found in some laptops (ie. some versions of HP Compaq nx9500). This driver can also be built as a module. If so, the module will be called cb710-mmc. config MMC_VIA_SDMMC tristate "VIA SD/MMC Card Reader Driver" depends on PCI help This selects the VIA SD/MMC Card Reader driver, say Y or M here. VIA provides one multi-functional card reader which integrated into some motherboards manufactured by VIA. This card reader supports SD/MMC/SDHC. If you have a controller with this interface, say Y or M here. If unsure, say N. config SDH_BFIN tristate "Blackfin Secure Digital Host support" depends on (BF54x && !BF544) || (BF51x && !BF512) help If you say yes here you will get support for the Blackfin on-chip Secure Digital Host interface. This includes support for MMC and SD cards. To compile this driver as a module, choose M here: the module will be called bfin_sdh. If unsure, say N. config SDH_BFIN_MISSING_CMD_PULLUP_WORKAROUND bool "Blackfin EZkit Missing SDH_CMD Pull Up Resistor Workaround" depends on SDH_BFIN help If you say yes here SD-Cards may work on the EZkit. config MMC_DW tristate "Synopsys DesignWare Memory Card Interface" depends on ARM help This selects support for the Synopsys DesignWare Mobile Storage IP block, this provides host support for SD and MMC interfaces, in both PIO and external DMA modes. config MMC_DW_IDMAC bool "Internal DMAC interface" depends on MMC_DW help This selects support for the internal DMAC block within the Synopsys Designware Mobile Storage IP block. This disables the external DMA interface. config MMC_SH_MMCIF tristate "SuperH Internal MMCIF support" depends on MMC_BLOCK && (SUPERH || ARCH_SHMOBILE) help This selects the MMC Host Interface controller (MMCIF). This driver supports MMCIF in sh7724/sh7757/sh7372. config MMC_JZ4740 tristate "JZ4740 SD/Multimedia Card Interface support" depends on MACH_JZ4740 help This selects support for the SD/MMC controller on Ingenic JZ4740 SoCs. If you have a board based on such a SoC and with a SD/MMC slot, say Y or M here. config MMC_USHC tristate "USB SD Host Controller (USHC) support" depends on USB help This selects support for USB SD Host Controllers based on the Cypress Astoria chip with firmware compliant with CSR's USB SD Host Controller specification (CS-118793-SP). CSR boards with this device include: USB<>SDIO (M1985v2), and Ultrasira. Note: These controllers only support SDIO cards and do not support MMC or SD memory cards. # # MMC/SD card drivers # comment "MMC/SD/SDIO Card Drivers" config MMC_BLOCK tristate "MMC block device driver" depends on BLOCK default y help Say Y here to enable the MMC block device driver support. This provides a block device driver, which you can use to mount the filesystem. Almost everyone wishing MMC support should say Y or M here. config MMC_BLOCK_MINORS int "Number of minors per block device" depends on MMC_BLOCK range 4 256 default 8 help Number of minors per block device. One is needed for every partition on the disk (plus one for the whole disk). Number of total MMC minors available is 256, so your number of supported block devices will be limited to 256 divided by this number. Default is 8 to be backwards compatible with previous hardwired device numbering. If unsure, say 8 here. config MMC_BLOCK_BOUNCE bool "Use bounce buffer for simple hosts" depends on MMC_BLOCK default y help SD/MMC is a high latency protocol where it is crucial to send large requests in order to get high performance. Many controllers, however, are restricted to continuous memory (i.e. they can't do scatter-gather), something the kernel rarely can provide. Say Y here to help these restricted hosts by bouncing requests back and forth from a large buffer. You will get a big performance gain at the cost of up to 64 KiB of physical memory. If unsure, say Y here. config SDIO_UART tristate "SDIO UART/GPS class support" help SDIO function driver for SDIO cards that implements the UART class, as well as the GPS class which appears like a UART. config MMC_TEST tristate "MMC host test driver" help Development driver that performs a series of reads and writes to a memory card in order to expose certain well known bugs in host controllers. The tests are executed by writing to the "test" file in debugfs under each card. Note that whatever is on your card will be overwritten by these tests. This driver is only of interest to those developing or testing a host driver. Most people should say N here. # # MMC core configuration # config MMC_UNSAFE_RESUME bool "Assume MMC/SD cards are non-removable (DANGEROUS)" help If you say Y here, the MMC layer will assume that all cards stayed in their respective slots during the suspend. The normal behaviour is to remove them at suspend and redetecting them at resume. Breaking this assumption will in most cases result in data corruption. This option is usually just for embedded systems which use a MMC/SD card for rootfs. Most people should say N here. This option sets a default which can be overridden by the module parameter "removable=0" or "removable=1". config MMC_CLKGATE bool "MMC host clock gating (EXPERIMENTAL)" depends on EXPERIMENTAL help This will attempt to aggressively gate the clock to the MMC card. This is done to save power due to gating off the logic and bus noise when the MMC card is not in use. Your host driver has to support handling this in order for it to be of any use. If unsure, say N. menu "Bus options (PCI, PCMCIA, EISA, GSC, ISA)" config GSC bool "VSC/GSC/HSC bus support" default y help The VSC, GSC and HSC busses were used from the earliest 700-series workstations up to and including the C360/J2240 workstations. They were also used in servers from the E-class to the K-class. They are not found in B1000, C3000, J5000, A500, L1000, N4000 and upwards. If in doubt, say "Y". config HPPB bool "HP-PB bus support" depends on GSC help The HP-PB bus was used in the Nova class and K-class servers. If in doubt, say "Y" config IOMMU_CCIO bool "U2/Uturn I/O MMU" depends on GSC help Say Y here to enable DMA management routines for the first generation of PA-RISC cache-coherent machines. Programs the U2/Uturn chip in "Virtual Mode" and use the I/O MMU. config GSC_LASI bool "Lasi I/O support" depends on GSC help Say Y here to support the Lasi multifunction chip found in many PA-RISC workstations & servers. It includes interfaces for a parallel port, serial port, NCR 53c710 SCSI, Apricot Ethernet, Harmony audio, PS/2 keyboard & mouse, ISDN, telephony and floppy. Note that you must still enable all the individual drivers for these chips. config GSC_WAX bool "Wax I/O support" depends on GSC help Say Y here to support the Wax multifunction chip found in some older systems, including B/C/D/R class and 715/64, 715/80 and 715/100. Wax includes an EISA adapter, a serial port (not always used), a HIL interface chip and is also known to be used as the GSC bridge for an X.25 GSC card. config EISA bool "EISA support" depends on GSC help Say Y here if you have an EISA bus in your machine. This code supports both the Mongoose & Wax EISA adapters. It is sadly incomplete and lacks support for card-to-host DMA. source "drivers/eisa/Kconfig" config ISA bool "ISA support" depends on EISA help If you want to plug an ISA card into your EISA bus, say Y here. Most people should say N. config PCI bool "PCI support" help All recent HP machines have PCI slots, and you should say Y here if you have a recent machine. If you are convinced you do not have PCI slots in your machine (eg a 712), then you may say "N" here. Beware that some GSC cards have a Dino onboard and PCI inside them, so it may be safest to say "Y" anyway. source "drivers/pci/Kconfig" config GSC_DINO bool "GSCtoPCI/Dino PCI support" depends on PCI && GSC help Say Y here to support the Dino & Cujo GSC to PCI bridges found in machines from the B132 to the C360, the J2240 and the A180. Some GSC/HSC cards (eg gigabit & dual 100 Mbit Ethernet) have a Dino on the card, and you also need to say Y here if you have such a card. Note that Dino also supplies one of the serial ports on certain machines. If in doubt, say Y. config PCI_LBA bool "LBA/Elroy PCI support" depends on PCI help Say Y here to support the Elroy PCI Lower Bus Adapter. This is present on B, C, J, L and N-class machines with 4-digit model numbers and the A400/A500. config IOSAPIC bool depends on PCI_LBA default PCI_LBA config IOMMU_SBA bool depends on PCI_LBA default PCI_LBA config IOMMU_HELPER bool depends on IOMMU_SBA || IOMMU_CCIO default y #config PCI_EPIC # bool "EPIC/SAGA PCI support" # depends on PCI # default y # help # Say Y here for V-class PCI, DMA/IOMMU, IRQ subsystem support. source "drivers/pcmcia/Kconfig" source "drivers/pci/hotplug/Kconfig" endmenu menu "PA-RISC specific drivers" config SUPERIO bool "SuperIO (SuckyIO) support" depends on PCI_LBA default y help Say Y here to support the SuperIO chip found in Bxxxx, C3xxx and J5xxx+ machines. This enables IDE, Floppy, Parallel Port, and Serial port on those machines. config CHASSIS_LCD_LED bool "Chassis LCD and LED support" default y help Say Y here if you want to enable support for the Heartbeat, Disk/Network activities LEDs on some PA-RISC machines, or support for the LCD that can be found on recent material. This has nothing to do with LED State support for A and E class. If unsure, say Y. config PDC_CHASSIS bool "PDC chassis state codes support" default y help Say Y here if you want to enable support for Chassis codes. That includes support for LED State front panel as found on E class, and support for the GSP Virtual Front Panel (LED State and message logging) as found on high end servers such as A, L and N-class. This driver will also display progress messages on LCD display, such as "INI", "RUN" and "FLT", and might thus clobber messages shown by the LED/LCD driver. This driver updates the state panel (LED and/or LCD) upon system state change (eg: boot, shutdown or panic). If unsure, say Y. config PDC_CHASSIS_WARN bool "PDC chassis warnings support" depends on PROC_FS default y help Say Y here if you want to enable support for Chassis warnings. This will add a proc entry '/proc/chassis' giving some information about the overall health state of the system. This includes NVRAM battery level, overtemp or failures such as fans or power units. If unsure, say Y. config PDC_STABLE tristate "PDC Stable Storage support" depends on SYSFS default y help Say Y here if you want to enable support for accessing Stable Storage variables (PDC non volatile variables such as Primary Boot Path, Console Path, Autoboot, Autosearch, etc) through SysFS. If unsure, say Y. To compile this driver as a module, choose M here. The module will be called pdc_stable. endmenu config CPU_IDLE bool "CPU idle PM support" default ACPI help CPU idle is a generic framework for supporting software-controlled idle processor power management. It includes modular cross-platform governors that can be swapped during runtime. If you're using an ACPI-enabled platform, you should say Y here. config CPU_IDLE_GOV_LADDER bool depends on CPU_IDLE default y config CPU_IDLE_GOV_MENU bool depends on CPU_IDLE && NO_HZ default y # # IDE ATA ATAPI Block device driver configuration # # Select HAVE_IDE if IDE is supported config HAVE_IDE bool menuconfig IDE tristate "ATA/ATAPI/MFM/RLL support (DEPRECATED)" depends on HAVE_IDE depends on BLOCK ---help--- If you say Y here, your kernel will be able to manage ATA/(E)IDE and ATAPI units. The most common cases are IDE hard drives and ATAPI CD-ROM drives. This subsystem is currently in maintenance mode with only bug fix changes applied. Users of ATA hardware are encouraged to migrate to the newer ATA subsystem ("Serial ATA (prod) and Parallel ATA (experimental) drivers") which is more actively maintained. To compile this driver as a module, choose M here: the module will be called ide-core. For further information, please read . If unsure, say N. if IDE comment "Please see Documentation/ide/ide.txt for help/info on IDE drives" config IDE_XFER_MODE bool config IDE_TIMINGS bool select IDE_XFER_MODE config IDE_ATAPI bool config IDE_LEGACY bool config BLK_DEV_IDE_SATA bool "Support for SATA (deprecated; conflicts with libata SATA driver)" default n ---help--- There are two drivers for Serial ATA controllers. The main driver, "libata", uses the SCSI subsystem and supports most modern SATA controllers. In order to use it you may take a look at "Serial ATA (prod) and Parallel ATA (experimental) drivers". The IDE driver (which you are currently configuring) supports a few first-generation SATA controllers. In order to eliminate conflicts between the two subsystems, this config option enables the IDE driver's SATA support. Normally this is disabled, as it is preferred that libata supports SATA controllers, and this (IDE) driver supports PATA controllers. If unsure, say N. config IDE_GD tristate "generic ATA/ATAPI disk support" default y help Support for ATA/ATAPI disks (including ATAPI floppy drives). To compile this driver as a module, choose M here. The module will be called ide-gd_mod. If unsure, say Y. config IDE_GD_ATA bool "ATA disk support" depends on IDE_GD default y help This will include support for ATA hard disks. If unsure, say Y. config IDE_GD_ATAPI bool "ATAPI floppy support" depends on IDE_GD select IDE_ATAPI help This will include support for ATAPI floppy drives (i.e. Iomega ZIP or MKE LS-120). For information about jumper settings and the question of when a ZIP drive uses a partition table, see . If unsure, say N. config BLK_DEV_IDECS tristate "PCMCIA IDE support" depends on PCMCIA help Support for Compact Flash cards, outboard IDE disks, tape drives, and CD-ROM drives connected through a PCMCIA card. config BLK_DEV_DELKIN tristate "Cardbus IDE support (Delkin/ASKA/Workbit)" depends on CARDBUS && PCI help Support for Delkin, ASKA, and Workbit Cardbus CompactFlash Adapters. This may also work for similar SD and XD adapters. config BLK_DEV_IDECD tristate "Include IDE/ATAPI CDROM support" select IDE_ATAPI ---help--- If you have a CD-ROM drive using the ATAPI protocol, say Y. ATAPI is a newer protocol used by IDE CD-ROM and TAPE drives, similar to the SCSI protocol. Most new CD-ROM drives use ATAPI, including the NEC-260, Mitsumi FX400, Sony 55E, and just about all non-SCSI double(2X) or better speed drives. If you say Y here, the CD-ROM drive will be identified at boot time along with other IDE devices, as "hdb" or "hdc", or something similar (check the boot messages with dmesg). If this is your only CD-ROM drive, you can say N to all other CD-ROM options, but be sure to say Y or M to "ISO 9660 CD-ROM file system support". To compile this driver as a module, choose M here: the module will be called ide-cd. config BLK_DEV_IDECD_VERBOSE_ERRORS bool "Verbose error logging for IDE/ATAPI CDROM driver" if EXPERT depends on BLK_DEV_IDECD default y help Turn this on to have the driver print out the meanings of the ATAPI error codes. This will use up additional 8kB of kernel-space memory, though. config BLK_DEV_IDETAPE tristate "Include IDE/ATAPI TAPE support" select IDE_ATAPI help If you have an IDE tape drive using the ATAPI protocol, say Y. ATAPI is a newer protocol used by IDE tape and CD-ROM drives, similar to the SCSI protocol. If you have an SCSI tape drive however, you can say N here. You should also say Y if you have an OnStream DI-30 tape drive; this will not work with the SCSI protocol, until there is support for the SC-30 and SC-50 versions. If you say Y here, the tape drive will be identified at boot time along with other IDE devices, as "hdb" or "hdc", or something similar, and will be mapped to a character device such as "ht0" (check the boot messages with dmesg). Be sure to consult the and files for usage information. To compile this driver as a module, choose M here: the module will be called ide-tape. config BLK_DEV_IDEACPI bool "IDE ACPI support" depends on ACPI ---help--- Implement ACPI support for generic IDE devices. On modern machines ACPI support is required to properly handle ACPI S3 states. config IDE_TASK_IOCTL bool "IDE Taskfile Access" help This is a direct raw access to the media. It is a complex but elegant solution to test and validate the domain of the hardware and perform below the driver data recovery if needed. This is the most basic form of media-forensics. If you are unsure, say N here. config IDE_PROC_FS bool "legacy /proc/ide/ support" depends on IDE && PROC_FS default y help This option enables support for the various files in /proc/ide. In Linux 2.6 this has been superseded by files in sysfs but many legacy applications rely on this. If unsure say Y. comment "IDE chipset support/bugfixes" config IDE_GENERIC tristate "generic/default IDE chipset support" depends on ALPHA || X86 || IA64 || M32R || MIPS || ARCH_RPC || ARCH_SHARK default ARM && (ARCH_RPC || ARCH_SHARK) help This is the generic IDE driver. This driver attaches to the fixed legacy ports (e.g. on PCs 0x1f0/0x170, 0x1e8/0x168 and so on). Please note that if this driver is built into the kernel or loaded before other ATA (IDE or libata) drivers and the controller is located at legacy ports, this driver may grab those ports and thus can prevent the controller specific driver from attaching. Also, currently, IDE generic doesn't allow IRQ sharing meaning that the IRQs it grabs won't be available to other controllers sharing those IRQs which usually makes drivers for those controllers fail. Generally, it's not a good idea to load IDE generic driver on modern systems. If unsure, say N. config BLK_DEV_PLATFORM tristate "Platform driver for IDE interfaces" help This is the platform IDE driver, used mostly for Memory Mapped IDE devices, like Compact Flashes running in True IDE mode. If unsure, say N. config BLK_DEV_CMD640 tristate "CMD640 chipset bugfix/support" depends on X86 select IDE_TIMINGS ---help--- The CMD-Technologies CMD640 IDE chip is used on many common 486 and Pentium motherboards, usually in combination with a "Neptune" or "SiS" chipset. Unfortunately, it has a number of rather nasty design flaws that can cause severe data corruption under many common conditions. Say Y here to include code which tries to automatically detect and correct the problems under Linux. This option also enables access to the secondary IDE ports in some CMD640 based systems. This driver will work automatically in PCI based systems (most new systems have PCI slots). But if your system uses VESA local bus (VLB) instead of PCI, you must also supply a kernel boot parameter to enable the CMD640 bugfix/support: "cmd640.probe_vlb". (Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel.) The CMD640 chip is also used on add-in cards by Acculogic, and on the "CSA-6400E PCI to IDE controller" that some people have. For details, read . config BLK_DEV_CMD640_ENHANCED bool "CMD640 enhanced support" depends on BLK_DEV_CMD640 help This option includes support for setting/autotuning PIO modes and prefetch on CMD640 IDE interfaces. For details, read . If you have a CMD640 IDE interface and your BIOS does not already do this for you, then say Y here. Otherwise say N. config BLK_DEV_IDEPNP tristate "PNP EIDE support" depends on PNP help If you have a PnP (Plug and Play) compatible EIDE card and would like the kernel to automatically detect and activate it, say Y here. config BLK_DEV_IDEDMA_SFF bool if PCI comment "PCI IDE chipsets support" config BLK_DEV_IDEPCI bool config IDEPCI_PCIBUS_ORDER bool "Probe IDE PCI devices in the PCI bus order (DEPRECATED)" depends on IDE=y && BLK_DEV_IDEPCI default y help Probe IDE PCI devices in the order in which they appear on the PCI bus (i.e. 00:1f.1 PCI device before 02:01.0 PCI device) instead of the order in which IDE PCI host drivers are loaded. Please note that this method of assuring stable naming of IDE devices is unreliable and use other means for achieving it (i.e. udev). If in doubt, say N. # TODO: split it on per host driver config options (or module parameters) config BLK_DEV_OFFBOARD bool "Boot off-board chipsets first support (DEPRECATED)" depends on BLK_DEV_IDEPCI && (BLK_DEV_AEC62XX || BLK_DEV_GENERIC || BLK_DEV_HPT366 || BLK_DEV_PDC202XX_NEW || BLK_DEV_PDC202XX_OLD || BLK_DEV_TC86C001) help Normally, IDE controllers built into the motherboard (on-board controllers) are assigned to ide0 and ide1 while those on add-in PCI cards (off-board controllers) are relegated to ide2 and ide3. Answering Y here will allow you to reverse the situation, with off-board controllers on ide0/1 and on-board controllers on ide2/3. This can improve the usability of some boot managers such as lilo when booting from a drive on an off-board controller. Note that, if you do this, the order of the hd* devices will be rearranged which may require modification of fstab and other files. Please also note that this method of assuring stable naming of IDE devices is unreliable and use other means for achieving it (i.e. udev). If in doubt, say N. config BLK_DEV_GENERIC tristate "Generic PCI IDE Chipset Support" select BLK_DEV_IDEPCI help This option provides generic support for various PCI IDE Chipsets which otherwise might not be supported. config BLK_DEV_OPTI621 tristate "OPTi 82C621 chipset enhanced support (EXPERIMENTAL)" depends on EXPERIMENTAL select BLK_DEV_IDEPCI help This is a driver for the OPTi 82C621 EIDE controller. Please read the comments at the top of . config BLK_DEV_RZ1000 tristate "RZ1000 chipset bugfix/support" depends on X86 select BLK_DEV_IDEPCI help The PC-Technologies RZ1000 IDE chip is used on many common 486 and Pentium motherboards, usually along with the "Neptune" chipset. Unfortunately, it has a rather nasty design flaw that can cause severe data corruption under many conditions. Say Y here to include code which automatically detects and corrects the problem under Linux. This may slow disk throughput by a few percent, but at least things will operate 100% reliably. config BLK_DEV_IDEDMA_PCI bool select BLK_DEV_IDEPCI select BLK_DEV_IDEDMA_SFF config BLK_DEV_AEC62XX tristate "AEC62XX chipset support" select BLK_DEV_IDEDMA_PCI help This driver adds explicit support for Acard AEC62xx (Artop ATP8xx) IDE controllers. This allows the kernel to change PIO, DMA and UDMA speeds and to configure the chip to optimum performance. config BLK_DEV_ALI15X3 tristate "ALI M15x3 chipset support" select IDE_TIMINGS select BLK_DEV_IDEDMA_PCI help This driver ensures (U)DMA support for ALI 1533, 1543 and 1543C onboard chipsets. It also tests for Simplex mode and enables normal dual channel support. Please read the comments at the top of . If unsure, say N. config BLK_DEV_AMD74XX tristate "AMD and nVidia IDE support" depends on !ARM select IDE_TIMINGS select BLK_DEV_IDEDMA_PCI help This driver adds explicit support for AMD-7xx and AMD-8111 chips and also for the nVidia nForce chip. This allows the kernel to change PIO, DMA and UDMA speeds and to configure the chip to optimum performance. config BLK_DEV_ATIIXP tristate "ATI IXP chipset IDE support" depends on X86 select BLK_DEV_IDEDMA_PCI help This driver adds explicit support for ATI IXP chipset. This allows the kernel to change PIO, DMA and UDMA speeds and to configure the chip to optimum performance. Say Y here if you have an ATI IXP chipset IDE controller. config BLK_DEV_CMD64X tristate "CMD64{3|6|8|9} chipset support" select IDE_TIMINGS select BLK_DEV_IDEDMA_PCI help Say Y here if you have an IDE controller which uses any of these chipsets: CMD643, CMD646, or CMD648. config BLK_DEV_TRIFLEX tristate "Compaq Triflex IDE support" select BLK_DEV_IDEDMA_PCI help Say Y here if you have a Compaq Triflex IDE controller, such as those commonly found on Compaq Pentium-Pro systems config BLK_DEV_CY82C693 tristate "CY82C693 chipset support" depends on ALPHA select IDE_TIMINGS select BLK_DEV_IDEDMA_PCI help This driver adds detection and support for the CY82C693 chipset used on Digital's PC-Alpha 164SX boards. config BLK_DEV_CS5520 tristate "Cyrix CS5510/20 MediaGX chipset support (VERY EXPERIMENTAL)" depends on EXPERIMENTAL select BLK_DEV_IDEDMA_PCI help Include support for PIO tuning and virtual DMA on the Cyrix MediaGX 5510/5520 chipset. This will automatically be detected and configured if found. It is safe to say Y to this question. config BLK_DEV_CS5530 tristate "Cyrix/National Semiconductor CS5530 MediaGX chipset support" select BLK_DEV_IDEDMA_PCI help Include support for UDMA on the Cyrix MediaGX 5530 chipset. This will automatically be detected and configured if found. It is safe to say Y to this question. config BLK_DEV_CS5535 tristate "AMD CS5535 chipset support" depends on X86 && !X86_64 select BLK_DEV_IDEDMA_PCI help Include support for UDMA on the NSC/AMD CS5535 companion chipset. This will automatically be detected and configured if found. It is safe to say Y to this question. config BLK_DEV_CS5536 tristate "CS5536 chipset support" depends on X86_32 select BLK_DEV_IDEDMA_PCI help This option enables support for the AMD CS5536 companion chip used with the Geode LX processor family. If unsure, say N. config BLK_DEV_HPT366 tristate "HPT36X/37X chipset support" select BLK_DEV_IDEDMA_PCI help HPT366 is an Ultra DMA chipset for ATA-66. HPT368 is an Ultra DMA chipset for ATA-66 RAID Based. HPT370 is an Ultra DMA chipset for ATA-100. HPT372 is an Ultra DMA chipset for ATA-100. HPT374 is an Ultra DMA chipset for ATA-100. This driver adds up to 4 more EIDE devices sharing a single interrupt. The HPT366 chipset in its current form is bootable. One solution for this problem are special LILO commands for redirecting the reference to device 0x80. The other solution is to say Y to "Boot off-board chipsets first support" (CONFIG_BLK_DEV_OFFBOARD) unless your mother board has the chipset natively mounted. Regardless one should use the fore mentioned option and call at LILO. This driver requires dynamic tuning of the chipset during the ide-probe at boot. It is reported to support DVD II drives, by the manufacturer. config BLK_DEV_JMICRON tristate "JMicron JMB36x support" select BLK_DEV_IDEDMA_PCI help Basic support for the JMicron ATA controllers. For full support use the libata drivers. config BLK_DEV_SC1200 tristate "National SCx200 chipset support" select BLK_DEV_IDEDMA_PCI help This driver adds support for the on-board IDE controller on the National SCx200 series of embedded x86 "Geode" systems. config BLK_DEV_PIIX tristate "Intel PIIX/ICH chipsets support" select BLK_DEV_IDEDMA_PCI help This driver adds explicit support for Intel PIIX and ICH chips. This allows the kernel to change PIO, DMA and UDMA speeds and to configure the chip to optimum performance. config BLK_DEV_IT8172 tristate "IT8172 IDE support" select BLK_DEV_IDEDMA_PCI help This driver adds support for the IDE controller on the IT8172 System Controller. config BLK_DEV_IT8213 tristate "IT8213 IDE support" select BLK_DEV_IDEDMA_PCI help This driver adds support for the ITE 8213 IDE controller. config BLK_DEV_IT821X tristate "IT821X IDE support" select BLK_DEV_IDEDMA_PCI help This driver adds support for the ITE 8211 IDE controller and the IT 8212 IDE RAID controller in both RAID and pass-through mode. config BLK_DEV_NS87415 tristate "NS87415 chipset support" select BLK_DEV_IDEDMA_PCI help This driver adds detection and support for the NS87415 chip (used mainly on SPARC64 and PA-RISC machines). Please read the comments at the top of . config BLK_DEV_PDC202XX_OLD tristate "PROMISE PDC202{46|62|65|67} support" select BLK_DEV_IDEDMA_PCI help Promise Ultra33 or PDC20246 Promise Ultra66 or PDC20262 Promise Ultra100 or PDC20265/PDC20267/PDC20268 This driver adds up to 4 more EIDE devices sharing a single interrupt. This add-on card is a bootable PCI UDMA controller. Since multiple cards can be installed and there are BIOS ROM problems that happen if the BIOS revisions of all installed cards (three-max) do not match, the driver attempts to do dynamic tuning of the chipset at boot-time for max-speed. Ultra33 BIOS 1.25 or newer is required for more than one card. Please read the comments at the top of . If unsure, say N. config BLK_DEV_PDC202XX_NEW tristate "PROMISE PDC202{68|69|70|71|75|76|77} support" select BLK_DEV_IDEDMA_PCI config BLK_DEV_SVWKS tristate "ServerWorks OSB4/CSB5/CSB6 chipsets support" select BLK_DEV_IDEDMA_PCI help This driver adds PIO/(U)DMA support for the ServerWorks OSB4/CSB5 chipsets. config BLK_DEV_SGIIOC4 tristate "Silicon Graphics IOC4 chipset ATA/ATAPI support" depends on (IA64_SGI_SN2 || IA64_GENERIC) && SGI_IOC4 select BLK_DEV_IDEDMA_PCI help This driver adds PIO & MultiMode DMA-2 support for the SGI IOC4 chipset, which has one channel and can support two devices. Please say Y here if you have an Altix System from SGI. config BLK_DEV_SIIMAGE tristate "Silicon Image chipset support" select BLK_DEV_IDEDMA_PCI help This driver adds PIO/(U)DMA support for the SI CMD680 and SII 3112 (Serial ATA) chips. config BLK_DEV_SIS5513 tristate "SiS5513 chipset support" depends on X86 select BLK_DEV_IDEDMA_PCI help This driver ensures (U)DMA support for SIS5513 chipset family based mainboards. The following chipsets are supported: ATA16: SiS5511, SiS5513 ATA33: SiS5591, SiS5597, SiS5598, SiS5600 ATA66: SiS530, SiS540, SiS620, SiS630, SiS640 ATA100: SiS635, SiS645, SiS650, SiS730, SiS735, SiS740, SiS745, SiS750 Please read the comments at the top of . config BLK_DEV_SL82C105 tristate "Winbond SL82c105 support" depends on (PPC || ARM) select IDE_TIMINGS select BLK_DEV_IDEDMA_PCI help If you have a Winbond SL82c105 IDE controller, say Y here to enable special configuration for this chip. This is common on various CHRP motherboards, but could be used elsewhere. If in doubt, say Y. config BLK_DEV_SLC90E66 tristate "SLC90E66 chipset support" select BLK_DEV_IDEDMA_PCI help This driver ensures (U)DMA support for Victory66 SouthBridges for SMsC with Intel NorthBridges. This is an Ultra66 based chipset. The nice thing about it is that you can mix Ultra/DMA/PIO devices and it will handle timing cycles. Since this is an improved look-a-like to the PIIX4 it should be a nice addition. Please read the comments at the top of . config BLK_DEV_TRM290 tristate "Tekram TRM290 chipset support" select BLK_DEV_IDEDMA_PCI help This driver adds support for bus master DMA transfers using the Tekram TRM290 PCI IDE chip. Volunteers are needed for further tweaking and development. Please read the comments at the top of . config BLK_DEV_VIA82CXXX tristate "VIA82CXXX chipset support" select IDE_TIMINGS select BLK_DEV_IDEDMA_PCI help This driver adds explicit support for VIA BusMastering IDE chips. This allows the kernel to change PIO, DMA and UDMA speeds and to configure the chip to optimum performance. config BLK_DEV_TC86C001 tristate "Toshiba TC86C001 support" select BLK_DEV_IDEDMA_PCI help This driver adds support for Toshiba TC86C001 GOKU-S chip. config BLK_DEV_CELLEB tristate "Toshiba's Cell Reference Set IDE support" depends on PPC_CELLEB select BLK_DEV_IDEDMA_PCI help This driver provides support for the on-board IDE controller on Toshiba Cell Reference Board. If unsure, say Y. endif # TODO: BLK_DEV_IDEDMA_PCI -> BLK_DEV_IDEDMA_SFF config BLK_DEV_IDE_PMAC tristate "PowerMac on-board IDE support" depends on PPC_PMAC select IDE_TIMINGS select BLK_DEV_IDEDMA_PCI help This driver provides support for the on-board IDE controller on most of the recent Apple Power Macintoshes and PowerBooks. If unsure, say Y. config BLK_DEV_IDE_PMAC_ATA100FIRST bool "Probe on-board ATA/100 (Kauai) first" depends on BLK_DEV_IDE_PMAC help This option will cause the ATA/100 controller found in UniNorth2 based machines (Windtunnel PowerMac, Aluminium PowerBooks, ...) to be probed before the ATA/66 and ATA/33 controllers. Without these, those machine used to have the hard disk on hdc and the CD-ROM on hda. This option changes this to more natural hda for hard disk and hdc for CD-ROM. config BLK_DEV_IDE_AU1XXX bool "IDE for AMD Alchemy Au1200" depends on SOC_AU1200 select IDE_XFER_MODE choice prompt "IDE Mode for AMD Alchemy Au1200" default CONFIG_BLK_DEV_IDE_AU1XXX_PIO_DBDMA depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX config BLK_DEV_IDE_AU1XXX_PIO_DBDMA bool "PIO+DbDMA IDE for AMD Alchemy Au1200" config BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA bool "MDMA2+DbDMA IDE for AMD Alchemy Au1200" depends on SOC_AU1200 && BLK_DEV_IDE_AU1XXX endchoice config BLK_DEV_IDE_TX4938 tristate "TX4938 internal IDE support" depends on SOC_TX4938 select IDE_TIMINGS config BLK_DEV_IDE_TX4939 tristate "TX4939 internal IDE support" depends on SOC_TX4939 select BLK_DEV_IDEDMA_SFF config BLK_DEV_IDE_AT91 tristate "Atmel AT91 (SAM9, CAP9, AT572D940HF) IDE support" depends on ARM && ARCH_AT91 && !ARCH_AT91RM9200 && !ARCH_AT91X40 select IDE_TIMINGS config BLK_DEV_IDE_ICSIDE tristate "ICS IDE interface support" depends on ARM && ARCH_ACORN help On Acorn systems, say Y here if you wish to use the ICS IDE interface card. This is not required for ICS partition support. If you are unsure, say N to this. config BLK_DEV_IDEDMA_ICS bool "ICS DMA support" depends on BLK_DEV_IDE_ICSIDE help Say Y here if you want to add DMA (Direct Memory Access) support to the ICS IDE driver. config BLK_DEV_IDE_RAPIDE tristate "RapIDE interface support" depends on ARM && ARCH_ACORN help Say Y here if you want to support the Yellowstone RapIDE controller manufactured for use with Acorn computers. config IDE_H8300 tristate "H8300 IDE support" depends on H8300 default y help Enables the H8300 IDE driver. config BLK_DEV_GAYLE tristate "Amiga Gayle IDE interface support" depends on AMIGA help This is the IDE driver for the Amiga Gayle IDE interface. It supports both the `A1200 style' and `A4000 style' of the Gayle IDE interface, This includes on-board IDE interfaces on some Amiga models (A600, A1200, A4000, and A4000T), and IDE interfaces on the Zorro expansion bus (M-Tech E-Matrix 530 expansion card). It also provides support for the so-called `IDE doublers' (made by various manufacturers, e.g. Eyetech) that can be connected to the on-board IDE interface of some Amiga models. Using such an IDE doubler, you can connect up to four instead of two IDE devices to the Amiga's on-board IDE interface. The feature is enabled at kernel runtime using the "gayle.doubler" kernel boot parameter. Say Y if you have an Amiga with a Gayle IDE interface and want to use IDE devices (hard disks, CD-ROM drives, etc.) that are connected to it. Note that you also have to enable Zorro bus support if you want to use Gayle IDE interfaces on the Zorro expansion bus. config BLK_DEV_BUDDHA tristate "Buddha/Catweasel/X-Surf IDE interface support (EXPERIMENTAL)" depends on ZORRO && EXPERIMENTAL help This is the IDE driver for the IDE interfaces on the Buddha, Catweasel and X-Surf expansion boards. It supports up to two interfaces on the Buddha, three on the Catweasel and two on the X-Surf. Say Y if you have a Buddha or Catweasel expansion board and want to use IDE devices (hard disks, CD-ROM drives, etc.) that are connected to one of its IDE interfaces. config BLK_DEV_FALCON_IDE tristate "Falcon IDE interface support" depends on ATARI help This is the IDE driver for the on-board IDE interface on the Atari Falcon. Say Y if you have a Falcon and want to use IDE devices (hard disks, CD-ROM drives, etc.) that are connected to the on-board IDE interface. config BLK_DEV_MAC_IDE tristate "Macintosh Quadra/Powerbook IDE interface support" depends on MAC help This is the IDE driver for the on-board IDE interface on some m68k Macintosh models. It supports both the `Quadra style' (used in Quadra/ Centris 630 and Performa 588 models) and `Powerbook style' (used in the Powerbook 150 and 190 models) IDE interface. Say Y if you have such an Macintosh model and want to use IDE devices (hard disks, CD-ROM drives, etc.) that are connected to the on-board IDE interface. config BLK_DEV_Q40IDE tristate "Q40/Q60 IDE interface support" depends on Q40 help Enable the on-board IDE controller in the Q40/Q60. This should normally be on; disable it only if you are running a custom hard drive subsystem through an expansion card. config BLK_DEV_PALMCHIP_BK3710 tristate "Palmchip bk3710 IDE controller support" depends on ARCH_DAVINCI select IDE_TIMINGS select BLK_DEV_IDEDMA_SFF help Say Y here if you want to support the onchip IDE controller on the TI DaVinci SoC # no isa -> no vlb if ISA && (ALPHA || X86 || MIPS) comment "Other IDE chipsets support" comment "Note: most of these also require special kernel boot parameters" config BLK_DEV_4DRIVES tristate "Generic 4 drives/port support" help Certain older chipsets, including the Tekram 690CD, use a single set of I/O ports at 0x1f0 to control up to four drives, instead of the customary two drives per port. Support for this can be enabled at runtime using the "ide-4drives.probe" kernel boot parameter if you say Y here. config BLK_DEV_ALI14XX tristate "ALI M14xx support" select IDE_TIMINGS select IDE_LEGACY help This driver is enabled at runtime using the "ali14xx.probe" kernel boot parameter. It enables support for the secondary IDE interface of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster I/O speeds to be set as well. See the files and for more info. config BLK_DEV_DTC2278 tristate "DTC-2278 support" select IDE_XFER_MODE select IDE_LEGACY help This driver is enabled at runtime using the "dtc2278.probe" kernel boot parameter. It enables support for the secondary IDE interface of the DTC-2278 card, and permits faster I/O speeds to be set as well. See the and files for more info. config BLK_DEV_HT6560B tristate "Holtek HT6560B support" select IDE_TIMINGS select IDE_LEGACY help This driver is enabled at runtime using the "ht6560b.probe" kernel boot parameter. It enables support for the secondary IDE interface of the Holtek card, and permits faster I/O speeds to be set as well. See the and files for more info. config BLK_DEV_QD65XX tristate "QDI QD65xx support" select IDE_TIMINGS select IDE_LEGACY help This driver is enabled at runtime using the "qd65xx.probe" kernel boot parameter. It permits faster I/O speeds to be set. See the and for more info. config BLK_DEV_UMC8672 tristate "UMC-8672 support" select IDE_XFER_MODE select IDE_LEGACY help This driver is enabled at runtime using the "umc8672.probe" kernel boot parameter. It enables support for the secondary IDE interface of the UMC-8672, and permits faster I/O speeds to be set as well. See the files and for more info. endif config BLK_DEV_IDEDMA def_bool BLK_DEV_IDEDMA_SFF || \ BLK_DEV_IDEDMA_ICS || BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA select IDE_XFER_MODE endif # IDE # # EDAC Kconfig # Copyright (c) 2008 Doug Thompson www.softwarebitmaker.com # Licensed and distributed under the GPL # menuconfig EDAC bool "EDAC (Error Detection And Correction) reporting" depends on HAS_IOMEM depends on X86 || PPC || TILE help EDAC is designed to report errors in the core system. These are low-level errors that are reported in the CPU or supporting chipset or other subsystems: memory errors, cache errors, PCI errors, thermal throttling, etc.. If unsure, select 'Y'. If this code is reporting problems on your system, please see the EDAC project web pages for more information at: and: There is also a mailing list for the EDAC project, which can be found via the sourceforge page. if EDAC comment "Reporting subsystems" config EDAC_DEBUG bool "Debugging" help This turns on debugging information for the entire EDAC sub-system. You can insert module with "debug_level=x", current there're four debug levels (x=0,1,2,3 from low to high). Usually you should select 'N'. config EDAC_DECODE_MCE tristate "Decode MCEs in human-readable form (only on AMD for now)" depends on CPU_SUP_AMD && X86_MCE default y ---help--- Enable this option if you want to decode Machine Check Exceptions occurring on your machine in human-readable form. You should definitely say Y here in case you want to decode MCEs which occur really early upon boot, before the module infrastructure has been initialized. config EDAC_MCE_INJ tristate "Simple MCE injection interface over /sysfs" depends on EDAC_DECODE_MCE default n help This is a simple interface to inject MCEs over /sysfs and test the MCE decoding code in EDAC. This is currently AMD-only. config EDAC_MM_EDAC tristate "Main Memory EDAC (Error Detection And Correction) reporting" help Some systems are able to detect and correct errors in main memory. EDAC can report statistics on memory error detection and correction (EDAC - or commonly referred to ECC errors). EDAC will also try to decode where these errors occurred so that a particular failing memory module can be replaced. If unsure, select 'Y'. config EDAC_MCE bool config EDAC_AMD64 tristate "AMD64 (Opteron, Athlon64) K8, F10h" depends on EDAC_MM_EDAC && AMD_NB && X86_64 && EDAC_DECODE_MCE help Support for error detection and correction of DRAM ECC errors on the AMD64 families of memory controllers (K8 and F10h) config EDAC_AMD64_ERROR_INJECTION bool "Sysfs HW Error injection facilities" depends on EDAC_AMD64 help Recent Opterons (Family 10h and later) provide for Memory Error Injection into the ECC detection circuits. The amd64_edac module allows the operator/user to inject Uncorrectable and Correctable errors into DRAM. When enabled, in each of the respective memory controller directories (/sys/devices/system/edac/mc/mcX), there are 3 input files: - inject_section (0..3, 16-byte section of 64-byte cacheline), - inject_word (0..8, 16-bit word of 16-byte section), - inject_ecc_vector (hex ecc vector: select bits of inject word) In addition, there are two control files, inject_read and inject_write, which trigger the DRAM ECC Read and Write respectively. config EDAC_AMD76X tristate "AMD 76x (760, 762, 768)" depends on EDAC_MM_EDAC && PCI && X86_32 help Support for error detection and correction on the AMD 76x series of chipsets used with the Athlon processor. config EDAC_E7XXX tristate "Intel e7xxx (e7205, e7500, e7501, e7505)" depends on EDAC_MM_EDAC && PCI && X86_32 help Support for error detection and correction on the Intel E7205, E7500, E7501 and E7505 server chipsets. config EDAC_E752X tristate "Intel e752x (e7520, e7525, e7320) and 3100" depends on EDAC_MM_EDAC && PCI && X86 && HOTPLUG help Support for error detection and correction on the Intel E7520, E7525, E7320 server chipsets. config EDAC_I82443BXGX tristate "Intel 82443BX/GX (440BX/GX)" depends on EDAC_MM_EDAC && PCI && X86_32 depends on BROKEN help Support for error detection and correction on the Intel 82443BX/GX memory controllers (440BX/GX chipsets). config EDAC_I82875P tristate "Intel 82875p (D82875P, E7210)" depends on EDAC_MM_EDAC && PCI && X86_32 help Support for error detection and correction on the Intel DP82785P and E7210 server chipsets. config EDAC_I82975X tristate "Intel 82975x (D82975x)" depends on EDAC_MM_EDAC && PCI && X86 help Support for error detection and correction on the Intel DP82975x server chipsets. config EDAC_I3000 tristate "Intel 3000/3010" depends on EDAC_MM_EDAC && PCI && X86 help Support for error detection and correction on the Intel 3000 and 3010 server chipsets. config EDAC_I3200 tristate "Intel 3200" depends on EDAC_MM_EDAC && PCI && X86 && EXPERIMENTAL help Support for error detection and correction on the Intel 3200 and 3210 server chipsets. config EDAC_X38 tristate "Intel X38" depends on EDAC_MM_EDAC && PCI && X86 help Support for error detection and correction on the Intel X38 server chipsets. config EDAC_I5400 tristate "Intel 5400 (Seaburg) chipsets" depends on EDAC_MM_EDAC && PCI && X86 help Support for error detection and correction the Intel i5400 MCH chipset (Seaburg). config EDAC_I7CORE tristate "Intel i7 Core (Nehalem) processors" depends on EDAC_MM_EDAC && PCI && X86 select EDAC_MCE help Support for error detection and correction the Intel i7 Core (Nehalem) Integrated Memory Controller that exists on newer processors like i7 Core, i7 Core Extreme, Xeon 35xx and Xeon 55xx processors. config EDAC_I82860 tristate "Intel 82860" depends on EDAC_MM_EDAC && PCI && X86_32 help Support for error detection and correction on the Intel 82860 chipset. config EDAC_R82600 tristate "Radisys 82600 embedded chipset" depends on EDAC_MM_EDAC && PCI && X86_32 help Support for error detection and correction on the Radisys 82600 embedded chipset. config EDAC_I5000 tristate "Intel Greencreek/Blackford chipset" depends on EDAC_MM_EDAC && X86 && PCI help Support for error detection and correction the Intel Greekcreek/Blackford chipsets. config EDAC_I5100 tristate "Intel San Clemente MCH" depends on EDAC_MM_EDAC && X86 && PCI help Support for error detection and correction the Intel San Clemente MCH. config EDAC_I7300 tristate "Intel Clarksboro MCH" depends on EDAC_MM_EDAC && X86 && PCI help Support for error detection and correction the Intel Clarksboro MCH (Intel 7300 chipset). config EDAC_MPC85XX tristate "Freescale MPC83xx / MPC85xx" depends on EDAC_MM_EDAC && FSL_SOC && (PPC_83xx || PPC_85xx) help Support for error detection and correction on the Freescale MPC8349, MPC8560, MPC8540, MPC8548 config EDAC_MV64X60 tristate "Marvell MV64x60" depends on EDAC_MM_EDAC && MV64X60 help Support for error detection and correction on the Marvell MV64360 and MV64460 chipsets. config EDAC_PASEMI tristate "PA Semi PWRficient" depends on EDAC_MM_EDAC && PCI depends on PPC_PASEMI help Support for error detection and correction on PA Semi PWRficient. config EDAC_CELL tristate "Cell Broadband Engine memory controller" depends on EDAC_MM_EDAC && PPC_CELL_COMMON help Support for error detection and correction on the Cell Broadband Engine internal memory controller on platform without a hypervisor config EDAC_PPC4XX tristate "PPC4xx IBM DDR2 Memory Controller" depends on EDAC_MM_EDAC && 4xx help This enables support for EDAC on the ECC memory used with the IBM DDR2 memory controller found in various PowerPC 4xx embedded processors such as the 405EX[r], 440SP, 440SPe, 460EX, 460GT and 460SX. config EDAC_AMD8131 tristate "AMD8131 HyperTransport PCI-X Tunnel" depends on EDAC_MM_EDAC && PCI && PPC_MAPLE help Support for error detection and correction on the AMD8131 HyperTransport PCI-X Tunnel chip. Note, add more Kconfig dependency if it's adopted on some machine other than Maple. config EDAC_AMD8111 tristate "AMD8111 HyperTransport I/O Hub" depends on EDAC_MM_EDAC && PCI && PPC_MAPLE help Support for error detection and correction on the AMD8111 HyperTransport I/O Hub chip. Note, add more Kconfig dependency if it's adopted on some machine other than Maple. config EDAC_CPC925 tristate "IBM CPC925 Memory Controller (PPC970FX)" depends on EDAC_MM_EDAC && PPC64 help Support for error detection and correction on the IBM CPC925 Bridge and Memory Controller, which is a companion chip to the PowerPC 970 family of processors. config EDAC_TILE tristate "Tilera Memory Controller" depends on EDAC_MM_EDAC && TILE default y help Support for error detection and correction on the Tilera memory controller. endif # EDAC menuconfig NEW_LEDS bool "LED Support" help Say Y to enable Linux LED support. This allows control of supported LEDs from both userspace and optionally, by kernel events (triggers). This is not related to standard keyboard LEDs which are controlled via the input system. config LEDS_CLASS bool "LED Class Support" depends on NEW_LEDS help This option enables the led sysfs class in /sys/class/leds. You'll need this to do anything useful with LEDs. If unsure, say N. if NEW_LEDS comment "LED drivers" config LEDS_88PM860X tristate "LED Support for Marvell 88PM860x PMIC" depends on LEDS_CLASS depends on MFD_88PM860X help This option enables support for on-chip LED drivers found on Marvell Semiconductor 88PM8606 PMIC. config LEDS_ATMEL_PWM tristate "LED Support using Atmel PWM outputs" depends on LEDS_CLASS depends on ATMEL_PWM help This option enables support for LEDs driven using outputs of the dedicated PWM controller found on newer Atmel SOCs. config LEDS_LM3530 tristate "LCD Backlight driver for LM3530" depends on LEDS_CLASS depends on I2C help This option enables support for the LCD backlight using LM3530 ambient light sensor chip. This ALS chip can be controlled manually or using PWM input or using ambient light automatically. config LEDS_LOCOMO tristate "LED Support for Locomo device" depends on LEDS_CLASS depends on SHARP_LOCOMO help This option enables support for the LEDs on Sharp Locomo. Zaurus models SL-5500 and SL-5600. config LEDS_MIKROTIK_RB532 tristate "LED Support for Mikrotik Routerboard 532" depends on LEDS_CLASS depends on MIKROTIK_RB532 help This option enables support for the so called "User LED" of Mikrotik's Routerboard 532. config LEDS_S3C24XX tristate "LED Support for Samsung S3C24XX GPIO LEDs" depends on LEDS_CLASS depends on ARCH_S3C2410 help This option enables support for LEDs connected to GPIO lines on Samsung S3C24XX series CPUs, such as the S3C2410 and S3C2440. config LEDS_AMS_DELTA tristate "LED Support for the Amstrad Delta (E3)" depends on LEDS_CLASS depends on MACH_AMS_DELTA help This option enables support for the LEDs on Amstrad Delta (E3). config LEDS_NET48XX tristate "LED Support for Soekris net48xx series Error LED" depends on LEDS_CLASS depends on SCx200_GPIO help This option enables support for the Soekris net4801 and net4826 error LED. config LEDS_NET5501 tristate "LED Support for Soekris net5501 series Error LED" depends on LEDS_TRIGGERS depends on X86 && LEDS_GPIO_PLATFORM && GPIO_CS5535 select LEDS_TRIGGER_DEFAULT_ON default n help Add support for the Soekris net5501 board (detection, error led and GPIO). config LEDS_FSG tristate "LED Support for the Freecom FSG-3" depends on LEDS_CLASS depends on MACH_FSG help This option enables support for the LEDs on the Freecom FSG-3. config LEDS_WRAP tristate "LED Support for the WRAP series LEDs" depends on LEDS_CLASS depends on SCx200_GPIO help This option enables support for the PCEngines WRAP programmable LEDs. config LEDS_ALIX2 tristate "LED Support for ALIX.2 and ALIX.3 series" depends on LEDS_CLASS depends on X86 && !GPIO_CS5535 && !CS5535_GPIO help This option enables support for the PCEngines ALIX.2 and ALIX.3 LEDs. You have to set leds-alix2.force=1 for boards with Award BIOS. config LEDS_H1940 tristate "LED Support for iPAQ H1940 device" depends on LEDS_CLASS depends on ARCH_H1940 help This option enables support for the LEDs on the h1940. config LEDS_COBALT_QUBE tristate "LED Support for the Cobalt Qube series front LED" depends on LEDS_CLASS depends on MIPS_COBALT help This option enables support for the front LED on Cobalt Qube series config LEDS_COBALT_RAQ bool "LED Support for the Cobalt Raq series" depends on LEDS_CLASS=y && MIPS_COBALT select LEDS_TRIGGERS help This option enables support for the Cobalt Raq series LEDs. config LEDS_SUNFIRE tristate "LED support for SunFire servers." depends on LEDS_CLASS depends on SPARC64 select LEDS_TRIGGERS help This option enables support for the Left, Middle, and Right LEDs on the I/O and CPU boards of SunFire UltraSPARC servers. config LEDS_HP6XX tristate "LED Support for the HP Jornada 6xx" depends on LEDS_CLASS depends on SH_HP6XX help This option enables LED support for the handheld HP Jornada 620/660/680/690. config LEDS_PCA9532 tristate "LED driver for PCA9532 dimmer" depends on LEDS_CLASS depends on I2C && INPUT && EXPERIMENTAL help This option enables support for NXP pca9532 LED controller. It is generally only useful as a platform driver config LEDS_GPIO tristate "LED Support for GPIO connected LEDs" depends on LEDS_CLASS depends on GENERIC_GPIO help This option enables support for the LEDs connected to GPIO outputs. To be useful the particular board must have LEDs and they must be connected to the GPIO lines. The LEDs must be defined as platform devices and/or OpenFirmware platform devices. The code to use these bindings can be selected below. config LEDS_GPIO_PLATFORM bool "Platform device bindings for GPIO LEDs" depends on LEDS_GPIO default y help Let the leds-gpio driver drive LEDs which have been defined as platform devices. If you don't know what this means, say yes. config LEDS_GPIO_OF bool "OpenFirmware platform device bindings for GPIO LEDs" depends on LEDS_GPIO && OF_DEVICE default y help Let the leds-gpio driver drive LEDs which have been defined as of_platform devices. For instance, LEDs which are listed in a "dts" file. config LEDS_LP3944 tristate "LED Support for N.S. LP3944 (Fun Light) I2C chip" depends on LEDS_CLASS depends on I2C help This option enables support for LEDs connected to the National Semiconductor LP3944 Lighting Management Unit (LMU) also known as Fun Light Chip. To compile this driver as a module, choose M here: the module will be called leds-lp3944. config LEDS_LP5521 tristate "LED Support for N.S. LP5521 LED driver chip" depends on LEDS_CLASS && I2C help If you say yes here you get support for the National Semiconductor LP5521 LED driver. It is 3 channel chip with programmable engines. Driver provides direct control via LED class and interface for programming the engines. config LEDS_LP5523 tristate "LED Support for N.S. LP5523 LED driver chip" depends on LEDS_CLASS && I2C help If you say yes here you get support for the National Semiconductor LP5523 LED driver. It is 9 channel chip with programmable engines. Driver provides direct control via LED class and interface for programming the engines. config LEDS_CLEVO_MAIL tristate "Mail LED on Clevo notebook" depends on LEDS_CLASS depends on X86 && SERIO_I8042 && DMI help This driver makes the mail LED accessible from userspace programs through the leds subsystem. This LED have three known mode: off, blink at 0.5Hz and blink at 1Hz. The driver supports two kinds of interface: using ledtrig-timer or through /sys/class/leds/clevo::mail/brightness. As this LED cannot change it's brightness it blinks instead. The brightness value 0 means off, 1..127 means blink at 0.5Hz and 128..255 means blink at 1Hz. This module can drive the mail LED for the following notebooks: Clevo D400P Clevo D410J Clevo D410V Clevo D400V/D470V (not tested, but might work) Clevo M540N Clevo M5x0N (not tested, but might work) Positivo Mobile (Clevo M5x0V) If your model is not listed here you can try the "nodetect" module parameter. To compile this driver as a module, choose M here: the module will be called leds-clevo-mail. config LEDS_PCA955X tristate "LED Support for PCA955x I2C chips" depends on LEDS_CLASS depends on I2C help This option enables support for LEDs connected to PCA955x LED driver chips accessed via the I2C bus. Supported devices include PCA9550, PCA9551, PCA9552, and PCA9553. config LEDS_WM831X_STATUS tristate "LED support for status LEDs on WM831x PMICs" depends on LEDS_CLASS depends on MFD_WM831X help This option enables support for the status LEDs of the WM831x series of PMICs. config LEDS_WM8350 tristate "LED Support for WM8350 AudioPlus PMIC" depends on LEDS_CLASS depends on MFD_WM8350 help This option enables support for LEDs driven by the Wolfson Microelectronics WM8350 AudioPlus PMIC. config LEDS_DA903X tristate "LED Support for DA9030/DA9034 PMIC" depends on LEDS_CLASS depends on PMIC_DA903X help This option enables support for on-chip LED drivers found on Dialog Semiconductor DA9030/DA9034 PMICs. config LEDS_DAC124S085 tristate "LED Support for DAC124S085 SPI DAC" depends on LEDS_CLASS depends on SPI help This option enables support for DAC124S085 SPI DAC from NatSemi, which can be used to control up to four LEDs. config LEDS_PWM tristate "PWM driven LED Support" depends on LEDS_CLASS depends on HAVE_PWM help This option enables support for pwm driven LEDs config LEDS_REGULATOR tristate "REGULATOR driven LED support" depends on LEDS_CLASS depends on REGULATOR help This option enables support for regulator driven LEDs. config LEDS_BD2802 tristate "LED driver for BD2802 RGB LED" depends on LEDS_CLASS depends on I2C help This option enables support for BD2802GU RGB LED driver chips accessed via the I2C bus. config LEDS_INTEL_SS4200 tristate "LED driver for Intel NAS SS4200 series" depends on LEDS_CLASS depends on PCI && DMI help This option enables support for the Intel SS4200 series of Network Attached Storage servers. You may control the hard drive or power LEDs on the front panel. Using this driver can stop the front LED from blinking after startup. config LEDS_LT3593 tristate "LED driver for LT3593 controllers" depends on LEDS_CLASS depends on GENERIC_GPIO help This option enables support for LEDs driven by a Linear Technology LT3593 controller. This controller uses a special one-wire pulse coding protocol to set the brightness. config LEDS_ADP5520 tristate "LED Support for ADP5520/ADP5501 PMIC" depends on LEDS_CLASS depends on PMIC_ADP5520 help This option enables support for on-chip LED drivers found on Analog Devices ADP5520/ADP5501 PMICs. To compile this driver as a module, choose M here: the module will be called leds-adp5520. config LEDS_DELL_NETBOOKS tristate "External LED on Dell Business Netbooks" depends on LEDS_CLASS depends on X86 && ACPI_WMI help This adds support for the Latitude 2100 and similar notebooks that have an external LED. config LEDS_MC13783 tristate "LED Support for MC13783 PMIC" depends on LEDS_CLASS depends on MFD_MC13783 help This option enable support for on-chip LED drivers found on Freescale Semiconductor MC13783 PMIC. config LEDS_NS2 tristate "LED support for Network Space v2 GPIO LEDs" depends on LEDS_CLASS depends on MACH_NETSPACE_V2 || MACH_INETSPACE_V2 || MACH_NETSPACE_MAX_V2 || D2NET_V2 default y help This option enable support for the dual-GPIO LED found on the Network Space v2 board (and parents). This include Internet Space v2, Network Space (Max) v2 and d2 Network v2 boards. config LEDS_NETXBIG tristate "LED support for Big Network series LEDs" depends on MACH_NET2BIG_V2 || MACH_NET5BIG_V2 default y help This option enable support for LEDs found on the LaCie 2Big and 5Big Network v2 boards. The LEDs are wired to a CPLD and are controlled through a GPIO extension bus. config LEDS_TRIGGERS bool "LED Trigger support" depends on LEDS_CLASS help This option enables trigger support for the leds class. These triggers allow kernel events to drive the LEDs and can be configured via sysfs. If unsure, say Y. comment "LED Triggers" config LEDS_TRIGGER_TIMER tristate "LED Timer Trigger" depends on LEDS_TRIGGERS help This allows LEDs to be controlled by a programmable timer via sysfs. Some LED hardware can be programmed to start blinking the LED without any further software interaction. For more details read Documentation/leds-class.txt. If unsure, say Y. config LEDS_TRIGGER_IDE_DISK bool "LED IDE Disk Trigger" depends on IDE_GD_ATA depends on LEDS_TRIGGERS help This allows LEDs to be controlled by IDE disk activity. If unsure, say Y. config LEDS_TRIGGER_HEARTBEAT tristate "LED Heartbeat Trigger" depends on LEDS_TRIGGERS help This allows LEDs to be controlled by a CPU load average. The flash frequency is a hyperbolic function of the 1-minute load average. If unsure, say Y. config LEDS_TRIGGER_BACKLIGHT tristate "LED backlight Trigger" depends on LEDS_TRIGGERS help This allows LEDs to be controlled as a backlight device: they turn off and on when the display is blanked and unblanked. If unsure, say N. config LEDS_TRIGGER_GPIO tristate "LED GPIO Trigger" depends on LEDS_TRIGGERS depends on GPIOLIB help This allows LEDs to be controlled by gpio events. It's good when using gpios as switches and triggering the needed LEDs from there. One use case is n810's keypad LEDs that could be triggered by this trigger when user slides up to show keypad. If unsure, say N. config LEDS_TRIGGER_DEFAULT_ON tristate "LED Default ON Trigger" depends on LEDS_TRIGGERS help This allows LEDs to be initialised in the ON state. If unsure, say Y. comment "iptables trigger is under Netfilter config (LED target)" depends on LEDS_TRIGGERS endif # NEW_LEDS menu "Device Drivers" source "drivers/base/Kconfig" source "drivers/connector/Kconfig" source "drivers/mtd/Kconfig" source "drivers/of/Kconfig" source "drivers/parport/Kconfig" source "drivers/pnp/Kconfig" source "drivers/block/Kconfig" # misc before ide - BLK_DEV_SGIIOC4 depends on SGI_IOC4 source "drivers/misc/Kconfig" source "drivers/ide/Kconfig" source "drivers/scsi/Kconfig" source "drivers/ata/Kconfig" source "drivers/md/Kconfig" source "drivers/target/Kconfig" source "drivers/message/fusion/Kconfig" source "drivers/firewire/Kconfig" source "drivers/message/i2o/Kconfig" source "drivers/macintosh/Kconfig" source "drivers/net/Kconfig" source "drivers/isdn/Kconfig" source "drivers/telephony/Kconfig" # input before char - char/joystick depends on it. As does USB. source "drivers/input/Kconfig" source "drivers/char/Kconfig" source "drivers/i2c/Kconfig" source "drivers/spi/Kconfig" source "drivers/pps/Kconfig" source "drivers/gpio/Kconfig" source "drivers/w1/Kconfig" source "drivers/power/Kconfig" source "drivers/hwmon/Kconfig" source "drivers/thermal/Kconfig" source "drivers/watchdog/Kconfig" source "drivers/ssb/Kconfig" source "drivers/mfd/Kconfig" source "drivers/regulator/Kconfig" source "drivers/media/Kconfig" source "drivers/video/Kconfig" source "sound/Kconfig" source "drivers/hid/Kconfig" source "drivers/usb/Kconfig" source "drivers/uwb/Kconfig" source "drivers/mmc/Kconfig" source "drivers/memstick/Kconfig" source "drivers/leds/Kconfig" source "drivers/nfc/Kconfig" source "drivers/accessibility/Kconfig" source "drivers/infiniband/Kconfig" source "drivers/edac/Kconfig" source "drivers/rtc/Kconfig" source "drivers/dma/Kconfig" source "drivers/dca/Kconfig" source "drivers/auxdisplay/Kconfig" source "drivers/uio/Kconfig" source "drivers/vlynq/Kconfig" source "drivers/xen/Kconfig" source "drivers/staging/Kconfig" source "drivers/platform/Kconfig" source "drivers/ar6000/Kconfig" source "drivers/clk/Kconfig" source "drivers/hwspinlock/Kconfig" endmenu menu "SuperH / SH-Mobile Driver Options" source "drivers/sh/intc/Kconfig" endmenu comment "Interrupt controller options" config INTC_USERIMASK bool "Userspace interrupt masking support" depends on ARCH_SHMOBILE || (SUPERH && CPU_SH4A) help This enables support for hardware-assisted userspace hardirq masking. SH-4A and newer interrupt blocks all support a special shadowed page with all non-masking registers obscured when mapped in to userspace. This is primarily for use by userspace device drivers that are using special priority levels. If in doubt, say N. config INTC_BALANCING bool "Hardware IRQ balancing support" depends on SMP && SUPERH && CPU_SHX3 help This enables support for IRQ auto-distribution mode on SH-X3 SMP parts. All of the balancing and CPU wakeup decisions are taken care of automatically by hardware for distributed vectors. If in doubt, say N. config INTC_MAPPING_DEBUG bool "Expose IRQ to per-controller id mapping via debugfs" depends on DEBUG_FS help This will create a debugfs entry for showing the relationship between system IRQs and the per-controller id tables. If in doubt, say N. # # Input device configuration # menu "Input device support" depends on !S390 config INPUT tristate "Generic input layer (needed for keyboard, mouse, ...)" if EXPERT default y help Say Y here if you have any input device (mouse, keyboard, tablet, joystick, steering wheel ...) connected to your system and want it to be available to applications. This includes standard PS/2 keyboard and mouse. Say N here if you have a headless (no monitor, no keyboard) system. More information is available: If unsure, say Y. To compile this driver as a module, choose M here: the module will be called input. if INPUT config INPUT_FF_MEMLESS tristate "Support for memoryless force-feedback devices" help Say Y here if you have memoryless force-feedback input device such as Logitech WingMan Force 3D, ThrustMaster FireStorm Dual Power 2, or similar. You will also need to enable hardware-specific driver. If unsure, say N. To compile this driver as a module, choose M here: the module will be called ff-memless. config INPUT_POLLDEV tristate "Polled input device skeleton" help Say Y here if you are using a driver for an input device that periodically polls hardware state. This option is only useful for out-of-tree drivers since in-tree drivers select it automatically. If unsure, say N. To compile this driver as a module, choose M here: the module will be called input-polldev. config INPUT_SPARSEKMAP tristate "Sparse keymap support library" help Say Y here if you are using a driver for an input device that uses sparse keymap. This option is only useful for out-of-tree drivers since in-tree drivers select it automatically. If unsure, say N. To compile this driver as a module, choose M here: the module will be called sparse-keymap. comment "Userland interfaces" config INPUT_MOUSEDEV tristate "Mouse interface" if EXPERT default y help Say Y here if you want your mouse to be accessible as char devices 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an emulated IntelliMouse Explorer PS/2 mouse. That way, all user space programs (including SVGAlib, GPM and X) will be able to use your mouse. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called mousedev. config INPUT_MOUSEDEV_PSAUX bool "Provide legacy /dev/psaux device" default y depends on INPUT_MOUSEDEV help Say Y here if you want your mouse also be accessible as char device 10:1 - /dev/psaux. The data available through /dev/psaux is exactly the same as the data from /dev/input/mice. If unsure, say Y. config INPUT_MOUSEDEV_SCREEN_X int "Horizontal screen resolution" depends on INPUT_MOUSEDEV default "1024" help If you're using a digitizer, or a graphic tablet, and want to use it as a mouse then the mousedev driver needs to know the X window screen resolution you are using to correctly scale the data. If you're not using a digitizer, this value is ignored. config INPUT_MOUSEDEV_SCREEN_Y int "Vertical screen resolution" depends on INPUT_MOUSEDEV default "768" help If you're using a digitizer, or a graphic tablet, and want to use it as a mouse then the mousedev driver needs to know the X window screen resolution you are using to correctly scale the data. If you're not using a digitizer, this value is ignored. config INPUT_JOYDEV tristate "Joystick interface" help Say Y here if you want your joystick or gamepad to be accessible as char device 13:0+ - /dev/input/jsX device. If unsure, say Y. More information is available: To compile this driver as a module, choose M here: the module will be called joydev. config INPUT_EVDEV tristate "Event interface" help Say Y here if you want your input device events be accessible under char device 13:64+ - /dev/input/eventX in a generic way. To compile this driver as a module, choose M here: the module will be called evdev. config INPUT_EVBUG tristate "Event debugging" help Say Y here if you have a problem with the input subsystem and want all events (keypresses, mouse movements), to be output to the system log. While this is useful for debugging, it's also a security threat - your keypresses include your passwords, of course. If unsure, say N. To compile this driver as a module, choose M here: the module will be called evbug. config INPUT_APMPOWER tristate "Input Power Event -> APM Bridge" if EXPERT depends on INPUT && APM_EMULATION help Say Y here if you want suspend key events to trigger a user requested suspend through APM. This is useful on embedded systems where such behaviour is desired without userspace interaction. If unsure, say N. To compile this driver as a module, choose M here: the module will be called apm-power. comment "Input Device Drivers" source "drivers/input/keyboard/Kconfig" source "drivers/input/mouse/Kconfig" source "drivers/input/joystick/Kconfig" source "drivers/input/tablet/Kconfig" source "drivers/input/touchscreen/Kconfig" source "drivers/input/misc/Kconfig" endif menu "Hardware I/O ports" source "drivers/input/serio/Kconfig" source "drivers/input/gameport/Kconfig" endmenu endmenu # # Input core configuration # menuconfig INPUT_KEYBOARD bool "Keyboards" if EXPERT || !X86 default y help Say Y here, and a list of supported keyboards will be displayed. This option doesn't affect the kernel. If unsure, say Y. if INPUT_KEYBOARD config KEYBOARD_ADP5520 tristate "Keypad Support for ADP5520 PMIC" depends on PMIC_ADP5520 help This option enables support for the keypad scan matrix on Analog Devices ADP5520 PMICs. To compile this driver as a module, choose M here: the module will be called adp5520-keys. config KEYBOARD_ADP5588 tristate "ADP5588/87 I2C QWERTY Keypad and IO Expander" depends on I2C help Say Y here if you want to use a ADP5588/87 attached to your system I2C bus. To compile this driver as a module, choose M here: the module will be called adp5588-keys. config KEYBOARD_AMIGA tristate "Amiga keyboard" depends on AMIGA help Say Y here if you are running Linux on any AMIGA and have a keyboard attached. To compile this driver as a module, choose M here: the module will be called amikbd. config ATARI_KBD_CORE bool config KEYBOARD_ATARI tristate "Atari keyboard" depends on ATARI select ATARI_KBD_CORE help Say Y here if you are running Linux on any Atari and have a keyboard attached. To compile this driver as a module, choose M here: the module will be called atakbd. config KEYBOARD_ATKBD tristate "AT keyboard" if EXPERT || !X86 default y select SERIO select SERIO_LIBPS2 select SERIO_I8042 if X86 select SERIO_GSCPS2 if GSC help Say Y here if you want to use a standard AT or PS/2 keyboard. Usually you'll need this, unless you have a different type keyboard (USB, ADB or other). This also works for AT and PS/2 keyboards connected over a PS/2 to serial converter. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called atkbd. config KEYBOARD_ATKBD_HP_KEYCODES bool "Use HP keyboard scancodes" depends on PARISC && KEYBOARD_ATKBD default y help Say Y here if you have a PA-RISC machine and want to use an AT or PS/2 keyboard, and your keyboard uses keycodes that are specific to PA-RISC keyboards. Say N if you use a standard keyboard. config KEYBOARD_ATKBD_RDI_KEYCODES bool "Use PrecisionBook keyboard scancodes" depends on KEYBOARD_ATKBD_HP_KEYCODES default n help If you have an RDI PrecisionBook, say Y here if you want to use its built-in keyboard (as opposed to an external keyboard). The PrecisionBook has five keys that conflict with those used by most AT and PS/2 keyboards. These are as follows: PrecisionBook Standard AT or PS/2 F1 F12 Left Ctrl Left Alt Caps Lock Left Ctrl Right Ctrl Caps Lock Left 102nd key (the key to the right of Left Shift) If you say N here, and use the PrecisionBook keyboard, then each key in the left-hand column will be interpreted as the corresponding key in the right-hand column. If you say Y here, and use an external keyboard, then each key in the right-hand column will be interpreted as the key shown in the left-hand column. config KEYBOARD_QT1070 tristate "Atmel AT42QT1070 Touch Sensor Chip" depends on I2C help Say Y here if you want to use Atmel AT42QT1070 QTouch Sensor chip as input device. To compile this driver as a module, choose M here: the module will be called qt1070 config KEYBOARD_QT2160 tristate "Atmel AT42QT2160 Touch Sensor Chip" depends on I2C && EXPERIMENTAL help If you say yes here you get support for Atmel AT42QT2160 Touch Sensor chip as a keyboard input. This driver can also be built as a module. If so, the module will be called qt2160. config KEYBOARD_BFIN tristate "Blackfin BF54x keypad support" depends on (BF54x && !BF544) help Say Y here if you want to use the BF54x keypad. To compile this driver as a module, choose M here: the module will be called bf54x-keys. config KEYBOARD_LKKBD tristate "DECstation/VAXstation LK201/LK401 keyboard" select SERIO help Say Y here if you want to use a LK201 or LK401 style serial keyboard. This keyboard is also useable on PCs if you attach it with the inputattach program. The connector pinout is described within lkkbd.c. To compile this driver as a module, choose M here: the module will be called lkkbd. config KEYBOARD_EP93XX tristate "EP93xx Matrix Keypad support" depends on ARCH_EP93XX help Say Y here to enable the matrix keypad on the Cirrus EP93XX. To compile this driver as a module, choose M here: the module will be called ep93xx_keypad. config KEYBOARD_GPIO tristate "GPIO Buttons" depends on GENERIC_GPIO help This driver implements support for buttons connected to GPIO pins of various CPUs (and some other chips). Say Y here if your device has buttons connected directly to such GPIO pins. Your board-specific setup logic must also provide a platform device, with configuration data saying which GPIOs are used. To compile this driver as a module, choose M here: the module will be called gpio_keys. config KEYBOARD_GPIO_POLLED tristate "Polled GPIO buttons" depends on GENERIC_GPIO select INPUT_POLLDEV help This driver implements support for buttons connected to GPIO pins that are not capable of generating interrupts. Say Y here if your device has buttons connected directly to such GPIO pins. Your board-specific setup logic must also provide a platform device, with configuration data saying which GPIOs are used. To compile this driver as a module, choose M here: the module will be called gpio_keys_polled. config KEYBOARD_TCA6416 tristate "TCA6416/TCA6408A Keypad Support" depends on I2C help This driver implements basic keypad functionality for keys connected through TCA6416/TCA6408A IO expanders. Say Y here if your device has keys connected to TCA6416/TCA6408A IO expander. Your board-specific setup logic must also provide pin-mask details(of which TCA6416 pins are used for keypad). If enabled the entire TCA6416 device will be managed through this driver. To compile this driver as a module, choose M here: the module will be called tca6416_keypad. config KEYBOARD_MATRIX tristate "GPIO driven matrix keypad support" depends on GENERIC_GPIO help Enable support for GPIO driven matrix keypad. To compile this driver as a module, choose M here: the module will be called matrix_keypad. config KEYBOARD_HIL_OLD tristate "HP HIL keyboard support (simple driver)" depends on GSC || HP300 default y help The "Human Interface Loop" is a older, 8-channel USB-like controller used in several Hewlett Packard models. This driver was adapted from the one written for m68k/hp300, and implements support for a keyboard attached to the HIL port, but not for any other types of HIL input devices like mice or tablets. However, it has been thoroughly tested and is stable. If you want full HIL support including support for multiple keyboards, mice, and tablets, you have to enable the "HP System Device Controller i8042 Support" in the input/serio submenu. config KEYBOARD_HIL tristate "HP HIL keyboard/pointer support" depends on GSC || HP300 default y select HP_SDC select HIL_MLC select SERIO help The "Human Interface Loop" is a older, 8-channel USB-like controller used in several Hewlett Packard models. This driver implements support for HIL-keyboards and pointing devices (mice, tablets, touchscreens) attached to your machine, so normally you should say Y here. config KEYBOARD_HP6XX tristate "HP Jornada 6xx keyboard" depends on SH_HP6XX select INPUT_POLLDEV help Say Y here if you have a HP Jornada 620/660/680/690 and want to support the built-in keyboard. To compile this driver as a module, choose M here: the module will be called jornada680_kbd. config KEYBOARD_HP7XX tristate "HP Jornada 7xx keyboard" depends on SA1100_JORNADA720_SSP && SA1100_SSP help Say Y here if you have a HP Jornada 710/720/728 and want to support the built-in keyboard. To compile this driver as a module, choose M here: the module will be called jornada720_kbd. config KEYBOARD_LM8323 tristate "LM8323 keypad chip" depends on I2C depends on LEDS_CLASS help If you say yes here you get support for the National Semiconductor LM8323 keypad controller. To compile this driver as a module, choose M here: the module will be called lm8323. config KEYBOARD_LOCOMO tristate "LoCoMo Keyboard Support" depends on SHARP_LOCOMO help Say Y here if you are running Linux on a Sharp Zaurus Collie or Poodle based PDA To compile this driver as a module, choose M here: the module will be called locomokbd. config KEYBOARD_MAPLE tristate "Maple bus keyboard" depends on SH_DREAMCAST && MAPLE help Say Y here if you have a Dreamcast console running Linux and have a keyboard attached to its Maple bus. To compile this driver as a module, choose M here: the module will be called maple_keyb. config KEYBOARD_MAX7359 tristate "Maxim MAX7359 Key Switch Controller" depends on I2C help If you say yes here you get support for the Maxim MAX7359 Key Switch Controller chip. This providers microprocessors with management of up to 64 key switches To compile this driver as a module, choose M here: the module will be called max7359_keypad. config KEYBOARD_MCS tristate "MELFAS MCS Touchkey" depends on I2C help Say Y here if you have the MELFAS MCS5000/5080 touchkey controller chip in your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called mcs_touchkey. config KEYBOARD_IMX tristate "IMX keypad support" depends on ARCH_MXC help Enable support for IMX keypad port. To compile this driver as a module, choose M here: the module will be called imx_keypad. config KEYBOARD_NEWTON tristate "Newton keyboard" select SERIO help Say Y here if you have a Newton keyboard on a serial port. To compile this driver as a module, choose M here: the module will be called newtonkbd. config KEYBOARD_NOMADIK tristate "ST-Ericsson Nomadik SKE keyboard" depends on PLAT_NOMADIK help Say Y here if you want to use a keypad provided on the SKE controller used on the Ux500 and Nomadik platforms To compile this driver as a module, choose M here: the module will be called nmk-ske-keypad. config KEYBOARD_TEGRA tristate "NVIDIA Tegra internal matrix keyboard controller support" depends on ARCH_TEGRA help Say Y here if you want to use a matrix keyboard connected directly to the internal keyboard controller on Tegra SoCs. To compile this driver as a module, choose M here: the module will be called tegra-kbc. config KEYBOARD_OPENCORES tristate "OpenCores Keyboard Controller" help Say Y here if you want to use the OpenCores Keyboard Controller http://www.opencores.org/project,keyboardcontroller To compile this driver as a module, choose M here; the module will be called opencores-kbd. config KEYBOARD_PXA27x tristate "PXA27x/PXA3xx keypad support" depends on PXA27x || PXA3xx || ARCH_MMP help Enable support for PXA27x/PXA3xx keypad controller. To compile this driver as a module, choose M here: the module will be called pxa27x_keypad. config KEYBOARD_PXA930_ROTARY tristate "PXA930/PXA935 Enhanced Rotary Controller Support" depends on CPU_PXA930 || CPU_PXA935 help Enable support for PXA930/PXA935 Enhanced Rotary Controller. To compile this driver as a module, choose M here: the module will be called pxa930_rotary. config KEYBOARD_SAMSUNG tristate "Samsung keypad support" depends on SAMSUNG_DEV_KEYPAD help Say Y here if you want to use the Samsung keypad. To compile this driver as a module, choose M here: the module will be called samsung-keypad. config KEYBOARD_STOWAWAY tristate "Stowaway keyboard" select SERIO help Say Y here if you have a Stowaway keyboard on a serial port. Stowaway compatible keyboards like Dicota Input-PDA keyboard are also supported by this driver. To compile this driver as a module, choose M here: the module will be called stowaway. config KEYBOARD_SUNKBD tristate "Sun Type 4 and Type 5 keyboard" select SERIO help Say Y here if you want to use a Sun Type 4 or Type 5 keyboard, connected either to the Sun keyboard connector or to an serial (RS-232) port via a simple adapter. To compile this driver as a module, choose M here: the module will be called sunkbd. config KEYBOARD_SH_KEYSC tristate "SuperH KEYSC keypad support" depends on SUPERH || ARCH_SHMOBILE help Say Y here if you want to use a keypad attached to the KEYSC block on SuperH processors such as sh7722 and sh7343. To compile this driver as a module, choose M here: the module will be called sh_keysc. config KEYBOARD_STMPE tristate "STMPE keypad support" depends on MFD_STMPE help Say Y here if you want to use the keypad controller on STMPE I/O expanders. To compile this driver as a module, choose M here: the module will be called stmpe-keypad. config KEYBOARD_DAVINCI tristate "TI DaVinci Key Scan" depends on ARCH_DAVINCI_DM365 help Say Y to enable keypad module support for the TI DaVinci platforms (DM365). To compile this driver as a module, choose M here: the module will be called davinci_keyscan. config KEYBOARD_OMAP tristate "TI OMAP keypad support" depends on (ARCH_OMAP1 || ARCH_OMAP2) help Say Y here if you want to use the OMAP keypad. To compile this driver as a module, choose M here: the module will be called omap-keypad. config KEYBOARD_OMAP4 tristate "TI OMAP4 keypad support" depends on ARCH_OMAP4 help Say Y here if you want to use the OMAP4 keypad. To compile this driver as a module, choose M here: the module will be called omap4-keypad. config KEYBOARD_SPEAR tristate "ST SPEAR keyboard support" depends on PLAT_SPEAR help Say Y here if you want to use the SPEAR keyboard. To compile this driver as a module, choose M here: the module will be called spear-keboard. config KEYBOARD_TC3589X tristate "TC3589X Keypad support" depends on MFD_TC3589X help Say Y here if you want to use the keypad controller on TC35892/3 I/O expander. To compile this driver as a module, choose M here: the module will be called tc3589x-keypad. config KEYBOARD_TNETV107X tristate "TI TNETV107X keypad support" depends on ARCH_DAVINCI_TNETV107X help Say Y here if you want to use the TNETV107X keypad. To compile this driver as a module, choose M here: the module will be called tnetv107x-keypad. config KEYBOARD_TWL4030 tristate "TI TWL4030/TWL5030/TPS659x0 keypad support" depends on TWL4030_CORE help Say Y here if your board use the keypad controller on TWL4030 family chips. It's safe to say enable this even on boards that don't use the keypad controller. To compile this driver as a module, choose M here: the module will be called twl4030_keypad. config KEYBOARD_XTKBD tristate "XT keyboard" select SERIO help Say Y here if you want to use the old IBM PC/XT keyboard (or compatible) on your system. This is only possible with a parallel port keyboard adapter, you cannot connect it to the keyboard port on a PC that runs Linux. To compile this driver as a module, choose M here: the module will be called xtkbd. config KEYBOARD_W90P910 tristate "W90P910 Matrix Keypad support" depends on ARCH_W90X900 help Say Y here to enable the matrix keypad on evaluation board based on W90P910. To compile this driver as a module, choose M here: the module will be called w90p910_keypad. endif # # I-Force driver configuration # config JOYSTICK_IFORCE tristate "I-Force devices" depends on INPUT && INPUT_JOYSTICK help Say Y here if you have an I-Force joystick or steering wheel You also must choose at least one of the two options below. To compile this driver as a module, choose M here: the module will be called iforce. config JOYSTICK_IFORCE_USB bool "I-Force USB joysticks and wheels" depends on JOYSTICK_IFORCE && (JOYSTICK_IFORCE=m || USB=y) && USB help Say Y here if you have an I-Force joystick or steering wheel connected to your USB port. config JOYSTICK_IFORCE_232 bool "I-Force Serial joysticks and wheels" depends on JOYSTICK_IFORCE && (JOYSTICK_IFORCE=m || SERIO=y) && SERIO help Say Y here if you have an I-Force joystick or steering wheel connected to your serial (COM) port. You will need an additional utility called inputattach, see and . # # Joystick driver configuration # menuconfig INPUT_JOYSTICK bool "Joysticks/Gamepads" help If you have a joystick, 6dof controller, gamepad, steering wheel, weapon control system or something like that you can say Y here and the list of supported devices will be displayed. This option doesn't affect the kernel. Please read the file which contains more information. if INPUT_JOYSTICK config JOYSTICK_ANALOG tristate "Classic PC analog joysticks and gamepads" select GAMEPORT ---help--- Say Y here if you have a joystick that connects to the PC gameport. In addition to the usual PC analog joystick, this driver supports many extensions, including joysticks with throttle control, with rudders, additional hats and buttons compatible with CH Flightstick Pro, ThrustMaster FCS, 6 and 8 button gamepads, or Saitek Cyborg joysticks. Please read the file which contains more information. To compile this driver as a module, choose M here: the module will be called analog. config JOYSTICK_A3D tristate "Assassin 3D and MadCatz Panther devices" select GAMEPORT help Say Y here if you have an FPGaming or MadCatz controller using the A3D protocol over the PC gameport. To compile this driver as a module, choose M here: the module will be called a3d. config JOYSTICK_ADI tristate "Logitech ADI digital joysticks and gamepads" select GAMEPORT help Say Y here if you have a Logitech controller using the ADI protocol over the PC gameport. To compile this driver as a module, choose M here: the module will be called adi. config JOYSTICK_COBRA tristate "Creative Labs Blaster Cobra gamepad" select GAMEPORT help Say Y here if you have a Creative Labs Blaster Cobra gamepad. To compile this driver as a module, choose M here: the module will be called cobra. config JOYSTICK_GF2K tristate "Genius Flight2000 Digital joysticks and gamepads" select GAMEPORT help Say Y here if you have a Genius Flight2000 or MaxFighter digitally communicating joystick or gamepad. To compile this driver as a module, choose M here: the module will be called gf2k. config JOYSTICK_GRIP tristate "Gravis GrIP joysticks and gamepads" select GAMEPORT help Say Y here if you have a Gravis controller using the GrIP protocol over the PC gameport. To compile this driver as a module, choose M here: the module will be called grip. config JOYSTICK_GRIP_MP tristate "Gravis GrIP MultiPort" select GAMEPORT help Say Y here if you have the original Gravis GrIP MultiPort, a hub that connects to the gameport and you connect gamepads to it. To compile this driver as a module, choose M here: the module will be called grip_mp. config JOYSTICK_GUILLEMOT tristate "Guillemot joysticks and gamepads" select GAMEPORT help Say Y here if you have a Guillemot joystick using a digital protocol over the PC gameport. To compile this driver as a module, choose M here: the module will be called guillemot. config JOYSTICK_INTERACT tristate "InterAct digital joysticks and gamepads" select GAMEPORT help Say Y here if you have an InterAct gameport or joystick communicating digitally over the gameport. To compile this driver as a module, choose M here: the module will be called interact. config JOYSTICK_SIDEWINDER tristate "Microsoft SideWinder digital joysticks and gamepads" select GAMEPORT help Say Y here if you have a Microsoft controller using the Digital Overdrive protocol over PC gameport. To compile this driver as a module, choose M here: the module will be called sidewinder. config JOYSTICK_TMDC tristate "ThrustMaster DirectConnect joysticks and gamepads" select GAMEPORT help Say Y here if you have a ThrustMaster controller using the DirectConnect (BSP) protocol over the PC gameport. To compile this driver as a module, choose M here: the module will be called tmdc. source "drivers/input/joystick/iforce/Kconfig" config JOYSTICK_WARRIOR tristate "Logitech WingMan Warrior joystick" select SERIO help Say Y here if you have a Logitech WingMan Warrior joystick connected to your computer's serial port. To compile this driver as a module, choose M here: the module will be called warrior. config JOYSTICK_MAGELLAN tristate "LogiCad3d Magellan/SpaceMouse 6dof controllers" select SERIO help Say Y here if you have a Magellan or Space Mouse 6DOF controller connected to your computer's serial port. To compile this driver as a module, choose M here: the module will be called magellan. config JOYSTICK_SPACEORB tristate "SpaceTec SpaceOrb/Avenger 6dof controllers" select SERIO help Say Y here if you have a SpaceOrb 360 or SpaceBall Avenger 6DOF controller connected to your computer's serial port. To compile this driver as a module, choose M here: the module will be called spaceorb. config JOYSTICK_SPACEBALL tristate "SpaceTec SpaceBall 6dof controllers" select SERIO help Say Y here if you have a SpaceTec SpaceBall 2003/3003/4000 FLX controller connected to your computer's serial port. For the SpaceBall 4000 USB model, use the USB HID driver. To compile this driver as a module, choose M here: the module will be called spaceball. config JOYSTICK_STINGER tristate "Gravis Stinger gamepad" select SERIO help Say Y here if you have a Gravis Stinger connected to one of your serial ports. To compile this driver as a module, choose M here: the module will be called stinger. config JOYSTICK_TWIDJOY tristate "Twiddler as a joystick" select SERIO help Say Y here if you have a Handykey Twiddler connected to your computer's serial port and want to use it as a joystick. To compile this driver as a module, choose M here: the module will be called twidjoy. config JOYSTICK_ZHENHUA tristate "5-byte Zhenhua RC transmitter" select SERIO help Say Y here if you have a Zhen Hua PPM-4CH transmitter which is supplied with a ready to fly micro electric indoor helicopters such as EasyCopter, Lama, MiniCopter, DragonFly or Jabo and want to use it via serial cable as a joystick. To compile this driver as a module, choose M here: the module will be called zhenhua. config JOYSTICK_DB9 tristate "Multisystem, Sega Genesis, Saturn joysticks and gamepads" depends on PARPORT help Say Y here if you have a Sega Master System gamepad, Sega Genesis gamepad, Sega Saturn gamepad, or a Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick connected to your parallel port. For more information on how to use the driver please read . To compile this driver as a module, choose M here: the module will be called db9. config JOYSTICK_GAMECON tristate "Multisystem, NES, SNES, N64, PSX joysticks and gamepads" depends on PARPORT select INPUT_FF_MEMLESS ---help--- Say Y here if you have a Nintendo Entertainment System gamepad, Super Nintendo Entertainment System gamepad, Nintendo 64 gamepad, Sony PlayStation gamepad or a Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick connected to your parallel port. For more information on how to use the driver please read . To compile this driver as a module, choose M here: the module will be called gamecon. config JOYSTICK_TURBOGRAFX tristate "Multisystem joysticks via TurboGraFX device" depends on PARPORT help Say Y here if you have the TurboGraFX interface by Steffen Schwenke, and want to use it with Multisystem -- Atari, Amiga, Commodore, Amstrad CPC joystick. For more information on how to use the driver please read . To compile this driver as a module, choose M here: the module will be called turbografx. config JOYSTICK_AMIGA tristate "Amiga joysticks" depends on AMIGA help Say Y here if you have an Amiga with a digital joystick connected to it. To compile this driver as a module, choose M here: the module will be called amijoy. config JOYSTICK_AS5011 tristate "Austria Microsystem AS5011 joystick" depends on I2C help Say Y here if you have an AS5011 digital joystick connected to your system. To compile this driver as a module, choose M here: the module will be called as5011. config JOYSTICK_JOYDUMP tristate "Gameport data dumper" select GAMEPORT help Say Y here if you want to dump data from your joystick into the system log for debugging purposes. Say N if you are making a production configuration or aren't sure. To compile this driver as a module, choose M here: the module will be called joydump. config JOYSTICK_XPAD tristate "X-Box gamepad support" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use the X-Box pad with your computer. Make sure to say Y to "Joystick support" (CONFIG_INPUT_JOYDEV) and/or "Event interface support" (CONFIG_INPUT_EVDEV) as well. For information about how to connect the X-Box pad to USB, see . To compile this driver as a module, choose M here: the module will be called xpad. config JOYSTICK_XPAD_FF bool "X-Box gamepad rumble support" depends on JOYSTICK_XPAD && INPUT select INPUT_FF_MEMLESS ---help--- Say Y here if you want to take advantage of xbox 360 rumble features. config JOYSTICK_XPAD_LEDS bool "LED Support for Xbox360 controller 'BigX' LED" depends on JOYSTICK_XPAD && (LEDS_CLASS=y || LEDS_CLASS=JOYSTICK_XPAD) ---help--- This option enables support for the LED which surrounds the Big X on XBox 360 controller. config JOYSTICK_WALKERA0701 tristate "Walkera WK-0701 RC transmitter" depends on HIGH_RES_TIMERS && PARPORT help Say Y or M here if you have a Walkera WK-0701 transmitter which is supplied with a ready to fly Walkera helicopters such as HM36, HM37, HM60 and want to use it via parport as a joystick. More information is available: To compile this driver as a module, choose M here: the module will be called walkera0701. config JOYSTICK_MAPLE tristate "Dreamcast control pad" depends on MAPLE help Say Y here if you have a SEGA Dreamcast and want to use your controller as a joystick. Most Dreamcast users will say Y. To compile this as a module choose M here: the module will be called maplecontrol. endif # # Gameport configuration # config GAMEPORT tristate "Gameport support" ---help--- Gameport support is for the standard 15-pin PC gameport. If you have a joystick, gamepad, gameport card, a soundcard with a gameport or anything else that uses the gameport, say Y or M here and also to at least one of the hardware specific drivers. For Ensoniq AudioPCI (ES1370), AudioPCI 97 (ES1371), ESS Solo1, S3 SonicVibes, Trident 4DWave, SiS7018, and ALi 5451 gameport support is provided by the sound drivers, so you won't need any from the below listed modules. You still need to say Y here. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called gameport. if GAMEPORT config GAMEPORT_NS558 tristate "Classic ISA and PnP gameport support" help Say Y here if you have an ISA or PnP gameport. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called ns558. config GAMEPORT_L4 tristate "PDPI Lightning 4 gamecard support" help Say Y here if you have a PDPI Lightning 4 gamecard. To compile this driver as a module, choose M here: the module will be called lightning. config GAMEPORT_EMU10K1 tristate "SB Live and Audigy gameport support" depends on PCI help Say Y here if you have a SoundBlaster Live! or SoundBlaster Audigy card and want to use its gameport. To compile this driver as a module, choose M here: the module will be called emu10k1-gp. config GAMEPORT_FM801 tristate "ForteMedia FM801 gameport support" depends on PCI help Say Y here if you have ForteMedia FM801 PCI audio controller (Abit AU10, Genius Sound Maker, HP Workstation zx2000, and others), and want to use its gameport. To compile this driver as a module, choose M here: the module will be called fm801-gp. endif # # Mouse driver configuration # menuconfig INPUT_MOUSE bool "Mice" default y help Say Y here, and a list of supported mice will be displayed. This option doesn't affect the kernel. If unsure, say Y. if INPUT_MOUSE config MOUSE_PS2 tristate "PS/2 mouse" default y select SERIO select SERIO_LIBPS2 select SERIO_I8042 if X86 select SERIO_GSCPS2 if GSC help Say Y here if you have a PS/2 mouse connected to your system. This includes the standard 2 or 3-button PS/2 mouse, as well as PS/2 mice with wheels and extra buttons, Microsoft, Logitech or Genius compatible. Synaptics, ALPS or Elantech TouchPad users might be interested in a specialized Xorg/XFree86 driver at: and a new version of GPM at: to take advantage of the advanced features of the touchpad. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called psmouse. config MOUSE_PS2_ALPS bool "ALPS PS/2 mouse protocol extension" if EXPERT default y depends on MOUSE_PS2 help Say Y here if you have an ALPS PS/2 touchpad connected to your system. If unsure, say Y. config MOUSE_PS2_LOGIPS2PP bool "Logitech PS/2++ mouse protocol extension" if EXPERT default y depends on MOUSE_PS2 help Say Y here if you have a Logictech PS/2++ mouse connected to your system. If unsure, say Y. config MOUSE_PS2_SYNAPTICS bool "Synaptics PS/2 mouse protocol extension" if EXPERT default y depends on MOUSE_PS2 help Say Y here if you have a Synaptics PS/2 TouchPad connected to your system. If unsure, say Y. config MOUSE_PS2_LIFEBOOK bool "Fujitsu Lifebook PS/2 mouse protocol extension" if EXPERT default y depends on MOUSE_PS2 && X86 && DMI help Say Y here if you have a Fujitsu B-series Lifebook PS/2 TouchScreen connected to your system. If unsure, say Y. config MOUSE_PS2_TRACKPOINT bool "IBM Trackpoint PS/2 mouse protocol extension" if EXPERT default y depends on MOUSE_PS2 help Say Y here if you have an IBM Trackpoint PS/2 mouse connected to your system. If unsure, say Y. config MOUSE_PS2_ELANTECH bool "Elantech PS/2 protocol extension" depends on MOUSE_PS2 help Say Y here if you have an Elantech PS/2 touchpad connected to your system. Note that if you enable this driver you will need an updated X.org Synaptics driver that does not require ABS_PRESSURE reports from the touchpad (i.e. post 1.5.0 version). You can grab a patch for the driver here: http://userweb.kernel.org/~dtor/synaptics-no-abspressure.patch If unsure, say N. This driver exposes some configuration registers via sysfs entries. For further information, see . config MOUSE_PS2_SENTELIC bool "Sentelic Finger Sensing Pad PS/2 protocol extension" depends on MOUSE_PS2 help Say Y here if you have a laptop (such as MSI WIND Netbook) with Sentelic Finger Sensing Pad touchpad. If unsure, say N. config MOUSE_PS2_TOUCHKIT bool "eGalax TouchKit PS/2 protocol extension" depends on MOUSE_PS2 help Say Y here if you have an eGalax TouchKit PS/2 touchscreen connected to your system. If unsure, say N. config MOUSE_PS2_OLPC bool "OLPC PS/2 mouse protocol extension" depends on MOUSE_PS2 && OLPC help Say Y here if you have an OLPC XO-1 laptop (with built-in PS/2 touchpad/tablet device). The manufacturer calls the touchpad an HGPK. If unsure, say N. config MOUSE_SERIAL tristate "Serial mouse" select SERIO help Say Y here if you have a serial (RS-232, COM port) mouse connected to your system. This includes Sun, MouseSystems, Microsoft, Logitech and all other compatible serial mice. If unsure, say N. To compile this driver as a module, choose M here: the module will be called sermouse. config MOUSE_APPLETOUCH tristate "Apple USB Touchpad support" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use an Apple USB Touchpad. These are the touchpads that can be found on post-February 2005 Apple Powerbooks (prior models have a Synaptics touchpad connected to the ADB bus). This driver provides a basic mouse driver but can be interfaced with the synaptics X11 driver to provide acceleration and scrolling in X11. For further information, see . To compile this driver as a module, choose M here: the module will be called appletouch. config MOUSE_BCM5974 tristate "Apple USB BCM5974 Multitouch trackpad support" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you have an Apple USB BCM5974 Multitouch trackpad. The BCM5974 is the multitouch trackpad found in the Macbook Air (JAN2008) and Macbook Pro Penryn (FEB2008) laptops. It is also found in the IPhone (2007) and Ipod Touch (2008). This driver provides multitouch functionality together with the synaptics X11 driver. The interface is currently identical to the appletouch interface, for further information, see . To compile this driver as a module, choose M here: the module will be called bcm5974. config MOUSE_INPORT tristate "InPort/MS/ATIXL busmouse" depends on ISA help Say Y here if you have an InPort, Microsoft or ATI XL busmouse. They are rather rare these days. To compile this driver as a module, choose M here: the module will be called inport. config MOUSE_ATIXL bool "ATI XL variant" depends on MOUSE_INPORT help Say Y here if your mouse is of the ATI XL variety. config MOUSE_LOGIBM tristate "Logitech busmouse" depends on ISA help Say Y here if you have a Logitech busmouse. They are rather rare these days. To compile this driver as a module, choose M here: the module will be called logibm. config MOUSE_PC110PAD tristate "IBM PC110 touchpad" depends on ISA help Say Y if you have the IBM PC-110 micro-notebook and want its touchpad supported. To compile this driver as a module, choose M here: the module will be called pc110pad. config MOUSE_AMIGA tristate "Amiga mouse" depends on AMIGA help Say Y here if you have an Amiga and want its native mouse supported by the kernel. To compile this driver as a module, choose M here: the module will be called amimouse. config MOUSE_ATARI tristate "Atari mouse" depends on ATARI select ATARI_KBD_CORE help Say Y here if you have an Atari and want its native mouse supported by the kernel. To compile this driver as a module, choose M here: the module will be called atarimouse. config MOUSE_RISCPC tristate "Acorn RiscPC mouse" depends on ARCH_ACORN help Say Y here if you have the Acorn RiscPC computer and want its native mouse supported. To compile this driver as a module, choose M here: the module will be called rpcmouse. config MOUSE_VSXXXAA tristate "DEC VSXXX-AA/GA mouse and VSXXX-AB tablet" select SERIO help Say Y (or M) if you want to use a DEC VSXXX-AA (hockey puck) or a VSXXX-GA (rectangular) mouse. Theses mice are typically used on DECstations or VAXstations, but can also be used on any box capable of RS232 (with some adaptor described in the source file). This driver also works with the digitizer (VSXXX-AB) DEC produced. config MOUSE_GPIO tristate "GPIO mouse" depends on GENERIC_GPIO select INPUT_POLLDEV help This driver simulates a mouse on GPIO lines of various CPUs (and some other chips). Say Y here if your device has buttons or a simple joystick connected directly to GPIO lines. Your board-specific setup logic must also provide a platform device and platform data saying which GPIOs are used. To compile this driver as a module, choose M here: the module will be called gpio_mouse. config MOUSE_PXA930_TRKBALL tristate "PXA930 Trackball mouse" depends on CPU_PXA930 || CPU_PXA935 help Say Y here to support PXA930 Trackball mouse. config MOUSE_MAPLE tristate "Maple mouse (for the Dreamcast)" depends on MAPLE help This driver supports the Maple mouse on the SEGA Dreamcast. Most Dreamcast users, who have a mouse, will say Y here. To compile this driver as a module choose M here: the module will be called maplemouse. config MOUSE_SYNAPTICS_I2C tristate "Synaptics I2C Touchpad support" depends on I2C help This driver supports Synaptics I2C touchpad controller on eXeda mobile device. The device will not work the synaptics X11 driver because (i) it reports only relative coordinates and has no capabilities to report absolute coordinates (ii) the eXeda device itself uses Xfbdev as X Server and it does not allow using xf86-input-* drivers. Say y here if you have eXeda device and want to use a Synaptics I2C Touchpad. To compile this driver as a module, choose M here: the module will be called synaptics_i2c. endif # # Tablet driver configuration # menuconfig INPUT_TABLET bool "Tablets" help Say Y here, and a list of supported tablets will be displayed. This option doesn't affect the kernel. If unsure, say Y. if INPUT_TABLET config TABLET_USB_ACECAD tristate "Acecad Flair tablet support (USB)" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use the USB version of the Acecad Flair tablet. Make sure to say Y to "Mouse support" (CONFIG_INPUT_MOUSEDEV) and/or "Event interface support" (CONFIG_INPUT_EVDEV) as well. To compile this driver as a module, choose M here: the module will be called acecad. config TABLET_USB_AIPTEK tristate "Aiptek 6000U/8000U and Genius G_PEN tablet support (USB)" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use the USB version of the Aiptek 6000U, Aiptek 8000U or Genius G-PEN 560 tablet. Make sure to say Y to "Mouse support" (CONFIG_INPUT_MOUSEDEV) and/or "Event interface support" (CONFIG_INPUT_EVDEV) as well. To compile this driver as a module, choose M here: the module will be called aiptek. config TABLET_USB_GTCO tristate "GTCO CalComp/InterWrite USB Support" depends on USB && INPUT help Say Y here if you want to use the USB version of the GTCO CalComp/InterWrite Tablet. Make sure to say Y to "Mouse support" (CONFIG_INPUT_MOUSEDEV) and/or "Event interface support" (CONFIG_INPUT_EVDEV) as well. To compile this driver as a module, choose M here: the module will be called gtco. config TABLET_USB_HANWANG tristate "Hanwang Art Master III tablet support (USB)" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use the USB version of the Hanwang Art Master III tablet. To compile this driver as a module, choose M here: the module will be called hanwang. config TABLET_USB_KBTAB tristate "KB Gear JamStudio tablet support (USB)" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use the USB version of the KB Gear JamStudio tablet. Make sure to say Y to "Mouse support" (CONFIG_INPUT_MOUSEDEV) and/or "Event interface support" (CONFIG_INPUT_EVDEV) as well. To compile this driver as a module, choose M here: the module will be called kbtab. config TABLET_USB_WACOM tristate "Wacom Intuos/Graphire tablet support (USB)" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use the USB version of the Wacom Intuos or Graphire tablet. Make sure to say Y to "Mouse support" (CONFIG_INPUT_MOUSEDEV) and/or "Event interface support" (CONFIG_INPUT_EVDEV) as well. To compile this driver as a module, choose M here: the module will be called wacom. endif # # Input misc drivers configuration # menuconfig INPUT_MISC bool "Miscellaneous devices" help Say Y here, and a list of miscellaneous input drivers will be displayed. Everything that didn't fit into the other categories is here. This option doesn't affect the kernel. If unsure, say Y. if INPUT_MISC config INPUT_88PM860X_ONKEY tristate "88PM860x ONKEY support" depends on MFD_88PM860X help Support the ONKEY of Marvell 88PM860x PMICs as an input device reporting power button status. To compile this driver as a module, choose M here: the module will be called 88pm860x_onkey. config INPUT_AB8500_PONKEY tristate "AB8500 Pon (PowerOn) Key" depends on AB8500_CORE help Say Y here to use the PowerOn Key for ST-Ericsson's AB8500 Mix-Sig PMIC. To compile this driver as a module, choose M here: the module will be called ab8500-ponkey. config INPUT_AD714X tristate "Analog Devices AD714x Capacitance Touch Sensor" help Say Y here if you want to support an AD7142/3/7/8/7A touch sensor. You should select a bus connection too. To compile this driver as a module, choose M here: the module will be called ad714x. config INPUT_AD714X_I2C tristate "support I2C bus connection" depends on INPUT_AD714X && I2C default y help Say Y here if you have AD7142/AD7147 hooked to an I2C bus. To compile this driver as a module, choose M here: the module will be called ad714x-i2c. config INPUT_AD714X_SPI tristate "support SPI bus connection" depends on INPUT_AD714X && SPI default y help Say Y here if you have AD7142/AD7147 hooked to a SPI bus. To compile this driver as a module, choose M here: the module will be called ad714x-spi. config INPUT_PCSPKR tristate "PC Speaker support" depends on PCSPKR_PLATFORM help Say Y here if you want the standard PC Speaker to be used for bells and whistles. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called pcspkr. config INPUT_SPARCSPKR tristate "SPARC Speaker support" depends on PCI && SPARC64 help Say Y here if you want the standard Speaker on Sparc PCI systems to be used for bells and whistles. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called sparcspkr. config INPUT_M68K_BEEP tristate "M68k Beeper support" depends on M68K config INPUT_MAX8925_ONKEY tristate "MAX8925 ONKEY support" depends on MFD_MAX8925 help Support the ONKEY of MAX8925 PMICs as an input device reporting power button status. To compile this driver as a module, choose M here: the module will be called max8925_onkey. config INPUT_APANEL tristate "Fujitsu Lifebook Application Panel buttons" depends on X86 && I2C && LEDS_CLASS select INPUT_POLLDEV select CHECK_SIGNATURE help Say Y here for support of the Application Panel buttons, used on Fujitsu Lifebook. These are attached to the mainboard through an SMBus interface managed by the I2C Intel ICH (i801) driver, which you should also build for this kernel. To compile this driver as a module, choose M here: the module will be called apanel. config INPUT_IXP4XX_BEEPER tristate "IXP4XX Beeper support" depends on ARCH_IXP4XX help If you say yes here, you can connect a beeper to the ixp4xx gpio pins. This is used by the LinkSys NSLU2. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called ixp4xx-beeper. config INPUT_COBALT_BTNS tristate "Cobalt button interface" depends on MIPS_COBALT select INPUT_POLLDEV help Say Y here if you want to support MIPS Cobalt button interface. To compile this driver as a module, choose M here: the module will be called cobalt_btns. config INPUT_WISTRON_BTNS tristate "x86 Wistron laptop button interface" depends on X86 && !X86_64 select INPUT_POLLDEV select INPUT_SPARSEKMAP select NEW_LEDS select LEDS_CLASS select CHECK_SIGNATURE help Say Y here for support of Wistron laptop button interfaces, used on laptops of various brands, including Acer and Fujitsu-Siemens. If available, mail and wifi LEDs will be controllable via /sys/class/leds. To compile this driver as a module, choose M here: the module will be called wistron_btns. config INPUT_ATLAS_BTNS tristate "x86 Atlas button interface" depends on X86 && ACPI help Say Y here for support of Atlas wallmount touchscreen buttons. The events will show up as scancodes F1 through F9 via evdev. To compile this driver as a module, choose M here: the module will be called atlas_btns. config INPUT_ATI_REMOTE tristate "ATI / X10 USB RF remote control" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use an ATI or X10 "Lola" USB remote control. These are RF remotes with USB receivers. The ATI remote comes with many of ATI's All-In-Wonder video cards. The X10 "Lola" remote is available at: This driver provides mouse pointer, left and right mouse buttons, and maps all the other remote buttons to keypress events. To compile this driver as a module, choose M here: the module will be called ati_remote. config INPUT_ATI_REMOTE2 tristate "ATI / Philips USB RF remote control" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use an ATI or Philips USB RF remote control. These are RF remotes with USB receivers. ATI Remote Wonder II comes with some ATI's All-In-Wonder video cards and is also available as a separate product. This driver provides mouse pointer, left and right mouse buttons, and maps all the other remote buttons to keypress events. To compile this driver as a module, choose M here: the module will be called ati_remote2. config INPUT_KEYSPAN_REMOTE tristate "Keyspan DMR USB remote control (EXPERIMENTAL)" depends on EXPERIMENTAL depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use a Keyspan DMR USB remote control. Currently only the UIA-11 type of receiver has been tested. The tag on the receiver that connects to the USB port should have a P/N that will tell you what type of DMR you have. The UIA-10 type is not supported at this time. This driver maps all buttons to keypress events. To compile this driver as a module, choose M here: the module will be called keyspan_remote. config INPUT_POWERMATE tristate "Griffin PowerMate and Contour Jog support" depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to use Griffin PowerMate or Contour Jog devices. These are aluminum dials which can measure clockwise and anticlockwise rotation. The dial also acts as a pushbutton. The base contains an LED which can be instructed to pulse or to switch to a particular intensity. You can download userspace tools from . To compile this driver as a module, choose M here: the module will be called powermate. config INPUT_YEALINK tristate "Yealink usb-p1k voip phone" depends on EXPERIMENTAL depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to enable keyboard and LCD functions of the Yealink usb-p1k usb phones. The audio part is enabled by the generic usb sound driver, so you might want to enable that as well. For information about how to use these additional functions, see . To compile this driver as a module, choose M here: the module will be called yealink. config INPUT_CM109 tristate "C-Media CM109 USB I/O Controller" depends on EXPERIMENTAL depends on USB_ARCH_HAS_HCD select USB help Say Y here if you want to enable keyboard and buzzer functions of the C-Media CM109 usb phones. The audio part is enabled by the generic usb sound driver, so you might want to enable that as well. To compile this driver as a module, choose M here: the module will be called cm109. config INPUT_TWL4030_PWRBUTTON tristate "TWL4030 Power button Driver" depends on TWL4030_CORE help Say Y here if you want to enable power key reporting via the TWL4030 family of chips. To compile this driver as a module, choose M here. The module will be called twl4030_pwrbutton. config INPUT_TWL4030_VIBRA tristate "Support for TWL4030 Vibrator" depends on TWL4030_CORE select TWL4030_CODEC select INPUT_FF_MEMLESS help This option enables support for TWL4030 Vibrator Driver. To compile this driver as a module, choose M here. The module will be called twl4030_vibra. config INPUT_UINPUT tristate "User level driver support" help Say Y here if you want to support user level drivers for input subsystem accessible under char device 10:223 - /dev/input/uinput. To compile this driver as a module, choose M here: the module will be called uinput. config INPUT_SGI_BTNS tristate "SGI Indy/O2 volume button interface" depends on SGI_IP22 || SGI_IP32 select INPUT_POLLDEV help Say Y here if you want to support SGI Indy/O2 volume button interface. To compile this driver as a module, choose M here: the module will be called sgi_btns. config HP_SDC_RTC tristate "HP SDC Real Time Clock" depends on (GSC || HP300) && SERIO select HP_SDC help Say Y here if you want to support the built-in real time clock of the HP SDC controller. config INPUT_PCF50633_PMU tristate "PCF50633 PMU events" depends on MFD_PCF50633 help Say Y to include support for delivering PMU events via input layer on NXP PCF50633. config INPUT_PCF8574 tristate "PCF8574 Keypad input device" depends on I2C && EXPERIMENTAL help Say Y here if you want to support a keypad connetced via I2C with a PCF8574. To compile this driver as a module, choose M here: the module will be called pcf8574_keypad. config INPUT_PWM_BEEPER tristate "PWM beeper support" depends on HAVE_PWM help Say Y here to get support for PWM based beeper devices. If unsure, say N. To compile this driver as a module, choose M here: the module will be called pwm-beeper. config INPUT_GPIO_ROTARY_ENCODER tristate "Rotary encoders connected to GPIO pins" depends on GPIOLIB && GENERIC_GPIO help Say Y here to add support for rotary encoders connected to GPIO lines. Check file:Documentation/input/rotary-encoder.txt for more information. To compile this driver as a module, choose M here: the module will be called rotary_encoder. config INPUT_RB532_BUTTON tristate "Mikrotik Routerboard 532 button interface" depends on MIKROTIK_RB532 depends on GPIOLIB && GENERIC_GPIO select INPUT_POLLDEV help Say Y here if you want support for the S1 button built into Mikrotik's Routerboard 532. To compile this driver as a module, choose M here: the module will be called rb532_button. config INPUT_DM355EVM tristate "TI DaVinci DM355 EVM Keypad and IR Remote" depends on MFD_DM355EVM_MSP select INPUT_SPARSEKMAP help Supports the pushbuttons and IR remote used with the DM355 EVM board. To compile this driver as a module, choose M here: the module will be called dm355evm_keys. config INPUT_BFIN_ROTARY tristate "Blackfin Rotary support" depends on BF54x || BF52x help Say Y here if you want to use the Blackfin Rotary. To compile this driver as a module, choose M here: the module will be called bfin-rotary. config INPUT_WM831X_ON tristate "WM831X ON pin" depends on MFD_WM831X help Support the ON pin of WM831X PMICs as an input device reporting power button status. To compile this driver as a module, choose M here: the module will be called wm831x_on. config INPUT_PCAP tristate "Motorola EZX PCAP misc input events" depends on EZX_PCAP help Say Y here if you want to use Power key and Headphone button on Motorola EZX phones. To compile this driver as a module, choose M here: the module will be called pcap_keys. config INPUT_ADXL34X tristate "Analog Devices ADXL34x Three-Axis Digital Accelerometer" default n help Say Y here if you have a Accelerometer interface using the ADXL345/6 controller, and your board-specific initialization code includes that in its table of devices. This driver can use either I2C or SPI communication to the ADXL345/6 controller. Select the appropriate method for your system. If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called adxl34x. config INPUT_ADXL34X_I2C tristate "support I2C bus connection" depends on INPUT_ADXL34X && I2C default y help Say Y here if you have ADXL345/6 hooked to an I2C bus. To compile this driver as a module, choose M here: the module will be called adxl34x-i2c. config INPUT_ADXL34X_SPI tristate "support SPI bus connection" depends on INPUT_ADXL34X && SPI default y help Say Y here if you have ADXL345/6 hooked to a SPI bus. To compile this driver as a module, choose M here: the module will be called adxl34x-spi. config INPUT_CMA3000 tristate "VTI CMA3000 Tri-axis accelerometer" help Say Y here if you want to use VTI CMA3000_D0x Accelerometer driver This driver currently only supports I2C interface to the controller. Also select the I2C method. If unsure, say N To compile this driver as a module, choose M here: the module will be called cma3000_d0x. config INPUT_CMA3000_I2C tristate "Support I2C bus connection" depends on INPUT_CMA3000 && I2C help Say Y here if you want to use VTI CMA3000_D0x Accelerometer through I2C interface. To compile this driver as a module, choose M here: the module will be called cma3000_d0x_i2c. config INPUT_XEN_KBDDEV_FRONTEND tristate "Xen virtual keyboard and mouse support" depends on XEN_FBDEV_FRONTEND default y select XEN_XENBUS_FRONTEND help This driver implements the front-end of the Xen virtual keyboard and mouse device driver. It communicates with a back-end in another domain. To compile this driver as a module, choose M here: the module will be called xen-kbdfront. config INPUT_LIS302DL tristate "STmicro LIS302DL 3-axis accelerometer" depends on SPI_MASTER help SPI driver for the STmicro LIS302DL 3-axis accelerometer. The userspece interface is a 3-axis (X/Y/Z) relative movement Linux input device, reporting REL_[XYZ] events. endif # # Touchscreen driver configuration # menuconfig INPUT_TOUCHSCREEN bool "Touchscreens" help Say Y here, and a list of supported touchscreens will be displayed. This option doesn't affect the kernel. If unsure, say Y. if INPUT_TOUCHSCREEN config TOUCHSCREEN_88PM860X tristate "Marvell 88PM860x touchscreen" depends on MFD_88PM860X help Say Y here if you have a 88PM860x PMIC and want to enable support for the built-in touchscreen. If unsure, say N. To compile this driver as a module, choose M here: the module will be called 88pm860x-ts. config TOUCHSCREEN_ADS7846 tristate "ADS7846/TSC2046/AD7873 and AD(S)7843 based touchscreens" depends on SPI_MASTER depends on HWMON = n || HWMON help Say Y here if you have a touchscreen interface using the ADS7846/TSC2046/AD7873 or ADS7843/AD7843 controller, and your board-specific setup code includes that in its table of SPI devices. If HWMON is selected, and the driver is told the reference voltage on your board, you will also get hwmon interfaces for the voltage (and on ads7846/tsc2046/ad7873, temperature) sensors of this chip. If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called ads7846. config TOUCHSCREEN_AD7877 tristate "AD7877 based touchscreens" depends on SPI_MASTER help Say Y here if you have a touchscreen interface using the AD7877 controller, and your board-specific initialization code includes that in its table of SPI devices. If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called ad7877. config TOUCHSCREEN_AD7879 tristate "Analog Devices AD7879-1/AD7889-1 touchscreen interface" help Say Y here if you want to support a touchscreen interface using the AD7879-1/AD7889-1 controller. You should select a bus connection too. To compile this driver as a module, choose M here: the module will be called ad7879. config TOUCHSCREEN_AD7879_I2C tristate "support I2C bus connection" depends on TOUCHSCREEN_AD7879 && I2C help Say Y here if you have AD7879-1/AD7889-1 hooked to an I2C bus. To compile this driver as a module, choose M here: the module will be called ad7879-i2c. config TOUCHSCREEN_AD7879_SPI tristate "support SPI bus connection" depends on TOUCHSCREEN_AD7879 && SPI_MASTER help Say Y here if you have AD7879-1/AD7889-1 hooked to a SPI bus. If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called ad7879-spi. config TOUCHSCREEN_ATMEL_MXT tristate "Atmel mXT I2C Touchscreen" depends on I2C help Say Y here if you have Atmel mXT series I2C touchscreen, such as AT42QT602240/ATMXT224, connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called atmel_mxt_ts. config TOUCHSCREEN_BITSY tristate "Compaq iPAQ H3600 (Bitsy) touchscreen" depends on SA1100_BITSY select SERIO help Say Y here if you have the h3600 (Bitsy) touchscreen. If unsure, say N. To compile this driver as a module, choose M here: the module will be called h3600_ts_input. config TOUCHSCREEN_BU21013 tristate "BU21013 based touch panel controllers" depends on I2C help Say Y here if you have a bu21013 touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called bu21013_ts. config TOUCHSCREEN_CY8CTMG110 tristate "cy8ctmg110 touchscreen" depends on I2C depends on GPIOLIB help Say Y here if you have a cy8ctmg110 capacitive touchscreen on an AAVA device. If unsure, say N. To compile this driver as a module, choose M here: the module will be called cy8ctmg110_ts. config TOUCHSCREEN_DA9034 tristate "Touchscreen support for Dialog Semiconductor DA9034" depends on PMIC_DA903X default y help Say Y here to enable the support for the touchscreen found on Dialog Semiconductor DA9034 PMIC. config TOUCHSCREEN_DYNAPRO tristate "Dynapro serial touchscreen" select SERIO help Say Y here if you have a Dynapro serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called dynapro. config TOUCHSCREEN_HAMPSHIRE tristate "Hampshire serial touchscreen" select SERIO help Say Y here if you have a Hampshire serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called hampshire. config TOUCHSCREEN_EETI tristate "EETI touchscreen panel support" depends on I2C help Say Y here to enable support for I2C connected EETI touch panels. To compile this driver as a module, choose M here: the module will be called eeti_ts. config TOUCHSCREEN_FUJITSU tristate "Fujitsu serial touchscreen" select SERIO help Say Y here if you have the Fujitsu touchscreen (such as one installed in Lifebook P series laptop) connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called fujitsu-ts. config TOUCHSCREEN_S3C2410 tristate "Samsung S3C2410/generic touchscreen input driver" depends on ARCH_S3C2410 || SAMSUNG_DEV_TS select S3C_ADC help Say Y here if you have the s3c2410 touchscreen. If unsure, say N. To compile this driver as a module, choose M here: the module will be called s3c2410_ts. config TOUCHSCREEN_GUNZE tristate "Gunze AHL-51S touchscreen" select SERIO help Say Y here if you have the Gunze AHL-51 touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called gunze. config TOUCHSCREEN_ELO tristate "Elo serial touchscreens" select SERIO help Say Y here if you have an Elo serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called elo. config TOUCHSCREEN_WACOM_W8001 tristate "Wacom W8001 penabled serial touchscreen" select SERIO help Say Y here if you have an Wacom W8001 penabled serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called wacom_w8001. config TOUCHSCREEN_LPC32XX tristate "LPC32XX touchscreen controller" depends on ARCH_LPC32XX help Say Y here if you have a LPC32XX device and want to support the built-in touchscreen. To compile this driver as a module, choose M here: the module will be called lpc32xx_ts. config TOUCHSCREEN_MCS5000 tristate "MELFAS MCS-5000 touchscreen" depends on I2C help Say Y here if you have the MELFAS MCS-5000 touchscreen controller chip in your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called mcs5000_ts. config TOUCHSCREEN_MTOUCH tristate "MicroTouch serial touchscreens" select SERIO help Say Y here if you have a MicroTouch (3M) serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called mtouch. config TOUCHSCREEN_INEXIO tristate "iNexio serial touchscreens" select SERIO help Say Y here if you have an iNexio serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called inexio. config TOUCHSCREEN_INTEL_MID tristate "Intel MID platform resistive touchscreen" depends on INTEL_SCU_IPC help Say Y here if you have a Intel MID based touchscreen in your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called intel_mid_touch. config TOUCHSCREEN_MK712 tristate "ICS MicroClock MK712 touchscreen" help Say Y here if you have the ICS MicroClock MK712 touchscreen controller chip in your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called mk712. config TOUCHSCREEN_HP600 tristate "HP Jornada 6xx touchscreen" depends on SH_HP6XX && SH_ADC help Say Y here if you have a HP Jornada 620/660/680/690 and want to support the built-in touchscreen. To compile this driver as a module, choose M here: the module will be called hp680_ts_input. config TOUCHSCREEN_HP7XX tristate "HP Jornada 7xx touchscreen" depends on SA1100_JORNADA720_SSP help Say Y here if you have a HP Jornada 710/720/728 and want to support the built-in touchscreen. To compile this driver as a module, choose M here: the module will be called jornada720_ts. config TOUCHSCREEN_HTCPEN tristate "HTC Shift X9500 touchscreen" depends on ISA help Say Y here if you have an HTC Shift UMPC also known as HTC X9500 Clio / Shangrila and want to support the built-in touchscreen. If unsure, say N. To compile this driver as a module, choose M here: the module will be called htcpen. config TOUCHSCREEN_PENMOUNT tristate "Penmount serial touchscreen" select SERIO help Say Y here if you have a Penmount serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called penmount. config TOUCHSCREEN_MIGOR tristate "Renesas MIGO-R touchscreen" depends on SH_MIGOR && I2C help Say Y here to enable MIGO-R touchscreen support. If unsure, say N. To compile this driver as a module, choose M here: the module will be called migor_ts. config TOUCHSCREEN_TNETV107X tristate "TI TNETV107X touchscreen support" depends on ARCH_DAVINCI_TNETV107X help Say Y here if you want to use the TNETV107X touchscreen. To compile this driver as a module, choose M here: the module will be called tnetv107x-ts. config TOUCHSCREEN_TOUCHRIGHT tristate "Touchright serial touchscreen" select SERIO help Say Y here if you have a Touchright serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called touchright. config TOUCHSCREEN_TOUCHWIN tristate "Touchwin serial touchscreen" select SERIO help Say Y here if you have a Touchwin serial touchscreen connected to your system. If unsure, say N. To compile this driver as a module, choose M here: the module will be called touchwin. config TOUCHSCREEN_ATMEL_TSADCC tristate "Atmel Touchscreen Interface" depends on ARCH_AT91SAM9RL || ARCH_AT91SAM9G45 help Say Y here if you have a 4-wire touchscreen connected to the ADC Controller on your Atmel SoC (such as the AT91SAM9RL). If unsure, say N. To compile this driver as a module, choose M here: the module will be called atmel_tsadcc. config TOUCHSCREEN_UCB1400 tristate "Philips UCB1400 touchscreen" depends on AC97_BUS depends on UCB1400_CORE help This enables support for the Philips UCB1400 touchscreen interface. The UCB1400 is an AC97 audio codec. The touchscreen interface will be initialized only after the ALSA subsystem has been brought up and the UCB1400 detected. You therefore have to configure ALSA support as well (either built-in or modular, independently of whether this driver is itself built-in or modular) for this driver to work. To compile this driver as a module, choose M here: the module will be called ucb1400_ts. config TOUCHSCREEN_WM831X tristate "Support for WM831x touchscreen controllers" depends on MFD_WM831X help This enables support for the touchscreen controller on the WM831x series of PMICs. To compile this driver as a module, choose M here: the module will be called wm831x-ts. config TOUCHSCREEN_WM97XX tristate "Support for WM97xx AC97 touchscreen controllers" depends on AC97_BUS help Say Y here if you have a Wolfson Microelectronics WM97xx touchscreen connected to your system. Note that this option only enables core driver, you will also need to select support for appropriate chip below. If unsure, say N. To compile this driver as a module, choose M here: the module will be called wm97xx-ts. config TOUCHSCREEN_WM9705 bool "WM9705 Touchscreen interface support" depends on TOUCHSCREEN_WM97XX default y help Say Y here to enable support for the Wolfson Microelectronics WM9705 touchscreen controller. config TOUCHSCREEN_WM9712 bool "WM9712 Touchscreen interface support" depends on TOUCHSCREEN_WM97XX default y help Say Y here to enable support for the Wolfson Microelectronics WM9712 touchscreen controller. config TOUCHSCREEN_WM9713 bool "WM9713 Touchscreen interface support" depends on TOUCHSCREEN_WM97XX default y help Say Y here to enable support for the Wolfson Microelectronics WM9713 touchscreen controller. config TOUCHSCREEN_WM97XX_ATMEL tristate "WM97xx Atmel accelerated touch" depends on TOUCHSCREEN_WM97XX && (AVR32 || ARCH_AT91) help Say Y here for support for streaming mode with WM97xx touchscreens on Atmel AT91 or AVR32 systems with an AC97C module. Be aware that this will use channel B in the controller for streaming data, this must not conflict with other AC97C drivers. If unsure, say N. To compile this driver as a module, choose M here: the module will be called atmel-wm97xx. config TOUCHSCREEN_WM97XX_MAINSTONE tristate "WM97xx Mainstone/Palm accelerated touch" depends on TOUCHSCREEN_WM97XX && ARCH_PXA help Say Y here for support for streaming mode with WM97xx touchscreens on Mainstone, Palm Tungsten T5, TX and LifeDrive systems. If unsure, say N. To compile this driver as a module, choose M here: the module will be called mainstone-wm97xx. config TOUCHSCREEN_WM97XX_ZYLONITE tristate "Zylonite accelerated touch" depends on TOUCHSCREEN_WM97XX && MACH_ZYLONITE select TOUCHSCREEN_WM9713 help Say Y here for support for streaming mode with the touchscreen on Zylonite systems. If unsure, say N. To compile this driver as a module, choose M here: the module will be called zylonite-wm97xx. config TOUCHSCREEN_USB_COMPOSITE tristate "USB Touchscreen Driver" depends on USB_ARCH_HAS_HCD select USB help USB Touchscreen driver for: - eGalax Touchkit USB (also includes eTurboTouch CT-410/510/700) - PanJit TouchSet USB - 3M MicroTouch USB (EX II series) - ITM - some other eTurboTouch - Gunze AHL61 - DMC TSC-10/25 - IRTOUCHSYSTEMS/UNITOP - IdealTEK URTC1000 - GoTop Super_Q2/GogoPen/PenPower tablets - JASTEC USB Touch Controller/DigiTech DTR-02U - Zytronic controllers Have a look at for a usage description and the required user-space stuff. To compile this driver as a module, choose M here: the module will be called usbtouchscreen. config TOUCHSCREEN_MC13783 tristate "Freescale MC13783 touchscreen input driver" depends on MFD_MC13783 help Say Y here if you have an Freescale MC13783 PMIC on your board and want to use its touchscreen If unsure, say N. To compile this driver as a module, choose M here: the module will be called mc13783_ts. config TOUCHSCREEN_USB_EGALAX default y bool "eGalax, eTurboTouch CT-410/510/700 device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_PANJIT default y bool "PanJit device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_3M default y bool "3M/Microtouch EX II series device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_ITM default y bool "ITM device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_ETURBO default y bool "eTurboTouch (non-eGalax compatible) device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_GUNZE default y bool "Gunze AHL61 device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_DMC_TSC10 default y bool "DMC TSC-10/25 device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_IRTOUCH default y bool "IRTOUCHSYSTEMS/UNITOP device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_IDEALTEK default y bool "IdealTEK URTC1000 device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_GENERAL_TOUCH default y bool "GeneralTouch Touchscreen device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_GOTOP default y bool "GoTop Super_Q2/GogoPen/PenPower tablet device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_JASTEC default y bool "JASTEC/DigiTech DTR-02U USB touch controller device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_E2I default y bool "e2i Touchscreen controller (e.g. from Mimo 740)" depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_ZYTRONIC default y bool "Zytronic controller" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_ETT_TC45USB default y bool "ET&T USB series TC4UM/TC5UH touchscreen controller support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_USB_NEXIO default y bool "NEXIO/iNexio device support" if EXPERT depends on TOUCHSCREEN_USB_COMPOSITE config TOUCHSCREEN_TOUCHIT213 tristate "Sahara TouchIT-213 touchscreen" select SERIO help Say Y here if you have a Sahara TouchIT-213 Tablet PC. If unsure, say N. To compile this driver as a module, choose M here: the module will be called touchit213. config TOUCHSCREEN_TSC2005 tristate "TSC2005 based touchscreens" depends on SPI_MASTER && GENERIC_HARDIRQS help Say Y here if you have a TSC2005 based touchscreen. If unsure, say N. To compile this driver as a module, choose M here: the module will be called tsc2005. config TOUCHSCREEN_TSC2007 tristate "TSC2007 based touchscreens" depends on I2C help Say Y here if you have a TSC2007 based touchscreen. If unsure, say N. To compile this driver as a module, choose M here: the module will be called tsc2007. config TOUCHSCREEN_W90X900 tristate "W90P910 touchscreen driver" depends on HAVE_CLK help Say Y here if you have a W90P910 based touchscreen. To compile this driver as a module, choose M here: the module will be called w90p910_ts. config TOUCHSCREEN_PCAP tristate "Motorola PCAP touchscreen" depends on EZX_PCAP help Say Y here if you have a Motorola EZX telephone and want to enable support for the built-in touchscreen. To compile this driver as a module, choose M here: the module will be called pcap_ts. config TOUCHSCREEN_ST1232 tristate "Sitronix ST1232 touchscreen controllers" depends on I2C help Say Y here if you want to support Sitronix ST1232 touchscreen controller. If unsure, say N. To compile this driver as a module, choose M here: the module will be called st1232_ts. config TOUCHSCREEN_STMPE tristate "STMicroelectronics STMPE touchscreens" depends on MFD_STMPE help Say Y here if you want support for STMicroelectronics STMPE touchscreen controllers. To compile this driver as a module, choose M here: the module will be called stmpe-ts. config TOUCHSCREEN_TPS6507X tristate "TPS6507x based touchscreens" depends on I2C help Say Y here if you have a TPS6507x based touchscreen controller. If unsure, say N. To compile this driver as a module, choose M here: the module will be called tps6507x_ts. endif # # Input core configuration # config SERIO tristate "Serial I/O support" if EXPERT || !X86 default y help Say Yes here if you have any input device that uses serial I/O to communicate with the system. This includes the * standard AT keyboard and PS/2 mouse * as well as serial mice, Sun keyboards, some joysticks and 6dof devices and more. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called serio. if SERIO config SERIO_I8042 tristate "i8042 PC Keyboard controller" if EXPERT || !X86 default y depends on !PARISC && (!ARM || ARCH_SHARK || FOOTBRIDGE_HOST) && \ (!SUPERH || SH_CAYMAN) && !M68K && !BLACKFIN help i8042 is the chip over which the standard AT keyboard and PS/2 mouse are connected to the computer. If you use these devices, you'll need to say Y here. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called i8042. config SERIO_SERPORT tristate "Serial port line discipline" default y help Say Y here if you plan to use an input device (mouse, joystick, tablet, 6dof) that communicates over the RS232 serial (COM) port. More information is available: If unsure, say Y. To compile this driver as a module, choose M here: the module will be called serport. config SERIO_CT82C710 tristate "ct82c710 Aux port controller" depends on X86 help Say Y here if you have a Texas Instruments TravelMate notebook equipped with the ct82c710 chip and want to use a mouse connected to the "QuickPort". If unsure, say N. To compile this driver as a module, choose M here: the module will be called ct82c710. config SERIO_Q40KBD tristate "Q40 keyboard controller" depends on Q40 config SERIO_PARKBD tristate "Parallel port keyboard adapter" depends on PARPORT help Say Y here if you built a simple parallel port adapter to attach an additional AT keyboard, XT keyboard or PS/2 mouse. More information is available: If unsure, say N. To compile this driver as a module, choose M here: the module will be called parkbd. config SERIO_RPCKBD tristate "Acorn RiscPC keyboard controller" depends on ARCH_ACORN default y help Say Y here if you have the Acorn RiscPC and want to use an AT keyboard connected to its keyboard controller. To compile this driver as a module, choose M here: the module will be called rpckbd. config SERIO_AT32PSIF tristate "AVR32 PSIF PS/2 keyboard and mouse controller" depends on AVR32 help Say Y here if you want to use the PSIF peripheral on AVR32 devices and connect a PS/2 keyboard and/or mouse to it. To compile this driver as a module, choose M here: the module will be called at32psif. config SERIO_AMBAKMI tristate "AMBA KMI keyboard controller" depends on ARM_AMBA config SERIO_SA1111 tristate "Intel SA1111 keyboard controller" depends on SA1111 config SERIO_GSCPS2 tristate "HP GSC PS/2 keyboard and PS/2 mouse controller" depends on GSC default y help This driver provides support for the PS/2 ports on PA-RISC machines over which HP PS/2 keyboards and PS/2 mice may be connected. If you use these devices, you'll need to say Y here. It's safe to enable this driver, so if unsure, say Y. To compile this driver as a module, choose M here: the module will be called gscps2. config HP_SDC tristate "HP System Device Controller i8042 Support" depends on (GSC || HP300) && SERIO default y help This option enables support for the "System Device Controller", an i8042 carrying microcode to manage a few miscellaneous devices on some Hewlett Packard systems. The SDC itself contains a 10ms resolution timer/clock capable of delivering interrupts on a periodic and one-shot basis. The SDC may also be connected to a battery-backed real-time clock, a basic audio waveform generator, and an HP-HIL Master Link Controller serving up to seven input devices. By itself this option is rather useless, but enabling it will enable selection of drivers for the abovementioned devices. It is, however, incompatible with the old, reliable HIL keyboard driver, and the new HIL driver is experimental, so if you plan to use a HIL keyboard as your primary keyboard, you may wish to keep using that driver until the new HIL drivers have had more testing. config HIL_MLC tristate "HIL MLC Support (needed for HIL input devices)" depends on HP_SDC config SERIO_PCIPS2 tristate "PCI PS/2 keyboard and PS/2 mouse controller" depends on PCI help Say Y here if you have a Mobility Docking station with PS/2 keyboard and mice ports. To compile this driver as a module, choose M here: the module will be called pcips2. config SERIO_MACEPS2 tristate "SGI O2 MACE PS/2 controller" depends on SGI_IP32 help Say Y here if you have SGI O2 workstation and want to use its PS/2 ports. To compile this driver as a module, choose M here: the module will be called maceps2. config SERIO_LIBPS2 tristate "PS/2 driver library" if EXPERT depends on SERIO_I8042 || SERIO_I8042=n help Say Y here if you are using a driver for device connected to a PS/2 port, such as PS/2 mouse or standard AT keyboard. To compile this driver as a module, choose M here: the module will be called libps2. config SERIO_RAW tristate "Raw access to serio ports" help Say Y here if you want to have raw access to serio ports, such as AUX ports on i8042 keyboard controller. Each serio port that is bound to this driver will be accessible via a char device with major 10 and dynamically allocated minor. The driver will try allocating minor 1 (that historically corresponds to /dev/psaux) first. To bind this driver to a serio port use sysfs interface: echo -n "serio_raw" > /sys/bus/serio/devices/serioX/drvctl To compile this driver as a module, choose M here: the module will be called serio_raw. config SERIO_XILINX_XPS_PS2 tristate "Xilinx XPS PS/2 Controller Support" depends on PPC || MICROBLAZE help This driver supports XPS PS/2 IP from the Xilinx EDK on PowerPC platform. To compile this driver as a module, choose M here: the module will be called xilinx_ps2. config SERIO_ALTERA_PS2 tristate "Altera UP PS/2 controller" help Say Y here if you have Altera University Program PS/2 ports. To compile this driver as a module, choose M here: the module will be called altera_ps2. config SERIO_AMS_DELTA tristate "Amstrad Delta (E3) mailboard support" depends on MACH_AMS_DELTA default y ---help--- Say Y here if you have an E3 and want to use its mailboard, or any standard AT keyboard connected to the mailboard port. When used for the E3 mailboard, a non-standard key table must be loaded from userspace, possibly using udev extras provided keymap helper utility. To compile this driver as a module, choose M here; the module will be called ams_delta_serio. config SERIO_PS2MULT tristate "TQC PS/2 multiplexer" help Say Y here if you have the PS/2 line multiplexer like the one present on TQC boards. To compile this driver as a module, choose M here: the module will be called ps2mult. endif # # SFI Configuration # menuconfig SFI bool "SFI (Simple Firmware Interface) Support" ---help--- The Simple Firmware Interface (SFI) provides a lightweight method for platform firmware to pass information to the operating system via static tables in memory. Kernel SFI support is required to boot on SFI-only platforms. Currently, all SFI-only platforms are based on the 2nd generation Intel Atom processor platform, code-named Moorestown. For more information, see http://simplefirmware.org Say 'Y' here to enable the kernel to boot on SFI-only platforms. config LGUEST tristate "Linux hypervisor example code" depends on X86_32 && EXPERIMENTAL && EVENTFD select HVC_DRIVER ---help--- This is a very simple module which allows you to run multiple instances of the same Linux kernel, using the "lguest" command found in the Documentation/lguest directory. Note that "lguest" is pronounced to rhyme with "fell quest", not "rustyvisor". See Documentation/lguest/lguest.txt. If unsure, say N. If curious, say M. If masochistic, say Y. menuconfig INFINIBAND tristate "InfiniBand support" depends on PCI || BROKEN depends on HAS_IOMEM ---help--- Core support for InfiniBand (IB). Make sure to also select any protocols you wish to use as well as drivers for your InfiniBand hardware. if INFINIBAND config INFINIBAND_USER_MAD tristate "InfiniBand userspace MAD support" depends on INFINIBAND ---help--- Userspace InfiniBand Management Datagram (MAD) support. This is the kernel side of the userspace MAD support, which allows userspace processes to send and receive MADs. You will also need libibumad from . config INFINIBAND_USER_ACCESS tristate "InfiniBand userspace access (verbs and CM)" select ANON_INODES ---help--- Userspace InfiniBand access support. This enables the kernel side of userspace verbs and the userspace communication manager (CM). This allows userspace processes to set up connections and directly access InfiniBand hardware for fast-path operations. You will also need libibverbs, libibcm and a hardware driver library from . config INFINIBAND_USER_MEM bool depends on INFINIBAND_USER_ACCESS != n default y config INFINIBAND_ADDR_TRANS bool depends on INET depends on !(INFINIBAND = y && IPV6 = m) default y source "drivers/infiniband/hw/mthca/Kconfig" source "drivers/infiniband/hw/ipath/Kconfig" source "drivers/infiniband/hw/qib/Kconfig" source "drivers/infiniband/hw/ehca/Kconfig" source "drivers/infiniband/hw/amso1100/Kconfig" source "drivers/infiniband/hw/cxgb3/Kconfig" source "drivers/infiniband/hw/cxgb4/Kconfig" source "drivers/infiniband/hw/mlx4/Kconfig" source "drivers/infiniband/hw/nes/Kconfig" source "drivers/infiniband/ulp/ipoib/Kconfig" source "drivers/infiniband/ulp/srp/Kconfig" source "drivers/infiniband/ulp/iser/Kconfig" endif # INFINIBAND config INFINIBAND_IPOIB tristate "IP-over-InfiniBand" depends on NETDEVICES && INET && (IPV6 || IPV6=n) ---help--- Support for the IP-over-InfiniBand protocol (IPoIB). This transports IP packets over InfiniBand so you can use your IB device as a fancy NIC. See Documentation/infiniband/ipoib.txt for more information config INFINIBAND_IPOIB_CM bool "IP-over-InfiniBand Connected Mode support" depends on INFINIBAND_IPOIB default n ---help--- This option enables support for IPoIB connected mode. After enabling this option, you need to switch to connected mode through /sys/class/net/ibXXX/mode to actually create connections, and then increase the interface MTU with e.g. ifconfig ib0 mtu 65520. WARNING: Enabling connected mode will trigger some packet drops for multicast and UD mode traffic from this interface, unless you limit mtu for these destinations to 2044. config INFINIBAND_IPOIB_DEBUG bool "IP-over-InfiniBand debugging" if EXPERT depends on INFINIBAND_IPOIB default y ---help--- This option causes debugging code to be compiled into the IPoIB driver. The output can be turned on via the debug_level and mcast_debug_level module parameters (which can also be set after the driver is loaded through sysfs). This option also creates a directory tree under ipoib/ in debugfs, which contains files that expose debugging information about IB multicast groups used by the IPoIB driver. config INFINIBAND_IPOIB_DEBUG_DATA bool "IP-over-InfiniBand data path debugging" depends on INFINIBAND_IPOIB_DEBUG ---help--- This option compiles debugging code into the data path of the IPoIB driver. The output can be turned on via the data_debug_level module parameter; however, even with output turned off, this debugging code will have some performance impact. config INFINIBAND_ISER tristate "iSCSI Extensions for RDMA (iSER)" depends on SCSI && INET && INFINIBAND_ADDR_TRANS select SCSI_ISCSI_ATTRS ---help--- Support for the iSCSI Extensions for RDMA (iSER) Protocol over InfiniBand. This allows you to access storage devices that speak iSCSI over iSER over InfiniBand. The iSER protocol is defined by IETF. See and config INFINIBAND_SRP tristate "InfiniBand SCSI RDMA Protocol" depends on SCSI select SCSI_SRP_ATTRS ---help--- Support for the SCSI RDMA Protocol over InfiniBand. This allows you to access storage devices that speak SRP over InfiniBand. The SRP protocol is defined by the INCITS T10 technical committee. See . config MLX4_INFINIBAND tristate "Mellanox ConnectX HCA support" depends on NETDEVICES && NETDEV_10000 && PCI select MLX4_CORE ---help--- This driver provides low-level InfiniBand support for Mellanox ConnectX PCI Express host channel adapters (HCAs). This is required to use InfiniBand protocols such as IP-over-IB or SRP with these devices. config INFINIBAND_AMSO1100 tristate "Ammasso 1100 HCA support" depends on PCI && INET ---help--- This is a low-level driver for the Ammasso 1100 host channel adapter (HCA). config INFINIBAND_AMSO1100_DEBUG bool "Verbose debugging output" depends on INFINIBAND_AMSO1100 default n ---help--- This option causes the amso1100 driver to produce a bunch of debug messages. Select this if you are developing the driver or trying to diagnose a problem. config INFINIBAND_IPATH tristate "QLogic HTX HCA support" depends on 64BIT && NET && HT_IRQ ---help--- This is a driver for the obsolete QLogic Hyper-Transport IB host channel adapter (model QHT7140), including InfiniBand verbs support. This driver allows these devices to be used with both kernel upper level protocols such as IP-over-InfiniBand as well as with userspace applications (in conjunction with InfiniBand userspace access). For QLogic PCIe QLE based cards, use the QIB driver instead. config INFINIBAND_CXGB4 tristate "Chelsio T4 RDMA Driver" depends on CHELSIO_T4 && INET select GENERIC_ALLOCATOR ---help--- This is an iWARP/RDMA driver for the Chelsio T4 1GbE and 10GbE adapters. For general information about Chelsio and our products, visit our website at . For customer support, please visit our customer support page at . Please send feedback to . To compile this driver as a module, choose M here: the module will be called iw_cxgb4. config INFINIBAND_NES tristate "NetEffect RNIC Driver" depends on PCI && INET && INFINIBAND select LIBCRC32C select INET_LRO ---help--- This is the RDMA Network Interface Card (RNIC) driver for NetEffect Ethernet Cluster Server Adapters. config INFINIBAND_NES_DEBUG bool "Verbose debugging output" depends on INFINIBAND_NES default n ---help--- This option enables debug messages from the NetEffect RNIC driver. Select this if you are diagnosing a problem. config INFINIBAND_EHCA tristate "eHCA support" depends on IBMEBUS ---help--- This driver supports the IBM pSeries eHCA InfiniBand adapter. To compile the driver as a module, choose M here. The module will be called ib_ehca. config INFINIBAND_QIB tristate "QLogic PCIe HCA support" depends on 64BIT && NET ---help--- This is a low-level driver for QLogic PCIe QLE InfiniBand host channel adapters. This driver does not support the QLogic HyperTransport card (model QHT7140). config INFINIBAND_CXGB3 tristate "Chelsio RDMA Driver" depends on CHELSIO_T3 && INET select GENERIC_ALLOCATOR ---help--- This is an iWARP/RDMA driver for the Chelsio T3 1GbE and 10GbE adapters. For general information about Chelsio and our products, visit our website at . For customer support, please visit our customer support page at . Please send feedback to . To compile this driver as a module, choose M here: the module will be called iw_cxgb3. config INFINIBAND_CXGB3_DEBUG bool "Verbose debugging output" depends on INFINIBAND_CXGB3 default n ---help--- This option causes the Chelsio RDMA driver to produce copious amounts of debug messages. Select this if you are developing the driver or trying to diagnose a problem. config INFINIBAND_MTHCA tristate "Mellanox HCA support" depends on PCI ---help--- This is a low-level driver for Mellanox InfiniHost host channel adapters (HCAs), including the MT23108 PCI-X HCA ("Tavor") and the MT25208 PCI Express HCA ("Arbel"). config INFINIBAND_MTHCA_DEBUG bool "Verbose debugging output" if EXPERT depends on INFINIBAND_MTHCA default y ---help--- This option causes debugging code to be compiled into the mthca driver. The output can be turned on via the debug_level module parameter (which can also be set after the driver is loaded through sysfs). menu "Bluetooth device drivers" depends on BT config BT_HCIBTUSB tristate "HCI USB driver" depends on USB help Bluetooth HCI USB driver. This driver is required if you want to use Bluetooth devices with USB interface. Say Y here to compile support for Bluetooth USB devices into the kernel or say M to compile it as module (btusb). config BT_HCIBTSDIO tristate "HCI SDIO driver" depends on MMC help Bluetooth HCI SDIO driver. This driver is required if you want to use Bluetooth device with SDIO interface. Say Y here to compile support for Bluetooth SDIO devices into the kernel or say M to compile it as module (btsdio). config BT_HCIUART tristate "HCI UART driver" help Bluetooth HCI UART driver. This driver is required if you want to use Bluetooth devices with serial port interface. You will also need this driver if you have UART based Bluetooth PCMCIA and CF devices like Xircom Credit Card adapter and BrainBoxes Bluetooth PC Card. Say Y here to compile support for Bluetooth UART devices into the kernel or say M to compile it as module (hci_uart). config BT_HCIUART_H4 bool "UART (H4) protocol support" depends on BT_HCIUART help UART (H4) is serial protocol for communication between Bluetooth device and host. This protocol is required for most Bluetooth devices with UART interface, including PCMCIA and CF cards. Say Y here to compile support for HCI UART (H4) protocol. config BT_HCIUART_BCSP bool "BCSP protocol support" depends on BT_HCIUART select BITREVERSE help BCSP (BlueCore Serial Protocol) is serial protocol for communication between Bluetooth device and host. This protocol is required for non USB Bluetooth devices based on CSR BlueCore chip, including PCMCIA and CF cards. Say Y here to compile support for HCI BCSP protocol. config BT_HCIUART_ATH3K bool "Atheros AR300x serial support" depends on BT_HCIUART help HCIATH3K (HCI Atheros AR300x) is a serial protocol for communication between host and Atheros AR300x Bluetooth devices. This protocol enables AR300x chips to be enabled with power management support. Enable this if you have Atheros AR300x serial Bluetooth device. Say Y here to compile support for HCI UART ATH3K protocol. config BT_HCIUART_LL bool "HCILL protocol support" depends on BT_HCIUART help HCILL (HCI Low Level) is a serial protocol for communication between Bluetooth device and host. This protocol is required for serial Bluetooth devices that are based on Texas Instruments' BRF chips. Say Y here to compile support for HCILL protocol. config BT_HCIBCM203X tristate "HCI BCM203x USB driver" depends on USB select FW_LOADER help Bluetooth HCI BCM203x USB driver. This driver provides the firmware loading mechanism for the Broadcom Blutonium based devices. Say Y here to compile support for HCI BCM203x devices into the kernel or say M to compile it as module (bcm203x). config BT_HCIBPA10X tristate "HCI BPA10x USB driver" depends on USB help Bluetooth HCI BPA10x USB driver. This driver provides support for the Digianswer BPA 100/105 Bluetooth sniffer devices. Say Y here to compile support for HCI BPA10x devices into the kernel or say M to compile it as module (bpa10x). config BT_HCIBFUSB tristate "HCI BlueFRITZ! USB driver" depends on USB select FW_LOADER help Bluetooth HCI BlueFRITZ! USB driver. This driver provides support for Bluetooth USB devices with AVM interface: AVM BlueFRITZ! USB Say Y here to compile support for HCI BFUSB devices into the kernel or say M to compile it as module (bfusb). config BT_HCIDTL1 tristate "HCI DTL1 (PC Card) driver" depends on PCMCIA help Bluetooth HCI DTL1 (PC Card) driver. This driver provides support for Bluetooth PCMCIA devices with Nokia DTL1 interface: Nokia Bluetooth Card Socket Bluetooth CF Card Say Y here to compile support for HCI DTL1 devices into the kernel or say M to compile it as module (dtl1_cs). config BT_HCIBT3C tristate "HCI BT3C (PC Card) driver" depends on PCMCIA select FW_LOADER help Bluetooth HCI BT3C (PC Card) driver. This driver provides support for Bluetooth PCMCIA devices with 3Com BT3C interface: 3Com Bluetooth Card (3CRWB6096) HP Bluetooth Card Say Y here to compile support for HCI BT3C devices into the kernel or say M to compile it as module (bt3c_cs). config BT_HCIBLUECARD tristate "HCI BlueCard (PC Card) driver" depends on PCMCIA help Bluetooth HCI BlueCard (PC Card) driver. This driver provides support for Bluetooth PCMCIA devices with Anycom BlueCard interface: Anycom Bluetooth PC Card Anycom Bluetooth CF Card Say Y here to compile support for HCI BlueCard devices into the kernel or say M to compile it as module (bluecard_cs). config BT_HCIBTUART tristate "HCI UART (PC Card) device driver" depends on PCMCIA help Bluetooth HCI UART (PC Card) driver. This driver provides support for Bluetooth PCMCIA devices with an UART interface: Xircom CreditCard Bluetooth Adapter Xircom RealPort2 Bluetooth Adapter Sphinx PICO Card H-Soft blue+Card Cyber-blue Compact Flash Card Say Y here to compile support for HCI UART devices into the kernel or say M to compile it as module (btuart_cs). config BT_HCIVHCI tristate "HCI VHCI (Virtual HCI device) driver" help Bluetooth Virtual HCI device driver. This driver is required if you want to use HCI Emulation software. Say Y here to compile support for virtual HCI devices into the kernel or say M to compile it as module (hci_vhci). config BT_MRVL tristate "Marvell Bluetooth driver support" help The core driver to support Marvell Bluetooth devices. This driver is required if you want to support Marvell Bluetooth devices, such as 8688. Say Y here to compile Marvell Bluetooth driver into the kernel or say M to compile it as module. config BT_MRVL_SDIO tristate "Marvell BT-over-SDIO driver" depends on BT_MRVL && MMC select FW_LOADER help The driver for Marvell Bluetooth chipsets with SDIO interface. This driver is required if you want to use Marvell Bluetooth devices with SDIO interface. Currently only SD8688 chipset is supported. Say Y here to compile support for Marvell BT-over-SDIO driver into the kernel or say M to compile it as module. config BT_ATH3K tristate "Atheros firmware download driver" depends on BT_HCIBTUSB select FW_LOADER help Bluetooth firmware download driver. This driver loads the firmware into the Atheros Bluetooth chipset. Say Y here to compile support for "Atheros firmware download driver" into the kernel or say M to compile it as module (ath3k). config BT_WILINK tristate "Texas Instruments WiLink7 driver" depends on TI_ST help This enables the Bluetooth driver for Texas Instrument's BT/FM/GPS combo devices. This makes use of shared transport line discipline core driver to communicate with the BT core of the combo chip. Say Y here to compile support for Texas Instrument's WiLink7 driver into the kernel or say M to compile it as module. endmenu # # Generic HWSPINLOCK framework # config HWSPINLOCK tristate "Generic Hardware Spinlock framework" depends on ARCH_OMAP4 help Say y here to support the generic hardware spinlock framework. You only need to enable this if you have hardware spinlock module on your system (usually only relevant if your system has remote slave coprocessors). If unsure, say N. config HWSPINLOCK_OMAP tristate "OMAP Hardware Spinlock device" depends on HWSPINLOCK && ARCH_OMAP4 help Say y here to support the OMAP Hardware Spinlock device (firstly introduced in OMAP4). If unsure, say N. # # Generic thermal sysfs drivers configuration # menuconfig THERMAL tristate "Generic Thermal sysfs driver" help Generic Thermal Sysfs driver offers a generic mechanism for thermal management. Usually it's made up of one or more thermal zone and cooling device. Each thermal zone contains its own temperature, trip points, cooling devices. All platforms with ACPI thermal support can use this driver. If you want this support, you should say Y or M here. config THERMAL_HWMON bool "Hardware monitoring support" depends on THERMAL depends on HWMON=y || HWMON=THERMAL help The generic thermal sysfs driver's hardware monitoring support requires a 2.10.7/3.0.2 or later lm-sensors userspace. Say Y if your user-space is new enough. # # SATA/PATA driver configuration # config HAVE_PATA_PLATFORM bool help This is an internal configuration node for any machine that uses pata-platform driver to enable the relevant driver in the configuration structure without having to submit endless patches to update the PATA_PLATFORM entry. menuconfig ATA tristate "Serial ATA and Parallel ATA drivers" depends on HAS_IOMEM depends on BLOCK depends on !(M32R || M68K) || BROKEN select SCSI ---help--- If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or any other ATA device under Linux, say Y and make sure that you know the name of your ATA host adapter (the card inside your computer that "speaks" the ATA protocol, also called ATA controller), because you will be asked for it. NOTE: ATA enables basic SCSI support; *however*, 'SCSI disk support', 'SCSI tape support', or 'SCSI CDROM support' may also be needed, depending on your hardware configuration. if ATA config ATA_NONSTANDARD bool default n config ATA_VERBOSE_ERROR bool "Verbose ATA error reporting" default y help This option adds parsing of ATA command descriptions and error bits in libata kernel output, making it easier to interpret. This option will enlarge the kernel by approx. 6KB. Disable it only if kernel size is more important than ease of debugging. If unsure, say Y. config ATA_ACPI bool "ATA ACPI Support" depends on ACPI && PCI default y help This option adds support for ATA-related ACPI objects. These ACPI objects add the ability to retrieve taskfiles from the ACPI BIOS and write them to the disk controller. These objects may be related to performance, security, power management, or other areas. You can disable this at kernel boot time by using the option libata.noacpi=1 config SATA_PMP bool "SATA Port Multiplier support" default y help This option adds support for SATA Port Multipliers (the SATA version of an ethernet hub, or SAS expander). comment "Controllers with non-SFF native interface" config SATA_AHCI tristate "AHCI SATA support" depends on PCI help This option enables support for AHCI Serial ATA. If unsure, say N. config SATA_AHCI_PLATFORM tristate "Platform AHCI SATA support" help This option enables support for Platform AHCI Serial ATA controllers. If unsure, say N. config SATA_FSL tristate "Freescale 3.0Gbps SATA support" depends on FSL_SOC help This option enables support for Freescale 3.0Gbps SATA controller. It can be found on MPC837x and MPC8315. If unsure, say N. config SATA_INIC162X tristate "Initio 162x SATA support" depends on PCI help This option enables support for Initio 162x Serial ATA. config SATA_ACARD_AHCI tristate "ACard AHCI variant (ATP 8620)" depends on PCI help This option enables support for Acard. If unsure, say N. config SATA_SIL24 tristate "Silicon Image 3124/3132 SATA support" depends on PCI help This option enables support for Silicon Image 3124/3132 Serial ATA. If unsure, say N. config ATA_SFF bool "ATA SFF support" default y help This option adds support for ATA controllers with SFF compliant or similar programming interface. SFF is the legacy IDE interface that has been around since the dawn of time. Almost all PATA controllers have an SFF interface. Many SATA controllers have an SFF interface when configured into a legacy compatibility mode. For users with exclusively modern controllers like AHCI, Silicon Image 3124, or Marvell 6440, you may choose to disable this unneeded SFF support. If unsure, say Y. if ATA_SFF comment "SFF controllers with custom DMA interface" config PDC_ADMA tristate "Pacific Digital ADMA support" depends on PCI help This option enables support for Pacific Digital ADMA controllers If unsure, say N. config PATA_OCTEON_CF tristate "OCTEON Boot Bus Compact Flash support" depends on CPU_CAVIUM_OCTEON help This option enables a polled compact flash driver for use with compact flash cards attached to the OCTEON boot bus. If unsure, say N. config SATA_QSTOR tristate "Pacific Digital SATA QStor support" depends on PCI help This option enables support for Pacific Digital Serial ATA QStor. If unsure, say N. config SATA_SX4 tristate "Promise SATA SX4 support (Experimental)" depends on PCI && EXPERIMENTAL help This option enables support for Promise Serial ATA SX4. If unsure, say N. config ATA_BMDMA bool "ATA BMDMA support" default y help This option adds support for SFF ATA controllers with BMDMA capability. BMDMA stands for bus-master DMA and is the de facto DMA interface for SFF controllers. If unsure, say Y. if ATA_BMDMA comment "SATA SFF controllers with BMDMA" config ATA_PIIX tristate "Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support" depends on PCI help This option enables support for ICH5/6/7/8 Serial ATA and support for PATA on the Intel ESB/ICH/PIIX3/PIIX4 series host controllers. If unsure, say N. config SATA_DWC tristate "DesignWare Cores SATA support" depends on 460EX help This option enables support for the on-chip SATA controller of the AppliedMicro processor 460EX. If unsure, say N. config SATA_DWC_DEBUG bool "Debugging driver version" depends on SATA_DWC help This option enables debugging output in the driver. config SATA_DWC_VDEBUG bool "Verbose debug output" depends on SATA_DWC_DEBUG help This option enables the taskfile dumping and NCQ debugging. config SATA_MV tristate "Marvell SATA support" help This option enables support for the Marvell Serial ATA family. Currently supports 88SX[56]0[48][01] PCI(-X) chips, as well as the newer [67]042 PCI-X/PCIe and SOC devices. If unsure, say N. config SATA_NV tristate "NVIDIA SATA support" depends on PCI help This option enables support for NVIDIA Serial ATA. If unsure, say N. config SATA_PROMISE tristate "Promise SATA TX2/TX4 support" depends on PCI help This option enables support for Promise Serial ATA TX2/TX4. If unsure, say N. config SATA_SIL tristate "Silicon Image SATA support" depends on PCI help This option enables support for Silicon Image Serial ATA. If unsure, say N. config SATA_SIS tristate "SiS 964/965/966/180 SATA support" depends on PCI select PATA_SIS help This option enables support for SiS Serial ATA on SiS 964/965/966/180 and Parallel ATA on SiS 180. The PATA support for SiS 180 requires additionally to enable the PATA_SIS driver in the config. If unsure, say N. config SATA_SVW tristate "ServerWorks Frodo / Apple K2 SATA support" depends on PCI help This option enables support for Broadcom/Serverworks/Apple K2 SATA support. If unsure, say N. config SATA_ULI tristate "ULi Electronics SATA support" depends on PCI help This option enables support for ULi Electronics SATA. If unsure, say N. config SATA_VIA tristate "VIA SATA support" depends on PCI help This option enables support for VIA Serial ATA. If unsure, say N. config SATA_VITESSE tristate "VITESSE VSC-7174 / INTEL 31244 SATA support" depends on PCI help This option enables support for Vitesse VSC7174 and Intel 31244 Serial ATA. If unsure, say N. comment "PATA SFF controllers with BMDMA" config PATA_ALI tristate "ALi PATA support" depends on PCI help This option enables support for the ALi ATA interfaces found on the many ALi chipsets. If unsure, say N. config PATA_AMD tristate "AMD/NVidia PATA support" depends on PCI help This option enables support for the AMD and NVidia PATA interfaces found on the chipsets for Athlon/Athlon64. If unsure, say N. config PATA_ARASAN_CF tristate "ARASAN CompactFlash PATA Controller Support" select DMA_ENGINE help Say Y here to support the ARASAN CompactFlash PATA controller config PATA_ARTOP tristate "ARTOP 6210/6260 PATA support" depends on PCI help This option enables support for ARTOP PATA controllers. If unsure, say N. config PATA_ATIIXP tristate "ATI PATA support" depends on PCI help This option enables support for the ATI ATA interfaces found on the many ATI chipsets. If unsure, say N. config PATA_ATP867X tristate "ARTOP/Acard ATP867X PATA support" depends on PCI help This option enables support for ARTOP/Acard ATP867X PATA controllers. If unsure, say N. config PATA_BF54X tristate "Blackfin 54x ATAPI support" depends on BF542 || BF548 || BF549 help This option enables support for the built-in ATAPI controller on Blackfin 54x family chips. If unsure, say N. config PATA_CMD64X tristate "CMD64x PATA support" depends on PCI help This option enables support for the CMD64x series chips except for the CMD640. If unsure, say N. config PATA_CS5520 tristate "CS5510/5520 PATA support" depends on PCI help This option enables support for the Cyrix 5510/5520 companion chip used with the MediaGX/Geode processor family. If unsure, say N. config PATA_CS5530 tristate "CS5530 PATA support" depends on PCI help This option enables support for the Cyrix/NatSemi/AMD CS5530 companion chip used with the MediaGX/Geode processor family. If unsure, say N. config PATA_CS5535 tristate "CS5535 PATA support (Experimental)" depends on PCI && X86 && !X86_64 && EXPERIMENTAL help This option enables support for the NatSemi/AMD CS5535 companion chip used with the Geode processor family. If unsure, say N. config PATA_CS5536 tristate "CS5536 PATA support" depends on PCI help This option enables support for the AMD CS5536 companion chip used with the Geode LX processor family. If unsure, say N. config PATA_CYPRESS tristate "Cypress CY82C693 PATA support (Very Experimental)" depends on PCI && EXPERIMENTAL help This option enables support for the Cypress/Contaq CY82C693 chipset found in some Alpha systems If unsure, say N. config PATA_EFAR tristate "EFAR SLC90E66 support" depends on PCI help This option enables support for the EFAR SLC90E66 IDE controller found on some older machines. If unsure, say N. config PATA_HPT366 tristate "HPT 366/368 PATA support" depends on PCI help This option enables support for the HPT 366 and 368 PATA controllers via the new ATA layer. If unsure, say N. config PATA_HPT37X tristate "HPT 370/370A/371/372/374/302 PATA support" depends on PCI help This option enables support for the majority of the later HPT PATA controllers via the new ATA layer. If unsure, say N. config PATA_HPT3X2N tristate "HPT 371N/372N/302N PATA support" depends on PCI help This option enables support for the N variant HPT PATA controllers via the new ATA layer. If unsure, say N. config PATA_HPT3X3 tristate "HPT 343/363 PATA support" depends on PCI help This option enables support for the HPT 343/363 PATA controllers via the new ATA layer If unsure, say N. config PATA_HPT3X3_DMA bool "HPT 343/363 DMA support" depends on PATA_HPT3X3 help This option enables DMA support for the HPT343/363 controllers. Enable with care as there are still some problems with DMA on this chipset. config PATA_ICSIDE tristate "Acorn ICS PATA support" depends on ARM && ARCH_ACORN help On Acorn systems, say Y here if you wish to use the ICS PATA interface card. This is not required for ICS partition support. If you are unsure, say N to this. config PATA_IT8213 tristate "IT8213 PATA support (Experimental)" depends on PCI && EXPERIMENTAL help This option enables support for the ITE 821 PATA controllers via the new ATA layer. If unsure, say N. config PATA_IT821X tristate "IT8211/2 PATA support" depends on PCI help This option enables support for the ITE 8211 and 8212 PATA controllers via the new ATA layer, including RAID mode. If unsure, say N. config PATA_JMICRON tristate "JMicron PATA support" depends on PCI help Enable support for the JMicron IDE controller, via the new ATA layer. If unsure, say N. config PATA_MACIO tristate "Apple PowerMac/PowerBook internal 'MacIO' IDE" depends on PPC_PMAC help Most IDE capable PowerMacs have IDE busses driven by a variant of this controller which is part of the Apple chipset used on most PowerMac models. Some models have multiple busses using different chipsets, though generally, MacIO is one of them. config PATA_MARVELL tristate "Marvell PATA support via legacy mode" depends on PCI help This option enables limited support for the Marvell 88SE61xx ATA controllers. If you wish to use only the SATA ports then select the AHCI driver alone. If you wish to the use the PATA port or both SATA and PATA include this driver. If unsure, say N. config PATA_MPC52xx tristate "Freescale MPC52xx SoC internal IDE" depends on PPC_MPC52xx && PPC_BESTCOMM select PPC_BESTCOMM_ATA help This option enables support for integrated IDE controller of the Freescale MPC52xx SoC. If unsure, say N. config PATA_NETCELL tristate "NETCELL Revolution RAID support" depends on PCI help This option enables support for the Netcell Revolution RAID PATA controller. If unsure, say N. config PATA_NINJA32 tristate "Ninja32/Delkin Cardbus ATA support" depends on PCI help This option enables support for the Ninja32, Delkin and possibly other brands of Cardbus ATA adapter If unsure, say N. config PATA_NS87415 tristate "Nat Semi NS87415 PATA support" depends on PCI help This option enables support for the National Semiconductor NS87415 PCI-IDE controller. If unsure, say N. config PATA_OLDPIIX tristate "Intel PATA old PIIX support" depends on PCI help This option enables support for early PIIX PATA support. If unsure, say N. config PATA_OPTIDMA tristate "OPTI FireStar PATA support (Very Experimental)" depends on PCI && EXPERIMENTAL help This option enables DMA/PIO support for the later OPTi controllers found on some old motherboards and in some laptops. If unsure, say N. config PATA_PDC2027X tristate "Promise PATA 2027x support" depends on PCI help This option enables support for Promise PATA pdc20268 to pdc20277 host adapters. If unsure, say N. config PATA_PDC_OLD tristate "Older Promise PATA controller support" depends on PCI help This option enables support for the Promise 20246, 20262, 20263, 20265 and 20267 adapters. If unsure, say N. config PATA_RADISYS tristate "RADISYS 82600 PATA support (Experimental)" depends on PCI && EXPERIMENTAL help This option enables support for the RADISYS 82600 PATA controllers via the new ATA layer If unsure, say N. config PATA_RDC tristate "RDC PATA support" depends on PCI help This option enables basic support for the later RDC PATA controllers controllers via the new ATA layer. For the RDC 1010, you need to enable the IT821X driver instead. If unsure, say N. config PATA_SC1200 tristate "SC1200 PATA support" depends on PCI help This option enables support for the NatSemi/AMD SC1200 SoC companion chip used with the Geode processor family. If unsure, say N. config PATA_SCC tristate "Toshiba's Cell Reference Set IDE support" depends on PCI && PPC_CELLEB help This option enables support for the built-in IDE controller on Toshiba Cell Reference Board. If unsure, say N. config PATA_SCH tristate "Intel SCH PATA support" depends on PCI help This option enables support for Intel SCH PATA on the Intel SCH (US15W, US15L, UL11L) series host controllers. If unsure, say N. config PATA_SERVERWORKS tristate "SERVERWORKS OSB4/CSB5/CSB6/HT1000 PATA support" depends on PCI help This option enables support for the Serverworks OSB4/CSB5/CSB6 and HT1000 PATA controllers, via the new ATA layer. If unsure, say N. config PATA_SIL680 tristate "CMD / Silicon Image 680 PATA support" depends on PCI help This option enables support for CMD / Silicon Image 680 PATA. If unsure, say N. config PATA_SIS tristate "SiS PATA support" depends on PCI help This option enables support for SiS PATA controllers If unsure, say N. config PATA_TOSHIBA tristate "Toshiba Piccolo support (Experimental)" depends on PCI && EXPERIMENTAL help Support for the Toshiba Piccolo controllers. Currently only the primary channel is supported by this driver. If unsure, say N. config PATA_TRIFLEX tristate "Compaq Triflex PATA support" depends on PCI help Enable support for the Compaq 'Triflex' IDE controller as found on many Compaq Pentium-Pro systems, via the new ATA layer. If unsure, say N. config PATA_VIA tristate "VIA PATA support" depends on PCI help This option enables support for the VIA PATA interfaces found on the many VIA chipsets. If unsure, say N. config PATA_PXA tristate "PXA DMA-capable PATA support" depends on ARCH_PXA help This option enables support for harddrive attached to PXA CPU's bus. NOTE: This driver utilizes PXA DMA controller, in case your hardware is not capable of doing MWDMA, use pata_platform instead. If unsure, say N. config PATA_WINBOND tristate "Winbond SL82C105 PATA support" depends on PCI help This option enables support for SL82C105 PATA devices found in the Netwinder and some other systems If unsure, say N. endif # ATA_BMDMA comment "PIO-only SFF controllers" config PATA_AT32 tristate "Atmel AVR32 PATA support (Experimental)" depends on AVR32 && PLATFORM_AT32AP && EXPERIMENTAL help This option enables support for the IDE devices on the Atmel AT32AP platform. If unsure, say N. config PATA_AT91 tristate "PATA support for AT91SAM9260" depends on ARM && ARCH_AT91 help This option enables support for IDE devices on the Atmel AT91SAM9260 SoC. If unsure, say N. config PATA_CMD640_PCI tristate "CMD640 PCI PATA support (Experimental)" depends on PCI && EXPERIMENTAL help This option enables support for the CMD640 PCI IDE interface chip. Only the primary channel is currently supported. If unsure, say N. config PATA_ISAPNP tristate "ISA Plug and Play PATA support" depends on ISAPNP help This option enables support for ISA plug & play ATA controllers such as those found on old soundcards. If unsure, say N. config PATA_IXP4XX_CF tristate "IXP4XX Compact Flash support" depends on ARCH_IXP4XX help This option enables support for a Compact Flash connected on the ixp4xx expansion bus. This driver had been written for Loft/Avila boards in mind but can work with others. If unsure, say N. config PATA_MPIIX tristate "Intel PATA MPIIX support" depends on PCI help This option enables support for MPIIX PATA support. If unsure, say N. config PATA_NS87410 tristate "Nat Semi NS87410 PATA support" depends on PCI help This option enables support for the National Semiconductor NS87410 PCI-IDE controller. If unsure, say N. config PATA_OPTI tristate "OPTI621/6215 PATA support (Very Experimental)" depends on PCI && EXPERIMENTAL help This option enables full PIO support for the early Opti ATA controllers found on some old motherboards. If unsure, say N. config PATA_PALMLD tristate "Palm LifeDrive PATA support" depends on MACH_PALMLD help This option enables support for Palm LifeDrive's internal ATA port via the new ATA layer. If unsure, say N. config PATA_PCMCIA tristate "PCMCIA PATA support" depends on PCMCIA help This option enables support for PCMCIA ATA interfaces, including compact flash card adapters via the new ATA layer. If unsure, say N. config PATA_PLATFORM tristate "Generic platform device PATA support" depends on EXPERT || PPC || HAVE_PATA_PLATFORM help This option enables support for generic directly connected ATA devices commonly found on embedded systems. If unsure, say N. config PATA_OF_PLATFORM tristate "OpenFirmware platform device PATA support" depends on PATA_PLATFORM && PPC_OF help This option enables support for generic directly connected ATA devices commonly found on embedded systems with OpenFirmware bindings. If unsure, say N. config PATA_QDI tristate "QDI VLB PATA support" depends on ISA help Support for QDI 6500 and 6580 PATA controllers on VESA local bus. config PATA_RB532 tristate "RouterBoard 532 PATA CompactFlash support" depends on MIKROTIK_RB532 help This option enables support for the RouterBoard 532 PATA CompactFlash controller. If unsure, say N. config PATA_RZ1000 tristate "PC Tech RZ1000 PATA support" depends on PCI help This option enables basic support for the PC Tech RZ1000/1 PATA controllers via the new ATA layer If unsure, say N. config PATA_SAMSUNG_CF tristate "Samsung SoC PATA support" depends on SAMSUNG_DEV_IDE help This option enables basic support for Samsung's S3C/S5P board PATA controllers via the new ATA layer If unsure, say N. config PATA_WINBOND_VLB tristate "Winbond W83759A VLB PATA support (Experimental)" depends on ISA && EXPERIMENTAL select PATA_LEGACY help Support for the Winbond W83759A controller on Vesa Local Bus systems. comment "Generic fallback / legacy drivers" config PATA_ACPI tristate "ACPI firmware driver for PATA" depends on ATA_ACPI && ATA_BMDMA help This option enables an ACPI method driver which drives motherboard PATA controller interfaces through the ACPI firmware in the BIOS. This driver can sometimes handle otherwise unsupported hardware. config ATA_GENERIC tristate "Generic ATA support" depends on PCI && ATA_BMDMA help This option enables support for generic BIOS configured ATA controllers via the new ATA layer If unsure, say N. config PATA_LEGACY tristate "Legacy ISA PATA support (Experimental)" depends on (ISA || PCI) && EXPERIMENTAL help This option enables support for ISA/VLB/PCI bus legacy PATA ports and allows them to be accessed via the new ATA layer. If unsure, say N. endif # ATA_SFF endif # ATA # # PCCARD (PCMCIA/CardBus) bus subsystem configuration # menuconfig PCCARD tristate "PCCard (PCMCIA/CardBus) support" depends on HOTPLUG ---help--- Say Y here if you want to attach PCMCIA- or PC-cards to your Linux computer. These are credit-card size devices such as network cards, modems or hard drives often used with laptops computers. There are actually two varieties of these cards: 16 bit PCMCIA and 32 bit CardBus cards. To compile this driver as modules, choose M here: the module will be called pcmcia_core. if PCCARD config PCMCIA tristate "16-bit PCMCIA support" select CRC32 default y ---help--- This option enables support for 16-bit PCMCIA cards. Most older PC-cards are such 16-bit PCMCIA cards, so unless you know you're only using 32-bit CardBus cards, say Y or M here. To use 16-bit PCMCIA cards, you will need supporting software in most cases. (see the file for location and details). To compile this driver as modules, choose M here: the module will be called pcmcia. If unsure, say Y. config PCMCIA_LOAD_CIS bool "Load CIS updates from userspace (EXPERIMENTAL)" depends on PCMCIA && EXPERIMENTAL select FW_LOADER default y help Some PCMCIA cards require an updated Card Information Structure (CIS) to be loaded from userspace to work correctly. If you say Y here, and your userspace is arranged correctly, this will be loaded automatically using the in-kernel firmware loader and the hotplug subsystem, instead of relying on cardmgr from pcmcia-cs to do so. If unsure, say Y. config CARDBUS bool "32-bit CardBus support" depends on PCI default y ---help--- CardBus is a bus mastering architecture for PC-cards, which allows for 32 bit PC-cards (the original PCMCIA standard specifies only a 16 bit wide bus). Many newer PC-cards are actually CardBus cards. To use 32 bit PC-cards, you also need a CardBus compatible host bridge. Virtually all modern PCMCIA bridges do this, and most of them are "yenta-compatible", so say Y or M there, too. If unsure, say Y. comment "PC-card bridges" config YENTA tristate "CardBus yenta-compatible bridge support" depends on PCI select CARDBUS if !EXPERT select PCCARD_NONSTATIC if PCMCIA != n ---help--- This option enables support for CardBus host bridges. Virtually all modern PCMCIA bridges are CardBus compatible. A "bridge" is the hardware inside your computer that PCMCIA cards are plugged into. To compile this driver as modules, choose M here: the module will be called yenta_socket. If unsure, say Y. config YENTA_O2 default y bool "Special initialization for O2Micro bridges" if EXPERT depends on YENTA config YENTA_RICOH default y bool "Special initialization for Ricoh bridges" if EXPERT depends on YENTA config YENTA_TI default y bool "Special initialization for TI and EnE bridges" if EXPERT depends on YENTA config YENTA_ENE_TUNE default y bool "Auto-tune EnE bridges for CB cards" if EXPERT depends on YENTA_TI && CARDBUS config YENTA_TOSHIBA default y bool "Special initialization for Toshiba ToPIC bridges" if EXPERT depends on YENTA config PD6729 tristate "Cirrus PD6729 compatible bridge support" depends on PCMCIA && PCI select PCCARD_NONSTATIC help This provides support for the Cirrus PD6729 PCI-to-PCMCIA bridge device, found in some older laptops and PCMCIA card readers. config I82092 tristate "i82092 compatible bridge support" depends on PCMCIA && PCI select PCCARD_NONSTATIC help This provides support for the Intel I82092AA PCI-to-PCMCIA bridge device, found in some older laptops and more commonly in evaluation boards for the chip. config I82365 tristate "i82365 compatible bridge support" depends on PCMCIA && ISA select PCCARD_NONSTATIC help Say Y here to include support for ISA-bus PCMCIA host bridges that are register compatible with the Intel i82365. These are found on older laptops and ISA-bus card readers for desktop systems. A "bridge" is the hardware inside your computer that PCMCIA cards are plugged into. If unsure, say N. config TCIC tristate "Databook TCIC host bridge support" depends on PCMCIA && ISA select PCCARD_NONSTATIC help Say Y here to include support for the Databook TCIC family of PCMCIA host bridges. These are only found on a handful of old systems. "Bridge" is the name used for the hardware inside your computer that PCMCIA cards are plugged into. If unsure, say N. config PCMCIA_M8XX tristate "MPC8xx PCMCIA support" depends on PCCARD && PPC && 8xx select PCCARD_IODYN if PCMCIA != n help Say Y here to include support for PowerPC 8xx series PCMCIA controller. This driver is also available as a module called m8xx_pcmcia. config PCMCIA_AU1X00 tristate "Au1x00 pcmcia support" depends on MIPS_ALCHEMY && PCMCIA config PCMCIA_ALCHEMY_DEVBOARD tristate "Alchemy Db/Pb1xxx PCMCIA socket services" depends on MIPS_ALCHEMY && PCMCIA select 64BIT_PHYS_ADDR help Enable this driver of you want PCMCIA support on your Alchemy Db1000, Db/Pb1100, Db/Pb1500, Db/Pb1550, Db/Pb1200 board. NOT suitable for the PB1000! This driver is also available as a module called db1xxx_ss.ko config PCMCIA_XXS1500 tristate "MyCable XXS1500 PCMCIA socket support" depends on PCMCIA && MIPS_XXS1500 select 64BIT_PHYS_ADDR help Support for the PCMCIA/CF socket interface on MyCable XXS1500 systems. This driver is also available as a module called xxs1500_ss.ko config PCMCIA_BCM63XX tristate "bcm63xx pcmcia support" depends on BCM63XX && PCMCIA config PCMCIA_SOC_COMMON tristate config PCMCIA_SA1100 tristate "SA1100 support" depends on ARM && ARCH_SA1100 && PCMCIA select PCMCIA_SOC_COMMON help Say Y here to include support for SA11x0-based PCMCIA or CF sockets, found on HP iPAQs, Yopy, and other StrongARM(R)/ Xscale(R) embedded machines. This driver is also available as a module called sa1100_cs. config PCMCIA_SA1111 tristate "SA1111 support" depends on ARM && ARCH_SA1100 && SA1111 && PCMCIA select PCMCIA_SOC_COMMON help Say Y here to include support for SA1111-based PCMCIA or CF sockets, found on the Jornada 720, Graphicsmaster and other StrongARM(R)/Xscale(R) embedded machines. This driver is also available as a module called sa1111_cs. config PCMCIA_PXA2XX tristate "PXA2xx support" depends on ARM && ARCH_PXA && PCMCIA depends on (ARCH_LUBBOCK || MACH_MAINSTONE || PXA_SHARPSL \ || MACH_ARMCORE || ARCH_PXA_PALM || TRIZEPS_PCMCIA \ || ARCOM_PCMCIA || ARCH_PXA_ESERIES || MACH_STARGATE2 \ || MACH_VPAC270 || MACH_BALLOON3 || MACH_COLIBRI \ || MACH_COLIBRI320) select PCMCIA_SOC_COMMON help Say Y here to include support for the PXA2xx PCMCIA controller config PCMCIA_DEBUG bool "Enable debugging" depends on (PCMCIA_SA1111 || PCMCIA_SA1100 || PCMCIA_PXA2XX) help Say Y here to enable debugging for the SoC PCMCIA layer. You will need to choose the debugging level either via the kernel command line, or module options depending whether you build the drivers as modules. The kernel command line options are: sa11xx_core.pc_debug=N pxa2xx_core.pc_debug=N The module option is called pc_debug=N In all the above examples, N is the debugging verbosity level. config PCMCIA_PROBE bool default y if ISA && !ARCH_SA1100 && !ARCH_CLPS711X && !PARISC config M32R_PCC bool "M32R PCMCIA I/F" depends on M32R && CHIP_M32700 && PCMCIA help Say Y here to use the M32R PCMCIA controller. config M32R_CFC bool "M32R CF I/F Controller" depends on M32R && (PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT) help Say Y here to use the M32R CompactFlash controller. config M32R_CFC_NUM int "M32R CF I/F number" depends on M32R_CFC default "1" if PLAT_USRV || PLAT_M32700UT || PLAT_MAPPI2 || PLAT_MAPPI3 || PLAT_OPSPUT help Set the number of M32R CF slots. config PCMCIA_VRC4171 tristate "NEC VRC4171 Card Controllers support" depends on CPU_VR41XX && ISA && PCMCIA config PCMCIA_VRC4173 tristate "NEC VRC4173 CARDU support" depends on CPU_VR41XX && PCI && PCMCIA config OMAP_CF tristate "OMAP CompactFlash Controller" depends on PCMCIA && ARCH_OMAP16XX help Say Y here to support the CompactFlash controller on OMAP. Note that this doesn't support "True IDE" mode. config BFIN_CFPCMCIA tristate "Blackfin CompactFlash PCMCIA Driver" depends on PCMCIA && BLACKFIN help Say Y here to support the CompactFlash PCMCIA driver for Blackfin. config AT91_CF tristate "AT91 CompactFlash Controller" depends on PCMCIA && ARCH_AT91RM9200 help Say Y here to support the CompactFlash controller on AT91 chips. Or choose M to compile the driver as a module named "at91_cf". config ELECTRA_CF tristate "Electra CompactFlash Controller" depends on PCMCIA && PPC_PASEMI help Say Y here to support the CompactFlash controller on the PA Semi Electra eval board. config PCCARD_NONSTATIC bool config PCCARD_IODYN bool endif # PCCARD # # PARIDE configuration # # PARIDE doesn't need PARPORT, but if PARPORT is configured as a module, # PARIDE must also be a module. # PARIDE only supports PC style parports. Tough for USB or other parports... comment "Parallel IDE high-level drivers" depends on PARIDE config PARIDE_PD tristate "Parallel port IDE disks" depends on PARIDE help This option enables the high-level driver for IDE-type disk devices connected through a parallel port. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port IDE driver, otherwise you should answer M to build it as a loadable module. The module will be called pd. You must also have at least one parallel port protocol driver in your system. Among the devices supported by this driver are the SyQuest EZ-135, EZ-230 and SparQ drives, the Avatar Shark and the backpack hard drives from MicroSolutions. config PARIDE_PCD tristate "Parallel port ATAPI CD-ROMs" depends on PARIDE ---help--- This option enables the high-level driver for ATAPI CD-ROM devices connected through a parallel port. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port ATAPI CD-ROM driver, otherwise you should answer M to build it as a loadable module. The module will be called pcd. You must also have at least one parallel port protocol driver in your system. Among the devices supported by this driver are the MicroSolutions backpack CD-ROM drives and the Freecom Power CD. If you have such a CD-ROM drive, you should also say Y or M to "ISO 9660 CD-ROM file system support" below, because that's the file system used on CD-ROMs. config PARIDE_PF tristate "Parallel port ATAPI disks" depends on PARIDE help This option enables the high-level driver for ATAPI disk devices connected through a parallel port. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port ATAPI disk driver, otherwise you should answer M to build it as a loadable module. The module will be called pf. You must also have at least one parallel port protocol driver in your system. Among the devices supported by this driver are the MicroSolutions backpack PD/CD drive and the Imation Superdisk LS-120 drive. config PARIDE_PT tristate "Parallel port ATAPI tapes" depends on PARIDE help This option enables the high-level driver for ATAPI tape devices connected through a parallel port. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port ATAPI disk driver, otherwise you should answer M to build it as a loadable module. The module will be called pt. You must also have at least one parallel port protocol driver in your system. Among the devices supported by this driver is the parallel port version of the HP 5GB drive. config PARIDE_PG tristate "Parallel port generic ATAPI devices" depends on PARIDE ---help--- This option enables a special high-level driver for generic ATAPI devices connected through a parallel port. The driver allows user programs, such as cdrtools, to send ATAPI commands directly to a device. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the parallel port generic ATAPI driver, otherwise you should answer M to build it as a loadable module. The module will be called pg. You must also have at least one parallel port protocol driver in your system. This driver implements an API loosely related to the generic SCSI driver. See . for details. You can obtain the most recent version of cdrtools from . Versions 1.6.1a3 and later fully support this driver. comment "Parallel IDE protocol modules" depends on PARIDE config PARIDE_ATEN tristate "ATEN EH-100 protocol" depends on PARIDE help This option enables support for the ATEN EH-100 parallel port IDE protocol. This protocol is used in some inexpensive low performance parallel port kits made in Hong Kong. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called aten. You must also have a high-level driver for the type of device that you want to support. config PARIDE_BPCK tristate "MicroSolutions backpack (Series 5) protocol" depends on PARIDE ---help--- This option enables support for the Micro Solutions BACKPACK parallel port Series 5 IDE protocol. (Most BACKPACK drives made before 1999 were Series 5) Series 5 drives will NOT always have the Series noted on the bottom of the drive. Series 6 drivers will. In other words, if your BACKPACK drive doesn't say "Series 6" on the bottom, enable this option. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called bpck. You must also have a high-level driver for the type of device that you want to support. config PARIDE_BPCK6 tristate "MicroSolutions backpack (Series 6) protocol" depends on PARIDE && !64BIT ---help--- This option enables support for the Micro Solutions BACKPACK parallel port Series 6 IDE protocol. (Most BACKPACK drives made after 1999 were Series 6) Series 6 drives will have the Series noted on the bottom of the drive. Series 5 drivers don't always have it noted. In other words, if your BACKPACK drive says "Series 6" on the bottom, enable this option. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called bpck6. You must also have a high-level driver for the type of device that you want to support. config PARIDE_COMM tristate "DataStor Commuter protocol" depends on PARIDE help This option enables support for the Commuter parallel port IDE protocol from DataStor. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called comm. You must also have a high-level driver for the type of device that you want to support. config PARIDE_DSTR tristate "DataStor EP-2000 protocol" depends on PARIDE help This option enables support for the EP-2000 parallel port IDE protocol from DataStor. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called dstr. You must also have a high-level driver for the type of device that you want to support. config PARIDE_FIT2 tristate "FIT TD-2000 protocol" depends on PARIDE help This option enables support for the TD-2000 parallel port IDE protocol from Fidelity International Technology. This is a simple (low speed) adapter that is used in some portable hard drives. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called ktti. You must also have a high-level driver for the type of device that you want to support. config PARIDE_FIT3 tristate "FIT TD-3000 protocol" depends on PARIDE help This option enables support for the TD-3000 parallel port IDE protocol from Fidelity International Technology. This protocol is used in newer models of their portable disk, CD-ROM and PD/CD devices. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called fit3. You must also have a high-level driver for the type of device that you want to support. config PARIDE_EPAT tristate "Shuttle EPAT/EPEZ protocol" depends on PARIDE help This option enables support for the EPAT parallel port IDE protocol. EPAT is a parallel port IDE adapter manufactured by Shuttle Technology and widely used in devices from major vendors such as Hewlett-Packard, SyQuest, Imation and Avatar. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called epat. You must also have a high-level driver for the type of device that you want to support. config PARIDE_EPATC8 bool "Support c7/c8 chips (EXPERIMENTAL)" depends on PARIDE_EPAT && EXPERIMENTAL help This option enables support for the newer Shuttle EP1284 (aka c7 and c8) chip. You need this if you are using any recent Imation SuperDisk (LS-120) drive. config PARIDE_EPIA tristate "Shuttle EPIA protocol" depends on PARIDE help This option enables support for the (obsolete) EPIA parallel port IDE protocol from Shuttle Technology. This adapter can still be found in some no-name kits. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called epia. You must also have a high-level driver for the type of device that you want to support. config PARIDE_FRIQ tristate "Freecom IQ ASIC-2 protocol" depends on PARIDE help This option enables support for version 2 of the Freecom IQ parallel port IDE adapter. This adapter is used by the Maxell Superdisk drive. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called friq. You must also have a high-level driver for the type of device that you want to support. config PARIDE_FRPW tristate "FreeCom power protocol" depends on PARIDE help This option enables support for the Freecom power parallel port IDE protocol. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called frpw. You must also have a high-level driver for the type of device that you want to support. config PARIDE_KBIC tristate "KingByte KBIC-951A/971A protocols" depends on PARIDE help This option enables support for the KBIC-951A and KBIC-971A parallel port IDE protocols from KingByte Information Corp. KingByte's adapters appear in many no-name portable disk and CD-ROM products, especially in Europe. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called kbic. You must also have a high-level driver for the type of device that you want to support. config PARIDE_KTTI tristate "KT PHd protocol" depends on PARIDE help This option enables support for the "PHd" parallel port IDE protocol from KT Technology. This is a simple (low speed) adapter that is used in some 2.5" portable hard drives. If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called ktti. You must also have a high-level driver for the type of device that you want to support. config PARIDE_ON20 tristate "OnSpec 90c20 protocol" depends on PARIDE help This option enables support for the (obsolete) 90c20 parallel port IDE protocol from OnSpec (often marketed under the ValuStore brand name). If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called on20. You must also have a high-level driver for the type of device that you want to support. config PARIDE_ON26 tristate "OnSpec 90c26 protocol" depends on PARIDE help This option enables support for the 90c26 parallel port IDE protocol from OnSpec Electronics (often marketed under the ValuStore brand name). If you chose to build PARIDE support into your kernel, you may answer Y here to build in the protocol driver, otherwise you should answer M to build it as a loadable module. The module will be called on26. You must also have a high-level driver for the type of device that you want to support. # # # Block device driver configuration # menuconfig BLK_DEV bool "Block devices" depends on BLOCK default y ---help--- Say Y here to get to see options for various different block device drivers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled; only do this if you know what you are doing. if BLK_DEV config BLK_DEV_FD tristate "Normal floppy disk support" depends on ARCH_MAY_HAVE_PC_FDC ---help--- If you want to use the floppy disk drive(s) of your PC under Linux, say Y. Information about this driver, especially important for IBM Thinkpad users, is contained in . That file also contains the location of the Floppy driver FAQ as well as location of the fdutils package used to configure additional parameters of the driver at run time. To compile this driver as a module, choose M here: the module will be called floppy. config AMIGA_FLOPPY tristate "Amiga floppy support" depends on AMIGA config ATARI_FLOPPY tristate "Atari floppy support" depends on ATARI config MAC_FLOPPY tristate "Support for PowerMac floppy" depends on PPC_PMAC && !PPC_PMAC64 help If you have a SWIM-3 (Super Woz Integrated Machine 3; from Apple) floppy controller, say Y here. Most commonly found in PowerMacs. config BLK_DEV_SWIM tristate "Support for SWIM Macintosh floppy" depends on M68K && MAC help You should select this option if you want floppy support and you don't have a II, IIfx, Q900, Q950 or AV series. config AMIGA_Z2RAM tristate "Amiga Zorro II ramdisk support" depends on ZORRO help This enables support for using Chip RAM and Zorro II RAM as a ramdisk or as a swap partition. Say Y if you want to include this driver in the kernel. To compile this driver as a module, choose M here: the module will be called z2ram. config BLK_DEV_XD tristate "XT hard disk support" depends on ISA && ISA_DMA_API select CHECK_SIGNATURE help Very old 8 bit hard disk controllers used in the IBM XT computer will be supported if you say Y here. To compile this driver as a module, choose M here: the module will be called xd. It's pretty unlikely that you have one of these: say N. config GDROM tristate "SEGA Dreamcast GD-ROM drive" depends on SH_DREAMCAST help A standard SEGA Dreamcast comes with a modified CD ROM drive called a "GD-ROM" by SEGA to signify it is capable of reading special disks with up to 1 GB of data. This drive will also read standard CD ROM disks. Select this option to access any disks in your GD ROM drive. Most users will want to say "Y" here. You can also build this as a module which will be called gdrom. config PARIDE tristate "Parallel port IDE device support" depends on PARPORT_PC ---help--- There are many external CD-ROM and disk devices that connect through your computer's parallel port. Most of them are actually IDE devices using a parallel port IDE adapter. This option enables the PARIDE subsystem which contains drivers for many of these external drives. Read for more information. If you have said Y to the "Parallel-port support" configuration option, you may share a single port between your printer and other parallel port devices. Answer Y to build PARIDE support into your kernel, or M if you would like to build it as a loadable module. If your parallel port support is in a loadable module, you must build PARIDE as a module. If you built PARIDE support into your kernel, you may still build the individual protocol modules and high-level drivers as loadable modules. If you build this support as a module, it will be called paride. To use the PARIDE support, you must say Y or M here and also to at least one high-level driver (e.g. "Parallel port IDE disks", "Parallel port ATAPI CD-ROMs", "Parallel port ATAPI disks" etc.) and to at least one protocol driver (e.g. "ATEN EH-100 protocol", "MicroSolutions backpack protocol", "DataStor Commuter protocol" etc.). source "drivers/block/paride/Kconfig" config BLK_CPQ_DA tristate "Compaq SMART2 support" depends on PCI && VIRT_TO_BUS help This is the driver for Compaq Smart Array controllers. Everyone using these boards should say Y here. See the file for the current list of boards supported by this driver, and for further information on the use of this driver. config BLK_CPQ_CISS_DA tristate "Compaq Smart Array 5xxx support" depends on PCI help This is the driver for Compaq Smart Array 5xxx controllers. Everyone using these boards should say Y here. See for the current list of boards supported by this driver, and for further information on the use of this driver. config CISS_SCSI_TAPE bool "SCSI tape drive support for Smart Array 5xxx" depends on BLK_CPQ_CISS_DA && PROC_FS depends on SCSI=y || SCSI=BLK_CPQ_CISS_DA help When enabled (Y), this option allows SCSI tape drives and SCSI medium changers (tape robots) to be accessed via a Compaq 5xxx array controller. (See for more details.) "SCSI support" and "SCSI tape support" must also be enabled for this option to work. When this option is disabled (N), the SCSI portion of the driver is not compiled. config BLK_DEV_DAC960 tristate "Mylex DAC960/DAC1100 PCI RAID Controller support" depends on PCI help This driver adds support for the Mylex DAC960, AcceleRAID, and eXtremeRAID PCI RAID controllers. See the file for further information about this driver. To compile this driver as a module, choose M here: the module will be called DAC960. config BLK_DEV_UMEM tristate "Micro Memory MM5415 Battery Backed RAM support (EXPERIMENTAL)" depends on PCI && EXPERIMENTAL ---help--- Saying Y here will include support for the MM5415 family of battery backed (Non-volatile) RAM cards. The cards appear as block devices that can be partitioned into as many as 15 partitions. To compile this driver as a module, choose M here: the module will be called umem. The umem driver has not yet been allocated a MAJOR number, so one is chosen dynamically. config BLK_DEV_UBD bool "Virtual block device" depends on UML ---help--- The User-Mode Linux port includes a driver called UBD which will let you access arbitrary files on the host computer as block devices. Unless you know that you do not need such virtual block devices say Y here. config BLK_DEV_UBD_SYNC bool "Always do synchronous disk IO for UBD" depends on BLK_DEV_UBD ---help--- Writes to the virtual block device are not immediately written to the host's disk; this may cause problems if, for example, the User-Mode Linux 'Virtual Machine' uses a journalling filesystem and the host computer crashes. Synchronous operation (i.e. always writing data to the host's disk immediately) is configurable on a per-UBD basis by using a special kernel command line option. Alternatively, you can say Y here to turn on synchronous operation by default for all block devices. If you're running a journalling file system (like reiserfs, for example) in your virtual machine, you will want to say Y here. If you care for the safety of the data in your virtual machine, Y is a wise choice too. In all other cases (for example, if you're just playing around with User-Mode Linux) you can choose N. config BLK_DEV_COW_COMMON bool default BLK_DEV_UBD config BLK_DEV_LOOP tristate "Loopback device support" ---help--- Saying Y here will allow you to use a regular file as a block device; you can then create a file system on that block device and mount it just as you would mount other block devices such as hard drive partitions, CD-ROM drives or floppy drives. The loop devices are block special device files with major number 7 and typically called /dev/loop0, /dev/loop1 etc. This is useful if you want to check an ISO 9660 file system before burning the CD, or if you want to use floppy images without first writing them to floppy. Furthermore, some Linux distributions avoid the need for a dedicated Linux partition by keeping their complete root file system inside a DOS FAT file using this loop device driver. To use the loop device, you need the losetup utility, found in the util-linux package, see . The loop device driver can also be used to "hide" a file system in a disk partition, floppy, or regular file, either using encryption (scrambling the data) or steganography (hiding the data in the low bits of, say, a sound file). This is also safe if the file resides on a remote file server. There are several ways of encrypting disks. Some of these require kernel patches. The vanilla kernel offers the cryptoloop option and a Device Mapper target (which is superior, as it supports all file systems). If you want to use the cryptoloop, say Y to both LOOP and CRYPTOLOOP, and make sure you have a recent (version 2.12 or later) version of util-linux. Additionally, be aware that the cryptoloop is not safe for storing journaled filesystems. Note that this loop device has nothing to do with the loopback device used for network connections from the machine to itself. To compile this driver as a module, choose M here: the module will be called loop. Most users will answer N here. config BLK_DEV_CRYPTOLOOP tristate "Cryptoloop Support" select CRYPTO select CRYPTO_CBC depends on BLK_DEV_LOOP ---help--- Say Y here if you want to be able to use the ciphers that are provided by the CryptoAPI as loop transformation. This might be used as hard disk encryption. WARNING: This device is not safe for journaled file systems like ext3 or Reiserfs. Please use the Device Mapper crypto module instead, which can be configured to be on-disk compatible with the cryptoloop device. source "drivers/block/drbd/Kconfig" config BLK_DEV_NBD tristate "Network block device support" depends on NET ---help--- Saying Y here will allow your computer to be a client for network block devices, i.e. it will be able to use block devices exported by servers (mount file systems on them etc.). Communication between client and server works over TCP/IP networking, but to the client program this is hidden: it looks like a regular local file access to a block device special file such as /dev/nd0. Network block devices also allows you to run a block-device in userland (making server and client physically the same computer, communicating using the loopback network device). Read for more information, especially about where to find the server code, which runs in user space and does not need special kernel support. Note that this has nothing to do with the network file systems NFS or Coda; you can say N here even if you intend to use NFS or Coda. To compile this driver as a module, choose M here: the module will be called nbd. If unsure, say N. config BLK_DEV_OSD tristate "OSD object-as-blkdev support" depends on SCSI_OSD_ULD ---help--- Saying Y or M here will allow the exporting of a single SCSI OSD (object-based storage) object as a Linux block device. For example, if you create a 2G object on an OSD device, you can then use this module to present that 2G object as a Linux block device. To compile this driver as a module, choose M here: the module will be called osdblk. If unsure, say N. config BLK_DEV_SX8 tristate "Promise SATA SX8 support" depends on PCI ---help--- Saying Y or M here will enable support for the Promise SATA SX8 controllers. Use devices /dev/sx8/$N and /dev/sx8/$Np$M. config BLK_DEV_UB tristate "Low Performance USB Block driver" depends on USB help This driver supports certain USB attached storage devices such as flash keys. If you enable this driver, it is recommended to avoid conflicts with usb-storage by enabling USB_LIBUSUAL. If unsure, say N. config BLK_DEV_RAM tristate "RAM block device support" ---help--- Saying Y here will allow you to use a portion of your RAM memory as a block device, so that you can make file systems on it, read and write to it and do all the other things that you can do with normal block devices (such as hard drives). It is usually used to load and store a copy of a minimal root file system off of a floppy into RAM during the initial install of Linux. Note that the kernel command line option "ramdisk=XX" is now obsolete. For details, read . To compile this driver as a module, choose M here: the module will be called rd. Most normal users won't need the RAM disk functionality, and can thus say N here. config BLK_DEV_RAM_COUNT int "Default number of RAM disks" default "16" depends on BLK_DEV_RAM help The default value is 16 RAM disks. Change this if you know what you are doing. If you boot from a filesystem that needs to be extracted in memory, you will need at least one RAM disk (e.g. root on cramfs). config BLK_DEV_RAM_SIZE int "Default RAM disk size (kbytes)" depends on BLK_DEV_RAM default "4096" help The default value is 4096 kilobytes. Only change this if you know what you are doing. config BLK_DEV_XIP bool "Support XIP filesystems on RAM block device" depends on BLK_DEV_RAM default n help Support XIP filesystems (such as ext2 with XIP support on) on top of block ram device. This will slightly enlarge the kernel, and will prevent RAM block device backing store memory from being allocated from highmem (only a problem for highmem systems). config CDROM_PKTCDVD tristate "Packet writing on CD/DVD media" depends on !UML help If you have a CDROM/DVD drive that supports packet writing, say Y to include support. It should work with any MMC/Mt Fuji compliant ATAPI or SCSI drive, which is just about any newer DVD/CD writer. Currently only writing to CD-RW, DVD-RW, DVD+RW and DVDRAM discs is possible. DVD-RW disks must be in restricted overwrite mode. See the file for further information on the use of this driver. To compile this driver as a module, choose M here: the module will be called pktcdvd. config CDROM_PKTCDVD_BUFFERS int "Free buffers for data gathering" depends on CDROM_PKTCDVD default "8" help This controls the maximum number of active concurrent packets. More concurrent packets can increase write performance, but also require more memory. Each concurrent packet will require approximately 64Kb of non-swappable kernel memory, memory which will be allocated when a disc is opened for writing. config CDROM_PKTCDVD_WCACHE bool "Enable write caching (EXPERIMENTAL)" depends on CDROM_PKTCDVD && EXPERIMENTAL help If enabled, write caching will be set for the CD-R/W device. For now this option is dangerous unless the CD-RW media is known good, as we don't do deferred write error handling yet. config ATA_OVER_ETH tristate "ATA over Ethernet support" depends on NET help This driver provides Support for ATA over Ethernet block devices like the Coraid EtherDrive (R) Storage Blade. config MG_DISK tristate "mGine mflash, gflash support" depends on ARM && GPIOLIB help mGine mFlash(gFlash) block device driver config MG_DISK_RES int "Size of reserved area before MBR" depends on MG_DISK default 0 help Define size of reserved area that usually used for boot. Unit is KB. All of the block device operation will be taken this value as start offset Examples: 1024 => 1 MB config SUNVDC tristate "Sun Virtual Disk Client support" depends on SUN_LDOMS help Support for virtual disk devices as a client under Sun Logical Domains. source "drivers/s390/block/Kconfig" config XILINX_SYSACE tristate "Xilinx SystemACE support" depends on 4xx || MICROBLAZE help Include support for the Xilinx SystemACE CompactFlash interface config XEN_BLKDEV_FRONTEND tristate "Xen virtual block device support" depends on XEN default y select XEN_XENBUS_FRONTEND help This driver implements the front-end of the Xen virtual block device driver. It communicates with a back-end driver in another domain which drives the actual block device. config VIRTIO_BLK tristate "Virtio block driver (EXPERIMENTAL)" depends on EXPERIMENTAL && VIRTIO ---help--- This is the virtual block driver for virtio. It can be used with lguest or QEMU based VMMs (like KVM or Xen). Say Y or M. config BLK_DEV_HD bool "Very old hard disk (MFM/RLL/IDE) driver" depends on HAVE_IDE depends on !ARM || ARCH_RPC || ARCH_SHARK || BROKEN help This is a very old hard disk driver that lacks the enhanced functionality of the newer ones. It is required for systems with ancient MFM/RLL/ESDI drives. If unsure, say N. config BLK_DEV_RBD tristate "Rados block device (RBD)" depends on INET && EXPERIMENTAL && BLOCK select CEPH_LIB select LIBCRC32C select CRYPTO_AES select CRYPTO default n help Say Y here if you want include the Rados block device, which stripes a block device over objects stored in the Ceph distributed object store. More information at http://ceph.newdream.net/. If unsure, say N. endif # BLK_DEV # # DRBD device driver configuration # comment "DRBD disabled because PROC_FS, INET or CONNECTOR not selected" depends on PROC_FS='n' || INET='n' || CONNECTOR='n' config BLK_DEV_DRBD tristate "DRBD Distributed Replicated Block Device support" depends on PROC_FS && INET && CONNECTOR select LRU_CACHE default n help NOTE: In order to authenticate connections you have to select CRYPTO_HMAC and a hash function as well. DRBD is a shared-nothing, synchronously replicated block device. It is designed to serve as a building block for high availability clusters and in this context, is a "drop-in" replacement for shared storage. Simplistically, you could see it as a network RAID 1. Each minor device has a role, which can be 'primary' or 'secondary'. On the node with the primary device the application is supposed to run and to access the device (/dev/drbdX). Every write is sent to the local 'lower level block device' and, across the network, to the node with the device in 'secondary' state. The secondary device simply writes the data to its lower level block device. DRBD can also be used in dual-Primary mode (device writable on both nodes), which means it can exhibit shared disk semantics in a shared-nothing cluster. Needless to say, on top of dual-Primary DRBD utilizing a cluster file system is necessary to maintain for cache coherency. For automatic failover you need a cluster manager (e.g. heartbeat). See also: http://www.drbd.org/, http://www.linux-ha.org If unsure, say N. config DRBD_FAULT_INJECTION bool "DRBD fault injection" depends on BLK_DEV_DRBD help Say Y here if you want to simulate IO errors, in order to test DRBD's behavior. The actual simulation of IO errors is done by writing 3 values to /sys/module/drbd/parameters/ enable_faults: bitmask of... 1 meta data write 2 read 4 resync data write 8 read 16 data write 32 data read 64 read ahead 128 kmalloc of bitmap 256 allocation of EE (epoch_entries) fault_devs: bitmask of minor numbers fault_rate: frequency in percent Example: Simulate data write errors on /dev/drbd0 with a probability of 5%. echo 16 > /sys/module/drbd/parameters/enable_faults echo 1 > /sys/module/drbd/parameters/fault_devs echo 5 > /sys/module/drbd/parameters/fault_rate If unsure, say N. menu "Xen driver support" depends on XEN config XEN_BALLOON bool "Xen memory balloon driver" default y help The balloon driver allows the Xen domain to request more memory from the system to expand the domain's memory allocation, or alternatively return unneeded memory to the system. config XEN_SCRUB_PAGES bool "Scrub pages before returning them to system" depends on XEN_BALLOON default y help Scrub pages before returning them to the system for reuse by other domains. This makes sure that any confidential data is not accidentally visible to other domains. Is it more secure, but slightly less efficient. If in doubt, say yes. config XEN_DEV_EVTCHN tristate "Xen /dev/xen/evtchn device" default y help The evtchn driver allows a userspace process to triger event channels and to receive notification of an event channel firing. If in doubt, say yes. config XEN_BACKEND bool "Backend driver support" depends on XEN_DOM0 default y help Support for backend device drivers that provide I/O services to other virtual machines. config XENFS tristate "Xen filesystem" default y help The xen filesystem provides a way for domains to share information with each other and with the hypervisor. For example, by reading and writing the "xenbus" file, guests may pass arbitrary information to the initial domain. If in doubt, say yes. config XEN_COMPAT_XENFS bool "Create compatibility mount point /proc/xen" depends on XENFS default y help The old xenstore userspace tools expect to find "xenbus" under /proc/xen, but "xenbus" is now found at the root of the xenfs filesystem. Selecting this causes the kernel to create the compatibility mount point /proc/xen if it is running on a xen platform. If in doubt, say yes. config XEN_SYS_HYPERVISOR bool "Create xen entries under /sys/hypervisor" depends on SYSFS select SYS_HYPERVISOR default y help Create entries under /sys/hypervisor describing the Xen hypervisor environment. When running native or in another virtual environment, /sys/hypervisor will still be present, but will have no xen contents. config XEN_XENBUS_FRONTEND tristate config XEN_GNTDEV tristate "userspace grant access device driver" depends on XEN default m select MMU_NOTIFIER help Allows userspace processes to use grants. config XEN_GRANT_DEV_ALLOC tristate "User-space grant reference allocator driver" depends on XEN default m help Allows userspace processes to create pages with access granted to other domains. This can be used to implement frontend drivers or as part of an inter-domain shared memory channel. config XEN_PLATFORM_PCI tristate "xen platform pci device driver" depends on XEN_PVHVM && PCI default m help Driver for the Xen PCI Platform device: it is responsible for initializing xenbus and grant_table when running in a Xen HVM domain. As a consequence this driver is required to run any Xen PV frontend on Xen HVM. config SWIOTLB_XEN def_bool y depends on PCI select SWIOTLB endmenu # # Telephony device configuration # menuconfig PHONE tristate "Telephony support" depends on HAS_IOMEM ---help--- Say Y here if you have a telephony card, which for example allows you to use a regular phone for voice-over-IP applications. Note: this has nothing to do with modems. You do not need to say Y here in order to be able to use a modem under Linux. To compile this driver as a module, choose M here: the module will be called phonedev. if PHONE config PHONE_IXJ tristate "QuickNet Internet LineJack/PhoneJack support" depends on ISA || PCI ---help--- Say M if you have a telephony card manufactured by Quicknet Technologies, Inc. These include the Internet PhoneJACK and Internet LineJACK Telephony Cards. You will get a module called ixj. For the ISA versions of these products, you can configure the cards using the isapnp tools (pnpdump/isapnp) or you can use the isapnp support. Please read . For more information on these cards, see Quicknet's web site at: . If you do not have any Quicknet telephony cards, you can safely say N here. config PHONE_IXJ_PCMCIA tristate "QuickNet Internet LineJack/PhoneJack PCMCIA support" depends on PHONE_IXJ && PCMCIA help Say Y here to configure in PCMCIA service support for the Quicknet cards manufactured by Quicknet Technologies, Inc. This changes the card initialization code to work with the card manager daemon. endif # PHONE menu "Misc Linux/SPARC drivers" config SUN_OPENPROMIO tristate "/dev/openprom device support" help This driver provides user programs with an interface to the SPARC PROM device tree. The driver implements a SunOS-compatible interface and a NetBSD-compatible interface. To compile this driver as a module, choose M here: the module will be called openprom. If unsure, say Y. config OBP_FLASH tristate "OBP Flash Device support" depends on SPARC64 help The OpenBoot PROM on Ultra systems is flashable. If you want to be able to upgrade the OBP firmware, say Y here. config TADPOLE_TS102_UCTRL tristate "Tadpole TS102 Microcontroller support (EXPERIMENTAL)" depends on EXPERIMENTAL help Say Y here to directly support the TS102 Microcontroller interface on the Tadpole Sparcbook 3. This device handles power-management events, and can also notice the attachment/detachment of external monitors and mice. config SUN_JSFLASH tristate "JavaStation OS Flash SIMM (EXPERIMENTAL)" depends on EXPERIMENTAL && SPARC32 help If you say Y here, you will be able to boot from your JavaStation's Flash memory. config BBC_I2C tristate "UltraSPARC-III bootbus i2c controller driver" depends on PCI && SPARC64 help The BBC devices on the UltraSPARC III have two I2C controllers. The first I2C controller connects mainly to configuration PROMs (NVRAM, CPU configuration, DIMM types, etc.). The second I2C controller connects to environmental control devices such as fans and temperature sensors. The second controller also connects to the smartcard reader, if present. Say Y to enable support for these. config ENVCTRL tristate "SUNW, envctrl support" depends on PCI && SPARC64 help Kernel support for temperature and fan monitoring on Sun SME machines. To compile this driver as a module, choose M here: the module will be called envctrl. config DISPLAY7SEG tristate "7-Segment Display support" depends on PCI && SPARC64 ---help--- This is the driver for the 7-segment display and LED present on Sun Microsystems CompactPCI models CP1400 and CP1500. To compile this driver as a module, choose M here: the module will be called display7seg. If you do not have a CompactPCI model CP1400 or CP1500, or another UltraSPARC-IIi-cEngine boardset with a 7-segment display, you should say N to this option. endmenu menuconfig I2O tristate "I2O device support" depends on PCI ---help--- The Intelligent Input/Output (I2O) architecture allows hardware drivers to be split into two parts: an operating system specific module called the OSM and an hardware specific module called the HDM. The OSM can talk to a whole range of HDM's, and ideally the HDM's are not OS dependent. This allows for the same HDM driver to be used under different operating systems if the relevant OSM is in place. In order for this to work, you need to have an I2O interface adapter card in your computer. This card contains a special I/O processor (IOP), thus allowing high speeds since the CPU does not have to deal with I/O. If you say Y here, you will get a choice of interface adapter drivers and OSM's with the following questions. To compile this support as a module, choose M here: the modules will be called i2o_core. If unsure, say N. if I2O config I2O_LCT_NOTIFY_ON_CHANGES bool "Enable LCT notification" default y ---help--- Only say N here if you have a I2O controller from SUN. The SUN firmware doesn't support LCT notification on changes. If this option is enabled on such a controller the driver will hang up in a endless loop. On all other controllers say Y. If unsure, say Y. config I2O_EXT_ADAPTEC bool "Enable Adaptec extensions" default y ---help--- Say Y for support of raidutils for Adaptec I2O controllers. You also have to say Y to "I2O Configuration support", "I2O SCSI OSM" below and to "SCSI generic support" under "SCSI device configuration". config I2O_EXT_ADAPTEC_DMA64 bool "Enable 64-bit DMA" depends on I2O_EXT_ADAPTEC && ( 64BIT || HIGHMEM64G ) default y ---help--- Say Y for support of 64-bit DMA transfer mode on Adaptec I2O controllers. Note: You need at least firmware version 3709. config I2O_CONFIG tristate "I2O Configuration support" depends on VIRT_TO_BUS ---help--- Say Y for support of the configuration interface for the I2O adapters. If you have a RAID controller from Adaptec and you want to use the raidutils to manage your RAID array, you have to say Y here. To compile this support as a module, choose M here: the module will be called i2o_config. Note: If you want to use the new API you have to download the i2o_config patch from http://i2o.shadowconnect.com/ config I2O_CONFIG_OLD_IOCTL bool "Enable ioctls (OBSOLETE)" depends on I2O_CONFIG default y ---help--- Enables old ioctls. config I2O_BUS tristate "I2O Bus Adapter OSM" ---help--- Include support for the I2O Bus Adapter OSM. The Bus Adapter OSM provides access to the busses on the I2O controller. The main purpose is to rescan the bus to find new devices. To compile this support as a module, choose M here: the module will be called i2o_bus. config I2O_BLOCK tristate "I2O Block OSM" depends on BLOCK ---help--- Include support for the I2O Block OSM. The Block OSM presents disk and other structured block devices to the operating system. If you are using an RAID controller, you could access the array only by the Block OSM driver. But it is possible to access the single disks by the SCSI OSM driver, for example to monitor the disks. To compile this support as a module, choose M here: the module will be called i2o_block. config I2O_SCSI tristate "I2O SCSI OSM" depends on SCSI ---help--- Allows direct SCSI access to SCSI devices on a SCSI or FibreChannel I2O controller. You can use both the SCSI and Block OSM together if you wish. To access a RAID array, you must use the Block OSM driver. But you could use the SCSI OSM driver to monitor the single disks. To compile this support as a module, choose M here: the module will be called i2o_scsi. config I2O_PROC tristate "I2O /proc support" ---help--- If you say Y here and to "/proc file system support", you will be able to read I2O related information from the virtual directory /proc/i2o. To compile this support as a module, choose M here: the module will be called i2o_proc. endif # I2O menuconfig FUSION bool "Fusion MPT device support" depends on PCI ---help--- Say Y here to get to see options for Fusion Message Passing Technology (MPT) drivers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if FUSION config FUSION_SPI tristate "Fusion MPT ScsiHost drivers for SPI" depends on PCI && SCSI select SCSI_SPI_ATTRS ---help--- SCSI HOST support for a parallel SCSI host adapters. List of supported controllers: LSI53C1020 LSI53C1020A LSI53C1030 LSI53C1035 ATTO UL4D config FUSION_FC tristate "Fusion MPT ScsiHost drivers for FC" depends on PCI && SCSI select SCSI_FC_ATTRS ---help--- SCSI HOST support for a Fiber Channel host adapters. List of supported controllers: LSIFC909 LSIFC919 LSIFC919X LSIFC929 LSIFC929X LSIFC929XL LSIFC949X LSIFC949E Brocade FC 410/420 config FUSION_SAS tristate "Fusion MPT ScsiHost drivers for SAS" depends on PCI && SCSI select SCSI_SAS_ATTRS ---help--- SCSI HOST support for a SAS host adapters. List of supported controllers: LSISAS1064 LSISAS1068 LSISAS1064E LSISAS1068E LSISAS1078 config FUSION_MAX_SGE int "Maximum number of scatter gather entries (16 - 128)" default "128" range 16 128 help This option allows you to specify the maximum number of scatter- gather entries per I/O. The driver default is 128, which matches SCSI_MAX_PHYS_SEGMENTS. However, it may decreased down to 16. Decreasing this parameter will reduce memory requirements on a per controller instance. config FUSION_CTL tristate "Fusion MPT misc device (ioctl) driver" depends on FUSION_SPI || FUSION_FC || FUSION_SAS ---help--- The Fusion MPT misc device driver provides specialized control of MPT adapters via system ioctl calls. Use of ioctl calls to the MPT driver requires that you create and use a misc device node ala: mknod /dev/mptctl c 10 240 One use of this ioctl interface is to perform an upgrade (reflash) of the MPT adapter firmware. Refer to readme file(s) distributed with the Fusion MPT linux driver for additional details. If enabled by saying M to this, a driver named: mptctl will be compiled. If unsure whether you really want or need this, say N. config FUSION_LAN tristate "Fusion MPT LAN driver" depends on FUSION_FC && NET_FC ---help--- This module supports LAN IP traffic over Fibre Channel port(s) on Fusion MPT compatible hardware (LSIFC9xx chips). The physical interface used is defined in RFC 2625. Please refer to that document for details. Installing this driver requires the knowledge to configure and activate a new network interface, "fc0", using standard Linux tools. If enabled by saying M to this, a driver named: mptlan will be compiled. If unsure whether you really want or need this, say N. config FUSION_LOGGING bool "Fusion MPT logging facility" ---help--- This turns on a logging facility that can be used to debug a number of Fusion MPT related problems. The debug level can be programmed on the fly via SysFS (hex values) echo [level] > /sys/class/scsi_host/host#/debug_level There are various debug levels that can be found in the source: file:drivers/message/fusion/mptdebug.h endif # FUSION if X86 source "drivers/platform/x86/Kconfig" endif # # X86 Platform Specific Drivers # menuconfig X86_PLATFORM_DEVICES bool "X86 Platform Specific Device Drivers" default y depends on X86 ---help--- Say Y here to get to see options for device drivers for various x86 platforms, including vendor-specific laptop extension drivers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if X86_PLATFORM_DEVICES config ACER_WMI tristate "Acer WMI Laptop Extras" depends on ACPI select LEDS_CLASS select NEW_LEDS depends on BACKLIGHT_CLASS_DEVICE depends on SERIO_I8042 depends on INPUT depends on RFKILL || RFKILL = n depends on ACPI_WMI select INPUT_SPARSEKMAP ---help--- This is a driver for newer Acer (and Wistron) laptops. It adds wireless radio and bluetooth control, and on some laptops, exposes the mail LED and LCD backlight. For more information about this driver see If you have an ACPI-WMI compatible Acer/ Wistron laptop, say Y or M here. config ACERHDF tristate "Acer Aspire One temperature and fan driver" depends on THERMAL && THERMAL_HWMON && ACPI ---help--- This is a driver for Acer Aspire One netbooks. It allows to access the temperature sensor and to control the fan. After loading this driver the BIOS is still in control of the fan. To let the kernel handle the fan, do: echo -n enabled > /sys/class/thermal/thermal_zone0/mode For more information about this driver see If you have an Acer Aspire One netbook, say Y or M here. config ASUS_LAPTOP tristate "Asus Laptop Extras" depends on ACPI depends on !ACPI_ASUS select LEDS_CLASS select NEW_LEDS select BACKLIGHT_CLASS_DEVICE depends on INPUT depends on RFKILL || RFKILL = n select INPUT_SPARSEKMAP ---help--- This is the new Linux driver for Asus laptops. It may also support some MEDION, JVC or VICTOR laptops. It makes all the extra buttons generate standard ACPI events and input events. It also adds support for video output switching, LCD backlight control, Bluetooth and Wlan control, and most importantly, allows you to blink those fancy LEDs. For more information and a userspace daemon for handling the extra buttons see . If you have an ACPI-compatible ASUS laptop, say Y or M here. config DELL_LAPTOP tristate "Dell Laptop Extras (EXPERIMENTAL)" depends on X86 depends on DCDBAS depends on EXPERIMENTAL depends on BACKLIGHT_CLASS_DEVICE depends on RFKILL || RFKILL = n depends on POWER_SUPPLY depends on SERIO_I8042 default n ---help--- This driver adds support for rfkill and backlight control to Dell laptops. config DELL_WMI tristate "Dell WMI extras" depends on ACPI_WMI depends on INPUT select INPUT_SPARSEKMAP ---help--- Say Y here if you want to support WMI-based hotkeys on Dell laptops. To compile this driver as a module, choose M here: the module will be called dell-wmi. config DELL_WMI_AIO tristate "WMI Hotkeys for Dell All-In-One series" depends on ACPI_WMI depends on INPUT select INPUT_SPARSEKMAP ---help--- Say Y here if you want to support WMI-based hotkeys on Dell All-In-One machines. To compile this driver as a module, choose M here: the module will be called dell-wmi. config FUJITSU_LAPTOP tristate "Fujitsu Laptop Extras" depends on ACPI depends on INPUT depends on BACKLIGHT_CLASS_DEVICE depends on LEDS_CLASS || LEDS_CLASS=n ---help--- This is a driver for laptops built by Fujitsu: * P2xxx/P5xxx/S6xxx/S7xxx series Lifebooks * Possibly other Fujitsu laptop models * Tested with S6410 and S7020 It adds support for LCD brightness control and some hotkeys. If you have a Fujitsu laptop, say Y or M here. config FUJITSU_LAPTOP_DEBUG bool "Verbose debug mode for Fujitsu Laptop Extras" depends on FUJITSU_LAPTOP default n ---help--- Enables extra debug output from the fujitsu extras driver, at the expense of a slight increase in driver size. If you are not sure, say N here. config TC1100_WMI tristate "HP Compaq TC1100 Tablet WMI Extras (EXPERIMENTAL)" depends on !X86_64 depends on EXPERIMENTAL depends on ACPI depends on ACPI_WMI ---help--- This is a driver for the WMI extensions (wireless and bluetooth power control) of the HP Compaq TC1100 tablet. config HP_ACCEL tristate "HP laptop accelerometer" depends on INPUT && ACPI select SENSORS_LIS3LV02D select NEW_LEDS select LEDS_CLASS help This driver provides support for the "Mobile Data Protection System 3D" or "3D DriveGuard" feature of HP laptops. On such systems the driver should load automatically (via ACPI alias). Support for a led indicating disk protection will be provided as hp::hddprotect. For more information on the feature, refer to Documentation/hwmon/lis3lv02d. To compile this driver as a module, choose M here: the module will be called hp_accel. config HP_WMI tristate "HP WMI extras" depends on ACPI_WMI depends on INPUT depends on RFKILL || RFKILL = n select INPUT_SPARSEKMAP help Say Y here if you want to support WMI-based hotkeys on HP laptops and to read data from WMI such as docking or ambient light sensor state. To compile this driver as a module, choose M here: the module will be called hp-wmi. config MSI_LAPTOP tristate "MSI Laptop Extras" depends on ACPI depends on BACKLIGHT_CLASS_DEVICE depends on RFKILL depends on INPUT && SERIO_I8042 select INPUT_SPARSEKMAP ---help--- This is a driver for laptops built by MSI (MICRO-STAR INTERNATIONAL): MSI MegaBook S270 (MS-1013) Cytron/TCM/Medion/Tchibo MD96100/SAM2000 It adds support for Bluetooth, WLAN and LCD brightness control. More information about this driver is available at . If you have an MSI S270 laptop, say Y or M here. config PANASONIC_LAPTOP tristate "Panasonic Laptop Extras" depends on INPUT && ACPI depends on BACKLIGHT_CLASS_DEVICE select INPUT_SPARSEKMAP ---help--- This driver adds support for access to backlight control and hotkeys on Panasonic Let's Note laptops. If you have a Panasonic Let's note laptop (such as the R1(N variant), R2, R3, R5, T2, W2 and Y2 series), say Y. config COMPAL_LAPTOP tristate "Compal Laptop Extras" depends on ACPI depends on BACKLIGHT_CLASS_DEVICE depends on RFKILL depends on HWMON depends on POWER_SUPPLY ---help--- This is a driver for laptops built by Compal: Compal FL90/IFL90 Compal FL91/IFL91 Compal FL92/JFL92 Compal FT00/IFT00 It adds support for Bluetooth, WLAN and LCD brightness control. If you have an Compal FL9x/IFL9x/FT00 laptop, say Y or M here. config SONY_LAPTOP tristate "Sony Laptop Extras" depends on ACPI select BACKLIGHT_CLASS_DEVICE depends on INPUT depends on RFKILL ---help--- This mini-driver drives the SNC and SPIC devices present in the ACPI BIOS of the Sony Vaio laptops. It gives access to some extra laptop functionalities like Bluetooth, screen brightness control, Fn keys and allows powering on/off some devices. Read for more information. config SONYPI_COMPAT bool "Sonypi compatibility" depends on SONY_LAPTOP ---help--- Build the sonypi driver compatibility code into the sony-laptop driver. config IDEAPAD_LAPTOP tristate "Lenovo IdeaPad Laptop Extras" depends on ACPI depends on RFKILL && INPUT select INPUT_SPARSEKMAP help This is a driver for the rfkill switches on Lenovo IdeaPad netbooks. config THINKPAD_ACPI tristate "ThinkPad ACPI Laptop Extras" depends on ACPI depends on INPUT depends on RFKILL || RFKILL = n select BACKLIGHT_LCD_SUPPORT select BACKLIGHT_CLASS_DEVICE select HWMON select NVRAM select NEW_LEDS select LEDS_CLASS ---help--- This is a driver for the IBM and Lenovo ThinkPad laptops. It adds support for Fn-Fx key combinations, Bluetooth control, video output switching, ThinkLight control, UltraBay eject and more. For more information about this driver see and . This driver was formerly known as ibm-acpi. Extra functionality will be available if the rfkill (CONFIG_RFKILL) and/or ALSA (CONFIG_SND) subsystems are available in the kernel. Note that if you want ThinkPad-ACPI to be built-in instead of modular, ALSA and rfkill will also have to be built-in. If you have an IBM or Lenovo ThinkPad laptop, say Y or M here. config THINKPAD_ACPI_ALSA_SUPPORT bool "Console audio control ALSA interface" depends on THINKPAD_ACPI depends on SND depends on SND = y || THINKPAD_ACPI = SND default y ---help--- Enables monitoring of the built-in console audio output control (headphone and speakers), which is operated by the mute and (in some ThinkPad models) volume hotkeys. If this option is enabled, ThinkPad-ACPI will export an ALSA card with a single read-only mixer control, which should be used for on-screen-display feedback purposes by the Desktop Environment. Optionally, the driver will also allow software control (the ALSA mixer will be made read-write). Please refer to the driver documentation for details. All IBM models have both volume and mute control. Newer Lenovo models only have mute control (the volume hotkeys are just normal keys and volume control is done through the main HDA mixer). config THINKPAD_ACPI_DEBUGFACILITIES bool "Maintainer debug facilities" depends on THINKPAD_ACPI default n ---help--- Enables extra stuff in the thinkpad-acpi which is completely useless for normal use. Read the driver source to find out what it does. Say N here, unless you were told by a kernel maintainer to do otherwise. config THINKPAD_ACPI_DEBUG bool "Verbose debug mode" depends on THINKPAD_ACPI default n ---help--- Enables extra debugging information, at the expense of a slightly increase in driver size. If you are not sure, say N here. config THINKPAD_ACPI_UNSAFE_LEDS bool "Allow control of important LEDs (unsafe)" depends on THINKPAD_ACPI default n ---help--- Overriding LED state on ThinkPads can mask important firmware alerts (like critical battery condition), or misled the user into damaging the hardware (undocking or ejecting the bay while buses are still active), etc. LED control on the ThinkPad is write-only (with very few exceptions on very ancient models), which makes it impossible to know beforehand if important information will be lost when one changes LED state. Users that know what they are doing can enable this option and the driver will allow control of every LED, including the ones on the dock stations. Never enable this option on a distribution kernel. Say N here, unless you are building a kernel for your own use, and need to control the important firmware LEDs. config THINKPAD_ACPI_VIDEO bool "Video output control support" depends on THINKPAD_ACPI default y ---help--- Allows the thinkpad_acpi driver to provide an interface to control the various video output ports. This feature often won't work well, depending on ThinkPad model, display state, video output devices in use, whether there is a X server running, phase of the moon, and the current mood of Schroedinger's cat. If you can use X.org's RandR to control your ThinkPad's video output ports instead of this feature, don't think twice: do it and say N here to save memory and avoid bad interactions with X.org. NOTE: access to this feature is limited to processes with the CAP_SYS_ADMIN capability, to avoid local DoS issues in platforms where it interacts badly with X.org. If you are not sure, say Y here but do try to check if you could be using X.org RandR instead. config THINKPAD_ACPI_HOTKEY_POLL bool "Support NVRAM polling for hot keys" depends on THINKPAD_ACPI default y ---help--- Some thinkpad models benefit from NVRAM polling to detect a few of the hot key press events. If you know your ThinkPad model does not need to do NVRAM polling to support any of the hot keys you use, unselecting this option will save about 1kB of memory. ThinkPads T40 and newer, R52 and newer, and X31 and newer are unlikely to need NVRAM polling in their latest BIOS versions. NVRAM polling can detect at most the following keys: ThinkPad/Access IBM, Zoom, Switch Display (fn+F7), ThinkLight, Volume up/down/mute, Brightness up/down, Display Expand (fn+F8), Hibernate (fn+F12). If you are not sure, say Y here. The driver enables polling only if it is strictly necessary to do so. config SENSORS_HDAPS tristate "Thinkpad Hard Drive Active Protection System (hdaps)" depends on INPUT && X86 select INPUT_POLLDEV default n help This driver provides support for the IBM Hard Drive Active Protection System (hdaps), which provides an accelerometer and other misc. data. ThinkPads starting with the R50, T41, and X40 are supported. The accelerometer data is readable via sysfs. This driver also provides an absolute input class device, allowing the laptop to act as a pinball machine-esque joystick. If your ThinkPad is not recognized by the driver, please update to latest BIOS. This is especially the case for some R52 ThinkPads. Say Y here if you have an applicable laptop and want to experience the awesome power of hdaps. config INTEL_MENLOW tristate "Thermal Management driver for Intel menlow platform" depends on ACPI_THERMAL select THERMAL ---help--- ACPI thermal management enhancement driver on Intel Menlow platform. If unsure, say N. config EEEPC_LAPTOP tristate "Eee PC Hotkey Driver (EXPERIMENTAL)" depends on ACPI depends on INPUT depends on EXPERIMENTAL depends on RFKILL || RFKILL = n depends on HOTPLUG_PCI select BACKLIGHT_CLASS_DEVICE select HWMON select LEDS_CLASS select NEW_LEDS select INPUT_SPARSEKMAP ---help--- This driver supports the Fn-Fx keys on Eee PC laptops. It also gives access to some extra laptop functionalities like Bluetooth, backlight and allows powering on/off some other devices. If you have an Eee PC laptop, say Y or M here. If this driver doesn't work on your Eee PC, try eeepc-wmi instead. config ASUS_WMI tristate "ASUS WMI Driver (EXPERIMENTAL)" depends on ACPI_WMI depends on INPUT depends on HWMON depends on EXPERIMENTAL depends on BACKLIGHT_CLASS_DEVICE depends on RFKILL || RFKILL = n depends on HOTPLUG_PCI select INPUT_SPARSEKMAP select LEDS_CLASS select NEW_LEDS ---help--- Say Y here if you have a WMI aware Asus laptop (like Eee PCs or new Asus Notebooks). To compile this driver as a module, choose M here: the module will be called asus-wmi. config ASUS_NB_WMI tristate "Asus Notebook WMI Driver (EXPERIMENTAL)" depends on ASUS_WMI ---help--- This is a driver for newer Asus notebooks. It adds extra features like wireless radio and bluetooth control, leds, hotkeys, backlight... For more informations, see If you have an ACPI-WMI compatible Asus Notebook, say Y or M here. config EEEPC_WMI tristate "Eee PC WMI Driver (EXPERIMENTAL)" depends on ASUS_WMI ---help--- This is a driver for newer Eee PC laptops. It adds extra features like wireless radio and bluetooth control, leds, hotkeys, backlight... For more informations, see If you have an ACPI-WMI compatible Eee PC laptop (>= 1000), say Y or M here. config ACPI_WMI tristate "WMI" depends on ACPI help This driver adds support for the ACPI-WMI (Windows Management Instrumentation) mapper device (PNP0C14) found on some systems. ACPI-WMI is a proprietary extension to ACPI to expose parts of the ACPI firmware to userspace - this is done through various vendor defined methods and data blocks in a PNP0C14 device, which are then made available for userspace to call. The implementation of this in Linux currently only exposes this to other kernel space drivers. This driver is a required dependency to build the firmware specific drivers needed on many machines, including Acer and HP laptops. It is safe to enable this driver even if your DSDT doesn't define any ACPI-WMI devices. config MSI_WMI tristate "MSI WMI extras" depends on ACPI_WMI depends on INPUT depends on BACKLIGHT_CLASS_DEVICE select INPUT_SPARSEKMAP help Say Y here if you want to support WMI-based hotkeys on MSI laptops. To compile this driver as a module, choose M here: the module will be called msi-wmi. config ACPI_ASUS tristate "ASUS/Medion Laptop Extras (DEPRECATED)" depends on ACPI select BACKLIGHT_CLASS_DEVICE ---help--- This driver provides support for extra features of ACPI-compatible ASUS laptops. As some of Medion laptops are made by ASUS, it may also support some Medion laptops (such as 9675 for example). It makes all the extra buttons generate standard ACPI events that go through /proc/acpi/events, and (on some models) adds support for changing the display brightness and output, switching the LCD backlight on and off, and most importantly, allows you to blink those fancy LEDs intended for reporting mail and wireless status. Note: display switching code is currently considered EXPERIMENTAL, toying with these values may even lock your machine. All settings are changed via /proc/acpi/asus directory entries. Owner and group for these entries can be set with asus_uid and asus_gid parameters. More information and a userspace daemon for handling the extra buttons at . If you have an ACPI-compatible ASUS laptop, say Y or M here. This driver is still under development, so if your laptop is unsupported or something works not quite as expected, please use the mailing list available on the above page (acpi4asus-user@lists.sourceforge.net). NOTE: This driver is deprecated and will probably be removed soon, use asus-laptop instead. config TOPSTAR_LAPTOP tristate "Topstar Laptop Extras" depends on ACPI depends on INPUT select INPUT_SPARSEKMAP ---help--- This driver adds support for hotkeys found on Topstar laptops. If you have a Topstar laptop, say Y or M here. config ACPI_TOSHIBA tristate "Toshiba Laptop Extras" depends on ACPI select LEDS_CLASS select NEW_LEDS depends on BACKLIGHT_CLASS_DEVICE depends on INPUT depends on RFKILL || RFKILL = n select INPUT_POLLDEV select INPUT_SPARSEKMAP ---help--- This driver adds support for access to certain system settings on "legacy free" Toshiba laptops. These laptops can be recognized by their lack of a BIOS setup menu and APM support. On these machines, all system configuration is handled through the ACPI. This driver is required for access to controls not covered by the general ACPI drivers, such as LCD brightness, video output, etc. This driver differs from the non-ACPI Toshiba laptop driver (located under "Processor type and features") in several aspects. Configuration is accessed by reading and writing text files in the /proc tree instead of by program interface to /dev. Furthermore, no power management functions are exposed, as those are handled by the general ACPI drivers. More information about this driver is available at . If you have a legacy free Toshiba laptop (such as the Libretto L1 series), say Y. config TOSHIBA_BT_RFKILL tristate "Toshiba Bluetooth RFKill switch support" depends on ACPI ---help--- This driver adds support for Bluetooth events for the RFKill switch on modern Toshiba laptops with full ACPI support and an RFKill switch. This driver handles RFKill events for the TOS6205 Bluetooth, and re-enables it when the switch is set back to the 'on' position. If you have a modern Toshiba laptop with a Bluetooth and an RFKill switch (such as the Portege R500), say Y. config ACPI_CMPC tristate "CMPC Laptop Extras" depends on X86 && ACPI depends on RFKILL || RFKILL=n select INPUT select BACKLIGHT_CLASS_DEVICE default n help Support for Intel Classmate PC ACPI devices, including some keys as input device, backlight device, tablet and accelerometer devices. config INTEL_SCU_IPC bool "Intel SCU IPC Support" depends on X86_MRST default y ---help--- IPC is used to bridge the communications between kernel and SCU on some embedded Intel x86 platforms. This is not needed for PC-type machines. config INTEL_SCU_IPC_UTIL tristate "Intel SCU IPC utility driver" depends on INTEL_SCU_IPC default y ---help--- The IPC Util driver provides an interface with the SCU enabling low level access for debug work and updating the firmware. Say N unless you will be doing this on an Intel MID platform. config GPIO_INTEL_PMIC bool "Intel PMIC GPIO support" depends on INTEL_SCU_IPC && GPIOLIB ---help--- Say Y here to support GPIO via the SCU IPC interface on Intel MID platforms. config INTEL_MID_POWER_BUTTON tristate "power button driver for Intel MID platforms" depends on INTEL_SCU_IPC && INPUT help This driver handles the power button on the Intel MID platforms. If unsure, say N. config INTEL_MFLD_THERMAL tristate "Thermal driver for Intel Medfield platform" depends on INTEL_SCU_IPC && THERMAL help Say Y here to enable thermal driver support for the Intel Medfield platform. config RAR_REGISTER bool "Restricted Access Region Register Driver" depends on PCI && X86_MRST default n ---help--- This driver allows other kernel drivers access to the contents of the restricted access region control registers. The restricted access region control registers (rar_registers) are used to pass address and locking information on restricted access regions to other drivers that use restricted access regions. The restricted access regions are regions of memory on the Intel MID Platform that are not accessible to the x86 processor, but are accessible to dedicated processors on board peripheral devices. The purpose of the restricted access regions is to protect sensitive data from compromise by unauthorized programs running on the x86 processor. config INTEL_IPS tristate "Intel Intelligent Power Sharing" depends on ACPI ---help--- Intel Calpella platforms support dynamic power sharing between the CPU and GPU, maximizing performance in a given TDP. This driver, along with the CPU frequency and i915 drivers, provides that functionality. If in doubt, say Y here; it will only load on supported platforms. config IBM_RTL tristate "Device driver to enable PRTL support" depends on X86 && PCI ---help--- Enable support for IBM Premium Real Time Mode (PRTM). This module will allow you the enter and exit PRTM in the BIOS via sysfs on platforms that support this feature. System in PRTM will not receive CPU-generated SMIs for recoverable errors. Use of this feature without proper support may void your hardware warranty. If the proper BIOS support is found the driver will load and create /sys/devices/system/ibm_rtl/. The "state" variable will indicate whether or not the BIOS is in PRTM. state = 0 (BIOS SMIs on) state = 1 (BIOS SMIs off) config XO1_RFKILL tristate "OLPC XO-1 software RF kill switch" depends on OLPC depends on RFKILL ---help--- Support for enabling/disabling the WLAN interface on the OLPC XO-1 laptop. config XO15_EBOOK tristate "OLPC XO-1.5 ebook switch" depends on ACPI && INPUT ---help--- Support for the ebook switch on the OLPC XO-1.5 laptop. This switch is triggered as the screen is rotated and folded down to convert the device into ebook form. config SAMSUNG_LAPTOP tristate "Samsung Laptop driver" depends on RFKILL && BACKLIGHT_CLASS_DEVICE && X86 ---help--- This module implements a driver for a wide range of different Samsung laptops. It offers control over the different function keys, wireless LED, LCD backlight level, and sometimes provides a "performance_control" sysfs file to allow the performance level of the laptop to be changed. To compile this driver as a module, choose M here: the module will be called samsung-laptop. endif # X86_PLATFORM_DEVICES menuconfig REGULATOR bool "Voltage and Current Regulator Support" help Generic Voltage and Current Regulator support. This framework is designed to provide a generic interface to voltage and current regulators within the Linux kernel. It's intended to provide voltage and current control to client or consumer drivers and also provide status information to user space applications through a sysfs interface. The intention is to allow systems to dynamically control regulator output in order to save power and prolong battery life. This applies to both voltage regulators (where voltage output is controllable) and current sinks (where current output is controllable). This framework safely compiles out if not selected so that client drivers can still be used in systems with no software controllable regulators. If unsure, say no. if REGULATOR config REGULATOR_DEBUG bool "Regulator debug support" help Say yes here to enable debugging support. config REGULATOR_DUMMY bool "Provide a dummy regulator if regulator lookups fail" help If this option is enabled then when a regulator lookup fails and the board has not specified that it has provided full constraints then the regulator core will provide an always enabled dummy regulator will be provided, allowing consumer drivers to continue. A warning will be generated when this substitution is done. config REGULATOR_FIXED_VOLTAGE tristate "Fixed voltage regulator support" help This driver provides support for fixed voltage regulators, useful for systems which use a combination of software managed regulators and simple non-configurable regulators. config REGULATOR_VIRTUAL_CONSUMER tristate "Virtual regulator consumer support" help This driver provides a virtual consumer for the voltage and current regulator API which provides sysfs controls for configuring the supplies requested. This is mainly useful for test purposes. If unsure, say no. config REGULATOR_USERSPACE_CONSUMER tristate "Userspace regulator consumer support" help There are some classes of devices that are controlled entirely from user space. Userspace consumer driver provides ability to control power supplies for such devices. If unsure, say no. config REGULATOR_BQ24022 tristate "TI bq24022 Dual Input 1-Cell Li-Ion Charger IC" help This driver controls a TI bq24022 Charger attached via GPIOs. The provided current regulator can enable/disable charging select between 100 mA and 500 mA charging current limit. config REGULATOR_MAX1586 tristate "Maxim 1586/1587 voltage regulator" depends on I2C help This driver controls a Maxim 1586 or 1587 voltage output regulator via I2C bus. The provided regulator is suitable for PXA27x chips to control VCC_CORE and VCC_USIM voltages. config REGULATOR_MAX8649 tristate "Maxim 8649 voltage regulator" depends on I2C help This driver controls a Maxim 8649 voltage output regulator via I2C bus. config REGULATOR_MAX8660 tristate "Maxim 8660/8661 voltage regulator" depends on I2C help This driver controls a Maxim 8660/8661 voltage output regulator via I2C bus. config REGULATOR_MAX8925 tristate "Maxim MAX8925 Power Management IC" depends on MFD_MAX8925 help Say y here to support the voltage regulaltor of Maxim MAX8925 PMIC. config REGULATOR_MAX8952 tristate "Maxim MAX8952 Power Management IC" depends on I2C help This driver controls a Maxim 8952 voltage output regulator via I2C bus. Maxim 8952 has one voltage output and supports 4 DVS modes ranging from 0.77V to 1.40V by 0.01V steps. config REGULATOR_MAX8997 tristate "Maxim 8997/8966 regulator" depends on MFD_MAX8997 help This driver controls a Maxim 8997/8966 regulator via I2C bus. The provided regulator is suitable for S5PC110, S5PV210, and Exynos-4 chips to control VCC_CORE and VCC_USIM voltages. config REGULATOR_MAX8998 tristate "Maxim 8998 voltage regulator" depends on MFD_MAX8998 help This driver controls a Maxim 8998 voltage output regulator via I2C bus. The provided regulator is suitable for S3C6410 and S5PC1XX chips to control VCC_CORE and VCC_USIM voltages. config REGULATOR_TWL4030 bool "TI TWL4030/TWL5030/TWL6030/TPS659x0 PMIC" depends on TWL4030_CORE help This driver supports the voltage regulators provided by this family of companion chips. config REGULATOR_WM831X tristate "Wolfson Microelcronics WM831x PMIC regulators" depends on MFD_WM831X help Support the voltage and current regulators of the WM831x series of PMIC devices. config REGULATOR_WM8350 tristate "Wolfson Microelectronics WM8350 AudioPlus PMIC" depends on MFD_WM8350 help This driver provides support for the voltage and current regulators of the WM8350 AudioPlus PMIC. config REGULATOR_WM8400 tristate "Wolfson Microelectronics WM8400 AudioPlus PMIC" depends on MFD_WM8400 help This driver provides support for the voltage regulators of the WM8400 AudioPlus PMIC. config REGULATOR_WM8994 tristate "Wolfson Microelectronics WM8994 CODEC" depends on MFD_WM8994 help This driver provides support for the voltage regulators on the WM8994 CODEC. config REGULATOR_DA903X tristate "Support regulators on Dialog Semiconductor DA9030/DA9034 PMIC" depends on PMIC_DA903X help Say y here to support the BUCKs and LDOs regulators found on Dialog Semiconductor DA9030/DA9034 PMIC. config REGULATOR_PCF50633 tristate "PCF50633 regulator driver" depends on MFD_PCF50633 help Say Y here to support the voltage regulators and convertors on PCF50633 config REGULATOR_LP3971 tristate "National Semiconductors LP3971 PMIC regulator driver" depends on I2C help Say Y here to support the voltage regulators and convertors on National Semiconductors LP3971 PMIC config REGULATOR_LP3972 tristate "National Semiconductors LP3972 PMIC regulator driver" depends on I2C help Say Y here to support the voltage regulators and convertors on National Semiconductors LP3972 PMIC config REGULATOR_PCAP tristate "PCAP2 regulator driver" depends on EZX_PCAP help This driver provides support for the voltage regulators of the PCAP2 PMIC. config REGULATOR_MC13XXX_CORE tristate config REGULATOR_MC13783 tristate "Support regulators on Freescale MC13783 PMIC" depends on MFD_MC13783 select REGULATOR_MC13XXX_CORE help Say y here to support the regulators found on the Freescale MC13783 PMIC. config REGULATOR_MC13892 tristate "Support regulators on Freescale MC13892 PMIC" depends on MFD_MC13XXX select REGULATOR_MC13XXX_CORE help Say y here to support the regulators found on the Freescale MC13892 PMIC. config REGULATOR_AB3100 tristate "ST-Ericsson AB3100 Regulator functions" depends on AB3100_CORE default y if AB3100_CORE help These regulators correspond to functionality in the AB3100 analog baseband dealing with power regulators for the system. config REGULATOR_TPS6105X tristate "TI TPS6105X Power regulators" depends on TPS6105X default y if TPS6105X help This driver supports TPS61050/TPS61052 voltage regulator chips. It is a single boost converter primarily for white LEDs and audio amplifiers. config REGULATOR_TPS65023 tristate "TI TPS65023 Power regulators" depends on I2C help This driver supports TPS65023 voltage regulator chips. TPS65023 provides three step-down converters and two general-purpose LDO voltage regulators. It supports TI's software based Class-2 SmartReflex implementation. config REGULATOR_TPS6507X tristate "TI TPS6507X Power regulators" depends on I2C help This driver supports TPS6507X voltage regulator chips. TPS6507X provides three step-down converters and two general-purpose LDO voltage regulators. It supports TI's software based Class-2 SmartReflex implementation. config REGULATOR_88PM8607 bool "Marvell 88PM8607 Power regulators" depends on MFD_88PM860X=y help This driver supports 88PM8607 voltage regulator chips. config REGULATOR_ISL6271A tristate "Intersil ISL6271A Power regulator" depends on I2C help This driver supports ISL6271A voltage regulator chip. config REGULATOR_AD5398 tristate "Analog Devices AD5398/AD5821 regulators" depends on I2C help This driver supports AD5398 and AD5821 current regulator chips. If building into module, its name is ad5398.ko. config REGULATOR_AB8500 bool "ST-Ericsson AB8500 Power Regulators" depends on AB8500_CORE help This driver supports the regulators found on the ST-Ericsson mixed signal AB8500 PMIC config REGULATOR_TPS6586X tristate "TI TPS6586X Power regulators" depends on MFD_TPS6586X help This driver supports TPS6586X voltage regulator chips. config REGULATOR_TPS6524X tristate "TI TPS6524X Power regulators" depends on SPI help This driver supports TPS6524X voltage regulator chips. TPS6524X provides three step-down converters and two general-purpose LDO voltage regulators. This device is interfaced using a customized serial interface currently supported on the sequencer serial port controller. endif # # Block device driver configuration # menuconfig MD bool "Multiple devices driver support (RAID and LVM)" depends on BLOCK help Support multiple physical spindles through a single logical device. Required for RAID and logical volume management. if MD config BLK_DEV_MD tristate "RAID support" ---help--- This driver lets you combine several hard disk partitions into one logical block device. This can be used to simply append one partition to another one or to combine several redundant hard disks into a RAID1/4/5 device so as to provide protection against hard disk failures. This is called "Software RAID" since the combining of the partitions is done by the kernel. "Hardware RAID" means that the combining is done by a dedicated controller; if you have such a controller, you do not need to say Y here. More information about Software RAID on Linux is contained in the Software RAID mini-HOWTO, available from . There you will also learn where to get the supporting user space utilities raidtools. If unsure, say N. config MD_AUTODETECT bool "Autodetect RAID arrays during kernel boot" depends on BLK_DEV_MD=y default y ---help--- If you say Y here, then the kernel will try to autodetect raid arrays as part of its boot process. If you don't use raid and say Y, this autodetection can cause a several-second delay in the boot time due to various synchronisation steps that are part of this step. If unsure, say Y. config MD_LINEAR tristate "Linear (append) mode" depends on BLK_DEV_MD ---help--- If you say Y here, then your multiple devices driver will be able to use the so-called linear mode, i.e. it will combine the hard disk partitions by simply appending one to the other. To compile this as a module, choose M here: the module will be called linear. If unsure, say Y. config MD_RAID0 tristate "RAID-0 (striping) mode" depends on BLK_DEV_MD ---help--- If you say Y here, then your multiple devices driver will be able to use the so-called raid0 mode, i.e. it will combine the hard disk partitions into one logical device in such a fashion as to fill them up evenly, one chunk here and one chunk there. This will increase the throughput rate if the partitions reside on distinct disks. Information about Software RAID on Linux is contained in the Software-RAID mini-HOWTO, available from . There you will also learn where to get the supporting user space utilities raidtools. To compile this as a module, choose M here: the module will be called raid0. If unsure, say Y. config MD_RAID1 tristate "RAID-1 (mirroring) mode" depends on BLK_DEV_MD ---help--- A RAID-1 set consists of several disk drives which are exact copies of each other. In the event of a mirror failure, the RAID driver will continue to use the operational mirrors in the set, providing an error free MD (multiple device) to the higher levels of the kernel. In a set with N drives, the available space is the capacity of a single drive, and the set protects against a failure of (N - 1) drives. Information about Software RAID on Linux is contained in the Software-RAID mini-HOWTO, available from . There you will also learn where to get the supporting user space utilities raidtools. If you want to use such a RAID-1 set, say Y. To compile this code as a module, choose M here: the module will be called raid1. If unsure, say Y. config MD_RAID10 tristate "RAID-10 (mirrored striping) mode" depends on BLK_DEV_MD ---help--- RAID-10 provides a combination of striping (RAID-0) and mirroring (RAID-1) with easier configuration and more flexible layout. Unlike RAID-0, but like RAID-1, RAID-10 requires all devices to be the same size (or at least, only as much as the smallest device will be used). RAID-10 provides a variety of layouts that provide different levels of redundancy and performance. RAID-10 requires mdadm-1.7.0 or later, available at: ftp://ftp.kernel.org/pub/linux/utils/raid/mdadm/ If unsure, say Y. config MD_RAID456 tristate "RAID-4/RAID-5/RAID-6 mode" depends on BLK_DEV_MD select RAID6_PQ select ASYNC_MEMCPY select ASYNC_XOR select ASYNC_PQ select ASYNC_RAID6_RECOV ---help--- A RAID-5 set of N drives with a capacity of C MB per drive provides the capacity of C * (N - 1) MB, and protects against a failure of a single drive. For a given sector (row) number, (N - 1) drives contain data sectors, and one drive contains the parity protection. For a RAID-4 set, the parity blocks are present on a single drive, while a RAID-5 set distributes the parity across the drives in one of the available parity distribution methods. A RAID-6 set of N drives with a capacity of C MB per drive provides the capacity of C * (N - 2) MB, and protects against a failure of any two drives. For a given sector (row) number, (N - 2) drives contain data sectors, and two drives contains two independent redundancy syndromes. Like RAID-5, RAID-6 distributes the syndromes across the drives in one of the available parity distribution methods. Information about Software RAID on Linux is contained in the Software-RAID mini-HOWTO, available from . There you will also learn where to get the supporting user space utilities raidtools. If you want to use such a RAID-4/RAID-5/RAID-6 set, say Y. To compile this code as a module, choose M here: the module will be called raid456. If unsure, say Y. config MULTICORE_RAID456 bool "RAID-4/RAID-5/RAID-6 Multicore processing (EXPERIMENTAL)" depends on MD_RAID456 depends on SMP depends on EXPERIMENTAL ---help--- Enable the raid456 module to dispatch per-stripe raid operations to a thread pool. If unsure, say N. config MD_MULTIPATH tristate "Multipath I/O support" depends on BLK_DEV_MD help MD_MULTIPATH provides a simple multi-path personality for use the MD framework. It is not under active development. New projects should consider using DM_MULTIPATH which has more features and more testing. If unsure, say N. config MD_FAULTY tristate "Faulty test module for MD" depends on BLK_DEV_MD help The "faulty" module allows for a block device that occasionally returns read or write errors. It is useful for testing. In unsure, say N. config BLK_DEV_DM tristate "Device mapper support" ---help--- Device-mapper is a low level volume manager. It works by allowing people to specify mappings for ranges of logical sectors. Various mapping types are available, in addition people may write their own modules containing custom mappings if they wish. Higher level volume managers such as LVM2 use this driver. To compile this as a module, choose M here: the module will be called dm-mod. If unsure, say N. config DM_DEBUG boolean "Device mapper debugging support" depends on BLK_DEV_DM ---help--- Enable this for messages that may help debug device-mapper problems. If unsure, say N. config DM_CRYPT tristate "Crypt target support" depends on BLK_DEV_DM select CRYPTO select CRYPTO_CBC ---help--- This device-mapper target allows you to create a device that transparently encrypts the data on it. You'll need to activate the ciphers you're going to use in the cryptoapi configuration. Information on how to use dm-crypt can be found on To compile this code as a module, choose M here: the module will be called dm-crypt. If unsure, say N. config DM_SNAPSHOT tristate "Snapshot target" depends on BLK_DEV_DM ---help--- Allow volume managers to take writable snapshots of a device. config DM_MIRROR tristate "Mirror target" depends on BLK_DEV_DM ---help--- Allow volume managers to mirror logical volumes, also needed for live data migration tools such as 'pvmove'. config DM_RAID tristate "RAID 4/5/6 target (EXPERIMENTAL)" depends on BLK_DEV_DM && EXPERIMENTAL select MD_RAID456 select BLK_DEV_MD ---help--- A dm target that supports RAID4, RAID5 and RAID6 mappings A RAID-5 set of N drives with a capacity of C MB per drive provides the capacity of C * (N - 1) MB, and protects against a failure of a single drive. For a given sector (row) number, (N - 1) drives contain data sectors, and one drive contains the parity protection. For a RAID-4 set, the parity blocks are present on a single drive, while a RAID-5 set distributes the parity across the drives in one of the available parity distribution methods. A RAID-6 set of N drives with a capacity of C MB per drive provides the capacity of C * (N - 2) MB, and protects against a failure of any two drives. For a given sector (row) number, (N - 2) drives contain data sectors, and two drives contains two independent redundancy syndromes. Like RAID-5, RAID-6 distributes the syndromes across the drives in one of the available parity distribution methods. config DM_LOG_USERSPACE tristate "Mirror userspace logging (EXPERIMENTAL)" depends on DM_MIRROR && EXPERIMENTAL && NET select CONNECTOR ---help--- The userspace logging module provides a mechanism for relaying the dm-dirty-log API to userspace. Log designs which are more suited to userspace implementation (e.g. shared storage logs) or experimental logs can be implemented by leveraging this framework. config DM_ZERO tristate "Zero target" depends on BLK_DEV_DM ---help--- A target that discards writes, and returns all zeroes for reads. Useful in some recovery situations. config DM_MULTIPATH tristate "Multipath target" depends on BLK_DEV_DM # nasty syntax but means make DM_MULTIPATH independent # of SCSI_DH if the latter isn't defined but if # it is, DM_MULTIPATH must depend on it. We get a build # error if SCSI_DH=m and DM_MULTIPATH=y depends on SCSI_DH || !SCSI_DH ---help--- Allow volume managers to support multipath hardware. config DM_MULTIPATH_QL tristate "I/O Path Selector based on the number of in-flight I/Os" depends on DM_MULTIPATH ---help--- This path selector is a dynamic load balancer which selects the path with the least number of in-flight I/Os. If unsure, say N. config DM_MULTIPATH_ST tristate "I/O Path Selector based on the service time" depends on DM_MULTIPATH ---help--- This path selector is a dynamic load balancer which selects the path expected to complete the incoming I/O in the shortest time. If unsure, say N. config DM_DELAY tristate "I/O delaying target (EXPERIMENTAL)" depends on BLK_DEV_DM && EXPERIMENTAL ---help--- A target that delays reads and/or writes and can send them to different devices. Useful for testing. If unsure, say N. config DM_UEVENT bool "DM uevents (EXPERIMENTAL)" depends on BLK_DEV_DM && EXPERIMENTAL ---help--- Generate udev events for DM events. config DM_FLAKEY tristate "Flakey target (EXPERIMENTAL)" depends on BLK_DEV_DM && EXPERIMENTAL ---help--- A target that intermittently fails I/O for debugging purposes. endif # MD # # Zorro configuration # config ZORRO_NAMES bool "Zorro device name database" depends on ZORRO ---help--- By default, the kernel contains a database of all known Zorro device names to make the information in /proc/iomem comprehensible to the user. This database increases the size of the kernel image by about 15KB, but it gets freed after the system boots up, so it doesn't take up kernel memory. Anyway, if you are building an installation floppy or kernel for an embedded system where kernel image size really matters, you can disable this feature and you'll get device ID numbers instead of names. When in doubt, say Y. menuconfig IEEE802154_DRIVERS tristate "IEEE 802.15.4 drivers" depends on NETDEVICES && IEEE802154 default y ---help--- Say Y here to get to see options for IEEE 802.15.4 Low-Rate Wireless Personal Area Network device drivers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. config IEEE802154_FAKEHARD tristate "Fake LR-WPAN driver with several interconnected devices" depends on IEEE802154_DRIVERS ---help--- Say Y here to enable the fake driver that serves as an example of HardMAC device driver. This driver can also be built as a module. To do so say M here. The module will be called 'fakehard'. menu "Generic Driver Options" config UEVENT_HELPER_PATH string "path to uevent helper" depends on HOTPLUG default "" help Path to uevent helper program forked by the kernel for every uevent. Before the switch to the netlink-based uevent source, this was used to hook hotplug scripts into kernel device events. It usually pointed to a shell script at /sbin/hotplug. This should not be used today, because usual systems create many events at bootup or device discovery in a very short time frame. One forked process per event can create so many processes that it creates a high system load, or on smaller systems it is known to create out-of-memory situations during bootup. config DEVTMPFS bool "Maintain a devtmpfs filesystem to mount at /dev" depends on HOTPLUG help This creates a tmpfs/ramfs filesystem instance early at bootup. In this filesystem, the kernel driver core maintains device nodes with their default names and permissions for all registered devices with an assigned major/minor number. Userspace can modify the filesystem content as needed, add symlinks, and apply needed permissions. It provides a fully functional /dev directory, where usually udev runs on top, managing permissions and adding meaningful symlinks. In very limited environments, it may provide a sufficient functional /dev without any further help. It also allows simple rescue systems, and reliably handles dynamic major/minor numbers. Notice: if CONFIG_TMPFS isn't enabled, the simpler ramfs file system will be used instead. config DEVTMPFS_MOUNT bool "Automount devtmpfs at /dev, after the kernel mounted the rootfs" depends on DEVTMPFS help This will instruct the kernel to automatically mount the devtmpfs filesystem at /dev, directly after the kernel has mounted the root filesystem. The behavior can be overridden with the commandline parameter: devtmpfs.mount=0|1. This option does not affect initramfs based booting, here the devtmpfs filesystem always needs to be mounted manually after the roots is mounted. With this option enabled, it allows to bring up a system in rescue mode with init=/bin/sh, even when the /dev directory on the rootfs is completely empty. config STANDALONE bool "Select only drivers that don't need compile-time external firmware" if EXPERIMENTAL default y help Select this option if you don't have magic firmware for drivers that need it. If unsure, say Y. config PREVENT_FIRMWARE_BUILD bool "Prevent firmware from being built" default y help Say yes to avoid building firmware. Firmware is usually shipped with the driver, and only when updating the firmware a rebuild should be made. If unsure say Y here. config FW_LOADER tristate "Userspace firmware loading support" if EXPERT default y ---help--- This option is provided for the case where no in-kernel-tree modules require userspace firmware loading support, but a module built outside the kernel tree does. config FIRMWARE_IN_KERNEL bool "Include in-kernel firmware blobs in kernel binary" depends on FW_LOADER default y help The kernel source tree includes a number of firmware 'blobs' which are used by various drivers. The recommended way to use these is to run "make firmware_install" and to copy the resulting binary files created in usr/lib/firmware directory of the kernel tree to the /lib/firmware on your system so that they can be loaded by userspace helpers on request. Enabling this option will build each required firmware blob into the kernel directly, where request_firmware() will find them without having to call out to userspace. This may be useful if your root file system requires a device which uses such firmware, and do not wish to use an initrd. This single option controls the inclusion of firmware for every driver which uses request_firmware() and ships its firmware in the kernel source tree, to avoid a proliferation of 'Include firmware for xxx device' options. Say 'N' and let firmware be loaded from userspace. config EXTRA_FIRMWARE string "External firmware blobs to build into the kernel binary" depends on FW_LOADER help This option allows firmware to be built into the kernel, for the cases where the user either cannot or doesn't want to provide it from userspace at runtime (for example, when the firmware in question is required for accessing the boot device, and the user doesn't want to use an initrd). This option is a string, and takes the (space-separated) names of the firmware files -- the same names which appear in MODULE_FIRMWARE() and request_firmware() in the source. These files should exist under the directory specified by the EXTRA_FIRMWARE_DIR option, which is by default the firmware/ subdirectory of the kernel source tree. So, for example, you might set CONFIG_EXTRA_FIRMWARE="usb8388.bin", copy the usb8388.bin file into the firmware/ directory, and build the kernel. Then any request_firmware("usb8388.bin") will be satisfied internally without needing to call out to userspace. WARNING: If you include additional firmware files into your binary kernel image which are not available under the terms of the GPL, then it may be a violation of the GPL to distribute the resulting image -- since it combines both GPL and non-GPL work. You should consult a lawyer of your own before distributing such an image. config EXTRA_FIRMWARE_DIR string "Firmware blobs root directory" depends on EXTRA_FIRMWARE != "" default "firmware" help This option controls the directory in which the kernel build system looks for the firmware files listed in the EXTRA_FIRMWARE option. The default is the firmware/ directory in the kernel source tree, but by changing this option you can point it elsewhere, such as the /lib/firmware/ directory or another separate directory containing firmware files. config DEBUG_DRIVER bool "Driver Core verbose debug messages" depends on DEBUG_KERNEL help Say Y here if you want the Driver core to produce a bunch of debug messages to the system log. Select this if you are having a problem with the driver core and want to see more of what is going on. If you are unsure about this, say N here. config DEBUG_DEVRES bool "Managed device resources verbose debug messages" depends on DEBUG_KERNEL help This option enables kernel parameter devres.log. If set to non-zero, devres debug messages are printed. Select this if you are having a problem with devres or want to debug resource management for a managed device. devres.log can be switched on and off from sysfs node. If you are unsure about this, Say N here. config SYS_HYPERVISOR bool default n config ARCH_NO_SYSDEV_OPS bool ---help--- To be selected by architectures that don't use sysdev class or sysdev driver power management (suspend/resume) and shutdown operations. endmenu menuconfig ACCESSIBILITY bool "Accessibility support" ---help--- Accessibility handles all special kinds of hardware devices or software adapters which help people with disabilities (e.g. blindness) to use computers. That includes braille devices, speech synthesis, keyboard remapping, etc. Say Y here to get to see options for accessibility. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. If unsure, say N. if ACCESSIBILITY config A11Y_BRAILLE_CONSOLE bool "Console on braille device" depends on VT depends on SERIAL_CORE_CONSOLE ---help--- Enables console output on a braille device connected to a 8250 serial port. For now only the VisioBraille device is supported. To actually enable it, you need to pass option console=brl,ttyS0 to the kernel. Options are the same as for serial console. If unsure, say N. endif # ACCESSIBILITY # Virtio always gets selected by whoever wants it. config VIRTIO tristate # Similarly the virtio ring implementation. config VIRTIO_RING tristate depends on VIRTIO config VIRTIO_PCI tristate "PCI driver for virtio devices (EXPERIMENTAL)" depends on PCI && EXPERIMENTAL select VIRTIO select VIRTIO_RING ---help--- This drivers provides support for virtio based paravirtual device drivers over PCI. This requires that your VMM has appropriate PCI virtio backends. Most QEMU based VMMs should support these devices (like KVM or Xen). Currently, the ABI is not considered stable so there is no guarantee that this version of the driver will work with your VMM. If unsure, say M. config VIRTIO_BALLOON tristate "Virtio balloon driver (EXPERIMENTAL)" select VIRTIO select VIRTIO_RING ---help--- This driver supports increasing and decreasing the amount of memory within a KVM guest. If unsure, say M. # # Video configuration # menu "Graphics support" depends on HAS_IOMEM config HAVE_FB_ATMEL bool config HAVE_FB_IMX bool config SH_MIPI_DSI tristate depends on (SUPERH || ARCH_SHMOBILE) && HAVE_CLK config SH_LCD_MIPI_DSI bool source "drivers/char/agp/Kconfig" source "drivers/gpu/vga/Kconfig" source "drivers/gpu/drm/Kconfig" source "drivers/gpu/stub/Kconfig" config VGASTATE tristate default n config VIDEO_OUTPUT_CONTROL tristate "Lowlevel video output switch controls" help This framework adds support for low-level control of the video output switch. menuconfig FB tristate "Support for frame buffer devices" ---help--- The frame buffer device provides an abstraction for the graphics hardware. It represents the frame buffer of some video hardware and allows application software to access the graphics hardware through a well-defined interface, so the software doesn't need to know anything about the low-level (hardware register) stuff. Frame buffer devices work identically across the different architectures supported by Linux and make the implementation of application programs easier and more portable; at this point, an X server exists which uses the frame buffer device exclusively. On several non-X86 architectures, the frame buffer device is the only way to use the graphics hardware. The device is accessed through special device nodes, usually located in the /dev directory, i.e. /dev/fb*. You need an utility program called fbset to make full use of frame buffer devices. Please read and the Framebuffer-HOWTO at for more information. Say Y here and to the driver for your graphics board below if you are compiling a kernel for a non-x86 architecture. If you are compiling for the x86 architecture, you can say Y if you want to play with it, but it is not essential. Please note that running graphical applications that directly touch the hardware (e.g. an accelerated X server) and that are not frame buffer device-aware may cause unexpected results. If unsure, say N. config FIRMWARE_EDID bool "Enable firmware EDID" depends on FB default n ---help--- This enables access to the EDID transferred from the firmware. On the i386, this is from the Video BIOS. Enable this if DDC/I2C transfers do not work for your driver and if you are using nvidiafb, i810fb or savagefb. In general, choosing Y for this option is safe. If you experience extremely long delays while booting before you get something on your display, try setting this to N. Matrox cards in combination with certain motherboards and monitors are known to suffer from this problem. config FB_DDC tristate depends on FB select I2C_ALGOBIT select I2C default n config FB_BOOT_VESA_SUPPORT bool depends on FB default n ---help--- If true, at least one selected framebuffer driver can take advantage of VESA video modes set at an early boot stage via the vga= parameter. config FB_CFB_FILLRECT tristate depends on FB default n ---help--- Include the cfb_fillrect function for generic software rectangle filling. This is used by drivers that don't provide their own (accelerated) version. config FB_CFB_COPYAREA tristate depends on FB default n ---help--- Include the cfb_copyarea function for generic software area copying. This is used by drivers that don't provide their own (accelerated) version. config FB_CFB_IMAGEBLIT tristate depends on FB default n ---help--- Include the cfb_imageblit function for generic software image blitting. This is used by drivers that don't provide their own (accelerated) version. config FB_CFB_REV_PIXELS_IN_BYTE bool depends on FB default n ---help--- Allow generic frame-buffer functions to work on displays with 1, 2 and 4 bits per pixel depths which has opposite order of pixels in byte order to bytes in long order. config FB_SYS_FILLRECT tristate depends on FB default n ---help--- Include the sys_fillrect function for generic software rectangle filling. This is used by drivers that don't provide their own (accelerated) version and the framebuffer is in system RAM. config FB_SYS_COPYAREA tristate depends on FB default n ---help--- Include the sys_copyarea function for generic software area copying. This is used by drivers that don't provide their own (accelerated) version and the framebuffer is in system RAM. config FB_SYS_IMAGEBLIT tristate depends on FB default n ---help--- Include the sys_imageblit function for generic software image blitting. This is used by drivers that don't provide their own (accelerated) version and the framebuffer is in system RAM. menuconfig FB_FOREIGN_ENDIAN bool "Framebuffer foreign endianness support" depends on FB ---help--- This menu will let you enable support for the framebuffers with non-native endianness (e.g. Little-Endian framebuffer on a Big-Endian machine). Most probably you don't have such hardware, so it's safe to say "n" here. choice prompt "Choice endianness support" depends on FB_FOREIGN_ENDIAN config FB_BOTH_ENDIAN bool "Support for Big- and Little-Endian framebuffers" config FB_BIG_ENDIAN bool "Support for Big-Endian framebuffers only" config FB_LITTLE_ENDIAN bool "Support for Little-Endian framebuffers only" endchoice config FB_SYS_FOPS tristate depends on FB default n config FB_WMT_GE_ROPS tristate depends on FB default n ---help--- Include functions for accelerated rectangle filling and area copying using WonderMedia Graphics Engine operations. config FB_DEFERRED_IO bool depends on FB config FB_HECUBA tristate depends on FB depends on FB_DEFERRED_IO config FB_SVGALIB tristate depends on FB default n ---help--- Common utility functions useful to fbdev drivers of VGA-based cards. config FB_MACMODES tristate depends on FB default n config FB_BACKLIGHT bool depends on FB select BACKLIGHT_LCD_SUPPORT select BACKLIGHT_CLASS_DEVICE default n config FB_MODE_HELPERS bool "Enable Video Mode Handling Helpers" depends on FB default n ---help--- This enables functions for handling video modes using the Generalized Timing Formula and the EDID parser. A few drivers rely on this feature such as the radeonfb, rivafb, and the i810fb. If your driver does not take advantage of this feature, choosing Y will just increase the kernel size by about 5K. config FB_TILEBLITTING bool "Enable Tile Blitting Support" depends on FB default n ---help--- This enables tile blitting. Tile blitting is a drawing technique where the screen is divided into rectangular sections (tiles), whereas the standard blitting divides the screen into pixels. Because the default drawing element is a tile, drawing functions will be passed parameters in terms of number of tiles instead of number of pixels. For example, to draw a single character, instead of using bitmaps, an index to an array of bitmaps will be used. To clear or move a rectangular section of a screen, the rectangle will be described in terms of number of tiles in the x- and y-axis. This is particularly important to one driver, matroxfb. If unsure, say N. comment "Frame buffer hardware drivers" depends on FB config FB_CIRRUS tristate "Cirrus Logic support" depends on FB && (ZORRO || PCI) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- This enables support for Cirrus Logic GD542x/543x based boards on Amiga: SD64, Piccolo, Picasso II/II+, Picasso IV, or EGS Spectrum. If you have a PCI-based system, this enables support for these chips: GD-543x, GD-544x, GD-5480. Please read the file . Say N unless you have such a graphics board or plan to get one before you next recompile the kernel. config FB_PM2 tristate "Permedia2 support" depends on FB && ((AMIGA && BROKEN) || PCI) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for cards based on the 3D Labs Permedia, Permedia 2 and Permedia 2V chips. The driver was tested on the following cards: Diamond FireGL 1000 PRO AGP ELSA Gloria Synergy PCI Appian Jeronimo PRO (both heads) PCI 3DLabs Oxygen ACX aka EONtronics Picasso P2 PCI Techsource Raptor GFX-8P (aka Sun PGX-32) on SPARC ASK Graphic Blaster Exxtreme AGP To compile this driver as a module, choose M here: the module will be called pm2fb. config FB_PM2_FIFO_DISCONNECT bool "enable FIFO disconnect feature" depends on FB_PM2 && PCI help Support the Permedia2 FIFO disconnect feature. config FB_ARMCLCD tristate "ARM PrimeCell PL110 support" depends on FB && ARM && ARM_AMBA select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This framebuffer device driver is for the ARM PrimeCell PL110 Colour LCD controller. ARM PrimeCells provide the building blocks for System on a Chip devices. If you want to compile this as a module (=code which can be inserted into and removed from the running kernel), say M here and read . The module will be called amba-clcd. config FB_ACORN bool "Acorn VIDC support" depends on (FB = y) && ARM && ARCH_ACORN select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the Acorn VIDC graphics hardware found in Acorn RISC PCs and other ARM-based machines. If unsure, say N. config FB_CLPS711X bool "CLPS711X LCD support" depends on (FB = y) && ARM && ARCH_CLPS711X select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Say Y to enable the Framebuffer driver for the CLPS7111 and EP7212 processors. config FB_SA1100 bool "SA-1100 LCD support" depends on (FB = y) && ARM && ARCH_SA1100 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is a framebuffer device for the SA-1100 LCD Controller. See for information on framebuffer devices. If you plan to use the LCD display with your SA-1100 system, say Y here. config FB_IMX tristate "Freescale i.MX LCD support" depends on FB && (HAVE_FB_IMX || ARCH_MX1 || ARCH_MX2) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT config FB_CYBER2000 tristate "CyberPro 2000/2010/5000 support" depends on FB && PCI && (BROKEN || !SPARC64) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This enables support for the Integraphics CyberPro 20x0 and 5000 VGA chips used in the Rebel.com Netwinder and other machines. Say Y if you have a NetWinder or a graphics card containing this device, otherwise say N. config FB_CYBER2000_DDC bool "DDC for CyberPro support" depends on FB_CYBER2000 select FB_DDC default y help Say Y here if you want DDC support for your CyberPro graphics card. This is only I2C bus support, driver does not use EDID. config FB_CYBER2000_I2C bool "CyberPro 2000/2010/5000 I2C support" depends on FB_CYBER2000 && I2C && ARCH_NETWINDER select I2C_ALGOBIT help Enable support for the I2C video decoder interface on the Integraphics CyberPro 20x0 and 5000 VGA chips. This is used on the Netwinder machines for the SAA7111 video capture. config FB_APOLLO bool depends on (FB = y) && APOLLO default y select FB_CFB_FILLRECT select FB_CFB_IMAGEBLIT config FB_Q40 bool depends on (FB = y) && Q40 default y select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT config FB_AMIGA tristate "Amiga native chipset support" depends on FB && AMIGA help This is the frame buffer device driver for the builtin graphics chipset found in Amigas. To compile this driver as a module, choose M here: the module will be called amifb. config FB_AMIGA_OCS bool "Amiga OCS chipset support" depends on FB_AMIGA help This enables support for the original Agnus and Denise video chips, found in the Amiga 1000 and most A500's and A2000's. If you intend to run Linux on any of these systems, say Y; otherwise say N. config FB_AMIGA_ECS bool "Amiga ECS chipset support" depends on FB_AMIGA help This enables support for the Enhanced Chip Set, found in later A500's, later A2000's, the A600, the A3000, the A3000T and CDTV. If you intend to run Linux on any of these systems, say Y; otherwise say N. config FB_AMIGA_AGA bool "Amiga AGA chipset support" depends on FB_AMIGA help This enables support for the Advanced Graphics Architecture (also known as the AGA or AA) Chip Set, found in the A1200, A4000, A4000T and CD32. If you intend to run Linux on any of these systems, say Y; otherwise say N. config FB_FM2 bool "Amiga FrameMaster II/Rainbow II support" depends on (FB = y) && ZORRO select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the Amiga FrameMaster card from BSC (exhibited 1992 but not shipped as a CBM product). config FB_ARC tristate "Arc Monochrome LCD board support" depends on FB && X86 select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS help This enables support for the Arc Monochrome LCD board. The board is based on the KS-108 lcd controller and is typically a matrix of 2*n chips. This driver was tested with a 128x64 panel. This driver supports it for use with x86 SBCs through a 16 bit GPIO interface (8 bit data, 8 bit control). If you anticipate using this driver, say Y or M; otherwise say N. You must specify the GPIO IO address to be used for setting control and data. config FB_ATARI bool "Atari native chipset support" depends on (FB = y) && ATARI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the builtin graphics chipset found in Ataris. config FB_OF bool "Open Firmware frame buffer device support" depends on (FB = y) && (PPC64 || PPC_OF) && (!PPC_PSERIES || PCI) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_MACMODES help Say Y if you want support with Open Firmware for your graphics board. config FB_CONTROL bool "Apple \"control\" display support" depends on (FB = y) && PPC_PMAC && PPC32 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_MACMODES help This driver supports a frame buffer for the graphics adapter in the Power Macintosh 7300 and others. config FB_PLATINUM bool "Apple \"platinum\" display support" depends on (FB = y) && PPC_PMAC && PPC32 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_MACMODES help This driver supports a frame buffer for the "platinum" graphics adapter in some Power Macintoshes. config FB_VALKYRIE bool "Apple \"valkyrie\" display support" depends on (FB = y) && (MAC || (PPC_PMAC && PPC32)) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_MACMODES help This driver supports a frame buffer for the "valkyrie" graphics adapter in some Power Macintoshes. config FB_CT65550 bool "Chips 65550 display support" depends on (FB = y) && PPC32 && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the Chips & Technologies 65550 graphics chip in PowerBooks. config FB_ASILIANT bool "Asiliant (Chips) 69000 display support" depends on (FB = y) && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the Asiliant 69030 chipset config FB_IMSTT bool "IMS Twin Turbo display support" depends on (FB = y) && PCI select FB_CFB_IMAGEBLIT select FB_MACMODES if PPC help The IMS Twin Turbo is a PCI-based frame buffer card bundled with many Macintosh and compatible computers. config FB_VGA16 tristate "VGA 16-color graphics support" depends on FB && (X86 || PPC) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select VGASTATE select FONT_8x16 if FRAMEBUFFER_CONSOLE help This is the frame buffer device driver for VGA 16 color graphic cards. Say Y if you have such a card. To compile this driver as a module, choose M here: the module will be called vga16fb. config FB_BF54X_LQ043 tristate "SHARP LQ043 TFT LCD (BF548 EZKIT)" depends on FB && (BF54x) && !BF542 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer device driver for a SHARP LQ043T1DG01 TFT LCD config FB_BFIN_T350MCQB tristate "Varitronix COG-T350MCQB TFT LCD display (BF527 EZKIT)" depends on FB && BLACKFIN select BFIN_GPTIMERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer device driver for a Varitronix VL-PS-COG-T350MCQB-01 display TFT LCD This display is a QVGA 320x240 24-bit RGB display interfaced by an 8-bit wide PPI It uses PPI[0..7] PPI_FS1, PPI_FS2 and PPI_CLK. config FB_BFIN_LQ035Q1 tristate "SHARP LQ035Q1DH02 TFT LCD" depends on FB && BLACKFIN && SPI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select BFIN_GPTIMERS help This is the framebuffer device driver for a SHARP LQ035Q1DH02 TFT display found on the Blackfin Landscape LCD EZ-Extender Card. This display is a QVGA 320x240 18-bit RGB display interfaced by an 16-bit wide PPI It uses PPI[0..15] PPI_FS1, PPI_FS2 and PPI_CLK. To compile this driver as a module, choose M here: the module will be called bfin-lq035q1-fb. config FB_BF537_LQ035 tristate "SHARP LQ035 TFT LCD (BF537 STAMP)" depends on FB && (BF534 || BF536 || BF537) && I2C_BLACKFIN_TWI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select BFIN_GPTIMERS help This is the framebuffer device for a SHARP LQ035Q7DB03 TFT LCD attached to a BF537. To compile this driver as a module, choose M here: the module will be called bf537-lq035. config FB_BFIN_7393 tristate "Blackfin ADV7393 Video encoder" depends on FB && BLACKFIN select I2C select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer device for a ADV7393 video encoder attached to a Blackfin on the PPI port. If your Blackfin board has a ADV7393 select Y. To compile this driver as a module, choose M here: the module will be called bfin_adv7393fb. choice prompt "Video mode support" depends on FB_BFIN_7393 default NTSC config NTSC bool 'NTSC 720x480' config PAL bool 'PAL 720x576' config NTSC_640x480 bool 'NTSC 640x480 (Experimental)' config PAL_640x480 bool 'PAL 640x480 (Experimental)' config NTSC_YCBCR bool 'NTSC 720x480 YCbCR input' config PAL_YCBCR bool 'PAL 720x576 YCbCR input' endchoice choice prompt "Size of ADV7393 frame buffer memory Single/Double Size" depends on (FB_BFIN_7393) default ADV7393_1XMEM config ADV7393_1XMEM bool 'Single' config ADV7393_2XMEM bool 'Double' endchoice config FB_STI tristate "HP STI frame buffer device support" depends on FB && PARISC select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select STI_CONSOLE select VT default y ---help--- STI refers to the HP "Standard Text Interface" which is a set of BIOS routines contained in a ROM chip in HP PA-RISC based machines. Enabling this option will implement the linux framebuffer device using calls to the STI BIOS routines for initialisation. If you enable this option, you will get a planar framebuffer device /dev/fb which will work on the most common HP graphic cards of the NGLE family, including the artist chips (in the 7xx and Bxxx series), HCRX, HCRX24, CRX, CRX24 and VisEG series. It is safe to enable this option, so you should probably say "Y". config FB_MAC bool "Generic Macintosh display support" depends on (FB = y) && MAC select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_MACMODES config FB_HP300 bool depends on (FB = y) && DIO select FB_CFB_IMAGEBLIT default y config FB_TGA tristate "TGA/SFB+ framebuffer support" depends on FB && (ALPHA || TC) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select BITREVERSE ---help--- This is the frame buffer device driver for generic TGA and SFB+ graphic cards. These include DEC ZLXp-E1, -E2 and -E3 PCI cards, also known as PBXGA-A, -B and -C, and DEC ZLX-E1, -E2 and -E3 TURBOchannel cards, also known as PMAGD-A, -B and -C. Due to hardware limitations ZLX-E2 and E3 cards are not supported for DECstation 5000/200 systems. Additionally due to firmware limitations these cards may cause troubles with booting DECstation 5000/240 and /260 systems, but are fully supported under Linux if you manage to get it going. ;-) Say Y if you have one of those. config FB_UVESA tristate "Userspace VESA VGA graphics support" depends on FB && CONNECTOR select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_MODE_HELPERS help This is the frame buffer driver for generic VBE 2.0 compliant graphic cards. It can also take advantage of VBE 3.0 features, such as refresh rate adjustment. This driver generally provides more features than vesafb but requires a userspace helper application called 'v86d'. See for more information. If unsure, say N. config FB_VESA bool "VESA VGA graphics support" depends on (FB = y) && X86 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_BOOT_VESA_SUPPORT help This is the frame buffer device driver for generic VESA 2.0 compliant graphic cards. The older VESA 1.2 cards are not supported. You will get a boot time penguin logo at no additional cost. Please read . If unsure, say Y. config FB_EFI bool "EFI-based Framebuffer Support" depends on (FB = y) && X86 && EFI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the EFI frame buffer device driver. If the firmware on your platform is EFI 1.10 or UEFI 2.0, select Y to add support for using the EFI framebuffer as your console. config FB_N411 tristate "N411 Apollo/Hecuba devkit support" depends on FB && X86 && MMU select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS select FB_DEFERRED_IO select FB_HECUBA help This enables support for the Apollo display controller in its Hecuba form using the n411 devkit. config FB_HGA tristate "Hercules mono graphics support" depends on FB && X86 help Say Y here if you have a Hercules mono graphics card. To compile this driver as a module, choose M here: the module will be called hgafb. As this card technology is at least 25 years old, most people will answer N here. config FB_SGIVW tristate "SGI Visual Workstation framebuffer support" depends on FB && X86_VISWS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help SGI Visual Workstation support for framebuffer graphics. config FB_GBE bool "SGI Graphics Backend frame buffer support" depends on (FB = y) && (SGI_IP32 || X86_VISWS) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for SGI Graphics Backend. This chip is used in SGI O2 and Visual Workstation 320/540. config FB_GBE_MEM int "Video memory size in MB" depends on FB_GBE default 4 help This is the amount of memory reserved for the framebuffer, which can be any value between 1MB and 8MB. config FB_SBUS bool "SBUS and UPA framebuffers" depends on (FB = y) && SPARC help Say Y if you want support for SBUS or UPA based frame buffer device. config FB_BW2 bool "BWtwo support" depends on (FB = y) && (SPARC && FB_SBUS) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the BWtwo frame buffer. config FB_CG3 bool "CGthree support" depends on (FB = y) && (SPARC && FB_SBUS) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the CGthree frame buffer. config FB_CG6 bool "CGsix (GX,TurboGX) support" depends on (FB = y) && (SPARC && FB_SBUS) select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the CGsix (GX, TurboGX) frame buffer. config FB_FFB bool "Creator/Creator3D/Elite3D support" depends on FB_SBUS && SPARC64 select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the Creator, Creator3D, and Elite3D graphics boards. config FB_TCX bool "TCX (SS4/SS5 only) support" depends on FB_SBUS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the TCX 24/8bit frame buffer. config FB_CG14 bool "CGfourteen (SX) support" depends on FB_SBUS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the CGfourteen frame buffer on Desktop SPARCsystems with the SX graphics option. config FB_P9100 bool "P9100 (Sparcbook 3 only) support" depends on FB_SBUS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the P9100 card supported on Sparcbook 3 machines. config FB_LEO bool "Leo (ZX) support" depends on FB_SBUS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the SBUS-based Sun ZX (leo) frame buffer cards. config FB_IGA bool "IGA 168x display support" depends on (FB = y) && SPARC32 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer device for the INTERGRAPHICS 1680 and successor frame buffer cards. config FB_XVR500 bool "Sun XVR-500 3DLABS Wildcat support" depends on (FB = y) && PCI && SPARC64 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer device for the Sun XVR-500 and similar graphics cards based upon the 3DLABS Wildcat chipset. The driver only works on sparc64 systems where the system firmware has mostly initialized the card already. It is treated as a completely dumb framebuffer device. config FB_XVR2500 bool "Sun XVR-2500 3DLABS Wildcat support" depends on (FB = y) && PCI && SPARC64 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer device for the Sun XVR-2500 and similar graphics cards based upon the 3DLABS Wildcat chipset. The driver only works on sparc64 systems where the system firmware has mostly initialized the card already. It is treated as a completely dumb framebuffer device. config FB_XVR1000 bool "Sun XVR-1000 support" depends on (FB = y) && SPARC64 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer device for the Sun XVR-1000 and similar graphics cards. The driver only works on sparc64 systems where the system firmware has mostly initialized the card already. It is treated as a completely dumb framebuffer device. config FB_PVR2 tristate "NEC PowerVR 2 display support" depends on FB && SH_DREAMCAST select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Say Y here if you have a PowerVR 2 card in your box. If you plan to run linux on your Dreamcast, you will have to say Y here. This driver may or may not work on other PowerVR 2 cards, but is totally untested. Use at your own risk. If unsure, say N. To compile this driver as a module, choose M here: the module will be called pvr2fb. You can pass several parameters to the driver at boot time or at module load time. The parameters look like "video=pvr2:XXX", where the meaning of XXX can be found at the end of the main source file (). Please see the file . config FB_EPSON1355 bool "Epson 1355 framebuffer support" depends on (FB = y) && ARCH_CEIVA select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Build in support for the SED1355 Epson Research Embedded RAMDAC LCD/CRT Controller (since redesignated as the S1D13505) as a framebuffer. Product specs at . config FB_S1D13XXX tristate "Epson S1D13XXX framebuffer support" depends on FB select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Support for S1D13XXX framebuffer device family (currently only working with S1D13806). Product specs at config FB_ATMEL tristate "AT91/AT32 LCD Controller support" depends on FB && HAVE_FB_ATMEL select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This enables support for the AT91/AT32 LCD Controller. config FB_INTSRAM bool "Frame Buffer in internal SRAM" depends on FB_ATMEL && ARCH_AT91SAM9261 help Say Y if you want to map Frame Buffer in internal SRAM. Say N if you want to let frame buffer in external SDRAM. config FB_ATMEL_STN bool "Use a STN display with AT91/AT32 LCD Controller" depends on FB_ATMEL && (MACH_AT91SAM9261EK || MACH_AT91SAM9G10EK) default n help Say Y if you want to connect a STN LCD display to the AT91/AT32 LCD Controller. Say N if you want to connect a TFT. If unsure, say N. config FB_NVIDIA tristate "nVidia Framebuffer Support" depends on FB && PCI select FB_BACKLIGHT if FB_NVIDIA_BACKLIGHT select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select BITREVERSE select VGASTATE help This driver supports graphics boards with the nVidia chips, TNT and newer. For very old chipsets, such as the RIVA128, then use the rivafb. Say Y if you have such a graphics board. To compile this driver as a module, choose M here: the module will be called nvidiafb. config FB_NVIDIA_I2C bool "Enable DDC Support" depends on FB_NVIDIA select FB_DDC help This enables I2C support for nVidia Chipsets. This is used only for getting EDID information from the attached display allowing for robust video mode handling and switching. Because fbdev-2.6 requires that drivers must be able to independently validate video mode parameters, you should say Y here. config FB_NVIDIA_DEBUG bool "Lots of debug output" depends on FB_NVIDIA default n help Say Y here if you want the nVidia driver to output all sorts of debugging information to provide to the maintainer when something goes wrong. config FB_NVIDIA_BACKLIGHT bool "Support for backlight control" depends on FB_NVIDIA default y help Say Y here if you want to control the backlight of your display. config FB_RIVA tristate "nVidia Riva support" depends on FB && PCI select FB_BACKLIGHT if FB_RIVA_BACKLIGHT select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select BITREVERSE select VGASTATE help This driver supports graphics boards with the nVidia Riva/Geforce chips. Say Y if you have such a graphics board. To compile this driver as a module, choose M here: the module will be called rivafb. config FB_RIVA_I2C bool "Enable DDC Support" depends on FB_RIVA select FB_DDC help This enables I2C support for nVidia Chipsets. This is used only for getting EDID information from the attached display allowing for robust video mode handling and switching. Because fbdev-2.6 requires that drivers must be able to independently validate video mode parameters, you should say Y here. config FB_RIVA_DEBUG bool "Lots of debug output" depends on FB_RIVA default n help Say Y here if you want the Riva driver to output all sorts of debugging information to provide to the maintainer when something goes wrong. config FB_RIVA_BACKLIGHT bool "Support for backlight control" depends on FB_RIVA default y help Say Y here if you want to control the backlight of your display. config FB_I810 tristate "Intel 810/815 support (EXPERIMENTAL)" depends on EXPERIMENTAL && FB && PCI && X86_32 && AGP_INTEL select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select VGASTATE help This driver supports the on-board graphics built in to the Intel 810 and 815 chipsets. Say Y if you have and plan to use such a board. To compile this driver as a module, choose M here: the module will be called i810fb. For more information, please read config FB_I810_GTF bool "use VESA Generalized Timing Formula" depends on FB_I810 help If you say Y, then the VESA standard, Generalized Timing Formula or GTF, will be used to calculate the required video timing values per video mode. Since the GTF allows nondiscrete timings (nondiscrete being a range of values as opposed to discrete being a set of values), you'll be able to use any combination of horizontal and vertical resolutions, and vertical refresh rates without having to specify your own timing parameters. This is especially useful to maximize the performance of an aging display, or if you just have a display with nonstandard dimensions. A VESA compliant monitor is recommended, but can still work with non-compliant ones. If you need or want this, then select this option. The timings may not be compliant with Intel's recommended values. Use at your own risk. If you say N, the driver will revert to discrete video timings using a set recommended by Intel in their documentation. If unsure, say N. config FB_I810_I2C bool "Enable DDC Support" depends on FB_I810 && FB_I810_GTF select FB_DDC help config FB_LE80578 tristate "Intel LE80578 (Vermilion) support" depends on FB && PCI && X86 select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This driver supports the LE80578 (Vermilion Range) chipset config FB_CARILLO_RANCH tristate "Intel Carillo Ranch support" depends on FB_LE80578 && FB && PCI && X86 help This driver supports the LE80578 (Carillo Ranch) board config FB_INTEL tristate "Intel 830M/845G/852GM/855GM/865G/915G/945G/945GM/965G/965GM support (EXPERIMENTAL)" depends on EXPERIMENTAL && FB && PCI && X86 && AGP_INTEL && EXPERT select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_BOOT_VESA_SUPPORT if FB_INTEL = y depends on !DRM_I915 help This driver supports the on-board graphics built in to the Intel 830M/845G/852GM/855GM/865G/915G/915GM/945G/945GM/965G/965GM chipsets. Say Y if you have and plan to use such a board. To make FB_INTELFB=Y work you need to say AGP_INTEL=y too. To compile this driver as a module, choose M here: the module will be called intelfb. For more information, please read config FB_INTEL_DEBUG bool "Intel driver Debug Messages" depends on FB_INTEL ---help--- Say Y here if you want the Intel driver to output all sorts of debugging information to provide to the maintainer when something goes wrong. config FB_INTEL_I2C bool "DDC/I2C for Intel framebuffer support" depends on FB_INTEL select FB_DDC default y help Say Y here if you want DDC/I2C support for your on-board Intel graphics. config FB_MATROX tristate "Matrox acceleration" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_TILEBLITTING select FB_MACMODES if PPC_PMAC ---help--- Say Y here if you have a Matrox Millennium, Matrox Millennium II, Matrox Mystique, Matrox Mystique 220, Matrox Productiva G100, Matrox Mystique G200, Matrox Millennium G200, Matrox Marvel G200 video, Matrox G400, G450 or G550 card in your box. To compile this driver as a module, choose M here: the module will be called matroxfb. You can pass several parameters to the driver at boot time or at module load time. The parameters look like "video=matroxfb:XXX", and are described in . config FB_MATROX_MILLENIUM bool "Millennium I/II support" depends on FB_MATROX help Say Y here if you have a Matrox Millennium or Matrox Millennium II video card. If you select "Advanced lowlevel driver options" below, you should check 4 bpp packed pixel, 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can also use font widths different from 8. config FB_MATROX_MYSTIQUE bool "Mystique support" depends on FB_MATROX help Say Y here if you have a Matrox Mystique or Matrox Mystique 220 video card. If you select "Advanced lowlevel driver options" below, you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can also use font widths different from 8. config FB_MATROX_G bool "G100/G200/G400/G450/G550 support" depends on FB_MATROX ---help--- Say Y here if you have a Matrox G100, G200, G400, G450 or G550 based video card. If you select "Advanced lowlevel driver options", you should check 8 bpp packed pixel, 16 bpp packed pixel, 24 bpp packed pixel and 32 bpp packed pixel. You can also use font widths different from 8. If you need support for G400 secondary head, you must say Y to "Matrox I2C support" and "G400 second head support" right below. G450/G550 secondary head and digital output are supported without additional modules. The driver starts in monitor mode. You must use the matroxset tool (available at ) to swap primary and secondary head outputs, or to change output mode. Secondary head driver always start in 640x480 resolution and you must use fbset to change it. Do not forget that second head supports only 16 and 32 bpp packed pixels, so it is a good idea to compile them into the kernel too. You can use only some font widths, as the driver uses generic painting procedures (the secondary head does not use acceleration engine). G450/G550 hardware can display TV picture only from secondary CRTC, and it performs no scaling, so picture must have 525 or 625 lines. config FB_MATROX_I2C tristate "Matrox I2C support" depends on FB_MATROX select FB_DDC ---help--- This drivers creates I2C buses which are needed for accessing the DDC (I2C) bus present on all Matroxes, an I2C bus which interconnects Matrox optional devices, like MGA-TVO on G200 and G400, and the secondary head DDC bus, present on G400 only. You can say Y or M here if you want to experiment with monitor detection code. You must say Y or M here if you want to use either second head of G400 or MGA-TVO on G200 or G400. If you compile it as module, it will create a module named i2c-matroxfb. config FB_MATROX_MAVEN tristate "G400 second head support" depends on FB_MATROX_G && FB_MATROX_I2C ---help--- WARNING !!! This support does not work with G450 !!! Say Y or M here if you want to use a secondary head (meaning two monitors in parallel) on G400 or MGA-TVO add-on on G200. Secondary head is not compatible with accelerated XFree 3.3.x SVGA servers - secondary head output is blanked while you are in X. With XFree 3.9.17 preview you can use both heads if you use SVGA over fbdev or the fbdev driver on first head and the fbdev driver on second head. If you compile it as module, two modules are created, matroxfb_crtc2 and matroxfb_maven. Matroxfb_maven is needed for both G200 and G400, matroxfb_crtc2 is needed only by G400. You must also load i2c-matroxfb to get it to run. The driver starts in monitor mode and you must use the matroxset tool (available at ) to switch it to PAL or NTSC or to swap primary and secondary head outputs. Secondary head driver also always start in 640x480 resolution, you must use fbset to change it. Also do not forget that second head supports only 16 and 32 bpp packed pixels, so it is a good idea to compile them into the kernel too. You can use only some font widths, as the driver uses generic painting procedures (the secondary head does not use acceleration engine). config FB_RADEON tristate "ATI Radeon display support" depends on FB && PCI select FB_BACKLIGHT if FB_RADEON_BACKLIGHT select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_MACMODES if PPC_OF help Choose this option if you want to use an ATI Radeon graphics card as a framebuffer device. There are both PCI and AGP versions. You don't need to choose this to run the Radeon in plain VGA mode. There is a product page at http://products.amd.com/en-us/GraphicCardResult.aspx config FB_RADEON_I2C bool "DDC/I2C for ATI Radeon support" depends on FB_RADEON select FB_DDC default y help Say Y here if you want DDC/I2C support for your Radeon board. config FB_RADEON_BACKLIGHT bool "Support for backlight control" depends on FB_RADEON default y help Say Y here if you want to control the backlight of your display. config FB_RADEON_DEBUG bool "Lots of debug output from Radeon driver" depends on FB_RADEON default n help Say Y here if you want the Radeon driver to output all sorts of debugging information to provide to the maintainer when something goes wrong. config FB_ATY128 tristate "ATI Rage128 display support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_BACKLIGHT if FB_ATY128_BACKLIGHT select FB_MACMODES if PPC_PMAC help This driver supports graphics boards with the ATI Rage128 chips. Say Y if you have such a graphics board and read . To compile this driver as a module, choose M here: the module will be called aty128fb. config FB_ATY128_BACKLIGHT bool "Support for backlight control" depends on FB_ATY128 default y help Say Y here if you want to control the backlight of your display. config FB_ATY tristate "ATI Mach64 display support" if PCI || ATARI depends on FB && !SPARC32 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_BACKLIGHT if FB_ATY_BACKLIGHT select FB_MACMODES if PPC help This driver supports graphics boards with the ATI Mach64 chips. Say Y if you have such a graphics board. To compile this driver as a module, choose M here: the module will be called atyfb. config FB_ATY_CT bool "Mach64 CT/VT/GT/LT (incl. 3D RAGE) support" depends on PCI && FB_ATY default y if SPARC64 && PCI help Say Y here to support use of ATI's 64-bit Rage boards (or other boards based on the Mach64 CT, VT, GT, and LT chipsets) as a framebuffer device. The ATI product support page for these boards is at . config FB_ATY_GENERIC_LCD bool "Mach64 generic LCD support (EXPERIMENTAL)" depends on FB_ATY_CT help Say Y if you have a laptop with an ATI Rage LT PRO, Rage Mobility, Rage XC, or Rage XL chipset. config FB_ATY_GX bool "Mach64 GX support" if PCI depends on FB_ATY default y if ATARI help Say Y here to support use of the ATI Mach64 Graphics Expression board (or other boards based on the Mach64 GX chipset) as a framebuffer device. The ATI product support page for these boards is at . config FB_ATY_BACKLIGHT bool "Support for backlight control" depends on FB_ATY default y help Say Y here if you want to control the backlight of your display. config FB_S3 tristate "S3 Trio/Virge support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_TILEBLITTING select FB_SVGALIB select VGASTATE select FONT_8x16 if FRAMEBUFFER_CONSOLE ---help--- Driver for graphics boards with S3 Trio / S3 Virge chip. config FB_SAVAGE tristate "S3 Savage support" depends on FB && PCI && EXPERIMENTAL select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select VGASTATE help This driver supports notebooks and computers with S3 Savage PCI/AGP chips. Say Y if you have such a graphics card. To compile this driver as a module, choose M here; the module will be called savagefb. config FB_SAVAGE_I2C bool "Enable DDC2 Support" depends on FB_SAVAGE select FB_DDC help This enables I2C support for S3 Savage Chipsets. This is used only for getting EDID information from the attached display allowing for robust video mode handling and switching. Because fbdev-2.6 requires that drivers must be able to independently validate video mode parameters, you should say Y here. config FB_SAVAGE_ACCEL bool "Enable Console Acceleration" depends on FB_SAVAGE default n help This option will compile in console acceleration support. If the resulting framebuffer console has bothersome glitches, then choose N here. config FB_SIS tristate "SiS/XGI display support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_BOOT_VESA_SUPPORT if FB_SIS = y help This is the frame buffer device driver for the SiS 300, 315, 330 and 340 series as well as XGI V3XT, V5, V8, Z7 graphics chipsets. Specs available at and . To compile this driver as a module, choose M here; the module will be called sisfb. config FB_SIS_300 bool "SiS 300 series support" depends on FB_SIS help Say Y here to support use of the SiS 300/305, 540, 630 and 730. config FB_SIS_315 bool "SiS 315/330/340 series and XGI support" depends on FB_SIS help Say Y here to support use of the SiS 315, 330 and 340 series (315/H/PRO, 55x, 650, 651, 740, 330, 661, 741, 760, 761) as well as XGI V3XT, V5, V8 and Z7. config FB_VIA tristate "VIA UniChrome (Pro) and Chrome9 display support" depends on FB && PCI && X86 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select I2C_ALGOBIT select I2C select GPIOLIB help This is the frame buffer device driver for Graphics chips of VIA UniChrome (Pro) Family (CLE266,PM800/CN400,P4M800CE/P4M800Pro/ CN700/VN800,CX700/VX700,P4M890) and Chrome9 Family (K8M890,CN896 /P4M900,VX800) Say Y if you have a VIA UniChrome graphics board. To compile this driver as a module, choose M here: the module will be called viafb. if FB_VIA config FB_VIA_DIRECT_PROCFS bool "direct hardware access via procfs (DEPRECATED)(DANGEROUS)" depends on FB_VIA default n help Allow direct hardware access to some output registers via procfs. This is dangerous but may provide the only chance to get the correct output device configuration. Its use is strongly discouraged. endif config FB_NEOMAGIC tristate "NeoMagic display support" depends on FB && PCI select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select VGASTATE help This driver supports notebooks with NeoMagic PCI chips. Say Y if you have such a graphics card. To compile this driver as a module, choose M here: the module will be called neofb. config FB_KYRO tristate "IMG Kyro support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Say Y here if you have a STG4000 / Kyro / PowerVR 3 based graphics board. To compile this driver as a module, choose M here: the module will be called kyrofb. config FB_3DFX tristate "3Dfx Banshee/Voodoo3/Voodoo5 display support" depends on FB && PCI select FB_CFB_IMAGEBLIT select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_MODE_HELPERS help This driver supports graphics boards with the 3Dfx Banshee, Voodoo3 or VSA-100 (aka Voodoo4/5) chips. Say Y if you have such a graphics board. To compile this driver as a module, choose M here: the module will be called tdfxfb. config FB_3DFX_ACCEL bool "3Dfx Acceleration functions (EXPERIMENTAL)" depends on FB_3DFX && EXPERIMENTAL ---help--- This will compile the 3Dfx Banshee/Voodoo3/VSA-100 frame buffer device driver with acceleration functions. config FB_3DFX_I2C bool "Enable DDC/I2C support" depends on FB_3DFX && EXPERIMENTAL select FB_DDC default y help Say Y here if you want DDC/I2C support for your 3dfx Voodoo3. config FB_VOODOO1 tristate "3Dfx Voodoo Graphics (sst1) support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Say Y here if you have a 3Dfx Voodoo Graphics (Voodoo1/sst1) or Voodoo2 (cvg) based graphics card. To compile this driver as a module, choose M here: the module will be called sstfb. WARNING: Do not use any application that uses the 3D engine (namely glide) while using this driver. Please read the for supported options and other important info support. config FB_VT8623 tristate "VIA VT8623 support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_TILEBLITTING select FB_SVGALIB select VGASTATE select FONT_8x16 if FRAMEBUFFER_CONSOLE ---help--- Driver for CastleRock integrated graphics core in the VIA VT8623 [Apollo CLE266] chipset. config FB_TRIDENT tristate "Trident/CyberXXX/CyberBlade support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- This is the frame buffer device driver for Trident PCI/AGP chipsets. Supported chipset families are TGUI 9440/96XX, 3DImage, Blade3D and Blade XP. There are also integrated versions of these chips called CyberXXXX, CyberImage or CyberBlade. These chips are mostly found in laptops but also on some motherboards including early VIA EPIA motherboards. For more information, read Say Y if you have such a graphics board. To compile this driver as a module, choose M here: the module will be called tridentfb. config FB_ARK tristate "ARK 2000PV support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB_TILEBLITTING select FB_SVGALIB select VGASTATE select FONT_8x16 if FRAMEBUFFER_CONSOLE ---help--- Driver for PCI graphics boards with ARK 2000PV chip and ICS 5342 RAMDAC. config FB_PM3 tristate "Permedia3 support (EXPERIMENTAL)" depends on FB && PCI && EXPERIMENTAL select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the 3DLabs Permedia3 chipset, used in Formac ProFormance III, 3DLabs Oxygen VX1 & similar boards, 3DLabs Permedia3 Create!, Appian Jeronimo 2000 and maybe other boards. config FB_CARMINE tristate "Fujitsu carmine frame buffer support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the Fujitsu Carmine chip. The driver provides two independent frame buffer devices. choice depends on FB_CARMINE prompt "DRAM timing" default FB_CARMINE_DRAM_EVAL config FB_CARMINE_DRAM_EVAL bool "Eval board timings" help Use timings which work on the eval card. config CARMINE_DRAM_CUSTOM bool "Custom board timings" help Use custom board timings. endchoice config FB_AU1100 bool "Au1100 LCD Driver" depends on (FB = y) && MIPS && SOC_AU1100 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer driver for the AMD Au1100 SOC. It can drive various panels and CRTs by passing in kernel cmd line option au1100fb:panel=. config FB_AU1200 bool "Au1200 LCD Driver" depends on (FB = y) && MIPS && SOC_AU1200 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the framebuffer driver for the AMD Au1200 SOC. It can drive various panels and CRTs by passing in kernel cmd line option au1200fb:panel=. config FB_VT8500 bool "VT8500 LCD Driver" depends on (FB = y) && ARM && ARCH_VT8500 && VTWM_VERSION_VT8500 select FB_WMT_GE_ROPS select FB_SYS_IMAGEBLIT help This is the framebuffer driver for VIA VT8500 integrated LCD controller. config FB_WM8505 bool "WM8505 frame buffer support" depends on (FB = y) && ARM && ARCH_VT8500 && VTWM_VERSION_WM8505 select FB_WMT_GE_ROPS select FB_SYS_IMAGEBLIT help This is the framebuffer driver for WonderMedia WM8505 integrated LCD controller. source "drivers/video/geode/Kconfig" config FB_HIT tristate "HD64461 Frame Buffer support" depends on FB && HD64461 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This is the frame buffer device driver for the Hitachi HD64461 LCD frame buffer card. config FB_PMAG_AA bool "PMAG-AA TURBOchannel framebuffer support" depends on (FB = y) && TC select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Support for the PMAG-AA TURBOchannel framebuffer card (1280x1024x1) used mainly in the MIPS-based DECstation series. config FB_PMAG_BA tristate "PMAG-BA TURBOchannel framebuffer support" depends on FB && TC select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Support for the PMAG-BA TURBOchannel framebuffer card (1024x864x8) used mainly in the MIPS-based DECstation series. config FB_PMAGB_B tristate "PMAGB-B TURBOchannel framebuffer support" depends on FB && TC select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Support for the PMAGB-B TURBOchannel framebuffer card used mainly in the MIPS-based DECstation series. The card is currently only supported in 1280x1024x8 mode. config FB_MAXINE bool "Maxine (Personal DECstation) onboard framebuffer support" depends on (FB = y) && MACH_DECSTATION select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Support for the onboard framebuffer (1024x768x8) in the Personal DECstation series (Personal DECstation 5000/20, /25, /33, /50, Codename "Maxine"). config FB_G364 bool "G364 frame buffer support" depends on (FB = y) && (MIPS_MAGNUM_4000 || OLIVETTI_M700) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help The G364 driver is the framebuffer used in MIPS Magnum 4000 and Olivetti M700-10 systems. config FB_68328 bool "Motorola 68328 native frame buffer support" depends on (FB = y) && (M68328 || M68EZ328 || M68VZ328) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Say Y here if you want to support the built-in frame buffer of the Motorola 68328 CPU family. config FB_PXA168 tristate "PXA168/910 LCD framebuffer support" depends on FB && (CPU_PXA168 || CPU_PXA910) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for the built-in LCD controller in the Marvell MMP processor. config FB_PXA tristate "PXA LCD framebuffer support" depends on FB && ARCH_PXA select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for the built-in LCD controller in the Intel PXA2x0 processor. This driver is also available as a module ( = code which can be inserted and removed from the running kernel whenever you want). The module will be called pxafb. If you want to compile it as a module, say M here and read . If unsure, say N. config FB_PXA_OVERLAY bool "Support PXA27x/PXA3xx Overlay(s) as framebuffer" default n depends on FB_PXA && (PXA27x || PXA3xx) config FB_PXA_SMARTPANEL bool "PXA Smartpanel LCD support" default n depends on FB_PXA config FB_PXA_PARAMETERS bool "PXA LCD command line parameters" default n depends on FB_PXA ---help--- Enable the use of kernel command line or module parameters to configure the physical properties of the LCD panel when using the PXA LCD driver. This option allows you to override the panel parameters supplied by the platform in order to support multiple different models of flatpanel. If you will only be using a single model of flatpanel then you can safely leave this option disabled. describes the available parameters. config PXA3XX_GCU tristate "PXA3xx 2D graphics accelerator driver" depends on FB_PXA help Kernelspace driver for the 2D graphics controller unit (GCU) found on PXA3xx processors. There is a counterpart driver in the DirectFB suite, see http://www.directfb.org/ If you compile this as a module, it will be called pxa3xx_gcu. config FB_MBX tristate "2700G LCD framebuffer support" depends on FB && ARCH_PXA select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Framebuffer driver for the Intel 2700G (Marathon) Graphics Accelerator config FB_MBX_DEBUG bool "Enable debugging info via debugfs" depends on FB_MBX && DEBUG_FS default n ---help--- Enable this if you want debugging information using the debug filesystem (debugfs) If unsure, say N. config FB_FSL_DIU tristate "Freescale DIU framebuffer support" depends on FB && FSL_SOC select FB_MODE_HELPERS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select PPC_LIB_RHEAP ---help--- Framebuffer driver for the Freescale SoC DIU config FB_W100 tristate "W100 frame buffer support" depends on FB && ARCH_PXA select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for the w100 as found on the Sharp SL-Cxx series. It can also drive the w3220 chip found on iPAQ hx4700. This driver is also available as a module ( = code which can be inserted and removed from the running kernel whenever you want). The module will be called w100fb. If you want to compile it as a module, say M here and read . If unsure, say N. config FB_SH_MOBILE_LCDC tristate "SuperH Mobile LCDC framebuffer support" depends on FB && (SUPERH || ARCH_SHMOBILE) && HAVE_CLK select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS select FB_DEFERRED_IO select FB_BACKLIGHT select SH_MIPI_DSI if SH_LCD_MIPI_DSI ---help--- Frame buffer driver for the on-chip SH-Mobile LCD controller. config FB_SH_MOBILE_HDMI tristate "SuperH Mobile HDMI controller support" depends on FB_SH_MOBILE_LCDC select FB_MODE_HELPERS select SOUND select SND select SND_SOC ---help--- Driver for the on-chip SH-Mobile HDMI controller. config FB_TMIO tristate "Toshiba Mobile IO FrameBuffer support" depends on FB && MFD_CORE select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for the Toshiba Mobile IO integrated as found on the Sharp SL-6000 series This driver is also available as a module ( = code which can be inserted and removed from the running kernel whenever you want). The module will be called tmiofb. If you want to compile it as a module, say M here and read . If unsure, say N. config FB_TMIO_ACCELL bool "tmiofb acceleration" depends on FB_TMIO default y config FB_S3C tristate "Samsung S3C framebuffer support" depends on FB && S3C_DEV_FB select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for the built-in FB controller in the Samsung SoC line from the S3C2443 onwards, including the S3C2416, S3C2450, and the S3C64XX series such as the S3C6400 and S3C6410. These chips all have the same basic framebuffer design with the actual capabilities depending on the chip. For instance the S3C6400 and S3C6410 support 4 hardware windows whereas the S3C24XX series currently only have two. Currently the support is only for the S3C6400 and S3C6410 SoCs. config FB_S3C_DEBUG_REGWRITE bool "Debug register writes" depends on FB_S3C ---help--- Show all register writes via printk(KERN_DEBUG) config FB_S3C2410 tristate "S3C2410 LCD framebuffer support" depends on FB && ARCH_S3C2410 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for the built-in LCD controller in the Samsung S3C2410 processor. This driver is also available as a module ( = code which can be inserted and removed from the running kernel whenever you want). The module will be called s3c2410fb. If you want to compile it as a module, say M here and read . If unsure, say N. config FB_S3C2410_DEBUG bool "S3C2410 lcd debug messages" depends on FB_S3C2410 help Turn on debugging messages. Note that you can set/unset at run time through sysfs config FB_NUC900 bool "NUC900 LCD framebuffer support" depends on FB && ARCH_W90X900 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for the built-in LCD controller in the Nuvoton NUC900 processor config GPM1040A0_320X240 bool "Giantplus Technology GPM1040A0 320x240 Color TFT LCD" depends on FB_NUC900 config FB_NUC900_DEBUG bool "NUC900 lcd debug messages" depends on FB_NUC900 help Turn on debugging messages. Note that you can set/unset at run time through sysfs config FB_SM501 tristate "Silicon Motion SM501 framebuffer support" depends on FB && MFD_SM501 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for the CRT and LCD controllers in the Silicon Motion SM501. This driver is also available as a module ( = code which can be inserted and removed from the running kernel whenever you want). The module will be called sm501fb. If you want to compile it as a module, say M here and read . If unsure, say N. config FB_UDL tristate "Displaylink USB Framebuffer support" depends on FB && USB select FB_MODE_HELPERS select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS select FB_DEFERRED_IO ---help--- This is a kernel framebuffer driver for DisplayLink USB devices. Supports fbdev clients like xf86-video-fbdev, kdrive, fbi, and mplayer -vo fbdev. Supports all USB 2.0 era DisplayLink devices. To compile as a module, choose M here: the module name is udlfb. config FB_PNX4008_DUM tristate "Display Update Module support on Philips PNX4008 board" depends on FB && ARCH_PNX4008 ---help--- Say Y here to enable support for PNX4008 Display Update Module (DUM) config FB_PNX4008_DUM_RGB tristate "RGB Framebuffer support on Philips PNX4008 board" depends on FB_PNX4008_DUM select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Say Y here to enable support for PNX4008 RGB Framebuffer config FB_IBM_GXT4500 tristate "Framebuffer support for IBM GXT4500P adaptor" depends on FB && PPC select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Say Y here to enable support for the IBM GXT4500P display adaptor, found on some IBM System P (pSeries) machines. config FB_PS3 tristate "PS3 GPU framebuffer driver" depends on FB && PS3_PS3AV select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS select VT_HW_CONSOLE_BINDING if FRAMEBUFFER_CONSOLE ---help--- Include support for the virtual frame buffer in the PS3 platform. config FB_PS3_DEFAULT_SIZE_M int "PS3 default frame buffer size (in MiB)" depends on FB_PS3 default 9 ---help--- This is the default size (in MiB) of the virtual frame buffer in the PS3. The default value can be overridden on the kernel command line using the "ps3fb" option (e.g. "ps3fb=9M"); config FB_XILINX tristate "Xilinx frame buffer support" depends on FB && (XILINX_VIRTEX || MICROBLAZE) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Include support for the Xilinx ML300/ML403 reference design framebuffer. ML300 carries a 640*480 LCD display on the board, ML403 uses a standard DB15 VGA connector. config FB_COBALT tristate "Cobalt server LCD frame buffer support" depends on FB && MIPS_COBALT config FB_SH7760 bool "SH7760/SH7763/SH7720/SH7721 LCDC support" depends on FB && (CPU_SUBTYPE_SH7760 || CPU_SUBTYPE_SH7763 \ || CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721) select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Support for the SH7760/SH7763/SH7720/SH7721 integrated (D)STN/TFT LCD Controller. Supports display resolutions up to 1024x1024 pixel, grayscale and color operation, with depths ranging from 1 bpp to 8 bpp monochrome and 8, 15 or 16 bpp color; 90 degrees clockwise display rotation for panels <= 320 pixel horizontal resolution. config FB_DA8XX tristate "DA8xx/OMAP-L1xx Framebuffer support" depends on FB && ARCH_DAVINCI_DA8XX select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- This is the frame buffer device driver for the TI LCD controller found on DA8xx/OMAP-L1xx SoCs. If unsure, say N. config FB_VIRTUAL tristate "Virtual Frame Buffer support (ONLY FOR TESTING!)" depends on FB select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS ---help--- This is a `virtual' frame buffer device. It operates on a chunk of unswappable kernel memory instead of on the memory of a graphics board. This means you cannot see any output sent to this frame buffer device, while it does consume precious memory. The main use of this frame buffer device is testing and debugging the frame buffer subsystem. Do NOT enable it for normal systems! To protect the innocent, it has to be enabled explicitly at boot time using the kernel option `video=vfb:'. To compile this driver as a module, choose M here: the module will be called vfb. In order to load it, you must use the vfb_enable=1 option. If unsure, say N. config XEN_FBDEV_FRONTEND tristate "Xen virtual frame buffer support" depends on FB && XEN select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS select FB_DEFERRED_IO select XEN_XENBUS_FRONTEND default y help This driver implements the front-end of the Xen virtual frame buffer driver. It communicates with a back-end in another domain. config FB_METRONOME tristate "E-Ink Metronome/8track controller support" depends on FB select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS select FB_DEFERRED_IO help This driver implements support for the E-Ink Metronome controller. The pre-release name for this device was 8track and could also have been called by some vendors as PVI-nnnn. config FB_MB862XX tristate "Fujitsu MB862xx GDC support" depends on FB select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Frame buffer driver for Fujitsu Carmine/Coral-P(A)/Lime controllers. config FB_MB862XX_PCI_GDC bool "Carmine/Coral-P(A) GDC" depends on PCI && FB_MB862XX ---help--- This enables framebuffer support for Fujitsu Carmine/Coral-P(A) PCI graphics controller devices. config FB_MB862XX_LIME bool "Lime GDC" depends on FB_MB862XX depends on OF && !FB_MB862XX_PCI_GDC depends on PPC select FB_FOREIGN_ENDIAN select FB_LITTLE_ENDIAN ---help--- Framebuffer support for Fujitsu Lime GDC on host CPU bus. config FB_EP93XX tristate "EP93XX frame buffer support" depends on FB && ARCH_EP93XX select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Framebuffer driver for the Cirrus Logic EP93XX series of processors. This driver is also available as a module. The module will be called ep93xx-fb. config FB_PRE_INIT_FB bool "Don't reinitialize, use bootloader's GDC/Display configuration" depends on FB && FB_MB862XX_LIME ---help--- Select this option if display contents should be inherited as set by the bootloader. config FB_MSM tristate "MSM Framebuffer support" depends on FB && ARCH_MSM select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT config FB_MX3 tristate "MX3 Framebuffer support" depends on FB && MX3_IPU select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT default y help This is a framebuffer device for the i.MX31 LCD Controller. So far only synchronous displays are supported. If you plan to use an LCD display with your i.MX31 system, say Y here. config FB_BROADSHEET tristate "E-Ink Broadsheet/Epson S1D13521 controller support" depends on FB select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS select FB_DEFERRED_IO help This driver implements support for the E-Ink Broadsheet controller. The release name for this device was Epson S1D13521 and could also have been called by other names when coupled with a bridge adapter. config FB_JZ4740 tristate "JZ4740 LCD framebuffer support" depends on FB && MACH_JZ4740 select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT help Framebuffer support for the JZ4740 SoC. config FB_MXS tristate "MXS LCD framebuffer support" depends on FB && ARCH_MXS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Framebuffer support for the MXS SoC. config FB_PUV3_UNIGFX tristate "PKUnity v3 Unigfx framebuffer support" depends on FB && UNICORE32 && ARCH_PUV3 select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS help Choose this option if you want to use the Unigfx device as a framebuffer device. Without the support of PCI & AGP. config FB_GLAMO tristate "Smedia Glamo 336x/337x framebuffer support" depends on FB && MFD_GLAMO select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Frame buffer driver for the LCD controller in the Smedia Glamo 336x/337x. This driver is also available as a module ( = code which can be inserted and removed from the running kernel whenever you want). The module will be called glamofb. If you want to compile it as a module, say M here and read . If unsure, say N. source "drivers/video/omap/Kconfig" source "drivers/video/omap2/Kconfig" source "drivers/video/backlight/Kconfig" source "drivers/video/display/Kconfig" if VT source "drivers/video/console/Kconfig" endif if FB || SGI_NEWPORT_CONSOLE source "drivers/video/logo/Kconfig" endif endmenu config FB_OMAP tristate "OMAP frame buffer support (EXPERIMENTAL)" depends on FB && (OMAP2_DSS = "n") depends on ARCH_OMAP1 || ARCH_OMAP2 || ARCH_OMAP3 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select TWL4030_CORE if MACH_OMAP_2430SDP help Frame buffer driver for OMAP based boards. config FB_OMAP_LCD_VGA bool "Use LCD in VGA mode" depends on MACH_OMAP_3430SDP || MACH_OMAP_LDP help Set LCD resolution as VGA (640 X 480). Default resolution without this option is QVGA(320 X 240). Please take a look at drivers/video/omap/lcd_ldp.c file for lcd driver code. choice depends on FB_OMAP && MACH_OVERO prompt "Screen resolution" default FB_OMAP_079M3R help Selected desired screen resolution config FB_OMAP_031M3R boolean "640 x 480 @ 60 Hz Reduced blanking" config FB_OMAP_048M3R boolean "800 x 600 @ 60 Hz Reduced blanking" config FB_OMAP_079M3R boolean "1024 x 768 @ 60 Hz Reduced blanking" config FB_OMAP_092M9R boolean "1280 x 720 @ 60 Hz Reduced blanking" endchoice config FB_OMAP_LCDC_EXTERNAL bool "External LCD controller support" depends on FB_OMAP help Say Y here, if you want to have support for boards with an external LCD controller connected to the SoSSI/RFBI interface. config FB_OMAP_LCDC_HWA742 bool "Epson HWA742 LCD controller support" depends on FB_OMAP && FB_OMAP_LCDC_EXTERNAL help Say Y here if you want to have support for the external Epson HWA742 LCD controller. config FB_OMAP_LCDC_BLIZZARD bool "Epson Blizzard LCD controller support" depends on FB_OMAP && FB_OMAP_LCDC_EXTERNAL help Say Y here if you want to have support for the external Epson Blizzard LCD controller. config FB_OMAP_MANUAL_UPDATE bool "Default to manual update mode" depends on FB_OMAP && FB_OMAP_LCDC_EXTERNAL help Say Y here, if your user-space applications are capable of notifying the frame buffer driver when a change has occurred in the frame buffer content and thus a reload of the image data to the external frame buffer is required. If unsure, say N. config FB_OMAP_LCD_MIPID bool "MIPI DBI-C/DCS compatible LCD support" depends on FB_OMAP && SPI_MASTER help Say Y here if you want to have support for LCDs compatible with the Mobile Industry Processor Interface DBI-C/DCS specification. (Supported LCDs: Philips LPH8923, Sharp LS041Y3) config FB_OMAP_BOOTLOADER_INIT bool "Check bootloader initialization" depends on FB_OMAP || FB_OMAP2 help Say Y here if you want to enable checking if the bootloader has already initialized the display controller. In this case the driver will skip the initialization. config FB_OMAP_CONSISTENT_DMA_SIZE int "Consistent DMA memory size (MB)" depends on FB_OMAP range 1 14 default 2 help Increase the DMA consistent memory size according to your video memory needs, for example if you want to use multiple planes. The size must be 2MB aligned. If unsure say 1. config FB_OMAP_DMA_TUNE bool "Set DMA SDRAM access priority high" depends on FB_OMAP && ARCH_OMAP1 help On systems in which video memory is in system memory (SDRAM) this will speed up graphics DMA operations. If you have such a system and want to use rotation answer yes. Answer no if you have a dedicated video memory, or don't use any of the accelerated features. # # Logo configuration # menuconfig LOGO bool "Bootup logo" depends on FB || SGI_NEWPORT_CONSOLE help Enable and select frame buffer bootup logos. if LOGO config FB_LOGO_EXTRA bool depends on FB=y default y if SPU_BASE config LOGO_LINUX_MONO bool "Standard black and white Linux logo" default y config LOGO_LINUX_VGA16 bool "Standard 16-color Linux logo" default y config LOGO_LINUX_CLUT224 bool "Standard 224-color Linux logo" default y config LOGO_BLACKFIN_VGA16 bool "16-colour Blackfin Processor Linux logo" depends on BLACKFIN default y config LOGO_BLACKFIN_CLUT224 bool "224-colour Blackfin Processor Linux logo" depends on BLACKFIN default y config LOGO_DEC_CLUT224 bool "224-color Digital Equipment Corporation Linux logo" depends on MACH_DECSTATION || ALPHA default y config LOGO_MAC_CLUT224 bool "224-color Macintosh Linux logo" depends on MAC default y config LOGO_PARISC_CLUT224 bool "224-color PA-RISC Linux logo" depends on PARISC default y config LOGO_SGI_CLUT224 bool "224-color SGI Linux logo" depends on SGI_IP22 || SGI_IP27 || SGI_IP32 || X86_VISWS default y config LOGO_SUN_CLUT224 bool "224-color Sun Linux logo" depends on SPARC default y config LOGO_SUPERH_MONO bool "Black and white SuperH Linux logo" depends on SUPERH default y config LOGO_SUPERH_VGA16 bool "16-color SuperH Linux logo" depends on SUPERH default y config LOGO_SUPERH_CLUT224 bool "224-color SuperH Linux logo" depends on SUPERH default y config LOGO_M32R_CLUT224 bool "224-color M32R Linux logo" depends on M32R default y endif # LOGO # # Video configuration # menu "Console display driver support" config VGA_CONSOLE bool "VGA text console" if EXPERT || !X86 depends on !4xx && !8xx && !SPARC && !M68K && !PARISC && !FRV && !SUPERH && !BLACKFIN && !AVR32 && !MN10300 && (!ARM || ARCH_FOOTBRIDGE || ARCH_INTEGRATOR || ARCH_NETWINDER) default y help Saying Y here will allow you to use Linux in text mode through a display that complies with the generic VGA standard. Virtually everyone wants that. The program SVGATextMode can be used to utilize SVGA video cards to their full potential in text mode. Download it from . Say Y. config VGACON_SOFT_SCROLLBACK bool "Enable Scrollback Buffer in System RAM" depends on VGA_CONSOLE default n help The scrollback buffer of the standard VGA console is located in the VGA RAM. The size of this RAM is fixed and is quite small. If you require a larger scrollback buffer, this can be placed in System RAM which is dynamically allocated during initialization. Placing the scrollback buffer in System RAM will slightly slow down the console. If you want this feature, say 'Y' here and enter the amount of RAM to allocate for this buffer. If unsure, say 'N'. config VGACON_SOFT_SCROLLBACK_SIZE int "Scrollback Buffer Size (in KB)" depends on VGACON_SOFT_SCROLLBACK range 1 1024 default "64" help Enter the amount of System RAM to allocate for the scrollback buffer. Each 64KB will give you approximately 16 80x25 screenfuls of scrollback buffer config MDA_CONSOLE depends on !M68K && !PARISC && ISA tristate "MDA text console (dual-headed) (EXPERIMENTAL)" ---help--- Say Y here if you have an old MDA or monochrome Hercules graphics adapter in your system acting as a second head ( = video card). You will then be able to use two monitors with your Linux system. Do not say Y here if your MDA card is the primary card in your system; the normal VGA driver will handle it. To compile this driver as a module, choose M here: the module will be called mdacon. If unsure, say N. config SGI_NEWPORT_CONSOLE tristate "SGI Newport Console support" depends on SGI_IP22 help Say Y here if you want the console on the Newport aka XL graphics card of your Indy. Most people say Y here. # bool 'IODC console' CONFIG_IODC_CONSOLE config DUMMY_CONSOLE bool depends on VGA_CONSOLE!=y || SGI_NEWPORT_CONSOLE!=y default y config DUMMY_CONSOLE_COLUMNS int "Initial number of console screen columns" depends on PARISC && DUMMY_CONSOLE default "160" help The default value is 160, which should fit a 1280x1024 monitor. Select 80 if you use a 640x480 resolution by default. config DUMMY_CONSOLE_ROWS int "Initial number of console screen rows" depends on PARISC && DUMMY_CONSOLE default "64" help The default value is 64, which should fit a 1280x1024 monitor. Select 25 if you use a 640x480 resolution by default. config FRAMEBUFFER_CONSOLE tristate "Framebuffer Console support" depends on FB select CRC32 help Low-level framebuffer-based console driver. config FRAMEBUFFER_CONSOLE_DETECT_PRIMARY bool "Map the console to the primary display device" depends on FRAMEBUFFER_CONSOLE default n ---help--- If this option is selected, the framebuffer console will automatically select the primary display device (if the architecture supports this feature). Otherwise, the framebuffer console will always select the first framebuffer driver that is loaded. The latter is the default behavior. You can always override the automatic selection of the primary device by using the fbcon=map: boot option. If unsure, select n. config FRAMEBUFFER_CONSOLE_ROTATION bool "Framebuffer Console Rotation" depends on FRAMEBUFFER_CONSOLE help Enable display rotation for the framebuffer console. This is done in software and may be significantly slower than a normally oriented display. Note that the rotation is done at the console level only such that other users of the framebuffer will remain normally oriented. config STI_CONSOLE bool "STI text console" depends on PARISC default y help The STI console is the builtin display/keyboard on HP-PARISC machines. Say Y here to build support for it into your kernel. The alternative is to use your primary serial port as a console. config FONTS bool "Select compiled-in fonts" depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE help Say Y here if you would like to use fonts other than the default your frame buffer console usually use. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about foreign fonts. If unsure, say N (the default choices are safe). config FONT_8x8 bool "VGA 8x8 font" if FONTS depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE default y if !SPARC && !FONTS help This is the "high resolution" font for the VGA frame buffer (the one provided by the text console 80x50 (and higher) modes). Note that this is a poor quality font. The VGA 8x16 font is quite a lot more readable. Given the resolution provided by the frame buffer device, answer N here is safe. config FONT_8x16 bool "VGA 8x16 font" if FONTS depends on FRAMEBUFFER_CONSOLE || SGI_NEWPORT_CONSOLE || STI_CONSOLE || USB_SISUSBVGA_CON default y if !SPARC && !FONTS help This is the "high resolution" font for the VGA frame buffer (the one provided by the VGA text console 80x25 mode. If unsure, say Y. config FONT_6x11 bool "Mac console 6x11 font (not supported by all drivers)" if FONTS depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE default y if !SPARC && !FONTS && MAC help Small console font with Macintosh-style high-half glyphs. Some Mac framebuffer drivers don't support this one at all. config FONT_7x14 bool "console 7x14 font (not supported by all drivers)" if FONTS depends on FRAMEBUFFER_CONSOLE help Console font with characters just a bit smaller than the default. If the standard 8x16 font is a little too big for you, say Y. Otherwise, say N. config FONT_PEARL_8x8 bool "Pearl (old m68k) console 8x8 font" if FONTS depends on FRAMEBUFFER_CONSOLE default y if !SPARC && !FONTS && AMIGA help Small console font with PC-style control-character and high-half glyphs. config FONT_ACORN_8x8 bool "Acorn console 8x8 font" if FONTS depends on FRAMEBUFFER_CONSOLE default y if !SPARC && !FONTS && ARM && ARCH_ACORN help Small console font with PC-style control characters and high-half glyphs. config FONT_MINI_4x6 bool "Mini 4x6 font" depends on !SPARC && FONTS config FONT_SUN8x16 bool "Sparc console 8x16 font" depends on FRAMEBUFFER_CONSOLE && (!SPARC && FONTS || SPARC) help This is the high resolution console font for Sun machines. Say Y. config FONT_SUN12x22 bool "Sparc console 12x22 font (not supported by all drivers)" depends on FRAMEBUFFER_CONSOLE && (!SPARC && FONTS || SPARC) help This is the high resolution console font for Sun machines with very big letters (like the letters used in the SPARC PROM). If the standard font is unreadable for you, say Y, otherwise say N. config FONT_10x18 bool "console 10x18 font (not supported by all drivers)" if FONTS depends on FRAMEBUFFER_CONSOLE help This is a high resolution console font for machines with very big letters. It fits between the sun 12x22 and the normal 8x16 font. If other fonts are too big or too small for you, say Y, otherwise say N. endmenu # # Backlight & LCD drivers configuration # menuconfig BACKLIGHT_LCD_SUPPORT bool "Backlight & LCD device support" help Enable this to be able to choose the drivers for controlling the backlight and the LCD panel on some platforms, for example on PDAs. if BACKLIGHT_LCD_SUPPORT # # LCD # config LCD_CLASS_DEVICE tristate "Lowlevel LCD controls" default m help This framework adds support for low-level control of LCD. Some framebuffer devices connect to platform-specific LCD modules in order to have a platform-specific way to control the flat panel (contrast and applying power to the LCD (not to the backlight!)). To have support for your specific LCD panel you will have to select the proper drivers which depend on this option. if LCD_CLASS_DEVICE config LCD_CORGI tristate "LCD Panel support for SHARP corgi/spitz model" depends on SPI_MASTER && PXA_SHARPSL help Say y here to support the LCD panels usually found on SHARP corgi (C7x0) and spitz (Cxx00) models. config LCD_L4F00242T03 tristate "Epson L4F00242T03 LCD" depends on SPI_MASTER && GENERIC_GPIO help SPI driver for Epson L4F00242T03. This provides basic support for init and powering the LCD up/down through a sysfs interface. config LCD_LMS283GF05 tristate "Samsung LMS283GF05 LCD" depends on SPI_MASTER && GENERIC_GPIO help SPI driver for Samsung LMS283GF05. This provides basic support for powering the LCD up/down through a sysfs interface. config LCD_LTV350QV tristate "Samsung LTV350QV LCD Panel" depends on SPI_MASTER help If you have a Samsung LTV350QV LCD panel, say y to include a power control driver for it. The panel starts up in power off state, so you need this driver in order to see any output. The LTV350QV panel is present on all ATSTK1000 boards. config LCD_ILI9320 tristate help If you have a panel based on the ILI9320 controller chip then say y to include a power driver for it. config LCD_TDO24M tristate "Toppoly TDO24M and TDO35S LCD Panels support" depends on SPI_MASTER help If you have a Toppoly TDO24M/TDO35S series LCD panel, say y here to include the support for it. config LCD_VGG2432A4 tristate "VGG2432A4 LCM device support" depends on SPI_MASTER select LCD_ILI9320 help If you have a VGG2432A4 panel based on the ILI9320 controller chip then say y to include a power driver for it. config LCD_PLATFORM tristate "Platform LCD controls" help This driver provides a platform-device registered LCD power control interface. config LCD_TOSA tristate "Sharp SL-6000 LCD Driver" depends on SPI && MACH_TOSA help If you have an Sharp SL-6000 Zaurus say Y to enable a driver for its LCD. config LCD_HP700 tristate "HP Jornada 700 series LCD Driver" depends on SA1100_JORNADA720_SSP && !PREEMPT default y help If you have an HP Jornada 700 series handheld (710/720/728) say Y to enable LCD control driver. config LCD_S6E63M0 tristate "S6E63M0 AMOLED LCD Driver" depends on SPI && BACKLIGHT_CLASS_DEVICE default n help If you have an S6E63M0 LCD Panel, say Y to enable its LCD control driver. config LCD_LD9040 tristate "LD9040 AMOLED LCD Driver" depends on SPI && BACKLIGHT_CLASS_DEVICE default n help If you have an LD9040 Panel, say Y to enable its control driver. config LCD_JBT6K74 tristate "TPO JBT6K74-AS TFT display ASIC control interface" depends on SPI_MASTER && SYSFS && LCD_CLASS_DEVICE help SPI driver for the control interface of TFT panels containing the TPO JBT6K74-AS controller ASIC, such as the TPO TD028TTEC1 TFT diplay module used in the Openmoko Freerunner GSM phone. The control interface is required for display operation, as it controls power management, display timing and gamma calibration. This driver can also be build as a module, if so it will be called jbt6k74. endif # LCD_CLASS_DEVICE # # Backlight # config BACKLIGHT_CLASS_DEVICE tristate "Lowlevel Backlight controls" default m help This framework adds support for low-level control of the LCD backlight. This includes support for brightness and power. To have support for your specific LCD panel you will have to select the proper drivers which depend on this option. if BACKLIGHT_CLASS_DEVICE config BACKLIGHT_ATMEL_LCDC bool "Atmel LCDC Contrast-as-Backlight control" depends on FB_ATMEL default y if MACH_SAM9261EK || MACH_SAM9G10EK || MACH_SAM9263EK help This provides a backlight control internal to the Atmel LCDC driver. If the LCD "contrast control" on your board is wired so it controls the backlight brightness, select this option to export this as a PWM-based backlight control. If in doubt, it's safe to enable this option; it doesn't kick in unless the board's description says it's wired that way. config BACKLIGHT_ATMEL_PWM tristate "Atmel PWM backlight control" depends on ATMEL_PWM help Say Y here if you want to use the PWM peripheral in Atmel AT91 and AVR32 devices. This driver will need additional platform data to know which PWM instance to use and how to configure it. To compile this driver as a module, choose M here: the module will be called atmel-pwm-bl. config BACKLIGHT_EP93XX tristate "Cirrus EP93xx Backlight Driver" depends on FB_EP93XX help If you have a LCD backlight connected to the BRIGHT output of the EP93xx, say Y here to enable this driver. To compile this driver as a module, choose M here: the module will be called ep93xx_bl. config BACKLIGHT_GENERIC tristate "Generic (aka Sharp Corgi) Backlight Driver" default y help Say y to enable the generic platform backlight driver previously known as the Corgi backlight driver. If you have a Sharp Zaurus SL-C7xx, SL-Cxx00 or SL-6000x say y. config BACKLIGHT_LOCOMO tristate "Sharp LOCOMO LCD/Backlight Driver" depends on SHARP_LOCOMO default y help If you have a Sharp Zaurus SL-5500 (Collie) or SL-5600 (Poodle) say y to enable the LCD/backlight driver. config BACKLIGHT_OMAP1 tristate "OMAP1 PWL-based LCD Backlight" depends on ARCH_OMAP1 default y help This driver controls the LCD backlight level and power for the PWL module of OMAP1 processors. Say Y if your board uses this hardware. config BACKLIGHT_HP680 tristate "HP Jornada 680 Backlight Driver" depends on SH_HP6XX default y help If you have a HP Jornada 680, say y to enable the backlight driver. config BACKLIGHT_HP700 tristate "HP Jornada 700 series Backlight Driver" depends on SA1100_JORNADA720_SSP && !PREEMPT default y help If you have an HP Jornada 700 series, say Y to include backlight control driver. config BACKLIGHT_PROGEAR tristate "Frontpath ProGear Backlight Driver" depends on PCI && X86 help If you have a Frontpath ProGear say Y to enable the backlight driver. config BACKLIGHT_CARILLO_RANCH tristate "Intel Carillo Ranch Backlight Driver" depends on LCD_CLASS_DEVICE && PCI && X86 && FB_LE80578 help If you have a Intel LE80578 (Carillo Ranch) say Y to enable the backlight driver. config BACKLIGHT_PWM tristate "Generic PWM based Backlight Driver" depends on HAVE_PWM help If you have a LCD backlight adjustable by PWM, say Y to enable this driver. config BACKLIGHT_DA903X tristate "Backlight Driver for DA9030/DA9034 using WLED" depends on PMIC_DA903X help If you have a LCD backlight connected to the WLED output of DA9030 or DA9034 WLED output, say Y here to enable this driver. config BACKLIGHT_MAX8925 tristate "Backlight driver for MAX8925" depends on MFD_MAX8925 help If you have a LCD backlight connected to the WLED output of MAX8925 WLED output, say Y here to enable this driver. config BACKLIGHT_APPLE tristate "Apple Backlight Driver" depends on X86 && ACPI help If you have an Intel-based Apple say Y to enable a driver for its backlight. config BACKLIGHT_TOSA tristate "Sharp SL-6000 Backlight Driver" depends on I2C && MACH_TOSA && LCD_TOSA help If you have an Sharp SL-6000 Zaurus say Y to enable a driver for its backlight config BACKLIGHT_SAHARA tristate "Tabletkiosk Sahara Touch-iT Backlight Driver" depends on X86 help If you have a Tabletkiosk Sahara Touch-iT, say y to enable the backlight driver. config BACKLIGHT_WM831X tristate "WM831x PMIC Backlight Driver" depends on MFD_WM831X help If you have a backlight driven by the ISINK and DCDC of a WM831x PMIC say y to enable the backlight driver for it. config BACKLIGHT_ADX tristate "Avionic Design Xanthos Backlight Driver" depends on ARCH_PXA_ADX default y help Say Y to enable the backlight driver on Avionic Design Xanthos-based boards. config BACKLIGHT_ADP5520 tristate "Backlight Driver for ADP5520/ADP5501 using WLED" depends on PMIC_ADP5520 help If you have a LCD backlight connected to the BST/BL_SNK output of ADP5520 or ADP5501, say Y here to enable this driver. To compile this driver as a module, choose M here: the module will be called adp5520_bl. config BACKLIGHT_ADP8860 tristate "Backlight Driver for ADP8860/ADP8861/ADP8863 using WLED" depends on BACKLIGHT_CLASS_DEVICE && I2C select NEW_LEDS select LEDS_CLASS help If you have a LCD backlight connected to the ADP8860, ADP8861 or ADP8863 say Y here to enable this driver. To compile this driver as a module, choose M here: the module will be called adp8860_bl. config BACKLIGHT_88PM860X tristate "Backlight Driver for 88PM8606 using WLED" depends on MFD_88PM860X help Say Y to enable the backlight driver for Marvell 88PM8606. config BACKLIGHT_PCF50633 tristate "Backlight driver for NXP PCF50633 MFD" depends on BACKLIGHT_CLASS_DEVICE && MFD_PCF50633 help If you have a backlight driven by a NXP PCF50633 MFD, say Y here to enable its driver. endif # BACKLIGHT_CLASS_DEVICE endif # BACKLIGHT_LCD_SUPPORT # # Geode family framebuffer configuration # config FB_GEODE bool "AMD Geode family framebuffer support (EXPERIMENTAL)" depends on FB && PCI && EXPERIMENTAL && X86 ---help--- Say 'Y' here to allow you to select framebuffer drivers for the AMD Geode family of processors. config FB_GEODE_LX tristate "AMD Geode LX framebuffer support (EXPERIMENTAL)" depends on FB && FB_GEODE select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Framebuffer driver for the display controller integrated into the AMD Geode LX processors. To compile this driver as a module, choose M here: the module will be called lxfb. If unsure, say N. config FB_GEODE_GX tristate "AMD Geode GX framebuffer support (EXPERIMENTAL)" depends on FB && FB_GEODE && EXPERIMENTAL select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Framebuffer driver for the display controller integrated into the AMD Geode GX processors. To compile this driver as a module, choose M here: the module will be called gxfb. If unsure, say N. config FB_GEODE_GX1 tristate "AMD Geode GX1 framebuffer support (EXPERIMENTAL)" depends on FB && FB_GEODE && EXPERIMENTAL select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Framebuffer driver for the display controller integrated into the AMD Geode GX1 processor. To compile this driver as a module, choose M here: the module will be called gx1fb. If unsure, say N. # # Display drivers configuration # menu "Display device support" config DISPLAY_SUPPORT tristate "Display panel/monitor support" ---help--- This framework adds support for low-level control of a display. This includes support for power. Enable this to be able to choose the drivers for controlling the physical display panel/monitor on some platforms. This not only covers LCD displays for PDAs but also other types of displays such as CRT, TVout etc. To have support for your specific display panel you will have to select the proper drivers which depend on this option. comment "Display hardware drivers" depends on DISPLAY_SUPPORT endmenu config OMAP2_VRAM bool config OMAP2_VRFB bool source "drivers/video/omap2/dss/Kconfig" source "drivers/video/omap2/omapfb/Kconfig" source "drivers/video/omap2/displays/Kconfig" menuconfig FB_OMAP2 tristate "OMAP2+ frame buffer support (EXPERIMENTAL)" depends on FB && OMAP2_DSS select OMAP2_VRAM select OMAP2_VRFB if ARCH_OMAP2 || ARCH_OMAP3 select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Frame buffer driver for OMAP2+ based boards. config FB_OMAP2_DEBUG_SUPPORT bool "Debug support for OMAP2+ FB" default y depends on FB_OMAP2 help Support for debug output. You have to enable the actual printing with 'debug' module parameter. config FB_OMAP2_NUM_FBS int "Number of framebuffers" range 1 10 default 3 depends on FB_OMAP2 help Select the number of framebuffers created. OMAP2/3 has 3 overlays so normally this would be 3. menu "OMAP2/3 Display Device Drivers" depends on OMAP2_DSS config PANEL_GENERIC_DPI tristate "Generic DPI Panel" help Generic DPI panel driver. Supports DVI output for Beagle and OMAP3 SDP. Supports LCD Panel used in TI SDP3430 and EVM boards, OMAP3517 EVM boards and CM-T35. config PANEL_LGPHILIPS_LB035Q02 tristate "LG.Philips LB035Q02 LCD Panel" depends on OMAP2_DSS && SPI help LCD Panel used on the Gumstix Overo Palo35 config PANEL_SHARP_LS037V7DW01 tristate "Sharp LS037V7DW01 LCD Panel" depends on OMAP2_DSS select BACKLIGHT_CLASS_DEVICE help LCD Panel used in TI's SDP3430 and EVM boards config PANEL_NEC_NL8048HL11_01B tristate "NEC NL8048HL11-01B Panel" depends on OMAP2_DSS help This NEC NL8048HL11-01B panel is TFT LCD used in the Zoom2/3/3630 sdp boards. config PANEL_TAAL tristate "Taal DSI Panel" depends on OMAP2_DSS_DSI help Taal DSI command mode panel from TPO. config PANEL_TPO_TD043MTEA1 tristate "TPO TD043MTEA1 LCD Panel" depends on OMAP2_DSS && SPI help LCD Panel used in OMAP3 Pandora config PANEL_ACX565AKM tristate "ACX565AKM Panel" depends on OMAP2_DSS_SDI && SPI select BACKLIGHT_CLASS_DEVICE help This is the LCD panel used on Nokia N900 endmenu menuconfig OMAP2_DSS tristate "OMAP2+ Display Subsystem support (EXPERIMENTAL)" depends on ARCH_OMAP2PLUS help OMAP2+ Display Subsystem support. if OMAP2_DSS config OMAP2_VRAM_SIZE int "VRAM size (MB)" range 0 32 default 0 help The amount of SDRAM to reserve at boot time for video RAM use. This VRAM will be used by omapfb and other drivers that need large continuous RAM area for video use. You can also set this with "vram=" kernel argument, or in the board file. config OMAP2_DSS_DEBUG_SUPPORT bool "Debug support" default y help This enables debug messages. You need to enable printing with 'debug' module parameter. config OMAP2_DSS_COLLECT_IRQ_STATS bool "Collect DSS IRQ statistics" depends on OMAP2_DSS_DEBUG_SUPPORT default n help Collect DSS IRQ statistics, printable via debugfs. The statistics can be found from /omapdss/dispc_irq for DISPC interrupts, and /omapdss/dsi_irq for DSI interrupts. config OMAP2_DSS_DPI bool "DPI support" default y help DPI Interface. This is the Parallel Display Interface. config OMAP2_DSS_RFBI bool "RFBI support" default n help MIPI DBI support (RFBI, Remote Framebuffer Interface, in Texas Instrument's terminology). DBI is a bus between the host processor and a peripheral, such as a display or a framebuffer chip. See http://www.mipi.org/ for DBI spesifications. config OMAP2_DSS_VENC bool "VENC support" default y help OMAP Video Encoder support for S-Video and composite TV-out. config OMAP4_DSS_HDMI bool "HDMI support" depends on ARCH_OMAP4 default y help HDMI Interface. This adds the High Definition Multimedia Interface. See http://www.hdmi.org/ for HDMI specification. config OMAP2_DSS_SDI bool "SDI support" depends on ARCH_OMAP3 default n help SDI (Serial Display Interface) support. SDI is a high speed one-way display serial bus between the host processor and a display. config OMAP2_DSS_DSI bool "DSI support" depends on ARCH_OMAP3 default n help MIPI DSI (Display Serial Interface) support. DSI is a high speed half-duplex serial interface between the host processor and a peripheral, such as a display or a framebuffer chip. See http://www.mipi.org/ for DSI spesifications. config OMAP2_DSS_USE_DSI_PLL bool "Use DSI PLL for PCLK (EXPERIMENTAL)" default n depends on OMAP2_DSS_DSI help Use DSI PLL to generate pixel clock. Currently only for DPI output. DSI PLL can be used to generate higher and more precise pixel clocks. config OMAP2_DSS_FAKE_VSYNC bool "Fake VSYNC irq from manual update displays" default n help If this is selected, DSI will generate a fake DISPC VSYNC interrupt when DSI has sent a frame. This is only needed with DSI or RFBI displays using manual mode, and you want VSYNC to, for example, time animation. config OMAP2_DSS_MIN_FCK_PER_PCK int "Minimum FCK/PCK ratio (for scaling)" range 0 32 default 0 help This can be used to adjust the minimum FCK/PCK ratio. With this you can make sure that DISPC FCK is at least n x PCK. Video plane scaling requires higher FCK than normally. If this is set to 0, there's no extra constraint on the DISPC FCK. However, the FCK will at minimum be 2xPCK (if active matrix) or 3xPCK (if passive matrix). Max FCK is 173MHz, so this doesn't work if your PCK is very high. endif config MCA_LEGACY bool "Legacy MCA API Support" depends on MCA help This compiles in support for the old slot based MCA API. If you have an unconverted MCA driver, you will need to say Y here. It is safe to say Y anyway. config MCA_PROC_FS bool "Support for the mca entry in /proc" depends on MCA_LEGACY && PROC_FS help If you want the old style /proc/mca directory in addition to the new style sysfs say Y here. # # USB Network devices configuration # comment "Networking support is needed for USB Network Adapter support" depends on USB && !NET menu "USB Network Adapters" depends on USB && NET config USB_CATC tristate "USB CATC NetMate-based Ethernet device support (EXPERIMENTAL)" depends on EXPERIMENTAL select CRC32 ---help--- Say Y if you want to use one of the following 10Mbps USB Ethernet device based on the EL1210A chip. Supported devices are: Belkin F5U011 Belkin F5U111 CATC NetMate CATC NetMate II smartBridges smartNIC This driver makes the adapter appear as a normal Ethernet interface, typically on eth0, if it is the only ethernet device, or perhaps on eth1, if you have a PCI or ISA ethernet card installed. To compile this driver as a module, choose M here: the module will be called catc. config USB_KAWETH tristate "USB KLSI KL5USB101-based ethernet device support" ---help--- Say Y here if you want to use one of the following 10Mbps only USB Ethernet adapters based on the KLSI KL5KUSB101B chipset: 3Com 3C19250 ADS USB-10BT ATEN USB Ethernet ASANTE USB To Ethernet Adapter AOX Endpoints USB Ethernet Correga K.K. D-Link DSB-650C and DU-E10 Entrega / Portgear E45 I-O DATA USB-ET/T Jaton USB Ethernet Device Adapter Kingston Technology USB Ethernet Adapter Linksys USB10T Mobility USB-Ethernet Adapter NetGear EA-101 Peracom Enet and Enet2 Portsmith Express Ethernet Adapter Shark Pocket Adapter SMC 2202USB Sony Vaio port extender This driver is likely to work with most 10Mbps only USB Ethernet adapters, including some "no brand" devices. It does NOT work on SmartBridges smartNIC or on Belkin F5U111 devices - you should use the CATC NetMate driver for those. If you are not sure which one you need, select both, and the correct one should be selected for you. This driver makes the adapter appear as a normal Ethernet interface, typically on eth0, if it is the only ethernet device, or perhaps on eth1, if you have a PCI or ISA ethernet card installed. To compile this driver as a module, choose M here: the module will be called kaweth. config USB_PEGASUS tristate "USB Pegasus/Pegasus-II based ethernet device support" select MII ---help--- Say Y here if you know you have Pegasus or Pegasus-II based adapter. If in doubt then look at for the complete list of supported devices. If your particular adapter is not in the list and you are _sure_ it is Pegasus or Pegasus II based then send me vendor and device IDs. To compile this driver as a module, choose M here: the module will be called pegasus. config USB_RTL8150 tristate "USB RTL8150 based ethernet device support (EXPERIMENTAL)" depends on EXPERIMENTAL select MII help Say Y here if you have RTL8150 based usb-ethernet adapter. Send me any comments you may have. You can also check for updates at . To compile this driver as a module, choose M here: the module will be called rtl8150. config USB_USBNET tristate "Multi-purpose USB Networking Framework" select MII ---help--- This driver supports several kinds of network links over USB, with "minidrivers" built around a common network driver core that supports deep queues for efficient transfers. (This gives better performance with small packets and at high speeds). The USB host runs "usbnet", and the other end of the link might be: - Another USB host, when using USB "network" or "data transfer" cables. These are often used to network laptops to PCs, like "Laplink" parallel cables or some motherboards. These rely on specialized chips from many suppliers. - An intelligent USB gadget, perhaps embedding a Linux system. These include PDAs running Linux (iPaq, Yopy, Zaurus, and others), and devices that interoperate using the standard CDC-Ethernet specification (including many cable modems). - Network adapter hardware (like those for 10/100 Ethernet) which uses this driver framework. The link will appear with a name like "usb0", when the link is a two-node link, or "eth0" for most CDC-Ethernet devices. Those two-node links are most easily managed with Ethernet Bridging (CONFIG_BRIDGE) instead of routing. For more information see . To compile this driver as a module, choose M here: the module will be called usbnet. config USB_NET_AX8817X tristate "ASIX AX88xxx Based USB 2.0 Ethernet Adapters" depends on USB_USBNET select CRC32 default y help This option adds support for ASIX AX88xxx based USB 2.0 10/100 Ethernet adapters. This driver should work with at least the following devices: * Aten UC210T * ASIX AX88172 * Billionton Systems, USB2AR * Buffalo LUA-U2-KTX * Corega FEther USB2-TX * D-Link DUB-E100 * Hawking UF200 * Linksys USB200M * Netgear FA120 * Sitecom LN-029 * Intellinet USB 2.0 Ethernet * ST Lab USB 2.0 Ethernet * TrendNet TU2-ET100 This driver creates an interface named "ethX", where X depends on what other networking devices you have in use. config USB_NET_CDCETHER tristate "CDC Ethernet support (smart devices such as cable modems)" depends on USB_USBNET default y help This option supports devices conforming to the Communication Device Class (CDC) Ethernet Control Model, a specification that's easy to implement in device firmware. The CDC specifications are available from . CDC Ethernet is an implementation option for DOCSIS cable modems that support USB connectivity, used for non-Microsoft USB hosts. The Linux-USB CDC Ethernet Gadget driver is an open implementation. This driver should work with at least the following devices: * Dell Wireless 5530 HSPA * Ericsson PipeRider (all variants) * Ericsson Mobile Broadband Module (all variants) * Motorola (DM100 and SB4100) * Broadcom Cable Modem (reference design) * Toshiba (PCX1100U and F3507g/F3607gw) * ... This driver creates an interface named "ethX", where X depends on what other networking devices you have in use. However, if the IEEE 802 "local assignment" bit is set in the address, a "usbX" name is used instead. config USB_NET_CDC_EEM tristate "CDC EEM support" depends on USB_USBNET && EXPERIMENTAL help This option supports devices conforming to the Communication Device Class (CDC) Ethernet Emulation Model, a specification that's easy to implement in device firmware. The CDC EEM specifications are available from . This driver creates an interface named "ethX", where X depends on what other networking devices you have in use. However, if the IEEE 802 "local assignment" bit is set in the address, a "usbX" name is used instead. config USB_NET_CDC_NCM tristate "CDC NCM support" depends on USB_USBNET default y help This driver provides support for CDC NCM (Network Control Model Device USB Class Specification). The CDC NCM specification is available from . Say "y" to link the driver statically, or "m" to build a dynamically linked module. This driver should work with at least the following devices: * ST-Ericsson M700 LTE FDD/TDD Mobile Broadband Modem (ref. design) * ST-Ericsson M5730 HSPA+ Mobile Broadband Modem (reference design) * ST-Ericsson M570 HSPA+ Mobile Broadband Modem (reference design) * ST-Ericsson M343 HSPA Mobile Broadband Modem (reference design) * Ericsson F5521gw Mobile Broadband Module config USB_NET_DM9601 tristate "Davicom DM9601 based USB 1.1 10/100 ethernet devices" depends on USB_USBNET select CRC32 help This option adds support for Davicom DM9601 based USB 1.1 10/100 Ethernet adapters. config USB_NET_SMSC75XX tristate "SMSC LAN75XX based USB 2.0 gigabit ethernet devices" depends on USB_USBNET select CRC32 help This option adds support for SMSC LAN95XX based USB 2.0 Gigabit Ethernet adapters. config USB_NET_SMSC95XX tristate "SMSC LAN95XX based USB 2.0 10/100 ethernet devices" depends on USB_USBNET select CRC32 help This option adds support for SMSC LAN95XX based USB 2.0 10/100 Ethernet adapters. config USB_NET_GL620A tristate "GeneSys GL620USB-A based cables" depends on USB_USBNET help Choose this option if you're using a host-to-host cable, or PC2PC motherboard, with this chip. Note that the half-duplex "GL620USB" is not supported. config USB_NET_NET1080 tristate "NetChip 1080 based cables (Laplink, ...)" default y depends on USB_USBNET help Choose this option if you're using a host-to-host cable based on this design: one NetChip 1080 chip and supporting logic, optionally with LEDs that indicate traffic config USB_NET_PLUSB tristate "Prolific PL-2301/2302 based cables" # if the handshake/init/reset problems, from original 'plusb', # are ever resolved ... then remove "experimental" depends on USB_USBNET && EXPERIMENTAL help Choose this option if you're using a host-to-host cable with one of these chips. config USB_NET_MCS7830 tristate "MosChip MCS7830 based Ethernet adapters" depends on USB_USBNET help Choose this option if you're using a 10/100 Ethernet USB2 adapter based on the MosChip 7830 controller. This includes adapters marketed under the DeLOCK brand. config USB_NET_RNDIS_HOST tristate "Host for RNDIS and ActiveSync devices (EXPERIMENTAL)" depends on USB_USBNET && EXPERIMENTAL select USB_NET_CDCETHER help This option enables hosting "Remote NDIS" USB networking links, as encouraged by Microsoft (instead of CDC Ethernet!) for use in various devices that may only support this protocol. A variant of this protocol (with even less public documentation) seems to be at the root of Microsoft's "ActiveSync" too. Avoid using this protocol unless you have no better options. The protocol specification is incomplete, and is controlled by (and for) Microsoft; it isn't an "Open" ecosystem or market. config USB_NET_CDC_SUBSET tristate "Simple USB Network Links (CDC Ethernet subset)" depends on USB_USBNET default y help This driver module supports USB network devices that can work without any device-specific information. Select it if you have one of these drivers. Note that while many USB host-to-host cables can work in this mode, that may mean not being able to talk to Win32 systems or more commonly not being able to handle certain events (like replugging the host on the other end) very well. Also, these devices will not generally have permanently assigned Ethernet addresses. config USB_ALI_M5632 boolean "ALi M5632 based 'USB 2.0 Data Link' cables" depends on USB_NET_CDC_SUBSET help Choose this option if you're using a host-to-host cable based on this design, which supports USB 2.0 high speed. config USB_AN2720 boolean "AnchorChips 2720 based cables (Xircom PGUNET, ...)" depends on USB_NET_CDC_SUBSET help Choose this option if you're using a host-to-host cable based on this design. Note that AnchorChips is now a Cypress brand. config USB_BELKIN boolean "eTEK based host-to-host cables (Advance, Belkin, ...)" depends on USB_NET_CDC_SUBSET default y help Choose this option if you're using a host-to-host cable based on this design: two NetChip 2890 chips and an Atmel microcontroller, with LEDs that indicate traffic. config USB_ARMLINUX boolean "Embedded ARM Linux links (iPaq, ...)" depends on USB_NET_CDC_SUBSET default y help Choose this option to support the "usb-eth" networking driver used by most of the ARM Linux community with device controllers such as the SA-11x0 and PXA-25x UDCs, or the tftp capabilities in some PXA versions of the "blob" boot loader. Linux-based "Gumstix" PXA-25x based systems use this protocol to talk with other Linux systems. Although the ROMs shipped with Sharp Zaurus products use a different link level framing protocol, you can have them use this simpler protocol by installing a different kernel. config USB_EPSON2888 boolean "Epson 2888 based firmware (DEVELOPMENT)" depends on USB_NET_CDC_SUBSET help Choose this option to support the usb networking links used by some sample firmware from Epson. config USB_KC2190 boolean "KT Technology KC2190 based cables (InstaNet)" depends on USB_NET_CDC_SUBSET && EXPERIMENTAL help Choose this option if you're using a host-to-host cable with one of these chips. config USB_NET_ZAURUS tristate "Sharp Zaurus (stock ROMs) and compatible" depends on USB_USBNET select USB_NET_CDCETHER select CRC32 default y help Choose this option to support the usb networking links used by Zaurus models like the SL-5000D, SL-5500, SL-5600, A-300, B-500. This also supports some related device firmware, as used in some PDAs from Olympus and some cell phones from Motorola. If you install an alternate image, such as the Linux 2.6 based versions of OpenZaurus, you should no longer need to support this protocol. Only the "eth-fd" or "net_fd" drivers in these devices really need this non-conformant variant of CDC Ethernet (or in some cases CDC MDLM) protocol, not "g_ether". config USB_NET_CX82310_ETH tristate "Conexant CX82310 USB ethernet port" depends on USB_USBNET help Choose this option if you're using a Conexant CX82310-based ADSL router with USB ethernet port. This driver is for routers only, it will not work with ADSL modems (use cxacru driver instead). config USB_HSO tristate "Option USB High Speed Mobile Devices" depends on USB && RFKILL default n help Choose this option if you have an Option HSDPA/HSUPA card. These cards support downlink speeds of 7.2Mbps or greater. To compile this driver as a module, choose M here: the module will be called hso. config USB_NET_INT51X1 tristate "Intellon PLC based usb adapter" depends on USB_USBNET help Choose this option if you're using a 14Mb USB-based PLC (Powerline Communications) solution with an Intellon INT51x1/INT5200 chip, like the "devolo dLan duo". config USB_CDC_PHONET tristate "CDC Phonet support" depends on PHONET help Choose this option to support the Phonet interface to a Nokia cellular modem, as found on most Nokia handsets with the "PC suite" USB profile. config USB_IPHETH tristate "Apple iPhone USB Ethernet driver" default n ---help--- Module used to share Internet connection (tethering) from your iPhone (Original, 3G and 3GS) to your system. Note that you need userspace libraries and programs that are needed to pair your device with your system and that understand the iPhone protocol. For more information: http://giagio.com/wiki/moin.cgi/iPhoneEthernetDriver config USB_SIERRA_NET tristate "USB-to-WWAN Driver for Sierra Wireless modems" depends on USB_USBNET help Choose this option if you have a Sierra Wireless USB-to-WWAN device. To compile this driver as a module, choose M here: the module will be called sierra_net. config USB_VL600 tristate "LG VL600 modem dongle" depends on USB_NET_CDCETHER select USB_ACM help Select this if you want to use an LG Electronics 4G/LTE usb modem called VL600. This driver only handles the ethernet interface exposed by the modem firmware. To establish a connection you will first need a userspace program that sends the right command to the modem through its CDC ACM port, and most likely also a DHCP client. See this thread about using the 4G modem from Verizon: http://ubuntuforums.org/showpost.php?p=10589647&postcount=17 endmenu # # CAIF physical drivers # comment "CAIF transport drivers" config CAIF_TTY tristate "CAIF TTY transport driver" depends on CAIF default n ---help--- The CAIF TTY transport driver is a Line Discipline (ldisc) identified as N_CAIF. When this ldisc is opened from user space it will redirect the TTY's traffic into the CAIF stack. config CAIF_SPI_SLAVE tristate "CAIF SPI transport driver for slave interface" depends on CAIF && HAS_DMA default n ---help--- The CAIF Link layer SPI Protocol driver for Slave SPI interface. This driver implements a platform driver to accommodate for a platform specific SPI device. A sample CAIF SPI Platform device is provided in Documentation/networking/caif/spi_porting.txt config CAIF_SPI_SYNC bool "Next command and length in start of frame" depends on CAIF_SPI_SLAVE default n ---help--- Putting the next command and length in the start of the frame can help to synchronize to the next transfer in case of over or under-runs. This option also needs to be enabled on the modem. config CAIF_SHM tristate "CAIF shared memory protocol driver" depends on CAIF && U5500_MBOX default n ---help--- The CAIF shared memory protocol driver for the STE UX5500 platform. menu "Infrared-port device drivers" depends on IRDA!=n comment "SIR device drivers" config IRTTY_SIR tristate "IrTTY (uses Linux serial driver)" depends on IRDA help Say Y here if you want to build support for the IrTTY line discipline. To compile it as a module, choose M here: the module will be called irtty-sir. IrTTY makes it possible to use Linux's own serial driver for all IrDA ports that are 16550 compatible. Most IrDA chips are 16550 compatible so you should probably say Y to this option. Using IrTTY will however limit the speed of the connection to 115200 bps (IrDA SIR mode). If unsure, say Y. config BFIN_SIR tristate "Blackfin SIR on UART" depends on BLACKFIN && IRDA default n help Say Y here if your want to enable SIR function on Blackfin UART devices. To activate this driver you can start irattach like: "irattach irda0 -s" Saying M, it will be built as a module named bfin_sir. Note that you need to turn off one of the serial drivers for SIR to use that UART. config BFIN_SIR0 bool "Blackfin SIR on UART0" depends on BFIN_SIR && !SERIAL_BFIN_UART0 config BFIN_SIR1 bool "Blackfin SIR on UART1" depends on BFIN_SIR && !SERIAL_BFIN_UART1 && (!BF531 && !BF532 && !BF533 && !BF561) config BFIN_SIR2 bool "Blackfin SIR on UART2" depends on BFIN_SIR && !SERIAL_BFIN_UART2 && (BF54x || BF538 || BF539) config BFIN_SIR3 bool "Blackfin SIR on UART3" depends on BFIN_SIR && !SERIAL_BFIN_UART3 && (BF54x) choice prompt "SIR Mode" depends on BFIN_SIR default SIR_BFIN_DMA config SIR_BFIN_DMA bool "DMA mode" depends on !DMA_UNCACHED_NONE config SIR_BFIN_PIO bool "PIO mode" endchoice comment "Dongle support" config SH_SIR tristate "SuperH SIR on UART" depends on IRDA && SUPERH && \ (CPU_SUBTYPE_SH7722 || CPU_SUBTYPE_SH7723 || \ CPU_SUBTYPE_SH7724) default n help Say Y here if your want to enable SIR function on SuperH UART devices. config DONGLE bool "Serial dongle support" depends on IRTTY_SIR help Say Y here if you have an infrared device that connects to your computer's serial port. These devices are called dongles. Then say Y or M to the driver for your particular dongle below. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about serial dongles. config ESI_DONGLE tristate "ESI JetEye PC dongle" depends on IRTTY_SIR && DONGLE && IRDA help Say Y here if you want to build support for the Extended Systems JetEye PC dongle. To compile it as a module, choose M here. The ESI dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ESI dongles you will have to start irattach like this: "irattach -d esi". config ACTISYS_DONGLE tristate "ACTiSYS IR-220L and IR220L+ dongle" depends on IRTTY_SIR && DONGLE && IRDA help Say Y here if you want to build support for the ACTiSYS IR-220L and IR220L+ dongles. To compile it as a module, choose M here. The ACTiSYS dongles attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ACTiSYS dongles you will have to start irattach like this: "irattach -d actisys" or "irattach -d actisys+". config TEKRAM_DONGLE tristate "Tekram IrMate 210B dongle" depends on IRTTY_SIR && DONGLE && IRDA help Say Y here if you want to build support for the Tekram IrMate 210B dongle. To compile it as a module, choose M here. The Tekram dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Tekram dongles you will have to start irattach like this: "irattach -d tekram". config TOIM3232_DONGLE tristate "TOIM3232 IrDa dongle" depends on IRTTY_SIR && DONGLE && IRDA help Say Y here if you want to build support for the Vishay/Temic TOIM3232 and TOIM4232 based dongles. To compile it as a module, choose M here. config LITELINK_DONGLE tristate "Parallax LiteLink dongle" depends on IRTTY_SIR && DONGLE && IRDA help Say Y here if you want to build support for the Parallax Litelink dongle. To compile it as a module, choose M here. The Parallax dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Parallax dongles you will have to start irattach like this: "irattach -d litelink". config MA600_DONGLE tristate "Mobile Action MA600 dongle" depends on IRTTY_SIR && DONGLE && IRDA && EXPERIMENTAL help Say Y here if you want to build support for the Mobile Action MA600 dongle. To compile it as a module, choose M here. The MA600 dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. The driver should also support the MA620 USB version of the dongle, if the integrated USB-to-RS232 converter is supported by usbserial. To activate support for MA600 dongle you will have to start irattach like this: "irattach -d ma600". config GIRBIL_DONGLE tristate "Greenwich GIrBIL dongle" depends on IRTTY_SIR && DONGLE && IRDA && EXPERIMENTAL help Say Y here if you want to build support for the Greenwich GIrBIL dongle. If you want to compile it as a module, choose M here. The Greenwich dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for Greenwich dongles you will have to start irattach like this: "irattach -d girbil". config MCP2120_DONGLE tristate "Microchip MCP2120" depends on IRTTY_SIR && DONGLE && IRDA && EXPERIMENTAL help Say Y here if you want to build support for the Microchip MCP2120 dongle. If you want to compile it as a module, choose M here. The MCP2120 dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for MCP2120 dongles you will have to start irattach like this: "irattach -d mcp2120". You must build this dongle yourself. For more information see: config OLD_BELKIN_DONGLE tristate "Old Belkin dongle" depends on IRTTY_SIR && DONGLE && IRDA && EXPERIMENTAL help Say Y here if you want to build support for the Adaptec Airport 1000 and 2000 dongles. If you want to compile it as a module, choose M here. Some information is contained in the comments at the top of . config ACT200L_DONGLE tristate "ACTiSYS IR-200L dongle" depends on IRTTY_SIR && DONGLE && IRDA && EXPERIMENTAL help Say Y here if you want to build support for the ACTiSYS IR-200L dongle. If you want to compile it as a module, choose M here. The ACTiSYS IR-200L dongle attaches to the normal 9-pin serial port connector, and can currently only be used by IrTTY. To activate support for ACTiSYS IR-200L dongle you will have to start irattach like this: "irattach -d act200l". config KINGSUN_DONGLE tristate "KingSun/DonShine DS-620 IrDA-USB dongle" depends on IRDA && USB && EXPERIMENTAL help Say Y or M here if you want to build support for the KingSun/DonShine DS-620 IrDA-USB bridge device driver. This USB bridge does not conform to the IrDA-USB device class specification, and therefore needs its own specific driver. This dongle supports SIR speed only (9600 bps). To compile it as a module, choose M here: the module will be called kingsun-sir. config EP7211_DONGLE tristate "EP7211 I/R support" depends on IRTTY_SIR && ARCH_EP7211 && IRDA && EXPERIMENTAL help Say Y here if you want to build support for the Cirrus logic EP7211 chipset's infrared module. config KSDAZZLE_DONGLE tristate "KingSun Dazzle IrDA-USB dongle (EXPERIMENTAL)" depends on IRDA && USB && EXPERIMENTAL help Say Y or M here if you want to build support for the KingSun Dazzle IrDA-USB bridge device driver. This USB bridge does not conform to the IrDA-USB device class specification, and therefore needs its own specific driver. This dongle supports SIR speeds only (9600 through 115200 bps). To compile it as a module, choose M here: the module will be called ksdazzle-sir. config KS959_DONGLE tristate "KingSun KS-959 IrDA-USB dongle (EXPERIMENTAL)" depends on IRDA && USB && EXPERIMENTAL help Say Y or M here if you want to build support for the KingSun KS-959 IrDA-USB bridge device driver. This USB bridge does not conform to the IrDA-USB device class specification, and therefore needs its own specific driver. This dongle supports SIR speeds only (9600 through 57600 bps). To compile it as a module, choose M here: the module will be called ks959-sir. comment "FIR device drivers" config USB_IRDA tristate "IrDA USB dongles" depends on IRDA && USB select FW_LOADER ---help--- Say Y here if you want to build support for the USB IrDA FIR Dongle device driver. To compile it as a module, choose M here: the module will be called irda-usb. IrDA-USB support the various IrDA USB dongles available and most of their peculiarities. Those dongles plug in the USB port of your computer, are plug and play, and support SIR and FIR (4Mbps) speeds. On the other hand, those dongles tend to be less efficient than a FIR chipset. Please note that the driver is still experimental. And of course, you will need both USB and IrDA support in your kernel... config SIGMATEL_FIR tristate "SigmaTel STIr4200 bridge (EXPERIMENTAL)" depends on IRDA && USB && EXPERIMENTAL select CRC32 ---help--- Say Y here if you want to build support for the SigmaTel STIr4200 USB IrDA FIR bridge device driver. USB bridge based on the SigmaTel STIr4200 don't conform to the IrDA-USB device class specification, and therefore need their own specific driver. Those dongles support SIR and FIR (4Mbps) speeds. To compile it as a module, choose M here: the module will be called stir4200. config NSC_FIR tristate "NSC PC87108/PC87338" depends on IRDA && ISA_DMA_API help Say Y here if you want to build support for the NSC PC87108 and PC87338 IrDA chipsets. This driver supports SIR, MIR and FIR (4Mbps) speeds. To compile it as a module, choose M here: the module will be called nsc-ircc. config WINBOND_FIR tristate "Winbond W83977AF (IR)" depends on IRDA && ISA_DMA_API help Say Y here if you want to build IrDA support for the Winbond W83977AF super-io chipset. This driver should be used for the IrDA chipset in the Corel NetWinder. The driver supports SIR, MIR and FIR (4Mbps) speeds. To compile it as a module, choose M here: the module will be called w83977af_ir. config TOSHIBA_FIR tristate "Toshiba Type-O IR Port" depends on IRDA && PCI && !64BIT && VIRT_TO_BUS help Say Y here if you want to build support for the Toshiba Type-O IR and Donau oboe chipsets. These chipsets are used by the Toshiba Libretto 100/110CT, Tecra 8100, Portege 7020 and many more laptops. To compile it as a module, choose M here: the module will be called donauboe. config AU1000_FIR tristate "Alchemy Au1000 SIR/FIR" depends on SOC_AU1000 && IRDA config SMC_IRCC_FIR tristate "SMSC IrCC (EXPERIMENTAL)" depends on EXPERIMENTAL && IRDA && ISA_DMA_API help Say Y here if you want to build support for the SMC Infrared Communications Controller. It is used in a wide variety of laptops (Fujitsu, Sony, Compaq and some Toshiba). To compile it as a module, choose M here: the module will be called smsc-ircc2.o. config ALI_FIR tristate "ALi M5123 FIR (EXPERIMENTAL)" depends on EXPERIMENTAL && IRDA && ISA_DMA_API help Say Y here if you want to build support for the ALi M5123 FIR Controller. The ALi M5123 FIR Controller is embedded in ALi M1543C, M1535, M1535D, M1535+, M1535D South Bridge. This driver supports SIR, MIR and FIR (4Mbps) speeds. To compile it as a module, choose M here: the module will be called ali-ircc. config VLSI_FIR tristate "VLSI 82C147 SIR/MIR/FIR (EXPERIMENTAL)" depends on EXPERIMENTAL && IRDA && PCI help Say Y here if you want to build support for the VLSI 82C147 PCI-IrDA Controller. This controller is used by the HP OmniBook 800 and 5500 notebooks. The driver provides support for SIR, MIR and FIR (4Mbps) speeds. To compile it as a module, choose M here: the module will be called vlsi_ir. config SA1100_FIR tristate "SA1100 Internal IR" depends on ARCH_SA1100 && IRDA config VIA_FIR tristate "VIA VT8231/VT1211 SIR/MIR/FIR" depends on IRDA && ISA_DMA_API help Say Y here if you want to build support for the VIA VT8231 and VIA VT1211 IrDA controllers, found on the motherboards using those VIA chipsets. To use this controller, you will need to plug a specific 5 pins FIR IrDA dongle in the specific motherboard connector. The driver provides support for SIR, MIR and FIR (4Mbps) speeds. You will need to specify the 'dongle_id' module parameter to indicate the FIR dongle attached to the controller. To compile it as a module, choose M here: the module will be called via-ircc. config PXA_FICP tristate "Intel PXA2xx Internal FICP" depends on ARCH_PXA && IRDA help Say Y or M here if you want to build support for the PXA2xx built-in IRDA interface which can support both SIR and FIR. This driver relies on platform specific helper routines so available capabilities may vary from one PXA2xx target to another. config MCS_FIR tristate "MosChip MCS7780 IrDA-USB dongle" depends on IRDA && USB && EXPERIMENTAL select CRC32 help Say Y or M here if you want to build support for the MosChip MCS7780 IrDA-USB bridge device driver. USB bridge based on the MosChip MCS7780 don't conform to the IrDA-USB device class specification, and therefore need their own specific driver. Those dongles support SIR and FIR (4Mbps) speeds. To compile it as a module, choose M here: the module will be called mcs7780. config SH_IRDA tristate "SuperH IrDA driver" depends on IRDA && ARCH_SHMOBILE help Say Y here if your want to enable SuperH IrDA devices. endmenu # # Network device configuration # config HAVE_NET_MACB bool menuconfig NETDEVICES default y if UML depends on NET bool "Network device support" ---help--- You can say N here if you don't intend to connect your Linux box to any other computer at all. You'll have to say Y if your computer contains a network card that you want to use under Linux. If you are going to run SLIP or PPP over telephone line or null modem cable you need say Y here. Connecting two machines with parallel ports using PLIP needs this, as well as AX.25/KISS for sending Internet traffic over amateur radio links. See also "The Linux Network Administrator's Guide" by Olaf Kirch and Terry Dawson. Available at . If unsure, say Y. # All the following symbols are dependent on NETDEVICES - do not repeat # that for each of the symbols. if NETDEVICES config IFB tristate "Intermediate Functional Block support" depends on NET_CLS_ACT ---help--- This is an intermediate driver that allows sharing of resources. To compile this driver as a module, choose M here: the module will be called ifb. If you want to use more than one ifb device at a time, you need to compile this driver as a module. Instead of 'ifb', the devices will then be called 'ifb0', 'ifb1' etc. Look at the iproute2 documentation directory for usage etc config DUMMY tristate "Dummy net driver support" ---help--- This is essentially a bit-bucket device (i.e. traffic you send to this device is consigned into oblivion) with a configurable IP address. It is most commonly used in order to make your currently inactive SLIP address seem like a real address for local programs. If you use SLIP or PPP, you might want to say Y here. Since this thing often comes in handy, the default is Y. It won't enlarge your kernel either. What a deal. Read about it in the Network Administrator's Guide, available from . To compile this driver as a module, choose M here: the module will be called dummy. If you want to use more than one dummy device at a time, you need to compile this driver as a module. Instead of 'dummy', the devices will then be called 'dummy0', 'dummy1' etc. config BONDING tristate "Bonding driver support" depends on INET depends on IPV6 || IPV6=n ---help--- Say 'Y' or 'M' if you wish to be able to 'bond' multiple Ethernet Channels together. This is called 'Etherchannel' by Cisco, 'Trunking' by Sun, 802.3ad by the IEEE, and 'Bonding' in Linux. The driver supports multiple bonding modes to allow for both high performance and high availability operation. Refer to for more information. To compile this driver as a module, choose M here: the module will be called bonding. config MACVLAN tristate "MAC-VLAN support (EXPERIMENTAL)" depends on EXPERIMENTAL ---help--- This allows one to create virtual interfaces that map packets to or from specific MAC addresses to a particular interface. Macvlan devices can be added using the "ip" command from the iproute2 package starting with the iproute2-2.6.23 release: "ip link add link [ address MAC ] [ NAME ] type macvlan" To compile this driver as a module, choose M here: the module will be called macvlan. config MACVTAP tristate "MAC-VLAN based tap driver (EXPERIMENTAL)" depends on MACVLAN help This adds a specialized tap character device driver that is based on the MAC-VLAN network interface, called macvtap. A macvtap device can be added in the same way as a macvlan device, using 'type macvlan', and then be accessed through the tap user space interface. To compile this driver as a module, choose M here: the module will be called macvtap. config EQUALIZER tristate "EQL (serial line load balancing) support" ---help--- If you have two serial connections to some other computer (this usually requires two modems and two telephone lines) and you use SLIP (the protocol for sending Internet traffic over telephone lines) or PPP (a better SLIP) on them, you can make them behave like one double speed connection using this driver. Naturally, this has to be supported at the other end as well, either with a similar EQL Linux driver or with a Livingston Portmaster 2e. Say Y if you want this and read . You may also want to read section 6.2 of the NET-3-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called eql. If unsure, say N. config TUN tristate "Universal TUN/TAP device driver support" select CRC32 ---help--- TUN/TAP provides packet reception and transmission for user space programs. It can be viewed as a simple Point-to-Point or Ethernet device, which instead of receiving packets from a physical media, receives them from user space program and instead of sending packets via physical media writes them to the user space program. When a program opens /dev/net/tun, driver creates and registers corresponding net device tunX or tapX. After a program closed above devices, driver will automatically delete tunXX or tapXX device and all routes corresponding to it. Please read for more information. To compile this driver as a module, choose M here: the module will be called tun. If you don't know what to use this for, you don't need it. config VETH tristate "Virtual ethernet pair device" ---help--- This device is a local ethernet tunnel. Devices are created in pairs. When one end receives the packet it appears on its pair and vice versa. config NET_SB1000 tristate "General Instruments Surfboard 1000" depends on PNP ---help--- This is a driver for the General Instrument (also known as NextLevel) SURFboard 1000 internal cable modem. This is an ISA card which is used by a number of cable TV companies to provide cable modem access. It's a one-way downstream-only cable modem, meaning that your upstream net link is provided by your regular phone modem. At present this driver only compiles as a module, so say M here if you have this card. The module will be called sb1000. Then read for information on how to use this module, as it needs special ppp scripts for establishing a connection. Further documentation and the necessary scripts can be found at: If you don't have this card, of course say N. source "drivers/net/arcnet/Kconfig" config MII tristate "Generic Media Independent Interface device support" help Most ethernet controllers have MII transceiver either as an external or internal device. It is safe to say Y or M here even if your ethernet card lacks MII. source "drivers/net/phy/Kconfig" # # Ethernet # menuconfig NET_ETHERNET bool "Ethernet (10 or 100Mbit)" depends on !UML ---help--- Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common type of Local Area Network (LAN) in universities and companies. Common varieties of Ethernet are: 10BASE-2 or Thinnet (10 Mbps over coaxial cable, linking computers in a chain), 10BASE-T or twisted pair (10 Mbps over twisted pair cable, linking computers to central hubs), 10BASE-F (10 Mbps over optical fiber links, using hubs), 100BASE-TX (100 Mbps over two twisted pair cables, using hubs), 100BASE-T4 (100 Mbps over 4 standard voice-grade twisted pair cables, using hubs), 100BASE-FX (100 Mbps over optical fiber links) [the 100BASE varieties are also known as Fast Ethernet], and Gigabit Ethernet (1 Gbps over optical fiber or short copper links). If your Linux machine will be connected to an Ethernet and you have an Ethernet network interface card (NIC) installed in your computer, say Y here and read the Ethernet-HOWTO, available from . You will then also have to say Y to the driver for your particular NIC. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about Ethernet network cards. If unsure, say N. if NET_ETHERNET config MACB tristate "Atmel MACB support" depends on HAVE_NET_MACB select PHYLIB help The Atmel MACB ethernet interface is found on many AT32 and AT91 parts. Say Y to include support for the MACB chip. To compile this driver as a module, choose M here: the module will be called macb. source "drivers/net/arm/Kconfig" config AX88796 tristate "ASIX AX88796 NE2000 clone support" depends on ARM || MIPS || SUPERH select PHYLIB select MDIO_BITBANG help AX88796 driver, using platform bus to provide chip detection and resources config AX88796_93CX6 bool "ASIX AX88796 external 93CX6 eeprom support" depends on AX88796 select EEPROM_93CX6 help Select this if your platform comes with an external 93CX6 eeprom. config MACE tristate "MACE (Power Mac ethernet) support" depends on PPC_PMAC && PPC32 select CRC32 help Power Macintoshes and clones with Ethernet built-in on the motherboard will usually use a MACE (Medium Access Control for Ethernet) interface. Say Y to include support for the MACE chip. To compile this driver as a module, choose M here: the module will be called mace. config MACE_AAUI_PORT bool "Use AAUI port instead of TP by default" depends on MACE help Some Apple machines (notably the Apple Network Server) which use the MACE ethernet chip have an Apple AUI port (small 15-pin connector), instead of an 8-pin RJ45 connector for twisted-pair ethernet. Say Y here if you have such a machine. If unsure, say N. The driver will default to AAUI on ANS anyway, and if you use it as a module, you can provide the port_aaui=0|1 to force the driver. config BMAC tristate "BMAC (G3 ethernet) support" depends on PPC_PMAC && PPC32 select CRC32 help Say Y for support of BMAC Ethernet interfaces. These are used on G3 computers. To compile this driver as a module, choose M here: the module will be called bmac. config ARIADNE tristate "Ariadne support" depends on ZORRO help If you have a Village Tronic Ariadne Ethernet adapter, say Y. Otherwise, say N. To compile this driver as a module, choose M here: the module will be called ariadne. config A2065 tristate "A2065 support" depends on ZORRO select CRC32 help If you have a Commodore A2065 Ethernet adapter, say Y. Otherwise, say N. To compile this driver as a module, choose M here: the module will be called a2065. config HYDRA tristate "Hydra support" depends on ZORRO select CRC32 help If you have a Hydra Ethernet adapter, say Y. Otherwise, say N. To compile this driver as a module, choose M here: the module will be called hydra. config ZORRO8390 tristate "Zorro NS8390-based Ethernet support" depends on ZORRO select CRC32 help This driver is for Zorro Ethernet cards using an NS8390-compatible chipset, like the Village Tronic Ariadne II and the Individual Computers X-Surf Ethernet cards. If you have such a card, say Y. Otherwise, say N. To compile this driver as a module, choose M here: the module will be called zorro8390. config APNE tristate "PCMCIA NE2000 support" depends on AMIGA_PCMCIA select CRC32 help If you have a PCMCIA NE2000 compatible adapter, say Y. Otherwise, say N. To compile this driver as a module, choose M here: the module will be called apne. config MAC8390 bool "Macintosh NS 8390 based ethernet cards" depends on MAC select CRC32 help If you want to include a driver to support Nubus or LC-PDS Ethernet cards using an NS8390 chipset or its equivalent, say Y and read the Ethernet-HOWTO, available from . config MAC89x0 tristate "Macintosh CS89x0 based ethernet cards" depends on MAC ---help--- Support for CS89x0 chipset based Ethernet cards. If you have a Nubus or LC-PDS network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. This module will be called mac89x0. config MACSONIC tristate "Macintosh SONIC based ethernet (onboard, NuBus, LC, CS)" depends on MAC ---help--- Support for NatSemi SONIC based Ethernet devices. This includes the onboard Ethernet in many Quadras as well as some LC-PDS, a few Nubus and all known Comm Slot Ethernet cards. If you have one of these say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. This module will be called macsonic. config MACMACE bool "Macintosh (AV) onboard MACE ethernet" depends on MAC select CRC32 help Support for the onboard AMD 79C940 MACE Ethernet controller used in the 660AV and 840AV Macintosh. If you have one of these Macintoshes say Y and read the Ethernet-HOWTO, available from . config MVME147_NET tristate "MVME147 (Lance) Ethernet support" depends on MVME147 select CRC32 help Support for the on-board Ethernet interface on the Motorola MVME147 single-board computer. Say Y here to include the driver for this chip in your kernel. To compile this driver as a module, choose M here. config MVME16x_NET tristate "MVME16x Ethernet support" depends on MVME16x help This is the driver for the Ethernet interface on the Motorola MVME162, 166, 167, 172 and 177 boards. Say Y here to include the driver for this chip in your kernel. To compile this driver as a module, choose M here. config BVME6000_NET tristate "BVME6000 Ethernet support" depends on BVME6000 help This is the driver for the Ethernet interface on BVME4000 and BVME6000 VME boards. Say Y here to include the driver for this chip in your kernel. To compile this driver as a module, choose M here. config ATARILANCE tristate "Atari Lance support" depends on ATARI help Say Y to include support for several Atari Ethernet adapters based on the AMD Lance chipset: RieblCard (with or without battery), or PAMCard VME (also the version by Rhotron, with different addresses). config SUN3LANCE tristate "Sun3/Sun3x on-board LANCE support" depends on SUN3 || SUN3X help Most Sun3 and Sun3x motherboards (including the 3/50, 3/60 and 3/80) featured an AMD Lance 10Mbit Ethernet controller on board; say Y here to compile in the Linux driver for this and enable Ethernet. General Linux information on the Sun 3 and 3x series (now discontinued) is at . If you're not building a kernel for a Sun 3, say N. config SUN3_82586 bool "Sun3 on-board Intel 82586 support" depends on SUN3 help This driver enables support for the on-board Intel 82586 based Ethernet adapter found on Sun 3/1xx and 3/2xx motherboards. Note that this driver does not support 82586-based adapters on additional VME boards. config HPLANCE bool "HP on-board LANCE support" depends on DIO select CRC32 help If you want to use the builtin "LANCE" Ethernet controller on an HP300 machine, say Y here. config LASI_82596 tristate "Lasi ethernet" depends on GSC help Say Y here to support the builtin Intel 82596 ethernet controller found in Hewlett-Packard PA-RISC machines with 10Mbit ethernet. config SNI_82596 tristate "SNI RM ethernet" depends on NET_ETHERNET && SNI_RM help Say Y here to support the on-board Intel 82596 ethernet controller built into SNI RM machines. config KORINA tristate "Korina (IDT RC32434) Ethernet support" depends on NET_ETHERNET && MIKROTIK_RB532 help If you have a Mikrotik RouterBoard 500 or IDT RC32434 based system say Y. Otherwise say N. config MIPS_JAZZ_SONIC tristate "MIPS JAZZ onboard SONIC Ethernet support" depends on MACH_JAZZ help This is the driver for the onboard card of MIPS Magnum 4000, Acer PICA, Olivetti M700-10 and a few other identical OEM systems. config XTENSA_XT2000_SONIC tristate "Xtensa XT2000 onboard SONIC Ethernet support" depends on XTENSA_PLATFORM_XT2000 help This is the driver for the onboard card of the Xtensa XT2000 board. config MIPS_AU1X00_ENET tristate "MIPS AU1000 Ethernet support" depends on MIPS_ALCHEMY select PHYLIB select CRC32 help If you have an Alchemy Semi AU1X00 based system say Y. Otherwise, say N. config SGI_IOC3_ETH bool "SGI IOC3 Ethernet" depends on PCI && SGI_IP27 select CRC32 select MII help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . config MIPS_SIM_NET tristate "MIPS simulator Network device" depends on MIPS_SIM help The MIPSNET device is a simple Ethernet network device which is emulated by the MIPS Simulator. If you are not using a MIPSsim or are unsure, say N. config SGI_O2MACE_ETH tristate "SGI O2 MACE Fast Ethernet support" depends on SGI_IP32=y config STNIC tristate "National DP83902AV support" depends on SUPERH select CRC32 help Support for cards based on the National Semiconductor DP83902AV ST-NIC Serial Network Interface Controller for Twisted Pair. This is a 10Mbit/sec Ethernet controller. Product overview and specs at . If unsure, say N. config SH_ETH tristate "Renesas SuperH Ethernet support" depends on SUPERH && \ (CPU_SUBTYPE_SH7710 || CPU_SUBTYPE_SH7712 || \ CPU_SUBTYPE_SH7763 || CPU_SUBTYPE_SH7619 || \ CPU_SUBTYPE_SH7724 || CPU_SUBTYPE_SH7757) select CRC32 select MII select MDIO_BITBANG select PHYLIB help Renesas SuperH Ethernet device driver. This driver supporting CPUs are: - SH7710, SH7712, SH7763, SH7619, SH7724, and SH7757. config SUNLANCE tristate "Sun LANCE support" depends on SBUS select CRC32 help This driver supports the "le" interface present on all 32-bit Sparc systems, on some older Ultra systems and as an Sbus option. These cards are based on the AMD Lance chipset, which is better known via the NE2100 cards. To compile this driver as a module, choose M here: the module will be called sunlance. config HAPPYMEAL tristate "Sun Happy Meal 10/100baseT support" depends on SBUS || PCI select CRC32 help This driver supports the "hme" interface present on most Ultra systems and as an option on older Sbus systems. This driver supports both PCI and Sbus devices. This driver also supports the "qfe" quad 100baseT device available in both PCI and Sbus configurations. To compile this driver as a module, choose M here: the module will be called sunhme. config SUNBMAC tristate "Sun BigMAC 10/100baseT support (EXPERIMENTAL)" depends on SBUS && EXPERIMENTAL select CRC32 help This driver supports the "be" interface available as an Sbus option. This is Sun's older 100baseT Ethernet device. To compile this driver as a module, choose M here: the module will be called sunbmac. config SUNQE tristate "Sun QuadEthernet support" depends on SBUS select CRC32 help This driver supports the "qe" 10baseT Ethernet device, available as an Sbus option. Note that this is not the same as Quad FastEthernet "qfe" which is supported by the Happy Meal driver instead. To compile this driver as a module, choose M here: the module will be called sunqe. config SUNGEM tristate "Sun GEM support" depends on PCI select CRC32 help Support for the Sun GEM chip, aka Sun GigabitEthernet/P 2.0. See also . config CASSINI tristate "Sun Cassini support" depends on PCI select CRC32 help Support for the Sun Cassini chip, aka Sun GigaSwift Ethernet. See also config SUNVNET tristate "Sun Virtual Network support" depends on SUN_LDOMS help Support for virtual network devices under Sun Logical Domains. config NET_VENDOR_3COM bool "3COM cards" depends on ISA || EISA || MCA || PCI help If you have a network (Ethernet) card belonging to this class, say Y and read the Ethernet-HOWTO, available from . Note that the answer to this question doesn't directly affect the kernel: saying N will just cause the configurator to skip all the questions about 3COM cards. If you say Y, you will be asked for your specific card in the following questions. config EL1 tristate "3c501 \"EtherLink\" support" depends on NET_VENDOR_3COM && ISA ---help--- If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Also, consider buying a new card, since the 3c501 is slow, broken, and obsolete: you will have problems. Some people suggest to ping ("man ping") a nearby machine every minute ("man cron") when using this card. To compile this driver as a module, choose M here. The module will be called 3c501. config EL2 tristate "3c503 \"EtherLink II\" support" depends on NET_VENDOR_3COM && ISA select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called 3c503. config ELPLUS tristate "3c505 \"EtherLink Plus\" support" depends on NET_VENDOR_3COM && ISA && ISA_DMA_API ---help--- Information about this network (Ethernet) card can be found in . If you have a card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called 3c505. config EL16 tristate "3c507 \"EtherLink 16\" support (EXPERIMENTAL)" depends on NET_VENDOR_3COM && ISA && EXPERIMENTAL help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called 3c507. config EL3 tristate "3c509/3c529 (MCA)/3c579 \"EtherLink III\" support" depends on NET_VENDOR_3COM && (ISA || EISA || MCA) ---help--- If you have a network (Ethernet) card belonging to the 3Com EtherLinkIII series, say Y and read the Ethernet-HOWTO, available from . If your card is not working you may need to use the DOS setup disk to disable Plug & Play mode, and to select the default media type. To compile this driver as a module, choose M here. The module will be called 3c509. config 3C515 tristate "3c515 ISA \"Fast EtherLink\"" depends on NET_VENDOR_3COM && (ISA || EISA) && ISA_DMA_API help If you have a 3Com ISA EtherLink XL "Corkscrew" 3c515 Fast Ethernet network card, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called 3c515. config ELMC tristate "3c523 \"EtherLink/MC\" support" depends on NET_VENDOR_3COM && MCA_LEGACY help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called 3c523. config ELMC_II tristate "3c527 \"EtherLink/MC 32\" support (EXPERIMENTAL)" depends on NET_VENDOR_3COM && MCA && MCA_LEGACY help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called 3c527. config VORTEX tristate "3c590/3c900 series (592/595/597) \"Vortex/Boomerang\" support" depends on NET_VENDOR_3COM && (PCI || EISA) select MII ---help--- This option enables driver support for a large number of 10Mbps and 10/100Mbps EISA, PCI and PCMCIA 3Com network cards: "Vortex" (Fast EtherLink 3c590/3c592/3c595/3c597) EISA and PCI "Boomerang" (EtherLink XL 3c900 or 3c905) PCI "Cyclone" (3c540/3c900/3c905/3c980/3c575/3c656) PCI and Cardbus "Tornado" (3c905) PCI "Hurricane" (3c555/3cSOHO) PCI If you have such a card, say Y and read the Ethernet-HOWTO, available from . More specific information is in and in the comments at the beginning of . To compile this support as a module, choose M here. config TYPHOON tristate "3cr990 series \"Typhoon\" support" depends on NET_VENDOR_3COM && PCI select CRC32 ---help--- This option enables driver support for the 3cr990 series of cards: 3C990-TX, 3CR990-TX-95, 3CR990-TX-97, 3CR990-FX-95, 3CR990-FX-97, 3CR990SVR, 3CR990SVR95, 3CR990SVR97, 3CR990-FX-95 Server, 3CR990-FX-97 Server, 3C990B-TX-M, 3C990BSVR If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called typhoon. config LANCE tristate "AMD LANCE and PCnet (AT1500 and NE2100) support" depends on ISA && ISA_DMA_API help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Some LinkSys cards are of this type. To compile this driver as a module, choose M here: the module will be called lance. This is recommended. config NET_VENDOR_SMC bool "Western Digital/SMC cards" depends on ISA || MCA || EISA || MAC help If you have a network (Ethernet) card belonging to this class, say Y and read the Ethernet-HOWTO, available from . Note that the answer to this question doesn't directly affect the kernel: saying N will just cause the configurator to skip all the questions about Western Digital cards. If you say Y, you will be asked for your specific card in the following questions. config WD80x3 tristate "WD80*3 support" depends on NET_VENDOR_SMC && ISA select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called wd. config ULTRAMCA tristate "SMC Ultra MCA support" depends on NET_VENDOR_SMC && MCA select CRC32 help If you have a network (Ethernet) card of this type and are running an MCA based system (PS/2), say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called smc-mca. config ULTRA tristate "SMC Ultra support" depends on NET_VENDOR_SMC && ISA select CRC32 ---help--- If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Important: There have been many reports that, with some motherboards mixing an SMC Ultra and an Adaptec AHA154x SCSI card (or compatible, such as some BusLogic models) causes corruption problems with many operating systems. The Linux smc-ultra driver has a work-around for this but keep it in mind if you have such a SCSI card and have problems. To compile this driver as a module, choose M here. The module will be called smc-ultra. config ULTRA32 tristate "SMC Ultra32 EISA support" depends on NET_VENDOR_SMC && EISA select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called smc-ultra32. config BFIN_MAC tristate "Blackfin on-chip MAC support" depends on NET_ETHERNET && (BF516 || BF518 || BF526 || BF527 || BF536 || BF537) select CRC32 select MII select PHYLIB select BFIN_MAC_USE_L1 if DMA_UNCACHED_NONE help This is the driver for Blackfin on-chip mac device. Say Y if you want it compiled into the kernel. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called bfin_mac. config BFIN_MAC_USE_L1 bool "Use L1 memory for rx/tx packets" depends on BFIN_MAC && (BF527 || BF537) default y help To get maximum network performance, you should use L1 memory as rx/tx buffers. Say N here if you want to reserve L1 memory for other uses. config BFIN_TX_DESC_NUM int "Number of transmit buffer packets" depends on BFIN_MAC range 6 10 if BFIN_MAC_USE_L1 range 10 100 default "10" help Set the number of buffer packets used in driver. config BFIN_RX_DESC_NUM int "Number of receive buffer packets" depends on BFIN_MAC range 20 100 if BFIN_MAC_USE_L1 range 20 800 default "20" help Set the number of buffer packets used in driver. config BFIN_MAC_USE_HWSTAMP bool "Use IEEE 1588 hwstamp" depends on BFIN_MAC && BF518 default y help To support the IEEE 1588 Precision Time Protocol (PTP), select y here config SMC9194 tristate "SMC 9194 support" depends on NET_VENDOR_SMC && (ISA || MAC && BROKEN) select CRC32 ---help--- This is support for the SMC9xxx based Ethernet cards. Choose this option if you have a DELL laptop with the docking station, or another SMC9192/9194 based chipset. Say Y if you want it compiled into the kernel, and read the file and the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called smc9194. config SMC91X tristate "SMC 91C9x/91C1xxx support" select CRC32 select MII depends on ARM || M32R || SUPERH || \ MIPS || BLACKFIN || MN10300 || COLDFIRE help This is a driver for SMC's 91x series of Ethernet chipsets, including the SMC91C94 and the SMC91C111. Say Y if you want it compiled into the kernel, and read the file and the Ethernet-HOWTO, available from . This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called smc91x. If you want to compile it as a module, say M here and read . config PXA168_ETH tristate "Marvell pxa168 ethernet support" depends on CPU_PXA168 select PHYLIB help This driver supports the pxa168 Ethernet ports. To compile this driver as a module, choose M here. The module will be called pxa168_eth. config NET_NETX tristate "NetX Ethernet support" select MII depends on ARCH_NETX help This is support for the Hilscher netX builtin Ethernet ports To compile this driver as a module, choose M here. The module will be called netx-eth. config TI_DAVINCI_EMAC tristate "TI DaVinci EMAC Support" depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 ) select TI_DAVINCI_MDIO select TI_DAVINCI_CPDMA select PHYLIB help This driver supports TI's DaVinci Ethernet . To compile this driver as a module, choose M here: the module will be called davinci_emac_driver. This is recommended. config TI_DAVINCI_MDIO tristate "TI DaVinci MDIO Support" depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 ) select PHYLIB help This driver supports TI's DaVinci MDIO module. To compile this driver as a module, choose M here: the module will be called davinci_mdio. This is recommended. config TI_DAVINCI_CPDMA tristate "TI DaVinci CPDMA Support" depends on ARM && ( ARCH_DAVINCI || ARCH_OMAP3 ) help This driver supports TI's DaVinci CPDMA dma engine. To compile this driver as a module, choose M here: the module will be called davinci_cpdma. This is recommended. config DM9000 tristate "DM9000 support" depends on ARM || BLACKFIN || MIPS select CRC32 select MII ---help--- Support for DM9000 chipset. To compile this driver as a module, choose M here. The module will be called dm9000. config DM9000_DEBUGLEVEL int "DM9000 maximum debug level" depends on DM9000 default 4 help The maximum level of debugging code compiled into the DM9000 driver. config DM9000_FORCE_SIMPLE_PHY_POLL bool "Force simple NSR based PHY polling" depends on DM9000 ---help--- This configuration forces the DM9000 to use the NSR's LinkStatus bit to determine if the link is up or down instead of the more costly MII PHY reads. Note, this will not work if the chip is operating with an external PHY. config ENC28J60 tristate "ENC28J60 support" depends on EXPERIMENTAL && SPI && NET_ETHERNET select CRC32 ---help--- Support for the Microchip EN28J60 ethernet chip. To compile this driver as a module, choose M here. The module will be called enc28j60. config ENC28J60_WRITEVERIFY bool "Enable write verify" depends on ENC28J60 ---help--- Enable the verify after the buffer write useful for debugging purpose. If unsure, say N. config ETHOC tristate "OpenCores 10/100 Mbps Ethernet MAC support" depends on NET_ETHERNET && HAS_IOMEM && HAS_DMA select MII select PHYLIB select CRC32 select BITREVERSE help Say Y here if you want to use the OpenCores 10/100 Mbps Ethernet MAC. config GRETH tristate "Aeroflex Gaisler GRETH Ethernet MAC support" depends on SPARC select PHYLIB select CRC32 help Say Y here if you want to use the Aeroflex Gaisler GRETH Ethernet MAC. config SMC911X tristate "SMSC LAN911[5678] support" select CRC32 select MII depends on ARM || SUPERH || MN10300 help This is a driver for SMSC's LAN911x series of Ethernet chipsets including the new LAN9115, LAN9116, LAN9117, and LAN9118. Say Y if you want it compiled into the kernel, and read the Ethernet-HOWTO, available from . This driver is also available as a module. The module will be called smc911x. If you want to compile it as a module, say M here and read config SMSC911X tristate "SMSC LAN911x/LAN921x families embedded ethernet support" depends on ARM || SUPERH || BLACKFIN || MIPS || MN10300 select CRC32 select MII select PHYLIB ---help--- Say Y here if you want support for SMSC LAN911x and LAN921x families of ethernet controllers. To compile this driver as a module, choose M here and read . The module will be called smsc911x. config SMSC911X_ARCH_HOOKS def_bool n depends on SMSC911X help If the arch enables this, it allows the arch to implement various hooks for more comprehensive interrupt control and also to override the source of the MAC address. config NET_VENDOR_RACAL bool "Racal-Interlan (Micom) NI cards" depends on ISA help If you have a network (Ethernet) card belonging to this class, such as the NI5010, NI5210 or NI6210, say Y and read the Ethernet-HOWTO, available from . Note that the answer to this question doesn't directly affect the kernel: saying N will just cause the configurator to skip all the questions about NI cards. If you say Y, you will be asked for your specific card in the following questions. config NI5010 tristate "NI5010 support (EXPERIMENTAL)" depends on NET_VENDOR_RACAL && ISA && EXPERIMENTAL && BROKEN_ON_SMP ---help--- If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Note that this is still experimental code. To compile this driver as a module, choose M here. The module will be called ni5010. config NI52 tristate "NI5210 support" depends on NET_VENDOR_RACAL && ISA help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called ni52. config NI65 tristate "NI6510 support" depends on NET_VENDOR_RACAL && ISA && ISA_DMA_API help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called ni65. config DNET tristate "Dave ethernet support (DNET)" depends on NET_ETHERNET && HAS_IOMEM select PHYLIB help The Dave ethernet interface (DNET) is found on Qong Board FPGA. Say Y to include support for the DNET chip. To compile this driver as a module, choose M here: the module will be called dnet. source "drivers/net/tulip/Kconfig" config AT1700 tristate "AT1700/1720 support (EXPERIMENTAL)" depends on (ISA || MCA_LEGACY) && EXPERIMENTAL select CRC32 ---help--- If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called at1700. config DEPCA tristate "DEPCA, DE10x, DE200, DE201, DE202, DE422 support" depends on ISA || EISA || MCA select CRC32 ---help--- If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from as well as . To compile this driver as a module, choose M here. The module will be called depca. config HP100 tristate "HP 10/100VG PCLAN (ISA, EISA, PCI) support" depends on ISA || EISA || PCI help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called hp100. config NET_ISA bool "Other ISA cards" depends on ISA ---help--- If your network (Ethernet) card hasn't been mentioned yet and its bus system (that's the way the cards talks to the other components of your computer) is ISA (as opposed to EISA, VLB or PCI), say Y. Make sure you know the name of your card. Read the Ethernet-HOWTO, available from . If unsure, say Y. Note that the answer to this question doesn't directly affect the kernel: saying N will just cause the configurator to skip all the remaining ISA network card questions. If you say Y, you will be asked for your specific card in the following questions. config E2100 tristate "Cabletron E21xx support" depends on NET_ISA select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called e2100. config EWRK3 tristate "EtherWORKS 3 (DE203, DE204, DE205) support" depends on NET_ISA select CRC32 ---help--- This driver supports the DE203, DE204 and DE205 network (Ethernet) cards. If this is for you, say Y and read in the kernel source as well as the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called ewrk3. config EEXPRESS tristate "EtherExpress 16 support" depends on NET_ISA ---help--- If you have an EtherExpress16 network (Ethernet) card, say Y and read the Ethernet-HOWTO, available from . Note that the Intel EtherExpress16 card used to be regarded as a very poor choice because the driver was very unreliable. We now have a new driver that should do better. To compile this driver as a module, choose M here. The module will be called eexpress. config EEXPRESS_PRO tristate "EtherExpressPro support/EtherExpress 10 (i82595) support" depends on NET_ISA ---help--- If you have a network (Ethernet) card of this type, say Y. This driver supports Intel i82595{FX,TX} based boards. Note however that the EtherExpress PRO/100 Ethernet card has its own separate driver. Please read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called eepro. config HPLAN_PLUS tristate "HP PCLAN+ (27247B and 27252A) support" depends on NET_ISA select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called hp-plus. config HPLAN tristate "HP PCLAN (27245 and other 27xxx series) support" depends on NET_ISA select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called hp. config LP486E tristate "LP486E on board Ethernet" depends on NET_ISA help Say Y here to support the 82596-based on-board Ethernet controller for the Panther motherboard, which is one of the two shipped in the Intel Professional Workstation. config ETH16I tristate "ICL EtherTeam 16i/32 support" depends on NET_ISA help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called eth16i. config NE2000 tristate "NE2000/NE1000 support" depends on NET_ISA || (Q40 && m) || M32R || MACH_TX49XX select CRC32 ---help--- If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Many Ethernet cards without a specific driver are compatible with NE2000. If you have a PCI NE2000 card however, say N here and Y to "PCI NE2000 and clone support" under "EISA, VLB, PCI and on board controllers" below. If you have a NE2000 card and are running on an MCA system (a bus system used on some IBM PS/2 computers and laptops), say N here and Y to "NE/2 (ne2000 MCA version) support", below. To compile this driver as a module, choose M here. The module will be called ne. config ZNET tristate "Zenith Z-Note support (EXPERIMENTAL)" depends on NET_ISA && EXPERIMENTAL && ISA_DMA_API help The Zenith Z-Note notebook computer has a built-in network (Ethernet) card, and this is the Linux driver for it. Note that the IBM Thinkpad 300 is compatible with the Z-Note and is also supported by this driver. Read the Ethernet-HOWTO, available from . config SEEQ8005 tristate "SEEQ8005 support (EXPERIMENTAL)" depends on NET_ISA && EXPERIMENTAL help This is a driver for the SEEQ 8005 network (Ethernet) card. If this is for you, read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called seeq8005. config NE2_MCA tristate "NE/2 (ne2000 MCA version) support" depends on MCA_LEGACY select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called ne2. config IBMLANA tristate "IBM LAN Adapter/A support" depends on MCA ---help--- This is a Micro Channel Ethernet adapter. You need to set CONFIG_MCA to use this driver. It is both available as an in-kernel driver and as a module. To compile this driver as a module, choose M here. The only currently supported card is the IBM LAN Adapter/A for Ethernet. It will both support 16K and 32K memory windows, however a 32K window gives a better security against packet losses. Usage of multiple boards with this driver should be possible, but has not been tested up to now due to lack of hardware. config IBMVETH tristate "IBM LAN Virtual Ethernet support" depends on PPC_PSERIES ---help--- This driver supports virtual ethernet adapters on newer IBM iSeries and pSeries systems. To compile this driver as a module, choose M here. The module will be called ibmveth. source "drivers/net/ibm_newemac/Kconfig" config NET_PCI bool "EISA, VLB, PCI and on board controllers" depends on ISA || EISA || PCI help This is another class of network cards which attach directly to the bus. If you have one of those, say Y and read the Ethernet-HOWTO, available from . Note that the answer to this question doesn't directly affect the kernel: saying N will just cause the configurator to skip all the questions about this class of network cards. If you say Y, you will be asked for your specific card in the following questions. If you are unsure, say Y. config PCNET32 tristate "AMD PCnet32 PCI support" depends on NET_PCI && PCI select CRC32 select MII help If you have a PCnet32 or PCnetPCI based network (Ethernet) card, answer Y here and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called pcnet32. config AMD8111_ETH tristate "AMD 8111 (new PCI lance) support" depends on NET_PCI && PCI select CRC32 select MII help If you have an AMD 8111-based PCI lance ethernet card, answer Y here and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called amd8111e. config ADAPTEC_STARFIRE tristate "Adaptec Starfire/DuraLAN support" depends on NET_PCI && PCI select CRC32 select MII help Say Y here if you have an Adaptec Starfire (or DuraLAN) PCI network adapter. The DuraLAN chip is used on the 64 bit PCI boards from Adaptec e.g. the ANA-6922A. The older 32 bit boards use the tulip driver. To compile this driver as a module, choose M here: the module will be called starfire. This is recommended. config AC3200 tristate "Ansel Communications EISA 3200 support (EXPERIMENTAL)" depends on NET_PCI && (ISA || EISA) && EXPERIMENTAL select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called ac3200. config KSZ884X_PCI tristate "Micrel KSZ8841/2 PCI" depends on NET_PCI && PCI select MII select CRC32 help This PCI driver is for Micrel KSZ8841/KSZ8842 PCI Ethernet chip. To compile this driver as a module, choose M here. The module will be called ksz884x. config APRICOT tristate "Apricot Xen-II on board Ethernet" depends on NET_PCI && ISA help If you have a network (Ethernet) controller of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called apricot. config B44 tristate "Broadcom 440x/47xx ethernet support" depends on SSB_POSSIBLE && HAS_DMA select SSB select MII help If you have a network (Ethernet) controller of this type, say Y or M and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called b44. # Auto-select SSB PCI-HOST support, if possible config B44_PCI_AUTOSELECT bool depends on B44 && SSB_PCIHOST_POSSIBLE select SSB_PCIHOST default y # Auto-select SSB PCICORE driver, if possible config B44_PCICORE_AUTOSELECT bool depends on B44 && SSB_DRIVER_PCICORE_POSSIBLE select SSB_DRIVER_PCICORE default y config B44_PCI bool depends on B44_PCI_AUTOSELECT && B44_PCICORE_AUTOSELECT default y config FORCEDETH tristate "nForce Ethernet support" depends on NET_PCI && PCI help If you have a network (Ethernet) controller of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called forcedeth. config CS89x0 tristate "CS89x0 support" depends on NET_ETHERNET && (ISA || EISA || MACH_IXDP2351 \ || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440) ---help--- Support for CS89x0 chipset based Ethernet cards. If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from as well as . To compile this driver as a module, choose M here. The module will be called cs89x0. config CS89x0_NONISA_IRQ def_bool y depends on CS89x0 != n depends on MACH_IXDP2351 || ARCH_IXDP2X01 || MACH_MX31ADS || MACH_QQ2440 config TC35815 tristate "TOSHIBA TC35815 Ethernet support" depends on NET_PCI && PCI && MIPS select PHYLIB config E100 tristate "Intel(R) PRO/100+ support" depends on NET_PCI && PCI select MII ---help--- This driver supports Intel(R) PRO/100 family of adapters. To verify that your adapter is supported, find the board ID number on the adapter. Look for a label that has a barcode and a number in the format 123456-001 (six digits hyphen three digits). Use the above information and the Adapter & Driver ID Guide at: to identify the adapter. For the latest Intel PRO/100 network driver for Linux, see: More specific information on configuring the driver is in . To compile this driver as a module, choose M here. The module will be called e100. config LNE390 tristate "Mylex EISA LNE390A/B support (EXPERIMENTAL)" depends on NET_PCI && EISA && EXPERIMENTAL select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called lne390. config FEALNX tristate "Myson MTD-8xx PCI Ethernet support" depends on NET_PCI && PCI select CRC32 select MII help Say Y here to support the Myson MTD-800 family of PCI-based Ethernet cards. config NATSEMI tristate "National Semiconductor DP8381x series PCI Ethernet support" depends on NET_PCI && PCI select CRC32 help This driver is for the National Semiconductor DP83810 series, which is used in cards from PureData, NetGear, Linksys and others, including the 83815 chip. More specific information and updates are available from . config NE2K_PCI tristate "PCI NE2000 and clones support (see help)" depends on NET_PCI && PCI select CRC32 ---help--- This driver is for NE2000 compatible PCI cards. It will not work with ISA NE2000 cards (they have their own driver, "NE2000/NE1000 support" below). If you have a PCI NE2000 network (Ethernet) card, say Y and read the Ethernet-HOWTO, available from . This driver also works for the following NE2000 clone cards: RealTek RTL-8029 Winbond 89C940 Compex RL2000 KTI ET32P2 NetVin NV5000SC Via 86C926 SureCom NE34 Winbond Holtek HT80232 Holtek HT80229 To compile this driver as a module, choose M here. The module will be called ne2k-pci. config NE3210 tristate "Novell/Eagle/Microdyne NE3210 EISA support (EXPERIMENTAL)" depends on NET_PCI && EISA && EXPERIMENTAL select CRC32 ---help--- If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . Note that this driver will NOT WORK for NE3200 cards as they are completely different. To compile this driver as a module, choose M here. The module will be called ne3210. config ES3210 tristate "Racal-Interlan EISA ES3210 support (EXPERIMENTAL)" depends on NET_PCI && EISA && EXPERIMENTAL select CRC32 help If you have a network (Ethernet) card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called es3210. config 8139CP tristate "RealTek RTL-8139 C+ PCI Fast Ethernet Adapter support (EXPERIMENTAL)" depends on NET_PCI && PCI && EXPERIMENTAL select CRC32 select MII help This is a driver for the Fast Ethernet PCI network cards based on the RTL8139C+ chips. If you have one of those, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called 8139cp. This is recommended. config 8139TOO tristate "RealTek RTL-8129/8130/8139 PCI Fast Ethernet Adapter support" depends on NET_PCI && PCI select CRC32 select MII ---help--- This is a driver for the Fast Ethernet PCI network cards based on the RTL 8129/8130/8139 chips. If you have one of those, say Y and read the Ethernet-HOWTO . To compile this driver as a module, choose M here: the module will be called 8139too. This is recommended. config 8139TOO_PIO bool "Use PIO instead of MMIO" default y depends on 8139TOO help This instructs the driver to use programmed I/O ports (PIO) instead of PCI shared memory (MMIO). This can possibly solve some problems in case your mainboard has memory consistency issues. If unsure, say N. config 8139TOO_TUNE_TWISTER bool "Support for uncommon RTL-8139 rev. K (automatic channel equalization)" depends on 8139TOO help This implements a function which might come in handy in case you are using low quality on long cabling. It is required for RealTek RTL-8139 revision K boards, and totally unused otherwise. It tries to match the transceiver to the cable characteristics. This is experimental since hardly documented by the manufacturer. If unsure, say Y. config 8139TOO_8129 bool "Support for older RTL-8129/8130 boards" depends on 8139TOO help This enables support for the older and uncommon RTL-8129 and RTL-8130 chips, which support MII via an external transceiver, instead of an internal one. Disabling this option will save some memory by making the code size smaller. If unsure, say Y. config 8139_OLD_RX_RESET bool "Use older RX-reset method" depends on 8139TOO help The 8139too driver was recently updated to contain a more rapid reset sequence, in the face of severe receive errors. This "new" RX-reset method should be adequate for all boards. But if you experience problems, you can enable this option to restore the old RX-reset behavior. If unsure, say N. config R6040 tristate "RDC R6040 Fast Ethernet Adapter support" depends on NET_PCI && PCI select CRC32 select MII select PHYLIB help This is a driver for the R6040 Fast Ethernet MACs found in the the RDC R-321x System-on-chips. To compile this driver as a module, choose M here: the module will be called r6040. This is recommended. config SIS900 tristate "SiS 900/7016 PCI Fast Ethernet Adapter support" depends on NET_PCI && PCI select CRC32 select MII ---help--- This is a driver for the Fast Ethernet PCI network cards based on the SiS 900 and SiS 7016 chips. The SiS 900 core is also embedded in SiS 630 and SiS 540 chipsets. This driver also supports AMD 79C901 HomePNA so that you can use your phone line as a network cable. To compile this driver as a module, choose M here: the module will be called sis900. This is recommended. config EPIC100 tristate "SMC EtherPower II" depends on NET_PCI && PCI select CRC32 select MII help This driver is for the SMC EtherPower II 9432 PCI Ethernet NIC, which is based on the SMC83c17x (EPIC/100). More specific information and updates are available from . config SMSC9420 tristate "SMSC LAN9420 PCI ethernet adapter support" depends on NET_PCI && PCI select CRC32 select PHYLIB select SMSC_PHY help This is a driver for SMSC's LAN9420 PCI ethernet adapter. Say Y if you want it compiled into the kernel, and read the Ethernet-HOWTO, available from . This driver is also available as a module. The module will be called smsc9420. If you want to compile it as a module, say M here and read config SUNDANCE tristate "Sundance Alta support" depends on NET_PCI && PCI select CRC32 select MII help This driver is for the Sundance "Alta" chip. More specific information and updates are available from . config SUNDANCE_MMIO bool "Use MMIO instead of PIO" depends on SUNDANCE help Enable memory-mapped I/O for interaction with Sundance NIC registers. Do NOT enable this by default, PIO (enabled when MMIO is disabled) is known to solve bugs on certain chips. If unsure, say N. config TLAN tristate "TI ThunderLAN support" depends on NET_PCI && (PCI || EISA) ---help--- If you have a PCI Ethernet network card based on the ThunderLAN chip which is supported by this driver, say Y and read the Ethernet-HOWTO, available from . Devices currently supported by this driver are Compaq Netelligent, Compaq NetFlex and Olicom cards. Please read the file for more details. To compile this driver as a module, choose M here. The module will be called tlan. Please email feedback to . config KS8842 tristate "Micrel KSZ8841/42 with generic bus interface" depends on HAS_IOMEM && DMA_ENGINE help This platform driver is for KSZ8841(1-port) / KS8842(2-port) ethernet switch chip (managed, VLAN, QoS) from Micrel or Timberdale(FPGA). config KS8851 tristate "Micrel KS8851 SPI" depends on SPI select MII select CRC32 help SPI driver for Micrel KS8851 SPI attached network chip. config KS8851_MLL tristate "Micrel KS8851 MLL" depends on HAS_IOMEM select MII help This platform driver is for Micrel KS8851 Address/data bus multiplexed network chip. config VIA_RHINE tristate "VIA Rhine support" depends on NET_PCI && PCI select CRC32 select MII help If you have a VIA "Rhine" based network card (Rhine-I (VT86C100A), Rhine-II (VT6102), or Rhine-III (VT6105)), say Y here. Rhine-type Ethernet functions can also be found integrated on South Bridges (e.g. VT8235). To compile this driver as a module, choose M here. The module will be called via-rhine. config VIA_RHINE_MMIO bool "Use MMIO instead of PIO" depends on VIA_RHINE help This instructs the driver to use PCI shared memory (MMIO) instead of programmed I/O ports (PIO). Enabling this gives an improvement in processing time in parts of the driver. If unsure, say Y. config SC92031 tristate "Silan SC92031 PCI Fast Ethernet Adapter driver (EXPERIMENTAL)" depends on NET_PCI && PCI && EXPERIMENTAL select CRC32 ---help--- This is a driver for the Fast Ethernet PCI network cards based on the Silan SC92031 chip (sometimes also called Rsltek 8139D). If you have one of these, say Y here. To compile this driver as a module, choose M here: the module will be called sc92031. This is recommended. config CPMAC tristate "TI AR7 CPMAC Ethernet support (EXPERIMENTAL)" depends on NET_ETHERNET && EXPERIMENTAL && AR7 select PHYLIB help TI AR7 CPMAC Ethernet support config NET_POCKET bool "Pocket and portable adapters" depends on PARPORT ---help--- Cute little network (Ethernet) devices which attach to the parallel port ("pocket adapters"), commonly used with laptops. If you have one of those, say Y and read the Ethernet-HOWTO, available from . If you want to plug a network (or some other) card into the PCMCIA (or PC-card) slot of your laptop instead (PCMCIA is the standard for credit card size extension cards used by all modern laptops), you need the pcmcia-cs package (location contained in the file ) and you can say N here. Laptop users should read the Linux Laptop home page at or Tuxmobil - Linux on Mobile Computers at . Note that the answer to this question doesn't directly affect the kernel: saying N will just cause the configurator to skip all the questions about this class of network devices. If you say Y, you will be asked for your specific device in the following questions. config ATP tristate "AT-LAN-TEC/RealTek pocket adapter support" depends on NET_POCKET && PARPORT && X86 select CRC32 ---help--- This is a network (Ethernet) device which attaches to your parallel port. Read as well as the Ethernet-HOWTO, available from , if you want to use this. If you intend to use this driver, you should have said N to the "Parallel printer support", because the two drivers don't like each other. To compile this driver as a module, choose M here: the module will be called atp. config DE600 tristate "D-Link DE600 pocket adapter support" depends on NET_POCKET && PARPORT ---help--- This is a network (Ethernet) device which attaches to your parallel port. Read as well as the Ethernet-HOWTO, available from , if you want to use this. It is possible to have several devices share a single parallel port and it is safe to compile the corresponding drivers into the kernel. To compile this driver as a module, choose M here: the module will be called de600. config DE620 tristate "D-Link DE620 pocket adapter support" depends on NET_POCKET && PARPORT ---help--- This is a network (Ethernet) device which attaches to your parallel port. Read as well as the Ethernet-HOWTO, available from , if you want to use this. It is possible to have several devices share a single parallel port and it is safe to compile the corresponding drivers into the kernel. To compile this driver as a module, choose M here: the module will be called de620. config SGISEEQ tristate "SGI Seeq ethernet controller support" depends on SGI_HAS_SEEQ help Say Y here if you have an Seeq based Ethernet network card. This is used in many Silicon Graphics machines. config DECLANCE tristate "DEC LANCE ethernet controller support" depends on MACH_DECSTATION select CRC32 help This driver is for the series of Ethernet controllers produced by DEC (now Compaq) based on the AMD Lance chipset, including the DEPCA series. (This chipset is better known via the NE2100 cards.) config 68360_ENET bool "Motorola 68360 ethernet controller" depends on M68360 help Say Y here if you want to use the built-in ethernet controller of the Motorola 68360 processor. config FEC bool "FEC ethernet controller (of ColdFire and some i.MX CPUs)" depends on M523x || M527x || M5272 || M528x || M520x || M532x || \ IMX_HAVE_PLATFORM_FEC || MXS_HAVE_PLATFORM_FEC default IMX_HAVE_PLATFORM_FEC || MXS_HAVE_PLATFORM_FEC if ARM select PHYLIB help Say Y here if you want to use the built-in 10/100 Fast ethernet controller on some Motorola ColdFire and Freescale i.MX processors. config FEC_MPC52xx tristate "MPC52xx FEC driver" depends on PPC_MPC52xx && PPC_BESTCOMM select CRC32 select PHYLIB select PPC_BESTCOMM_FEC ---help--- This option enables support for the MPC5200's on-chip Fast Ethernet Controller If compiled as module, it will be called fec_mpc52xx. config FEC_MPC52xx_MDIO bool "MPC52xx FEC MDIO bus driver" depends on FEC_MPC52xx default y ---help--- The MPC5200's FEC can connect to the Ethernet either with an external MII PHY chip or 10 Mbps 7-wire interface (Motorola? industry standard). If your board uses an external PHY connected to FEC, enable this. If not sure, enable. If compiled as module, it will be called fec_mpc52xx_phy. config NE_H8300 tristate "NE2000 compatible support for H8/300" depends on H8300 help Say Y here if you want to use the NE2000 compatible controller on the Renesas H8/300 processor. config ATL2 tristate "Atheros L2 Fast Ethernet support" depends on PCI select CRC32 select MII help This driver supports the Atheros L2 fast ethernet adapter. To compile this driver as a module, choose M here. The module will be called atl2. config XILINX_EMACLITE tristate "Xilinx 10/100 Ethernet Lite support" depends on PPC32 || MICROBLAZE select PHYLIB help This driver supports the 10/100 Ethernet Lite from Xilinx. config BCM63XX_ENET tristate "Broadcom 63xx internal mac support" depends on BCM63XX select MII select PHYLIB help This driver supports the ethernet MACs in the Broadcom 63xx MIPS chipset family (BCM63XX). config FTMAC100 tristate "Faraday FTMAC100 10/100 Ethernet support" depends on ARM select MII help This driver supports the FTMAC100 10/100 Ethernet controller from Faraday. It is used on Faraday A320, Andes AG101 and some other ARM/NDS32 SoC's. source "drivers/net/fs_enet/Kconfig" source "drivers/net/octeon/Kconfig" endif # NET_ETHERNET # # Gigabit Ethernet # menuconfig NETDEV_1000 bool "Ethernet (1000 Mbit)" depends on !UML default y ---help--- Ethernet (also called IEEE 802.3 or ISO 8802-2) is the most common type of Local Area Network (LAN) in universities and companies. Say Y here to get to see options for Gigabit Ethernet drivers. This option alone does not add any kernel code. Note that drivers supporting both 100 and 1000 MBit may be listed under "Ethernet (10 or 100MBit)" instead. If you say N, all options in this submenu will be skipped and disabled. if NETDEV_1000 config ACENIC tristate "Alteon AceNIC/3Com 3C985/NetGear GA620 Gigabit support" depends on PCI ---help--- Say Y here if you have an Alteon AceNIC, 3Com 3C985(B), NetGear GA620, SGI Gigabit or Farallon PN9000-SX PCI Gigabit Ethernet adapter. The driver allows for using the Jumbo Frame option (9000 bytes/frame) however it requires that your switches can handle this as well. To enable Jumbo Frames, add `mtu 9000' to your ifconfig line. To compile this driver as a module, choose M here: the module will be called acenic. config ACENIC_OMIT_TIGON_I bool "Omit support for old Tigon I based AceNICs" depends on ACENIC help Say Y here if you only have Tigon II based AceNICs and want to leave out support for the older Tigon I based cards which are no longer being sold (ie. the original Alteon AceNIC and 3Com 3C985 (non B version)). This will reduce the size of the driver object by app. 100KB. If you are not sure whether your card is a Tigon I or a Tigon II, say N here. The safe and default value for this is N. config DL2K tristate "DL2000/TC902x-based Gigabit Ethernet support" depends on PCI select CRC32 help This driver supports DL2000/TC902x-based Gigabit ethernet cards, which includes D-Link DGE-550T Gigabit Ethernet Adapter. D-Link DL2000-based Gigabit Ethernet Adapter. Sundance/Tamarack TC902x Gigabit Ethernet Adapter. To compile this driver as a module, choose M here: the module will be called dl2k. config E1000 tristate "Intel(R) PRO/1000 Gigabit Ethernet support" depends on PCI ---help--- This driver supports Intel(R) PRO/1000 gigabit ethernet family of adapters. For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: For general information and support, go to the Intel support website at: More specific information on configuring the driver is in . To compile this driver as a module, choose M here. The module will be called e1000. config E1000E tristate "Intel(R) PRO/1000 PCI-Express Gigabit Ethernet support" select CRC32 depends on PCI && (!SPARC32 || BROKEN) select CRC32 ---help--- This driver supports the PCI-Express Intel(R) PRO/1000 gigabit ethernet family of adapters. For PCI or PCI-X e1000 adapters, use the regular e1000 driver For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: For general information and support, go to the Intel support website at: To compile this driver as a module, choose M here. The module will be called e1000e. config IP1000 tristate "IP1000 Gigabit Ethernet support" depends on PCI && EXPERIMENTAL select MII ---help--- This driver supports IP1000 gigabit Ethernet cards. To compile this driver as a module, choose M here: the module will be called ipg. This is recommended. config IGB tristate "Intel(R) 82575/82576 PCI-Express Gigabit Ethernet support" depends on PCI ---help--- This driver supports Intel(R) 82575/82576 gigabit ethernet family of adapters. For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: For general information and support, go to the Intel support website at: More specific information on configuring the driver is in . To compile this driver as a module, choose M here. The module will be called igb. config IGB_DCA bool "Direct Cache Access (DCA) Support" default y depends on IGB && DCA && !(IGB=y && DCA=m) ---help--- Say Y here if you want to use Direct Cache Access (DCA) in the driver. DCA is a method for warming the CPU cache before data is used, with the intent of lessening the impact of cache misses. config IGBVF tristate "Intel(R) 82576 Virtual Function Ethernet support" depends on PCI ---help--- This driver supports Intel(R) 82576 virtual functions. For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: For general information and support, go to the Intel support website at: More specific information on configuring the driver is in . To compile this driver as a module, choose M here. The module will be called igbvf. source "drivers/net/ixp2000/Kconfig" config MYRI_SBUS tristate "MyriCOM Gigabit Ethernet support" depends on SBUS help This driver supports MyriCOM Sbus gigabit Ethernet cards. To compile this driver as a module, choose M here: the module will be called myri_sbus. This is recommended. config NS83820 tristate "National Semiconductor DP83820 support" depends on PCI help This is a driver for the National Semiconductor DP83820 series of gigabit ethernet MACs. Cards using this chipset include the D-Link DGE-500T, PureData's PDP8023Z-TG, SMC's SMC9462TX, SOHO-GA2000T, SOHO-GA2500T. The driver supports the use of zero copy. config HAMACHI tristate "Packet Engines Hamachi GNIC-II support" depends on PCI select MII help If you have a Gigabit Ethernet card of this type, say Y and read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called hamachi. config YELLOWFIN tristate "Packet Engines Yellowfin Gigabit-NIC support (EXPERIMENTAL)" depends on PCI && EXPERIMENTAL select CRC32 ---help--- Say Y here if you have a Packet Engines G-NIC PCI Gigabit Ethernet adapter or the SYM53C885 Ethernet controller. The Gigabit adapter is used by the Beowulf Linux cluster project. See for more information about this driver in particular and Beowulf in general. To compile this driver as a module, choose M here: the module will be called yellowfin. This is recommended. config R8169 tristate "Realtek 8169 gigabit ethernet support" depends on PCI select FW_LOADER select CRC32 select MII ---help--- Say Y here if you have a Realtek 8169 PCI Gigabit Ethernet adapter. To compile this driver as a module, choose M here: the module will be called r8169. This is recommended. config SB1250_MAC tristate "SB1250 Gigabit Ethernet support" depends on SIBYTE_SB1xxx_SOC select PHYLIB ---help--- This driver supports Gigabit Ethernet interfaces based on the Broadcom SiByte family of System-On-a-Chip parts. They include the BCM1120, BCM1125, BCM1125H, BCM1250, BCM1255, BCM1280, BCM1455 and BCM1480 chips. To compile this driver as a module, choose M here: the module will be called sb1250-mac. config SIS190 tristate "SiS190/SiS191 gigabit ethernet support" depends on PCI select CRC32 select MII ---help--- Say Y here if you have a SiS 190 PCI Fast Ethernet adapter or a SiS 191 PCI Gigabit Ethernet adapter. Both are expected to appear in lan on motherboard designs which are based on SiS 965 and SiS 966 south bridge. To compile this driver as a module, choose M here: the module will be called sis190. This is recommended. config SKGE tristate "New SysKonnect GigaEthernet support" depends on PCI select CRC32 ---help--- This driver support the Marvell Yukon or SysKonnect SK-98xx/SK-95xx and related Gigabit Ethernet adapters. It is a new smaller driver with better performance and more complete ethtool support. It does not support the link failover and network management features that "portable" vendor supplied sk98lin driver does. This driver supports adapters based on the original Yukon chipset: Marvell 88E8001, Belkin F5D5005, CNet GigaCard, DLink DGE-530T, Linksys EG1032/EG1064, 3Com 3C940/3C940B, SysKonnect SK-9871/9872. It does not support the newer Yukon2 chipset: a separate driver, sky2, is provided for Yukon2-based adapters. To compile this driver as a module, choose M here: the module will be called skge. This is recommended. config SKGE_DEBUG bool "Debugging interface" depends on SKGE && DEBUG_FS help This option adds the ability to dump driver state for debugging. The file /sys/kernel/debug/skge/ethX displays the state of the internal transmit and receive rings. If unsure, say N. config SKY2 tristate "SysKonnect Yukon2 support" depends on PCI select CRC32 ---help--- This driver supports Gigabit Ethernet adapters based on the Marvell Yukon 2 chipset: Marvell 88E8021/88E8022/88E8035/88E8036/88E8038/88E8050/88E8052/ 88E8053/88E8055/88E8061/88E8062, SysKonnect SK-9E21D/SK-9S21 There is companion driver for the older Marvell Yukon and Genesis based adapters: skge. To compile this driver as a module, choose M here: the module will be called sky2. This is recommended. config SKY2_DEBUG bool "Debugging interface" depends on SKY2 && DEBUG_FS help This option adds the ability to dump driver state for debugging. The file /sys/kernel/debug/sky2/ethX displays the state of the internal transmit and receive rings. If unsure, say N. config VIA_VELOCITY tristate "VIA Velocity support" depends on PCI select CRC32 select CRC_CCITT select MII help If you have a VIA "Velocity" based network card say Y here. To compile this driver as a module, choose M here. The module will be called via-velocity. config TIGON3 tristate "Broadcom Tigon3 support" depends on PCI select PHYLIB help This driver supports Broadcom Tigon3 based gigabit Ethernet cards. To compile this driver as a module, choose M here: the module will be called tg3. This is recommended. config BNX2 tristate "Broadcom NetXtremeII support" depends on PCI select CRC32 select FW_LOADER help This driver supports Broadcom NetXtremeII gigabit Ethernet cards. To compile this driver as a module, choose M here: the module will be called bnx2. This is recommended. config CNIC tristate "Broadcom CNIC support" depends on PCI select BNX2 select UIO help This driver supports offload features of Broadcom NetXtremeII gigabit Ethernet cards. To compile this driver as a module, choose M here: the module will be called cnic. This is recommended. config SPIDER_NET tristate "Spider Gigabit Ethernet driver" depends on PCI && (PPC_IBM_CELL_BLADE || PPC_CELLEB) select FW_LOADER help This driver supports the Gigabit Ethernet chips present on the Cell Processor-Based Blades from IBM. config TSI108_ETH tristate "Tundra TSI108 gigabit Ethernet support" depends on TSI108_BRIDGE help This driver supports Tundra TSI108 gigabit Ethernet ports. To compile this driver as a module, choose M here: the module will be called tsi108_eth. config GELIC_NET tristate "PS3 Gigabit Ethernet driver" depends on PPC_PS3 select PS3_SYS_MANAGER help This driver supports the network device on the PS3 game console. This driver has built-in support for Ethernet. To compile this driver as a module, choose M here: the module will be called ps3_gelic. config GELIC_WIRELESS bool "PS3 Wireless support" depends on WLAN depends on GELIC_NET select WIRELESS_EXT help This option adds the support for the wireless feature of PS3. If you have the wireless-less model of PS3 or have no plan to use wireless feature, disabling this option saves memory. As the driver automatically distinguishes the models, you can safely enable this option even if you have a wireless-less model. config FSL_PQ_MDIO tristate "Freescale PQ MDIO" depends on FSL_SOC select PHYLIB help This driver supports the MDIO bus used by the gianfar and UCC drivers. config GIANFAR tristate "Gianfar Ethernet" depends on FSL_SOC select FSL_PQ_MDIO select PHYLIB select CRC32 help This driver supports the Gigabit TSEC on the MPC83xx, MPC85xx, and MPC86xx family of chips, and the FEC on the 8540. config UCC_GETH tristate "Freescale QE Gigabit Ethernet" depends on QUICC_ENGINE select FSL_PQ_MDIO select PHYLIB help This driver supports the Gigabit Ethernet mode of the QUICC Engine, which is available on some Freescale SOCs. config UGETH_TX_ON_DEMAND bool "Transmit on Demand support" depends on UCC_GETH config MV643XX_ETH tristate "Marvell Discovery (643XX) and Orion ethernet support" depends on (MV64X60 || PPC32 || PLAT_ORION) && INET select INET_LRO select PHYLIB help This driver supports the gigabit ethernet MACs in the Marvell Discovery PPC/MIPS chipset family (MV643XX) and in the Marvell Orion ARM SoC family. Some boards that use the Discovery chipset are the Momenco Ocelot C and Jaguar ATX and Pegasos II. config XILINX_LL_TEMAC tristate "Xilinx LL TEMAC (LocalLink Tri-mode Ethernet MAC) driver" depends on PPC || MICROBLAZE select PHYLIB help This driver supports the Xilinx 10/100/1000 LocalLink TEMAC core used in Xilinx Spartan and Virtex FPGAs config QLA3XXX tristate "QLogic QLA3XXX Network Driver Support" depends on PCI help This driver supports QLogic ISP3XXX gigabit Ethernet cards. To compile this driver as a module, choose M here: the module will be called qla3xxx. config ATL1 tristate "Atheros/Attansic L1 Gigabit Ethernet support" depends on PCI select CRC32 select MII help This driver supports the Atheros/Attansic L1 gigabit ethernet adapter. To compile this driver as a module, choose M here. The module will be called atl1. config ATL1E tristate "Atheros L1E Gigabit Ethernet support (EXPERIMENTAL)" depends on PCI && EXPERIMENTAL select CRC32 select MII help This driver supports the Atheros L1E gigabit ethernet adapter. To compile this driver as a module, choose M here. The module will be called atl1e. config ATL1C tristate "Atheros L1C Gigabit Ethernet support (EXPERIMENTAL)" depends on PCI && EXPERIMENTAL select CRC32 select MII help This driver supports the Atheros L1C gigabit ethernet adapter. To compile this driver as a module, choose M here. The module will be called atl1c. config JME tristate "JMicron(R) PCI-Express Gigabit Ethernet support" depends on PCI select CRC32 select MII ---help--- This driver supports the PCI-Express gigabit ethernet adapters based on JMicron JMC250 chipset. To compile this driver as a module, choose M here. The module will be called jme. config S6GMAC tristate "S6105 GMAC ethernet support" depends on XTENSA_VARIANT_S6000 select PHYLIB help This driver supports the on chip ethernet device on the S6105 xtensa processor. To compile this driver as a module, choose M here. The module will be called s6gmac. source "drivers/net/stmmac/Kconfig" config PCH_GBE tristate "Intel EG20T PCH / OKI SEMICONDUCTOR ML7223 IOH GbE" depends on PCI select MII ---help--- This is a gigabit ethernet driver for EG20T PCH. EG20T PCH is the platform controller hub that is used in Intel's general embedded platform. EG20T PCH has Gigabit Ethernet interface. Using this interface, it is able to access system devices connected to Gigabit Ethernet. This driver enables Gigabit Ethernet function. This driver also can be used for OKI SEMICONDUCTOR IOH(Input/ Output Hub), ML7223. ML7223 IOH is for MP(Media Phone) use. ML7223 is companion chip for Intel Atom E6xx series. ML7223 is completely compatible for Intel EG20T PCH. endif # NETDEV_1000 # # 10 Gigabit Ethernet # menuconfig NETDEV_10000 bool "Ethernet (10000 Mbit)" depends on !UML default y ---help--- Say Y here to get to see options for 10 Gigabit Ethernet drivers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if NETDEV_10000 config MDIO tristate config CHELSIO_T1 tristate "Chelsio 10Gb Ethernet support" depends on PCI select CRC32 select MDIO help This driver supports Chelsio gigabit and 10-gigabit Ethernet cards. More information about adapter features and performance tuning is in . For general information about Chelsio and our products, visit our website at . For customer support, please visit our customer support page at . Please send feedback to . To compile this driver as a module, choose M here: the module will be called cxgb. config CHELSIO_T1_1G bool "Chelsio gigabit Ethernet support" depends on CHELSIO_T1 help Enables support for Chelsio's gigabit Ethernet PCI cards. If you are using only 10G cards say 'N' here. config CHELSIO_T3 tristate "Chelsio Communications T3 10Gb Ethernet support" depends on PCI && INET select FW_LOADER select MDIO help This driver supports Chelsio T3-based gigabit and 10Gb Ethernet adapters. For general information about Chelsio and our products, visit our website at . For customer support, please visit our customer support page at . Please send feedback to . To compile this driver as a module, choose M here: the module will be called cxgb3. config CHELSIO_T4 tristate "Chelsio Communications T4 Ethernet support" depends on PCI select FW_LOADER select MDIO help This driver supports Chelsio T4-based gigabit and 10Gb Ethernet adapters. For general information about Chelsio and our products, visit our website at . For customer support, please visit our customer support page at . Please send feedback to . To compile this driver as a module choose M here; the module will be called cxgb4. config CHELSIO_T4VF tristate "Chelsio Communications T4 Virtual Function Ethernet support" depends on PCI help This driver supports Chelsio T4-based gigabit and 10Gb Ethernet adapters with PCI-E SR-IOV Virtual Functions. For general information about Chelsio and our products, visit our website at . For customer support, please visit our customer support page at . Please send feedback to . To compile this driver as a module choose M here; the module will be called cxgb4vf. config EHEA tristate "eHEA Ethernet support" depends on IBMEBUS && INET && SPARSEMEM select INET_LRO ---help--- This driver supports the IBM pSeries eHEA ethernet adapter. To compile the driver as a module, choose M here. The module will be called ehea. config ENIC tristate "Cisco VIC Ethernet NIC Support" depends on PCI && INET help This enables the support for the Cisco VIC Ethernet card. config IXGBE tristate "Intel(R) 10GbE PCI Express adapters support" depends on PCI && INET select MDIO ---help--- This driver supports Intel(R) 10GbE PCI Express family of adapters. For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: For general information and support, go to the Intel support website at: To compile this driver as a module, choose M here. The module will be called ixgbe. config IXGBE_DCA bool "Direct Cache Access (DCA) Support" default y depends on IXGBE && DCA && !(IXGBE=y && DCA=m) ---help--- Say Y here if you want to use Direct Cache Access (DCA) in the driver. DCA is a method for warming the CPU cache before data is used, with the intent of lessening the impact of cache misses. config IXGBE_DCB bool "Data Center Bridging (DCB) Support" default n depends on IXGBE && DCB ---help--- Say Y here if you want to use Data Center Bridging (DCB) in the driver. If unsure, say N. config IXGBEVF tristate "Intel(R) 82599 Virtual Function Ethernet support" depends on PCI_MSI ---help--- This driver supports Intel(R) 82599 virtual functions. For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: For general information and support, go to the Intel support website at: More specific information on configuring the driver is in . To compile this driver as a module, choose M here. The module will be called ixgbevf. MSI-X interrupt support is required for this driver to work correctly. config IXGB tristate "Intel(R) PRO/10GbE support" depends on PCI ---help--- This driver supports Intel(R) PRO/10GbE family of adapters for PCI-X type cards. For PCI-E type cards, use the "ixgbe" driver instead. For more information on how to identify your adapter, go to the Adapter & Driver ID Guide at: For general information and support, go to the Intel support website at: More specific information on configuring the driver is in . To compile this driver as a module, choose M here. The module will be called ixgb. config S2IO tristate "Exar Xframe 10Gb Ethernet Adapter" depends on PCI ---help--- This driver supports Exar Corp's Xframe Series 10Gb Ethernet Adapters. More specific information on configuring the driver is in . To compile this driver as a module, choose M here. The module will be called s2io. config VXGE tristate "Exar X3100 Series 10GbE PCIe Server Adapter" depends on PCI && INET ---help--- This driver supports Exar Corp's X3100 Series 10 GbE PCIe I/O Virtualized Server Adapter. More specific information on configuring the driver is in . To compile this driver as a module, choose M here. The module will be called vxge. config VXGE_DEBUG_TRACE_ALL bool "Enabling All Debug trace statments in driver" default n depends on VXGE ---help--- Say Y here if you want to enabling all the debug trace statements in the vxge driver. By default only few debug trace statements are enabled. config MYRI10GE tristate "Myricom Myri-10G Ethernet support" depends on PCI && INET select FW_LOADER select CRC32 select INET_LRO ---help--- This driver supports Myricom Myri-10G Dual Protocol interface in Ethernet mode. If the eeprom on your board is not recent enough, you will need a newer firmware image. You may get this image or more information, at: To compile this driver as a module, choose M here. The module will be called myri10ge. config MYRI10GE_DCA bool "Direct Cache Access (DCA) Support" default y depends on MYRI10GE && DCA && !(MYRI10GE=y && DCA=m) ---help--- Say Y here if you want to use Direct Cache Access (DCA) in the driver. DCA is a method for warming the CPU cache before data is used, with the intent of lessening the impact of cache misses. config NETXEN_NIC tristate "NetXen Multi port (1/10) Gigabit Ethernet NIC" depends on PCI select FW_LOADER help This enables the support for NetXen's Gigabit Ethernet card. config NIU tristate "Sun Neptune 10Gbit Ethernet support" depends on PCI select CRC32 help This enables support for cards based upon Sun's Neptune chipset. config PASEMI_MAC tristate "PA Semi 1/10Gbit MAC" depends on PPC_PASEMI && PCI && INET select PHYLIB select INET_LRO help This driver supports the on-chip 1/10Gbit Ethernet controller on PA Semi's PWRficient line of chips. config MLX4_EN tristate "Mellanox Technologies 10Gbit Ethernet support" depends on PCI && INET select MLX4_CORE select INET_LRO help This driver supports Mellanox Technologies ConnectX Ethernet devices. config MLX4_CORE tristate depends on PCI default n config MLX4_DEBUG bool "Verbose debugging output" if (MLX4_CORE && EXPERT) depends on MLX4_CORE default y ---help--- This option causes debugging code to be compiled into the mlx4_core driver. The output can be turned on via the debug_level module parameter (which can also be set after the driver is loaded through sysfs). config TEHUTI tristate "Tehuti Networks 10G Ethernet" depends on PCI help Tehuti Networks 10G Ethernet NIC config BNX2X tristate "Broadcom NetXtremeII 10Gb support" depends on PCI select FW_LOADER select ZLIB_INFLATE select LIBCRC32C select MDIO help This driver supports Broadcom NetXtremeII 10 gigabit Ethernet cards. To compile this driver as a module, choose M here: the module will be called bnx2x. This is recommended. config QLCNIC tristate "QLOGIC QLCNIC 1/10Gb Converged Ethernet NIC Support" depends on PCI select FW_LOADER help This driver supports QLogic QLE8240 and QLE8242 Converged Ethernet devices. config QLGE tristate "QLogic QLGE 10Gb Ethernet Driver Support" depends on PCI help This driver supports QLogic ISP8XXX 10Gb Ethernet cards. To compile this driver as a module, choose M here: the module will be called qlge. config BNA tristate "Brocade 1010/1020 10Gb Ethernet Driver support" depends on PCI ---help--- This driver supports Brocade 1010/1020 10Gb CEE capable Ethernet cards. To compile this driver as a module, choose M here: the module will be called bna. For general information and support, go to the Brocade support website at: source "drivers/net/sfc/Kconfig" source "drivers/net/benet/Kconfig" endif # NETDEV_10000 source "drivers/net/tokenring/Kconfig" source "drivers/net/wireless/Kconfig" source "drivers/net/wimax/Kconfig" source "drivers/net/usb/Kconfig" source "drivers/net/pcmcia/Kconfig" source "drivers/net/wan/Kconfig" source "drivers/atm/Kconfig" source "drivers/ieee802154/Kconfig" source "drivers/s390/net/Kconfig" source "drivers/net/caif/Kconfig" config TILE_NET tristate "Tilera GBE/XGBE network driver support" depends on TILE default y select CRC32 help This is a standard Linux network device driver for the on-chip Tilera Gigabit Ethernet and XAUI interfaces. To compile this driver as a module, choose M here: the module will be called tile_net. config XEN_NETDEV_FRONTEND tristate "Xen network device frontend driver" depends on XEN select XEN_XENBUS_FRONTEND default y help This driver provides support for Xen paravirtual network devices exported by a Xen network driver domain (often domain 0). The corresponding Linux backend driver is enabled by the CONFIG_XEN_NETDEV_BACKEND option. If you are compiling a kernel for use as Xen guest, you should say Y here. To compile this driver as a module, chose M here: the module will be called xen-netfront. config XEN_NETDEV_BACKEND tristate "Xen backend network device" depends on XEN_BACKEND help This driver allows the kernel to act as a Xen network driver domain which exports paravirtual network devices to other Xen domains. These devices can be accessed by any operating system that implements a compatible front end. The corresponding Linux frontend driver is enabled by the CONFIG_XEN_NETDEV_FRONTEND configuration option. The backend driver presents a standard network device endpoint for each paravirtual network device to the driver domain network stack. These can then be bridged or routed etc in order to provide full network connectivity. If you are compiling a kernel to run in a Xen network driver domain (often this is domain 0) you should say Y here. To compile this driver as a module, chose M here: the module will be called xen-netback. config ISERIES_VETH tristate "iSeries Virtual Ethernet driver support" depends on PPC_ISERIES config RIONET tristate "RapidIO Ethernet over messaging driver support" depends on RAPIDIO config RIONET_TX_SIZE int "Number of outbound queue entries" depends on RIONET default "128" config RIONET_RX_SIZE int "Number of inbound queue entries" depends on RIONET default "128" config FDDI tristate "FDDI driver support" depends on (PCI || EISA || TC) help Fiber Distributed Data Interface is a high speed local area network design; essentially a replacement for high speed Ethernet. FDDI can run over copper or fiber. If you are connected to such a network and want a driver for the FDDI card in your computer, say Y here (and then also Y to the driver for your FDDI card, below). Most people will say N. config DEFXX tristate "Digital DEFTA/DEFEA/DEFPA adapter support" depends on FDDI && (PCI || EISA || TC) ---help--- This is support for the DIGITAL series of TURBOchannel (DEFTA), EISA (DEFEA) and PCI (DEFPA) controllers which can connect you to a local FDDI network. To compile this driver as a module, choose M here: the module will be called defxx. If unsure, say N. config DEFXX_MMIO bool prompt "Use MMIO instead of PIO" if PCI || EISA depends on DEFXX default n if PCI || EISA default y ---help--- This instructs the driver to use EISA or PCI memory-mapped I/O (MMIO) as appropriate instead of programmed I/O ports (PIO). Enabling this gives an improvement in processing time in parts of the driver, but it may cause problems with EISA (DEFEA) adapters. TURBOchannel does not have the concept of I/O ports, so MMIO is always used for these (DEFTA) adapters. If unsure, say N. config SKFP tristate "SysKonnect FDDI PCI support" depends on FDDI && PCI select BITREVERSE ---help--- Say Y here if you have a SysKonnect FDDI PCI adapter. The following adapters are supported by this driver: - SK-5521 (SK-NET FDDI-UP) - SK-5522 (SK-NET FDDI-UP DAS) - SK-5541 (SK-NET FDDI-FP) - SK-5543 (SK-NET FDDI-LP) - SK-5544 (SK-NET FDDI-LP DAS) - SK-5821 (SK-NET FDDI-UP64) - SK-5822 (SK-NET FDDI-UP64 DAS) - SK-5841 (SK-NET FDDI-FP64) - SK-5843 (SK-NET FDDI-LP64) - SK-5844 (SK-NET FDDI-LP64 DAS) - Netelligent 100 FDDI DAS Fibre SC - Netelligent 100 FDDI SAS Fibre SC - Netelligent 100 FDDI DAS UTP - Netelligent 100 FDDI SAS UTP - Netelligent 100 FDDI SAS Fibre MIC Read for information about the driver. Questions concerning this driver can be addressed to: To compile this driver as a module, choose M here: the module will be called skfp. This is recommended. config HIPPI bool "HIPPI driver support (EXPERIMENTAL)" depends on EXPERIMENTAL && INET && PCI help HIgh Performance Parallel Interface (HIPPI) is a 800Mbit/sec and 1600Mbit/sec dual-simplex switched or point-to-point network. HIPPI can run over copper (25m) or fiber (300m on multi-mode or 10km on single-mode). HIPPI networks are commonly used for clusters and to connect to super computers. If you are connected to a HIPPI network and have a HIPPI network card in your computer that you want to use under Linux, say Y here (you must also remember to enable the driver for your HIPPI card below). Most people will say N here. config ROADRUNNER tristate "Essential RoadRunner HIPPI PCI adapter support (EXPERIMENTAL)" depends on HIPPI && PCI help Say Y here if this is your PCI HIPPI network card. To compile this driver as a module, choose M here: the module will be called rrunner. If unsure, say N. config ROADRUNNER_LARGE_RINGS bool "Use large TX/RX rings (EXPERIMENTAL)" depends on ROADRUNNER help If you say Y here, the RoadRunner driver will preallocate up to 2 MB of additional memory to allow for fastest operation, both for transmitting and receiving. This memory cannot be used by any other kernel code or by user space programs. Say Y here only if you have the memory. config PLIP tristate "PLIP (parallel port) support" depends on PARPORT ---help--- PLIP (Parallel Line Internet Protocol) is used to create a reasonably fast mini network consisting of two (or, rarely, more) local machines. A PLIP link from a Linux box is a popular means to install a Linux distribution on a machine which doesn't have a CD-ROM drive (a minimal system has to be transferred with floppies first). The kernels on both machines need to have this PLIP option enabled for this to work. The PLIP driver has two modes, mode 0 and mode 1. The parallel ports (the connectors at the computers with 25 holes) are connected with "null printer" or "Turbo Laplink" cables which can transmit 4 bits at a time (mode 0) or with special PLIP cables, to be used on bidirectional parallel ports only, which can transmit 8 bits at a time (mode 1); you can find the wiring of these cables in . The cables can be up to 15m long. Mode 0 works also if one of the machines runs DOS/Windows and has some PLIP software installed, e.g. the Crynwr PLIP packet driver () and winsock or NCSA's telnet. If you want to use PLIP, say Y and read the PLIP mini-HOWTO as well as the NET-3-HOWTO, both available from . Note that the PLIP protocol has been changed and this PLIP driver won't work together with the PLIP support in Linux versions 1.0.x. This option enlarges your kernel by about 8 KB. To compile this driver as a module, choose M here. The module will be called plip. If unsure, say Y or M, in case you buy a laptop later. config PPP tristate "PPP (point-to-point protocol) support" select SLHC ---help--- PPP (Point to Point Protocol) is a newer and better SLIP. It serves the same purpose: sending Internet traffic over telephone (and other serial) lines. Ask your access provider if they support it, because otherwise you can't use it; most Internet access providers these days support PPP rather than SLIP. To use PPP, you need an additional program called pppd as described in the PPP-HOWTO, available at . Make sure that you have the version of pppd recommended in . The PPP option enlarges your kernel by about 16 KB. There are actually two versions of PPP: the traditional PPP for asynchronous lines, such as regular analog phone lines, and synchronous PPP which can be used over digital ISDN lines for example. If you want to use PPP over phone lines or other asynchronous serial lines, you need to say Y (or M) here and also to the next option, "PPP support for async serial ports". For PPP over synchronous lines, you should say Y (or M) here and to "Support synchronous PPP", below. If you said Y to "Version information on all symbols" above, then you cannot compile the PPP driver into the kernel; you can then only compile it as a module. To compile this driver as a module, choose M here. The module will be called ppp_generic. config PPP_MULTILINK bool "PPP multilink support (EXPERIMENTAL)" depends on PPP && EXPERIMENTAL help PPP multilink is a protocol (defined in RFC 1990) which allows you to combine several (logical or physical) lines into one logical PPP connection, so that you can utilize your full bandwidth. This has to be supported at the other end as well and you need a version of the pppd daemon which understands the multilink protocol. If unsure, say N. config PPP_FILTER bool "PPP filtering" depends on PPP help Say Y here if you want to be able to filter the packets passing over PPP interfaces. This allows you to control which packets count as activity (i.e. which packets will reset the idle timer or bring up a demand-dialed link) and which packets are to be dropped entirely. You need to say Y here if you wish to use the pass-filter and active-filter options to pppd. If unsure, say N. config PPP_ASYNC tristate "PPP support for async serial ports" depends on PPP select CRC_CCITT ---help--- Say Y (or M) here if you want to be able to use PPP over standard asynchronous serial ports, such as COM1 or COM2 on a PC. If you use a modem (not a synchronous or ISDN modem) to contact your ISP, you need this option. To compile this driver as a module, choose M here. If unsure, say Y. config PPP_SYNC_TTY tristate "PPP support for sync tty ports" depends on PPP help Say Y (or M) here if you want to be able to use PPP over synchronous (HDLC) tty devices, such as the SyncLink adapter. These devices are often used for high-speed leased lines like T1/E1. To compile this driver as a module, choose M here. config PPP_DEFLATE tristate "PPP Deflate compression" depends on PPP select ZLIB_INFLATE select ZLIB_DEFLATE ---help--- Support for the Deflate compression method for PPP, which uses the Deflate algorithm (the same algorithm that gzip uses) to compress each PPP packet before it is sent over the wire. The machine at the other end of the PPP link (usually your ISP) has to support the Deflate compression method as well for this to be useful. Even if they don't support it, it is safe to say Y here. To compile this driver as a module, choose M here. config PPP_BSDCOMP tristate "PPP BSD-Compress compression" depends on PPP ---help--- Support for the BSD-Compress compression method for PPP, which uses the LZW compression method to compress each PPP packet before it is sent over the wire. The machine at the other end of the PPP link (usually your ISP) has to support the BSD-Compress compression method as well for this to be useful. Even if they don't support it, it is safe to say Y here. The PPP Deflate compression method ("PPP Deflate compression", above) is preferable to BSD-Compress, because it compresses better and is patent-free. Note that the BSD compression code will always be compiled as a module; it is called bsd_comp and will show up in the directory modules once you have said "make modules". If unsure, say N. config PPP_MPPE tristate "PPP MPPE compression (encryption) (EXPERIMENTAL)" depends on PPP && EXPERIMENTAL select CRYPTO select CRYPTO_SHA1 select CRYPTO_ARC4 select CRYPTO_ECB ---help--- Support for the MPPE Encryption protocol, as employed by the Microsoft Point-to-Point Tunneling Protocol. See http://pptpclient.sourceforge.net/ for information on configuring PPTP clients and servers to utilize this method. config PPPOE tristate "PPP over Ethernet (EXPERIMENTAL)" depends on EXPERIMENTAL && PPP help Support for PPP over Ethernet. This driver requires the latest version of pppd from the CVS repository at cvs.samba.org. Alternatively, see the RoaringPenguin package () which contains instruction on how to use this driver (under the heading "Kernel mode PPPoE"). config PPTP tristate "PPP over IPv4 (PPTP) (EXPERIMENTAL)" depends on EXPERIMENTAL && PPP && NET_IPGRE_DEMUX help Support for PPP over IPv4.(Point-to-Point Tunneling Protocol) This driver requires pppd plugin to work in client mode or modified pptpd (poptop) to work in server mode. See http://accel-pptp.sourceforge.net/ for information how to utilize this module. config PPPOATM tristate "PPP over ATM" depends on ATM && PPP help Support PPP (Point to Point Protocol) encapsulated in ATM frames. This implementation does not yet comply with section 8 of RFC2364, which can lead to bad results if the ATM peer loses state and changes its encapsulation unilaterally. config PPPOL2TP tristate "PPP over L2TP (EXPERIMENTAL)" depends on EXPERIMENTAL && L2TP && PPP help Support for PPP-over-L2TP socket family. L2TP is a protocol used by ISPs and enterprises to tunnel PPP traffic over UDP tunnels. L2TP is replacing PPTP for VPN uses. config SLIP tristate "SLIP (serial line) support" ---help--- Say Y if you intend to use SLIP or CSLIP (compressed SLIP) to connect to your Internet service provider or to connect to some other local Unix box or if you want to configure your Linux box as a Slip/CSlip server for other people to dial in. SLIP (Serial Line Internet Protocol) is a protocol used to send Internet traffic over serial connections such as telephone lines or null modem cables; nowadays, the protocol PPP is more commonly used for this same purpose. Normally, your access provider has to support SLIP in order for you to be able to use it, but there is now a SLIP emulator called SLiRP around (available from ) which allows you to use SLIP over a regular dial up shell connection. If you plan to use SLiRP, make sure to say Y to CSLIP, below. The NET-3-HOWTO, available from , explains how to configure SLIP. Note that you don't need this option if you just want to run term (term is a program which gives you almost full Internet connectivity if you have a regular dial up shell account on some Internet connected Unix computer. Read ). SLIP support will enlarge your kernel by about 4 KB. If unsure, say N. To compile this driver as a module, choose M here. The module will be called slip. config SLIP_COMPRESSED bool "CSLIP compressed headers" depends on SLIP select SLHC ---help--- This protocol is faster than SLIP because it uses compression on the TCP/IP headers (not on the data itself), but it has to be supported on both ends. Ask your access provider if you are not sure and answer Y, just in case. You will still be able to use plain SLIP. If you plan to use SLiRP, the SLIP emulator (available from ) which allows you to use SLIP over a regular dial up shell connection, you definitely want to say Y here. The NET-3-HOWTO, available from , explains how to configure CSLIP. This won't enlarge your kernel. config SLHC tristate help This option enables Van Jacobsen serial line header compression routines. config SLIP_SMART bool "Keepalive and linefill" depends on SLIP help Adds additional capabilities to the SLIP driver to support the RELCOM line fill and keepalive monitoring. Ideal on poor quality analogue lines. config SLIP_MODE_SLIP6 bool "Six bit SLIP encapsulation" depends on SLIP help Just occasionally you may need to run IP over hostile serial networks that don't pass all control characters or are only seven bit. Saying Y here adds an extra mode you can use with SLIP: "slip6". In this mode, SLIP will only send normal ASCII symbols over the serial device. Naturally, this has to be supported at the other end of the link as well. It's good enough, for example, to run IP over the async ports of a Camtec JNT Pad. If unsure, say N. config NET_FC bool "Fibre Channel driver support" depends on SCSI && PCI help Fibre Channel is a high speed serial protocol mainly used to connect large storage devices to the computer; it is compatible with and intended to replace SCSI. If you intend to use Fibre Channel, you need to have a Fibre channel adaptor card in your computer; say Y here and to the driver for your adaptor below. You also should have said Y to "SCSI support" and "SCSI generic support". config NETCONSOLE tristate "Network console logging support" ---help--- If you want to log kernel messages over the network, enable this. See for details. config NETCONSOLE_DYNAMIC bool "Dynamic reconfiguration of logging targets" depends on NETCONSOLE && SYSFS && CONFIGFS_FS help This option enables the ability to dynamically reconfigure target parameters (interface, IP addresses, port numbers, MAC addresses) at runtime through a userspace interface exported using configfs. See for details. config NETPOLL def_bool NETCONSOLE config NETPOLL_TRAP bool "Netpoll traffic trapping" default n depends on NETPOLL config NET_POLL_CONTROLLER def_bool NETPOLL config VIRTIO_NET tristate "Virtio network driver (EXPERIMENTAL)" depends on EXPERIMENTAL && VIRTIO ---help--- This is the virtual network driver for virtio. It can be used with lguest or QEMU based VMMs (like KVM or Xen). Say Y or M. config VMXNET3 tristate "VMware VMXNET3 ethernet driver" depends on PCI && INET help This driver supports VMware's vmxnet3 virtual ethernet NIC. To compile this driver as a module, choose M here: the module will be called vmxnet3. endif # NETDEVICES # # PCMCIA Network device configuration # menuconfig NET_PCMCIA bool "PCMCIA network device support" depends on PCMCIA ---help--- Say Y if you would like to include support for any PCMCIA or CardBus network adapters, then say Y to the driver for your particular card below. PCMCIA- or PC-cards are credit-card size devices often used with laptops computers; CardBus is the newer and faster version of PCMCIA. To use your PC-cards, you will need supporting software from David Hinds' pcmcia-cs package (see the file for location). You also want to check out the PCMCIA-HOWTO, available from . If unsure, say N. if NET_PCMCIA && PCMCIA config PCMCIA_3C589 tristate "3Com 3c589 PCMCIA support" help Say Y here if you intend to attach a 3Com 3c589 or compatible PCMCIA (PC-card) Ethernet card to your computer. To compile this driver as a module, choose M here: the module will be called 3c589_cs. If unsure, say N. config PCMCIA_3C574 tristate "3Com 3c574 PCMCIA support" help Say Y here if you intend to attach a 3Com 3c574 or compatible PCMCIA (PC-card) Fast Ethernet card to your computer. To compile this driver as a module, choose M here: the module will be called 3c574_cs. If unsure, say N. config PCMCIA_FMVJ18X tristate "Fujitsu FMV-J18x PCMCIA support" select CRC32 help Say Y here if you intend to attach a Fujitsu FMV-J18x or compatible PCMCIA (PC-card) Ethernet card to your computer. To compile this driver as a module, choose M here: the module will be called fmvj18x_cs. If unsure, say N. config PCMCIA_PCNET tristate "NE2000 compatible PCMCIA support" select CRC32 help Say Y here if you intend to attach an NE2000 compatible PCMCIA (PC-card) Ethernet or Fast Ethernet card to your computer. To compile this driver as a module, choose M here: the module will be called pcnet_cs. If unsure, say N. config PCMCIA_NMCLAN tristate "New Media PCMCIA support" help Say Y here if you intend to attach a New Media Ethernet or LiveWire PCMCIA (PC-card) Ethernet card to your computer. To compile this driver as a module, choose M here: the module will be called nmclan_cs. If unsure, say N. config PCMCIA_SMC91C92 tristate "SMC 91Cxx PCMCIA support" select CRC32 select MII help Say Y here if you intend to attach an SMC 91Cxx compatible PCMCIA (PC-card) Ethernet or Fast Ethernet card to your computer. To compile this driver as a module, choose M here: the module will be called smc91c92_cs. If unsure, say N. config PCMCIA_XIRC2PS tristate "Xircom 16-bit PCMCIA support" help Say Y here if you intend to attach a Xircom 16-bit PCMCIA (PC-card) Ethernet or Fast Ethernet card to your computer. To compile this driver as a module, choose M here: the module will be called xirc2ps_cs. If unsure, say N. config PCMCIA_AXNET tristate "Asix AX88190 PCMCIA support" ---help--- Say Y here if you intend to attach an Asix AX88190-based PCMCIA (PC-card) Fast Ethernet card to your computer. These cards are nearly NE2000 compatible but need a separate driver due to a few misfeatures. To compile this driver as a module, choose M here: the module will be called axnet_cs. If unsure, say N. config ARCNET_COM20020_CS tristate "COM20020 ARCnet PCMCIA support" depends on ARCNET_COM20020 help Say Y here if you intend to attach this type of ARCnet PCMCIA card to your computer. To compile this driver as a module, choose M here: the module will be called com20020_cs. If unsure, say N. config PCMCIA_IBMTR tristate "IBM PCMCIA tokenring adapter support" depends on IBMTR!=y && TR help Say Y here if you intend to attach this type of Token Ring PCMCIA card to your computer. You then also need to say Y to "Token Ring driver support". To compile this driver as a module, choose M here: the module will be called ibmtr_cs. endif # NET_PCMCIA # # Tulip family network device configuration # menuconfig NET_TULIP bool "\"Tulip\" family network device support" depends on PCI || EISA || CARDBUS help This selects the "Tulip" family of EISA/PCI network cards. if NET_TULIP config DE2104X tristate "Early DECchip Tulip (dc2104x) PCI support" depends on PCI select CRC32 ---help--- This driver is developed for the SMC EtherPower series Ethernet cards and also works with cards based on the DECchip 21040 (Tulip series) chips. Some LinkSys PCI cards are of this type. (If your card is NOT SMC EtherPower 10/100 PCI (smc9332dst), you can also try the driver for "Generic DECchip" cards, below. However, most people with a network card of this type will say Y here.) Do read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called de2104x. config DE2104X_DSL int "Descriptor Skip Length in 32 bit longwords" depends on DE2104X range 0 31 default 0 help Setting this value allows to align ring buffer descriptors into their own cache lines. Value of 4 corresponds to the typical 32 byte line (the descriptor is 16 bytes). This is necessary on systems that lack cache coherence, an example is PowerMac 5500. Otherwise 0 is safe. Default is 0, and range is 0 to 31. config TULIP tristate "DECchip Tulip (dc2114x) PCI support" depends on PCI select CRC32 ---help--- This driver is developed for the SMC EtherPower series Ethernet cards and also works with cards based on the DECchip 21140 (Tulip series) chips. Some LinkSys PCI cards are of this type. (If your card is NOT SMC EtherPower 10/100 PCI (smc9332dst), you can also try the driver for "Generic DECchip" cards, above. However, most people with a network card of this type will say Y here.) Do read the Ethernet-HOWTO, available from . To compile this driver as a module, choose M here. The module will be called tulip. config TULIP_MWI bool "New bus configuration (EXPERIMENTAL)" depends on TULIP && EXPERIMENTAL help This configures your Tulip card specifically for the card and system cache line size type you are using. This is experimental code, not yet tested on many boards. If unsure, say N. config TULIP_MMIO bool "Use PCI shared mem for NIC registers" depends on TULIP help Use PCI shared memory for the NIC registers, rather than going through the Tulip's PIO (programmed I/O ports). Faster, but could produce obscure bugs if your mainboard has memory controller timing issues. If in doubt, say N. config TULIP_NAPI bool "Use RX polling (NAPI)" depends on TULIP help NAPI is a new driver API designed to reduce CPU and interrupt load when the driver is receiving lots of packets from the card. It is still somewhat experimental and thus not yet enabled by default. If your estimated Rx load is 10kpps or more, or if the card will be deployed on potentially unfriendly networks (e.g. in a firewall), then say Y here. If in doubt, say N. config TULIP_NAPI_HW_MITIGATION bool "Use Interrupt Mitigation" depends on TULIP_NAPI ---help--- Use HW to reduce RX interrupts. Not strictly necessary since NAPI reduces RX interrupts by itself. Interrupt mitigation reduces RX interrupts even at low levels of traffic at the cost of a small latency. If in doubt, say Y. config TULIP_DM910X def_bool y depends on TULIP && SPARC config DE4X5 tristate "Generic DECchip & DIGITAL EtherWORKS PCI/EISA" depends on PCI || EISA select CRC32 ---help--- This is support for the DIGITAL series of PCI/EISA Ethernet cards. These include the DE425, DE434, DE435, DE450 and DE500 models. If you have a network card of this type, say Y and read the Ethernet-HOWTO, available from . More specific information is contained in . To compile this driver as a module, choose M here. The module will be called de4x5. config WINBOND_840 tristate "Winbond W89c840 Ethernet support" depends on PCI select CRC32 select MII help This driver is for the Winbond W89c840 chip. It also works with the TX9882 chip on the Compex RL100-ATX board. More specific information and updates are available from . config DM9102 tristate "Davicom DM910x/DM980x support" depends on PCI select CRC32 ---help--- This driver is for DM9102(A)/DM9132/DM9801 compatible PCI cards from Davicom (). If you have such a network (Ethernet) card, say Y. Some information is contained in the file . To compile this driver as a module, choose M here. The module will be called dmfe. config ULI526X tristate "ULi M526x controller support" depends on PCI select CRC32 ---help--- This driver is for ULi M5261/M5263 10/100M Ethernet Controller (). To compile this driver as a module, choose M here. The module will be called uli526x. config PCMCIA_XIRCOM tristate "Xircom CardBus support" depends on CARDBUS ---help--- This driver is for the Digital "Tulip" Ethernet CardBus adapters. It should work with most DEC 21*4*-based chips/ethercards, as well as with work-alike chips from Lite-On (PNIC) and Macronix (MXIC) and ASIX. To compile this driver as a module, choose M here. The module will be called xircom_cb. If unsure, say N. endif # NET_TULIP # # Token Ring driver configuration # # So far, we only have PCI, ISA, and MCA token ring devices menuconfig TR tristate "Token Ring driver support" depends on NETDEVICES && !UML depends on (PCI || ISA || MCA || CCW) select LLC help Token Ring is IBM's way of communication on a local network; the rest of the world uses Ethernet. To participate on a Token Ring network, you need a special Token ring network card. If you are connected to such a Token Ring network and want to use your Token Ring card under Linux, say Y here and to the driver for your particular card below and read the Token-Ring mini-HOWTO, available from . Most people can say N here. if TR config IBMTR tristate "IBM Tropic chipset based adapter support" depends on ISA || MCA ---help--- This is support for all IBM Token Ring cards that don't use DMA. If you have such a beast, say Y and read the Token-Ring mini-HOWTO, available from . Warning: this driver will almost definitely fail if more than one active Token Ring card is present. To compile this driver as a module, choose M here: the module will be called ibmtr. config IBMOL tristate "IBM Olympic chipset PCI adapter support" depends on PCI ---help--- This is support for all non-Lanstreamer IBM PCI Token Ring Cards. Specifically this is all IBM PCI, PCI Wake On Lan, PCI II, PCI II Wake On Lan, and PCI 100/16/4 adapters. If you have such an adapter, say Y and read the Token-Ring mini-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called olympic. Also read or check the Linux Token Ring Project site for the latest information at . config IBMLS tristate "IBM Lanstreamer chipset PCI adapter support" depends on PCI && !64BIT help This is support for IBM Lanstreamer PCI Token Ring Cards. If you have such an adapter, say Y and read the Token-Ring mini-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called lanstreamer. config 3C359 tristate "3Com 3C359 Token Link Velocity XL adapter support" depends on PCI ---help--- This is support for the 3Com PCI Velocity XL cards, specifically the 3Com 3C359, please note this is not for the 3C339 cards, you should use the tms380 driver instead. If you have such an adapter, say Y and read the Token-Ring mini-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called 3c359. Also read the file or check the Linux Token Ring Project site for the latest information at config TMS380TR tristate "Generic TMS380 Token Ring ISA/PCI adapter support" depends on PCI || ISA && ISA_DMA_API || MCA select FW_LOADER ---help--- This driver provides generic support for token ring adapters based on the Texas Instruments TMS380 series chipsets. This includes the SysKonnect TR4/16(+) ISA (SK-4190), SysKonnect TR4/16(+) PCI (SK-4590), SysKonnect TR4/16 PCI (SK-4591), Compaq 4/16 PCI, Thomas-Conrad TC4048 4/16 PCI, and several Madge adapters. If you say Y here, you will be asked to select which cards to support below. If you're using modules, each class of card will be supported by a separate module. If you have such an adapter and would like to use it, say Y and read the Token-Ring mini-HOWTO, available from . Also read the file or check . To compile this driver as a module, choose M here: the module will be called tms380tr. config TMSPCI tristate "Generic TMS380 PCI support" depends on TMS380TR && PCI ---help--- This tms380 module supports generic TMS380-based PCI cards. These cards are known to work: - Compaq 4/16 TR PCI - SysKonnect TR4/16 PCI (SK-4590/SK-4591) - Thomas-Conrad TC4048 PCI 4/16 - 3Com Token Link Velocity To compile this driver as a module, choose M here: the module will be called tmspci. config SKISA tristate "SysKonnect TR4/16 ISA support" depends on TMS380TR && ISA help This tms380 module supports SysKonnect TR4/16 ISA cards. These cards are known to work: - SysKonnect TR4/16 ISA (SK-4190) To compile this driver as a module, choose M here: the module will be called skisa. config PROTEON tristate "Proteon ISA support" depends on TMS380TR && ISA help This tms380 module supports Proteon ISA cards. These cards are known to work: - Proteon 1392 - Proteon 1392 plus To compile this driver as a module, choose M here: the module will be called proteon. config ABYSS tristate "Madge Smart 16/4 PCI Mk2 support" depends on TMS380TR && PCI help This tms380 module supports the Madge Smart 16/4 PCI Mk2 cards (51-02). To compile this driver as a module, choose M here: the module will be called abyss. config MADGEMC tristate "Madge Smart 16/4 Ringnode MicroChannel" depends on TMS380TR && MCA help This tms380 module supports the Madge Smart 16/4 MC16 and MC32 MicroChannel adapters. To compile this driver as a module, choose M here: the module will be called madgemc. config SMCTR tristate "SMC ISA/MCA adapter support" depends on (ISA || MCA_LEGACY) && (BROKEN || !64BIT) ---help--- This is support for the ISA and MCA SMC Token Ring cards, specifically SMC TokenCard Elite (8115T) and SMC TokenCard Elite/A (8115T/A) adapters. If you have such an adapter and would like to use it, say Y or M and read the Token-Ring mini-HOWTO, available from and the file . To compile this driver as a module, choose M here: the module will be called smctr. endif # TR config MKISS tristate "Serial port KISS driver" depends on AX25 select CRC16 ---help--- KISS is a protocol used for the exchange of data between a computer and a Terminal Node Controller (a small embedded system commonly used for networking over AX.25 amateur radio connections; it connects the computer's serial port with the radio's microphone input and speaker output). Although KISS is less advanced than the 6pack protocol, it has the advantage that it is already supported by most modern TNCs without the need for a firmware upgrade. To compile this driver as a module, choose M here: the module will be called mkiss. config 6PACK tristate "Serial port 6PACK driver" depends on AX25 ---help--- 6pack is a transmission protocol for the data exchange between your PC and your TNC (the Terminal Node Controller acts as a kind of modem connecting your computer's serial port to your radio's microphone input and speaker output). This protocol can be used as an alternative to KISS for networking over AX.25 amateur radio connections, but it has some extended functionality. Note that this driver is still experimental and might cause problems. For details about the features and the usage of the driver, read . To compile this driver as a module, choose M here: the module will be called 6pack. config BPQETHER tristate "BPQ Ethernet driver" depends on AX25 help AX.25 is the protocol used for computer communication over amateur radio. If you say Y here, you will be able to send and receive AX.25 traffic over Ethernet (also called "BPQ AX.25"), which could be useful if some other computer on your local network has a direct amateur radio connection. config DMASCC tristate "High-speed (DMA) SCC driver for AX.25" depends on ISA && AX25 && BROKEN_ON_SMP && ISA_DMA_API ---help--- This is a driver for high-speed SCC boards, i.e. those supporting DMA on one port. You usually use those boards to connect your computer to an amateur radio modem (such as the WA4DSY 56kbps modem), in order to send and receive AX.25 packet radio network traffic. Currently, this driver supports Ottawa PI/PI2, Paccomm/Gracilis PackeTwin, and S5SCC/DMA boards. They are detected automatically. If you have one of these cards, say Y here and read the AX25-HOWTO, available from . This driver can operate multiple boards simultaneously. If you compile it as a module (by saying M instead of Y), it will be called dmascc. If you don't pass any parameter to the driver, all possible I/O addresses are probed. This could irritate other devices that are currently not in use. You may specify the list of addresses to be probed by "dmascc.io=addr1,addr2,..." (when compiled into the kernel image) or "io=addr1,addr2,..." (when loaded as a module). The network interfaces will be called dmascc0 and dmascc1 for the board detected first, dmascc2 and dmascc3 for the second one, and so on. Before you configure each interface with ifconfig, you MUST set certain parameters, such as channel access timing, clock mode, and DMA channel. This is accomplished with a small utility program, dmascc_cfg, available at . Please be sure to get at least version 1.27 of dmascc_cfg, as older versions will not work with the current driver. config SCC tristate "Z8530 SCC driver" depends on ISA && AX25 && ISA_DMA_API ---help--- These cards are used to connect your Linux box to an amateur radio in order to communicate with other computers. If you want to use this, read and the AX25-HOWTO, available from . Also make sure to say Y to "Amateur Radio AX.25 Level 2" support. To compile this driver as a module, choose M here: the module will be called scc. config SCC_DELAY bool "additional delay for PA0HZP OptoSCC compatible boards" depends on SCC help Say Y here if you experience problems with the SCC driver not working properly; please read for details. If unsure, say N. config SCC_TRXECHO bool "support for TRX that feedback the tx signal to rx" depends on SCC help Some transmitters feed the transmitted signal back to the receive line. Say Y here to foil this by explicitly disabling the receiver during data transmission. If in doubt, say Y. config BAYCOM_SER_FDX tristate "BAYCOM ser12 fullduplex driver for AX.25" depends on AX25 && !S390 select CRC_CCITT ---help--- This is one of two drivers for Baycom style simple amateur radio modems that connect to a serial interface. The driver supports the ser12 design in full-duplex mode. In addition, it allows the baudrate to be set between 300 and 4800 baud (however not all modems support all baudrates). This is the preferred driver. The next driver, "BAYCOM ser12 half-duplex driver for AX.25" is the old driver and still provided in case this driver does not work with your serial interface chip. To configure the driver, use the sethdlc utility available in the standard ax25 utilities package. For information on the modems, see and . To compile this driver as a module, choose M here: the module will be called baycom_ser_fdx. This is recommended. config BAYCOM_SER_HDX tristate "BAYCOM ser12 halfduplex driver for AX.25" depends on AX25 && !S390 select CRC_CCITT ---help--- This is one of two drivers for Baycom style simple amateur radio modems that connect to a serial interface. The driver supports the ser12 design in half-duplex mode. This is the old driver. It is still provided in case your serial interface chip does not work with the full-duplex driver. This driver is deprecated. To configure the driver, use the sethdlc utility available in the standard ax25 utilities package. For information on the modems, see and . To compile this driver as a module, choose M here: the module will be called baycom_ser_hdx. This is recommended. config BAYCOM_PAR tristate "BAYCOM picpar and par96 driver for AX.25" depends on PARPORT && AX25 select CRC_CCITT ---help--- This is a driver for Baycom style simple amateur radio modems that connect to a parallel interface. The driver supports the picpar and par96 designs. To configure the driver, use the sethdlc utility available in the standard ax25 utilities package. For information on the modems, see and the file . To compile this driver as a module, choose M here: the module will be called baycom_par. This is recommended. config BAYCOM_EPP tristate "BAYCOM epp driver for AX.25" depends on PARPORT && AX25 && !64BIT select CRC_CCITT ---help--- This is a driver for Baycom style simple amateur radio modems that connect to a parallel interface. The driver supports the EPP designs. To configure the driver, use the sethdlc utility available in the standard ax25 utilities package. For information on the modems, see and the file . To compile this driver as a module, choose M here: the module will be called baycom_epp. This is recommended. config YAM tristate "YAM driver for AX.25" depends on AX25 && !S390 help The YAM is a modem for packet radio which connects to the serial port and includes some of the functions of a Terminal Node Controller. If you have one of those, say Y here. To compile this driver as a module, choose M here: the module will be called yam. config SFC tristate "Solarflare Solarstorm SFC4000/SFC9000-family support" depends on PCI && INET select MDIO select CRC32 select I2C select I2C_ALGOBIT help This driver supports 10-gigabit Ethernet cards based on the Solarflare Communications Solarstorm SFC4000 and SFC9000-family controllers. To compile this driver as a module, choose M here. The module will be called sfc. config SFC_MTD bool "Solarflare Solarstorm SFC4000/SFC9000-family MTD support" depends on SFC && MTD && !(SFC=y && MTD=m) default y help This exposes the on-board flash memory as MTD devices (e.g. /dev/mtd1). This makes it possible to upload new firmware to the NIC. config OCTEON_MGMT_ETHERNET tristate "Octeon Management port ethernet driver (CN5XXX, CN6XXX)" depends on CPU_CAVIUM_OCTEON select PHYLIB select MDIO_OCTEON default y help This option enables the ethernet driver for the management port on Cavium Networks' Octeon CN57XX, CN56XX, CN55XX, CN54XX, CN52XX, and CN6XXX chips. menuconfig CAN_C_CAN tristate "Bosch C_CAN devices" depends on CAN_DEV && HAS_IOMEM if CAN_C_CAN config CAN_C_CAN_PLATFORM tristate "Generic Platform Bus based C_CAN driver" ---help--- This driver adds support for the C_CAN chips connected to the "platform bus" (Linux abstraction for directly to the processor attached devices) which can be found on various boards from ST Microelectronics (http://www.st.com) like the SPEAr1310 and SPEAr320 evaluation boards. endif config CAN_MSCAN depends on CAN_DEV && (PPC || M68K) tristate "Support for Freescale MSCAN based chips" ---help--- The Motorola Scalable Controller Area Network (MSCAN) definition is based on the MSCAN12 definition which is the specific implementation of the Motorola Scalable CAN concept targeted for the Motorola MC68HC12 Microcontroller Family. if CAN_MSCAN config CAN_MPC5XXX tristate "Freescale MPC5xxx onboard CAN controller" depends on (PPC_MPC52xx || PPC_MPC512x) ---help--- If you say yes here you get support for Freescale's MPC5xxx onboard CAN controller. Currently, the MPC5200, MPC5200B and MPC5121 (Rev. 2 and later) are supported. This driver can also be built as a module. If so, the module will be called mscan-mpc5xxx.ko. endif menu "CAN USB interfaces" depends on USB && CAN_DEV config CAN_EMS_USB tristate "EMS CPC-USB/ARM7 CAN/USB interface" ---help--- This driver is for the one channel CPC-USB/ARM7 CAN/USB interface from EMS Dr. Thomas Wuensche (http://www.ems-wuensche.de). config CAN_ESD_USB2 tristate "ESD USB/2 CAN/USB interface" ---help--- This driver supports the CAN-USB/2 interface from esd electronic system design gmbh (http://www.esd.eu). endmenu menu "CAN Device Drivers" depends on CAN config CAN_VCAN tristate "Virtual Local CAN Interface (vcan)" depends on CAN default N ---help--- Similar to the network loopback devices, vcan offers a virtual local CAN interface. This driver can also be built as a module. If so, the module will be called vcan. config CAN_SLCAN tristate "Serial / USB serial CAN Adaptors (slcan)" depends on CAN default N ---help--- CAN driver for several 'low cost' CAN interfaces that are attached via serial lines or via USB-to-serial adapters using the LAWICEL ASCII protocol. The driver implements the tty linediscipline N_SLCAN. As only the sending and receiving of CAN frames is implemented, this driver should work with the (serial/USB) CAN hardware from: www.canusb.com / www.can232.com / www.mictronics.de / www.canhack.de Userspace tools to attach the SLCAN line discipline (slcan_attach, slcand) can be found in the can-utils at the SocketCAN SVN, see http://developer.berlios.de/projects/socketcan for details. The slcan driver supports up to 10 CAN netdevices by default which can be changed by the 'maxdev=xx' module option. This driver can also be built as a module. If so, the module will be called slcan. config CAN_DEV tristate "Platform CAN drivers with Netlink support" depends on CAN default Y ---help--- Enables the common framework for platform CAN drivers with Netlink support. This is the standard library for CAN drivers. If unsure, say Y. config CAN_CALC_BITTIMING bool "CAN bit-timing calculation" depends on CAN_DEV default Y ---help--- If enabled, CAN bit-timing parameters will be calculated for the bit-rate specified via Netlink argument "bitrate" when the device get started. This works fine for the most common CAN controllers with standard bit-rates but may fail for exotic bit-rates or CAN source clock frequencies. Disabling saves some space, but then the bit-timing parameters must be specified directly using the Netlink arguments "tq", "prop_seg", "phase_seg1", "phase_seg2" and "sjw". If unsure, say Y. config CAN_AT91 tristate "Atmel AT91 onchip CAN controller" depends on CAN_DEV && ARCH_AT91SAM9263 ---help--- This is a driver for the SoC CAN controller in Atmel's AT91SAM9263. config CAN_TI_HECC depends on CAN_DEV && ARCH_OMAP3 tristate "TI High End CAN Controller" ---help--- Driver for TI HECC (High End CAN Controller) module found on many TI devices. The device specifications are available from www.ti.com config CAN_MCP251X tristate "Microchip MCP251x SPI CAN controllers" depends on CAN_DEV && SPI && HAS_DMA ---help--- Driver for the Microchip MCP251x SPI CAN controllers. config CAN_BFIN depends on CAN_DEV && (BF534 || BF536 || BF537 || BF538 || BF539 || BF54x) tristate "Analog Devices Blackfin on-chip CAN" ---help--- Driver for the Analog Devices Blackfin on-chip CAN controllers To compile this driver as a module, choose M here: the module will be called bfin_can. config CAN_JANZ_ICAN3 tristate "Janz VMOD-ICAN3 Intelligent CAN controller" depends on CAN_DEV && MFD_JANZ_CMODIO ---help--- Driver for Janz VMOD-ICAN3 Intelligent CAN controller module, which connects to a MODULbus carrier board. This driver can also be built as a module. If so, the module will be called janz-ican3.ko. config HAVE_CAN_FLEXCAN bool config CAN_FLEXCAN tristate "Support for Freescale FLEXCAN based chips" depends on CAN_DEV && HAVE_CAN_FLEXCAN ---help--- Say Y here if you want to support for Freescale FlexCAN. config PCH_CAN tristate "PCH CAN" depends on CAN_DEV && PCI ---help--- This driver is for PCH CAN of Topcliff which is an IOH for x86 embedded processor. This driver can access CAN bus. source "drivers/net/can/mscan/Kconfig" source "drivers/net/can/sja1000/Kconfig" source "drivers/net/can/c_can/Kconfig" source "drivers/net/can/usb/Kconfig" source "drivers/net/can/softing/Kconfig" config CAN_DEBUG_DEVICES bool "CAN devices debugging messages" depends on CAN default N ---help--- Say Y here if you want the CAN device drivers to produce a bunch of debug messages to the system log. Select this if you are having a problem with CAN support and want to see more of what is going on. endmenu config CAN_SOFTING tristate "Softing Gmbh CAN generic support" depends on CAN_DEV && HAS_IOMEM ---help--- Support for CAN cards from Softing Gmbh & some cards from Vector Gmbh. Softing Gmbh CAN cards come with 1 or 2 physical busses. Those cards typically use Dual Port RAM to communicate with the host CPU. The interface is then identical for PCI and PCMCIA cards. This driver operates on a platform device, which has been created by softing_cs or softing_pci driver. Warning: The API of the card does not allow fine control per bus, but controls the 2 busses on the card together. As such, some actions (start/stop/busoff recovery) on 1 bus must bring down the other bus too temporarily. config CAN_SOFTING_CS tristate "Softing Gmbh CAN pcmcia cards" depends on PCMCIA depends on CAN_SOFTING ---help--- Support for PCMCIA cards from Softing Gmbh & some cards from Vector Gmbh. You need firmware for these, which you can get at http://developer.berlios.de/projects/socketcan/ This version of the driver is written against firmware version 4.6 (softing-fw-4.6-binaries.tar.gz) In order to use the card as CAN device, you need the Softing generic support too. menuconfig CAN_SJA1000 tristate "Philips/NXP SJA1000 devices" depends on CAN_DEV && HAS_IOMEM if CAN_SJA1000 config CAN_SJA1000_ISA tristate "ISA Bus based legacy SJA1000 driver" depends on ISA ---help--- This driver adds legacy support for SJA1000 chips connected to the ISA bus using I/O port, memory mapped or indirect access. config CAN_SJA1000_PLATFORM tristate "Generic Platform Bus based SJA1000 driver" ---help--- This driver adds support for the SJA1000 chips connected to the "platform bus" (Linux abstraction for directly to the processor attached devices). Which can be found on various boards from Phytec (http://www.phytec.de) like the PCM027, PCM038. config CAN_SJA1000_OF_PLATFORM tristate "Generic OF Platform Bus based SJA1000 driver" depends on PPC_OF ---help--- This driver adds support for the SJA1000 chips connected to the OpenFirmware "platform bus" found on embedded systems with OpenFirmware bindings, e.g. if you have a PowerPC based system you may want to enable this option. config CAN_EMS_PCI tristate "EMS CPC-PCI, CPC-PCIe and CPC-104P Card" depends on PCI ---help--- This driver is for the one, two or four channel CPC-PCI, CPC-PCIe and CPC-104P cards from EMS Dr. Thomas Wuensche (http://www.ems-wuensche.de). config CAN_KVASER_PCI tristate "Kvaser PCIcanx and Kvaser PCIcan PCI Cards" depends on PCI ---help--- This driver is for the the PCIcanx and PCIcan cards (1, 2 or 4 channel) from Kvaser (http://www.kvaser.com). config CAN_PLX_PCI tristate "PLX90xx PCI-bridge based Cards" depends on PCI ---help--- This driver is for CAN interface cards based on the PLX90xx PCI bridge. Driver supports now: - Adlink PCI-7841/cPCI-7841 card (http://www.adlinktech.com/) - Adlink PCI-7841/cPCI-7841 SE card - esd CAN-PCI/CPCI/PCI104/200 (http://www.esd.eu/) - esd CAN-PCI/PMC/266 - esd CAN-PCIe/2000 - Marathon CAN-bus-PCI card (http://www.marathon.ru/) - TEWS TECHNOLOGIES TPMC810 card (http://www.tews.com/) config CAN_TSCAN1 tristate "TS-CAN1 PC104 boards" depends on ISA help This driver is for Technologic Systems' TSCAN-1 PC104 boards. http://www.embeddedarm.com/products/board-detail.php?product=TS-CAN1 The driver supports multiple boards and automatically configures them: PLD IO base addresses are read from jumpers JP1 and JP2, IRQ numbers are read from jumpers JP4 and JP5, SJA1000 IO base addresses are chosen heuristically (first that works). endif # # Arcnet configuration # menuconfig ARCNET depends on NETDEVICES && (ISA || PCI) tristate "ARCnet support" ---help--- If you have a network card of this type, say Y and check out the (arguably) beautiful poetry in . You need both this driver, and the driver for the particular ARCnet chipset of your card. If you don't know, then it's probably a COM90xx type card, so say Y (or M) to "ARCnet COM90xx chipset support" below. You might also want to have a look at the Ethernet-HOWTO, available from (even though ARCnet is not really Ethernet). To compile this driver as a module, choose M here. The module will be called arcnet. if ARCNET config ARCNET_1201 tristate "Enable standard ARCNet packet format (RFC 1201)" help This allows you to use RFC1201 with your ARCnet card via the virtual arc0 device. You need to say Y here to communicate with industry-standard RFC1201 implementations, like the arcether.com packet driver or most DOS/Windows ODI drivers. Please read the ARCnet documentation in for more information about using arc0. config ARCNET_1051 tristate "Enable old ARCNet packet format (RFC 1051)" ---help--- This allows you to use RFC1051 with your ARCnet card via the virtual arc0s device. You only need arc0s if you want to talk to ARCnet software complying with the "old" standard, specifically, the DOS arcnet.com packet driver, Amigas running AmiTCP, and some variants of NetBSD. You do not need to say Y here to communicate with industry-standard RFC1201 implementations, like the arcether.com packet driver or most DOS/Windows ODI drivers. RFC1201 is included automatically as the arc0 device. Please read the ARCnet documentation in for more information about using arc0e and arc0s. config ARCNET_RAW tristate "Enable raw mode packet interface" help ARCnet "raw mode" packet encapsulation, no soft headers. Unlikely to work unless talking to a copy of the same Linux arcnet driver, but perhaps marginally faster in that case. config ARCNET_CAP tristate "Enable CAP mode packet interface" help ARCnet "cap mode" packet encapsulation. Used to get the hardware acknowledge back to userspace. After the initial protocol byte every packet is stuffed with an extra 4 byte "cookie" which doesn't actually appear on the network. After transmit the driver will send back a packet with protocol byte 0 containing the status of the transmission: 0=no hardware acknowledge 1=excessive nak 2=transmission accepted by the receiver hardware Received packets are also stuffed with the extra 4 bytes but it will be random data. Cap only listens to protocol 1-8. config ARCNET_COM90xx tristate "ARCnet COM90xx (normal) chipset driver" help This is the chipset driver for the standard COM90xx cards. If you have always used the old ARCnet driver without knowing what type of card you had, this is probably the one for you. To compile this driver as a module, choose M here. The module will be called com90xx. config ARCNET_COM90xxIO tristate "ARCnet COM90xx (IO mapped) chipset driver" ---help--- This is the chipset driver for the COM90xx cards, using them in IO-mapped mode instead of memory-mapped mode. This is slower than the normal driver. Only use it if your card doesn't support shared memory. To compile this driver as a module, choose M here. The module will be called com90io. config ARCNET_RIM_I tristate "ARCnet COM90xx (RIM I) chipset driver" ---help--- This is yet another chipset driver for the COM90xx cards, but this time only using memory-mapped mode, and no IO ports at all. This driver is completely untested, so if you have one of these cards, please mail , especially if it works! To compile this driver as a module, choose M here. The module will be called arc-rimi. config ARCNET_COM20020 tristate "ARCnet COM20020 chipset driver" help This is the driver for the new COM20020 chipset. It supports such things as promiscuous mode, so packet sniffing is possible, and extra diagnostic information. To compile this driver as a module, choose M here. The module will be called com20020. config ARCNET_COM20020_ISA tristate "Support for COM20020 on ISA" depends on ARCNET_COM20020 && ISA config ARCNET_COM20020_PCI tristate "Support for COM20020 on PCI" depends on ARCNET_COM20020 && PCI endif # ARCNET config STMMAC_ETH tristate "STMicroelectronics 10/100/1000 Ethernet driver" select MII select PHYLIB select CRC32 depends on NETDEVICES && HAS_IOMEM help This is the driver for the Ethernet IPs are built around a Synopsys IP Core and only tested on the STMicroelectronics platforms. if STMMAC_ETH config STMMAC_DA bool "STMMAC DMA arbitration scheme" default n help Selecting this option, rx has priority over Tx (only for Giga Ethernet device). By default, the DMA arbitration scheme is based on Round-robin (rx:tx priority is 1:1). config STMMAC_DUAL_MAC bool "STMMAC: dual mac support (EXPERIMENTAL)" default n depends on EXPERIMENTAL && STMMAC_ETH && !STMMAC_TIMER help Some ST SoCs (for example the stx7141 and stx7200c2) have two Ethernet Controllers. This option turns on the second Ethernet device on this kind of platforms. config STMMAC_TIMER bool "STMMAC Timer optimisation" default n depends on RTC_HCTOSYS_DEVICE help Use an external timer for mitigating the number of network interrupts. Currently, for SH architectures, it is possible to use the TMU channel 2 and the SH-RTC device. choice prompt "Select Timer device" depends on STMMAC_TIMER config STMMAC_TMU_TIMER bool "TMU channel 2" depends on CPU_SH4 help config STMMAC_RTC_TIMER bool "Real time clock" depends on RTC_CLASS help endchoice endif # # wan devices configuration # menuconfig WAN bool "Wan interfaces support" ---help--- Wide Area Networks (WANs), such as X.25, Frame Relay and leased lines, are used to interconnect Local Area Networks (LANs) over vast distances with data transfer rates significantly higher than those achievable with commonly used asynchronous modem connections. Usually, a quite expensive external device called a `WAN router' is needed to connect to a WAN. As an alternative, a relatively inexpensive WAN interface card can allow your Linux box to directly connect to a WAN. If you have one of those cards and wish to use it under Linux, say Y here and also to the WAN driver for your card. If unsure, say N. if WAN # There is no way to detect a comtrol sv11 - force it modular for now. config HOSTESS_SV11 tristate "Comtrol Hostess SV-11 support" depends on ISA && m && ISA_DMA_API && INET && HDLC help Driver for Comtrol Hostess SV-11 network card which operates on low speed synchronous serial links at up to 256Kbps, supporting PPP and Cisco HDLC. The driver will be compiled as a module: the module will be called hostess_sv11. # The COSA/SRP driver has not been tested as non-modular yet. config COSA tristate "COSA/SRP sync serial boards support" depends on ISA && m && ISA_DMA_API && HDLC ---help--- Driver for COSA and SRP synchronous serial boards. These boards allow to connect synchronous serial devices (for example base-band modems, or any other device with the X.21, V.24, V.35 or V.36 interface) to your Linux box. The cards can work as the character device, synchronous PPP network device, or the Cisco HDLC network device. You will need user-space utilities COSA or SRP boards for downloading the firmware to the cards and to set them up. Look at the for more information. You can also read the comment at the top of the for details about the cards and the driver itself. The driver will be compiled as a module: the module will be called cosa. # # Lan Media's board. Currently 1000, 1200, 5200, 5245 # config LANMEDIA tristate "LanMedia Corp. SSI/V.35, T1/E1, HSSI, T3 boards" depends on PCI && VIRT_TO_BUS && HDLC ---help--- Driver for the following Lan Media family of serial boards: - LMC 1000 board allows you to connect synchronous serial devices (for example base-band modems, or any other device with the X.21, V.24, V.35 or V.36 interface) to your Linux box. - LMC 1200 with on board DSU board allows you to connect your Linux box directly to a T1 or E1 circuit. - LMC 5200 board provides a HSSI interface capable of running up to 52 Mbits per second. - LMC 5245 board connects directly to a T3 circuit saving the additional external hardware. To change setting such as clock source you will need lmcctl. It is available at (broken link). To compile this driver as a module, choose M here: the module will be called lmc. # There is no way to detect a Sealevel board. Force it modular config SEALEVEL_4021 tristate "Sealevel Systems 4021 support" depends on ISA && m && ISA_DMA_API && INET && HDLC help This is a driver for the Sealevel Systems ACB 56 serial I/O adapter. The driver will be compiled as a module: the module will be called sealevel. # Generic HDLC config HDLC tristate "Generic HDLC layer" help Say Y to this option if your Linux box contains a WAN (Wide Area Network) card supported by this driver and you are planning to connect the box to a WAN. You will need supporting software from . Generic HDLC driver currently supports raw HDLC, Cisco HDLC, Frame Relay, synchronous Point-to-Point Protocol (PPP) and X.25. To compile this driver as a module, choose M here: the module will be called hdlc. If unsure, say N. config HDLC_RAW tristate "Raw HDLC support" depends on HDLC help Generic HDLC driver supporting raw HDLC over WAN connections. If unsure, say N. config HDLC_RAW_ETH tristate "Raw HDLC Ethernet device support" depends on HDLC help Generic HDLC driver supporting raw HDLC Ethernet device emulation over WAN connections. You will need it for Ethernet over HDLC bridges. If unsure, say N. config HDLC_CISCO tristate "Cisco HDLC support" depends on HDLC help Generic HDLC driver supporting Cisco HDLC over WAN connections. If unsure, say N. config HDLC_FR tristate "Frame Relay support" depends on HDLC help Generic HDLC driver supporting Frame Relay over WAN connections. If unsure, say N. config HDLC_PPP tristate "Synchronous Point-to-Point Protocol (PPP) support" depends on HDLC help Generic HDLC driver supporting PPP over WAN connections. If unsure, say N. config HDLC_X25 tristate "X.25 protocol support" depends on HDLC && (LAPB=m && HDLC=m || LAPB=y) help Generic HDLC driver supporting X.25 over WAN connections. If unsure, say N. comment "X.25/LAPB support is disabled" depends on HDLC && (LAPB!=m || HDLC!=m) && LAPB!=y config PCI200SYN tristate "Goramo PCI200SYN support" depends on HDLC && PCI help Driver for PCI200SYN cards by Goramo sp. j. If you have such a card, say Y here and see . To compile this as a module, choose M here: the module will be called pci200syn. If unsure, say N. config WANXL tristate "SBE Inc. wanXL support" depends on HDLC && PCI help Driver for wanXL PCI cards by SBE Inc. If you have such a card, say Y here and see . To compile this as a module, choose M here: the module will be called wanxl. If unsure, say N. config WANXL_BUILD_FIRMWARE bool "rebuild wanXL firmware" depends on WANXL && !PREVENT_FIRMWARE_BUILD help Allows you to rebuild firmware run by the QUICC processor. It requires as68k, ld68k and hexdump programs. You should never need this option, say N. config PC300 tristate "Cyclades-PC300 support (RS-232/V.35, X.21, T1/E1 boards)" depends on HDLC && PCI && BROKEN ---help--- This driver is broken because of struct tty_driver change. Driver for the Cyclades-PC300 synchronous communication boards. These boards provide synchronous serial interfaces to your Linux box (interfaces currently available are RS-232/V.35, X.21 and T1/E1). If you wish to support Multilink PPP, please select the option later and read the file README.mlppp provided by PC300 package. To compile this as a module, choose M here: the module will be called pc300. If unsure, say N. config PC300_MLPPP bool "Cyclades-PC300 MLPPP support" depends on PC300 && PPP_MULTILINK && PPP_SYNC_TTY && HDLC_PPP help Multilink PPP over the PC300 synchronous communication boards. comment "Cyclades-PC300 MLPPP support is disabled." depends on HDLC && PC300 && (PPP=n || !PPP_MULTILINK || PPP_SYNC_TTY=n || !HDLC_PPP) comment "Refer to the file README.mlppp, provided by PC300 package." depends on HDLC && PC300 && (PPP=n || !PPP_MULTILINK || PPP_SYNC_TTY=n || !HDLC_PPP) config PC300TOO tristate "Cyclades PC300 RSV/X21 alternative support" depends on HDLC && PCI help Alternative driver for PC300 RSV/X21 PCI cards made by Cyclades, Inc. If you have such a card, say Y here and see . To compile this as a module, choose M here: the module will be called pc300too. If unsure, say N here. config N2 tristate "SDL RISCom/N2 support" depends on HDLC && ISA help Driver for RISCom/N2 single or dual channel ISA cards by SDL Communications Inc. If you have such a card, say Y here and see . Note that N2csu and N2dds cards are not supported by this driver. To compile this driver as a module, choose M here: the module will be called n2. If unsure, say N. config C101 tristate "Moxa C101 support" depends on HDLC && ISA help Driver for C101 SuperSync ISA cards by Moxa Technologies Co., Ltd. If you have such a card, say Y here and see . To compile this driver as a module, choose M here: the module will be called c101. If unsure, say N. config FARSYNC tristate "FarSync T-Series support" depends on HDLC && PCI ---help--- Support for the FarSync T-Series X.21 (and V.35/V.24) cards by FarSite Communications Ltd. Synchronous communication is supported on all ports at speeds up to 8Mb/s (128K on V.24) using synchronous PPP, Cisco HDLC, raw HDLC, Frame Relay or X.25/LAPB. If you want the module to be automatically loaded when the interface is referenced then you should add "alias hdlcX farsync" to /etc/modprobe.conf for each interface, where X is 0, 1, 2, ..., or simply use "alias hdlc* farsync" to indicate all of them. To compile this driver as a module, choose M here: the module will be called farsync. config DSCC4 tristate "Etinc PCISYNC serial board support" depends on HDLC && PCI && m help Driver for Etinc PCISYNC boards based on the Infineon (ex. Siemens) DSCC4 chipset. This is supposed to work with the four port card. Take a look at for further information about the driver. To compile this driver as a module, choose M here: the module will be called dscc4. config DSCC4_PCISYNC bool "Etinc PCISYNC features" depends on DSCC4 help Due to Etinc's design choice for its PCISYNC cards, some operations are only allowed on specific ports of the DSCC4. This option is the only way for the driver to know that it shouldn't return a success code for these operations. Please say Y if your card is an Etinc's PCISYNC. config DSCC4_PCI_RST bool "Hard reset support" depends on DSCC4 help Various DSCC4 bugs forbid any reliable software reset of the ASIC. As a replacement, some vendors provide a way to assert the PCI #RST pin of DSCC4 through the GPIO port of the card. If you choose Y, the driver will make use of this feature before module removal (i.e. rmmod). The feature is known to be available on Commtech's cards. Contact your manufacturer for details. Say Y if your card supports this feature. config IXP4XX_HSS tristate "Intel IXP4xx HSS (synchronous serial port) support" depends on HDLC && ARM && ARCH_IXP4XX && IXP4XX_NPE && IXP4XX_QMGR help Say Y here if you want to use built-in HSS ports on IXP4xx processor. config DLCI tristate "Frame Relay DLCI support" ---help--- Support for the Frame Relay protocol. Frame Relay is a fast low-cost way to connect to a remote Internet access provider or to form a private wide area network. The one physical line from your box to the local "switch" (i.e. the entry point to the Frame Relay network, usually at the phone company) can carry several logical point-to-point connections to other computers connected to the Frame Relay network. For a general explanation of the protocol, check out . To use frame relay, you need supporting hardware (called FRAD) and certain programs from the net-tools package as explained in . To compile this driver as a module, choose M here: the module will be called dlci. config DLCI_MAX int "Max DLCI per device" depends on DLCI default "8" help How many logical point-to-point frame relay connections (the identifiers of which are called DCLIs) should be handled by each of your hardware frame relay access devices. Go with the default. config SDLA tristate "SDLA (Sangoma S502/S508) support" depends on DLCI && ISA help Driver for the Sangoma S502A, S502E, and S508 Frame Relay Access Devices. These are multi-protocol cards, but only Frame Relay is supported by the driver at this time. Please read . To compile this driver as a module, choose M here: the module will be called sdla. # Wan router core. config WAN_ROUTER_DRIVERS tristate "WAN router drivers" depends on WAN_ROUTER ---help--- Connect LAN to WAN via Linux box. Select driver your card and remember to say Y to "Wan Router." You will need the wan-tools package which is available from . Note that the answer to this question won't directly affect the kernel except for how subordinate drivers may be built: saying N will just cause the configurator to skip all the questions about WAN router drivers. If unsure, say N. config CYCLADES_SYNC tristate "Cyclom 2X(tm) cards (EXPERIMENTAL)" depends on WAN_ROUTER_DRIVERS && (PCI || ISA) ---help--- Cyclom 2X from Cyclades Corporation is an intelligent multiprotocol WAN adapter with data transfer rates up to 512 Kbps. These cards support the X.25 and SNA related protocols. While no documentation is available at this time please grab the wanconfig tarball in (with minor changes to make it compile with the current wanrouter include files; efforts are being made to use the original package available at ). Feel free to contact me or the cycsyn-devel mailing list at and for additional details, I hope to have documentation available as soon as possible. (Cyclades Brazil is writing the Documentation). The next questions will ask you about the protocols you want the driver to support (for now only X.25 is supported). If you have one or more of these cards, say Y to this option. To compile this driver as a module, choose M here: the module will be called cyclomx. config CYCLOMX_X25 bool "Cyclom 2X X.25 support (EXPERIMENTAL)" depends on CYCLADES_SYNC help Connect a Cyclom 2X card to an X.25 network. Enabling X.25 support will enlarge your kernel by about 11 kB. # X.25 network drivers config LAPBETHER tristate "LAPB over Ethernet driver (EXPERIMENTAL)" depends on LAPB && X25 ---help--- Driver for a pseudo device (typically called /dev/lapb0) which allows you to open an LAPB point-to-point connection to some other computer on your Ethernet network. In order to do this, you need to say Y or M to the driver for your Ethernet card as well as to "LAPB Data Link Driver". To compile this driver as a module, choose M here: the module will be called lapbether. If unsure, say N. config X25_ASY tristate "X.25 async driver (EXPERIMENTAL)" depends on LAPB && X25 ---help--- Send and receive X.25 frames over regular asynchronous serial lines such as telephone lines equipped with ordinary modems. Experts should note that this driver doesn't currently comply with the asynchronous HDLS framing protocols in CCITT recommendation X.25. To compile this driver as a module, choose M here: the module will be called x25_asy. If unsure, say N. config SBNI tristate "Granch SBNI12 Leased Line adapter support" depends on X86 ---help--- Driver for ISA SBNI12-xx cards which are low cost alternatives to leased line modems. You can find more information and last versions of drivers and utilities at . If you have any question you can send email to . To compile this driver as a module, choose M here: the module will be called sbni. If unsure, say N. config SBNI_MULTILINE bool "Multiple line feature support" depends on SBNI help Schedule traffic for some parallel lines, via SBNI12 adapters. If you have two computers connected with two parallel lines it's possible to increase transfer rate nearly twice. You should have a program named 'sbniconfig' to configure adapters. If unsure, say N. endif # WAN # # PHY Layer Configuration # menuconfig PHYLIB tristate "PHY Device support and infrastructure" depends on !S390 depends on NETDEVICES help Ethernet controllers are usually attached to PHY devices. This option provides infrastructure for managing PHY devices. if PHYLIB comment "MII PHY device drivers" config MARVELL_PHY tristate "Drivers for Marvell PHYs" ---help--- Currently has a driver for the 88E1011S config DAVICOM_PHY tristate "Drivers for Davicom PHYs" ---help--- Currently supports dm9161e and dm9131 config QSEMI_PHY tristate "Drivers for Quality Semiconductor PHYs" ---help--- Currently supports the qs6612 config LXT_PHY tristate "Drivers for the Intel LXT PHYs" ---help--- Currently supports the lxt970, lxt971 config CICADA_PHY tristate "Drivers for the Cicada PHYs" ---help--- Currently supports the cis8204 config VITESSE_PHY tristate "Drivers for the Vitesse PHYs" ---help--- Currently supports the vsc8244 config SMSC_PHY tristate "Drivers for SMSC PHYs" ---help--- Currently supports the LAN83C185, LAN8187 and LAN8700 PHYs config BROADCOM_PHY tristate "Drivers for Broadcom PHYs" ---help--- Currently supports the BCM5411, BCM5421, BCM5461, BCM5464, BCM5481 and BCM5482 PHYs. config BCM63XX_PHY tristate "Drivers for Broadcom 63xx SOCs internal PHY" ---help--- Currently supports the 6348 and 6358 PHYs. config ICPLUS_PHY tristate "Drivers for ICPlus PHYs" ---help--- Currently supports the IP175C and IP1001 PHYs. config REALTEK_PHY tristate "Drivers for Realtek PHYs" ---help--- Supports the Realtek 821x PHY. config NATIONAL_PHY tristate "Drivers for National Semiconductor PHYs" ---help--- Currently supports the DP83865 PHY. config STE10XP tristate "Driver for STMicroelectronics STe10Xp PHYs" ---help--- This is the driver for the STe100p and STe101p PHYs. config LSI_ET1011C_PHY tristate "Driver for LSI ET1011C PHY" ---help--- Supports the LSI ET1011C PHY. config MICREL_PHY tristate "Driver for Micrel PHYs" ---help--- Supports the KSZ9021, VSC8201, KS8001 PHYs. config FIXED_PHY bool "Driver for MDIO Bus/PHY emulation with fixed speed/link PHYs" depends on PHYLIB=y ---help--- Adds the platform "fixed" MDIO Bus to cover the boards that use PHYs that are not connected to the real MDIO bus. Currently tested with mpc866ads and mpc8349e-mitx. config MDIO_BITBANG tristate "Support for bitbanged MDIO buses" help This module implements the MDIO bus protocol in software, for use by low level drivers that export the ability to drive the relevant pins. If in doubt, say N. config MDIO_GPIO tristate "Support for GPIO lib-based bitbanged MDIO buses" depends on MDIO_BITBANG && GENERIC_GPIO ---help--- Supports GPIO lib-based MDIO busses. To compile this driver as a module, choose M here: the module will be called mdio-gpio. config MDIO_OCTEON tristate "Support for MDIO buses on Octeon SOCs" depends on CPU_CAVIUM_OCTEON default y help This module provides a driver for the Octeon MDIO busses. It is required by the Octeon Ethernet device drivers. If in doubt, say Y. endif # PHYLIB # # Appletalk driver configuration # config ATALK tristate "Appletalk protocol support" select LLC ---help--- AppleTalk is the protocol that Apple computers can use to communicate on a network. If your Linux box is connected to such a network and you wish to connect to it, say Y. You will need to use the netatalk package so that your Linux box can act as a print and file server for Macs as well as access AppleTalk printers. Check out on the WWW for details. EtherTalk is the name used for AppleTalk over Ethernet and the cheaper and slower LocalTalk is AppleTalk over a proprietary Apple network using serial links. EtherTalk and LocalTalk are fully supported by Linux. General information about how to connect Linux, Windows machines and Macs is on the WWW at . The NET3-4-HOWTO, available from , contains valuable information as well. To compile this driver as a module, choose M here: the module will be called appletalk. You almost certainly want to compile it as a module so you can restart your AppleTalk stack without rebooting your machine. I hear that the GNU boycott of Apple is over, so even politically correct people are allowed to say Y here. config DEV_APPLETALK tristate "Appletalk interfaces support" depends on ATALK help AppleTalk is the protocol that Apple computers can use to communicate on a network. If your Linux box is connected to such a network, and wish to do IP over it, or you have a LocalTalk card and wish to use it to connect to the AppleTalk network, say Y. config LTPC tristate "Apple/Farallon LocalTalk PC support" depends on DEV_APPLETALK && (ISA || EISA) && ISA_DMA_API help This allows you to use the AppleTalk PC card to connect to LocalTalk networks. The card is also known as the Farallon PhoneNet PC card. If you are in doubt, this card is the one with the 65C02 chip on it. You also need version 1.3.3 or later of the netatalk package. This driver is experimental, which means that it may not work. See the file . config COPS tristate "COPS LocalTalk PC support" depends on DEV_APPLETALK && (ISA || EISA) help This allows you to use COPS AppleTalk cards to connect to LocalTalk networks. You also need version 1.3.3 or later of the netatalk package. This driver is experimental, which means that it may not work. This driver will only work if you choose "AppleTalk DDP" networking support, above. Please read the file . config COPS_DAYNA bool "Dayna firmware support" depends on COPS help Support COPS compatible cards with Dayna style firmware (Dayna DL2000/ Daynatalk/PC (half length), COPS LT-95, Farallon PhoneNET PC III, Farallon PhoneNET PC II). config COPS_TANGENT bool "Tangent firmware support" depends on COPS help Support COPS compatible cards with Tangent style firmware (Tangent ATB_II, Novell NL-1000, Daystar Digital LT-200. config IPDDP tristate "Appletalk-IP driver support" depends on DEV_APPLETALK && ATALK ---help--- This allows IP networking for users who only have AppleTalk networking available. This feature is experimental. With this driver, you can encapsulate IP inside AppleTalk (e.g. if your Linux box is stuck on an AppleTalk only network) or decapsulate (e.g. if you want your Linux box to act as an Internet gateway for a zoo of AppleTalk connected Macs). Please see the file for more information. If you say Y here, the AppleTalk-IP support will be compiled into the kernel. In this case, you can either use encapsulation or decapsulation, but not both. With the following two questions, you decide which one you want. To compile the AppleTalk-IP support as a module, choose M here: the module will be called ipddp. In this case, you will be able to use both encapsulation and decapsulation simultaneously, by loading two copies of the module and specifying different values for the module option ipddp_mode. config IPDDP_ENCAP bool "IP to Appletalk-IP Encapsulation support" depends on IPDDP help If you say Y here, the AppleTalk-IP code will be able to encapsulate IP packets inside AppleTalk frames; this is useful if your Linux box is stuck on an AppleTalk network (which hopefully contains a decapsulator somewhere). Please see for more information. If you said Y to "AppleTalk-IP driver support" above and you say Y here, then you cannot say Y to "AppleTalk-IP to IP Decapsulation support", below. config IPDDP_DECAP bool "Appletalk-IP to IP Decapsulation support" depends on IPDDP help If you say Y here, the AppleTalk-IP code will be able to decapsulate AppleTalk-IP frames to IP packets; this is useful if you want your Linux box to act as an Internet gateway for an AppleTalk network. Please see for more information. If you said Y to "AppleTalk-IP driver support" above and you say Y here, then you cannot say Y to "IP to AppleTalk-IP Encapsulation support", above. config ENP2611_MSF_NET tristate "Radisys ENP2611 MSF network interface support" depends on ARCH_ENP2611 help This is a driver for the MSF network interface unit in the IXP2400 on the Radisys ENP2611 platform. # # Acorn Network device configuration # These are for Acorn's Expansion card network interfaces # config ARM_AM79C961A bool "ARM EBSA110 AM79C961A support" depends on ARM && ARCH_EBSA110 select CRC32 help If you wish to compile a kernel for the EBSA-110, then you should always answer Y to this. config ARM_ETHER1 tristate "Acorn Ether1 support" depends on ARM && ARCH_ACORN help If you have an Acorn system with one of these (AKA25) network cards, you should say Y to this option if you wish to use it with Linux. config ARM_ETHER3 tristate "Acorn/ANT Ether3 support" depends on ARM && ARCH_ACORN help If you have an Acorn system with one of these network cards, you should say Y to this option if you wish to use it with Linux. config ARM_ETHERH tristate "I-cubed EtherH/ANT EtherM support" depends on ARM && ARCH_ACORN select CRC32 help If you have an Acorn system with one of these network cards, you should say Y to this option if you wish to use it with Linux. config ARM_AT91_ETHER tristate "AT91RM9200 Ethernet support" depends on ARM && ARCH_AT91RM9200 select MII help If you wish to compile a kernel for the AT91RM9200 and enable ethernet support, then you should always answer Y to this. config ARM_KS8695_ETHER tristate "KS8695 Ethernet support" depends on ARM && ARCH_KS8695 select MII help If you wish to compile a kernel for the KS8695 and want to use the internal ethernet then you should answer Y to this. config EP93XX_ETH tristate "EP93xx Ethernet support" depends on ARM && ARCH_EP93XX select MII help This is a driver for the ethernet hardware included in EP93xx CPUs. Say Y if you are building a kernel for EP93xx based devices. config IXP4XX_ETH tristate "Intel IXP4xx Ethernet support" depends on ARM && ARCH_IXP4XX && IXP4XX_NPE && IXP4XX_QMGR select PHYLIB help Say Y here if you want to use built-in Ethernet ports on IXP4xx processor. config W90P910_ETH tristate "Nuvoton w90p910 Ethernet support" depends on ARM && ARCH_W90X900 select PHYLIB select MII help Say Y here if you want to use built-in Ethernet ports on w90p910 processor. # # WiMAX LAN device drivers configuration # comment "Enable WiMAX (Networking options) to see the WiMAX drivers" depends on WIMAX = n if WIMAX menu "WiMAX Wireless Broadband devices" source "drivers/net/wimax/i2400m/Kconfig" endmenu endif config WIMAX_I2400M tristate depends on WIMAX select FW_LOADER comment "Enable USB support to see WiMAX USB drivers" depends on USB = n comment "Enable MMC support to see WiMAX SDIO drivers" depends on MMC = n config WIMAX_I2400M_USB tristate "Intel Wireless WiMAX Connection 2400 over USB (including 5x50)" depends on WIMAX && USB select WIMAX_I2400M help Select if you have a device based on the Intel WiMAX Connection 2400 over USB (like any of the Intel Wireless WiMAX/WiFi Link 5x50 series). If unsure, it is safe to select M (module). config WIMAX_I2400M_SDIO tristate "Intel Wireless WiMAX Connection 2400 over SDIO" depends on WIMAX && MMC select WIMAX_I2400M help Select if you have a device based on the Intel WiMAX Connection 2400 over SDIO. If unsure, it is safe to select M (module). config WIMAX_IWMC3200_SDIO bool "Intel Wireless Multicom WiMAX Connection 3200 over SDIO" depends on WIMAX_I2400M_SDIO select IWMC3200TOP help Select if you have a device based on the Intel Multicom WiMAX Connection 3200 over SDIO. config WIMAX_I2400M_DEBUG_LEVEL int "WiMAX i2400m debug level" depends on WIMAX_I2400M default 8 help Select the maximum debug verbosity level to be compiled into the WiMAX i2400m driver code. By default, this is disabled at runtime and can be selectively enabled at runtime for different parts of the code using the sysfs debug-levels file. If set at zero, this will compile out all the debug code. It is recommended that it is left at 8. config FS_ENET tristate "Freescale Ethernet Driver" depends on CPM1 || CPM2 || PPC_MPC512x select MII select PHYLIB config FS_ENET_MPC5121_FEC def_bool y if (FS_ENET && PPC_MPC512x) select FS_ENET_HAS_FEC config FS_ENET_HAS_SCC bool "Chip has an SCC usable for ethernet" depends on FS_ENET && (CPM1 || CPM2) default y config FS_ENET_HAS_FCC bool "Chip has an FCC usable for ethernet" depends on FS_ENET && CPM2 default y config FS_ENET_HAS_FEC bool "Chip has an FEC usable for ethernet" depends on FS_ENET && (CPM1 || FS_ENET_MPC5121_FEC) select FS_ENET_MDIO_FEC default y config FS_ENET_MDIO_FEC tristate "MDIO driver for FEC" depends on FS_ENET && (CPM1 || FS_ENET_MPC5121_FEC) config FS_ENET_MDIO_FCC tristate "MDIO driver for FCC" depends on FS_ENET && CPM2 select MDIO_BITBANG config ZD1211RW tristate "ZyDAS ZD1211/ZD1211B USB-wireless support" depends on USB && MAC80211 && EXPERIMENTAL select FW_LOADER ---help--- This is an experimental driver for the ZyDAS ZD1211/ZD1211B wireless chip, present in many USB-wireless adapters. Device firmware is required alongside this driver. You can download the firmware distribution from http://zd1211.ath.cx/get-firmware config ZD1211RW_DEBUG bool "ZyDAS ZD1211 debugging" depends on ZD1211RW ---help--- ZD1211 debugging messages. Choosing Y will result in additional debug messages being saved to your kernel logs, which may help debug any problems. # # Intel Centrino wireless drivers # config IPW2100 tristate "Intel PRO/Wireless 2100 Network Connection" depends on PCI && CFG80211 select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV select FW_LOADER select LIB80211 select LIBIPW ---help--- A driver for the Intel PRO/Wireless 2100 Network Connection 802.11b wireless network adapter. See for information on the capabilities currently enabled in this driver and for tips for debugging issues and problems. In order to use this driver, you will need a firmware image for it. You can obtain the firmware from . Once you have the firmware image, you will need to place it in /lib/firmware. You will also very likely need the Wireless Tools in order to configure your card: . It is recommended that you compile this driver as a module (M) rather than built-in (Y). This driver requires firmware at device initialization time, and when built-in this typically happens before the filesystem is accessible (hence firmware will be unavailable and initialization will fail). If you do choose to build this driver into your kernel image, you can avoid this problem by including the firmware and a firmware loader in an initramfs. config IPW2100_MONITOR bool "Enable promiscuous mode" depends on IPW2100 ---help--- Enables promiscuous/monitor mode support for the ipw2100 driver. With this feature compiled into the driver, you can switch to promiscuous mode via the Wireless Tool's Monitor mode. While in this mode, no packets can be sent. config IPW2100_DEBUG bool "Enable full debugging output in IPW2100 module." depends on IPW2100 ---help--- This option will enable debug tracing output for the IPW2100. This will result in the kernel module being ~60k larger. You can control which debug output is sent to the kernel log by setting the value in /sys/bus/pci/drivers/ipw2100/debug_level This entry will only exist if this option is enabled. If you are not trying to debug or develop the IPW2100 driver, you most likely want to say N here. config IPW2200 tristate "Intel PRO/Wireless 2200BG and 2915ABG Network Connection" depends on PCI && CFG80211 && CFG80211_WEXT select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV select FW_LOADER select LIB80211 select LIBIPW ---help--- A driver for the Intel PRO/Wireless 2200BG and 2915ABG Network Connection adapters. See for information on the capabilities currently enabled in this driver and for tips for debugging issues and problems. In order to use this driver, you will need a firmware image for it. You can obtain the firmware from . See the above referenced README.ipw2200 for information on where to install the firmware images. You will also very likely need the Wireless Tools in order to configure your card: . It is recommended that you compile this driver as a module (M) rather than built-in (Y). This driver requires firmware at device initialization time, and when built-in this typically happens before the filesystem is accessible (hence firmware will be unavailable and initialization will fail). If you do choose to build this driver into your kernel image, you can avoid this problem by including the firmware and a firmware loader in an initramfs. config IPW2200_MONITOR bool "Enable promiscuous mode" depends on IPW2200 ---help--- Enables promiscuous/monitor mode support for the ipw2200 driver. With this feature compiled into the driver, you can switch to promiscuous mode via the Wireless Tool's Monitor mode. While in this mode, no packets can be sent. config IPW2200_RADIOTAP bool "Enable radiotap format 802.11 raw packet support" depends on IPW2200_MONITOR config IPW2200_PROMISCUOUS bool "Enable creation of a RF radiotap promiscuous interface" depends on IPW2200_MONITOR select IPW2200_RADIOTAP ---help--- Enables the creation of a second interface prefixed 'rtap'. This second interface will provide every received in radiotap format. This is useful for performing wireless network analysis while maintaining an active association. Example usage: % modprobe ipw2200 rtap_iface=1 % ifconfig rtap0 up % tethereal -i rtap0 If you do not specify 'rtap_iface=1' as a module parameter then the rtap interface will not be created and you will need to turn it on via sysfs: % echo 1 > /sys/bus/pci/drivers/ipw2200/*/rtap_iface config IPW2200_QOS bool "Enable QoS support" depends on IPW2200 && EXPERIMENTAL config IPW2200_DEBUG bool "Enable full debugging output in IPW2200 module." depends on IPW2200 ---help--- This option will enable low level debug tracing output for IPW2200. Note, normal debug code is already compiled in. This low level debug option enables debug on hot paths (e.g Tx, Rx, ISR) and will result in the kernel module being ~70 larger. Most users will typically not need this high verbosity debug information. If you are not sure, say N here. config LIBIPW tristate depends on PCI && CFG80211 select WIRELESS_EXT select WEXT_SPY select CRYPTO select CRYPTO_ARC4 select CRYPTO_ECB select CRYPTO_AES select CRYPTO_MICHAEL_MIC select CRYPTO_ECB select CRC32 select LIB80211 select LIB80211_CRYPT_WEP select LIB80211_CRYPT_TKIP select LIB80211_CRYPT_CCMP ---help--- This option enables the hardware independent IEEE 802.11 networking stack. This component is deprecated in favor of the mac80211 component. config LIBIPW_DEBUG bool "Full debugging output for the LIBIPW component" depends on LIBIPW ---help--- This option will enable debug tracing output for the libipw component. This will result in the kernel module being ~70k larger. You can control which debug output is sent to the kernel log by setting the value in /proc/net/ieee80211/debug_level For example: % echo 0x00000FFO > /proc/net/ieee80211/debug_level For a list of values you can assign to debug_level, you can look at the bit mask values in ieee80211.h If you are not trying to debug or develop the libipw component, you most likely want to say N here. config B43LEGACY tristate "Broadcom 43xx-legacy wireless support (mac80211 stack)" depends on SSB_POSSIBLE && MAC80211 && HAS_DMA select SSB select FW_LOADER ---help--- b43legacy is a driver for 802.11b devices from Broadcom (BCM4301 and BCM4303) and early model 802.11g chips (BCM4306 Ver. 2) used in the Linksys WPC54G V1 PCMCIA devices. Newer 802.11g and 802.11a devices need b43. It is safe to include both b43 and b43legacy as the underlying glue layer will automatically load the correct version for your device. This driver uses V3 firmware, which must be installed separately using b43-fwcutter. This driver can be built as a module (recommended) that will be called "b43legacy". If unsure, say M. # Auto-select SSB PCI-HOST support, if possible config B43LEGACY_PCI_AUTOSELECT bool depends on B43LEGACY && SSB_PCIHOST_POSSIBLE select SSB_PCIHOST select SSB_B43_PCI_BRIDGE default y # Auto-select SSB PCICORE driver, if possible config B43LEGACY_PCICORE_AUTOSELECT bool depends on B43LEGACY && SSB_DRIVER_PCICORE_POSSIBLE select SSB_DRIVER_PCICORE default y # LED support # This config option automatically enables b43legacy LEDS support, # if it's possible. config B43LEGACY_LEDS bool depends on B43LEGACY && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = B43LEGACY) default y # This config option automatically enables b43 HW-RNG support, # if the HW-RNG core is enabled. config B43LEGACY_HWRNG bool depends on B43LEGACY && (HW_RANDOM = y || HW_RANDOM = B43LEGACY) default y config B43LEGACY_DEBUG bool "Broadcom 43xx-legacy debugging" depends on B43LEGACY default y ---help--- Say Y, because this information will help you get the driver running. This option generates a minimum of log output. config B43LEGACY_DMA bool depends on B43LEGACY config B43LEGACY_PIO bool depends on B43LEGACY choice prompt "Broadcom 43xx-legacy data transfer mode" depends on B43LEGACY default B43LEGACY_DMA_AND_PIO_MODE config B43LEGACY_DMA_AND_PIO_MODE bool "DMA + PIO" select B43LEGACY_DMA select B43LEGACY_PIO ---help--- Include both, Direct Memory Access (DMA) and Programmed I/O (PIO) data transfer modes. The mode actually used is selectable through the module parameter "pio". With pio=0 as a module parameter, the default DMA is used, otherwise PIO is used. If unsure, choose this option. config B43LEGACY_DMA_MODE bool "DMA (Direct Memory Access) only" select B43LEGACY_DMA ---help--- Only include Direct Memory Access (DMA). This reduces the size of the driver module, by omitting the PIO code. config B43LEGACY_PIO_MODE bool "PIO (Programmed I/O) only" select B43LEGACY_PIO ---help--- Only include Programmed I/O (PIO). This reduces the size of the driver module, by omitting the DMA code. Please note that PIO transfers are slow (compared to DMA). Also note that not all devices of the b43legacy series support PIO. You should use PIO only if DMA does not work for you. endchoice # # Wireless LAN device configuration # menuconfig WLAN bool "Wireless LAN" depends on !S390 depends on NET select WIRELESS default y ---help--- This section contains all the pre 802.11 and 802.11 wireless device drivers. For a complete list of drivers and documentation on them refer to the wireless wiki: http://wireless.kernel.org/en/users/Drivers if WLAN config PCMCIA_RAYCS tristate "Aviator/Raytheon 2.4GHz wireless support" depends on PCMCIA select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV ---help--- Say Y here if you intend to attach an Aviator/Raytheon PCMCIA (PC-card) wireless Ethernet networking card to your computer. Please read the file for details. To compile this driver as a module, choose M here: the module will be called ray_cs. If unsure, say N. config LIBERTAS_THINFIRM tristate "Marvell 8xxx Libertas WLAN driver support with thin firmware" depends on MAC80211 select FW_LOADER ---help--- A library for Marvell Libertas 8xxx devices using thinfirm. config LIBERTAS_THINFIRM_DEBUG bool "Enable full debugging output in the Libertas thin firmware module." depends on LIBERTAS_THINFIRM ---help--- Debugging support. config LIBERTAS_THINFIRM_USB tristate "Marvell Libertas 8388 USB 802.11b/g cards with thin firmware" depends on LIBERTAS_THINFIRM && USB ---help--- A driver for Marvell Libertas 8388 USB devices using thinfirm. config AIRO tristate "Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards" depends on ISA_DMA_API && (PCI || BROKEN) select WIRELESS_EXT select CRYPTO select WEXT_SPY select WEXT_PRIV ---help--- This is the standard Linux driver to support Cisco/Aironet ISA and PCI 802.11 wireless cards. It supports the new 802.11b cards from Cisco (Cisco 34X, Cisco 35X - with or without encryption) as well as card before the Cisco acquisition (Aironet 4500, Aironet 4800, Aironet 4800B). This driver support both the standard Linux Wireless Extensions and Cisco proprietary API, so both the Linux Wireless Tools and the Cisco Linux utilities can be used to configure the card. The driver can be compiled as a module and will be named "airo". config ATMEL tristate "Atmel at76c50x chipset 802.11b support" depends on (PCI || PCMCIA) select WIRELESS_EXT select WEXT_PRIV select FW_LOADER select CRC32 ---help--- A driver 802.11b wireless cards based on the Atmel fast-vnet chips. This driver supports standard Linux wireless extensions. Many cards based on this chipset do not have flash memory and need their firmware loaded at start-up. If yours is one of these, you will need to provide a firmware image to be loaded into the card by the driver. The Atmel firmware package can be downloaded from config PCI_ATMEL tristate "Atmel at76c506 PCI cards" depends on ATMEL && PCI ---help--- Enable support for PCI and mini-PCI cards containing the Atmel at76c506 chip. config PCMCIA_ATMEL tristate "Atmel at76c502/at76c504 PCMCIA cards" depends on ATMEL && PCMCIA select WIRELESS_EXT select FW_LOADER select CRC32 ---help--- Enable support for PCMCIA cards containing the Atmel at76c502 and at76c504 chips. config AT76C50X_USB tristate "Atmel at76c503/at76c505/at76c505a USB cards" depends on MAC80211 && USB select FW_LOADER ---help--- Enable support for USB Wireless devices using Atmel at76c503, at76c505 or at76c505a chips. config AIRO_CS tristate "Cisco/Aironet 34X/35X/4500/4800 PCMCIA cards" depends on PCMCIA && (BROKEN || !M32R) select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV select CRYPTO select CRYPTO_AES ---help--- This is the standard Linux driver to support Cisco/Aironet PCMCIA 802.11 wireless cards. This driver is the same as the Aironet driver part of the Linux Pcmcia package. It supports the new 802.11b cards from Cisco (Cisco 34X, Cisco 35X - with or without encryption) as well as card before the Cisco acquisition (Aironet 4500, Aironet 4800, Aironet 4800B). It also supports OEM of Cisco such as the DELL TrueMobile 4800 and Xircom 802.11b cards. This driver support both the standard Linux Wireless Extensions and Cisco proprietary API, so both the Linux Wireless Tools and the Cisco Linux utilities can be used to configure the card. config PCMCIA_WL3501 tristate "Planet WL3501 PCMCIA cards" depends on EXPERIMENTAL && PCMCIA select WIRELESS_EXT select WEXT_SPY help A driver for WL3501 PCMCIA 802.11 wireless cards made by Planet. It has basic support for Linux wireless extensions and initial micro support for ethtool. config PRISM54 tristate 'Intersil Prism GT/Duette/Indigo PCI/Cardbus (DEPRECATED)' depends on PCI && EXPERIMENTAL select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV select FW_LOADER ---help--- This enables support for FullMAC PCI/Cardbus prism54 devices. This driver is now deprecated in favor for the SoftMAC driver, p54pci. p54pci supports FullMAC PCI/Cardbus devices as well. For details on the scheduled removal of this driver on the kernel see the feature removal schedule: Documentation/feature-removal-schedule.txt For more information refer to the p54 wiki: http://wireless.kernel.org/en/users/Drivers/p54 Note: You need a motherboard with DMA support to use any of these cards When built as module you get the module prism54 config USB_ZD1201 tristate "USB ZD1201 based Wireless device support" depends on USB select WIRELESS_EXT select WEXT_PRIV select FW_LOADER ---help--- Say Y if you want to use wireless LAN adapters based on the ZyDAS ZD1201 chip. This driver makes the adapter appear as a normal Ethernet interface, typically on wlan0. The zd1201 device requires external firmware to be loaded. This can be found at http://linux-lc100020.sourceforge.net/ To compile this driver as a module, choose M here: the module will be called zd1201. config USB_NET_RNDIS_WLAN tristate "Wireless RNDIS USB support" depends on USB && EXPERIMENTAL depends on CFG80211 select USB_USBNET select USB_NET_CDCETHER select USB_NET_RNDIS_HOST ---help--- This is a driver for wireless RNDIS devices. These are USB based adapters found in devices such as: Buffalo WLI-U2-KG125S U.S. Robotics USR5421 Belkin F5D7051 Linksys WUSB54GSv2 Linksys WUSB54GSC Asus WL169gE Eminent EM4045 BT Voyager 1055 Linksys WUSB54GSv1 U.S. Robotics USR5420 BUFFALO WLI-USB-G54 All of these devices are based on Broadcom 4320 chip which is the only wireless RNDIS chip known to date. If you choose to build a module, it'll be called rndis_wlan. source "drivers/net/wireless/rtl818x/Kconfig" config ADM8211 tristate "ADMtek ADM8211 support" depends on MAC80211 && PCI && EXPERIMENTAL select CRC32 select EEPROM_93CX6 ---help--- This driver is for ADM8211A, ADM8211B, and ADM8211C based cards. These are PCI/mini-PCI/Cardbus 802.11b chips found in cards such as: Xterasys Cardbus XN-2411b Blitz NetWave Point PC TrendNet 221pc Belkin F5D6001 SMC 2635W Linksys WPC11 v1 Fiberline FL-WL-200X 3com Office Connect (3CRSHPW796) Corega WLPCIB-11 SMC 2602W V2 EU D-Link DWL-520 Revision C However, some of these cards have been replaced with other chips like the RTL8180L (Xterasys Cardbus XN-2411b, Belkin F5D6001) or the Ralink RT2400 (SMC2635W) without a model number change. Thanks to Infineon-ADMtek for their support of this driver. config MAC80211_HWSIM tristate "Simulated radio testing tool for mac80211" depends on MAC80211 ---help--- This driver is a developer testing tool that can be used to test IEEE 802.11 networking stack (mac80211) functionality. This is not needed for normal wireless LAN usage and is only for testing. See Documentation/networking/mac80211_hwsim for more information on how to use this tool. To compile this driver as a module, choose M here: the module will be called mac80211_hwsim. If unsure, say N. config MWL8K tristate "Marvell 88W8xxx PCI/PCIe Wireless support" depends on MAC80211 && PCI && EXPERIMENTAL ---help--- This driver supports Marvell TOPDOG 802.11 wireless cards. To compile this driver as a module, choose M here: the module will be called mwl8k. If unsure, say N. source "drivers/net/wireless/ath/Kconfig" source "drivers/net/wireless/b43/Kconfig" source "drivers/net/wireless/b43legacy/Kconfig" source "drivers/net/wireless/hostap/Kconfig" source "drivers/net/wireless/ipw2x00/Kconfig" source "drivers/net/wireless/iwlwifi/Kconfig" source "drivers/net/wireless/iwlegacy/Kconfig" source "drivers/net/wireless/iwmc3200wifi/Kconfig" source "drivers/net/wireless/libertas/Kconfig" source "drivers/net/wireless/orinoco/Kconfig" source "drivers/net/wireless/p54/Kconfig" source "drivers/net/wireless/rt2x00/Kconfig" source "drivers/net/wireless/rtlwifi/Kconfig" source "drivers/net/wireless/wl1251/Kconfig" source "drivers/net/wireless/wl12xx/Kconfig" source "drivers/net/wireless/zd1211rw/Kconfig" endif # WLAN menuconfig WL12XX_MENU tristate "TI wl12xx driver support" depends on MAC80211 && EXPERIMENTAL ---help--- This will enable TI wl12xx driver support for the following chips: wl1271 and wl1273. The drivers make use of the mac80211 stack. config WL12XX tristate "TI wl12xx support" depends on WL12XX_MENU && GENERIC_HARDIRQS depends on INET select FW_LOADER select CRC7 ---help--- This module adds support for wireless adapters based on TI wl1271 and TI wl1273 chipsets. This module does *not* include support for wl1251. For wl1251 support, use the separate homonymous driver instead. If you choose to build a module, it will be called wl12xx. Say N if unsure. config WL12XX_HT bool "TI wl12xx 802.11 HT support (EXPERIMENTAL)" depends on WL12XX && EXPERIMENTAL default n ---help--- This will enable 802.11 HT support in the wl12xx module. That configuration is temporary due to the code incomplete and still in testing process. config WL12XX_SPI tristate "TI wl12xx SPI support" depends on WL12XX && SPI_MASTER ---help--- This module adds support for the SPI interface of adapters using TI wl12xx chipsets. Select this if your platform is using the SPI bus. If you choose to build a module, it'll be called wl12xx_spi. Say N if unsure. config WL12XX_SDIO tristate "TI wl12xx SDIO support" depends on WL12XX && MMC ---help--- This module adds support for the SDIO interface of adapters using TI wl12xx chipsets. Select this if your platform is using the SDIO bus. If you choose to build a module, it'll be called wl12xx_sdio. Say N if unsure. config WL12XX_SDIO_TEST tristate "TI wl12xx SDIO testing support" depends on WL12XX && MMC && WL12XX_SDIO default n ---help--- This module adds support for the SDIO bus testing with the TI wl12xx chipsets. You probably don't want this unless you are testing a new hardware platform. Select this if you want to test the SDIO bus which is connected to the wl12xx chip. config WL12XX_PLATFORM_DATA bool depends on WL12XX_SDIO != n || WL1251_SDIO != n default y menuconfig WL1251 tristate "TI wl1251 driver support" depends on MAC80211 && EXPERIMENTAL && GENERIC_HARDIRQS select FW_LOADER select CRC7 ---help--- This will enable TI wl1251 driver support. The drivers make use of the mac80211 stack. If you choose to build a module, it'll be called wl1251. Say N if unsure. config WL1251_SPI tristate "TI wl1251 SPI support" depends on WL1251 && SPI_MASTER ---help--- This module adds support for the SPI interface of adapters using TI wl1251 chipset. Select this if your platform is using the SPI bus. If you choose to build a module, it'll be called wl1251_spi. Say N if unsure. config WL1251_SDIO tristate "TI wl1251 SDIO support" depends on WL1251 && MMC ---help--- This module adds support for the SDIO interface of adapters using TI wl1251 chipset. Select this if your platform is using the SDIO bus. If you choose to build a module, it'll be called wl1251_sdio. Say N if unsure. config IWLWIFI_LEGACY tristate select FW_LOADER select NEW_LEDS select LEDS_CLASS select LEDS_TRIGGERS select MAC80211_LEDS menu "Debugging Options" depends on IWLWIFI_LEGACY config IWLWIFI_LEGACY_DEBUG bool "Enable full debugging output in 4965 and 3945 drivers" depends on IWLWIFI_LEGACY ---help--- This option will enable debug tracing output for the iwlwifilegacy drivers. This will result in the kernel module being ~100k larger. You can control which debug output is sent to the kernel log by setting the value in /sys/class/net/wlan0/device/debug_level This entry will only exist if this option is enabled. To set a value, simply echo an 8-byte hex value to the same file: % echo 0x43fff > /sys/class/net/wlan0/device/debug_level You can find the list of debug mask values in: drivers/net/wireless/iwlwifilegacy/iwl-debug.h If this is your first time using this driver, you should say Y here as the debug information can assist others in helping you resolve any problems you may encounter. config IWLWIFI_LEGACY_DEBUGFS bool "4965 and 3945 debugfs support" depends on IWLWIFI_LEGACY && MAC80211_DEBUGFS ---help--- Enable creation of debugfs files for the iwlwifilegacy drivers. This is a low-impact option that allows getting insight into the driver's state at runtime. config IWLWIFI_LEGACY_DEVICE_TRACING bool "iwlwifilegacy legacy device access tracing" depends on IWLWIFI_LEGACY depends on EVENT_TRACING help Say Y here to trace all commands, including TX frames and IO accesses, sent to the device. If you say yes, iwlwifilegacy will register with the ftrace framework for event tracing and dump all this information to the ringbuffer, you may need to increase the ringbuffer size. See the ftrace documentation for more information. When tracing is not enabled, this option still has some (though rather small) overhead. If unsure, say Y so we can help you better when problems occur. endmenu config IWL4965 tristate "Intel Wireless WiFi 4965AGN (iwl4965)" depends on PCI && MAC80211 select IWLWIFI_LEGACY ---help--- This option enables support for Select to build the driver supporting the: Intel Wireless WiFi Link 4965AGN This driver uses the kernel's mac80211 subsystem. In order to use this driver, you will need a microcode (uCode) image for it. You can obtain the microcode from: . The microcode is typically installed in /lib/firmware. You can look in the hotplug script /etc/hotplug/firmware.agent to determine which directory FIRMWARE_DIR is set to when the script runs. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called iwl4965. config IWL3945 tristate "Intel PRO/Wireless 3945ABG/BG Network Connection (iwl3945)" depends on PCI && MAC80211 select IWLWIFI_LEGACY ---help--- Select to build the driver supporting the: Intel PRO/Wireless 3945ABG/BG Network Connection This driver uses the kernel's mac80211 subsystem. In order to use this driver, you will need a microcode (uCode) image for it. You can obtain the microcode from: . The microcode is typically installed in /lib/firmware. You can look in the hotplug script /etc/hotplug/firmware.agent to determine which directory FIRMWARE_DIR is set to when the script runs. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called iwl3945. config RTL8192CE tristate "Realtek RTL8192CE/RTL8188CE Wireless Network Adapter" depends on MAC80211 && PCI && EXPERIMENTAL select FW_LOADER select RTLWIFI select RTL8192C_COMMON ---help--- This is the driver for Realtek RTL8192CE/RTL8188CE 802.11n PCIe wireless network adapters. If you choose to build it as a module, it will be called rtl8192ce config RTL8192CU tristate "Realtek RTL8192CU/RTL8188CU USB Wireless Network Adapter" depends on MAC80211 && USB && EXPERIMENTAL select FW_LOADER select RTLWIFI select RTL8192C_COMMON ---help--- This is the driver for Realtek RTL8192CU/RTL8188CU 802.11n USB wireless network adapters. If you choose to build it as a module, it will be called rtl8192cu config RTLWIFI tristate depends on RTL8192CE || RTL8192CU default m config RTL8192C_COMMON tristate depends on RTL8192CE || RTL8192CU default m config LIBERTAS tristate "Marvell 8xxx Libertas WLAN driver support" depends on CFG80211 select WIRELESS_EXT select WEXT_SPY select LIB80211 select FW_LOADER ---help--- A library for Marvell Libertas 8xxx devices. config LIBERTAS_USB tristate "Marvell Libertas 8388 USB 802.11b/g cards" depends on LIBERTAS && USB ---help--- A driver for Marvell Libertas 8388 USB devices. config LIBERTAS_CS tristate "Marvell Libertas 8385 CompactFlash 802.11b/g cards" depends on LIBERTAS && PCMCIA ---help--- A driver for Marvell Libertas 8385 CompactFlash devices. config LIBERTAS_SDIO tristate "Marvell Libertas 8385/8686/8688 SDIO 802.11b/g cards" depends on LIBERTAS && MMC ---help--- A driver for Marvell Libertas 8385/8686/8688 SDIO devices. config LIBERTAS_SPI tristate "Marvell Libertas 8686 SPI 802.11b/g cards" depends on LIBERTAS && SPI ---help--- A driver for Marvell Libertas 8686 SPI devices. config LIBERTAS_DEBUG bool "Enable full debugging output in the Libertas module." depends on LIBERTAS ---help--- Debugging support. config LIBERTAS_MESH bool "Enable mesh support" depends on LIBERTAS help This enables Libertas' MESH support, used by e.g. the OLPC people. config B43 tristate "Broadcom 43xx wireless support (mac80211 stack)" depends on SSB_POSSIBLE && MAC80211 && HAS_DMA select SSB select FW_LOADER ---help--- b43 is a driver for the Broadcom 43xx series wireless devices. Check "lspci" for something like "Broadcom Corporation BCM43XX 802.11 Wireless LAN Controller" to determine whether you own such a device. This driver supports the new BCM43xx IEEE 802.11G devices, but not the old IEEE 802.11B devices. Old devices are supported by the b43legacy driver. Note that this has nothing to do with the standard that your AccessPoint supports (A, B, G or a combination). IEEE 802.11G devices can talk to IEEE 802.11B AccessPoints. It is safe to include both b43 and b43legacy as the underlying glue layer will automatically load the correct version for your device. This driver uses V4 firmware, which must be installed separately using b43-fwcutter. This driver can be built as a module (recommended) that will be called "b43". If unsure, say M. # Auto-select SSB PCI-HOST support, if possible config B43_PCI_AUTOSELECT bool depends on B43 && SSB_PCIHOST_POSSIBLE select SSB_PCIHOST select SSB_B43_PCI_BRIDGE default y # Auto-select SSB PCICORE driver, if possible config B43_PCICORE_AUTOSELECT bool depends on B43 && SSB_DRIVER_PCICORE_POSSIBLE select SSB_DRIVER_PCICORE default y config B43_PCMCIA bool "Broadcom 43xx PCMCIA device support" depends on B43 && SSB_PCMCIAHOST_POSSIBLE select SSB_PCMCIAHOST ---help--- Broadcom 43xx PCMCIA device support. Support for 16bit PCMCIA devices. Please note that most PC-CARD devices are _NOT_ 16bit PCMCIA devices, but 32bit CardBUS devices. CardBUS devices are supported out of the box by b43. With this config option you can drive b43 cards in CompactFlash formfactor in a PCMCIA adaptor. CF b43 cards can sometimes be found in handheld PCs. It's safe to select Y here, even if you don't have a B43 PCMCIA device. If unsure, say N. config B43_SDIO bool "Broadcom 43xx SDIO device support (EXPERIMENTAL)" depends on B43 && SSB_SDIOHOST_POSSIBLE && EXPERIMENTAL select SSB_SDIOHOST ---help--- Broadcom 43xx device support for Soft-MAC SDIO devices. With this config option you can drive Soft-MAC b43 cards with a Secure Digital I/O interface. This includes the WLAN daughter card found on the Nintendo Wii video game console. Note that this does not support Broadcom 43xx Full-MAC devices. It's safe to select Y here, even if you don't have a B43 SDIO device. If unsure, say N. #Data transfers to the device via PIO. We want it as a fallback even # if we can do DMA. config B43_PIO bool depends on B43 select SSB_BLOCKIO default y config B43_PHY_N bool "Support for 802.11n (N-PHY) devices (EXPERIMENTAL)" depends on B43 && EXPERIMENTAL ---help--- Support for the N-PHY. This enables support for devices with N-PHY. Say N if you expect high stability and performance. Saying Y will not affect other devices support and may provide support for basic needs. config B43_PHY_LP bool "Support for low-power (LP-PHY) devices (EXPERIMENTAL)" depends on B43 && EXPERIMENTAL default y ---help--- Support for the LP-PHY. The LP-PHY is a low-power PHY built into some notebooks and embedded devices. It supports 802.11a/g (802.11a support is optional, and currently disabled). # This config option automatically enables b43 LEDS support, # if it's possible. config B43_LEDS bool depends on B43 && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = B43) default y # This config option automatically enables b43 HW-RNG support, # if the HW-RNG core is enabled. config B43_HWRNG bool depends on B43 && (HW_RANDOM = y || HW_RANDOM = B43) default y config B43_DEBUG bool "Broadcom 43xx debugging" depends on B43 ---help--- Broadcom 43xx debugging. This adds additional runtime sanity checks and statistics to the driver. These checks and statistics might me expensive and hurt runtime performance of your system. This also adds the b43 debugfs interface. Do not enable this, unless you are debugging the driver. Say N, if you are a distributor or user building a release kernel for production use. Only say Y, if you are debugging a problem in the b43 driver sourcecode. config B43_FORCE_PIO bool "Force usage of PIO instead of DMA" depends on B43 && B43_DEBUG ---help--- This will disable DMA and always enable PIO instead. Say N! This is only for debugging the PIO engine code. You do _NOT_ want to enable this. # # RTL818X Wireless LAN device configuration # config RTL8180 tristate "Realtek 8180/8185 PCI support" depends on MAC80211 && PCI && EXPERIMENTAL select EEPROM_93CX6 ---help--- This is a driver for RTL8180 and RTL8185 based cards. These are PCI based chips found in cards such as: (RTL8185 802.11g) A-Link WL54PC (RTL8180 802.11b) Belkin F5D6020 v3 Belkin F5D6020 v3 Dlink DWL-610 Dlink DWL-510 Netgear MA521 Level-One WPC-0101 Acer Aspire 1357 LMi VCTnet PC-11B1 Ovislink AirLive WL-1120PCM Mentor WL-PCI Linksys WPC11 v4 TrendNET TEW-288PI D-Link DWL-520 Rev D Repotec RP-WP7126 TP-Link TL-WN250/251 Zonet ZEW1000 Longshine LCS-8031-R HomeLine HLW-PCC200 GigaFast WF721-AEX Planet WL-3553 Encore ENLWI-PCI1-NT TrendNET TEW-266PC Gigabyte GN-WLMR101 Siemens-fujitsu Amilo D1840W Edimax EW-7126 PheeNet WL-11PCIR Tonze PC-2100T Planet WL-8303 Dlink DWL-650 v M1 Edimax EW-7106 Q-Tec 770WC Topcom Skyr@cer 4011b Roper FreeLan 802.11b (edition 2004) Wistron Neweb Corp CB-200B Pentagram HorNET QTec 775WC TwinMOS Booming B Series Micronet SP906BB Sweex LC700010 Surecom EP-9428 Safecom SWLCR-1100 Thanks to Realtek for their support! config RTL8187 tristate "Realtek 8187 and 8187B USB support" depends on MAC80211 && USB select EEPROM_93CX6 ---help--- This is a driver for RTL8187 and RTL8187B based cards. These are USB based chips found in devices such as: Netgear WG111v2 Level 1 WNC-0301USB Micronet SP907GK V5 Encore ENUWI-G2 Trendnet TEW-424UB ASUS P5B Deluxe/P5K Premium motherboards Toshiba Satellite Pro series of laptops Asus Wireless Link Linksys WUSB54GC-EU v2 (v1 = rt73usb; v3 is rt2070-based, use staging/rt3070 or try rt2800usb) Thanks to Realtek for their support! # If possible, automatically enable LEDs for RTL8187. config RTL8187_LEDS bool depends on RTL8187 && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = RTL8187) default y config IWM tristate "Intel Wireless Multicomm 3200 WiFi driver" depends on MMC && EXPERIMENTAL depends on CFG80211 select FW_LOADER select IWMC3200TOP help The Intel Wireless Multicomm 3200 hardware is a combo card with GPS, Bluetooth, WiMax and 802.11 radios. It runs over SDIO and is typically found on Moorestown based platform. This driver takes care of the 802.11 part, which is a fullmac one. If you choose to build it as a module, it'll be called iwmc3200wifi.ko. config IWM_DEBUG bool "Enable full debugging output in iwmc3200wifi" depends on IWM && DEBUG_FS help This option will enable debug tracing and setting for iwm You can set the debug level and module through debugfs. By default all modules are set to the IWL_DL_ERR level. To see the list of debug modules and levels, see iwm/debug.h For example, if you want the full MLME debug output: echo 0xff > /sys/kernel/debug/iwm/phyN/debug/mlme Or, if you want the full debug, for all modules: echo 0xff > /sys/kernel/debug/iwm/phyN/debug/level echo 0xff > /sys/kernel/debug/iwm/phyN/debug/modules config IWM_TRACING bool "Enable event tracing for iwmc3200wifi" depends on IWM && EVENT_TRACING help Say Y here to trace all the commands and responses between the driver and firmware (including TX/RX frames) with ftrace. config HOSTAP tristate "IEEE 802.11 for Host AP (Prism2/2.5/3 and WEP/TKIP/CCMP)" select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV select CRYPTO select CRYPTO_ARC4 select CRYPTO_ECB select CRYPTO_AES select CRYPTO_MICHAEL_MIC select CRYPTO_ECB select CRC32 select LIB80211 select LIB80211_CRYPT_WEP select LIB80211_CRYPT_TKIP select LIB80211_CRYPT_CCMP ---help--- Shared driver code for IEEE 802.11b wireless cards based on Intersil Prism2/2.5/3 chipset. This driver supports so called Host AP mode that allows the card to act as an IEEE 802.11 access point. See for more information about the Host AP driver configuration and tools. This site includes information and tools (hostapd and wpa_supplicant) for WPA/WPA2 support. This option includes the base Host AP driver code that is shared by different hardware models. You will also need to enable support for PLX/PCI/CS version of the driver to actually use the driver. The driver can be compiled as a module and it will be called hostap. config HOSTAP_FIRMWARE bool "Support downloading firmware images with Host AP driver" depends on HOSTAP ---help--- Configure Host AP driver to include support for firmware image download. This option by itself only enables downloading to the volatile memory, i.e. the card RAM. This option is required to support cards that don't have firmware in flash, such as D-Link DWL-520 rev E and D-Link DWL-650 rev P. Firmware image downloading needs a user space tool, prism2_srec. It is available from http://hostap.epitest.fi/. config HOSTAP_FIRMWARE_NVRAM bool "Support for non-volatile firmware download" depends on HOSTAP_FIRMWARE ---help--- Allow Host AP driver to write firmware images to the non-volatile card memory, i.e. flash memory that survives power cycling. Enable this option if you want to be able to change card firmware permanently. Firmware image downloading needs a user space tool, prism2_srec. It is available from http://hostap.epitest.fi/. config HOSTAP_PLX tristate "Host AP driver for Prism2/2.5/3 in PLX9052 PCI adaptors" depends on PCI && HOSTAP ---help--- Host AP driver's version for Prism2/2.5/3 PC Cards in PLX9052 based PCI adaptors. "Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this driver and its help text includes more information about the Host AP driver. The driver can be compiled as a module and will be named hostap_plx. config HOSTAP_PCI tristate "Host AP driver for Prism2.5 PCI adaptors" depends on PCI && HOSTAP ---help--- Host AP driver's version for Prism2.5 PCI adaptors. "Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this driver and its help text includes more information about the Host AP driver. The driver can be compiled as a module and will be named hostap_pci. config HOSTAP_CS tristate "Host AP driver for Prism2/2.5/3 PC Cards" depends on PCMCIA && HOSTAP ---help--- Host AP driver's version for Prism2/2.5/3 PC Cards. "Host AP support for Prism2/2.5/3 IEEE 802.11b" is required for this driver and its help text includes more information about the Host AP driver. The driver can be compiled as a module and will be named hostap_cs. config HERMES tristate "Hermes chipset 802.11b support (Orinoco/Prism2/Symbol)" depends on (PPC_PMAC || PCI || PCMCIA) depends on CFG80211 && CFG80211_WEXT select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV select FW_LOADER select CRYPTO select CRYPTO_MICHAEL_MIC ---help--- A driver for 802.11b wireless cards based on the "Hermes" or Intersil HFA384x (Prism 2) MAC controller. This includes the vast majority of the PCMCIA 802.11b cards (which are nearly all rebadges) - except for the Cisco/Aironet cards. Cards supported include the Apple Airport (not a PCMCIA card), WavelanIEEE/Orinoco, Cabletron/EnteraSys Roamabout, ELSA AirLancer, MELCO Buffalo, Avaya, IBM High Rate Wireless, Farralon Syyline, Samsung MagicLAN, Netgear MA401, LinkSys WPC-11, D-Link DWL-650, 3Com AirConnect, Intel IPW2011, and Symbol Spectrum24 High Rate amongst others. This option includes the guts of the driver, but in order to actually use a card you will also need to enable support for PCMCIA Hermes cards, PLX9052 based PCI adaptors or the Apple Airport below. You will also very likely also need the Wireless Tools in order to configure your card and that /etc/pcmcia/wireless.opts works : config HERMES_PRISM bool "Support Prism 2/2.5 chipset" depends on HERMES ---help--- Say Y to enable support for Prism 2 and 2.5 chipsets. These chipsets are better handled by the hostap driver. This driver would not support WPA or firmware download for Prism chipset. If you are not sure, say N. config HERMES_CACHE_FW_ON_INIT bool "Cache Hermes firmware on driver initialisation" depends on HERMES default y ---help--- Say Y to cache any firmware required by the Hermes drivers on startup. The firmware will remain cached until the driver is unloaded. The cache uses 64K of RAM. Otherwise load the firmware from userspace as required. In this case the driver should be unloaded and restarted whenever the firmware is changed. If you are not sure, say Y. config APPLE_AIRPORT tristate "Apple Airport support (built-in)" depends on PPC_PMAC && HERMES help Say Y here to support the Airport 802.11b wireless Ethernet hardware built into the Macintosh iBook and other recent PowerPC-based Macintosh machines. This is essentially a Lucent Orinoco card with a non-standard interface. This driver does not support the Airport Extreme (802.11b/g). Use the BCM43xx driver for Airport Extreme cards. config PLX_HERMES tristate "Hermes in PLX9052 based PCI adaptor support (Netgear MA301 etc.)" depends on PCI && HERMES help Enable support for PCMCIA cards supported by the "Hermes" (aka orinoco) driver when used in PLX9052 based PCI adaptors. These adaptors are not a full PCMCIA controller but act as a more limited PCI <-> PCMCIA bridge. Several vendors sell such adaptors so that 802.11b PCMCIA cards can be used in desktop machines. The Netgear MA301 is such an adaptor. config TMD_HERMES tristate "Hermes in TMD7160 based PCI adaptor support" depends on PCI && HERMES help Enable support for PCMCIA cards supported by the "Hermes" (aka orinoco) driver when used in TMD7160 based PCI adaptors. These adaptors are not a full PCMCIA controller but act as a more limited PCI <-> PCMCIA bridge. Several vendors sell such adaptors so that 802.11b PCMCIA cards can be used in desktop machines. config NORTEL_HERMES tristate "Nortel emobility PCI adaptor support" depends on PCI && HERMES help Enable support for PCMCIA cards supported by the "Hermes" (aka orinoco) driver when used in Nortel emobility PCI adaptors. These adaptors are not full PCMCIA controllers, but act as a more limited PCI <-> PCMCIA bridge. config PCI_HERMES tristate "Prism 2.5 PCI 802.11b adaptor support" depends on PCI && HERMES && HERMES_PRISM help Enable support for PCI and mini-PCI 802.11b wireless NICs based on the Prism 2.5 chipset. These are true PCI cards, not the 802.11b PCMCIA cards bundled with PCI<->PCMCIA adaptors which are also common. Some of the built-in wireless adaptors in laptops are of this variety. config PCMCIA_HERMES tristate "Hermes PCMCIA card support" depends on PCMCIA && HERMES ---help--- A driver for "Hermes" chipset based PCMCIA wireless adaptors, such as the Lucent WavelanIEEE/Orinoco cards and their OEM (Cabletron/ EnteraSys RoamAbout 802.11, ELSA Airlancer, Melco Buffalo and others). It should also be usable on various Prism II based cards such as the Linksys, D-Link and Farallon Skyline. It should also work on Symbol cards such as the 3Com AirConnect and Ericsson WLAN. You will very likely need the Wireless Tools in order to configure your card and that /etc/pcmcia/wireless.opts works: . config PCMCIA_SPECTRUM tristate "Symbol Spectrum24 Trilogy PCMCIA card support" depends on PCMCIA && HERMES ---help--- This is a driver for 802.11b cards using RAM-loadable Symbol firmware, such as Symbol Wireless Networker LA4100, CompactFlash cards by Socket Communications and Intel PRO/Wireless 2011B. This driver requires firmware download on startup. Utilities for downloading Symbol firmware are available at config ORINOCO_USB tristate "Agere Orinoco USB support" depends on USB && HERMES select FW_LOADER ---help--- This driver is for USB versions of the Agere Orinoco card. menuconfig RT2X00 tristate "Ralink driver support" depends on MAC80211 ---help--- This will enable the support for the Ralink drivers, developed in the rt2x00 project . These drivers make use of the mac80211 stack. When building one of the individual drivers, the rt2x00 library will also be created. That library (when the driver is built as a module) will be called rt2x00lib. Additionally PCI and USB libraries will also be build depending on the types of drivers being selected, these libraries will be called rt2x00pci and rt2x00usb. if RT2X00 config RT2400PCI tristate "Ralink rt2400 (PCI/PCMCIA) support" depends on PCI select RT2X00_LIB_PCI select EEPROM_93CX6 ---help--- This adds support for rt2400 wireless chipset family. Supported chips: RT2460. When compiled as a module, this driver will be called rt2400pci. config RT2500PCI tristate "Ralink rt2500 (PCI/PCMCIA) support" depends on PCI select RT2X00_LIB_PCI select EEPROM_93CX6 ---help--- This adds support for rt2500 wireless chipset family. Supported chips: RT2560. When compiled as a module, this driver will be called rt2500pci. config RT61PCI tristate "Ralink rt2501/rt61 (PCI/PCMCIA) support" depends on PCI select RT2X00_LIB_PCI select RT2X00_LIB_FIRMWARE select RT2X00_LIB_CRYPTO select CRC_ITU_T select EEPROM_93CX6 ---help--- This adds support for rt2501 wireless chipset family. Supported chips: RT2561, RT2561S & RT2661. When compiled as a module, this driver will be called rt61pci. config RT2800PCI tristate "Ralink rt27xx/rt28xx/rt30xx (PCI/PCIe/PCMCIA) support" depends on PCI || RALINK_RT288X || RALINK_RT305X select RT2800_LIB select RT2X00_LIB_PCI if PCI select RT2X00_LIB_SOC if RALINK_RT288X || RALINK_RT305X select RT2X00_LIB_HT select RT2X00_LIB_FIRMWARE select RT2X00_LIB_CRYPTO select CRC_CCITT select EEPROM_93CX6 ---help--- This adds support for rt27xx/rt28xx/rt30xx wireless chipset family. Supported chips: RT2760, RT2790, RT2860, RT2880, RT2890, RT3052, RT3090, RT3091 & RT3092 When compiled as a module, this driver will be called "rt2800pci.ko". if RT2800PCI config RT2800PCI_RT33XX bool "rt2800pci - Include support for rt33xx devices (EXPERIMENTAL)" depends on EXPERIMENTAL default n ---help--- This adds support for rt33xx wireless chipset family to the rt2800pci driver. Supported chips: RT3390 Support for these devices is non-functional at the moment and is intended for testers and developers. config RT2800PCI_RT35XX bool "rt2800pci - Include support for rt35xx devices (EXPERIMENTAL)" depends on EXPERIMENTAL default n ---help--- This adds support for rt35xx wireless chipset family to the rt2800pci driver. Supported chips: RT3060, RT3062, RT3562, RT3592 Support for these devices is non-functional at the moment and is intended for testers and developers. config RT2800PCI_RT53XX bool "rt2800-pci - Include support for rt53xx devices (EXPERIMENTAL)" depends on EXPERIMENTAL default n ---help--- This adds support for rt53xx wireless chipset family to the rt2800pci driver. Supported chips: RT5390 Support for these devices is non-functional at the moment and is intended for testers and developers. endif config RT2500USB tristate "Ralink rt2500 (USB) support" depends on USB select RT2X00_LIB_USB select RT2X00_LIB_CRYPTO ---help--- This adds support for rt2500 wireless chipset family. Supported chips: RT2571 & RT2572. When compiled as a module, this driver will be called rt2500usb. config RT73USB tristate "Ralink rt2501/rt73 (USB) support" depends on USB select RT2X00_LIB_USB select RT2X00_LIB_FIRMWARE select RT2X00_LIB_CRYPTO select CRC_ITU_T ---help--- This adds support for rt2501 wireless chipset family. Supported chips: RT2571W, RT2573 & RT2671. When compiled as a module, this driver will be called rt73usb. config RT2800USB tristate "Ralink rt27xx/rt28xx/rt30xx (USB) support" depends on USB select RT2800_LIB select RT2X00_LIB_USB select RT2X00_LIB_HT select RT2X00_LIB_FIRMWARE select RT2X00_LIB_CRYPTO select CRC_CCITT ---help--- This adds support for rt27xx/rt28xx/rt30xx wireless chipset family. Supported chips: RT2770, RT2870 & RT3070, RT3071 & RT3072 When compiled as a module, this driver will be called "rt2800usb.ko". if RT2800USB config RT2800USB_RT33XX bool "rt2800usb - Include support for rt33xx devices (EXPERIMENTAL)" depends on EXPERIMENTAL default n ---help--- This adds support for rt33xx wireless chipset family to the rt2800usb driver. Supported chips: RT3370 Support for these devices is non-functional at the moment and is intended for testers and developers. config RT2800USB_RT35XX bool "rt2800usb - Include support for rt35xx devices (EXPERIMENTAL)" depends on EXPERIMENTAL default n ---help--- This adds support for rt35xx wireless chipset family to the rt2800usb driver. Supported chips: RT3572 Support for these devices is non-functional at the moment and is intended for testers and developers. config RT2800USB_UNKNOWN bool "rt2800usb - Include support for unknown (USB) devices" default n ---help--- This adds support for rt2800usb devices that are known to have a rt28xx family compatible chipset, but for which the exact chipset is unknown. Support status for these devices is unknown, and enabling these devices may or may not work. endif config RT2800_LIB tristate config RT2X00_LIB_PCI tristate select RT2X00_LIB config RT2X00_LIB_SOC tristate select RT2X00_LIB config RT2X00_LIB_USB tristate select RT2X00_LIB config RT2X00_LIB tristate config RT2X00_LIB_HT boolean config RT2X00_LIB_FIRMWARE boolean select FW_LOADER config RT2X00_LIB_CRYPTO boolean config RT2X00_LIB_LEDS boolean default y if (RT2X00_LIB=y && LEDS_CLASS=y) || (RT2X00_LIB=m && LEDS_CLASS!=n) config RT2X00_LIB_DEBUGFS bool "Ralink debugfs support" depends on RT2X00_LIB && MAC80211_DEBUGFS ---help--- Enable creation of debugfs files for the rt2x00 drivers. These debugfs files support both reading and writing of the most important register types of the rt2x00 hardware. config RT2X00_DEBUG bool "Ralink debug output" depends on RT2X00_LIB ---help--- Enable debugging output for all rt2x00 modules endif config P54_COMMON tristate "Softmac Prism54 support" depends on MAC80211 && EXPERIMENTAL select FW_LOADER select CRC_CCITT ---help--- This is common code for isl38xx/stlc45xx based modules. This module does nothing by itself - the USB/PCI/SPI front-ends also need to be enabled in order to support any devices. These devices require softmac firmware which can be found at If you choose to build a module, it'll be called p54common. config P54_USB tristate "Prism54 USB support" depends on P54_COMMON && USB select CRC32 ---help--- This driver is for USB isl38xx based wireless cards. These devices require softmac firmware which can be found at If you choose to build a module, it'll be called p54usb. config P54_PCI tristate "Prism54 PCI support" depends on P54_COMMON && PCI ---help--- This driver is for PCI isl38xx based wireless cards. This driver supports most devices that are supported by the fullmac prism54 driver plus many devices which are not supported by the fullmac driver/firmware. This driver requires softmac firmware which can be found at If you choose to build a module, it'll be called p54pci. config P54_SPI tristate "Prism54 SPI (stlc45xx) support" depends on P54_COMMON && SPI_MASTER && GENERIC_HARDIRQS ---help--- This driver is for stlc4550 or stlc4560 based wireless chips such as Nokia's N800/N810 Portable Internet Tablet. If you choose to build a module, it'll be called p54spi. config P54_SPI_DEFAULT_EEPROM bool "Include fallback EEPROM blob" depends on P54_SPI default n ---help--- Unlike the PCI or USB devices, the SPI variants don't have a dedicated EEPROM chip to store all device specific values for calibration, country and interface settings. The driver will try to load the image "3826.eeprom", if the file is put at the right place. (usually /lib/firmware.) Only if this request fails, this option will provide a backup set of generic values to get the device working. Enabling this option adds about 4k to p54spi. config P54_LEDS bool depends on P54_COMMON && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = P54_COMMON) default y config ATH5K tristate "Atheros 5xxx wireless cards support" depends on (PCI || ATHEROS_AR231X) && MAC80211 select MAC80211_LEDS select LEDS_CLASS select NEW_LEDS select AVERAGE select ATH5K_AHB if (ATHEROS_AR231X && !PCI) select ATH5K_PCI if (!ATHEROS_AR231X && PCI) ---help--- This module adds support for wireless adapters based on Atheros 5xxx chipset. Currently the following chip versions are supported: MAC: AR5211 AR5212 PHY: RF5111/2111 RF5112/2112 RF5413/2413 This driver uses the kernel's mac80211 subsystem. If you choose to build a module, it'll be called ath5k. Say M if unsure. config ATH5K_DEBUG bool "Atheros 5xxx debugging" depends on ATH5K ---help--- Atheros 5xxx debugging messages. Say Y, if and you will get debug options for ath5k. To use this, you need to mount debugfs: mount -t debugfs debug /sys/kernel/debug You will get access to files under: /sys/kernel/debug/ath5k/phy0/ To enable debug, pass the debug level to the debug module parameter. For example: modprobe ath5k debug=0x00000400 config ATH5K_TRACER bool "Atheros 5xxx tracer" depends on ATH5K depends on EVENT_TRACING ---help--- Say Y here to enable tracepoints for the ath5k driver using the kernel tracing infrastructure. Select this option if you are interested in debugging the driver. If unsure, say N. config ATH5K_AHB bool "Atheros 5xxx AHB bus support" depends on (ATHEROS_AR231X && !PCI) ---help--- This adds support for WiSoC type chipsets of the 5xxx Atheros family. config ATH5K_PCI bool "Atheros 5xxx PCI bus support" depends on (!ATHEROS_AR231X && PCI) ---help--- This adds support for PCI type chipsets of the 5xxx Atheros family. menuconfig ATH_COMMON tristate "Atheros Wireless Cards" depends on CFG80211 ---help--- This will enable the support for the Atheros wireless drivers. ath5k, ath9k, ath9k_htc and ar9170 drivers share some common code, this option enables the common ath.ko module which shares common helpers. For more information and documentation on this module you can visit: http://wireless.kernel.org/en/users/Drivers/ath For information on all Atheros wireless drivers visit: http://wireless.kernel.org/en/users/Drivers/Atheros if ATH_COMMON config ATH_DEBUG bool "Atheros wireless debugging" ---help--- Say Y, if you want to debug atheros wireless drivers. Right now only ath9k makes use of this. source "drivers/net/wireless/ath/ath5k/Kconfig" source "drivers/net/wireless/ath/ath9k/Kconfig" source "drivers/net/wireless/ath/ar9170/Kconfig" source "drivers/net/wireless/ath/carl9170/Kconfig" endif config AR9170_USB tristate "Atheros AR9170 802.11n USB support (OBSOLETE)" depends on USB && MAC80211 select FW_LOADER help This driver is going to get replaced by carl9170. This is a driver for the Atheros "otus" 802.11n USB devices. These devices require additional firmware (2 files). For now, these files can be downloaded from here: http://wireless.kernel.org/en/users/Drivers/ar9170 If you choose to build a module, it'll be called ar9170usb. config AR9170_LEDS bool depends on AR9170_USB && MAC80211_LEDS && (LEDS_CLASS = y || LEDS_CLASS = AR9170_USB) default y config ATH9K_HW tristate config ATH9K_COMMON tristate config ATH9K tristate "Atheros 802.11n wireless cards support" depends on PCI && MAC80211 select ATH9K_HW select MAC80211_LEDS select LEDS_CLASS select NEW_LEDS select ATH9K_COMMON ---help--- This module adds support for wireless adapters based on Atheros IEEE 802.11n AR5008, AR9001 and AR9002 family of chipsets. For a specific list of supported external cards, laptops that already ship with these cards and APs that come with these cards refer to to ath9k wiki products page: http://wireless.kernel.org/en/users/Drivers/ath9k/products If you choose to build a module, it'll be called ath9k. config ATH9K_DEBUGFS bool "Atheros ath9k debugging" depends on ATH9K && DEBUG_FS ---help--- Say Y, if you need access to ath9k's statistics for interrupts, rate control, etc. Also required for changing debug message flags at run time. config ATH9K_RATE_CONTROL bool "Atheros ath9k rate control" depends on ATH9K default y ---help--- Say Y, if you want to use the ath9k specific rate control module instead of minstrel_ht. config ATH9K_HTC tristate "Atheros HTC based wireless cards support" depends on USB && MAC80211 select ATH9K_HW select MAC80211_LEDS select LEDS_CLASS select NEW_LEDS select ATH9K_COMMON ---help--- Support for Atheros HTC based cards. Chipsets supported: AR9271 For more information: http://wireless.kernel.org/en/users/Drivers/ath9k_htc The built module will be ath9k_htc. config ATH9K_HTC_DEBUGFS bool "Atheros ath9k_htc debugging" depends on ATH9K_HTC && DEBUG_FS ---help--- Say Y, if you need access to ath9k_htc's statistics. config CARL9170 tristate "Linux Community AR9170 802.11n USB support" depends on USB && MAC80211 && EXPERIMENTAL select FW_LOADER select CRC32 help This is another driver for the Atheros "otus" 802.11n USB devices. This driver provides more features than the original, but it needs a special firmware (carl9170-1.fw) to do that. The firmware can be downloaded from our wiki here: If you choose to build a module, it'll be called carl9170. config CARL9170_LEDS bool "SoftLED Support" depends on CARL9170 select MAC80211_LEDS select LEDS_CLASS select NEW_LEDS default y help This option is necessary, if you want your device' LEDs to blink Say Y, unless you need the LEDs for firmware debugging. config CARL9170_DEBUGFS bool "DebugFS Support" depends on CARL9170 && DEBUG_FS && MAC80211_DEBUGFS default n help Export several driver and device internals to user space. Say N. config CARL9170_WPC bool depends on CARL9170 && (INPUT = y || INPUT = CARL9170) default y config IWLAGN tristate "Intel Wireless WiFi Next Gen AGN - Wireless-N/Advanced-N/Ultimate-N (iwlagn) " depends on PCI && MAC80211 select FW_LOADER select NEW_LEDS select LEDS_CLASS select LEDS_TRIGGERS select MAC80211_LEDS ---help--- Select to build the driver supporting the: Intel Wireless WiFi Link Next-Gen AGN This option enables support for use with the following hardware: Intel Wireless WiFi Link 6250AGN Adapter Intel 6000 Series Wi-Fi Adapters (6200AGN and 6300AGN) Intel WiFi Link 1000BGN Intel Wireless WiFi 5150AGN Intel Wireless WiFi 5100AGN, 5300AGN, and 5350AGN Intel 6005 Series Wi-Fi Adapters Intel 6030 Series Wi-Fi Adapters Intel Wireless WiFi Link 6150BGN 2 Adapter Intel 100 Series Wi-Fi Adapters (100BGN and 130BGN) Intel 2000 Series Wi-Fi Adapters This driver uses the kernel's mac80211 subsystem. In order to use this driver, you will need a microcode (uCode) image for it. You can obtain the microcode from: . The microcode is typically installed in /lib/firmware. You can look in the hotplug script /etc/hotplug/firmware.agent to determine which directory FIRMWARE_DIR is set to when the script runs. If you want to compile the driver as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called iwlagn. menu "Debugging Options" depends on IWLAGN config IWLWIFI_DEBUG bool "Enable full debugging output in the iwlagn driver" depends on IWLAGN ---help--- This option will enable debug tracing output for the iwlwifi drivers This will result in the kernel module being ~100k larger. You can control which debug output is sent to the kernel log by setting the value in /sys/class/net/wlan0/device/debug_level This entry will only exist if this option is enabled. To set a value, simply echo an 8-byte hex value to the same file: % echo 0x43fff > /sys/class/net/wlan0/device/debug_level You can find the list of debug mask values in: drivers/net/wireless/iwlwifi/iwl-debug.h If this is your first time using this driver, you should say Y here as the debug information can assist others in helping you resolve any problems you may encounter. config IWLWIFI_DEBUGFS bool "iwlagn debugfs support" depends on IWLAGN && MAC80211_DEBUGFS ---help--- Enable creation of debugfs files for the iwlwifi drivers. This is a low-impact option that allows getting insight into the driver's state at runtime. config IWLWIFI_DEBUG_EXPERIMENTAL_UCODE bool "Experimental uCode support" depends on IWLAGN && IWLWIFI_DEBUG ---help--- Enable use of experimental ucode for testing and debugging. config IWLWIFI_DEVICE_TRACING bool "iwlwifi device access tracing" depends on IWLAGN depends on EVENT_TRACING help Say Y here to trace all commands, including TX frames and IO accesses, sent to the device. If you say yes, iwlwifi will register with the ftrace framework for event tracing and dump all this information to the ringbuffer, you may need to increase the ringbuffer size. See the ftrace documentation for more information. When tracing is not enabled, this option still has some (though rather small) overhead. If unsure, say Y so we can help you better when problems occur. endmenu config IWL_P2P bool "iwlwifi experimental P2P support" depends on IWLAGN help This option enables experimental P2P support for some devices based on microcode support. Since P2P support is still under development, this option may even enable it for some devices now that turn out to not support it in the future due to microcode restrictions. To determine if your microcode supports the experimental P2P offered by this option, check if the driver advertises AP support when it is loaded. Say Y only if you want to experiment with P2P. config IBM_NEW_EMAC tristate "IBM EMAC Ethernet support" depends on PPC_DCR select CRC32 help This driver supports the IBM EMAC family of Ethernet controllers typically found on 4xx embedded PowerPC chips, but also on the Axon southbridge for Cell. config IBM_NEW_EMAC_RXB int "Number of receive buffers" depends on IBM_NEW_EMAC default "128" config IBM_NEW_EMAC_TXB int "Number of transmit buffers" depends on IBM_NEW_EMAC default "64" config IBM_NEW_EMAC_POLL_WEIGHT int "MAL NAPI polling weight" depends on IBM_NEW_EMAC default "32" config IBM_NEW_EMAC_RX_COPY_THRESHOLD int "RX skb copy threshold (bytes)" depends on IBM_NEW_EMAC default "256" config IBM_NEW_EMAC_RX_SKB_HEADROOM int "Additional RX skb headroom (bytes)" depends on IBM_NEW_EMAC default "0" help Additional receive skb headroom. Note, that driver will always reserve at least 2 bytes to make IP header aligned, so usually there is no need to add any additional headroom. If unsure, set to 0. config IBM_NEW_EMAC_DEBUG bool "Debugging" depends on IBM_NEW_EMAC default n # The options below has to be select'ed by the respective # processor types or platforms config IBM_NEW_EMAC_ZMII bool default n config IBM_NEW_EMAC_RGMII bool default n config IBM_NEW_EMAC_TAH bool default n config IBM_NEW_EMAC_EMAC4 bool default n config IBM_NEW_EMAC_NO_FLOW_CTRL bool default n config IBM_NEW_EMAC_MAL_CLR_ICINTSTAT bool default n config IBM_NEW_EMAC_MAL_COMMON_ERR bool default n config BE2NET tristate "ServerEngines' 10Gbps NIC - BladeEngine" depends on PCI && INET help This driver implements the NIC functionality for ServerEngines' 10Gbps network adapter - BladeEngine. # # ATM device configuration # menuconfig ATM_DRIVERS bool "ATM drivers" depends on NETDEVICES && ATM default y ---help--- Say Y here to get to see options for Asynchronous Transfer Mode device drivers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if ATM_DRIVERS && NETDEVICES && ATM config ATM_DUMMY tristate "Dummy ATM driver" help Dummy ATM driver. Useful for proxy signalling, testing, and development. If unsure, say N. config ATM_TCP tristate "ATM over TCP" depends on INET help ATM over TCP driver. Useful mainly for development and for experiments. If unsure, say N. config ATM_LANAI tristate "Efficient Networks Speedstream 3010" depends on PCI && ATM help Supports ATM cards based on the Efficient Networks "Lanai" chipset such as the Speedstream 3010 and the ENI-25p. The Speedstream 3060 is currently not supported since we don't have the code to drive the on-board Alcatel DSL chipset (yet). config ATM_ENI tristate "Efficient Networks ENI155P" depends on PCI ---help--- Driver for the Efficient Networks ENI155p series and SMC ATM Power155 155 Mbps ATM adapters. Both, the versions with 512KB and 2MB on-board RAM (Efficient calls them "C" and "S", respectively), and the FPGA and the ASIC Tonga versions of the board are supported. The driver works with MMF (-MF or ...F) and UTP-5 (-U5 or ...D) adapters. To compile this driver as a module, choose M here: the module will be called eni. config ATM_ENI_DEBUG bool "Enable extended debugging" depends on ATM_ENI help Extended debugging records various events and displays that list when an inconsistency is detected. This mechanism is faster than generally using printks, but still has some impact on performance. Note that extended debugging may create certain race conditions itself. Enable this ONLY if you suspect problems with the driver. config ATM_ENI_TUNE_BURST bool "Fine-tune burst settings" depends on ATM_ENI ---help--- In order to obtain good throughput, the ENI NIC can transfer multiple words of data per PCI bus access cycle. Such a multi-word transfer is called a burst. The default settings for the burst sizes are suitable for most PCI chipsets. However, in some cases, large bursts may overrun buffers in the PCI chipset and cause data corruption. In such cases, large bursts must be disabled and only (slower) small bursts can be used. The burst sizes can be set independently in the send (TX) and receive (RX) direction. Note that enabling many different burst sizes in the same direction may increase the cost of setting up a transfer such that the resulting throughput is lower than when using only the largest available burst size. Also, sometimes larger bursts lead to lower throughput, e.g. on an Intel 440FX board, a drop from 135 Mbps to 103 Mbps was observed when going from 8W to 16W bursts. config ATM_ENI_BURST_TX_16W bool "Enable 16W TX bursts (discouraged)" depends on ATM_ENI_TUNE_BURST help Burst sixteen words at once in the send direction. This may work with recent PCI chipsets, but is known to fail with older chipsets. config ATM_ENI_BURST_TX_8W bool "Enable 8W TX bursts (recommended)" depends on ATM_ENI_TUNE_BURST help Burst eight words at once in the send direction. This is the default setting. config ATM_ENI_BURST_TX_4W bool "Enable 4W TX bursts (optional)" depends on ATM_ENI_TUNE_BURST help Burst four words at once in the send direction. You may want to try this if you have disabled 8W bursts. Enabling 4W if 8W is also set may or may not improve throughput. config ATM_ENI_BURST_TX_2W bool "Enable 2W TX bursts (optional)" depends on ATM_ENI_TUNE_BURST help Burst two words at once in the send direction. You may want to try this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W are also set may or may not improve throughput. config ATM_ENI_BURST_RX_16W bool "Enable 16W RX bursts (discouraged)" depends on ATM_ENI_TUNE_BURST help Burst sixteen words at once in the receive direction. This may work with recent PCI chipsets, but is known to fail with older chipsets. config ATM_ENI_BURST_RX_8W bool "Enable 8W RX bursts (discouraged)" depends on ATM_ENI_TUNE_BURST help Burst eight words at once in the receive direction. This may work with recent PCI chipsets, but is known to fail with older chipsets, such as the Intel Neptune series. config ATM_ENI_BURST_RX_4W bool "Enable 4W RX bursts (recommended)" depends on ATM_ENI_TUNE_BURST help Burst four words at once in the receive direction. This is the default setting. Enabling 4W if 8W is also set may or may not improve throughput. config ATM_ENI_BURST_RX_2W bool "Enable 2W RX bursts (optional)" depends on ATM_ENI_TUNE_BURST help Burst two words at once in the receive direction. You may want to try this if you have disabled 4W and 8W bursts. Enabling 2W if 4W or 8W are also set may or may not improve throughput. config ATM_FIRESTREAM tristate "Fujitsu FireStream (FS50/FS155) " depends on PCI && VIRT_TO_BUS help Driver for the Fujitsu FireStream 155 (MB86697) and FireStream 50 (MB86695) ATM PCI chips. To compile this driver as a module, choose M here: the module will be called firestream. config ATM_ZATM tristate "ZeitNet ZN1221/ZN1225" depends on PCI && VIRT_TO_BUS help Driver for the ZeitNet ZN1221 (MMF) and ZN1225 (UTP-5) 155 Mbps ATM adapters. To compile this driver as a module, choose M here: the module will be called zatm. config ATM_ZATM_DEBUG bool "Enable extended debugging" depends on ATM_ZATM help Extended debugging records various events and displays that list when an inconsistency is detected. This mechanism is faster than generally using printks, but still has some impact on performance. Note that extended debugging may create certain race conditions itself. Enable this ONLY if you suspect problems with the driver. config ATM_NICSTAR tristate "IDT 77201 (NICStAR) (ForeRunnerLE)" depends on PCI help The NICStAR chipset family is used in a large number of ATM NICs for 25 and for 155 Mbps, including IDT cards and the Fore ForeRunnerLE series. Say Y if you have one of those. To compile this driver as a module, choose M here: the module will be called nicstar. config ATM_NICSTAR_USE_SUNI bool "Use suni PHY driver (155Mbps)" depends on ATM_NICSTAR help Support for the S-UNI and compatible PHYsical layer chips. These are found in most 155Mbps NICStAR based ATM cards, namely in the ForeRunner LE155 cards. This driver provides detection of cable~ removal and reinsertion and provides some statistics. This driver doesn't have removal capability when compiled as a module, so if you need that capability don't include S-UNI support (it's not needed to make the card work). config ATM_NICSTAR_USE_IDT77105 bool "Use IDT77015 PHY driver (25Mbps)" depends on ATM_NICSTAR help Support for the PHYsical layer chip in ForeRunner LE25 cards. In addition to cable removal/reinsertion detection, this driver allows you to control the loopback mode of the chip via a dedicated IOCTL. This driver is required for proper handling of temporary carrier loss, so if you have a 25Mbps NICStAR based ATM card you must say Y. config ATM_IDT77252 tristate "IDT 77252 (NICStAR II)" depends on PCI help Driver for the IDT 77252 ATM PCI chips. To compile this driver as a module, choose M here: the module will be called idt77252. config ATM_IDT77252_DEBUG bool "Enable debugging messages" depends on ATM_IDT77252 help Somewhat useful debugging messages are available. The choice of messages is controlled by a bitmap. This may be specified as a module argument. See the file for the meanings of the bits in the mask. When active, these messages can have a significant impact on the speed of the driver, and the size of your syslog files! When inactive, they will have only a modest impact on performance. config ATM_IDT77252_RCV_ALL bool "Receive ALL cells in raw queue" depends on ATM_IDT77252 help Enable receiving of all cells on the ATM link, that do not match an open connection in the raw cell queue of the driver. Useful for debugging or special applications only, so the safe answer is N. config ATM_IDT77252_USE_SUNI bool depends on ATM_IDT77252 default y config ATM_AMBASSADOR tristate "Madge Ambassador (Collage PCI 155 Server)" depends on PCI && VIRT_TO_BUS select BITREVERSE help This is a driver for ATMizer based ATM card produced by Madge Networks Ltd. Say Y (or M to compile as a module named ambassador) here if you have one of these cards. config ATM_AMBASSADOR_DEBUG bool "Enable debugging messages" depends on ATM_AMBASSADOR ---help--- Somewhat useful debugging messages are available. The choice of messages is controlled by a bitmap. This may be specified as a module argument (kernel command line argument as well?), changed dynamically using an ioctl (not yet) or changed by sending the string "Dxxxx" to VCI 1023 (where x is a hex digit). See the file for the meanings of the bits in the mask. When active, these messages can have a significant impact on the speed of the driver, and the size of your syslog files! When inactive, they will have only a modest impact on performance. config ATM_HORIZON tristate "Madge Horizon [Ultra] (Collage PCI 25 and Collage PCI 155 Client)" depends on PCI && VIRT_TO_BUS help This is a driver for the Horizon chipset ATM adapter cards once produced by Madge Networks Ltd. Say Y (or M to compile as a module named horizon) here if you have one of these cards. config ATM_HORIZON_DEBUG bool "Enable debugging messages" depends on ATM_HORIZON ---help--- Somewhat useful debugging messages are available. The choice of messages is controlled by a bitmap. This may be specified as a module argument (kernel command line argument as well?), changed dynamically using an ioctl (not yet) or changed by sending the string "Dxxxx" to VCI 1023 (where x is a hex digit). See the file for the meanings of the bits in the mask. When active, these messages can have a significant impact on the speed of the driver, and the size of your syslog files! When inactive, they will have only a modest impact on performance. config ATM_IA tristate "Interphase ATM PCI x575/x525/x531" depends on PCI ---help--- This is a driver for the Interphase (i)ChipSAR adapter cards which include a variety of variants in term of the size of the control memory (128K-1KVC, 512K-4KVC), the size of the packet memory (128K, 512K, 1M), and the PHY type (Single/Multi mode OC3, UTP155, UTP25, DS3 and E3). Go to: for more info about the cards. Say Y (or M to compile as a module named iphase) here if you have one of these cards. See the file for further details. config ATM_IA_DEBUG bool "Enable debugging messages" depends on ATM_IA ---help--- Somewhat useful debugging messages are available. The choice of messages is controlled by a bitmap. This may be specified as a module argument (kernel command line argument as well?), changed dynamically using an ioctl (Get the debug utility, iadbg, from ). See the file for the meanings of the bits in the mask. When active, these messages can have a significant impact on the speed of the driver, and the size of your syslog files! When inactive, they will have only a modest impact on performance. config ATM_FORE200E tristate "FORE Systems 200E-series" depends on (PCI || SBUS) select FW_LOADER ---help--- This is a driver for the FORE Systems 200E-series ATM adapter cards. It simultaneously supports PCA-200E and SBA-200E models on PCI and SBUS hosts. Say Y (or M to compile as a module named fore_200e) here if you have one of these ATM adapters. See the file for further details. config ATM_FORE200E_USE_TASKLET bool "Defer interrupt work to a tasklet" depends on ATM_FORE200E default n help This defers work to be done by the interrupt handler to a tasklet instead of handling everything at interrupt time. This may improve the responsive of the host. config ATM_FORE200E_TX_RETRY int "Maximum number of tx retries" depends on ATM_FORE200E default "16" ---help--- Specifies the number of times the driver attempts to transmit a message before giving up, if the transmit queue of the ATM card is transiently saturated. Saturation of the transmit queue may occur only under extreme conditions, e.g. when a fast host continuously submits very small frames (<64 bytes) or raw AAL0 cells (48 bytes) to the ATM adapter. Note that under common conditions, it is unlikely that you encounter a saturation of the transmit queue, so the retry mechanism never comes into play. config ATM_FORE200E_DEBUG int "Debugging level (0-3)" depends on ATM_FORE200E default "0" help Specifies the level of debugging messages issued by the driver. The verbosity of the driver increases with the value of this parameter. When active, these messages can have a significant impact on the performances of the driver, and the size of your syslog files! Keep the debugging level to 0 during normal operations. config ATM_HE tristate "ForeRunner HE Series" depends on PCI help This is a driver for the Marconi ForeRunner HE-series ATM adapter cards. It simultaneously supports the 155 and 622 versions. config ATM_HE_USE_SUNI bool "Use S/UNI PHY driver" depends on ATM_HE help Support for the S/UNI-Ultra and S/UNI-622 found in the ForeRunner HE cards. This driver provides carrier detection some statistics. config ATM_SOLOS tristate "Solos ADSL2+ PCI Multiport card driver" depends on PCI select FW_LOADER help Support for the Solos multiport ADSL2+ card. endif # ATM menuconfig CRYPTO_HW bool "Hardware crypto devices" default y ---help--- Say Y here to get to see options for hardware crypto devices and processors. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if CRYPTO_HW config CRYPTO_DEV_PADLOCK tristate "Support for VIA PadLock ACE" depends on X86 && !UML help Some VIA processors come with an integrated crypto engine (so called VIA PadLock ACE, Advanced Cryptography Engine) that provides instructions for very fast cryptographic operations with supported algorithms. The instructions are used only when the CPU supports them. Otherwise software encryption is used. config CRYPTO_DEV_PADLOCK_AES tristate "PadLock driver for AES algorithm" depends on CRYPTO_DEV_PADLOCK select CRYPTO_BLKCIPHER select CRYPTO_AES help Use VIA PadLock for AES algorithm. Available in VIA C3 and newer CPUs. If unsure say M. The compiled module will be called padlock-aes. config CRYPTO_DEV_PADLOCK_SHA tristate "PadLock driver for SHA1 and SHA256 algorithms" depends on CRYPTO_DEV_PADLOCK select CRYPTO_HASH select CRYPTO_SHA1 select CRYPTO_SHA256 help Use VIA PadLock for SHA1/SHA256 algorithms. Available in VIA C7 and newer processors. If unsure say M. The compiled module will be called padlock-sha. config CRYPTO_DEV_GEODE tristate "Support for the Geode LX AES engine" depends on X86_32 && PCI select CRYPTO_ALGAPI select CRYPTO_BLKCIPHER help Say 'Y' here to use the AMD Geode LX processor on-board AES engine for the CryptoAPI AES algorithm. To compile this driver as a module, choose M here: the module will be called geode-aes. config ZCRYPT tristate "Support for PCI-attached cryptographic adapters" depends on S390 select ZCRYPT_MONOLITHIC if ZCRYPT="y" select HW_RANDOM help Select this option if you want to use a PCI-attached cryptographic adapter like: + PCI Cryptographic Accelerator (PCICA) + PCI Cryptographic Coprocessor (PCICC) + PCI-X Cryptographic Coprocessor (PCIXCC) + Crypto Express2 Coprocessor (CEX2C) + Crypto Express2 Accelerator (CEX2A) config ZCRYPT_MONOLITHIC bool "Monolithic zcrypt module" depends on ZCRYPT help Select this option if you want to have a single module z90crypt, that contains all parts of the crypto device driver (ap bus, request router and all the card drivers). config CRYPTO_SHA1_S390 tristate "SHA1 digest algorithm" depends on S390 select CRYPTO_HASH help This is the s390 hardware accelerated implementation of the SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2). config CRYPTO_SHA256_S390 tristate "SHA256 digest algorithm" depends on S390 select CRYPTO_HASH help This is the s390 hardware accelerated implementation of the SHA256 secure hash standard (DFIPS 180-2). This version of SHA implements a 256 bit hash with 128 bits of security against collision attacks. config CRYPTO_SHA512_S390 tristate "SHA384 and SHA512 digest algorithm" depends on S390 select CRYPTO_HASH help This is the s390 hardware accelerated implementation of the SHA512 secure hash standard. This version of SHA implements a 512 bit hash with 256 bits of security against collision attacks. The code also includes SHA-384, a 384 bit hash with 192 bits of security against collision attacks. config CRYPTO_DES_S390 tristate "DES and Triple DES cipher algorithms" depends on S390 select CRYPTO_ALGAPI select CRYPTO_BLKCIPHER help This us the s390 hardware accelerated implementation of the DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3). config CRYPTO_AES_S390 tristate "AES cipher algorithms" depends on S390 select CRYPTO_ALGAPI select CRYPTO_BLKCIPHER help This is the s390 hardware accelerated implementation of the AES cipher algorithms (FIPS-197). AES uses the Rijndael algorithm. Rijndael appears to be consistently a very good performer in both hardware and software across a wide range of computing environments regardless of its use in feedback or non-feedback modes. Its key setup time is excellent, and its key agility is good. Rijndael's very low memory requirements make it very well suited for restricted-space environments, in which it also demonstrates excellent performance. Rijndael's operations are among the easiest to defend against power and timing attacks. On s390 the System z9-109 currently only supports the key size of 128 bit. config S390_PRNG tristate "Pseudo random number generator device driver" depends on S390 default "m" help Select this option if you want to use the s390 pseudo random number generator. The PRNG is part of the cryptographic processor functions and uses triple-DES to generate secure random numbers like the ANSI X9.17 standard. The PRNG is usable via the char device /dev/prandom. config CRYPTO_DEV_MV_CESA tristate "Marvell's Cryptographic Engine" depends on PLAT_ORION select CRYPTO_ALGAPI select CRYPTO_AES select CRYPTO_BLKCIPHER2 help This driver allows you to utilize the Cryptographic Engines and Security Accelerator (CESA) which can be found on the Marvell Orion and Kirkwood SoCs, such as QNAP's TS-209. Currently the driver supports AES in ECB and CBC mode without DMA. config CRYPTO_DEV_NIAGARA2 tristate "Niagara2 Stream Processing Unit driver" select CRYPTO_DES select CRYPTO_ALGAPI depends on SPARC64 help Each core of a Niagara2 processor contains a Stream Processing Unit, which itself contains several cryptographic sub-units. One set provides the Modular Arithmetic Unit, used for SSL offload. The other set provides the Cipher Group, which can perform encryption, decryption, hashing, checksumming, and raw copies. config CRYPTO_DEV_HIFN_795X tristate "Driver HIFN 795x crypto accelerator chips" select CRYPTO_DES select CRYPTO_ALGAPI select CRYPTO_BLKCIPHER select HW_RANDOM if CRYPTO_DEV_HIFN_795X_RNG depends on PCI help This option allows you to have support for HIFN 795x crypto adapters. config CRYPTO_DEV_HIFN_795X_RNG bool "HIFN 795x random number generator" depends on CRYPTO_DEV_HIFN_795X help Select this option if you want to enable the random number generator on the HIFN 795x crypto adapters. config CRYPTO_DEV_TALITOS tristate "Talitos Freescale Security Engine (SEC)" select CRYPTO_ALGAPI select CRYPTO_AUTHENC select HW_RANDOM depends on FSL_SOC help Say 'Y' here to use the Freescale Security Engine (SEC) to offload cryptographic algorithm computation. The Freescale SEC is present on PowerQUICC 'E' processors, such as the MPC8349E and MPC8548E. To compile this driver as a module, choose M here: the module will be called talitos. config CRYPTO_DEV_IXP4XX tristate "Driver for IXP4xx crypto hardware acceleration" depends on ARCH_IXP4XX select CRYPTO_DES select CRYPTO_ALGAPI select CRYPTO_AUTHENC select CRYPTO_BLKCIPHER help Driver for the IXP4xx NPE crypto engine. config CRYPTO_DEV_PPC4XX tristate "Driver AMCC PPC4xx crypto accelerator" depends on PPC && 4xx select CRYPTO_HASH select CRYPTO_ALGAPI select CRYPTO_BLKCIPHER help This option allows you to have support for AMCC crypto acceleration. config CRYPTO_DEV_OMAP_SHAM tristate "Support for OMAP SHA1/MD5 hw accelerator" depends on ARCH_OMAP2 || ARCH_OMAP3 select CRYPTO_SHA1 select CRYPTO_MD5 help OMAP processors have SHA1/MD5 hw accelerator. Select this if you want to use the OMAP module for SHA1/MD5 algorithms. config CRYPTO_DEV_OMAP_AES tristate "Support for OMAP AES hw engine" depends on ARCH_OMAP2 || ARCH_OMAP3 select CRYPTO_AES help OMAP processors have AES module accelerator. Select this if you want to use the OMAP module for AES algorithms. config CRYPTO_DEV_PICOXCELL tristate "Support for picoXcell IPSEC and Layer2 crypto engines" depends on ARCH_PICOXCELL select CRYPTO_AES select CRYPTO_AUTHENC select CRYPTO_ALGAPI select CRYPTO_DES select CRYPTO_CBC select CRYPTO_ECB select CRYPTO_SEQIV help This option enables support for the hardware offload engines in the Picochip picoXcell SoC devices. Select this for IPSEC ESP offload and for 3gpp Layer 2 ciphering support. Saying m here will build a module named pipcoxcell_crypto. endif # CRYPTO_HW config DTC bool config OF bool menu "Device Tree and Open Firmware support" depends on OF config PROC_DEVICETREE bool "Support for device tree in /proc" depends on PROC_FS && !SPARC help This option adds a device-tree directory under /proc which contains an image of the device tree that the kernel copies from Open Firmware or other boot firmware. If unsure, say Y here. config OF_FLATTREE bool select DTC config OF_EARLY_FLATTREE bool select OF_FLATTREE config OF_PROMTREE bool config OF_DYNAMIC def_bool y depends on PPC_OF config OF_ADDRESS def_bool y depends on !SPARC config OF_IRQ def_bool y depends on !SPARC config OF_DEVICE def_bool y config OF_GPIO def_bool y depends on GPIOLIB && !SPARC help OpenFirmware GPIO accessors config OF_I2C def_tristate I2C depends on I2C && !SPARC help OpenFirmware I2C accessors config OF_NET depends on NETDEVICES def_bool y config OF_SPI def_tristate SPI depends on SPI && !SPARC help OpenFirmware SPI accessors config OF_MDIO def_tristate PHYLIB depends on PHYLIB help OpenFirmware MDIO bus (Ethernet PHY) accessors config OF_PCI def_tristate PCI depends on PCI && (PPC || MICROBLAZE || X86) help OpenFirmware PCI bus accessors endmenu # OF config TOUCHSCREEN_CLEARPAD_TM1217 tristate "Synaptics Clearpad TM1217" depends on I2C depends on GPIOLIB depends on INPUT help Say Y here if you have a Synaptics Clearpad TM1217 Controller If unsure, say N. To compile this driver as a module, choose M here: the module will be called clearpad_tm1217. config USB_IP_COMMON tristate "USB IP support (EXPERIMENTAL)" depends on USB && NET && EXPERIMENTAL default N ---help--- This enables pushing USB packets over IP to allow remote machines access to USB devices directly. For more details, and links to the userspace utility programs to let this work properly, see http://usbip.sourceforge.net/. To compile this driver as a module, choose M here: the module will be called usbip_common_mod. If unsure, say N. config USB_IP_VHCI_HCD tristate "USB IP client driver" depends on USB_IP_COMMON default N ---help--- This enables the USB IP host controller driver which will run on the client machine. To compile this driver as a module, choose M here: the module will be called vhci_hcd. config USB_IP_HOST tristate "USB IP host driver" depends on USB_IP_COMMON default N ---help--- This enables the USB IP device driver which will run on the host machine. To compile this driver as a module, choose M here: the module will be called usbip. config USB_IP_DEBUG_ENABLE bool "USB-IP Debug Enable" depends on USB_IP_COMMON default N ---help--- This enables the debug messages from the USB-IP drivers. config FB_SM7XX tristate "Silicon Motion SM7XX Frame Buffer Support" depends on FB select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help Frame Buffer driver for the Silicon Motion SM7XX serial graphic card. config USB_SERIAL_QUATECH2 tristate "USB Quatech ESU-100 8 Port Serial Driver" depends on USB_SERIAL help Say Y here if you want to use the Quatech ESU-100 8 port usb to serial adapter. To compile this driver as a module, choose M here: the module will be called serqt_usb2. menuconfig STAGING bool "Staging drivers" default n ---help--- This option allows you to select a number of drivers that are not of the "normal" Linux kernel quality level. These drivers are placed here in order to get a wider audience to make use of them. Please note that these drivers are under heavy development, may or may not work, and may contain userspace interfaces that most likely will be changed in the near future. Using any of these drivers will taint your kernel which might affect support options from both the community, and various commercial support organizations. If you wish to work on these drivers, to help improve them, or to report problems you have with them, please see the driver_name.README file in the drivers/staging/ directory to see what needs to be worked on, and who to contact. If in doubt, say N here. if STAGING config STAGING_EXCLUDE_BUILD bool "Exclude Staging drivers from being built" if STAGING default y ---help--- Are you sure you really want to build the staging drivers? They taint your kernel, don't live up to the normal Linux kernel quality standards, are a bit crufty around the edges, and might go off and kick your dog when you aren't paying attention. Say N here to be able to select and build the Staging drivers. This option is primarily here to prevent them from being built when selecting 'make allyesconfg' and 'make allmodconfig' so don't be all that put off, your dog will be just fine. if !STAGING_EXCLUDE_BUILD source "drivers/staging/tty/Kconfig" source "drivers/staging/generic_serial/Kconfig" source "drivers/staging/et131x/Kconfig" source "drivers/staging/slicoss/Kconfig" source "drivers/staging/go7007/Kconfig" source "drivers/staging/cx25821/Kconfig" source "drivers/staging/tm6000/Kconfig" source "drivers/staging/cxd2099/Kconfig" source "drivers/staging/usbip/Kconfig" source "drivers/staging/winbond/Kconfig" source "drivers/staging/wlan-ng/Kconfig" source "drivers/staging/echo/Kconfig" source "drivers/staging/brcm80211/Kconfig" source "drivers/staging/rt2860/Kconfig" source "drivers/staging/rt2870/Kconfig" source "drivers/staging/comedi/Kconfig" source "drivers/staging/olpc_dcon/Kconfig" source "drivers/staging/asus_oled/Kconfig" source "drivers/staging/panel/Kconfig" source "drivers/staging/rtl8187se/Kconfig" source "drivers/staging/rtl8192u/Kconfig" source "drivers/staging/rtl8192e/Kconfig" source "drivers/staging/rtl8712/Kconfig" source "drivers/staging/rts_pstor/Kconfig" source "drivers/staging/frontier/Kconfig" source "drivers/staging/pohmelfs/Kconfig" source "drivers/staging/phison/Kconfig" source "drivers/staging/line6/Kconfig" source "drivers/gpu/drm/vmwgfx/Kconfig" source "drivers/gpu/drm/nouveau/Kconfig" source "drivers/staging/octeon/Kconfig" source "drivers/staging/serqt_usb2/Kconfig" source "drivers/staging/spectra/Kconfig" source "drivers/staging/quatech_usb2/Kconfig" source "drivers/staging/vt6655/Kconfig" source "drivers/staging/vt6656/Kconfig" source "drivers/staging/hv/Kconfig" source "drivers/staging/vme/Kconfig" source "drivers/staging/sep/Kconfig" source "drivers/staging/iio/Kconfig" source "drivers/staging/cs5535_gpio/Kconfig" source "drivers/staging/zram/Kconfig" source "drivers/staging/zcache/Kconfig" source "drivers/staging/wlags49_h2/Kconfig" source "drivers/staging/wlags49_h25/Kconfig" source "drivers/staging/sm7xx/Kconfig" source "drivers/staging/dt3155v4l/Kconfig" source "drivers/staging/crystalhd/Kconfig" source "drivers/staging/cxt1e1/Kconfig" source "drivers/staging/xgifb/Kconfig" source "drivers/staging/msm/Kconfig" source "drivers/staging/lirc/Kconfig" source "drivers/staging/easycap/Kconfig" source "drivers/staging/solo6x10/Kconfig" source "drivers/staging/tidspbridge/Kconfig" source "drivers/staging/quickstart/Kconfig" source "drivers/staging/westbridge/Kconfig" source "drivers/staging/sbe-2t3e3/Kconfig" source "drivers/staging/ath6kl/Kconfig" source "drivers/staging/keucr/Kconfig" source "drivers/staging/bcm/Kconfig" source "drivers/staging/ft1000/Kconfig" source "drivers/staging/intel_sst/Kconfig" source "drivers/staging/speakup/Kconfig" source "drivers/staging/cptm1217/Kconfig" source "drivers/staging/ste_rmi4/Kconfig" source "drivers/staging/gma500/Kconfig" source "drivers/staging/altera-stapl/Kconfig" endif # !STAGING_EXCLUDE_BUILD endif # STAGING config FT1000 tristate "Drivers for Flarion ft1000 devices" if FT1000 config FT1000_USB tristate "Driver for ft1000 usb devices." depends on USB depends on NET help Say Y if you want to have support for Qleadtek FLASH-OFDM USB Modem [LR7F04], Qleadtek Express Card or Leadtek Multi-band modem HSDPA. config FT1000_PCMCIA tristate "Driver for ft1000 pcmcia device." depends on PCMCIA depends on NET help Say Y if you want to have support for Flarion card also called Multimedia Net Card. endif config COMEDI tristate "Data acquisition support (comedi)" default N depends on m ---help--- Enable support a wide range of data acquisition devices for Linux. config COMEDI_DEBUG bool "Comedi debugging" depends on COMEDI != n ---help--- This is an option for use by developers; most people should say N here. This enables comedi core and driver debugging. menuconfig COMEDI_MISC_DRIVERS tristate "Comedi misc drivers" depends on COMEDI default N ---help--- Enable comedi misc drivers to be built Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about misc non-hardware comedi drivers. if COMEDI_MISC_DRIVERS config COMEDI_KCOMEDILIB tristate "Comedi kcomedilib" ---help--- Build the kcomedilib config COMEDI_BOND tristate "Device bonding support" depends on COMEDI_KCOMEDILIB default N ---help--- Enable support for a driver to 'bond' (merge) multiple subdevices from multiple devices together as one. To compile this driver as a module, choose M here: the module will be called comedi_bond. config COMEDI_TEST tristate "Fake waveform generator support" select COMEDI_FC default N ---help--- Enable support for the fake waveform generator. This driver is mainly for testing purposes, but can also be used to generate sample waveforms on systems that don't have data acquisition hardware. To compile this driver as a module, choose M here: the module will be called comedi_test. config COMEDI_PARPORT tristate "Parallel port support" default N ---help--- Enable support for the standard parallel port. A cheap and easy way to get a few more digital I/O lines. Steal additional parallel ports from old computers or your neighbors' computers. To compile this driver as a module, choose M here: the module will be called comedi_parport. config COMEDI_SERIAL2002 tristate "Driver for serial connected hardware" default N ---help--- Enable support for serial connected hardware To compile this driver as a module, choose M here: the module will be called serial2002. config COMEDI_SKEL tristate "Comedi skeleton driver" default N ---help--- Build the Skeleton driver, an example for driver writers To compile this driver as a module, choose M here: the module will be called skel. endif # COMEDI_MISC_DRIVERS menuconfig COMEDI_ISA_DRIVERS tristate "Comedi ISA and PC/104 drivers" depends on COMEDI && ISA default N ---help--- Enable comedi ISA and PC/104 drivers to be built Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about ISA and PC/104 comedi drivers. if COMEDI_ISA_DRIVERS && ISA config COMEDI_ACL7225B tristate "ADlink NuDAQ ACL-7225b and compatibles support" default N ---help--- Enable support for ADlink NuDAQ ACL-7225b and compatibles, ADlink ACL-7225b (acl7225b), ICP P16R16DIO (p16r16dio) To compile this driver as a module, choose M here: the module will be called acl7225b. config COMEDI_PCL711 tristate "Advantech PCL-711/711b and ADlink ACL-8112 ISA card support" default N ---help--- Enable support for Advantech PCL-711 and 711b, ADlink ACL-8112 To compile this driver as a module, choose M here: the module will be called pcl711. config COMEDI_PCL724 tristate "Advantech PCL-722/724/731 and ADlink ACL-7122/7124/PET-48DIO" select COMEDI_8255 default N ---help--- Enable support for Advantech PCL-724, PCL-722, PCL-731 and ADlink ACL-7122, ACL-7124, PET-48DIO ISA cards To compile this driver as a module, choose M here: the module will be called pcl724. config COMEDI_PCL725 tristate "Advantech PCL-725 and compatible ISA card support" default N ---help--- Enable support for Advantech PCL-725 and compatible ISA cards. To compile this driver as a module, choose M here: the module will be called pcl725. config COMEDI_PCL726 tristate "Advantech PCL-726 and compatible ISA card support" default N ---help--- Enable support for Advantech PCL-726 and compatible ISA cards. To compile this driver as a module, choose M here: the module will be called pcl726. config COMEDI_PCL730 tristate "Advantech PCL-730 and ADlink ACL-7130 ISA card support" default N ---help--- Enable support for Advantech PCL-730, ICP ISO-730 and ADlink ACL-7130 ISA cards To compile this driver as a module, choose M here: the module will be called pcl730. config COMEDI_PCL812 tristate "Advantech PCL-812/813 and ADlink ACL-8112/8113/8113/8216" default N ---help--- Enable support for Advantech PCL-812/PG, PCL-813/B, ADLink ACL-8112DG/HG/PG, ACL-8113, ACL-8216, ICP DAS A-821PGH/PGL/PGL-NDA, A-822PGH/PGL, A-823PGH/PGL, A-826PG and ICP DAS ISO-813 ISA cards To compile this driver as a module, choose M here: the module will be called pcl812. config COMEDI_PCL816 tristate "Advantech PCL-814 and PCL-816 ISA card support" default N ---help--- Enable support for Advantech PCL-814 and PCL-816 ISA cards To compile this driver as a module, choose M here: the module will be called pcl816. config COMEDI_PCL818 tristate "Advantech PCL-718 and PCL-818 ISA card support" default N ---help--- Enable support for Advantech PCL-818 ISA cards PCL-818L, PCL-818H, PCL-818HD, PCL-818HG, PCL-818 and PCL-718 To compile this driver as a module, choose M here: the module will be called pcl818. config COMEDI_PCM3724 tristate "Advantech PCM-3724 PC/104 card support" select COMEDI_8255 default N ---help--- Enable support for Advantech PCM-3724 PC/104 cards. To compile this driver as a module, choose M here: the module will be called pcm3724. config COMEDI_PCM3730 tristate "Advantech PCM-3730 and clone PC/104 board support" default N ---help--- Enable support for Advantech PCM-3730 and clone PC/104 boards To compile this driver as a module, choose M here: the module will be called pcm3730. config COMEDI_RTI800 tristate "Analog Devices RTI-800/815 ISA card support" default N ---help--- Enable support for Analog Devices RTI-800/815 ISA cards To compile this driver as a module, choose M here: the module will be called rti800. config COMEDI_RTI802 tristate "Analog Devices RTI-802 ISA card support" default N ---help--- Enable support for Analog Devices RTI-802 ISA cards To compile this driver as a module, choose M here: the module will be called rti802. config COMEDI_DAS16M1 tristate "MeasurementComputing CIO-DAS16/M1DAS-16 ISA card support" select COMEDI_8255 select COMEDI_FC default N ---help--- Enable support for Measurement Computing CIO-DAS16/M1 ISA cards. To compile this driver as a module, choose M here: the module will be called das16m1. config COMEDI_DAS16 tristate "DAS-16 compatible ISA and PC/104 card support" select COMEDI_8255 select COMEDI_FC default N ---help--- Enable support for Keithley Metrabyte/ComputerBoards DAS16 and compatible ISA and PC/104 cards: Keithley Metrabyte DAS-16, DAS-16G, DAS-16F, DAS-1201, DAS-1202, DAS-1401, DAS-1402, DAS-1601, DAS-1602 and ComputerBoards/MeasurementComputing PC104-DAS16/JR/, PC104-DAS16JR/16, CIO-DAS16JR/16, CIO-DAS16/JR, CIO-DAS1401/12, CIO-DAS1402/12, CIO-DAS1402/16, CIO-DAS1601/12, CIO-DAS1602/12, CIO-DAS1602/16, CIO-DAS16/330 To compile this driver as a module, choose M here: the module will be called das16. config COMEDI_DAS800 tristate "DAS800 and compatible ISA card support" select COMEDI_FC default N ---help--- Enable support for Keithley Metrabyte DAS800 and compatible ISA cards Keithley Metrabyte DAS-800, DAS-801, DAS-802 Measurement Computing CIO-DAS800, CIO-DAS801, CIO-DAS802 and CIO-DAS802/16 To compile this driver as a module, choose M here: the module will be called das800. config COMEDI_DAS1800 tristate "DAS1800 and compatible ISA card support" select COMEDI_FC default N ---help--- Enable support for DAS1800 and compatible ISA cards Keithley Metrabyte DAS-1701ST, DAS-1701ST-DA, DAS-1701/AO, DAS-1702ST, DAS-1702ST-DA, DAS-1702HR, DAS-1702HR-DA, DAS-1702/AO, DAS-1801ST, DAS-1801ST-DA, DAS-1801HC, DAS-1801AO, DAS-1802ST, DAS-1802ST-DA, DAS-1802HR, DAS-1802HR-DA, DAS-1802HC and DAS-1802AO To compile this driver as a module, choose M here: the module will be called das1800. config COMEDI_DAS6402 tristate "DAS6402 and compatible ISA card support" default N ---help--- Enable support for DAS6402 and compatible ISA cards Computerboards, Keithley Metrabyte DAS6402 and compatibles To compile this driver as a module, choose M here: the module will be called das6402. config COMEDI_DT2801 tristate "Data Translation DT2801 ISA card support" default N ---help--- Enable support for Data Translation DT2801 ISA cards To compile this driver as a module, choose M here: the module will be called dt2801. config COMEDI_DT2811 tristate "Data Translation DT2811 ISA card support" default N ---help--- Enable support for Data Translation DT2811 ISA cards To compile this driver as a module, choose M here: the module will be called dt2811. config COMEDI_DT2814 tristate "Data Translation DT2814 ISA card support" default N ---help--- Enable support for Data Translation DT2814 ISA cards To compile this driver as a module, choose M here: the module will be called dt2814. config COMEDI_DT2815 tristate "Data Translation DT2815 ISA card support" default N ---help--- Enable support for Data Translation DT2815 ISA cards To compile this driver as a module, choose M here: the module will be called dt2815. config COMEDI_DT2817 tristate "Data Translation DT2817 ISA card support" default N ---help--- Enable support for Data Translation DT2817 ISA cards To compile this driver as a module, choose M here: the module will be called dt2817. config COMEDI_DT282X tristate "Data Translation DT2821 series and DT-EZ ISA card support" select COMEDI_FC default N ---help--- Enable support for Data Translation DT2821 series including DT-EZ DT2821, DT2821-F-16SE, DT2821-F-8DI, DT2821-G-16SE, DT2821-G-8DI, DT2823 (dt2823), DT2824-PGH, DT2824-PGL, DT2825, DT2827, DT2828, DT21-EZ, DT23-EZ, DT24-EZ and DT24-EZ-PGL To compile this driver as a module, choose M here: the module will be called dt282x. config COMEDI_DMM32AT tristate "Diamond Systems MM-32-AT PC/104 board support" default N ---help--- Enable support for Diamond Systems MM-32-AT PC/104 boards To compile this driver as a module, choose M here: the module will be called dmm32at. config COMEDI_FL512 tristate "FL512 ISA card support" default N ---help--- Enable support for FL512 ISA card To compile this driver as a module, choose M here: the module will be called fl512. config COMEDI_AIO_AIO12_8 tristate "I/O Products PC/104 AIO12-8 Analog I/O Board support" select COMEDI_8255 default N ---help--- Enable support for I/O Products PC/104 AIO12-8 Analog I/O Board To compile this driver as a module, choose M here: the module will be called aio_aio12_8. config COMEDI_AIO_IIRO_16 tristate "I/O Products PC/104 IIRO16 Board support" default N ---help--- Enable support for I/O Products PC/104 IIRO16 Relay And Isolated Input Board To compile this driver as a module, choose M here: the module will be called aio_iiro_16. config COMEDI_C6XDIGIO tristate "Mechatronic Systems Inc. C6x_DIGIO DSP daughter card support" default N ---help--- Enable support for Mechatronic Systems Inc. C6x_DIGIO DSP daughter card To compile this driver as a module, choose M here: the module will be called c6xdigio. config COMEDI_MPC624 tristate "Micro/sys MPC-624 PC/104 board support" default N ---help--- Enable support for Micro/sys MPC-624 PC/104 board To compile this driver as a module, choose M here: the module will be called mpc624. config COMEDI_ADQ12B tristate "MicroAxial ADQ12-B data acquisition and control card support" default N ---help--- Enable MicroAxial ADQ12-B daq and control card support. To compile this driver as a module, choose M here: the module will be called adq12b. config COMEDI_NI_AT_A2150 tristate "NI AT-A2150 ISA card support" depends on COMEDI_NI_COMMON default N ---help--- Enable support for National Instruments AT-A2150 cards To compile this driver as a module, choose M here: the module will be called ni_at_a2150. config COMEDI_NI_AT_AO tristate "NI AT-AO-6/10 EISA card support" depends on COMEDI_NI_COMMON default N ---help--- Enable support for National Instruments AT-AO-6/10 cards To compile this driver as a module, choose M here: the module will be called ni_at_ao. config COMEDI_NI_ATMIO tristate "NI AT-MIO E series ISA-PNP card support" depends on ISAPNP && COMEDI_NI_TIO && COMEDI_NI_COMMON select COMEDI_8255 default N ---help--- Enable support for National Instruments AT-MIO E series cards National Instruments AT-MIO-16E-1 (ni_atmio), AT-MIO-16E-2, AT-MIO-16E-10, AT-MIO-16DE-10, AT-MIO-64E-3, AT-MIO-16XE-50, AT-MIO-16XE-10, AT-AI-16XE-10 To compile this driver as a module, choose M here: the module will be called ni_atmio. config COMEDI_NI_ATMIO16D tristate "NI AT-MIO16/AT-MIO16D series ISA-PNP card support" depends on ISAPNP && COMEDI_NI_COMMON select COMEDI_8255 default N ---help--- Enable support for National Instruments AT-MIO16/AT-MIO16D cards. To compile this driver as a module, choose M here: the module will be called ni_atmio16d. config COMEDI_PCMAD tristate "Winsystems PCM-A/D12 and PCM-A/D16 PC/104 board support" default N ---help--- Enable support for Winsystems PCM-A/D12 and PCM-A/D16 PC/104 boards. To compile this driver as a module, choose M here: the module will be called pcmad. config COMEDI_PCMDA12 tristate "Winsystems PCM-D/A-12 8-channel AO PC/104 board support" default N ---help--- Enable support for Winsystems PCM-D/A-12 8-channel AO PC/104 boards. Note that the board is not ISA-PNP capable and thus needs the I/O port comedi_config parameter. To compile this driver as a module, choose M here: the module will be called pcmda12. config COMEDI_PCMMIO tristate "Winsystems PCM-MIO PC/104 board support" default N ---help--- Enable support for Winsystems PCM-MIO multifunction PC/104 boards. To compile this driver as a module, choose M here: the module will be called pcmmio. config COMEDI_PCMUIO tristate "Winsystems PCM-UIO48A and PCM-UIO96A PC/104 board support" default N ---help--- Enable support for PCM-UIO48A and PCM-UIO96A PC/104 boards. To compile this driver as a module, choose M here: the module will be called pcmuio. config COMEDI_MULTIQ3 tristate "Quanser Consulting MultiQ-3 ISA card support" default N ---help--- Enable support for Quanser Consulting MultiQ-3 ISA cards To compile this driver as a module, choose M here: the module will be called multiq3. config COMEDI_POC tristate "Generic driver for very simple devices" default N ---help--- Enable generic support for very simple / POC (Piece of Crap) boards, Keithley Metrabyte DAC-02 (dac02), Advantech PCL-733 (pcl733) and PCL-734 (pcl734) To compile this driver as a module, choose M here: the module will be called poc. endif # COMEDI_ISA_DRIVERS menuconfig COMEDI_PCI_DRIVERS tristate "Comedi PCI drivers" depends on COMEDI && PCI default N ---help--- Enable comedi PCI drivers to be built Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about PCI comedi drivers. if COMEDI_PCI_DRIVERS && PCI config COMEDI_ADDI_APCI_035 tristate "ADDI-DATA APCI_035 support" default N ---help--- Enable support for ADDI-DATA APCI_035 cards To compile this driver as a module, choose M here: the module will be called addi_apci_035. config COMEDI_ADDI_APCI_1032 tristate "ADDI-DATA APCI_1032 support" default N ---help--- Enable support for ADDI-DATA APCI_1032 cards To compile this driver as a module, choose M here: the module will be called addi_apci_1032. config COMEDI_ADDI_APCI_1500 tristate "ADDI-DATA APCI_1500 support" default N ---help--- Enable support for ADDI-DATA APCI_1500 cards To compile this driver as a module, choose M here: the module will be called addi_apci_1500. config COMEDI_ADDI_APCI_1516 tristate "ADDI-DATA APCI_1516 support" default N ---help--- Enable support for ADDI-DATA APCI_1516 cards To compile this driver as a module, choose M here: the module will be called addi_apci_1516. config COMEDI_ADDI_APCI_1564 tristate "ADDI-DATA APCI_1564 support" default N ---help--- Enable support for ADDI-DATA APCI_1564 cards To compile this driver as a module, choose M here: the module will be called addi_apci_1564. config COMEDI_ADDI_APCI_16XX tristate "ADDI-DATA APCI_16xx support" default N ---help--- Enable support for ADDI-DATA APCI_16xx cards To compile this driver as a module, choose M here: the module will be called addi_apci_16xx. config COMEDI_ADDI_APCI_2016 tristate "ADDI-DATA APCI_2016 support" default N ---help--- Enable support for ADDI-DATA APCI_2016 cards To compile this driver as a module, choose M here: the module will be called addi_apci_2016. config COMEDI_ADDI_APCI_2032 tristate "ADDI-DATA APCI_2032 support" default N ---help--- Enable support for ADDI-DATA APCI_2032 cards To compile this driver as a module, choose M here: the module will be called addi_apci_2032. config COMEDI_ADDI_APCI_2200 tristate "ADDI-DATA APCI_2200 support" default N ---help--- Enable support for ADDI-DATA APCI_2200 cards To compile this driver as a module, choose M here: the module will be called addi_apci_2200. config COMEDI_ADDI_APCI_3001 tristate "ADDI-DATA APCI_3001 support" select COMEDI_FC default N ---help--- Enable support for ADDI-DATA APCI_3001 cards To compile this driver as a module, choose M here: the module will be called addi_apci_3001. config COMEDI_ADDI_APCI_3120 tristate "ADDI-DATA APCI_3520 support" select COMEDI_FC default N ---help--- Enable support for ADDI-DATA APCI_3520 cards To compile this driver as a module, choose M here: the module will be called addi_apci_3120. config COMEDI_ADDI_APCI_3501 tristate "ADDI-DATA APCI_3501 support" default N ---help--- Enable support for ADDI-DATA APCI_3501 cards To compile this driver as a module, choose M here: the module will be called addi_apci_3501. config COMEDI_ADDI_APCI_3XXX tristate "ADDI-DATA APCI_3xxx support" default N ---help--- Enable support for ADDI-DATA APCI_3xxx cards To compile this driver as a module, choose M here: the module will be called addi_apci_3xxx. config COMEDI_ADL_PCI6208 tristate "ADLink PCI-6208A support" select COMEDI_8255 default N ---help--- Enable support for ADLink PCI-6208A cards To compile this driver as a module, choose M here: the module will be called adl_pci6208. config COMEDI_ADL_PCI7230 tristate "ADLink PCI-7230 digital io board support" default N ---help--- Enable support for ADlink PCI-7230 digital io board support To compile this driver as a module, choose M here: the module will be called adl_pci7230. config COMEDI_ADL_PCI7296 tristate "ADLink PCI-7296 96 ch. digital io board support" default N ---help--- Enable support for ADlink PCI-7296 96 ch. digital io board support To compile this driver as a module, choose M here: the module will be called adl_pci7296. config COMEDI_ADL_PCI7432 tristate "ADLink PCI-7432 64 ch. isolated digital io board support" default N ---help--- Enable support for ADlink PCI-7432 64 ch. isolated digital io board To compile this driver as a module, choose M here: the module will be called adl_pci7432. config COMEDI_ADL_PCI8164 tristate "ADLink PCI-8164 4 Axes Motion Control board support" default N ---help--- Enable support for ADlink PCI-8164 4 Axes Motion Control board To compile this driver as a module, choose M here: the module will be called adl_pci8164. config COMEDI_ADL_PCI9111 tristate "ADLink PCI-9111HR support" select COMEDI_FC default N ---help--- Enable support for ADlink PCI9111 cards To compile this driver as a module, choose M here: the module will be called adl_pci9111. config COMEDI_ADL_PCI9118 tristate "ADLink PCI-9118DG, PCI-9118HG, PCI-9118HR support" select COMEDI_FC default N ---help--- Enable support for ADlink PCI-9118DG, PCI-9118HG, PCI-9118HR cards To compile this driver as a module, choose M here: the module will be called adl_pci9118. config COMEDI_ADV_PCI1710 tristate "Advantech PCI-171x, PCI-1720 and PCI-1731 support" default N ---help--- Enable support for Advantech PCI-1710, PCI-1710HG, PCI-1711, PCI-1713, PCI-1720 and PCI-1731 To compile this driver as a module, choose M here: the module will be called adv_pci1710. config COMEDI_ADV_PCI1723 tristate "Advantech PCI-1723 support" default N ---help--- Enable support for Advantech PCI-1723 cards To compile this driver as a module, choose M here: the module will be called adv_pci1723. config COMEDI_ADV_PCI_DIO tristate "Advantech PCI DIO card support" select COMEDI_8255 default N ---help--- Enable support for Advantech PCI DIO cards PCI-1730, PCI-1733, PCI-1734, PCI-1736UP, PCI-1750, PCI-1751, PCI-1752, PCI-1753/E, PCI-1754, PCI-1756 and PCI-1762 To compile this driver as a module, choose M here: the module will be called adv_pci_dio. config COMEDI_AMPLC_DIO200 tristate "Amplicon PC272E and PCI272 DIO board support" select COMEDI_8255 default N ---help--- Enable support for Amplicon PC272E and PCI272 DIO boards To compile this driver as a module, choose M here: the module will be called amplc_dio200. config COMEDI_AMPLC_PC236 tristate "Amplicon PC36AT and PCI236 DIO board support" select COMEDI_8255 default N ---help--- Enable support for Amplicon PC36AT and PCI236 DIO boards To compile this driver as a module, choose M here: the module will be called amplc_pc236. config COMEDI_AMPLC_PC263 tristate "Amplicon PC263 and PCI263 relay board support" default N ---help--- Enable support for Amplicon PC263 and PCI263 relay boards To compile this driver as a module, choose M here: the module will be called amplc_pc263. config COMEDI_AMPLC_PCI224 tristate "Amplicon PCI224 and PCI234 support" select COMEDI_FC default N ---help--- Enable support for Amplicon PCI224 and PCI234 AO boards To compile this driver as a module, choose M here: the module will be called amplc_pci224. config COMEDI_AMPLC_PCI230 tristate "Amplicon PCI230 and PCI260 support" select COMEDI_8255 default N ---help--- Enable support for Amplicon PCI230 and PCI260 Multifunction I/O boards To compile this driver as a module, choose M here: the module will be called amplc_pci230. config COMEDI_CONTEC_PCI_DIO tristate "Contec PIO1616L digital I/O board support" default N ---help--- Enable support for the Contec PIO1616L digital I/O board To compile this driver as a module, choose M here: the module will be called contec_pci_dio. config COMEDI_DT3000 tristate "Data Translation DT3000 series support" default N ---help--- Enable support for Data Translation DT3000 series DT3001, DT3001-PGL, DT3002, DT3003, DT3003-PGL, DT3004, DT3005 and DT3004-200 To compile this driver as a module, choose M here: the module will be called dt3000. config COMEDI_UNIOXX5 tristate "Fastwel UNIOxx-5 analog and digital io board support" default N ---help--- Enable support for Fastwel UNIOxx-5 (analog and digital i/o) boards To compile this driver as a module, choose M here: the module will be called unioxx5. config COMEDI_GSC_HPDI tristate "General Standards PCI-HPDI32 / PMC-HPDI32 support" select COMEDI_FC default N ---help--- Enable support for General Standards Corporation high speed parallel digital interface rs485 boards PCI-HPDI32 and PMC-HPDI32. Only receive mode works, transmit not supported. To compile this driver as a module, choose M here: the module will be called gsc_hpdi. config COMEDI_ICP_MULTI tristate "Inova ICP_MULTI support" default N ---help--- Enable support for Inova ICP_MULTI card To compile this driver as a module, choose M here: the module will be called icp_multi. config COMEDI_II_PCI20KC tristate "Intelligent Instruments PCI-20001C carrier support" default N ---help--- Enable support for Intelligent Instruments PCI-20001C carrier PCI-20001, PCI-20006 and PCI-20341 To compile this driver as a module, choose M here: the module will be called ii_pci20kc. config COMEDI_DAQBOARD2000 tristate "IOtech DAQboard/2000 support" select COMEDI_8255 default N ---help--- Enable support for the IOtech DAQboard/2000 To compile this driver as a module, choose M here: the module will be called daqboard2000. config COMEDI_JR3_PCI tristate "JR3/PCI force sensor board support" default N ---help--- Enable support for JR3/PCI force sensor boards To compile this driver as a module, choose M here: the module will be called jr3_pci. config COMEDI_KE_COUNTER tristate "Kolter-Electronic PCI Counter 1 card support" default N ---help--- Enable support for Kolter-Electronic PCI Counter 1 cards To compile this driver as a module, choose M here: the module will be called ke_counter. config COMEDI_CB_PCIDAS64 tristate "MeasurementComputing PCI-DAS 64xx, 60xx, and 4020 support" select COMEDI_8255 select COMEDI_FC default N ---help--- Enable support for ComputerBoards/MeasurementComputing PCI-DAS 64xx, 60xx, and 4020 series with the PLX 9080 PCI controller To compile this driver as a module, choose M here: the module will be called cb_pcidas64. config COMEDI_CB_PCIDAS tristate "MeasurementComputing PCI-DAS support" select COMEDI_8255 select COMEDI_FC default N ---help--- Enable support for ComputerBoards/MeasurementComputing PCI-DAS with AMCC S5933 PCIcontroller: PCI-DAS1602/16, PCI-DAS1602/16jr, PCI-DAS1602/12, PCI-DAS1200, PCI-DAS1200jr, PCI-DAS1000, PCI-DAS1001 and PCI_DAS1002. To compile this driver as a module, choose M here: the module will be called cb_pcidas. config COMEDI_CB_PCIDDA tristate "MeasurementComputing PCI-DDA series support" select COMEDI_8255 default N ---help--- Enable support for ComputerBoards/MeasurementComputing PCI-DDA series: PCI-DDA08/12, PCI-DDA04/12, PCI-DDA02/12, PCI-DDA08/16, PCI-DDA04/16 and PCI-DDA02/16 To compile this driver as a module, choose M here: the module will be called cb_pcidda. config COMEDI_CB_PCIDIO tristate "MeasurementComputing PCI-DIO series support" select COMEDI_8255 default N ---help--- Enable support for ComputerBoards/MeasurementComputing PCI-DIO series PCI-DIO24, PCI-DIO24H and PCI-DIO48H To compile this driver as a module, choose M here: the module will be called cb_pcidio. config COMEDI_CB_PCIMDAS tristate "MeasurementComputing PCIM-DAS1602/16 support" select COMEDI_8255 default N ---help--- Enable support for ComputerBoards/MeasurementComputing PCI Migration series PCIM-DAS1602/16 To compile this driver as a module, choose M here: the module will be called cb_pcimdas. config COMEDI_CB_PCIMDDA tristate "MeasurementComputing PCIM-DDA06-16 support" select COMEDI_8255 default N ---help--- Enable support for ComputerBoards/MeasurementComputing PCIM-DDA06-16 To compile this driver as a module, choose M here: the module will be called cb_pcimdda. config COMEDI_ME4000 tristate "Meilhaus ME-4000 support" default N ---help--- Enable support for Meilhaus PCI data acquisition cards ME-4650, ME-4670i, ME-4680, ME-4680i and ME-4680is To compile this driver as a module, choose M here: the module will be called me4000. config COMEDI_ME_DAQ tristate "Meilhaus ME-2000i, ME-2600i, ME-3000vm1 support" default N ---help--- Enable support for Meilhaus PCI data acquisition cards ME-2000i, ME-2600i and ME-3000vm1 To compile this driver as a module, choose M here: the module will be called me_daq. config COMEDI_NI_6527 tristate "NI 6527 support" depends on COMEDI_MITE default N ---help--- Enable support for the National Instruments 6527 PCI card To compile this driver as a module, choose M here: the module will be called ni_6527. config COMEDI_NI_65XX tristate "NI 65xx static dio PCI card support" depends on COMEDI_MITE default N ---help--- Enable support for National Instruments 65xx static dio boards. Supported devices: National Instruments PCI-6509 (ni_65xx), PXI-6509, PCI-6510, PCI-6511, PXI-6511, PCI-6512, PXI-6512, PCI-6513, PXI-6513, PCI-6514, PXI-6514, PCI-6515, PXI-6515, PCI-6516, PCI-6517, PCI-6518, PCI-6519, PCI-6520, PCI-6521, PXI-6521, PCI-6528, PXI-6528 To compile this driver as a module, choose M here: the module will be called ni_65xx. config COMEDI_NI_660X tristate "NI 660x counter/timer PCI card support" depends on COMEDI_NI_TIO && COMEDI_NI_COMMON default N ---help--- Enable support for National Instruments PCI-6601 (ni_660x), PCI-6602, PXI-6602 and PXI-6608. To compile this driver as a module, choose M here: the module will be called ni_660x. config COMEDI_NI_670X tristate "NI 670x PCI card support" depends on COMEDI_MITE default N ---help--- Enable support for National Instruments PCI-6703 and PCI-6704 To compile this driver as a module, choose M here: the module will be called ni_670x. config COMEDI_NI_PCIDIO tristate "NI PCI-DIO32HS, PCI-DIO96, PCI-6533, PCI-6503 support" depends on COMEDI_MITE select COMEDI_8255 default N ---help--- Enable support for National Instruments PCI-DIO-32HS, PXI-6533, PCI-DIO-96, PCI-DIO-96B, PXI-6508, PCI-6503, PCI-6503B, PCI-6503X, PXI-6503, PCI-6533 and PCI-6534 The DIO-96 appears as four 8255 subdevices. See the 8255 driver notes for details. To compile this driver as a module, choose M here: the module will be called ni_pcidio. config COMEDI_NI_PCIMIO tristate "NI PCI-MIO-E series and M series support" depends on COMEDI_NI_TIO && COMEDI_NI_COMMON select COMEDI_8255 select COMEDI_FC default N ---help--- Enable support for National Instruments PCI-MIO-E series and M series (all boards): PCI-MIO-16XE-10, PXI-6030E, PCI-MIO-16E-1, PCI-MIO-16E-4, PCI-6014, PCI-6040E, PXI-6040E, PCI-6030E, PCI-6031E, PCI-6032E, PCI-6033E, PCI-6071E, PCI-6023E, PCI-6024E, PCI-6025E, PXI-6025E, PCI-6034E, PCI-6035E, PCI-6052E, PCI-6110, PCI-6111, PCI-6220, PCI-6221, PCI-6224, PXI-6224, PCI-6225, PXI-6225, PCI-6229, PCI-6250, PCI-6251, PCIe-6251, PCI-6254, PCI-6259, PCIe-6259, PCI-6280, PCI-6281, PXI-6281, PCI-6284, PCI-6289, PCI-6711, PXI-6711, PCI-6713, PXI-6713, PXI-6071E, PCI-6070E, PXI-6070E, PXI-6052E, PCI-6036E, PCI-6731, PCI-6733, PXI-6733, PCI-6143, PXI-6143 To compile this driver as a module, choose M here: the module will be called ni_pcimio. config COMEDI_RTD520 tristate "Real Time Devices PCI4520/DM7520 support" select COMEDI_8255 default N ---help--- Enable support for Real Time Devices PCI4520/DM7520 To compile this driver as a module, choose M here: the module will be called rtd520. config COMEDI_S526 tristate "Sensoray s526 support" default N ---help--- Enable support for Sensoray s526 To compile this driver as a module, choose M here: the module will be called s526. config COMEDI_S626 tristate "Sensoray 626 support" select COMEDI_FC default N ---help--- Enable support for Sensoray 626 To compile this driver as a module, choose M here: the module will be called s626. config COMEDI_SSV_DNP tristate "SSV Embedded Systems DIL/Net-PC support" default N ---help--- Enable support for SSV Embedded Systems DIL/Net-PC To compile this driver as a module, choose M here: the module will be called ssv_dnp. endif # COMEDI_PCI_DRIVERS menuconfig COMEDI_PCMCIA_DRIVERS tristate "Comedi PCMCIA drivers" depends on COMEDI && (PCMCIA || PCCARD) default N ---help--- Enable comedi PCMCIA and PCCARD drivers to be built Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about PCMCIA comedi drivers. if COMEDI_PCMCIA_DRIVERS && PCMCIA config COMEDI_CB_DAS16_CS tristate "CB DAS16 series PCMCIA support" default N ---help--- Enable support for the ComputerBoards/MeasurementComputing PCMCIA cards DAS16/16, PCM-DAS16D/12 and PCM-DAS16s/16 To compile this driver as a module, choose M here: the module will be called cb_das16_cs. config COMEDI_DAS08_CS tristate "CB DAS08 PCMCIA support" select COMEDI_DAS08 default N ---help--- Enable support for the ComputerBoards/MeasurementComputing DAS-08 PCMCIA card To compile this driver as a module, choose M here: the module will be called das08_cs. config COMEDI_NI_DAQ_700_CS tristate "NI DAQCard-700 PCMCIA support" depends on COMEDI_NI_COMMON default N ---help--- Enable support for the National Instruments PCMCIA DAQCard-700 DIO To compile this driver as a module, choose M here: the module will be called ni_daq_700. config COMEDI_NI_DAQ_DIO24_CS tristate "NI DAQ-Card DIO-24 PCMCIA support" depends on COMEDI_NI_COMMON select COMEDI_8255 default N ---help--- Enable support for the National Instruments PCMCIA DAQ-Card DIO-24 To compile this driver as a module, choose M here: the module will be called ni_daq_dio24. config COMEDI_NI_LABPC_CS tristate "NI DAQCard-1200 PCMCIA support" depends on COMEDI_NI_LABPC default N ---help--- Enable support for the National Instruments PCMCIA DAQCard-1200 To compile this driver as a module, choose M here: the module will be called ni_labpc_cs. config COMEDI_NI_MIO_CS tristate "NI DAQCard E series PCMCIA support" depends on COMEDI_NI_TIO && COMEDI_NI_COMMON select COMEDI_8255 select COMEDI_FC default N ---help--- Enable support for the National Instruments PCMCIA DAQCard E series DAQCard-ai-16xe-50, DAQCard-ai-16e-4, DAQCard-6062E, DAQCard-6024E and DAQCard-6036E To compile this driver as a module, choose M here: the module will be called ni_mio_cs. config COMEDI_QUATECH_DAQP_CS tristate "Quatech DAQP PCMCIA data capture card support" default N ---help--- Enable support for the Quatech DAQP PCMCIA data capture cards DAQP-208 and DAQP-308 To compile this driver as a module, choose M here: the module will be called quatech_daqp_cs. endif # COMEDI_PCMCIA_DRIVERS menuconfig COMEDI_USB_DRIVERS tristate "Comedi USB drivers" depends on COMEDI && USB default N ---help--- Enable comedi USB drivers to be built Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about USB comedi drivers. if COMEDI_USB_DRIVERS && USB config COMEDI_DT9812 tristate "DataTranslation DT9812 USB module support" default N ---help--- Enable support for the Data Translation DT9812 USB module To compile this driver as a module, choose M here: the module will be called dt9812. config COMEDI_USBDUX tristate "ITL USBDUX support" default N ---help--- Enable support for the University of Stirling USB DAQ and INCITE Technology Limited driver To compile this driver as a module, choose M here: the module will be called usbdux. config COMEDI_USBDUXFAST tristate "ITL USB-DUXfast support" select COMEDI_FC default N ---help--- Enable support for the University of Stirling USB-DUXfast and INCITE Technology Limited driver To compile this driver as a module, choose M here: the module will be called usbduxfast. config COMEDI_VMK80XX tristate "Velleman VM110/VM140 USB Board support" default N ---help--- Build the Velleman USB Board Low-Level Driver supporting the K8055/K8061 aka VM110/VM140 devices To compile this driver as a module, choose M here: the module will be called vmk80xx. endif # COMEDI_USB_DRIVERS menuconfig COMEDI_NI_COMMON tristate "Comedi National Instruments card support" depends on COMEDI default N ---help--- Enable comedi support for National Instruments cards. Modules in this section are used by many comedi NI drivers. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about National Instruments cards. if COMEDI_NI_COMMON config COMEDI_MITE tristate "NI Mite PCI interface chip support" depends on PCI default N ---help--- Enable support for National Instruments Mite PCI interface chip To compile this driver as a module, choose M here: the module will be called mite. config COMEDI_NI_TIO tristate "NI general purpose counter support" depends on COMEDI_MITE default N ---help--- Enable support for National Instruments general purpose counters. This module is not used directly by end-users. Rather, it is used by other drivers (for example ni_660x and ni_pcimio) to provide support for NI's general purpose counters. To compile this driver as a modules, choose M here: two modules will be build: ni_tio and ni_tiocmd. config COMEDI_NI_LABPC tristate "NI Lab-PC and compatibles ISA and PCI support" depends on COMEDI_MITE select COMEDI_8255 select COMEDI_FC default N ---help--- Enable support for National Instruments Lab-PC and compatibles Lab-PC-1200, Lab-PC-1200AI, Lab-PC+ and PCI-1200. Kernel-level ISA plug-and-play support for the lab-pc-1200 boards has not yet been added to the driver. To compile this driver as a module, choose M here: the module will be called ni_labpc. endif # COMEDI_NI_COMMON config COMEDI_8255 tristate "Generic 8255 support" depends on COMEDI default N ---help--- Enable generic 8255 support. You should enable compilation this driver if you plan to use a board that has an 8255 chip. For multifunction boards, the main driver will configure the 8255 subdevice automatically. Note that most PCI 8255 boards do NOT work with this driver, and need a separate driver as a wrapper. To compile this driver as a module, choose M here: the module will be called 8255. config COMEDI_DAS08 tristate "DAS-08 compatible support" depends on COMEDI select COMEDI_8255 default N ---help--- Enable support for DAS08 and compatible ISA, PC/104 and PCI cards. Note that PCMCIA DAS08 cards are not directly supported by this driver, and need a separate driver as a wrapper. To compile this driver as a module, choose M here: the module will be called das08. config COMEDI_FC tristate "Comedi shared functions for low-level driver support" depends on COMEDI default N ---help--- Enable support for shared functions for low-level drivers. This module is not used directly by end-users. Rather, it is used by many other comedi drivers. To compile this driver as a module, choose M here: the module will be called comedi_fc. config WLAGS49_H25 tristate "Linksys HERMES II.5 WCF54G_Wireless-G_CompactFlash_Card" depends on WLAN && PCMCIA select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV ---help--- Driver for wireless cards using Agere's HERMES II.5 chipset which are identified with Manufacture ID: 0156,0004 The software is a modified version of wl_lkm_722_abg.tar.gz from the Agere Systems website, addapted for Ubuntu 9.04. config R8712U tristate "RealTek RTL8712U (RTL8192SU) Wireless LAN NIC driver" depends on WLAN && USB select WIRELESS_EXT select WEXT_PRIV select FW_LOADER default N ---help--- This option adds the Realtek RTL8712 USB device such as the D-Link DWA-130. If built as a module, it will be called r8712u. config R8712_AP bool "Realtek RTL8712U AP code" depends on R8712U default N ---help--- This option allows the Realtek RTL8712 USB device to be an Access Point. config ET131X tristate "Agere ET-1310 Gigabit Ethernet support" depends on NETDEV_1000 && PCI default n ---help--- This driver supports Agere ET-1310 ethernet adapters. To compile this driver as a module, choose M here. The module will be called et131x. config ET131X_DEBUG bool "Enable et131x debugging" depends on ET131X default n ---help--- Say Y for detailed debug information. If in doubt, say N. config RTS_PSTOR tristate "RealTek PCI-E Card Reader support" depends on PCI && SCSI help Say Y here to include driver code to support the Realtek PCI-E card readers. If this driver is compiled as a module, it will be named rts_pstor. config RTS_PSTOR_DEBUG bool "Realtek PCI-E Card Reader verbose debug" depends on RTS_PSTOR help Say Y here in order to have the rts_pstor code generate verbose debugging messages. comment "Altera FPGA firmware download module" config ALTERA_STAPL tristate "Altera FPGA firmware download module" depends on I2C default n help An Altera FPGA module. Say Y when you want to support this tool. config MSM_STAGING tristate "MSM Frame Buffer Support" depends on FB && ARCH_MSM && !FB_MSM select FB_BACKLIGHT if FB_MSM_BACKLIGHT select NEW_LEDS select LEDS_CLASS select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- Support for MSM Framebuffer. if MSM_STAGING config FB_MSM_LCDC_HW bool default n choice prompt "MDP HW version" default FB_MSM_MDP31 config FB_MSM_MDP31 select FB_MSM_LCDC_HW bool "MDP HW ver3.1" ---help--- Support for MSM MDP HW revision 3.1 Say Y here if this is msm8x50 variant platform. endchoice config FB_MSM_LCDC bool default n config FB_MSM_TVOUT bool default n config FB_MSM_LCDC_PANEL bool select FB_MSM_LCDC default n config FB_MSM_LCDC_PRISM_WVGA bool select FB_MSM_LCDC_PANEL default n config FB_MSM_LCDC_ST15_WXGA bool select FB_MSM_LCDC_PANEL default n choice prompt "LCD Panel" default FB_MSM_LCDC_ST15_PANEL config FB_MSM_LCDC_PRISM_WVGA_PANEL depends on FB_MSM_LCDC_HW bool "LCDC Prism WVGA Panel" select FB_MSM_LCDC_PRISM_WVGA ---help--- Support for LCDC Prism WVGA (800x480) panel config FB_MSM_LCDC_ST15_PANEL depends on FB_MSM_LCDC_HW bool "LCDC ST1.5 Panel" select FB_MSM_LCDC_ST15_WXGA ---help--- Support for ST1.5 WXGA (1366x768) panel config FB_MSM_PANEL_NONE bool "NONE" ---help--- This will disable LCD panel endchoice choice prompt "Secondary LCD Panel" depends on FB_MSM_MDP31 default FB_MSM_SECONDARY_PANEL_NONE config FB_MSM_SECONDARY_PANEL_NONE bool "NONE" ---help--- No secondary panel endchoice config FB_MSM_TVOUT_NTSC bool select FB_MSM_TVOUT default n config FB_MSM_TVOUT_PAL bool select FB_MSM_TVOUT default n choice depends on (FB_MSM_MDP22 || FB_MSM_MDP31) prompt "TVOut Region" default FB_MSM_TVOUT_NTSC_M config FB_MSM_TVOUT_NTSC_M bool "NTSC M" select FB_MSM_TVOUT_NTSC ---help--- Support for NTSC M region (North American and Korea) config FB_MSM_TVOUT_NONE bool "NONE" ---help--- This will disable TV Out functionality. endchoice config PMEM_KERNEL_SIZE int "PMEM for kernel components (in MB)" default 2 depends on ARCH_QSD8X50 help Configures the amount of PMEM for use by kernel components (in MB; minimum 2MB) endif config POHMELFS tristate "POHMELFS filesystem support" depends on NET select CONNECTOR select CRYPTO select CRYPTO_BLKCIPHER select CRYPTO_HMAC help POHMELFS stands for Parallel Optimized Host Message Exchange Layered File System. This is a network filesystem which supports coherent caching of data and metadata on clients. config POHMELFS_DEBUG bool "POHMELFS debugging" depends on POHMELFS default n help Turns on excessive POHMELFS debugging facilities. You usually do not want to slow things down noticeably and get really lots of kernel messages in syslog. config POHMELFS_CRYPTO bool "POHMELFS crypto support" depends on POHMELFS help This option allows to encrypt and/or protect with strong cryptographic hash all dataflow between server and clients. Each config group can have its own keys. menuconfig SPECTRA tristate "Denali Spectra Flash Translation Layer" depends on BLOCK depends on X86_MRST default n ---help--- Enable the FTL pseudo-filesystem used with the NAND Flash controller on Intel Moorestown Platform to pretend to be a disk. choice prompt "Compile for" depends on SPECTRA default SPECTRA_MRST_HW config SPECTRA_MRST_HW bool "Moorestown hardware mode" help Driver communicates with the Moorestown hardware's register interface. in DMA mode. config SPECTRA_MTD bool "Linux MTD mode" depends on MTD help Driver communicates with the kernel MTD subsystem instead of its own built-in hardware driver. config SPECTRA_EMU bool "RAM emulator testing" help Driver emulates Flash on a RAM buffer and / or disk file. Useful to test the behavior of FTL layer. endchoice config SPECTRA_MRST_HW_DMA bool default n depends on SPECTRA_MRST_HW help Use DMA for native hardware interface. config ACPI_QUICKSTART tristate "ACPI Quickstart key driver" depends on ACPI && INPUT help Say Y here if you have a platform that supports the ACPI quickstart key protocol. To compile this driver as a module, choose M here: the module will be called quickstart. config TOUCHSCREEN_SYNAPTICS_I2C_RMI4 tristate "Synaptics i2c rmi4 touchscreen" depends on I2C && INPUT help Say Y here if you have a Synaptics RMI4 and want to enable support for the built-in touchscreen. To compile this driver as a module, choose M here: the module will be called synaptics_rmi4_ts. # # West Bridge configuration # menuconfig WESTBRIDGE tristate "West Bridge support" depends on WESTBRIDGE_HAL_SELECTED help This selects West Bridge Peripheral controller support. If you want West Bridge support, you should say Y here. menuconfig WESTBRIDGE_ASTORIA bool "West Bridge Astoria support" depends on WESTBRIDGE != n && WESTBRIDGE_HAL_SELECTED help This option enables support for West Bridge Astoria if WESTBRIDGE_ASTORIA source "drivers/staging/westbridge/astoria/Kconfig" endif #WESTBRIDGE_ASTORIA config WESTBRIDGE_HAL_SELECTED boolean choice prompt "West Bridge HAL" help West Bridge HAL/processor interface to be used # # HAL Layers # config MACH_OMAP3_WESTBRIDGE_AST_PNAND_HAL bool "WESTBRIDGE OMAP3430 Astoria PNAND HAL" depends on ARCH_OMAP3 select WESTBRIDGE_HAL_SELECTED help Include the OMAP3430 HAL for PNAND interface config MACH_NO_WESTBRIDGE bool "no West Bridge HAL selected" help Do not include any HAL layer(de-activates West Bridge option) endchoice config WESTBRIDGE_DEBUG bool "West Bridge debugging" depends on WESTBRIDGE != n help This is an option for use by developers; most people should say N here. This enables WESTBRIDGE core and driver debugging. # # West Bridge configuration # source "drivers/staging/westbridge/astoria/device/Kconfig" source "drivers/staging/westbridge/astoria/block/Kconfig" source "drivers/staging/westbridge/astoria/gadget/Kconfig" # # West Bridge block driver configuration # config WESTBRIDGE_BLOCK_DRIVER tristate "West Bridge Block Driver" help Include the West Bridge based block driver # # West Bridge block driver configuration # config WESTBRIDGE_DEVICE_DRIVER tristate "West Bridge Device Driver" help Include the West Bridge based device driver # # West Bridge gadget driver configuration # config WESTBRIDGE_GADGET_DRIVER tristate "West Bridge Gadget Driver" help Include the West Bridge based gadget peripheral controller driver # # LIRC driver(s) configuration # menuconfig LIRC_STAGING bool "Linux Infrared Remote Control IR receiver/transmitter drivers" depends on LIRC help Say Y here, and all supported Linux Infrared Remote Control IR and RF receiver and transmitter drivers will be displayed. When paired with a remote control and the lirc daemon, the receiver drivers allow control of your Linux system via remote control. if LIRC_STAGING config LIRC_BT829 tristate "BT829 based hardware" depends on LIRC && PCI help Driver for the IR interface on BT829-based hardware config LIRC_IGORPLUGUSB tristate "Igor Cesko's USB IR Receiver" depends on LIRC && USB help Driver for Igor Cesko's USB IR Receiver config LIRC_IMON tristate "Legacy SoundGraph iMON Receiver and Display" depends on LIRC && USB help Driver for the original SoundGraph iMON IR Receiver and Display Current generation iMON devices use the input layer imon driver. config LIRC_PARALLEL tristate "Homebrew Parallel Port Receiver" depends on LIRC && PARPORT help Driver for Homebrew Parallel Port Receivers config LIRC_SASEM tristate "Sasem USB IR Remote" depends on LIRC && USB help Driver for the Sasem OnAir Remocon-V or Dign HV5 HTPC IR/VFD Module config LIRC_SERIAL tristate "Homebrew Serial Port Receiver" depends on LIRC help Driver for Homebrew Serial Port Receivers config LIRC_SERIAL_TRANSMITTER bool "Serial Port Transmitter" default y depends on LIRC_SERIAL help Serial Port Transmitter support config LIRC_SIR tristate "Built-in SIR IrDA port" depends on LIRC help Driver for the SIR IrDA port config LIRC_TTUSBIR tristate "Technotrend USB IR Receiver" depends on LIRC && USB help Driver for the Technotrend USB IR Receiver config LIRC_ZILOG tristate "Zilog/Hauppauge IR Transmitter" depends on LIRC && I2C help Driver for the Zilog/Hauppauge IR Transmitter, found on PVR-150/500, HVR-1200/1250/1700/1800, HD-PVR and other cards endif config PRISM2_USB tristate "Prism2.5/3 USB driver" depends on WLAN && USB && CFG80211 select WIRELESS_EXT select WEXT_PRIV default n ---help--- This is the wlan-ng prism 2.5/3 USB driver for a wide range of old USB wireless devices. To compile this driver as a module, choose M here: the module will be called prism2_usb. config ECHO tristate "Line Echo Canceller support" default n ---help--- This driver provides line echo cancelling support for mISDN and Zaptel drivers. To compile this driver as a module, choose M here. The module will be called echo. config RTL8192U tristate "RealTek RTL8192U Wireless LAN NIC driver" depends on PCI && WLAN && USB depends on m select WIRELESS_EXT select WEXT_PRIV select CRYPTO default N ---help--- config DVB_CXD2099 tristate "CXD2099AR Common Interface driver" depends on DVB_CORE && PCI && I2C && DVB_NGENE ---help--- Support for the CI module found on cineS2 DVB-S2, supported by the Micronas PCIe device driver (ngene). For now, data is passed through '/dev/dvb/adapterX/sec0': - Encrypted data must be written to 'sec0'. - Decrypted data can be read from 'sec0'. - Setup the CAM using device 'ca0'. config USB_SERIAL_QUATECH_USB2 tristate "USB Quatech xSU2-[14]00 USB Serial Driver" depends on USB_SERIAL help Say Y here if you want to use a Quatech USB2.0 to serial adaptor. This driver supports the SSU2-100, DSU2-100, DSU2-400, QSU2-100, QSU2-400, ESU2-400 and ESU2-100 USB2.0 to RS232 / 485 / 422 serial adaptors. Some hardware has an incorrect product string and announces itself as ESU-100 (which uses the serqt driver) even though it is an ESU2-100. Check the label on the bottom of your device. To compile this driver as a module, choose M here: the module will be called quatech_usb2 . menu "Speakup console speech" config SPEAKUP depends on VT tristate "Speakup core" ---help--- This is the Speakup screen reader. Think of it as a video console for blind people. If built in to the kernel, it can speak everything on the text console from boot up to shutdown. For more information on Speakup, point your browser at http://www.linux-speakup.org/. There is also a mailing list at the above url that you can subscribe to. Supported synthesizers are accent sa, accent pc, appollo II., Auddapter, Braille 'n Speak, Dectalk external (old), Dectalk PC (full length isa board), Dectalk express, Doubletalk, Doubletalk LT or Litetalk, Keynote Gold internal PC, software synthesizers, Speakout, transport, and a dummy module that can be used with a plain text terminal. Speakup can either be built in or compiled as a module by answering y or m. If you answer y here, then you must answer either y or m to at least one of the synthesizer drivers below. If you answer m here, then the synthesizer drivers below can only be built as modules. These drivers are not standalone drivers, but must be used in conjunction with Speakup. Think of them as video cards for blind people. The Dectalk pc driver can only be built as a module, and requires software to be pre-loaded on to the card before the module can be loaded. See the decpc choice below for more details. If you are not a blind person, or don't have access to one of the listed synthesizers, you should say n. if SPEAKUP config SPEAKUP_SYNTH_ACNTSA tristate "Accent SA synthesizer support" ---help--- This is the Speakup driver for the Accent SA synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_ACNTPC tristate "Accent PC synthesizer support" ---help--- This is the Speakup driver for the accent pc synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_APOLLO tristate "Apollo II synthesizer support" ---help--- This is the Speakup driver for the Apollo II synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_AUDPTR tristate "Audapter synthesizer support" ---help--- This is the Speakup driver for the Audapter synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_BNS tristate "Braille 'n' Speak synthesizer support" ---help--- This is the Speakup driver for the Braille 'n' Speak synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_DECTLK tristate "DECtalk Express synthesizer support" ---help--- This is the Speakup driver for the DecTalk Express synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_DECEXT tristate "DECtalk External (old) synthesizer support" ---help--- This is the Speakup driver for the DecTalk External (old) synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_DECPC depends on m tristate "DECtalk PC (big ISA card) synthesizer support" ---help--- This is the Speakup driver for the DecTalk PC (full length ISA) synthesizer. You can say m to build it as a module. See the configuration help on the Speakup choice above for more info. In order to use the DecTalk PC driver, you must download the dec_pc.tgz file from linux-speakup.org. It is in the pub/linux/goodies directory. The dec_pc.tgz file contains the software which must be pre-loaded on to the DecTalk PC board in order to use it with this driver. This driver must be built as a module, and can not be loaded until the file system is mounted and the DecTalk PC software has been pre-loaded on to the board. See the README file in the dec_pc.tgz file for more details. config SPEAKUP_SYNTH_DTLK tristate "DoubleTalk PC synthesizer support" ---help--- This is the Speakup driver for the internal DoubleTalk PC synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_KEYPC tristate "Keynote Gold PC synthesizer support" ---help--- This is the Speakup driver for the Keynote Gold PC synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_LTLK tristate "DoubleTalk LT/LiteTalk synthesizer support" ---help--- This is the Speakup driver for the LiteTalk/DoubleTalk LT synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_SOFT tristate "Userspace software synthesizer support" ---help--- This is the software synthesizer device node. It will register a device /dev/softsynth which midware programs and speech daemons may open and read to provide kernel output to software synths such as espeak, festival, flite and so forth. You can select 'y' or 'm' to have it built-in to the kernel or loaded as a module. config SPEAKUP_SYNTH_SPKOUT tristate "Speak Out synthesizer support" ---help--- This is the Speakup driver for the Speakout synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_TXPRT tristate "Transport synthesizer support" ---help--- This is the Speakup driver for the Transport synthesizer. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. config SPEAKUP_SYNTH_DUMMY tristate "Dummy synthesizer driver (for testing)" ---help--- This is a dummy Speakup driver for plugging a mere serial terminal. This is handy if you want to test speakup but don't have the hardware. You can say y to build it into the kernel, or m to build it as a module. See the configuration help on the Speakup choice above for more info. endif # SPEAKUP endmenu menuconfig BRCM80211 tristate "Broadcom IEEE802.11n WLAN drivers" depends on WLAN config BRCMSMAC bool "Broadcom IEEE802.11n PCIe SoftMAC WLAN driver" depends on PCI depends on BRCM80211 && MAC80211 select FW_LOADER ---help--- This module adds support for PCIe wireless adapters based on Broadcom IEEE802.11n SoftMAC chipsets. If you choose to build a module, it'll be called brcmsmac.ko. config BRCMFMAC bool "Broadcom IEEE802.11n embedded FullMAC WLAN driver" depends on MMC depends on BRCM80211 && CFG80211 select FW_LOADER select WIRELESS_EXT select WEXT_PRIV ---help--- This module adds support for embedded wireless adapters based on Broadcom IEEE802.11n FullMAC chipsets. This driver uses the kernel's wireless extensions subsystem. If you choose to build a module, it'll be called brcmfmac.ko. config BRCMDBG bool "Broadcom driver debug functions" default n depends on BRCM80211 ---help--- Selecting this enables additional code for debug purposes. config RTL8192E tristate "RealTek RTL8192E Wireless LAN NIC driver" depends on PCI && WLAN depends on m select WIRELESS_EXT select WEXT_PRIV select CRYPTO default N ---help--- config W35UND tristate "IS89C35 WLAN USB driver" depends on MAC80211 && WLAN && USB && EXPERIMENTAL default n ---help--- This is highly experimental driver for Winbond WIFI card. Hardware is present in some Kohjinsha subnotebooks, and in some stand-alone USB modules. Chipset name seems to be w89c35d. Check http://code.google.com/p/winbondport/ for new version. config FB_OLPC_DCON tristate "One Laptop Per Child Display CONtroller support" depends on OLPC && FB select I2C ---help--- Add support for the OLPC XO DCON controller. This controller is only available on OLPC platforms. Unless you have one of these platforms, you will want to say 'N'. config FB_OLPC_DCON_1 bool "OLPC XO-1 DCON support" depends on FB_OLPC_DCON && GPIO_CS5535 default y ---help--- Enable support for the DCON in XO-1 model laptops. The kernel communicates with the DCON using model-specific code. If you have an XO-1 (or if you're unsure what model you have), you should say 'Y'. config FB_OLPC_DCON_1_5 bool "OLPC XO-1.5 DCON support" depends on FB_OLPC_DCON && ACPI default y ---help--- Enable support for the DCON in XO-1.5 model laptops. The kernel communicates with the DCON using model-specific code. If you have an XO-1.5 (or if you're unsure what model you have), you should say 'Y'. # # ADDAC drivers # comment "Analog digital bi-direction convertors" config ADT7316 tristate "Analog Devices ADT7316/7/8 ADT7516/7/9 temperature sensor, ADC and DAC driver" help Say yes here to build support for Analog Devices ADT7316, ADT7317, ADT7318 and ADT7516, ADT7517, ADT7519 temperature sensors, ADC and DAC. config ADT7316_SPI tristate "support SPI bus connection" depends on SPI && ADT7316 default y help Say yes here to build SPI bus support for Analog Devices ADT7316/7/8 and ADT7516/7/9. config ADT7316_I2C tristate "support I2C bus connection" depends on I2C && ADT7316 help Say yes here to build I2C bus support for Analog Devices ADT7316/7/8 and ADT7516/7/9. # # Industrial I/O subsytem configuration # menuconfig IIO tristate "Industrial I/O support" depends on !S390 ---help--- The industrial I/O subsystem provides a unified framework for drivers for many different types of embedded sensors using a number of different physical interfaces (i2c, spi, etc). See Documentation/industrialio for more information. if IIO config IIO_RING_BUFFER bool "Enable ring buffer support within IIO" help Provide core support for various ring buffer based data acquisition methods. if IIO_RING_BUFFER config IIO_SW_RING select IIO_TRIGGER tristate "Industrial I/O lock free software ring" help Example software ring buffer implementation. The design aim of this particular realization was to minimize write locking with the intention that some devices would be able to write in interrupt context. config IIO_KFIFO_BUF select IIO_TRIGGER tristate "Industrial I/O buffering based on kfifo" help A simple fifo based on kfifo. Use this if you want a fifo rather than a ring buffer. Note that this currently provides no buffer events so it is up to userspace to work out how often to read from the buffer. endif # IIO_RINGBUFFER config IIO_TRIGGER boolean "Enable triggered sampling support" help Provides IIO core support for triggers. Currently these are used to initialize capture of samples to push into ring buffers. The triggers are effectively a 'capture data now' interrupt. source "drivers/staging/iio/accel/Kconfig" source "drivers/staging/iio/adc/Kconfig" source "drivers/staging/iio/addac/Kconfig" source "drivers/staging/iio/dac/Kconfig" source "drivers/staging/iio/dds/Kconfig" source "drivers/staging/iio/gyro/Kconfig" source "drivers/staging/iio/imu/Kconfig" source "drivers/staging/iio/light/Kconfig" source "drivers/staging/iio/magnetometer/Kconfig" source "drivers/staging/iio/meter/Kconfig" source "drivers/staging/iio/resolver/Kconfig" source "drivers/staging/iio/trigger/Kconfig" endif # IIO # # Magnetometer sensors # comment "Magnetometer sensors" config SENSORS_AK8975 tristate "Asahi Kasei AK8975 3-Axis Magnetometer" depends on I2C help Say yes here to build support for Asahi Kasei AK8975 3-Axis Magnetometer. To compile this driver as a module, choose M here: the module will be called ak8975. config SENSORS_HMC5843 tristate "Honeywell HMC5843 3-Axis Magnetometer" depends on I2C help Say Y here to add support for the Honeywell HMC 5843 3-Axis Magnetometer (digital compass). To compile this driver as a module, choose M here: the module will be called hmc5843 # # DAC drivers # comment "Digital to analog convertors" config AD5624R_SPI tristate "Analog Devices AD5624/44/64R DAC spi driver" depends on SPI help Say yes here to build support for Analog Devices AD5624R, AD5644R and AD5664R convertors (DAC). This driver uses the common SPI interface. config AD5446 tristate "Analog Devices AD5444/6, AD5620/40/60 and AD5542A/12A DAC SPI driver" depends on SPI help Say yes here to build support for Analog Devices AD5444, AD5446, AD5512A, AD5542A, AD5543, AD5553, AD5601, AD5611, AD5620, AD5621, AD5640, AD5660 DACs. To compile this driver as a module, choose M here: the module will be called ad5446. config MAX517 tristate "Maxim MAX517/518/519 DAC driver" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Maxim chips MAX517, MAX518 and MAX519 (I2C 8-Bit DACs with rail-to-rail outputs). This driver can also be built as a module. If so, the module will be called max517. # # IIO Digital Gyroscope Sensor drivers configuration # comment "Digital gyroscope sensors" config ADIS16060 tristate "Analog Devices ADIS16060 Yaw Rate Gyroscope with SPI driver" depends on SPI help Say yes here to build support for Analog Devices adis16060 wide bandwidth yaw rate gyroscope with SPI. config ADIS16080 tristate "Analog Devices ADIS16080/100 Yaw Rate Gyroscope with SPI driver" depends on SPI help Say yes here to build support for Analog Devices adis16080/100 Yaw Rate Gyroscope with SPI. config ADIS16130 tristate "Analog Devices ADIS16130 High Precision Angular Rate Sensor driver" depends on SPI help Say yes here to build support for Analog Devices ADIS16130 High Precision Angular Rate Sensor driver. config ADIS16260 tristate "Analog Devices ADIS16260 Digital Gyroscope Sensor SPI driver" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER select IIO_SW_RING if IIO_RING_BUFFER help Say yes here to build support for Analog Devices ADIS16260 ADIS16265 ADIS16250 ADIS16255 and ADIS16251 programmable digital gyroscope sensors. This driver can also be built as a module. If so, the module will be called adis16260. # # Resolver/Synchro drivers # comment "Resolver to digital converters" config AD2S90 tristate "Analog Devices ad2s90 driver" depends on SPI help Say yes here to build support for Analog Devices spi resolver to digital converters, ad2s90, provides direct access via sysfs. config AD2S120X tristate "Analog Devices ad2s120x driver" depends on SPI help Say yes here to build support for Analog Devices spi resolver to digital converters, ad2s1200 and ad2s1205, provides direct access via sysfs. config AD2S1210 tristate "Analog Devices ad2s1210 driver" depends on SPI help Say yes here to build support for Analog Devices spi resolver to digital converters, ad2s1210, provides direct access via sysfs. choice prompt "Resolution Control" depends on AD2S1210 default AD2S1210_GPIO_NONE help In normal mode, the resolution of the digital output is selected using the RES0 and RES1 input pins. In configuration mode, the resolution is selected by setting the RES0 and RES1 bits in the control regsiter. When switching between normal mode and configuration mode, there are some schemes to keep them matchs. config AD2S1210_GPIO_INPUT bool "read resolution from gpio pins" help GPIO pins are sampling RES0 and RES1 pins, read the resolution settings from the GPIO pins. config AD2S1210_GPIO_OUTPUT bool "set gpio pins to set resolution" help RES0 and RES1 pins are controlled by GPIOs, setting GPIO pins to set the resolution. config AD2S1210_GPIO_NONE bool "take the responsibility by user" endchoice # # ADC drivers # comment "Analog to digital convertors" config MAX1363 tristate "MAXIM max1363 ADC driver" depends on I2C select IIO_TRIGGER if IIO_RING_BUFFER select MAX1363_RING_BUFFER help Say yes here to build support for many MAXIM i2c analog to digital convertors (ADC). (max1361, max1362, max1363, max1364, max1036, max1037, max1038, max1039, max1136, max1136, max1137, max1138, max1139, max1236, max1237, max11238, max1239, max11600, max11601, max11602, max11603, max11604, max11605, max11606, max11607, max11608, max11609, max11610, max11611, max11612, max11613, max11614, max11615, max11616, max11617) Provides direct access via sysfs. config MAX1363_RING_BUFFER bool "MAXIM max1363: use ring buffer" depends on MAX1363 select IIO_RING_BUFFER select IIO_SW_RING help Say yes here to include ring buffer support in the MAX1363 ADC driver. config AD7150 tristate "Analog Devices ad7150/1/6 capacitive sensor driver" depends on I2C help Say yes here to build support for Analog Devices capacitive sensors. (ad7150, ad7151, ad7156) Provides direct access via sysfs. config AD7152 tristate "Analog Devices ad7152/3 capacitive sensor driver" depends on I2C help Say yes here to build support for Analog Devices capacitive sensors. (ad7152, ad7153) Provides direct access via sysfs. config AD7291 tristate "Analog Devices AD7291 temperature sensor driver" depends on I2C help Say yes here to build support for Analog Devices AD7291 temperature sensors. config AD7298 tristate "Analog Devices AD7298 ADC driver" depends on SPI help Say yes here to build support for Analog Devices AD7298 8 Channel ADC with temperature sensor. To compile this driver as a module, choose M here: the module will be called ad7298. config AD7314 tristate "Analog Devices AD7314 temperature sensor driver" depends on SPI help Say yes here to build support for Analog Devices AD7314 temperature sensors. config AD7606 tristate "Analog Devices AD7606 ADC driver" depends on GPIOLIB select IIO_RING_BUFFER select IIO_TRIGGER select IIO_SW_RING help Say yes here to build support for Analog Devices: ad7606, ad7606-6, ad7606-4 analog to digital convertors (ADC). To compile this driver as a module, choose M here: the module will be called ad7606. config AD7606_IFACE_PARALLEL tristate "parallel interface support" depends on AD7606 help Say yes here to include parallel interface support on the AD7606 ADC driver. config AD7606_IFACE_SPI tristate "spi interface support" depends on AD7606 depends on SPI help Say yes here to include parallel interface support on the AD7606 ADC driver. config AD799X tristate "Analog Devices AD799x ADC driver" depends on I2C select IIO_TRIGGER if IIO_RING_BUFFER select AD799X_RING_BUFFER help Say yes here to build support for Analog Devices: ad7991, ad7995, ad7999, ad7992, ad7993, ad7994, ad7997, ad7998 i2c analog to digital convertors (ADC). Provides direct access via sysfs. config AD799X_RING_BUFFER bool "Analog Devices AD799x: use ring buffer" depends on AD799X select IIO_RING_BUFFER select IIO_SW_RING help Say yes here to include ring buffer support in the AD799X ADC driver. config AD7476 tristate "Analog Devices AD7475/6/7/8 AD7466/7/8 and AD7495 ADC driver" depends on SPI select IIO_RING_BUFFER select IIO_SW_RING select IIO_TRIGGER help Say yes here to build support for Analog Devices AD7475, AD7476, AD7477, AD7478, AD7466, AD7467, AD7468, AD7495 SPI analog to digital convertors (ADC). If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called ad7476. config AD7887 tristate "Analog Devices AD7887 ADC driver" depends on SPI select IIO_RING_BUFFER select IIO_SW_RING select IIO_TRIGGER help Say yes here to build support for Analog Devices AD7887 SPI analog to digital convertor (ADC). If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called ad7887. config AD7745 tristate "Analog Devices AD7745, AD7746 AD7747 capacitive sensor driver" depends on I2C help Say yes here to build support for Analog Devices capacitive sensors. (AD7745, AD7746, AD7747) Provides direct access via sysfs. To compile this driver as a module, choose M here: the module will be called ad7745. config AD7816 tristate "Analog Devices AD7816/7/8 temperature sensor and ADC driver" depends on SPI help Say yes here to build support for Analog Devices AD7816/7/8 temperature sensors and ADC. config ADT75 tristate "Analog Devices ADT75 temperature sensor driver" depends on I2C help Say yes here to build support for Analog Devices ADT75 temperature sensors. config ADT7310 tristate "Analog Devices ADT7310 temperature sensor driver" depends on SPI help Say yes here to build support for Analog Devices ADT7310 temperature sensors. config ADT7410 tristate "Analog Devices ADT7410 temperature sensor driver" depends on I2C help Say yes here to build support for Analog Devices ADT7410 temperature sensors. # # IIO meter drivers configuration # comment "Active energy metering IC" config ADE7753 tristate "Analog Devices ADE7753/6 Single-Phase Multifunction Metering IC Driver" depends on SPI help Say yes here to build support for Analog Devices ADE7753 Single-Phase Multifunction Metering IC with di/dt Sensor Interface. config ADE7754 tristate "Analog Devices ADE7754 Polyphase Multifunction Energy Metering IC Driver" depends on SPI help Say yes here to build support for Analog Devices ADE7754 Polyphase Multifunction Energy Metering IC Driver. config ADE7758 tristate "Analog Devices ADE7758 Poly Phase Multifunction Energy Metering IC Driver" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER select IIO_SW_RING if IIO_RING_BUFFER help Say yes here to build support for Analog Devices ADE7758 Polyphase Multifunction Energy Metering IC with Per Phase Information Driver. config ADE7759 tristate "Analog Devices ADE7759 Active Energy Metering IC Driver" depends on SPI help Say yes here to build support for Analog Devices ADE7758 Active Energy Metering IC with di/dt Sensor Interface. config ADE7854 tristate "Analog Devices ADE7854/58/68/78 Polyphase Multifunction Energy Metering IC Driver" depends on SPI || I2C help Say yes here to build support for Analog Devices ADE7854/58/68/78 Polyphase Multifunction Energy Metering IC Driver. config ADE7854_I2C tristate "support I2C bus connection" depends on ADE7854 && I2C default y help Say Y here if you have ADE7854/58/68/78 hooked to an I2C bus. To compile this driver as a module, choose M here: the module will be called ade7854-i2c. config ADE7854_SPI tristate "support SPI bus connection" depends on ADE7854 && SPI default y help Say Y here if you have ADE7854/58/68/78 hooked to a SPI bus. To compile this driver as a module, choose M here: the module will be called ade7854-spi. # # Accelerometer drivers # comment "Accelerometers" config ADIS16201 tristate "Analog Devices ADIS16201 Dual-Axis Digital Inclinometer and Accelerometer" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER select IIO_SW_RING if IIO_RING_BUFFER help Say yes here to build support for Analog Devices adis16201 dual-axis digital inclinometer and accelerometer. config ADIS16203 tristate "Analog Devices ADIS16203 Programmable 360 Degrees Inclinometer" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER select IIO_SW_RING if IIO_RING_BUFFER help Say yes here to build support for Analog Devices adis16203 Programmable 360 Degrees Inclinometer. config ADIS16204 tristate "Analog Devices ADIS16204 Programmable High-g Digital Impact Sensor and Recorder" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER select IIO_SW_RING if IIO_RING_BUFFER help Say yes here to build support for Analog Devices adis16204 Programmable High-g Digital Impact Sensor and Recorder. config ADIS16209 tristate "Analog Devices ADIS16209 Dual-Axis Digital Inclinometer and Accelerometer" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER select IIO_SW_RING if IIO_RING_BUFFER help Say yes here to build support for Analog Devices adis16209 dual-axis digital inclinometer and accelerometer. config ADIS16220 tristate "Analog Devices ADIS16220 Programmable Digital Vibration Sensor" depends on SPI help Say yes here to build support for Analog Devices adis16220 programmable digital vibration sensor. config ADIS16240 tristate "Analog Devices ADIS16240 Programmable Impact Sensor and Recorder" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER select IIO_SW_RING if IIO_RING_BUFFER help Say yes here to build support for Analog Devices adis16240 programmable impact Sensor and recorder. config KXSD9 tristate "Kionix KXSD9 Accelerometer Driver" depends on SPI help Say yes here to build support for the Kionix KXSD9 accelerometer. Currently this only supports the device via an SPI interface. config LIS3L02DQ tristate "ST Microelectronics LIS3L02DQ Accelerometer Driver" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER depends on !IIO_RING_BUFFER || IIO_KFIFO_BUF || IIO_SW_RING help Say yes here to build SPI support for the ST microelectronics accelerometer. The driver supplies direct access via sysfs files and an event interface via a character device. choice prompt "Buffer type" depends on LIS3L02DQ && IIO_RING_BUFFER config LIS3L02DQ_BUF_KFIFO depends on IIO_KFIFO_BUF bool "Simple FIFO" help Kfifo based FIFO. Does not provide any events so it is up to userspace to ensure it reads often enough that data is not lost. config LIS3L02DQ_BUF_RING_SW depends on IIO_SW_RING bool "IIO Software Ring" help Original IIO ring buffer implementation. Provides simple buffer events, half full etc. endchoice config SCA3000 depends on IIO_RING_BUFFER depends on SPI tristate "VTI SCA3000 series accelerometers" help Say yes here to build support for the VTI SCA3000 series of SPI accelerometers. These devices use a hardware ring buffer. # # Direct Digital Synthesis drivers # comment "Direct Digital Synthesis" config AD5930 tristate "Analog Devices ad5930/5932 driver" depends on SPI help Say yes here to build support for Analog Devices DDS chip ad5930/ad5932, provides direct access via sysfs. config AD9832 tristate "Analog Devices ad9832/5 driver" depends on SPI help Say yes here to build support for Analog Devices DDS chip AD9832 and AD9835, provides direct access via sysfs. To compile this driver as a module, choose M here: the module will be called ad9832. config AD9834 tristate "Analog Devices ad9833/4/ driver" depends on SPI help Say yes here to build support for Analog Devices DDS chip AD9833 and AD9834, provides direct access via sysfs. To compile this driver as a module, choose M here: the module will be called ad9834. config AD9850 tristate "Analog Devices ad9850/1 driver" depends on SPI help Say yes here to build support for Analog Devices DDS chip ad9850/1, provides direct access via sysfs. config AD9852 tristate "Analog Devices ad9852/4 driver" depends on SPI help Say yes here to build support for Analog Devices DDS chip ad9852/4, provides direct access via sysfs. config AD9910 tristate "Analog Devices ad9910 driver" depends on SPI help Say yes here to build support for Analog Devices DDS chip ad9910, provides direct access via sysfs. config AD9951 tristate "Analog Devices ad9951 driver" depends on SPI help Say yes here to build support for Analog Devices DDS chip ad9951, provides direct access via sysfs. # # IIO imu drivers configuration # comment "Inertial measurement units" config ADIS16300 tristate "Analog Devices ADIS16300 IMU SPI driver" depends on SPI select IIO_SW_RING if IIO_RING_BUFFER select IIO_TRIGGER if IIO_RING_BUFFER help Say yes here to build support for Analog Devices adis16300 four degrees of freedom inertial sensor. config ADIS16350 tristate "Analog Devices ADIS16350/54/55/60/62/64/65 IMU SPI driver" depends on SPI select IIO_TRIGGER if IIO_RING_BUFFER select IIO_SW_RING if IIO_RING_BUFFER help Say yes here to build support for Analog Devices adis16350/54/55/60/62/64/65 high precision tri-axis inertial sensor. config ADIS16400 tristate "Analog Devices ADIS16400/5 IMU SPI driver" depends on SPI select IIO_SW_RING if IIO_RING_BUFFER select IIO_TRIGGER if IIO_RING_BUFFER help Say yes here to build support for Analog Devices adis16400/5 triaxial inertial sensor with Magnetometer. # # Industrial I/O standalone triggers # comment "Triggers - standalone" if IIO_TRIGGER config IIO_PERIODIC_RTC_TRIGGER tristate "Periodic RTC triggers" depends on RTC_CLASS help Provides support for using periodic capable real time clocks as IIO triggers. config IIO_GPIO_TRIGGER tristate "GPIO trigger" depends on GENERIC_GPIO help Provides support for using GPIO pins as IIO triggers. config IIO_SYSFS_TRIGGER tristate "SYSFS trigger" depends on SYSFS help Provides support for using SYSFS entry as IIO triggers. If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called iio-trig-sysfs. config IIO_BFIN_TMR_TRIGGER tristate "Blackfin TIMER trigger" depends on BLACKFIN help Provides support for using a Blackfin timer as IIO triggers. If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called iio-trig-bfin-timer. endif # IIO_TRIGGER # # Light sensors # comment "Light sensors" config SENSORS_TSL2563 tristate "TAOS TSL256[0-3] ambient light sensor" depends on I2C help If you say yes here you get support for the Taos TSL2560, TSL2561, TSL2562 and TSL2563 ambient light sensors. This driver can also be built as a module. If so, the module will be called tsl2563. config SENSORS_ISL29018 tristate "ISL 29018 light and proximity sensor" depends on I2C default n help If you say yes here you get support for ambient light sensing and proximity infrared sensing from Intersil ISL29018. This driver will provide the measurements of ambient light intensity in lux, proximity infrared sensing and normal infrared sensing. Data from sensor is accessible via sysfs. config ATH6K_LEGACY tristate "Atheros AR6003 support (non mac80211)" depends on MMC && WLAN select WIRELESS_EXT select WEXT_PRIV help This module adds support for wireless adapters based on Atheros AR6003 chipset running over SDIO. If you choose to build it as a module, it will be called ath6kl. Pls note that AR6002 and AR6001 are not supported by this driver. choice prompt "AR6003 Board Data Configuration" depends on ATH6K_LEGACY default AR600x_SD31_XXX help Select the appropriate board data template from the list below that matches your AR6003 based reference design. config AR600x_SD31_XXX bool "SD31-xxx" help Board Data file for a standard SD31 reference design (File: bdata.SD31.bin) config AR600x_WB31_XXX bool "WB31-xxx" help Board Data file for a standard WB31 (BT/WiFi) reference design (File: bdata.WB31.bin) config AR600x_SD32_XXX bool "SD32-xxx" help Board Data file for a standard SD32 (5GHz) reference design (File: bdata.SD32.bin) config AR600x_CUSTOM_XXX bool "CUSTOM-xxx" help Board Data file for a custom reference design (File: should be named as bdata.CUSTOM.bin) endchoice config ATH6KL_ENABLE_COEXISTENCE bool "BT Coexistence support" depends on ATH6K_LEGACY help Enables WLAN/BT coexistence support. Select the apprpriate configuration from below. choice prompt "Front-End Antenna Configuration" depends on ATH6KL_ENABLE_COEXISTENCE default AR600x_DUAL_ANTENNA help Indicates the number of antennas being used by BT and WLAN. Select the appropriate configuration from the list below that matches your AR6003 based reference design. config AR600x_DUAL_ANTENNA bool "Dual Antenna" help Dual Antenna Design config AR600x_SINGLE_ANTENNA bool "Single Antenna" help Single Antenna Design endchoice choice prompt "Collocated Bluetooth Type" depends on ATH6KL_ENABLE_COEXISTENCE default AR600x_BT_AR3001 help Select the appropriate configuration from the list below that matches your AR6003 based reference design. config AR600x_BT_QCOM bool "Qualcomm BTS4020X" help Qualcomm BT (3 Wire PTA) config AR600x_BT_CSR bool "CSR BC06" help CSR BT (3 Wire PTA) config AR600x_BT_AR3001 bool "Atheros AR3001" help Atheros BT (3 Wire PTA) endchoice config ATH6KL_HCI_BRIDGE bool "HCI over SDIO support" depends on ATH6K_LEGACY help Enables BT over SDIO. Applicable only for combo designs (eg: WB31) config ATH6KL_CONFIG_GPIO_BT_RESET bool "Configure BT Reset GPIO" depends on ATH6KL_HCI_BRIDGE help Configure a WLAN GPIO for use with BT. config AR600x_BT_RESET_PIN int "GPIO" depends on ATH6KL_CONFIG_GPIO_BT_RESET default 22 help WLAN GPIO to be used for resetting BT config ATH6KL_CFG80211 bool "CFG80211 support" depends on ATH6K_LEGACY && CFG80211 help Enables support for CFG80211 APIs. The default option is to use WEXT. Even with this option enabled, WEXT is not explicitly disabled and the onus of not exercising WEXT lies on the application(s) running in the user space. config ATH6KL_HTC_RAW_INTERFACE bool "RAW HTC support" depends on ATH6K_LEGACY help Enables raw HTC interface. Allows application to directly talk to the HTC interface via the ioctl interface config ATH6KL_VIRTUAL_SCATTER_GATHER bool "Virtual Scatter-Gather support" depends on ATH6K_LEGACY help Enables virtual scatter gather support for the hardware that does not support it natively. config ATH6KL_SKIP_ABI_VERSION_CHECK bool "Skip ABI version check support" depends on ATH6K_LEGACY help Forces the driver to disable ABI version check. Caution: Incompatilbity between the host driver and target firmware may lead to unknown side effects. config ATH6KL_BT_UART_FC_POLARITY int "UART Flow Control Polarity" depends on ATH6KL_LEGACY default 0 help Configures the polarity of UART Flow Control. A value of 0 implies active low and is the default setting. Set it to 1 for active high. config ATH6KL_DEBUG bool "Debug support" depends on ATH6K_LEGACY help Enables debug support config ATH6KL_ENABLE_HOST_DEBUG bool "Host Debug support" depends on ATH6KL_DEBUG help Enables debug support in the driver config ATH6KL_ENABLE_TARGET_DEBUG_PRINTS bool "Target Debug support - Enable UART prints" depends on ATH6KL_DEBUG help Enables uart prints config AR600x_DEBUG_UART_TX_PIN int "GPIO" depends on ATH6KL_ENABLE_TARGET_DEBUG_PRINTS default 8 help WLAN GPIO to be used for Debug UART (Tx) config ATH6KL_DISABLE_TARGET_DBGLOGS bool "Target Debug support - Disable Debug logs" depends on ATH6KL_DEBUG help Enables debug logs config VIDEO_GO7007 tristate "WIS GO7007 MPEG encoder support" depends on VIDEO_DEV && PCI && I2C depends on SND select VIDEOBUF_DMA_SG depends on RC_CORE select VIDEO_TUNER select VIDEO_TVEEPROM select SND_PCM select CRC32 default N ---help--- This is a video4linux driver for the WIS GO7007 MPEG encoder chip. To compile this driver as a module, choose M here: the module will be called go7007 config VIDEO_GO7007_USB tristate "WIS GO7007 USB support" depends on VIDEO_GO7007 && USB default N ---help--- This is a video4linux driver for the WIS GO7007 MPEG encoder chip over USB. To compile this driver as a module, choose M here: the module will be called go7007-usb config VIDEO_GO7007_USB_S2250_BOARD tristate "Sensoray 2250/2251 support" depends on VIDEO_GO7007_USB && DVB_USB default N ---help--- This is a video4linux driver for the Sensoray 2250/2251 device. To compile this driver as a module, choose M here: the module will be called s2250 config VIDEO_GO7007_OV7640 tristate "OV7640 subdev support" depends on VIDEO_GO7007 default N ---help--- This is a video4linux driver for the OV7640 sub-device. To compile this driver as a module, choose M here: the module will be called wis-ov7640 config VIDEO_GO7007_SAA7113 tristate "SAA7113 subdev support" depends on VIDEO_GO7007 default N ---help--- This is a video4linux driver for the SAA7113 sub-device. To compile this driver as a module, choose M here: the module will be called wis-saa7113 config VIDEO_GO7007_SAA7115 tristate "SAA7115 subdev support" depends on VIDEO_GO7007 default N ---help--- This is a video4linux driver for the SAA7115 sub-device. To compile this driver as a module, choose M here: the module will be called wis-saa7115 config VIDEO_GO7007_TW9903 tristate "TW9903 subdev support" depends on VIDEO_GO7007 default N ---help--- This is a video4linux driver for the TW9903 sub-device. To compile this driver as a module, choose M here: the module will be called wis-tw9903 config VIDEO_GO7007_UDA1342 tristate "UDA1342 subdev support" depends on VIDEO_GO7007 default N ---help--- This is a video4linux driver for the UDA1342 sub-device. To compile this driver as a module, choose M here: the module will be called wis-uda1342 config VIDEO_GO7007_SONY_TUNER tristate "Sony tuner subdev support" depends on VIDEO_GO7007 default N ---help--- This is a video4linux driver for the Sony Tuner sub-device. To compile this driver as a module, choose M here: the module will be called wis-sony-tuner config VIDEO_GO7007_TW2804 tristate "TW2804 subdev support" depends on VIDEO_GO7007 default N ---help--- This is a video4linux driver for the TW2804 sub-device. To compile this driver as a module, choose M here: the module will be called wis-tw2804 config VIDEO_CX25821 tristate "Conexant cx25821 support" depends on DVB_CORE && VIDEO_DEV && PCI && I2C select I2C_ALGOBIT select VIDEO_BTCX select VIDEO_TVEEPROM depends on RC_CORE select VIDEOBUF_DVB select VIDEOBUF_DMA_SG select VIDEO_CX25840 select VIDEO_CX2341X ---help--- This is a video4linux driver for Conexant 25821 based TV cards. To compile this driver as a module, choose M here: the module will be called cx25821 config VIDEO_CX25821_ALSA tristate "Conexant 25821 DMA audio support" depends on VIDEO_CX25821 && SND && EXPERIMENTAL select SND_PCM ---help--- This is a video4linux driver for direct (DMA) audio on Conexant 25821 based capture cards using ALSA. It only works with boards with function 01 enabled. To check if your board supports, use lspci -n. If supported, you should see 14f1:8801 or 14f1:8811 PCI device. To compile this driver as a module, choose M here: the module will be called cx25821-alsa. config USB_ENESTORAGE tristate "USB ENE SM/MS card reader support" depends on USB && SCSI && m ---help--- Say Y here if you wish to control a ENE SM/MS Card reader. To use SD card, please build driver/usb/storage/ums-eneub6250.ko This option depends on 'SCSI' support being enabled, but you probably also need 'SCSI device support: SCSI disk support' (BLK_DEV_SD) for most USB storage devices. To compile this driver as a module, choose M here: the module will be called keucr. config CXT1E1 tristate "SBE wanPMC-C[421]E1T1 hardware support" depends on HDLC && PCI ---help--- This driver supports the SBE wanPMC-CxT1E1 1, 2 and 4 port T3 channelized stream WAN adapter card which contains a HDLC/Transparent mode controller. If you want to compile this driver as a module say M here and read . The module will be called 'cxt1e1'. If unsure, say N. config SBE_PMCC4_NCOMM bool "SBE PMCC4 NCOMM support" depends on CXT1E1 ---help--- SBE supplies optional support for NCOMM products. If you have purchased this optional support you must say Y here to allow the driver to operate with the NCOMM product. config IDE_PHISON tristate "PCIE ATA PS5000 IDE support" depends on PCI && ATA && ATA_SFF && ATA_BMDMA ---help--- This is an experimental driver for PS5000 IDE driver. config XVMALLOC bool default n config ZRAM tristate "Compressed RAM block device support" depends on BLOCK && SYSFS select XVMALLOC select LZO_COMPRESS select LZO_DECOMPRESS default n help Creates virtual block devices called /dev/zramX (X = 0, 1, ...). Pages written to these disks are compressed and stored in memory itself. These disks allow very fast I/O and compression provides good amounts of memory savings. It has several use cases, for example: /tmp storage, use as swap disks and maybe many more. See zram.txt for more information. Project home: http://compcache.googlecode.com/ config ZRAM_DEBUG bool "Compressed RAM block device debug support" depends on ZRAM default n help This option adds additional debugging code to the compressed RAM block device driver. config OCTEON_ETHERNET tristate "Cavium Networks Octeon Ethernet support" depends on CPU_CAVIUM_OCTEON && NETDEVICES select PHYLIB select MDIO_OCTEON help This driver supports the builtin ethernet ports on Cavium Networks' products in the Octeon family. This driver supports the CN3XXX and CN5XXX Octeon processors. To compile this driver as a module, choose M here. The module will be called octeon-ethernet. config WLAGS49_H2 tristate "Agere Systems HERMES II Wireless PC Card Model 0110" depends on WLAN && PCMCIA select WIRELESS_EXT select WEXT_SPY select WEXT_PRIV ---help--- Driver for wireless cards using Agere's HERMES II chipset which are identified with Manufacture ID: 0156,0003 The software is a modified version of wl_lkm_722_abg.tar.gz from the Agere Systems website, addapted for Ubuntu 9.04. config A2232 tristate "Commodore A2232 serial support (EXPERIMENTAL)" depends on EXPERIMENTAL && ZORRO && BROKEN ---help--- This option supports the 2232 7-port serial card shipped with the Amiga 2000 and other Zorro-bus machines, dating from 1989. At a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The ports were connected with 8 pin DIN connectors on the card bracket, for which 8 pin to DB25 adapters were supplied. The card also had jumpers internally to toggle various pinning configurations. This driver can be built as a module; but then "generic_serial" will also be built as a module. This has to be loaded before "ser_a2232". If you want to do this, answer M here. config SX tristate "Specialix SX (and SI) card support" depends on SERIAL_NONSTANDARD && (PCI || EISA || ISA) && BROKEN help This is a driver for the SX and SI multiport serial cards. Please read the file for details. This driver can only be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called sx. If you want to do that, say M here. config RIO tristate "Specialix RIO system support" depends on SERIAL_NONSTANDARD && BROKEN help This is a driver for the Specialix RIO, a smart serial card which drives an outboard box that can support up to 128 ports. Product information is at . There are both ISA and PCI versions. config RIO_OLDPCI bool "Support really old RIO/PCI cards" depends on RIO help Older RIO PCI cards need some initialization-time configuration to determine the IRQ and some control addresses. If you have a RIO and this doesn't seem to work, try setting this to Y. config SLICOSS tristate "Alacritech Gigabit IS-NIC support" depends on PCI && X86 && NETDEV_1000 default n help This driver supports Alacritech's IS-NIC gigabit ethernet cards. This includes the following devices: Mojave cards (single port PCI Gigabit) both copper and fiber Oasis cards (single and dual port PCI-x Gigabit) copper and fiber Kalahari cards (dual and quad port PCI-e Gigabit) copper and fiber To compile this driver as a module, choose M here: the module will be called slicoss. config DX_SEP tristate "Discretix SEP driver" depends on PCI help Discretix SEP driver; used for the security processor subsystem on bard the Intel Mobile Internet Device. The driver's name is sep_driver. If unsure, select N. config ASUS_OLED tristate "Asus OLED driver" depends on USB default N ---help--- Enable support for the OLED display present in some Asus laptops. config VT6656 tristate "VIA Technologies VT6656 support" depends on USB && WLAN && m select WIRELESS_EXT select WEXT_PRIV select FW_LOADER ---help--- This is a vendor-written driver for VIA VT6656. config FB_XGI tristate "XGI display support" depends on FB && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT help This driver supports notebooks with XGI Z7,Z9,Z11 PCI chips. Say Y if you have such a graphics card. To compile this driver as a module, choose M here: the module will be called xgifb.ko config RT2870 tristate "Ralink 2870/3070 wireless support" depends on USB && (X86 || ARM) && WLAN select WIRELESS_EXT select WEXT_PRIV select CRC_CCITT select FW_LOADER ---help--- This is an experimental driver for the Ralink xx70 wireless chips. config PANEL tristate "Parallel port LCD/Keypad Panel support" depends on PARPORT ---help--- Say Y here if you have an HD44780 or KS-0074 LCD connected to your parallel port. This driver also features 4 and 6-key keypads. The LCD is accessible through the /dev/lcd char device (10, 156), and the keypad through /dev/keypad (10, 185). Both require misc device to be enabled. This code can either be compiled as a module, or linked into the kernel and started at boot. If you don't understand what all this is about, say N. config PANEL_PARPORT int "Default parallel port number (0=LPT1)" depends on PANEL range 0 255 default "0" ---help--- This is the index of the parallel port the panel is connected to. One driver instance only supports one parallel port, so if your keypad and LCD are connected to two separate ports, you have to start two modules with different arguments. Numbering starts with '0' for LPT1, and so on. config PANEL_PROFILE int "Default panel profile (0-5, 0=custom)" depends on PANEL range 0 5 default "5" ---help--- To ease configuration, the driver supports different configuration profiles for past and recent wirings. These profiles can also be used to define an approximative configuration, completed by a few other options. Here are the profiles : 0 = custom (see further) 1 = 2x16 parallel LCD, old keypad 2 = 2x16 serial LCD (KS-0074), new keypad 3 = 2x16 parallel LCD (Hantronix), no keypad 4 = 2x16 parallel LCD (Nexcom NSA1045) with Nexcom's keypad 5 = 2x40 parallel LCD (old one), with old keypad Custom configurations allow you to define how your display is wired to the parallel port, and how it works. This is only intended for experts. config PANEL_KEYPAD depends on PANEL && PANEL_PROFILE="0" int "Keypad type (0=none, 1=old 6 keys, 2=new 6 keys, 3=Nexcom 4 keys)" range 0 3 default 0 ---help--- This enables and configures a keypad connected to the parallel port. The keys will be read from character device 10,185. Valid values are : 0 : do not enable this driver 1 : old 6 keys keypad 2 : new 6 keys keypad, as used on the server at www.ant-computing.com 3 : Nexcom NSA1045's 4 keys keypad New profiles can be described in the driver source. The driver also supports simultaneous keys pressed when the keypad supports them. config PANEL_LCD depends on PANEL && PANEL_PROFILE="0" int "LCD type (0=none, 1=custom, 2=old //, 3=ks0074, 4=hantronix, 5=Nexcom)" range 0 5 default 0 ---help--- This enables and configures an LCD connected to the parallel port. The driver includes an interpreter for escape codes starting with '\e[L' which are specific to the LCD, and a few ANSI codes. The driver will be registered as character device 10,156, usually under the name '/dev/lcd'. There are a total of 6 supported types : 0 : do not enable the driver 1 : custom configuration and wiring (see further) 2 : 2x16 & 2x40 parallel LCD (old wiring) 3 : 2x16 serial LCD (KS-0074 based) 4 : 2x16 parallel LCD (Hantronix wiring) 5 : 2x16 parallel LCD (Nexcom wiring) When type '1' is specified, other options will appear to configure more precise aspects (wiring, dimensions, protocol, ...). Please note that those values changed from the 2.4 driver for better consistency. config PANEL_LCD_HEIGHT depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" int "Number of lines on the LCD (1-2)" range 1 2 default 2 ---help--- This is the number of visible character lines on the LCD in custom profile. It can either be 1 or 2. config PANEL_LCD_WIDTH depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" int "Number of characters per line on the LCD (1-40)" range 1 40 default 40 ---help--- This is the number of characters per line on the LCD in custom profile. Common values are 16,20,24,40. config PANEL_LCD_BWIDTH depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" int "Internal LCD line width (1-40, 40 by default)" range 1 40 default 40 ---help--- Most LCDs use a standard controller which supports hardware lines of 40 characters, although sometimes only 16, 20 or 24 of them are really wired to the terminal. This results in some non-visible but addressable characters, and is the case for most parallel LCDs. Other LCDs, and some serial ones, however, use the same line width internally as what is visible. The KS0074 for example, uses 16 characters per line for 16 visible characters per line. This option lets you configure the value used by your LCD in 'custom' profile. If you don't know, put '40' here. config PANEL_LCD_HWIDTH depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" int "Hardware LCD line width (1-64, 64 by default)" range 1 64 default 64 ---help--- Most LCDs use a single address bit to differentiate line 0 and line 1. Since some of them need to be able to address 40 chars with the lower bits, they often use the immediately superior power of 2, which is 64, to address the next line. If you don't know what your LCD uses, in doubt let 16 here for a 2x16, and 64 here for a 2x40. config PANEL_LCD_CHARSET depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" int "LCD character set (0=normal, 1=KS0074)" range 0 1 default 0 ---help--- Some controllers such as the KS0074 use a somewhat strange character set where many symbols are at unusual places. The driver knows how to map 'standard' ASCII characters to the character sets used by these controllers. Valid values are : 0 : normal (untranslated) character set 1 : KS0074 character set If you don't know, use the normal one (0). config PANEL_LCD_PROTO depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" int "LCD communication mode (0=parallel 8 bits, 1=serial)" range 0 1 default 0 ---help--- This driver now supports any serial or parallel LCD wired to a parallel port. But before assigning signals, the driver needs to know if it will be driving a serial LCD or a parallel one. Serial LCDs only use 2 wires (SDA/SCL), while parallel ones use 2 or 3 wires for the control signals (E, RS, sometimes RW), and 4 or 8 for the data. Use 0 here for a 8 bits parallel LCD, and 1 for a serial LCD. config PANEL_LCD_PIN_E depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" int "Parallel port pin number & polarity connected to the LCD E signal (-17...17) " range -17 17 default 14 ---help--- This describes the number of the parallel port pin to which the LCD 'E' signal has been connected. It can be : 0 : no connection (eg: connected to ground) 1..17 : directly connected to any of these pins on the DB25 plug -1..-17 : connected to the same pin through an inverter (eg: transistor). Default for the 'E' pin in custom profile is '14' (AUTOFEED). config PANEL_LCD_PIN_RS depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" int "Parallel port pin number & polarity connected to the LCD RS signal (-17...17) " range -17 17 default 17 ---help--- This describes the number of the parallel port pin to which the LCD 'RS' signal has been connected. It can be : 0 : no connection (eg: connected to ground) 1..17 : directly connected to any of these pins on the DB25 plug -1..-17 : connected to the same pin through an inverter (eg: transistor). Default for the 'RS' pin in custom profile is '17' (SELECT IN). config PANEL_LCD_PIN_RW depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO="0" int "Parallel port pin number & polarity connected to the LCD RW signal (-17...17) " range -17 17 default 16 ---help--- This describes the number of the parallel port pin to which the LCD 'RW' signal has been connected. It can be : 0 : no connection (eg: connected to ground) 1..17 : directly connected to any of these pins on the DB25 plug -1..-17 : connected to the same pin through an inverter (eg: transistor). Default for the 'RW' pin in custom profile is '16' (INIT). config PANEL_LCD_PIN_SCL depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO!="0" int "Parallel port pin number & polarity connected to the LCD SCL signal (-17...17) " range -17 17 default 1 ---help--- This describes the number of the parallel port pin to which the serial LCD 'SCL' signal has been connected. It can be : 0 : no connection (eg: connected to ground) 1..17 : directly connected to any of these pins on the DB25 plug -1..-17 : connected to the same pin through an inverter (eg: transistor). Default for the 'SCL' pin in custom profile is '1' (STROBE). config PANEL_LCD_PIN_SDA depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" && PANEL_LCD_PROTO!="0" int "Parallel port pin number & polarity connected to the LCD SDA signal (-17...17) " range -17 17 default 2 ---help--- This describes the number of the parallel port pin to which the serial LCD 'SDA' signal has been connected. It can be : 0 : no connection (eg: connected to ground) 1..17 : directly connected to any of these pins on the DB25 plug -1..-17 : connected to the same pin through an inverter (eg: transistor). Default for the 'SDA' pin in custom profile is '2' (D0). config PANEL_LCD_PIN_BL depends on PANEL && PANEL_PROFILE="0" && PANEL_LCD="1" int "Parallel port pin number & polarity connected to the LCD backlight signal (-17...17) " range -17 17 default 0 ---help--- This describes the number of the parallel port pin to which the LCD 'BL' signal has been connected. It can be : 0 : no connection (eg: connected to ground) 1..17 : directly connected to any of these pins on the DB25 plug -1..-17 : connected to the same pin through an inverter (eg: transistor). Default for the 'BL' pin in custom profile is '0' (uncontrolled). config PANEL_CHANGE_MESSAGE depends on PANEL bool "Change LCD initialization message ?" default "n" ---help--- This allows you to replace the boot message indicating the kernel version and the driver version with a custom message. This is useful on appliances where a simple 'Starting system' message can be enough to stop a customer from worrying. If you say 'Y' here, you'll be able to choose a message yourself. Otherwise, say 'N' and keep the default message with the version. config PANEL_BOOT_MESSAGE depends on PANEL && PANEL_CHANGE_MESSAGE="y" string "New initialization message" default "" ---help--- This allows you to replace the boot message indicating the kernel version and the driver version with a custom message. This is useful on appliances where a simple 'Starting system' message can be enough to stop a customer from worrying. An empty message will only clear the display at driver init time. Any other printf()-formatted message is valid with newline and escape codes. config DRM_PSB tristate "Intel GMA500 KMS Framebuffer" depends on DRM && PCI && X86 select FB_CFB_COPYAREA select FB_CFB_FILLRECT select FB_CFB_IMAGEBLIT select DRM_KMS_HELPER select DRM_TTM help Say yes for an experimental KMS framebuffer driver for the Intel GMA500 ('Poulsbo') graphics support. config R8187SE tristate "RealTek RTL8187SE Wireless LAN NIC driver" depends on PCI && WLAN depends on m select WIRELESS_EXT select WEXT_PRIV select EEPROM_93CX6 select CRYPTO default N ---help--- If built as a module, it will be called r8187se.ko. config BCM_WIMAX tristate "Beceem BCS200/BCS220-3 and BCSM250 wimax support" depends on USB && NET && EXPERIMENTAL default N help This is an experimental driver for the Beceem WIMAX chipset used by Sprint 4G. config SOLO6X10 tristate "Softlogic 6x10 MPEG codec cards" depends on PCI && VIDEO_DEV && SND && I2C select VIDEOBUF_DMA_SG select SND_PCM ---help--- This driver supports the Softlogic based MPEG-4 and h.264 codec codec cards. config TRANZPORT tristate "Frontier Tranzport and Alphatrack support" depends on USB default N ---help--- Enable support for the Frontier Tranzport and Alphatrack devices. config CS5535_GPIO tristate "AMD CS5535/CS5536 GPIO (Geode Companion Device)" depends on X86_32 help Note: this driver is DEPRECATED. Please use the cs5535-gpio module in the GPIO section instead (CONFIG_GPIO_CS5535). Give userspace access to the GPIO pins on the AMD CS5535 and CS5536 Geode companion devices. If compiled as a module, it will be called cs5535_gpio. config VIDEO_DT3155 tristate "DT3155 frame grabber, Video4Linux interface" depends on PCI && VIDEO_DEV && VIDEO_V4L2 select VIDEOBUF_DMA_CONTIG default n ---help--- Enables dt3155 device driver for the DataTranslation DT3155 frame grabber. Say Y here if you have this hardware. In doubt, say N. To compile this driver as a module, choose M here: the module will be called dt3155v4l. config DT3155_CCIR bool "Selects CCIR/50Hz vertical refresh" depends on VIDEO_DT3155 default y ---help--- Select it for CCIR/50Hz (European region), or leave it unselected for RS-170/60Hz (North America). # # VME configuration. # menuconfig VME_BUS tristate "VME bridge support" depends on PCI ---help--- If you say Y here you get support for the VME bridge Framework. if VME_BUS source "drivers/staging/vme/bridges/Kconfig" source "drivers/staging/vme/devices/Kconfig" source "drivers/staging/vme/boards/Kconfig" endif # VME comment "VME Device Drivers" config VME_USER tristate "VME user space access driver" help If you say Y here you want to be able to access a limited number of VME windows in a manner at least semi-compatible with the interface provided with the original driver at http://vmelinux.org/. comment "VME Board Drivers" config VMIVME_7805 tristate "VMIVME-7805" help If you say Y here you get support for the VMIVME-7805 board. This board has an additional control interface to the Universe II chip. This driver has to be included if you want to access VME bus with VMIVME-7805 board. comment "VME Bridge Drivers" config VME_CA91CX42 tristate "Universe II" depends on VIRT_TO_BUS help If you say Y here you get support for the Tundra CA91C142 (Universe II) VME bridge chip. config VME_TSI148 tristate "Tempe" depends on VIRT_TO_BUS help If you say Y here you get support for the Tundra TSI148 VME bridge chip. config VT6655 tristate "VIA Technologies VT6655 support" depends on PCI && WLAN && m select WIRELESS_EXT select WEXT_PRIV ---help--- This is a vendor-written driver for VIA VT6655. config SND_INTEL_SST tristate "Intel SST (LPE) Driver" depends on X86 && INTEL_SCU_IPC default n help Say Y here to include support for the Intel(R) MID SST DSP driver On other PC platforms if you are unsure answer 'N' config SND_INTELMID tristate "Intel MID sound card driver" depends on SOUND && SND select SND_PCM select SND_SEQUENCER select SND_JACK depends on SND_INTEL_SST default n help Say Y here to include support for the Intel(R) MID sound card driver On other PC platforms if you are unsure answer 'N' config SBE_2T3E3 tristate "SBE wanPMC-2T3E3 support" depends on HDLC && PCI help Driver for wanPMC-2T3E3 cards by SBE Inc. If you have such a card, say Y here and see . To compile this as a module, choose M here: the module will be called sbe-2t3e3. If unsure, say N. config HYPERV tristate "Microsoft Hyper-V client drivers" depends on X86 && m default n help Select this option to run Linux as a Hyper-V client operating system. if HYPERV config HYPERV_STORAGE tristate "Microsoft Hyper-V virtual storage driver" depends on SCSI default HYPERV help Select this option to enable the Hyper-V virtual storage driver. config HYPERV_BLOCK tristate "Microsoft Hyper-V virtual block driver" depends on BLOCK && SCSI && (LBDAF || 64BIT) default HYPERV help Select this option to enable the Hyper-V virtual block driver. config HYPERV_NET tristate "Microsoft Hyper-V virtual network driver" depends on NET default HYPERV help Select this option to enable the Hyper-V virtual network driver. config HYPERV_UTILS tristate "Microsoft Hyper-V Utilities driver" depends on CONNECTOR default HYPERV help Select this option to enable the Hyper-V Utilities. config HYPERV_MOUSE tristate "Microsoft Hyper-V mouse driver" depends on HID default HYPERV help Select this option to enable the Hyper-V mouse driver. endif config CRYSTALHD tristate "Broadcom Crystal HD video decoder support" depends on PCI default n help Support for the Broadcom Crystal HD video decoder chipset menuconfig LINE6_USB tristate "Line6 USB support" depends on USB && SND select SND_RAWMIDI select SND_PCM help This is a driver for the guitar amp, cab, and effects modeller PODxt Pro by Line6 (and similar devices), supporting the following features: * Reading/writing individual parameters * Reading/writing complete channel, effects setup, and amp setup data * Channel switching * Virtual MIDI interface * Tuner access * Playback/capture/mixer device for any ALSA-compatible PCM audio application * Signal routing (record clean/processed guitar signal, re-amping) Preliminary support for the Variax Workbench and TonePort devices is included. if LINE6_USB config LINE6_USB_DEBUG bool "print debug messages" default n help Say Y here to write debug messages to the syslog. If unsure, say N. config LINE6_USB_DUMP_CTRL bool "dump control messages" default n help Say Y here to write control messages sent to and received from Line6 devices to the syslog. If unsure, say N. config LINE6_USB_DUMP_MIDI bool "dump MIDI messages" default n help Say Y here to write MIDI messages sent to and received from Line6 devices to the syslog. If unsure, say N. config LINE6_USB_DUMP_PCM bool "dump PCM data" default n help Say Y here to write PCM data sent to and received from Line6 devices to the syslog. This will produce a huge amount of syslog data during playback and capture. If unsure, say N. config LINE6_USB_RAW bool "raw data communication" default n help Say Y here to create special files which allow to send raw data to the device. This bypasses any sanity checks, so if you discover the code to erase the firmware, feel free to render your device useless, but only after reading the GPL section "NO WARRANTY". If unsure, say N. config LINE6_USB_IMPULSE_RESPONSE bool "measure impulse response" default n help Say Y here to add code to measure the impulse response of a Line6 device. This is more accurate than user-space methods since it bypasses any PCM data buffering (e.g., by ALSA or jack). This is useful for assessing the performance of new devices, but is not required for normal operation. If unsure, say N. endif # LINE6_USB config RT2860 tristate "Ralink 2860/3090 wireless support" depends on PCI && X86 && WLAN select WIRELESS_EXT select WEXT_PRIV select CRC_CCITT select FW_LOADER ---help--- This is an experimental driver for the Ralink 2860 and 3090 wireless chips. config VIDEO_TM6000 tristate "TV Master TM5600/6000/6010 driver" depends on VIDEO_DEV && I2C && INPUT && RC_CORE && USB && EXPERIMENTAL select VIDEO_TUNER select MEDIA_TUNER_XC2028 select MEDIA_TUNER_XC5000 select VIDEOBUF_VMALLOC help Support for TM5600/TM6000/TM6010 USB Device Since these cards have no MPEG decoder onboard, they transmit only compressed MPEG data over the usb bus, so you need an external software decoder to watch TV on your computer. Say Y if you own such a device and want to use it. config VIDEO_TM6000_ALSA tristate "TV Master TM5600/6000/6010 audio support" depends on VIDEO_TM6000 && SND && EXPERIMENTAL select SND_PCM ---help--- This is a video4linux driver for direct (DMA) audio for TM5600/TM6000/TM6010 USB Devices. To compile this driver as a module, choose M here: the module will be called tm6000-alsa. config VIDEO_TM6000_DVB tristate "DVB Support for tm6000 based TV cards" depends on VIDEO_TM6000 && DVB_CORE && USB && EXPERIMENTAL select DVB_ZL10353 ---help--- This adds support for DVB cards based on the tm5600/tm6000 chip. config ZCACHE tristate "Dynamic compression of swap pages and clean pagecache pages" depends on CLEANCACHE || FRONTSWAP select XVMALLOC select LZO_COMPRESS select LZO_DECOMPRESS default n help Zcache doubles RAM efficiency while providing a significant performance boosts on many workloads. Zcache uses lzo1x compression and an in-kernel implementation of transcendent memory to store clean page cache pages and swap in RAM, providing a noticeable reduction in disk I/O. # # DSP Bridge Driver Support # menuconfig TIDSPBRIDGE tristate "DSP Bridge driver" depends on ARCH_OMAP3 select OMAP_MBOX_FWK help DSP/BIOS Bridge is designed for platforms that contain a GPP and one or more attached DSPs. The GPP is considered the master or "host" processor, and the attached DSPs are processing resources that can be utilized by applications and drivers running on the GPP. This driver depends on OMAP Mailbox (OMAP_MBOX_FWK). config TIDSPBRIDGE_DVFS bool "Enable Bridge Dynamic Voltage and Frequency Scaling (DVFS)" depends on TIDSPBRIDGE && OMAP_PM_SRF && CPU_FREQ help DVFS allows DSP Bridge to initiate the operating point change to scale the chip voltage and frequency in order to match the performance and power consumption to the current processing requirements. config TIDSPBRIDGE_MEMPOOL_SIZE hex "Physical memory pool size (Byte)" depends on TIDSPBRIDGE default 0x600000 help Allocate specified size of memory at booting time to avoid allocation failure under heavy memory fragmentation after some use time. config TIDSPBRIDGE_DEBUG bool "Debug Support" depends on TIDSPBRIDGE help Say Y to enable Bridge debugging capabilities config TIDSPBRIDGE_RECOVERY bool "Recovery Support" depends on TIDSPBRIDGE default y help In case of DSP fatal error, BRIDGE driver will try to recover itself. config TIDSPBRIDGE_CACHE_LINE_CHECK bool "Check buffers to be 128 byte aligned" depends on TIDSPBRIDGE help When the DSP processes data, the DSP cache controller loads 128-Byte chunks (lines) from SDRAM and writes the data back in 128-Byte chunks. If a DMM buffer does not start and end on a 128-Byte boundary, the data preceding the start address (SA) from the 128-Byte boundary to the SA and the data at addresses trailing the end address (EA) from the EA to the next 128-Byte boundary will be loaded and written back as well. This can lead to heap corruption. Say Y, to enforce the check for 128 byte alignment, buffers failing this check will be rejected. config TIDSPBRIDGE_WDT3 bool "Enable watchdog timer" depends on TIDSPBRIDGE help WTD3 is managed by DSP and once it is enabled, DSP side bridge is in charge of refreshing the timer before overflow, if the DSP hangs MPU will caught the interrupt and try to recover DSP. config TIDSPBRIDGE_WDT_TIMEOUT int "Watchdog timer timeout (in secs)" depends on TIDSPBRIDGE && TIDSPBRIDGE_WDT3 default 5 help Watchdog timer timeout value, after that time if the watchdog timer counter is not reset the wdt overflow interrupt will be triggered config TIDSPBRIDGE_NTFY_PWRERR bool "Notify power errors" depends on TIDSPBRIDGE help Enable notifications to registered clients on the event of power errror trying to suspend bridge driver. Say Y, to signal this event as a fatal error, this will require a bridge restart to recover. config TIDSPBRIDGE_BACKTRACE bool "Dump backtraces on fatal errors" depends on TIDSPBRIDGE help Enable useful information to backtrace fatal errors. Say Y if you want to dump information for testing purposes. config STALLION tristate "Stallion EasyIO or EC8/32 support" depends on STALDRV && (ISA || EISA || PCI) help If you have an EasyIO or EasyConnection 8/32 multiport Stallion card, then this is for you; say Y. Make sure to read . To compile this driver as a module, choose M here: the module will be called stallion. config ISTALLION tristate "Stallion EC8/64, ONboard, Brumby support" depends on STALDRV && (ISA || EISA || PCI) help If you have an EasyConnection 8/64, ONboard, Brumby or Stallion serial multiport card, say Y here. Make sure to read . To compile this driver as a module, choose M here: the module will be called istallion. config DIGIEPCA tristate "Digiboard Intelligent Async Support" depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI) ---help--- This is a driver for Digi International's Xx, Xeve, and Xem series of cards which provide multiple serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. This driver supports the original PC (ISA) boards as well as PCI, and EISA. If you have a card like this, say Y here and read the file . To compile this driver as a module, choose M here: the module will be called epca. config RISCOM8 tristate "SDL RISCom/8 card support" depends on SERIAL_NONSTANDARD help This is a driver for the SDL Communications RISCom/8 multiport card, which gives you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you have a card like that, say Y here and read the file . Also it's possible to say M here and compile this driver as kernel loadable module; the module will be called riscom8. config SPECIALIX tristate "Specialix IO8+ card support" depends on SERIAL_NONSTANDARD help This is a driver for the Specialix IO8+ multiport card (both the ISA and the PCI version) which gives you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you have a card like that, say Y here and read the file . Also it's possible to say M here and compile this driver as kernel loadable module which will be called specialix. config COMPUTONE tristate "Computone IntelliPort Plus serial support" depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI) ---help--- This driver supports the entire family of Intelliport II/Plus controllers with the exception of the MicroChannel controllers and products previous to the Intelliport II. These are multiport cards, which give you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you have a card like that, say Y here and read . To compile this driver as module, choose M here: the module will be called ip2. config SERIAL167 bool "CD2401 support for MVME166/7 serial ports" depends on MVME16x help This is the driver for the serial ports on the Motorola MVME166, 167, and 172 boards. Everyone using one of these boards should say Y here. config EASYCAP tristate "EasyCAP USB ID 05e1:0408 support" depends on USB && VIDEO_DEV && (SND || SOUND_OSS_CORE) ---help--- This is an integrated audio/video driver for EasyCAP cards with USB ID 05e1:0408. It supports two hardware variants: * EasyCAP USB 2.0 Video Adapter with Audio, Model DC60, having input cables labelled CVBS, S-VIDEO, AUDIO(L), AUDIO(R) * EasyCAP002 4-Channel USB 2.0 DVR, having input cables labelled 1, 2, 3, 4 and an unlabelled input cable for a microphone. To compile this driver as a module, choose M here: the module will be called easycap choice prompt "Sound Interface" depends on EASYCAP default EASYCAP_SND ---help--- config EASYCAP_SND bool "ALSA" depends on SND select SND_PCM ---help--- Say 'Y' if you want to use ALSA interface This will disable Open Sound System (OSS) binding. config EASYCAP_OSS bool "OSS (DEPRECATED)" depends on SOUND_OSS_CORE ---help--- Say 'Y' if you prefer Open Sound System (OSS) interface This will disable Advanced Linux Sound Architecture (ALSA) binding. Once binding to ALSA interface will be stable this option will be removed. endchoice config EASYCAP_DEBUG bool "Enable EasyCAP driver debugging" depends on EASYCAP ---help--- This option enables debug printouts To enable debug, pass the debug level to the debug module parameter: modprobe easycap debug=[0..9] # # Hardware monitoring chip drivers configuration # menuconfig HWMON tristate "Hardware Monitoring support" depends on HAS_IOMEM default y help Hardware monitoring devices let you monitor the hardware health of a system. Most modern motherboards include such a device. It can include temperature sensors, voltage sensors, fan speed sensors and various additional features such as the ability to control the speed of the fans. If you want this support you should say Y here and also to the specific driver(s) for your sensors chip(s) below. To find out which specific driver(s) you need, use the sensors-detect script from the lm_sensors package. Read for details. This support can also be built as a module. If so, the module will be called hwmon. if HWMON config HWMON_VID tristate default n config HWMON_DEBUG_CHIP bool "Hardware Monitoring Chip debugging messages" default n help Say Y here if you want the I2C chip drivers to produce a bunch of debug messages to the system log. Select this if you are having a problem with I2C support and want to see more of what is going on. comment "Native drivers" config SENSORS_ABITUGURU tristate "Abit uGuru (rev 1 & 2)" depends on X86 && EXPERIMENTAL help If you say yes here you get support for the sensor part of the first and second revision of the Abit uGuru chip. The voltage and frequency control parts of the Abit uGuru are not supported. The Abit uGuru chip can be found on Abit uGuru featuring motherboards (most modern Abit motherboards from before end 2005). For more info and a list of which motherboards have which revision see Documentation/hwmon/abituguru This driver can also be built as a module. If so, the module will be called abituguru. config SENSORS_ABITUGURU3 tristate "Abit uGuru (rev 3)" depends on X86 && EXPERIMENTAL help If you say yes here you get support for the sensor part of the third revision of the Abit uGuru chip. Only reading the sensors and their settings is supported. The third revision of the Abit uGuru chip can be found on recent Abit motherboards (since end 2005). For more info and a list of which motherboards have which revision see Documentation/hwmon/abituguru3 This driver can also be built as a module. If so, the module will be called abituguru3. config SENSORS_AD7414 tristate "Analog Devices AD7414" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Analog Devices AD7414 temperature monitoring chip. This driver can also be built as a module. If so, the module will be called ad7414. config SENSORS_AD7418 tristate "Analog Devices AD7416, AD7417 and AD7418" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Analog Devices AD7416, AD7417 and AD7418 temperature monitoring chips. This driver can also be built as a module. If so, the module will be called ad7418. config SENSORS_ADCXX tristate "National Semiconductor ADCxxxSxxx" depends on SPI_MASTER && EXPERIMENTAL help If you say yes here you get support for the National Semiconductor ADCS chip family, where * bb is the resolution in number of bits (8, 10, 12) * c is the number of channels (1, 2, 4, 8) * sss is the maximum conversion speed (021 for 200 kSPS, 051 for 500 kSPS and 101 for 1 MSPS) Examples : ADC081S101, ADC124S501, ... This driver can also be built as a module. If so, the module will be called adcxx. config SENSORS_ADM1021 tristate "Analog Devices ADM1021 and compatibles" depends on I2C help If you say yes here you get support for Analog Devices ADM1021 and ADM1023 sensor chips and clones: Maxim MAX1617 and MAX1617A, Genesys Logic GL523SM, National Semiconductor LM84 and TI THMC10. This driver can also be built as a module. If so, the module will be called adm1021. config SENSORS_ADM1025 tristate "Analog Devices ADM1025 and compatibles" depends on I2C select HWMON_VID help If you say yes here you get support for Analog Devices ADM1025 and Philips NE1619 sensor chips. This driver can also be built as a module. If so, the module will be called adm1025. config SENSORS_ADM1026 tristate "Analog Devices ADM1026 and compatibles" depends on I2C select HWMON_VID help If you say yes here you get support for Analog Devices ADM1026 sensor chip. This driver can also be built as a module. If so, the module will be called adm1026. config SENSORS_ADM1029 tristate "Analog Devices ADM1029" depends on I2C help If you say yes here you get support for Analog Devices ADM1029 sensor chip. Very rare chip, please let us know you use it. This driver can also be built as a module. If so, the module will be called adm1029. config SENSORS_ADM1031 tristate "Analog Devices ADM1031 and compatibles" depends on I2C help If you say yes here you get support for Analog Devices ADM1031 and ADM1030 sensor chips. This driver can also be built as a module. If so, the module will be called adm1031. config SENSORS_ADM9240 tristate "Analog Devices ADM9240 and compatibles" depends on I2C select HWMON_VID help If you say yes here you get support for Analog Devices ADM9240, Dallas DS1780, National Semiconductor LM81 sensor chips. This driver can also be built as a module. If so, the module will be called adm9240. config SENSORS_ADT7411 tristate "Analog Devices ADT7411" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Analog Devices ADT7411 voltage and temperature monitoring chip. This driver can also be built as a module. If so, the module will be called adt7411. config SENSORS_ADT7462 tristate "Analog Devices ADT7462" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Analog Devices ADT7462 temperature monitoring chips. This driver can also be built as a module. If so, the module will be called adt7462. config SENSORS_ADT7470 tristate "Analog Devices ADT7470" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Analog Devices ADT7470 temperature monitoring chips. This driver can also be built as a module. If so, the module will be called adt7470. config SENSORS_ADT7475 tristate "Analog Devices ADT7473, ADT7475, ADT7476 and ADT7490" depends on I2C select HWMON_VID help If you say yes here you get support for the Analog Devices ADT7473, ADT7475, ADT7476 and ADT7490 hardware monitoring chips. This driver can also be build as a module. If so, the module will be called adt7475. config SENSORS_ASC7621 tristate "Andigilog aSC7621" depends on HWMON && I2C help If you say yes here you get support for the aSC7621 family of SMBus sensors chip found on most Intel X38, X48, X58, 945, 965 and 975 desktop boards. Currently supported chips: aSC7621 aSC7621a This driver can also be built as a module. If so, the module will be called asc7621. config SENSORS_K8TEMP tristate "AMD Athlon64/FX or Opteron temperature sensor" depends on X86 && PCI && EXPERIMENTAL help If you say yes here you get support for the temperature sensor(s) inside your CPU. Supported is whole AMD K8 microarchitecture. Please note that you will need at least lm-sensors 2.10.1 for proper userspace support. This driver can also be built as a module. If so, the module will be called k8temp. config SENSORS_K10TEMP tristate "AMD Family 10h/11h/12h/14h temperature sensor" depends on X86 && PCI help If you say yes here you get support for the temperature sensor(s) inside your CPU. Supported are later revisions of the AMD Family 10h and all revisions of the AMD Family 11h, 12h (Llano), and 14h (Brazos) microarchitectures. This driver can also be built as a module. If so, the module will be called k10temp. config SENSORS_ASB100 tristate "Asus ASB100 Bach" depends on X86 && I2C && EXPERIMENTAL select HWMON_VID help If you say yes here you get support for the ASB100 Bach sensor chip found on some Asus mainboards. This driver can also be built as a module. If so, the module will be called asb100. config SENSORS_ATXP1 tristate "Attansic ATXP1 VID controller" depends on I2C && EXPERIMENTAL select HWMON_VID help If you say yes here you get support for the Attansic ATXP1 VID controller. If your board have such a chip, you are able to control your CPU core and other voltages. This driver can also be built as a module. If so, the module will be called atxp1. config SENSORS_DS620 tristate "Dallas Semiconductor DS620" depends on I2C help If you say yes here you get support for Dallas Semiconductor DS620 sensor chip. This driver can also be built as a module. If so, the module will be called ds620. config SENSORS_DS1621 tristate "Dallas Semiconductor DS1621 and DS1625" depends on I2C help If you say yes here you get support for Dallas Semiconductor DS1621 and DS1625 sensor chips. This driver can also be built as a module. If so, the module will be called ds1621. config SENSORS_I5K_AMB tristate "FB-DIMM AMB temperature sensor on Intel 5000 series chipsets" depends on PCI && EXPERIMENTAL help If you say yes here you get support for FB-DIMM AMB temperature monitoring chips on systems with the Intel 5000 series chipset. This driver can also be built as a module. If so, the module will be called i5k_amb. config SENSORS_F71805F tristate "Fintek F71805F/FG, F71806F/FG and F71872F/FG" help If you say yes here you get support for hardware monitoring features of the Fintek F71805F/FG, F71806F/FG and F71872F/FG Super-I/O chips. This driver can also be built as a module. If so, the module will be called f71805f. config SENSORS_F71882FG tristate "Fintek F71882FG and compatibles" help If you say yes here you get support for hardware monitoring features of many Fintek Super-I/O (LPC) chips. The currently supported chips are: F71808E F71858FG F71862FG F71863FG F71869F/E F71882FG F71883FG F71889FG/ED/A F8000 F81801U F81865F This driver can also be built as a module. If so, the module will be called f71882fg. config SENSORS_F75375S tristate "Fintek F75375S/SP and F75373" depends on I2C help If you say yes here you get support for hardware monitoring features of the Fintek F75375S/SP and F75373 This driver can also be built as a module. If so, the module will be called f75375s. config SENSORS_FSCHMD tristate "Fujitsu Siemens Computers sensor chips" depends on X86 && I2C help If you say yes here you get support for the following Fujitsu Siemens Computers (FSC) sensor chips: Poseidon, Scylla, Hermes, Heimdall, Heracles, Hades and Syleus including support for the integrated watchdog. This is a merged driver for FSC sensor chips replacing the fscpos, fscscy and fscher drivers and adding support for several other FSC sensor chips. This driver can also be built as a module. If so, the module will be called fschmd. config SENSORS_G760A tristate "GMT G760A" depends on I2C help If you say yes here you get support for Global Mixed-mode Technology Inc G760A fan speed PWM controller chips. This driver can also be built as a module. If so, the module will be called g760a. config SENSORS_GL518SM tristate "Genesys Logic GL518SM" depends on I2C help If you say yes here you get support for Genesys Logic GL518SM sensor chips. This driver can also be built as a module. If so, the module will be called gl518sm. config SENSORS_GL520SM tristate "Genesys Logic GL520SM" depends on I2C select HWMON_VID help If you say yes here you get support for Genesys Logic GL520SM sensor chips. This driver can also be built as a module. If so, the module will be called gl520sm. config SENSORS_GPIO_FAN tristate "GPIO fan" depends on GENERIC_GPIO help If you say yes here you get support for fans connected to GPIO lines. This driver can also be built as a module. If so, the module will be called gpio-fan. config SENSORS_CORETEMP tristate "Intel Core/Core2/Atom temperature sensor" depends on X86 && PCI && EXPERIMENTAL help If you say yes here you get support for the temperature sensor inside your CPU. Most of the family 6 CPUs are supported. Check Documentation/hwmon/coretemp for details. config SENSORS_PKGTEMP tristate "Intel processor package temperature sensor" depends on X86 && EXPERIMENTAL help If you say yes here you get support for the package level temperature sensor inside your CPU. Check documentation/driver for details. config SENSORS_IBMAEM tristate "IBM Active Energy Manager temperature/power sensors and control" select IPMI_SI depends on IPMI_HANDLER help If you say yes here you get support for the temperature and power sensors and capping hardware in various IBM System X servers that support Active Energy Manager. This includes the x3350, x3550, x3650, x3655, x3755, x3850 M2, x3950 M2, and certain HC10/HS2x/LS2x/QS2x blades. This driver can also be built as a module. If so, the module will be called ibmaem. config SENSORS_IBMPEX tristate "IBM PowerExecutive temperature/power sensors" select IPMI_SI depends on IPMI_HANDLER help If you say yes here you get support for the temperature and power sensors in various IBM System X servers that support PowerExecutive. So far this includes the x3350, x3550, x3650, x3655, and x3755; the x3800, x3850, and x3950 models that have PCI Express; and some of the HS2x, LS2x, and QS2x blades. This driver can also be built as a module. If so, the module will be called ibmpex. config SENSORS_IT87 tristate "ITE IT87xx and compatibles" select HWMON_VID help If you say yes here you get support for ITE IT8705F, IT8712F, IT8716F, IT8718F, IT8720F, IT8721F, IT8726F and IT8758E sensor chips, and the SiS960 clone. This driver can also be built as a module. If so, the module will be called it87. config SENSORS_JZ4740 tristate "Ingenic JZ4740 SoC ADC driver" depends on MACH_JZ4740 && MFD_JZ4740_ADC help If you say yes here you get support for reading adc values from the ADCIN pin on Ingenic JZ4740 SoC based boards. This driver can also be build as a module. If so, the module will be called jz4740-hwmon. config SENSORS_JC42 tristate "JEDEC JC42.4 compliant memory module temperature sensors" depends on I2C help If you say yes here, you get support for JEDEC JC42.4 compliant temperature sensors, which are used on many DDR3 memory modules for mobile devices and servers. Support will include, but not be limited to, ADT7408, CAT34TS02, CAT6095, MAX6604, MCP9805, MCP98242, MCP98243, MCP9843, SE97, SE98, STTS424(E), TSE2002B3, and TS3000B3. This driver can also be built as a module. If so, the module will be called jc42. config SENSORS_LINEAGE tristate "Lineage Compact Power Line Power Entry Module" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Lineage Compact Power Line series of DC/DC and AC/DC converters such as CP1800, CP2000AC, CP2000DC, CP2725, and others. This driver can also be built as a module. If so, the module will be called lineage-pem. config SENSORS_LM63 tristate "National Semiconductor LM63 and LM64" depends on I2C help If you say yes here you get support for the National Semiconductor LM63 and LM64 remote diode digital temperature sensors with integrated fan control. Such chips are found on the Tyan S4882 (Thunder K8QS Pro) motherboard, among others. This driver can also be built as a module. If so, the module will be called lm63. config SENSORS_LM70 tristate "National Semiconductor LM70 / Texas Instruments TMP121" depends on SPI_MASTER help If you say yes here you get support for the National Semiconductor LM70 and Texas Instruments TMP121/TMP123 digital temperature sensor chips. This driver can also be built as a module. If so, the module will be called lm70. config SENSORS_LM73 tristate "National Semiconductor LM73" depends on I2C help If you say yes here you get support for National Semiconductor LM73 sensor chips. This driver can also be built as a module. If so, the module will be called lm73. config SENSORS_LM75 tristate "National Semiconductor LM75 and compatibles" depends on I2C help If you say yes here you get support for one common type of temperature sensor chip, with models including: - Dallas Semiconductor DS75 and DS1775 - Maxim MAX6625 and MAX6626 - Microchip MCP980x - National Semiconductor LM75, LM75A - NXP's LM75A - ST Microelectronics STDS75 - TelCom (now Microchip) TCN75 - Texas Instruments TMP100, TMP101, TMP105, TMP75, TMP175, TMP275 This driver supports driver model based binding through board specific I2C device tables. It also supports the "legacy" style of driver binding. To use that with some chips which don't replicate LM75 quirks exactly, you may need the "force" module parameter. This driver can also be built as a module. If so, the module will be called lm75. config SENSORS_LM77 tristate "National Semiconductor LM77" depends on I2C help If you say yes here you get support for National Semiconductor LM77 sensor chips. This driver can also be built as a module. If so, the module will be called lm77. config SENSORS_LM78 tristate "National Semiconductor LM78 and compatibles" depends on I2C select HWMON_VID help If you say yes here you get support for National Semiconductor LM78, LM78-J and LM79. This driver can also be built as a module. If so, the module will be called lm78. config SENSORS_LM80 tristate "National Semiconductor LM80" depends on I2C help If you say yes here you get support for National Semiconductor LM80 sensor chips. This driver can also be built as a module. If so, the module will be called lm80. config SENSORS_LM83 tristate "National Semiconductor LM83 and compatibles" depends on I2C help If you say yes here you get support for National Semiconductor LM82 and LM83 sensor chips. This driver can also be built as a module. If so, the module will be called lm83. config SENSORS_LM85 tristate "National Semiconductor LM85 and compatibles" depends on I2C select HWMON_VID help If you say yes here you get support for National Semiconductor LM85 sensor chips and clones: ADM1027, ADT7463, ADT7468, EMC6D100, EMC6D101, EMC6D102, and EMC6D103. This driver can also be built as a module. If so, the module will be called lm85. config SENSORS_LM87 tristate "National Semiconductor LM87 and compatibles" depends on I2C select HWMON_VID help If you say yes here you get support for National Semiconductor LM87 and Analog Devices ADM1024 sensor chips. This driver can also be built as a module. If so, the module will be called lm87. config SENSORS_LM90 tristate "National Semiconductor LM90 and compatibles" depends on I2C help If you say yes here you get support for National Semiconductor LM90, LM86, LM89 and LM99, Analog Devices ADM1032, ADT7461, and ADT7461A, Maxim MAX6646, MAX6647, MAX6648, MAX6649, MAX6657, MAX6658, MAX6659, MAX6680, MAX6681, MAX6692, MAX6695, MAX6696, ON Semiconductor NCT1008, and Winbond/Nuvoton W83L771W/G/AWG/ASG sensor chips. This driver can also be built as a module. If so, the module will be called lm90. config SENSORS_LM92 tristate "National Semiconductor LM92 and compatibles" depends on I2C help If you say yes here you get support for National Semiconductor LM92 and Maxim MAX6635 sensor chips. This driver can also be built as a module. If so, the module will be called lm92. config SENSORS_LM93 tristate "National Semiconductor LM93 and compatibles" depends on I2C select HWMON_VID help If you say yes here you get support for National Semiconductor LM93, LM94, and compatible sensor chips. This driver can also be built as a module. If so, the module will be called lm93. config SENSORS_LTC4151 tristate "Linear Technology LTC4151" depends on I2C default n help If you say yes here you get support for Linear Technology LTC4151 High Voltage I2C Current and Voltage Monitor interface. This driver can also be built as a module. If so, the module will be called ltc4151. config SENSORS_LTC4215 tristate "Linear Technology LTC4215" depends on I2C && EXPERIMENTAL default n help If you say yes here you get support for Linear Technology LTC4215 Hot Swap Controller I2C interface. This driver can also be built as a module. If so, the module will be called ltc4215. config SENSORS_LTC4245 tristate "Linear Technology LTC4245" depends on I2C && EXPERIMENTAL default n help If you say yes here you get support for Linear Technology LTC4245 Multiple Supply Hot Swap Controller I2C interface. This driver can also be built as a module. If so, the module will be called ltc4245. config SENSORS_LTC4261 tristate "Linear Technology LTC4261" depends on I2C && EXPERIMENTAL default n help If you say yes here you get support for Linear Technology LTC4261 Negative Voltage Hot Swap Controller I2C interface. This driver can also be built as a module. If so, the module will be called ltc4261. config SENSORS_LM95241 tristate "National Semiconductor LM95241 sensor chip" depends on I2C help If you say yes here you get support for LM95241 sensor chip. This driver can also be built as a module. If so, the module will be called lm95241. config SENSORS_MAX1111 tristate "Maxim MAX1111 Multichannel, Serial 8-bit ADC chip" depends on SPI_MASTER help Say y here to support Maxim's MAX1111 ADC chips. This driver can also be built as a module. If so, the module will be called max1111. config SENSORS_MAX1619 tristate "Maxim MAX1619 sensor chip" depends on I2C help If you say yes here you get support for MAX1619 sensor chip. This driver can also be built as a module. If so, the module will be called max1619. config SENSORS_MAX6639 tristate "Maxim MAX6639 sensor chip" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the MAX6639 sensor chips. This driver can also be built as a module. If so, the module will be called max6639. config SENSORS_MAX6650 tristate "Maxim MAX6650 sensor chip" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the MAX6650 / MAX6651 sensor chips. This driver can also be built as a module. If so, the module will be called max6650. config SENSORS_PC87360 tristate "National Semiconductor PC87360 family" select HWMON_VID help If you say yes here you get access to the hardware monitoring functions of the National Semiconductor PC8736x Super-I/O chips. The PC87360, PC87363 and PC87364 only have fan monitoring and control. The PC87365 and PC87366 additionally have voltage and temperature monitoring. This driver can also be built as a module. If so, the module will be called pc87360. config SENSORS_PC87427 tristate "National Semiconductor PC87427" help If you say yes here you get access to the hardware monitoring functions of the National Semiconductor PC87427 Super-I/O chip. The chip has two distinct logical devices, one for fan speed monitoring and control, and one for voltage and temperature monitoring. Fan speed monitoring and control are supported, as well as temperature monitoring. Voltages aren't supported yet. This driver can also be built as a module. If so, the module will be called pc87427. config SENSORS_PCF8591 tristate "Philips PCF8591 ADC/DAC" depends on I2C default n help If you say yes here you get support for Philips PCF8591 4-channel ADC, 1-channel DAC chips. This driver can also be built as a module. If so, the module will be called pcf8591. These devices are hard to detect and rarely found on mainstream hardware. If unsure, say N. config PMBUS tristate "PMBus support" depends on I2C && EXPERIMENTAL default n help Say yes here if you want to enable PMBus support. This driver can also be built as a module. If so, the module will be called pmbus_core. if PMBUS config SENSORS_PMBUS tristate "Generic PMBus devices" default n help If you say yes here you get hardware monitoring support for generic PMBus devices, including but not limited to BMR450, BMR451, BMR453, BMR454, and LTC2978. This driver can also be built as a module. If so, the module will be called pmbus. config SENSORS_MAX16064 tristate "Maxim MAX16064" default n help If you say yes here you get hardware monitoring support for Maxim MAX16064. This driver can also be built as a module. If so, the module will be called max16064. config SENSORS_MAX34440 tristate "Maxim MAX34440/MAX34441" default n help If you say yes here you get hardware monitoring support for Maxim MAX34440 and MAX34441. This driver can also be built as a module. If so, the module will be called max34440. config SENSORS_MAX8688 tristate "Maxim MAX8688" default n help If you say yes here you get hardware monitoring support for Maxim MAX8688. This driver can also be built as a module. If so, the module will be called max8688. endif # PMBUS config SENSORS_SHT15 tristate "Sensiron humidity and temperature sensors. SHT15 and compat." depends on GENERIC_GPIO help If you say yes here you get support for the Sensiron SHT10, SHT11, SHT15, SHT71, SHT75 humidity and temperature sensors. This driver can also be built as a module. If so, the module will be called sht15. config SENSORS_SHT21 tristate "Sensiron humidity and temperature sensors. SHT21 and compat." depends on I2C help If you say yes here you get support for the Sensiron SHT21, SHT25 humidity and temperature sensors. This driver can also be built as a module. If so, the module will be called sht21. config SENSORS_S3C tristate "Samsung built-in ADC" depends on S3C_ADC help If you say yes here you get support for the on-board ADCs of the Samsung S3C24XX, S3C64XX and other series of SoC This driver can also be built as a module. If so, the module will be called s3c-hwmon. config SENSORS_S3C_RAW bool "Include raw channel attributes in sysfs" depends on SENSORS_S3C help Say Y here if you want to include raw copies of all the ADC channels in sysfs. config SENSORS_SIS5595 tristate "Silicon Integrated Systems Corp. SiS5595" depends on PCI help If you say yes here you get support for the integrated sensors in SiS5595 South Bridges. This driver can also be built as a module. If so, the module will be called sis5595. config SENSORS_SMM665 tristate "Summit Microelectronics SMM665" depends on I2C && EXPERIMENTAL default n help If you say yes here you get support for the hardware monitoring features of the Summit Microelectronics SMM665/SMM665B Six-Channel Active DC Output Controller / Monitor. Other supported chips are SMM465, SMM665C, SMM764, and SMM766. Support for those chips is untested. This driver can also be built as a module. If so, the module will be called smm665. config SENSORS_DME1737 tristate "SMSC DME1737, SCH311x and compatibles" depends on I2C && EXPERIMENTAL select HWMON_VID help If you say yes here you get support for the hardware monitoring and fan control features of the SMSC DME1737, SCH311x, SCH5027, and Asus A8000 Super-I/O chips. This driver can also be built as a module. If so, the module will be called dme1737. config SENSORS_EMC1403 tristate "SMSC EMC1403/23 thermal sensor" depends on I2C help If you say yes here you get support for the SMSC EMC1403/23 temperature monitoring chip. Threshold values can be configured using sysfs. Data from the different diodes are accessible via sysfs. config SENSORS_EMC2103 tristate "SMSC EMC2103" depends on I2C help If you say yes here you get support for the temperature and fan sensors of the SMSC EMC2103 chips. This driver can also be built as a module. If so, the module will be called emc2103. config SENSORS_SMSC47M1 tristate "SMSC LPC47M10x and compatibles" help If you say yes here you get support for the integrated fan monitoring and control capabilities of the SMSC LPC47B27x, LPC47M10x, LPC47M112, LPC47M13x, LPC47M14x, LPC47M15x, LPC47M192, LPC47M292 and LPC47M997 chips. The temperature and voltage sensor features of the LPC47M15x, LPC47M192, LPC47M292 and LPC47M997 are supported by another driver, select also "SMSC LPC47M192 and compatibles" below for those. This driver can also be built as a module. If so, the module will be called smsc47m1. config SENSORS_SMSC47M192 tristate "SMSC LPC47M192 and compatibles" depends on I2C select HWMON_VID help If you say yes here you get support for the temperature and voltage sensors of the SMSC LPC47M192, LPC47M15x, LPC47M292 and LPC47M997 chips. The fan monitoring and control capabilities of these chips are supported by another driver, select "SMSC LPC47M10x and compatibles" above. You need both drivers if you want fan control and voltage/temperature sensor support. This driver can also be built as a module. If so, the module will be called smsc47m192. config SENSORS_SMSC47B397 tristate "SMSC LPC47B397-NC" depends on EXPERIMENTAL help If you say yes here you get support for the SMSC LPC47B397-NC sensor chip. This driver can also be built as a module. If so, the module will be called smsc47b397. config SENSORS_SCH5627 tristate "SMSC SCH5627" help If you say yes here you get support for the hardware monitoring features of the SMSC SCH5627 Super-I/O chip. This driver can also be built as a module. If so, the module will be called sch5627. config SENSORS_ADS1015 tristate "Texas Instruments ADS1015" depends on I2C help If you say yes here you get support for Texas Instruments ADS1015 12-bit 4-input ADC device. This driver can also be built as a module. If so, the module will be called ads1015. config SENSORS_ADS7828 tristate "Texas Instruments ADS7828" depends on I2C help If you say yes here you get support for Texas Instruments ADS7828 12-bit 8-channel ADC device. This driver can also be built as a module. If so, the module will be called ads7828. config SENSORS_ADS7871 tristate "Texas Instruments ADS7871 A/D converter" depends on SPI help If you say yes here you get support for TI ADS7871 & ADS7870 This driver can also be built as a module. If so, the module will be called ads7871. config SENSORS_AMC6821 tristate "Texas Instruments AMC6821" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Texas Instruments AMC6821 hardware monitoring chips. This driver can also be build as a module. If so, the module will be called amc6821. config SENSORS_THMC50 tristate "Texas Instruments THMC50 / Analog Devices ADM1022" depends on I2C help If you say yes here you get support for Texas Instruments THMC50 sensor chips and clones: the Analog Devices ADM1022. This driver can also be built as a module. If so, the module will be called thmc50. config SENSORS_TMP102 tristate "Texas Instruments TMP102" depends on I2C && EXPERIMENTAL help If you say yes here you get support for Texas Instruments TMP102 sensor chips. This driver can also be built as a module. If so, the module will be called tmp102. config SENSORS_TMP401 tristate "Texas Instruments TMP401 and compatibles" depends on I2C && EXPERIMENTAL help If you say yes here you get support for Texas Instruments TMP401 and TMP411 temperature sensor chips. This driver can also be built as a module. If so, the module will be called tmp401. config SENSORS_TMP421 tristate "Texas Instruments TMP421 and compatible" depends on I2C && EXPERIMENTAL help If you say yes here you get support for Texas Instruments TMP421, TMP422 and TMP423 temperature sensor chips. This driver can also be built as a module. If so, the module will be called tmp421. config SENSORS_TWL4030_MADC tristate "Texas Instruments TWL4030 MADC Hwmon" depends on TWL4030_MADC help If you say yes here you get hwmon support for triton TWL4030-MADC. This driver can also be built as a module. If so it will be called twl4030-madc-hwmon. config SENSORS_VIA_CPUTEMP tristate "VIA CPU temperature sensor" depends on X86 help If you say yes here you get support for the temperature sensor inside your CPU. Supported are all known variants of the VIA C7 and Nano. config SENSORS_VIA686A tristate "VIA686A" depends on PCI help If you say yes here you get support for the integrated sensors in Via 686A/B South Bridges. This driver can also be built as a module. If so, the module will be called via686a. config SENSORS_VT1211 tristate "VIA VT1211" select HWMON_VID help If you say yes here then you get support for hardware monitoring features of the VIA VT1211 Super-I/O chip. This driver can also be built as a module. If so, the module will be called vt1211. config SENSORS_VT8231 tristate "VIA VT8231" depends on PCI select HWMON_VID help If you say yes here then you get support for the integrated sensors in the VIA VT8231 device. This driver can also be built as a module. If so, the module will be called vt8231. config SENSORS_W83781D tristate "Winbond W83781D, W83782D, W83783S, Asus AS99127F" depends on I2C select HWMON_VID help If you say yes here you get support for the Winbond W8378x series of sensor chips: the W83781D, W83782D and W83783S, and the similar Asus AS99127F. This driver can also be built as a module. If so, the module will be called w83781d. config SENSORS_W83791D tristate "Winbond W83791D" depends on I2C select HWMON_VID help If you say yes here you get support for the Winbond W83791D chip. This driver can also be built as a module. If so, the module will be called w83791d. config SENSORS_W83792D tristate "Winbond W83792D" depends on I2C help If you say yes here you get support for the Winbond W83792D chip. This driver can also be built as a module. If so, the module will be called w83792d. config SENSORS_W83793 tristate "Winbond W83793" depends on I2C && EXPERIMENTAL select HWMON_VID help If you say yes here you get support for the Winbond W83793 hardware monitoring chip, including support for the integrated watchdog. This driver can also be built as a module. If so, the module will be called w83793. config SENSORS_W83795 tristate "Winbond/Nuvoton W83795G/ADG" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Winbond W83795G and W83795ADG hardware monitoring chip. This driver can also be built as a module. If so, the module will be called w83795. config SENSORS_W83795_FANCTRL boolean "Include fan control support (DANGEROUS)" depends on SENSORS_W83795 && EXPERIMENTAL default n help If you say yes here, support for the both manual and automatic fan control features will be included in the driver. This part of the code wasn't carefully reviewed and tested yet, so enabling this option is strongly discouraged on production servers. Only developers and testers should enable it for the time being. Please also note that this option will create sysfs attribute files which may change in the future, so you shouldn't rely on them being stable. config SENSORS_W83L785TS tristate "Winbond W83L785TS-S" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Winbond W83L785TS-S sensor chip, which is used on the Asus A7N8X, among other motherboards. This driver can also be built as a module. If so, the module will be called w83l785ts. config SENSORS_W83L786NG tristate "Winbond W83L786NG, W83L786NR" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Winbond W83L786NG and W83L786NR sensor chips. This driver can also be built as a module. If so, the module will be called w83l786ng. config SENSORS_W83627HF tristate "Winbond W83627HF, W83627THF, W83637HF, W83687THF, W83697HF" select HWMON_VID help If you say yes here you get support for the Winbond W836X7 series of sensor chips: the W83627HF, W83627THF, W83637HF, W83687THF and W83697HF. This driver can also be built as a module. If so, the module will be called w83627hf. config SENSORS_W83627EHF tristate "Winbond W83627EHF/EHG/DHG, W83667HG, NCT6775F, NCT6776F" select HWMON_VID help If you say yes here you get support for the hardware monitoring functionality of the Winbond W83627EHF Super-I/O chip. This driver also supports the W83627EHG, which is the lead-free version of the W83627EHF, and the W83627DHG, which is a similar chip suited for specific Intel processors that use PECI such as the Core 2 Duo. This driver also supports Nuvoton W83667HG, W83667HG-B, NCT6775F (also known as W83667HG-I), and NCT6776F. This driver can also be built as a module. If so, the module will be called w83627ehf. config SENSORS_WM831X tristate "WM831x PMICs" depends on MFD_WM831X help If you say yes here you get support for the hardware monitoring functionality of the Wolfson Microelectronics WM831x series of PMICs. This driver can also be built as a module. If so, the module will be called wm831x-hwmon. config SENSORS_WM8350 tristate "Wolfson Microelectronics WM835x" depends on MFD_WM8350 help If you say yes here you get support for the hardware monitoring features of the WM835x series of PMICs. This driver can also be built as a module. If so, the module will be called wm8350-hwmon. config SENSORS_ULTRA45 tristate "Sun Ultra45 PIC16F747" depends on SPARC64 help This driver provides support for the Ultra45 workstation environmental sensors. config SENSORS_APPLESMC tristate "Apple SMC (Motion sensor, light sensor, keyboard backlight)" depends on INPUT && X86 select NEW_LEDS select LEDS_CLASS select INPUT_POLLDEV default n help This driver provides support for the Apple System Management Controller, which provides an accelerometer (Apple Sudden Motion Sensor), light sensors, temperature sensors, keyboard backlight control and fan control. Only Intel-based Apple's computers are supported (MacBook Pro, MacBook, MacMini). Data from the different sensors, keyboard backlight control and fan control are accessible via sysfs. This driver also provides an absolute input class device, allowing the laptop to act as a pinball machine-esque joystick. Say Y here if you have an applicable laptop and want to experience the awesome power of applesmc. config SENSORS_MC13783_ADC tristate "Freescale MC13783 ADC" depends on MFD_MC13783 help Support for the A/D converter on MC13783 PMIC. if ACPI comment "ACPI drivers" config SENSORS_ATK0110 tristate "ASUS ATK0110" depends on X86 && EXPERIMENTAL help If you say yes here you get support for the ACPI hardware monitoring interface found in many ASUS motherboards. This driver will provide readings of fans, voltages and temperatures through the system firmware. This driver can also be built as a module. If so, the module will be called asus_atk0110. endif # ACPI endif # HWMON menuconfig POWER_SUPPLY tristate "Power supply class support" help Say Y here to enable power supply class support. This allows power supply (batteries, AC, USB) monitoring by userspace via sysfs and uevent (if available) and/or APM kernel interface (if selected below). if POWER_SUPPLY config POWER_SUPPLY_DEBUG bool "Power supply debug" help Say Y here to enable debugging messages for power supply class and drivers. config BATTERY_PLATFORM tristate "Platform battery driver" help Say Y here to include support for battery driver that gets all information from platform functions. config PDA_POWER tristate "Generic PDA/phone power driver" depends on !S390 help Say Y here to enable generic power driver for PDAs and phones with one or two external power supplies (AC/USB) connected to main and backup batteries, and optional builtin charger. config APM_POWER tristate "APM emulation for class batteries" depends on APM_EMULATION help Say Y here to enable support APM status emulation using battery class devices. config MAX8925_POWER tristate "MAX8925 battery charger support" depends on MFD_MAX8925 help Say Y here to enable support for the battery charger in the Maxim MAX8925 PMIC. config WM831X_BACKUP tristate "WM831X backup battery charger support" depends on MFD_WM831X help Say Y here to enable support for the backup battery charger in the Wolfson Microelectronics WM831x PMICs. config WM831X_POWER tristate "WM831X PMU support" depends on MFD_WM831X help Say Y here to enable support for the power management unit provided by Wolfson Microelectronics WM831x PMICs. config WM8350_POWER tristate "WM8350 PMU support" depends on MFD_WM8350 help Say Y here to enable support for the power management unit provided by the Wolfson Microelectronics WM8350 PMIC. config TEST_POWER tristate "Test power driver" help This driver is used for testing. It's safe to say M here. config BATTERY_DS2760 tristate "DS2760 battery driver (HP iPAQ & others)" depends on W1 && W1_SLAVE_DS2760 help Say Y here to enable support for batteries with ds2760 chip. config BATTERY_DS2782 tristate "DS2782/DS2786 standalone gas-gauge" depends on I2C help Say Y here to enable support for the DS2782/DS2786 standalone battery gas-gauge. config BATTERY_PMU tristate "Apple PMU battery" depends on PPC32 && ADB_PMU help Say Y here to expose battery information on Apple machines through the generic battery class. config BATTERY_OLPC tristate "One Laptop Per Child battery" depends on X86_32 && OLPC help Say Y to enable support for the battery on the OLPC laptop. config BATTERY_TOSA tristate "Sharp SL-6000 (tosa) battery" depends on MACH_TOSA && MFD_TC6393XB && TOUCHSCREEN_WM97XX help Say Y to enable support for the battery on the Sharp Zaurus SL-6000 (tosa) models. config BATTERY_COLLIE tristate "Sharp SL-5500 (collie) battery" depends on SA1100_COLLIE && MCP_UCB1200 help Say Y to enable support for the battery on the Sharp Zaurus SL-5500 (collie) models. config BATTERY_WM97XX bool "WM97xx generic battery driver" depends on TOUCHSCREEN_WM97XX=y help Say Y to enable support for battery measured by WM97xx aux port. config BATTERY_BQ20Z75 tristate "TI BQ20z75 gas gauge" depends on I2C help Say Y to include support for TI BQ20z75 SBS-compliant gas gauge and protection IC. config BATTERY_BQ27x00 tristate "BQ27x00 battery driver" help Say Y here to enable support for batteries with BQ27x00 (I2C/HDQ) chips. config BATTERY_BQ27X00_I2C bool "BQ27200/BQ27500 support" depends on BATTERY_BQ27x00 depends on I2C default y help Say Y here to enable support for batteries with BQ27x00 (I2C) chips. config BATTERY_BQ27X00_PLATFORM bool "BQ27000 support" depends on BATTERY_BQ27x00 default y help Say Y here to enable support for batteries with BQ27000 (HDQ) chips. config BATTERY_DA9030 tristate "DA9030 battery driver" depends on PMIC_DA903X help Say Y here to enable support for batteries charger integrated into DA9030 PMIC. config BATTERY_MAX17040 tristate "Maxim MAX17040 Fuel Gauge" depends on I2C help MAX17040 is fuel-gauge systems for lithium-ion (Li+) batteries in handheld and portable equipment. The MAX17040 is configured to operate with a single lithium cell config BATTERY_MAX17042 tristate "Maxim MAX17042/8997/8966 Fuel Gauge" depends on I2C help MAX17042 is fuel-gauge systems for lithium-ion (Li+) batteries in handheld and portable equipment. The MAX17042 is configured to operate with a single lithium cell. MAX8997 and MAX8966 are multi-function devices that include fuel gauages that are compatible with MAX17042. config BATTERY_Z2 tristate "Z2 battery driver" depends on I2C && MACH_ZIPIT2 help Say Y to include support for the battery on the Zipit Z2. config BATTERY_S3C_ADC tristate "Battery driver for Samsung ADC based monitoring" depends on S3C_ADC help Say Y here to enable support for iPAQ h1930/h1940/rx1950 battery config CHARGER_PCF50633 tristate "NXP PCF50633 MBC" depends on MFD_PCF50633 help Say Y to include support for NXP PCF50633 Main Battery Charger. config BATTERY_JZ4740 tristate "Ingenic JZ4740 battery" depends on MACH_JZ4740 depends on MFD_JZ4740_ADC help Say Y to enable support for the battery on Ingenic JZ4740 based boards. This driver can be build as a module. If so, the module will be called jz4740-battery. config BATTERY_INTEL_MID tristate "Battery driver for Intel MID platforms" depends on INTEL_SCU_IPC && SPI help Say Y here to enable the battery driver on Intel MID platforms. config CHARGER_ISP1704 tristate "ISP1704 USB Charger Detection" depends on USB_OTG_UTILS help Say Y to enable support for USB Charger Detection with ISP1707/ISP1704 USB transceivers. config CHARGER_TWL4030 tristate "OMAP TWL4030 BCI charger driver" depends on TWL4030_CORE help Say Y here to enable support for TWL4030 Battery Charge Interface. config CHARGER_GPIO tristate "GPIO charger" depends on GPIOLIB help Say Y to include support for chargers which report their online status through a GPIO pin. This driver can be build as a module. If so, the module will be called gpio-charger. endif # POWER_SUPPLY # # Multifunction miscellaneous devices # menuconfig MFD_SUPPORT bool "Multifunction device drivers" depends on HAS_IOMEM default y help Multifunction devices embed several functions (e.g. GPIOs, touchscreens, keyboards, current regulators, power management chips, etc...) in one single integrated circuit. They usually talk to the main CPU through one or more IRQ lines and low speed data busses (SPI, I2C, etc..). They appear as one single device to the main system through the data bus and the MFD framework allows for sub devices (a.k.a. functions) to appear as discrete platform devices. MFDs are typically found on embedded platforms. This option alone does not add any kernel code. if MFD_SUPPORT config MFD_CORE tristate default n config MFD_88PM860X bool "Support Marvell 88PM8606/88PM8607" depends on I2C=y && GENERIC_HARDIRQS select MFD_CORE help This supports for Marvell 88PM8606/88PM8607 Power Management IC. This includes the I2C driver and the core APIs _only_, you have to select individual components like voltage regulators, RTC and battery-charger under the corresponding menus. config MFD_SM501 tristate "Support for Silicon Motion SM501" ---help--- This is the core driver for the Silicon Motion SM501 multimedia companion chip. This device is a multifunction device which may provide numerous interfaces including USB host controller, USB gadget, asynchronous serial ports, audio functions, and a dual display video interface. The device may be connected by PCI or local bus with varying functions enabled. config MFD_SM501_GPIO bool "Export GPIO via GPIO layer" depends on MFD_SM501 && GPIOLIB ---help--- This option uses the gpio library layer to export the 64 GPIO lines on the SM501. The platform data is used to supply the base number for the first GPIO line to register. config MFD_ASIC3 bool "Support for Compaq ASIC3" depends on GENERIC_HARDIRQS && GPIOLIB && ARM select MFD_CORE ---help--- This driver supports the ASIC3 multifunction chip found on many PDAs (mainly iPAQ and HTC based ones) config MFD_DAVINCI_VOICECODEC tristate select MFD_CORE config MFD_DM355EVM_MSP bool "DaVinci DM355 EVM microcontroller" depends on I2C=y && MACH_DAVINCI_DM355_EVM help This driver supports the MSP430 microcontroller used on these boards. MSP430 firmware manages resets and power sequencing, inputs from buttons and the IR remote, LEDs, an RTC, and more. config MFD_TI_SSP tristate "TI Sequencer Serial Port support" depends on ARCH_DAVINCI_TNETV107X select MFD_CORE ---help--- Say Y here if you want support for the Sequencer Serial Port in a Texas Instruments TNETV107X SoC. To compile this driver as a module, choose M here: the module will be called ti-ssp. config HTC_EGPIO bool "HTC EGPIO support" depends on GENERIC_HARDIRQS && GPIOLIB && ARM help This driver supports the CPLD egpio chip present on several HTC phones. It provides basic support for input pins, output pins, and irqs. config HTC_PASIC3 tristate "HTC PASIC3 LED/DS1WM chip support" select MFD_CORE help This core driver provides register access for the LED/DS1WM chips labeled "AIC2" and "AIC3", found on HTC Blueangel and HTC Magician devices, respectively. Actual functionality is handled by the leds-pasic3 and ds1wm drivers. config HTC_I2CPLD bool "HTC I2C PLD chip support" depends on I2C=y && GPIOLIB help If you say yes here you get support for the supposed CPLD found on omap850 HTC devices like the HTC Wizard and HTC Herald. This device provides input and output GPIOs through an I2C interface to one or more sub-chips. config UCB1400_CORE tristate "Philips UCB1400 Core driver" depends on AC97_BUS depends on GPIOLIB help This enables support for the Philips UCB1400 core functions. The UCB1400 is an AC97 audio codec. To compile this driver as a module, choose M here: the module will be called ucb1400_core. config TPS6105X tristate "TPS61050/61052 Boost Converters" depends on I2C select REGULATOR select MFD_CORE select REGULATOR_FIXED_VOLTAGE help This option enables a driver for the TP61050/TPS61052 high-power "white LED driver". This boost converter is sometimes used for other things than white LEDs, and also contains a GPIO pin. config TPS65010 tristate "TPS6501x Power Management chips" depends on I2C && GPIOLIB default y if MACH_OMAP_H2 || MACH_OMAP_H3 || MACH_OMAP_OSK help If you say yes here you get support for the TPS6501x series of Power Management chips. These include voltage regulators, lithium ion/polymer battery charging, and other features that are often used in portable devices like cell phones and cameras. This driver can also be built as a module. If so, the module will be called tps65010. config TPS6507X tristate "TPS6507x Power Management / Touch Screen chips" select MFD_CORE depends on I2C help If you say yes here you get support for the TPS6507x series of Power Management / Touch Screen chips. These include voltage regulators, lithium ion/polymer battery charging, touch screen and other features that are often used in portable devices. This driver can also be built as a module. If so, the module will be called tps6507x. config MENELAUS bool "Texas Instruments TWL92330/Menelaus PM chip" depends on I2C=y && ARCH_OMAP2 help If you say yes here you get support for the Texas Instruments TWL92330/Menelaus Power Management chip. This include voltage regulators, Dual slot memory card transceivers, real-time clock and other features that are often used in portable devices like cell phones and PDAs. config TWL4030_CORE bool "Texas Instruments TWL4030/TWL5030/TWL6030/TPS659x0 Support" depends on I2C=y && GENERIC_HARDIRQS help Say yes here if you have TWL4030 / TWL6030 family chip on your board. This core driver provides register access and IRQ handling facilities, and registers devices for the various functions so that function-specific drivers can bind to them. These multi-function chips are found on many OMAP2 and OMAP3 boards, providing power management, RTC, GPIO, keypad, a high speed USB OTG transceiver, an audio codec (on most versions) and many other features. config TWL4030_MADC tristate "Texas Instruments TWL4030 MADC" depends on TWL4030_CORE help This driver provides support for triton TWL4030-MADC. The driver supports both RT and SW conversion methods. This driver can be built as a module. If so it will be named twl4030-madc config TWL4030_POWER bool "Support power resources on TWL4030 family chips" depends on TWL4030_CORE && ARM help Say yes here if you want to use the power resources on the TWL4030 family chips. Most of these resources are regulators, which have a separate driver; some are control signals, such as clock request handshaking. This driver uses board-specific data to initialize the resources and load scripts controlling which resources are switched off/on or reset when a sleep, wakeup or warm reset event occurs. config TWL4030_CODEC bool depends on TWL4030_CORE select MFD_CORE default n config TWL6030_PWM tristate "TWL6030 PWM (Pulse Width Modulator) Support" depends on TWL4030_CORE select HAVE_PWM default n help Say yes here if you want support for TWL6030 PWM. This is used to control charging LED brightness. config MFD_STMPE bool "Support STMicroelectronics STMPE" depends on I2C=y && GENERIC_HARDIRQS select MFD_CORE help Support for the STMPE family of I/O Expanders from STMicroelectronics. Currently supported devices are: STMPE811: GPIO, Touchscreen STMPE1601: GPIO, Keypad STMPE2401: GPIO, Keypad STMPE2403: GPIO, Keypad This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. Currently available sub drivers are: GPIO: stmpe-gpio Keypad: stmpe-keypad Touchscreen: stmpe-ts config MFD_TC3589X bool "Support Toshiba TC35892 and variants" depends on I2C=y && GENERIC_HARDIRQS select MFD_CORE help Support for the Toshiba TC35892 and variants I/O Expander. This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. config MFD_TMIO bool default n config MFD_T7L66XB bool "Support Toshiba T7L66XB" depends on ARM && HAVE_CLK select MFD_CORE select MFD_TMIO help Support for Toshiba Mobile IO Controller T7L66XB config MFD_TC6387XB bool "Support Toshiba TC6387XB" depends on ARM && HAVE_CLK select MFD_CORE select MFD_TMIO help Support for Toshiba Mobile IO Controller TC6387XB config MFD_TC6393XB bool "Support Toshiba TC6393XB" depends on GPIOLIB && ARM select MFD_CORE select MFD_TMIO help Support for Toshiba Mobile IO Controller TC6393XB config PMIC_DA903X bool "Dialog Semiconductor DA9030/DA9034 PMIC Support" depends on I2C=y help Say yes here to support for Dialog Semiconductor DA9030 (a.k.a ARAVA) and DA9034 (a.k.a MICCO), these are Power Management IC usually found on PXA processors-based platforms. This includes the I2C driver and the core APIs _only_, you have to select individual components like LCD backlight, voltage regulators, LEDs and battery-charger under the corresponding menus. config PMIC_ADP5520 bool "Analog Devices ADP5520/01 MFD PMIC Core Support" depends on I2C=y help Say yes here to add support for Analog Devices AD5520 and ADP5501, Multifunction Power Management IC. This includes the I2C driver and the core APIs _only_, you have to select individual components like LCD backlight, LEDs, GPIOs and Kepad under the corresponding menus. config MFD_MAX8925 bool "Maxim Semiconductor MAX8925 PMIC Support" depends on I2C=y && GENERIC_HARDIRQS select MFD_CORE help Say yes here to support for Maxim Semiconductor MAX8925. This is a Power Management IC. This driver provies common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. config MFD_MAX8997 bool "Maxim Semiconductor MAX8997/8966 PMIC Support" depends on I2C=y && GENERIC_HARDIRQS select MFD_CORE help Say yes here to support for Maxim Semiconductor MAX8998/8966. This is a Power Management IC with RTC, Flash, Fuel Gauge, Haptic, MUIC controls on chip. This driver provides common support for accessing the device; additional drivers must be enabled in order to use the functionality of the device. config MFD_MAX8998 bool "Maxim Semiconductor MAX8998/National LP3974 PMIC Support" depends on I2C=y && GENERIC_HARDIRQS select MFD_CORE help Say yes here to support for Maxim Semiconductor MAX8998 and National Semiconductor LP3974. This is a Power Management IC. This driver provies common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. config MFD_WM8400 tristate "Support Wolfson Microelectronics WM8400" select MFD_CORE depends on I2C help Support for the Wolfson Microelecronics WM8400 PMIC and audio CODEC. This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. config MFD_WM831X bool depends on GENERIC_HARDIRQS config MFD_WM831X_I2C bool "Support Wolfson Microelectronics WM831x/2x PMICs with I2C" select MFD_CORE select MFD_WM831X depends on I2C=y && GENERIC_HARDIRQS help Support for the Wolfson Microelecronics WM831x and WM832x PMICs when controlled using I2C. This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. config MFD_WM831X_SPI bool "Support Wolfson Microelectronics WM831x/2x PMICs with SPI" select MFD_CORE select MFD_WM831X depends on SPI_MASTER && GENERIC_HARDIRQS help Support for the Wolfson Microelecronics WM831x and WM832x PMICs when controlled using SPI. This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. config MFD_WM8350 bool depends on GENERIC_HARDIRQS config MFD_WM8350_CONFIG_MODE_0 bool depends on MFD_WM8350 config MFD_WM8350_CONFIG_MODE_1 bool depends on MFD_WM8350 config MFD_WM8350_CONFIG_MODE_2 bool depends on MFD_WM8350 config MFD_WM8350_CONFIG_MODE_3 bool depends on MFD_WM8350 config MFD_WM8351_CONFIG_MODE_0 bool depends on MFD_WM8350 config MFD_WM8351_CONFIG_MODE_1 bool depends on MFD_WM8350 config MFD_WM8351_CONFIG_MODE_2 bool depends on MFD_WM8350 config MFD_WM8351_CONFIG_MODE_3 bool depends on MFD_WM8350 config MFD_WM8352_CONFIG_MODE_0 bool depends on MFD_WM8350 config MFD_WM8352_CONFIG_MODE_1 bool depends on MFD_WM8350 config MFD_WM8352_CONFIG_MODE_2 bool depends on MFD_WM8350 config MFD_WM8352_CONFIG_MODE_3 bool depends on MFD_WM8350 config MFD_WM8350_I2C bool "Support Wolfson Microelectronics WM8350 with I2C" select MFD_WM8350 depends on I2C=y && GENERIC_HARDIRQS help The WM8350 is an integrated audio and power management subsystem with watchdog and RTC functionality for embedded systems. This option enables core support for the WM8350 with I2C as the control interface. Additional options must be selected to enable support for the functionality of the chip. config MFD_WM8994 bool "Support Wolfson Microelectronics WM8994" select MFD_CORE depends on I2C=y && GENERIC_HARDIRQS help The WM8994 is a highly integrated hi-fi CODEC designed for smartphone applicatiosn. As well as audio functionality it has on board GPIO and regulator functionality which is supported via the relevant subsystems. This driver provides core support for the WM8994, in order to use the actual functionaltiy of the device other drivers must be enabled. config MFD_PCF50633 tristate "Support for NXP PCF50633" select MFD_CORE depends on I2C help Say yes here if you have NXP PCF50633 chip on your board. This core driver provides register access and IRQ handling facilities, and registers devices for the various functions so that function-specific drivers can bind to them. config MFD_MC13783 tristate config MFD_MC13XXX tristate "Support Freescale MC13783 and MC13892" depends on SPI_MASTER select MFD_CORE select MFD_MC13783 help Support for the Freescale (Atlas) PMIC and audio CODECs MC13783 and MC13892. This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. config PCF50633_ADC tristate "Support for NXP PCF50633 ADC" depends on MFD_PCF50633 help Say yes here if you want to include support for ADC in the NXP PCF50633 chip. config ABX500_CORE bool "ST-Ericsson ABX500 Mixed Signal Circuit register functions" default y if ARCH_U300 || ARCH_U8500 help Say yes here if you have the ABX500 Mixed Signal IC family chips. This core driver expose register access functions. Functionality specific drivers using these functions can remain unchanged when IC changes. Binding of the functions to actual register access is done by the IC core driver. config AB3100_CORE bool "ST-Ericsson AB3100 Mixed Signal Circuit core functions" depends on I2C=y && ABX500_CORE select MFD_CORE default y if ARCH_U300 help Select this to enable the AB3100 Mixed Signal IC core functionality. This connects to a AB3100 on the I2C bus and expose a number of symbols needed for dependent devices to read and write registers and subscribe to events from this multi-functional IC. This is needed to use other features of the AB3100 such as battery-backed RTC, charging control, LEDs, vibrator, system power and temperature, power management and ALSA sound. config AB3100_OTP tristate "ST-Ericsson AB3100 OTP functions" depends on AB3100_CORE default y if AB3100_CORE help Select this to enable the AB3100 Mixed Signal IC OTP (one-time programmable memory) support. This exposes a sysfs file to read out OTP values. config EZX_PCAP bool "PCAP Support" depends on GENERIC_HARDIRQS && SPI_MASTER help This enables the PCAP ASIC present on EZX Phones. This is needed for MMC, TouchScreen, Sound, USB, etc.. config AB8500_CORE bool "ST-Ericsson AB8500 Mixed Signal Power Management chip" depends on GENERIC_HARDIRQS && ABX500_CORE select MFD_CORE help Select this option to enable access to AB8500 power management chip. This connects to U8500 either on the SSP/SPI bus (deprecated since hardware version v1.0) or the I2C bus via PRCMU. It also adds the irq_chip parts for handling the Mixed Signal chip events. This chip embeds various other multimedia funtionalities as well. config AB8500_I2C_CORE bool "AB8500 register access via PRCMU I2C" depends on AB8500_CORE && UX500_SOC_DB8500 default y help This enables register access to the AB8500 chip via PRCMU I2C. The AB8500 chip can be accessed via SPI or I2C. On DB8500 hardware the I2C bus is connected to the Power Reset and Mangagement Unit, PRCMU. config AB8500_DEBUG bool "Enable debug info via debugfs" depends on AB8500_CORE && DEBUG_FS default y if DEBUG_FS help Select this option if you want debug information using the debug filesystem, debugfs. config AB8500_GPADC bool "AB8500 GPADC driver" depends on AB8500_CORE && REGULATOR_AB8500 default y help AB8500 GPADC driver used to convert Acc and battery/ac/usb voltage config AB3550_CORE bool "ST-Ericsson AB3550 Mixed Signal Circuit core functions" select MFD_CORE depends on I2C=y && GENERIC_HARDIRQS && ABX500_CORE help Select this to enable the AB3550 Mixed Signal IC core functionality. This connects to a AB3550 on the I2C bus and expose a number of symbols needed for dependent devices to read and write registers and subscribe to events from this multi-functional IC. This is needed to use other features of the AB3550 such as battery-backed RTC, charging control, LEDs, vibrator, system power and temperature, power management and ALSA sound. config MFD_CS5535 tristate "Support for CS5535 and CS5536 southbridge core functions" select MFD_CORE depends on PCI && X86 ---help--- This is the core driver for CS5535/CS5536 MFD functions. This is necessary for using the board's GPIO and MFGPT functionality. config MFD_TIMBERDALE tristate "Support for the Timberdale FPGA" select MFD_CORE depends on PCI && GPIOLIB ---help--- This is the core driver for the timberdale FPGA. This device is a multifunction device which exposes numerous platform devices. The timberdale FPGA can be found on the Intel Atom development board for in-vehicle infontainment, called Russellville. config LPC_SCH tristate "Intel SCH LPC" depends on PCI select MFD_CORE help LPC bridge function of the Intel SCH provides support for System Management Bus and General Purpose I/O. config MFD_GLAMO bool "Smedia Glamo 336x/337x support" select MFD_CORE help This enables the core driver for the Smedia Glamo 336x/337x multi-function device. It includes irq_chip demultiplex as well as clock / power management and GPIO support. config MFD_RDC321X tristate "Support for RDC-R321x southbridge" select MFD_CORE depends on PCI help Say yes here if you want to have support for the RDC R-321x SoC southbridge which provides access to GPIOs and Watchdog using the southbridge PCI device configuration space. config MFD_JANZ_CMODIO tristate "Support for Janz CMOD-IO PCI MODULbus Carrier Board" select MFD_CORE depends on PCI help This is the core driver for the Janz CMOD-IO PCI MODULbus carrier board. This device is a PCI to MODULbus bridge which may host many different types of MODULbus daughterboards, including CAN and GPIO controllers. config MFD_JZ4740_ADC tristate "Support for the JZ4740 SoC ADC core" select MFD_CORE depends on MACH_JZ4740 help Say yes here if you want support for the ADC unit in the JZ4740 SoC. This driver is necessary for jz4740-battery and jz4740-hwmon driver. config MFD_TPS6586X bool "TPS6586x Power Management chips" depends on I2C=y && GPIOLIB && GENERIC_HARDIRQS select MFD_CORE help If you say yes here you get support for the TPS6586X series of Power Management chips. This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. This driver can also be built as a module. If so, the module will be called tps6586x. config MFD_VX855 tristate "Support for VIA VX855/VX875 integrated south bridge" depends on PCI select MFD_CORE help Say yes here to enable support for various functions of the VIA VX855/VX875 south bridge. You will need to enable the vx855_spi and/or vx855_gpio drivers for this to do anything useful. config MFD_WL1273_CORE tristate "Support for TI WL1273 FM radio." depends on I2C select MFD_CORE default n help This is the core driver for the TI WL1273 FM radio. This MFD driver connects the radio-wl1273 V4L2 module and the wl1273 audio codec. config MFD_OMAP_USB_HOST bool "Support OMAP USBHS core driver" depends on USB_EHCI_HCD_OMAP || USB_OHCI_HCD_OMAP3 default y help This is the core driver for the OAMP EHCI and OHCI drivers. This MFD driver does the required setup functionalities for OMAP USB Host drivers. endif # MFD_SUPPORT menu "Multimedia Capabilities Port drivers" depends on ARCH_SA1100 config MCP tristate # Interface drivers config MCP_SA11X0 tristate "Support SA11x0 MCP interface" depends on ARCH_SA1100 select MCP # Chip drivers config MCP_UCB1200 tristate "Support for UCB1200 / UCB1300" depends on MCP config MCP_UCB1200_TS tristate "Touchscreen interface support" depends on MCP_UCB1200 && INPUT endmenu # # SPI driver configuration # # NOTE: the reason this doesn't show SPI slave support is mostly that # nobody's needed a slave side API yet. The master-role API is not # fully appropriate there, so it'd need some thought to do well. # menuconfig SPI bool "SPI support" depends on HAS_IOMEM help The "Serial Peripheral Interface" is a low level synchronous protocol. Chips that support SPI can have data transfer rates up to several tens of Mbit/sec. Chips are addressed with a controller and a chipselect. Most SPI slaves don't support dynamic device discovery; some are even write-only or read-only. SPI is widely used by microcontrollers to talk with sensors, eeprom and flash memory, codecs and various other controller chips, analog to digital (and d-to-a) converters, and more. MMC and SD cards can be accessed using SPI protocol; and for DataFlash cards used in MMC sockets, SPI must always be used. SPI is one of a family of similar protocols using a four wire interface (select, clock, data in, data out) including Microwire (half duplex), SSP, SSI, and PSP. This driver framework should work with most such devices and controllers. if SPI config SPI_DEBUG boolean "Debug support for SPI drivers" depends on DEBUG_KERNEL help Say "yes" to enable debug messaging (like dev_dbg and pr_debug), sysfs, and debugfs support in SPI controller and protocol drivers. # # MASTER side ... talking to discrete SPI slave chips including microcontrollers # config SPI_MASTER # boolean "SPI Master Support" boolean default SPI help If your system has an master-capable SPI controller (which provides the clock and chipselect), you can enable that controller and the protocol drivers for the SPI slave chips that are connected. if SPI_MASTER comment "SPI Master Controller Drivers" config SPI_ALTERA tristate "Altera SPI Controller" select SPI_BITBANG help This is the driver for the Altera SPI Controller. config SPI_ATH79 tristate "Atheros AR71XX/AR724X/AR913X SPI controller driver" depends on ATH79 && GENERIC_GPIO select SPI_BITBANG help This enables support for the SPI controller present on the Atheros AR71XX/AR724X/AR913X SoCs. config SPI_ATMEL tristate "Atmel SPI Controller" depends on (ARCH_AT91 || AVR32) help This selects a driver for the Atmel SPI Controller, present on many AT32 (AVR32) and AT91 (ARM) chips. config SPI_BFIN tristate "SPI controller driver for ADI Blackfin5xx" depends on BLACKFIN help This is the SPI controller master driver for Blackfin 5xx processor. config SPI_AU1550 tristate "Au1550/Au12x0 SPI Controller" depends on (SOC_AU1550 || SOC_AU1200) && EXPERIMENTAL select SPI_BITBANG help If you say yes to this option, support will be included for the Au1550 SPI controller (may also work with Au1200,Au1210,Au1250). This driver can also be built as a module. If so, the module will be called au1550_spi. config SPI_BITBANG tristate "Utilities for Bitbanging SPI masters" help With a few GPIO pins, your system can bitbang the SPI protocol. Select this to get SPI support through I/O pins (GPIO, parallel port, etc). Or, some systems' SPI master controller drivers use this code to manage the per-word or per-transfer accesses to the hardware shift registers. This is library code, and is automatically selected by drivers that need it. You only need to select this explicitly to support driver modules that aren't part of this kernel tree. config SPI_BUTTERFLY tristate "Parallel port adapter for AVR Butterfly (DEVELOPMENT)" depends on PARPORT select SPI_BITBANG help This uses a custom parallel port cable to connect to an AVR Butterfly , an inexpensive battery powered microcontroller evaluation board. This same cable can be used to flash new firmware. config SPI_COLDFIRE_QSPI tristate "Freescale Coldfire QSPI controller" depends on (M520x || M523x || M5249 || M527x || M528x || M532x) help This enables support for the Coldfire QSPI controller in master mode. This driver can also be built as a module. If so, the module will be called coldfire_qspi. config SPI_DAVINCI tristate "Texas Instruments DaVinci/DA8x/OMAP-L/AM1x SoC SPI controller" depends on SPI_MASTER && ARCH_DAVINCI select SPI_BITBANG help SPI master controller for DaVinci/DA8x/OMAP-L/AM1x SPI modules. This driver can also be built as a module. The module will be called davinci_spi. config SPI_EP93XX tristate "Cirrus Logic EP93xx SPI controller" depends on ARCH_EP93XX help This enables using the Cirrus EP93xx SPI controller in master mode. To compile this driver as a module, choose M here. The module will be called ep93xx_spi. config SPI_GPIO tristate "GPIO-based bitbanging SPI Master" depends on GENERIC_GPIO select SPI_BITBANG help This simple GPIO bitbanging SPI master uses the arch-neutral GPIO interface to manage MOSI, MISO, SCK, and chipselect signals. SPI slaves connected to a bus using this driver are configured as usual, except that the spi_board_info.controller_data holds the GPIO number for the chipselect used by this controller driver. Note that this driver often won't achieve even 1 Mbit/sec speeds, making it unusually slow for SPI. If your platform can inline GPIO operations, you should be able to leverage that for better speed with a custom version of this driver; see the source code. config SPI_IMX_VER_IMX1 def_bool y if SOC_IMX1 config SPI_IMX_VER_0_0 def_bool y if SOC_IMX21 || SOC_IMX27 config SPI_IMX_VER_0_4 def_bool y if SOC_IMX31 config SPI_IMX_VER_0_7 def_bool y if ARCH_MX25 || SOC_IMX35 || SOC_IMX51 || SOC_IMX53 config SPI_IMX_VER_2_3 def_bool y if SOC_IMX51 || SOC_IMX53 config SPI_IMX tristate "Freescale i.MX SPI controllers" depends on ARCH_MXC select SPI_BITBANG default m if IMX_HAVE_PLATFORM_SPI_IMX help This enables using the Freescale i.MX SPI controllers in master mode. config SPI_LM70_LLP tristate "Parallel port adapter for LM70 eval board (DEVELOPMENT)" depends on PARPORT && EXPERIMENTAL select SPI_BITBANG help This driver supports the NS LM70 LLP Evaluation Board, which interfaces to an LM70 temperature sensor using a parallel port. config SPI_MPC52xx tristate "Freescale MPC52xx SPI (non-PSC) controller support" depends on PPC_MPC52xx && SPI select SPI_MASTER_OF help This drivers supports the MPC52xx SPI controller in master SPI mode. config SPI_MPC52xx_PSC tristate "Freescale MPC52xx PSC SPI controller" depends on PPC_MPC52xx && EXPERIMENTAL help This enables using the Freescale MPC52xx Programmable Serial Controller in master SPI mode. config SPI_MPC512x_PSC tristate "Freescale MPC512x PSC SPI controller" depends on SPI_MASTER && PPC_MPC512x help This enables using the Freescale MPC5121 Programmable Serial Controller in SPI master mode. config SPI_FSL_LIB tristate depends on FSL_SOC config SPI_FSL_SPI tristate "Freescale SPI controller" depends on FSL_SOC select SPI_FSL_LIB help This enables using the Freescale SPI controllers in master mode. MPC83xx platform uses the controller in cpu mode or CPM/QE mode. MPC8569 uses the controller in QE mode, MPC8610 in cpu mode. config SPI_FSL_ESPI tristate "Freescale eSPI controller" depends on FSL_SOC select SPI_FSL_LIB help This enables using the Freescale eSPI controllers in master mode. From MPC8536, 85xx platform uses the controller, and all P10xx, P20xx, P30xx,P40xx, P50xx uses this controller. config SPI_OC_TINY tristate "OpenCores tiny SPI" depends on GENERIC_GPIO select SPI_BITBANG help This is the driver for OpenCores tiny SPI master controller. config SPI_OMAP_UWIRE tristate "OMAP1 MicroWire" depends on ARCH_OMAP1 select SPI_BITBANG help This hooks up to the MicroWire controller on OMAP1 chips. config SPI_OMAP24XX tristate "McSPI driver for OMAP" depends on ARCH_OMAP2PLUS help SPI master controller for OMAP24XX and later Multichannel SPI (McSPI) modules. config SPI_OMAP_100K tristate "OMAP SPI 100K" depends on SPI_MASTER && (ARCH_OMAP850 || ARCH_OMAP730) help OMAP SPI 100K master controller for omap7xx boards. config SPI_ORION tristate "Orion SPI master (EXPERIMENTAL)" depends on PLAT_ORION && EXPERIMENTAL help This enables using the SPI master controller on the Orion chips. config SPI_PL022 tristate "ARM AMBA PL022 SSP controller (EXPERIMENTAL)" depends on ARM_AMBA && EXPERIMENTAL default y if MACH_U300 default y if ARCH_REALVIEW default y if INTEGRATOR_IMPD1 default y if ARCH_VERSATILE help This selects the ARM(R) AMBA(R) PrimeCell PL022 SSP controller. If you have an embedded system with an AMBA(R) bus and a PL022 controller, say Y or M here. config SPI_PPC4xx tristate "PPC4xx SPI Controller" depends on PPC32 && 4xx && SPI_MASTER select SPI_BITBANG help This selects a driver for the PPC4xx SPI Controller. config SPI_PXA2XX tristate "PXA2xx SSP SPI master" depends on (ARCH_PXA || (X86_32 && PCI)) && EXPERIMENTAL select PXA_SSP if ARCH_PXA help This enables using a PXA2xx or Sodaville SSP port as a SPI master controller. The driver can be configured to use any SSP port and additional documentation can be found a Documentation/spi/pxa2xx. config SPI_PXA2XX_PCI def_bool SPI_PXA2XX && X86_32 && PCI config SPI_S3C24XX tristate "Samsung S3C24XX series SPI" depends on ARCH_S3C2410 && EXPERIMENTAL select SPI_BITBANG help SPI driver for Samsung S3C24XX series ARM SoCs config SPI_S3C24XX_FIQ bool "S3C24XX driver with FIQ pseudo-DMA" depends on SPI_S3C24XX select FIQ help Enable FIQ support for the S3C24XX SPI driver to provide pseudo DMA by using the fast-interrupt request framework, This allows the driver to get DMA-like performance when there are either no free DMA channels, or when doing transfers that required both TX and RX data paths. config SPI_S3C24XX_GPIO tristate "Samsung S3C24XX series SPI by GPIO" depends on ARCH_S3C2410 && EXPERIMENTAL select SPI_BITBANG help SPI driver for Samsung S3C24XX series ARM SoCs using GPIO lines to provide the SPI bus. This can be used where the inbuilt hardware cannot provide the transfer mode, or where the board is using non hardware connected pins. config SPI_S3C64XX tristate "Samsung S3C64XX series type SPI" depends on (ARCH_S3C64XX || ARCH_S5P64X0) select S3C64XX_DMA if ARCH_S3C64XX help SPI driver for Samsung S3C64XX and newer SoCs. config SPI_SH_MSIOF tristate "SuperH MSIOF SPI controller" depends on SUPERH && HAVE_CLK select SPI_BITBANG help SPI driver for SuperH MSIOF blocks. config SPI_SH tristate "SuperH SPI controller" depends on SUPERH help SPI driver for SuperH SPI blocks. config SPI_SH_SCI tristate "SuperH SCI SPI controller" depends on SUPERH select SPI_BITBANG help SPI driver for SuperH SCI blocks. config SPI_STMP3XXX tristate "Freescale STMP37xx/378x SPI/SSP controller" depends on ARCH_STMP3XXX && SPI_MASTER help SPI driver for Freescale STMP37xx/378x SoC SSP interface config SPI_TEGRA tristate "Nvidia Tegra SPI controller" depends on ARCH_TEGRA select TEGRA_SYSTEM_DMA help SPI driver for NVidia Tegra SoCs config SPI_TI_SSP tristate "TI Sequencer Serial Port - SPI Support" depends on MFD_TI_SSP help This selects an SPI master implementation using a TI sequencer serial port. To compile this driver as a module, choose M here: the module will be called ti-ssp-spi. config SPI_TOPCLIFF_PCH tristate "Topcliff PCH SPI Controller" depends on PCI help SPI driver for the Topcliff PCH (Platform Controller Hub) SPI bus used in some x86 embedded processors. config SPI_TXX9 tristate "Toshiba TXx9 SPI controller" depends on GENERIC_GPIO && CPU_TX49XX help SPI driver for Toshiba TXx9 MIPS SoCs config SPI_XILINX tristate "Xilinx SPI controller common module" depends on HAS_IOMEM && EXPERIMENTAL select SPI_BITBANG help This exposes the SPI controller IP from the Xilinx EDK. See the "OPB Serial Peripheral Interface (SPI) (v1.00e)" Product Specification document (DS464) for hardware details. Or for the DS570, see "XPS Serial Peripheral Interface (SPI) (v2.00b)" config SPI_NUC900 tristate "Nuvoton NUC900 series SPI" depends on ARCH_W90X900 && EXPERIMENTAL select SPI_BITBANG help SPI driver for Nuvoton NUC900 series ARM SoCs # # Add new SPI master controllers in alphabetical order above this line # config SPI_DESIGNWARE tristate "DesignWare SPI controller core support" depends on SPI_MASTER help general driver for SPI controller core from DesignWare config SPI_DW_PCI tristate "PCI interface driver for DW SPI core" depends on SPI_DESIGNWARE && PCI config SPI_DW_MID_DMA bool "DMA support for DW SPI controller on Intel Moorestown platform" depends on SPI_DW_PCI && INTEL_MID_DMAC config SPI_DW_MMIO tristate "Memory-mapped io interface driver for DW SPI core" depends on SPI_DESIGNWARE && HAVE_CLK # # There are lots of SPI device types, with sensors and memory # being probably the most widely used ones. # comment "SPI Protocol Masters" config SPI_SPIDEV tristate "User mode SPI device driver support" depends on EXPERIMENTAL help This supports user mode SPI protocol drivers. Note that this application programming interface is EXPERIMENTAL and hence SUBJECT TO CHANGE WITHOUT NOTICE while it stabilizes. config SPI_TLE62X0 tristate "Infineon TLE62X0 (for power switching)" depends on SYSFS help SPI driver for Infineon TLE62X0 series line driver chips, such as the TLE6220, TLE6230 and TLE6240. This provides a sysfs interface, with each line presented as a kind of GPIO exposing both switch control and diagnostic feedback. # # Add new SPI protocol masters in alphabetical order above this line # endif # SPI_MASTER # (slave support would go here) endif # SPI # # ACPI Configuration # menuconfig ACPI bool "ACPI (Advanced Configuration and Power Interface) Support" depends on !IA64_HP_SIM depends on IA64 || X86 depends on PCI select PNP default y help Advanced Configuration and Power Interface (ACPI) support for Linux requires an ACPI-compliant platform (hardware/firmware), and assumes the presence of OS-directed configuration and power management (OSPM) software. This option will enlarge your kernel by about 70K. Linux ACPI provides a robust functional replacement for several legacy configuration and power management interfaces, including the Plug-and-Play BIOS specification (PnP BIOS), the MultiProcessor Specification (MPS), and the Advanced Power Management (APM) specification. If both ACPI and APM support are configured, ACPI is used. The project home page for the Linux ACPI subsystem is here: Linux support for ACPI is based on Intel Corporation's ACPI Component Architecture (ACPI CA). For more information on the ACPI CA, see: ACPI is an open industry specification co-developed by Hewlett-Packard, Intel, Microsoft, Phoenix, and Toshiba. The specification is available at: if ACPI config ACPI_SLEEP bool depends on SUSPEND || HIBERNATION default y config ACPI_PROCFS bool "Deprecated /proc/acpi files" depends on PROC_FS help For backwards compatibility, this option allows deprecated /proc/acpi/ files to exist, even when they have been replaced by functions in /sys. This option has no effect on /proc/acpi/ files and functions which do not yet exist in /sys. Say N to delete /proc/acpi/ files that have moved to /sys/ config ACPI_PROCFS_POWER bool "Deprecated power /proc/acpi directories" depends on PROC_FS help For backwards compatibility, this option allows deprecated power /proc/acpi/ directories to exist, even when they have been replaced by functions in /sys. The deprecated directories (and their replacements) include: /proc/acpi/battery/* (/sys/class/power_supply/*) /proc/acpi/ac_adapter/* (sys/class/power_supply/*) This option has no effect on /proc/acpi/ directories and functions, which do not yet exist in /sys This option, together with the proc directories, will be deleted in 2.6.39. Say N to delete power /proc/acpi/ directories that have moved to /sys/ config ACPI_POWER_METER tristate "ACPI 4.0 power meter" depends on HWMON help This driver exposes ACPI 4.0 power meters as hardware monitoring devices. Say Y (or M) if you have a computer with ACPI 4.0 firmware and a power meter. To compile this driver as a module, choose M here: the module will be called power-meter. config ACPI_EC_DEBUGFS tristate "EC read/write access through /sys/kernel/debug/ec" default n help Say N to disable Embedded Controller /sys/kernel/debug interface Be aware that using this interface can confuse your Embedded Controller in a way that a normal reboot is not enough. You then have to power off your system, and remove the laptop battery for some seconds. An Embedded Controller typically is available on laptops and reads sensor values like battery state and temperature. The kernel accesses the EC through ACPI parsed code provided by BIOS tables. This option allows to access the EC directly without ACPI code being involved. Thus this option is a debug option that helps to write ACPI drivers and can be used to identify ACPI code or EC firmware bugs. config ACPI_PROC_EVENT bool "Deprecated /proc/acpi/event support" depends on PROC_FS default y help A user-space daemon, acpid, typically reads /proc/acpi/event and handles all ACPI-generated events. These events are now delivered to user-space either via the input layer or as netlink events. This build option enables the old code for legacy user-space implementation. After some time, this will be moved under CONFIG_ACPI_PROCFS, and then deleted. Say Y here to retain the old behaviour. Say N if your user-space is newer than kernel 2.6.23 (September 2007). config ACPI_AC tristate "AC Adapter" depends on X86 select POWER_SUPPLY default y help This driver supports the AC Adapter object, which indicates whether a system is on AC or not. If you have a system that can switch between A/C and battery, say Y. To compile this driver as a module, choose M here: the module will be called ac. config ACPI_BATTERY tristate "Battery" depends on X86 select POWER_SUPPLY default y help This driver adds support for battery information through /proc/acpi/battery. If you have a mobile system with a battery, say Y. To compile this driver as a module, choose M here: the module will be called battery. config ACPI_BUTTON tristate "Button" depends on INPUT default y help This driver handles events on the power, sleep, and lid buttons. A daemon reads /proc/acpi/event and perform user-defined actions such as shutting down the system. This is necessary for software-controlled poweroff. To compile this driver as a module, choose M here: the module will be called button. config ACPI_VIDEO tristate "Video" depends on X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL depends on INPUT select THERMAL help This driver implements the ACPI Extensions For Display Adapters for integrated graphics devices on motherboard, as specified in ACPI 2.0 Specification, Appendix B. This supports basic operations such as defining the video POST device, retrieving EDID information, and setting up a video output. To compile this driver as a module, choose M here: the module will be called video. config ACPI_FAN tristate "Fan" select THERMAL default y help This driver supports ACPI fan devices, allowing user-mode applications to perform basic fan control (on, off, status). To compile this driver as a module, choose M here: the module will be called fan. config ACPI_DOCK bool "Dock" depends on EXPERIMENTAL help This driver supports ACPI-controlled docking stations and removable drive bays such as the IBM Ultrabay and the Dell Module Bay. config ACPI_PROCESSOR tristate "Processor" select THERMAL select CPU_IDLE default y help This driver installs ACPI as the idle handler for Linux and uses ACPI C2 and C3 processor states to save power on systems that support it. It is required by several flavors of cpufreq performance-state drivers. To compile this driver as a module, choose M here: the module will be called processor. config ACPI_IPMI tristate "IPMI" depends on EXPERIMENTAL && IPMI_SI && IPMI_HANDLER default n help This driver enables the ACPI to access the BMC controller. And it uses the IPMI request/response message to communicate with BMC controller, which can be found on on the server. To compile this driver as a module, choose M here: the module will be called as acpi_ipmi. config ACPI_HOTPLUG_CPU bool depends on ACPI_PROCESSOR && HOTPLUG_CPU select ACPI_CONTAINER default y config ACPI_PROCESSOR_AGGREGATOR tristate "Processor Aggregator" depends on ACPI_PROCESSOR depends on EXPERIMENTAL depends on X86 help ACPI 4.0 defines processor Aggregator, which enables OS to perform specific processor configuration and control that applies to all processors in the platform. Currently only logical processor idling is defined, which is to reduce power consumption. This driver supports the new device. config ACPI_THERMAL tristate "Thermal Zone" depends on ACPI_PROCESSOR select THERMAL default y help This driver supports ACPI thermal zones. Most mobile and some desktop systems support ACPI thermal zones. It is HIGHLY recommended that this option be enabled, as your processor(s) may be damaged without it. To compile this driver as a module, choose M here: the module will be called thermal. config ACPI_NUMA bool "NUMA support" depends on NUMA depends on (X86 || IA64) default y if IA64_GENERIC || IA64_SGI_SN2 config ACPI_CUSTOM_DSDT_FILE string "Custom DSDT Table file to include" default "" depends on !STANDALONE help This option supports a custom DSDT by linking it into the kernel. See Documentation/acpi/dsdt-override.txt Enter the full path name to the file which includes the AmlCode declaration. If unsure, don't enter a file name. config ACPI_CUSTOM_DSDT bool default ACPI_CUSTOM_DSDT_FILE != "" config ACPI_BLACKLIST_YEAR int "Disable ACPI for systems before Jan 1st this year" if X86_32 default 0 help Enter a 4-digit year, e.g., 2001, to disable ACPI by default on platforms with DMI BIOS date before January 1st that year. "acpi=force" can be used to override this mechanism. Enter 0 to disable this mechanism and allow ACPI to run by default no matter what the year. (default) config ACPI_DEBUG bool "Debug Statements" default n help The ACPI subsystem can produce debug output. Saying Y enables this output and increases the kernel size by around 50K. Use the acpi.debug_layer and acpi.debug_level kernel command-line parameters documented in Documentation/acpi/debug.txt and Documentation/kernel-parameters.txt to control the type and amount of debug output. config ACPI_DEBUG_FUNC_TRACE bool "Additionally enable ACPI function tracing" default n depends on ACPI_DEBUG help ACPI Debug Statements slow down ACPI processing. Function trace is about half of the penalty and is rarely useful. config ACPI_PCI_SLOT tristate "PCI slot detection driver" depends on SYSFS default n help This driver creates entries in /sys/bus/pci/slots/ for all PCI slots in the system. This can help correlate PCI bus addresses, i.e., segment/bus/device/function tuples, with physical slots in the system. If you are unsure, say N. To compile this driver as a module, choose M here: the module will be called pci_slot. config X86_PM_TIMER bool "Power Management Timer Support" if EXPERT depends on X86 default y help The Power Management Timer is available on all ACPI-capable, in most cases even if ACPI is unusable or blacklisted. This timing source is not affected by power management features like aggressive processor idling, throttling, frequency and/or voltage scaling, unlike the commonly used Time Stamp Counter (TSC) timing source. You should nearly always say Y here because many modern systems require this timer. config ACPI_CONTAINER tristate "Container and Module Devices (EXPERIMENTAL)" depends on EXPERIMENTAL default (ACPI_HOTPLUG_MEMORY || ACPI_HOTPLUG_CPU || ACPI_HOTPLUG_IO) help This driver supports ACPI Container and Module devices (IDs ACPI0004, PNP0A05, and PNP0A06). This helps support hotplug of nodes, CPUs, and memory. To compile this driver as a module, choose M here: the module will be called container. config ACPI_HOTPLUG_MEMORY tristate "Memory Hotplug" depends on MEMORY_HOTPLUG default n help This driver supports ACPI memory hotplug. The driver fields notifications on ACPI memory devices (PNP0C80), which represent memory ranges that may be onlined or offlined during runtime. If your hardware and firmware do not support adding or removing memory devices at runtime, you need not enable this driver. To compile this driver as a module, choose M here: the module will be called acpi_memhotplug. config ACPI_SBS tristate "Smart Battery System" depends on X86 select POWER_SUPPLY help This driver supports the Smart Battery System, another type of access to battery information, found on some laptops. To compile this driver as a module, choose M here: the modules will be called sbs and sbshc. config ACPI_HED tristate "Hardware Error Device" help This driver supports the Hardware Error Device (PNP0C33), which is used to report some hardware errors notified via SCI, mainly the corrected errors. source "drivers/acpi/apei/Kconfig" endif # ACPI config ACPI_APEI bool "ACPI Platform Error Interface (APEI)" select PSTORE depends on X86 help APEI allows to report errors (for example from the chipset) to the operating system. This improves NMI handling especially. In addition it supports error serialization and error injection. config ACPI_APEI_GHES tristate "APEI Generic Hardware Error Source" depends on ACPI_APEI && X86 select ACPI_HED help Generic Hardware Error Source provides a way to report platform hardware errors (such as that from chipset). It works in so called "Firmware First" mode, that is, hardware errors are reported to firmware firstly, then reported to Linux by firmware. This way, some non-standard hardware error registers or non-standard hardware link can be checked by firmware to produce more valuable hardware error information for Linux. config ACPI_APEI_PCIEAER bool "APEI PCIe AER logging/recovering support" depends on ACPI_APEI && PCIEAER help PCIe AER errors may be reported via APEI firmware first mode. Turn on this option to enable the corresponding support. config ACPI_APEI_EINJ tristate "APEI Error INJection (EINJ)" depends on ACPI_APEI && DEBUG_FS help EINJ provides a hardware error injection mechanism, it is mainly used for debugging and testing the other parts of APEI and some other RAS features. config ACPI_APEI_ERST_DEBUG tristate "APEI Error Record Serialization Table (ERST) Debug Support" depends on ACPI_APEI help ERST is a way provided by APEI to save and retrieve hardware error information to and from a persistent store. Enable this if you want to debugging and testing the ERST kernel support and firmware implementation. # # HID driver configuration # menuconfig HID_SUPPORT bool "HID Devices" depends on INPUT default y ---help--- Say Y here to get to see options for various computer-human interface device drivers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if HID_SUPPORT config HID tristate "Generic HID support" depends on INPUT default y ---help--- A human interface device (HID) is a type of computer device that interacts directly with and takes input from humans. The term "HID" most commonly used to refer to the USB-HID specification, but other devices (such as, but not strictly limited to, Bluetooth) are designed using HID specification (this involves certain keyboards, mice, tablets, etc). This option compiles into kernel the generic HID layer code (parser, usages, etc.), which can then be used by transport-specific HID implementation (like USB or Bluetooth). For docs and specs, see http://www.usb.org/developers/hidpage/ If unsure, say Y. config HIDRAW bool "/dev/hidraw raw HID device support" depends on HID ---help--- Say Y here if you want to support HID devices (from the USB specification standpoint) that aren't strictly user interface devices, like monitor controls and Uninterruptable Power Supplies. This module supports these devices separately using a separate event interface on /dev/hidraw. There is also a /dev/hiddev configuration option in the USB HID configuration menu. In comparison to hiddev, this device does not process the hid events at all (no parsing, no lookups). This lets applications to work on raw hid events when they want to, and avoid using transport-specific userspace libhid/libusb libraries. If unsure, say Y. source "drivers/hid/usbhid/Kconfig" menu "Special HID drivers" depends on HID config HID_3M_PCT tristate "3M PCT touchscreen" depends on USB_HID ---help--- Support for 3M PCT touch screens. config HID_A4TECH tristate "A4 tech mice" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for A4 tech X5 and WOP-35 / Trust 450L mice. config HID_ACRUX tristate "ACRUX game controller support" depends on USB_HID ---help--- Say Y here if you want to enable support for ACRUX game controllers. config HID_ACRUX_FF tristate "ACRUX force feedback support" depends on HID_ACRUX select INPUT_FF_MEMLESS ---help--- Say Y here if you want to enable force feedback support for ACRUX game controllers. config HID_APPLE tristate "Apple {i,Power,Mac}Books" if EXPERT depends on (USB_HID || BT_HIDP) default !EXPERT ---help--- Support for some Apple devices which less or more break HID specification. Say Y here if you want support for keyboards of Apple iBooks, PowerBooks, MacBooks, MacBook Pros and Apple Aluminum. config HID_BELKIN tristate "Belkin Flip KVM and Wireless keyboard" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Belkin Flip KVM and Wireless keyboard. config HID_CANDO tristate "Cando dual touch panel" depends on USB_HID ---help--- Support for Cando dual touch panel. config HID_CHERRY tristate "Cherry Cymotion keyboard" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Cherry Cymotion keyboard. config HID_CHICONY tristate "Chicony Tactical pad" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Chicony Tactical pad. config HID_PRODIKEYS tristate "Prodikeys PC-MIDI Keyboard support" depends on USB_HID && SND select SND_RAWMIDI ---help--- Support for Prodikeys PC-MIDI Keyboard device support. Say Y here to enable support for this device. - Prodikeys PC-MIDI keyboard. The Prodikeys PC-MIDI acts as a USB Audio device, with one MIDI input and one MIDI output. These MIDI jacks appear as a sound "card" in the ALSA sound system. Note: if you say N here, this device will still function as a basic multimedia keyboard, but will lack support for the musical keyboard and some additional multimedia keys. config HID_CYPRESS tristate "Cypress mouse and barcode readers" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for cypress mouse and barcode readers. config HID_DRAGONRISE tristate "DragonRise Inc. game controller" depends on USB_HID ---help--- Say Y here if you have DragonRise Inc. game controllers. These might be branded as: - Tesun USB-703 - Media-tech MT1504 "Rogue" - DVTech JS19 "Gear" - Defender Game Master config DRAGONRISE_FF bool "DragonRise Inc. force feedback" depends on HID_DRAGONRISE select INPUT_FF_MEMLESS ---help--- Say Y here if you want to enable force feedback support for DragonRise Inc. game controllers. config HID_EMS_FF tristate "EMS Production Inc. force feedback support" depends on USB_HID select INPUT_FF_MEMLESS ---help--- Say Y here if you want to enable force feedback support for devices by EMS Production Ltd. Currently the following devices are known to be supported: - Trio Linker Plus II config HID_ELECOM tristate "ELECOM BM084 bluetooth mouse" depends on BT_HIDP ---help--- Support for the ELECOM BM084 (bluetooth mouse). config HID_EZKEY tristate "Ezkey BTC 8193 keyboard" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Ezkey BTC 8193 keyboard. config HID_KEYTOUCH tristate "Keytouch HID devices" depends on USB_HID ---help--- Support for Keytouch HID devices not fully compliant with the specification. Currently supported: - Keytouch IEC 60945 config HID_KYE tristate "Kye/Genius Ergo Mouse" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Kye/Genius Ergo Mouse. config HID_UCLOGIC tristate "UC-Logic" depends on USB_HID ---help--- Support for UC-Logic tablets. config HID_WALTOP tristate "Waltop" depends on USB_HID ---help--- Support for Waltop tablets. config HID_GYRATION tristate "Gyration remote control" depends on USB_HID ---help--- Support for Gyration remote control. config HID_TWINHAN tristate "Twinhan IR remote control" depends on USB_HID ---help--- Support for Twinhan IR remote control. config HID_KENSINGTON tristate "Kensington Slimblade Trackball" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Kensington Slimblade Trackball. config HID_LCPOWER tristate "LC-Power" depends on USB_HID ---help--- Support for LC-Power RC1000MCE RF remote control. config HID_LOGITECH tristate "Logitech devices" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Logitech devices that are not fully compliant with HID standard. config LOGITECH_FF bool "Logitech force feedback support" depends on HID_LOGITECH select INPUT_FF_MEMLESS help Say Y here if you have one of these devices: - Logitech WingMan Cordless RumblePad - Logitech WingMan Cordless RumblePad 2 - Logitech WingMan Force 3D - Logitech Formula Force EX - Logitech WingMan Formula Force GP - Logitech MOMO Force wheel and if you want to enable force feedback for them. Note: if you say N here, this device will still be supported, but without force feedback. config LOGIRUMBLEPAD2_FF bool "Logitech RumblePad/Rumblepad 2 force feedback support" depends on HID_LOGITECH select INPUT_FF_MEMLESS help Say Y here if you want to enable force feedback support for Logitech RumblePad and Rumblepad 2 devices. config LOGIG940_FF bool "Logitech Flight System G940 force feedback support" depends on HID_LOGITECH select INPUT_FF_MEMLESS help Say Y here if you want to enable force feedback support for Logitech Flight System G940 devices. config LOGIWII_FF bool "Logitech Speed Force Wireless force feedback support" depends on HID_LOGITECH select INPUT_FF_MEMLESS help Say Y here if you want to enable force feedback support for Logitech Speed Force Wireless (Wii) devices. config HID_MAGICMOUSE tristate "Apple MagicMouse multi-touch support" depends on BT_HIDP ---help--- Support for the Apple Magic Mouse multi-touch. Say Y here if you want support for the multi-touch features of the Apple Wireless "Magic" Mouse. config HID_MICROSOFT tristate "Microsoft non-fully HID-compliant devices" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Microsoft devices that are not fully compliant with HID standard. config HID_MOSART tristate "MosArt dual-touch panels" depends on USB_HID ---help--- Support for MosArt dual-touch panels. config HID_MONTEREY tristate "Monterey Genius KB29E keyboard" if EXPERT depends on USB_HID default !EXPERT ---help--- Support for Monterey Genius KB29E. config HID_MULTITOUCH tristate "HID Multitouch panels" depends on USB_HID ---help--- Generic support for HID multitouch panels. Say Y here if you have one of the following devices: - Cypress TrueTouch panels - Hanvon dual touch panels - IrTouch Infrared USB panels - Pixcir dual touch panels - 'Sensing Win7-TwoFinger' panel by GeneralTouch - eGalax dual-touch panels, including the Joojoo and Wetab tablets If unsure, say N. To compile this driver as a module, choose M here: the module will be called hid-multitouch. config HID_NTRIG tristate "N-Trig touch screen" depends on USB_HID ---help--- Support for N-Trig touch screen. config HID_ORTEK tristate "Ortek PKB-1700/WKB-2000/Skycable wireless keyboard and mouse trackpad" depends on USB_HID ---help--- There are certain devices which have LogicalMaximum wrong in the keyboard usage page of their report descriptor. The most prevailing ones so far are manufactured by Ortek, thus the name of the driver. Currently supported devices by this driver are - Ortek PKB-1700 - Ortek WKB-2000 - Skycable wireless presenter config HID_PANTHERLORD tristate "Pantherlord/GreenAsia game controller" depends on USB_HID ---help--- Say Y here if you have a PantherLord/GreenAsia based game controller or adapter. config PANTHERLORD_FF bool "Pantherlord force feedback support" depends on HID_PANTHERLORD select INPUT_FF_MEMLESS ---help--- Say Y here if you have a PantherLord/GreenAsia based game controller or adapter and want to enable force feedback support for it. config HID_PETALYNX tristate "Petalynx Maxter remote control" depends on USB_HID ---help--- Support for Petalynx Maxter remote control. config HID_PICOLCD tristate "PicoLCD (graphic version)" depends on USB_HID ---help--- This provides support for Minibox PicoLCD devices, currently only the graphical ones are supported. This includes support for the following device features: - Keypad - Switching between Firmware and Flash mode - EEProm / Flash access (via debugfs) Features selectively enabled: - Framebuffer for monochrome 256x64 display - Backlight control - Contrast control - General purpose outputs Features that are not (yet) supported: - IR config HID_PICOLCD_FB bool "Framebuffer support" if EXPERT default !EXPERT depends on HID_PICOLCD depends on HID_PICOLCD=FB || FB=y select FB_DEFERRED_IO select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS ---help--- Provide access to PicoLCD's 256x64 monochrome display via a frambuffer device. config HID_PICOLCD_BACKLIGHT bool "Backlight control" if EXPERT default !EXPERT depends on HID_PICOLCD depends on HID_PICOLCD=BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=y ---help--- Provide access to PicoLCD's backlight control via backlight class. config HID_PICOLCD_LCD bool "Contrast control" if EXPERT default !EXPERT depends on HID_PICOLCD depends on HID_PICOLCD=LCD_CLASS_DEVICE || LCD_CLASS_DEVICE=y ---help--- Provide access to PicoLCD's LCD contrast via lcd class. config HID_PICOLCD_LEDS bool "GPO via leds class" if EXPERT default !EXPERT depends on HID_PICOLCD depends on HID_PICOLCD=LEDS_CLASS || LEDS_CLASS=y ---help--- Provide access to PicoLCD's GPO pins via leds class. config HID_QUANTA tristate "Quanta Optical Touch panels" depends on USB_HID ---help--- Support for Quanta Optical Touch dual-touch panels. config HID_ROCCAT tristate "Roccat special event support" depends on USB_HID ---help--- Support for Roccat special events. Say Y here if you have a Roccat mouse or keyboard and want OSD or macro execution support. config HID_ROCCAT_COMMON tristate config HID_ROCCAT_ARVO tristate "Roccat Arvo keyboard support" depends on USB_HID select HID_ROCCAT select HID_ROCCAT_COMMON ---help--- Support for Roccat Arvo keyboard. config HID_ROCCAT_KONE tristate "Roccat Kone Mouse support" depends on USB_HID select HID_ROCCAT select HID_ROCCAT_COMMON ---help--- Support for Roccat Kone mouse. config HID_ROCCAT_KONEPLUS tristate "Roccat Kone[+] mouse support" depends on USB_HID select HID_ROCCAT select HID_ROCCAT_COMMON ---help--- Support for Roccat Kone[+] mouse. config HID_ROCCAT_KOVAPLUS tristate "Roccat Kova[+] mouse support" depends on USB_HID select HID_ROCCAT select HID_ROCCAT_COMMON ---help--- Support for Roccat Kova[+] mouse. config HID_ROCCAT_PYRA tristate "Roccat Pyra mouse support" depends on USB_HID select HID_ROCCAT select HID_ROCCAT_COMMON ---help--- Support for Roccat Pyra mouse. config HID_SAMSUNG tristate "Samsung InfraRed remote control or keyboards" depends on USB_HID ---help--- Support for Samsung InfraRed remote control or keyboards. config HID_SONY tristate "Sony PS3 controller" depends on USB_HID ---help--- Support for Sony PS3 controller. config HID_STANTUM tristate "Stantum multitouch panel" depends on USB_HID ---help--- Support for Stantum multitouch panel. config HID_SUNPLUS tristate "Sunplus wireless desktop" depends on USB_HID ---help--- Support for Sunplus wireless desktop. config HID_GREENASIA tristate "GreenAsia (Product ID 0x12) game controller support" depends on USB_HID ---help--- Say Y here if you have a GreenAsia (Product ID 0x12) based game controller or adapter. config GREENASIA_FF bool "GreenAsia (Product ID 0x12) force feedback support" depends on HID_GREENASIA select INPUT_FF_MEMLESS ---help--- Say Y here if you have a GreenAsia (Product ID 0x12) based game controller (like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter and want to enable force feedback support for it. config HID_SMARTJOYPLUS tristate "SmartJoy PLUS PS2/USB adapter support" depends on USB_HID ---help--- Support for SmartJoy PLUS PS2/USB adapter. config SMARTJOYPLUS_FF bool "SmartJoy PLUS PS2/USB adapter force feedback support" depends on HID_SMARTJOYPLUS select INPUT_FF_MEMLESS ---help--- Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to enable force feedback support for it. config HID_TOPSEED tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support" depends on USB_HID ---help--- Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic CLLRCMCE remote control. config HID_THRUSTMASTER tristate "ThrustMaster devices support" depends on USB_HID ---help--- Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or a THRUSTMASTER Ferrari GT Rumble Wheel. config THRUSTMASTER_FF bool "ThrustMaster devices force feedback support" depends on HID_THRUSTMASTER select INPUT_FF_MEMLESS ---help--- Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3, a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT Rumble Force or Force Feedback Wheel. config HID_WACOM tristate "Wacom Bluetooth devices support" depends on BT_HIDP ---help--- Support for Wacom Graphire Bluetooth tablet. config HID_WACOM_POWER_SUPPLY bool "Wacom Bluetooth devices power supply status support" depends on HID_WACOM select POWER_SUPPLY ---help--- Say Y here if you want to enable power supply status monitoring for Wacom Bluetooth devices. config HID_ZEROPLUS tristate "Zeroplus based game controller support" depends on USB_HID ---help--- Say Y here if you have a Zeroplus based game controller. config ZEROPLUS_FF bool "Zeroplus based game controller force feedback support" depends on HID_ZEROPLUS select INPUT_FF_MEMLESS ---help--- Say Y here if you have a Zeroplus based game controller and want to have force feedback support for it. config HID_ZYDACRON tristate "Zydacron remote control support" depends on USB_HID ---help--- Support for Zydacron remote control. endmenu endif # HID_SUPPORT comment "USB Input Devices" depends on USB config USB_HID tristate "USB Human Interface Device (full HID) support" default y depends on USB && INPUT select HID ---help--- Say Y here if you want full HID support to connect USB keyboards, mice, joysticks, graphic tablets, or any other HID based devices to your computer via USB, as well as Uninterruptible Power Supply (UPS) and monitor control devices. You can't use this driver and the HIDBP (Boot Protocol) keyboard and mouse drivers at the same time. More information is available: . If unsure, say Y. To compile this driver as a module, choose M here: the module will be called usbhid. comment "Input core support is needed for USB HID input layer or HIDBP support" depends on USB_HID && INPUT=n config HID_PID bool "PID device support" help Say Y here if you have a PID-compliant device and wish to enable force feedback for it. Microsoft Sidewinder Force Feedback 2 is one of such devices. config USB_HIDDEV bool "/dev/hiddev raw HID device support" depends on USB_HID help Say Y here if you want to support HID devices (from the USB specification standpoint) that aren't strictly user interface devices, like monitor controls and Uninterruptable Power Supplies. This module supports these devices separately using a separate event interface on /dev/usb/hiddevX (char 180:96 to 180:111). If unsure, say Y. menu "USB HID Boot Protocol drivers" depends on USB!=n && USB_HID!=y && EXPERT config USB_KBD tristate "USB HIDBP Keyboard (simple Boot) support" depends on USB && INPUT ---help--- Say Y here only if you are absolutely sure that you don't want to use the generic HID driver for your USB keyboard and prefer to use the keyboard in its limited Boot Protocol mode instead. This is almost certainly not what you want. This is mostly useful for embedded applications or simple keyboards. To compile this driver as a module, choose M here: the module will be called usbkbd. If even remotely unsure, say N. config USB_MOUSE tristate "USB HIDBP Mouse (simple Boot) support" depends on USB && INPUT ---help--- Say Y here only if you are absolutely sure that you don't want to use the generic HID driver for your USB mouse and prefer to use the mouse in its limited Boot Protocol mode instead. This is almost certainly not what you want. This is mostly useful for embedded applications or simple mice. To compile this driver as a module, choose M here: the module will be called usbmouse. If even remotely unsure, say N. endmenu # # PPS support configuration # menu "PPS support" config PPS tristate "PPS support" depends on EXPERIMENTAL ---help--- PPS (Pulse Per Second) is a special pulse provided by some GPS antennae. Userland can use it to get a high-precision time reference. Some antennae's PPS signals are connected with the CD (Carrier Detect) pin of the serial line they use to communicate with the host. In this case use the SERIAL_LINE client support. Some antennae's PPS signals are connected with some special host inputs so you have to enable the corresponding client support. To compile this driver as a module, choose M here: the module will be called pps_core.ko. config PPS_DEBUG bool "PPS debugging messages" depends on PPS help Say Y here if you want the PPS support to produce a bunch of debug messages to the system log. Select this if you are having a problem with PPS support and want to see more of what is going on. config NTP_PPS bool "PPS kernel consumer support" depends on PPS && !NO_HZ help This option adds support for direct in-kernel time synchronization using an external PPS signal. It doesn't work on tickless systems at the moment. source drivers/pps/clients/Kconfig source drivers/pps/generators/Kconfig endmenu # # PPS generators configuration # comment "PPS generators support" config PPS_GENERATOR_PARPORT tristate "Parallel port PPS signal generator" depends on PARPORT && BROKEN help If you say yes here you get support for a PPS signal generator which utilizes STROBE pin of a parallel port to send PPS signals. It uses parport abstraction layer and hrtimers to precisely control the signal. # # PPS clients configuration # if PPS comment "PPS clients support" config PPS_CLIENT_KTIMER tristate "Kernel timer client (Testing client, use for debug)" help If you say yes here you get support for a PPS debugging client which uses a kernel timer to generate the PPS signal. This driver can also be built as a module. If so, the module will be called pps-ktimer. config PPS_CLIENT_LDISC tristate "PPS line discipline" depends on PPS help If you say yes here you get support for a PPS source connected with the CD (Carrier Detect) pin of your serial port. config PPS_CLIENT_PARPORT tristate "Parallel port PPS client" depends on PPS && PARPORT help If you say yes here you get support for a PPS source connected with the interrupt pin of your parallel port. endif menuconfig UIO tristate "Userspace I/O drivers" depends on !S390 help Enable this to allow the userspace driver core code to be built. This code allows userspace programs easy access to kernel interrupts and memory locations, allowing some drivers to be written in userspace. Note that a small kernel driver is also required for interrupt handling to work properly. If you don't know what to do here, say N. if UIO config UIO_CIF tristate "generic Hilscher CIF Card driver" depends on PCI help Driver for Hilscher CIF DeviceNet and Profibus cards. This driver requires a userspace component called cif that handles all of the heavy lifting and can be found at: To compile this driver as a module, choose M here: the module will be called uio_cif. config UIO_PDRV tristate "Userspace I/O platform driver" help Generic platform driver for Userspace I/O devices. If you don't know what to do here, say N. config UIO_PDRV_GENIRQ tristate "Userspace I/O platform driver with generic IRQ handling" help Platform driver for Userspace I/O devices, including generic interrupt handling code. Shared interrupts are not supported. This kernel driver requires that the matching userspace driver handles interrupts in a special way. Userspace is responsible for acknowledging the hardware device if needed, and re-enabling interrupts in the interrupt controller using the write() syscall. If you don't know what to do here, say N. config UIO_AEC tristate "AEC video timestamp device" depends on PCI help UIO driver for the Adrienne Electronics Corporation PCI time code device. This device differs from other UIO devices since it uses I/O ports instead of memory mapped I/O. In order to make it possible for UIO to work with this device a utility, uioport, can be used to read and write the ports: git clone git://ifup.org/philips/uioport.git If you compile this as a module, it will be called uio_aec. config UIO_SERCOS3 tristate "Automata Sercos III PCI card driver" depends on PCI help Userspace I/O interface for the Sercos III PCI card from Automata GmbH. The userspace part of this driver will be available for download from the Automata GmbH web site. Automata GmbH: http://www.automataweb.com Sercos III interface: http://www.sercos.com If you compile this as a module, it will be called uio_sercos3. config UIO_PCI_GENERIC tristate "Generic driver for PCI 2.3 and PCI Express cards" depends on PCI help Generic driver that you can bind, dynamically, to any PCI 2.3 compliant and PCI Express card. It is useful, primarily, for virtualization scenarios. If you compile this as a module, it will be called uio_pci_generic. config UIO_NETX tristate "Hilscher NetX Card driver" depends on PCI help Driver for Hilscher NetX based fieldbus cards (cifX, comX). This driver requires a userspace component that comes with the card or is available from Hilscher (http://www.hilscher.com). To compile this driver as a module, choose M here; the module will be called uio_netx. config UIO_PRUSS tristate "Texas Instruments PRUSS driver" depends on ARCH_DAVINCI_DA850 help PRUSS driver for OMAPL138/DA850/AM18XX devices PRUSS driver requires user space components, examples and user space driver is available from below SVN repo - you may use anonymous login https://gforge.ti.com/gf/project/pru_sw/ More info on API is available at below wiki http://processors.wiki.ti.com/index.php/PRU_Linux_Application_Loader To compile this driver as a module, choose M here: the module will be called uio_pruss. endif config VHOST_NET tristate "Host kernel accelerator for virtio net (EXPERIMENTAL)" depends on NET && EVENTFD && (TUN || !TUN) && (MACVTAP || !MACVTAP) && EXPERIMENTAL ---help--- This kernel module can be loaded in host kernel to accelerate guest networking with virtio_net. Not to be confused with virtio_net module itself which needs to be loaded in guest kernel. To compile this driver as a module, choose M here: the module will be called vhost_net. menuconfig CONNECTOR tristate "Connector - unified userspace <-> kernelspace linker" depends on NET ---help--- This is unified userspace <-> kernelspace connector working on top of the netlink socket protocol. Connector support can also be built as a module. If so, the module will be called cn. if CONNECTOR config PROC_EVENTS boolean "Report process events to userspace" depends on CONNECTOR=y default y ---help--- Provide a connector that reports process events to userspace. Send events such as fork, exec, id change (uid, gid, suid, etc), and exit. endif # CONNECTOR # # ISA Plug and Play configuration # config ISAPNP bool "ISA Plug and Play support" depends on ISA help Say Y here if you would like support for ISA Plug and Play devices. Some information is in . If unsure, say Y. # # Plug and Play configuration # menuconfig PNP bool "Plug and Play support" depends on HAS_IOMEM depends on ISA || ACPI ---help--- Plug and Play (PnP) is a standard for peripherals which allows those peripherals to be configured by software, e.g. assign IRQ's or other parameters. No jumpers on the cards are needed, instead the values are provided to the cards from the BIOS, from the operating system, or using a user-space utility. Say Y here if you would like Linux to configure your Plug and Play devices. You should then also say Y to all of the protocols below. Alternatively, you can say N here and configure your PnP devices using user space utilities such as the isapnptools package. If unsure, say Y. config PNP_DEBUG_MESSAGES default y bool "PNP debugging messages" depends on PNP help Say Y here if you want the PNP layer to be able to produce debugging messages if needed. The messages can be enabled at boot-time with the pnp.debug kernel parameter. This option allows you to save a bit of space if you do not want the messages to even be built into the kernel. If you have any doubts about this, say Y here. if PNP comment "Protocols" source "drivers/pnp/isapnp/Kconfig" source "drivers/pnp/pnpbios/Kconfig" source "drivers/pnp/pnpacpi/Kconfig" endif # PNP # # Plug and Play ACPI configuration # config PNPACPI bool default (PNP && ACPI) # # Plug and Play BIOS configuration # config PNPBIOS bool "Plug and Play BIOS support (EXPERIMENTAL)" depends on ISA && X86 && EXPERIMENTAL default n ---help--- Linux uses the PNPBIOS as defined in "Plug and Play BIOS Specification Version 1.0A May 5, 1994" to autodetect built-in mainboard resources (e.g. parallel port resources). Some features (e.g. event notification, docking station information, ISAPNP services) are not currently implemented. If you would like the kernel to detect and allocate resources to your mainboard devices (on some systems they are disabled by the BIOS) say Y here. Also the PNPBIOS can help prevent resource conflicts between mainboard devices and other bus devices. Note: ACPI is expected to supersede PNPBIOS some day, currently it co-exists nicely. If you have a non-ISA system that supports ACPI, you probably don't need PNPBIOS support. config PNPBIOS_PROC_FS bool "Plug and Play BIOS /proc interface" depends on PNPBIOS && PROC_FS ---help--- If you say Y here and to "/proc file system support", you will be able to directly access the PNPBIOS. This includes resource allocation, ESCD, and other PNPBIOS services. Using this interface is potentially dangerous because the PNPBIOS driver will not be notified of any resource changes made by writing directly. Also some buggy systems will fault when accessing certain features in the PNPBIOS /proc interface (e.g. "boot" configs). See the latest pcmcia-cs (stand-alone package) for a nice set of PNPBIOS /proc interface tools (lspnp and setpnp). Unless you are debugging or have other specific reasons, it is recommended that you say N here. # # For a description of the syntax of this configuration file, # see Documentation/kbuild/kconfig-language.txt. # # Auxiliary display drivers configuration. # menuconfig AUXDISPLAY bool "Auxiliary Display support" ---help--- Say Y here to get to see options for auxiliary display drivers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if AUXDISPLAY config KS0108 tristate "KS0108 LCD Controller" depends on PARPORT_PC default n ---help--- If you have a LCD controlled by one or more KS0108 controllers, say Y. You will need also another more specific driver for your LCD. Depends on Parallel Port support. If you say Y at parport, you will be able to compile this as a module (M) and built-in as well (Y). To compile this as a module, choose M here: the module will be called ks0108. If unsure, say N. config KS0108_PORT hex "Parallel port where the LCD is connected" depends on KS0108 default 0x378 ---help--- The address of the parallel port where the LCD is connected. The first standard parallel port address is 0x378. The second standard parallel port address is 0x278. The third standard parallel port address is 0x3BC. You can specify a different address if you need. If you don't know what I'm talking about, load the parport module, and execute "dmesg" or "cat /proc/ioports". You can see there how many parallel ports are present and which address each one has. Usually you only need to use 0x378. If you compile this as a module, you can still override this using the module parameters. config KS0108_DELAY int "Delay between each control writing (microseconds)" depends on KS0108 default "2" ---help--- Amount of time the ks0108 should wait between each control write to the parallel port. If your LCD seems to miss random writings, increment this. If you don't know what I'm talking about, ignore it. If you compile this as a module, you can still override this value using the module parameters. config CFAG12864B tristate "CFAG12864B LCD" depends on X86 depends on FB depends on KS0108 select FB_SYS_FILLRECT select FB_SYS_COPYAREA select FB_SYS_IMAGEBLIT select FB_SYS_FOPS default n ---help--- If you have a Crystalfontz 128x64 2-color LCD, cfag12864b Series, say Y. You also need the ks0108 LCD Controller driver. For help about how to wire your LCD to the parallel port, check Documentation/auxdisplay/cfag12864b Depends on the x86 arch and the framebuffer support. The LCD framebuffer driver can be attached to a console. It will work fine. However, you can't attach it to the fbdev driver of the xorg server. To compile this as a module, choose M here: the modules will be called cfag12864b and cfag12864bfb. If unsure, say N. config CFAG12864B_RATE int "Refresh rate (hertz)" depends on CFAG12864B default "20" ---help--- Refresh rate of the LCD. As the LCD is not memory mapped, the driver has to make the work by software. This means you should be careful setting this value higher. If your CPUs are really slow or you feel the system is slowed down, decrease the value. Be careful modifying this value to a very high value: You can freeze the computer, or the LCD maybe can't draw as fast as you are requesting. If you don't know what I'm talking about, ignore it. If you compile this as a module, you can still override this value using the module parameters. endif # AUXDISPLAY # # I2C subsystem configuration # menuconfig I2C tristate "I2C support" depends on HAS_IOMEM select RT_MUTEXES ---help--- I2C (pronounce: I-square-C) is a slow serial bus protocol used in many micro controller applications and developed by Philips. SMBus, or System Management Bus is a subset of the I2C protocol. More information is contained in the directory , especially in the file called "summary" there. Both I2C and SMBus are supported here. You will need this for hardware sensors support, and also for Video For Linux support. If you want I2C support, you should say Y here and also to the specific driver for your bus adapter(s) below. This I2C support can also be built as a module. If so, the module will be called i2c-core. if I2C config I2C_BOARDINFO boolean default y config I2C_COMPAT boolean "Enable compatibility bits for old user-space" default y help Say Y here if you intend to run lm-sensors 3.1.1 or older, or any other user-space package which expects i2c adapters to be class devices. If you don't know, say Y. config I2C_CHARDEV tristate "I2C device interface" help Say Y here to use i2c-* device files, usually found in the /dev directory on your system. They make it possible to have user-space programs use the I2C bus. Information on how to do this is contained in the file . This support is also available as a module. If so, the module will be called i2c-dev. config I2C_MUX tristate "I2C bus multiplexing support" depends on EXPERIMENTAL help Say Y here if you want the I2C core to support the ability to handle multiplexed I2C bus topologies, by presenting each multiplexed segment as a I2C adapter. This support is also available as a module. If so, the module will be called i2c-mux. source drivers/i2c/muxes/Kconfig config I2C_HELPER_AUTO bool "Autoselect pertinent helper modules" default y help Some I2C bus drivers require so-called "I2C algorithm" modules to work. These are basically software-only abstractions of generic I2C interfaces. This option will autoselect them so that you don't have to care. Unselect this only if you need to enable additional helper modules, for example for use with external I2C bus drivers. In doubt, say Y. config I2C_SMBUS tristate "SMBus-specific protocols" if !I2C_HELPER_AUTO help Say Y here if you want support for SMBus extensions to the I2C specification. At the moment, the only supported extension is the SMBus alert protocol. This support is also available as a module. If so, the module will be called i2c-smbus. source drivers/i2c/algos/Kconfig source drivers/i2c/busses/Kconfig config I2C_DEBUG_CORE bool "I2C Core debugging messages" help Say Y here if you want the I2C core to produce a bunch of debug messages to the system log. Select this if you are having a problem with I2C support and want to see more of what is going on. config I2C_DEBUG_ALGO bool "I2C Algorithm debugging messages" help Say Y here if you want the I2C algorithm drivers to produce a bunch of debug messages to the system log. Select this if you are having a problem with I2C support and want to see more of what is going on. config I2C_DEBUG_BUS bool "I2C Bus debugging messages" help Say Y here if you want the I2C bus drivers to produce a bunch of debug messages to the system log. Select this if you are having a problem with I2C support and want to see more of what is going on. endif # I2C # # I2C algorithm drivers configuration # menu "I2C Algorithms" visible if !I2C_HELPER_AUTO config I2C_ALGOBIT tristate "I2C bit-banging interfaces" config I2C_ALGOPCF tristate "I2C PCF 8584 interfaces" config I2C_ALGOPCA tristate "I2C PCA 9564 interfaces" endmenu # # Multiplexer I2C chip drivers configuration # menu "Multiplexer I2C Chip support" depends on I2C_MUX config I2C_MUX_GPIO tristate "GPIO-based I2C multiplexer" depends on GENERIC_GPIO help If you say yes to this option, support will be included for a GPIO based I2C multiplexer. This driver provides access to I2C busses connected through a MUX, which is controlled through GPIO pins. This driver can also be built as a module. If so, the module will be called gpio-i2cmux. config I2C_MUX_PCA9541 tristate "NXP PCA9541 I2C Master Selector" depends on EXPERIMENTAL help If you say yes here you get support for the NXP PCA9541 I2C Master Selector. This driver can also be built as a module. If so, the module will be called pca9541. config I2C_MUX_PCA954x tristate "Philips PCA954x I2C Mux/switches" depends on EXPERIMENTAL help If you say yes here you get support for the Philips PCA954x I2C mux/switch devices. This driver can also be built as a module. If so, the module will be called pca954x. endmenu # # Sensor device configuration # menu "I2C Hardware Bus support" comment "PC SMBus host controller drivers" depends on PCI config I2C_ALI1535 tristate "ALI 1535" depends on PCI help If you say yes to this option, support will be included for the SMB Host controller on Acer Labs Inc. (ALI) M1535 South Bridges. The SMB controller is part of the 7101 device, which is an ACPI-compliant Power Management Unit (PMU). This driver can also be built as a module. If so, the module will be called i2c-ali1535. config I2C_ALI1563 tristate "ALI 1563" depends on PCI && EXPERIMENTAL help If you say yes to this option, support will be included for the SMB Host controller on Acer Labs Inc. (ALI) M1563 South Bridges. The SMB controller is part of the 7101 device, which is an ACPI-compliant Power Management Unit (PMU). This driver can also be built as a module. If so, the module will be called i2c-ali1563. config I2C_ALI15X3 tristate "ALI 15x3" depends on PCI help If you say yes to this option, support will be included for the Acer Labs Inc. (ALI) M1514 and M1543 motherboard I2C interfaces. This driver can also be built as a module. If so, the module will be called i2c-ali15x3. config I2C_AMD756 tristate "AMD 756/766/768/8111 and nVidia nForce" depends on PCI help If you say yes to this option, support will be included for the AMD 756/766/768 mainboard I2C interfaces. The driver also includes support for the first (SMBus 1.0) I2C interface of the AMD 8111 and the nVidia nForce I2C interface. This driver can also be built as a module. If so, the module will be called i2c-amd756. config I2C_AMD756_S4882 tristate "SMBus multiplexing on the Tyan S4882" depends on I2C_AMD756 && X86 && EXPERIMENTAL help Enabling this option will add specific SMBus support for the Tyan S4882 motherboard. On this 4-CPU board, the SMBus is multiplexed over 8 different channels, where the various memory module EEPROMs and temperature sensors live. Saying yes here will give you access to these in addition to the trunk. This driver can also be built as a module. If so, the module will be called i2c-amd756-s4882. config I2C_AMD8111 tristate "AMD 8111" depends on PCI help If you say yes to this option, support will be included for the second (SMBus 2.0) AMD 8111 mainboard I2C interface. This driver can also be built as a module. If so, the module will be called i2c-amd8111. config I2C_I801 tristate "Intel 82801 (ICH/PCH)" depends on PCI help If you say yes to this option, support will be included for the Intel 801 family of mainboard I2C interfaces. Specifically, the following versions of the chipset are supported: 82801AA 82801AB 82801BA 82801CA/CAM 82801DB 82801EB/ER (ICH5/ICH5R) 6300ESB ICH6 ICH7 ESB2 ICH8 ICH9 EP80579 (Tolapai) ICH10 5/3400 Series (PCH) 6 Series (PCH) Patsburg (PCH) DH89xxCC (PCH) This driver can also be built as a module. If so, the module will be called i2c-i801. config I2C_ISCH tristate "Intel SCH SMBus 1.0" depends on PCI select MFD_CORE select LPC_SCH help Say Y here if you want to use SMBus controller on the Intel SCH based systems. This driver can also be built as a module. If so, the module will be called i2c-isch. config I2C_PIIX4 tristate "Intel PIIX4 and compatible (ATI/AMD/Serverworks/Broadcom/SMSC)" depends on PCI help If you say yes to this option, support will be included for the Intel PIIX4 family of mainboard I2C interfaces. Specifically, the following versions of the chipset are supported (note that Serverworks is part of Broadcom): Intel PIIX4 Intel 440MX ATI IXP200 ATI IXP300 ATI IXP400 ATI SB600 ATI SB700 ATI SB800 AMD Hudson-2 Serverworks OSB4 Serverworks CSB5 Serverworks CSB6 Serverworks HT-1000 Serverworks HT-1100 SMSC Victory66 This driver can also be built as a module. If so, the module will be called i2c-piix4. config I2C_NFORCE2 tristate "Nvidia nForce2, nForce3 and nForce4" depends on PCI help If you say yes to this option, support will be included for the Nvidia nForce2, nForce3 and nForce4 families of mainboard I2C interfaces. This driver can also be built as a module. If so, the module will be called i2c-nforce2. config I2C_NFORCE2_S4985 tristate "SMBus multiplexing on the Tyan S4985" depends on I2C_NFORCE2 && X86 && EXPERIMENTAL help Enabling this option will add specific SMBus support for the Tyan S4985 motherboard. On this 4-CPU board, the SMBus is multiplexed over 4 different channels, where the various memory module EEPROMs live. Saying yes here will give you access to these in addition to the trunk. This driver can also be built as a module. If so, the module will be called i2c-nforce2-s4985. config I2C_SIS5595 tristate "SiS 5595" depends on PCI help If you say yes to this option, support will be included for the SiS5595 SMBus (a subset of I2C) interface. This driver can also be built as a module. If so, the module will be called i2c-sis5595. config I2C_SIS630 tristate "SiS 630/730" depends on PCI help If you say yes to this option, support will be included for the SiS630 and SiS730 SMBus (a subset of I2C) interface. This driver can also be built as a module. If so, the module will be called i2c-sis630. config I2C_SIS96X tristate "SiS 96x" depends on PCI help If you say yes to this option, support will be included for the SiS 96x SMBus (a subset of I2C) interfaces. Specifically, the following chipsets are supported: 645/961 645DX/961 645DX/962 648/961 650/961 735 745 This driver can also be built as a module. If so, the module will be called i2c-sis96x. config I2C_VIA tristate "VIA VT82C586B" depends on PCI && EXPERIMENTAL select I2C_ALGOBIT help If you say yes to this option, support will be included for the VIA 82C586B I2C interface This driver can also be built as a module. If so, the module will be called i2c-via. config I2C_VIAPRO tristate "VIA VT82C596/82C686/82xx and CX700/VX8xx" depends on PCI help If you say yes to this option, support will be included for the VIA VT82C596 and later SMBus interface. Specifically, the following chipsets are supported: VT82C596A/B VT82C686A/B VT8231 VT8233/A VT8235 VT8237R/A/S VT8251 CX700 VX800/VX820 VX855/VX875 This driver can also be built as a module. If so, the module will be called i2c-viapro. if ACPI comment "ACPI drivers" config I2C_SCMI tristate "SMBus Control Method Interface" help This driver supports the SMBus Control Method Interface. It needs the BIOS to declare ACPI control methods as described in the SMBus Control Method Interface specification. To compile this driver as a module, choose M here: the module will be called i2c-scmi. endif # ACPI comment "Mac SMBus host controller drivers" depends on PPC_CHRP || PPC_PMAC config I2C_HYDRA tristate "CHRP Apple Hydra Mac I/O I2C interface" depends on PCI && PPC_CHRP && EXPERIMENTAL select I2C_ALGOBIT help This supports the use of the I2C interface in the Apple Hydra Mac I/O chip on some CHRP machines (e.g. the LongTrail). Say Y if you have such a machine. This support is also available as a module. If so, the module will be called i2c-hydra. config I2C_POWERMAC tristate "Powermac I2C interface" depends on PPC_PMAC default y help This exposes the various PowerMac i2c interfaces to the linux i2c layer and to userland. It is used by various drivers on the PowerMac platform, and should generally be enabled. This support is also available as a module. If so, the module will be called i2c-powermac. comment "I2C system bus drivers (mostly embedded / system-on-chip)" config I2C_AT91 tristate "Atmel AT91 I2C Two-Wire interface (TWI)" depends on ARCH_AT91 && EXPERIMENTAL && BROKEN help This supports the use of the I2C interface on Atmel AT91 processors. This driver is BROKEN because the controller which it uses will easily trigger RX overrun and TX underrun errors. Using low I2C clock rates may partially work around those issues on some systems. Another serious problem is that there is no documented way to issue repeated START conditions, as needed to support combined I2C messages. Use the i2c-gpio driver unless your system can cope with those limitations. config I2C_AU1550 tristate "Au1550/Au1200 SMBus interface" depends on SOC_AU1550 || SOC_AU1200 help If you say yes to this option, support will be included for the Au1550 and Au1200 SMBus interface. This driver can also be built as a module. If so, the module will be called i2c-au1550. config I2C_BLACKFIN_TWI tristate "Blackfin TWI I2C support" depends on BLACKFIN depends on !BF561 && !BF531 && !BF532 && !BF533 help This is the I2C bus driver for Blackfin on-chip TWI interface. This driver can also be built as a module. If so, the module will be called i2c-bfin-twi. config I2C_BLACKFIN_TWI_CLK_KHZ int "Blackfin TWI I2C clock (kHz)" depends on I2C_BLACKFIN_TWI range 21 400 default 50 help The unit of the TWI clock is kHz. config I2C_CPM tristate "Freescale CPM1 or CPM2 (MPC8xx/826x)" depends on (CPM1 || CPM2) && OF_I2C help This supports the use of the I2C interface on Freescale processors with CPM1 or CPM2. This driver can also be built as a module. If so, the module will be called i2c-cpm. config I2C_DAVINCI tristate "DaVinci I2C driver" depends on ARCH_DAVINCI help Support for TI DaVinci I2C controller driver. This driver can also be built as a module. If so, the module will be called i2c-davinci. Please note that this driver might be needed to bring up other devices such as DaVinci NIC. For details please see http://www.ti.com/davinci config I2C_DESIGNWARE tristate "Synopsys DesignWare" depends on HAVE_CLK help If you say yes to this option, support will be included for the Synopsys DesignWare I2C adapter. Only master mode is supported. This driver can also be built as a module. If so, the module will be called i2c-designware. config I2C_GPIO tristate "GPIO-based bitbanging I2C" depends on GENERIC_GPIO select I2C_ALGOBIT help This is a very simple bitbanging I2C driver utilizing the arch-neutral GPIO API to control the SCL and SDA lines. config I2C_HIGHLANDER tristate "Highlander FPGA SMBus interface" depends on SH_HIGHLANDER help If you say yes to this option, support will be included for the SMBus interface located in the FPGA on various Highlander boards, particularly the R0P7780LC0011RL and R0P7785LC0011RL FPGAs. This is wholly unrelated to the SoC I2C. This driver can also be built as a module. If so, the module will be called i2c-highlander. config I2C_IBM_IIC tristate "IBM PPC 4xx on-chip I2C interface" depends on 4xx help Say Y here if you want to use IIC peripheral found on embedded IBM PPC 4xx based systems. This driver can also be built as a module. If so, the module will be called i2c-ibm_iic. config I2C_IMX tristate "IMX I2C interface" depends on ARCH_MXC help Say Y here if you want to use the IIC bus controller on the Freescale i.MX/MXC processors. This driver can also be built as a module. If so, the module will be called i2c-imx. config I2C_INTEL_MID tristate "Intel Moorestown/Medfield Platform I2C controller" depends on PCI help Say Y here if you have an Intel Moorestown/Medfield platform I2C controller. This support is also available as a module. If so, the module will be called i2c-intel-mid. config I2C_IOP3XX tristate "Intel IOPx3xx and IXP4xx on-chip I2C interface" depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || ARCH_IOP13XX help Say Y here if you want to use the IIC bus controller on the Intel IOPx3xx I/O Processors or IXP4xx Network Processors. This driver can also be built as a module. If so, the module will be called i2c-iop3xx. config I2C_IXP2000 tristate "IXP2000 GPIO-Based I2C Interface (DEPRECATED)" depends on ARCH_IXP2000 select I2C_ALGOBIT help Say Y here if you have an Intel IXP2000 (2400, 2800, 2850) based system and are using GPIO lines for an I2C bus. This support is also available as a module. If so, the module will be called i2c-ixp2000. This driver is deprecated and will be dropped soon. Use i2c-gpio instead. config I2C_MPC tristate "MPC107/824x/85xx/512x/52xx/83xx/86xx" depends on PPC help If you say yes to this option, support will be included for the built-in I2C interface on the MPC107, Tsi107, MPC512x, MPC52xx, MPC8240, MPC8245, MPC83xx, MPC85xx and MPC8641 family processors. This driver can also be built as a module. If so, the module will be called i2c-mpc. config I2C_MV64XXX tristate "Marvell mv64xxx I2C Controller" depends on (MV64X60 || PLAT_ORION) && EXPERIMENTAL help If you say yes to this option, support will be included for the built-in I2C interface on the Marvell 64xxx line of host bridges. This driver can also be built as a module. If so, the module will be called i2c-mv64xxx. config I2C_MXS tristate "Freescale i.MX28 I2C interface" depends on SOC_IMX28 help Say Y here if you want to use the I2C bus controller on the Freescale i.MX28 processors. This driver can also be built as a module. If so, the module will be called i2c-mxs. config I2C_NOMADIK tristate "ST-Ericsson Nomadik/Ux500 I2C Controller" depends on PLAT_NOMADIK help If you say yes to this option, support will be included for the I2C interface from ST-Ericsson's Nomadik and Ux500 architectures. config I2C_NUC900 tristate "NUC900 I2C Driver" depends on ARCH_W90X900 help Say Y here to include support for I2C controller in the Winbond/Nuvoton NUC900 based System-on-Chip devices. config I2C_OCORES tristate "OpenCores I2C Controller" depends on EXPERIMENTAL help If you say yes to this option, support will be included for the OpenCores I2C controller. For details see http://www.opencores.org/projects.cgi/web/i2c/overview This driver can also be built as a module. If so, the module will be called i2c-ocores. config I2C_OMAP tristate "OMAP I2C adapter" depends on ARCH_OMAP default y if MACH_OMAP_H3 || MACH_OMAP_OSK help If you say yes to this option, support will be included for the I2C interface on the Texas Instruments OMAP1/2 family of processors. Like OMAP1510/1610/1710/5912 and OMAP242x. For details see http://www.ti.com/omap. config I2C_PASEMI tristate "PA Semi SMBus interface" depends on PPC_PASEMI && PCI help Supports the PA Semi PWRficient on-chip SMBus interfaces. config I2C_PCA_PLATFORM tristate "PCA9564/PCA9665 as platform device" select I2C_ALGOPCA default n help This driver supports a memory mapped Philips PCA9564/PCA9665 parallel bus to I2C bus controller. This driver can also be built as a module. If so, the module will be called i2c-pca-platform. config I2C_PMCMSP tristate "PMC MSP I2C TWI Controller" depends on PMC_MSP help This driver supports the PMC TWI controller on MSP devices. This driver can also be built as module. If so, the module will be called i2c-pmcmsp. config I2C_PNX tristate "I2C bus support for Philips PNX and NXP LPC targets" depends on ARCH_PNX4008 || ARCH_LPC32XX help This driver supports the Philips IP3204 I2C IP block master and/or slave controller This driver can also be built as a module. If so, the module will be called i2c-pnx. config I2C_PUV3 tristate "PKUnity v3 I2C bus support" depends on UNICORE32 && ARCH_PUV3 select I2C_ALGOBIT help This driver supports the I2C IP inside the PKUnity-v3 SoC. This I2C bus controller is under AMBA/AXI bus. This driver can also be built as a module. If so, the module will be called i2c-puv3. config I2C_PXA tristate "Intel PXA2XX I2C adapter" depends on ARCH_PXA || ARCH_MMP || (X86_32 && PCI && OF) help If you have devices in the PXA I2C bus, say yes to this option. This driver can also be built as a module. If so, the module will be called i2c-pxa. config I2C_PXA_PCI def_bool I2C_PXA && X86_32 && PCI && OF config I2C_PXA_SLAVE bool "Intel PXA2XX I2C Slave comms support" depends on I2C_PXA && !X86_32 help Support I2C slave mode communications on the PXA I2C bus. This is necessary for systems where the PXA may be a target on the I2C bus. config HAVE_S3C2410_I2C bool help This will include I2C support for Samsung SoCs. If you want to include I2C support for any machine, kindly select this in the respective Kconfig file. config I2C_S3C2410 tristate "S3C2410 I2C Driver" depends on HAVE_S3C2410_I2C help Say Y here to include support for I2C controller in the Samsung SoCs. config I2C_S6000 tristate "S6000 I2C support" depends on XTENSA_VARIANT_S6000 help This driver supports the on chip I2C device on the S6000 xtensa processor family. To compile this driver as a module, choose M here. The module will be called i2c-s6000. config I2C_SH7760 tristate "Renesas SH7760 I2C Controller" depends on CPU_SUBTYPE_SH7760 help This driver supports the 2 I2C interfaces on the Renesas SH7760. This driver can also be built as a module. If so, the module will be called i2c-sh7760. config I2C_SH_MOBILE tristate "SuperH Mobile I2C Controller" depends on SUPERH || ARCH_SHMOBILE help If you say yes to this option, support will be included for the built-in I2C interface on the Renesas SH-Mobile processor. This driver can also be built as a module. If so, the module will be called i2c-sh_mobile. config I2C_SIMTEC tristate "Simtec Generic I2C interface" select I2C_ALGOBIT help If you say yes to this option, support will be included for the Simtec Generic I2C interface. This driver is for the simple I2C bus used on newer Simtec products for general I2C, such as DDC on the Simtec BBD2016A. This driver can also be built as a module. If so, the module will be called i2c-simtec. config I2C_STU300 tristate "ST Microelectronics DDC I2C interface" depends on MACH_U300 default y if MACH_U300 help If you say yes to this option, support will be included for the I2C interface from ST Microelectronics simply called "DDC I2C" supporting both I2C and DDC, used in e.g. the U300 series mobile platforms. This driver can also be built as a module. If so, the module will be called i2c-stu300. config I2C_TEGRA tristate "NVIDIA Tegra internal I2C controller" depends on ARCH_TEGRA help If you say yes to this option, support will be included for the I2C controller embedded in NVIDIA Tegra SOCs config I2C_VERSATILE tristate "ARM Versatile/Realview I2C bus support" depends on ARCH_VERSATILE || ARCH_REALVIEW || ARCH_VEXPRESS select I2C_ALGOBIT help Say yes if you want to support the I2C serial bus on ARMs Versatile range of platforms. This driver can also be built as a module. If so, the module will be called i2c-versatile. config I2C_OCTEON tristate "Cavium OCTEON I2C bus support" depends on CPU_CAVIUM_OCTEON help Say yes if you want to support the I2C serial bus on Cavium OCTEON SOC. This driver can also be built as a module. If so, the module will be called i2c-octeon. config I2C_XILINX tristate "Xilinx I2C Controller" depends on EXPERIMENTAL && HAS_IOMEM help If you say yes to this option, support will be included for the Xilinx I2C controller. This driver can also be built as a module. If so, the module will be called xilinx_i2c. config I2C_EG20T tristate "Intel EG20T PCH/OKI SEMICONDUCTOR ML7213 IOH" depends on PCI help This driver is for PCH(Platform controller Hub) I2C of EG20T which is an IOH(Input/Output Hub) for x86 embedded processor. This driver can access PCH I2C bus device. This driver also supports the ML7213, a companion chip for the Atom E6xx series and compatible with the Intel EG20T PCH. comment "External I2C/SMBus adapter drivers" config I2C_DIOLAN_U2C tristate "Diolan U2C-12 USB adapter" depends on USB help If you say yes to this option, support will be included for Diolan U2C-12, a USB to I2C interface. This driver can also be built as a module. If so, the module will be called i2c-diolan-u2c. config I2C_PARPORT tristate "Parallel port adapter" depends on PARPORT select I2C_ALGOBIT select I2C_SMBUS help This supports parallel port I2C adapters such as the ones made by Philips or Velleman, Analog Devices evaluation boards, and more. Basically any adapter using the parallel port as an I2C bus with no extra chipset is supported by this driver, or could be. This driver is a replacement for (and was inspired by) an older driver named i2c-philips-par. The new driver supports more devices, and makes it easier to add support for new devices. An adapter type parameter is now mandatory. Please read the file Documentation/i2c/busses/i2c-parport for details. Another driver exists, named i2c-parport-light, which doesn't depend on the parport driver. This is meant for embedded systems. Don't say Y here if you intend to say Y or M there. This support is also available as a module. If so, the module will be called i2c-parport. config I2C_PARPORT_LIGHT tristate "Parallel port adapter (light)" select I2C_ALGOBIT select I2C_SMBUS help This supports parallel port I2C adapters such as the ones made by Philips or Velleman, Analog Devices evaluation boards, and more. Basically any adapter using the parallel port as an I2C bus with no extra chipset is supported by this driver, or could be. This driver is a light version of i2c-parport. It doesn't depend on the parport driver, and uses direct I/O access instead. This might be preferred on embedded systems where wasting memory for the clean but heavy parport handling is not an option. The drawback is a reduced portability and the impossibility to daisy-chain other parallel port devices. Don't say Y here if you said Y or M to i2c-parport. Saying M to both is possible but both modules should not be loaded at the same time. This support is also available as a module. If so, the module will be called i2c-parport-light. config I2C_TAOS_EVM tristate "TAOS evaluation module" depends on EXPERIMENTAL select SERIO select SERIO_SERPORT default n help This supports TAOS evaluation modules on serial port. In order to use this driver, you will need the inputattach tool, which is part of the input-utils package. If unsure, say N. This support is also available as a module. If so, the module will be called i2c-taos-evm. config I2C_TINY_USB tristate "Tiny-USB adapter" depends on USB help If you say yes to this option, support will be included for the i2c-tiny-usb, a simple do-it-yourself USB to I2C interface. See http://www.harbaum.org/till/i2c_tiny_usb for hardware details. This driver can also be built as a module. If so, the module will be called i2c-tiny-usb. comment "Other I2C/SMBus bus drivers" config I2C_ACORN tristate "Acorn IOC/IOMD I2C bus support" depends on ARCH_ACORN default y select I2C_ALGOBIT help Say yes if you want to support the I2C bus on Acorn platforms. If you don't know, say Y. config I2C_ELEKTOR tristate "Elektor ISA card" depends on ISA && BROKEN_ON_SMP select I2C_ALGOPCF help This supports the PCF8584 ISA bus I2C adapter. Say Y if you own such an adapter. This support is also available as a module. If so, the module will be called i2c-elektor. config I2C_PCA_ISA tristate "PCA9564/PCA9665 on an ISA bus" depends on ISA select I2C_ALGOPCA default n help This driver supports ISA boards using the Philips PCA9564/PCA9665 parallel bus to I2C bus controller. This driver can also be built as a module. If so, the module will be called i2c-pca-isa. This device is almost undetectable and using this driver on a system which doesn't have this device will result in long delays when I2C/SMBus chip drivers are loaded (e.g. at boot time). If unsure, say N. config I2C_SIBYTE tristate "SiByte SMBus interface" depends on SIBYTE_SB1xxx_SOC help Supports the SiByte SOC on-chip I2C interfaces (2 channels). config I2C_STUB tristate "I2C/SMBus Test Stub" depends on EXPERIMENTAL && m default 'n' help This module may be useful to developers of SMBus client drivers, especially for certain kinds of sensor chips. If you do build this module, be sure to read the notes and warnings in . If you don't know what to do here, definitely say N. config SCx200_I2C tristate "NatSemi SCx200 I2C using GPIO pins (DEPRECATED)" depends on SCx200_GPIO select I2C_ALGOBIT help Enable the use of two GPIO pins of a SCx200 processor as an I2C bus. If you don't know what to do here, say N. This support is also available as a module. If so, the module will be called scx200_i2c. This driver is deprecated and will be dropped soon. Use i2c-gpio (or scx200_acb) instead. config SCx200_I2C_SCL int "GPIO pin used for SCL" depends on SCx200_I2C default "12" help Enter the GPIO pin number used for the SCL signal. This value can also be specified with a module parameter. config SCx200_I2C_SDA int "GPIO pin used for SDA" depends on SCx200_I2C default "13" help Enter the GPIO pin number used for the SSA signal. This value can also be specified with a module parameter. config SCx200_ACB tristate "Geode ACCESS.bus support" depends on X86_32 && PCI help Enable the use of the ACCESS.bus controllers on the Geode SCx200 and SC1100 processors and the CS5535 and CS5536 Geode companion devices. If you don't know what to do here, say N. This support is also available as a module. If so, the module will be called scx200_acb. endmenu menuconfig TARGET_CORE tristate "Generic Target Core Mod (TCM) and ConfigFS Infrastructure" depends on SCSI && BLOCK select CONFIGFS_FS default n help Say Y or M here to enable the TCM Storage Engine and ConfigFS enabled control path for target_core_mod. This includes built-in TCM RAMDISK subsystem logic for virtual LUN 0 access if TARGET_CORE config TCM_IBLOCK tristate "TCM/IBLOCK Subsystem Plugin for Linux/BLOCK" help Say Y here to enable the TCM/IBLOCK subsystem plugin for non-buffered access to Linux/Block devices using BIO config TCM_FILEIO tristate "TCM/FILEIO Subsystem Plugin for Linux/VFS" help Say Y here to enable the TCM/FILEIO subsystem plugin for buffered access to Linux/VFS struct file or struct block_device config TCM_PSCSI tristate "TCM/pSCSI Subsystem Plugin for Linux/SCSI" help Say Y here to enable the TCM/pSCSI subsystem plugin for non-buffered passthrough access to Linux/SCSI device source "drivers/target/loopback/Kconfig" endif config LOOPBACK_TARGET tristate "TCM Virtual SAS target and Linux/SCSI LDD fabric loopback module" help Say Y here to enable the TCM Virtual SAS target and Linux/SCSI LLD fabric loopback module. config LOOPBACK_TARGET_CDB_DEBUG bool "TCM loopback fabric module CDB debug code" depends on LOOPBACK_TARGET help Say Y here to enable the TCM loopback fabric module CDB debug code config ISDN_DRV_SC tristate "Spellcaster support" depends on ISA help This enables support for the Spellcaster BRI ISDN boards. This driver currently builds only in a modularized version. To build it, choose M here: the module will be called sc. See for more information. # # ISDN device configuration # menuconfig ISDN bool "ISDN support" depends on NET depends on !S390 ---help--- ISDN ("Integrated Services Digital Network", called RNIS in France) is a fully digital telephone service that can be used for voice and data connections. If your computer is equipped with an ISDN adapter you can use it to connect to your Internet service provider (with SLIP or PPP) faster than via a conventional telephone modem (though still much slower than with DSL) or to make and accept voice calls (eg. turning your PC into a software answering machine or PABX). Select this option if you want your kernel to support ISDN. if ISDN menuconfig ISDN_I4L tristate "Old ISDN4Linux (deprecated)" ---help--- This driver allows you to use an ISDN adapter for networking connections and as dialin/out device. The isdn-tty's have a built in AT-compatible modem emulator. Network devices support autodial, channel-bundling, callback and caller-authentication without having a daemon running. A reduced T.70 protocol is supported with tty's suitable for German BTX. On D-Channel, the protocols EDSS1 (Euro-ISDN) and 1TR6 (German style) are supported. See for more information. ISDN support in the linux kernel is moving towards a new API, called CAPI (Common ISDN Application Programming Interface). Therefore the old ISDN4Linux layer will eventually become obsolete. It is still available, though, for use with adapters that are not supported by the new CAPI subsystem yet. source "drivers/isdn/i4l/Kconfig" menuconfig ISDN_CAPI tristate "CAPI 2.0 subsystem" help This provides CAPI (the Common ISDN Application Programming Interface) Version 2.0, a standard making it easy for programs to access ISDN hardware in a device independent way. (For details see .) CAPI supports making and accepting voice and data connections, controlling call options and protocols, as well as ISDN supplementary services like call forwarding or three-party conferences (if supported by the specific hardware driver). Select this option and the appropriate hardware driver below if you have an ISDN adapter supported by the CAPI subsystem. if ISDN_CAPI source "drivers/isdn/capi/Kconfig" source "drivers/isdn/hardware/Kconfig" endif # ISDN_CAPI source "drivers/isdn/gigaset/Kconfig" source "drivers/isdn/hysdn/Kconfig" source "drivers/isdn/mISDN/Kconfig" config ISDN_HDLC tristate select CRC_CCITT select BITREVERSE endif # ISDN config HYSDN tristate "Hypercope HYSDN cards (Champ, Ergo, Metro) support (module only)" depends on m && PROC_FS && PCI help Say Y here if you have one of Hypercope's active PCI ISDN cards Champ, Ergo and Metro. You will then get a module called hysdn. Please read the file for more information. config HYSDN_CAPI bool "HYSDN CAPI 2.0 support" depends on HYSDN && ISDN_CAPI help Say Y here if you like to use Hypercope's CAPI 2.0 interface. # # Old ISDN4Linux config # if ISDN_I4L config ISDN_PPP bool "Support synchronous PPP" depends on INET select SLHC help Over digital connections such as ISDN, there is no need to synchronize sender and recipient's clocks with start and stop bits as is done over analog telephone lines. Instead, one can use "synchronous PPP". Saying Y here will include this protocol. This protocol is used by Cisco and Sun for example. So you want to say Y here if the other end of your ISDN connection supports it. You will need a special version of pppd (called ipppd) for using this feature. See and for more information. config ISDN_PPP_VJ bool "Use VJ-compression with synchronous PPP" depends on ISDN_PPP help This enables Van Jacobson header compression for synchronous PPP. Say Y if the other end of the connection supports it. config ISDN_MPP bool "Support generic MP (RFC 1717)" depends on ISDN_PPP help With synchronous PPP enabled, it is possible to increase throughput by bundling several ISDN-connections, using this protocol. See for more information. config IPPP_FILTER bool "Filtering for synchronous PPP" depends on ISDN_PPP help Say Y here if you want to be able to filter the packets passing over IPPP interfaces. This allows you to control which packets count as activity (i.e. which packets will reset the idle timer or bring up a demand-dialled link) and which packets are to be dropped entirely. You need to say Y here if you wish to use the pass-filter and active-filter options to ipppd. config ISDN_PPP_BSDCOMP tristate "Support BSD compression" depends on ISDN_PPP help Support for the BSD-Compress compression method for PPP, which uses the LZW compression method to compress each PPP packet before it is sent over the wire. The machine at the other end of the PPP link (usually your ISP) has to support the BSD-Compress compression method as well for this to be useful. Even if they don't support it, it is safe to say Y here. config ISDN_AUDIO bool "Support audio via ISDN" help If you say Y here, the modem-emulator will support a subset of the EIA Class 8 Voice commands. Using a getty with voice-support (mgetty+sendfax by with an extension, available with the ISDN utility package for example), you will be able to use your Linux box as an ISDN-answering machine. Of course, this must be supported by the lowlevel driver also. Currently, the HiSax driver is the only voice-supporting driver. See for more information. config ISDN_TTY_FAX bool "Support AT-Fax Class 1 and 2 commands" depends on ISDN_AUDIO help If you say Y here, the modem-emulator will support a subset of the Fax Class 1 and 2 commands. Using a getty with fax-support (mgetty+sendfax, hylafax), you will be able to use your Linux box as an ISDN-fax-machine. This must be supported by the lowlevel driver also. See for more information. config ISDN_X25 bool "X.25 PLP on top of ISDN" depends on X25 help This feature provides the X.25 protocol over ISDN connections. See for more information if you are thinking about using this. menu "ISDN feature submodules" config ISDN_DRV_LOOP tristate "isdnloop support" depends on BROKEN_ON_SMP help This driver provides a virtual ISDN card. Its primary purpose is testing of linklevel features or configuration without getting charged by your service-provider for lots of phone calls. You need will need the loopctrl utility from the latest isdn4k-utils package to set up this driver. config ISDN_DIVERSION tristate "Support isdn diversion services" help This option allows you to use some supplementary diversion services in conjunction with the HiSax driver on an EURO/DSS1 line. Supported options are CD (call deflection), CFU (Call forward unconditional), CFB (Call forward when busy) and CFNR (call forward not reachable). Additionally the actual CFU, CFB and CFNR state may be interrogated. The use of CFU, CFB, CFNR and interrogation may be limited to some countries. The keypad protocol is still not implemented. CD should work in all countries if the service has been subscribed to. Please read the file . endmenu comment "ISDN4Linux hardware drivers" source "drivers/isdn/hisax/Kconfig" menu "Active cards" source "drivers/isdn/icn/Kconfig" source "drivers/isdn/pcbit/Kconfig" source "drivers/isdn/sc/Kconfig" source "drivers/isdn/act2000/Kconfig" endmenu # end ISDN_I4L endif # # modularer ISDN driver # menuconfig MISDN tristate "Modular ISDN driver" help Enable support for the modular ISDN driver. if MISDN != n config MISDN_DSP tristate "Digital Audio Processing of transparent data" depends on MISDN help Enable support for digital audio processing capability. This module may be used for special applications that require cross connecting of bchannels, conferencing, dtmf decoding, echo cancelation, tone generation, and Blowfish encryption and decryption. It may use hardware features if available. E.g. it is required for PBX4Linux. Go to http://isdn.eversberg.eu and get more information about this module and its usage. If unsure, say 'N'. config MISDN_L1OIP tristate "ISDN over IP tunnel" depends on MISDN help Enable support for ISDN over IP tunnel. It features: - dynamic IP exchange, if one or both peers have dynamic IPs - BRI (S0) and PRI (S2M) interface - layer 1 control via network keepalive frames - direct tunneling of physical interface via IP NOTE: This protocol is called 'Layer 1 over IP' and is not compatible with ISDNoIP (Agfeo) or TDMoIP. Protocol description is provided in the source code. source "drivers/isdn/hardware/mISDN/Kconfig" endif #MISDN menuconfig ISDN_DRV_GIGASET tristate "Siemens Gigaset support" select CRC_CCITT select BITREVERSE help This driver supports the Siemens Gigaset SX205/255 family of ISDN DECT bases, including the predecessors Gigaset 3070/3075 and 4170/4175 and their T-Com versions Sinus 45isdn and Sinus 721X. If you have one of these devices, say M here and for at least one of the connection specific parts that follow. This will build a module called "gigaset". Note: If you build your ISDN subsystem (ISDN_CAPI or ISDN_I4L) as a module, you have to build this driver as a module too, otherwise the Gigaset device won't show up as an ISDN device. if ISDN_DRV_GIGASET config GIGASET_CAPI bool "Gigaset CAPI support" depends on ISDN_CAPI='y'||(ISDN_CAPI='m'&&ISDN_DRV_GIGASET='m') default ISDN_I4L='n' help Build the Gigaset driver as a CAPI 2.0 driver interfacing with the Kernel CAPI subsystem. To use it with the old ISDN4Linux subsystem you'll have to enable the capidrv glue driver. (select ISDN_CAPI_CAPIDRV.) Say N to build the old native ISDN4Linux variant. If unsure, say Y. config GIGASET_I4L bool depends on ISDN_I4L='y'||(ISDN_I4L='m'&&ISDN_DRV_GIGASET='m') default !GIGASET_CAPI config GIGASET_DUMMYLL bool default !GIGASET_CAPI&&!GIGASET_I4L config GIGASET_BASE tristate "Gigaset base station support" depends on USB help Say M here if you want to use the USB interface of the Gigaset base for connection to your system. This will build a module called "bas_gigaset". config GIGASET_M105 tristate "Gigaset M105 support" depends on USB help Say M here if you want to connect to the Gigaset base via DECT using a Gigaset M105 (Sinus 45 Data 2) USB DECT device. This will build a module called "usb_gigaset". config GIGASET_M101 tristate "Gigaset M101 support" help Say M here if you want to connect to the Gigaset base via DECT using a Gigaset M101 (Sinus 45 Data 1) RS232 DECT device. This will build a module called "ser_gigaset". config GIGASET_DEBUG bool "Gigaset debugging" help This enables debugging code in the Gigaset drivers. If in doubt, say yes. endif # ISDN_DRV_GIGASET # # ISDN hardware drivers # comment "CAPI hardware drivers" source "drivers/isdn/hardware/avm/Kconfig" source "drivers/isdn/hardware/eicon/Kconfig" # # ISDN DIVAS Eicon driver # menuconfig CAPI_EICON bool "Active Eicon DIVA Server cards" help Enable support for Eicon Networks active ISDN cards. if CAPI_EICON config ISDN_DIVAS tristate "Support Eicon DIVA Server cards" depends on PROC_FS && PCI help Say Y here if you have an Eicon Networks DIVA Server PCI ISDN card. In order to use this card, additional firmware is necessary, which has to be downloaded into the card using the divactrl utility. if ISDN_DIVAS config ISDN_DIVAS_BRIPCI bool "DIVA Server BRI/PCI support" help Enable support for DIVA Server BRI-PCI. config ISDN_DIVAS_PRIPCI bool "DIVA Server PRI/PCI support" help Enable support for DIVA Server PRI-PCI. config ISDN_DIVAS_DIVACAPI tristate "DIVA CAPI2.0 interface support" help You need this to provide the CAPI interface for DIVA Server cards. config ISDN_DIVAS_USERIDI tristate "DIVA User-IDI interface support" help Enable support for user-mode IDI interface. config ISDN_DIVAS_MAINT tristate "DIVA Maint driver support" depends on m help Enable Divas Maintenance driver. endif # ISDN_DIVAS endif # CAPI_EICON # # Hardware for mISDN # comment "mISDN hardware drivers" config MISDN_HFCPCI tristate "Support for HFC PCI cards" depends on MISDN depends on PCI help Enable support for cards with Cologne Chip AG's HFC PCI chip. config MISDN_HFCMULTI tristate "Support for HFC multiport cards (HFC-4S/8S/E1)" depends on PCI || 8xx depends on MISDN help Enable support for cards with Cologne Chip AG's HFC multiport chip. There are three types of chips that are quite similar, but the interface is different: * HFC-4S (4 S/T interfaces on one chip) * HFC-8S (8 S/T interfaces on one chip) * HFC-E1 (E1 interface for 2Mbit ISDN) config MISDN_HFCMULTI_8xx boolean "Support for XHFC embedded board in HFC multiport driver" depends on MISDN depends on MISDN_HFCMULTI depends on 8xx default 8xx help Enable support for the XHFC embedded solution from Speech Design. config MISDN_HFCUSB tristate "Support for HFC-S USB based TAs" depends on USB help Enable support for USB ISDN TAs with Cologne Chip AG's HFC-S USB ISDN Controller config MISDN_AVMFRITZ tristate "Support for AVM FRITZ!CARD PCI" depends on MISDN depends on PCI select MISDN_IPAC help Enable support for AVMs FRITZ!CARD PCI cards config MISDN_SPEEDFAX tristate "Support for Sedlbauer Speedfax+" depends on MISDN depends on PCI select MISDN_IPAC select MISDN_ISAR help Enable support for Sedlbauer Speedfax+. config MISDN_INFINEON tristate "Support for cards with Infineon chipset" depends on MISDN depends on PCI select MISDN_IPAC help Enable support for cards with ISAC + HSCX, IPAC or IPAC-SX chip from Infineon (former manufacturer Siemens). config MISDN_W6692 tristate "Support for cards with Winbond 6692" depends on MISDN depends on PCI help Enable support for Winbond 6692 PCI chip based cards. config MISDN_NETJET tristate "Support for NETJet cards" depends on MISDN depends on PCI select MISDN_IPAC select ISDN_HDLC select ISDN_I4L help Enable support for Traverse Technologies NETJet PCI cards. config MISDN_IPAC tristate depends on MISDN config MISDN_ISAR tristate depends on MISDN # # ISDN AVM drivers # menuconfig CAPI_AVM bool "Active AVM cards" help Enable support for AVM active ISDN cards. if CAPI_AVM config ISDN_DRV_AVMB1_B1ISA tristate "AVM B1 ISA support" depends on ISA help Enable support for the ISA version of the AVM B1 card. config ISDN_DRV_AVMB1_B1PCI tristate "AVM B1 PCI support" depends on PCI help Enable support for the PCI version of the AVM B1 card. config ISDN_DRV_AVMB1_B1PCIV4 bool "AVM B1 PCI V4 support" depends on ISDN_DRV_AVMB1_B1PCI help Enable support for the V4 version of AVM B1 PCI card. config ISDN_DRV_AVMB1_T1ISA tristate "AVM T1/T1-B ISA support" depends on ISA help Enable support for the AVM T1 T1B card. Note: This is a PRI card and handle 30 B-channels. config ISDN_DRV_AVMB1_B1PCMCIA tristate "AVM B1/M1/M2 PCMCIA support" depends on PCMCIA help Enable support for the PCMCIA version of the AVM B1 card. config ISDN_DRV_AVMB1_AVM_CS tristate "AVM B1/M1/M2 PCMCIA cs module" depends on ISDN_DRV_AVMB1_B1PCMCIA help Enable the PCMCIA client driver for the AVM B1/M1/M2 PCMCIA cards. config ISDN_DRV_AVMB1_T1PCI tristate "AVM T1/T1-B PCI support" depends on PCI help Enable support for the AVM T1 T1B card. Note: This is a PRI card and handle 30 B-channels. config ISDN_DRV_AVMB1_C4 tristate "AVM C4/C2 support" depends on PCI help Enable support for the AVM C4/C2 PCI cards. These cards handle 4/2 BRI ISDN lines (8/4 channels). endif # CAPI_AVM config ISDN_DRV_ICN tristate "ICN 2B and 4B support" depends on ISA help This enables support for two kinds of ISDN-cards made by a German company called ICN. 2B is the standard version for a single ISDN line with two B-channels, 4B supports two ISDN lines. For running this card, additional firmware is necessary, which has to be downloaded into the card using a utility which is distributed separately. See and for more information. menu "Passive cards" config ISDN_DRV_HISAX tristate "HiSax SiemensChipSet driver support" select CRC_CCITT ---help--- This is a driver supporting the Siemens chipset on various ISDN-cards (like AVM A1, Elsa ISDN cards, Teles S0-16.0, Teles S0-16.3, Teles S0-8, Teles/Creatix PnP, ITK micro ix1 and many compatibles). HiSax is just the name of this driver, not the name of any hardware. If you have a card with such a chipset, you should say Y here and also to the configuration option of the driver for your particular card, below. if ISDN_DRV_HISAX!=n comment "D-channel protocol features" config HISAX_EURO bool "HiSax Support for EURO/DSS1" help Say Y or N according to the D-channel protocol which your local telephone service company provides. The call control protocol E-DSS1 is used in most European countries. If unsure, say Y. config DE_AOC bool "Support for german chargeinfo" depends on HISAX_EURO help If you want that the HiSax hardware driver sends messages to the upper level of the isdn code on each AOCD (Advice Of Charge, During the call -- transmission of the fee information during a call) and on each AOCE (Advice Of Charge, at the End of the call -- transmission of fee information at the end of the call), say Y here. This works only in Germany. config HISAX_NO_SENDCOMPLETE bool "Disable sending complete" depends on HISAX_EURO help If you have trouble with some ugly exchanges or you live in Australia select this option. config HISAX_NO_LLC bool "Disable sending low layer compatibility" depends on HISAX_EURO help If you have trouble with some ugly exchanges try to select this option. config HISAX_NO_KEYPAD bool "Disable keypad protocol option" depends on HISAX_EURO help If you like to send special dial strings including * or # without using the keypad protocol, select this option. config HISAX_1TR6 bool "HiSax Support for german 1TR6" help Say Y or N according to the D-channel protocol which your local telephone service company provides. 1TR6 is an old call control protocol which was used in Germany before E-DSS1 was established. Nowadays, all new lines in Germany use E-DSS1. config HISAX_NI1 bool "HiSax Support for US NI1" help Enable this if you like to use ISDN in US on a NI1 basic rate interface. config HISAX_MAX_CARDS int "Maximum number of cards supported by HiSax" default "8" help This option allows you to specify the maximum number of cards which the HiSax driver will be able to handle. comment "HiSax supported cards" config HISAX_16_0 bool "Teles 16.0/8.0" depends on ISA help This enables HiSax support for the Teles ISDN-cards S0-16.0, S0-8 and many compatibles. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port/shmem settings. config HISAX_16_3 bool "Teles 16.3 or PNP or PCMCIA" help This enables HiSax support for the Teles ISDN-cards S0-16.3 the Teles/Creatix PnP and the Teles PCMCIA. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_TELESPCI bool "Teles PCI" depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) help This enables HiSax support for the Teles PCI. See on how to configure it. config HISAX_S0BOX bool "Teles S0Box" help This enables HiSax support for the Teles/Creatix parallel port S0BOX. See on how to configure it. config HISAX_AVM_A1 bool "AVM A1 (Fritz)" depends on ISA help This enables HiSax support for the AVM A1 (aka "Fritz"). See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_FRITZPCI bool "AVM PnP/PCI (Fritz!PnP/PCI)" depends on BROKEN || !PPC64 help This enables HiSax support for the AVM "Fritz!PnP" and "Fritz!PCI". See on how to configure it. config HISAX_AVM_A1_PCMCIA bool "AVM A1 PCMCIA (Fritz)" help This enables HiSax support for the AVM A1 "Fritz!PCMCIA"). See on how to configure it. config HISAX_ELSA bool "Elsa cards" help This enables HiSax support for the Elsa Mircolink ISA cards, for the Elsa Quickstep series cards and Elsa PCMCIA. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_IX1MICROR2 bool "ITK ix1-micro Revision 2" depends on ISA help This enables HiSax support for the ITK ix1-micro Revision 2 card. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_DIEHLDIVA bool "Eicon.Diehl Diva cards" help This enables HiSax support for the Eicon.Diehl Diva none PRO versions passive ISDN cards. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_ASUSCOM bool "ASUSCOM ISA cards" depends on ISA help This enables HiSax support for the AsusCom and their OEM versions passive ISDN ISA cards. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_TELEINT bool "TELEINT cards" depends on ISA help This enables HiSax support for the TELEINT SA1 semiactiv ISDN card. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_HFCS bool "HFC-S based cards" depends on ISA help This enables HiSax support for the HFC-S 2BDS0 based cards, like teles 16.3c. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_SEDLBAUER bool "Sedlbauer cards" help This enables HiSax support for the Sedlbauer passive ISDN cards. See on how to configure it using the different cards, a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_SPORTSTER bool "USR Sportster internal TA" depends on ISA help This enables HiSax support for the USR Sportster internal TA card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_MIC bool "MIC card" depends on ISA help This enables HiSax support for the ITH MIC card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_NETJET bool "NETjet card" depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) help This enables HiSax support for the NetJet from Traverse Technologies. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_NETJET_U bool "NETspider U card" depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) help This enables HiSax support for the Netspider U interface ISDN card from Traverse Technologies. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_NICCY bool "Niccy PnP/PCI card" help This enables HiSax support for the Dr. Neuhaus Niccy PnP or PCI. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_ISURF bool "Siemens I-Surf card" depends on ISA help This enables HiSax support for the Siemens I-Talk/I-Surf card with ISAR chip. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_HSTSAPHIR bool "HST Saphir card" depends on ISA help This enables HiSax support for the HST Saphir card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_BKM_A4T bool "Telekom A4T card" depends on PCI help This enables HiSax support for the Telekom A4T card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_SCT_QUADRO bool "Scitel Quadro card" depends on PCI help This enables HiSax support for the Scitel Quadro card. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_GAZEL bool "Gazel cards" help This enables HiSax support for the Gazel cards. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_HFC_PCI bool "HFC PCI-Bus cards" depends on PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) help This enables HiSax support for the HFC-S PCI 2BDS0 based cards. For more information see under . config HISAX_W6692 bool "Winbond W6692 based cards" depends on PCI help This enables HiSax support for Winbond W6692 based PCI ISDN cards. See on how to configure it using a different D-channel protocol, or non-standard IRQ/port settings. config HISAX_HFC_SX bool "HFC-S+, HFC-SP, HFC-PCMCIA cards" help This enables HiSax support for the HFC-S+, HFC-SP and HFC-PCMCIA cards. This code is not finished yet. config HISAX_ENTERNOW_PCI bool "Formula-n enter:now PCI card" depends on HISAX_NETJET && PCI && (BROKEN || !(SPARC || PPC || PARISC || M68K || (MIPS && !CPU_LITTLE_ENDIAN) || FRV)) help This enables HiSax support for the Formula-n enter:now PCI ISDN card. endif if ISDN_DRV_HISAX config HISAX_DEBUG bool "HiSax debugging" help This enables debugging code in the new-style HiSax drivers, i.e. the ST5481 USB driver currently. If in doubt, say yes. comment "HiSax PCMCIA card service modules" config HISAX_SEDLBAUER_CS tristate "Sedlbauer PCMCIA cards" depends on PCMCIA && HISAX_SEDLBAUER help This enables the PCMCIA client driver for the Sedlbauer Speed Star and Speed Star II cards. config HISAX_ELSA_CS tristate "ELSA PCMCIA MicroLink cards" depends on PCMCIA && HISAX_ELSA help This enables the PCMCIA client driver for the Elsa PCMCIA MicroLink card. config HISAX_AVM_A1_CS tristate "AVM A1 PCMCIA cards" depends on PCMCIA && ISDN_DRV_HISAX help This enables the PCMCIA client driver for the AVM A1 / Fritz!Card PCMCIA cards. config HISAX_TELES_CS tristate "TELES PCMCIA cards" depends on PCMCIA && HISAX_16_3 help This enables the PCMCIA client driver for the Teles PCMCIA cards. comment "HiSax sub driver modules" config HISAX_ST5481 tristate "ST5481 USB ISDN modem (EXPERIMENTAL)" depends on USB && EXPERIMENTAL select ISDN_HDLC select CRC_CCITT select BITREVERSE help This enables the driver for ST5481 based USB ISDN adapters, e.g. the BeWan Gazel 128 USB config HISAX_HFCUSB tristate "HFC USB based ISDN modems (EXPERIMENTAL)" depends on USB && EXPERIMENTAL help This enables the driver for HFC USB based ISDN modems. config HISAX_HFC4S8S tristate "HFC-4S/8S based ISDN cards (EXPERIMENTAL)" depends on EXPERIMENTAL help This enables the driver for HFC-4S/8S based ISDN cards. config HISAX_FRITZ_PCIPNP tristate "AVM Fritz!Card PCI/PCIv2/PnP support (EXPERIMENTAL)" depends on PCI && EXPERIMENTAL help This enables the driver for the AVM Fritz!Card PCI, Fritz!Card PCI v2 and Fritz!Card PnP. (the latter also needs you to select "ISA Plug and Play support" from the menu "Plug and Play configuration") config HISAX_AVM_A1_PCMCIA bool depends on HISAX_AVM_A1_CS default y endif endmenu config ISDN_DRV_ACT2000 tristate "IBM Active 2000 support" depends on ISA help Say Y here if you have an IBM Active 2000 ISDN card. In order to use this card, additional firmware is necessary, which has to be loaded into the card using a utility which is part of the latest isdn4k-utils package. Please read the file for more information. config ISDN_DRV_PCBIT tristate "PCBIT-D support" depends on ISA && (BROKEN || X86) help This enables support for the PCBIT ISDN-card. This card is manufactured in Portugal by Octal. For running this card, additional firmware is necessary, which has to be downloaded into the card using a utility which is distributed separately. See and for more information. config ISDN_DRV_AVMB1_VERBOSE_REASON bool "Verbose reason code reporting" default y help If you say Y here, the CAPI drivers will give verbose reasons for disconnecting. This will increase the size of the kernel by 7 KB. If unsure, say Y. config CAPI_TRACE bool "CAPI trace support" default y help If you say Y here, the kernelcapi driver can make verbose traces of CAPI messages. This feature can be enabled/disabled via IOCTL for every controller (default disabled). This will increase the size of the kernelcapi module by 20 KB. If unsure, say Y. config ISDN_CAPI_MIDDLEWARE bool "CAPI2.0 Middleware support" help This option will enhance the capabilities of the /dev/capi20 interface. It will provide a means of moving a data connection, established via the usual /dev/capi20 interface to a special tty device. If you want to use pppd with pppdcapiplugin to dial up to your ISP, say Y here. config ISDN_CAPI_CAPI20 tristate "CAPI2.0 /dev/capi support" help This option will provide the CAPI 2.0 interface to userspace applications via /dev/capi20. Applications should use the standardized libcapi20 to access this functionality. You should say Y/M here. config ISDN_CAPI_CAPIFS_BOOL bool "CAPI2.0 filesystem support (DEPRECATED)" depends on ISDN_CAPI_MIDDLEWARE && ISDN_CAPI_CAPI20 help This option provides a special file system, similar to /dev/pts with device nodes for the special ttys established by using the middleware extension above. You no longer need this, udev fully replaces it. This feature is scheduled for removal. config ISDN_CAPI_CAPIFS tristate depends on ISDN_CAPI_CAPIFS_BOOL default ISDN_CAPI_CAPI20 config ISDN_CAPI_CAPIDRV tristate "CAPI2.0 capidrv interface support" depends on ISDN_I4L help This option provides the glue code to hook up CAPI driven cards to the legacy isdn4linux link layer. If you have a card which is supported by a CAPI driver, but still want to use old features like ippp interfaces or ttyI emulation, say Y/M here. # # Misc strange devices # # This one has to live outside of the MISC_DEVICES conditional, # because it may be selected by drivers/platform/x86/hp_accel. config SENSORS_LIS3LV02D tristate depends on INPUT select INPUT_POLLDEV default n menuconfig MISC_DEVICES bool "Misc devices" ---help--- Say Y here to get to see options for device drivers from various different categories. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if MISC_DEVICES config AD525X_DPOT tristate "Analog Devices Digital Potentiometers" depends on (I2C || SPI) && SYSFS help If you say yes here, you get support for the Analog Devices AD5258, AD5259, AD5251, AD5252, AD5253, AD5254, AD5255 AD5160, AD5161, AD5162, AD5165, AD5200, AD5201, AD5203, AD5204, AD5206, AD5207, AD5231, AD5232, AD5233, AD5235, AD5260, AD5262, AD5263, AD5290, AD5291, AD5292, AD5293, AD7376, AD8400, AD8402, AD8403, ADN2850, AD5241, AD5242, AD5243, AD5245, AD5246, AD5247, AD5248, AD5280, AD5282, ADN2860, AD5273, AD5171, AD5170, AD5172, AD5173, AD5270, AD5271, AD5272, AD5274 digital potentiometer chips. See Documentation/misc-devices/ad525x_dpot.txt for the userspace interface. This driver can also be built as a module. If so, the module will be called ad525x_dpot. config AD525X_DPOT_I2C tristate "support I2C bus connection" depends on AD525X_DPOT && I2C help Say Y here if you have a digital potentiometers hooked to an I2C bus. To compile this driver as a module, choose M here: the module will be called ad525x_dpot-i2c. config AD525X_DPOT_SPI tristate "support SPI bus connection" depends on AD525X_DPOT && SPI_MASTER help Say Y here if you have a digital potentiometers hooked to an SPI bus. If unsure, say N (but it's safe to say "Y"). To compile this driver as a module, choose M here: the module will be called ad525x_dpot-spi. config ATMEL_PWM tristate "Atmel AT32/AT91 PWM support" depends on AVR32 || ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || ARCH_AT91CAP9 help This option enables device driver support for the PWM channels on certain Atmel processors. Pulse Width Modulation is used for purposes including software controlled power-efficient backlights on LCD displays, motor control, and waveform generation. config AB8500_PWM bool "AB8500 PWM support" depends on AB8500_CORE && ARCH_U8500 select HAVE_PWM help This driver exports functions to enable/disble/config/free Pulse Width Modulation in the Analog Baseband Chip AB8500. It is used by led and backlight driver to control the intensity. config ATMEL_TCLIB bool "Atmel AT32/AT91 Timer/Counter Library" depends on (AVR32 || ARCH_AT91) help Select this if you want a library to allocate the Timer/Counter blocks found on many Atmel processors. This facilitates using these blocks by different drivers despite processor differences. config ATMEL_TCB_CLKSRC bool "TC Block Clocksource" depends on ATMEL_TCLIB default y help Select this to get a high precision clocksource based on a TC block with a 5+ MHz base clock rate. Two timer channels are combined to make a single 32-bit timer. When GENERIC_CLOCKEVENTS is defined, the third timer channel may be used as a clock event device supporting oneshot mode (delays of up to two seconds) based on the 32 KiHz clock. config ATMEL_TCB_CLKSRC_BLOCK int depends on ATMEL_TCB_CLKSRC prompt "TC Block" if ARCH_AT91RM9200 || ARCH_AT91SAM9260 || CPU_AT32AP700X default 0 range 0 1 help Some chips provide more than one TC block, so you have the choice of which one to use for the clock framework. The other TC can be used for other purposes, such as PWM generation and interval timing. config IBM_ASM tristate "Device driver for IBM RSA service processor" depends on X86 && PCI && INPUT && EXPERIMENTAL ---help--- This option enables device driver support for in-band access to the IBM RSA (Condor) service processor in eServer xSeries systems. The ibmasm device driver allows user space application to access ASM (Advanced Systems Management) functions on the service processor. The driver is meant to be used in conjunction with a user space API. The ibmasm driver also enables the OS to use the UART on the service processor board as a regular serial port. To make use of this feature serial driver support (CONFIG_SERIAL_8250) must be enabled. WARNING: This software may not be supported or function correctly on your IBM server. Please consult the IBM ServerProven website for information on the specific driver level and support statement for your IBM server. config PHANTOM tristate "Sensable PHANToM (PCI)" depends on PCI help Say Y here if you want to build a driver for Sensable PHANToM device. This driver is only for PCI PHANToMs. If you choose to build module, its name will be phantom. If unsure, say N here. config SGI_IOC4 tristate "SGI IOC4 Base IO support" depends on PCI ---help--- This option enables basic support for the IOC4 chip on certain SGI IO controller cards (IO9, IO10, and PCI-RT). This option does not enable any specific functions on such a card, but provides necessary infrastructure for other drivers to utilize. If you have an SGI Altix with an IOC4-based card say Y. Otherwise say N. config TIFM_CORE tristate "TI Flash Media interface support (EXPERIMENTAL)" depends on EXPERIMENTAL && PCI help If you want support for Texas Instruments(R) Flash Media adapters you should select this option and then also choose an appropriate host adapter, such as 'TI Flash Media PCI74xx/PCI76xx host adapter support', if you have a TI PCI74xx compatible card reader, for example. You will also have to select some flash card format drivers. MMC/SD cards are supported via 'MMC/SD Card support: TI Flash Media MMC/SD Interface support (MMC_TIFM_SD)'. To compile this driver as a module, choose M here: the module will be called tifm_core. config TIFM_7XX1 tristate "TI Flash Media PCI74xx/PCI76xx host adapter support (EXPERIMENTAL)" depends on PCI && TIFM_CORE && EXPERIMENTAL default TIFM_CORE help This option enables support for Texas Instruments(R) PCI74xx and PCI76xx families of Flash Media adapters, found in many laptops. To make actual use of the device, you will have to select some flash card format drivers, as outlined in the TIFM_CORE Help. To compile this driver as a module, choose M here: the module will be called tifm_7xx1. config ICS932S401 tristate "Integrated Circuits ICS932S401" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Integrated Circuits ICS932S401 clock control chips. This driver can also be built as a module. If so, the module will be called ics932s401. config ATMEL_SSC tristate "Device driver for Atmel SSC peripheral" depends on AVR32 || ARCH_AT91 ---help--- This option enables device driver support for Atmel Synchronized Serial Communication peripheral (SSC). The SSC peripheral supports a wide variety of serial frame based communications, i.e. I2S, SPI, etc. If unsure, say N. config ENCLOSURE_SERVICES tristate "Enclosure Services" default n help Provides support for intelligent enclosures (bays which contain storage devices). You also need either a host driver (SCSI/ATA) which supports enclosures or a SCSI enclosure device (SES) to use these services. config SGI_XP tristate "Support communication between SGI SSIs" depends on NET depends on (IA64_GENERIC || IA64_SGI_SN2 || IA64_SGI_UV || X86_UV) && SMP select IA64_UNCACHED_ALLOCATOR if IA64_GENERIC || IA64_SGI_SN2 select GENERIC_ALLOCATOR if IA64_GENERIC || IA64_SGI_SN2 select SGI_GRU if X86_64 && SMP ---help--- An SGI machine can be divided into multiple Single System Images which act independently of each other and have hardware based memory protection from the others. Enabling this feature will allow for direct communication between SSIs based on a network adapter and DMA messaging. config CS5535_MFGPT tristate "CS5535/CS5536 Geode Multi-Function General Purpose Timer (MFGPT) support" depends on PCI depends on X86 default n help This driver provides access to MFGPT functionality for other drivers that need timers. MFGPTs are available in the CS5535 and CS5536 companion chips that are found in AMD Geode and several other platforms. They have a better resolution and max interval than the generic PIT, and are suitable for use as high-res timers. You probably don't want to enable this manually; other drivers that make use of it should enable it. config CS5535_MFGPT_DEFAULT_IRQ int depends on CS5535_MFGPT default 7 help MFGPTs on the CS5535 require an interrupt. The selected IRQ can be overridden as a module option as well as by driver that use the cs5535_mfgpt_ API; however, different architectures might want to use a different IRQ by default. This is here for architectures to set as necessary. config CS5535_CLOCK_EVENT_SRC tristate "CS5535/CS5536 high-res timer (MFGPT) events" depends on GENERIC_CLOCKEVENTS && CS5535_MFGPT help This driver provides a clock event source based on the MFGPT timer(s) in the CS5535 and CS5536 companion chips. MFGPTs have a better resolution and max interval than the generic PIT, and are suitable for use as high-res timers. config HP_ILO tristate "Channel interface driver for the HP iLO processor" depends on PCI default n help The channel interface driver allows applications to communicate with iLO management processors present on HP ProLiant servers. Upon loading, the driver creates /dev/hpilo/dXccbN files, which can be used to gather data from the management processor, via read and write system calls. To compile this driver as a module, choose M here: the module will be called hpilo. config SGI_GRU tristate "SGI GRU driver" depends on X86_UV && SMP default n select MMU_NOTIFIER ---help--- The GRU is a hardware resource located in the system chipset. The GRU contains memory that can be mmapped into the user address space. This memory is used to communicate with the GRU to perform functions such as load/store, scatter/gather, bcopy, AMOs, etc. The GRU is directly accessed by user instructions using user virtual addresses. GRU instructions (ex., bcopy) use user virtual addresses for operands. If you are not running on a SGI UV system, say N. config SGI_GRU_DEBUG bool "SGI GRU driver debug" depends on SGI_GRU default n ---help--- This option enables addition debugging code for the SGI GRU driver. If you are unsure, say N. config APDS9802ALS tristate "Medfield Avago APDS9802 ALS Sensor module" depends on I2C help If you say yes here you get support for the ALS APDS9802 ambient light sensor. This driver can also be built as a module. If so, the module will be called apds9802als. config ISL29003 tristate "Intersil ISL29003 ambient light sensor" depends on I2C && SYSFS help If you say yes here you get support for the Intersil ISL29003 ambient light sensor. This driver can also be built as a module. If so, the module will be called isl29003. config ISL29020 tristate "Intersil ISL29020 ambient light sensor" depends on I2C help If you say yes here you get support for the Intersil ISL29020 ambient light sensor. This driver can also be built as a module. If so, the module will be called isl29020. config SENSORS_TSL2550 tristate "Taos TSL2550 ambient light sensor" depends on I2C && SYSFS help If you say yes here you get support for the Taos TSL2550 ambient light sensor. This driver can also be built as a module. If so, the module will be called tsl2550. config SENSORS_BH1780 tristate "ROHM BH1780GLI ambient light sensor" depends on I2C && SYSFS help If you say yes here you get support for the ROHM BH1780GLI ambient light sensor. This driver can also be built as a module. If so, the module will be called bh1780gli. config SENSORS_BH1770 tristate "BH1770GLC / SFH7770 combined ALS - Proximity sensor" depends on I2C ---help--- Say Y here if you want to build a driver for BH1770GLC (ROHM) or SFH7770 (Osram) combined ambient light and proximity sensor chip. To compile this driver as a module, choose M here: the module will be called bh1770glc. If unsure, say N here. config SENSORS_APDS990X tristate "APDS990X combined als and proximity sensors" depends on I2C default n ---help--- Say Y here if you want to build a driver for Avago APDS990x combined ambient light and proximity sensor chip. To compile this driver as a module, choose M here: the module will be called apds990x. If unsure, say N here. config HMC6352 tristate "Honeywell HMC6352 compass" depends on I2C help This driver provides support for the Honeywell HMC6352 compass, providing configuration and heading data via sysfs. config EP93XX_PWM tristate "EP93xx PWM support" depends on ARCH_EP93XX help This option enables device driver support for the PWM channels on the Cirrus EP93xx processors. The EP9307 chip only has one PWM channel all the others have two, the second channel is an alternate function of the EGPIO14 pin. A sysfs interface is provided to control the PWM channels. To compile this driver as a module, choose M here: the module will be called ep93xx_pwm. config DS1682 tristate "Dallas DS1682 Total Elapsed Time Recorder with Alarm" depends on I2C && EXPERIMENTAL help If you say yes here you get support for Dallas Semiconductor DS1682 Total Elapsed Time Recorder. This driver can also be built as a module. If so, the module will be called ds1682. config SPEAR13XX_PCIE_GADGET bool "PCIe gadget support for SPEAr13XX platform" depends on ARCH_SPEAR13XX default n help This option enables gadget support for PCIe controller. If board file defines any controller as PCIe endpoint then a sysfs entry will be created for that controller. User can use these sysfs node to configure PCIe EP as per his requirements. config TI_DAC7512 tristate "Texas Instruments DAC7512" depends on SPI && SYSFS help If you say yes here you get support for the Texas Instruments DAC7512 16-bit digital-to-analog converter. This driver can also be built as a module. If so, the module will be called ti_dac7512. config VMWARE_BALLOON tristate "VMware Balloon Driver" depends on X86 help This is VMware physical memory management driver which acts like a "balloon" that can be inflated to reclaim physical pages by reserving them in the guest and invalidating them in the monitor, freeing up the underlying machine pages so they can be allocated to other guests. The balloon can also be deflated to allow the guest to use more physical memory. If unsure, say N. To compile this driver as a module, choose M here: the module will be called vmw_balloon. config ARM_CHARLCD bool "ARM Ltd. Character LCD Driver" depends on PLAT_VERSATILE help This is a driver for the character LCD found on the ARM Ltd. Versatile and RealView Platform Baseboards. It doesn't do very much more than display the text "ARM Linux" on the first line and the Linux version on the second line, but that's still useful. config BMP085 tristate "BMP085 digital pressure sensor" depends on I2C && SYSFS help If you say yes here you get support for the Bosch Sensortec BMP085 digital pressure sensor. To compile this driver as a module, choose M here: the module will be called bmp085. config PCH_PHUB tristate "PCH Packet Hub of Intel Topcliff / OKI SEMICONDUCTOR ML7213" depends on PCI help This driver is for PCH(Platform controller Hub) PHUB(Packet Hub) of Intel Topcliff which is an IOH(Input/Output Hub) for x86 embedded processor. The Topcliff has MAC address and Option ROM data in SROM. This driver can access MAC address and Option ROM data in SROM. This driver also can be used for OKI SEMICONDUCTOR's ML7213 which is for IVI(In-Vehicle Infotainment) use. ML7213 is companion chip for Intel Atom E6xx series. ML7213 is completely compatible for Intel EG20T PCH. To compile this driver as a module, choose M here: the module will be called pch_phub. config OPENMOKO_RESUME_REASON tristate "Openmoko resume reason driver" depends on SYSFS help This driver adds a sysfs entry for accessing the resume reason of the openmoko board. source "drivers/misc/c2port/Kconfig" source "drivers/misc/eeprom/Kconfig" source "drivers/misc/cb710/Kconfig" source "drivers/misc/iwmc3200top/Kconfig" source "drivers/misc/ti-st/Kconfig" source "drivers/misc/lis3lv02d/Kconfig" endif # MISC_DEVICES config CB710_CORE tristate "ENE CB710/720 Flash memory card reader support" depends on PCI help This option enables support for PCI ENE CB710/720 Flash memory card reader found in some laptops (ie. some versions of HP Compaq nx9500). You will also have to select some flash card format drivers (MMC/SD, MemoryStick). This driver can also be built as a module. If so, the module will be called cb710. config CB710_DEBUG bool "Enable driver debugging" depends on CB710_CORE != n default n help This is an option for use by developers; most people should say N here. This adds a lot of debugging output to dmesg. config CB710_DEBUG_ASSUMPTIONS bool depends on CB710_CORE != n default y # # C2 port devices # menuconfig C2PORT tristate "Silicon Labs C2 port support (EXPERIMENTAL)" depends on EXPERIMENTAL default no help This option enables support for Silicon Labs C2 port used to program Silicon micro controller chips (and other 8051 compatible). If your board have no such micro controllers you don't need this interface at all. To compile this driver as a module, choose M here: the module will be called c2port_core. Note that you also need a client module usually called c2port-*. If you are not sure, say N here. if C2PORT config C2PORT_DURAMAR_2150 tristate "C2 port support for Eurotech's Duramar 2150 (EXPERIMENTAL)" depends on X86 && C2PORT default no help This option enables C2 support for the Eurotech's Duramar 2150 on board micro controller. To compile this driver as a module, choose M here: the module will be called c2port-duramar2150. endif # C2PORT menu "EEPROM support" config EEPROM_AT24 tristate "I2C EEPROMs from most vendors" depends on I2C && SYSFS help Enable this driver to get read/write support to most I2C EEPROMs, after you configure the driver to know about each EEPROM on your target board. Use these generic chip names, instead of vendor-specific ones like at24c64 or 24lc02: 24c00, 24c01, 24c02, spd (readonly 24c02), 24c04, 24c08, 24c16, 24c32, 24c64, 24c128, 24c256, 24c512, 24c1024 Unless you like data loss puzzles, always be sure that any chip you configure as a 24c32 (32 kbit) or larger is NOT really a 24c16 (16 kbit) or smaller, and vice versa. Marking the chip as read-only won't help recover from this. Also, if your chip has any software write-protect mechanism you may want to review the code to make sure this driver won't turn it on by accident. If you use this with an SMBus adapter instead of an I2C adapter, full functionality is not available. Only smaller devices are supported (24c16 and below, max 4 kByte). This driver can also be built as a module. If so, the module will be called at24. config EEPROM_AT25 tristate "SPI EEPROMs from most vendors" depends on SPI && SYSFS help Enable this driver to get read/write support to most SPI EEPROMs, after you configure the board init code to know about each eeprom on your target board. This driver can also be built as a module. If so, the module will be called at25. config EEPROM_LEGACY tristate "Old I2C EEPROM reader" depends on I2C && SYSFS help If you say yes here you get read-only access to the EEPROM data available on modern memory DIMMs and Sony Vaio laptops via I2C. Such EEPROMs could theoretically be available on other devices as well. This driver can also be built as a module. If so, the module will be called eeprom. config EEPROM_MAX6875 tristate "Maxim MAX6874/5 power supply supervisor" depends on I2C && EXPERIMENTAL help If you say yes here you get read-only support for the user EEPROM of the Maxim MAX6874/5 EEPROM-programmable, quad power-supply sequencer/supervisor. All other features of this chip should be accessed via i2c-dev. This driver can also be built as a module. If so, the module will be called max6875. config EEPROM_93CX6 tristate "EEPROM 93CX6 support" help This is a driver for the EEPROM chipsets 93c46 and 93c66. The driver supports both read as well as write commands. If unsure, say N. endmenu config IWMC3200TOP tristate "Intel Wireless MultiCom Top Driver" depends on MMC && EXPERIMENTAL select FW_LOADER ---help--- Intel Wireless MultiCom 3200 Top driver is responsible for for firmware load and enabled coms enumeration config IWMC3200TOP_DEBUG bool "Enable full debug output of iwmc3200top Driver" depends on IWMC3200TOP ---help--- Enable full debug output of iwmc3200top Driver config IWMC3200TOP_DEBUGFS bool "Enable Debugfs debugging interface for iwmc3200top" depends on IWMC3200TOP ---help--- Enable creation of debugfs files for iwmc3200top # # STMicroelectonics LIS3LV02D and similar accelerometers # config SENSORS_LIS3_SPI tristate "STMicroeletronics LIS3LV02Dx three-axis digital accelerometer (SPI)" depends on !ACPI && SPI_MASTER && INPUT select SENSORS_LIS3LV02D default n help This driver provides support for the LIS3LV02Dx accelerometer connected via SPI. The accelerometer data is readable via /sys/devices/platform/lis3lv02d. This driver also provides an absolute input class device, allowing the laptop to act as a pinball machine-esque joystick. This driver can also be built as modules. If so, the core module will be called lis3lv02d and a specific module for the SPI transport is called lis3lv02d_spi. config SENSORS_LIS3_I2C tristate "STMicroeletronics LIS3LV02Dx three-axis digital accelerometer (I2C)" depends on I2C && INPUT select SENSORS_LIS3LV02D default n help This driver provides support for the LIS3LV02Dx accelerometer connected via I2C. The accelerometer data is readable via /sys/devices/platform/lis3lv02d. This driver also provides an absolute input class device, allowing the device to act as a pinball machine-esque joystick. This driver can also be built as modules. If so, the core module will be called lis3lv02d and a specific module for the I2C transport is called lis3lv02d_i2c. # # TI's shared transport line discipline and the protocol # drivers (BT, FM and GPS) # menu "Texas Instruments shared transport line discipline" config TI_ST tristate "Shared transport core driver" depends on RFKILL select FW_LOADER help This enables the shared transport core driver for TI BT / FM and GPS combo chips. This enables protocol drivers to register themselves with core and send data, the responses are returned to relevant protocol drivers based on their packet types. endmenu # # DMA engine configuration # menuconfig DMADEVICES bool "DMA Engine support" depends on HAS_DMA help DMA engines can do asynchronous data transfers without involving the host CPU. Currently, this framework can be used to offload memory copies in the network stack and RAID operations in the MD driver. This menu only presents DMA Device drivers supported by the configured arch, it may be empty in some cases. config DMADEVICES_DEBUG bool "DMA Engine debugging" depends on DMADEVICES != n help This is an option for use by developers; most people should say N here. This enables DMA engine core and driver debugging. config DMADEVICES_VDEBUG bool "DMA Engine verbose debugging" depends on DMADEVICES_DEBUG != n help This is an option for use by developers; most people should say N here. This enables deeper (more verbose) debugging of the DMA engine core and drivers. if DMADEVICES comment "DMA Devices" config INTEL_MID_DMAC tristate "Intel MID DMA support for Peripheral DMA controllers" depends on PCI && X86 select DMA_ENGINE default n help Enable support for the Intel(R) MID DMA engine present in Intel MID chipsets. Say Y here if you have such a chipset. If unsure, say N. config ASYNC_TX_ENABLE_CHANNEL_SWITCH bool config AMBA_PL08X bool "ARM PrimeCell PL080 or PL081 support" depends on ARM_AMBA && EXPERIMENTAL select DMA_ENGINE help Platform has a PL08x DMAC device which can provide DMA engine support config INTEL_IOATDMA tristate "Intel I/OAT DMA support" depends on PCI && X86 select DMA_ENGINE select DCA select ASYNC_TX_DISABLE_PQ_VAL_DMA select ASYNC_TX_DISABLE_XOR_VAL_DMA help Enable support for the Intel(R) I/OAT DMA engine present in recent Intel Xeon chipsets. Say Y here if you have such a chipset. If unsure, say N. config INTEL_IOP_ADMA tristate "Intel IOP ADMA support" depends on ARCH_IOP32X || ARCH_IOP33X || ARCH_IOP13XX select DMA_ENGINE select ASYNC_TX_ENABLE_CHANNEL_SWITCH help Enable support for the Intel(R) IOP Series RAID engines. config DW_DMAC tristate "Synopsys DesignWare AHB DMA support" depends on HAVE_CLK select DMA_ENGINE default y if CPU_AT32AP7000 help Support the Synopsys DesignWare AHB DMA controller. This can be integrated in chips such as the Atmel AT32ap7000. config AT_HDMAC tristate "Atmel AHB DMA support" depends on ARCH_AT91SAM9RL || ARCH_AT91SAM9G45 select DMA_ENGINE help Support the Atmel AHB DMA controller. This can be integrated in chips such as the Atmel AT91SAM9RL. config FSL_DMA tristate "Freescale Elo and Elo Plus DMA support" depends on FSL_SOC select DMA_ENGINE select ASYNC_TX_ENABLE_CHANNEL_SWITCH ---help--- Enable support for the Freescale Elo and Elo Plus DMA controllers. The Elo is the DMA controller on some 82xx and 83xx parts, and the Elo Plus is the DMA controller on 85xx and 86xx parts. config MPC512X_DMA tristate "Freescale MPC512x built-in DMA engine support" depends on PPC_MPC512x || PPC_MPC831x select DMA_ENGINE ---help--- Enable support for the Freescale MPC512x built-in DMA engine. config MV_XOR bool "Marvell XOR engine support" depends on PLAT_ORION select DMA_ENGINE select ASYNC_TX_ENABLE_CHANNEL_SWITCH ---help--- Enable support for the Marvell XOR engine. config MX3_IPU bool "MX3x Image Processing Unit support" depends on ARCH_MX3 select DMA_ENGINE default y help If you plan to use the Image Processing unit in the i.MX3x, say Y here. If unsure, select Y. config MX3_IPU_IRQS int "Number of dynamically mapped interrupts for IPU" depends on MX3_IPU range 2 137 default 4 help Out of 137 interrupt sources on i.MX31 IPU only very few are used. To avoid bloating the irq_desc[] array we allocate a sufficient number of IRQ slots and map them dynamically to specific sources. config TXX9_DMAC tristate "Toshiba TXx9 SoC DMA support" depends on MACH_TX49XX || MACH_TX39XX select DMA_ENGINE help Support the TXx9 SoC internal DMA controller. This can be integrated in chips such as the Toshiba TX4927/38/39. config SH_DMAE tristate "Renesas SuperH DMAC support" depends on (SUPERH && SH_DMA) || (ARM && ARCH_SHMOBILE) depends on !SH_DMA_API select DMA_ENGINE help Enable support for the Renesas SuperH DMA controllers. config COH901318 bool "ST-Ericsson COH901318 DMA support" select DMA_ENGINE depends on ARCH_U300 help Enable support for ST-Ericsson COH 901 318 DMA. config STE_DMA40 bool "ST-Ericsson DMA40 support" depends on ARCH_U8500 select DMA_ENGINE help Support for ST-Ericsson DMA40 controller config AMCC_PPC440SPE_ADMA tristate "AMCC PPC440SPe ADMA support" depends on 440SPe || 440SP select DMA_ENGINE select ARCH_HAS_ASYNC_TX_FIND_CHANNEL select ASYNC_TX_ENABLE_CHANNEL_SWITCH help Enable support for the AMCC PPC440SPe RAID engines. config TIMB_DMA tristate "Timberdale FPGA DMA support" depends on MFD_TIMBERDALE || HAS_IOMEM select DMA_ENGINE help Enable support for the Timberdale FPGA DMA engine. config ARCH_HAS_ASYNC_TX_FIND_CHANNEL bool config PL330_DMA tristate "DMA API Driver for PL330" select DMA_ENGINE depends on PL330 help Select if your platform has one or more PL330 DMACs. You need to provide platform specific settings via platform_data for a dma-pl330 device. config PCH_DMA tristate "Intel EG20T PCH / OKI SEMICONDUCTOR ML7213 IOH DMA support" depends on PCI && X86 select DMA_ENGINE help Enable support for Intel EG20T PCH DMA engine. This driver also can be used for OKI SEMICONDUCTOR ML7213 IOH(Input/ Output Hub) which is for IVI(In-Vehicle Infotainment) use. ML7213 is companion chip for Intel Atom E6xx series. ML7213 is completely compatible for Intel EG20T PCH. config IMX_SDMA tristate "i.MX SDMA support" depends on ARCH_MX25 || ARCH_MX3 || ARCH_MX5 select DMA_ENGINE help Support the i.MX SDMA engine. This engine is integrated into Freescale i.MX25/31/35/51 chips. config IMX_DMA tristate "i.MX DMA support" depends on IMX_HAVE_DMA_V1 select DMA_ENGINE help Support the i.MX DMA engine. This engine is integrated into Freescale i.MX1/21/27 chips. config MXS_DMA bool "MXS DMA support" depends on SOC_IMX23 || SOC_IMX28 select DMA_ENGINE help Support the MXS DMA engine. This engine including APBH-DMA and APBX-DMA is integrated into Freescale i.MX23/28 chips. config DMA_ENGINE bool comment "DMA Clients" depends on DMA_ENGINE config NET_DMA bool "Network: TCP receive copy offload" depends on DMA_ENGINE && NET default (INTEL_IOATDMA || FSL_DMA) help This enables the use of DMA engines in the network stack to offload receive copy-to-user operations, freeing CPU cycles. Say Y here if you enabled INTEL_IOATDMA or FSL_DMA, otherwise say N. config ASYNC_TX_DMA bool "Async_tx: Offload support for the async_tx api" depends on DMA_ENGINE help This allows the async_tx api to take advantage of offload engines for memcpy, memset, xor, and raid6 p+q operations. If your platform has a dma engine that can perform raid operations and you have enabled MD_RAID456 say Y. If unsure, say N. config DMATEST tristate "DMA Test client" depends on DMA_ENGINE help Simple DMA test client. Say N unless you're debugging a DMA Device driver. endif config AR6000_WLAN tristate "AR6000 wireless networking over SDIO" depends on MMC select WIRELESS_EXT select WEXT_PRIV default m help good luck. config AR6000_WLAN_DEBUG bool "Enable retrieval of firmware debugging information" depends on AR6000_WLAN default n help The AR6k firmware maintains a log of debugging events that gets flushed to the host on various occasions. Retrieval of this data is very slow, taking several seconds. If in doubt, say N. config AR6000_WLAN_RESET bool "Soft-reset when shutting down" depends on AR6000_WLAN default n help The AR6k module can be explicitly reset when shutting down the device. This adds a delay of about two seconds to suspend, module removal, and so on. Since the WLAN SDIO function is generally disabled soon thereafter anyway, this reset seems superfluous. If in doubt, say N. config INTEL_IDLE bool "Cpuidle Driver for Intel Processors" depends on CPU_IDLE depends on X86 depends on CPU_SUP_INTEL help Enable intel_idle, a cpuidle driver that includes knowledge of native Intel hardware idle features. The acpi_idle driver can be configured at the same time, in order to handle processors intel_idle does not support. menu "Memory power savings" depends on X86_64 config I7300_IDLE_IOAT_CHANNEL bool config I7300_IDLE tristate "Intel chipset idle memory power saving driver" select I7300_IDLE_IOAT_CHANNEL depends on EXPERIMENTAL help Enable memory power savings when idle with certain Intel server chipsets. The chipset must have I/O AT support, such as the Intel 7300. The power savings depends on the type and quantity of DRAM devices. endmenu # # UWB device configuration # menuconfig UWB tristate "Ultra Wideband devices (EXPERIMENTAL)" depends on EXPERIMENTAL depends on PCI default n help UWB is a high-bandwidth, low-power, point-to-point radio technology using a wide spectrum (3.1-10.6GHz). It is optimized for in-room use (480Mbps at 2 meters, 110Mbps at 10m). It serves as the transport layer for other protocols, such as Wireless USB (WUSB). The topology is peer to peer; however, higher level protocols (such as WUSB) might impose a master/slave relationship. Say Y here if your computer has UWB radio controllers (USB or PCI) based. You will need to enable the radio controllers below. It is ok to select all of them, no harm done. For more help check the UWB and WUSB related files in . To compile the UWB stack as a module, choose M here. if UWB config UWB_HWA tristate "UWB Radio Control driver for WUSB-compliant USB dongles (HWA)" depends on USB help This driver enables the radio controller for HWA USB devices. HWA stands for Host Wire Adapter, and it is a UWB Radio Controller connected to your system via USB. Most of them come with a Wireless USB host controller also. To compile this driver select Y (built in) or M (module). It is safe to select any even if you do not have the hardware. config UWB_WHCI tristate "UWB Radio Control driver for WHCI-compliant cards" depends on PCI help This driver enables the radio controller for WHCI cards. WHCI is a specification developed by Intel (http://www.intel.com/technology/comms/wusb/whci.htm) much in the spirit of USB's EHCI, but for UWB and Wireless USB radio/host controllers connected via memory mapping (eg: PCI). Most of these cards come also with a Wireless USB host controller. To compile this driver select Y (built in) or M (module). It is safe to select any even if you do not have the hardware. config UWB_I1480U tristate "Support for Intel Wireless UWB Link 1480 HWA" depends on UWB_HWA select FW_LOADER help This driver enables support for the i1480 when connected via USB. It consists of a firmware uploader that will enable it to behave as an HWA device. To compile this driver select Y (built in) or M (module). It is safe to select any even if you do not have the hardware. endif # UWB # # For a description of the syntax of this configuration file, # see Documentation/kbuild/kconfig-language.txt. # menu "Firmware Drivers" config EDD tristate "BIOS Enhanced Disk Drive calls determine boot disk" depends on X86 help Say Y or M here if you want to enable BIOS Enhanced Disk Drive Services real mode BIOS calls to determine which disk BIOS tries boot from. This information is then exported via sysfs. This option is experimental and is known to fail to boot on some obscure configurations. Most disk controller BIOS vendors do not yet implement this feature. config EDD_OFF bool "Sets default behavior for EDD detection to off" depends on EDD default n help Say Y if you want EDD disabled by default, even though it is compiled into the kernel. Say N if you want EDD enabled by default. EDD can be dynamically set using the kernel parameter 'edd={on|skipmbr|off}'. config FIRMWARE_MEMMAP bool "Add firmware-provided memory map to sysfs" if EXPERT default X86 help Add the firmware-provided (unmodified) memory map to /sys/firmware/memmap. That memory map is used for example by kexec to set up parameter area for the next kernel, but can also be used for debugging purposes. See also Documentation/ABI/testing/sysfs-firmware-memmap. config EFI_VARS tristate "EFI Variable Support via sysfs" depends on EFI default n help If you say Y here, you are able to get EFI (Extensible Firmware Interface) variable information via sysfs. You may read, write, create, and destroy EFI variables through this interface. Note that using this driver in concert with efibootmgr requires at least test release version 0.5.0-test3 or later, which is available from Matt Domsch's website located at: Subsequent efibootmgr releases may be found at: config EFI_PCDP bool "Console device selection via EFI PCDP or HCDP table" depends on ACPI && EFI && IA64 default y if IA64 help If your firmware supplies the PCDP table, and you want to automatically use the primary console device it describes as the Linux console, say Y here. If your firmware supplies the HCDP table, and you want to use the first serial port it describes as the Linux console, say Y here. If your EFI ConOut path contains only a UART device, it will become the console automatically. Otherwise, you must specify the "console=hcdp" kernel boot argument. Neither the PCDP nor the HCDP affects naming of serial devices, so a serial console may be /dev/ttyS0, /dev/ttyS1, etc, depending on how the driver discovers devices. You must also enable the appropriate drivers (serial, VGA, etc.) See DIG64_HCDPv20_042804.pdf available from config DELL_RBU tristate "BIOS update support for DELL systems via sysfs" depends on X86 select FW_LOADER help Say m if you want to have the option of updating the BIOS for your DELL system. Note you need a Dell OpenManage or Dell Update package (DUP) supporting application to communicate with the BIOS regarding the new image for the image update to take effect. See for more details on the driver. config DCDBAS tristate "Dell Systems Management Base Driver" depends on X86 help The Dell Systems Management Base Driver provides a sysfs interface for systems management software to perform System Management Interrupts (SMIs) and Host Control Actions (system power cycle or power off after OS shutdown) on certain Dell systems. See for more details on the driver and the Dell systems on which Dell systems management software makes use of this driver. Say Y or M here to enable the driver for use by Dell systems management software such as Dell OpenManage. config DMIID bool "Export DMI identification via sysfs to userspace" depends on DMI default y help Say Y here if you want to query SMBIOS/DMI system identification information from userspace through /sys/class/dmi/id/ or if you want DMI-based module auto-loading. config DMI_SYSFS tristate "DMI table support in sysfs" depends on SYSFS && DMI default n help Say Y or M here to enable the exporting of the raw DMI table data via sysfs. This is useful for consuming the data without requiring any access to /dev/mem at all. Tables are found under /sys/firmware/dmi when this option is enabled and loaded. config ISCSI_IBFT_FIND bool "iSCSI Boot Firmware Table Attributes" depends on X86 default n help This option enables the kernel to find the region of memory in which the ISCSI Boot Firmware Table (iBFT) resides. This is necessary for iSCSI Boot Firmware Table Attributes module to work properly. config ISCSI_IBFT tristate "iSCSI Boot Firmware Table Attributes module" select ISCSI_BOOT_SYSFS depends on ISCSI_IBFT_FIND && SCSI && SCSI_LOWLEVEL default n help This option enables support for detection and exposing of iSCSI Boot Firmware Table (iBFT) via sysfs to userspace. If you wish to detect iSCSI boot parameters dynamically during system boot, say Y. Otherwise, say N. config SIGMA tristate "SigmaStudio firmware loader" depends on I2C select CRC32 default n help Enable helper functions for working with Analog Devices SigmaDSP parts and binary firmwares produced by Analog Devices SigmaStudio. If unsure, say N here. Drivers that need these helpers will select this option automatically. endmenu menu "TI VLYNQ" depends on AR7 && EXPERIMENTAL config VLYNQ bool "TI VLYNQ bus support" help Support for Texas Instruments(R) VLYNQ bus. The VLYNQ bus is a high-speed, serial and packetized data bus which allows external peripherals of a SoC to appear into the system's main memory. If unsure, say N config VLYNQ_DEBUG bool "VLYNQ bus debug" depends on VLYNQ && DEBUG_KERNEL help Turn on VLYNQ bus debugging. endmenu menuconfig MACINTOSH_DRIVERS bool "Macintosh device drivers" depends on PPC || MAC || X86 default y if (PPC_PMAC || MAC) ---help--- Say Y here to get to see options for devices used with Macintosh computers. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled. if MACINTOSH_DRIVERS config ADB bool "Apple Desktop Bus (ADB) support" depends on MAC || (PPC_PMAC && PPC32) help Apple Desktop Bus (ADB) support is for support of devices which are connected to an ADB port. ADB devices tend to have 4 pins. If you have an Apple Macintosh prior to the iMac, an iBook or PowerBook, or a "Blue and White G3", you probably want to say Y here. Otherwise say N. config ADB_MACII bool "Include Mac II ADB driver" depends on ADB && MAC help Say Y here if want your kernel to support Macintosh systems that use the Mac II style ADB. This includes the II, IIx, IIcx, SE/30, IIci, Quadra 610, Quadra 650, Quadra 700, Quadra 800, Centris 610 and Centris 650. config ADB_MACIISI bool "Include Mac IIsi ADB driver" depends on ADB && MAC help Say Y here if want your kernel to support Macintosh systems that use the Mac IIsi style ADB. This includes the IIsi, IIvi, IIvx, Classic II, LC, LC II, LC III, Performa 460, and the Performa 600. config ADB_IOP bool "Include IOP (IIfx/Quadra 9x0) ADB driver" depends on ADB && MAC help The I/O Processor (IOP) is an Apple custom IC designed to provide intelligent support for I/O controllers. It is described at to enable direct support for it, say 'Y' here. config ADB_PMU68K bool "Include PMU (Powerbook) ADB driver" depends on ADB && MAC help Say Y here if want your kernel to support the m68k based Powerbooks. This includes the PowerBook 140, PowerBook 145, PowerBook 150, PowerBook 160, PowerBook 165, PowerBook 165c, PowerBook 170, PowerBook 180, PowerBook, 180c, PowerBook 190cs, PowerBook 520, PowerBook Duo 210, PowerBook Duo 230, PowerBook Duo 250, PowerBook Duo 270c, PowerBook Duo 280 and PowerBook Duo 280c. # we want to change this to something like CONFIG_SYSCTRL_CUDA/PMU config ADB_CUDA bool "Support for CUDA based Macs and PowerMacs" depends on (ADB || PPC_PMAC) && !PPC_PMAC64 help This provides support for CUDA based Macintosh and Power Macintosh systems. This includes many m68k based Macs (Color Classic, Mac TV, Performa 475, Performa 520, Performa 550, Performa 575, Performa 588, Quadra 605, Quadra 630, Quadra/Centris 660AV, and Quadra 840AV), most OldWorld PowerMacs, the first generation iMacs, the Blue&White G3 and the "Yikes" G4 (PCI Graphics). All later models should use CONFIG_ADB_PMU instead. It is safe to say Y here even if your machine doesn't have a CUDA. If unsure say Y. config ADB_PMU bool "Support for PMU based PowerMacs" depends on PPC_PMAC help On PowerBooks, iBooks, and recent iMacs and Power Macintoshes, the PMU is an embedded microprocessor whose primary function is to control system power, and battery charging on the portable models. The PMU also controls the ADB (Apple Desktop Bus) which connects to the keyboard and mouse on some machines, as well as the non-volatile RAM and the RTC (real time clock) chip. Say Y to enable support for this device; you should do so if your machine is one of those mentioned above. config ADB_PMU_LED bool "Support for the Power/iBook front LED" depends on ADB_PMU select NEW_LEDS select LEDS_CLASS help Support the front LED on Power/iBooks as a generic LED that can be triggered by any of the supported triggers. To get the behaviour of the old CONFIG_BLK_DEV_IDE_PMAC_BLINK, select this and the ide-disk LED trigger and configure appropriately through sysfs. config ADB_PMU_LED_IDE bool "Use front LED as IDE LED by default" depends on ADB_PMU_LED depends on LEDS_CLASS select LEDS_TRIGGERS select LEDS_TRIGGER_IDE_DISK help This option makes the front LED default to the IDE trigger so that it blinks on IDE activity. config PMAC_SMU bool "Support for SMU based PowerMacs" depends on PPC_PMAC64 help This option adds support for the newer G5 iMacs and PowerMacs based on the "SMU" system control chip which replaces the old PMU. If you don't know, say Y. config PMAC_APM_EMU tristate "APM emulation" select APM_EMULATION depends on ADB_PMU && PM && PPC32 config PMAC_MEDIABAY bool "Support PowerBook hotswap media bay" depends on PPC_PMAC && PPC32 && BLOCK help This option adds support for older PowerBook's hotswap media bay that can contains batteries, floppy drives, or IDE devices. PCI devices are not fully supported in the bay as I never had one to try with config PMAC_BACKLIGHT bool "Backlight control for LCD screens" depends on ADB_PMU && FB = y && (BROKEN || !PPC64) select FB_BACKLIGHT help Say Y here to enable Macintosh specific extensions of the generic backlight code. With this enabled, the brightness keys on older PowerBooks will be enabled so you can change the screen brightness. Newer models should use a userspace daemon like pbbuttonsd. config PMAC_BACKLIGHT_LEGACY bool "Provide legacy ioctl's on /dev/pmu for the backlight" depends on PMAC_BACKLIGHT && (BROKEN || !PPC64) help Say Y if you want to enable legacy ioctl's on /dev/pmu. This is for programs which use this old interface. New and updated programs should use the backlight classes in sysfs. config ADB_MACIO bool "Include MacIO (CHRP) ADB driver" depends on ADB && PPC_CHRP && !PPC_PMAC64 help Say Y here to include direct support for the ADB controller in the Hydra chip used on PowerPC Macintoshes of the CHRP type. (The Hydra also includes a MESH II SCSI controller, DBDMA controller, VIA chip, OpenPIC controller and two RS422/Geoports.) config INPUT_ADBHID bool "Support for ADB input devices (keyboard, mice, ...)" depends on ADB && INPUT=y help Say Y here if you want to have ADB (Apple Desktop Bus) HID devices such as keyboards, mice, joysticks, trackpads or graphic tablets handled by the input layer. If you say Y here, make sure to say Y to the corresponding drivers "Keyboard support" (CONFIG_INPUT_KEYBDEV), "Mouse Support" (CONFIG_INPUT_MOUSEDEV) and "Event interface support" (CONFIG_INPUT_EVDEV) as well. If unsure, say Y. config MAC_EMUMOUSEBTN tristate "Support for mouse button 2+3 emulation" depends on SYSCTL && INPUT help This provides generic support for emulating the 2nd and 3rd mouse button with keypresses. If you say Y here, the emulation is still disabled by default. The emulation is controlled by these sysctl entries: /proc/sys/dev/mac_hid/mouse_button_emulation /proc/sys/dev/mac_hid/mouse_button2_keycode /proc/sys/dev/mac_hid/mouse_button3_keycode If you have an Apple machine with a 1-button mouse, say Y here. To compile this driver as a module, choose M here: the module will be called mac_hid. config THERM_WINDTUNNEL tristate "Support for thermal management on Windtunnel G4s" depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64 help This driver provides some thermostat and fan control for the desktop G4 "Windtunnel" config THERM_ADT746X tristate "Support for thermal mgmnt on laptops with ADT 746x chipset" depends on I2C && I2C_POWERMAC && PPC_PMAC && !PPC_PMAC64 help This driver provides some thermostat and fan control for the iBook G4, and the ATI based aluminium PowerBooks, allowing slightly better fan behaviour by default, and some manual control. config THERM_PM72 tristate "Support for thermal management on PowerMac G5" depends on I2C && I2C_POWERMAC && PPC_PMAC64 help This driver provides thermostat and fan control for the desktop G5 machines. config WINDFARM tristate "New PowerMac thermal control infrastructure" depends on PPC config WINDFARM_PM81 tristate "Support for thermal management on iMac G5" depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU select I2C_POWERMAC help This driver provides thermal control for the iMacG5 config WINDFARM_PM91 tristate "Support for thermal management on PowerMac9,1" depends on WINDFARM && I2C && CPU_FREQ_PMAC64 && PMAC_SMU select I2C_POWERMAC help This driver provides thermal control for the PowerMac9,1 which is the recent (SMU based) single CPU desktop G5 config WINDFARM_PM112 tristate "Support for thermal management on PowerMac11,2" depends on WINDFARM && I2C && PMAC_SMU select I2C_POWERMAC help This driver provides thermal control for the PowerMac11,2 which are the recent dual and quad G5 machines using the 970MP dual-core processor. config WINDFARM_PM121 tristate "Support for thermal management on PowerMac12,1" depends on WINDFARM && I2C && PMAC_SMU select I2C_POWERMAC help This driver provides thermal control for the PowerMac12,1 which is the iMac G5 (iSight). config ANSLCD tristate "Support for ANS LCD display" depends on ADB_CUDA && PPC_PMAC config PMAC_RACKMETER tristate "Support for Apple XServe front panel LEDs" depends on PPC_PMAC help This driver provides some support to control the front panel blue LEDs "vu-meter" of the XServer macs. config SENSORS_AMS tristate "Apple Motion Sensor driver" depends on PPC_PMAC && !PPC64 && INPUT && ((ADB_PMU && I2C = y) || (ADB_PMU && !I2C) || I2C) && EXPERIMENTAL select INPUT_POLLDEV help Support for the motion sensor included in PowerBooks. Includes implementations for PMU and I2C. This driver can also be built as a module. If so, the module will be called ams. config SENSORS_AMS_PMU bool "PMU variant" depends on SENSORS_AMS && ADB_PMU default y help PMU variant of motion sensor, found in late 2005 PowerBooks. config SENSORS_AMS_I2C bool "I2C variant" depends on SENSORS_AMS && I2C default y help I2C variant of motion sensor, found in early 2005 PowerBooks and iBooks. endif # MACINTOSH_DRIVERS # # DCA server configuration # config DCA tristate # # Kernel configuration file for the MPT2SAS # # This code is based on drivers/scsi/mpt2sas/Kconfig # Copyright (C) 2007-2010 LSI Corporation # (mailto:DL-MPTFusionLinux@lsi.com) # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # NO WARRANTY # THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR # CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT # LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is # solely responsible for determining the appropriateness of using and # distributing the Program and assumes all risks associated with its # exercise of rights under this Agreement, including but not limited to # the risks and costs of program errors, damage to or loss of data, # programs or equipment, and unavailability or interruption of operations. # DISCLAIMER OF LIABILITY # NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR # TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE # USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED # HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, # USA. config SCSI_MPT2SAS tristate "LSI MPT Fusion SAS 2.0 Device Driver" depends on PCI && SCSI select SCSI_SAS_ATTRS select RAID_ATTRS ---help--- This driver supports PCI-Express SAS 6Gb/s Host Adapters. config SCSI_MPT2SAS_MAX_SGE int "LSI MPT Fusion Max number of SG Entries (16 - 128)" depends on PCI && SCSI && SCSI_MPT2SAS default "128" range 16 128 ---help--- This option allows you to specify the maximum number of scatter- gather entries per I/O. The driver default is 128, which matches SAFE_PHYS_SEGMENTS. However, it may decreased down to 16. Decreasing this parameter will reduce memory requirements on a per controller instance. config SCSI_MPT2SAS_LOGGING bool "LSI MPT Fusion logging facility" depends on PCI && SCSI && SCSI_MPT2SAS ---help--- This turns on a logging facility. # # Kernel configuration file for 88SE64XX/88SE94XX SAS/SATA driver. # # Copyright 2007 Red Hat, Inc. # Copyright 2008 Marvell. # # This file is licensed under GPLv2. # # This file is part of the 88SE64XX/88SE94XX driver. # # The 88SE64XX/88SE94XX driver is free software; you can redistribute # it and/or modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; version 2 of the # License. # # The 88SE64XX/88SE94XX driver is distributed in the hope that it will be # useful, but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with 88SE64XX/88SE94XX Driver; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # # config SCSI_MVSAS tristate "Marvell 88SE64XX/88SE94XX SAS/SATA support" depends on PCI select SCSI_SAS_LIBSAS select FW_LOADER help This driver supports Marvell's SAS/SATA 3Gb/s PCI-E 88SE64XX and 6Gb/s PCI-E 88SE94XX chip based host adapters. config SCSI_MVSAS_DEBUG bool "Compile in debug mode" default y depends on SCSI_MVSAS help Compiles the 88SE64XX/88SE94XX driver in debug mode. In debug mode, the driver prints some messages to the console. config SCSI_QLA_FC tristate "QLogic QLA2XXX Fibre Channel Support" depends on PCI && SCSI select SCSI_FC_ATTRS select FW_LOADER ---help--- This qla2xxx driver supports all QLogic Fibre Channel PCI and PCIe host adapters. By default, firmware for the ISP parts will be loaded via the Firmware Loader interface. ISP Firmware Filename ---------- ----------------- 21xx ql2100_fw.bin 22xx ql2200_fw.bin 2300, 2312, 6312 ql2300_fw.bin 2322, 6322 ql2322_fw.bin 24xx, 54xx ql2400_fw.bin 25xx ql2500_fw.bin Upon request, the driver caches the firmware image until the driver is unloaded. Firmware images can be retrieved from: ftp://ftp.qlogic.com/outgoing/linux/firmware/ menu "SCSI device support" config SCSI_MOD tristate default y if SCSI=n || SCSI=y default m if SCSI=m config RAID_ATTRS tristate "RAID Transport Class" default n depends on BLOCK depends on SCSI_MOD ---help--- Provides RAID config SCSI tristate "SCSI device support" depends on BLOCK select SCSI_DMA if HAS_DMA ---help--- If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or any other SCSI device under Linux, say Y and make sure that you know the name of your SCSI host adapter (the card inside your computer that "speaks" the SCSI protocol, also called SCSI controller), because you will be asked for it. You also need to say Y here if you have a device which speaks the SCSI protocol. Examples of this include the parallel port version of the IOMEGA ZIP drive, USB storage devices, Fibre Channel, and FireWire storage. To compile this driver as a module, choose M here and read . The module will be called scsi_mod. However, do not compile this as a module if your root file system (the one containing the directory /) is located on a SCSI device. config SCSI_DMA bool default n config SCSI_TGT tristate "SCSI target support" depends on SCSI && EXPERIMENTAL ---help--- If you want to use SCSI target mode drivers enable this option. If you choose M, the module will be called scsi_tgt. config SCSI_NETLINK bool default n select NET config SCSI_PROC_FS bool "legacy /proc/scsi/ support" depends on SCSI && PROC_FS default y ---help--- This option enables support for the various files in /proc/scsi. In Linux 2.6 this has been superseded by files in sysfs but many legacy applications rely on this. If unsure say Y. comment "SCSI support type (disk, tape, CD-ROM)" depends on SCSI config BLK_DEV_SD tristate "SCSI disk support" depends on SCSI select CRC_T10DIF if BLK_DEV_INTEGRITY ---help--- If you want to use SCSI hard disks, Fibre Channel disks, Serial ATA (SATA) or Parallel ATA (PATA) hard disks, USB storage or the SCSI or parallel port version of the IOMEGA ZIP drive, say Y and read the SCSI-HOWTO, the Disk-HOWTO and the Multi-Disk-HOWTO, available from . This is NOT for SCSI CD-ROMs. To compile this driver as a module, choose M here and read . The module will be called sd_mod. Do not compile this driver as a module if your root file system (the one containing the directory /) is located on a SCSI disk. In this case, do not compile the driver for your SCSI host adapter (below) as a module either. config CHR_DEV_ST tristate "SCSI tape support" depends on SCSI ---help--- If you want to use a SCSI tape drive under Linux, say Y and read the SCSI-HOWTO, available from , and in the kernel source. This is NOT for SCSI CD-ROMs. To compile this driver as a module, choose M here and read . The module will be called st. config CHR_DEV_OSST tristate "SCSI OnStream SC-x0 tape support" depends on SCSI ---help--- The OnStream SC-x0 SCSI tape drives cannot be driven by the standard st driver, but instead need this special osst driver and use the /dev/osstX char device nodes (major 206). Via usb-storage, you may be able to drive the USB-x0 and DI-x0 drives as well. Note that there is also a second generation of OnStream tape drives (ADR-x0) that supports the standard SCSI-2 commands for tapes (QIC-157) and can be driven by the standard driver st. For more information, you may have a look at the SCSI-HOWTO and in the kernel source. More info on the OnStream driver may be found on Please also have a look at the standard st docu, as most of it applies to osst as well. To compile this driver as a module, choose M here and read . The module will be called osst. config BLK_DEV_SR tristate "SCSI CDROM support" depends on SCSI ---help--- If you want to use a CD or DVD drive attached to your computer by SCSI, FireWire, USB or ATAPI, say Y and read the SCSI-HOWTO and the CDROM-HOWTO at . Make sure to say Y or M to "ISO 9660 CD-ROM file system support". To compile this driver as a module, choose M here and read . The module will be called sr_mod. config BLK_DEV_SR_VENDOR bool "Enable vendor-specific extensions (for SCSI CDROM)" depends on BLK_DEV_SR help This enables the usage of vendor specific SCSI commands. This is required to support multisession CDs with old NEC/TOSHIBA cdrom drives (and HP Writers). If you have such a drive and get the first session only, try saying Y here; everybody else says N. config CHR_DEV_SG tristate "SCSI generic support" depends on SCSI ---help--- If you want to use SCSI scanners, synthesizers or CD-writers or just about anything having "SCSI" in its name other than hard disks, CD-ROMs or tapes, say Y here. These won't be supported by the kernel directly, so you need some additional software which knows how to talk to these devices using the SCSI protocol: For scanners, look at SANE (). For CD writer software look at Cdrtools () and for burning a "disk at once": CDRDAO (). Cdparanoia is a high quality digital reader of audio CDs (). For other devices, it's possible that you'll have to write the driver software yourself. Please read the file for more information. To compile this driver as a module, choose M here and read . The module will be called sg. If unsure, say N. config CHR_DEV_SCH tristate "SCSI media changer support" depends on SCSI ---help--- This is a driver for SCSI media changers. Most common devices are tape libraries and MOD/CDROM jukeboxes. *Real* jukeboxes, you don't need this for those tiny 6-slot cdrom changers. Media changers are listed as "Type: Medium Changer" in /proc/scsi/scsi. If you have such hardware and want to use it with linux, say Y here. Check for details. If you want to compile this as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read and . The module will be called ch.o. If unsure, say N. config SCSI_ENCLOSURE tristate "SCSI Enclosure Support" depends on SCSI && ENCLOSURE_SERVICES help Enclosures are devices sitting on or in SCSI backplanes that manage devices. If you have a disk cage, the chances are that it has an enclosure device. Selecting this option will just allow certain enclosure conditions to be reported and is not required. config SCSI_MULTI_LUN bool "Probe all LUNs on each SCSI device" depends on SCSI help Some devices support more than one LUN (Logical Unit Number) in order to allow access to several media, e.g. CD jukebox, USB card reader, mobile phone in mass storage mode. This option forces the kernel to probe for all LUNs by default. This setting can be overriden by max_luns boot/module parameter. Note that this option does not affect devices conforming to SCSI-3 or higher as they can explicitely report their number of LUNs. It is safe to say Y here unless you have one of those rare devices which reacts in an unexpected way when probed for multiple LUNs. config SCSI_CONSTANTS bool "Verbose SCSI error reporting (kernel size +=12K)" depends on SCSI help The error messages regarding your SCSI hardware will be easier to understand if you say Y here; it will enlarge your kernel by about 12 KB. If in doubt, say Y. config SCSI_LOGGING bool "SCSI logging facility" depends on SCSI ---help--- This turns on a logging facility that can be used to debug a number of SCSI related problems. If you say Y here, no logging output will appear by default, but you can enable logging by saying Y to "/proc file system support" and "Sysctl support" below and executing the command echo > /proc/sys/dev/scsi/logging_level where is a four byte value representing the logging type and logging level for each type of logging selected. There are a number of logging types and you can find them in the source at . The logging levels are also described in that file and they determine the verbosity of the logging for each logging type. If you say N here, it may be harder to track down some types of SCSI problems. If you say Y here your kernel will be somewhat larger, but there should be no noticeable performance impact as long as you have logging turned off. config SCSI_SCAN_ASYNC bool "Asynchronous SCSI scanning" depends on SCSI help The SCSI subsystem can probe for devices while the rest of the system continues booting, and even probe devices on different busses in parallel, leading to a significant speed-up. If you have built SCSI as modules, enabling this option can be a problem as the devices may not have been found by the time your system expects them to have been. You can load the scsi_wait_scan module to ensure that all scans have completed. If you build your SCSI drivers into the kernel, then everything will work fine if you say Y here. You can override this choice by specifying "scsi_mod.scan=sync" or async on the kernel's command line. config SCSI_WAIT_SCAN tristate # No prompt here, this is an invisible symbol. default m depends on SCSI depends on MODULES # scsi_wait_scan is a loadable module which waits until all the async scans are # complete. The idea is to use it in initrd/ initramfs scripts. You modprobe # it after all the modprobes of the root SCSI drivers and it will wait until # they have all finished scanning their buses before allowing the boot to # proceed. (This method is not applicable if targets boot independently in # parallel with the initiator, or with transports with non-deterministic target # discovery schemes, or if a transport driver does not support scsi_wait_scan.) # # This symbol is not exposed as a prompt because little is to be gained by # disabling it, whereas people who accidentally switch it off may wonder why # their mkinitrd gets into trouble. menu "SCSI Transports" depends on SCSI config SCSI_SPI_ATTRS tristate "Parallel SCSI (SPI) Transport Attributes" depends on SCSI help If you wish to export transport-specific information about each attached SCSI device to sysfs, say Y. Otherwise, say N. config SCSI_FC_ATTRS tristate "FiberChannel Transport Attributes" depends on SCSI select SCSI_NETLINK help If you wish to export transport-specific information about each attached FiberChannel device to sysfs, say Y. Otherwise, say N. config SCSI_FC_TGT_ATTRS bool "SCSI target support for FiberChannel Transport Attributes" depends on SCSI_FC_ATTRS depends on SCSI_TGT = y || SCSI_TGT = SCSI_FC_ATTRS help If you want to use SCSI target mode drivers enable this option. config SCSI_ISCSI_ATTRS tristate "iSCSI Transport Attributes" depends on SCSI && NET help If you wish to export transport-specific information about each attached iSCSI device to sysfs, say Y. Otherwise, say N. config SCSI_SAS_ATTRS tristate "SAS Transport Attributes" depends on SCSI select BLK_DEV_BSG help If you wish to export transport-specific information about each attached SAS device to sysfs, say Y. source "drivers/scsi/libsas/Kconfig" config SCSI_SRP_ATTRS tristate "SRP Transport Attributes" depends on SCSI help If you wish to export transport-specific information about each attached SRP device to sysfs, say Y. config SCSI_SRP_TGT_ATTRS bool "SCSI target support for SRP Transport Attributes" depends on SCSI_SRP_ATTRS depends on SCSI_TGT = y || SCSI_TGT = SCSI_SRP_ATTRS help If you want to use SCSI target mode drivers enable this option. endmenu menuconfig SCSI_LOWLEVEL bool "SCSI low-level drivers" depends on SCSI!=n default y if SCSI_LOWLEVEL && SCSI config ISCSI_TCP tristate "iSCSI Initiator over TCP/IP" depends on SCSI && INET select CRYPTO select CRYPTO_MD5 select CRYPTO_CRC32C select SCSI_ISCSI_ATTRS help The iSCSI Driver provides a host with the ability to access storage through an IP network. The driver uses the iSCSI protocol to transport SCSI requests and responses over a TCP/IP network between the host (the "initiator") and "targets". Architecturally, the iSCSI driver combines with the host's TCP/IP stack, network drivers, and Network Interface Card (NIC) to provide the same functions as a SCSI or a Fibre Channel (FC) adapter driver with a Host Bus Adapter (HBA). To compile this driver as a module, choose M here: the module will be called iscsi_tcp. The userspace component needed to initialize the driver, documentation, and sample configuration files can be found here: http://open-iscsi.org config ISCSI_BOOT_SYSFS tristate "iSCSI Boot Sysfs Interface" default n help This option enables support for exposing iSCSI boot information via sysfs to userspace. If you wish to export this information, say Y. Otherwise, say N. source "drivers/scsi/cxgbi/Kconfig" source "drivers/scsi/bnx2i/Kconfig" source "drivers/scsi/bnx2fc/Kconfig" source "drivers/scsi/be2iscsi/Kconfig" config SGIWD93_SCSI tristate "SGI WD93C93 SCSI Driver" depends on SGI_HAS_WD93 && SCSI help If you have a Western Digital WD93 SCSI controller on an SGI MIPS system, say Y. Otherwise, say N. config BLK_DEV_3W_XXXX_RAID tristate "3ware 5/6/7/8xxx ATA-RAID support" depends on PCI && SCSI help 3ware is the only hardware ATA-Raid product in Linux to date. This card is 2,4, or 8 channel master mode support only. SCSI support required!!! Please read the comments at the top of . config SCSI_HPSA tristate "HP Smart Array SCSI driver" depends on PCI && SCSI help This driver supports HP Smart Array Controllers (circa 2009). It is a SCSI alternative to the cciss driver, which is a block driver. Anyone wishing to use HP Smart Array controllers who would prefer the devices be presented to linux as SCSI devices, rather than as generic block devices should say Y here. config SCSI_3W_9XXX tristate "3ware 9xxx SATA-RAID support" depends on PCI && SCSI help This driver supports the 9000 series 3ware SATA-RAID cards. Please read the comments at the top of . config SCSI_3W_SAS tristate "3ware 97xx SAS/SATA-RAID support" depends on PCI && SCSI help This driver supports the LSI 3ware 9750 6Gb/s SAS/SATA-RAID cards. Please read the comments at the top of . config SCSI_7000FASST tristate "7000FASST SCSI support" depends on ISA && SCSI && ISA_DMA_API select CHECK_SIGNATURE help This driver supports the Western Digital 7000 SCSI host adapter family. Some information is in the source: . To compile this driver as a module, choose M here: the module will be called wd7000. config SCSI_ACARD tristate "ACARD SCSI support" depends on PCI && SCSI help This driver supports the ACARD SCSI host adapter. Support Chip To compile this driver as a module, choose M here: the module will be called atp870u. config SCSI_AHA152X tristate "Adaptec AHA152X/2825 support" depends on ISA && SCSI && !64BIT select SCSI_SPI_ATTRS select CHECK_SIGNATURE ---help--- This is a driver for the AHA-1510, AHA-1520, AHA-1522, and AHA-2825 SCSI host adapters. It also works for the AVA-1505, but the IRQ etc. must be manually specified in this case. It is explained in section 3.3 of the SCSI-HOWTO, available from . You might also want to read the file . To compile this driver as a module, choose M here: the module will be called aha152x. config SCSI_AHA1542 tristate "Adaptec AHA1542 support" depends on ISA && SCSI && ISA_DMA_API ---help--- This is support for a SCSI host adapter. It is explained in section 3.4 of the SCSI-HOWTO, available from . Note that Trantor was purchased by Adaptec, and some former Trantor products are being sold under the Adaptec name. If it doesn't work out of the box, you may have to change some settings in . To compile this driver as a module, choose M here: the module will be called aha1542. config SCSI_AHA1740 tristate "Adaptec AHA1740 support" depends on EISA && SCSI ---help--- This is support for a SCSI host adapter. It is explained in section 3.5 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . To compile this driver as a module, choose M here: the module will be called aha1740. config SCSI_AACRAID tristate "Adaptec AACRAID support" depends on SCSI && PCI help This driver supports a variety of Dell, HP, Adaptec, IBM and ICP storage products. For a list of supported products, refer to . To compile this driver as a module, choose M here: the module will be called aacraid. source "drivers/scsi/aic7xxx/Kconfig.aic7xxx" config SCSI_AIC7XXX_OLD tristate "Adaptec AIC7xxx support (old driver)" depends on (ISA || EISA || PCI ) && SCSI help WARNING This driver is an older aic7xxx driver and is no longer under active development. Adaptec, Inc. is writing a new driver to take the place of this one, and it is recommended that whenever possible, people should use the new Adaptec written driver instead of this one. This driver will eventually be phased out entirely. This is support for the various aic7xxx based Adaptec SCSI controllers. These include the 274x EISA cards; 284x VLB cards; 2902, 2910, 293x, 294x, 394x, 3985 and several other PCI and motherboard based SCSI controllers from Adaptec. It does not support the AAA-13x RAID controllers from Adaptec, nor will it likely ever support them. It does not support the 2920 cards from Adaptec that use the Future Domain SCSI controller chip. For those cards, you need the "Future Domain 16xx SCSI support" driver. In general, if the controller is based on an Adaptec SCSI controller chip from the aic777x series or the aic78xx series, this driver should work. The only exception is the 7810 which is specifically not supported (that's the RAID controller chip on the AAA-13x cards). Note that the AHA2920 SCSI host adapter is *not* supported by this driver; choose "Future Domain 16xx SCSI support" instead if you have one of those. Information on the configuration options for this controller can be found by checking the help file for each of the available configuration options. You should read at a minimum before contacting the maintainer with any questions. The SCSI-HOWTO, available from , can also be of great help. To compile this driver as a module, choose M here: the module will be called aic7xxx_old. source "drivers/scsi/aic7xxx/Kconfig.aic79xx" source "drivers/scsi/aic94xx/Kconfig" source "drivers/scsi/mvsas/Kconfig" config SCSI_DPT_I2O tristate "Adaptec I2O RAID support " depends on SCSI && PCI && VIRT_TO_BUS help This driver supports all of Adaptec's I2O based RAID controllers as well as the DPT SmartRaid V cards. This is an Adaptec maintained driver by Deanna Bonds. See . To compile this driver as a module, choose M here: the module will be called dpt_i2o. config SCSI_ADVANSYS tristate "AdvanSys SCSI support" depends on SCSI && VIRT_TO_BUS depends on ISA || EISA || PCI help This is a driver for all SCSI host adapters manufactured by AdvanSys. It is documented in the kernel source in . To compile this driver as a module, choose M here: the module will be called advansys. config SCSI_IN2000 tristate "Always IN2000 SCSI support" depends on ISA && SCSI help This is support for an ISA bus SCSI host adapter. You'll find more information in . If it doesn't work out of the box, you may have to change the jumpers for IRQ or address selection. To compile this driver as a module, choose M here: the module will be called in2000. config SCSI_ARCMSR tristate "ARECA (ARC11xx/12xx/13xx/16xx) SATA/SAS RAID Host Adapter" depends on PCI && SCSI help This driver supports all of ARECA's SATA/SAS RAID controller cards. This is an ARECA-maintained driver by Erich Chen. If you have any problems, please mail to: . Areca supports Linux RAID config tools. Please link To compile this driver as a module, choose M here: the module will be called arcmsr (modprobe arcmsr). config SCSI_ARCMSR_AER bool "Enable PCI Error Recovery Capability in Areca Driver(ARCMSR)" depends on SCSI_ARCMSR && PCIEAER default n help The advanced error reporting(AER) capability is "NOT" provided by ARC1200/1201/1202 SATA RAID controllers cards. If your card is one of ARC1200/1201/1202, please use the default setting, n. If your card is other models, you could pick it on condition that the kernel version is greater than 2.6.19. This function is maintained driver by Nick Cheng. If you have any problems or suggestion, you are welcome to contact with . To enable this function, choose Y here. source "drivers/scsi/megaraid/Kconfig.megaraid" source "drivers/scsi/mpt2sas/Kconfig" config SCSI_HPTIOP tristate "HighPoint RocketRAID 3xxx/4xxx Controller support" depends on SCSI && PCI help This option enables support for HighPoint RocketRAID 3xxx/4xxx controllers. To compile this driver as a module, choose M here; the module will be called hptiop. If unsure, say N. config SCSI_BUSLOGIC tristate "BusLogic SCSI support" depends on (PCI || ISA || MCA) && SCSI && ISA_DMA_API && VIRT_TO_BUS ---help--- This is support for BusLogic MultiMaster and FlashPoint SCSI Host Adapters. Consult the SCSI-HOWTO, available from , and the files and for more information. Note that support for FlashPoint is only available for 32-bit x86 configurations. To compile this driver as a module, choose M here: the module will be called BusLogic. config SCSI_FLASHPOINT bool "FlashPoint support" depends on SCSI_BUSLOGIC && PCI && X86_32 help This option allows you to add FlashPoint support to the BusLogic SCSI driver. The FlashPoint SCCB Manager code is substantial, so users of MultiMaster Host Adapters may not wish to include it. config VMWARE_PVSCSI tristate "VMware PVSCSI driver support" depends on PCI && SCSI && X86 help This driver supports VMware's para virtualized SCSI HBA. To compile this driver as a module, choose M here: the module will be called vmw_pvscsi. config LIBFC tristate "LibFC module" select SCSI_FC_ATTRS select CRC32 ---help--- Fibre Channel library module config LIBFCOE tristate "LibFCoE module" select LIBFC ---help--- Library for Fibre Channel over Ethernet module config FCOE tristate "FCoE module" depends on PCI select LIBFCOE ---help--- Fibre Channel over Ethernet module config FCOE_FNIC tristate "Cisco FNIC Driver" depends on PCI && X86 select LIBFCOE help This is support for the Cisco PCI-Express FCoE HBA. To compile this driver as a module, choose M here and read . The module will be called fnic. config SCSI_DMX3191D tristate "DMX3191D SCSI support" depends on PCI && SCSI select SCSI_SPI_ATTRS help This is support for Domex DMX3191D SCSI Host Adapters. To compile this driver as a module, choose M here: the module will be called dmx3191d. config SCSI_DTC3280 tristate "DTC3180/3280 SCSI support" depends on ISA && SCSI select SCSI_SPI_ATTRS select CHECK_SIGNATURE help This is support for DTC 3180/3280 SCSI Host Adapters. Please read the SCSI-HOWTO, available from , and the file . To compile this driver as a module, choose M here: the module will be called dtc. config SCSI_EATA tristate "EATA ISA/EISA/PCI (DPT and generic EATA/DMA-compliant boards) support" depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API ---help--- This driver supports all EATA/DMA-compliant SCSI host adapters. DPT ISA and all EISA I/O addresses are probed looking for the "EATA" signature. The addresses of all the PCI SCSI controllers reported by the PCI subsystem are probed as well. You want to read the start of and the SCSI-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called eata. config SCSI_EATA_TAGGED_QUEUE bool "enable tagged command queueing" depends on SCSI_EATA help This is a feature of SCSI-2 which improves performance: the host adapter can send several SCSI commands to a device's queue even if previous commands haven't finished yet. This is equivalent to the "eata=tc:y" boot option. config SCSI_EATA_LINKED_COMMANDS bool "enable elevator sorting" depends on SCSI_EATA help This option enables elevator sorting for all probed SCSI disks and CD-ROMs. It definitely reduces the average seek distance when doing random seeks, but this does not necessarily result in a noticeable performance improvement: your mileage may vary... This is equivalent to the "eata=lc:y" boot option. config SCSI_EATA_MAX_TAGS int "maximum number of queued commands" depends on SCSI_EATA default "16" help This specifies how many SCSI commands can be maximally queued for each probed SCSI device. You should reduce the default value of 16 only if you have disks with buggy or limited tagged command support. Minimum is 2 and maximum is 62. This value is also the window size used by the elevator sorting option above. The effective value used by the driver for each probed SCSI device is reported at boot time. This is equivalent to the "eata=mq:8" boot option. config SCSI_EATA_PIO tristate "EATA-PIO (old DPT PM2001, PM2012A) support" depends on (ISA || EISA || PCI) && SCSI && BROKEN ---help--- This driver supports all EATA-PIO protocol compliant SCSI Host Adapters like the DPT PM2001 and the PM2012A. EATA-DMA compliant host adapters could also use this driver but are discouraged from doing so, since this driver only supports hard disks and lacks numerous features. You might want to have a look at the SCSI-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called eata_pio. config SCSI_FUTURE_DOMAIN tristate "Future Domain 16xx SCSI/AHA-2920A support" depends on (ISA || PCI) && SCSI select CHECK_SIGNATURE ---help--- This is support for Future Domain's 16-bit SCSI host adapters (TMC-1660/1680, TMC-1650/1670, TMC-3260, TMC-1610M/MER/MEX) and other adapters based on the Future Domain chipsets (Quantum ISA-200S, ISA-250MG; Adaptec AHA-2920A; and at least one IBM board). It is explained in section 3.7 of the SCSI-HOWTO, available from . NOTE: Newer Adaptec AHA-2920C boards use the Adaptec AIC-7850 chip and should use the aic7xxx driver ("Adaptec AIC7xxx chipset SCSI controller support"). This Future Domain driver works with the older Adaptec AHA-2920A boards with a Future Domain chip on them. To compile this driver as a module, choose M here: the module will be called fdomain. config SCSI_FD_MCS tristate "Future Domain MCS-600/700 SCSI support" depends on MCA_LEGACY && SCSI ---help--- This is support for Future Domain MCS 600/700 MCA SCSI adapters. Some PS/2 computers are equipped with IBM Fast SCSI Adapter/A which is identical to the MCS 700 and hence also supported by this driver. This driver also supports the Reply SB16/SCSI card (the SCSI part). It supports multiple adapters in the same system. To compile this driver as a module, choose M here: the module will be called fd_mcs. config SCSI_GDTH tristate "Intel/ICP (former GDT SCSI Disk Array) RAID Controller support" depends on (ISA || EISA || PCI) && SCSI && ISA_DMA_API ---help--- Formerly called GDT SCSI Disk Array Controller Support. This is a driver for RAID/SCSI Disk Array Controllers (EISA/ISA/PCI) manufactured by Intel Corporation/ICP vortex GmbH. It is documented in the kernel source in and . To compile this driver as a module, choose M here: the module will be called gdth. config SCSI_GENERIC_NCR5380 tristate "Generic NCR5380/53c400 SCSI PIO support" depends on ISA && SCSI select SCSI_SPI_ATTRS ---help--- This is a driver for the old NCR 53c80 series of SCSI controllers on boards using PIO. Most boards such as the Trantor T130 fit this category, along with a large number of ISA 8bit controllers shipped for free with SCSI scanners. If you have a PAS16, T128 or DMX3191 you should select the specific driver for that card rather than generic 5380 support. It is explained in section 3.8 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . To compile this driver as a module, choose M here: the module will be called g_NCR5380. config SCSI_GENERIC_NCR5380_MMIO tristate "Generic NCR5380/53c400 SCSI MMIO support" depends on ISA && SCSI select SCSI_SPI_ATTRS ---help--- This is a driver for the old NCR 53c80 series of SCSI controllers on boards using memory mapped I/O. It is explained in section 3.8 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . To compile this driver as a module, choose M here: the module will be called g_NCR5380_mmio. config SCSI_GENERIC_NCR53C400 bool "Enable NCR53c400 extensions" depends on SCSI_GENERIC_NCR5380 help This enables certain optimizations for the NCR53c400 SCSI cards. You might as well try it out. Note that this driver will only probe for the Trantor T130B in its default configuration; you might have to pass a command line option to the kernel at boot time if it does not detect your card. See the file for details. config SCSI_IBMMCA tristate "IBMMCA SCSI support" depends on MCA && SCSI ---help--- This is support for the IBM SCSI adapter found in many of the PS/2 series computers. These machines have an MCA bus, so you need to answer Y to "MCA support" as well and read . If the adapter isn't found during boot (a common problem for models 56, 57, 76, and 77) you'll need to use the 'ibmmcascsi=' kernel option, where is the id of the SCSI subsystem (usually 7, but if that doesn't work check your reference diskette). Owners of model 95 with a LED-matrix-display can in addition activate some activity info like under OS/2, but more informative, by setting 'ibmmcascsi=display' as an additional kernel parameter. Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel. To compile this driver as a module, choose M here: the module will be called ibmmca. config IBMMCA_SCSI_ORDER_STANDARD bool "Standard SCSI-order" depends on SCSI_IBMMCA ---help--- In the PC-world and in most modern SCSI-BIOS-setups, SCSI-hard disks are assigned to the drive letters, starting with the lowest SCSI-id (physical number -- pun) to be drive C:, as seen from DOS and similar operating systems. When looking into papers describing the ANSI-SCSI-standard, this assignment of drives appears to be wrong. The SCSI-standard follows a hardware-hierarchy which says that id 7 has the highest priority and id 0 the lowest. Therefore, the host adapters are still today everywhere placed as SCSI-id 7 by default. In the SCSI-standard, the drive letters express the priority of the disk. C: should be the hard disk, or a partition on it, with the highest priority. This must therefore be the disk with the highest SCSI-id (e.g. 6) and not the one with the lowest! IBM-BIOS kept the original definition of the SCSI-standard as also industrial- and process-control-machines, like VME-CPUs running under realtime-OSes (e.g. LynxOS, OS9) do. If you like to run Linux on your MCA-machine with the same assignment of hard disks as seen from e.g. DOS or OS/2 on your machine, which is in addition conformant to the SCSI-standard, you must say Y here. This is also necessary for MCA-Linux users who want to keep downward compatibility to older releases of the IBM-MCA-SCSI-driver (older than driver-release 2.00 and older than June 1997). If you like to have the lowest SCSI-id assigned as drive C:, as modern SCSI-BIOSes do, which does not conform to the standard, but is widespread and common in the PC-world of today, you must say N here. If unsure, say Y. config IBMMCA_SCSI_DEV_RESET bool "Reset SCSI-devices at boottime" depends on SCSI_IBMMCA ---help--- By default, SCSI-devices are reset when the machine is powered on. However, some devices exist, like special-control-devices, SCSI-CNC-machines, SCSI-printer or scanners of older type, that do not reset when switched on. If you say Y here, each device connected to your SCSI-bus will be issued a reset-command after it has been probed, while the kernel is booting. This may cause problems with more modern devices, like hard disks, which do not appreciate these reset commands, and can cause your system to hang. So say Y only if you know that one of your older devices needs it; N is the safe answer. config SCSI_IPS tristate "IBM ServeRAID support" depends on PCI && SCSI ---help--- This is support for the IBM ServeRAID hardware RAID controllers. See and for more information. If this driver does not work correctly without modification please contact the author by email at . To compile this driver as a module, choose M here: the module will be called ips. config SCSI_IBMVSCSI tristate "IBM Virtual SCSI support" depends on PPC_PSERIES || PPC_ISERIES select SCSI_SRP_ATTRS select VIOPATH if PPC_ISERIES help This is the IBM POWER Virtual SCSI Client To compile this driver as a module, choose M here: the module will be called ibmvscsic. config SCSI_IBMVSCSIS tristate "IBM Virtual SCSI Server support" depends on PPC_PSERIES && SCSI_SRP && SCSI_SRP_TGT_ATTRS help This is the SRP target driver for IBM pSeries virtual environments. The userspace component needed to initialize the driver and documentation can be found: http://stgt.berlios.de/ To compile this driver as a module, choose M here: the module will be called ibmvstgt. config SCSI_IBMVFC tristate "IBM Virtual FC support" depends on PPC_PSERIES && SCSI select SCSI_FC_ATTRS help This is the IBM POWER Virtual FC Client To compile this driver as a module, choose M here: the module will be called ibmvfc. config SCSI_IBMVFC_TRACE bool "enable driver internal trace" depends on SCSI_IBMVFC default y help If you say Y here, the driver will trace all commands issued to the adapter. Performance impact is minimal. Trace can be dumped using /sys/class/scsi_host/hostXX/trace. config SCSI_INITIO tristate "Initio 9100U(W) support" depends on PCI && SCSI help This is support for the Initio 91XXU(W) SCSI host adapter. Please read the SCSI-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called initio. config SCSI_INIA100 tristate "Initio INI-A100U2W support" depends on PCI && SCSI help This is support for the Initio INI-A100U2W SCSI host adapter. Please read the SCSI-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called a100u2w. config SCSI_PPA tristate "IOMEGA parallel port (ppa - older drives)" depends on SCSI && PARPORT_PC ---help--- This driver supports older versions of IOMEGA's parallel port ZIP drive (a 100 MB removable media device). Note that you can say N here if you have the SCSI version of the ZIP drive: it will be supported automatically if you said Y to the generic "SCSI disk support", above. If you have the ZIP Plus drive or a more recent parallel port ZIP drive (if the supplied cable with the drive is labeled "AutoDetect") then you should say N here and Y to "IOMEGA parallel port (imm - newer drives)", below. For more information about this driver and how to use it you should read the file . You should also read the SCSI-HOWTO, which is available from . If you use this driver, you will still be able to use the parallel port for other tasks, such as a printer; it is safe to compile both drivers into the kernel. To compile this driver as a module, choose M here: the module will be called ppa. config SCSI_IMM tristate "IOMEGA parallel port (imm - newer drives)" depends on SCSI && PARPORT_PC ---help--- This driver supports newer versions of IOMEGA's parallel port ZIP drive (a 100 MB removable media device). Note that you can say N here if you have the SCSI version of the ZIP drive: it will be supported automatically if you said Y to the generic "SCSI disk support", above. If you have the ZIP Plus drive or a more recent parallel port ZIP drive (if the supplied cable with the drive is labeled "AutoDetect") then you should say Y here; if you have an older ZIP drive, say N here and Y to "IOMEGA Parallel Port (ppa - older drives)", above. For more information about this driver and how to use it you should read the file . You should also read the SCSI-HOWTO, which is available from . If you use this driver, you will still be able to use the parallel port for other tasks, such as a printer; it is safe to compile both drivers into the kernel. To compile this driver as a module, choose M here: the module will be called imm. config SCSI_IZIP_EPP16 bool "ppa/imm option - Use slow (but safe) EPP-16" depends on SCSI_PPA || SCSI_IMM ---help--- EPP (Enhanced Parallel Port) is a standard for parallel ports which allows them to act as expansion buses that can handle up to 64 peripheral devices. Some parallel port chipsets are slower than their motherboard, and so we have to control the state of the chipset's FIFO queue every now and then to avoid data loss. This will be done if you say Y here. Generally, saying Y is the safe option and slows things down a bit. config SCSI_IZIP_SLOW_CTR bool "ppa/imm option - Assume slow parport control register" depends on SCSI_PPA || SCSI_IMM help Some parallel ports are known to have excessive delays between changing the parallel port control register and good data being available on the parallel port data/status register. This option forces a small delay (1.0 usec to be exact) after changing the control register to let things settle out. Enabling this option may result in a big drop in performance but some very old parallel ports (found in 386 vintage machines) will not work properly. Generally, saying N is fine. config SCSI_NCR53C406A tristate "NCR53c406a SCSI support" depends on ISA && SCSI help This is support for the NCR53c406a SCSI host adapter. For user configurable parameters, check out in the kernel source. Also read the SCSI-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called NCR53c406. config SCSI_NCR_D700 tristate "NCR Dual 700 MCA SCSI support" depends on MCA && SCSI select SCSI_SPI_ATTRS help This is a driver for the MicroChannel Dual 700 card produced by NCR and commonly used in 345x/35xx/4100 class machines. It always tries to negotiate sync and uses tag command queueing. Unless you have an NCR manufactured machine, the chances are that you do not have this SCSI card, so say N. config SCSI_LASI700 tristate "HP Lasi SCSI support for 53c700/710" depends on GSC && SCSI select SCSI_SPI_ATTRS help This is a driver for the SCSI controller in the Lasi chip found in many PA-RISC workstations & servers. If you do not know whether you have a Lasi chip, it is safe to say "Y" here. config SCSI_SNI_53C710 tristate "SNI RM SCSI support for 53c710" depends on SNI_RM && SCSI select SCSI_SPI_ATTRS select 53C700_LE_ON_BE help This is a driver for the onboard SCSI controller found in older SNI RM workstations & servers. config 53C700_LE_ON_BE bool depends on SCSI_LASI700 default y config SCSI_STEX tristate "Promise SuperTrak EX Series support" depends on PCI && SCSI ---help--- This driver supports Promise SuperTrak EX series storage controllers. Promise provides Linux RAID configuration utility for these controllers. Please visit to download. To compile this driver as a module, choose M here: the module will be called stex. config 53C700_BE_BUS bool depends on SCSI_A4000T || SCSI_ZORRO7XX || MVME16x_SCSI || BVME6000_SCSI default y config SCSI_SYM53C8XX_2 tristate "SYM53C8XX Version 2 SCSI support" depends on PCI && SCSI select SCSI_SPI_ATTRS ---help--- This driver supports the whole NCR53C8XX/SYM53C8XX family of PCI-SCSI controllers. It also supports the subset of LSI53C10XX Ultra-160 controllers that are based on the SYM53C8XX SCRIPTS language. It does not support LSI53C10XX Ultra-320 PCI-X SCSI controllers; you need to use the Fusion MPT driver for that. Please read for more information. config SCSI_SYM53C8XX_DMA_ADDRESSING_MODE int "DMA addressing mode" depends on SCSI_SYM53C8XX_2 default "1" ---help--- This option only applies to PCI-SCSI chips that are PCI DAC capable (875A, 895A, 896, 1010-33, 1010-66, 1000). When set to 0, the driver will program the chip to only perform 32-bit DMA. When set to 1, the chip will be able to perform DMA to addresses up to 1TB. When set to 2, the driver supports the full 64-bit DMA address range, but can only address 16 segments of 4 GB each. This limits the total addressable range to 64 GB. Most machines with less than 4GB of memory should use a setting of 0 for best performance. If your machine has 4GB of memory or more, you should set this option to 1 (the default). The still experimental value 2 (64 bit DMA addressing with 16 x 4GB segments limitation) can be used on systems that require PCI address bits past bit 39 to be set for the addressing of memory using PCI DAC cycles. config SCSI_SYM53C8XX_DEFAULT_TAGS int "Default tagged command queue depth" depends on SCSI_SYM53C8XX_2 default "16" help This is the default value of the command queue depth the driver will announce to the generic SCSI layer for devices that support tagged command queueing. This value can be changed from the boot command line. This is a soft limit that cannot exceed CONFIG_SCSI_SYM53C8XX_MAX_TAGS. config SCSI_SYM53C8XX_MAX_TAGS int "Maximum number of queued commands" depends on SCSI_SYM53C8XX_2 default "64" help This option allows you to specify the maximum number of commands that can be queued to any device, when tagged command queuing is possible. The driver supports up to 256 queued commands per device. This value is used as a compiled-in hard limit. config SCSI_SYM53C8XX_MMIO bool "Use memory mapped IO" depends on SCSI_SYM53C8XX_2 default y help Memory mapped IO is faster than Port IO. Most people should answer Y here, but some machines may have problems. If you have to answer N here, please report the problem to the maintainer. config SCSI_IPR tristate "IBM Power Linux RAID adapter support" depends on PCI && SCSI && ATA select FW_LOADER ---help--- This driver supports the IBM Power Linux family RAID adapters. This includes IBM pSeries 5712, 5703, 5709, and 570A, as well as IBM iSeries 5702, 5703, 5709, and 570A. config SCSI_IPR_TRACE bool "enable driver internal trace" depends on SCSI_IPR default y help If you say Y here, the driver will trace all commands issued to the adapter. Performance impact is minimal. Trace can be dumped using /sys/bus/class/scsi_host/hostXX/trace. config SCSI_IPR_DUMP bool "enable adapter dump support" depends on SCSI_IPR default y help If you say Y here, the driver will support adapter crash dump. If you enable this support, the iprdump daemon can be used to capture adapter failure analysis information. config SCSI_ZALON tristate "Zalon SCSI support" depends on GSC && SCSI select SCSI_SPI_ATTRS help The Zalon is a GSC/HSC bus interface chip that sits between the PA-RISC processor and the NCR 53c720 SCSI controller on C100, C110, J200, J210 and some D, K & R-class machines. It's also used on the add-in Bluefish, Barracuda & Shrike SCSI cards. Say Y here if you have one of these machines or cards. config SCSI_NCR_Q720 tristate "NCR Quad 720 MCA SCSI support" depends on MCA && SCSI select SCSI_SPI_ATTRS help This is a driver for the MicroChannel Quad 720 card produced by NCR and commonly used in 345x/35xx/4100 class machines. It always tries to negotiate sync and uses tag command queueing. Unless you have an NCR manufactured machine, the chances are that you do not have this SCSI card, so say N. config SCSI_NCR53C8XX_DEFAULT_TAGS int "default tagged command queue depth" depends on SCSI_ZALON || SCSI_NCR_Q720 default "8" ---help--- "Tagged command queuing" is a feature of SCSI-2 which improves performance: the host adapter can send several SCSI commands to a device's queue even if previous commands haven't finished yet. Because the device is intelligent, it can optimize its operations (like head positioning) based on its own request queue. Some SCSI devices don't implement this properly; if you want to disable this feature, enter 0 or 1 here (it doesn't matter which). The default value is 8 and should be supported by most hard disks. This value can be overridden from the boot command line using the 'tags' option as follows (example): 'ncr53c8xx=tags:4/t2t3q16/t0u2q10' will set default queue depth to 4, set queue depth to 16 for target 2 and target 3 on controller 0 and set queue depth to 10 for target 0 / lun 2 on controller 1. The normal answer therefore is to go with the default 8 and to use a boot command line option for devices that need to use a different command queue depth. There is no safe option other than using good SCSI devices. config SCSI_NCR53C8XX_MAX_TAGS int "maximum number of queued commands" depends on SCSI_ZALON || SCSI_NCR_Q720 default "32" ---help--- This option allows you to specify the maximum number of commands that can be queued to any device, when tagged command queuing is possible. The default value is 32. Minimum is 2, maximum is 64. Modern hard disks are able to support 64 tags and even more, but do not seem to be faster when more than 32 tags are being used. So, the normal answer here is to go with the default value 32 unless you are using very large hard disks with large cache (>= 1 MB) that are able to take advantage of more than 32 tagged commands. There is no safe option and the default answer is recommended. config SCSI_NCR53C8XX_SYNC int "synchronous transfers frequency in MHz" depends on SCSI_ZALON || SCSI_NCR_Q720 default "20" ---help--- The SCSI Parallel Interface-2 Standard defines 5 classes of transfer rates: FAST-5, FAST-10, FAST-20, FAST-40 and FAST-80. The numbers are respectively the maximum data transfer rates in mega-transfers per second for each class. For example, a FAST-20 Wide 16 device is able to transfer data at 20 million 16 bit packets per second for a total rate of 40 MB/s. You may specify 0 if you want to only use asynchronous data transfers. This is the safest and slowest option. Otherwise, specify a value between 5 and 80, depending on the capability of your SCSI controller. The higher the number, the faster the data transfer. Note that 80 should normally be ok since the driver decreases the value automatically according to the controller's capabilities. Your answer to this question is ignored for controllers with NVRAM, since the driver will get this information from the user set-up. It also can be overridden using a boot setup option, as follows (example): 'ncr53c8xx=sync:12' will allow the driver to negotiate for FAST-20 synchronous data transfer (20 mega-transfers per second). The normal answer therefore is not to go with the default but to select the maximum value 80 allowing the driver to use the maximum value supported by each controller. If this causes problems with your SCSI devices, you should come back and decrease the value. There is no safe option other than using good cabling, right terminations and SCSI conformant devices. config SCSI_NCR53C8XX_NO_DISCONNECT bool "not allow targets to disconnect" depends on (SCSI_ZALON || SCSI_NCR_Q720) && SCSI_NCR53C8XX_DEFAULT_TAGS=0 help This option is only provided for safety if you suspect some SCSI device of yours to not support properly the target-disconnect feature. In that case, you would say Y here. In general however, to not allow targets to disconnect is not reasonable if there is more than 1 device on a SCSI bus. The normal answer therefore is N. config SCSI_PAS16 tristate "PAS16 SCSI support" depends on ISA && SCSI select SCSI_SPI_ATTRS ---help--- This is support for a SCSI host adapter. It is explained in section 3.10 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . To compile this driver as a module, choose M here: the module will be called pas16. config SCSI_QLOGIC_FAS tristate "Qlogic FAS SCSI support" depends on ISA && SCSI ---help--- This is a driver for the ISA, VLB, and PCMCIA versions of the Qlogic FastSCSI! cards as well as any other card based on the FASXX chip (including the Control Concepts SCSI/IDE/SIO/PIO/FDC cards). This driver does NOT support the PCI versions of these cards. The PCI versions are supported by the Qlogic ISP driver ("Qlogic ISP SCSI support"), below. Information about this driver is contained in . You should also read the SCSI-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called qlogicfas. config SCSI_QLOGIC_1280 tristate "Qlogic QLA 1240/1x80/1x160 SCSI support" depends on PCI && SCSI help Say Y if you have a QLogic ISP1240/1x80/1x160 SCSI host adapter. To compile this driver as a module, choose M here: the module will be called qla1280. config SCSI_QLOGICPTI tristate "PTI Qlogic, ISP Driver" depends on SBUS && SCSI help This driver supports SBUS SCSI controllers from PTI or QLogic. These controllers are known under Solaris as qpti and in the openprom as PTI,ptisp or QLGC,isp. Note that PCI QLogic SCSI controllers are driven by a different driver. To compile this driver as a module, choose M here: the module will be called qlogicpti. source "drivers/scsi/qla2xxx/Kconfig" source "drivers/scsi/qla4xxx/Kconfig" config SCSI_LPFC tristate "Emulex LightPulse Fibre Channel Support" depends on PCI && SCSI select SCSI_FC_ATTRS help This lpfc driver supports the Emulex LightPulse Family of Fibre Channel PCI host adapters. config SCSI_LPFC_DEBUG_FS bool "Emulex LightPulse Fibre Channel debugfs Support" depends on SCSI_LPFC && DEBUG_FS help This makes debugging information from the lpfc driver available via the debugfs filesystem. config SCSI_SIM710 tristate "Simple 53c710 SCSI support (Compaq, NCR machines)" depends on (EISA || MCA) && SCSI select SCSI_SPI_ATTRS ---help--- This driver is for NCR53c710 based SCSI host adapters. It currently supports Compaq EISA cards and NCR MCA cards config SCSI_SYM53C416 tristate "Symbios 53c416 SCSI support" depends on ISA && SCSI ---help--- This is support for the sym53c416 SCSI host adapter, the SCSI adapter that comes with some HP scanners. This driver requires that the sym53c416 is configured first using some sort of PnP configuration program (e.g. isapnp) or by a PnP aware BIOS. If you are using isapnp then you need to compile this driver as a module and then load it using insmod after isapnp has run. The parameters of the configured card(s) should be passed to the driver. The format is: insmod sym53c416 sym53c416=, [sym53c416_1=,] To compile this driver as a module, choose M here: the module will be called sym53c416. config SCSI_DC395x tristate "Tekram DC395(U/UW/F) and DC315(U) SCSI support (EXPERIMENTAL)" depends on PCI && SCSI && EXPERIMENTAL ---help--- This driver supports PCI SCSI host adapters based on the ASIC TRM-S1040 chip, e.g Tekram DC395(U/UW/F) and DC315(U) variants. This driver works, but is still in experimental status. So better have a bootable disk and a backup in case of emergency. Documentation can be found in . To compile this driver as a module, choose M here: the module will be called dc395x. config SCSI_DC390T tristate "Tekram DC390(T) and Am53/79C974 SCSI support" depends on PCI && SCSI ---help--- This driver supports PCI SCSI host adapters based on the Am53C974A chip, e.g. Tekram DC390(T), DawiControl 2974 and some onboard PCscsi/PCnet (Am53/79C974) solutions. Documentation can be found in . Note that this driver does NOT support Tekram DC390W/U/F, which are based on NCR/Symbios chips. Use "NCR53C8XX SCSI support" for those. To compile this driver as a module, choose M here: the module will be called tmscsim. config SCSI_T128 tristate "Trantor T128/T128F/T228 SCSI support" depends on ISA && SCSI select SCSI_SPI_ATTRS select CHECK_SIGNATURE ---help--- This is support for a SCSI host adapter. It is explained in section 3.11 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . Note that Trantor was purchased by Adaptec, and some former Trantor products are being sold under the Adaptec name. To compile this driver as a module, choose M here: the module will be called t128. config SCSI_U14_34F tristate "UltraStor 14F/34F support" depends on ISA && SCSI && ISA_DMA_API ---help--- This is support for the UltraStor 14F and 34F SCSI-2 host adapters. The source at contains some information about this hardware. If the driver doesn't work out of the box, you may have to change some settings in . Read the SCSI-HOWTO, available from . Note that there is also another driver for the same hardware: "UltraStor SCSI support", below. You should say Y to both only if you want 24F support as well. To compile this driver as a module, choose M here: the module will be called u14-34f. config SCSI_U14_34F_TAGGED_QUEUE bool "enable tagged command queueing" depends on SCSI_U14_34F help This is a feature of SCSI-2 which improves performance: the host adapter can send several SCSI commands to a device's queue even if previous commands haven't finished yet. This is equivalent to the "u14-34f=tc:y" boot option. config SCSI_U14_34F_LINKED_COMMANDS bool "enable elevator sorting" depends on SCSI_U14_34F help This option enables elevator sorting for all probed SCSI disks and CD-ROMs. It definitely reduces the average seek distance when doing random seeks, but this does not necessarily result in a noticeable performance improvement: your mileage may vary... This is equivalent to the "u14-34f=lc:y" boot option. config SCSI_U14_34F_MAX_TAGS int "maximum number of queued commands" depends on SCSI_U14_34F default "8" help This specifies how many SCSI commands can be maximally queued for each probed SCSI device. You should reduce the default value of 8 only if you have disks with buggy or limited tagged command support. Minimum is 2 and maximum is 14. This value is also the window size used by the elevator sorting option above. The effective value used by the driver for each probed SCSI device is reported at boot time. This is equivalent to the "u14-34f=mq:8" boot option. config SCSI_ULTRASTOR tristate "UltraStor SCSI support" depends on X86 && ISA && SCSI ---help--- This is support for the UltraStor 14F, 24F and 34F SCSI-2 host adapter family. This driver is explained in section 3.12 of the SCSI-HOWTO, available from . If it doesn't work out of the box, you may have to change some settings in . Note that there is also another driver for the same hardware: "UltraStor 14F/34F support", above. To compile this driver as a module, choose M here: the module will be called ultrastor. config SCSI_NSP32 tristate "Workbit NinjaSCSI-32Bi/UDE support" depends on PCI && SCSI && !64BIT help This is support for the Workbit NinjaSCSI-32Bi/UDE PCI/Cardbus SCSI host adapter. Please read the SCSI-HOWTO, available from . To compile this driver as a module, choose M here: the module will be called nsp32. config SCSI_DEBUG tristate "SCSI debugging host simulator" depends on SCSI select CRC_T10DIF help This is a host adapter simulator that can simulate multiple hosts each with multiple dummy SCSI devices (disks). It defaults to one host adapter with one dummy SCSI disk. Each dummy disk uses kernel RAM as storage (i.e. it is a ramdisk). To save space when multiple dummy disks are simulated, they share the same kernel RAM for their storage. See for more information. This driver is primarily of use to those testing the SCSI and block subsystems. If unsure, say N. config SCSI_MESH tristate "MESH (Power Mac internal SCSI) support" depends on PPC32 && PPC_PMAC && SCSI help Many Power Macintoshes and clones have a MESH (Macintosh Enhanced SCSI Hardware) SCSI bus adaptor (the 7200 doesn't, but all of the other Power Macintoshes do). Say Y to include support for this SCSI adaptor. To compile this driver as a module, choose M here: the module will be called mesh. config SCSI_MESH_SYNC_RATE int "maximum synchronous transfer rate (MB/s) (0 = async)" depends on SCSI_MESH default "5" help On Power Macintoshes (and clones) where the MESH SCSI bus adaptor drives a bus which is entirely internal to the machine (such as the 7500, 7600, 8500, etc.), the MESH is capable of synchronous operation at up to 10 MB/s. On machines where the SCSI bus controlled by the MESH can have external devices connected, it is usually rated at 5 MB/s. 5 is a safe value here unless you know the MESH SCSI bus is internal only; in that case you can say 10. Say 0 to disable synchronous operation. config SCSI_MESH_RESET_DELAY_MS int "initial bus reset delay (ms) (0 = no reset)" depends on SCSI_MESH default "4000" config SCSI_MAC53C94 tristate "53C94 (Power Mac external SCSI) support" depends on PPC32 && PPC_PMAC && SCSI help On Power Macintoshes (and clones) with two SCSI buses, the external SCSI bus is usually controlled by a 53C94 SCSI bus adaptor. Older machines which only have one SCSI bus, such as the 7200, also use the 53C94. Say Y to include support for the 53C94. To compile this driver as a module, choose M here: the module will be called mac53c94. source "drivers/scsi/arm/Kconfig" config JAZZ_ESP bool "MIPS JAZZ FAS216 SCSI support" depends on MACH_JAZZ && SCSI select SCSI_SPI_ATTRS help This is the driver for the onboard SCSI host adapter of MIPS Magnum 4000, Acer PICA, Olivetti M700-10 and a few other identical OEM systems. config A3000_SCSI tristate "A3000 WD33C93A support" depends on AMIGA && SCSI help If you have an Amiga 3000 and have SCSI devices connected to the built-in SCSI controller, say Y. Otherwise, say N. To compile this driver as a module, choose M here: the module will be called a3000. config A2091_SCSI tristate "A2091/A590 WD33C93A support" depends on ZORRO && SCSI help If you have a Commodore A2091 SCSI controller, say Y. Otherwise, say N. To compile this driver as a module, choose M here: the module will be called a2091. config GVP11_SCSI tristate "GVP Series II WD33C93A support" depends on ZORRO && SCSI ---help--- If you have a Great Valley Products Series II SCSI controller, answer Y. Also say Y if you have a later model of GVP SCSI controller (such as the GVP A4008 or a Combo board). Otherwise, answer N. This driver does NOT work for the T-Rex series of accelerators from TekMagic and GVP-M. To compile this driver as a module, choose M here: the module will be called gvp11. config SCSI_A4000T tristate "A4000T NCR53c710 SCSI support (EXPERIMENTAL)" depends on AMIGA && SCSI && EXPERIMENTAL select SCSI_SPI_ATTRS help If you have an Amiga 4000T and have SCSI devices connected to the built-in SCSI controller, say Y. Otherwise, say N. To compile this driver as a module, choose M here: the module will be called a4000t. config SCSI_ZORRO7XX tristate "Zorro NCR53c710 SCSI support (EXPERIMENTAL)" depends on ZORRO && SCSI && EXPERIMENTAL select SCSI_SPI_ATTRS help Support for various NCR53c710-based SCSI controllers on Zorro expansion boards for the Amiga. This includes: - the Amiga 4091 Zorro III SCSI-2 controller, - the MacroSystem Development's WarpEngine Amiga SCSI-2 controller (info at ), - the SCSI controller on the Phase5 Blizzard PowerUP 603e+ accelerator card for the Amiga 1200, - the SCSI controller on the GVP Turbo 040/060 accelerator. config ATARI_SCSI tristate "Atari native SCSI support" depends on ATARI && SCSI select SCSI_SPI_ATTRS select NVRAM ---help--- If you have an Atari with built-in NCR5380 SCSI controller (TT, Falcon, ...) say Y to get it supported. Of course also, if you have a compatible SCSI controller (e.g. for Medusa). To compile this driver as a module, choose M here: the module will be called atari_scsi. This driver supports both styles of NCR integration into the system: the TT style (separate DMA), and the Falcon style (via ST-DMA, replacing ACSI). It does NOT support other schemes, like in the Hades (without DMA). config ATARI_SCSI_TOSHIBA_DELAY bool "Long delays for Toshiba CD-ROMs" depends on ATARI_SCSI help This option increases the delay after a SCSI arbitration to accommodate some flaky Toshiba CD-ROM drives. Say Y if you intend to use a Toshiba CD-ROM drive; otherwise, the option is not needed and would impact performance a bit, so say N. config ATARI_SCSI_RESET_BOOT bool "Reset SCSI-devices at boottime" depends on ATARI_SCSI help Reset the devices on your Atari whenever it boots. This makes the boot process fractionally longer but may assist recovery from errors that leave the devices with SCSI operations partway completed. config MAC_SCSI bool "Macintosh NCR5380 SCSI" depends on MAC && SCSI=y select SCSI_SPI_ATTRS help This is the NCR 5380 SCSI controller included on most of the 68030 based Macintoshes. If you have one of these say Y and read the SCSI-HOWTO, available from . config SCSI_MAC_ESP tristate "Macintosh NCR53c9[46] SCSI" depends on MAC && SCSI select SCSI_SPI_ATTRS help This is the NCR 53c9x SCSI controller found on most of the 68040 based Macintoshes. To compile this driver as a module, choose M here: the module will be called mac_esp. config MVME147_SCSI bool "WD33C93 SCSI driver for MVME147" depends on MVME147 && SCSI=y select SCSI_SPI_ATTRS help Support for the on-board SCSI controller on the Motorola MVME147 single-board computer. config MVME16x_SCSI tristate "NCR53C710 SCSI driver for MVME16x" depends on MVME16x && SCSI select SCSI_SPI_ATTRS help The Motorola MVME162, 166, 167, 172 and 177 boards use the NCR53C710 SCSI controller chip. Almost everyone using one of these boards will want to say Y to this question. config BVME6000_SCSI tristate "NCR53C710 SCSI driver for BVME6000" depends on BVME6000 && SCSI select SCSI_SPI_ATTRS help The BVME4000 and BVME6000 boards from BVM Ltd use the NCR53C710 SCSI controller chip. Almost everyone using one of these boards will want to say Y to this question. config SUN3_SCSI tristate "Sun3 NCR5380 SCSI" depends on SUN3 && SCSI select SCSI_SPI_ATTRS help This option will enable support for the OBIO (onboard io) NCR5380 SCSI controller found in the Sun 3/50 and 3/60, as well as for "Sun3" type VME scsi controllers also based on the NCR5380. General Linux information on the Sun 3 series (now discontinued) is at . config SUN3X_ESP bool "Sun3x ESP SCSI" depends on SUN3X && SCSI=y select SCSI_SPI_ATTRS help The ESP was an on-board SCSI controller used on Sun 3/80 machines. Say Y here to compile in support for it. config SCSI_SUNESP tristate "Sparc ESP Scsi Driver" depends on SBUS && SCSI select SCSI_SPI_ATTRS help This is the driver for the Sun ESP SCSI host adapter. The ESP chipset is present in most SPARC SBUS-based computers and supports the Emulex family of ESP SCSI chips (esp100, esp100A, esp236, fas101, fas236) as well as the Qlogic fas366 SCSI chip. To compile this driver as a module, choose M here: the module will be called sun_esp. config ZFCP tristate "FCP host bus adapter driver for IBM eServer zSeries" depends on S390 && QDIO && SCSI select SCSI_FC_ATTRS help If you want to access SCSI devices attached to your IBM eServer zSeries by means of Fibre Channel interfaces say Y. For details please refer to the documentation provided by IBM at This driver is also available as a module. This module will be called zfcp. If you want to compile it as a module, say M here and read . config ZFCP_DIF tristate "T10 DIF/DIX support for the zfcp driver (EXPERIMENTAL)" depends on ZFCP && EXPERIMENTAL config SCSI_PMCRAID tristate "PMC SIERRA Linux MaxRAID adapter support" depends on PCI && SCSI && NET ---help--- This driver supports the PMC SIERRA MaxRAID adapters. config SCSI_PM8001 tristate "PMC-Sierra SPC 8001 SAS/SATA Based Host Adapter driver" depends on PCI && SCSI select SCSI_SAS_LIBSAS help This driver supports PMC-Sierra PCIE SAS/SATA 8x6G SPC 8001 chip based host adapters. config SCSI_SRP tristate "SCSI RDMA Protocol helper library" depends on SCSI && PCI select SCSI_TGT help If you wish to use SRP target drivers, say Y. To compile this driver as a module, choose M here: the module will be called libsrp. config SCSI_BFA_FC tristate "Brocade BFA Fibre Channel Support" depends on PCI && SCSI select SCSI_FC_ATTRS help This bfa driver supports all Brocade PCIe FC/FCOE host adapters. To compile this driver as a module, choose M here. The module will be called bfa. endif # SCSI_LOWLEVEL source "drivers/scsi/pcmcia/Kconfig" source "drivers/scsi/device_handler/Kconfig" source "drivers/scsi/osd/Kconfig" endmenu config SCSI_BNX2_ISCSI tristate "Broadcom NetXtreme II iSCSI support" depends on NET depends on PCI select SCSI_ISCSI_ATTRS select NETDEVICES select NETDEV_1000 select CNIC ---help--- This driver supports iSCSI offload for the Broadcom NetXtreme II devices. config BE2ISCSI tristate "ServerEngines' 10Gbps iSCSI - BladeEngine 2" depends on PCI && SCSI && NET select SCSI_ISCSI_ATTRS select ISCSI_BOOT_SYSFS help This driver implements the iSCSI functionality for ServerEngines' 10Gbps Storage adapter - BladeEngine 2. config SCSI_CXGB3_ISCSI tristate "Chelsio T3 iSCSI support" depends on PCI && INET select NETDEVICES select NETDEV_10000 select CHELSIO_T3 select SCSI_ISCSI_ATTRS ---help--- This driver supports iSCSI offload for the Chelsio T3 devices. source "drivers/scsi/cxgbi/cxgb3i/Kconfig" source "drivers/scsi/cxgbi/cxgb4i/Kconfig" config SCSI_CXGB4_ISCSI tristate "Chelsio T4 iSCSI support" depends on PCI && INET select NETDEVICES select NETDEV_10000 select CHELSIO_T4 select SCSI_ISCSI_ATTRS ---help--- This driver supports iSCSI offload for the Chelsio T4 devices. # # SCSI Device Handler configuration # menuconfig SCSI_DH tristate "SCSI Device Handlers" depends on SCSI default n help SCSI Device Handlers provide device specific support for devices utilized in multipath configurations. Say Y here to select support for specific hardware. config SCSI_DH_RDAC tristate "LSI RDAC Device Handler" depends on SCSI_DH help If you have a LSI RDAC select y. Otherwise, say N. config SCSI_DH_HP_SW tristate "HP/COMPAQ MSA Device Handler" depends on SCSI_DH help If you have a HP/COMPAQ MSA device that requires START_STOP to be sent to start it and cannot upgrade the firmware then select y. Otherwise, say N. config SCSI_DH_EMC tristate "EMC CLARiiON Device Handler" depends on SCSI_DH help If you have a EMC CLARiiON select y. Otherwise, say N. config SCSI_DH_ALUA tristate "SPC-3 ALUA Device Handler (EXPERIMENTAL)" depends on SCSI_DH && EXPERIMENTAL help SCSI Device handler for generic SPC-3 Asymmetric Logical Unit Access (ALUA). # # PCMCIA SCSI adapter configuration # menuconfig SCSI_LOWLEVEL_PCMCIA bool "PCMCIA SCSI adapter support" depends on SCSI!=n && PCMCIA!=n # drivers have problems when build in, so require modules if SCSI_LOWLEVEL_PCMCIA && SCSI && PCMCIA && m config PCMCIA_AHA152X tristate "Adaptec AHA152X PCMCIA support" select SCSI_SPI_ATTRS help Say Y here if you intend to attach this type of PCMCIA SCSI host adapter to your computer. To compile this driver as a module, choose M here: the module will be called aha152x_cs. config PCMCIA_FDOMAIN tristate "Future Domain PCMCIA support" help Say Y here if you intend to attach this type of PCMCIA SCSI host adapter to your computer. To compile this driver as a module, choose M here: the module will be called fdomain_cs. config PCMCIA_NINJA_SCSI tristate "NinjaSCSI-3 / NinjaSCSI-32Bi (16bit) PCMCIA support" depends on !64BIT help If you intend to attach this type of PCMCIA SCSI host adapter to your computer, say Y here and read . Supported cards: NinjaSCSI-3: (version string: "WBT","NinjaSCSI-3","R1.0") IO-DATA PCSC-FP ALPHA DATA AD-PCS201 CyQ've SFC-201 LOGITECH LPM-SCSI2E Pioneer PCR-PR24's card I-O DATA CDPS-PX24's card (PCSC-F) Panasonic KXL-RW10AN CD-RW's card etc. NinjaSCSI-32Bit (in 16bit mode): [Workbit (version string: "WORKBIT","UltraNinja-16","1")] Jazz SCP050 [I-O DATA (OEM) (version string: "IO DATA","CBSC16 ","1")] I-O DATA CBSC-II [Kyusyu Matsushita Kotobuki (OEM) (version string: "KME ","SCSI-CARD-001","1")] KME KXL-820AN's card HP M820e CDRW's card etc. To compile this driver as a module, choose M here: the module will be called nsp_cs. config PCMCIA_QLOGIC tristate "Qlogic PCMCIA support" help Say Y here if you intend to attach this type of PCMCIA SCSI host adapter to your computer. To compile this driver as a module, choose M here: the module will be called qlogic_cs. config PCMCIA_SYM53C500 tristate "Symbios 53c500 PCMCIA support" help Say Y here if you have a New Media Bus Toaster or other PCMCIA SCSI adapter based on the Symbios 53c500 controller. To compile this driver as a module, choose M here: the module will be called sym53c500_cs. endif # SCSI_LOWLEVEL_PCMCIA config SCSI_BNX2X_FCOE tristate "Broadcom NetXtreme II FCoE support" depends on PCI select NETDEVICES select NETDEV_1000 select LIBFC select LIBFCOE select CNIC ---help--- This driver supports FCoE offload for the Broadcom NetXtreme II devices. # # Kernel configuration file for aic94xx SAS/SATA driver. # # Copyright (c) 2005 Adaptec, Inc. All rights reserved. # Copyright (c) 2005 Luben Tuikov # # This file is licensed under GPLv2. # # This file is part of the aic94xx driver. # # The aic94xx driver is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; version 2 of the # License. # # The aic94xx driver is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with Aic94xx Driver; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # # config SCSI_AIC94XX tristate "Adaptec AIC94xx SAS/SATA support" depends on PCI select SCSI_SAS_LIBSAS select FW_LOADER help This driver supports Adaptec's SAS/SATA 3Gb/s 64 bit PCI-X AIC94xx chip based host adapters. config AIC94XX_DEBUG bool "Compile in debug mode" default y depends on SCSI_AIC94XX help Compiles the aic94xx driver in debug mode. In debug mode, the driver prints some messages to the console. # # Kernel configuration file for the SAS Class # # Copyright (C) 2005 Adaptec, Inc. All rights reserved. # Copyright (C) 2005 Luben Tuikov # # This file is licensed under GPLv2. # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License as # published by the Free Software Foundation; version 2 of the # License. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 # USA # config SCSI_SAS_LIBSAS tristate "SAS Domain Transport Attributes" depends on SCSI select SCSI_SAS_ATTRS help This provides transport specific helpers for SAS drivers which use the domain device construct (like the aic94xxx). config SCSI_SAS_ATA bool "ATA support for libsas (requires libata)" depends on SCSI_SAS_LIBSAS depends on ATA = y || ATA = SCSI_SAS_LIBSAS help Builds in ATA support into libsas. Will necessitate the loading of libata along with libsas. config SCSI_SAS_HOST_SMP bool "Support for SMP interpretation for SAS hosts" default y depends on SCSI_SAS_LIBSAS help Allows sas hosts to receive SMP frames. Selecting this option builds an SMP interpreter into libsas. Say N here if you want to save the few kb this consumes. # # Kernel configuration file for the OSD scsi protocol # # Copyright (C) 2008 Panasas Inc. All rights reserved. # # Authors: # Boaz Harrosh # Benny Halevy # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public version 2 License as # published by the Free Software Foundation # # FIXME: SCSI_OSD_INITIATOR should select CONFIG (HMAC) SHA1 somehow. # How is it done properly? # config SCSI_OSD_INITIATOR tristate "OSD-Initiator library" depends on SCSI help Enable the OSD-Initiator library (libosd.ko). NOTE: You must also select CRYPTO_SHA1 + CRYPTO_HMAC and their dependencies config SCSI_OSD_ULD tristate "OSD Upper Level driver" depends on SCSI_OSD_INITIATOR help Build a SCSI upper layer driver that exports /dev/osdX devices to user-mode for testing and controlling OSD devices. It is also needed by exofs, for mounting an OSD based file system. config SCSI_OSD_DPRINT_SENSE int "(0-2) When sense is returned, DEBUG print all sense descriptors" default 1 depends on SCSI_OSD_INITIATOR help When a CHECK_CONDITION status is returned from a target, and a sense-buffer is retrieved, turning this on will dump a full sense-decoding message. Setting to 2 will also print recoverable errors that might be regularly returned for some filesystem operations. config SCSI_OSD_DEBUG bool "Compile All OSD modules with lots of DEBUG prints" default n depends on SCSI_OSD_INITIATOR help OSD Code is populated with lots of OSD_DEBUG(..) printouts to dmesg. Enable this if you found a bug and you want to help us track the problem (see also MAINTAINERS). Setting this will also force SCSI_OSD_DPRINT_SENSE=2. # # SCSI driver configuration for Acorn # config SCSI_ACORNSCSI_3 tristate "Acorn SCSI card (aka30) support" depends on ARCH_ACORN && SCSI select SCSI_SPI_ATTRS help This enables support for the Acorn SCSI card (aka30). If you have an Acorn system with one of these, say Y. If unsure, say N. config SCSI_ACORNSCSI_TAGGED_QUEUE bool "Support SCSI 2 Tagged queueing" depends on SCSI_ACORNSCSI_3 help Say Y here to enable tagged queuing support on the Acorn SCSI card. This is a feature of SCSI-2 which improves performance: the host adapter can send several SCSI commands to a device's queue even if previous commands haven't finished yet. Some SCSI devices don't implement this properly, so the safe answer is N. config SCSI_ACORNSCSI_SYNC bool "Support SCSI 2 Synchronous Transfers" depends on SCSI_ACORNSCSI_3 help Say Y here to enable synchronous transfer negotiation with all targets on the Acorn SCSI card. In general, this improves performance; however some SCSI devices don't implement it properly, so the safe answer is N. config SCSI_ARXESCSI tristate "ARXE SCSI support" depends on ARCH_ACORN && SCSI help Around 1991, Arxe Systems Limited released a high density floppy disc interface for the Acorn Archimedes range, to allow the use of HD discs from the then new A5000 on earlier models. This interface was either sold on its own or with an integral SCSI controller. Technical details on this NCR53c94-based device are available at Say Y here to compile in support for the SCSI controller. config SCSI_CUMANA_2 tristate "CumanaSCSI II support" depends on ARCH_ACORN && SCSI help This enables support for the Cumana SCSI II card. If you have an Acorn system with one of these, say Y. If unsure, say N. config SCSI_EESOXSCSI tristate "EESOX support" depends on ARCH_ACORN && SCSI help This enables support for the EESOX SCSI card. If you have an Acorn system with one of these, say Y, otherwise say N. config SCSI_POWERTECSCSI tristate "PowerTec support" depends on ARCH_ACORN && SCSI help This enables support for the Powertec SCSI card on Acorn systems. If you have one of these, say Y. If unsure, say N. comment "The following drivers are not fully supported" depends on ARCH_ACORN && EXPERIMENTAL config SCSI_CUMANA_1 tristate "CumanaSCSI I support (EXPERIMENTAL)" depends on ARCH_ACORN && EXPERIMENTAL && SCSI select SCSI_SPI_ATTRS help This enables support for the Cumana SCSI I card. If you have an Acorn system with one of these, say Y. If unsure, say N. config SCSI_OAK1 tristate "Oak SCSI support (EXPERIMENTAL)" depends on ARCH_ACORN && EXPERIMENTAL && SCSI select SCSI_SPI_ATTRS help This enables support for the Oak SCSI card. If you have an Acorn system with one of these, say Y. If unsure, say N. config SCSI_QLA_ISCSI tristate "QLogic ISP4XXX and ISP82XX host adapter family support" depends on PCI && SCSI select SCSI_ISCSI_ATTRS ---help--- This driver supports the QLogic 40xx (ISP4XXX) and 8022 (ISP82XX) iSCSI host adapter family. config VGA_ARB bool "VGA Arbitration" if EXPERT default y depends on PCI help Some "legacy" VGA devices implemented on PCI typically have the same hard-decoded addresses as they did on ISA. When multiple PCI devices are accessed at same time they need some kind of coordination. Please see Documentation/vgaarbiter.txt for more details. Select this to enable VGA arbiter. config VGA_ARB_MAX_GPUS int "Maximum number of GPUs" default 16 depends on VGA_ARB help Reserves space in the kernel to maintain resource locking for multiple GPUS. The overhead for each GPU is very small. config VGA_SWITCHEROO bool "Laptop Hybrid Graphics - GPU switching support" depends on X86 depends on ACPI help Many laptops released in 2008/9/10 have two GPUs with a multiplexer to switch between them. This adds support for dynamic switching when X isn't running and delayed switching until the next logoff. This feature is called hybrid graphics, ATI PowerXpress, and Nvidia HybridPower. # # Drm device configuration # # This driver provides support for the # Direct Rendering Infrastructure (DRI) in XFree86 4.1.0 and higher. # menuconfig DRM tristate "Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)" depends on (AGP || AGP=n) && !EMULATED_CMPXCHG && MMU select I2C select I2C_ALGOBIT select SLOW_WORK help Kernel-level support for the Direct Rendering Infrastructure (DRI) introduced in XFree86 4.0. If you say Y here, you need to select the module that's right for your graphics card from the list below. These modules provide support for synchronization, security, and DMA transfers. Please see for more details. You should also select and configure AGP (/dev/agpgart) support if it is available for your platform. config DRM_KMS_HELPER tristate depends on DRM select FB select FRAMEBUFFER_CONSOLE if !EXPERT select FRAMEBUFFER_CONSOLE_DETECT_PRIMARY if FRAMEBUFFER_CONSOLE help FB and CRTC helpers for KMS drivers. config DRM_TTM tristate depends on DRM help GPU memory management subsystem for devices with multiple GPU memory types. Will be enabled automatically if a device driver uses it. config DRM_TDFX tristate "3dfx Banshee/Voodoo3+" depends on DRM && PCI help Choose this option if you have a 3dfx Banshee or Voodoo3 (or later), graphics card. If M is selected, the module will be called tdfx. config DRM_R128 tristate "ATI Rage 128" depends on DRM && PCI select FW_LOADER help Choose this option if you have an ATI Rage 128 graphics card. If M is selected, the module will be called r128. AGP support for this card is strongly suggested (unless you have a PCI version). config DRM_RADEON tristate "ATI Radeon" depends on DRM && PCI select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FW_LOADER select DRM_KMS_HELPER select DRM_TTM select POWER_SUPPLY select HWMON help Choose this option if you have an ATI Radeon graphics card. There are both PCI and AGP versions. You don't need to choose this to run the Radeon in plain VGA mode. If M is selected, the module will be called radeon. source "drivers/gpu/drm/radeon/Kconfig" config DRM_I810 tristate "Intel I810" # !PREEMPT because of missing ioctl locking depends on DRM && AGP && AGP_INTEL && (!PREEMPT || BROKEN) help Choose this option if you have an Intel I810 graphics card. If M is selected, the module will be called i810. AGP support is required for this driver to work. config DRM_I915 tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics" depends on DRM depends on AGP depends on AGP_INTEL # we need shmfs for the swappable backing store, and in particular # the shmem_readpage() which depends upon tmpfs select SHMEM select TMPFS select DRM_KMS_HELPER select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT # i915 depends on ACPI_VIDEO when ACPI is enabled # but for select to work, need to select ACPI_VIDEO's dependencies, ick select BACKLIGHT_CLASS_DEVICE if ACPI select VIDEO_OUTPUT_CONTROL if ACPI select INPUT if ACPI select ACPI_VIDEO if ACPI select ACPI_BUTTON if ACPI help Choose this option if you have a system that has "Intel Graphics Media Accelerator" or "HD Graphics" integrated graphics, including 830M, 845G, 852GM, 855GM, 865G, 915G, 945G, 965G, G35, G41, G43, G45 chipsets and Celeron, Pentium, Core i3, Core i5, Core i7 as well as Atom CPUs with integrated graphics. If M is selected, the module will be called i915. AGP support is required for this driver to work. This driver is used by the Intel driver in X.org 6.8 and XFree86 4.4 and above. It replaces the older i830 module that supported a subset of the hardware in older X.org releases. Note that the older i810/i815 chipsets require the use of the i810 driver instead, and the Atom z5xx series has an entirely different implementation. config DRM_I915_KMS bool "Enable modesetting on intel by default" depends on DRM_I915 help Choose this option if you want kernel modesetting enabled by default, and you have a new enough userspace to support this. Running old userspaces with this enabled will cause pain. Note that this causes the driver to bind to PCI devices, which precludes loading things like intelfb. config DRM_MGA tristate "Matrox g200/g400" depends on DRM && PCI select FW_LOADER help Choose this option if you have a Matrox G200, G400 or G450 graphics card. If M is selected, the module will be called mga. AGP support is required for this driver to work. config DRM_SIS tristate "SiS video cards" depends on DRM && AGP depends on FB_SIS || FB_SIS=n help Choose this option if you have a SiS 630 or compatible video chipset. If M is selected the module will be called sis. AGP support is required for this driver to work. config DRM_VIA tristate "Via unichrome video cards" depends on DRM && PCI help Choose this option if you have a Via unichrome or compatible video chipset. If M is selected the module will be called via. config DRM_SAVAGE tristate "Savage video cards" depends on DRM && PCI help Choose this option if you have a Savage3D/4/SuperSavage/Pro/Twister chipset. If M is selected the module will be called savage. config DRM_NOUVEAU tristate "Nouveau (nVidia) cards" depends on DRM && PCI select FW_LOADER select DRM_KMS_HELPER select DRM_TTM select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select FB select FRAMEBUFFER_CONSOLE if !EXPERT select FB_BACKLIGHT if DRM_NOUVEAU_BACKLIGHT select ACPI_VIDEO if ACPI && X86 && BACKLIGHT_CLASS_DEVICE && VIDEO_OUTPUT_CONTROL && INPUT help Choose this option for open-source nVidia support. config DRM_NOUVEAU_BACKLIGHT bool "Support for backlight control" depends on DRM_NOUVEAU default y help Say Y here if you want to control the backlight of your display (e.g. a laptop panel). config DRM_NOUVEAU_DEBUG bool "Build in Nouveau's debugfs support" depends on DRM_NOUVEAU && DEBUG_FS default y help Say Y here if you want Nouveau to output debugging information via debugfs. menu "I2C encoder or helper chips" depends on DRM && DRM_KMS_HELPER && I2C config DRM_I2C_CH7006 tristate "Chrontel ch7006 TV encoder" default m if DRM_NOUVEAU help Support for Chrontel ch7006 and similar TV encoders, found on some nVidia video cards. This driver is currently only useful if you're also using the nouveau driver. config DRM_I2C_SIL164 tristate "Silicon Image sil164 TMDS transmitter" default m if DRM_NOUVEAU help Support for sil164 and similar single-link (or dual-link when used in pairs) TMDS transmitters, used in some nVidia video cards. endmenu config DRM_VMWGFX tristate "DRM driver for VMware Virtual GPU" depends on DRM && PCI && FB select FB_DEFERRED_IO select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT select DRM_TTM help KMS enabled DRM driver for SVGA2 virtual hardware. If unsure say n. The compiled module will be called vmwgfx.ko config DRM_RADEON_KMS bool "Enable modesetting on radeon by default - NEW DRIVER" depends on DRM_RADEON select BACKLIGHT_CLASS_DEVICE help Choose this option if you want kernel modesetting enabled by default. This is a completely new driver. It's only part of the existing drm for compatibility reasons. It requires an entirely different graphics stack above it and works very differently from the old drm stack. i.e. don't enable this unless you know what you are doing it may cause issues or bugs compared to the previous userspace driver stack. When kernel modesetting is enabled the IOCTL of radeon/drm driver are considered as invalid and an error message is printed in the log and they return failure. KMS enabled userspace will use new API to talk with the radeon/drm driver. The new API provide functions to create/destroy/share/mmap buffer object which are then managed by the kernel memory manager (here TTM). In order to submit command to the GPU the userspace provide a buffer holding the command stream, along this buffer userspace have to provide a list of buffer object used by the command stream. The kernel radeon driver will then place buffer in GPU accessible memory and will update command stream to reflect the position of the different buffers. The kernel will also perform security check on command stream provided by the user, we want to catch and forbid any illegal use of the GPU such as DMA into random system memory or into memory not owned by the process supplying the command stream. This part of the code is still incomplete and this why we propose that patch as a staging driver addition, future security might forbid current experimental userspace to run. This code support the following hardware : R1XX,R2XX,R3XX,R4XX,R5XX (radeon up to X1950). Works is underway to provide support for R6XX, R7XX and newer hardware (radeon from HD2XXX to HD4XXX). config STUB_POULSBO tristate "Intel GMA500 Stub Driver" depends on PCI depends on NET # for THERMAL # Poulsbo stub depends on ACPI_VIDEO when ACPI is enabled # but for select to work, need to select ACPI_VIDEO's dependencies, ick select BACKLIGHT_CLASS_DEVICE if ACPI select VIDEO_OUTPUT_CONTROL if ACPI select INPUT if ACPI select ACPI_VIDEO if ACPI select THERMAL if ACPI help Choose this option if you have a system that has Intel GMA500 (Poulsbo) integrated graphics. If M is selected, the module will be called Poulsbo. This driver is a stub driver for Poulsbo that will call poulsbo.ko to enable the acpi backlight control sysfs entry file because there have no poulsbo native driver can support intel opregion. # # 1-wire slaves configuration # menu "1-wire Slaves" config W1_SLAVE_THERM tristate "Thermal family implementation" help Say Y here if you want to connect 1-wire thermal sensors to your wire. config W1_SLAVE_SMEM tristate "Simple 64bit memory family implementation" help Say Y here if you want to connect 1-wire simple 64bit memory rom(ds2401/ds2411/ds1990*) to your wire. config W1_SLAVE_DS2423 tristate "Counter 1-wire device (DS2423)" select CRC16 help If you enable this you can read the counter values available in the DS2423 chipset from the w1_slave file under the sys file system. Say Y here if you want to use a 1-wire counter family device (DS2423). config W1_SLAVE_DS2431 tristate "1kb EEPROM family support (DS2431)" help Say Y here if you want to use a 1-wire 1kb EEPROM family device (DS2431) config W1_SLAVE_DS2433 tristate "4kb EEPROM family support (DS2433)" help Say Y here if you want to use a 1-wire 4kb EEPROM family device (DS2433). config W1_SLAVE_DS2433_CRC bool "Protect DS2433 data with a CRC16" depends on W1_SLAVE_DS2433 select CRC16 help Say Y here to protect DS2433 data with a CRC16. Each block has 30 bytes of data and a two byte CRC16. Full block writes are only allowed if the CRC is valid. config W1_SLAVE_DS2760 tristate "Dallas 2760 battery monitor chip (HP iPAQ & others)" depends on W1 help If you enable this you will have the DS2760 battery monitor chip support. The battery monitor chip is used in many batteries/devices as the one who is responsible for charging/discharging/monitoring Li+ batteries. If you are unsure, say N. config W1_SLAVE_BQ27000 tristate "BQ27000 slave support" depends on W1 help Say Y here if you want to use a hdq bq27000 slave support. endmenu menuconfig W1 tristate "Dallas's 1-wire support" depends on HAS_IOMEM ---help--- Dallas' 1-wire bus is useful to connect slow 1-pin devices such as iButtons and thermal sensors. If you want W1 support, you should say Y here. This W1 support can also be built as a module. If so, the module will be called wire. if W1 config W1_CON depends on CONNECTOR bool "Userspace communication over connector" default y --- help --- This allows to communicate with userspace using connector. For more information see . There are three types of messages between w1 core and userspace: 1. Events. They are generated each time new master or slave device found either due to automatic or requested search. 2. Userspace commands. Includes read/write and search/alarm search commands. 3. Replies to userspace commands. source drivers/w1/masters/Kconfig source drivers/w1/slaves/Kconfig endif # W1 # # 1-wire bus master configuration # menu "1-wire Bus Masters" config W1_MASTER_MATROX tristate "Matrox G400 transport layer for 1-wire" depends on PCI help Say Y here if you want to communicate with your 1-wire devices using Matrox's G400 GPIO pins. This support is also available as a module. If so, the module will be called matrox_w1. config W1_MASTER_DS2490 tristate "DS2490 USB <-> W1 transport layer for 1-wire" depends on USB help Say Y here if you want to have a driver for DS2490 based USB <-> W1 bridges, for example DS9490*. This support is also available as a module. If so, the module will be called ds2490. config W1_MASTER_DS2482 tristate "Maxim DS2482 I2C to 1-Wire bridge" depends on I2C && EXPERIMENTAL help If you say yes here you get support for the Maxim DS2482 I2C to 1-Wire bridge. This driver can also be built as a module. If so, the module will be called ds2482. config W1_MASTER_MXC tristate "Freescale MXC 1-wire busmaster" depends on W1 && ARCH_MXC help Say Y here to enable MXC 1-wire host config W1_MASTER_DS1WM tristate "Maxim DS1WM 1-wire busmaster" depends on W1 && ARM && HAVE_CLK help Say Y here to enable the DS1WM 1-wire driver, such as that in HP iPAQ devices like h5xxx, h2200, and ASIC3-based like hx4700. config W1_MASTER_GPIO tristate "GPIO 1-wire busmaster" depends on GENERIC_GPIO help Say Y here if you want to communicate with your 1-wire devices using GPIO pins. This driver uses the GPIO API to control the wire. This support is also available as a module. If so, the module will be called w1-gpio. config HDQ_MASTER_OMAP tristate "OMAP HDQ driver" depends on SOC_OMAP2430 || ARCH_OMAP3 help Say Y here if you want support for the 1-wire or HDQ Interface on an OMAP processor. endmenu config CPU_FREQ bool "CPU Frequency scaling" help CPU Frequency scaling allows you to change the clock speed of CPUs on the fly. This is a nice method to save power, because the lower the CPU clock speed, the less power the CPU consumes. Note that this driver doesn't automatically change the CPU clock speed, you need to either enable a dynamic cpufreq governor (see below) after boot, or use a userspace tool. For details, take a look at . If in doubt, say N. if CPU_FREQ config CPU_FREQ_TABLE tristate config CPU_FREQ_DEBUG bool "Enable CPUfreq debugging" help Say Y here to enable CPUfreq subsystem (including drivers) debugging. You will need to activate it via the kernel command line by passing cpufreq.debug= To get , add 1 to activate CPUfreq core debugging, 2 to activate CPUfreq drivers debugging, and 4 to activate CPUfreq governor debugging config CPU_FREQ_STAT tristate "CPU frequency translation statistics" select CPU_FREQ_TABLE default y help This driver exports CPU frequency statistics information through sysfs file system. To compile this driver as a module, choose M here: the module will be called cpufreq_stats. If in doubt, say N. config CPU_FREQ_STAT_DETAILS bool "CPU frequency translation statistics details" depends on CPU_FREQ_STAT help This will show detail CPU frequency translation table in sysfs file system. If in doubt, say N. choice prompt "Default CPUFreq governor" default CPU_FREQ_DEFAULT_GOV_USERSPACE if CPU_FREQ_SA1100 || CPU_FREQ_SA1110 default CPU_FREQ_DEFAULT_GOV_PERFORMANCE help This option sets which CPUFreq governor shall be loaded at startup. If in doubt, select 'performance'. config CPU_FREQ_DEFAULT_GOV_PERFORMANCE bool "performance" select CPU_FREQ_GOV_PERFORMANCE help Use the CPUFreq governor 'performance' as default. This sets the frequency statically to the highest frequency supported by the CPU. config CPU_FREQ_DEFAULT_GOV_POWERSAVE bool "powersave" depends on EXPERT select CPU_FREQ_GOV_POWERSAVE help Use the CPUFreq governor 'powersave' as default. This sets the frequency statically to the lowest frequency supported by the CPU. config CPU_FREQ_DEFAULT_GOV_USERSPACE bool "userspace" select CPU_FREQ_GOV_USERSPACE help Use the CPUFreq governor 'userspace' as default. This allows you to set the CPU frequency manually or when a userspace program shall be able to set the CPU dynamically without having to enable the userspace governor manually. config CPU_FREQ_DEFAULT_GOV_ONDEMAND bool "ondemand" select CPU_FREQ_GOV_ONDEMAND select CPU_FREQ_GOV_PERFORMANCE help Use the CPUFreq governor 'ondemand' as default. This allows you to get a full dynamic frequency capable system by simply loading your cpufreq low-level hardware driver. Be aware that not all cpufreq drivers support the ondemand governor. If unsure have a look at the help section of the driver. Fallback governor will be the performance governor. config CPU_FREQ_DEFAULT_GOV_CONSERVATIVE bool "conservative" select CPU_FREQ_GOV_CONSERVATIVE select CPU_FREQ_GOV_PERFORMANCE help Use the CPUFreq governor 'conservative' as default. This allows you to get a full dynamic frequency capable system by simply loading your cpufreq low-level hardware driver. Be aware that not all cpufreq drivers support the conservative governor. If unsure have a look at the help section of the driver. Fallback governor will be the performance governor. endchoice config CPU_FREQ_GOV_PERFORMANCE tristate "'performance' governor" help This cpufreq governor sets the frequency statically to the highest available CPU frequency. To compile this driver as a module, choose M here: the module will be called cpufreq_performance. If in doubt, say Y. config CPU_FREQ_GOV_POWERSAVE tristate "'powersave' governor" help This cpufreq governor sets the frequency statically to the lowest available CPU frequency. To compile this driver as a module, choose M here: the module will be called cpufreq_powersave. If in doubt, say Y. config CPU_FREQ_GOV_USERSPACE tristate "'userspace' governor for userspace frequency scaling" help Enable this cpufreq governor when you either want to set the CPU frequency manually or when a userspace program shall be able to set the CPU dynamically, like on LART . To compile this driver as a module, choose M here: the module will be called cpufreq_userspace. For details, take a look at . If in doubt, say Y. config CPU_FREQ_GOV_ONDEMAND tristate "'ondemand' cpufreq policy governor" select CPU_FREQ_TABLE help 'ondemand' - This driver adds a dynamic cpufreq policy governor. The governor does a periodic polling and changes frequency based on the CPU utilization. The support for this governor depends on CPU capability to do fast frequency switching (i.e, very low latency frequency transitions). To compile this driver as a module, choose M here: the module will be called cpufreq_ondemand. For details, take a look at linux/Documentation/cpu-freq. If in doubt, say N. config CPU_FREQ_GOV_CONSERVATIVE tristate "'conservative' cpufreq governor" depends on CPU_FREQ help 'conservative' - this driver is rather similar to the 'ondemand' governor both in its source code and its purpose, the difference is its optimisation for better suitability in a battery powered environment. The frequency is gracefully increased and decreased rather than jumping to 100% when speed is required. If you have a desktop machine then you should really be considering the 'ondemand' governor instead, however if you are using a laptop, PDA or even an AMD64 based computer (due to the unacceptable step-by-step latency issues between the minimum and maximum frequency transitions in the CPU) you will probably want to use this governor. To compile this driver as a module, choose M here: the module will be called cpufreq_conservative. For details, take a look at linux/Documentation/cpu-freq. If in doubt, say N. endif # CPU_FREQ # # For a description of the syntax of this configuration file, # see Documentation/kbuild/kconfig-language.txt. # # Parport configuration. # menuconfig PARPORT tristate "Parallel port support" depends on HAS_IOMEM ---help--- If you want to use devices connected to your machine's parallel port (the connector at the computer with 25 holes), e.g. printer, ZIP drive, PLIP link (Parallel Line Internet Protocol is mainly used to create a mini network by connecting the parallel ports of two local machines) etc., then you need to say Y here; please read and . For extensive information about drivers for many devices attaching to the parallel port see on the WWW. It is possible to share a single parallel port among several devices and it is safe to compile all the corresponding drivers into the kernel. To compile parallel port support as a module, choose M here: the module will be called parport. If you have more than one parallel port and want to specify which port and IRQ to be used by this driver at module load time, take a look at . If unsure, say Y. if PARPORT config PARPORT_PC tristate "PC-style hardware" depends on (!SPARC64 || PCI) && !SPARC32 && !M32R && !FRV && \ (!M68K || ISA) && !MN10300 && !AVR32 && !BLACKFIN ---help--- You should say Y here if you have a PC-style parallel port. All IBM PC compatible computers and some Alphas have PC-style parallel ports. PA-RISC owners should only say Y here if they have a SuperIO parallel port. To compile this driver as a module, choose M here: the module will be called parport_pc. If unsure, say Y. config PARPORT_SERIAL tristate "Multi-IO cards (parallel and serial)" depends on SERIAL_8250_PCI && PARPORT_PC && PCI help This adds support for multi-IO PCI cards that have parallel and serial ports. You should say Y or M here. If you say M, the module will be called parport_serial. config PARPORT_PC_FIFO bool "Use FIFO/DMA if available (EXPERIMENTAL)" depends on PARPORT_PC && EXPERIMENTAL help Many parallel port chipsets provide hardware that can speed up printing. Say Y here if you want to take advantage of that. As well as actually having a FIFO, or DMA capability, the kernel will need to know which IRQ the parallel port has. By default, parallel port interrupts will not be used, and so neither will the FIFO. See to find out how to specify which IRQ/DMA to use. config PARPORT_PC_SUPERIO bool "SuperIO chipset support (EXPERIMENTAL)" depends on PARPORT_PC && EXPERIMENTAL help Saying Y here enables some probes for Super-IO chipsets in order to find out things like base addresses, IRQ lines and DMA channels. It is safe to say N. config PARPORT_PC_PCMCIA tristate "Support for PCMCIA management for PC-style ports" depends on PCMCIA && PARPORT_PC help Say Y here if you need PCMCIA support for your PC-style parallel ports. If unsure, say N. config PARPORT_IP32 tristate "SGI IP32 builtin port (EXPERIMENTAL)" depends on SGI_IP32 && EXPERIMENTAL select PARPORT_NOT_PC help Say Y here if you need support for the parallel port on SGI O2 machines. This code is also available as a module (say M), called parport_ip32. If in doubt, saying N is the safe plan. config PARPORT_AMIGA tristate "Amiga builtin port" depends on AMIGA select PARPORT_NOT_PC help Say Y here if you need support for the parallel port hardware on Amiga machines. This code is also available as a module (say M), called parport_amiga. If in doubt, saying N is the safe plan. config PARPORT_MFC3 tristate "Multiface III parallel port" depends on ZORRO select PARPORT_NOT_PC help Say Y here if you need parallel port support for the MFC3 card. This code is also available as a module (say M), called parport_mfc3. If in doubt, saying N is the safe plan. config PARPORT_ATARI tristate "Atari hardware" depends on ATARI select PARPORT_NOT_PC help Say Y here if you need support for the parallel port hardware on Atari machines. This code is also available as a module (say M), called parport_atari. If in doubt, saying N is the safe plan. config PARPORT_GSC tristate default GSC select PARPORT_NOT_PC config PARPORT_SUNBPP tristate "Sparc hardware (EXPERIMENTAL)" depends on SBUS && EXPERIMENTAL select PARPORT_NOT_PC help This driver provides support for the bidirectional parallel port found on many Sun machines. Note that many of the newer Ultras actually have pc style hardware instead. config PARPORT_AX88796 tristate "AX88796 Parallel Port" select PARPORT_NOT_PC help Say Y here if you need support for the parallel port hardware on the AX88796 network controller chip. This code is also available as a module (say M), called parport_ax88796. The driver is not dependent on the AX88796 network driver, and should not interfere with the networking functions of the chip. config PARPORT_1284 bool "IEEE 1284 transfer modes" help If you have a printer that supports status readback or device ID, or want to use a device that uses enhanced parallel port transfer modes such as EPP and ECP, say Y here to enable advanced IEEE 1284 transfer modes. Also say Y if you want device ID information to appear in /proc/sys/dev/parport/*/autoprobe*. It is safe to say N. config PARPORT_NOT_PC bool endif # PARPORT # # MemoryStick subsystem configuration # menuconfig MEMSTICK tristate "Sony MemoryStick card support (EXPERIMENTAL)" help Sony MemoryStick is a proprietary storage/extension card protocol. If you want MemoryStick support, you should say Y here and also to the specific driver for your MemoryStick interface. if MEMSTICK config MEMSTICK_DEBUG bool "MemoryStick debugging" help This is an option for use by developers; most people should say N here. This enables MemoryStick core and driver debugging. source "drivers/memstick/core/Kconfig" source "drivers/memstick/host/Kconfig" endif # MEMSTICK # # MemoryStick host controller drivers # comment "MemoryStick Host Controller Drivers" config MEMSTICK_TIFM_MS tristate "TI Flash Media MemoryStick Interface support (EXPERIMENTAL)" depends on EXPERIMENTAL && PCI select TIFM_CORE help Say Y here if you want to be able to access MemoryStick cards with the Texas Instruments(R) Flash Media card reader, found in many laptops. This option 'selects' (turns on, enables) 'TIFM_CORE', but you probably also need appropriate card reader host adapter, such as 'Misc devices: TI Flash Media PCI74xx/PCI76xx host adapter support (TIFM_7XX1)'. To compile this driver as a module, choose M here: the module will be called tifm_ms. config MEMSTICK_JMICRON_38X tristate "JMicron JMB38X MemoryStick interface support (EXPERIMENTAL)" depends on EXPERIMENTAL && PCI help Say Y here if you want to be able to access MemoryStick cards with the JMicron(R) JMB38X MemoryStick card reader. To compile this driver as a module, choose M here: the module will be called jmb38x_ms. config MEMSTICK_R592 tristate "Ricoh R5C592 MemoryStick interface support (EXPERIMENTAL)" depends on EXPERIMENTAL && PCI help Say Y here if you want to be able to access MemoryStick cards with the Ricoh R5C592 MemoryStick card reader (which is part of 5 in one multifunction reader) To compile this driver as a module, choose M here: the module will be called r592. # # MemoryStick core configuration # comment "MemoryStick drivers" config MEMSTICK_UNSAFE_RESUME bool "Allow unsafe resume (DANGEROUS)" help If you say Y here, the MemoryStick layer will assume that all cards stayed in their respective slots during the suspend. The normal behaviour is to remove them at suspend and redetecting them at resume. Breaking this assumption will in most cases result in data corruption. This option is usually just for embedded systems which use a MemoryStick card for rootfs. Most people should say N here. config MSPRO_BLOCK tristate "MemoryStick Pro block device driver" depends on BLOCK help Say Y here to enable the MemoryStick Pro block device driver support. This provides a block device driver, which you can use to mount the filesystem. Almost everyone wishing MemoryStick support should say Y or M here. # # Hardware Random Number Generator (RNG) configuration # config HW_RANDOM tristate "Hardware Random Number Generator Core support" default m ---help--- Hardware Random Number Generator Core infrastructure. To compile this driver as a module, choose M here: the module will be called rng-core. This provides a device that's usually called /dev/hw_random, and which exposes one of possibly several hardware random number generators. These hardware random number generators do not feed directly into the kernel's random number generator. That is usually handled by the "rngd" daemon. Documentation/hw_random.txt has more information. If unsure, say Y. config HW_RANDOM_TIMERIOMEM tristate "Timer IOMEM HW Random Number Generator support" depends on HW_RANDOM && HAS_IOMEM ---help--- This driver provides kernel-side support for a generic Random Number Generator used by reading a 'dumb' iomem address that is to be read no faster than, for example, once a second; the default FPGA bitstream on the TS-7800 has such functionality. To compile this driver as a module, choose M here: the module will be called timeriomem-rng. If unsure, say Y. config HW_RANDOM_INTEL tristate "Intel HW Random Number Generator support" depends on HW_RANDOM && (X86 || IA64) && PCI default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on Intel i8xx-based motherboards. To compile this driver as a module, choose M here: the module will be called intel-rng. If unsure, say Y. config HW_RANDOM_AMD tristate "AMD HW Random Number Generator support" depends on HW_RANDOM && X86 && PCI default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on AMD 76x-based motherboards. To compile this driver as a module, choose M here: the module will be called amd-rng. If unsure, say Y. config HW_RANDOM_GEODE tristate "AMD Geode HW Random Number Generator support" depends on HW_RANDOM && X86_32 && PCI default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on the AMD Geode LX. To compile this driver as a module, choose M here: the module will be called geode-rng. If unsure, say Y. config HW_RANDOM_N2RNG tristate "Niagara2 Random Number Generator support" depends on HW_RANDOM && SPARC64 default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on Niagara2 cpus. To compile this driver as a module, choose M here: the module will be called n2-rng. If unsure, say Y. config HW_RANDOM_VIA tristate "VIA HW Random Number Generator support" depends on HW_RANDOM && X86 default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on VIA based motherboards. To compile this driver as a module, choose M here: the module will be called via-rng. If unsure, say Y. config HW_RANDOM_IXP4XX tristate "Intel IXP4xx NPU HW Random Number Generator support" depends on HW_RANDOM && ARCH_IXP4XX default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on the Intel IXP4xx NPU. To compile this driver as a module, choose M here: the module will be called ixp4xx-rng. If unsure, say Y. config HW_RANDOM_OMAP tristate "OMAP Random Number Generator support" depends on HW_RANDOM && (ARCH_OMAP16XX || ARCH_OMAP2) default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on OMAP16xx and OMAP24xx multimedia processors. To compile this driver as a module, choose M here: the module will be called omap-rng. If unsure, say Y. config HW_RANDOM_OCTEON tristate "Octeon Random Number Generator support" depends on HW_RANDOM && CPU_CAVIUM_OCTEON default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on Octeon processors. To compile this driver as a module, choose M here: the module will be called octeon-rng. If unsure, say Y. config HW_RANDOM_PASEMI tristate "PA Semi HW Random Number Generator support" depends on HW_RANDOM && PPC_PASEMI default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on PA Semi PWRficient SoCs. To compile this driver as a module, choose M here: the module will be called pasemi-rng. If unsure, say Y. config HW_RANDOM_VIRTIO tristate "VirtIO Random Number Generator support" depends on HW_RANDOM && VIRTIO ---help--- This driver provides kernel-side support for the virtual Random Number Generator hardware. To compile this driver as a module, choose M here: the module will be called virtio-rng. If unsure, say N. config HW_RANDOM_TX4939 tristate "TX4939 Random Number Generator support" depends on HW_RANDOM && SOC_TX4939 default HW_RANDOM ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on TX4939 SoC. To compile this driver as a module, choose M here: the module will be called tx4939-rng. If unsure, say Y. config HW_RANDOM_MXC_RNGA tristate "Freescale i.MX RNGA Random Number Generator" depends on HW_RANDOM && ARCH_HAS_RNGA ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on Freescale i.MX processors. To compile this driver as a module, choose M here: the module will be called mxc-rnga. If unsure, say Y. config HW_RANDOM_NOMADIK tristate "ST-Ericsson Nomadik Random Number Generator support" depends on HW_RANDOM && PLAT_NOMADIK ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on ST-Ericsson SoCs (8815 and 8500). To compile this driver as a module, choose M here: the module will be called nomadik-rng. If unsure, say Y. config HW_RANDOM_PICOXCELL tristate "Picochip picoXcell true random number generator support" depends on HW_RANDOM && ARCH_PICOXCELL && PICOXCELL_PC3X3 ---help--- This driver provides kernel-side support for the Random Number Generator hardware found on Picochip PC3x3 and later devices. To compile this driver as a module, choose M here: the module will be called picoxcell-rng. If unsure, say Y. # # Character device configuration # menu "Character devices" source "drivers/tty/Kconfig" config DEVKMEM bool "/dev/kmem virtual device support" default y help Say Y here if you want to support the /dev/kmem device. The /dev/kmem device is rarely used, but can be used for certain kind of kernel debugging operations. When in doubt, say "N". config STALDRV bool "Stallion multiport serial support" depends on SERIAL_NONSTANDARD help Stallion cards give you many serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. If you say Y here, you will be asked for your specific card model in the next questions. Make sure to read in this case. If you have never heard about all this, it's safe to say N. config SGI_SNSC bool "SGI Altix system controller communication support" depends on (IA64_SGI_SN2 || IA64_GENERIC) help If you have an SGI Altix and you want to enable system controller communication from user space (you want this!), say Y. Otherwise, say N. config SGI_TIOCX bool "SGI TIO CX driver support" depends on (IA64_SGI_SN2 || IA64_GENERIC) help If you have an SGI Altix and you have fpga devices attached to your TIO, say Y here, otherwise say N. config SGI_MBCS tristate "SGI FPGA Core Services driver support" depends on SGI_TIOCX help If you have an SGI Altix with an attached SABrick say Y or M here, otherwise say N. source "drivers/tty/serial/Kconfig" config TTY_PRINTK bool "TTY driver to output user messages via printk" depends on EXPERT default n ---help--- If you say Y here, the support for writing user messages (i.e. console messages) via printk is available. The feature is useful to inline user messages with kernel messages. In order to use this feature, you should output user messages to /dev/ttyprintk or redirect console to this TTY. If unsure, say N. config BRIQ_PANEL tristate 'Total Impact briQ front panel driver' depends on PPC_CHRP ---help--- The briQ is a small footprint CHRP computer with a frontpanel VFD, a tristate led and two switches. It is the size of a CDROM drive. If you have such one and want anything showing on the VFD then you must answer Y here. To compile this driver as a module, choose M here: the module will be called briq_panel. It's safe to say N here. config BFIN_OTP tristate "Blackfin On-Chip OTP Memory Support" depends on BLACKFIN && (BF51x || BF52x || BF54x) default y help If you say Y here, you will get support for a character device interface into the One Time Programmable memory pages that are stored on the Blackfin processor. This will not get you access to the secure memory pages however. You will need to write your own secure code and reader for that. To compile this driver as a module, choose M here: the module will be called bfin-otp. If unsure, it is safe to say Y. config BFIN_OTP_WRITE_ENABLE bool "Enable writing support of OTP pages" depends on BFIN_OTP default n help If you say Y here, you will enable support for writing of the OTP pages. This is dangerous by nature as you can only program the pages once, so only enable this option when you actually need it so as to not inadvertently clobber data. If unsure, say N. config PRINTER tristate "Parallel printer support" depends on PARPORT ---help--- If you intend to attach a printer to the parallel port of your Linux box (as opposed to using a serial printer; if the connector at the printer has 9 or 25 holes ["female"], then it's serial), say Y. Also read the Printing-HOWTO, available from . It is possible to share one parallel port among several devices (e.g. printer and ZIP drive) and it is safe to compile the corresponding drivers into the kernel. To compile this driver as a module, choose M here and read . The module will be called lp. If you have several parallel ports, you can specify which ports to use with the "lp" kernel command line option. (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) The syntax of the "lp" command line option can be found in . If you have more than 8 printers, you need to increase the LP_NO macro in lp.c and the PARPORT_MAX macro in parport.h. config LP_CONSOLE bool "Support for console on line printer" depends on PRINTER ---help--- If you want kernel messages to be printed out as they occur, you can have a console on the printer. This option adds support for doing that; to actually get it to happen you need to pass the option "console=lp0" to the kernel at boot time. If the printer is out of paper (or off, or unplugged, or too busy..) the kernel will stall until the printer is ready again. By defining CONSOLE_LP_STRICT to 0 (at your own risk) you can make the kernel continue when this happens, but it'll lose the kernel messages. If unsure, say N. config PPDEV tristate "Support for user-space parallel port device drivers" depends on PARPORT ---help--- Saying Y to this adds support for /dev/parport device nodes. This is needed for programs that want portable access to the parallel port, for instance deviceid (which displays Plug-and-Play device IDs). This is the parallel port equivalent of SCSI generic support (sg). It is safe to say N to this -- it is not needed for normal printing or parallel port CD-ROM/disk support. To compile this driver as a module, choose M here: the module will be called ppdev. If unsure, say N. source "drivers/tty/hvc/Kconfig" config VIRTIO_CONSOLE tristate "Virtio console" depends on VIRTIO select HVC_DRIVER help Virtio console for use with lguest and other hypervisors. Also serves as a general-purpose serial device for data transfer between the guest and host. Character devices at /dev/vportNpn will be created when corresponding ports are found, where N is the device number and n is the port number within that device. If specified by the host, a sysfs attribute called 'name' will be populated with a name for the port which can be used by udev scripts to create a symlink to the device. config IBM_BSR tristate "IBM POWER Barrier Synchronization Register support" depends on PPC_PSERIES help This devices exposes a hardware mechanism for fast synchronization of threads across a large system which avoids bouncing a cacheline between several cores on a system source "drivers/char/ipmi/Kconfig" config DS1620 tristate "NetWinder thermometer support" depends on ARCH_NETWINDER help Say Y here to include support for the thermal management hardware found in the NetWinder. This driver allows the user to control the temperature set points and to read the current temperature. It is also possible to say M here to build it as a module (ds1620) It is recommended to be used on a NetWinder, but it is not a necessity. config NWBUTTON tristate "NetWinder Button" depends on ARCH_NETWINDER ---help--- If you say Y here and create a character device node /dev/nwbutton with major and minor numbers 10 and 158 ("man mknod"), then every time the orange button is pressed a number of times, the number of times the button was pressed will be written to that device. This is most useful for applications, as yet unwritten, which perform actions based on how many times the button is pressed in a row. Do not hold the button down for too long, as the driver does not alter the behaviour of the hardware reset circuitry attached to the button; it will still execute a hard reset if the button is held down for longer than approximately five seconds. To compile this driver as a module, choose M here: the module will be called nwbutton. Most people will answer Y to this question and "Reboot Using Button" below to be able to initiate a system shutdown from the button. config NWBUTTON_REBOOT bool "Reboot Using Button" depends on NWBUTTON help If you say Y here, then you will be able to initiate a system shutdown and reboot by pressing the orange button a number of times. The number of presses to initiate the shutdown is two by default, but this can be altered by modifying the value of NUM_PRESSES_REBOOT in nwbutton.h and recompiling the driver or, if you compile the driver as a module, you can specify the number of presses at load time with "insmod button reboot_count=". config NWFLASH tristate "NetWinder flash support" depends on ARCH_NETWINDER ---help--- If you say Y here and create a character device /dev/flash with major 10 and minor 160 you can manipulate the flash ROM containing the NetWinder firmware. Be careful as accidentally overwriting the flash contents can render your computer unbootable. On no account allow random users access to this device. :-) To compile this driver as a module, choose M here: the module will be called nwflash. If you're not sure, say N. source "drivers/char/hw_random/Kconfig" config NVRAM tristate "/dev/nvram support" depends on ATARI || X86 || (ARM && RTC_DRV_CMOS) || GENERIC_NVRAM ---help--- If you say Y here and create a character special file /dev/nvram with major number 10 and minor number 144 using mknod ("man mknod"), you get read and write access to the extra bytes of non-volatile memory in the real time clock (RTC), which is contained in every PC and most Ataris. The actual number of bytes varies, depending on the nvram in the system, but is usually 114 (128-14 for the RTC). This memory is conventionally called "CMOS RAM" on PCs and "NVRAM" on Ataris. /dev/nvram may be used to view settings there, or to change them (with some utility). It could also be used to frequently save a few bits of very important data that may not be lost over power-off and for which writing to disk is too insecure. Note however that most NVRAM space in a PC belongs to the BIOS and you should NEVER idly tamper with it. See Ralf Brown's interrupt list for a guide to the use of CMOS bytes by your BIOS. On Atari machines, /dev/nvram is always configured and does not need to be selected. To compile this driver as a module, choose M here: the module will be called nvram. # # These legacy RTC drivers just cause too many conflicts with the generic # RTC framework ... let's not even try to coexist any more. # if RTC_LIB=n config RTC tristate "Enhanced Real Time Clock Support (legacy PC RTC driver)" depends on !PPC && !PARISC && !IA64 && !M68K && !SPARC && !FRV \ && !ARM && !SUPERH && !S390 && !AVR32 && !BLACKFIN ---help--- If you say Y here and create a character special file /dev/rtc with major number 10 and minor number 135 using mknod ("man mknod"), you will get access to the real time clock (or hardware clock) built into your computer. Every PC has such a clock built in. It can be used to generate signals from as low as 1Hz up to 8192Hz, and can also be used as a 24 hour alarm. It reports status information via the file /proc/driver/rtc and its behaviour is set by various ioctls on /dev/rtc. If you run Linux on a multiprocessor machine and said Y to "Symmetric Multi Processing" above, you should say Y here to read and set the RTC in an SMP compatible fashion. If you think you have a use for such a device (such as periodic data sampling), then say Y here, and read for details. To compile this driver as a module, choose M here: the module will be called rtc. config JS_RTC tristate "Enhanced Real Time Clock Support" depends on SPARC32 && PCI ---help--- If you say Y here and create a character special file /dev/rtc with major number 10 and minor number 135 using mknod ("man mknod"), you will get access to the real time clock (or hardware clock) built into your computer. Every PC has such a clock built in. It can be used to generate signals from as low as 1Hz up to 8192Hz, and can also be used as a 24 hour alarm. It reports status information via the file /proc/driver/rtc and its behaviour is set by various ioctls on /dev/rtc. If you think you have a use for such a device (such as periodic data sampling), then say Y here, and read for details. To compile this driver as a module, choose M here: the module will be called js-rtc. config GEN_RTC tristate "Generic /dev/rtc emulation" depends on RTC!=y && !IA64 && !ARM && !M32R && !MIPS && !SPARC && !FRV && !S390 && !SUPERH && !AVR32 && !BLACKFIN ---help--- If you say Y here and create a character special file /dev/rtc with major number 10 and minor number 135 using mknod ("man mknod"), you will get access to the real time clock (or hardware clock) built into your computer. It reports status information via the file /proc/driver/rtc and its behaviour is set by various ioctls on /dev/rtc. If you enable the "extended RTC operation" below it will also provide an emulation for RTC_UIE which is required by some programs and may improve precision in some cases. To compile this driver as a module, choose M here: the module will be called genrtc. config GEN_RTC_X bool "Extended RTC operation" depends on GEN_RTC help Provides an emulation for RTC_UIE which is required by some programs and may improve precision of the generic RTC support in some cases. config EFI_RTC bool "EFI Real Time Clock Services" depends on IA64 config DS1302 tristate "DS1302 RTC support" depends on M32R && (PLAT_M32700UT || PLAT_OPSPUT) help If you say Y here and create a character special file /dev/rtc with major number 121 and minor number 0 using mknod ("man mknod"), you will get access to the real time clock (or hardware clock) built into your computer. endif # RTC_LIB config DTLK tristate "Double Talk PC internal speech card support" depends on ISA help This driver is for the DoubleTalk PC, a speech synthesizer manufactured by RC Systems (). It is also called the `internal DoubleTalk'. To compile this driver as a module, choose M here: the module will be called dtlk. config XILINX_HWICAP tristate "Xilinx HWICAP Support" depends on XILINX_VIRTEX || MICROBLAZE help This option enables support for Xilinx Internal Configuration Access Port (ICAP) driver. The ICAP is used on Xilinx Virtex FPGA platforms to partially reconfigure the FPGA at runtime. If unsure, say N. config R3964 tristate "Siemens R3964 line discipline" ---help--- This driver allows synchronous communication with devices using the Siemens R3964 packet protocol. Unless you are dealing with special hardware like PLCs, you are unlikely to need this. To compile this driver as a module, choose M here: the module will be called n_r3964. If unsure, say N. config APPLICOM tristate "Applicom intelligent fieldbus card support" depends on PCI ---help--- This driver provides the kernel-side support for the intelligent fieldbus cards made by Applicom International. More information about these cards can be found on the WWW at the address , or by email from David Woodhouse . To compile this driver as a module, choose M here: the module will be called applicom. If unsure, say N. config SONYPI tristate "Sony Vaio Programmable I/O Control Device support (EXPERIMENTAL)" depends on EXPERIMENTAL && X86 && PCI && INPUT && !64BIT ---help--- This driver enables access to the Sony Programmable I/O Control Device which can be found in many (all ?) Sony Vaio laptops. If you have one of those laptops, read , and say Y or M here. To compile this driver as a module, choose M here: the module will be called sonypi. config GPIO_TB0219 tristate "TANBAC TB0219 GPIO support" depends on TANBAC_TB022X select GPIO_VR41XX source "drivers/char/pcmcia/Kconfig" config MWAVE tristate "ACP Modem (Mwave) support" depends on X86 select SERIAL_8250 ---help--- The ACP modem (Mwave) for Linux is a WinModem. It is composed of a kernel driver and a user level application. Together these components support direct attachment to public switched telephone networks (PSTNs) and support selected world wide countries. This version of the ACP Modem driver supports the IBM Thinkpad 600E, 600, and 770 that include on board ACP modem hardware. The modem also supports the standard communications port interface (ttySx) and is compatible with the Hayes AT Command Set. The user level application needed to use this driver can be found at the IBM Linux Technology Center (LTC) web site: . If you own one of the above IBM Thinkpads which has the Mwave chipset in it, say Y. To compile this driver as a module, choose M here: the module will be called mwave. config SCx200_GPIO tristate "NatSemi SCx200 GPIO Support" depends on SCx200 select NSC_GPIO help Give userspace access to the GPIO pins on the National Semiconductor SCx200 processors. If compiled as a module, it will be called scx200_gpio. config PC8736x_GPIO tristate "NatSemi PC8736x GPIO Support" depends on X86_32 default SCx200_GPIO # mostly N select NSC_GPIO # needed for support routines help Give userspace access to the GPIO pins on the National Semiconductor PC-8736x (x=[03456]) SuperIO chip. The chip has multiple functional units, inc several managed by hwmon/pc87360 driver. Tested with PC-87366 If compiled as a module, it will be called pc8736x_gpio. config NSC_GPIO tristate "NatSemi Base GPIO Support" depends on X86_32 # selected by SCx200_GPIO and PC8736x_GPIO # what about 2 selectors differing: m != y help Common support used (and needed) by scx200_gpio and pc8736x_gpio drivers. If those drivers are built as modules, this one will be too, named nsc_gpio config RAW_DRIVER tristate "RAW driver (/dev/raw/rawN)" depends on BLOCK help The raw driver permits block devices to be bound to /dev/raw/rawN. Once bound, I/O against /dev/raw/rawN uses efficient zero-copy I/O. See the raw(8) manpage for more details. Applications should preferably open the device (eg /dev/hda1) with the O_DIRECT flag. config MAX_RAW_DEVS int "Maximum number of RAW devices to support (1-8192)" depends on RAW_DRIVER default "256" help The maximum number of RAW devices that are supported. Default is 256. Increase this number in case you need lots of raw devices. config HPET bool "HPET - High Precision Event Timer" if (X86 || IA64) default n depends on ACPI help If you say Y here, you will have a miscdevice named "/dev/hpet/". Each open selects one of the timers supported by the HPET. The timers are non-periodic and/or periodic. config HPET_MMAP bool "Allow mmap of HPET" default y depends on HPET help If you say Y here, user applications will be able to mmap the HPET registers. In some hardware implementations, the page containing HPET registers may also contain other things that shouldn't be exposed to the user. If this applies to your hardware, say N here. config HANGCHECK_TIMER tristate "Hangcheck timer" depends on X86 || IA64 || PPC64 || S390 help The hangcheck-timer module detects when the system has gone out to lunch past a certain margin. It can reboot the system or merely print a warning. config MMTIMER tristate "MMTIMER Memory mapped RTC for SGI Altix" depends on IA64_GENERIC || IA64_SGI_SN2 default y help The mmtimer device allows direct userspace access to the Altix system timer. config UV_MMTIMER tristate "UV_MMTIMER Memory mapped RTC for SGI UV" depends on X86_UV default m help The uv_mmtimer device allows direct userspace access to the UV system timer. source "drivers/char/tpm/Kconfig" config TELCLOCK tristate "Telecom clock driver for ATCA SBC" depends on EXPERIMENTAL && X86 default n help The telecom clock device is specific to the MPCBL0010 and MPCBL0050 ATCA computers and allows direct userspace access to the configuration of the telecom clock configuration settings. This device is used for hardware synchronization across the ATCA backplane fabric. Upon loading, the driver exports a sysfs directory, /sys/devices/platform/telco_clock, with a number of files for controlling the behavior of this hardware. config DEVPORT bool depends on !M68K depends on ISA || PCI default y source "drivers/s390/char/Kconfig" config RAMOOPS tristate "Log panic/oops to a RAM buffer" depends on HAS_IOMEM default n help This enables panic and oops messages to be logged to a circular buffer in RAM where it can be read back at some later point. config MSM_SMD_PKT bool "Enable device interface for some SMD packet ports" default n depends on MSM_SMD help Enables userspace clients to read and write to some packet SMD ports via device interface for MSM chipset. endmenu # # PCMCIA character device configuration # menu "PCMCIA character devices" depends on HOTPLUG && PCMCIA!=n config SYNCLINK_CS tristate "SyncLink PC Card support" depends on PCMCIA help Enable support for the SyncLink PC Card serial adapter, running asynchronous and HDLC communications up to 512Kbps. The port is selectable for RS-232, V.35, RS-449, RS-530, and X.21 This driver may be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called synclinkmp. If you want to do that, say M here. config CARDMAN_4000 tristate "Omnikey Cardman 4000 support" depends on PCMCIA select BITREVERSE help Enable support for the Omnikey Cardman 4000 PCMCIA Smartcard reader. This kernel driver requires additional userspace support, either by the vendor-provided PC/SC ifd_handler (http://www.omnikey.com/), or via the cm4000 backend of OpenCT (http://www.opensc-project.org/opensc). config CARDMAN_4040 tristate "Omnikey CardMan 4040 support" depends on PCMCIA help Enable support for the Omnikey CardMan 4040 PCMCIA Smartcard reader. This card is basically a USB CCID device connected to a FIFO in I/O space. To use the kernel driver, you will need either the PC/SC ifdhandler provided from the Omnikey homepage (http://www.omnikey.com/), or a current development version of OpenCT (http://www.opensc-project.org/opensc). config IPWIRELESS tristate "IPWireless 3G UMTS PCMCIA card support" depends on PCMCIA && NETDEVICES select PPP help This is a driver for 3G UMTS PCMCIA card from IPWireless company. In some countries (for example Czech Republic, T-Mobile ISP) this card is shipped for service called UMTS 4G. endmenu # # TPM device configuration # menuconfig TCG_TPM tristate "TPM Hardware Support" depends on HAS_IOMEM depends on EXPERIMENTAL select SECURITYFS ---help--- If you have a TPM security chip in your system, which implements the Trusted Computing Group's specification, say Yes and it will be accessible from within Linux. For more information see . An implementation of the Trusted Software Stack (TSS), the userspace enablement piece of the specification, can be obtained at: . To compile this driver as a module, choose M here; the module will be called tpm. If unsure, say N. Notes: 1) For more TPM drivers enable CONFIG_PNP, CONFIG_ACPI and CONFIG_PNPACPI. 2) Without ACPI enabled, the BIOS event log won't be accessible, which is required to validate the PCR 0-7 values. if TCG_TPM config TCG_TIS tristate "TPM Interface Specification 1.2 Interface" ---help--- If you have a TPM security chip that is compliant with the TCG TIS 1.2 TPM specification say Yes and it will be accessible from within Linux. To compile this driver as a module, choose M here; the module will be called tpm_tis. config TCG_NSC tristate "National Semiconductor TPM Interface" ---help--- If you have a TPM security chip from National Semiconductor say Yes and it will be accessible from within Linux. To compile this driver as a module, choose M here; the module will be called tpm_nsc. config TCG_ATMEL tristate "Atmel TPM Interface" ---help--- If you have a TPM security chip from Atmel say Yes and it will be accessible from within Linux. To compile this driver as a module, choose M here; the module will be called tpm_atmel. config TCG_INFINEON tristate "Infineon Technologies TPM Interface" depends on PNP ---help--- If you have a TPM security chip from Infineon Technologies (either SLD 9630 TT 1.1 or SLB 9635 TT 1.2) say Yes and it will be accessible from within Linux. To compile this driver as a module, choose M here; the module will be called tpm_infineon. Further information on this driver and the supported hardware can be found at http://www.trust.rub.de/projects/linux-device-driver-infineon-tpm/ endif # TCG_TPM menuconfig AGP tristate "/dev/agpgart (AGP Support)" depends on ALPHA || IA64 || PARISC || PPC || X86 depends on PCI ---help--- AGP (Accelerated Graphics Port) is a bus system mainly used to connect graphics cards to the rest of the system. If you have an AGP system and you say Y here, it will be possible to use the AGP features of your 3D rendering video card. This code acts as a sort of "AGP driver" for the motherboard's chipset. If you need more texture memory than you can get with the AGP GART (theoretically up to 256 MB, but in practice usually 64 or 128 MB due to kernel allocation issues), you could use PCI accesses and have up to a couple gigs of texture space. Note that this is the only means to have X/GLX use write-combining with MTRR support on the AGP bus. Without it, OpenGL direct rendering will be a lot slower but still faster than PIO. To compile this driver as a module, choose M here: the module will be called agpgart. You should say Y here if you want to use GLX or DRI. If unsure, say N. config AGP_ALI tristate "ALI chipset support" depends on AGP && X86_32 ---help--- This option gives you AGP support for the GLX component of X on the following ALi chipsets. The supported chipsets include M1541, M1621, M1631, M1632, M1641,M1647,and M1651. For the ALi-chipset question, ALi suggests you refer to . The M1541 chipset can do AGP 1x and 2x, but note that there is an acknowledged incompatibility with Matrox G200 cards. Due to timing issues, this chipset cannot do AGP 2x with the G200. This is a hardware limitation. AGP 1x seems to be fine, though. config AGP_ATI tristate "ATI chipset support" depends on AGP && X86_32 ---help--- This option gives you AGP support for the GLX component of X on the ATI RadeonIGP family of chipsets. config AGP_AMD tristate "AMD Irongate, 761, and 762 chipset support" depends on AGP && X86_32 help This option gives you AGP support for the GLX component of X on AMD Irongate, 761, and 762 chipsets. config AGP_AMD64 tristate "AMD Opteron/Athlon64 on-CPU GART support" depends on AGP && X86 && AMD_NB help This option gives you AGP support for the GLX component of X using the on-CPU northbridge of the AMD Athlon64/Opteron CPUs. You still need an external AGP bridge like the AMD 8151, VIA K8T400M, SiS755. It may also support other AGP bridges when loaded with agp_try_unsupported=1. config AGP_INTEL tristate "Intel 440LX/BX/GX, I8xx and E7x05 chipset support" depends on AGP && X86 help This option gives you AGP support for the GLX component of X on Intel 440LX/BX/GX, 815, 820, 830, 840, 845, 850, 860, 875, E7205 and E7505 chipsets and full support for the 810, 815, 830M, 845G, 852GM, 855GM, 865G and I915 integrated graphics chipsets. config AGP_NVIDIA tristate "NVIDIA nForce/nForce2 chipset support" depends on AGP && X86_32 help This option gives you AGP support for the GLX component of X on NVIDIA chipsets including nForce and nForce2 config AGP_SIS tristate "SiS chipset support" depends on AGP && X86 help This option gives you AGP support for the GLX component of X on Silicon Integrated Systems [SiS] chipsets. Note that 5591/5592 AGP chipsets are NOT supported. config AGP_SWORKS tristate "Serverworks LE/HE chipset support" depends on AGP && X86_32 help Say Y here to support the Serverworks AGP card. See for product descriptions and images. config AGP_VIA tristate "VIA chipset support" depends on AGP && X86 help This option gives you AGP support for the GLX component of X on VIA MVP3/Apollo Pro chipsets. config AGP_I460 tristate "Intel 460GX chipset support" depends on AGP && (IA64_DIG || IA64_GENERIC) help This option gives you AGP GART support for the Intel 460GX chipset for IA64 processors. config AGP_HP_ZX1 tristate "HP ZX1 chipset AGP support" depends on AGP && (IA64_HP_ZX1 || IA64_HP_ZX1_SWIOTLB || IA64_GENERIC) help This option gives you AGP GART support for the HP ZX1 chipset for IA64 processors. config AGP_PARISC tristate "HP Quicksilver AGP support" depends on AGP && PARISC && 64BIT help This option gives you AGP GART support for the HP Quicksilver AGP bus adapter on HP PA-RISC machines (Ok, just on the C8000 workstation...) config AGP_ALPHA_CORE tristate "Alpha AGP support" depends on AGP && (ALPHA_GENERIC || ALPHA_TITAN || ALPHA_MARVEL) default AGP config AGP_UNINORTH tristate "Apple UniNorth & U3 AGP support" depends on AGP && PPC_PMAC help This option gives you AGP support for Apple machines with a UniNorth or U3 (Apple G5) bridge. config AGP_EFFICEON tristate "Transmeta Efficeon support" depends on AGP && X86_32 help This option gives you AGP support for the Transmeta Efficeon series processors with integrated northbridges. config AGP_SGI_TIOCA tristate "SGI TIO chipset AGP support" depends on AGP && (IA64_SGI_SN2 || IA64_GENERIC) help This option gives you AGP GART support for the SGI TIO chipset for IA64 processors. # # IPMI device configuration # menuconfig IPMI_HANDLER tristate 'IPMI top-level message handler' depends on HAS_IOMEM help This enables the central IPMI message handler, required for IPMI to work. IPMI is a standard for managing sensors (temperature, voltage, etc.) in a system. See for more details on the driver. If unsure, say N. if IPMI_HANDLER config IPMI_PANIC_EVENT bool 'Generate a panic event to all BMCs on a panic' help When a panic occurs, this will cause the IPMI message handler to generate an IPMI event describing the panic to each interface registered with the message handler. config IPMI_PANIC_STRING bool 'Generate OEM events containing the panic string' depends on IPMI_PANIC_EVENT help When a panic occurs, this will cause the IPMI message handler to generate IPMI OEM type f0 events holding the IPMB address of the panic generator (byte 4 of the event), a sequence number for the string (byte 5 of the event) and part of the string (the rest of the event). Bytes 1, 2, and 3 are the normal usage for an OEM event. You can fetch these events and use the sequence numbers to piece the string together. config IPMI_DEVICE_INTERFACE tristate 'Device interface for IPMI' help This provides an IOCTL interface to the IPMI message handler so userland processes may use IPMI. It supports poll() and select(). config IPMI_SI tristate 'IPMI System Interface handler' help Provides a driver for System Interfaces (KCS, SMIC, BT). Currently, only KCS and SMIC are supported. If you are using IPMI, you should probably say "y" here. config IPMI_WATCHDOG tristate 'IPMI Watchdog Timer' help This enables the IPMI watchdog timer. config IPMI_POWEROFF tristate 'IPMI Poweroff' help This enables a function to power off the system with IPMI if the IPMI management controller is capable of this. endif # IPMI_HANDLER # # Miscellaneous SN-specific devices # menu "SN Devices" depends on SGI_SN config SGI_IOC3 tristate "SGI IOC3 Base IO support" default m ---help--- This option enables basic support for the SGI IOC3-based Base IO controller card. This option does not enable any specific functions on such a card, but provides necessary infrastructure for other drivers to utilize. If you have an SGI Altix with an IOC3-based I/O controller or a PCI IOC3 serial card say Y. Otherwise say N. endmenu # # Near Field Communication (NFC) devices # menuconfig NFC_DEVICES bool "Near Field Communication (NFC) devices" default n ---help--- You'll have to say Y if your computer contains an NFC device that you want to use under Linux. You can say N here if you don't have any Near Field Communication devices connected to your computer. if NFC_DEVICES config PN544_NFC tristate "PN544 NFC driver" depends on I2C select CRC_CCITT default n ---help--- Say yes if you want PN544 Near Field Communication driver. This is for i2c connected version. If unsure, say N here. To compile this driver as a module, choose m here. The module will be called pn544. endif # NFC_DEVICES # # RapidIO configuration # config RAPIDIO_DISC_TIMEOUT int "Discovery timeout duration (seconds)" depends on RAPIDIO default "30" ---help--- Amount of time a discovery node waits for a host to complete enumeration before giving up. config RAPIDIO_ENABLE_RX_TX_PORTS bool "Enable RapidIO Input/Output Ports" depends on RAPIDIO ---help--- The RapidIO specification describes a Output port transmit enable and a Input port receive enable. The recommended state for Input ports and Output ports should be disabled. When this switch is set the RapidIO subsystem will enable all ports for Input/Output direction to allow other traffic than Maintenance transfers. source "drivers/rapidio/switches/Kconfig" config RAPIDIO_DEBUG bool "RapidIO subsystem debug messages" depends on RAPIDIO help Say Y here if you want the RapidIO subsystem to produce a bunch of debug messages to the system log. Select this if you are having a problem with the RapidIO subsystem and want to see more of what is going on. If you are unsure about this, say N here. # # RapidIO switches configuration # config RAPIDIO_TSI57X bool "IDT Tsi57x SRIO switches support" depends on RAPIDIO ---help--- Includes support for IDT Tsi57x family of serial RapidIO switches. config RAPIDIO_CPS_XX bool "IDT CPS-xx SRIO switches support" depends on RAPIDIO ---help--- Includes support for IDT CPS-16/12/10/8 serial RapidIO switches. config RAPIDIO_TSI568 bool "Tsi568 SRIO switch support" depends on RAPIDIO default n ---help--- Includes support for IDT Tsi568 serial RapidIO switch. config RAPIDIO_CPS_GEN2 bool "IDT CPS Gen.2 SRIO switch support" depends on RAPIDIO default n ---help--- Includes support for ITD CPS Gen.2 serial RapidIO switches. config RAPIDIO_TSI500 bool "Tsi500 Parallel RapidIO switch support" depends on RAPIDIO default n ---help--- Includes support for IDT Tsi500 parallel RapidIO switch. # # platform-neutral GPIO infrastructure and expanders # config ARCH_WANT_OPTIONAL_GPIOLIB bool help Select this config option from the architecture Kconfig, if it is possible to use gpiolib on the architecture, but let the user decide whether to actually build it or not. Select this instead of ARCH_REQUIRE_GPIOLIB, if your architecture does not depend on GPIOs being available, but rather let the user decide whether he needs it or not. config ARCH_REQUIRE_GPIOLIB bool select GPIOLIB help Platforms select gpiolib if they use this infrastructure for all their GPIOs, usually starting with ones integrated into SOC processors. Selecting this from the architecture code will cause the gpiolib code to always get built in. menuconfig GPIOLIB bool "GPIO Support" depends on ARCH_WANT_OPTIONAL_GPIOLIB || ARCH_REQUIRE_GPIOLIB select GENERIC_GPIO help This enables GPIO support through the generic GPIO library. You only need to enable this, if you also want to enable one or more of the GPIO expansion card drivers below. If unsure, say N. if GPIOLIB config DEBUG_GPIO bool "Debug GPIO calls" depends on DEBUG_KERNEL help Say Y here to add some extra checks and diagnostics to GPIO calls. These checks help ensure that GPIOs have been properly initialized before they are used, and that sleeping calls are not made from non-sleeping contexts. They can make bitbanged serial protocols slower. The diagnostics help catch the type of setup errors that are most common when setting up new platforms or boards. config GPIO_SYSFS bool "/sys/class/gpio/... (sysfs interface)" depends on SYSFS && EXPERIMENTAL help Say Y here to add a sysfs interface for GPIOs. This is mostly useful to work around omissions in a system's kernel support. Those are common in custom and semicustom hardware assembled using standard kernels with a minimum of custom patches. In those cases, userspace code may import a given GPIO from the kernel, if no kernel driver requested it. Kernel drivers may also request that a particular GPIO be exported to userspace; this can be useful when debugging. # put expanders in the right section, in alphabetical order config GPIO_MAX730X tristate comment "Memory mapped GPIO expanders:" config GPIO_BASIC_MMIO tristate "Basic memory-mapped GPIO controllers support" help Say yes here to support basic memory-mapped GPIO controllers. config GPIO_GLAMO tristate "Glamo GPIO support" depends on MFD_GLAMO help Say yes here to support GPIO functionality of the Smedia Glamo. config GPIO_IT8761E tristate "IT8761E GPIO support" depends on GPIOLIB help Say yes here to support GPIO functionality of IT8761E super I/O chip. config GPIO_PL061 bool "PrimeCell PL061 GPIO support" depends on ARM_AMBA help Say yes here to support the PrimeCell PL061 GPIO device config GPIO_XILINX bool "Xilinx GPIO support" depends on PPC_OF || MICROBLAZE help Say yes here to support the Xilinx FPGA GPIO device config GPIO_VR41XX tristate "NEC VR4100 series General-purpose I/O Uint support" depends on CPU_VR41XX help Say yes here to support the NEC VR4100 series General-purpose I/O Uint config GPIO_SCH tristate "Intel SCH/TunnelCreek GPIO" depends on GPIOLIB && PCI && X86 select MFD_CORE select LPC_SCH help Say yes here to support GPIO interface on Intel Poulsbo SCH or Intel Tunnel Creek processor. The Intel SCH contains a total of 14 GPIO pins. Ten GPIOs are powered by the core power rail and are turned off during sleep modes (S3 and higher). The remaining four GPIOs are powered by the Intel SCH suspend power supply. These GPIOs remain active during S3. The suspend powered GPIOs can be used to wake the system from the Suspend-to-RAM state. The Intel Tunnel Creek processor has 5 GPIOs powered by the core power rail and 9 from suspend power supply. This driver can also be built as a module. If so, the module will be called sch-gpio. config GPIO_VX855 tristate "VIA VX855/VX875 GPIO" depends on GPIOLIB && MFD_SUPPORT && PCI select MFD_CORE select MFD_VX855 help Support access to the VX855/VX875 GPIO lines through the gpio library. This driver provides common support for accessing the device, additional drivers must be enabled in order to use the functionality of the device. comment "I2C GPIO expanders:" config GPIO_MAX7300 tristate "Maxim MAX7300 GPIO expander" depends on I2C select GPIO_MAX730X help GPIO driver for Maxim MAX7301 I2C-based GPIO expander. config GPIO_MAX732X tristate "MAX7319, MAX7320-7327 I2C Port Expanders" depends on I2C help Say yes here to support the MAX7319, MAX7320-7327 series of I2C Port Expanders. Each IO port on these chips has a fixed role of Input (designated by 'I'), Push-Pull Output ('O'), or Open-Drain Input and Output (designed by 'P'). The combinations are listed below: 8 bits: max7319 (8I), max7320 (8O), max7321 (8P), max7322 (4I4O), max7323 (4P4O) 16 bits: max7324 (8I8O), max7325 (8P8O), max7326 (4I12O), max7327 (4P12O) Board setup code must specify the model to use, and the start number for these GPIOs. config GPIO_MAX732X_IRQ bool "Interrupt controller support for MAX732x" depends on GPIO_MAX732X=y && GENERIC_HARDIRQS help Say yes here to enable the max732x to be used as an interrupt controller. It requires the driver to be built in the kernel. config GPIO_PCA953X tristate "PCA953x, PCA955x, TCA64xx, and MAX7310 I/O ports" depends on I2C help Say yes here to provide access to several register-oriented SMBus I/O expanders, made mostly by NXP or TI. Compatible models include: 4 bits: pca9536, pca9537 8 bits: max7310, pca9534, pca9538, pca9554, pca9557, tca6408 16 bits: pca9535, pca9539, pca9555, tca6416 This driver can also be built as a module. If so, the module will be called pca953x. config GPIO_PCA953X_IRQ bool "Interrupt controller support for PCA953x" depends on GPIO_PCA953X=y help Say yes here to enable the pca953x to be used as an interrupt controller. It requires the driver to be built in the kernel. config GPIO_PCF857X tristate "PCF857x, PCA{85,96}7x, and MAX732[89] I2C GPIO expanders" depends on I2C help Say yes here to provide access to most "quasi-bidirectional" I2C GPIO expanders used for additional digital outputs or inputs. Most of these parts are from NXP, though TI is a second source for some of them. Compatible models include: 8 bits: pcf8574, pcf8574a, pca8574, pca8574a, pca9670, pca9672, pca9674, pca9674a, max7328, max7329 16 bits: pcf8575, pcf8575c, pca8575, pca9671, pca9673, pca9675 Your board setup code will need to declare the expanders in use, and assign numbers to the GPIOs they expose. Those GPIOs can then be used from drivers and other kernel code, just like other GPIOs, but only accessible from task contexts. This driver provides an in-kernel interface to those GPIOs using platform-neutral GPIO calls. config GPIO_SX150X bool "Semtech SX150x I2C GPIO expander" depends on I2C=y default n help Say yes here to provide support for Semtech SX150-series I2C GPIO expanders. Compatible models include: 8 bits: sx1508q 16 bits: sx1509q config GPIO_STMPE bool "STMPE GPIOs" depends on MFD_STMPE help This enables support for the GPIOs found on the STMPE I/O Expanders. config GPIO_TC3589X bool "TC3589X GPIOs" depends on MFD_TC3589X help This enables support for the GPIOs found on the TC3589X I/O Expander. config GPIO_TWL4030 tristate "TWL4030, TWL5030, and TPS659x0 GPIOs" depends on TWL4030_CORE help Say yes here to access the GPIO signals of various multi-function power management chips from Texas Instruments. config GPIO_WM831X tristate "WM831x GPIOs" depends on MFD_WM831X help Say yes here to access the GPIO signals of WM831x power management chips from Wolfson Microelectronics. config GPIO_WM8350 tristate "WM8350 GPIOs" depends on MFD_WM8350 help Say yes here to access the GPIO signals of WM8350 power management chips from Wolfson Microelectronics. config GPIO_WM8994 tristate "WM8994 GPIOs" depends on MFD_WM8994 help Say yes here to access the GPIO signals of WM8994 audio hub CODECs from Wolfson Microelectronics. config GPIO_ADP5520 tristate "GPIO Support for ADP5520 PMIC" depends on PMIC_ADP5520 help This option enables support for on-chip GPIO found on Analog Devices ADP5520 PMICs. To compile this driver as a module, choose M here: the module will be called adp5520-gpio. config GPIO_ADP5588 tristate "ADP5588 I2C GPIO expander" depends on I2C help This option enables support for 18 GPIOs found on Analog Devices ADP5588 GPIO Expanders. To compile this driver as a module, choose M here: the module will be called adp5588-gpio. config GPIO_ADP5588_IRQ bool "Interrupt controller support for ADP5588" depends on GPIO_ADP5588=y help Say yes here to enable the adp5588 to be used as an interrupt controller. It requires the driver to be built in the kernel. config GPIO_PCF50633 tristate "GPIO support for NXP PCF50633" depends on MFD_PCF50633 help Say yes here if you want to include support GPIO for pins on the PCF50633 chip. comment "PCI GPIO expanders:" config GPIO_CS5535 tristate "AMD CS5535/CS5536 GPIO support" depends on PCI && X86 && !CS5535_GPIO help The AMD CS5535 and CS5536 southbridges support 28 GPIO pins that can be used for quite a number of things. The CS5535/6 is found on AMD Geode and Lemote Yeeloong devices. If unsure, say N. config GPIO_BT8XX tristate "BT8XX GPIO abuser" depends on PCI && VIDEO_BT848=n help The BT8xx frame grabber chip has 24 GPIO pins than can be abused as a cheap PCI GPIO card. This chip can be found on Miro, Hauppauge and STB TV-cards. The card needs to be physically altered for using it as a GPIO card. For more information on how to build a GPIO card from a BT8xx TV card, see the documentation file at Documentation/bt8xxgpio.txt If unsure, say N. config GPIO_LANGWELL bool "Intel Langwell/Penwell GPIO support" depends on PCI && X86 help Say Y here to support Intel Langwell/Penwell GPIO. config GPIO_PCH tristate "PCH GPIO of Intel Topcliff" depends on PCI && X86 help This driver is for PCH(Platform controller Hub) GPIO of Intel Topcliff which is an IOH(Input/Output Hub) for x86 embedded processor. This driver can access PCH GPIO device. config GPIO_ML_IOH tristate "OKI SEMICONDUCTOR ML7213 IOH GPIO support" depends on PCI help ML7213 is companion chip for Intel Atom E6xx series. This driver can be used for OKI SEMICONDUCTOR ML7213 IOH(Input/Output Hub) which is for IVI(In-Vehicle Infotainment) use. This driver can access the IOH's GPIO device. config GPIO_TIMBERDALE bool "Support for timberdale GPIO IP" depends on MFD_TIMBERDALE && GPIOLIB && HAS_IOMEM ---help--- Add support for the GPIO IP in the timberdale FPGA. config GPIO_RDC321X tristate "RDC R-321x GPIO support" depends on PCI && GPIOLIB select MFD_SUPPORT select MFD_CORE select MFD_RDC321X help Support for the RDC R321x SoC GPIOs over southbridge PCI configuration space. comment "SPI GPIO expanders:" config GPIO_MAX7301 tristate "Maxim MAX7301 GPIO expander" depends on SPI_MASTER select GPIO_MAX730X help GPIO driver for Maxim MAX7301 SPI-based GPIO expander. config GPIO_MCP23S08 tristate "Microchip MCP23Sxx I/O expander" depends on SPI_MASTER help SPI driver for Microchip MCP23S08/MPC23S17 I/O expanders. This provides a GPIO interface supporting inputs and outputs. config GPIO_MC33880 tristate "Freescale MC33880 high-side/low-side switch" depends on SPI_MASTER help SPI driver for Freescale MC33880 high-side/low-side switch. This provides GPIO interface supporting inputs and outputs. config GPIO_74X164 tristate "74x164 serial-in/parallel-out 8-bits shift register" depends on SPI_MASTER help Platform driver for 74x164 compatible serial-in/parallel-out 8-outputs shift registers. This driver can be used to provide access to more gpio outputs. comment "AC97 GPIO expanders:" config GPIO_UCB1400 bool "Philips UCB1400 GPIO" depends on UCB1400_CORE help This enables support for the Philips UCB1400 GPIO pins. The UCB1400 is an AC97 audio codec. To compile this driver as a module, choose M here: the module will be called ucb1400_gpio. comment "MODULbus GPIO expanders:" config GPIO_JANZ_TTL tristate "Janz VMOD-TTL Digital IO Module" depends on MFD_JANZ_CMODIO help This enables support for the Janz VMOD-TTL Digital IO module. This driver provides support for driving the pins in output mode only. Input mode is not supported. config AB8500_GPIO bool "ST-Ericsson AB8500 Mixed Signal Circuit gpio functions" depends on AB8500_CORE && BROKEN help Select this to enable the AB8500 IC GPIO driver endif config HVC_DRIVER bool help Generic "hypervisor virtual console" infrastructure for various hypervisors (pSeries, iSeries, Xen, lguest). It will automatically be selected if one of the back-end console drivers is selected. config HVC_IRQ bool config HVC_CONSOLE bool "pSeries Hypervisor Virtual Console support" depends on PPC_PSERIES select HVC_DRIVER select HVC_IRQ help pSeries machines when partitioned support a hypervisor virtual console. This driver allows each pSeries partition to have a console which is accessed via the HMC. config HVC_ISERIES bool "iSeries Hypervisor Virtual Console support" depends on PPC_ISERIES default y select HVC_DRIVER select HVC_IRQ select VIOPATH help iSeries machines support a hypervisor virtual console. config HVC_RTAS bool "IBM RTAS Console support" depends on PPC_RTAS select HVC_DRIVER help IBM Console device driver which makes use of RTAS config HVC_BEAT bool "Toshiba's Beat Hypervisor Console support" depends on PPC_CELLEB select HVC_DRIVER help Toshiba's Cell Reference Set Beat Console device driver config HVC_IUCV bool "z/VM IUCV Hypervisor console support (VM only)" depends on S390 select HVC_DRIVER select IUCV default y help This driver provides a Hypervisor console (HVC) back-end to access a Linux (console) terminal via a z/VM IUCV communication path. config HVC_XEN bool "Xen Hypervisor Console support" depends on XEN select HVC_DRIVER select HVC_IRQ default y help Xen virtual console device driver config HVC_UDBG bool "udbg based fake hypervisor console" depends on PPC && EXPERIMENTAL select HVC_DRIVER default n config HVC_DCC bool "ARM JTAG DCC console" depends on ARM select HVC_DRIVER help This console uses the JTAG DCC on ARM to create a console under the HVC driver. This console is used through a JTAG only on ARM. If you don't have a JTAG then you probably don't want this option. config HVC_BFIN_JTAG bool "Blackfin JTAG console" depends on BLACKFIN select HVC_DRIVER help This console uses the Blackfin JTAG to create a console under the the HVC driver. If you don't have JTAG, then you probably don't want this option. config HVCS tristate "IBM Hypervisor Virtual Console Server support" depends on PPC_PSERIES && HVC_CONSOLE help Partitionable IBM Power5 ppc64 machines allow hosting of firmware virtual consoles from one Linux partition by another Linux partition. This driver allows console data from Linux partitions to be accessed through TTY device interfaces in the device tree of a Linux partition running this driver. To compile this driver as a module, choose M here: the module will be called hvcs. Additionally, this module will depend on arch specific APIs exported from hvcserver.ko which will also be compiled when this driver is built as a module. config VT bool "Virtual terminal" if EXPERT depends on !S390 select INPUT default y ---help--- If you say Y here, you will get support for terminal devices with display and keyboard devices. These are called "virtual" because you can run several virtual terminals (also called virtual consoles) on one physical terminal. This is rather useful, for example one virtual terminal can collect system messages and warnings, another one can be used for a text-mode user session, and a third could run an X session, all in parallel. Switching between virtual terminals is done with certain key combinations, usually Alt-. The setterm command ("man setterm") can be used to change the properties (such as colors or beeping) of a virtual terminal. The man page console_codes(4) ("man console_codes") contains the special character sequences that can be used to change those properties directly. The fonts used on virtual terminals can be changed with the setfont ("man setfont") command and the key bindings are defined with the loadkeys ("man loadkeys") command. You need at least one virtual terminal device in order to make use of your keyboard and monitor. Therefore, only people configuring an embedded system would want to say N here in order to save some memory; the only way to log into such a system is then via a serial or network connection. If unsure, say Y, or else you won't be able to do much with your new shiny Linux system :-) config CONSOLE_TRANSLATIONS depends on VT default y bool "Enable character translations in console" if EXPERT ---help--- This enables support for font mapping and Unicode translation on virtual consoles. config VT_CONSOLE bool "Support for console on virtual terminal" if EXPERT depends on VT default y ---help--- The system console is the device which receives all kernel messages and warnings and which allows logins in single user mode. If you answer Y here, a virtual terminal (the device used to interact with a physical terminal) can be used as system console. This is the most common mode of operations, so you should say Y here unless you want the kernel messages be output only to a serial port (in which case you should say Y to "Console on serial port", below). If you do say Y here, by default the currently visible virtual terminal (/dev/tty0) will be used as system console. You can change that with a kernel command line option such as "console=tty3" which would use the third virtual terminal as system console. (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) If unsure, say Y. config HW_CONSOLE bool depends on VT && !S390 && !UML default y config VT_HW_CONSOLE_BINDING bool "Support for binding and unbinding console drivers" depends on HW_CONSOLE default n ---help--- The virtual terminal is the device that interacts with the physical terminal through console drivers. On these systems, at least one console driver is loaded. In other configurations, additional console drivers may be enabled, such as the framebuffer console. If more than 1 console driver is enabled, setting this to 'y' will allow you to select the console driver that will serve as the backend for the virtual terminals. See for more information. For framebuffer console users, please refer to . config UNIX98_PTYS bool "Unix98 PTY support" if EXPERT default y ---help--- A pseudo terminal (PTY) is a software device consisting of two halves: a master and a slave. The slave device behaves identical to a physical terminal; the master device is used by a process to read data from and write data to the slave, thereby emulating a terminal. Typical programs for the master side are telnet servers and xterms. Linux has traditionally used the BSD-like names /dev/ptyxx for masters and /dev/ttyxx for slaves of pseudo terminals. This scheme has a number of problems. The GNU C library glibc 2.1 and later, however, supports the Unix98 naming standard: in order to acquire a pseudo terminal, a process opens /dev/ptmx; the number of the pseudo terminal is then made available to the process and the pseudo terminal slave can be accessed as /dev/pts/. What was traditionally /dev/ttyp2 will then be /dev/pts/2, for example. All modern Linux systems use the Unix98 ptys. Say Y unless you're on an embedded system and want to conserve memory. config DEVPTS_MULTIPLE_INSTANCES bool "Support multiple instances of devpts" depends on UNIX98_PTYS default n ---help--- Enable support for multiple instances of devpts filesystem. If you want to have isolated PTY namespaces (eg: in containers), say Y here. Otherwise, say N. If enabled, each mount of devpts filesystem with the '-o newinstance' option will create an independent PTY namespace. config LEGACY_PTYS bool "Legacy (BSD) PTY support" default y ---help--- A pseudo terminal (PTY) is a software device consisting of two halves: a master and a slave. The slave device behaves identical to a physical terminal; the master device is used by a process to read data from and write data to the slave, thereby emulating a terminal. Typical programs for the master side are telnet servers and xterms. Linux has traditionally used the BSD-like names /dev/ptyxx for masters and /dev/ttyxx for slaves of pseudo terminals. This scheme has a number of problems, including security. This option enables these legacy devices; on most systems, it is safe to say N. config LEGACY_PTY_COUNT int "Maximum number of legacy PTY in use" depends on LEGACY_PTYS range 0 256 default "256" ---help--- The maximum number of legacy PTYs that can be used at any one time. The default is 256, and should be more than enough. Embedded systems may want to reduce this to save memory. When not in use, each legacy PTY occupies 12 bytes on 32-bit architectures and 24 bytes on 64-bit architectures. config BFIN_JTAG_COMM tristate "Blackfin JTAG Communication" depends on BLACKFIN help Add support for emulating a TTY device over the Blackfin JTAG. To compile this driver as a module, choose M here: the module will be called bfin_jtag_comm. config BFIN_JTAG_COMM_CONSOLE bool "Console on Blackfin JTAG" depends on BFIN_JTAG_COMM=y config SERIAL_NONSTANDARD bool "Non-standard serial port support" depends on HAS_IOMEM ---help--- Say Y here if you have any non-standard serial boards -- boards which aren't supported using the standard "dumb" serial driver. This includes intelligent serial boards such as Cyclades, Digiboards, etc. These are usually used for systems that need many serial ports because they serve many terminals or dial-in connections. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about non-standard serial boards. Most people can say N here. config ROCKETPORT tristate "Comtrol RocketPort support" depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI) help This driver supports Comtrol RocketPort and RocketModem PCI boards. These boards provide 2, 4, 8, 16, or 32 high-speed serial ports or modems. For information about the RocketPort/RocketModem boards and this driver read . To compile this driver as a module, choose M here: the module will be called rocket. If you want to compile this driver into the kernel, say Y here. If you don't have a Comtrol RocketPort/RocketModem card installed, say N. config CYCLADES tristate "Cyclades async mux support" depends on SERIAL_NONSTANDARD && (PCI || ISA) select FW_LOADER ---help--- This driver supports Cyclades Z and Y multiserial boards. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. For information about the Cyclades-Z card, read . To compile this driver as a module, choose M here: the module will be called cyclades. If you haven't heard about it, it's safe to say N. config CYZ_INTR bool "Cyclades-Z interrupt mode operation (EXPERIMENTAL)" depends on EXPERIMENTAL && CYCLADES help The Cyclades-Z family of multiport cards allows 2 (two) driver op modes: polling and interrupt. In polling mode, the driver will check the status of the Cyclades-Z ports every certain amount of time (which is called polling cycle and is configurable). In interrupt mode, it will use an interrupt line (IRQ) in order to check the status of the Cyclades-Z ports. The default op mode is polling. If unsure, say N. config MOXA_INTELLIO tristate "Moxa Intellio support" depends on SERIAL_NONSTANDARD && (ISA || EISA || PCI) select FW_LOADER help Say Y here if you have a Moxa Intellio multiport serial card. To compile this driver as a module, choose M here: the module will be called moxa. config MOXA_SMARTIO tristate "Moxa SmartIO support v. 2.0" depends on SERIAL_NONSTANDARD && (PCI || EISA || ISA) help Say Y here if you have a Moxa SmartIO multiport serial card and/or want to help develop a new version of this driver. This is upgraded (1.9.1) driver from original Moxa drivers with changes finally resulting in PCI probing. This driver can also be built as a module. The module will be called mxser. If you want to do that, say M here. config SYNCLINK tristate "Microgate SyncLink card support" depends on SERIAL_NONSTANDARD && PCI && ISA_DMA_API help Provides support for the SyncLink ISA and PCI multiprotocol serial adapters. These adapters support asynchronous and HDLC bit synchronous communication up to 10Mbps (PCI adapter). This driver can only be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called synclink. If you want to do that, say M here. config SYNCLINKMP tristate "SyncLink Multiport support" depends on SERIAL_NONSTANDARD && PCI help Enable support for the SyncLink Multiport (2 or 4 ports) serial adapter, running asynchronous and HDLC communications up to 2.048Mbps. Each ports is independently selectable for RS-232, V.35, RS-449, RS-530, and X.21 This driver may be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called synclinkmp. If you want to do that, say M here. config SYNCLINK_GT tristate "SyncLink GT/AC support" depends on SERIAL_NONSTANDARD && PCI help Support for SyncLink GT and SyncLink AC families of synchronous and asynchronous serial adapters manufactured by Microgate Systems, Ltd. (www.microgate.com) config NOZOMI tristate "HSDPA Broadband Wireless Data Card - Globe Trotter" depends on PCI && EXPERIMENTAL help If you have a HSDPA driver Broadband Wireless Data Card - Globe Trotter PCMCIA card, say Y here. To compile this driver as a module, choose M here, the module will be called nozomi. config ISI tristate "Multi-Tech multiport card support (EXPERIMENTAL)" depends on SERIAL_NONSTANDARD && PCI select FW_LOADER help This is a driver for the Multi-Tech cards which provide several serial ports. The driver is experimental and can currently only be built as a module. The module will be called isicom. If you want to do that, choose M here. config N_HDLC tristate "HDLC line discipline support" depends on SERIAL_NONSTANDARD help Allows synchronous HDLC communications with tty device drivers that support synchronous HDLC such as the Microgate SyncLink adapter. This driver can be built as a module ( = code which can be inserted in and removed from the running kernel whenever you want). The module will be called n_hdlc. If you want to do that, say M here. config N_GSM tristate "GSM MUX line discipline support (EXPERIMENTAL)" depends on EXPERIMENTAL depends on NET help This line discipline provides support for the GSM MUX protocol and presents the mux as a set of 61 individual tty devices. # # Serial device configuration # menu "Serial drivers" depends on HAS_IOMEM # # The new 8250/16550 serial drivers config SERIAL_8250 tristate "8250/16550 and compatible serial support" select SERIAL_CORE ---help--- This selects whether you want to include the driver for the standard serial ports. The standard answer is Y. People who might say N here are those that are setting up dedicated Ethernet WWW/FTP servers, or users that have one of the various bus mice instead of a serial mouse and don't intend to use their machine's standard serial port for anything. (Note that the Cyclades and Stallion multi serial port drivers do not need this driver built in for them to work.) To compile this driver as a module, choose M here: the module will be called 8250. [WARNING: Do not compile this driver as a module if you are using non-standard serial ports, since the configuration information will be lost when the driver is unloaded. This limitation may be lifted in the future.] BTW1: If you have a mouseman serial mouse which is not recognized by the X window system, try running gpm first. BTW2: If you intend to use a software modem (also called Winmodem) under Linux, forget it. These modems are crippled and require proprietary drivers which are only available under Windows. Most people will say Y or M here, so that they can use serial mice, modems and similar devices connecting to the standard serial ports. config SERIAL_8250_CONSOLE bool "Console on 8250/16550 and compatible serial port" depends on SERIAL_8250=y select SERIAL_CORE_CONSOLE ---help--- If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). This could be useful if some terminal or printer is connected to that serial port. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyS1". (Try "man bootparam" or see the documentation of your boot loader (grub or lilo or loadlin) about how to pass options to the kernel at boot time.) If you don't have a VGA card installed and you say Y here, the kernel will automatically use the first serial line, /dev/ttyS0, as system console. You can set that using a kernel command line option such as "console=uart8250,io,0x3f8,9600n8" "console=uart8250,mmio,0xff5e0000,115200n8". and it will switch to normal serial console when the corresponding port is ready. "earlycon=uart8250,io,0x3f8,9600n8" "earlycon=uart8250,mmio,0xff5e0000,115200n8". it will not only setup early console. If unsure, say N. config FIX_EARLYCON_MEM bool depends on X86 default y config SERIAL_8250_GSC tristate depends on SERIAL_8250 && GSC default SERIAL_8250 config SERIAL_8250_PCI tristate "8250/16550 PCI device support" if EXPERT depends on SERIAL_8250 && PCI default SERIAL_8250 help This builds standard PCI serial support. You may be able to disable this feature if you only need legacy serial support. Saves about 9K. config SERIAL_8250_PNP tristate "8250/16550 PNP device support" if EXPERT depends on SERIAL_8250 && PNP default SERIAL_8250 help This builds standard PNP serial support. You may be able to disable this feature if you only need legacy serial support. config SERIAL_8250_HP300 tristate depends on SERIAL_8250 && HP300 default SERIAL_8250 config SERIAL_8250_CS tristate "8250/16550 PCMCIA device support" depends on PCMCIA && SERIAL_8250 ---help--- Say Y here to enable support for 16-bit PCMCIA serial devices, including serial port cards, modems, and the modem functions of multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are credit-card size devices often used with laptops.) To compile this driver as a module, choose M here: the module will be called serial_cs. If unsure, say N. config SERIAL_8250_NR_UARTS int "Maximum number of 8250/16550 serial ports" depends on SERIAL_8250 default "4" help Set this to the number of serial ports you want the driver to support. This includes any ports discovered via ACPI or PCI enumeration and any ports that may be added at run-time via hot-plug, or any ISA multi-port serial cards. config SERIAL_8250_RUNTIME_UARTS int "Number of 8250/16550 serial ports to register at runtime" depends on SERIAL_8250 range 0 SERIAL_8250_NR_UARTS default "4" help Set this to the maximum number of serial ports you want the kernel to register at boot time. This can be overridden with the module parameter "nr_uarts", or boot-time parameter 8250.nr_uarts config SERIAL_8250_EXTENDED bool "Extended 8250/16550 serial driver options" depends on SERIAL_8250 help If you wish to use any non-standard features of the standard "dumb" driver, say Y here. This includes HUB6 support, shared serial interrupts, special multiport support, support for more than the four COM 1/2/3/4 boards, etc. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about serial driver options. If unsure, say N. config SERIAL_8250_MANY_PORTS bool "Support more than 4 legacy serial ports" depends on SERIAL_8250_EXTENDED && !IA64 help Say Y here if you have dumb serial boards other than the four standard COM 1/2/3/4 ports. This may happen if you have an AST FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available from ), or other custom serial port hardware which acts similar to standard serial port hardware. If you only use the standard COM 1/2/3/4 ports, you can say N here to save some memory. You can also say Y if you have an "intelligent" multiport card such as Cyclades, Digiboards, etc. # # Multi-port serial cards # config SERIAL_8250_FOURPORT tristate "Support Fourport cards" depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS help Say Y here if you have an AST FourPort serial board. To compile this driver as a module, choose M here: the module will be called 8250_fourport. config SERIAL_8250_ACCENT tristate "Support Accent cards" depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS help Say Y here if you have an Accent Async serial board. To compile this driver as a module, choose M here: the module will be called 8250_accent. config SERIAL_8250_BOCA tristate "Support Boca cards" depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS help Say Y here if you have a Boca serial board. Please read the Boca mini-HOWTO, available from To compile this driver as a module, choose M here: the module will be called 8250_boca. config SERIAL_8250_EXAR_ST16C554 tristate "Support Exar ST16C554/554D Quad UART" depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS help The Uplogix Envoy TU301 uses this Exar Quad UART. If you are tinkering with your Envoy TU301, or have a machine with this UART, say Y here. To compile this driver as a module, choose M here: the module will be called 8250_exar_st16c554. config SERIAL_8250_HUB6 tristate "Support Hub6 cards" depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS help Say Y here if you have a HUB6 serial board. To compile this driver as a module, choose M here: the module will be called 8250_hub6. config SERIAL_8250_SHARE_IRQ bool "Support for sharing serial interrupts" depends on SERIAL_8250_EXTENDED help Some serial boards have hardware support which allows multiple dumb serial ports on the same board to share a single IRQ. To enable support for this in the serial driver, say Y here. config SERIAL_8250_DETECT_IRQ bool "Autodetect IRQ on standard ports (unsafe)" depends on SERIAL_8250_EXTENDED help Say Y here if you want the kernel to try to guess which IRQ to use for your serial port. This is considered unsafe; it is far better to configure the IRQ in a boot script using the setserial command. If unsure, say N. config SERIAL_8250_RSA bool "Support RSA serial ports" depends on SERIAL_8250_EXTENDED help ::: To be written ::: config SERIAL_8250_MCA tristate "Support 8250-type ports on MCA buses" depends on SERIAL_8250 != n && MCA help Say Y here if you have a MCA serial ports. To compile this driver as a module, choose M here: the module will be called 8250_mca. config SERIAL_8250_ACORN tristate "Acorn expansion card serial port support" depends on ARCH_ACORN && SERIAL_8250 help If you have an Atomwide Serial card or Serial Port card for an Acorn system, say Y to this option. The driver can handle 1, 2, or 3 port cards. If unsure, say N. config SERIAL_8250_RM9K bool "Support for MIPS RM9xxx integrated serial port" depends on SERIAL_8250 != n && SERIAL_RM9000 select SERIAL_8250_SHARE_IRQ help Selecting this option will add support for the integrated serial port hardware found on MIPS RM9122 and similar processors. If unsure, say N. comment "Non-8250 serial port support" config SERIAL_AMBA_PL010 tristate "ARM AMBA PL010 serial port support" depends on ARM_AMBA && (BROKEN || !ARCH_VERSATILE) select SERIAL_CORE help This selects the ARM(R) AMBA(R) PrimeCell PL010 UART. If you have an Integrator/AP or Integrator/PP2 platform, or if you have a Cirrus Logic EP93xx CPU, say Y or M here. If unsure, say N. config SERIAL_AMBA_PL010_CONSOLE bool "Support for console on AMBA serial port" depends on SERIAL_AMBA_PL010=y select SERIAL_CORE_CONSOLE ---help--- Say Y here if you wish to use an AMBA PrimeCell UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Even if you say Y here, the currently visible framebuffer console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyAM0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_AMBA_PL011 tristate "ARM AMBA PL011 serial port support" depends on ARM_AMBA select SERIAL_CORE help This selects the ARM(R) AMBA(R) PrimeCell PL011 UART. If you have an Integrator/PP2, Integrator/CP or Versatile platform, say Y or M here. If unsure, say N. config SERIAL_AMBA_PL011_CONSOLE bool "Support for console on AMBA serial port" depends on SERIAL_AMBA_PL011=y select SERIAL_CORE_CONSOLE ---help--- Say Y here if you wish to use an AMBA PrimeCell UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Even if you say Y here, the currently visible framebuffer console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyAMA0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_SB1250_DUART tristate "BCM1xxx on-chip DUART serial support" depends on SIBYTE_SB1xxx_SOC=y select SERIAL_CORE default y ---help--- Support for the asynchronous serial interface (DUART) included in the BCM1250 and derived System-On-a-Chip (SOC) devices. Note that the letter D in DUART stands for "dual", which is how the device is implemented. Depending on the SOC configuration there may be one or more DUARTs available of which all are handled. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called sb1250-duart. config SERIAL_SB1250_DUART_CONSOLE bool "Support for console on a BCM1xxx DUART serial port" depends on SERIAL_SB1250_DUART=y select SERIAL_CORE_CONSOLE default y ---help--- If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). If unsure, say Y. config SERIAL_ATMEL bool "AT91 / AT32 on-chip serial port support" depends on (ARM && ARCH_AT91) || AVR32 select SERIAL_CORE help This enables the driver for the on-chip UARTs of the Atmel AT91 and AT32 processors. config SERIAL_ATMEL_CONSOLE bool "Support for console on AT91 / AT32 serial port" depends on SERIAL_ATMEL=y select SERIAL_CORE_CONSOLE help Say Y here if you wish to use an on-chip UART on a Atmel AT91 or AT32 processor as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). config SERIAL_ATMEL_PDC bool "Support DMA transfers on AT91 / AT32 serial port" depends on SERIAL_ATMEL default y help Say Y here if you wish to use the PDC to do DMA transfers to and from the Atmel AT91 / AT32 serial port. In order to actually use DMA transfers, make sure that the use_dma_tx and use_dma_rx members in the atmel_uart_data struct is set appropriately for each port. Note that break and error handling currently doesn't work properly when DMA is enabled. Make sure that ports where this matters don't use DMA. config SERIAL_ATMEL_TTYAT bool "Install as device ttyATn instead of ttySn" depends on SERIAL_ATMEL=y help Say Y here if you wish to have the internal AT91 / AT32 UARTs appear as /dev/ttyATn (major 204, minor starting at 154) instead of the normal /dev/ttySn (major 4, minor starting at 64). This is necessary if you also want other UARTs, such as external 8250/16C550 compatible UARTs. The ttySn nodes are legally reserved for the 8250 serial driver but are often misused by other serial drivers. To use this, you should create suitable ttyATn device nodes in /dev/, and pass "console=ttyATn" to the kernel. Say Y if you have an external 8250/16C550 UART. If unsure, say N. config SERIAL_KS8695 bool "Micrel KS8695 (Centaur) serial port support" depends on ARCH_KS8695 select SERIAL_CORE help This selects the Micrel Centaur KS8695 UART. Say Y here. config SERIAL_KS8695_CONSOLE bool "Support for console on KS8695 (Centaur) serial port" depends on SERIAL_KS8695=y select SERIAL_CORE_CONSOLE help Say Y here if you wish to use a KS8695 (Centaur) UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). config SERIAL_CLPS711X tristate "CLPS711X serial port support" depends on ARM && ARCH_CLPS711X select SERIAL_CORE help ::: To be written ::: config SERIAL_CLPS711X_CONSOLE bool "Support for console on CLPS711X serial port" depends on SERIAL_CLPS711X=y select SERIAL_CORE_CONSOLE help Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyCL1". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_SAMSUNG tristate "Samsung SoC serial support" depends on ARM && PLAT_SAMSUNG select SERIAL_CORE help Support for the on-chip UARTs on the Samsung S3C24XX series CPUs, providing /dev/ttySAC0, 1 and 2 (note, some machines may not provide all of these ports, depending on how the serial port pins are configured. config SERIAL_SAMSUNG_UARTS_4 bool depends on ARM && PLAT_SAMSUNG default y if CPU_S3C2443 help Internal node for the common case of 4 Samsung compatible UARTs config SERIAL_SAMSUNG_UARTS int depends on ARM && PLAT_SAMSUNG default 2 if ARCH_S3C2400 default 6 if ARCH_S5P6450 default 4 if SERIAL_SAMSUNG_UARTS_4 default 3 help Select the number of available UART ports for the Samsung S3C serial driver config SERIAL_SAMSUNG_DEBUG bool "Samsung SoC serial debug" depends on SERIAL_SAMSUNG && DEBUG_LL help Add support for debugging the serial driver. Since this is generally being used as a console, we use our own output routines that go via the low-level debug printascii() function. config SERIAL_SAMSUNG_CONSOLE bool "Support for console on Samsung SoC serial port" depends on SERIAL_SAMSUNG=y select SERIAL_CORE_CONSOLE help Allow selection of the S3C24XX on-board serial ports for use as an virtual console. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttySACx". (Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel at boot time.) config SERIAL_S3C2400 tristate "Samsung S3C2410 Serial port support" depends on ARM && SERIAL_SAMSUNG && CPU_S3C2400 default y if CPU_S3C2400 help Serial port support for the Samsung S3C2400 SoC config SERIAL_S3C2410 tristate "Samsung S3C2410 Serial port support" depends on SERIAL_SAMSUNG && CPU_S3C2410 default y if CPU_S3C2410 help Serial port support for the Samsung S3C2410 SoC config SERIAL_S3C2412 tristate "Samsung S3C2412/S3C2413 Serial port support" depends on SERIAL_SAMSUNG && CPU_S3C2412 default y if CPU_S3C2412 help Serial port support for the Samsung S3C2412 and S3C2413 SoC config SERIAL_S3C2440 tristate "Samsung S3C2440/S3C2442/S3C2416 Serial port support" depends on SERIAL_SAMSUNG && (CPU_S3C2440 || CPU_S3C2442 || CPU_S3C2416) default y if CPU_S3C2440 default y if CPU_S3C2442 select SERIAL_SAMSUNG_UARTS_4 if CPU_S3C2416 help Serial port support for the Samsung S3C2440, S3C2416 and S3C2442 SoC config SERIAL_S3C24A0 tristate "Samsung S3C24A0 Serial port support" depends on SERIAL_SAMSUNG && CPU_S3C24A0 default y if CPU_S3C24A0 help Serial port support for the Samsung S3C24A0 SoC config SERIAL_S3C6400 tristate "Samsung S3C6400/S3C6410/S5P6440/S5P6450/S5PC100 Serial port support" depends on SERIAL_SAMSUNG && (CPU_S3C6400 || CPU_S3C6410 || CPU_S5P6440 || CPU_S5P6450 || CPU_S5PC100) select SERIAL_SAMSUNG_UARTS_4 default y help Serial port support for the Samsung S3C6400, S3C6410, S5P6440, S5P6450 and S5PC100 SoCs config SERIAL_S5PV210 tristate "Samsung S5PV210 Serial port support" depends on SERIAL_SAMSUNG && (CPU_S5PV210 || CPU_S5P6442 || CPU_EXYNOS4210) select SERIAL_SAMSUNG_UARTS_4 if (CPU_S5PV210 || CPU_EXYNOS4210) default y help Serial port support for Samsung's S5P Family of SoC's config SERIAL_MAX3100 tristate "MAX3100 support" depends on SPI select SERIAL_CORE help MAX3100 chip support config SERIAL_MAX3107 tristate "MAX3107 support" depends on SPI select SERIAL_CORE help MAX3107 chip support config SERIAL_MAX3107_AAVA tristate "MAX3107 AAVA platform support" depends on X86_MRST && SERIAL_MAX3107 && GPIOLIB select SERIAL_CORE help Support for the MAX3107 chip configuration found on the AAVA platform. Includes the extra initialisation and GPIO support neded for this device. config SERIAL_DZ bool "DECstation DZ serial driver" depends on MACH_DECSTATION && 32BIT select SERIAL_CORE default y ---help--- DZ11-family serial controllers for DECstations and VAXstations, including the DC7085, M7814, and M7819. config SERIAL_DZ_CONSOLE bool "Support console on DECstation DZ serial driver" depends on SERIAL_DZ=y select SERIAL_CORE_CONSOLE default y ---help--- If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Note that the firmware uses ttyS3 as the serial console on DECstations that use this driver. If unsure, say Y. config SERIAL_ZS tristate "DECstation Z85C30 serial support" depends on MACH_DECSTATION select SERIAL_CORE default y ---help--- Support for the Zilog 85C350 serial communications controller used for serial ports in newer DECstation systems. These include the DECsystem 5900 and all models of the DECstation and DECsystem 5000 systems except from model 200. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called zs. config SERIAL_ZS_CONSOLE bool "Support for console on a DECstation Z85C30 serial port" depends on SERIAL_ZS=y select SERIAL_CORE_CONSOLE default y ---help--- If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Note that the firmware uses ttyS1 as the serial console on the Maxine and ttyS3 on the others using this driver. If unsure, say Y. config SERIAL_21285 tristate "DC21285 serial port support" depends on ARM && FOOTBRIDGE select SERIAL_CORE help If you have a machine based on a 21285 (Footbridge) StrongARM(R)/ PCI bridge you can enable its onboard serial port by enabling this option. config SERIAL_21285_CONSOLE bool "Console on DC21285 serial port" depends on SERIAL_21285=y select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the 21285 footbridge you can make it the console by answering Y to this option. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyFB". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_MPSC bool "Marvell MPSC serial port support" depends on PPC32 && MV64X60 select SERIAL_CORE help Say Y here if you want to use the Marvell MPSC serial controller. config SERIAL_MPSC_CONSOLE bool "Support for console on Marvell MPSC serial port" depends on SERIAL_MPSC select SERIAL_CORE_CONSOLE help Say Y here if you want to support a serial console on a Marvell MPSC. config SERIAL_PXA bool "PXA serial port support" depends on ARCH_PXA || ARCH_MMP select SERIAL_CORE help If you have a machine based on an Intel XScale PXA2xx CPU you can enable its onboard serial ports by enabling this option. config SERIAL_PXA_CONSOLE bool "Console on PXA serial port" depends on SERIAL_PXA select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the Intel XScale PXA CPU you can make it the console by answering Y to this option. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttySA0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_SA1100 bool "SA1100 serial port support" depends on ARM && ARCH_SA1100 select SERIAL_CORE help If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you can enable its onboard serial port by enabling this option. Please read for further info. config SERIAL_SA1100_CONSOLE bool "Console on SA1100 serial port" depends on SERIAL_SA1100 select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the SA1100/SA1110 StrongARM CPU you can make it the console by answering Y to this option. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttySA0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_MRST_MAX3110 tristate "SPI UART driver for Max3110" depends on SPI_DW_PCI select SERIAL_CORE select SERIAL_CORE_CONSOLE help This is the UART protocol driver for the MAX3110 device on the Intel Moorestown platform. On other systems use the max3100 driver. config SERIAL_MFD_HSU tristate "Medfield High Speed UART support" depends on PCI select SERIAL_CORE config SERIAL_MFD_HSU_CONSOLE boolean "Medfile HSU serial console support" depends on SERIAL_MFD_HSU=y select SERIAL_CORE_CONSOLE config SERIAL_BFIN tristate "Blackfin serial port support" depends on BLACKFIN select SERIAL_CORE select SERIAL_BFIN_UART0 if (BF531 || BF532 || BF533 || BF561) help Add support for the built-in UARTs on the Blackfin. To compile this driver as a module, choose M here: the module will be called bfin_5xx. config SERIAL_BFIN_CONSOLE bool "Console on Blackfin serial port" depends on SERIAL_BFIN=y select SERIAL_CORE_CONSOLE choice prompt "UART Mode" depends on SERIAL_BFIN default SERIAL_BFIN_DMA help This driver supports the built-in serial ports of the Blackfin family of CPUs config SERIAL_BFIN_DMA bool "DMA mode" depends on !DMA_UNCACHED_NONE && KGDB_SERIAL_CONSOLE=n help This driver works under DMA mode. If this option is selected, the blackfin simple dma driver is also enabled. config SERIAL_BFIN_PIO bool "PIO mode" help This driver works under PIO mode. endchoice config SERIAL_BFIN_UART0 bool "Enable UART0" depends on SERIAL_BFIN help Enable UART0 config BFIN_UART0_CTSRTS bool "Enable UART0 hardware flow control" depends on SERIAL_BFIN_UART0 help Enable hardware flow control in the driver. config SERIAL_BFIN_UART1 bool "Enable UART1" depends on SERIAL_BFIN && (!BF531 && !BF532 && !BF533 && !BF561) help Enable UART1 config BFIN_UART1_CTSRTS bool "Enable UART1 hardware flow control" depends on SERIAL_BFIN_UART1 help Enable hardware flow control in the driver. config SERIAL_BFIN_UART2 bool "Enable UART2" depends on SERIAL_BFIN && (BF54x || BF538 || BF539) help Enable UART2 config BFIN_UART2_CTSRTS bool "Enable UART2 hardware flow control" depends on SERIAL_BFIN_UART2 help Enable hardware flow control in the driver. config SERIAL_BFIN_UART3 bool "Enable UART3" depends on SERIAL_BFIN && (BF54x) help Enable UART3 config BFIN_UART3_CTSRTS bool "Enable UART3 hardware flow control" depends on SERIAL_BFIN_UART3 help Enable hardware flow control in the driver. config SERIAL_IMX bool "IMX serial port support" depends on ARM && (ARCH_IMX || ARCH_MXC) select SERIAL_CORE select RATIONAL help If you have a machine based on a Motorola IMX CPU you can enable its onboard serial port by enabling this option. config SERIAL_IMX_CONSOLE bool "Console on IMX serial port" depends on SERIAL_IMX select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the Motorola IMX CPU you can make it the console by answering Y to this option. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttySA0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_UARTLITE tristate "Xilinx uartlite serial port support" depends on PPC32 || MICROBLAZE || MFD_TIMBERDALE select SERIAL_CORE help Say Y here if you want to use the Xilinx uartlite serial controller. To compile this driver as a module, choose M here: the module will be called uartlite. config SERIAL_UARTLITE_CONSOLE bool "Support for console on Xilinx uartlite serial port" depends on SERIAL_UARTLITE=y select SERIAL_CORE_CONSOLE help Say Y here if you wish to use a Xilinx uartlite as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). config SERIAL_SUNCORE bool depends on SPARC select SERIAL_CORE select SERIAL_CORE_CONSOLE default y config SERIAL_SUNZILOG tristate "Sun Zilog8530 serial support" depends on SPARC help This driver supports the Zilog8530 serial ports found on many Sparc systems. Say Y or M if you want to be able to these serial ports. config SERIAL_SUNZILOG_CONSOLE bool "Console on Sun Zilog8530 serial port" depends on SERIAL_SUNZILOG=y help If you would like to be able to use the Zilog8530 serial port on your Sparc system as the console, you can do so by answering Y to this option. config SERIAL_SUNSU tristate "Sun SU serial support" depends on SPARC && PCI help This driver supports the 8250 serial ports that run the keyboard and mouse on (PCI) UltraSPARC systems. Say Y or M if you want to be able to these serial ports. config SERIAL_SUNSU_CONSOLE bool "Console on Sun SU serial port" depends on SERIAL_SUNSU=y help If you would like to be able to use the SU serial port on your Sparc system as the console, you can do so by answering Y to this option. config SERIAL_MUX tristate "Serial MUX support" depends on GSC select SERIAL_CORE default y ---help--- Saying Y here will enable the hardware MUX serial driver for the Nova, K class systems and D class with a 'remote control card'. The hardware MUX is not 8250/16550 compatible therefore the /dev/ttyB0 device is shared between the Serial MUX and the PDC software console. The following steps need to be completed to use the Serial MUX: 1. create the device entry (mknod /dev/ttyB0 c 11 0) 2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0 3. Add device ttyB0 to /etc/securetty (if you want to log on as root on this console.) 4. Change the kernel command console parameter to: console=ttyB0 config SERIAL_MUX_CONSOLE bool "Support for console on serial MUX" depends on SERIAL_MUX=y select SERIAL_CORE_CONSOLE default y config PDC_CONSOLE bool "PDC software console support" depends on PARISC && !SERIAL_MUX && VT default n help Saying Y here will enable the software based PDC console to be used as the system console. This is useful for machines in which the hardware based console has not been written yet. The following steps must be competed to use the PDC console: 1. create the device entry (mknod /dev/ttyB0 c 11 0) 2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0 3. Add device ttyB0 to /etc/securetty (if you want to log on as root on this console.) 4. Change the kernel command console parameter to: console=ttyB0 config SERIAL_SUNSAB tristate "Sun Siemens SAB82532 serial support" depends on SPARC && PCI help This driver supports the Siemens SAB82532 DUSCC serial ports on newer (PCI) UltraSPARC systems. Say Y or M if you want to be able to these serial ports. config SERIAL_SUNSAB_CONSOLE bool "Console on Sun Siemens SAB82532 serial port" depends on SERIAL_SUNSAB=y help If you would like to be able to use the SAB82532 serial port on your Sparc system as the console, you can do so by answering Y to this option. config SERIAL_SUNHV bool "Sun4v Hypervisor Console support" depends on SPARC64 help This driver supports the console device found on SUN4V Sparc systems. Say Y if you want to be able to use this device. config SERIAL_IP22_ZILOG tristate "SGI Zilog8530 serial support" depends on SGI_HAS_ZILOG select SERIAL_CORE help This driver supports the Zilog8530 serial ports found on SGI systems. Say Y or M if you want to be able to these serial ports. config SERIAL_IP22_ZILOG_CONSOLE bool "Console on SGI Zilog8530 serial port" depends on SERIAL_IP22_ZILOG=y select SERIAL_CORE_CONSOLE config SERIAL_SH_SCI tristate "SuperH SCI(F) serial port support" depends on HAVE_CLK && (SUPERH || H8300 || ARCH_SHMOBILE) select SERIAL_CORE config SERIAL_SH_SCI_NR_UARTS int "Maximum number of SCI(F) serial ports" depends on SERIAL_SH_SCI default "2" config SERIAL_SH_SCI_CONSOLE bool "Support for console on SuperH SCI(F)" depends on SERIAL_SH_SCI=y select SERIAL_CORE_CONSOLE config SERIAL_SH_SCI_DMA bool "DMA support" depends on SERIAL_SH_SCI && SH_DMAE && EXPERIMENTAL config SERIAL_PNX8XXX bool "Enable PNX8XXX SoCs' UART Support" depends on MIPS && (SOC_PNX8550 || SOC_PNX833X) select SERIAL_CORE help If you have a MIPS-based Philips SoC such as PNX8550 or PNX8330 and you want to use serial ports, say Y. Otherwise, say N. config SERIAL_PNX8XXX_CONSOLE bool "Enable PNX8XX0 serial console" depends on SERIAL_PNX8XXX select SERIAL_CORE_CONSOLE help If you have a MIPS-based Philips SoC such as PNX8550 or PNX8330 and you want to use serial console, say Y. Otherwise, say N. config SERIAL_CORE tristate config SERIAL_CORE_CONSOLE bool config CONSOLE_POLL bool config SERIAL_68328 bool "68328 serial support" depends on M68328 || M68EZ328 || M68VZ328 help This driver supports the built-in serial port of the Motorola 68328 (standard, EZ and VZ varieties). config SERIAL_68328_RTS_CTS bool "Support RTS/CTS on 68328 serial port" depends on SERIAL_68328 config SERIAL_MCF bool "Coldfire serial support" depends on COLDFIRE select SERIAL_CORE help This serial driver supports the Freescale Coldfire serial ports. config SERIAL_MCF_BAUDRATE int "Default baudrate for Coldfire serial ports" depends on SERIAL_MCF default 19200 help This setting lets you define what the default baudrate is for the ColdFire serial ports. The usual default varies from board to board, and this setting is a way of catering for that. config SERIAL_MCF_CONSOLE bool "Coldfire serial console support" depends on SERIAL_MCF select SERIAL_CORE_CONSOLE help Enable a ColdFire internal serial port to be the system console. config SERIAL_68360_SMC bool "68360 SMC uart support" depends on M68360 help This driver supports the SMC serial ports of the Motorola 68360 CPU. config SERIAL_68360_SCC bool "68360 SCC uart support" depends on M68360 help This driver supports the SCC serial ports of the Motorola 68360 CPU. config SERIAL_68360 bool depends on SERIAL_68360_SMC || SERIAL_68360_SCC default y config SERIAL_PMACZILOG tristate "Mac or PowerMac z85c30 ESCC support" depends on (M68K && MAC) || (PPC_OF && PPC_PMAC) select SERIAL_CORE help This driver supports the Zilog z85C30 serial ports found on (Power)Mac machines. Say Y or M if you want to be able to these serial ports. config SERIAL_PMACZILOG_TTYS bool "Use ttySn device nodes for Zilog z85c30" depends on SERIAL_PMACZILOG help The pmac_zilog driver for the z85C30 chip on many powermacs historically used the device numbers for /dev/ttySn. The 8250 serial port driver also uses these numbers, which means the two drivers being unable to coexist; you could not use both z85C30 and 8250 type ports at the same time. If this option is not selected, the pmac_zilog driver will use the device numbers allocated for /dev/ttyPZn. This allows the pmac_zilog and 8250 drivers to co-exist, but may cause existing userspace setups to break. Programs that need to access the built-in serial ports on powermacs will need to be reconfigured to use /dev/ttyPZn instead of /dev/ttySn. If you enable this option, any z85c30 ports in the system will be registered as ttyS0 onwards as in the past, and you will be unable to use the 8250 module for PCMCIA or other 16C550-style UARTs. Say N unless you need the z85c30 ports on your (Power)Mac to appear as /dev/ttySn. config SERIAL_PMACZILOG_CONSOLE bool "Console on Mac or PowerMac z85c30 serial port" depends on SERIAL_PMACZILOG=y select SERIAL_CORE_CONSOLE help If you would like to be able to use the z85c30 serial port on your (Power)Mac as the console, you can do so by answering Y to this option. config SERIAL_CPM tristate "CPM SCC/SMC serial port support" depends on CPM2 || 8xx select SERIAL_CORE help This driver supports the SCC and SMC serial ports on Motorola embedded PowerPC that contain a CPM1 (8xx) or CPM2 (8xxx) config SERIAL_CPM_CONSOLE bool "Support for console on CPM SCC/SMC serial port" depends on SERIAL_CPM=y select SERIAL_CORE_CONSOLE help Say Y here if you wish to use a SCC or SMC CPM UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Even if you say Y here, the currently visible framebuffer console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyCPM0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_SGI_L1_CONSOLE bool "SGI Altix L1 serial console support" depends on IA64_GENERIC || IA64_SGI_SN2 select SERIAL_CORE select SERIAL_CORE_CONSOLE help If you have an SGI Altix and you would like to use the system controller serial port as your console (you want this!), say Y. Otherwise, say N. config SERIAL_MPC52xx tristate "Freescale MPC52xx/MPC512x family PSC serial support" depends on PPC_MPC52xx || PPC_MPC512x select SERIAL_CORE help This driver supports MPC52xx and MPC512x PSC serial ports. If you would like to use them, you must answer Y or M to this option. Note that for use as console, it must be included in kernel and not as a module. config SERIAL_MPC52xx_CONSOLE bool "Console on a Freescale MPC52xx/MPC512x family PSC serial port" depends on SERIAL_MPC52xx=y select SERIAL_CORE_CONSOLE help Select this options if you'd like to use one of the PSC serial port of the Freescale MPC52xx family as a console. config SERIAL_MPC52xx_CONSOLE_BAUD int "Freescale MPC52xx/MPC512x family PSC serial port baud" depends on SERIAL_MPC52xx_CONSOLE=y default "9600" help Select the MPC52xx console baud rate. This value is only used if the bootloader doesn't pass in the console baudrate config SERIAL_ICOM tristate "IBM Multiport Serial Adapter" depends on PCI && (PPC_ISERIES || PPC_PSERIES) select SERIAL_CORE select FW_LOADER help This driver is for a family of multiport serial adapters including 2 port RVX, 2 port internal modem, 4 port internal modem and a split 1 port RVX and 1 port internal modem. This driver can also be built as a module. If so, the module will be called icom. config SERIAL_M32R_SIO bool "M32R SIO I/F" depends on M32R default y select SERIAL_CORE help Say Y here if you want to use the M32R serial controller. config SERIAL_M32R_SIO_CONSOLE bool "use SIO console" depends on SERIAL_M32R_SIO=y select SERIAL_CORE_CONSOLE help Say Y here if you want to support a serial console. If you use an M3T-M32700UT or an OPSPUT platform, please say also y for SERIAL_M32R_PLDSIO. config SERIAL_M32R_PLDSIO bool "M32R SIO I/F on a PLD" depends on SERIAL_M32R_SIO=y && (PLAT_OPSPUT || PLAT_USRV || PLAT_M32700UT) default n help Say Y here if you want to use the M32R serial controller on a PLD (Programmable Logic Device). If you use an M3T-M32700UT or an OPSPUT platform, please say Y. config SERIAL_TXX9 bool "TMPTX39XX/49XX SIO support" depends on HAS_TXX9_SERIAL select SERIAL_CORE default y config HAS_TXX9_SERIAL bool config SERIAL_TXX9_NR_UARTS int "Maximum number of TMPTX39XX/49XX SIO ports" depends on SERIAL_TXX9 default "6" config SERIAL_TXX9_CONSOLE bool "TMPTX39XX/49XX SIO Console support" depends on SERIAL_TXX9=y select SERIAL_CORE_CONSOLE config SERIAL_TXX9_STDSERIAL bool "TX39XX/49XX SIO act as standard serial" depends on !SERIAL_8250 && SERIAL_TXX9 config SERIAL_VR41XX tristate "NEC VR4100 series Serial Interface Unit support" depends on CPU_VR41XX select SERIAL_CORE help If you have a NEC VR4100 series processor and you want to use Serial Interface Unit(SIU) or Debug Serial Interface Unit(DSIU) (not include VR4111/VR4121 DSIU), say Y. Otherwise, say N. config SERIAL_VR41XX_CONSOLE bool "Enable NEC VR4100 series Serial Interface Unit console" depends on SERIAL_VR41XX=y select SERIAL_CORE_CONSOLE help If you have a NEC VR4100 series processor and you want to use a console on a serial port, say Y. Otherwise, say N. config SERIAL_JSM tristate "Digi International NEO PCI Support" depends on PCI select SERIAL_CORE help This is a driver for Digi International's Neo series of cards which provide multiple serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. This driver supports PCI boards only. If you have a card like this, say Y here, otherwise say N. To compile this driver as a module, choose M here: the module will be called jsm. config SERIAL_SGI_IOC4 tristate "SGI IOC4 controller serial support" depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC4 select SERIAL_CORE help If you have an SGI Altix with an IOC4 based Base IO card and wish to use the serial ports on this card, say Y. Otherwise, say N. config SERIAL_SGI_IOC3 tristate "SGI Altix IOC3 serial support" depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC3 select SERIAL_CORE help If you have an SGI Altix with an IOC3 serial card, say Y or M. Otherwise, say N. config SERIAL_MSM bool "MSM on-chip serial port support" depends on ARM && ARCH_MSM select SERIAL_CORE config SERIAL_MSM_CONSOLE bool "MSM serial console support" depends on SERIAL_MSM=y select SERIAL_CORE_CONSOLE config SERIAL_MSM_HS tristate "MSM UART High Speed: Serial Driver" depends on ARCH_MSM select SERIAL_CORE help If you have a machine based on MSM family of SoCs, you can enable its onboard high speed serial port by enabling this option. Choose M here to compile it as a module. The module will be called msm_serial_hs. config SERIAL_VT8500 bool "VIA VT8500 on-chip serial port support" depends on ARM && ARCH_VT8500 select SERIAL_CORE config SERIAL_VT8500_CONSOLE bool "VIA VT8500 serial console support" depends on SERIAL_VT8500=y select SERIAL_CORE_CONSOLE config SERIAL_NETX tristate "NetX serial port support" depends on ARM && ARCH_NETX select SERIAL_CORE help If you have a machine based on a Hilscher NetX SoC you can enable its onboard serial port by enabling this option. To compile this driver as a module, choose M here: the module will be called netx-serial. config SERIAL_NETX_CONSOLE bool "Console on NetX serial port" depends on SERIAL_NETX=y select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the Hilscher NetX SoC you can make it the console by answering Y to this option. config SERIAL_OF_PLATFORM tristate "Serial port on Open Firmware platform bus" depends on OF depends on SERIAL_8250 || SERIAL_OF_PLATFORM_NWPSERIAL help If you have a PowerPC based system that has serial ports on a platform specific bus, you should enable this option. Currently, only 8250 compatible ports are supported, but others can easily be added. config SERIAL_OMAP tristate "OMAP serial port support" depends on ARCH_OMAP2 || ARCH_OMAP3 || ARCH_OMAP4 select SERIAL_CORE help If you have a machine based on an Texas Instruments OMAP CPU you can enable its onboard serial ports by enabling this option. By enabling this option you take advantage of dma feature available with the omap-serial driver. DMA support can be enabled from platform data. config SERIAL_OMAP_CONSOLE bool "Console on OMAP serial port" depends on SERIAL_OMAP select SERIAL_CORE_CONSOLE help Select this option if you would like to use omap serial port as console. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyOx". (Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel at boot time.) config SERIAL_OF_PLATFORM_NWPSERIAL tristate "NWP serial port driver" depends on PPC_OF && PPC_DCR select SERIAL_OF_PLATFORM select SERIAL_CORE_CONSOLE select SERIAL_CORE help This driver supports the cell network processor nwp serial device. config SERIAL_OF_PLATFORM_NWPSERIAL_CONSOLE bool "Console on NWP serial port" depends on SERIAL_OF_PLATFORM_NWPSERIAL=y select SERIAL_CORE_CONSOLE help Support for Console on the NWP serial ports. config SERIAL_QE tristate "Freescale QUICC Engine serial port support" depends on QUICC_ENGINE select SERIAL_CORE select FW_LOADER default n help This driver supports the QE serial ports on Freescale embedded PowerPC that contain a QUICC Engine. config SERIAL_SC26XX tristate "SC2681/SC2692 serial port support" depends on SNI_RM select SERIAL_CORE help This is a driver for the onboard serial ports of older RM400 machines. config SERIAL_SC26XX_CONSOLE bool "Console on SC2681/SC2692 serial port" depends on SERIAL_SC26XX select SERIAL_CORE_CONSOLE help Support for Console on SC2681/SC2692 serial ports. config SERIAL_BFIN_SPORT tristate "Blackfin SPORT emulate UART" depends on BLACKFIN select SERIAL_CORE help Enable SPORT emulate UART on Blackfin series. To compile this driver as a module, choose M here: the module will be called bfin_sport_uart. config SERIAL_BFIN_SPORT_CONSOLE bool "Console on Blackfin sport emulated uart" depends on SERIAL_BFIN_SPORT=y select SERIAL_CORE_CONSOLE config SERIAL_BFIN_SPORT0_UART bool "Enable UART over SPORT0" depends on SERIAL_BFIN_SPORT && !(BF542 || BF544) help Enable UART over SPORT0 config SERIAL_BFIN_SPORT0_UART_CTSRTS bool "Enable UART over SPORT0 hardware flow control" depends on SERIAL_BFIN_SPORT0_UART help Enable hardware flow control in the driver. config SERIAL_BFIN_SPORT1_UART bool "Enable UART over SPORT1" depends on SERIAL_BFIN_SPORT help Enable UART over SPORT1 config SERIAL_BFIN_SPORT1_UART_CTSRTS bool "Enable UART over SPORT1 hardware flow control" depends on SERIAL_BFIN_SPORT1_UART help Enable hardware flow control in the driver. config SERIAL_BFIN_SPORT2_UART bool "Enable UART over SPORT2" depends on SERIAL_BFIN_SPORT && (BF54x || BF538 || BF539) help Enable UART over SPORT2 config SERIAL_BFIN_SPORT2_UART_CTSRTS bool "Enable UART over SPORT2 hardware flow control" depends on SERIAL_BFIN_SPORT2_UART help Enable hardware flow control in the driver. config SERIAL_BFIN_SPORT3_UART bool "Enable UART over SPORT3" depends on SERIAL_BFIN_SPORT && (BF54x || BF538 || BF539) help Enable UART over SPORT3 config SERIAL_BFIN_SPORT3_UART_CTSRTS bool "Enable UART over SPORT3 hardware flow control" depends on SERIAL_BFIN_SPORT3_UART help Enable hardware flow control in the driver. config SERIAL_TIMBERDALE tristate "Support for timberdale UART" select SERIAL_CORE ---help--- Add support for UART controller on timberdale. config SERIAL_BCM63XX tristate "bcm63xx serial port support" select SERIAL_CORE depends on BCM63XX help If you have a bcm63xx CPU, you can enable its onboard serial port by enabling this options. To compile this driver as a module, choose M here: the module will be called bcm963xx_uart. config SERIAL_BCM63XX_CONSOLE bool "Console on bcm63xx serial port" depends on SERIAL_BCM63XX=y select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the bcm63xx CPU you can make it the console by answering Y to this option. config SERIAL_GRLIB_GAISLER_APBUART tristate "GRLIB APBUART serial support" depends on OF && SPARC select SERIAL_CORE ---help--- Add support for the GRLIB APBUART serial port. config SERIAL_GRLIB_GAISLER_APBUART_CONSOLE bool "Console on GRLIB APBUART serial port" depends on SERIAL_GRLIB_GAISLER_APBUART=y select SERIAL_CORE_CONSOLE help Support for running a console on the GRLIB APBUART config SERIAL_ALTERA_JTAGUART tristate "Altera JTAG UART support" select SERIAL_CORE help This driver supports the Altera JTAG UART port. config SERIAL_ALTERA_JTAGUART_CONSOLE bool "Altera JTAG UART console support" depends on SERIAL_ALTERA_JTAGUART=y select SERIAL_CORE_CONSOLE help Enable a Altera JTAG UART port to be the system console. config SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS bool "Bypass output when no connection" depends on SERIAL_ALTERA_JTAGUART_CONSOLE select SERIAL_CORE_CONSOLE help Bypass console output and keep going even if there is no JTAG terminal connection with the host. config SERIAL_ALTERA_UART tristate "Altera UART support" select SERIAL_CORE help This driver supports the Altera softcore UART port. config SERIAL_ALTERA_UART_MAXPORTS int "Maximum number of Altera UART ports" depends on SERIAL_ALTERA_UART default 4 help This setting lets you define the maximum number of the Altera UART ports. The usual default varies from board to board, and this setting is a way of catering for that. config SERIAL_ALTERA_UART_BAUDRATE int "Default baudrate for Altera UART ports" depends on SERIAL_ALTERA_UART default 115200 help This setting lets you define what the default baudrate is for the Altera UART ports. The usual default varies from board to board, and this setting is a way of catering for that. config SERIAL_ALTERA_UART_CONSOLE bool "Altera UART console support" depends on SERIAL_ALTERA_UART=y select SERIAL_CORE_CONSOLE help Enable a Altera UART port to be the system console. config SERIAL_IFX6X60 tristate "SPI protocol driver for Infineon 6x60 modem (EXPERIMENTAL)" depends on GPIOLIB && SPI && EXPERIMENTAL help Support for the IFX6x60 modem devices on Intel MID platforms. config SERIAL_PCH_UART tristate "Intel EG20T PCH UART/OKI SEMICONDUCTOR ML7213 IOH" depends on PCI select SERIAL_CORE help This driver is for PCH(Platform controller Hub) UART of Intel EG20T which is an IOH(Input/Output Hub) for x86 embedded processor. Enabling PCH_DMA, this PCH UART works as DMA mode. This driver also can be used for OKI SEMICONDUCTOR ML7213 IOH(Input/ Output Hub) which is for IVI(In-Vehicle Infotainment) use. ML7213 is companion chip for Intel Atom E6xx series. ML7213 is completely compatible for Intel EG20T PCH. config SERIAL_MSM_SMD bool "Enable tty device interface for some SMD ports" default n depends on MSM_SMD help Enables userspace clients to read and write to some streaming SMD ports via tty device interface for MSM chipset. config SERIAL_MXS_AUART depends on ARCH_MXS tristate "MXS AUART support" select SERIAL_CORE help This driver supports the MXS Application UART (AUART) port. config SERIAL_MXS_AUART_CONSOLE bool "MXS AUART console support" depends on SERIAL_MXS_AUART=y select SERIAL_CORE_CONSOLE help Enable a MXS AUART port to be the system console. endmenu # # RTC class/drivers configuration # config RTC_LIB tristate menuconfig RTC_CLASS tristate "Real Time Clock" default n depends on !S390 select RTC_LIB help Generic RTC class support. If you say yes here, you will be allowed to plug one or more RTCs to your system. You will probably want to enable one or more of the interfaces below. This driver can also be built as a module. If so, the module will be called rtc-core. if RTC_CLASS config RTC_HCTOSYS bool "Set system time from RTC on startup and resume" depends on RTC_CLASS = y default y help If you say yes here, the system time (wall clock) will be set using the value read from a specified RTC device. This is useful to avoid unnecessary fsck runs at boot time, and to network better. config RTC_HCTOSYS_DEVICE string "RTC used to set the system time" depends on RTC_HCTOSYS = y default "rtc0" help The RTC device that will be used to (re)initialize the system clock, usually rtc0. Initialization is done when the system starts up, and when it resumes from a low power state. This device should record time in UTC, since the kernel won't do timezone correction. The driver for this RTC device must be loaded before late_initcall functions run, so it must usually be statically linked. This clock should be battery-backed, so that it reads the correct time when the system boots from a power-off state. Otherwise, your system will need an external clock source (like an NTP server). If the clock you specify here is not battery backed, it may still be useful to reinitialize system time when resuming from system sleep states. Do not specify an RTC here unless it stays powered during all this system's supported sleep states. config RTC_DEBUG bool "RTC debug support" depends on RTC_CLASS = y help Say yes here to enable debugging support in the RTC framework and individual RTC drivers. comment "RTC interfaces" config RTC_INTF_SYSFS boolean "/sys/class/rtc/rtcN (sysfs)" depends on SYSFS default RTC_CLASS help Say yes here if you want to use your RTCs using sysfs interfaces, /sys/class/rtc/rtc0 through /sys/.../rtcN. If unsure, say Y. config RTC_INTF_PROC boolean "/proc/driver/rtc (procfs for rtc0)" depends on PROC_FS default RTC_CLASS help Say yes here if you want to use your first RTC through the proc interface, /proc/driver/rtc. Other RTCs will not be available through that API. If unsure, say Y. config RTC_INTF_DEV boolean "/dev/rtcN (character devices)" default RTC_CLASS help Say yes here if you want to use your RTCs using the /dev interfaces, which "udev" sets up as /dev/rtc0 through /dev/rtcN. You may want to set up a symbolic link so one of these can be accessed as /dev/rtc, which is a name expected by "hwclock" and some other programs. Recent versions of "udev" are known to set up the symlink for you. If unsure, say Y. config RTC_INTF_DEV_UIE_EMUL bool "RTC UIE emulation on dev interface" depends on RTC_INTF_DEV help Provides an emulation for RTC_UIE if the underlying rtc chip driver does not expose RTC_UIE ioctls. Those requests generate once-per-second update interrupts, used for synchronization. The emulation code will read the time from the hardware clock several times per second, please enable this option only if you know that you really need it. config RTC_DRV_TEST tristate "Test driver/device" help If you say yes here you get support for the RTC test driver. It's a software RTC which can be used to test the RTC subsystem APIs. It gets the time from the system clock. You want this driver only if you are doing development on the RTC subsystem. Please read the source code for further details. This driver can also be built as a module. If so, the module will be called rtc-test. comment "I2C RTC drivers" depends on I2C if I2C config RTC_DRV_DS1307 tristate "Dallas/Maxim DS1307/37/38/39/40, ST M41T00, EPSON RX-8025" help If you say yes here you get support for various compatible RTC chips (often with battery backup) connected with I2C. This driver should handle DS1307, DS1337, DS1338, DS1339, DS1340, ST M41T00, EPSON RX-8025 and probably other chips. In some cases the RTC must already have been initialized (by manufacturing or a bootloader). The first seven registers on these chips hold an RTC, and other registers may add features such as NVRAM, a trickle charger for the RTC/NVRAM backup power, and alarms. NVRAM is visible in sysfs, but other chip features may not be available. This driver can also be built as a module. If so, the module will be called rtc-ds1307. config RTC_DRV_DS1374 tristate "Dallas/Maxim DS1374" depends on RTC_CLASS && I2C help If you say yes here you get support for Dallas Semiconductor DS1374 real-time clock chips. If an interrupt is associated with the device, the alarm functionality is supported. This driver can also be built as a module. If so, the module will be called rtc-ds1374. config RTC_DRV_DS1672 tristate "Dallas/Maxim DS1672" help If you say yes here you get support for the Dallas/Maxim DS1672 timekeeping chip. This driver can also be built as a module. If so, the module will be called rtc-ds1672. config RTC_DRV_DS3232 tristate "Dallas/Maxim DS3232" depends on RTC_CLASS && I2C help If you say yes here you get support for Dallas Semiconductor DS3232 real-time clock chips. If an interrupt is associated with the device, the alarm functionality is supported. This driver can also be built as a module. If so, the module will be called rtc-ds3232. config RTC_DRV_MAX6900 tristate "Maxim MAX6900" help If you say yes here you will get support for the Maxim MAX6900 I2C RTC chip. This driver can also be built as a module. If so, the module will be called rtc-max6900. config RTC_DRV_MAX8925 tristate "Maxim MAX8925" depends on MFD_MAX8925 help If you say yes here you will get support for the RTC of Maxim MAX8925 PMIC. This driver can also be built as a module. If so, the module will be called rtc-max8925. config RTC_DRV_MAX8998 tristate "Maxim MAX8998" depends on MFD_MAX8998 help If you say yes here you will get support for the RTC of Maxim MAX8998 PMIC. This driver can also be built as a module. If so, the module will be called rtc-max8998. config RTC_DRV_RS5C372 tristate "Ricoh R2025S/D, RS5C372A/B, RV5C386, RV5C387A" help If you say yes here you get support for the Ricoh R2025S/D, RS5C372A, RS5C372B, RV5C386, and RV5C387A RTC chips. This driver can also be built as a module. If so, the module will be called rtc-rs5c372. config RTC_DRV_ISL1208 tristate "Intersil ISL1208" help If you say yes here you get support for the Intersil ISL1208 RTC chip. This driver can also be built as a module. If so, the module will be called rtc-isl1208. config RTC_DRV_ISL12022 tristate "Intersil ISL12022" help If you say yes here you get support for the Intersil ISL12022 RTC chip. This driver can also be built as a module. If so, the module will be called rtc-isl12022. config RTC_DRV_X1205 tristate "Xicor/Intersil X1205" help If you say yes here you get support for the Xicor/Intersil X1205 RTC chip. This driver can also be built as a module. If so, the module will be called rtc-x1205. config RTC_DRV_PCF8563 tristate "Philips PCF8563/Epson RTC8564" help If you say yes here you get support for the Philips PCF8563 RTC chip. The Epson RTC8564 should work as well. This driver can also be built as a module. If so, the module will be called rtc-pcf8563. config RTC_DRV_PCF8583 tristate "Philips PCF8583" help If you say yes here you get support for the Philips PCF8583 RTC chip found on Acorn RiscPCs. This driver supports the platform specific method of retrieving the current year from the RTC's SRAM. It will work on other platforms with the same chip, but the year will probably have to be tweaked. This driver can also be built as a module. If so, the module will be called rtc-pcf8583. config RTC_DRV_M41T80 tristate "ST M41T62/65/M41T80/81/82/83/84/85/87" help If you say Y here you will get support for the ST M41T60 and M41T80 RTC chips series. Currently, the following chips are supported: M41T62, M41T65, M41T80, M41T81, M41T82, M41T83, M41ST84, M41ST85, and M41ST87. This driver can also be built as a module. If so, the module will be called rtc-m41t80. config RTC_DRV_M41T80_WDT bool "ST M41T65/M41T80 series RTC watchdog timer" depends on RTC_DRV_M41T80 help If you say Y here you will get support for the watchdog timer in the ST M41T60 and M41T80 RTC chips series. config RTC_DRV_BQ32K tristate "TI BQ32000" help If you say Y here you will get support for the TI BQ32000 I2C RTC chip. This driver can also be built as a module. If so, the module will be called rtc-bq32k. config RTC_DRV_DM355EVM tristate "TI DaVinci DM355 EVM RTC" depends on MFD_DM355EVM_MSP help Supports the RTC firmware in the MSP430 on the DM355 EVM. config RTC_DRV_TWL92330 boolean "TI TWL92330/Menelaus" depends on MENELAUS help If you say yes here you get support for the RTC on the TWL92330 "Menelaus" power management chip, used with OMAP2 platforms. The support is integrated with the rest of the Menelaus driver; it's not separate module. config RTC_DRV_TWL4030 tristate "TI TWL4030/TWL5030/TWL6030/TPS659x0" depends on RTC_CLASS && TWL4030_CORE help If you say yes here you get support for the RTC on the TWL4030/TWL5030/TWL6030 family chips, used mostly with OMAP3 platforms. This driver can also be built as a module. If so, the module will be called rtc-twl. config RTC_DRV_S35390A tristate "Seiko Instruments S-35390A" select BITREVERSE help If you say yes here you will get support for the Seiko Instruments S-35390A. This driver can also be built as a module. If so the module will be called rtc-s35390a. config RTC_DRV_FM3130 tristate "Ramtron FM3130" help If you say Y here you will get support for the Ramtron FM3130 RTC chips. Ramtron FM3130 is a chip with two separate devices inside, RTC clock and FRAM. This driver provides only RTC functionality. This driver can also be built as a module. If so the module will be called rtc-fm3130. config RTC_DRV_RX8581 tristate "Epson RX-8581" help If you say yes here you will get support for the Epson RX-8581. This driver can also be built as a module. If so the module will be called rtc-rx8581. config RTC_DRV_RX8025 tristate "Epson RX-8025SA/NB" help If you say yes here you get support for the Epson RX-8025SA/NB RTC chips. This driver can also be built as a module. If so, the module will be called rtc-rx8025. endif # I2C comment "SPI RTC drivers" if SPI_MASTER config RTC_DRV_M41T94 tristate "ST M41T94" help If you say yes here you will get support for the ST M41T94 SPI RTC chip. This driver can also be built as a module. If so, the module will be called rtc-m41t94. config RTC_DRV_DS1305 tristate "Dallas/Maxim DS1305/DS1306" help Select this driver to get support for the Dallas/Maxim DS1305 and DS1306 real time clock chips. These support a trickle charger, alarms, and NVRAM in addition to the clock. This driver can also be built as a module. If so, the module will be called rtc-ds1305. config RTC_DRV_DS1390 tristate "Dallas/Maxim DS1390/93/94" help If you say yes here you get support for the Dallas/Maxim DS1390/93/94 chips. This driver only supports the RTC feature, and not other chip features such as alarms and trickle charging. This driver can also be built as a module. If so, the module will be called rtc-ds1390. config RTC_DRV_MAX6902 tristate "Maxim MAX6902" help If you say yes here you will get support for the Maxim MAX6902 SPI RTC chip. This driver can also be built as a module. If so, the module will be called rtc-max6902. config RTC_DRV_R9701 tristate "Epson RTC-9701JE" help If you say yes here you will get support for the Epson RTC-9701JE SPI RTC chip. This driver can also be built as a module. If so, the module will be called rtc-r9701. config RTC_DRV_RS5C348 tristate "Ricoh RS5C348A/B" help If you say yes here you get support for the Ricoh RS5C348A and RS5C348B RTC chips. This driver can also be built as a module. If so, the module will be called rtc-rs5c348. config RTC_DRV_DS3234 tristate "Maxim/Dallas DS3234" help If you say yes here you get support for the Maxim/Dallas DS3234 SPI RTC chip. This driver can also be built as a module. If so, the module will be called rtc-ds3234. config RTC_DRV_PCF2123 tristate "NXP PCF2123" help If you say yes here you get support for the NXP PCF2123 RTC chip. This driver can also be built as a module. If so, the module will be called rtc-pcf2123. endif # SPI_MASTER comment "Platform RTC drivers" # this 'CMOS' RTC driver is arch dependent because # requires defining CMOS_READ/CMOS_WRITE, and a # global rtc_lock ... it's not yet just another platform_device. config RTC_DRV_CMOS tristate "PC-style 'CMOS'" depends on X86 || ALPHA || ARM || M32R || ATARI || PPC || MIPS || SPARC64 default y if X86 help Say "yes" here to get direct support for the real time clock found in every PC or ACPI-based system, and some other boards. Specifically the original MC146818, compatibles like those in PC south bridges, the DS12887 or M48T86, some multifunction or LPC bus chips, and so on. Your system will need to define the platform device used by this driver, otherwise it won't be accessible. This means you can safely enable this driver if you don't know whether or not your board has this kind of hardware. This driver can also be built as a module. If so, the module will be called rtc-cmos. config RTC_DRV_VRTC tristate "Virtual RTC for Moorestown platforms" depends on X86_MRST default y if X86_MRST help Say "yes" here to get direct support for the real time clock found on Moorestown platforms. The VRTC is a emulated RTC that derives its clock source from a real RTC in the PMIC. The MC146818 style programming interface is mostly conserved, but any updates are done via IPC calls to the system controller FW. config RTC_DRV_DS1216 tristate "Dallas DS1216" depends on SNI_RM help If you say yes here you get support for the Dallas DS1216 RTC chips. config RTC_DRV_DS1286 tristate "Dallas DS1286" help If you say yes here you get support for the Dallas DS1286 RTC chips. config RTC_DRV_DS1302 tristate "Dallas DS1302" depends on SH_SECUREEDGE5410 help If you say yes here you get support for the Dallas DS1302 RTC chips. config RTC_DRV_DS1511 tristate "Dallas DS1511" depends on RTC_CLASS help If you say yes here you get support for the Dallas DS1511 timekeeping/watchdog chip. This driver can also be built as a module. If so, the module will be called rtc-ds1511. config RTC_DRV_DS1553 tristate "Maxim/Dallas DS1553" help If you say yes here you get support for the Maxim/Dallas DS1553 timekeeping chip. This driver can also be built as a module. If so, the module will be called rtc-ds1553. config RTC_DRV_DS1742 tristate "Maxim/Dallas DS1742/1743" help If you say yes here you get support for the Maxim/Dallas DS1742/1743 timekeeping chip. This driver can also be built as a module. If so, the module will be called rtc-ds1742. config RTC_DRV_EFI tristate "EFI RTC" depends on IA64 help If you say yes here you will get support for the EFI Real Time Clock. This driver can also be built as a module. If so, the module will be called rtc-efi. config RTC_DRV_STK17TA8 tristate "Simtek STK17TA8" depends on RTC_CLASS help If you say yes here you get support for the Simtek STK17TA8 timekeeping chip. This driver can also be built as a module. If so, the module will be called rtc-stk17ta8. config RTC_DRV_M48T86 tristate "ST M48T86/Dallas DS12887" help If you say Y here you will get support for the ST M48T86 and Dallas DS12887 RTC chips. This driver can also be built as a module. If so, the module will be called rtc-m48t86. config RTC_DRV_M48T35 tristate "ST M48T35" help If you say Y here you will get support for the ST M48T35 RTC chip. This driver can also be built as a module, if so, the module will be called "rtc-m48t35". config RTC_DRV_M48T59 tristate "ST M48T59/M48T08/M48T02" help If you say Y here you will get support for the ST M48T59 RTC chip and compatible ST M48T08 and M48T02. These chips are usually found in Sun SPARC and UltraSPARC workstations. This driver can also be built as a module, if so, the module will be called "rtc-m48t59". config RTC_DRV_MSM6242 tristate "Oki MSM6242" help If you say yes here you get support for the Oki MSM6242 timekeeping chip. It is used in some Amiga models (e.g. A2000). This driver can also be built as a module. If so, the module will be called rtc-msm6242. config RTC_DRV_IMXDI tristate "Freescale IMX DryIce Real Time Clock" depends on ARCH_MX25 depends on RTC_CLASS help Support for Freescale IMX DryIce RTC This driver can also be built as a module, if so, the module will be called "rtc-imxdi". config RTC_MXC tristate "Freescale MXC Real Time Clock" depends on ARCH_MXC depends on RTC_CLASS help If you say yes here you get support for the Freescale MXC RTC module. This driver can also be built as a module, if so, the module will be called "rtc-mxc". config RTC_DRV_BQ4802 tristate "TI BQ4802" help If you say Y here you will get support for the TI BQ4802 RTC chip. This driver can also be built as a module. If so, the module will be called rtc-bq4802. config RTC_DRV_RP5C01 tristate "Ricoh RP5C01" help If you say yes here you get support for the Ricoh RP5C01 timekeeping chip. It is used in some Amiga models (e.g. A3000 and A4000). This driver can also be built as a module. If so, the module will be called rtc-rp5c01. config RTC_DRV_V3020 tristate "EM Microelectronic V3020" help If you say yes here you will get support for the EM Microelectronic v3020 RTC chip. This driver can also be built as a module. If so, the module will be called rtc-v3020. config RTC_DRV_WM831X tristate "Wolfson Microelectronics WM831x RTC" depends on MFD_WM831X help If you say yes here you will get support for the RTC subsystem of the Wolfson Microelectronics WM831X series PMICs. This driver can also be built as a module. If so, the module will be called "rtc-wm831x". config RTC_DRV_WM8350 tristate "Wolfson Microelectronics WM8350 RTC" depends on MFD_WM8350 help If you say yes here you will get support for the RTC subsystem of the Wolfson Microelectronics WM8350. This driver can also be built as a module. If so, the module will be called "rtc-wm8350". config RTC_DRV_PCF50633 depends on MFD_PCF50633 tristate "NXP PCF50633 RTC" help If you say yes here you get support for the RTC subsystem of the NXP PCF50633 used in embedded systems. config RTC_DRV_AB3100 tristate "ST-Ericsson AB3100 RTC" depends on AB3100_CORE default y if AB3100_CORE help Select this to enable the ST-Ericsson AB3100 Mixed Signal IC RTC support. This chip contains a battery- and capacitor-backed RTC. config RTC_DRV_AB8500 tristate "ST-Ericsson AB8500 RTC" depends on AB8500_CORE help Select this to enable the ST-Ericsson AB8500 power management IC RTC support. This chip contains a battery- and capacitor-backed RTC. config RTC_DRV_NUC900 tristate "NUC910/NUC920 RTC driver" depends on RTC_CLASS && ARCH_W90X900 help If you say yes here you get support for the RTC subsystem of the NUC910/NUC920 used in embedded systems. comment "on-CPU RTC drivers" config RTC_DRV_DAVINCI tristate "TI DaVinci RTC" depends on ARCH_DAVINCI_DM365 help If you say yes here you get support for the RTC on the DaVinci platforms (DM365). This driver can also be built as a module. If so, the module will be called rtc-davinci. config RTC_DRV_OMAP tristate "TI OMAP1" depends on ARCH_OMAP15XX || ARCH_OMAP16XX || ARCH_OMAP730 || ARCH_DAVINCI_DA8XX help Say "yes" here to support the real time clock on TI OMAP1 and DA8xx/OMAP-L13x chips. This driver can also be built as a module called rtc-omap. config HAVE_S3C_RTC bool help This will include RTC support for Samsung SoCs. If you want to include RTC support for any machine, kindly select this in the respective mach-XXXX/Kconfig file. config RTC_DRV_S3C tristate "Samsung S3C series SoC RTC" depends on ARCH_S3C2410 || ARCH_S3C64XX || HAVE_S3C_RTC help RTC (Realtime Clock) driver for the clock inbuilt into the Samsung S3C24XX series of SoCs. This can provide periodic interrupt rates from 1Hz to 64Hz for user programs, and wakeup from Alarm. The driver currently supports the common features on all the S3C24XX range, such as the S3C2410, S3C2412, S3C2413, S3C2440 and S3C2442. This driver can also be build as a module. If so, the module will be called rtc-s3c. config RTC_DRV_EP93XX tristate "Cirrus Logic EP93XX" depends on ARCH_EP93XX help If you say yes here you get support for the RTC embedded in the Cirrus Logic EP93XX processors. This driver can also be built as a module. If so, the module will be called rtc-ep93xx. config RTC_DRV_SA1100 tristate "SA11x0/PXA2xx" depends on ARCH_SA1100 || ARCH_PXA help If you say Y here you will get access to the real time clock built into your SA11x0 or PXA2xx CPU. To compile this driver as a module, choose M here: the module will be called rtc-sa1100. config RTC_DRV_SH tristate "SuperH On-Chip RTC" depends on RTC_CLASS && SUPERH && HAVE_CLK help Say Y here to enable support for the on-chip RTC found in most SuperH processors. To compile this driver as a module, choose M here: the module will be called rtc-sh. config RTC_DRV_VR41XX tristate "NEC VR41XX" depends on CPU_VR41XX help If you say Y here you will get access to the real time clock built into your NEC VR41XX CPU. To compile this driver as a module, choose M here: the module will be called rtc-vr41xx. config RTC_DRV_PL030 tristate "ARM AMBA PL030 RTC" depends on ARM_AMBA help If you say Y here you will get access to ARM AMBA PrimeCell PL030 RTC found on certain ARM SOCs. To compile this driver as a module, choose M here: the module will be called rtc-pl030. config RTC_DRV_PL031 tristate "ARM AMBA PL031 RTC" depends on ARM_AMBA help If you say Y here you will get access to ARM AMBA PrimeCell PL031 RTC found on certain ARM SOCs. To compile this driver as a module, choose M here: the module will be called rtc-pl031. config RTC_DRV_AT32AP700X tristate "AT32AP700X series RTC" depends on PLATFORM_AT32AP help Driver for the internal RTC (Realtime Clock) on Atmel AVR32 AT32AP700x family processors. config RTC_DRV_AT91RM9200 tristate "AT91RM9200 or some AT91SAM9 RTC" depends on ARCH_AT91RM9200 || ARCH_AT91SAM9RL || ARCH_AT91SAM9G45 help Driver for the internal RTC (Realtime Clock) module found on Atmel AT91RM9200's and some AT91SAM9 chips. On AT91SAM9 chips this is powered by the backup power supply. config RTC_DRV_AT91SAM9 tristate "AT91SAM9x/AT91CAP9 RTT as RTC" depends on ARCH_AT91 && !(ARCH_AT91RM9200 || ARCH_AT91X40) help RTC driver for the Atmel AT91SAM9x and AT91CAP9 internal RTT (Real Time Timer). These timers are powered by the backup power supply (such as a small coin cell battery), but do not need to be used as RTCs. (On AT91SAM9rl and AT91SAM9G45 chips you probably want to use the dedicated RTC module and leave the RTT available for other uses.) config RTC_DRV_AT91SAM9_RTT int range 0 1 default 0 prompt "RTT module Number" if ARCH_AT91SAM9263 depends on RTC_DRV_AT91SAM9 help More than one RTT module is available. You can choose which one will be used as an RTC. The default of zero is normally OK to use, though some systems use that for non-RTC purposes. config RTC_DRV_AT91SAM9_GPBR int range 0 3 if !ARCH_AT91SAM9263 range 0 15 if ARCH_AT91SAM9263 default 0 prompt "Backup Register Number" depends on RTC_DRV_AT91SAM9 help The RTC driver needs to use one of the General Purpose Backup Registers (GPBRs) as well as the RTT. You can choose which one will be used. The default of zero is normally OK to use, but on some systems other software needs to use that register. config RTC_DRV_AU1XXX tristate "Au1xxx Counter0 RTC support" depends on MIPS_ALCHEMY help This is a driver for the Au1xxx on-chip Counter0 (Time-Of-Year counter) to be used as a RTC. This driver can also be built as a module. If so, the module will be called rtc-au1xxx. config RTC_DRV_BFIN tristate "Blackfin On-Chip RTC" depends on BLACKFIN && !BF561 help If you say yes here you will get support for the Blackfin On-Chip Real Time Clock. This driver can also be built as a module. If so, the module will be called rtc-bfin. config RTC_DRV_RS5C313 tristate "Ricoh RS5C313" depends on SH_LANDISK help If you say yes here you get support for the Ricoh RS5C313 RTC chips. config RTC_DRV_GENERIC tristate "Generic RTC support" # Please consider writing a new RTC driver instead of using the generic # RTC abstraction depends on PARISC || M68K || PPC || SUPERH32 help Say Y or M here to enable RTC support on systems using the generic RTC abstraction. If you do not know what you are doing, you should just say Y. config RTC_DRV_PXA tristate "PXA27x/PXA3xx" depends on ARCH_PXA help If you say Y here you will get access to the real time clock built into your PXA27x or PXA3xx CPU. This RTC driver uses PXA RTC registers available since pxa27x series (RDxR, RYxR) instead of legacy RCNR, RTAR. config RTC_DRV_SUN4V bool "SUN4V Hypervisor RTC" depends on SPARC64 help If you say Y here you will get support for the Hypervisor based RTC on SUN4V systems. config RTC_DRV_STARFIRE bool "Starfire RTC" depends on SPARC64 help If you say Y here you will get support for the RTC found on Starfire systems. config RTC_DRV_TX4939 tristate "TX4939 SoC" depends on SOC_TX4939 help Driver for the internal RTC (Realtime Clock) module found on Toshiba TX4939 SoC. config RTC_DRV_MV tristate "Marvell SoC RTC" depends on ARCH_KIRKWOOD || ARCH_DOVE help If you say yes here you will get support for the in-chip RTC that can be found in some of Marvell's SoC devices, such as the Kirkwood 88F6281 and 88F6192. This driver can also be built as a module. If so, the module will be called rtc-mv. config RTC_DRV_PS3 tristate "PS3 RTC" depends on PPC_PS3 help If you say yes here you will get support for the RTC on PS3. This driver can also be built as a module. If so, the module will be called rtc-ps3. config RTC_DRV_COH901331 tristate "ST-Ericsson COH 901 331 RTC" depends on ARCH_U300 help If you say Y here you will get access to ST-Ericsson COH 901 331 RTC clock found in some ST-Ericsson Mobile Platforms. This driver can also be built as a module. If so, the module will be called "rtc-coh901331". config RTC_DRV_STMP tristate "Freescale STMP3xxx RTC" depends on ARCH_STMP3XXX help If you say yes here you will get support for the onboard STMP3xxx RTC. This driver can also be built as a module. If so, the module will be called rtc-stmp3xxx. config RTC_DRV_PCAP tristate "PCAP RTC" depends on EZX_PCAP help If you say Y here you will get support for the RTC found on the PCAP2 ASIC used on some Motorola phones. config RTC_DRV_MC13XXX depends on MFD_MC13XXX tristate "Freescale MC13xxx RTC" help This enables support for the RTCs found on Freescale's PMICs MC13783 and MC13892. config RTC_DRV_MPC5121 tristate "Freescale MPC5121 built-in RTC" depends on PPC_MPC512x && RTC_CLASS help If you say yes here you will get support for the built-in RTC MPC5121. This driver can also be built as a module. If so, the module will be called rtc-mpc5121. config RTC_DRV_JZ4740 tristate "Ingenic JZ4740 SoC" depends on RTC_CLASS depends on MACH_JZ4740 help If you say yes here you get support for the Ingenic JZ4740 SoC RTC controller. This driver can also be buillt as a module. If so, the module will be called rtc-jz4740. config RTC_DRV_LPC32XX depends on ARCH_LPC32XX tristate "NXP LPC32XX RTC" help This enables support for the NXP RTC in the LPC32XX This driver can also be buillt as a module. If so, the module will be called rtc-lpc32xx. config RTC_DRV_TEGRA tristate "NVIDIA Tegra Internal RTC driver" depends on RTC_CLASS && ARCH_TEGRA help If you say yes here you get support for the Tegra 200 series internal RTC module. This drive can also be built as a module. If so, the module will be called rtc-tegra. endif # RTC_CLASS # # Multimedia device configuration # menuconfig MEDIA_SUPPORT tristate "Multimedia support" depends on HAS_IOMEM help If you want to use Video for Linux, DVB for Linux, or DAB adapters, enable this option and other options below. if MEDIA_SUPPORT comment "Multimedia core support" # # Media controller # config MEDIA_CONTROLLER bool "Media Controller API (EXPERIMENTAL)" depends on EXPERIMENTAL ---help--- Enable the media controller API used to query media devices internal topology and configure it dynamically. This API is mostly used by camera interfaces in embedded platforms. # # V4L core and enabled API's # config VIDEO_DEV tristate "Video For Linux" ---help--- V4L core support for video capture and overlay devices, webcams and AM/FM radio cards. This kernel includes support for the new Video for Linux Two API, (V4L2). Additional info and docs are available on the web at Documentation for V4L2 is also available on the web at . To compile this driver as a module, choose M here: the module will be called videodev. config VIDEO_V4L2_COMMON tristate depends on (I2C || I2C=n) && VIDEO_DEV default (I2C || I2C=n) && VIDEO_DEV config VIDEO_V4L2_SUBDEV_API bool "V4L2 sub-device userspace API (EXPERIMENTAL)" depends on VIDEO_DEV && MEDIA_CONTROLLER && EXPERIMENTAL ---help--- Enables the V4L2 sub-device pad-level userspace API used to configure video format, size and frame rate between hardware blocks. This API is mostly used by camera interfaces in embedded platforms. # # DVB Core # config DVB_CORE tristate "DVB for Linux" depends on NET && INET select CRC32 help DVB core utility functions for device handling, software fallbacks etc. Enable this if you own a DVB/ATSC adapter and want to use it or if you compile Linux for a digital SetTopBox. Say Y when you have a DVB or an ATSC card and want to use it. API specs and user tools are available from . Please report problems regarding this support to the LinuxDVB mailing list. If unsure say N. config VIDEO_MEDIA tristate default (DVB_CORE && (VIDEO_DEV = n)) || (VIDEO_DEV && (DVB_CORE = n)) || (DVB_CORE && VIDEO_DEV) comment "Multimedia drivers" source "drivers/media/common/Kconfig" source "drivers/media/rc/Kconfig" # # Tuner drivers for DVB and V4L # source "drivers/media/common/tuners/Kconfig" # # Video/Radio/Hybrid adapters # source "drivers/media/video/Kconfig" source "drivers/media/radio/Kconfig" # # DVB adapters # source "drivers/media/dvb/Kconfig" endif # MEDIA_SUPPORT config DVB_FIREDTV tristate "FireDTV and FloppyDTV" depends on DVB_CORE && FIREWIRE help Support for DVB receivers from Digital Everywhere which are connected via IEEE 1394 (FireWire). These devices don't have an MPEG decoder built in, so you need an external software decoder to watch TV. To compile this driver as a module, say M here: the module will be called firedtv. if DVB_FIREDTV config DVB_FIREDTV_INPUT def_bool INPUT = y || (INPUT = m && DVB_FIREDTV = m) endif # DVB_FIREDTV config DVB_TTUSB_DEC tristate "Technotrend/Hauppauge USB DEC devices" depends on DVB_CORE && USB && INPUT && PCI select CRC32 help Support for external USB adapters designed by Technotrend and produced by Hauppauge, shipped under the brand name 'DEC2000-t' and 'DEC3000-s'. Even if these devices have a MPEG decoder built in, they transmit only compressed MPEG data over the USB bus, so you need an external software decoder to watch TV on your computer. This driver needs external firmware. Please use the commands "/Documentation/dvb/get_dvb_firmware dec2000t", "/Documentation/dvb/get_dvb_firmware dec2540t", "/Documentation/dvb/get_dvb_firmware dec3000s", download/extract them, and then copy them to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). Say Y if you own such a device and want to use it. # # DVB device configuration # config DVB_MAX_ADAPTERS int "maximum number of DVB/ATSC adapters" depends on DVB_CORE default 8 range 1 255 help Maximum number of DVB/ATSC adapters. Increasing this number increases the memory consumption of the DVB subsystem even if a much lower number of DVB/ATSC adapters is present. Only values in the range 4-32 are tested. If you are unsure about this, use the default value 8 config DVB_DYNAMIC_MINORS bool "Dynamic DVB minor allocation" depends on DVB_CORE default n help If you say Y here, the DVB subsystem will use dynamic minor allocation for any device that uses the DVB major number. This means that you can have more than 4 of a single type of device (like demuxes and frontends) per adapter, but udev will be required to manage the device nodes. If you are unsure about this, say N here. menuconfig DVB_CAPTURE_DRIVERS bool "DVB/ATSC adapters" depends on DVB_CORE default y ---help--- Say Y to select Digital TV adapters if DVB_CAPTURE_DRIVERS && DVB_CORE comment "Supported SAA7146 based PCI Adapters" depends on DVB_CORE && PCI && I2C source "drivers/media/dvb/ttpci/Kconfig" comment "Supported USB Adapters" depends on DVB_CORE && USB && I2C source "drivers/media/dvb/dvb-usb/Kconfig" source "drivers/media/dvb/ttusb-budget/Kconfig" source "drivers/media/dvb/ttusb-dec/Kconfig" source "drivers/media/dvb/siano/Kconfig" comment "Supported FlexCopII (B2C2) Adapters" depends on DVB_CORE && (PCI || USB) && I2C source "drivers/media/dvb/b2c2/Kconfig" comment "Supported BT878 Adapters" depends on DVB_CORE && PCI && I2C source "drivers/media/dvb/bt8xx/Kconfig" comment "Supported Pluto2 Adapters" depends on DVB_CORE && PCI && I2C source "drivers/media/dvb/pluto2/Kconfig" comment "Supported SDMC DM1105 Adapters" depends on DVB_CORE && PCI && I2C source "drivers/media/dvb/dm1105/Kconfig" comment "Supported FireWire (IEEE 1394) Adapters" depends on DVB_CORE && FIREWIRE source "drivers/media/dvb/firewire/Kconfig" comment "Supported Earthsoft PT1 Adapters" depends on DVB_CORE && PCI && I2C source "drivers/media/dvb/pt1/Kconfig" comment "Supported Mantis Adapters" depends on DVB_CORE && PCI && I2C source "drivers/media/dvb/mantis/Kconfig" comment "Supported nGene Adapters" depends on DVB_CORE && PCI && I2C source "drivers/media/dvb/ngene/Kconfig" comment "Supported DVB Frontends" depends on DVB_CORE source "drivers/media/dvb/frontends/Kconfig" endif # DVB_CAPTURE_DRIVERS config DVB_PT1 tristate "PT1 cards" depends on DVB_CORE && PCI && I2C help Support for Earthsoft PT1 PCI cards. Since these cards have no MPEG decoder onboard, they transmit only compressed MPEG data over the PCI bus, so you need an external software decoder to watch TV on your computer. Say Y or M if you own such a device and want to use it. config DVB_PLUTO2 tristate "Pluto2 cards" depends on DVB_CORE && PCI && I2C select I2C_ALGOBIT select DVB_TDA1004X help Support for PCI cards based on the Pluto2 FPGA like the Satelco Easywatch Mobile Terrestrial DVB-T Receiver. Since these cards have no MPEG decoder onboard, they transmit only compressed MPEG data over the PCI bus, so you need an external software decoder to watch TV on your computer. Say Y or M if you own such a device and want to use it. config DVB_BT8XX tristate "BT8xx based PCI cards" depends on DVB_CORE && PCI && I2C && VIDEO_BT848 select DVB_MT352 if !DVB_FE_CUSTOMISE select DVB_SP887X if !DVB_FE_CUSTOMISE select DVB_NXT6000 if !DVB_FE_CUSTOMISE select DVB_CX24110 if !DVB_FE_CUSTOMISE select DVB_OR51211 if !DVB_FE_CUSTOMISE select DVB_LGDT330X if !DVB_FE_CUSTOMISE select DVB_ZL10353 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMISE help Support for PCI cards based on the Bt8xx PCI bridge. Examples are the Nebula cards, the Pinnacle PCTV cards, the Twinhan DST cards, the pcHDTV HD2000 cards, the DViCO FusionHDTV Lite cards, and some AVerMedia cards. Since these cards have no MPEG decoder onboard, they transmit only compressed MPEG data over the PCI bus, so you need an external software decoder to watch TV on your computer. Say Y if you own such a device and want to use it. config DVB_USB tristate "Support for various USB DVB devices" depends on DVB_CORE && USB && I2C && RC_CORE help By enabling this you will be able to choose the various supported USB1.1 and USB2.0 DVB devices. Almost every USB device needs a firmware, please look into . For a complete list of supported USB devices see the LinuxTV DVB Wiki: Say Y if you own a USB DVB device. config DVB_USB_DEBUG bool "Enable extended debug support for all DVB-USB devices" depends on DVB_USB help Say Y if you want to enable debugging. See modinfo dvb-usb (and the appropriate drivers) for debug levels. config DVB_USB_A800 tristate "AVerMedia AverTV DVB-T USB 2.0 (A800)" depends on DVB_USB select DVB_DIB3000MC select DVB_PLL if !DVB_FE_CUSTOMISE select MEDIA_TUNER_MT2060 if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the AVerMedia AverTV DVB-T USB 2.0 (A800) receiver. config DVB_USB_DIBUSB_MB tristate "DiBcom USB DVB-T devices (based on the DiB3000M-B) (see help for device list)" depends on DVB_USB select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_DIB3000MB select MEDIA_TUNER_MT2060 if !MEDIA_TUNER_CUSTOMISE help Support for USB 1.1 and 2.0 DVB-T receivers based on reference designs made by DiBcom () equipped with a DiB3000M-B demodulator. For an up-to-date list of devices supported by this driver, have a look on the Linux-DVB Wiki at www.linuxtv.org. Say Y if you own such a device and want to use it. You should build it as a module. config DVB_USB_DIBUSB_MB_FAULTY bool "Support faulty USB IDs" depends on DVB_USB_DIBUSB_MB help Support for faulty USB IDs due to an invalid EEPROM on some Artec devices. config DVB_USB_DIBUSB_MC tristate "DiBcom USB DVB-T devices (based on the DiB3000M-C/P) (see help for device list)" depends on DVB_USB select DVB_DIB3000MC select MEDIA_TUNER_MT2060 if !MEDIA_TUNER_CUSTOMISE help Support for USB2.0 DVB-T receivers based on reference designs made by DiBcom () equipped with a DiB3000M-C/P demodulator. For an up-to-date list of devices supported by this driver, have a look on the Linux-DVB Wiki at www.linuxtv.org. Say Y if you own such a device and want to use it. You should build it as a module. config DVB_USB_DIB0700 tristate "DiBcom DiB0700 USB DVB devices (see help for supported devices)" depends on DVB_USB select DVB_DIB7000P if !DVB_FE_CUSTOMISE select DVB_DIB7000M if !DVB_FE_CUSTOMISE select DVB_DIB8000 if !DVB_FE_CUSTOMISE select DVB_DIB3000MC if !DVB_FE_CUSTOMISE select DVB_S5H1411 if !DVB_FE_CUSTOMISE select DVB_LGDT3305 if !DVB_FE_CUSTOMISE select DVB_TUNER_DIB0070 if !DVB_FE_CUSTOMISE select DVB_TUNER_DIB0090 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_MT2060 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MT2266 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_XC2028 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_XC5000 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MXL5007T if !MEDIA_TUNER_CUSTOMISE help Support for USB2.0/1.1 DVB receivers based on the DiB0700 USB bridge. The USB bridge is also present in devices having the DiB7700 DVB-T-USB silicon. This chip can be found in devices offered by Hauppauge, Avermedia and other big and small companies. For an up-to-date list of devices supported by this driver, have a look on the LinuxTV Wiki at www.linuxtv.org. Say Y if you own such a device and want to use it. You should build it as a module. config DVB_USB_UMT_010 tristate "HanfTek UMT-010 DVB-T USB2.0 support" depends on DVB_USB select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_DIB3000MC select MEDIA_TUNER_MT2060 if !MEDIA_TUNER_CUSTOMISE select DVB_MT352 if !DVB_FE_CUSTOMISE help Say Y here to support the HanfTek UMT-010 USB2.0 stick-sized DVB-T receiver. config DVB_USB_CXUSB tristate "Conexant USB2.0 hybrid reference design support" depends on DVB_USB select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_CX22702 if !DVB_FE_CUSTOMISE select DVB_LGDT330X if !DVB_FE_CUSTOMISE select DVB_MT352 if !DVB_FE_CUSTOMISE select DVB_ZL10353 if !DVB_FE_CUSTOMISE select DVB_DIB7000P if !DVB_FE_CUSTOMISE select DVB_TUNER_DIB0070 if !DVB_FE_CUSTOMISE select DVB_ATBM8830 if !DVB_FE_CUSTOMISE select DVB_LGS8GXX if !DVB_FE_CUSTOMISE select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_XC2028 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MXL5005S if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MAX2165 if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the Conexant USB2.0 hybrid reference design. Currently, only DVB and ATSC modes are supported, analog mode shall be added in the future. Devices that require this module: Medion MD95700 hybrid USB2.0 device. DViCO FusionHDTV (Bluebird) USB2.0 devices config DVB_USB_M920X tristate "Uli m920x DVB-T USB2.0 support" depends on DVB_USB select DVB_MT352 if !DVB_FE_CUSTOMISE select DVB_TDA1004X if !DVB_FE_CUSTOMISE select MEDIA_TUNER_QT1010 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA827X if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the MSI Mega Sky 580 USB2.0 DVB-T receiver. Currently, only devices with a product id of "DTV USB MINI" (in cold state) are supported. Firmware required. config DVB_USB_GL861 tristate "Genesys Logic GL861 USB2.0 support" depends on DVB_USB select DVB_ZL10353 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_QT1010 if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the MSI Megasky 580 (55801) DVB-T USB2.0 receiver with USB ID 0db0:5581. config DVB_USB_AU6610 tristate "Alcor Micro AU6610 USB2.0 support" depends on DVB_USB select DVB_ZL10353 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_QT1010 if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the Sigmatek DVB-110 DVB-T USB2.0 receiver. config DVB_USB_DIGITV tristate "Nebula Electronics uDigiTV DVB-T USB2.0 support" depends on DVB_USB select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_NXT6000 if !DVB_FE_CUSTOMISE select DVB_MT352 if !DVB_FE_CUSTOMISE help Say Y here to support the Nebula Electronics uDigitV USB2.0 DVB-T receiver. config DVB_USB_VP7045 tristate "TwinhanDTV Alpha/MagicBoxII, DNTV tinyUSB2, Beetle USB2.0 support" depends on DVB_USB help Say Y here to support the TwinhanDTV Alpha (stick) (VP-7045), TwinhanDTV MagicBox II (VP-7046), DigitalNow TinyUSB 2 DVB-t, DigitalRise USB 2.0 Ter (Beetle) and TYPHOON DVB-T USB DRIVE DVB-T USB2.0 receivers. config DVB_USB_VP702X tristate "TwinhanDTV StarBox and clones DVB-S USB2.0 support" depends on DVB_USB help Say Y here to support the TwinhanDTV StarBox, DigitalRise USB Starbox and TYPHOON DVB-S USB 2.0 BOX DVB-S USB2.0 receivers. config DVB_USB_GP8PSK tristate "GENPIX 8PSK->USB module support" depends on DVB_USB help Say Y here to support the GENPIX 8psk module DVB-S USB2.0 receivers. config DVB_USB_NOVA_T_USB2 tristate "Hauppauge WinTV-NOVA-T usb2 DVB-T USB2.0 support" depends on DVB_USB select DVB_DIB3000MC select DVB_PLL if !DVB_FE_CUSTOMISE select MEDIA_TUNER_MT2060 if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the Hauppauge WinTV-NOVA-T usb2 DVB-T USB2.0 receiver. config DVB_USB_TTUSB2 tristate "Pinnacle 400e DVB-S USB2.0 support" depends on DVB_USB select DVB_TDA10086 if !DVB_FE_CUSTOMISE select DVB_LNBP21 if !DVB_FE_CUSTOMISE select DVB_TDA826X if !DVB_FE_CUSTOMISE help Say Y here to support the Pinnacle 400e DVB-S USB2.0 receiver. The firmware protocol used by this module is similar to the one used by the old ttusb-driver - that's why the module is called dvb-usb-ttusb2. config DVB_USB_DTT200U tristate "WideView WT-200U and WT-220U (pen) DVB-T USB2.0 support (Yakumo/Hama/Typhoon/Yuan)" depends on DVB_USB help Say Y here to support the WideView/Yakumo/Hama/Typhoon/Yuan DVB-T USB2.0 receiver. The receivers are also known as DTT200U (Yakumo) and UB300 (Yuan). The WT-220U and its clones are pen-sized. config DVB_USB_OPERA1 tristate "Opera1 DVB-S USB2.0 receiver" depends on DVB_USB select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_PLL if !DVB_FE_CUSTOMISE help Say Y here to support the Opera DVB-S USB2.0 receiver. config DVB_USB_AF9005 tristate "Afatech AF9005 DVB-T USB1.1 support" depends on DVB_USB && EXPERIMENTAL select MEDIA_TUNER_MT2060 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_QT1010 if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the Afatech AF9005 based DVB-T USB1.1 receiver and the TerraTec Cinergy T USB XE (Rev.1) config DVB_USB_AF9005_REMOTE tristate "Afatech AF9005 default remote control support" depends on DVB_USB_AF9005 help Say Y here to support the default remote control decoding for the Afatech AF9005 based receiver. config DVB_USB_DW2102 tristate "DvbWorld & TeVii DVB-S/S2 USB2.0 support" depends on DVB_USB select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_STV0288 if !DVB_FE_CUSTOMISE select DVB_STB6000 if !DVB_FE_CUSTOMISE select DVB_CX24116 if !DVB_FE_CUSTOMISE select DVB_SI21XX if !DVB_FE_CUSTOMISE select DVB_TDA10023 if !DVB_FE_CUSTOMISE select DVB_MT312 if !DVB_FE_CUSTOMISE select DVB_ZL10039 if !DVB_FE_CUSTOMISE select DVB_DS3000 if !DVB_FE_CUSTOMISE select DVB_STB6100 if !DVB_FE_CUSTOMISE select DVB_STV6110 if !DVB_FE_CUSTOMISE select DVB_STV0900 if !DVB_FE_CUSTOMISE help Say Y here to support the DvbWorld, TeVii, Prof DVB-S/S2 USB2.0 receivers. config DVB_USB_CINERGY_T2 tristate "Terratec CinergyT2/qanu USB 2.0 DVB-T receiver" depends on DVB_USB help Support for "TerraTec CinergyT2" USB2.0 Highspeed DVB Receivers Say Y if you own such a device and want to use it. config DVB_USB_ANYSEE tristate "Anysee DVB-T/C USB2.0 support" depends on DVB_USB select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_MT352 if !DVB_FE_CUSTOMISE select DVB_ZL10353 if !DVB_FE_CUSTOMISE select DVB_TDA10023 if !DVB_FE_CUSTOMISE help Say Y here to support the Anysee E30, Anysee E30 Plus or Anysee E30 C Plus DVB USB2.0 receiver. config DVB_USB_DTV5100 tristate "AME DTV-5100 USB2.0 DVB-T support" depends on DVB_USB select DVB_ZL10353 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_QT1010 if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the AME DTV-5100 USB2.0 DVB-T receiver. config DVB_USB_AF9015 tristate "Afatech AF9015 DVB-T USB2.0 support" depends on DVB_USB select DVB_AF9013 select DVB_PLL if !DVB_FE_CUSTOMISE select MEDIA_TUNER_MT2060 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_QT1010 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA18271 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MXL5005S if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA18218 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MXL5007T if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the Afatech AF9015 based DVB-T USB2.0 receiver config DVB_USB_CE6230 tristate "Intel CE6230 DVB-T USB2.0 support" depends on DVB_USB && EXPERIMENTAL select DVB_ZL10353 select MEDIA_TUNER_MXL5005S if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the Intel CE6230 DVB-T USB2.0 receiver config DVB_USB_FRIIO tristate "Friio ISDB-T USB2.0 Receiver support" depends on DVB_USB help Say Y here to support the Japanese DTV receiver Friio. config DVB_USB_EC168 tristate "E3C EC168 DVB-T USB2.0 support" depends on DVB_USB && EXPERIMENTAL select DVB_EC100 select MEDIA_TUNER_MXL5005S if !MEDIA_TUNER_CUSTOMISE help Say Y here to support the E3C EC168 DVB-T USB2.0 receiver. config DVB_USB_AZ6027 tristate "Azurewave DVB-S/S2 USB2.0 AZ6027 support" depends on DVB_USB select DVB_STB0899 if !DVB_FE_CUSTOMISE select DVB_STB6100 if !DVB_FE_CUSTOMISE help Say Y here to support the AZ6027 device config DVB_USB_LME2510 tristate "LME DM04/QQBOX DVB-S USB2.0 support" depends on DVB_USB select DVB_TDA10086 if !DVB_FE_CUSTOMISE select DVB_TDA826X if !DVB_FE_CUSTOMISE select DVB_STV0288 if !DVB_FE_CUSTOMISE select DVB_IX2505V if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_PLL if !DVB_FE_CUSTOMISE help Say Y here to support the LME DM04/QQBOX DVB-S USB2.0 . config DVB_USB_TECHNISAT_USB2 tristate "Technisat DVB-S/S2 USB2.0 support" depends on DVB_USB select DVB_STV090x if !DVB_FE_CUSTOMISE select DVB_STV6110x if !DVB_FE_CUSTOMISE help Say Y here to support the Technisat USB2 DVB-S/S2 device config TTPCI_EEPROM tristate depends on I2C default n config DVB_AV7110 tristate "AV7110 cards" depends on DVB_CORE && PCI && I2C select TTPCI_EEPROM select VIDEO_SAA7146_VV depends on VIDEO_DEV # dependencies of VIDEO_SAA7146_VV select DVB_VES1820 if !DVB_FE_CUSTOMISE select DVB_VES1X93 if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_TDA8083 if !DVB_FE_CUSTOMISE select DVB_SP8870 if !DVB_FE_CUSTOMISE select DVB_STV0297 if !DVB_FE_CUSTOMISE select DVB_L64781 if !DVB_FE_CUSTOMISE select DVB_LNBP21 if !DVB_FE_CUSTOMISE help Support for SAA7146 and AV7110 based DVB cards as produced by Fujitsu-Siemens, Technotrend, Hauppauge and others. This driver only supports the fullfeatured cards with onboard MPEG2 decoder. This driver needs an external firmware. Please use the script "/Documentation/dvb/get_dvb_firmware av7110" to download/extract it, and then copy it to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). Alternatively, you can download the file and use the kernel's EXTRA_FIRMWARE configuration option to build it into your kernel image by adding the filename to the EXTRA_FIRMWARE configuration option string. Say Y if you own such a card and want to use it. config DVB_AV7110_OSD bool "AV7110 OSD support" depends on DVB_AV7110 default y if DVB_AV7110=y || DVB_AV7110=m help The AV7110 firmware provides some code to generate an OnScreenDisplay on the video output. This is kind of nonstandard and not guaranteed to be maintained. Anyway, some popular DVB software like VDR uses this OSD to render its menus, so say Y if you want to use this software. All other people say N. config DVB_BUDGET_CORE tristate "SAA7146 DVB cards (aka Budget, Nova-PCI)" depends on DVB_CORE && PCI && I2C select VIDEO_SAA7146 select TTPCI_EEPROM help Support for simple SAA7146 based DVB cards (so called Budget- or Nova-PCI cards) without onboard MPEG2 decoder. config DVB_BUDGET tristate "Budget cards" depends on DVB_BUDGET_CORE && I2C select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_VES1X93 if !DVB_FE_CUSTOMISE select DVB_VES1820 if !DVB_FE_CUSTOMISE select DVB_L64781 if !DVB_FE_CUSTOMISE select DVB_TDA8083 if !DVB_FE_CUSTOMISE select DVB_S5H1420 if !DVB_FE_CUSTOMISE select DVB_TDA10086 if !DVB_FE_CUSTOMISE select DVB_TDA826X if !DVB_FE_CUSTOMISE select DVB_LNBP21 if !DVB_FE_CUSTOMISE select DVB_TDA1004X if !DVB_FE_CUSTOMISE select DVB_ISL6423 if !DVB_FE_CUSTOMISE select DVB_STV090x if !DVB_FE_CUSTOMISE select DVB_STV6110x if !DVB_FE_CUSTOMISE help Support for simple SAA7146 based DVB cards (so called Budget- or Nova-PCI cards) without onboard MPEG2 decoder, and without analog inputs or an onboard Common Interface connector. Say Y if you own such a card and want to use it. To compile this driver as a module, choose M here: the module will be called budget. config DVB_BUDGET_CI tristate "Budget cards with onboard CI connector" depends on DVB_BUDGET_CORE && I2C select DVB_STV0297 if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_TDA1004X if !DVB_FE_CUSTOMISE select DVB_STB0899 if !DVB_FE_CUSTOMISE select DVB_STB6100 if !DVB_FE_CUSTOMISE select DVB_LNBP21 if !DVB_FE_CUSTOMISE select DVB_TDA10023 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_TDA827X if !MEDIA_TUNER_CUSTOMISE depends on RC_CORE help Support for simple SAA7146 based DVB cards (so called Budget- or Nova-PCI cards) without onboard MPEG2 decoder, but with onboard Common Interface connector. Note: The Common Interface is not yet supported by this driver due to lack of information from the vendor. Say Y if you own such a card and want to use it. To compile this driver as a module, choose M here: the module will be called budget-ci. config DVB_BUDGET_AV tristate "Budget cards with analog video inputs" depends on DVB_BUDGET_CORE && I2C select VIDEO_SAA7146_VV depends on VIDEO_DEV # dependencies of VIDEO_SAA7146_VV select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_TDA1004X if !DVB_FE_CUSTOMISE select DVB_TDA10021 if !DVB_FE_CUSTOMISE select DVB_TDA10023 if !DVB_FE_CUSTOMISE select DVB_STB0899 if !DVB_FE_CUSTOMISE select DVB_TDA8261 if !DVB_FE_CUSTOMISE select DVB_TUA6100 if !DVB_FE_CUSTOMISE help Support for simple SAA7146 based DVB cards (so called Budget- or Nova-PCI cards) without onboard MPEG2 decoder, but with one or more analog video inputs. Say Y if you own such a card and want to use it. To compile this driver as a module, choose M here: the module will be called budget-av. config DVB_BUDGET_PATCH tristate "AV7110 cards with Budget Patch" depends on DVB_BUDGET_CORE && I2C depends on DVB_AV7110 select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_VES1X93 if !DVB_FE_CUSTOMISE select DVB_TDA8083 if !DVB_FE_CUSTOMISE help Support for Budget Patch (full TS) modification on SAA7146+AV7110 based cards (DVB-S cards). This driver doesn't use onboard MPEG2 decoder. The card is driven in Budget-only mode. Card is required to have loaded firmware to tune properly. Firmware can be loaded by insertion and removal of standard AV7110 driver prior to loading this driver. Say Y if you own such a card and want to use it. To compile this driver as a module, choose M here: the module will be called budget-patch. config MANTIS_CORE tristate "Mantis/Hopper PCI bridge based devices" depends on PCI && I2C && INPUT && RC_CORE help Support for PCI cards based on the Mantis and Hopper PCi bridge. Say Y if you own such a device and want to use it. config DVB_MANTIS tristate "MANTIS based cards" depends on MANTIS_CORE && DVB_CORE && PCI && I2C select DVB_MB86A16 if !DVB_FE_CUSTOMISE select DVB_ZL10353 if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_LNBP21 if !DVB_FE_CUSTOMISE select DVB_STB0899 if !DVB_FE_CUSTOMISE select DVB_STB6100 if !DVB_FE_CUSTOMISE select DVB_TDA665x if !DVB_FE_CUSTOMISE select DVB_TDA10021 if !DVB_FE_CUSTOMISE select DVB_TDA10023 if !DVB_FE_CUSTOMISE select DVB_PLL help Support for PCI cards based on the Mantis PCI bridge. Say Y when you have a Mantis based DVB card and want to use it. If unsure say N. config DVB_HOPPER tristate "HOPPER based cards" depends on MANTIS_CORE && DVB_CORE && PCI && I2C select DVB_ZL10353 if !DVB_FE_CUSTOMISE select DVB_PLL help Support for PCI cards based on the Hopper PCI bridge. Say Y when you have a Hopper based DVB card and want to use it. If unsure say N # # Siano Mobile Silicon Digital TV device configuration # config SMS_SIANO_MDTV tristate "Siano SMS1xxx based MDTV receiver" depends on DVB_CORE && RC_CORE && HAS_DMA ---help--- Choose Y or M here if you have MDTV receiver with a Siano chipset. To compile this driver as a module, choose M here (The module will be called smsmdtv). Further documentation on this driver can be found on the WWW at http://www.siano-ms.com/ if SMS_SIANO_MDTV menu "Siano module components" # Hardware interfaces support config SMS_USB_DRV tristate "USB interface support" depends on DVB_CORE && USB ---help--- Choose if you would like to have Siano's support for USB interface config SMS_SDIO_DRV tristate "SDIO interface support" depends on DVB_CORE && MMC ---help--- Choose if you would like to have Siano's support for SDIO interface endmenu endif # SMS_SIANO_MDTV config DVB_DM1105 tristate "SDMC DM1105 based PCI cards" depends on DVB_CORE && PCI && I2C select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_STV0288 if !DVB_FE_CUSTOMISE select DVB_STB6000 if !DVB_FE_CUSTOMISE select DVB_CX24116 if !DVB_FE_CUSTOMISE select DVB_SI21XX if !DVB_FE_CUSTOMISE select DVB_DS3000 if !DVB_FE_CUSTOMISE depends on RC_CORE help Support for cards based on the SDMC DM1105 PCI chip like DvbWorld 2002 Since these cards have no MPEG decoder onboard, they transmit only compressed MPEG data over the PCI bus, so you need an external software decoder to watch TV on your computer. Say Y or M if you own such a device and want to use it. config DVB_NGENE tristate "Micronas nGene support" depends on DVB_CORE && PCI && I2C select DVB_LNBP21 if !DVB_FE_CUSTOMISE select DVB_STV6110x if !DVB_FE_CUSTOMISE select DVB_STV090x if !DVB_FE_CUSTOMISE select DVB_LGDT330X if !DVB_FE_CUSTOMISE select MEDIA_TUNER_MT2131 if !MEDIA_TUNER_CUSTOMISE ---help--- Support for Micronas PCI express cards with nGene bridge. config DVB_TTUSB_BUDGET tristate "Technotrend/Hauppauge Nova-USB devices" depends on DVB_CORE && USB && I2C && PCI select DVB_CX22700 if !DVB_FE_CUSTOMISE select DVB_TDA1004X if !DVB_FE_CUSTOMISE select DVB_VES1820 if !DVB_FE_CUSTOMISE select DVB_TDA8083 if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_STV0297 if !DVB_FE_CUSTOMISE select DVB_LNBP21 if !DVB_FE_CUSTOMISE help Support for external USB adapters designed by Technotrend and produced by Hauppauge, shipped under the brand name 'Nova-USB'. These devices don't have a MPEG decoder built in, so you need an external software decoder to watch TV. Say Y if you own such a device and want to use it. config DVB_B2C2_FLEXCOP tristate "Technisat/B2C2 FlexCopII(b) and FlexCopIII adapters" depends on DVB_CORE && I2C select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_MT352 if !DVB_FE_CUSTOMISE select DVB_MT312 if !DVB_FE_CUSTOMISE select DVB_NXT200X if !DVB_FE_CUSTOMISE select DVB_STV0297 if !DVB_FE_CUSTOMISE select DVB_BCM3510 if !DVB_FE_CUSTOMISE select DVB_LGDT330X if !DVB_FE_CUSTOMISE select DVB_S5H1420 if !DVB_FE_CUSTOMISE select DVB_TUNER_ITD1000 if !DVB_FE_CUSTOMISE select DVB_ISL6421 if !DVB_FE_CUSTOMISE select DVB_CX24123 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMISE select DVB_TUNER_CX24113 if !DVB_FE_CUSTOMISE help Support for the digital TV receiver chip made by B2C2 Inc. included in Technisats PCI cards and USB boxes. Say Y if you own such a device and want to use it. config DVB_B2C2_FLEXCOP_PCI tristate "Technisat/B2C2 Air/Sky/Cable2PC PCI" depends on DVB_B2C2_FLEXCOP && PCI && I2C help Support for the Air/Sky/CableStar2 PCI card (DVB/ATSC) by Technisat/B2C2. Say Y if you own such a device and want to use it. config DVB_B2C2_FLEXCOP_USB tristate "Technisat/B2C2 Air/Sky/Cable2PC USB" depends on DVB_B2C2_FLEXCOP && USB && I2C help Support for the Air/Sky/Cable2PC USB1.1 box (DVB/ATSC) by Technisat/B2C2, Say Y if you own such a device and want to use it. config DVB_B2C2_FLEXCOP_DEBUG bool "Enable debug for the B2C2 FlexCop drivers" depends on DVB_B2C2_FLEXCOP help Say Y if you want to enable the module option to control debug messages of all B2C2 FlexCop drivers. config DVB_FE_CUSTOMISE bool "Customise the frontend modules to build" depends on DVB_CORE default y if EXPERT help This allows the user to select/deselect frontend drivers for their hardware from the build. Use this option with care as deselecting frontends which are in fact necessary will result in DVB devices which cannot be tuned due to lack of driver support. If unsure say N. menu "Customise DVB Frontends" visible if DVB_FE_CUSTOMISE comment "Multistandard (satellite) frontends" depends on DVB_CORE config DVB_STB0899 tristate "STB0899 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S/S2/DSS Multistandard demodulator. Say Y when you want to support this demodulator based frontends config DVB_STB6100 tristate "STB6100 based tuners" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A Silicon tuner from ST used in conjunction with the STB0899 demodulator. Say Y when you want to support this tuner. config DVB_STV090x tristate "STV0900/STV0903(A/B) based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help DVB-S/S2/DSS Multistandard Professional/Broadcast demodulators. Say Y when you want to support these frontends. config DVB_STV6110x tristate "STV6110/(A) based tuners" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A Silicon tuner that supports DVB-S and DVB-S2 modes comment "DVB-S (satellite) frontends" depends on DVB_CORE config DVB_CX24110 tristate "Conexant CX24110 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_CX24123 tristate "Conexant CX24123 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_MT312 tristate "Zarlink VP310/MT312/ZL10313 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_ZL10036 tristate "Zarlink ZL10036 silicon tuner" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_ZL10039 tristate "Zarlink ZL10039 silicon tuner" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_S5H1420 tristate "Samsung S5H1420 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_STV0288 tristate "ST STV0288 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_STB6000 tristate "ST STB6000 silicon tuner" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S silicon tuner module. Say Y when you want to support this tuner. config DVB_STV0299 tristate "ST STV0299 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_STV6110 tristate "ST STV6110 silicon tuner" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S silicon tuner module. Say Y when you want to support this tuner. config DVB_STV0900 tristate "ST STV0900 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S/S2 demodulator. Say Y when you want to support this frontend. config DVB_TDA8083 tristate "Philips TDA8083 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_TDA10086 tristate "Philips TDA10086 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_TDA8261 tristate "Philips TDA8261 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_VES1X93 tristate "VLSI VES1893 or VES1993 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_TUNER_ITD1000 tristate "Integrant ITD1000 Zero IF tuner for DVB-S/DSS" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_TUNER_CX24113 tristate "Conexant CX24113/CX24128 tuner for DVB-S/DSS" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_TDA826X tristate "Philips TDA826X silicon tuner" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S silicon tuner module. Say Y when you want to support this tuner. config DVB_TUA6100 tristate "Infineon TUA6100 PLL" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S PLL chip. config DVB_CX24116 tristate "Conexant CX24116 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S/S2 tuner module. Say Y when you want to support this frontend. config DVB_SI21XX tristate "Silicon Labs SI21XX based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. config DVB_DS3000 tristate "Montage Tehnology DS3000 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S/S2 tuner module. Say Y when you want to support this frontend. config DVB_MB86A16 tristate "Fujitsu MB86A16 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S/DSS Direct Conversion reveiver. Say Y when you want to support this frontend. comment "DVB-T (terrestrial) frontends" depends on DVB_CORE config DVB_SP8870 tristate "Spase sp8870 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. This driver needs external firmware. Please use the command "/Documentation/dvb/get_dvb_firmware sp8870" to download/extract it, and then copy it to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). config DVB_SP887X tristate "Spase sp887x based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. This driver needs external firmware. Please use the command "/Documentation/dvb/get_dvb_firmware sp887x" to download/extract it, and then copy it to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). config DVB_CX22700 tristate "Conexant CX22700 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. config DVB_CX22702 tristate "Conexant cx22702 demodulator (OFDM)" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. config DVB_S5H1432 tristate "Samsung s5h1432 demodulator (OFDM)" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. config DVB_DRX397XD tristate "Micronas DRX3975D/DRX3977D based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. TODO: This driver needs external firmware. Please use the command "/Documentation/dvb/get_dvb_firmware drx397xD" to download/extract them, and then copy them to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). config DVB_L64781 tristate "LSI L64781" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. config DVB_TDA1004X tristate "Philips TDA10045H/TDA10046H based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. This driver needs external firmware. Please use the commands "/Documentation/dvb/get_dvb_firmware tda10045", "/Documentation/dvb/get_dvb_firmware tda10046" to download/extract them, and then copy them to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). config DVB_NXT6000 tristate "NxtWave Communications NXT6000 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. config DVB_MT352 tristate "Zarlink MT352 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. config DVB_ZL10353 tristate "Zarlink ZL10353 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. config DVB_DIB3000MB tristate "DiBcom 3000M-B" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Designed for mobile usage. Say Y when you want to support this frontend. config DVB_DIB3000MC tristate "DiBcom 3000P/M-C" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Designed for mobile usage. Say Y when you want to support this frontend. config DVB_DIB7000M tristate "DiBcom 7000MA/MB/PA/PB/MC" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Designed for mobile usage. Say Y when you want to support this frontend. config DVB_DIB7000P tristate "DiBcom 7000PC" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Designed for mobile usage. Say Y when you want to support this frontend. config DVB_DIB9000 tristate "DiBcom 9000" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Designed for mobile usage. Say Y when you want to support this frontend. config DVB_TDA10048 tristate "Philips TDA10048HN based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T tuner module. Say Y when you want to support this frontend. config DVB_AF9013 tristate "Afatech AF9013 demodulator" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help Say Y when you want to support this frontend. config DVB_EC100 tristate "E3C EC100" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help Say Y when you want to support this frontend. config DVB_STV0367 tristate "ST STV0367 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-T/C tuner module. Say Y when you want to support this frontend. comment "DVB-C (cable) frontends" depends on DVB_CORE config DVB_VES1820 tristate "VLSI VES1820 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-C tuner module. Say Y when you want to support this frontend. config DVB_TDA10021 tristate "Philips TDA10021 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-C tuner module. Say Y when you want to support this frontend. config DVB_TDA10023 tristate "Philips TDA10023 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-C tuner module. Say Y when you want to support this frontend. config DVB_STV0297 tristate "ST STV0297 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-C tuner module. Say Y when you want to support this frontend. comment "ATSC (North American/Korean Terrestrial/Cable DTV) frontends" depends on DVB_CORE config DVB_NXT200X tristate "NxtWave Communications NXT2002/NXT2004 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An ATSC 8VSB and QAM64/256 tuner module. Say Y when you want to support this frontend. This driver needs external firmware. Please use the commands "/Documentation/dvb/get_dvb_firmware nxt2002" and "/Documentation/dvb/get_dvb_firmware nxt2004" to download/extract them, and then copy them to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). config DVB_OR51211 tristate "Oren OR51211 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An ATSC 8VSB tuner module. Say Y when you want to support this frontend. This driver needs external firmware. Please use the command "/Documentation/dvb/get_dvb_firmware or51211" to download it, and then copy it to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). config DVB_OR51132 tristate "Oren OR51132 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An ATSC 8VSB and QAM64/256 tuner module. Say Y when you want to support this frontend. This driver needs external firmware. Please use the commands "/Documentation/dvb/get_dvb_firmware or51132_vsb" and/or "/Documentation/dvb/get_dvb_firmware or51132_qam" to download firmwares for 8VSB and QAM64/256, respectively. Copy them to /usr/lib/hotplug/firmware or /lib/firmware (depending on configuration of firmware hotplug). config DVB_BCM3510 tristate "Broadcom BCM3510" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An ATSC 8VSB/16VSB and QAM64/256 tuner module. Say Y when you want to support this frontend. config DVB_LGDT330X tristate "LG Electronics LGDT3302/LGDT3303 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An ATSC 8VSB and QAM64/256 tuner module. Say Y when you want to support this frontend. config DVB_LGDT3305 tristate "LG Electronics LGDT3304 and LGDT3305 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An ATSC 8VSB and QAM64/256 tuner module. Say Y when you want to support this frontend. config DVB_S5H1409 tristate "Samsung S5H1409 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An ATSC 8VSB and QAM64/256 tuner module. Say Y when you want to support this frontend. config DVB_AU8522 tristate "Auvitek AU8522 based" depends on DVB_CORE && I2C && VIDEO_V4L2 default m if DVB_FE_CUSTOMISE help An ATSC 8VSB and QAM64/256 tuner module. Say Y when you want to support this frontend. config DVB_S5H1411 tristate "Samsung S5H1411 based" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An ATSC 8VSB and QAM64/256 tuner module. Say Y when you want to support this frontend. comment "ISDB-T (terrestrial) frontends" depends on DVB_CORE config DVB_S921 tristate "Sharp S921 frontend" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help AN ISDB-T DQPSK, QPSK, 16QAM and 64QAM 1seg tuner module. Say Y when you want to support this frontend. config DVB_DIB8000 tristate "DiBcom 8000MB/MC" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A driver for DiBcom's DiB8000 ISDB-T/ISDB-Tsb demodulator. Say Y when you want to support this frontend. config DVB_MB86A20S tristate "Fujitsu mb86a20s" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A driver for Fujitsu mb86a20s ISDB-T/ISDB-Tsb demodulator. Say Y when you want to support this frontend. comment "Digital terrestrial only tuners/PLL" depends on DVB_CORE config DVB_PLL tristate "Generic I2C PLL based tuners" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help This module drives a number of tuners based on PLL chips with a common I2C interface. Say Y when you want to support these tuners. config DVB_TUNER_DIB0070 tristate "DiBcom DiB0070 silicon base-band tuner" depends on I2C default m if DVB_FE_CUSTOMISE help A driver for the silicon baseband tuner DiB0070 from DiBcom. This device is only used inside a SiP called together with a demodulator for now. config DVB_TUNER_DIB0090 tristate "DiBcom DiB0090 silicon base-band tuner" depends on I2C default m if DVB_FE_CUSTOMISE help A driver for the silicon baseband tuner DiB0090 from DiBcom. This device is only used inside a SiP called together with a demodulator for now. comment "SEC control devices for DVB-S" depends on DVB_CORE config DVB_LNBP21 tristate "LNBP21/LNBH24 SEC controllers" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An SEC control chips. config DVB_ISL6405 tristate "ISL6405 SEC controller" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An SEC control chip. config DVB_ISL6421 tristate "ISL6421 SEC controller" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help An SEC control chip. config DVB_ISL6423 tristate "ISL6423 SEC controller" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A SEC controller chip from Intersil config DVB_LGS8GL5 tristate "Silicon Legend LGS-8GL5 demodulator (OFDM)" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DMB-TH tuner module. Say Y when you want to support this frontend. config DVB_LGS8GXX tristate "Legend Silicon LGS8913/LGS8GL5/LGS8GXX DMB-TH demodulator" depends on DVB_CORE && I2C select FW_LOADER default m if DVB_FE_CUSTOMISE help A DMB-TH tuner module. Say Y when you want to support this frontend. config DVB_ATBM8830 tristate "AltoBeam ATBM8830/8831 DMB-TH demodulator" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DMB-TH tuner module. Say Y when you want to support this frontend. config DVB_TDA665x tristate "TDA665x tuner" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help Support for tuner modules based on Philips TDA6650/TDA6651 chips. Say Y when you want to support this chip. Currently supported tuners: * Panasonic ENV57H12D5 (ET-50DT) config DVB_IX2505V tristate "Sharp IX2505V silicon tuner" depends on DVB_CORE && I2C default m if DVB_FE_CUSTOMISE help A DVB-S tuner module. Say Y when you want to support this frontend. comment "Tools to develop new frontends" config DVB_DUMMY_FE tristate "Dummy frontend driver" default n endmenu config VIDEO_SAA7146 tristate depends on I2C && PCI config VIDEO_SAA7146_VV tristate depends on VIDEO_V4L2 select VIDEOBUF_DMA_SG select VIDEO_SAA7146 config MEDIA_ATTACH bool "Load and attach frontend and tuner driver modules as needed" depends on VIDEO_MEDIA depends on MODULES help Remove the static dependency of DVB card drivers on all frontend modules for all possible card variants. Instead, allow the card drivers to only load the frontend modules they require. Also, tuner module will automatically load a tuner driver when needed, for analog mode. This saves several KBytes of memory. Note: You will need module-init-tools v3.2 or later for this feature. If unsure say Y. config MEDIA_TUNER tristate default VIDEO_MEDIA && I2C depends on VIDEO_MEDIA && I2C select MEDIA_TUNER_XC2028 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_XC5000 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MT20XX if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA8290 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TEA5761 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TEA5767 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA9887 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MC44S803 if !MEDIA_TUNER_CUSTOMISE config MEDIA_TUNER_CUSTOMISE bool "Customize analog and hybrid tuner modules to build" depends on MEDIA_TUNER default y if EXPERT help This allows the user to deselect tuner drivers unnecessary for their hardware from the build. Use this option with care as deselecting tuner drivers which are in fact necessary will result in V4L/DVB devices which cannot be tuned due to lack of driver support If unsure say N. menu "Customize TV tuners" visible if MEDIA_TUNER_CUSTOMISE config MEDIA_TUNER_SIMPLE tristate "Simple tuner support" depends on VIDEO_MEDIA && I2C select MEDIA_TUNER_TDA9887 default m if MEDIA_TUNER_CUSTOMISE help Say Y here to include support for various simple tuners. config MEDIA_TUNER_TDA8290 tristate "TDA 8290/8295 + 8275(a)/18271 tuner combo" depends on VIDEO_MEDIA && I2C select MEDIA_TUNER_TDA827X select MEDIA_TUNER_TDA18271 default m if MEDIA_TUNER_CUSTOMISE help Say Y here to include support for Philips TDA8290+8275(a) tuner. config MEDIA_TUNER_TDA827X tristate "Philips TDA827X silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A DVB-T silicon tuner module. Say Y when you want to support this tuner. config MEDIA_TUNER_TDA18271 tristate "NXP TDA18271 silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A silicon tuner module. Say Y when you want to support this tuner. config MEDIA_TUNER_TDA9887 tristate "TDA 9885/6/7 analog IF demodulator" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help Say Y here to include support for Philips TDA9885/6/7 analog IF demodulator. config MEDIA_TUNER_TEA5761 tristate "TEA 5761 radio tuner (EXPERIMENTAL)" depends on VIDEO_MEDIA && I2C depends on EXPERIMENTAL default m if MEDIA_TUNER_CUSTOMISE help Say Y here to include support for the Philips TEA5761 radio tuner. config MEDIA_TUNER_TEA5767 tristate "TEA 5767 radio tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help Say Y here to include support for the Philips TEA5767 radio tuner. config MEDIA_TUNER_MT20XX tristate "Microtune 2032 / 2050 tuners" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help Say Y here to include support for the MT2032 / MT2050 tuner. config MEDIA_TUNER_MT2060 tristate "Microtune MT2060 silicon IF tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon IF tuner MT2060 from Microtune. config MEDIA_TUNER_MT2266 tristate "Microtune MT2266 silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon baseband tuner MT2266 from Microtune. config MEDIA_TUNER_MT2131 tristate "Microtune MT2131 silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon baseband tuner MT2131 from Microtune. config MEDIA_TUNER_QT1010 tristate "Quantek QT1010 silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner QT1010 from Quantek. config MEDIA_TUNER_XC2028 tristate "XCeive xc2028/xc3028 tuners" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help Say Y here to include support for the xc2028/xc3028 tuners. config MEDIA_TUNER_XC5000 tristate "Xceive XC5000 silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner XC5000 from Xceive. This device is only used inside a SiP called together with a demodulator for now. config MEDIA_TUNER_MXL5005S tristate "MaxLinear MSL5005S silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner MXL5005S from MaxLinear. config MEDIA_TUNER_MXL5007T tristate "MaxLinear MxL5007T silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner MxL5007T from MaxLinear. config MEDIA_TUNER_MC44S803 tristate "Freescale MC44S803 Low Power CMOS Broadband tuners" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help Say Y here to support the Freescale MC44S803 based tuners config MEDIA_TUNER_MAX2165 tristate "Maxim MAX2165 silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help A driver for the silicon tuner MAX2165 from Maxim. config MEDIA_TUNER_TDA18218 tristate "NXP TDA18218 silicon tuner" depends on VIDEO_MEDIA && I2C default m if MEDIA_TUNER_CUSTOMISE help NXP TDA18218 silicon tuner driver. endmenu config VIDEO_CX25840 tristate "Conexant CX2584x audio/video decoders" depends on VIDEO_V4L2 && I2C ---help--- Support for the Conexant CX2584x audio/video decoders. To compile this driver as a module, choose M here: the module will be called cx25840 config VIDEO_ZORAN tristate "Zoran ZR36057/36067 Video For Linux" depends on PCI && I2C_ALGOBIT && VIDEO_V4L2 && VIRT_TO_BUS help Say Y for support for MJPEG capture cards based on the Zoran 36057/36067 PCI controller chipset. This includes the Iomega Buz, Pinnacle DC10+ and the Linux Media Labs LML33. There is a driver homepage at . For more information, check . To compile this driver as a module, choose M here: the module will be called zr36067. config VIDEO_ZORAN_DC30 tristate "Pinnacle/Miro DC30(+) support" depends on VIDEO_ZORAN select VIDEO_ADV7175 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_VPX3220 if VIDEO_HELPER_CHIPS_AUTO help Support for the Pinnacle/Miro DC30(+) MJPEG capture/playback card. This also supports really old DC10 cards based on the zr36050 MJPEG codec and zr36016 VFE. config VIDEO_ZORAN_ZR36060 tristate "Zoran ZR36060" depends on VIDEO_ZORAN help Say Y to support Zoran boards based on 36060 chips. This includes Iomega Buz, Pinnacle DC10, Linux media Labs 33 and 33 R10 and AverMedia 6 boards. config VIDEO_ZORAN_BUZ tristate "Iomega Buz support" depends on VIDEO_ZORAN_ZR36060 select VIDEO_SAA711X if VIDEO_HELPER_CHIPS_AUTO select VIDEO_SAA7185 if VIDEO_HELPER_CHIPS_AUTO help Support for the Iomega Buz MJPEG capture/playback card. config VIDEO_ZORAN_DC10 tristate "Pinnacle/Miro DC10(+) support" depends on VIDEO_ZORAN_ZR36060 select VIDEO_SAA7110 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_ADV7175 if VIDEO_HELPER_CHIPS_AUTO help Support for the Pinnacle/Miro DC10(+) MJPEG capture/playback card. config VIDEO_ZORAN_LML33 tristate "Linux Media Labs LML33 support" depends on VIDEO_ZORAN_ZR36060 select VIDEO_BT819 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_BT856 if VIDEO_HELPER_CHIPS_AUTO help Support for the Linux Media Labs LML33 MJPEG capture/playback card. config VIDEO_ZORAN_LML33R10 tristate "Linux Media Labs LML33R10 support" depends on VIDEO_ZORAN_ZR36060 select VIDEO_SAA711X if VIDEO_HELPER_CHIPS_AUTO select VIDEO_ADV7170 if VIDEO_HELPER_CHIPS_AUTO help support for the Linux Media Labs LML33R10 MJPEG capture/playback card. config VIDEO_ZORAN_AVS6EYES tristate "AverMedia 6 Eyes support (EXPERIMENTAL)" depends on VIDEO_ZORAN_ZR36060 && EXPERIMENTAL select VIDEO_BT856 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_BT866 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_KS0127 if VIDEO_HELPER_CHIPS_AUTO help Support for the AverMedia 6 Eyes video surveillance card. config VIDEO_TLG2300 tristate "Telegent TLG2300 USB video capture support" depends on VIDEO_DEV && I2C && SND && DVB_CORE select VIDEO_TUNER select VIDEO_TVEEPROM depends on RC_CORE select VIDEOBUF_VMALLOC select SND_PCM select VIDEOBUF_DVB ---help--- This is a video4linux driver for Telegent tlg2300 based TV cards. The driver supports V4L2, DVB-T and radio. To compile this driver as a module, choose M here: the module will be called poseidon config VIDEO_CX88 tristate "Conexant 2388x (bt878 successor) support" depends on VIDEO_DEV && PCI && I2C && RC_CORE select I2C_ALGOBIT select VIDEO_BTCX select VIDEOBUF_DMA_SG select VIDEO_TUNER select VIDEO_TVEEPROM select VIDEO_WM8775 if VIDEO_HELPER_CHIPS_AUTO ---help--- This is a video4linux driver for Conexant 2388x based TV cards. To compile this driver as a module, choose M here: the module will be called cx8800 config VIDEO_CX88_ALSA tristate "Conexant 2388x DMA audio support" depends on VIDEO_CX88 && SND select SND_PCM ---help--- This is a video4linux driver for direct (DMA) audio on Conexant 2388x based TV cards using ALSA. It only works with boards with function 01 enabled. To check if your board supports, use lspci -n. If supported, you should see 14f1:8801 or 14f1:8811 PCI device. To compile this driver as a module, choose M here: the module will be called cx88-alsa. config VIDEO_CX88_BLACKBIRD tristate "Blackbird MPEG encoder support (cx2388x + cx23416)" depends on VIDEO_CX88 select VIDEO_CX2341X ---help--- This adds support for MPEG encoder cards based on the Blackbird reference design, using the Conexant 2388x and 23416 chips. To compile this driver as a module, choose M here: the module will be called cx88-blackbird. config VIDEO_CX88_DVB tristate "DVB/ATSC Support for cx2388x based TV cards" depends on VIDEO_CX88 && DVB_CORE select VIDEOBUF_DVB select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_MT352 if !DVB_FE_CUSTOMISE select DVB_ZL10353 if !DVB_FE_CUSTOMISE select DVB_OR51132 if !DVB_FE_CUSTOMISE select DVB_CX22702 if !DVB_FE_CUSTOMISE select DVB_LGDT330X if !DVB_FE_CUSTOMISE select DVB_NXT200X if !DVB_FE_CUSTOMISE select DVB_CX24123 if !DVB_FE_CUSTOMISE select DVB_ISL6421 if !DVB_FE_CUSTOMISE select DVB_S5H1411 if !DVB_FE_CUSTOMISE select DVB_CX24116 if !DVB_FE_CUSTOMISE select DVB_STV0299 if !DVB_FE_CUSTOMISE select DVB_STV0288 if !DVB_FE_CUSTOMISE select DVB_STB6000 if !DVB_FE_CUSTOMISE select DVB_STV0900 if !DVB_FE_CUSTOMISE select DVB_STB6100 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMISE ---help--- This adds support for DVB/ATSC cards based on the Conexant 2388x chip. To compile this driver as a module, choose M here: the module will be called cx88-dvb. config VIDEO_CX88_MPEG tristate depends on VIDEO_CX88_DVB || VIDEO_CX88_BLACKBIRD default y config VIDEO_CX88_VP3054 tristate "VP-3054 Secondary I2C Bus Support" default m depends on VIDEO_CX88_DVB && DVB_MT352 ---help--- This adds DVB-T support for cards based on the Conexant 2388x chip and the MT352 demodulator, which also require support for the VP-3054 Secondary I2C bus, such at DNTV Live! DVB-T Pro. config USB_PWC tristate "USB Philips Cameras" depends on VIDEO_V4L2 ---help--- Say Y or M here if you want to use one of these Philips & OEM webcams: * Philips PCA645, PCA646 * Philips PCVC675, PCVC680, PCVC690 * Philips PCVC720/40, PCVC730, PCVC740, PCVC750 * Philips SPC900NC * Askey VC010 * Logitech QuickCam Pro 3000, 4000, 'Zoom', 'Notebook Pro' and 'Orbit'/'Sphere' * Samsung MPC-C10, MPC-C30 * Creative Webcam 5, Pro Ex * SOTEC Afina Eye * Visionite VCS-UC300, VCS-UM100 The PCA635, PCVC665 and PCVC720/20 are not supported by this driver and never will be, but the 665 and 720/20 are supported by other drivers. Some newer logitech webcams are not handled by this driver but by the Usb Video Class driver (linux-uvc). The built-in microphone is enabled by selecting USB Audio support. To compile this driver as a module, choose M here: the module will be called pwc. config USB_PWC_DEBUG bool "USB Philips Cameras verbose debug" depends on USB_PWC help Say Y here in order to have the pwc driver generate verbose debugging messages. A special module options 'trace' is used to control the verbosity. config USB_PWC_INPUT_EVDEV bool "USB Philips Cameras input events device support" default y depends on USB_PWC && (USB_PWC=INPUT || INPUT=y) ---help--- This option makes USB Philips cameras register the snapshot button as an input device to report button events. If you are in doubt, say Y. # # Generic video config states # config VIDEO_V4L2 tristate depends on VIDEO_DEV && VIDEO_V4L2_COMMON default VIDEO_DEV && VIDEO_V4L2_COMMON config VIDEOBUF_GEN tristate config VIDEOBUF_DMA_SG depends on HAS_DMA select VIDEOBUF_GEN tristate config VIDEOBUF_VMALLOC select VIDEOBUF_GEN tristate config VIDEOBUF_DMA_CONTIG depends on HAS_DMA select VIDEOBUF_GEN tristate config VIDEOBUF_DVB tristate select VIDEOBUF_GEN config VIDEO_BTCX depends on PCI tristate config VIDEO_TVEEPROM tristate depends on I2C config VIDEO_TUNER tristate depends on MEDIA_TUNER config V4L2_MEM2MEM_DEV tristate depends on VIDEOBUF2_CORE config VIDEOBUF2_CORE tristate config VIDEOBUF2_MEMOPS tristate config VIDEOBUF2_DMA_CONTIG select VIDEOBUF2_CORE select VIDEOBUF2_MEMOPS tristate config VIDEOBUF2_VMALLOC select VIDEOBUF2_CORE select VIDEOBUF2_MEMOPS tristate config VIDEOBUF2_DMA_SG #depends on HAS_DMA select VIDEOBUF2_CORE select VIDEOBUF2_MEMOPS tristate # # Multimedia Video device configuration # menuconfig VIDEO_CAPTURE_DRIVERS bool "Video capture adapters" depends on VIDEO_V4L2 default y ---help--- Say Y here to enable selecting the video adapters for webcams, analog TV, and hybrid analog/digital TV. Some of those devices also supports FM radio. if VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2 config VIDEO_ADV_DEBUG bool "Enable advanced debug functionality" default n ---help--- Say Y here to enable advanced debugging functionality on some V4L devices. In doubt, say N. config VIDEO_FIXED_MINOR_RANGES bool "Enable old-style fixed minor ranges for video devices" default n ---help--- Say Y here to enable the old-style fixed-range minor assignments. Only useful if you rely on the old behavior and use mknod instead of udev. When in doubt, say N. config VIDEO_HELPER_CHIPS_AUTO bool "Autoselect pertinent encoders/decoders and other helper chips" default y if !EXPERT ---help--- Most video cards may require additional modules to encode or decode audio/video standards. This option will autoselect all pertinent modules to each selected video module. Unselect this only if you know exactly what you are doing, since it may break support on some boards. In doubt, say Y. config VIDEO_IR_I2C tristate "I2C module for IR" if !VIDEO_HELPER_CHIPS_AUTO depends on I2C && RC_CORE default y ---help--- Most boards have an IR chip directly connected via GPIO. However, some video boards have the IR connected via I2C bus. If your board doesn't have an I2C IR chip, you may disable this option. In doubt, say Y. # # Encoder / Decoder module configuration # menu "Encoders/decoders and other helper chips" visible if !VIDEO_HELPER_CHIPS_AUTO comment "Audio decoders" config VIDEO_TVAUDIO tristate "Simple audio decoder chips" depends on VIDEO_V4L2 && I2C ---help--- Support for several audio decoder chips found on some bt8xx boards: Philips: tda9840, tda9873h, tda9874h/a, tda9850, tda985x, tea6300, tea6320, tea6420, tda8425, ta8874z. Microchip: pic16c54 based design on ProVideo PV951 board. To compile this driver as a module, choose M here: the module will be called tvaudio. config VIDEO_TDA7432 tristate "Philips TDA7432 audio processor" depends on VIDEO_V4L2 && I2C ---help--- Support for tda7432 audio decoder chip found on some bt8xx boards. To compile this driver as a module, choose M here: the module will be called tda7432. config VIDEO_TDA9840 tristate "Philips TDA9840 audio processor" depends on I2C ---help--- Support for tda9840 audio decoder chip found on some Zoran boards. To compile this driver as a module, choose M here: the module will be called tda9840. config VIDEO_TEA6415C tristate "Philips TEA6415C audio processor" depends on I2C ---help--- Support for tea6415c audio decoder chip found on some bt8xx boards. To compile this driver as a module, choose M here: the module will be called tea6415c. config VIDEO_TEA6420 tristate "Philips TEA6420 audio processor" depends on I2C ---help--- Support for tea6420 audio decoder chip found on some bt8xx boards. To compile this driver as a module, choose M here: the module will be called tea6420. config VIDEO_MSP3400 tristate "Micronas MSP34xx audio decoders" depends on VIDEO_V4L2 && I2C ---help--- Support for the Micronas MSP34xx series of audio decoders. To compile this driver as a module, choose M here: the module will be called msp3400. config VIDEO_CS5345 tristate "Cirrus Logic CS5345 audio ADC" depends on VIDEO_V4L2 && I2C ---help--- Support for the Cirrus Logic CS5345 24-bit, 192 kHz stereo A/D converter. To compile this driver as a module, choose M here: the module will be called cs5345. config VIDEO_CS53L32A tristate "Cirrus Logic CS53L32A audio ADC" depends on VIDEO_V4L2 && I2C ---help--- Support for the Cirrus Logic CS53L32A low voltage stereo A/D converter. To compile this driver as a module, choose M here: the module will be called cs53l32a. config VIDEO_M52790 tristate "Mitsubishi M52790 A/V switch" depends on VIDEO_V4L2 && I2C ---help--- Support for the Mitsubishi M52790 A/V switch. To compile this driver as a module, choose M here: the module will be called m52790. config VIDEO_TLV320AIC23B tristate "Texas Instruments TLV320AIC23B audio codec" depends on VIDEO_V4L2 && I2C && EXPERIMENTAL ---help--- Support for the Texas Instruments TLV320AIC23B audio codec. To compile this driver as a module, choose M here: the module will be called tlv320aic23b. config VIDEO_WM8775 tristate "Wolfson Microelectronics WM8775 audio ADC with input mixer" depends on VIDEO_V4L2 && I2C ---help--- Support for the Wolfson Microelectronics WM8775 high performance stereo A/D Converter with a 4 channel input mixer. To compile this driver as a module, choose M here: the module will be called wm8775. config VIDEO_WM8739 tristate "Wolfson Microelectronics WM8739 stereo audio ADC" depends on VIDEO_V4L2 && I2C ---help--- Support for the Wolfson Microelectronics WM8739 stereo A/D Converter. To compile this driver as a module, choose M here: the module will be called wm8739. config VIDEO_VP27SMPX tristate "Panasonic VP27s internal MPX" depends on VIDEO_V4L2 && I2C ---help--- Support for the internal MPX of the Panasonic VP27s tuner. To compile this driver as a module, choose M here: the module will be called vp27smpx. comment "RDS decoders" config VIDEO_SAA6588 tristate "SAA6588 Radio Chip RDS decoder support" depends on VIDEO_V4L2 && I2C help Support for this Radio Data System (RDS) decoder. This allows seeing radio station identification transmitted using this standard. To compile this driver as a module, choose M here: the module will be called saa6588. comment "Video decoders" config VIDEO_ADV7180 tristate "Analog Devices ADV7180 decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for the Analog Devices ADV7180 video decoder. To compile this driver as a module, choose M here: the module will be called adv7180. config VIDEO_BT819 tristate "BT819A VideoStream decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for BT819A video decoder. To compile this driver as a module, choose M here: the module will be called bt819. config VIDEO_BT856 tristate "BT856 VideoStream decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for BT856 video decoder. To compile this driver as a module, choose M here: the module will be called bt856. config VIDEO_BT866 tristate "BT866 VideoStream decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for BT866 video decoder. To compile this driver as a module, choose M here: the module will be called bt866. config VIDEO_KS0127 tristate "KS0127 video decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for KS0127 video decoder. This chip is used on AverMedia AVS6EYES Zoran-based MJPEG cards. To compile this driver as a module, choose M here: the module will be called ks0127. config VIDEO_OV7670 tristate "OmniVision OV7670 sensor support" depends on I2C && VIDEO_V4L2 ---help--- This is a Video4Linux2 sensor-level driver for the OmniVision OV7670 VGA camera. It currently only works with the M88ALP01 controller. config VIDEO_MT9V011 tristate "Micron mt9v011 sensor support" depends on I2C && VIDEO_V4L2 ---help--- This is a Video4Linux2 sensor-level driver for the Micron mt0v011 1.3 Mpixel camera. It currently only works with the em28xx driver. config VIDEO_TCM825X tristate "TCM825x camera sensor support" depends on I2C && VIDEO_V4L2 ---help--- This is a driver for the Toshiba TCM825x VGA camera sensor. It is used for example in Nokia N800. config VIDEO_SAA7110 tristate "Philips SAA7110 video decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for the Philips SAA7110 video decoders. To compile this driver as a module, choose M here: the module will be called saa7110. config VIDEO_SAA711X tristate "Philips SAA7111/3/4/5 video decoders" depends on VIDEO_V4L2 && I2C ---help--- Support for the Philips SAA7111/3/4/5 video decoders. To compile this driver as a module, choose M here: the module will be called saa7115. config VIDEO_SAA717X tristate "Philips SAA7171/3/4 audio/video decoders" depends on VIDEO_V4L2 && I2C ---help--- Support for the Philips SAA7171/3/4 audio/video decoders. To compile this driver as a module, choose M here: the module will be called saa717x. config VIDEO_SAA7191 tristate "Philips SAA7191 video decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for the Philips SAA7191 video decoder. To compile this driver as a module, choose M here: the module will be called saa7191. config VIDEO_TVP514X tristate "Texas Instruments TVP514x video decoder" depends on VIDEO_V4L2 && I2C ---help--- This is a Video4Linux2 sensor-level driver for the TI TVP5146/47 decoder. It is currently working with the TI OMAP3 camera controller. To compile this driver as a module, choose M here: the module will be called tvp514x. config VIDEO_TVP5150 tristate "Texas Instruments TVP5150 video decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for the Texas Instruments TVP5150 video decoder. To compile this driver as a module, choose M here: the module will be called tvp5150. config VIDEO_TVP7002 tristate "Texas Instruments TVP7002 video decoder" depends on VIDEO_V4L2 && I2C ---help--- Support for the Texas Instruments TVP7002 video decoder. To compile this driver as a module, choose M here: the module will be called tvp7002. config VIDEO_VPX3220 tristate "vpx3220a, vpx3216b & vpx3214c video decoders" depends on VIDEO_V4L2 && I2C ---help--- Support for VPX322x video decoders. To compile this driver as a module, choose M here: the module will be called vpx3220. comment "Video and audio decoders" source "drivers/media/video/cx25840/Kconfig" comment "MPEG video encoders" config VIDEO_CX2341X tristate "Conexant CX2341x MPEG encoders" depends on VIDEO_V4L2 && VIDEO_V4L2_COMMON ---help--- Support for the Conexant CX23416 MPEG encoders and CX23415 MPEG encoder/decoders. This module currently supports the encoding functions only. To compile this driver as a module, choose M here: the module will be called cx2341x. comment "Video encoders" config VIDEO_SAA7127 tristate "Philips SAA7127/9 digital video encoders" depends on VIDEO_V4L2 && I2C ---help--- Support for the Philips SAA7127/9 digital video encoders. To compile this driver as a module, choose M here: the module will be called saa7127. config VIDEO_SAA7185 tristate "Philips SAA7185 video encoder" depends on VIDEO_V4L2 && I2C ---help--- Support for the Philips SAA7185 video encoder. To compile this driver as a module, choose M here: the module will be called saa7185. config VIDEO_ADV7170 tristate "Analog Devices ADV7170 video encoder" depends on VIDEO_V4L2 && I2C ---help--- Support for the Analog Devices ADV7170 video encoder driver To compile this driver as a module, choose M here: the module will be called adv7170. config VIDEO_ADV7175 tristate "Analog Devices ADV7175 video encoder" depends on VIDEO_V4L2 && I2C ---help--- Support for the Analog Devices ADV7175 video encoder driver To compile this driver as a module, choose M here: the module will be called adv7175. config VIDEO_THS7303 tristate "THS7303 Video Amplifier" depends on I2C help Support for TI THS7303 video amplifier To compile this driver as a module, choose M here: the module will be called ths7303. config VIDEO_ADV7343 tristate "ADV7343 video encoder" depends on I2C help Support for Analog Devices I2C bus based ADV7343 encoder. To compile this driver as a module, choose M here: the module will be called adv7343. config VIDEO_AK881X tristate "AK8813/AK8814 video encoders" depends on I2C help Video output driver for AKM AK8813 and AK8814 TV encoders comment "Video improvement chips" config VIDEO_UPD64031A tristate "NEC Electronics uPD64031A Ghost Reduction" depends on VIDEO_V4L2 && I2C ---help--- Support for the NEC Electronics uPD64031A Ghost Reduction video chip. It is most often found in NTSC TV cards made for Japan and is used to reduce the 'ghosting' effect that can be present in analog TV broadcasts. To compile this driver as a module, choose M here: the module will be called upd64031a. config VIDEO_UPD64083 tristate "NEC Electronics uPD64083 3-Dimensional Y/C separation" depends on VIDEO_V4L2 && I2C ---help--- Support for the NEC Electronics uPD64083 3-Dimensional Y/C separation video chip. It is used to improve the quality of the colors of a composite signal. To compile this driver as a module, choose M here: the module will be called upd64083. endmenu # encoder / decoder chips config VIDEO_SH_VOU tristate "SuperH VOU video output driver" depends on VIDEO_DEV && ARCH_SHMOBILE select VIDEOBUF_DMA_CONTIG help Support for the Video Output Unit (VOU) on SuperH SoCs. config VIDEO_VIU tristate "Freescale VIU Video Driver" depends on VIDEO_V4L2 && PPC_MPC512x select VIDEOBUF_DMA_CONTIG default y ---help--- Support for Freescale VIU video driver. This device captures video data, or overlays video on DIU frame buffer. Say Y here if you want to enable VIU device on MPC5121e Rev2+. In doubt, say N. config VIDEO_VIVI tristate "Virtual Video Driver" depends on VIDEO_DEV && VIDEO_V4L2 && !SPARC32 && !SPARC64 depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE select FONT_8x16 select VIDEOBUF2_VMALLOC default n ---help--- Enables a virtual video driver. This device shows a color bar and a timestamp, as a real device would generate by using V4L2 api. Say Y here if you want to test video apps or debug V4L devices. In doubt, say N. source "drivers/media/video/davinci/Kconfig" source "drivers/media/video/omap/Kconfig" source "drivers/media/video/bt8xx/Kconfig" config VIDEO_PMS tristate "Mediavision Pro Movie Studio Video For Linux" depends on ISA && VIDEO_V4L2 help Say Y if you have such a thing. To compile this driver as a module, choose M here: the module will be called pms. config VIDEO_BWQCAM tristate "Quickcam BW Video For Linux" depends on PARPORT && VIDEO_V4L2 help Say Y have if you the black and white version of the QuickCam camera. See the next option for the color version. To compile this driver as a module, choose M here: the module will be called bw-qcam. config VIDEO_CQCAM tristate "QuickCam Colour Video For Linux (EXPERIMENTAL)" depends on EXPERIMENTAL && PARPORT && VIDEO_V4L2 help This is the video4linux driver for the colour version of the Connectix QuickCam. If you have one of these cameras, say Y here, otherwise say N. This driver does not work with the original monochrome QuickCam, QuickCam VC or QuickClip. It is also available as a module (c-qcam). Read for more information. config VIDEO_W9966 tristate "W9966CF Webcam (FlyCam Supra and others) Video For Linux" depends on PARPORT_1284 && PARPORT && VIDEO_V4L2 help Video4linux driver for Winbond's w9966 based Webcams. Currently tested with the LifeView FlyCam Supra. If you have one of these cameras, say Y here otherwise say N. This driver is also available as a module (w9966). Check out for more information. source "drivers/media/video/cpia2/Kconfig" config VIDEO_VINO tristate "SGI Vino Video For Linux (EXPERIMENTAL)" depends on I2C && SGI_IP22 && EXPERIMENTAL && VIDEO_V4L2 select VIDEO_SAA7191 if VIDEO_HELPER_CHIPS_AUTO help Say Y here to build in support for the Vino video input system found on SGI Indy machines. source "drivers/media/video/zoran/Kconfig" config VIDEO_MEYE tristate "Sony Vaio Picturebook Motion Eye Video For Linux" depends on PCI && SONY_LAPTOP && VIDEO_V4L2 ---help--- This is the video4linux driver for the Motion Eye camera found in the Vaio Picturebook laptops. Please read the material in for more information. If you say Y or M here, you need to say Y or M to "Sony Laptop Extras" in the misc device section. To compile this driver as a module, choose M here: the module will be called meye. source "drivers/media/video/saa7134/Kconfig" config VIDEO_MXB tristate "Siemens-Nixdorf 'Multimedia eXtension Board'" depends on PCI && VIDEO_V4L2 && I2C select VIDEO_SAA7146_VV select VIDEO_TUNER select VIDEO_SAA711X if VIDEO_HELPER_CHIPS_AUTO select VIDEO_TDA9840 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_TEA6415C if VIDEO_HELPER_CHIPS_AUTO select VIDEO_TEA6420 if VIDEO_HELPER_CHIPS_AUTO ---help--- This is a video4linux driver for the 'Multimedia eXtension Board' TV card by Siemens-Nixdorf. To compile this driver as a module, choose M here: the module will be called mxb. config VIDEO_HEXIUM_ORION tristate "Hexium HV-PCI6 and Orion frame grabber" depends on PCI && VIDEO_V4L2 && I2C select VIDEO_SAA7146_VV ---help--- This is a video4linux driver for the Hexium HV-PCI6 and Orion frame grabber cards by Hexium. To compile this driver as a module, choose M here: the module will be called hexium_orion. config VIDEO_HEXIUM_GEMINI tristate "Hexium Gemini frame grabber" depends on PCI && VIDEO_V4L2 && I2C select VIDEO_SAA7146_VV ---help--- This is a video4linux driver for the Hexium Gemini frame grabber card by Hexium. Please note that the Gemini Dual card is *not* fully supported. To compile this driver as a module, choose M here: the module will be called hexium_gemini. config VIDEO_TIMBERDALE tristate "Support for timberdale Video In/LogiWIN" depends on VIDEO_V4L2 && I2C select DMA_ENGINE select TIMB_DMA select VIDEO_ADV7180 select VIDEOBUF_DMA_CONTIG ---help--- Add support for the Video In peripherial of the timberdale FPGA. source "drivers/media/video/cx88/Kconfig" source "drivers/media/video/cx23885/Kconfig" source "drivers/media/video/au0828/Kconfig" source "drivers/media/video/ivtv/Kconfig" source "drivers/media/video/cx18/Kconfig" source "drivers/media/video/saa7164/Kconfig" config VIDEO_M32R_AR tristate "AR devices" depends on M32R && VIDEO_V4L2 ---help--- This is a video4linux driver for the Renesas AR (Artificial Retina) camera module. config VIDEO_M32R_AR_M64278 tristate "AR device with color module M64278(VGA)" depends on PLAT_M32700UT select VIDEO_M32R_AR ---help--- This is a video4linux driver for the Renesas AR (Artificial Retina) with M64278E-800 camera module. This module supports VGA(640x480 pixels) resolutions. To compile this driver as a module, choose M here: the module will be called arv. config VIDEO_CAFE_CCIC tristate "Marvell 88ALP01 (Cafe) CMOS Camera Controller support" depends on PCI && I2C && VIDEO_V4L2 select VIDEO_OV7670 ---help--- This is a video4linux2 driver for the Marvell 88ALP01 integrated CMOS camera controller. This is the controller found on first- generation OLPC systems. config VIDEO_SR030PC30 tristate "SR030PC30 VGA camera sensor support" depends on I2C && VIDEO_V4L2 ---help--- This driver supports SR030PC30 VGA camera from Siliconfile config VIDEO_VIA_CAMERA tristate "VIAFB camera controller support" depends on FB_VIA select VIDEOBUF_DMA_SG select VIDEO_OV7670 help Driver support for the integrated camera controller in VIA Chrome9 chipsets. Currently only tested on OLPC xo-1.5 systems with ov7670 sensors. config VIDEO_NOON010PC30 tristate "NOON010PC30 CIF camera sensor support" depends on I2C && VIDEO_V4L2 ---help--- This driver supports NOON010PC30 CIF camera from Siliconfile config VIDEO_OMAP3 tristate "OMAP 3 Camera support (EXPERIMENTAL)" select OMAP_IOMMU depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3 && EXPERIMENTAL ---help--- Driver for an OMAP 3 camera controller. config VIDEO_OMAP3_DEBUG bool "OMAP 3 Camera debug messages" depends on VIDEO_OMAP3 ---help--- Enable debug messages on OMAP 3 camera controller driver. config SOC_CAMERA tristate "SoC camera support" depends on VIDEO_V4L2 && HAS_DMA && I2C select VIDEOBUF_GEN select VIDEOBUF2_CORE help SoC Camera is a common API to several cameras, not connecting over a bus like PCI or USB. For example some i2c camera connected directly to the data bus of an SoC. config SOC_CAMERA_IMX074 tristate "imx074 support" depends on SOC_CAMERA && I2C help This driver supports IMX074 cameras from Sony config SOC_CAMERA_MT9M001 tristate "mt9m001 support" depends on SOC_CAMERA && I2C select GPIO_PCA953X if MT9M001_PCA9536_SWITCH help This driver supports MT9M001 cameras from Micron, monochrome and colour models. config SOC_CAMERA_MT9M111 tristate "mt9m111, mt9m112 and mt9m131 support" depends on SOC_CAMERA && I2C help This driver supports MT9M111, MT9M112 and MT9M131 cameras from Micron/Aptina config SOC_CAMERA_MT9T031 tristate "mt9t031 support" depends on SOC_CAMERA && I2C help This driver supports MT9T031 cameras from Micron. config SOC_CAMERA_MT9T112 tristate "mt9t112 support" depends on SOC_CAMERA && I2C help This driver supports MT9T112 cameras from Aptina. config SOC_CAMERA_MT9V022 tristate "mt9v022 support" depends on SOC_CAMERA && I2C select GPIO_PCA953X if MT9V022_PCA9536_SWITCH help This driver supports MT9V022 cameras from Micron config SOC_CAMERA_RJ54N1 tristate "rj54n1cb0c support" depends on SOC_CAMERA && I2C help This is a rj54n1cb0c video driver config SOC_CAMERA_TW9910 tristate "tw9910 support" depends on SOC_CAMERA && I2C help This is a tw9910 video driver config SOC_CAMERA_PLATFORM tristate "platform camera support" depends on SOC_CAMERA help This is a generic SoC camera platform driver, useful for testing config SOC_CAMERA_OV2640 tristate "ov2640 camera support" depends on SOC_CAMERA && I2C help This is a ov2640 camera driver config SOC_CAMERA_OV6650 tristate "ov6650 sensor support" depends on SOC_CAMERA && I2C ---help--- This is a V4L2 SoC camera driver for the OmniVision OV6650 sensor config SOC_CAMERA_OV772X tristate "ov772x camera support" depends on SOC_CAMERA && I2C help This is a ov772x camera driver config SOC_CAMERA_OV9640 tristate "ov9640 camera support" depends on SOC_CAMERA && I2C help This is a ov9640 camera driver config SOC_CAMERA_OV9740 tristate "ov9740 camera support" depends on SOC_CAMERA && I2C help This is a ov9740 camera driver config MX1_VIDEO bool config VIDEO_MX1 tristate "i.MX1/i.MXL CMOS Sensor Interface driver" depends on VIDEO_DEV && ARCH_MX1 && SOC_CAMERA select FIQ select VIDEOBUF_DMA_CONTIG select MX1_VIDEO ---help--- This is a v4l2 driver for the i.MX1/i.MXL CMOS Sensor Interface config MX3_VIDEO bool config VIDEO_MX3 tristate "i.MX3x Camera Sensor Interface driver" depends on VIDEO_DEV && MX3_IPU && SOC_CAMERA select VIDEOBUF2_DMA_CONTIG select MX3_VIDEO ---help--- This is a v4l2 driver for the i.MX3x Camera Sensor Interface config VIDEO_PXA27x tristate "PXA27x Quick Capture Interface driver" depends on VIDEO_DEV && PXA27x && SOC_CAMERA select VIDEOBUF_DMA_SG ---help--- This is a v4l2 driver for the PXA27x Quick Capture Interface config VIDEO_SH_MOBILE_CSI2 tristate "SuperH Mobile MIPI CSI-2 Interface driver" depends on VIDEO_DEV && SOC_CAMERA && HAVE_CLK ---help--- This is a v4l2 driver for the SuperH MIPI CSI-2 Interface config VIDEO_SH_MOBILE_CEU tristate "SuperH Mobile CEU Interface driver" depends on VIDEO_DEV && SOC_CAMERA && HAS_DMA && HAVE_CLK select VIDEOBUF2_DMA_CONTIG ---help--- This is a v4l2 driver for the SuperH Mobile CEU Interface config VIDEO_OMAP1 tristate "OMAP1 Camera Interface driver" depends on VIDEO_DEV && ARCH_OMAP1 && SOC_CAMERA select VIDEOBUF_DMA_CONTIG select VIDEOBUF_DMA_SG ---help--- This is a v4l2 driver for the TI OMAP1 camera interface config VIDEO_OMAP2 tristate "OMAP2 Camera Capture Interface driver" depends on VIDEO_DEV && ARCH_OMAP2 select VIDEOBUF_DMA_SG ---help--- This is a v4l2 driver for the TI OMAP2 camera capture interface config VIDEO_MX2_HOSTSUPPORT bool config VIDEO_MX2 tristate "i.MX27/i.MX25 Camera Sensor Interface driver" depends on VIDEO_DEV && SOC_CAMERA && (MACH_MX27 || ARCH_MX25) select VIDEOBUF_DMA_CONTIG select VIDEO_MX2_HOSTSUPPORT ---help--- This is a v4l2 driver for the i.MX27 and the i.MX25 Camera Sensor Interface # # USB Multimedia device configuration # menuconfig V4L_USB_DRIVERS bool "V4L USB devices" depends on USB default y if V4L_USB_DRIVERS && USB source "drivers/media/video/uvc/Kconfig" source "drivers/media/video/gspca/Kconfig" source "drivers/media/video/pvrusb2/Kconfig" source "drivers/media/video/hdpvr/Kconfig" source "drivers/media/video/em28xx/Kconfig" source "drivers/media/video/tlg2300/Kconfig" source "drivers/media/video/cx231xx/Kconfig" source "drivers/media/video/usbvision/Kconfig" source "drivers/media/video/et61x251/Kconfig" source "drivers/media/video/sn9c102/Kconfig" source "drivers/media/video/pwc/Kconfig" config USB_ZR364XX tristate "USB ZR364XX Camera support" depends on VIDEO_V4L2 select VIDEOBUF_GEN select VIDEOBUF_VMALLOC ---help--- Say Y here if you want to connect this type of camera to your computer's USB port. See for more info and list of supported cameras. To compile this driver as a module, choose M here: the module will be called zr364xx. config USB_STKWEBCAM tristate "USB Syntek DC1125 Camera support" depends on VIDEO_V4L2 && EXPERIMENTAL ---help--- Say Y here if you want to use this type of camera. Supported devices are typically found in some Asus laptops, with USB id 174f:a311 and 05e1:0501. Other Syntek cameras may be supported by the stk11xx driver, from which this is derived, see To compile this driver as a module, choose M here: the module will be called stkwebcam. config USB_S2255 tristate "USB Sensoray 2255 video capture device" depends on VIDEO_V4L2 select VIDEOBUF_VMALLOC default n help Say Y here if you want support for the Sensoray 2255 USB device. This driver can be compiled as a module, called s2255drv. endif # V4L_USB_DRIVERS endif # VIDEO_CAPTURE_DRIVERS menuconfig V4L_MEM2MEM_DRIVERS bool "Memory-to-memory multimedia devices" depends on VIDEO_V4L2 default n ---help--- Say Y here to enable selecting drivers for V4L devices that use system memory for both source and destination buffers, as opposed to capture and output drivers, which use memory buffers for just one of those. if V4L_MEM2MEM_DRIVERS config VIDEO_MEM2MEM_TESTDEV tristate "Virtual test device for mem2mem framework" depends on VIDEO_DEV && VIDEO_V4L2 select VIDEOBUF2_VMALLOC select V4L2_MEM2MEM_DEV default n ---help--- This is a virtual test device for the memory-to-memory driver framework. config VIDEO_SAMSUNG_S5P_FIMC tristate "Samsung S5P FIMC (video postprocessor) driver" depends on VIDEO_DEV && VIDEO_V4L2 && PLAT_S5P select VIDEOBUF2_DMA_CONTIG select V4L2_MEM2MEM_DEV help This is a v4l2 driver for the S5P camera interface (video postprocessor) endif # V4L_MEM2MEM_DRIVERS config VIDEO_SAA7164 tristate "NXP SAA7164 support" depends on DVB_CORE && PCI && I2C select I2C_ALGOBIT select FW_LOADER select VIDEO_TUNER select VIDEO_TVEEPROM select VIDEOBUF_DVB select DVB_TDA10048 if !DVB_FE_CUSTOMISE select DVB_S5H1411 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_TDA18271 if !MEDIA_TUNER_CUSTOMISE ---help--- This is a video4linux driver for NXP SAA7164 based TV cards. To compile this driver as a module, choose M here: the module will be called saa7164 config VIDEO_OMAP2_VOUT tristate "OMAP2/OMAP3 V4L2-Display driver" depends on ARCH_OMAP2 || ARCH_OMAP3 select VIDEOBUF_GEN select VIDEOBUF_DMA_CONTIG select OMAP2_DSS select OMAP2_VRAM select OMAP2_VRFB default n ---help--- V4L2 Display driver support for OMAP2/3 based boards. config VIDEO_PVRUSB2 tristate "Hauppauge WinTV-PVR USB2 support" depends on VIDEO_V4L2 && I2C depends on VIDEO_MEDIA # Avoids pvrusb = Y / DVB = M select VIDEO_TUNER select VIDEO_TVEEPROM select VIDEO_CX2341X select VIDEO_SAA711X select VIDEO_CX25840 select VIDEO_MSP3400 select VIDEO_WM8775 select VIDEO_CS53L32A ---help--- This is a video4linux driver for Conexant 23416 based usb2 personal video recorder devices. To compile this driver as a module, choose M here: the module will be called pvrusb2 config VIDEO_PVRUSB2_SYSFS bool "pvrusb2 sysfs support (EXPERIMENTAL)" default y depends on VIDEO_PVRUSB2 && SYSFS && EXPERIMENTAL ---help--- This option enables the operation of a sysfs based interface for query and control of the pvrusb2 driver. This is not generally needed for v4l applications, although certain applications are optimized to take advantage of this feature. If you are in doubt, say Y. Note: This feature is experimental and subject to change. config VIDEO_PVRUSB2_DVB bool "pvrusb2 ATSC/DVB support (EXPERIMENTAL)" default y depends on VIDEO_PVRUSB2 && DVB_CORE && EXPERIMENTAL select DVB_LGDT330X if !DVB_FE_CUSTOMISE select DVB_S5H1409 if !DVB_FE_CUSTOMISE select DVB_S5H1411 if !DVB_FE_CUSTOMISE select DVB_TDA10048 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_TDA18271 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA8290 if !MEDIA_TUNER_CUSTOMISE ---help--- This option enables a DVB interface for the pvrusb2 driver. If your device does not support digital television, this feature will have no affect on the driver's operation. If you are in doubt, say Y. config VIDEO_PVRUSB2_DEBUGIFC bool "pvrusb2 debug interface" depends on VIDEO_PVRUSB2_SYSFS ---help--- This option enables the inclusion of a debug interface in the pvrusb2 driver, hosted through sysfs. You do not need to select this option unless you plan on debugging the driver or performing a manual firmware extraction. If you are in doubt, say N. config VIDEO_BT848 tristate "BT848 Video For Linux" depends on VIDEO_DEV && PCI && I2C && VIDEO_V4L2 select I2C_ALGOBIT select VIDEO_BTCX select VIDEOBUF_DMA_SG depends on RC_CORE select VIDEO_TUNER select VIDEO_TVEEPROM select VIDEO_MSP3400 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_TVAUDIO if VIDEO_HELPER_CHIPS_AUTO select VIDEO_TDA7432 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_SAA6588 if VIDEO_HELPER_CHIPS_AUTO ---help--- Support for BT848 based frame grabber/overlay boards. This includes the Miro, Hauppauge and STB boards. Please read the material in for more information. To compile this driver as a module, choose M here: the module will be called bttv. config VIDEO_BT848_DVB bool "DVB/ATSC Support for bt878 based TV cards" depends on VIDEO_BT848 && DVB_CORE select DVB_BT8XX ---help--- This adds support for DVB/ATSC cards based on the BT878 chip. config USB_VIDEO_CLASS tristate "USB Video Class (UVC)" ---help--- Support for the USB Video Class (UVC). Currently only video input devices, such as webcams, are supported. For more information see: config USB_VIDEO_CLASS_INPUT_EVDEV bool "UVC input events device support" default y depends on USB_VIDEO_CLASS=INPUT || INPUT=y ---help--- This option makes USB Video Class devices register an input device to report button events. If you are in doubt, say Y. config USB_ET61X251 tristate "USB ET61X[12]51 PC Camera Controller support (DEPRECATED)" depends on VIDEO_V4L2 default n ---help--- This driver is DEPRECATED please use the gspca zc3xx module instead. Say Y here if you want support for cameras based on Etoms ET61X151 or ET61X251 PC Camera Controllers. See for more info. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" to use this driver. To compile this driver as a module, choose M here: the module will be called et61x251. config VIDEO_SAA7134 tristate "Philips SAA7134 support" depends on VIDEO_DEV && PCI && I2C select VIDEOBUF_DMA_SG select VIDEO_TUNER select VIDEO_TVEEPROM select CRC32 select VIDEO_SAA6588 if VIDEO_HELPER_CHIPS_AUTO ---help--- This is a video4linux driver for Philips SAA713x based TV cards. To compile this driver as a module, choose M here: the module will be called saa7134. config VIDEO_SAA7134_ALSA tristate "Philips SAA7134 DMA audio support" depends on VIDEO_SAA7134 && SND select SND_PCM ---help--- This is a video4linux driver for direct (DMA) audio in Philips SAA713x based TV cards using ALSA To compile this driver as a module, choose M here: the module will be called saa7134-alsa. config VIDEO_SAA7134_RC bool "Philips SAA7134 Remote Controller support" depends on RC_CORE depends on VIDEO_SAA7134 depends on !(RC_CORE=m && VIDEO_SAA7134=y) default y ---help--- Enables Remote Controller support on saa7134 driver. config VIDEO_SAA7134_DVB tristate "DVB/ATSC Support for saa7134 based TV cards" depends on VIDEO_SAA7134 && DVB_CORE select VIDEOBUF_DVB select DVB_PLL if !DVB_FE_CUSTOMISE select DVB_MT352 if !DVB_FE_CUSTOMISE select DVB_TDA1004X if !DVB_FE_CUSTOMISE select DVB_NXT200X if !DVB_FE_CUSTOMISE select DVB_TDA10086 if !DVB_FE_CUSTOMISE select DVB_TDA826X if !DVB_FE_CUSTOMISE select DVB_ISL6421 if !DVB_FE_CUSTOMISE select DVB_ISL6405 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_TDA827X if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_SIMPLE if !MEDIA_TUNER_CUSTOMISE select DVB_ZL10036 if !DVB_FE_CUSTOMISE select DVB_MT312 if !DVB_FE_CUSTOMISE select DVB_LNBP21 if !DVB_FE_CUSTOMISE select DVB_ZL10353 if !DVB_FE_CUSTOMISE select DVB_LGDT3305 if !DVB_FE_CUSTOMISE select DVB_TDA10048 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_TDA18271 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA8290 if !MEDIA_TUNER_CUSTOMISE select DVB_ZL10039 if !DVB_FE_CUSTOMISE ---help--- This adds support for DVB cards based on the Philips saa7134 chip. To compile this driver as a module, choose M here: the module will be called saa7134-dvb. config VIDEO_HDPVR tristate "Hauppauge HD PVR support" depends on VIDEO_DEV ---help--- This is a video4linux driver for Hauppauge's HD PVR USB device. To compile this driver as a module, choose M here: the module will be called hdpvr config DISPLAY_DAVINCI_DM646X_EVM tristate "DM646x EVM Video Display" depends on VIDEO_DEV && MACH_DAVINCI_DM6467_EVM select VIDEOBUF_DMA_CONTIG select VIDEO_DAVINCI_VPIF select VIDEO_ADV7343 select VIDEO_THS7303 help Support for DM6467 based display device. To compile this driver as a module, choose M here: the module will be called vpif_display. config CAPTURE_DAVINCI_DM646X_EVM tristate "DM646x EVM Video Capture" depends on VIDEO_DEV && MACH_DAVINCI_DM6467_EVM select VIDEOBUF_DMA_CONTIG select VIDEO_DAVINCI_VPIF help Support for DM6467 based capture device. To compile this driver as a module, choose M here: the module will be called vpif_capture. config VIDEO_DAVINCI_VPIF tristate "DaVinci VPIF Driver" depends on DISPLAY_DAVINCI_DM646X_EVM help Support for DaVinci VPIF Driver. To compile this driver as a module, choose M here: the module will be called vpif. config VIDEO_VPSS_SYSTEM tristate "VPSS System module driver" depends on ARCH_DAVINCI help Support for vpss system module for video driver config VIDEO_VPFE_CAPTURE tristate "VPFE Video Capture Driver" depends on VIDEO_V4L2 && (ARCH_DAVINCI || ARCH_OMAP3) select VIDEOBUF_DMA_CONTIG help Support for DMx/AMx VPFE based frame grabber. This is the common V4L2 module for following DMx/AMx SoCs from Texas Instruments:- DM6446, DM365, DM355 & AM3517/05. To compile this driver as a module, choose M here: the module will be called vpfe-capture. config VIDEO_DM6446_CCDC tristate "DM6446 CCDC HW module" depends on VIDEO_VPFE_CAPTURE select VIDEO_VPSS_SYSTEM default y help Enables DaVinci CCD hw module. DaVinci CCDC hw interfaces with decoder modules such as TVP5146 over BT656 or sensor module such as MT9T001 over a raw interface. This module configures the interface and CCDC/ISIF to do video frame capture from slave decoders. To compile this driver as a module, choose M here: the module will be called vpfe. config VIDEO_DM355_CCDC tristate "DM355 CCDC HW module" depends on ARCH_DAVINCI_DM355 && VIDEO_VPFE_CAPTURE select VIDEO_VPSS_SYSTEM default y help Enables DM355 CCD hw module. DM355 CCDC hw interfaces with decoder modules such as TVP5146 over BT656 or sensor module such as MT9T001 over a raw interface. This module configures the interface and CCDC/ISIF to do video frame capture from a slave decoders To compile this driver as a module, choose M here: the module will be called vpfe. config VIDEO_ISIF tristate "ISIF HW module" depends on ARCH_DAVINCI_DM365 && VIDEO_VPFE_CAPTURE select VIDEO_VPSS_SYSTEM default y help Enables ISIF hw module. This is the hardware module for configuring ISIF in VPFE to capture Raw Bayer RGB data from a image sensor or YUV data from a YUV source. To compile this driver as a module, choose M here: the module will be called vpfe. config VIDEO_CX231XX tristate "Conexant cx231xx USB video capture support" depends on VIDEO_DEV && I2C select VIDEO_TUNER select VIDEO_TVEEPROM depends on RC_CORE select VIDEOBUF_VMALLOC select VIDEO_CX25840 select VIDEO_CX2341X ---help--- This is a video4linux driver for Conexant 231xx USB based TV cards. To compile this driver as a module, choose M here: the module will be called cx231xx config VIDEO_CX231XX_RC bool "Conexant cx231xx Remote Controller additional support" depends on RC_CORE depends on VIDEO_CX231XX default y ---help--- cx231xx hardware has a builtin RX/TX support. However, a few designs opted to not use it, but, instead, some other hardware. This module enables the usage of those other hardware, like the ones used with ISDB-T boards. On most cases, all you need for IR is mceusb module. config VIDEO_CX231XX_ALSA tristate "Conexant Cx231xx ALSA audio module" depends on VIDEO_CX231XX && SND select SND_PCM ---help--- This is an ALSA driver for Cx231xx USB based TV cards. To compile this driver as a module, choose M here: the module will be called cx231xx-alsa config VIDEO_CX231XX_DVB tristate "DVB/ATSC Support for Cx231xx based TV cards" depends on VIDEO_CX231XX && DVB_CORE select VIDEOBUF_DVB select MEDIA_TUNER_XC5000 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_NXP18271 if !DVB_FE_CUSTOMISE select DVB_MB86A20S if !DVB_FE_CUSTOMISE ---help--- This adds support for DVB cards based on the Conexant cx231xx chips. config VIDEO_CPIA2 tristate "CPiA2 Video For Linux" depends on VIDEO_DEV && USB && VIDEO_V4L2 ---help--- This is the video4linux driver for cameras based on Vision's CPiA2 (Colour Processor Interface ASIC), such as the Digital Blue QX5 Microscope. If you have one of these cameras, say Y here This driver is also available as a module (cpia2). config VIDEO_CX23885 tristate "Conexant cx23885 (2388x successor) support" depends on DVB_CORE && VIDEO_DEV && PCI && I2C && INPUT && SND select SND_PCM select I2C_ALGOBIT select VIDEO_BTCX select VIDEO_TUNER select VIDEO_TVEEPROM depends on RC_CORE select VIDEOBUF_DVB select VIDEOBUF_DMA_SG select VIDEO_CX25840 select VIDEO_CX2341X select DVB_DIB7000P if !DVB_FE_CUSTOMISE select DVB_S5H1409 if !DVB_FE_CUSTOMISE select DVB_S5H1411 if !DVB_FE_CUSTOMISE select DVB_LGDT330X if !DVB_FE_CUSTOMISE select DVB_ZL10353 if !DVB_FE_CUSTOMISE select DVB_TDA10048 if !DVB_FE_CUSTOMISE select DVB_LNBP21 if !DVB_FE_CUSTOMISE select DVB_STV6110 if !DVB_FE_CUSTOMISE select DVB_CX24116 if !DVB_FE_CUSTOMISE select DVB_STV0900 if !DVB_FE_CUSTOMISE select DVB_DS3000 if !DVB_FE_CUSTOMISE select DVB_STV0367 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_MT2131 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_XC2028 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA8290 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA18271 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_XC5000 if !MEDIA_TUNER_CUSTOMISE ---help--- This is a video4linux driver for Conexant 23885 based TV cards. To compile this driver as a module, choose M here: the module will be called cx23885 config MEDIA_ALTERA_CI tristate "Altera FPGA based CI module" depends on VIDEO_CX23885 && DVB_CORE select STAPL_ALTERA ---help--- An Altera FPGA CI module for NetUP Dual DVB-T/C RF CI card. To compile this driver as a module, choose M here: the module will be called altera-ci config VIDEO_AU0828 tristate "Auvitek AU0828 support" depends on I2C && INPUT && DVB_CORE && USB && VIDEO_V4L2 select I2C_ALGOBIT select VIDEO_TVEEPROM select VIDEOBUF_VMALLOC select DVB_AU8522 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_XC5000 if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_MXL5007T if !MEDIA_TUNER_CUSTOMISE select MEDIA_TUNER_TDA18271 if !MEDIA_TUNER_CUSTOMISE ---help--- This is a video4linux driver for Auvitek's USB device. To compile this driver as a module, choose M here: the module will be called au0828 config VIDEO_CX18 tristate "Conexant cx23418 MPEG encoder support" depends on VIDEO_V4L2 && DVB_CORE && PCI && I2C && EXPERIMENTAL select I2C_ALGOBIT depends on RC_CORE select VIDEO_TUNER select VIDEO_TVEEPROM select VIDEO_CX2341X select VIDEO_CS5345 select DVB_S5H1409 if !DVB_FE_CUSTOMISE select MEDIA_TUNER_MXL5005S if !MEDIA_TUNER_CUSTOMISE ---help--- This is a video4linux driver for Conexant cx23418 based PCI combo video recorder devices. This is used in devices such as the Hauppauge HVR-1600 cards. To compile this driver as a module, choose M here: the module will be called cx18. config VIDEO_CX18_ALSA tristate "Conexant 23418 DMA audio support" depends on VIDEO_CX18 && SND && EXPERIMENTAL select SND_PCM ---help--- This is a video4linux driver for direct (DMA) audio on Conexant 23418 based TV cards using ALSA. To compile this driver as a module, choose M here: the module will be called cx18-alsa. config VIDEO_IVTV tristate "Conexant cx23416/cx23415 MPEG encoder/decoder support" depends on VIDEO_V4L2 && PCI && I2C select I2C_ALGOBIT depends on RC_CORE select VIDEO_TUNER select VIDEO_TVEEPROM select VIDEO_CX2341X select VIDEO_CX25840 select VIDEO_MSP3400 select VIDEO_SAA711X select VIDEO_SAA717X select VIDEO_SAA7127 select VIDEO_CS53L32A select VIDEO_M52790 select VIDEO_WM8775 select VIDEO_WM8739 select VIDEO_VP27SMPX select VIDEO_UPD64031A select VIDEO_UPD64083 ---help--- This is a video4linux driver for Conexant cx23416 or cx23415 based PCI personal video recorder devices. This is used in devices such as the Hauppauge PVR-150/250/350/500 cards. There is a driver homepage at . To compile this driver as a module, choose M here: the module will be called ivtv. config VIDEO_FB_IVTV tristate "Conexant cx23415 framebuffer support" depends on VIDEO_IVTV && FB select FB_CFB_FILLRECT select FB_CFB_COPYAREA select FB_CFB_IMAGEBLIT ---help--- This is a framebuffer driver for the Conexant cx23415 MPEG encoder/decoder. This is used in the Hauppauge PVR-350 card. There is a driver homepage at . To compile this driver as a module, choose M here: the module will be called ivtvfb. config VIDEO_EM28XX tristate "Empia EM28xx USB video capture support" depends on VIDEO_DEV && I2C select VIDEO_TUNER select VIDEO_TVEEPROM depends on RC_CORE select VIDEOBUF_VMALLOC select VIDEO_SAA711X if VIDEO_HELPER_CHIPS_AUTO select VIDEO_TVP5150 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_MSP3400 if VIDEO_HELPER_CHIPS_AUTO select VIDEO_MT9V011 if VIDEO_HELPER_CHIPS_AUTO ---help--- This is a video4linux driver for Empia 28xx based TV cards. To compile this driver as a module, choose M here: the module will be called em28xx config VIDEO_EM28XX_ALSA depends on VIDEO_EM28XX && SND select SND_PCM tristate "Empia EM28xx ALSA audio module" ---help--- This is an ALSA driver for some Empia 28xx based TV cards. This is not required for em2800/em2820/em2821 boards. However, newer em28xx devices uses Vendor Class for audio, instead of implementing the USB Audio Class. For those chips, this module will enable digital audio. To compile this driver as a module, choose M here: the module will be called em28xx-alsa config VIDEO_EM28XX_DVB tristate "DVB/ATSC Support for em28xx based TV cards" depends on VIDEO_EM28XX && DVB_CORE select DVB_LGDT330X if !DVB_FE_CUSTOMISE select DVB_ZL10353 if !DVB_FE_CUSTOMISE select DVB_TDA10023 if !DVB_FE_CUSTOMISE select DVB_S921 if !DVB_FE_CUSTOMISE select VIDEOBUF_DVB ---help--- This adds support for DVB cards based on the Empiatech em28xx chips. menuconfig USB_GSPCA tristate "GSPCA based webcams" depends on VIDEO_V4L2 default m ---help--- Say Y here if you want to enable selecting webcams based on the GSPCA framework. See for more info. This driver uses the Video For Linux API. You must say Y or M to "Video For Linux" to use this driver. To compile this driver as modules, choose M here: the module will be called gspca_main. if USB_GSPCA && VIDEO_V4L2 source "drivers/media/video/gspca/m5602/Kconfig" source "drivers/media/video/gspca/stv06xx/Kconfig" source "drivers/media/video/gspca/gl860/Kconfig" config USB_GSPCA_BENQ tristate "Benq USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for the Benq DC E300 camera. To compile this driver as a module, choose M here: the module will be called gspca_benq. config USB_GSPCA_CONEX tristate "Conexant Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the Conexant chip. To compile this driver as a module, choose M here: the module will be called gspca_conex. config USB_GSPCA_CPIA1 tristate "cpia CPiA (version 1) Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for USB cameras based on the cpia CPiA chip. Note that you need atleast version 0.6.4 of libv4l for applications to understand the videoformat generated by this driver. To compile this driver as a module, choose M here: the module will be called gspca_cpia1. config USB_GSPCA_ETOMS tristate "Etoms USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the Etoms chip. To compile this driver as a module, choose M here: the module will be called gspca_etoms. config USB_GSPCA_FINEPIX tristate "Fujifilm FinePix USB V4L2 driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the FinePix chip. To compile this driver as a module, choose M here: the module will be called gspca_finepix. config USB_GSPCA_JEILINJ tristate "Jeilin JPEG USB V4L2 driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on this Jeilin chip. To compile this driver as a module, choose M here: the module will be called gspca_jeilinj. config USB_GSPCA_KONICA tristate "Konica USB Camera V4L2 driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the Konica chip. To compile this driver as a module, choose M here: the module will be called gspca_konica. config USB_GSPCA_MARS tristate "Mars USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the Mars chip. To compile this driver as a module, choose M here: the module will be called gspca_mars. config USB_GSPCA_MR97310A tristate "Mars-Semi MR97310A USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the MR97310A chip. To compile this driver as a module, choose M here: the module will be called gspca_mr97310a. config USB_GSPCA_NW80X tristate "Divio based (NW80x) USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the NW80x chips. To compile this driver as a module, choose M here: the module will be called gspca_nw80x. config USB_GSPCA_OV519 tristate "OV51x / OVFX2 / W996xCF USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on one of these: OV511(+), OV518(+), OV519, OVFX2, W9967CF, W9968CF To compile this driver as a module, choose M here: the module will be called gspca_ov519. config USB_GSPCA_OV534 tristate "OV534 OV772x USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the OV534 chip and sensor OV772x (e.g. Sony Playstation EYE) To compile this driver as a module, choose M here: the module will be called gspca_ov534. config USB_GSPCA_OV534_9 tristate "OV534 OV965x USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the OV534 chip and sensor OV965x (e.g. Hercules Dualpix) To compile this driver as a module, choose M here: the module will be called gspca_ov534_9. config USB_GSPCA_PAC207 tristate "Pixart PAC207 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the PAC207 chip. To compile this driver as a module, choose M here: the module will be called gspca_pac207. config USB_GSPCA_PAC7302 tristate "Pixart PAC7302 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the PAC7302 chip. To compile this driver as a module, choose M here: the module will be called gspca_pac7302. config USB_GSPCA_PAC7311 tristate "Pixart PAC7311 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the PAC7311 chip. To compile this driver as a module, choose M here: the module will be called gspca_pac7311. config USB_GSPCA_SN9C2028 tristate "SONIX Dual-Mode USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want streaming support for Sonix SN9C2028 cameras. These are supported as stillcams in libgphoto2/camlibs/sonix. To compile this driver as a module, choose M here: the module will be called gspca_sn9c2028. config USB_GSPCA_SN9C20X tristate "SN9C20X USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the sn9c20x chips (SN9C201 and SN9C202). To compile this driver as a module, choose M here: the module will be called gspca_sn9c20x. config USB_GSPCA_SONIXB tristate "SONIX Bayer USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the Sonix chips with Bayer format (SN9C101, SN9C102 and SN9C103). To compile this driver as a module, choose M here: the module will be called gspca_sonixb. config USB_GSPCA_SONIXJ tristate "SONIX JPEG USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the Sonix chips with JPEG format (SN9C102P, SN9C105 and >= SN9C110). To compile this driver as a module, choose M here: the module will be called gspca_sonixj config USB_GSPCA_SPCA500 tristate "SPCA500 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SPCA500 chip. To compile this driver as a module, choose M here: the module will be called gspca_spca500. config USB_GSPCA_SPCA501 tristate "SPCA501 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SPCA501 chip. To compile this driver as a module, choose M here: the module will be called gspca_spca501. config USB_GSPCA_SPCA505 tristate "SPCA505 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SPCA505 chip. To compile this driver as a module, choose M here: the module will be called gspca_spca505. config USB_GSPCA_SPCA506 tristate "SPCA506 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SPCA506 chip. To compile this driver as a module, choose M here: the module will be called gspca_spca506. config USB_GSPCA_SPCA508 tristate "SPCA508 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SPCA508 chip. To compile this driver as a module, choose M here: the module will be called gspca_spca508. config USB_GSPCA_SPCA561 tristate "SPCA561 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SPCA561 chip. To compile this driver as a module, choose M here: the module will be called gspca_spca561. config USB_GSPCA_SPCA1528 tristate "SPCA1528 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SPCA1528 chip. To compile this driver as a module, choose M here: the module will be called gspca_spca1528. config USB_GSPCA_SQ905 tristate "SQ Technologies SQ905 based USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SQ905 chip. To compile this driver as a module, choose M here: the module will be called gspca_sq905. config USB_GSPCA_SQ905C tristate "SQ Technologies SQ905C based USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SQ905C chip. To compile this driver as a module, choose M here: the module will be called gspca_sq905c. config USB_GSPCA_SQ930X tristate "SQ Technologies SQ930X based USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the SQ930X chip. To compile this driver as a module, choose M here: the module will be called gspca_sq930x. config USB_GSPCA_STK014 tristate "Syntek DV4000 (STK014) USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the STK014 chip. To compile this driver as a module, choose M here: the module will be called gspca_stk014. config USB_GSPCA_STV0680 tristate "STV0680 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the STV0680 chip. To compile this driver as a module, choose M here: the module will be called gspca_stv0680. config USB_GSPCA_SUNPLUS tristate "SUNPLUS USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the Sunplus SPCA504(abc) SPCA533 SPCA536 chips. To compile this driver as a module, choose M here: the module will be called gspca_sunplus. config USB_GSPCA_T613 tristate "T613 (JPEG Compliance) USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the T613 chip. To compile this driver as a module, choose M here: the module will be called gspca_t613. config USB_GSPCA_TV8532 tristate "TV8532 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the TV8531 chip. To compile this driver as a module, choose M here: the module will be called gspca_tv8532. config USB_GSPCA_VC032X tristate "VC032X USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the VC032X chip. To compile this driver as a module, choose M here: the module will be called gspca_vc032x. config USB_GSPCA_VICAM tristate "ViCam USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for the 3com homeconnect camera (vicam). To compile this driver as a module, choose M here: the module will be called gspca_vicam. config USB_GSPCA_XIRLINK_CIT tristate "Xirlink C-It USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for Xirlink C-It bases cameras. To compile this driver as a module, choose M here: the module will be called gspca_xirlink_cit. config USB_GSPCA_ZC3XX tristate "ZC3XX USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the ZC3XX chip. To compile this driver as a module, choose M here: the module will be called gspca_zc3xx. endif config USB_STV06XX tristate "STV06XX USB Camera Driver" depends on USB_GSPCA help Say Y here if you want support for cameras based on the ST STV06XX chip. To compile this driver as a module, choose M here: the module will be called gspca_stv06xx. config USB_M5602 tristate "ALi USB m5602 Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the ALi m5602 connected to various image sensors. See for more info. To compile this driver as a module, choose M here: the module will be called gspca_m5602. config USB_GL860 tristate "GL860 USB Camera Driver" depends on VIDEO_V4L2 && USB_GSPCA help Say Y here if you want support for cameras based on the GL860 chip. To compile this driver as a module, choose M here: the module will be called gspca_gl860. config VIDEO_USBVISION tristate "USB video devices based on Nogatech NT1003/1004/1005" depends on I2C && VIDEO_V4L2 select VIDEO_TUNER select VIDEO_SAA711X if VIDEO_HELPER_CHIPS_AUTO ---help--- There are more than 50 different USB video devices based on NT1003/1004/1005 USB Bridges. This driver enables using those devices. To compile this driver as a module, choose M here: the module will be called usbvision. config USB_SN9C102 tristate "USB SN9C1xx PC Camera Controller support (DEPRECATED)" depends on VIDEO_V4L2 ---help--- This driver is DEPRECATED please use the gspca sonixb and sonixj modules instead. Say Y here if you want support for cameras based on SONiX SN9C101, SN9C102, SN9C103, SN9C105 and SN9C120 PC Camera Controllers. See for more info. To compile this driver as a module, choose M here: the module will be called sn9c102. config RC_MAP tristate "Compile Remote Controller keymap modules" depends on RC_CORE default y ---help--- This option enables the compilation of lots of Remote Controller tables. They are short tables, but if you don't use a remote controller, or prefer to load the tables on userspace, you should disable it. The ir-keytable program, available at v4l-utils package provide the tool and the same RC maps for load from userspace. Its available at http://git.linuxtv.org/v4l-utils menuconfig RC_CORE tristate "Remote Controller adapters" depends on INPUT default INPUT ---help--- Enable support for Remote Controllers on Linux. This is needed in order to support several video capture adapters. Currently, all supported devices use InfraRed. Enable this option if you have a video capture board even if you don't need IR, as otherwise, you may not be able to compile the driver for your adapter. if RC_CORE config LIRC tristate default y ---help--- Enable this option to build the Linux Infrared Remote Control (LIRC) core device interface driver. The LIRC interface passes raw IR to and from userspace, where the LIRC daemon handles protocol decoding for IR reception and encoding for IR transmitting (aka "blasting"). source "drivers/media/rc/keymaps/Kconfig" config IR_NEC_DECODER tristate "Enable IR raw decoder for the NEC protocol" depends on RC_CORE select BITREVERSE default y ---help--- Enable this option if you have IR with NEC protocol, and if the IR is decoded in software config IR_RC5_DECODER tristate "Enable IR raw decoder for the RC-5 protocol" depends on RC_CORE select BITREVERSE default y ---help--- Enable this option if you have IR with RC-5 protocol, and if the IR is decoded in software config IR_RC6_DECODER tristate "Enable IR raw decoder for the RC6 protocol" depends on RC_CORE select BITREVERSE default y ---help--- Enable this option if you have an infrared remote control which uses the RC6 protocol, and you need software decoding support. config IR_JVC_DECODER tristate "Enable IR raw decoder for the JVC protocol" depends on RC_CORE select BITREVERSE default y ---help--- Enable this option if you have an infrared remote control which uses the JVC protocol, and you need software decoding support. config IR_SONY_DECODER tristate "Enable IR raw decoder for the Sony protocol" depends on RC_CORE default y ---help--- Enable this option if you have an infrared remote control which uses the Sony protocol, and you need software decoding support. config IR_RC5_SZ_DECODER tristate "Enable IR raw decoder for the RC-5 (streamzap) protocol" depends on RC_CORE select BITREVERSE default y ---help--- Enable this option if you have IR with RC-5 (streamzap) protocol, and if the IR is decoded in software. (The Streamzap PC Remote uses an IR protocol that is almost standard RC-5, but not quite, as it uses an additional bit). config IR_LIRC_CODEC tristate "Enable IR to LIRC bridge" depends on RC_CORE depends on LIRC default y ---help--- Enable this option to pass raw IR to and from userspace via the LIRC interface. config IR_ENE tristate "ENE eHome Receiver/Transceiver (pnp id: ENE0100/ENE02xxx)" depends on PNP depends on RC_CORE ---help--- Say Y here to enable support for integrated infrared receiver /transceiver made by ENE. You can see if you have it by looking at lspnp output. Output should include ENE0100 ENE0200 or something similar. To compile this driver as a module, choose M here: the module will be called ene_ir. config IR_IMON tristate "SoundGraph iMON Receiver and Display" depends on USB_ARCH_HAS_HCD depends on RC_CORE select USB ---help--- Say Y here if you want to use a SoundGraph iMON (aka Antec Veris) IR Receiver and/or LCD/VFD/VGA display. To compile this driver as a module, choose M here: the module will be called imon. config IR_MCEUSB tristate "Windows Media Center Ed. eHome Infrared Transceiver" depends on USB_ARCH_HAS_HCD depends on RC_CORE select USB ---help--- Say Y here if you want to use a Windows Media Center Edition eHome Infrared Transceiver. To compile this driver as a module, choose M here: the module will be called mceusb. config IR_ITE_CIR tristate "ITE Tech Inc. IT8712/IT8512 Consumer Infrared Transceiver" depends on PNP depends on RC_CORE ---help--- Say Y here to enable support for integrated infrared receivers /transceivers made by ITE Tech Inc. These are found in several ASUS devices, like the ASUS Digimatrix or the ASUS EEEBox 1501U. To compile this driver as a module, choose M here: the module will be called ite-cir. config IR_NUVOTON tristate "Nuvoton w836x7hg Consumer Infrared Transceiver" depends on PNP depends on RC_CORE ---help--- Say Y here to enable support for integrated infrared receiver /transciever made by Nuvoton (formerly Winbond). This chip is found in the ASRock ION 330HT, as well as assorted Intel DP55-series motherboards (and of course, possibly others). To compile this driver as a module, choose M here: the module will be called nuvoton-cir. config IR_STREAMZAP tristate "Streamzap PC Remote IR Receiver" depends on USB_ARCH_HAS_HCD depends on RC_CORE select USB ---help--- Say Y here if you want to use a Streamzap PC Remote Infrared Receiver. To compile this driver as a module, choose M here: the module will be called streamzap. config IR_WINBOND_CIR tristate "Winbond IR remote control" depends on X86 && PNP depends on RC_CORE select NEW_LEDS select LEDS_CLASS select LEDS_TRIGGERS select BITREVERSE ---help--- Say Y here if you want to use the IR remote functionality found in some Winbond SuperI/O chips. Currently only the WPCD376I chip is supported (included in some Intel Media series motherboards). To compile this driver as a module, choose M here: the module will be called winbond_cir. config RC_LOOPBACK tristate "Remote Control Loopback Driver" depends on RC_CORE ---help--- Say Y here if you want support for the remote control loopback driver which allows TX data to be sent back as RX data. This is mostly useful for debugging purposes. If you're not sure, select N here. To compile this driver as a module, choose M here: the module will be called rc_loopback. endif #RC_CORE # # Multimedia Video device configuration # menuconfig RADIO_ADAPTERS bool "Radio Adapters" depends on VIDEO_V4L2 default y ---help--- Say Y here to enable selecting AM/FM radio adapters. if RADIO_ADAPTERS && VIDEO_V4L2 config RADIO_CADET tristate "ADS Cadet AM/FM Tuner" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have one of these AM/FM radio cards, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . Further documentation on this driver can be found on the WWW at . To compile this driver as a module, choose M here: the module will be called radio-cadet. config RADIO_RTRACK tristate "AIMSlab RadioTrack (aka RadioReveal) support" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have one of these FM radio cards, and then fill in the port address below. Note that newer AIMSlab RadioTrack cards have a different chipset and are not supported by this driver. For these cards, use the RadioTrack II driver below. If you have a GemTeks combined (PnP) sound- and radio card you must use this driver as a module and setup the card with isapnptools. You must also pass the module a suitable io parameter, 0x248 has been reported to be used by these cards. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . More information is contained in the file . To compile this driver as a module, choose M here: the module will be called radio-aimslab. config RADIO_RTRACK_PORT hex "RadioTrack i/o port (0x20f or 0x30f)" depends on RADIO_RTRACK=y default "20f" help Enter either 0x30f or 0x20f here. The card default is 0x30f, if you haven't changed the jumper setting on the card. config RADIO_RTRACK2 tristate "AIMSlab RadioTrack II support" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have this FM radio card, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-rtrack2. config RADIO_RTRACK2_PORT hex "RadioTrack II i/o port (0x20c or 0x30c)" depends on RADIO_RTRACK2=y default "30c" help Enter either 0x30c or 0x20c here. The card default is 0x30c, if you haven't changed the jumper setting on the card. config RADIO_AZTECH tristate "Aztech/Packard Bell Radio" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have one of these FM radio cards, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-aztech. config RADIO_AZTECH_PORT hex "Aztech/Packard Bell I/O port (0x350 or 0x358)" depends on RADIO_AZTECH=y default "350" help Enter either 0x350 or 0x358 here. The card default is 0x350, if you haven't changed the setting of jumper JP3 on the card. Removing the jumper sets the card to 0x358. config RADIO_GEMTEK tristate "GemTek Radio card (or compatible) support" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have this FM radio card, and then fill in the I/O port address and settings below. The following cards either have GemTek Radio tuner or are rebranded GemTek Radio cards: - Sound Vision 16 Gold with FM Radio - Typhoon Radio card (some models) - Hama Radio card In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-gemtek. config RADIO_GEMTEK_PORT hex "Fixed I/O port (0x20c, 0x30c, 0x24c, 0x34c, 0c24c or 0x28c)" depends on RADIO_GEMTEK=y default "34c" help Enter either 0x20c, 0x30c, 0x24c or 0x34c here. The card default is 0x34c, if you haven't changed the jumper setting on the card. On Sound Vision 16 Gold PnP with FM Radio (ESS1869+FM Gemtek), the I/O port is 0x20c, 0x248 or 0x28c. If automatic I/O port probing is enabled this port will be used only in case of automatic probing failure, ie. as a fallback. config RADIO_GEMTEK_PROBE bool "Automatic I/O port probing" depends on RADIO_GEMTEK=y default y help Say Y here to enable automatic probing for GemTek Radio card. The following ports will be probed: 0x20c, 0x30c, 0x24c, 0x34c, 0x248 and 0x28c. config RADIO_MAXIRADIO tristate "Guillemot MAXI Radio FM 2000 radio" depends on VIDEO_V4L2 && PCI ---help--- Choose Y here if you have this radio card. This card may also be found as Gemtek PCI FM. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-maxiradio. config RADIO_MAESTRO tristate "Maestro on board radio" depends on VIDEO_V4L2 && PCI ---help--- Say Y here to directly support the on-board radio tuner on the Maestro 2 or 2E sound card. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-maestro. config RADIO_MIROPCM20 tristate "miroSOUND PCM20 radio" depends on ISA && VIDEO_V4L2 && SND select SND_ISA select SND_MIRO ---help--- Choose Y here if you have this FM radio card. You also need to enable the ALSA sound system. This choice automatically selects the ALSA sound card driver "Miro miroSOUND PCM1pro/PCM12/PCM20radio" as this is required for the radio-miropcm20. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-miropcm20. config RADIO_SF16FMI tristate "SF16-FMI/SF16-FMP Radio" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have one of these FM radio cards. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-sf16fmi. config RADIO_SF16FMR2 tristate "SF16FMR2 Radio" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have one of these FM radio cards. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found on the WWW at . To compile this driver as a module, choose M here: the module will be called radio-sf16fmr2. config RADIO_TERRATEC tristate "TerraTec ActiveRadio ISA Standalone" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have this FM radio card, and then fill in the port address below. (TODO) Note: This driver is in its early stages. Right now volume and frequency control and muting works at least for me, but unfortunately I have not found anybody who wants to use this card with Linux. So if it is this what YOU are trying to do right now, PLEASE DROP ME A NOTE!! Rolf Offermanns . In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-terratec. config RADIO_TERRATEC_PORT hex "Terratec i/o port (normally 0x590)" depends on RADIO_TERRATEC=y default "590" help Fill in the I/O port of your TerraTec FM radio card. If unsure, go with the default. config RADIO_TRUST tristate "Trust FM radio card" depends on ISA && VIDEO_V4L2 help This is a driver for the Trust FM radio cards. Say Y if you have such a card and want to use it under Linux. To compile this driver as a module, choose M here: the module will be called radio-trust. config RADIO_TRUST_PORT hex "Trust i/o port (usually 0x350 or 0x358)" depends on RADIO_TRUST=y default "350" help Enter the I/O port of your Trust FM radio card. If unsure, try the values "0x350" or "0x358". config RADIO_TYPHOON tristate "Typhoon Radio (a.k.a. EcoRadio)" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have one of these FM radio cards, and then fill in the port address and the frequency used for muting below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-typhoon. config RADIO_TYPHOON_PORT hex "Typhoon I/O port (0x316 or 0x336)" depends on RADIO_TYPHOON=y default "316" help Enter the I/O port of your Typhoon or EcoRadio radio card. config RADIO_TYPHOON_MUTEFREQ int "Typhoon frequency set when muting the device (kHz)" depends on RADIO_TYPHOON=y default "87500" help Enter the frequency used for muting the radio. The device is never completely silent. If the volume is just turned down, you can still hear silent voices and music. For that reason, the frequency of the radio device is set to the frequency you can enter here whenever the device is muted. There should be no local radio station at that frequency. config RADIO_ZOLTRIX tristate "Zoltrix Radio" depends on ISA && VIDEO_V4L2 ---help--- Choose Y here if you have one of these FM radio cards, and then fill in the port address below. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux API. Information on this API and pointers to "v4l" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-zoltrix. config RADIO_ZOLTRIX_PORT hex "ZOLTRIX I/O port (0x20c or 0x30c)" depends on RADIO_ZOLTRIX=y default "20c" help Enter the I/O port of your Zoltrix radio card. config I2C_SI4713 tristate "I2C driver for Silicon Labs Si4713 device" depends on I2C && VIDEO_V4L2 ---help--- Say Y here if you want support to Si4713 I2C device. This device driver supports only i2c bus. To compile this driver as a module, choose M here: the module will be called si4713. config RADIO_SI4713 tristate "Silicon Labs Si4713 FM Radio Transmitter support" depends on I2C && VIDEO_V4L2 select I2C_SI4713 ---help--- Say Y here if you want support to Si4713 FM Radio Transmitter. This device can transmit audio through FM. It can transmit RDS and RBDS signals as well. This module is the v4l2 radio interface for the i2c driver of this device. To compile this driver as a module, choose M here: the module will be called radio-si4713. config USB_DSBR tristate "D-Link/GemTek USB FM radio support" depends on USB && VIDEO_V4L2 ---help--- Say Y here if you want to connect this type of radio to your computer's USB port. Note that the audio is not digital, and you must connect the line out connector to a sound card or a set of speakers. To compile this driver as a module, choose M here: the module will be called dsbr100. config RADIO_SI470X bool "Silicon Labs Si470x FM Radio Receiver support" depends on VIDEO_V4L2 source "drivers/media/radio/si470x/Kconfig" config USB_MR800 tristate "AverMedia MR 800 USB FM radio support" depends on USB && VIDEO_V4L2 ---help--- Say Y here if you want to connect this type of radio to your computer's USB port. Note that the audio is not digital, and you must connect the line out connector to a sound card or a set of speakers. To compile this driver as a module, choose M here: the module will be called radio-mr800. config RADIO_TEA5764 tristate "TEA5764 I2C FM radio support" depends on I2C && VIDEO_V4L2 ---help--- Say Y here if you want to use the TEA5764 FM chip found in EZX phones. This FM chip is present in EZX phones from Motorola, connected to internal pxa I2C bus. To compile this driver as a module, choose M here: the module will be called radio-tea5764. config RADIO_TEA5764_XTAL bool "TEA5764 crystal reference" depends on RADIO_TEA5764=y default y help Say Y here if TEA5764 have a 32768 Hz crystal in circuit, say N here if TEA5764 reference frequency is connected in FREQIN. config RADIO_SAA7706H tristate "SAA7706H Car Radio DSP" depends on I2C && VIDEO_V4L2 ---help--- Say Y here if you want to use the SAA7706H Car radio Digital Signal Processor, found for instance on the Russellville development board. On the russellville the device is connected to internal timberdale I2C bus. To compile this driver as a module, choose M here: the module will be called SAA7706H. config RADIO_TEF6862 tristate "TEF6862 Car Radio Enhanced Selectivity Tuner" depends on I2C && VIDEO_V4L2 ---help--- Say Y here if you want to use the TEF6862 Car Radio Enhanced Selectivity Tuner, found for instance on the Russellville development board. On the russellville the device is connected to internal timberdale I2C bus. To compile this driver as a module, choose M here: the module will be called TEF6862. config RADIO_TIMBERDALE tristate "Enable the Timberdale radio driver" depends on MFD_TIMBERDALE && VIDEO_V4L2 depends on I2C # for RADIO_SAA7706H select RADIO_TEF6862 select RADIO_SAA7706H ---help--- This is a kind of umbrella driver for the Radio Tuner and DSP found behind the Timberdale FPGA on the Russellville board. Enabling this driver will automatically select the DSP and tuner. config RADIO_WL1273 tristate "Texas Instruments WL1273 I2C FM Radio" depends on I2C && VIDEO_V4L2 select MFD_CORE select MFD_WL1273_CORE select FW_LOADER ---help--- Choose Y here if you have this FM radio chip. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux 2 API. Information on this API and pointers to "v4l2" programs may be found at . To compile this driver as a module, choose M here: the module will be called radio-wl1273. # TI's ST based wl128x FM radio source "drivers/media/radio/wl128x/Kconfig" endif # RADIO_ADAPTERS # # TI's wl128x FM driver based on TI's ST driver. # menu "Texas Instruments WL128x FM driver (ST based)" config RADIO_WL128X tristate "Texas Instruments WL128x FM Radio" depends on VIDEO_V4L2 && RFKILL select TI_ST help Choose Y here if you have this FM radio chip. In order to control your radio card, you will need to use programs that are compatible with the Video For Linux 2 API. Information on this API and pointers to "v4l2" programs may be found at . endmenu config USB_SI470X tristate "Silicon Labs Si470x FM Radio Receiver support with USB" depends on USB && RADIO_SI470X ---help--- This is a driver for USB devices with the Silicon Labs SI470x chip. Currently these devices are known to work: - 10c4:818a: Silicon Labs USB FM Radio Reference Design - 06e1:a155: ADS/Tech FM Radio Receiver (formerly Instant FM Music) - 1b80:d700: KWorld USB FM Radio SnapMusic Mobile 700 (FM700) - 10c5:819a: Sanei Electric FM USB Radio (aka DealExtreme.com PCear) Sound is provided by the ALSA USB Audio/MIDI driver. Therefore if you don't want to use the device solely for RDS receiving, it is recommended to also select SND_USB_AUDIO. Please have a look at the documentation, especially on how to redirect the audio stream from the radio to your sound device: Documentation/video4linux/si470x.txt Say Y here if you want to connect this type of radio to your computer's USB port. To compile this driver as a module, choose M here: the module will be called radio-usb-si470x. config I2C_SI470X tristate "Silicon Labs Si470x FM Radio Receiver support with I2C" depends on I2C && RADIO_SI470X && !USB_SI470X ---help--- This is a driver for I2C devices with the Silicon Labs SI470x chip. Say Y here if you want to connect this type of radio to your computer's I2C port. To compile this driver as a module, choose M here: the module will be called radio-i2c-si470x. comment "S/390 block device drivers" depends on S390 && BLOCK config BLK_DEV_XPRAM def_tristate m prompt "XPRAM disk support" depends on S390 && BLOCK help Select this option if you want to use your expanded storage on S/390 or zSeries as a disk. This is useful as a _fast_ swap device if you want to access more than 2G of memory when running in 31 bit mode. This option is also available as a module which will be called xpram. If unsure, say "N". config DCSSBLK def_tristate m prompt "DCSSBLK support" depends on S390 && BLOCK help Support for dcss block device config DASD def_tristate y prompt "Support for DASD devices" depends on CCW && BLOCK select IOSCHED_DEADLINE help Enable this option if you want to access DASDs directly utilizing S/390s channel subsystem commands. This is necessary for running natively on a single image or an LPAR. config DASD_PROFILE def_bool y prompt "Profiling support for dasd devices" depends on DASD help Enable this option if you want to see profiling information in /proc/dasd/statistics. config DASD_ECKD def_tristate y prompt "Support for ECKD Disks" depends on DASD help ECKD devices are the most commonly used devices. You should enable this option unless you are very sure to have no ECKD device. config DASD_FBA def_tristate y prompt "Support for FBA Disks" depends on DASD help Select this option to be able to access FBA devices. It is safe to say "Y". config DASD_DIAG def_tristate y prompt "Support for DIAG access to Disks" depends on DASD help Select this option if you want to use Diagnose250 command to access Disks under VM. If you are not running under VM or unsure what it is, say "N". config DASD_EER def_bool y prompt "Extended error reporting (EER)" depends on DASD help This driver provides a character device interface to the DASD extended error reporting. This is only needed if you want to use applications written for the EER facility. menu "S/390 network device drivers" depends on NETDEVICES && S390 config LCS def_tristate m prompt "Lan Channel Station Interface" depends on CCW && NETDEVICES && (NET_ETHERNET || TR || FDDI) help Select this option if you want to use LCS networking on IBM System z. This device driver supports Token Ring (IEEE 802.5), FDDI (IEEE 802.7) and Ethernet. To compile as a module, choose M. The module name is lcs. If you do not know what it is, it's safe to choose Y. config CTCM def_tristate m prompt "CTC and MPC SNA device support" depends on CCW && NETDEVICES help Select this option if you want to use channel-to-channel point-to-point networking on IBM System z. This device driver supports real CTC coupling using ESCON. It also supports virtual CTCs when running under VM. This driver also supports channel-to-channel MPC SNA devices. MPC is an SNA protocol device used by Communication Server for Linux. To compile as a module, choose M. The module name is ctcm. To compile into the kernel, choose Y. If you do not need any channel-to-channel connection, choose N. config NETIUCV def_tristate m prompt "IUCV network device support (VM only)" depends on IUCV && NETDEVICES help Select this option if you want to use inter-user communication vehicle networking under VM or VIF. It enables a fast communication link between VM guests. Using ifconfig a point-to-point connection can be established to the Linux on IBM System z running on the other VM guest. To compile as a module, choose M. The module name is netiucv. If unsure, choose Y. config SMSGIUCV def_tristate m prompt "IUCV special message support (VM only)" depends on IUCV help Select this option if you want to be able to receive SMSG messages from other VM guest systems. config SMSGIUCV_EVENT def_tristate m prompt "Deliver IUCV special messages as uevents (VM only)" depends on SMSGIUCV help Select this option to deliver CP special messages (SMSGs) as uevents. The driver handles only those special messages that start with "APP". To compile as a module, choose M. The module name is "smsgiucv_app". config CLAW def_tristate m prompt "CLAW device support" depends on CCW && NETDEVICES help This driver supports channel attached CLAW devices. CLAW is Common Link Access for Workstation. Common devices that use CLAW are RS/6000s, Cisco Routers (CIP) and 3172 devices. To compile as a module, choose M. The module name is claw. To compile into the kernel, choose Y. config QETH def_tristate y prompt "Gigabit Ethernet device support" depends on CCW && NETDEVICES && IP_MULTICAST && QDIO help This driver supports the IBM System z OSA Express adapters in QDIO mode (all media types), HiperSockets interfaces and VM GuestLAN interfaces in QDIO and HIPER mode. For details please refer to the documentation provided by IBM at To compile this driver as a module, choose M. The module name is qeth. config QETH_L2 def_tristate y prompt "qeth layer 2 device support" depends on QETH help Select this option to be able to run qeth devices in layer 2 mode. To compile as a module, choose M. The module name is qeth_l2. If unsure, choose y. config QETH_L3 def_tristate y prompt "qeth layer 3 device support" depends on QETH help Select this option to be able to run qeth devices in layer 3 mode. To compile as a module choose M. The module name is qeth_l3. If unsure, choose Y. config QETH_IPV6 def_bool y if (QETH_L3 = IPV6) || (QETH_L3 && IPV6 = 'y') config CCWGROUP tristate default (LCS || CTCM || QETH || CLAW) endmenu comment "S/390 character device drivers" depends on S390 config TN3270 def_tristate y prompt "Support for locally attached 3270 terminals" depends on CCW help Include support for IBM 3270 terminals. config TN3270_TTY def_tristate y prompt "Support for tty input/output on 3270 terminals" depends on TN3270 help Include support for using an IBM 3270 terminal as a Linux tty. config TN3270_FS def_tristate m prompt "Support for fullscreen applications on 3270 terminals" depends on TN3270 help Include support for fullscreen applications on an IBM 3270 terminal. config TN3270_CONSOLE def_bool y prompt "Support for console on 3270 terminal" depends on TN3270=y && TN3270_TTY=y help Include support for using an IBM 3270 terminal as a Linux system console. Available only if 3270 support is compiled in statically. config TN3215 def_bool y prompt "Support for 3215 line mode terminal" depends on CCW help Include support for IBM 3215 line-mode terminals. config TN3215_CONSOLE def_bool y prompt "Support for console on 3215 line mode terminal" depends on TN3215 help Include support for using an IBM 3215 line-mode terminal as a Linux system console. config CCW_CONSOLE def_bool y if TN3215_CONSOLE || TN3270_CONSOLE config SCLP_TTY def_bool y prompt "Support for SCLP line mode terminal" depends on S390 help Include support for IBM SCLP line-mode terminals. config SCLP_CONSOLE def_bool y prompt "Support for console on SCLP line mode terminal" depends on SCLP_TTY help Include support for using an IBM HWC line-mode terminal as the Linux system console. config SCLP_VT220_TTY def_bool y prompt "Support for SCLP VT220-compatible terminal" depends on S390 help Include support for an IBM SCLP VT220-compatible terminal. config SCLP_VT220_CONSOLE def_bool y prompt "Support for console on SCLP VT220-compatible terminal" depends on SCLP_VT220_TTY help Include support for using an IBM SCLP VT220-compatible terminal as a Linux system console. config SCLP_CPI def_tristate m prompt "Control-Program Identification" depends on S390 help This option enables the hardware console interface for system identification. This is commonly used for workload management and gives you a nice name for the system on the service element. Please select this option as a module since built-in operation is completely untested. You should only select this option if you know what you are doing, need this feature and intend to run your kernel in LPAR. config SCLP_ASYNC def_tristate m prompt "Support for Call Home via Asynchronous SCLP Records" depends on S390 help This option enables the call home function, which is able to inform the service element and connected organisations about a kernel panic. You should only select this option if you know what you are doing, want for inform other people about your kernel panics, need this feature and intend to run your kernel in LPAR. config S390_TAPE def_tristate m prompt "S/390 tape device support" depends on CCW help Select this option if you want to access channel-attached tape devices on IBM S/390 or zSeries. If you select this option you will also want to select at least one of the tape interface options and one of the tape hardware options in order to access a tape device. This option is also available as a module. The module will be called tape390 and include all selected interfaces and hardware drivers. comment "S/390 tape interface support" depends on S390_TAPE config S390_TAPE_BLOCK def_bool y prompt "Support for tape block devices" depends on S390_TAPE && BLOCK help Select this option if you want to access your channel-attached tape devices using the block device interface. This interface is similar to CD-ROM devices on other platforms. The tapes can only be accessed read-only when using this interface. Have a look at for further information about creating volumes for and using this interface. It is safe to say "Y" here. comment "S/390 tape hardware support" depends on S390_TAPE config S390_TAPE_34XX def_tristate m prompt "Support for 3480/3490 tape hardware" depends on S390_TAPE help Select this option if you want to access IBM 3480/3490 magnetic tape subsystems and 100% compatibles. It is safe to say "Y" here. config S390_TAPE_3590 def_tristate m prompt "Support for 3590 tape hardware" depends on S390_TAPE help Select this option if you want to access IBM 3590 magnetic tape subsystems and 100% compatibles. It is safe to say "Y" here. config VMLOGRDR def_tristate m prompt "Support for the z/VM recording system services (VM only)" depends on IUCV help Select this option if you want to be able to receive records collected by the z/VM recording system services, eg. from *LOGREC, *ACCOUNT or *SYMPTOM. This driver depends on the IUCV support driver. config VMCP def_bool y prompt "Support for the z/VM CP interface" depends on S390 help Select this option if you want to be able to interact with the control program on z/VM config MONREADER def_tristate m prompt "API for reading z/VM monitor service records" depends on IUCV help Character device driver for reading z/VM monitor service records config MONWRITER def_tristate m prompt "API for writing z/VM monitor service records" depends on S390 help Character device driver for writing z/VM monitor service records config S390_VMUR def_tristate m prompt "z/VM unit record device driver" depends on S390 help Character device driver for z/VM reader, puncher and printer. # # EISA configuration # config EISA_VLB_PRIMING bool "Vesa Local Bus priming" depends on X86 && EISA default n ---help--- Activate this option if your system contains a Vesa Local Bus (VLB) card that identify itself as an EISA card (such as the Adaptec AHA-284x). When in doubt, say N. config EISA_PCI_EISA bool "Generic PCI/EISA bridge" depends on !PARISC && PCI && EISA default y ---help--- Activate this option if your system contains a PCI to EISA bridge. If your system have both PCI and EISA slots, you certainly need this option. When in doubt, say Y. # Using EISA_VIRTUAL_ROOT on something other than an Alpha or # an X86 may lead to crashes... config EISA_VIRTUAL_ROOT bool "EISA virtual root device" depends on EISA && (ALPHA || X86) default y ---help--- Activate this option if your system only have EISA bus (no PCI slots). The Alpha Jensen is an example of such a system. When in doubt, say Y. config EISA_NAMES bool "EISA device name database" depends on EISA default y ---help--- By default, the kernel contains a database of all known EISA device names to make the information in sysfs comprehensible to the user. This database increases size of the kernel image by about 40KB, but it gets freed after the system boots up, so it doesn't take up kernel memory. Anyway, if you are building an installation floppy or kernel for an embedded system where kernel image size really matters, you can disable this feature and you'll get device ID instead of names. When in doubt, say Y. # # PCI configuration # config ARCH_SUPPORTS_MSI bool default n config PCI_MSI bool "Message Signaled Interrupts (MSI and MSI-X)" depends on PCI depends on ARCH_SUPPORTS_MSI help This allows device drivers to enable MSI (Message Signaled Interrupts). Message Signaled Interrupts enable a device to generate an interrupt using an inbound Memory Write on its PCI bus instead of asserting a device IRQ pin. Use of PCI MSI interrupts can be disabled at kernel boot time by using the 'pci=nomsi' option. This disables MSI for the entire system. If you don't know what to do here, say Y. config PCI_DEBUG bool "PCI Debugging" depends on PCI && DEBUG_KERNEL help Say Y here if you want the PCI core to produce a bunch of debug messages to the system log. Select this if you are having a problem with PCI support and want to see more of what is going on. When in doubt, say N. config PCI_STUB tristate "PCI Stub driver" depends on PCI help Say Y or M here if you want be able to reserve a PCI device when it is going to be assigned to a guest operating system. When in doubt, say N. config XEN_PCIDEV_FRONTEND tristate "Xen PCI Frontend" depends on PCI && X86 && XEN select HOTPLUG select PCI_XEN select XEN_XENBUS_FRONTEND default y help The PCI device frontend driver allows the kernel to import arbitrary PCI devices from a PCI backend to support PCI driver domains. config XEN_PCIDEV_FE_DEBUG bool "Xen PCI Frontend debugging" depends on XEN_PCIDEV_FRONTEND && PCI_DEBUG help Say Y here if you want the Xen PCI frontend to produce a bunch of debug messages to the system log. Select this if you are having a problem with Xen PCI frontend support and want to see more of what is going on. When in doubt, say N. config HT_IRQ bool "Interrupts on hypertransport devices" default y depends on PCI && X86_LOCAL_APIC && X86_IO_APIC help This allows native hypertransport devices to use interrupts. If unsure say Y. config PCI_IOV bool "PCI IOV support" depends on PCI help I/O Virtualization is a PCI feature supported by some devices which allows them to create virtual devices which share their physical resources. If unsure, say N. config PCI_IOAPIC bool depends on PCI depends on ACPI depends on HOTPLUG default y config PCI_LABEL def_bool y if (DMI || ACPI) select NLS # # PCI Hotplug support # menuconfig HOTPLUG_PCI tristate "Support for PCI Hotplug" depends on PCI && HOTPLUG && SYSFS ---help--- Say Y here if you have a motherboard with a PCI Hotplug controller. This allows you to add and remove PCI cards while the machine is powered up and running. To compile this driver as a module, choose M here: the module will be called pci_hotplug. When in doubt, say N. if HOTPLUG_PCI config HOTPLUG_PCI_FAKE tristate "Fake PCI Hotplug driver" help Say Y here if you want to use the fake PCI hotplug driver. It can be used to simulate PCI hotplug events if even if your system is not PCI hotplug capable. This driver will "emulate" removing PCI devices from the system. If the "power" file is written to with "0" then the specified PCI device will be completely removed from the kernel. WARNING, this does NOT turn off the power to the PCI device. This is a "logical" removal, not a physical or electrical removal. Use this module at your own risk. You have been warned! To compile this driver as a module, choose M here: the module will be called fakephp. When in doubt, say N. config HOTPLUG_PCI_COMPAQ tristate "Compaq PCI Hotplug driver" depends on X86 && PCI_BIOS help Say Y here if you have a motherboard with a Compaq PCI Hotplug controller. To compile this driver as a module, choose M here: the module will be called cpqphp. When in doubt, say N. config HOTPLUG_PCI_COMPAQ_NVRAM bool "Save configuration into NVRAM on Compaq servers" depends on HOTPLUG_PCI_COMPAQ help Say Y here if you have a Compaq server that has a PCI Hotplug controller. This will allow the PCI Hotplug driver to store the PCI system configuration options in NVRAM. When in doubt, say N. config HOTPLUG_PCI_IBM tristate "IBM PCI Hotplug driver" depends on X86_IO_APIC && X86 && PCI_BIOS help Say Y here if you have a motherboard with a IBM PCI Hotplug controller. To compile this driver as a module, choose M here: the module will be called ibmphp. When in doubt, say N. config HOTPLUG_PCI_ACPI tristate "ACPI PCI Hotplug driver" depends on (!ACPI_DOCK && ACPI) || (ACPI_DOCK) help Say Y here if you have a system that supports PCI Hotplug using ACPI. To compile this driver as a module, choose M here: the module will be called acpiphp. When in doubt, say N. config HOTPLUG_PCI_ACPI_IBM tristate "ACPI PCI Hotplug driver IBM extensions" depends on HOTPLUG_PCI_ACPI help Say Y here if you have an IBM system that supports PCI Hotplug using ACPI. To compile this driver as a module, choose M here: the module will be called acpiphp_ibm. When in doubt, say N. config HOTPLUG_PCI_CPCI bool "CompactPCI Hotplug driver" help Say Y here if you have a CompactPCI system card with CompactPCI hotswap support per the PICMG 2.1 specification. When in doubt, say N. config HOTPLUG_PCI_CPCI_ZT5550 tristate "Ziatech ZT5550 CompactPCI Hotplug driver" depends on HOTPLUG_PCI_CPCI && X86 help Say Y here if you have an Performance Technologies (formerly Intel, formerly just Ziatech) Ziatech ZT5550 CompactPCI system card. To compile this driver as a module, choose M here: the module will be called cpcihp_zt5550. When in doubt, say N. config HOTPLUG_PCI_CPCI_GENERIC tristate "Generic port I/O CompactPCI Hotplug driver" depends on HOTPLUG_PCI_CPCI && X86 help Say Y here if you have a CompactPCI system card that exposes the #ENUM hotswap signal as a bit in a system register that can be read through standard port I/O. To compile this driver as a module, choose M here: the module will be called cpcihp_generic. When in doubt, say N. config HOTPLUG_PCI_SHPC tristate "SHPC PCI Hotplug driver" help Say Y here if you have a motherboard with a SHPC PCI Hotplug controller. To compile this driver as a module, choose M here: the module will be called shpchp. When in doubt, say N. config HOTPLUG_PCI_RPA tristate "RPA PCI Hotplug driver" depends on PPC_PSERIES && EEH && !HOTPLUG_PCI_FAKE help Say Y here if you have a RPA system that supports PCI Hotplug. To compile this driver as a module, choose M here: the module will be called rpaphp. When in doubt, say N. config HOTPLUG_PCI_RPA_DLPAR tristate "RPA Dynamic Logical Partitioning for I/O slots" depends on HOTPLUG_PCI_RPA help Say Y here if your system supports Dynamic Logical Partitioning for I/O slots. To compile this driver as a module, choose M here: the module will be called rpadlpar_io. When in doubt, say N. config HOTPLUG_PCI_SGI tristate "SGI PCI Hotplug Support" depends on IA64_SGI_SN2 || IA64_GENERIC help Say Y here if you want to use the SGI Altix Hotplug Driver for PCI devices. When in doubt, say N. endif # HOTPLUG_PCI # # PCI Express Root Port Device AER Configuration # config PCIEAER boolean "Root Port Advanced Error Reporting support" depends on PCIEPORTBUS default y help This enables PCI Express Root Port Advanced Error Reporting (AER) driver support. Error reporting messages sent to Root Port will be handled by PCI Express AER driver. # # PCI Express ECRC # config PCIE_ECRC bool "PCI Express ECRC settings control" depends on PCIEAER help Used to override firmware/bios settings for PCI Express ECRC (transaction layer end-to-end CRC checking). When in doubt, say N. source "drivers/pci/pcie/aer/Kconfig.debug" # # PCI Express Port Bus Configuration # config PCIEPORTBUS bool "PCI Express support" depends on PCI help This automatically enables PCI Express Port Bus support. Users can choose Native Hot-Plug support, Advanced Error Reporting support, Power Management Event support and Virtual Channel support to run on PCI Express Ports (Root or Switch). # # Include service Kconfig here # config HOTPLUG_PCI_PCIE tristate "PCI Express Hotplug driver" depends on HOTPLUG_PCI && PCIEPORTBUS help Say Y here if you have a motherboard that supports PCI Express Native Hotplug To compile this driver as a module, choose M here: the module will be called pciehp. When in doubt, say N. source "drivers/pci/pcie/aer/Kconfig" # # PCI Express ASPM # config PCIEASPM bool "PCI Express ASPM control" if EXPERT depends on PCI && PCIEPORTBUS default y help This enables OS control over PCI Express ASPM (Active State Power Management) and Clock Power Management. ASPM supports state L0/L0s/L1. ASPM is initially set up the the firmware. With this option enabled, Linux can modify this state in order to disable ASPM on known-bad hardware or configurations and enable it when known-safe. ASPM can be disabled or enabled at runtime via /sys/module/pcie_aspm/parameters/policy When in doubt, say Y. config PCIEASPM_DEBUG bool "Debug PCI Express ASPM" depends on PCIEASPM default n help This enables PCI Express ASPM debug support. It will add per-device interface to control ASPM. config PCIE_PME def_bool y depends on PCIEPORTBUS && PM_RUNTIME && EXPERIMENTAL && ACPI config SELECT_MEMORY_MODEL def_bool y depends on EXPERIMENTAL || ARCH_SELECT_MEMORY_MODEL choice prompt "Memory model" depends on SELECT_MEMORY_MODEL default DISCONTIGMEM_MANUAL if ARCH_DISCONTIGMEM_DEFAULT default SPARSEMEM_MANUAL if ARCH_SPARSEMEM_DEFAULT default FLATMEM_MANUAL config FLATMEM_MANUAL bool "Flat Memory" depends on !(ARCH_DISCONTIGMEM_ENABLE || ARCH_SPARSEMEM_ENABLE) || ARCH_FLATMEM_ENABLE help This option allows you to change some of the ways that Linux manages its memory internally. Most users will only have one option here: FLATMEM. This is normal and a correct option. Some users of more advanced features like NUMA and memory hotplug may have different options here. DISCONTIGMEM is an more mature, better tested system, but is incompatible with memory hotplug and may suffer decreased performance over SPARSEMEM. If unsure between "Sparse Memory" and "Discontiguous Memory", choose "Discontiguous Memory". If unsure, choose this option (Flat Memory) over any other. config DISCONTIGMEM_MANUAL bool "Discontiguous Memory" depends on ARCH_DISCONTIGMEM_ENABLE help This option provides enhanced support for discontiguous memory systems, over FLATMEM. These systems have holes in their physical address spaces, and this option provides more efficient handling of these holes. However, the vast majority of hardware has quite flat address spaces, and can have degraded performance from the extra overhead that this option imposes. Many NUMA configurations will have this as the only option. If unsure, choose "Flat Memory" over this option. config SPARSEMEM_MANUAL bool "Sparse Memory" depends on ARCH_SPARSEMEM_ENABLE help This will be the only option for some systems, including memory hotplug systems. This is normal. For many other systems, this will be an alternative to "Discontiguous Memory". This option provides some potential performance benefits, along with decreased code complexity, but it is newer, and more experimental. If unsure, choose "Discontiguous Memory" or "Flat Memory" over this option. endchoice config DISCONTIGMEM def_bool y depends on (!SELECT_MEMORY_MODEL && ARCH_DISCONTIGMEM_ENABLE) || DISCONTIGMEM_MANUAL config SPARSEMEM def_bool y depends on (!SELECT_MEMORY_MODEL && ARCH_SPARSEMEM_ENABLE) || SPARSEMEM_MANUAL config FLATMEM def_bool y depends on (!DISCONTIGMEM && !SPARSEMEM) || FLATMEM_MANUAL config FLAT_NODE_MEM_MAP def_bool y depends on !SPARSEMEM # # Both the NUMA code and DISCONTIGMEM use arrays of pg_data_t's # to represent different areas of memory. This variable allows # those dependencies to exist individually. # config NEED_MULTIPLE_NODES def_bool y depends on DISCONTIGMEM || NUMA config HAVE_MEMORY_PRESENT def_bool y depends on ARCH_HAVE_MEMORY_PRESENT || SPARSEMEM # # SPARSEMEM_EXTREME (which is the default) does some bootmem # allocations when memory_present() is called. If this cannot # be done on your architecture, select this option. However, # statically allocating the mem_section[] array can potentially # consume vast quantities of .bss, so be careful. # # This option will also potentially produce smaller runtime code # with gcc 3.4 and later. # config SPARSEMEM_STATIC bool # # Architecture platforms which require a two level mem_section in SPARSEMEM # must select this option. This is usually for architecture platforms with # an extremely sparse physical address space. # config SPARSEMEM_EXTREME def_bool y depends on SPARSEMEM && !SPARSEMEM_STATIC config SPARSEMEM_VMEMMAP_ENABLE bool config SPARSEMEM_ALLOC_MEM_MAP_TOGETHER def_bool y depends on SPARSEMEM && X86_64 config SPARSEMEM_VMEMMAP bool "Sparse Memory virtual memmap" depends on SPARSEMEM && SPARSEMEM_VMEMMAP_ENABLE default y help SPARSEMEM_VMEMMAP uses a virtually mapped memmap to optimise pfn_to_page and page_to_pfn operations. This is the most efficient option when sufficient kernel resources are available. config HAVE_MEMBLOCK boolean # eventually, we can have this option just 'select SPARSEMEM' config MEMORY_HOTPLUG bool "Allow for memory hot-add" depends on SPARSEMEM || X86_64_ACPI_NUMA depends on HOTPLUG && ARCH_ENABLE_MEMORY_HOTPLUG depends on (IA64 || X86 || PPC_BOOK3S_64 || SUPERH || S390) config MEMORY_HOTPLUG_SPARSE def_bool y depends on SPARSEMEM && MEMORY_HOTPLUG config MEMORY_HOTREMOVE bool "Allow for memory hot remove" depends on MEMORY_HOTPLUG && ARCH_ENABLE_MEMORY_HOTREMOVE depends on MIGRATION # # If we have space for more page flags then we can enable additional # optimizations and functionality. # # Regular Sparsemem takes page flag bits for the sectionid if it does not # use a virtual memmap. Disable extended page flags for 32 bit platforms # that require the use of a sectionid in the page flags. # config PAGEFLAGS_EXTENDED def_bool y depends on 64BIT || SPARSEMEM_VMEMMAP || !SPARSEMEM # Heavily threaded applications may benefit from splitting the mm-wide # page_table_lock, so that faults on different parts of the user address # space can be handled with less contention: split it at this NR_CPUS. # Default to 4 for wider testing, though 8 might be more appropriate. # ARM's adjust_pte (unused if VIPT) depends on mm-wide page_table_lock. # PA-RISC 7xxx's spinlock_t would enlarge struct page from 32 to 44 bytes. # DEBUG_SPINLOCK and DEBUG_LOCK_ALLOC spinlock_t also enlarge struct page. # config SPLIT_PTLOCK_CPUS int default "999999" if ARM && !CPU_CACHE_VIPT default "999999" if PARISC && !PA20 default "999999" if DEBUG_SPINLOCK || DEBUG_LOCK_ALLOC default "4" # # support for memory compaction config COMPACTION bool "Allow for memory compaction" select MIGRATION depends on MMU help Allows the compaction of memory for the allocation of huge pages. # # support for page migration # config MIGRATION bool "Page migration" def_bool y depends on NUMA || ARCH_ENABLE_MEMORY_HOTREMOVE || COMPACTION help Allows the migration of the physical location of pages of processes while the virtual addresses are not changed. This is useful in two situations. The first is on NUMA systems to put pages nearer to the processors accessing. The second is when allocating huge pages as migration can relocate pages to satisfy a huge page allocation instead of reclaiming. config PHYS_ADDR_T_64BIT def_bool 64BIT || ARCH_PHYS_ADDR_T_64BIT config ZONE_DMA_FLAG int default "0" if !ZONE_DMA default "1" config BOUNCE def_bool y depends on BLOCK && MMU && (ZONE_DMA || HIGHMEM) config NR_QUICK int depends on QUICKLIST default "2" if AVR32 default "1" config VIRT_TO_BUS def_bool y depends on !ARCH_NO_VIRT_TO_BUS config MMU_NOTIFIER bool config KSM bool "Enable KSM for page merging" depends on MMU help Enable Kernel Samepage Merging: KSM periodically scans those areas of an application's address space that an app has advised may be mergeable. When it finds pages of identical content, it replaces the many instances by a single page with that content, so saving memory until one or another app needs to modify the content. Recommended for use with KVM, or with other duplicative applications. See Documentation/vm/ksm.txt for more information: KSM is inactive until a program has madvised that an area is MADV_MERGEABLE, and root has set /sys/kernel/mm/ksm/run to 1 (if CONFIG_SYSFS is set). config DEFAULT_MMAP_MIN_ADDR int "Low address space to protect from user allocation" depends on MMU default 4096 help This is the portion of low virtual memory which should be protected from userspace allocation. Keeping a user from writing to low pages can help reduce the impact of kernel NULL pointer bugs. For most ia64, ppc64 and x86 users with lots of address space a value of 65536 is reasonable and should cause no problems. On arm and other archs it should not be higher than 32768. Programs which use vm86 functionality or have some need to map this low address space will need CAP_SYS_RAWIO or disable this protection by setting the value to 0. This value can be changed after boot using the /proc/sys/vm/mmap_min_addr tunable. config ARCH_SUPPORTS_MEMORY_FAILURE bool config MEMORY_FAILURE depends on MMU depends on ARCH_SUPPORTS_MEMORY_FAILURE bool "Enable recovery from hardware memory errors" help Enables code to recover from some memory failures on systems with MCA recovery. This allows a system to continue running even when some of its memory has uncorrected errors. This requires special hardware support and typically ECC memory. config HWPOISON_INJECT tristate "HWPoison pages injector" depends on MEMORY_FAILURE && DEBUG_KERNEL && PROC_FS select PROC_PAGE_MONITOR config NOMMU_INITIAL_TRIM_EXCESS int "Turn on mmap() excess space trimming before booting" depends on !MMU default 1 help The NOMMU mmap() frequently needs to allocate large contiguous chunks of memory on which to store mappings, but it can only ask the system allocator for chunks in 2^N*PAGE_SIZE amounts - which is frequently more than it requires. To deal with this, mmap() is able to trim off the excess and return it to the allocator. If trimming is enabled, the excess is trimmed off and returned to the system allocator, which can cause extra fragmentation, particularly if there are a lot of transient processes. If trimming is disabled, the excess is kept, but not used, which for long-term mappings means that the space is wasted. Trimming can be dynamically controlled through a sysctl option (/proc/sys/vm/nr_trim_pages) which specifies the minimum number of excess pages there must be before trimming should occur, or zero if no trimming is to occur. This option specifies the initial value of this option. The default of 1 says that all excess pages should be trimmed. See Documentation/nommu-mmap.txt for more information. config TRANSPARENT_HUGEPAGE bool "Transparent Hugepage Support" depends on X86 && MMU select COMPACTION help Transparent Hugepages allows the kernel to use huge pages and huge tlb transparently to the applications whenever possible. This feature can improve computing performance to certain applications by speeding up page faults during memory allocation, by reducing the number of tlb misses and by speeding up the pagetable walking. If memory constrained on embedded, you may want to say N. choice prompt "Transparent Hugepage Support sysfs defaults" depends on TRANSPARENT_HUGEPAGE default TRANSPARENT_HUGEPAGE_ALWAYS help Selects the sysfs defaults for Transparent Hugepage Support. config TRANSPARENT_HUGEPAGE_ALWAYS bool "always" help Enabling Transparent Hugepage always, can increase the memory footprint of applications without a guaranteed benefit but it will work automatically for all applications. config TRANSPARENT_HUGEPAGE_MADVISE bool "madvise" help Enabling Transparent Hugepage madvise, will only provide a performance improvement benefit to the applications using madvise(MADV_HUGEPAGE) but it won't risk to increase the memory footprint of applications without a guaranteed benefit. endchoice # # UP and nommu archs use km based percpu allocator # config NEED_PER_CPU_KM depends on !SMP bool default y # KVM common configuration items and defaults config HAVE_KVM bool config HAVE_KVM_IRQCHIP bool config HAVE_KVM_EVENTFD bool select EVENTFD config KVM_APIC_ARCHITECTURE bool config KVM_MMIO bool config KVM_ASYNC_PF bool # ALSA USB drivers menuconfig SND_USB bool "USB sound devices" depends on USB default y help Support for sound devices connected via the USB bus. if SND_USB && USB config SND_USB_AUDIO tristate "USB Audio/MIDI driver" select SND_HWDEP select SND_RAWMIDI select SND_PCM help Say Y here to include support for USB audio and USB MIDI devices. To compile this driver as a module, choose M here: the module will be called snd-usb-audio. config SND_USB_UA101 tristate "Edirol UA-101/UA-1000 driver" select SND_PCM select SND_RAWMIDI help Say Y here to include support for the Edirol UA-101 and UA-1000 audio/MIDI interfaces. To compile this driver as a module, choose M here: the module will be called snd-ua101. config SND_USB_USX2Y tristate "Tascam US-122, US-224 and US-428 USB driver" depends on X86 || PPC || ALPHA select SND_HWDEP select SND_RAWMIDI select SND_PCM help Say Y here to include support for Tascam USB Audio/MIDI interfaces or controllers US-122, US-224 and US-428. To compile this driver as a module, choose M here: the module will be called snd-usb-usx2y. config SND_USB_CAIAQ tristate "Native Instruments USB audio devices" select SND_HWDEP select SND_RAWMIDI select SND_PCM help Say Y here to include support for caiaq USB audio interfaces, namely: * Native Instruments RigKontrol2 * Native Instruments RigKontrol3 * Native Instruments Kore Controller * Native Instruments Kore Controller 2 * Native Instruments Audio Kontrol 1 * Native Instruments Audio 2 DJ * Native Instruments Audio 4 DJ * Native Instruments Audio 8 DJ * Native Instruments Traktor Audio 2 * Native Instruments Guitar Rig Session I/O * Native Instruments Guitar Rig mobile * Native Instruments Traktor Kontrol X1 * Native Instruments Traktor Kontrol S4 To compile this driver as a module, choose M here: the module will be called snd-usb-caiaq. config SND_USB_CAIAQ_INPUT bool "enable input device for controllers" depends on SND_USB_CAIAQ depends on INPUT=y || INPUT=SND_USB_CAIAQ help Say Y here to support input controllers like buttons, knobs, alpha dials and analog pedals on the following products: * Native Instruments RigKontrol2 * Native Instruments RigKontrol3 * Native Instruments Kore Controller * Native Instruments Kore Controller 2 * Native Instruments Audio Kontrol 1 * Native Instruments Traktor Kontrol S4 config SND_USB_US122L tristate "Tascam US-122L USB driver" depends on X86 && EXPERIMENTAL select SND_HWDEP select SND_RAWMIDI help Say Y here to include support for Tascam US-122L USB Audio/MIDI interfaces. To compile this driver as a module, choose M here: the module will be called snd-usb-us122l. config SND_USB_6FIRE tristate "TerraTec DMX 6Fire USB" depends on EXPERIMENTAL select FW_LOADER select SND_RAWMIDI select SND_PCM help Say Y here to include support for TerraTec 6fire DMX USB interface. You will need firmware files in order to be able to use the device after it has been coldstarted. This driver currently does not support firmware loading for all devices. If you own such a device, you could start windows and let the windows driver upload the firmware. As long as you do not unplug your device from power, it should be usable. endif # SND_USB menuconfig SND_FIREWIRE bool "FireWire sound devices" depends on FIREWIRE default y help Support for IEEE-1394/FireWire/iLink sound devices. if SND_FIREWIRE && FIREWIRE config SND_FIREWIRE_LIB tristate depends on SND_PCM config SND_FIREWIRE_SPEAKERS tristate "FireWire speakers" select SND_PCM select SND_FIREWIRE_LIB help Say Y here to include support for the Griffin FireWave Surround and the LaCie FireWire Speakers. To compile this driver as a module, choose M here: the module will be called snd-firewire-speakers. endif # SND_FIREWIRE # ALSA PA-RISC drivers menuconfig SND_GSC bool "GSC sound devices" depends on GSC default y help Support for GSC sound devices on PA-RISC architectures. if SND_GSC config SND_HARMONY tristate "Harmony/Vivace sound chip" select SND_PCM help Say 'Y' or 'M' to include support for the Harmony/Vivace sound chip found in most GSC-based PA-RISC workstations. It's frequently provided as part of the Lasi multi-function IC. endif # SND_GSC menuconfig SOUND tristate "Sound card support" depends on HAS_IOMEM help If you have a sound card in your computer, i.e. if it can say more than an occasional beep, say Y. Be sure to have all the information about your sound card and its configuration down (I/O port, interrupt and DMA channel), because you will be asked for it. You want to read the Sound-HOWTO, available from . General information about the modular sound system is contained in the files . The file contains some slightly outdated but still useful information as well. Newer sound driver documentation is found in . If you have a PnP sound card and you want to configure it at boot time using the ISA PnP tools (read ), then you need to compile the sound card support as a module and load that module after the PnP configuration is finished. To do this, choose M here and read ; the module will be called soundcore. if SOUND config SOUND_OSS_CORE bool default n config SOUND_OSS_CORE_PRECLAIM bool "Preclaim OSS device numbers" depends on SOUND_OSS_CORE default y help With this option enabled, the kernel will claim all OSS device numbers if any OSS support (native or emulation) is enabled whether the respective module is loaded or not and try to load the appropriate module using sound-slot/service-* and char-major-* module aliases when one of the device numbers is opened. With this option disabled, kernel will only claim actually in-use device numbers and opening a missing device will generate only the standard char-major-* aliases. The only visible difference is use of additional module aliases and whether OSS sound devices appear multiple times in /proc/devices. sound-slot/service-* module aliases are scheduled to be removed (ie. PRECLAIM won't be available) and this option is to make the transition easier. This option can be overridden during boot using the kernel parameter soundcore.preclaim_oss. Disabling this allows alternative OSS implementations. Please read Documentation/feature-removal-schedule.txt for details. If unsure, say Y. source "sound/oss/dmasound/Kconfig" if !M68K menuconfig SND tristate "Advanced Linux Sound Architecture" help Say 'Y' or 'M' to enable ALSA (Advanced Linux Sound Architecture), the new base sound system. For more information, see if SND source "sound/core/Kconfig" source "sound/drivers/Kconfig" source "sound/isa/Kconfig" source "sound/pci/Kconfig" source "sound/ppc/Kconfig" source "sound/aoa/Kconfig" source "sound/arm/Kconfig" source "sound/atmel/Kconfig" source "sound/spi/Kconfig" source "sound/mips/Kconfig" source "sound/sh/Kconfig" # the following will depend on the order of config. # here assuming USB is defined before ALSA source "sound/usb/Kconfig" source "sound/firewire/Kconfig" # the following will depend on the order of config. # here assuming PCMCIA is defined before ALSA source "sound/pcmcia/Kconfig" source "sound/sparc/Kconfig" source "sound/parisc/Kconfig" source "sound/soc/Kconfig" endif # SND menuconfig SOUND_PRIME tristate "Open Sound System (DEPRECATED)" select SOUND_OSS_CORE help Say 'Y' or 'M' to enable Open Sound System drivers. if SOUND_PRIME source "sound/oss/Kconfig" endif # SOUND_PRIME endif # !M68K endif # SOUND # AC97_BUS is used from both sound and ucb1400 config AC97_BUS tristate help This is used to avoid config and link hard dependencies between the sound subsystem and other function drivers completely unrelated to sound although they're sharing the AC97 bus. Concerned drivers should "select" this. # ALSA SH drivers menuconfig SND_SUPERH bool "SUPERH sound devices" depends on SUPERH default y help Support for sound devices specific to SUPERH architectures. Drivers that are implemented on ASoC can be found in "ALSA for SoC audio support" section. if SND_SUPERH config SND_AICA tristate "Dreamcast Yamaha AICA sound" depends on SH_DREAMCAST select SND_PCM select G2_DMA help ALSA Sound driver for the SEGA Dreamcast console. config SND_SH_DAC_AUDIO tristate "SuperH DAC audio support" depends on SND depends on CPU_SH3 && HIGH_RES_TIMERS select SND_PCM help Say Y here to include support for the on-chip DAC. endif # SND_SUPERH # ALSA PCMCIA drivers menuconfig SND_PCMCIA bool "PCMCIA sound devices" depends on PCMCIA default y help Support for sound devices connected via the PCMCIA bus. if SND_PCMCIA && PCMCIA config SND_VXPOCKET tristate "Digigram VXpocket" select SND_VX_LIB help Say Y here to include support for Digigram VXpocket and VXpocket 440 soundcards. To compile this driver as a module, choose M here: the module will be called snd-vxpocket. config SND_PDAUDIOCF tristate "Sound Core PDAudioCF" select SND_PCM help Say Y here to include support for Sound Core PDAudioCF soundcards. To compile this driver as a module, choose M here: the module will be called snd-pdaudiocf. endif # SND_PCMCIA config SND_TEGRA_SOC tristate "SoC Audio for the Tegra System-on-Chip" depends on ARCH_TEGRA && TEGRA_SYSTEM_DMA default m help Say Y or M here if you want support for SoC audio on Tegra. config SND_TEGRA_SOC_I2S tristate depends on SND_TEGRA_SOC default m help Say Y or M if you want to add support for codecs attached to the Tegra I2S interface. You will also need to select the individual machine drivers to support below. config SND_TEGRA_SOC_HARMONY tristate "SoC Audio support for Tegra Harmony reference board" depends on SND_TEGRA_SOC && MACH_HARMONY && I2C default m select SND_TEGRA_SOC_I2S select SND_SOC_WM8903 help Say Y or M here if you want to add support for SoC audio on the Tegra Harmony reference board. # Helper to resolve issues with configs that have SPI enabled but I2C # modular, meaning we can't build the codec driver in with I2C support. # We use an ordered list of conditional defaults to pick the appropriate # setting - SPI can't be modular so that case doesn't need to be covered. config SND_SOC_I2C_AND_SPI tristate default m if I2C=m default y if I2C=y default y if SPI_MASTER=y config SND_SOC_ALL_CODECS tristate "Build all ASoC CODEC drivers" select SND_SOC_88PM860X if MFD_88PM860X select SND_SOC_L3 select SND_SOC_AC97_CODEC if SND_SOC_AC97_BUS select SND_SOC_AD1836 if SPI_MASTER select SND_SOC_AD193X if SND_SOC_I2C_AND_SPI select SND_SOC_AD1980 if SND_SOC_AC97_BUS select SND_SOC_ADS117X select SND_SOC_AD73311 if I2C select SND_SOC_AK4104 if SPI_MASTER select SND_SOC_AK4535 if I2C select SND_SOC_AK4642 if I2C select SND_SOC_AK4671 if I2C select SND_SOC_ALC5623 if I2C select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC select SND_SOC_CS42L51 if I2C select SND_SOC_CS4270 if I2C select SND_SOC_CS4271 if SND_SOC_I2C_AND_SPI select SND_SOC_CX20442 select SND_SOC_DA7210 if I2C select SND_SOC_DFBMCS320 select SND_SOC_JZ4740_CODEC if SOC_JZ4740 select SND_SOC_LM4857 if I2C select SND_SOC_MAX98088 if I2C select SND_SOC_MAX9850 if I2C select SND_SOC_MAX9877 if I2C select SND_SOC_PCM3008 select SND_SOC_SGTL5000 if I2C select SND_SOC_SN95031 if INTEL_SCU_IPC select SND_SOC_SPDIF select SND_SOC_SSM2602 if I2C select SND_SOC_STAC9766 if SND_SOC_AC97_BUS select SND_SOC_TLV320AIC23 if I2C select SND_SOC_TLV320AIC26 if SPI_MASTER select SND_SOC_TVL320AIC32X4 if I2C select SND_SOC_TLV320AIC3X if I2C select SND_SOC_TPA6130A2 if I2C select SND_SOC_TLV320DAC33 if I2C select SND_SOC_TWL4030 if TWL4030_CORE select SND_SOC_TWL6040 if TWL4030_CORE select SND_SOC_UDA134X select SND_SOC_UDA1380 if I2C select SND_SOC_WL1273 if MFD_WL1273_CORE select SND_SOC_WM2000 if I2C select SND_SOC_WM8350 if MFD_WM8350 select SND_SOC_WM8400 if MFD_WM8400 select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8523 if I2C select SND_SOC_WM8580 if I2C select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8727 select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8770 if SPI_MASTER select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8804 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8900 if I2C select SND_SOC_WM8903 if I2C select SND_SOC_WM8904 if I2C select SND_SOC_WM8940 if I2C select SND_SOC_WM8955 if I2C select SND_SOC_WM8960 if I2C select SND_SOC_WM8961 if I2C select SND_SOC_WM8962 if I2C select SND_SOC_WM8971 if I2C select SND_SOC_WM8974 if I2C select SND_SOC_WM8978 if I2C select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI select SND_SOC_WM8990 if I2C select SND_SOC_WM8991 if I2C select SND_SOC_WM8993 if I2C select SND_SOC_WM8994 if MFD_WM8994 select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI select SND_SOC_WM9081 if I2C select SND_SOC_WM9090 if I2C select SND_SOC_WM9705 if SND_SOC_AC97_BUS select SND_SOC_WM9712 if SND_SOC_AC97_BUS select SND_SOC_WM9713 if SND_SOC_AC97_BUS help Normally ASoC codec drivers are only built if a machine driver which uses them is also built since they are only usable with a machine driver. Selecting this option will allow these drivers to be built without an explicit machine driver for test and development purposes. Support for the bus types used to access the codecs to be built must be selected separately. If unsure select "N". config SND_SOC_88PM860X tristate config SND_SOC_WM_HUBS tristate default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m config SND_SOC_AC97_CODEC tristate select SND_AC97_CODEC config SND_SOC_AD1836 tristate config SND_SOC_AD193X tristate config SND_SOC_AD1980 tristate config SND_SOC_AD73311 tristate config SND_SOC_ADS117X tristate config SND_SOC_AK4104 tristate config SND_SOC_AK4535 tristate config SND_SOC_AK4642 tristate config SND_SOC_AK4671 tristate config SND_SOC_ALC5623 tristate config SND_SOC_CQ0093VC tristate config SND_SOC_CS42L51 tristate # Cirrus Logic CS4270 Codec config SND_SOC_CS4270 tristate # Cirrus Logic CS4270 Codec VD = 3.3V Errata # Select if you are affected by the errata where the part will not function # if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will # not select any sample rates that require MCLK to be divided by 1.5. config SND_SOC_CS4270_VD33_ERRATA bool depends on SND_SOC_CS4270 config SND_SOC_CS4271 tristate config SND_SOC_CX20442 tristate config SND_SOC_JZ4740_CODEC tristate config SND_SOC_L3 tristate config SND_SOC_DA7210 tristate config SND_SOC_DFBMCS320 tristate config SND_SOC_DMIC tristate config SND_SOC_MAX98088 tristate config SND_SOC_MAX9850 tristate config SND_SOC_PCM3008 tristate #Freescale sgtl5000 codec config SND_SOC_SGTL5000 tristate config SND_SOC_SN95031 tristate config SND_SOC_SPDIF tristate config SND_SOC_SSM2602 tristate config SND_SOC_STAC9766 tristate config SND_SOC_TLV320AIC23 tristate config SND_SOC_TLV320AIC26 tristate "TI TLV320AIC26 Codec support" if SND_SOC_OF_SIMPLE depends on SPI config SND_SOC_TVL320AIC32X4 tristate config SND_SOC_TLV320AIC3X tristate config SND_SOC_TLV320DAC33 tristate config SND_SOC_TWL4030 select TWL4030_CODEC tristate config SND_SOC_TWL6040 tristate config SND_SOC_UDA134X tristate config SND_SOC_UDA1380 tristate config SND_SOC_WL1273 tristate config SND_SOC_WM8350 tristate config SND_SOC_WM8400 tristate config SND_SOC_WM8510 tristate config SND_SOC_WM8523 tristate config SND_SOC_WM8580 tristate config SND_SOC_WM8711 tristate config SND_SOC_WM8727 tristate config SND_SOC_WM8728 tristate config SND_SOC_WM8731 tristate config SND_SOC_WM8737 tristate config SND_SOC_WM8741 tristate config SND_SOC_WM8750 tristate config SND_SOC_WM8753 tristate config SND_SOC_WM8770 tristate config SND_SOC_WM8776 tristate config SND_SOC_WM8804 tristate config SND_SOC_WM8900 tristate config SND_SOC_WM8903 tristate config SND_SOC_WM8904 tristate config SND_SOC_WM8940 tristate config SND_SOC_WM8955 tristate config SND_SOC_WM8960 tristate config SND_SOC_WM8961 tristate config SND_SOC_WM8962 tristate config SND_SOC_WM8971 tristate config SND_SOC_WM8974 tristate config SND_SOC_WM8978 tristate config SND_SOC_WM8985 tristate config SND_SOC_WM8988 tristate config SND_SOC_WM8990 tristate config SND_SOC_WM8991 tristate config SND_SOC_WM8993 tristate config SND_SOC_WM8994 tristate config SND_SOC_WM8995 tristate config SND_SOC_WM9081 tristate config SND_SOC_WM9705 tristate config SND_SOC_WM9712 tristate config SND_SOC_WM9713 tristate # Amp config SND_SOC_LM4857 tristate config SND_SOC_MAX9877 tristate config SND_SOC_TPA6130A2 tristate config SND_SOC_WM2000 tristate config SND_SOC_WM9090 tristate config SND_SOC_SAMSUNG tristate "ASoC support for Samsung" depends on ARCH_S3C2410 || ARCH_S3C64XX || ARCH_S5PC100 || ARCH_S5PV210 || ARCH_S5P64X0 || ARCH_S5P6442 || ARCH_EXYNOS4 select S3C64XX_DMA if ARCH_S3C64XX select S3C2410_DMA if ARCH_S3C2410 help Say Y or M if you want to add support for codecs attached to the Samsung SoCs' Audio interfaces. You will also need to select the audio interfaces to support below. config SND_S3C24XX_I2S tristate select S3C2410_DMA config SND_S3C_I2SV2_SOC tristate config SND_S3C2412_SOC_I2S tristate select SND_S3C_I2SV2_SOC select S3C2410_DMA config SND_SAMSUNG_PCM tristate config SND_SAMSUNG_AC97 tristate select SND_SOC_AC97_BUS config SND_SAMSUNG_SPDIF tristate select SND_SOC_SPDIF config SND_SAMSUNG_I2S tristate config SND_SOC_SAMSUNG_NEO1973_WM8753 tristate "Audio support for Openmoko Neo1973 Smartphones (GTA01/GTA02)" depends on SND_SOC_SAMSUNG && (MACH_NEO1973_GTA01 || MACH_NEO1973_GTA02) select SND_S3C24XX_I2S select SND_SOC_WM8753 select SND_SOC_LM4857 if MACH_NEO1973_GTA01 select SND_SOC_DFBMCS320 help Say Y here to enable audio support for the Openmoko Neo1973 Smartphones. config SND_SOC_SAMSUNG_JIVE_WM8750 tristate "SoC I2S Audio support for Jive" depends on SND_SOC_SAMSUNG && MACH_JIVE select SND_SOC_WM8750 select SND_S3C2412_SOC_I2S help Sat Y if you want to add support for SoC audio on the Jive. config SND_SOC_SAMSUNG_SMDK_WM8580 tristate "SoC I2S Audio support for WM8580 on SMDK" depends on SND_SOC_SAMSUNG && (MACH_SMDK6410 || MACH_SMDKC100 || MACH_SMDK6440 || MACH_SMDK6450 || MACH_SMDK6442 || MACH_SMDKV210 || MACH_SMDKC110) select SND_SOC_WM8580 select SND_SAMSUNG_I2S help Say Y if you want to add support for SoC audio on the SMDKs. config SND_SOC_SAMSUNG_SMDK_WM8994 tristate "SoC I2S Audio support for WM8994 on SMDK" depends on SND_SOC_SAMSUNG && (MACH_SMDKV310 || MACH_SMDKC210) select SND_SOC_WM8994 select SND_SAMSUNG_I2S help Say Y if you want to add support for SoC audio on the SMDKs. config SND_SOC_SAMSUNG_SMDK2443_WM9710 tristate "SoC AC97 Audio support for SMDK2443 - WM9710" depends on SND_SOC_SAMSUNG && MACH_SMDK2443 select S3C2410_DMA select AC97_BUS select SND_SOC_AC97_CODEC select SND_SAMSUNG_AC97 help Say Y if you want to add support for SoC audio on smdk2443 with the WM9710. config SND_SOC_SAMSUNG_LN2440SBC_ALC650 tristate "SoC AC97 Audio support for LN2440SBC - ALC650" depends on SND_SOC_SAMSUNG && ARCH_S3C2410 select S3C2410_DMA select AC97_BUS select SND_SOC_AC97_CODEC select SND_SAMSUNG_AC97 help Say Y if you want to add support for SoC audio on ln2440sbc with the ALC650. config SND_SOC_SAMSUNG_S3C24XX_UDA134X tristate "SoC I2S Audio support UDA134X wired to a S3C24XX" depends on SND_SOC_SAMSUNG && ARCH_S3C2410 select SND_S3C24XX_I2S select SND_SOC_L3 select SND_SOC_UDA134X config SND_SOC_SAMSUNG_SIMTEC tristate help Internal node for common S3C24XX/Simtec suppor config SND_SOC_SAMSUNG_SIMTEC_TLV320AIC23 tristate "SoC I2S Audio support for TLV320AIC23 on Simtec boards" depends on SND_SOC_SAMSUNG && ARCH_S3C2410 select SND_S3C24XX_I2S select SND_SOC_TLV320AIC23 select SND_SOC_SAMSUNG_SIMTEC config SND_SOC_SAMSUNG_SIMTEC_HERMES tristate "SoC I2S Audio support for Simtec Hermes board" depends on SND_SOC_SAMSUNG && ARCH_S3C2410 select SND_S3C24XX_I2S select SND_SOC_TLV320AIC3X select SND_SOC_SAMSUNG_SIMTEC config SND_SOC_SAMSUNG_H1940_UDA1380 tristate "Audio support for the HP iPAQ H1940" depends on SND_SOC_SAMSUNG && ARCH_H1940 select SND_S3C24XX_I2S select SND_SOC_UDA1380 help This driver provides audio support for HP iPAQ h1940 PDA. config SND_SOC_SAMSUNG_RX1950_UDA1380 tristate "Audio support for the HP iPAQ RX1950" depends on SND_SOC_SAMSUNG && MACH_RX1950 select SND_S3C24XX_I2S select SND_SOC_UDA1380 help This driver provides audio support for HP iPAQ RX1950 PDA. config SND_SOC_SAMSUNG_SMDK_WM9713 tristate "SoC AC97 Audio support for SMDK with WM9713" depends on SND_SOC_SAMSUNG && (MACH_SMDK6410 || MACH_SMDKC100 || MACH_SMDKV210 || MACH_SMDKC110 || MACH_SMDKV310 || MACH_SMDKC210) select SND_SOC_WM9713 select SND_SAMSUNG_AC97 help Sat Y if you want to add support for SoC audio on the SMDK. config SND_SOC_SMARTQ tristate "SoC I2S Audio support for SmartQ board" depends on SND_SOC_SAMSUNG && MACH_SMARTQ select SND_SAMSUNG_I2S select SND_SOC_WM8750 config SND_SOC_GONI_AQUILA_WM8994 tristate "SoC I2S Audio support for AQUILA/GONI - WM8994" depends on SND_SOC_SAMSUNG && (MACH_GONI || MACH_AQUILA) select SND_SAMSUNG_I2S select SND_SOC_WM8994 help Say Y if you want to add support for SoC audio on goni or aquila with the WM8994. config SND_SOC_SAMSUNG_SMDK_SPDIF tristate "SoC S/PDIF Audio support for SMDK" depends on SND_SOC_SAMSUNG && (MACH_SMDKC100 || MACH_SMDKC110 || MACH_SMDKV210) select SND_SAMSUNG_SPDIF help Say Y if you want to add support for SoC S/PDIF audio on the SMDK. ## ## NUC900 series AC97 API ## config SND_SOC_NUC900 tristate "SoC Audio for NUC900 series" depends on ARCH_W90X900 help This option enables support for AC97 mode on the NUC900 SoC. config SND_SOC_NUC900_AC97 tristate select AC97_BUS select SND_AC97_CODEC select SND_SOC_AC97_BUS ## ## Boards ## config SND_SOC_NUC900EVB tristate "NUC900 AC97 support for demo board" depends on SND_SOC_NUC900 select SND_SOC_NUC900_AC97 select SND_SOC_AC97_CODEC help Select this option to enable audio (AC97) on the NUC900 demoboard. # # SoC audio configuration # menuconfig SND_SOC tristate "ALSA for SoC audio support" select SND_PCM select AC97_BUS if SND_SOC_AC97_BUS select SND_JACK if INPUT=y || INPUT=SND ---help--- If you want ASoC support, you should say Y here and also to the specific driver for your SoC platform below. ASoC provides power efficient ALSA support for embedded battery powered SoC based systems like PDA's, Phones and Personal Media Players. This ASoC audio support can also be built as a module. If so, the module will be called snd-soc-core. if SND_SOC config SND_SOC_CACHE_LZO bool "Support LZO compression for register caches" select LZO_COMPRESS select LZO_DECOMPRESS ---help--- Select this to enable LZO compression for register caches. This will allow machine or CODEC drivers to compress register caches in memory, reducing the memory consumption at the expense of performance. If this is not present and is used the system will fall back to uncompressed caches. Usually it is safe to disable this option, where cache compression in used the rbtree option will typically perform better. config SND_SOC_AC97_BUS bool # All the supported SoCs source "sound/soc/atmel/Kconfig" source "sound/soc/au1x/Kconfig" source "sound/soc/blackfin/Kconfig" source "sound/soc/davinci/Kconfig" source "sound/soc/ep93xx/Kconfig" source "sound/soc/fsl/Kconfig" source "sound/soc/imx/Kconfig" source "sound/soc/jz4740/Kconfig" source "sound/soc/nuc900/Kconfig" source "sound/soc/omap/Kconfig" source "sound/soc/kirkwood/Kconfig" source "sound/soc/mid-x86/Kconfig" source "sound/soc/pxa/Kconfig" source "sound/soc/samsung/Kconfig" source "sound/soc/s6000/Kconfig" source "sound/soc/sh/Kconfig" source "sound/soc/tegra/Kconfig" source "sound/soc/txx9/Kconfig" # Supported codecs source "sound/soc/codecs/Kconfig" endif # SND_SOC config SND_OMAP_SOC tristate "SoC Audio for the Texas Instruments OMAP chips" depends on ARCH_OMAP config SND_OMAP_SOC_MCBSP tristate select OMAP_MCBSP config SND_OMAP_SOC_MCPDM tristate config SND_OMAP_SOC_N810 tristate "SoC Audio support for Nokia N810" depends on SND_OMAP_SOC && MACH_NOKIA_N810 && I2C depends on OMAP_MUX select SND_OMAP_SOC_MCBSP select SND_SOC_TLV320AIC3X help Say Y if you want to add support for SoC audio on Nokia N810. config SND_OMAP_SOC_RX51 tristate "SoC Audio support for Nokia RX-51" depends on SND_OMAP_SOC && MACH_NOKIA_RX51 select OMAP_MCBSP select SND_OMAP_SOC_MCBSP select SND_SOC_TLV320AIC3X select SND_SOC_TPA6130A2 help Say Y if you want to add support for SoC audio on Nokia RX-51 hardware. This is also known as Nokia N900 product. config SND_OMAP_SOC_AMS_DELTA tristate "SoC Audio support for Amstrad E3 (Delta) videophone" depends on SND_OMAP_SOC && MACH_AMS_DELTA select SND_OMAP_SOC_MCBSP select SND_SOC_CX20442 help Say Y if you want to add support for SoC audio device connected to a handset and a speakerphone found on Amstrad E3 (Delta) videophone. Note that in order to get those devices fully supported, you have to build the kernel with standard serial port driver included and configured for at least 4 ports. Then, from userspace, you must load a line discipline #19 on the modem (ttyS3) serial line. The simplest way to achieve this is to install util-linux-ng and use the included ldattach utility. This can be started automatically from udev, a simple rule like this one should do the trick (it does for me): ACTION=="add", KERNEL=="controlC0", \ RUN+="/usr/sbin/ldattach 19 /dev/ttyS3" config SND_OMAP_SOC_OSK5912 tristate "SoC Audio support for omap osk5912" depends on SND_OMAP_SOC && MACH_OMAP_OSK && I2C select SND_OMAP_SOC_MCBSP select SND_SOC_TLV320AIC23 help Say Y if you want to add support for SoC audio on osk5912. config SND_OMAP_SOC_OVERO tristate "SoC Audio support for Gumstix Overo and CompuLab CM-T35" depends on TWL4030_CORE && SND_OMAP_SOC && (MACH_OVERO || MACH_CM_T35) select SND_OMAP_SOC_MCBSP select SND_SOC_TWL4030 help Say Y if you want to add support for SoC audio on the Gumstix Overo or CompuLab CM-T35 config SND_OMAP_SOC_OMAP2EVM tristate "SoC Audio support for OMAP2EVM board" depends on TWL4030_CORE && SND_OMAP_SOC && MACH_OMAP2EVM select SND_OMAP_SOC_MCBSP select SND_SOC_TWL4030 help Say Y if you want to add support for SoC audio on the omap2evm board. config SND_OMAP_SOC_OMAP3EVM tristate "SoC Audio support for OMAP3EVM board" depends on TWL4030_CORE && SND_OMAP_SOC && MACH_OMAP3EVM select SND_OMAP_SOC_MCBSP select SND_SOC_TWL4030 help Say Y if you want to add support for SoC audio on the omap3evm board. config SND_OMAP_SOC_AM3517EVM tristate "SoC Audio support for OMAP3517 / AM3517 EVM" depends on SND_OMAP_SOC && MACH_OMAP3517EVM && I2C select SND_OMAP_SOC_MCBSP select SND_SOC_TLV320AIC23 help Say Y if you want to add support for SoC audio on the OMAP3517 / AM3517 EVM. config SND_OMAP_SOC_SDP3430 tristate "SoC Audio support for Texas Instruments SDP3430" depends on TWL4030_CORE && SND_OMAP_SOC && MACH_OMAP_3430SDP select SND_OMAP_SOC_MCBSP select SND_SOC_TWL4030 help Say Y if you want to add support for SoC audio on Texas Instruments SDP3430. config SND_OMAP_SOC_SDP4430 tristate "SoC Audio support for Texas Instruments SDP4430" depends on TWL4030_CORE && SND_OMAP_SOC && MACH_OMAP_4430SDP select SND_OMAP_SOC_MCPDM select SND_SOC_TWL6040 help Say Y if you want to add support for SoC audio on Texas Instruments SDP4430. config SND_OMAP_SOC_OMAP3_PANDORA tristate "SoC Audio support for OMAP3 Pandora" depends on TWL4030_CORE && SND_OMAP_SOC && MACH_OMAP3_PANDORA select SND_OMAP_SOC_MCBSP select SND_SOC_TWL4030 help Say Y if you want to add support for SoC audio on the OMAP3 Pandora. config SND_OMAP_SOC_OMAP3_BEAGLE tristate "SoC Audio support for OMAP3 Beagle and Devkit8000" depends on TWL4030_CORE && SND_OMAP_SOC depends on (MACH_OMAP3_BEAGLE || MACH_DEVKIT8000) select SND_OMAP_SOC_MCBSP select SND_SOC_TWL4030 help Say Y if you want to add support for SoC audio on the Beagleboard or the clone Devkit8000. config SND_OMAP_SOC_ZOOM2 tristate "SoC Audio support for Zoom2" depends on TWL4030_CORE && SND_OMAP_SOC && MACH_OMAP_ZOOM2 select SND_OMAP_SOC_MCBSP select SND_SOC_TWL4030 help Say Y if you want to add support for Soc audio on Zoom2 board. config SND_OMAP_SOC_IGEP0020 tristate "SoC Audio support for IGEP v2" depends on TWL4030_CORE && SND_OMAP_SOC && MACH_IGEP0020 select SND_OMAP_SOC_MCBSP select SND_SOC_TWL4030 help Say Y if you want to add support for Soc audio on IGEP v2 board. menu "SoC Audio support for SuperH" depends on SUPERH || ARCH_SHMOBILE config SND_SOC_PCM_SH7760 tristate "SoC Audio support for Renesas SH7760" depends on CPU_SUBTYPE_SH7760 && SH_DMABRG help Enable this option for SH7760 AC97/I2S audio support. ## ## Audio unit modules ## config SND_SOC_SH4_HAC tristate select AC97_BUS select SND_SOC_AC97_BUS config SND_SOC_SH4_SSI tristate config SND_SOC_SH4_FSI tristate "SH4 FSI support" help This option enables FSI sound support config SND_SOC_SH4_SIU tristate depends on (SUPERH || ARCH_SHMOBILE) && HAVE_CLK select DMA_ENGINE select DMADEVICES select SH_DMAE select FW_LOADER ## ## Boards ## config SND_SH7760_AC97 tristate "SH7760 AC97 sound support" depends on CPU_SUBTYPE_SH7760 && SND_SOC_PCM_SH7760 select SND_SOC_SH4_HAC select SND_SOC_AC97_CODEC help This option enables generic sound support for the first AC97 unit of the SH7760. config SND_FSI_AK4642 tristate "FSI-AK4642 sound support" depends on SND_SOC_SH4_FSI && I2C select SND_SOC_AK4642 help This option enables generic sound support for the FSI - AK4642 unit config SND_FSI_DA7210 tristate "FSI-DA7210 sound support" depends on SND_SOC_SH4_FSI && I2C select SND_SOC_DA7210 help This option enables generic sound support for the FSI - DA7210 unit config SND_FSI_HDMI tristate "FSI-HDMI sound support" depends on SND_SOC_SH4_FSI && FB_SH_MOBILE_HDMI help This option enables generic sound support for the FSI - HDMI unit config SND_SIU_MIGOR tristate "SIU sound support on Migo-R" depends on SH_MIGOR select SND_SOC_SH4_SIU select SND_SOC_WM8978 help This option enables sound support for the SH7722 Migo-R board endmenu menuconfig SND_IMX_SOC tristate "SoC Audio for Freescale i.MX CPUs" depends on ARCH_MXC select SND_PCM select FIQ select SND_SOC_AC97_BUS help Say Y or M if you want to add support for codecs attached to the i.MX SSI interface. if SND_IMX_SOC config SND_MXC_SOC_SSI tristate config SND_MXC_SOC_FIQ tristate config SND_MXC_SOC_MX2 tristate config SND_MXC_SOC_WM1133_EV1 tristate "Audio on the the i.MX31ADS with WM1133-EV1 fitted" depends on MACH_MX31ADS_WM1133_EV1 && EXPERIMENTAL select SND_SOC_WM8350 select SND_MXC_SOC_SSI select SND_MXC_SOC_FIQ help Enable support for audio on the i.MX31ADS with the WM1133-EV1 PMIC board with WM8835x fitted. config SND_SOC_MX27VIS_AIC32X4 tristate "SoC audio support for Visstrim M10 boards" depends on MACH_IMX27_VISSTRIM_M10 select SND_SOC_TVL320AIC32X4 select SND_MXC_SOC_SSI select SND_MXC_SOC_MX2 help Say Y if you want to add support for SoC audio on Visstrim SM10 board with TLV320AIC32X4 codec. config SND_SOC_PHYCORE_AC97 tristate "SoC Audio support for Phytec phyCORE (and phyCARD) boards" depends on MACH_PCM043 || MACH_PCA100 select SND_SOC_WM9712 select SND_MXC_SOC_SSI select SND_MXC_SOC_FIQ help Say Y if you want to add support for SoC audio on Phytec phyCORE and phyCARD boards in AC97 mode config SND_SOC_EUKREA_TLV320 tristate "Eukrea TLV320" depends on MACH_EUKREA_MBIMX27_BASEBOARD \ || MACH_EUKREA_MBIMXSD25_BASEBOARD \ || MACH_EUKREA_MBIMXSD35_BASEBOARD \ || MACH_EUKREA_MBIMXSD51_BASEBOARD select SND_SOC_TLV320AIC23 select SND_MXC_SOC_SSI select SND_MXC_SOC_FIQ help Enable I2S based access to the TLV320AIC23B codec attached to the SSI interface endif # SND_IMX_SOC config SND_S6000_SOC tristate "SoC Audio for the Stretch s6000 family" depends on XTENSA_VARIANT_S6000 help Say Y or M if you want to add support for codecs attached to s6000 family chips. You will also need to select the platform to support below. config SND_S6000_SOC_I2S tristate config SND_S6000_SOC_S6IPCAM tristate "SoC Audio support for Stretch 6105 IP Camera" depends on SND_S6000_SOC && XTENSA_PLATFORM_S6105 select SND_S6000_SOC_I2S select SND_SOC_TLV320AIC3X help Say Y if you want to add support for SoC audio on the Stretch s6105 IP Camera Reference Design. ## ## TXx9 ACLC ## config SND_SOC_TXX9ACLC tristate "SoC Audio for TXx9" depends on HAS_TXX9_ACLC && TXX9_DMAC help This option enables support for the AC Link Controllers in TXx9 SoC. config HAS_TXX9_ACLC bool config SND_SOC_TXX9ACLC_AC97 tristate select AC97_BUS select SND_AC97_CODEC select SND_SOC_AC97_BUS ## ## Boards ## config SND_SOC_TXX9ACLC_GENERIC tristate "Generic TXx9 ACLC sound machine" depends on SND_SOC_TXX9ACLC select SND_SOC_TXX9ACLC_AC97 select SND_SOC_AC97_CODEC help This is a generic AC97 sound machine for use in TXx9 based systems. config SND_KIRKWOOD_SOC tristate "SoC Audio for the Marvell Kirkwood chip" depends on ARCH_KIRKWOOD help Say Y or M if you want to add support for codecs attached to the Kirkwood I2S interface. You will also need to select the audio interfaces to support below. config SND_KIRKWOOD_SOC_I2S tristate config SND_KIRKWOOD_SOC_OPENRD tristate "SoC Audio support for Kirkwood Openrd Client" depends on SND_KIRKWOOD_SOC && (MACH_OPENRD_CLIENT || MACH_OPENRD_ULTIMATE) select SND_KIRKWOOD_SOC_I2S select SND_SOC_CS42L51 help Say Y if you want to add support for SoC audio on Openrd Client. config SND_KIRKWOOD_SOC_T5325 tristate "SoC Audio support for HP t5325" depends on SND_KIRKWOOD_SOC && MACH_T5325 select SND_KIRKWOOD_SOC_I2S select SND_SOC_ALC5623 help Say Y if you want to add support for SoC audio on the HP t5325 thin client. ## ## Au1200/Au1550 PSC + DBDMA ## config SND_SOC_AU1XPSC tristate "SoC Audio for Au1200/Au1250/Au1550" depends on SOC_AU1200 || SOC_AU1550 help This option enables support for the Programmable Serial Controllers in AC97 and I2S mode, and the Descriptor-Based DMA Controller (DBDMA) as found on the Au1200/Au1250/Au1550 SoC. config SND_SOC_AU1XPSC_I2S tristate config SND_SOC_AU1XPSC_AC97 tristate select AC97_BUS select SND_AC97_CODEC select SND_SOC_AC97_BUS ## ## Boards ## config SND_SOC_DB1200 tristate "DB1200 AC97+I2S audio support" depends on SND_SOC_AU1XPSC select SND_SOC_AU1XPSC_AC97 select SND_SOC_AC97_CODEC select SND_SOC_AU1XPSC_I2S select SND_SOC_WM8731 help Select this option to enable audio (AC97 or I2S) on the Alchemy/AMD/RMI DB1200 demoboard. config SND_DAVINCI_SOC tristate "SoC Audio for the TI DAVINCI chip" depends on ARCH_DAVINCI help Say Y or M if you want to add support for codecs attached to the DAVINCI AC97 or I2S interface. You will also need to select the audio interfaces to support below. config SND_DAVINCI_SOC_I2S tristate config SND_DAVINCI_SOC_MCASP tristate config SND_DAVINCI_SOC_VCIF tristate config SND_DAVINCI_SOC_EVM tristate "SoC Audio support for DaVinci DM6446, DM355 or DM365 EVM" depends on SND_DAVINCI_SOC depends on MACH_DAVINCI_EVM || MACH_DAVINCI_DM355_EVM || MACH_DAVINCI_DM365_EVM select SND_DAVINCI_SOC_I2S select SND_SOC_TLV320AIC3X help Say Y if you want to add support for SoC audio on TI DaVinci DM6446, DM355 or DM365 EVM platforms. choice prompt "DM365 codec select" depends on SND_DAVINCI_SOC_EVM depends on MACH_DAVINCI_DM365_EVM default SND_DM365_EXTERNAL_CODEC config SND_DM365_AIC3X_CODEC bool "Audio Codec - AIC3101" help Say Y if you want to add support for AIC3101 audio codec config SND_DM365_VOICE_CODEC bool "Voice Codec - CQ93VC" select MFD_DAVINCI_VOICECODEC select SND_DAVINCI_SOC_VCIF select SND_SOC_CQ0093VC help Say Y if you want to add support for SoC On-chip voice codec endchoice config SND_DM6467_SOC_EVM tristate "SoC Audio support for DaVinci DM6467 EVM" depends on SND_DAVINCI_SOC && MACH_DAVINCI_DM6467_EVM select SND_DAVINCI_SOC_MCASP select SND_SOC_TLV320AIC3X select SND_SOC_SPDIF help Say Y if you want to add support for SoC audio on TI config SND_DAVINCI_SOC_SFFSDR tristate "SoC Audio support for SFFSDR" depends on SND_DAVINCI_SOC && MACH_SFFSDR select SND_DAVINCI_SOC_I2S select SND_SOC_PCM3008 select SFFSDR_FPGA help Say Y if you want to add support for SoC audio on Lyrtech SFFSDR board. config SND_DA830_SOC_EVM tristate "SoC Audio support for DA830/OMAP-L137 EVM" depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA830_EVM select SND_DAVINCI_SOC_MCASP select SND_SOC_TLV320AIC3X help Say Y if you want to add support for SoC audio on TI DA830/OMAP-L137 EVM config SND_DA850_SOC_EVM tristate "SoC Audio support for DA850/OMAP-L138 EVM" depends on SND_DAVINCI_SOC && MACH_DAVINCI_DA850_EVM select SND_DAVINCI_SOC_MCASP select SND_SOC_TLV320AIC3X help Say Y if you want to add support for SoC audio on TI DA850/OMAP-L138 EVM config SND_JZ4740_SOC tristate "SoC Audio for Ingenic JZ4740 SoC" depends on MACH_JZ4740 && SND_SOC help Say Y or M if you want to add support for codecs attached to the JZ4740 I2S interface. You will also need to select the audio interfaces to support below. config SND_JZ4740_SOC_I2S depends on SND_JZ4740_SOC tristate "SoC Audio (I2S protocol) for Ingenic JZ4740 SoC" help Say Y if you want to use I2S protocol and I2S codec on Ingenic JZ4740 based boards. config SND_JZ4740_SOC_QI_LB60 tristate "SoC Audio support for Qi LB60" depends on SND_JZ4740_SOC && JZ4740_QI_LB60 select SND_JZ4740_SOC_I2S select SND_SOC_JZ4740_CODEC help Say Y if you want to add support for ASoC audio on the Qi LB60 board a.k.a Qi Ben NanoNote. config SND_ATMEL_SOC tristate "SoC Audio for the Atmel System-on-Chip" depends on ARCH_AT91 || AVR32 help Say Y or M if you want to add support for codecs attached to the ATMEL SSC interface. You will also need to select the audio interfaces to support below. config SND_ATMEL_SOC_SSC tristate depends on SND_ATMEL_SOC help Say Y or M if you want to add support for codecs the ATMEL SSC interface. You will also needs to select the individual machine drivers to support below. config SND_AT91_SOC_SAM9G20_WM8731 tristate "SoC Audio support for WM8731-based At91sam9g20 evaluation board" depends on ATMEL_SSC && ARCH_AT91SAM9G20 && SND_ATMEL_SOC && \ AT91_PROGRAMMABLE_CLOCKS select SND_ATMEL_SOC_SSC select SND_SOC_WM8731 help Say Y if you want to add support for SoC audio on WM8731-based AT91sam9g20 evaluation board. config SND_AT32_SOC_PLAYPAQ tristate "SoC Audio support for PlayPaq with WM8510" depends on SND_ATMEL_SOC && BOARD_PLAYPAQ && AT91_PROGRAMMABLE_CLOCKS select SND_ATMEL_SOC_SSC select SND_SOC_WM8510 help Say Y or M here if you want to add support for SoC audio on the LRS PlayPaq. config SND_AT32_SOC_PLAYPAQ_SLAVE bool "Run CODEC on PlayPaq in slave mode" depends on SND_AT32_SOC_PLAYPAQ default n help Say Y if you want to run with the AT32 SSC generating the BCLK and FRAME signals on the PlayPaq. Unless you want to play with the AT32 as the SSC master, you probably want to say N here, as this will give you better sound quality. config SND_AT91_SOC_AFEB9260 tristate "SoC Audio support for AFEB9260 board" depends on ARCH_AT91 && MACH_AFEB9260 && SND_ATMEL_SOC select SND_ATMEL_SOC_SSC select SND_SOC_TLV320AIC23 help Say Y here to support sound on AFEB9260 board. config SND_BF5XX_I2S tristate "SoC I2S Audio for the ADI BF5xx chip" depends on BLACKFIN select SND_BF5XX_SOC_SPORT help Say Y or M if you want to add support for codecs attached to the Blackfin SPORT (synchronous serial ports) interface in I2S mode (supports single stereo In/Out). You will also need to select the audio interfaces to support below. config SND_BF5XX_SOC_SSM2602 tristate "SoC SSM2602 Audio support for BF52x ezkit" depends on SND_BF5XX_I2S select SND_BF5XX_SOC_I2S select SND_SOC_SSM2602 select I2C help Say Y if you want to add support for SoC audio on BF527-EZKIT. config SND_BF5XX_SOC_AD73311 tristate "SoC AD73311 Audio support for Blackfin" depends on SND_BF5XX_I2S select SND_BF5XX_SOC_I2S select SND_SOC_AD73311 help Say Y if you want to add support for AD73311 codec on Blackfin. config SND_BFIN_AD73311_SE int "PF pin for AD73311L Chip Select" depends on SND_BF5XX_SOC_AD73311 default 4 help Enter the GPIO used to control AD73311's SE pin. Acceptable values are 0 to 7 config SND_BF5XX_TDM tristate "SoC I2S(TDM mode) Audio for the ADI BF5xx chip" depends on (BLACKFIN && SND_SOC) select SND_BF5XX_SOC_SPORT help Say Y or M if you want to add support for codecs attached to the Blackfin SPORT (synchronous serial ports) interface in TDM mode. You will also need to select the audio interfaces to support below. config SND_BF5XX_SOC_AD1836 tristate "SoC AD1836 Audio support for BF5xx" depends on SND_BF5XX_TDM select SND_BF5XX_SOC_TDM select SND_SOC_AD1836 help Say Y if you want to add support for SoC audio on BF5xx STAMP/EZKIT. config SND_BF5XX_SOC_AD193X tristate "SoC AD193X Audio support for Blackfin" depends on SND_BF5XX_TDM select SND_BF5XX_SOC_TDM select SND_SOC_AD193X help Say Y if you want to add support for AD193X codec on Blackfin. This driver supports AD1936, AD1937, AD1938 and AD1939. config SND_BF5XX_AC97 tristate "SoC AC97 Audio for the ADI BF5xx chip" depends on BLACKFIN select AC97_BUS select SND_SOC_AC97_BUS select SND_BF5XX_SOC_SPORT select SND_BF5XX_SOC_AC97 help Say Y or M if you want to add support for codecs attached to the Blackfin SPORT (synchronous serial ports) interface in slot 16 mode (pseudo AC97 interface). You will also need to select the audio interfaces to support below. Note: AC97 codecs which do not implement the slot-16 mode will not function properly with this driver. This driver is known to work with the Analog Devices line of AC97 codecs. config SND_BF5XX_MMAP_SUPPORT bool "Enable MMAP Support" depends on SND_BF5XX_AC97 default y help Say y if you want AC97 driver to support mmap mode. We introduce an intermediate buffer to simulate mmap. config SND_BF5XX_MULTICHAN_SUPPORT bool "Enable Multichannel Support" depends on SND_BF5XX_AC97 default n help Say y if you want AC97 driver to support up to 5.1 channel audio. this mode will consume much more memory for DMA. config SND_BF5XX_HAVE_COLD_RESET bool "BOARD has COLD Reset GPIO" depends on SND_BF5XX_AC97 default y if BFIN548_EZKIT default n if !BFIN548_EZKIT config SND_BF5XX_RESET_GPIO_NUM int "Set a GPIO for cold reset" depends on SND_BF5XX_HAVE_COLD_RESET range 0 159 default 19 if BFIN548_EZKIT default 5 if BFIN537_STAMP default 0 help Set the correct GPIO for RESET the sound chip. config SND_BF5XX_SOC_AD1980 tristate "SoC AD1980/1 Audio support for BF5xx (Obsolete)" depends on SND_BF5XX_AC97 select SND_BF5XX_SOC_AC97 select SND_SOC_AD1980 help Say Y if you want to add support for SoC audio on BF5xx STAMP/EZKIT. Warning: Because Analog Devices Inc. discontinued the ad1980 sound chip since Sep. 2009, this ad1980 driver is not maintained, tested and supported by ADI now. config SND_BF5XX_SOC_SPORT tristate config SND_BF5XX_SOC_I2S tristate config SND_BF5XX_SOC_TDM tristate config SND_BF5XX_SOC_AC97 tristate config SND_BF5XX_SPORT_NUM int "Set a SPORT for Sound chip" depends on (SND_BF5XX_I2S || SND_BF5XX_AC97 || SND_BF5XX_TDM) range 0 3 if BF54x range 0 1 if !BF54x default 0 help Set the correct SPORT for sound chip. config SND_MPC52xx_DMA tristate # ASoC platform support for the Freescale PowerPC SOCs that have an SSI and # an Elo DMA controller, such as the MPC8610 and P1022. You will still need to # select a platform driver and a codec driver. config SND_SOC_POWERPC_SSI tristate depends on FSL_SOC config SND_SOC_MPC8610_HPCD tristate "ALSA SoC support for the Freescale MPC8610 HPCD board" # I2C is necessary for the CS4270 driver depends on MPC8610_HPCD && I2C select SND_SOC_POWERPC_SSI select SND_SOC_CS4270 select SND_SOC_CS4270_VD33_ERRATA default y if MPC8610_HPCD help Say Y if you want to enable audio on the Freescale MPC8610 HPCD. config SND_SOC_P1022_DS tristate "ALSA SoC support for the Freescale P1022 DS board" # I2C is necessary for the WM8776 driver depends on P1022_DS && I2C select SND_SOC_POWERPC_SSI select SND_SOC_WM8776 default y if P1022_DS help Say Y if you want to enable audio on the Freescale P1022 DS board. This will also include the Wolfson Microelectronics WM8776 codec driver. config SND_SOC_MPC5200_I2S tristate "Freescale MPC5200 PSC in I2S mode driver" depends on PPC_MPC52xx && PPC_BESTCOMM select SND_MPC52xx_DMA select PPC_BESTCOMM_GEN_BD help Say Y here to support the MPC5200 PSCs in I2S mode. config SND_SOC_MPC5200_AC97 tristate "Freescale MPC5200 PSC in AC97 mode driver" depends on PPC_MPC52xx && PPC_BESTCOMM select SND_SOC_AC97_BUS select SND_MPC52xx_DMA select PPC_BESTCOMM_GEN_BD help Say Y here to support the MPC5200 PSCs in AC97 mode. config SND_MPC52xx_SOC_PCM030 tristate "SoC AC97 Audio support for Phytec pcm030 and WM9712" depends on PPC_MPC5200_SIMPLE select SND_SOC_MPC5200_AC97 select SND_SOC_WM9712 help Say Y if you want to add support for sound on the Phytec pcm030 baseboard. config SND_MPC52xx_SOC_EFIKA tristate "SoC AC97 Audio support for bbplan Efika and STAC9766" depends on PPC_EFIKA select SND_SOC_MPC5200_AC97 select SND_SOC_STAC9766 help Say Y if you want to add support for sound on the Efika. config SND_EP93XX_SOC tristate "SoC Audio support for the Cirrus Logic EP93xx series" depends on ARCH_EP93XX && SND_SOC help Say Y or M if you want to add support for codecs attached to the EP93xx I2S or AC97 interfaces. config SND_EP93XX_SOC_I2S tristate config SND_EP93XX_SOC_AC97 tristate select AC97_BUS select SND_SOC_AC97_BUS config SND_EP93XX_SOC_SNAPPERCL15 tristate "SoC Audio support for Bluewater Systems Snapper CL15 module" depends on SND_EP93XX_SOC && MACH_SNAPPER_CL15 select SND_EP93XX_SOC_I2S select SND_SOC_TLV320AIC23 help Say Y or M here if you want to add support for I2S audio on the Bluewater Systems Snapper CL15 module. config SND_EP93XX_SOC_SIMONE tristate "SoC Audio support for Simplemachines Sim.One board" depends on SND_EP93XX_SOC && MACH_SIM_ONE select SND_EP93XX_SOC_AC97 select SND_SOC_AC97_CODEC help Say Y or M here if you want to add support for AC97 audio on the Simplemachines Sim.One board. config SND_EP93XX_SOC_EDB93XX tristate "SoC Audio support for Cirrus Logic EDB93xx boards" depends on SND_EP93XX_SOC && (MACH_EDB9301 || MACH_EDB9302 || MACH_EDB9302A || MACH_EDB9307A || MACH_EDB9315A) select SND_EP93XX_SOC_I2S select SND_SOC_CS4271 help Say Y or M here if you want to add support for I2S audio on the Cirrus Logic EDB93xx boards. config SND_MFLD_MACHINE tristate "SOC Machine Audio driver for Intel Medfield MID platform" depends on INTEL_SCU_IPC depends on SND_INTEL_SST select SND_SOC_SN95031 select SND_SST_PLATFORM help This adds support for ASoC machine driver for Intel(R) MID Medfield platform used as alsa device in audio substem in Intel(R) MID devices Say Y if you have such a device If unsure select "N". config SND_SST_PLATFORM tristate config SND_PXA2XX_SOC tristate "SoC Audio for the Intel PXA2xx chip" depends on ARCH_PXA select SND_ARM select SND_PXA2XX_LIB help Say Y or M if you want to add support for codecs attached to the PXA2xx AC97, I2S or SSP interface. You will also need to select the audio interfaces to support below. config SND_PXA2XX_AC97 tristate select SND_AC97_CODEC config SND_PXA2XX_SOC_AC97 tristate select AC97_BUS select SND_ARM select SND_PXA2XX_LIB_AC97 select SND_SOC_AC97_BUS config SND_PXA2XX_SOC_I2S tristate config SND_PXA_SOC_SSP tristate select PXA_SSP config SND_PXA2XX_SOC_CORGI tristate "SoC Audio support for Sharp Zaurus SL-C7x0" depends on SND_PXA2XX_SOC && PXA_SHARP_C7xx select SND_PXA2XX_SOC_I2S select SND_SOC_WM8731 help Say Y if you want to add support for SoC audio on Sharp Zaurus SL-C7x0 models (Corgi, Shepherd, Husky). config SND_PXA2XX_SOC_SPITZ tristate "SoC Audio support for Sharp Zaurus SL-Cxx00" depends on SND_PXA2XX_SOC && PXA_SHARP_Cxx00 select SND_PXA2XX_SOC_I2S select SND_SOC_WM8750 help Say Y if you want to add support for SoC audio on Sharp Zaurus SL-Cxx00 models (Spitz, Borzoi and Akita). config SND_PXA2XX_SOC_Z2 tristate "SoC Audio support for Zipit Z2" depends on SND_PXA2XX_SOC && MACH_ZIPIT2 select SND_PXA2XX_SOC_I2S select SND_SOC_WM8750 help Say Y if you want to add support for SoC audio on Zipit Z2. config SND_PXA2XX_SOC_POODLE tristate "SoC Audio support for Poodle" depends on SND_PXA2XX_SOC && MACH_POODLE select SND_PXA2XX_SOC_I2S select SND_SOC_WM8731 help Say Y if you want to add support for SoC audio on Sharp Zaurus SL-5600 model (Poodle). config SND_PXA2XX_SOC_TOSA tristate "SoC AC97 Audio support for Tosa" depends on SND_PXA2XX_SOC && MACH_TOSA depends on MFD_TC6393XB select SND_PXA2XX_SOC_AC97 select SND_SOC_WM9712 help Say Y if you want to add support for SoC audio on Sharp Zaurus SL-C6000x models (Tosa). config SND_PXA2XX_SOC_E740 tristate "SoC AC97 Audio support for e740" depends on SND_PXA2XX_SOC && MACH_E740 select SND_SOC_WM9705 select SND_PXA2XX_SOC_AC97 help Say Y if you want to add support for SoC audio on the toshiba e740 PDA config SND_PXA2XX_SOC_E750 tristate "SoC AC97 Audio support for e750" depends on SND_PXA2XX_SOC && MACH_E750 select SND_SOC_WM9705 select SND_PXA2XX_SOC_AC97 help Say Y if you want to add support for SoC audio on the toshiba e750 PDA config SND_PXA2XX_SOC_E800 tristate "SoC AC97 Audio support for e800" depends on SND_PXA2XX_SOC && MACH_E800 select SND_SOC_WM9712 select SND_PXA2XX_SOC_AC97 help Say Y if you want to add support for SoC audio on the Toshiba e800 PDA config SND_PXA2XX_SOC_EM_X270 tristate "SoC Audio support for CompuLab EM-x270, eXeda and CM-X300" depends on SND_PXA2XX_SOC && (MACH_EM_X270 || MACH_EXEDA || \ MACH_CM_X300) select SND_PXA2XX_SOC_AC97 select SND_SOC_WM9712 help Say Y if you want to add support for SoC audio on CompuLab EM-x270, eXeda and CM-X300 machines. config SND_PXA2XX_SOC_PALM27X bool "SoC Audio support for Palm T|X, T5, E2 and LifeDrive" depends on SND_PXA2XX_SOC && (MACH_PALMLD || MACH_PALMTX || \ MACH_PALMT5 || MACH_PALMTE2) select SND_PXA2XX_SOC_AC97 select SND_SOC_WM9712 help Say Y if you want to add support for SoC audio on Palm T|X, T5, E2 or LifeDrive handheld computer. config SND_SOC_SAARB tristate "SoC Audio support for Marvell Saarb" depends on SND_PXA2XX_SOC && MACH_SAARB select SND_PXA_SOC_SSP select SND_SOC_88PM860X help Say Y if you want to add support for SoC audio on the Marvell Saarb reference platform. config SND_SOC_TAVOREVB3 tristate "SoC Audio support for Marvell Tavor EVB3" depends on SND_PXA2XX_SOC && MACH_TAVOREVB3 select SND_PXA_SOC_SSP select SND_SOC_88PM860X help Say Y if you want to add support for SoC audio on the Marvell Saarb reference platform. config SND_SOC_ZYLONITE tristate "SoC Audio support for Marvell Zylonite" depends on SND_PXA2XX_SOC && MACH_ZYLONITE select SND_PXA2XX_SOC_AC97 select SND_PXA_SOC_SSP select SND_SOC_WM9713 help Say Y if you want to add support for SoC audio on the Marvell Zylonite reference platform. config SND_SOC_RAUMFELD tristate "SoC Audio support Raumfeld audio adapter" depends on SND_PXA2XX_SOC && (MACH_RAUMFELD_SPEAKER || MACH_RAUMFELD_CONNECTOR) select SND_PXA_SOC_SSP select SND_SOC_CS4270 select SND_SOC_AK4104 help Say Y if you want to add support for SoC audio on Raumfeld devices config SND_PXA2XX_SOC_MAGICIAN tristate "SoC Audio support for HTC Magician" depends on SND_PXA2XX_SOC && MACH_MAGICIAN select SND_PXA2XX_SOC_I2S select SND_PXA_SOC_SSP select SND_SOC_UDA1380 help Say Y if you want to add support for SoC audio on the HTC Magician. config SND_PXA2XX_SOC_MIOA701 tristate "SoC Audio support for MIO A701" depends on SND_PXA2XX_SOC && MACH_MIOA701 select SND_PXA2XX_SOC_AC97 select SND_SOC_WM9713 help Say Y if you want to add support for SoC audio on the MIO A701. config SND_PXA2XX_SOC_IMOTE2 tristate "SoC Audio support for IMote 2" depends on SND_PXA2XX_SOC && MACH_INTELMOTE2 && I2C select SND_PXA2XX_SOC_I2S select SND_SOC_WM8940 help Say Y if you want to add support for SoC audio on the IMote 2. # ALSA ISA drivers config SND_WSS_LIB tristate select SND_PCM config SND_SB_COMMON tristate config SND_SB8_DSP tristate select SND_PCM select SND_SB_COMMON config SND_SB16_DSP tristate select SND_PCM select SND_SB_COMMON menuconfig SND_ISA bool "ISA sound devices" depends on ISA && ISA_DMA_API default y help Support for sound devices connected via the ISA bus. if SND_ISA config SND_ADLIB tristate "AdLib FM card" select SND_OPL3_LIB help Say Y here to include support for AdLib FM cards. To compile this driver as a module, choose M here: the module will be called snd-adlib. config SND_AD1816A tristate "Analog Devices SoundPort AD1816A" depends on PNP select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM help Say Y here to include support for Analog Devices SoundPort AD1816A or compatible sound chips. To compile this driver as a module, choose M here: the module will be called snd-ad1816a. config SND_AD1848 tristate "Generic AD1848/CS4248 driver" select SND_WSS_LIB help Say Y here to include support for AD1848 (Analog Devices) or CS4248 (Cirrus Logic - Crystal Semiconductors) chips. For newer chips from Cirrus Logic, use the CS4231 or CS4232+ drivers. To compile this driver as a module, choose M here: the module will be called snd-ad1848. config SND_ALS100 tristate "Diamond Tech. DT-019x and Avance Logic ALSxxx" depends on PNP select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART select SND_SB16_DSP help Say Y here to include support for soundcards based on the Diamond Technologies DT-019X or Avance Logic chips: ALS007, ALS100, ALS110, ALS120 and ALS200 chips. To compile this driver as a module, choose M here: the module will be called snd-als100. config SND_AZT1605 tristate "Aztech AZT1605 Driver" depends on SND select SND_WSS_LIB select SND_MPU401_UART select SND_OPL3_LIB help Say Y here to include support for Aztech Sound Galaxy cards based on the AZT1605 chipset. To compile this driver as a module, choose M here: the module will be called snd-azt1605. config SND_AZT2316 tristate "Aztech AZT2316 Driver" depends on SND select SND_WSS_LIB select SND_MPU401_UART select SND_OPL3_LIB help Say Y here to include support for Aztech Sound Galaxy cards based on the AZT2316 chipset. To compile this driver as a module, choose M here: the module will be called snd-azt2316. config SND_AZT2320 tristate "Aztech Systems AZT2320" depends on PNP select ISAPNP select SND_OPL3_LIB select SND_MPU401_UART select SND_WSS_LIB help Say Y here to include support for soundcards based on the Aztech Systems AZT2320 chip. To compile this driver as a module, choose M here: the module will be called snd-azt2320. config SND_CMI8330 tristate "C-Media CMI8330" select SND_WSS_LIB select SND_SB16_DSP select SND_OPL3_LIB select SND_MPU401_UART help Say Y here to include support for soundcards based on the C-Media CMI8330 chip. To compile this driver as a module, choose M here: the module will be called snd-cmi8330. config SND_CS4231 tristate "Generic Cirrus Logic CS4231 driver" select SND_MPU401_UART select SND_WSS_LIB help Say Y here to include support for CS4231 chips from Cirrus Logic - Crystal Semiconductors. To compile this driver as a module, choose M here: the module will be called snd-cs4231. config SND_CS4236 tristate "Generic Cirrus Logic CS4232/CS4236+ driver" select SND_OPL3_LIB select SND_MPU401_UART select SND_WSS_LIB help Say Y to include support for CS4232,CS4235,CS4236,CS4237B, CS4238B,CS4239 chips from Cirrus Logic - Crystal Semiconductors. To compile this driver as a module, choose M here: the module will be called snd-cs4236. config SND_ES1688 tristate "Generic ESS ES688/ES1688 and ES968 PnP driver" select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM help Say Y here to include support for ESS AudioDrive ES688 or ES1688 chips. Also, this module support cards with ES968 PnP chip. To compile this driver as a module, choose M here: the module will be called snd-es1688. config SND_ES18XX tristate "Generic ESS ES18xx driver" select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM help Say Y here to include support for ESS AudioDrive ES18xx chips. To compile this driver as a module, choose M here: the module will be called snd-es18xx. config SND_SC6000 tristate "Gallant SC-6000/6600/7000 and Audio Excel DSP 16" depends on HAS_IOPORT select SND_WSS_LIB select SND_OPL3_LIB select SND_MPU401_UART help Say Y here to include support for Gallant SC-6000, SC-6600, SC-7000 cards and clones: Audio Excel DSP 16 and Zoltrix AV302. These cards are based on CompuMedia ASC-9308 or ASC-9408 chips. To compile this driver as a module, choose M here: the module will be called snd-sc6000. config SND_GUSCLASSIC tristate "Gravis UltraSound Classic" select SND_RAWMIDI select SND_PCM help Say Y here to include support for Gravis UltraSound Classic soundcards. To compile this driver as a module, choose M here: the module will be called snd-gusclassic. config SND_GUSEXTREME tristate "Gravis UltraSound Extreme" select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM help Say Y here to include support for Gravis UltraSound Extreme soundcards. To compile this driver as a module, choose M here: the module will be called snd-gusextreme. config SND_GUSMAX tristate "Gravis UltraSound MAX" select SND_RAWMIDI select SND_WSS_LIB help Say Y here to include support for Gravis UltraSound MAX soundcards. To compile this driver as a module, choose M here: the module will be called snd-gusmax. config SND_INTERWAVE tristate "AMD InterWave, Gravis UltraSound PnP" depends on PNP select SND_RAWMIDI select SND_WSS_LIB help Say Y here to include support for AMD InterWave based soundcards (Gravis UltraSound Plug & Play, STB SoundRage32, MED3210, Dynasonic Pro, Panasonic PCA761AW). To compile this driver as a module, choose M here: the module will be called snd-interwave. config SND_INTERWAVE_STB tristate "AMD InterWave + TEA6330T (UltraSound 32-Pro)" depends on PNP select SND_RAWMIDI select SND_WSS_LIB help Say Y here to include support for AMD InterWave based soundcards with a TEA6330T bass and treble regulator (UltraSound 32-Pro). To compile this driver as a module, choose M here: the module will be called snd-interwave-stb. config SND_JAZZ16 tristate "Media Vision Jazz16 card and compatibles" select SND_OPL3_LIB select SND_MPU401_UART select SND_SB8_DSP help Say Y here to include support for soundcards based on the Media Vision Jazz16 chipset: digital chip MVD1216 (Jazz16), codec MVA416 (CS4216) and mixer MVA514 (ICS2514). Media Vision's Jazz16 cards were sold under names Pro Sonic 16, Premium 3-D and Pro 3-D. There were also OEMs cards with the Jazz16 chipset. To compile this driver as a module, choose M here: the module will be called snd-jazz16. config SND_OPL3SA2 tristate "Yamaha OPL3-SA2/SA3" select SND_OPL3_LIB select SND_MPU401_UART select SND_WSS_LIB help Say Y here to include support for Yamaha OPL3-SA2 and OPL3-SA3 chips. To compile this driver as a module, choose M here: the module will be called snd-opl3sa2. config SND_OPTI92X_AD1848 tristate "OPTi 82C92x - AD1848" select SND_OPL3_LIB select SND_OPL4_LIB select SND_MPU401_UART select SND_WSS_LIB help Say Y here to include support for soundcards based on Opti 82C92x or OTI-601 chips and using an AD1848 codec. To compile this driver as a module, choose M here: the module will be called snd-opti92x-ad1848. config SND_OPTI92X_CS4231 tristate "OPTi 82C92x - CS4231" select SND_OPL3_LIB select SND_OPL4_LIB select SND_MPU401_UART select SND_WSS_LIB help Say Y here to include support for soundcards based on Opti 82C92x chips and using a CS4231 codec. To compile this driver as a module, choose M here: the module will be called snd-opti92x-cs4231. config SND_OPTI93X tristate "OPTi 82C93x" select SND_OPL3_LIB select SND_MPU401_UART select SND_WSS_LIB help Say Y here to include support for soundcards based on Opti 82C93x chips. To compile this driver as a module, choose M here: the module will be called snd-opti93x. config SND_MIRO tristate "Miro miroSOUND PCM1pro/PCM12/PCM20radio driver" select SND_OPL4_LIB select SND_WSS_LIB select SND_MPU401_UART select SND_PCM help Say 'Y' or 'M' to include support for Miro miroSOUND PCM1 pro, miroSOUND PCM12 and miroSOUND PCM20 Radio soundcards. To compile this driver as a module, choose M here: the module will be called snd-miro. config SND_SB8 tristate "Sound Blaster 1.0/2.0/Pro (8-bit)" select SND_OPL3_LIB select SND_RAWMIDI select SND_SB8_DSP help Say Y here to include support for Creative Sound Blaster 1.0/ 2.0/Pro (8-bit) or 100% compatible soundcards. To compile this driver as a module, choose M here: the module will be called snd-sb8. config SND_SB16 tristate "Sound Blaster 16 (PnP)" select SND_OPL3_LIB select SND_MPU401_UART select SND_SB16_DSP help Say Y here to include support for Sound Blaster 16 soundcards (including the Plug and Play version). To compile this driver as a module, choose M here: the module will be called snd-sb16. config SND_SBAWE tristate "Sound Blaster AWE (32,64) (PnP)" select SND_OPL3_LIB select SND_MPU401_UART select SND_SB16_DSP help Say Y here to include support for Sound Blaster AWE soundcards (including the Plug and Play version). To compile this driver as a module, choose M here: the module will be called snd-sbawe. config SND_SB16_CSP bool "Sound Blaster 16/AWE CSP support" depends on (SND_SB16 || SND_SBAWE) && (BROKEN || !PPC) select FW_LOADER help Say Y here to include support for the CSP core. This special coprocessor can do variable tasks like various compression and decompression algorithms. config SND_SSCAPE tristate "Ensoniq SoundScape driver" select SND_MPU401_UART select SND_WSS_LIB select FW_LOADER help Say Y here to include support for Ensoniq SoundScape and Ensoniq OEM soundcards. The PCM audio is supported on SoundScape Classic, Elite, PnP and VIVO cards. The supported OEM cards are SPEA Media FX and Reveal SC-600. The MIDI support is very experimental and requires binary firmware files called "scope.cod" and "sndscape.co?" where the ? is digit 0, 1, 2, 3 or 4. The firmware files can be found in DOS or Windows driver packages. One has to put the firmware files into the /lib/firmware directory. To compile this driver as a module, choose M here: the module will be called snd-sscape. config SND_WAVEFRONT tristate "Turtle Beach Maui,Tropez,Tropez+ (Wavefront)" select FW_LOADER select SND_OPL3_LIB select SND_MPU401_UART select SND_WSS_LIB help Say Y here to include support for Turtle Beach Maui, Tropez and Tropez+ soundcards based on the Wavefront chip. To compile this driver as a module, choose M here: the module will be called snd-wavefront. config SND_MSND_PINNACLE tristate "Turtle Beach MultiSound Pinnacle/Fiji driver" depends on X86 && EXPERIMENTAL select FW_LOADER select SND_MPU401_UART select SND_PCM help Say Y to include support for Turtle Beach MultiSound Pinnacle/ Fiji soundcards. To compile this driver as a module, choose M here: the module will be called snd-msnd-pinnacle. config SND_MSND_CLASSIC tristate "Support for Turtle Beach MultiSound Classic, Tahiti, Monterey" depends on X86 && EXPERIMENTAL select FW_LOADER select SND_MPU401_UART select SND_PCM help Say M here if you have a Turtle Beach MultiSound Classic, Tahiti or Monterey (not for the Pinnacle or Fiji). See for important information about this driver. Note that it has been discontinued, but the Voyetra Turtle Beach knowledge base entry for it is still available at . To compile this driver as a module, choose M here: the module will be called snd-msnd-classic. endif # SND_ISA #SPI drivers menuconfig SND_SPI bool "SPI sound devices" depends on SPI default y help Support for sound devices connected via the SPI bus. if SND_SPI config SND_AT73C213 tristate "Atmel AT73C213 DAC driver" depends on ATMEL_SSC select SND_PCM help Say Y here if you want to use the Atmel AT73C213 external DAC. This DAC can be found on Atmel development boards. This driver requires the Atmel SSC driver for sound sink, a peripheral found on most AT91 and AVR32 microprocessors. To compile this driver as a module, choose M here: the module will be called snd-at73c213. config SND_AT73C213_TARGET_BITRATE int "Target bitrate for AT73C213" depends on SND_AT73C213 default "48000" range 8000 50000 help Sets the target bitrate for the bitrate calculator in the driver. Limited by hardware to be between 8000 Hz and 50000 Hz. Set to 48000 Hz by default. endif # SND_SPI config SND_MPU401_UART tristate select SND_RAWMIDI config SND_OPL3_LIB tristate select SND_TIMER select SND_HWDEP config SND_OPL4_LIB tristate select SND_TIMER select SND_HWDEP config SND_VX_LIB tristate select SND_HWDEP select SND_PCM config SND_AC97_CODEC tristate select SND_PCM select AC97_BUS select SND_VMASTER menuconfig SND_DRIVERS bool "Generic sound devices" default y help Support for generic sound devices. if SND_DRIVERS config SND_PCSP tristate "PC-Speaker support (READ HELP!)" depends on PCSPKR_PLATFORM && X86 && HIGH_RES_TIMERS depends on INPUT depends on EXPERIMENTAL select SND_PCM help If you don't have a sound card in your computer, you can include a driver for the PC speaker which allows it to act like a primitive sound card. This driver also replaces the pcspkr driver for beeps. You can compile this as a module which will be called snd-pcsp. WARNING: if you already have a soundcard, enabling this driver may lead to a problem. Namely, it may get loaded before the other sound driver of yours, making the pc-speaker a default sound device. Which is likely not what you want. To make this driver play nicely with other sound driver, you can add this into your /etc/modprobe.conf: options snd-pcsp index=2 You don't need this driver if you only want your pc-speaker to beep. You don't need this driver if you have a tablet piezo beeper in your PC instead of the real speaker. Say N if you have a sound card. Say M if you don't. Say Y only if you really know what you do. config SND_DUMMY tristate "Dummy (/dev/null) soundcard" select SND_PCM help Say Y here to include the dummy driver. This driver does nothing, but emulates various mixer controls and PCM devices. You don't need this unless you're testing the hardware support of programs using the ALSA API. To compile this driver as a module, choose M here: the module will be called snd-dummy. config SND_ALOOP tristate "Generic loopback driver (PCM)" select SND_PCM help Say 'Y' or 'M' to include support for the PCM loopback device. This module returns played samples back to the user space using the standard ALSA PCM device. The devices are routed 0->1 and 1->0, where first number is the playback PCM device and second number is the capture device. Module creates two PCM devices and configured number of substreams (see the pcm_substreams module parameter). The looback device allow time sychronization with an external timing source using the time shift universal control (+-20% of system time). To compile this driver as a module, choose M here: the module will be called snd-aloop. config SND_VIRMIDI tristate "Virtual MIDI soundcard" depends on SND_SEQUENCER select SND_TIMER select SND_RAWMIDI help Say Y here to include the virtual MIDI driver. This driver allows to connect applications using raw MIDI devices to sequencer clients. If you don't know what MIDI is, say N here. To compile this driver as a module, choose M here: the module will be called snd-virmidi. config SND_MTPAV tristate "MOTU MidiTimePiece AV multiport MIDI" select SND_RAWMIDI help To use a MOTU MidiTimePiece AV multiport MIDI adapter connected to the parallel port, say Y here and make sure that the standard parallel port driver isn't used for the port. To compile this driver as a module, choose M here: the module will be called snd-mtpav. config SND_MTS64 tristate "ESI Miditerminal 4140 driver" depends on PARPORT select SND_RAWMIDI help The ESI Miditerminal 4140 is a 4 In 4 Out MIDI Interface with additional SMPTE Timecode capabilities for the parallel port. Say 'Y' to include support for this device. To compile this driver as a module, chose 'M' here: the module will be called snd-mts64. config SND_SERIAL_U16550 tristate "UART16550 serial MIDI driver" select SND_RAWMIDI help To include support for MIDI serial port interfaces, say Y here and read . This driver works with serial UARTs 16550 and better. This driver accesses the serial port hardware directly, so make sure that the standard serial driver isn't used or deactivated with setserial before loading this driver. To compile this driver as a module, choose M here: the module will be called snd-serial-u16550. config SND_MPU401 tristate "Generic MPU-401 UART driver" select SND_MPU401_UART help Say Y here to include support for MIDI ports compatible with the Roland MPU-401 interface in UART mode. To compile this driver as a module, choose M here: the module will be called snd-mpu401. config SND_PORTMAN2X4 tristate "Portman 2x4 driver" depends on PARPORT select SND_RAWMIDI help Say Y here to include support for Midiman Portman 2x4 parallel port MIDI device. To compile this driver as a module, choose M here: the module will be called snd-portman2x4. config SND_ML403_AC97CR tristate "Xilinx ML403 AC97 Controller Reference" depends on XILINX_VIRTEX select SND_AC97_CODEC help Say Y here to include support for the opb_ac97_controller_ref_v1_00_a ip core found in Xilinx's ML403 reference design. To compile this driver as a module, choose M here: the module will be called snd-ml403_ac97cr. config SND_AC97_POWER_SAVE bool "AC97 Power-Saving Mode" depends on SND_AC97_CODEC default n help Say Y here to enable the aggressive power-saving support of AC97 codecs. In this mode, the power-mode is dynamically controlled at each open/close. The mode is activated by passing 'power_save=X' to the snd-ac97-codec driver module, where 'X' is the time-out value, a nonnegative integer that specifies how many seconds of idle time the driver must count before it may put the AC97 into power-save mode; a value of 0 (zero) disables the use of this power-save mode. After the snd-ac97-codec driver module has been loaded, the 'power_save' parameter can be set via sysfs as follows: echo 10 > /sys/module/snd_ac97_codec/parameters/power_save In this case, the time-out is set to 10 seconds; setting the time-out to 1 second (the minimum activation value) isn't recommended because many applications try to reopen the device frequently. A value of 10 seconds would be a good choice for normal operations. See Documentation/sound/alsa/powersave.txt for more details. config SND_AC97_POWER_SAVE_DEFAULT int "Default time-out for AC97 power-save mode" depends on SND_AC97_POWER_SAVE default 0 help The default time-out value in seconds for AC97 automatic power-save mode. 0 means to disable the power-save mode. See SND_AC97_POWER_SAVE for more details. endif # SND_DRIVERS # ALSA soundcard-configuration config SND_TIMER tristate config SND_PCM tristate select SND_TIMER select GCD config SND_HWDEP tristate config SND_RAWMIDI tristate # To be effective this also requires INPUT - users should say: # select SND_JACK if INPUT=y || INPUT=SND # to avoid having to force INPUT on. config SND_JACK bool config SND_SEQUENCER tristate "Sequencer support" select SND_TIMER help Say Y or M to enable MIDI sequencer and router support. This feature allows routing and enqueueing of MIDI events. Events can be processed at a given time. Many programs require this feature, so you should enable it unless you know what you're doing. config SND_SEQ_DUMMY tristate "Sequencer dummy client" depends on SND_SEQUENCER help Say Y here to enable the dummy sequencer client. This client is a simple MIDI-through client: all normal input events are redirected to the output port immediately. You don't need this unless you want to connect many MIDI devices or applications together. To compile this driver as a module, choose M here: the module will be called snd-seq-dummy. config SND_OSSEMUL select SOUND_OSS_CORE bool config SND_MIXER_OSS tristate "OSS Mixer API" select SND_OSSEMUL help To enable OSS mixer API emulation (/dev/mixer*), say Y here and read . Many programs still use the OSS API, so say Y. To compile this driver as a module, choose M here: the module will be called snd-mixer-oss. config SND_PCM_OSS tristate "OSS PCM (digital audio) API" select SND_OSSEMUL select SND_PCM help To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y here and read . Many programs still use the OSS API, so say Y. To compile this driver as a module, choose M here: the module will be called snd-pcm-oss. config SND_PCM_OSS_PLUGINS bool "OSS PCM (digital audio) API - Include plugin system" depends on SND_PCM_OSS default y help If you disable this option, the ALSA's OSS PCM API will not support conversion of channels, formats and rates. It will behave like most of new OSS/Free drivers in 2.4/2.6 kernels. config SND_SEQUENCER_OSS bool "OSS Sequencer API" depends on SND_SEQUENCER select SND_OSSEMUL help Say Y here to enable OSS sequencer emulation (both /dev/sequencer and /dev/music interfaces). Many programs still use the OSS API, so say Y. If you choose M in "Sequencer support" (SND_SEQUENCER), this will be compiled as a module. The module will be called snd-seq-oss. config SND_HRTIMER tristate "HR-timer backend support" depends on HIGH_RES_TIMERS select SND_TIMER help Say Y here to enable HR-timer backend for ALSA timer. ALSA uses the hrtimer as a precise timing source. The ALSA sequencer code also can use this timing source. To compile this driver as a module, choose M here: the module will be called snd-hrtimer. config SND_SEQ_HRTIMER_DEFAULT bool "Use HR-timer as default sequencer timer" depends on SND_HRTIMER && SND_SEQUENCER default y help Say Y here to use the HR-timer backend as the default sequencer timer. config SND_RTCTIMER tristate "RTC Timer support" depends on RTC select SND_TIMER help Say Y here to enable RTC timer support for ALSA. ALSA uses the RTC timer as a precise timing source and maps the RTC timer to ALSA's timer interface. The ALSA sequencer code also can use this timing source. To compile this driver as a module, choose M here: the module will be called snd-rtctimer. Note that this option is exclusive with the new RTC drivers (CONFIG_RTC_CLASS) since this requires the old API. config SND_SEQ_RTCTIMER_DEFAULT bool "Use RTC as default sequencer timer" depends on SND_RTCTIMER && SND_SEQUENCER depends on !SND_SEQ_HRTIMER_DEFAULT default y help Say Y here to use the RTC timer as the default sequencer timer. This is strongly recommended because it ensures precise MIDI timing even when the system timer runs at less than 1000 Hz. If in doubt, say Y. config SND_DYNAMIC_MINORS bool "Dynamic device file minor numbers" help If you say Y here, the minor numbers of ALSA device files in /dev/snd/ are allocated dynamically. This allows you to have more than 8 sound cards, but requires a dynamic device file system like udev. If you are unsure about this, say N here. config SND_SUPPORT_OLD_API bool "Support old ALSA API" default y help Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3 or older). config SND_VERBOSE_PROCFS bool "Verbose procfs contents" depends on PROC_FS default y help Say Y here to include code for verbose procfs contents (provides useful information to developers when a problem occurs). On the other side, it makes the ALSA subsystem larger. config SND_VERBOSE_PRINTK bool "Verbose printk" help Say Y here to enable verbose log messages. These messages will help to identify source file and position containing printed messages. You don't need this unless you're debugging ALSA. config SND_DEBUG bool "Debug" help Say Y here to enable ALSA debug code. config SND_DEBUG_VERBOSE bool "More verbose debug" depends on SND_DEBUG help Say Y here to enable extra-verbose debugging messages. Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages. So, say Y only if you are ready to be annoyed. config SND_PCM_XRUN_DEBUG bool "Enable PCM ring buffer overrun/underrun debugging" default n depends on SND_DEBUG && SND_VERBOSE_PROCFS help Say Y to enable the PCM ring buffer overrun/underrun debugging. It is usually not required, but if you have trouble with sound clicking when system is loaded, it may help to determine the process or driver which causes the scheduling gaps. config SND_VMASTER bool config SND_DMA_SGBUF def_bool y depends on X86 source "sound/core/seq/Kconfig" # define SND_XXX_SEQ to min(SND_SEQUENCER,SND_XXX) config SND_RAWMIDI_SEQ def_tristate SND_SEQUENCER && SND_RAWMIDI config SND_OPL3_LIB_SEQ def_tristate SND_SEQUENCER && SND_OPL3_LIB config SND_OPL4_LIB_SEQ def_tristate SND_SEQUENCER && SND_OPL4_LIB config SND_SBAWE_SEQ def_tristate SND_SEQUENCER && SND_SBAWE config SND_EMU10K1_SEQ def_tristate SND_SEQUENCER && SND_EMU10K1 # ALSA MIPS drivers menuconfig SND_MIPS bool "MIPS sound devices" depends on MIPS default y help Support for sound devices of MIPS architectures. if SND_MIPS config SND_SGI_O2 tristate "SGI O2 Audio" depends on SGI_IP32 help Sound support for the SGI O2 Workstation. config SND_SGI_HAL2 tristate "SGI HAL2 Audio" depends on SGI_HAS_HAL2 help Sound support for the SGI Indy and Indigo2 Workstation. config SND_AU1X00 tristate "Au1x00 AC97 Port Driver" depends on SOC_AU1000 || SOC_AU1100 || SOC_AU1500 select SND_PCM select SND_AC97_CODEC help ALSA Sound driver for the Au1x00's AC97 port. endif # SND_MIPS menu "Atmel devices (AVR32 and AT91)" depends on AVR32 || ARCH_AT91 config SND_ATMEL_ABDAC tristate "Atmel Audio Bitstream DAC (ABDAC) driver" select SND_PCM depends on DW_DMAC && AVR32 help ALSA sound driver for the Atmel Audio Bitstream DAC (ABDAC). config SND_ATMEL_AC97C tristate "Atmel AC97 Controller (AC97C) driver" select SND_PCM select SND_AC97_CODEC depends on (DW_DMAC && AVR32) || ARCH_AT91 help ALSA sound driver for the Atmel AC97 controller. endmenu # ALSA ARM drivers menuconfig SND_ARM bool "ARM sound devices" depends on ARM default y help Support for sound devices specific to ARM architectures. Drivers that are implemented on ASoC can be found in "ALSA for SoC audio support" section. if SND_ARM config SND_ARMAACI tristate "ARM PrimeCell PL041 AC Link support" depends on ARM_AMBA select SND_PCM select SND_AC97_CODEC config SND_PXA2XX_PCM tristate select SND_PCM config SND_PXA2XX_LIB tristate select SND_AC97_CODEC if SND_PXA2XX_LIB_AC97 config SND_PXA2XX_LIB_AC97 bool config SND_PXA2XX_AC97 tristate "AC97 driver for the Intel PXA2xx chip" depends on ARCH_PXA select SND_PXA2XX_PCM select SND_AC97_CODEC select SND_PXA2XX_LIB select SND_PXA2XX_LIB_AC97 help Say Y or M if you want to support any AC97 codec attached to the PXA2xx AC97 interface. endif # SND_ARM # 18 Apr 1998, Michael Elizabeth Chastain, # More hacking for modularisation. # # Prompt user for primary drivers. config SOUND_BCM_CS4297A tristate "Crystal Sound CS4297a (for Swarm)" depends on SIBYTE_SWARM help The BCM91250A has a Crystal CS4297a on synchronous serial port B (in addition to the DB-9 serial port). Say Y or M here to enable the sound chip instead of the UART. Also note that CONFIG_KGDB should not be enabled at the same time, since it also attempts to use this UART port. config SOUND_VWSND tristate "SGI Visual Workstation Sound" depends on X86_VISWS help Say Y or M if you have an SGI Visual Workstation and you want to be able to use its on-board audio. Read for more info on this driver's capabilities. config SOUND_AU1550_AC97 tristate "Au1550/Au1200 AC97 Sound" depends on SOC_AU1550 || SOC_AU1200 config SOUND_MSNDCLAS tristate "Support for Turtle Beach MultiSound Classic, Tahiti, Monterey" depends on (m || !STANDALONE) && ISA help Say M here if you have a Turtle Beach MultiSound Classic, Tahiti or Monterey (not for the Pinnacle or Fiji). See for important information about this driver. Note that it has been discontinued, but the Voyetra Turtle Beach knowledge base entry for it is still available at . comment "Compiled-in MSND Classic support requires firmware during compilation." depends on SOUND_PRIME && SOUND_MSNDCLAS=y config MSNDCLAS_HAVE_BOOT bool depends on SOUND_MSNDCLAS=y && !STANDALONE default y config MSNDCLAS_INIT_FILE string "Full pathname of MSNDINIT.BIN firmware file" depends on SOUND_MSNDCLAS default "/etc/sound/msndinit.bin" help The MultiSound cards have two firmware files which are required for operation, and are not currently included. These files can be obtained from Turtle Beach. See for information on how to obtain this. config MSNDCLAS_PERM_FILE string "Full pathname of MSNDPERM.BIN firmware file" depends on SOUND_MSNDCLAS default "/etc/sound/msndperm.bin" help The MultiSound cards have two firmware files which are required for operation, and are not currently included. These files can be obtained from Turtle Beach. See for information on how to obtain this. config MSNDCLAS_IRQ int "MSND Classic IRQ 5, 7, 9, 10, 11, 12" depends on SOUND_MSNDCLAS=y default "5" help Interrupt Request line for the MultiSound Classic and related cards. config MSNDCLAS_MEM hex "MSND Classic memory B0000, C8000, D0000, D8000, E0000, E8000" depends on SOUND_MSNDCLAS=y default "D0000" help Memory-mapped I/O base address for the MultiSound Classic and related cards. config MSNDCLAS_IO hex "MSND Classic I/O 210, 220, 230, 240, 250, 260, 290, 3E0" depends on SOUND_MSNDCLAS=y default "290" help I/O port address for the MultiSound Classic and related cards. config SOUND_MSNDPIN tristate "Support for Turtle Beach MultiSound Pinnacle, Fiji" depends on (m || !STANDALONE) && ISA help Say M here if you have a Turtle Beach MultiSound Pinnacle or Fiji. See for important information about this driver. Note that it has been discontinued, but the Voyetra Turtle Beach knowledge base entry for it is still available at . comment "Compiled-in MSND Pinnacle support requires firmware during compilation." depends on SOUND_PRIME && SOUND_MSNDPIN=y config MSNDPIN_HAVE_BOOT bool depends on SOUND_MSNDPIN=y default y config MSNDPIN_INIT_FILE string "Full pathname of PNDSPINI.BIN firmware file" depends on SOUND_MSNDPIN default "/etc/sound/pndspini.bin" help The MultiSound cards have two firmware files which are required for operation, and are not currently included. These files can be obtained from Turtle Beach. See for information on how to obtain this. config MSNDPIN_PERM_FILE string "Full pathname of PNDSPERM.BIN firmware file" depends on SOUND_MSNDPIN default "/etc/sound/pndsperm.bin" help The MultiSound cards have two firmware files which are required for operation, and are not currently included. These files can be obtained from Turtle Beach. See for information on how to obtain this. config MSNDPIN_IRQ int "MSND Pinnacle IRQ 5, 7, 9, 10, 11, 12" depends on SOUND_MSNDPIN=y default "5" help Interrupt request line for the primary synthesizer on MultiSound Pinnacle and Fiji sound cards. config MSNDPIN_MEM hex "MSND Pinnacle memory B0000, C8000, D0000, D8000, E0000, E8000" depends on SOUND_MSNDPIN=y default "D0000" help Memory-mapped I/O base address for the primary synthesizer on MultiSound Pinnacle and Fiji sound cards. config MSNDPIN_IO hex "MSND Pinnacle I/O 210, 220, 230, 240, 250, 260, 290, 3E0" depends on SOUND_MSNDPIN=y default "290" help Memory-mapped I/O base address for the primary synthesizer on MultiSound Pinnacle and Fiji sound cards. config MSNDPIN_DIGITAL bool "MSND Pinnacle has S/PDIF I/O" depends on SOUND_MSNDPIN=y help If you have the S/PDIF daughter board for the Pinnacle or Fiji, answer Y here; otherwise, say N. If you have this, you will be able to play and record from the S/PDIF port (digital signal). See for information on how to make use of this capability. config MSNDPIN_NONPNP bool "MSND Pinnacle non-PnP Mode" depends on SOUND_MSNDPIN=y help The Pinnacle and Fiji card resources can be configured either with PnP, or through a configuration port. Say Y here if your card is NOT in PnP mode. For the Pinnacle, configuration in non-PnP mode allows use of the IDE and joystick peripherals on the card as well; these do not show up when the card is in PnP mode. Specifying zero for any resource of a device will disable the device. If you are running the card in PnP mode, you must say N here and use isapnptools to configure the card's resources. comment "MSND Pinnacle DSP section will be configured to above parameters." depends on SOUND_MSNDPIN=y && MSNDPIN_NONPNP config MSNDPIN_CFG hex "MSND Pinnacle config port 250,260,270" depends on MSNDPIN_NONPNP default "250" help This is the port which the Pinnacle and Fiji uses to configure the card's resources when not in PnP mode. If your card is in PnP mode, then be sure to say N to the previous option, "MSND Pinnacle Non-PnP Mode". comment "Pinnacle-specific Device Configuration (0 disables)" depends on SOUND_MSNDPIN=y && MSNDPIN_NONPNP config MSNDPIN_MPU_IO hex "MSND Pinnacle MPU I/O (e.g. 330)" depends on MSNDPIN_NONPNP default "0" help Memory-mapped I/O base address for the Kurzweil daughterboard synthesizer on MultiSound Pinnacle and Fiji sound cards. config MSNDPIN_MPU_IRQ int "MSND Pinnacle MPU IRQ (e.g. 9)" depends on MSNDPIN_NONPNP default "0" help Interrupt request number for the Kurzweil daughterboard synthesizer on MultiSound Pinnacle and Fiji sound cards. config MSNDPIN_IDE_IO0 hex "MSND Pinnacle IDE I/O 0 (e.g. 170)" depends on MSNDPIN_NONPNP default "0" help CD-ROM drive 0 memory-mapped I/O base address for the MultiSound Pinnacle and Fiji sound cards. config MSNDPIN_IDE_IO1 hex "MSND Pinnacle IDE I/O 1 (e.g. 376)" depends on MSNDPIN_NONPNP default "0" help CD-ROM drive 1 memory-mapped I/O base address for the MultiSound Pinnacle and Fiji sound cards. config MSNDPIN_IDE_IRQ int "MSND Pinnacle IDE IRQ (e.g. 15)" depends on MSNDPIN_NONPNP default "0" help Interrupt request number for the IDE CD-ROM interface on the MultiSound Pinnacle and Fiji sound cards. config MSNDPIN_JOYSTICK_IO hex "MSND Pinnacle joystick I/O (e.g. 200)" depends on MSNDPIN_NONPNP default "0" help Memory-mapped I/O base address for the joystick port on MultiSound Pinnacle and Fiji sound cards. config MSND_FIFOSIZE int "MSND buffer size (kB)" depends on SOUND_MSNDPIN=y || SOUND_MSNDCLAS=y default "128" help Configures the size of each audio buffer, in kilobytes, for recording and playing in the MultiSound drivers (both the Classic and Pinnacle). Larger values reduce the chance of data overruns at the expense of overall latency. If unsure, use the default. menuconfig SOUND_OSS tristate "OSS sound modules" depends on ISA_DMA_API && VIRT_TO_BUS help OSS is the Open Sound System suite of sound card drivers. They make sound programming easier since they provide a common API. Say Y or M here (the module will be called sound) if you haven't found a driver for your sound card above, then pick your driver from the list below. if SOUND_OSS config SOUND_TRACEINIT bool "Verbose initialisation" help Verbose soundcard initialization -- affects the format of autoprobe and initialization messages at boot time. config SOUND_DMAP bool "Persistent DMA buffers" ---help--- Linux can often have problems allocating DMA buffers for ISA sound cards on machines with more than 16MB of RAM. This is because ISA DMA buffers must exist below the 16MB boundary and it is quite possible that a large enough free block in this region cannot be found after the machine has been running for a while. If you say Y here the DMA buffers (64Kb) will be allocated at boot time and kept until the shutdown. This option is only useful if you said Y to "OSS sound modules", above. If you said M to "OSS sound modules" then you can get the persistent DMA buffer functionality by passing the command-line argument "dmabuf=1" to the sound module. Say Y unless you have 16MB or more RAM or a PCI sound card. config SOUND_VMIDI tristate "Loopback MIDI device support" help Support for MIDI loopback on port 1 or 2. config SOUND_TRIX tristate "MediaTrix AudioTrix Pro support" help Answer Y if you have the AudioTriX Pro sound card manufactured by MediaTrix. config TRIX_HAVE_BOOT bool "Have TRXPRO.HEX firmware file" depends on SOUND_TRIX=y && !STANDALONE help The MediaTrix AudioTrix Pro has an on-board microcontroller which needs to be initialized by downloading the code from the file TRXPRO.HEX in the DOS driver directory. If you don't have the TRXPRO.HEX file handy you may skip this step. However, the SB and MPU-401 modes of AudioTrix Pro will not work without this file! config TRIX_BOOT_FILE string "Full pathname of TRXPRO.HEX firmware file" depends on TRIX_HAVE_BOOT default "/etc/sound/trxpro.hex" help Enter the full pathname of your TRXPRO.HEX file, starting from /. config SOUND_MSS tristate "Microsoft Sound System support" ---help--- Again think carefully before answering Y to this question. It's safe to answer Y if you have the original Windows Sound System card made by Microsoft or Aztech SG 16 Pro (or NX16 Pro). Also you may say Y in case your card is NOT among these: ATI Stereo F/X, AdLib, Audio Excell DSP16, Cardinal DSP16, Ensoniq SoundScape (and compatibles made by Reveal and Spea), Gravis Ultrasound, Gravis Ultrasound ACE, Gravis Ultrasound Max, Gravis Ultrasound with 16 bit option, Logitech Sound Man 16, Logitech SoundMan Games, Logitech SoundMan Wave, MAD16 Pro (OPTi 82C929), Media Vision Jazz16, MediaTriX AudioTriX Pro, Microsoft Windows Sound System (MSS/WSS), Mozart (OAK OTI-601), Orchid SW32, Personal Sound System (PSS), Pro Audio Spectrum 16, Pro Audio Studio 16, Pro Sonic 16, Roland MPU-401 MIDI interface, Sound Blaster 1.0, Sound Blaster 16, Sound Blaster 16ASP, Sound Blaster 2.0, Sound Blaster AWE32, Sound Blaster Pro, TI TM4000M notebook, ThunderBoard, Turtle Beach Tropez, Yamaha FM synthesizers (OPL2, OPL3 and OPL4), 6850 UART MIDI Interface. For cards having native support in VoxWare, consult the card specific instructions in . Some drivers have their own MSS support and saying Y to this option will cause a conflict. If you compile the driver into the kernel, you have to add "ad1848=,,,[,]" to the kernel command line. config SOUND_MPU401 tristate "MPU-401 support (NOT for SB16)" ---help--- Be careful with this question. The MPU401 interface is supported by all sound cards. However, some natively supported cards have their own driver for MPU401. Enabling this MPU401 option with these cards will cause a conflict. Also, enabling MPU401 on a system that doesn't really have a MPU401 could cause some trouble. If your card was in the list of supported cards, look at the card specific instructions in the file. It is safe to answer Y if you have a true MPU401 MIDI interface card. If you compile the driver into the kernel, you have to add "mpu401=," to the kernel command line. config SOUND_PAS tristate "ProAudioSpectrum 16 support" ---help--- Answer Y only if you have a Pro Audio Spectrum 16, ProAudio Studio 16 or Logitech SoundMan 16 sound card. Answer N if you have some other card made by Media Vision or Logitech since those are not PAS16 compatible. Please read . It is not necessary to add Sound Blaster support separately; it is included in PAS support. If you compile the driver into the kernel, you have to add "pas2=,,,,,,, to the kernel command line. config PAS_JOYSTICK bool "Enable PAS16 joystick port" depends on SOUND_PAS=y help Say Y here to enable the Pro Audio Spectrum 16's auxiliary joystick port. config SOUND_PSS tristate "PSS (AD1848, ADSP-2115, ESC614) support" help Answer Y or M if you have an Orchid SW32, Cardinal DSP16, Beethoven ADSP-16 or some other card based on the PSS chipset (AD1848 codec + ADSP-2115 DSP chip + Echo ESC614 ASIC CHIP). For more information on how to compile it into the kernel or as a module see the file . If you compile the driver into the kernel, you have to add "pss=,,,,," to the kernel command line. config PSS_MIXER bool "Enable PSS mixer (Beethoven ADSP-16 and other compatible)" depends on SOUND_PSS help Answer Y for Beethoven ADSP-16. You may try to say Y also for other cards if they have master volume, bass, treble, and you can't control it under Linux. If you answer N for Beethoven ADSP-16, you can't control master volume, bass, treble and synth volume. If you said M to "PSS support" above, you may enable or disable this PSS mixer with the module parameter pss_mixer. For more information see the file . config PSS_HAVE_BOOT bool "Have DSPxxx.LD firmware file" depends on SOUND_PSS && !STANDALONE help If you have the DSPxxx.LD file or SYNTH.LD file for you card, say Y to include this file. Without this file the synth device (OPL) may not work. config PSS_BOOT_FILE string "Full pathname of DSPxxx.LD firmware file" depends on PSS_HAVE_BOOT default "/etc/sound/dsp001.ld" help Enter the full pathname of your DSPxxx.LD file or SYNTH.LD file, starting from /. config SOUND_SB tristate "100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support" ---help--- Answer Y if you have an original Sound Blaster card made by Creative Labs or a 100% hardware compatible clone (like the Thunderboard or SM Games). For an unknown card you may answer Y if the card claims to be Sound Blaster-compatible. Please read the file . You should also say Y here for cards based on the Avance Logic ALS-007 and ALS-1X0 chips (read ) and for cards based on ESS chips (read and ). If you have an SB AWE 32 or SB AWE 64, say Y here and also to "AWE32 synth" below and read . If you have an IBM Mwave card, say Y here and read . If you compile the driver into the kernel and don't want to use isapnp, you have to add "sb=,,," to the kernel command line. You can say M here to compile this driver as a module; the module is called sb. config SOUND_YM3812 tristate "Yamaha FM synthesizer (YM3812/OPL-3) support" ---help--- Answer Y if your card has a FM chip made by Yamaha (OPL2/OPL3/OPL4). Answering Y is usually a safe and recommended choice, however some cards may have software (TSR) FM emulation. Enabling FM support with these cards may cause trouble (I don't currently know of any such cards, however). Please read the file if your card has an OPL3 chip. If you compile the driver into the kernel, you have to add "opl3=" to the kernel command line. If unsure, say Y. config SOUND_UART6850 tristate "6850 UART support" help This option enables support for MIDI interfaces based on the 6850 UART chip. This interface is rarely found on sound cards. It's safe to answer N to this question. If you compile the driver into the kernel, you have to add "uart6850=," to the kernel command line. config SOUND_AEDSP16 tristate "Gallant Audio Cards (SC-6000 and SC-6600 based)" ---help--- Answer Y if you have a Gallant's Audio Excel DSP 16 card. This driver supports Audio Excel DSP 16 but not the III nor PnP versions of this card. The Gallant's Audio Excel DSP 16 card can emulate either an SBPro or a Microsoft Sound System card, so you should have said Y to either "100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16) support" or "Microsoft Sound System support", above, and you need to answer the "MSS emulation" and "SBPro emulation" questions below accordingly. You should say Y to one and only one of these two questions. Read the file and the head of as well as to get more information about this driver and its configuration. config SC6600 bool "SC-6600 based audio cards (new Audio Excel DSP 16)" depends on SOUND_AEDSP16 help The SC6600 is the new version of DSP mounted on the Audio Excel DSP 16 cards. Find in the manual the FCC ID of your audio card and answer Y if you have an SC6600 DSP. config SC6600_JOY bool "Activate SC-6600 Joystick Interface" depends on SC6600 help Say Y here in order to use the joystick interface of the Audio Excel DSP 16 card. config SC6600_CDROM int "SC-6600 CDROM Interface (4=None, 3=IDE, 1=Panasonic, 0=?Sony?)" depends on SC6600 default "4" help This is used to activate the CD-ROM interface of the Audio Excel DSP 16 card. Enter: 0 for Sony, 1 for Panasonic, 2 for IDE, 4 for no CD-ROM present. config SC6600_CDROMBASE hex "SC-6600 CDROM Interface I/O Address" depends on SC6600 default "0" help Base I/O port address for the CD-ROM interface of the Audio Excel DSP 16 card. config SOUND_VIDC tristate "VIDC 16-bit sound" depends on ARM && (ARCH_ACORN || ARCH_CLPS7500) help 16-bit support for the VIDC onboard sound hardware found on Acorn machines. config SOUND_WAVEARTIST tristate "Netwinder WaveArtist" depends on ARM && ARCH_NETWINDER help Say Y here to include support for the Rockwell WaveArtist sound system. This driver is mainly for the NetWinder. config SOUND_KAHLUA tristate "XpressAudio Sound Blaster emulation" depends on SOUND_SB endif # SOUND_OSS config DMASOUND_ATARI tristate "Atari DMA sound support" depends on ATARI && SOUND select DMASOUND help If you want to use the internal audio of your Atari in Linux, answer Y to this question. This will provide a Sun-like /dev/audio, compatible with the Linux/i386 sound system. Otherwise, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). If you want to compile it as a module, say M here and read . config DMASOUND_PAULA tristate "Amiga DMA sound support" depends on AMIGA && SOUND select DMASOUND help If you want to use the internal audio of your Amiga in Linux, answer Y to this question. This will provide a Sun-like /dev/audio, compatible with the Linux/i386 sound system. Otherwise, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). If you want to compile it as a module, say M here and read . config DMASOUND_Q40 tristate "Q40 sound support" depends on Q40 && SOUND select DMASOUND help If you want to use the internal audio of your Q40 in Linux, answer Y to this question. This will provide a Sun-like /dev/audio, compatible with the Linux/i386 sound system. Otherwise, say N. This driver is also available as a module ( = code which can be inserted in and removed from the running kernel whenever you want). If you want to compile it as a module, say M here and read . config DMASOUND tristate select SOUND_OSS_CORE # ALSA PowerMac drivers menuconfig SND_PPC bool "PowerPC sound devices" depends on PPC default y help Support for sound devices specific to PowerPC architectures. if SND_PPC config SND_POWERMAC tristate "PowerMac (AWACS, DACA, Burgundy, Tumbler, Keywest)" depends on I2C && INPUT && PPC_PMAC select SND_PCM select SND_VMASTER help Say Y here to include support for the integrated sound device. To compile this driver as a module, choose M here: the module will be called snd-powermac. config SND_POWERMAC_AUTO_DRC bool "Toggle DRC automatically at headphone/line plug-in" depends on SND_POWERMAC default y help Say Y here to enable the automatic toggle of DRC (dynamic range compression) on Tumbler/Snapper. If this feature is enabled, DRC is turned off when the headphone/line jack is plugged, and turned on when unplugged. Note that you can turn on/off DRC manually even without this option. config SND_PS3 tristate "PS3 Audio support" depends on PS3_PS3AV select SND_PCM default m help Say Y here to include support for audio on the PS3 To compile this driver as a module, choose M here: the module will be called snd_ps3. config SND_PS3_DEFAULT_START_DELAY int "Startup delay time in ms" depends on SND_PS3 default "2000" endif # SND_PPC config SND_AOA_ONYX tristate "support Onyx chip" select I2C select I2C_POWERMAC ---help--- This option enables support for the Onyx (pcm3052) codec chip found in the latest Apple machines (most of those with digital audio output). #config SND_AOA_TOPAZ # tristate "support Topaz chips" # ---help--- # This option enables support for the Topaz (CS84xx) # codec chips found in the latest Apple machines, # these chips do the digital input and output on # some PowerMacs. config SND_AOA_TAS tristate "support TAS chips" select I2C select I2C_POWERMAC ---help--- This option enables support for the tas chips found in a lot of Apple Machines, especially iBooks and PowerBooks without digital. config SND_AOA_TOONIE tristate "support Toonie chip" ---help--- This option enables support for the toonie codec found in the Mac Mini. If you have a Mac Mini and want to hear sound, select this option. menuconfig SND_AOA tristate "Apple Onboard Audio driver" depends on PPC_PMAC select SND_PCM ---help--- This option enables the new driver for the various Apple Onboard Audio components. if SND_AOA source "sound/aoa/fabrics/Kconfig" source "sound/aoa/codecs/Kconfig" source "sound/aoa/soundbus/Kconfig" endif # SND_AOA config SND_AOA_SOUNDBUS tristate "Apple Soundbus support" select SND_PCM ---help--- This option enables the generic driver for the soundbus support on Apple machines. It is required for the sound bus implementations. config SND_AOA_SOUNDBUS_I2S tristate "I2S bus support" depends on SND_AOA_SOUNDBUS && PCI ---help--- This option enables support for Apple I2S busses. config SND_AOA_FABRIC_LAYOUT tristate "layout-id fabric" select SND_AOA_SOUNDBUS select SND_AOA_SOUNDBUS_I2S ---help--- This enables the layout-id fabric for the Apple Onboard Audio driver, the module holding it all together based on the device-tree's layout-id property. If you are unsure and have a later Apple machine, compile it as a module. # ALSA Sparc drivers menuconfig SND_SPARC bool "Sparc sound devices" depends on SPARC default y help Support for sound devices specific to Sun SPARC architectures. if SND_SPARC config SND_SUN_AMD7930 tristate "Sun AMD7930" depends on SBUS select SND_PCM help Say Y here to include support for AMD7930 sound device on Sun. To compile this driver as a module, choose M here: the module will be called snd-sun-amd7930. config SND_SUN_CS4231 tristate "Sun CS4231" select SND_PCM help Say Y here to include support for CS4231 sound device on Sun. To compile this driver as a module, choose M here: the module will be called snd-sun-cs4231. config SND_SUN_DBRI tristate "Sun DBRI" depends on SBUS select SND_PCM help Say Y here to include support for DBRI sound device on Sun. To compile this driver as a module, choose M here: the module will be called snd-sun-dbri. endif # SND_SPARC # ALSA PCI drivers menuconfig SND_PCI bool "PCI sound devices" depends on PCI default y help Support for sound devices connected via the PCI bus. if SND_PCI config SND_AD1889 tristate "Analog Devices AD1889" select SND_AC97_CODEC help Say Y here to include support for the integrated AC97 sound device found in particular on the Hewlett-Packard [BCJ]-xxx0 class PA-RISC workstations, using the AD1819 codec. To compile this as a module, choose M here: the module will be called snd-ad1889. config SND_ALS300 tristate "Avance Logic ALS300/ALS300+" select SND_PCM select SND_AC97_CODEC select SND_OPL3_LIB help Say 'Y' or 'M' to include support for Avance Logic ALS300/ALS300+ To compile this driver as a module, choose M here: the module will be called snd-als300 config SND_ALS4000 tristate "Avance Logic ALS4000" depends on ISA_DMA_API select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM select SND_SB_COMMON help Say Y here to include support for soundcards based on Avance Logic ALS4000 chips. To compile this driver as a module, choose M here: the module will be called snd-als4000. config SND_ALI5451 tristate "ALi M5451 PCI Audio Controller" select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for the integrated AC97 sound device on motherboards using the ALi M5451 Audio Controller (M1535/M1535D/M1535+/M1535D+ south bridges). Newer chipsets use the "Intel/SiS/nVidia/AMD/ALi AC97 Controller" driver. To compile this driver as a module, choose M here: the module will be called snd-ali5451. config SND_ASIHPI tristate "AudioScience ASIxxxx" depends on X86 select FW_LOADER select SND_PCM select SND_HWDEP help Say Y here to include support for AudioScience ASI sound cards. To compile this driver as a module, choose M here: the module will be called snd-asihpi. config SND_ATIIXP tristate "ATI IXP AC97 Controller" select SND_AC97_CODEC help Say Y here to include support for the integrated AC97 sound device on motherboards with ATI chipsets (ATI IXP 150/200/250/ 300/400). To compile this driver as a module, choose M here: the module will be called snd-atiixp. config SND_ATIIXP_MODEM tristate "ATI IXP Modem" select SND_AC97_CODEC help Say Y here to include support for the integrated MC97 modem on motherboards with ATI chipsets (ATI IXP 150/200/250). To compile this driver as a module, choose M here: the module will be called snd-atiixp-modem. config SND_AU8810 tristate "Aureal Advantage" select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for Aureal Advantage soundcards. Supported features: Hardware Mixer, SRC, EQ and SPDIF output. 3D support code is in place, but not yet useable. For more info, email the ALSA developer list, or . To compile this driver as a module, choose M here: the module will be called snd-au8810. config SND_AU8820 tristate "Aureal Vortex" select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for Aureal Vortex soundcards. Supported features: Hardware Mixer and SRC. For more info, email the ALSA developer list, or . To compile this driver as a module, choose M here: the module will be called snd-au8820. config SND_AU8830 tristate "Aureal Vortex 2" select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for Aureal Vortex 2 soundcards. Supported features: Hardware Mixer, SRC, EQ and SPDIF output. 3D support code is in place, but not yet useable. For more info, email the ALSA developer list, or . To compile this driver as a module, choose M here: the module will be called snd-au8830. config SND_AW2 tristate "Emagic Audiowerk 2" help Say Y here to include support for Emagic Audiowerk 2 soundcards. Supported features: Analog and SPDIF output. Analog or SPDIF input. Note: Switch between analog and digital input does not always work. It can produce continuous noise. The workaround is to switch again (and again) between digital and analog input until it works. To compile this driver as a module, choose M here: the module will be called snd-aw2. config SND_AZT3328 tristate "Aztech AZF3328 / PCI168" select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM select SND_RAWMIDI select SND_AC97_CODEC help Say Y here to include support for Aztech AZF3328 (PCI168) soundcards. Supported features: AC97-"conformant" mixer, MPU401/OPL3, analog I/O (16bit/8bit, many sample rates [<= 66.2kHz], NO hardware mixing), Digital Enhanced Game Port, 1.024MHz multimedia sequencer timer, ext. codec (I2S port), onboard amp (4W/4Ohms/ch), suspend/resume. To compile this driver as a module, choose M here: the module will be called snd-azt3328. config SND_BT87X tristate "Bt87x Audio Capture" select SND_PCM help If you want to record audio from TV cards based on Brooktree Bt878/Bt879 chips, say Y here and read . To compile this driver as a module, choose M here: the module will be called snd-bt87x. config SND_BT87X_OVERCLOCK bool "Bt87x Audio overclocking" depends on SND_BT87X help Say Y here if 448000 Hz isn't enough for you and you want to record from the analog input with up to 1792000 Hz. Higher sample rates won't hurt your hardware, but audio quality may suffer. config SND_CA0106 tristate "SB Audigy LS / Live 24bit" select SND_AC97_CODEC select SND_RAWMIDI select SND_VMASTER help Say Y here to include support for the Sound Blaster Audigy LS and Live 24bit. To compile this driver as a module, choose M here: the module will be called snd-ca0106. config SND_CMIPCI tristate "C-Media 8338, 8738, 8768, 8770" select SND_OPL3_LIB select SND_MPU401_UART select SND_PCM help If you want to use soundcards based on C-Media CMI8338, CMI8738, CMI8768 or CMI8770 chips, say Y here and read . To compile this driver as a module, choose M here: the module will be called snd-cmipci. config SND_OXYGEN_LIB tristate config SND_OXYGEN tristate "C-Media 8786, 8787, 8788 (Oxygen)" select SND_OXYGEN_LIB select SND_PCM select SND_MPU401_UART help Say Y here to include support for sound cards based on the C-Media CMI8788 (Oxygen HD Audio) chip: * Asound A-8788 * Asus Xonar DG * AuzenTech X-Meridian * AuzenTech X-Meridian 2G * Bgears b-Enspirer * Club3D Theatron DTS * HT-Omega Claro (plus) * HT-Omega Claro halo (XT) * Kuroutoshikou CMI8787-HG2PCI * Razer Barracuda AC-1 * Sondigo Inferno * TempoTec/MediaTek HiFier Fantasia * TempoTec/MediaTek HiFier Serenade To compile this driver as a module, choose M here: the module will be called snd-oxygen. config SND_CS4281 tristate "Cirrus Logic (Sound Fusion) CS4281" select SND_OPL3_LIB select SND_RAWMIDI select SND_AC97_CODEC help Say Y here to include support for Cirrus Logic CS4281 chips. To compile this driver as a module, choose M here: the module will be called snd-cs4281. config SND_CS46XX tristate "Cirrus Logic (Sound Fusion) CS4280/CS461x/CS462x/CS463x" select SND_RAWMIDI select SND_AC97_CODEC help Say Y here to include support for Cirrus Logic CS4610/CS4612/ CS4614/CS4615/CS4622/CS4624/CS4630/CS4280 chips. To compile this driver as a module, choose M here: the module will be called snd-cs46xx. config SND_CS46XX_NEW_DSP bool "Cirrus Logic (Sound Fusion) New DSP support" depends on SND_CS46XX default y help Say Y here to use a new DSP image for SPDIF and dual codecs. This works better than the old code, so say Y. config SND_CS5530 tristate "CS5530 Audio" depends on ISA_DMA_API select SND_SB16_DSP help Say Y here to include support for audio on Cyrix/NatSemi CS5530 chips. To compile this driver as a module, choose M here: the module will be called snd-cs5530. config SND_CS5535AUDIO tristate "CS5535/CS5536 Audio" select SND_PCM select SND_AC97_CODEC help Say Y here to include support for audio on CS5535 chips. It is referred to as NS CS5535 IO or AMD CS5535 IO companion in various literature. This driver also supports the CS5536 audio device. However, for both chips, on certain boards, you may need to use ac97_quirk=hp_only if your board has physically mapped headphone out to master output. If that works for you, send lspci -vvv output to the mailing list so that your board can be identified in the quirks list. To compile this driver as a module, choose M here: the module will be called snd-cs5535audio. config SND_CTXFI tristate "Creative Sound Blaster X-Fi" select SND_PCM help If you want to use soundcards based on Creative Sound Blastr X-Fi boards with 20k1 or 20k2 chips, say Y here. To compile this driver as a module, choose M here: the module will be called snd-ctxfi. config SND_DARLA20 tristate "(Echoaudio) Darla20" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Darla. To compile this driver as a module, choose M here: the module will be called snd-darla20 config SND_GINA20 tristate "(Echoaudio) Gina20" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Gina. To compile this driver as a module, choose M here: the module will be called snd-gina20 config SND_LAYLA20 tristate "(Echoaudio) Layla20" select FW_LOADER select SND_RAWMIDI select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Layla. To compile this driver as a module, choose M here: the module will be called snd-layla20 config SND_DARLA24 tristate "(Echoaudio) Darla24" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Darla24. To compile this driver as a module, choose M here: the module will be called snd-darla24 config SND_GINA24 tristate "(Echoaudio) Gina24" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Gina24. To compile this driver as a module, choose M here: the module will be called snd-gina24 config SND_LAYLA24 tristate "(Echoaudio) Layla24" select FW_LOADER select SND_RAWMIDI select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Layla24. To compile this driver as a module, choose M here: the module will be called snd-layla24 config SND_MONA tristate "(Echoaudio) Mona" select FW_LOADER select SND_RAWMIDI select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Mona. To compile this driver as a module, choose M here: the module will be called snd-mona config SND_MIA tristate "(Echoaudio) Mia" select FW_LOADER select SND_RAWMIDI select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Mia and Mia-midi. To compile this driver as a module, choose M here: the module will be called snd-mia config SND_ECHO3G tristate "(Echoaudio) 3G cards" select FW_LOADER select SND_RAWMIDI select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Gina3G and Layla3G. To compile this driver as a module, choose M here: the module will be called snd-echo3g config SND_INDIGO tristate "(Echoaudio) Indigo" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Indigo. To compile this driver as a module, choose M here: the module will be called snd-indigo config SND_INDIGOIO tristate "(Echoaudio) Indigo IO" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Indigo IO. To compile this driver as a module, choose M here: the module will be called snd-indigoio config SND_INDIGODJ tristate "(Echoaudio) Indigo DJ" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Indigo DJ. To compile this driver as a module, choose M here: the module will be called snd-indigodj config SND_INDIGOIOX tristate "(Echoaudio) Indigo IOx" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Indigo IOx. To compile this driver as a module, choose M here: the module will be called snd-indigoiox config SND_INDIGODJX tristate "(Echoaudio) Indigo DJx" select FW_LOADER select SND_PCM help Say 'Y' or 'M' to include support for Echoaudio Indigo DJx. To compile this driver as a module, choose M here: the module will be called snd-indigodjx config SND_EMU10K1 tristate "Emu10k1 (SB Live!, Audigy, E-mu APS)" select FW_LOADER select SND_HWDEP select SND_RAWMIDI select SND_AC97_CODEC help Say Y to include support for Sound Blaster PCI 512, Live!, Audigy and E-mu APS (partially supported) soundcards. The confusing multitude of mixer controls is documented in and . To compile this driver as a module, choose M here: the module will be called snd-emu10k1. config SND_EMU10K1X tristate "Emu10k1X (Dell OEM Version)" select SND_AC97_CODEC select SND_RAWMIDI help Say Y here to include support for the Dell OEM version of the Sound Blaster Live!. To compile this driver as a module, choose M here: the module will be called snd-emu10k1x. config SND_ENS1370 tristate "(Creative) Ensoniq AudioPCI 1370" select SND_RAWMIDI select SND_PCM help Say Y here to include support for Ensoniq AudioPCI ES1370 chips. To compile this driver as a module, choose M here: the module will be called snd-ens1370. config SND_ENS1371 tristate "(Creative) Ensoniq AudioPCI 1371/1373" select SND_RAWMIDI select SND_AC97_CODEC help Say Y here to include support for Ensoniq AudioPCI ES1371 chips and Sound Blaster PCI 64 or 128 soundcards. To compile this driver as a module, choose M here: the module will be called snd-ens1371. config SND_ES1938 tristate "ESS ES1938/1946/1969 (Solo-1)" select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for soundcards based on ESS Solo-1 (ES1938, ES1946, ES1969) chips. To compile this driver as a module, choose M here: the module will be called snd-es1938. config SND_ES1968 tristate "ESS ES1968/1978 (Maestro-1/2/2E)" select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for soundcards based on ESS Maestro 1/2/2E chips. To compile this driver as a module, choose M here: the module will be called snd-es1968. config SND_ES1968_INPUT bool "Enable input device for es1968 volume buttons" depends on SND_ES1968 depends on INPUT=y || INPUT=SND_ES1968 help If you say Y here, you will get an input device which reports keypresses for the volume buttons connected to the es1968 chip. If you say N the buttons will directly control the master volume. It is recommended to say Y. config SND_FM801 tristate "ForteMedia FM801" select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for soundcards based on the ForteMedia FM801 chip. To compile this driver as a module, choose M here: the module will be called snd-fm801. config SND_FM801_TEA575X_BOOL bool "ForteMedia FM801 + TEA5757 tuner" depends on SND_FM801 depends on VIDEO_V4L2=y || VIDEO_V4L2=SND_FM801 help Say Y here to include support for soundcards based on the ForteMedia FM801 chip with a TEA5757 tuner connected to GPIO1-3 pins (Media Forte SF256-PCS-02) into the snd-fm801 driver. config SND_FM801_TEA575X tristate depends on SND_FM801_TEA575X_BOOL default SND_FM801 source "sound/pci/hda/Kconfig" config SND_HDSP tristate "RME Hammerfall DSP Audio" select SND_HWDEP select SND_RAWMIDI select SND_PCM help Say Y here to include support for RME Hammerfall DSP Audio soundcards. To compile this driver as a module, choose M here: the module will be called snd-hdsp. comment "Don't forget to add built-in firmwares for HDSP driver" depends on SND_HDSP=y config SND_HDSPM tristate "RME Hammerfall DSP MADI/RayDAT/AIO" select SND_HWDEP select SND_RAWMIDI select SND_PCM help Say Y here to include support for RME Hammerfall DSP MADI, RayDAT and AIO soundcards. To compile this driver as a module, choose M here: the module will be called snd-hdspm. config SND_ICE1712 tristate "ICEnsemble ICE1712 (Envy24)" select SND_MPU401_UART select SND_AC97_CODEC select BITREVERSE help Say Y here to include support for soundcards based on the ICE1712 (Envy24) chip. Currently supported hardware is: M-Audio Delta 1010(LT), DiO 2496, 66, 44, 410, Audiophile 24/96; Digigram VX442; TerraTec EWX 24/96, EWS 88MT/D, DMX 6Fire, Phase 88; Hoontech SoundTrack DSP 24/Value/Media7.1; Event EZ8; Lionstracs Mediastation, Terrasoniq TS 88. To compile this driver as a module, choose M here: the module will be called snd-ice1712. config SND_ICE1724 tristate "ICE/VT1724/1720 (Envy24HT/PT)" select SND_RAWMIDI select SND_AC97_CODEC select SND_VMASTER help Say Y here to include support for soundcards based on ICE/VT1724/1720 (Envy24HT/PT) chips. Currently supported hardware is: AMP AUDIO2000; M-Audio Revolution 5.1, 7.1, Audiophile 192; TerraTec Aureon 5.1 Sky, 7.1 Space/Universe, Phase 22/28; Onkyo SE-90PCI, SE-200PCI; AudioTrak Prodigy 192, 7.1 (HIFI/LT/XT), HD2; Hercules Fortissimo IV; ESI Juli@; Pontis MS300; EGO-SYS WaveTerminal 192M; Albatron K8X800 Pro II; Chaintech ZNF3-150/250, 9CJS, AV-710; Shuttle SN25P. To compile this driver as a module, choose M here: the module will be called snd-ice1724. config SND_INTEL8X0 tristate "Intel/SiS/nVidia/AMD/ALi AC97 Controller" select SND_AC97_CODEC help Say Y here to include support for the integrated AC97 sound device on motherboards with Intel/SiS/nVidia/AMD chipsets, or ALi chipsets using the M5455 Audio Controller. (There is a separate driver for ALi M5451 Audio Controllers.) To compile this driver as a module, choose M here: the module will be called snd-intel8x0. config SND_INTEL8X0M tristate "Intel/SiS/nVidia/AMD MC97 Modem" select SND_AC97_CODEC help Say Y here to include support for the integrated MC97 modem on motherboards with Intel/SiS/nVidia/AMD chipsets. To compile this driver as a module, choose M here: the module will be called snd-intel8x0m. config SND_KORG1212 tristate "Korg 1212 IO" select SND_PCM help Say Y here to include support for Korg 1212IO soundcards. To compile this driver as a module, choose M here: the module will be called snd-korg1212. config SND_LX6464ES tristate "Digigram LX6464ES" select SND_PCM help Say Y here to include support for Digigram LX6464ES boards. To compile this driver as a module, choose M here: the module will be called snd-lx6464es. config SND_MAESTRO3 tristate "ESS Allegro/Maestro3" select SND_AC97_CODEC help Say Y here to include support for soundcards based on ESS Maestro 3 (Allegro) chips. To compile this driver as a module, choose M here: the module will be called snd-maestro3. config SND_MAESTRO3_INPUT bool "Enable input device for maestro3 volume buttons" depends on SND_MAESTRO3 depends on INPUT=y || INPUT=SND_MAESTRO3 help If you say Y here, you will get an input device which reports keypresses for the volume buttons connected to the maestro3 chip. If you say N the buttons will directly control the master volume. It is recommended to say Y. config SND_MIXART tristate "Digigram miXart" select SND_HWDEP select SND_PCM help If you want to use Digigram miXart soundcards, say Y here and read . To compile this driver as a module, choose M here: the module will be called snd-mixart. config SND_NM256 tristate "NeoMagic NM256AV/ZX" select SND_AC97_CODEC help Say Y here to include support for NeoMagic NM256AV/ZX chips. To compile this driver as a module, choose M here: the module will be called snd-nm256. config SND_PCXHR tristate "Digigram PCXHR" select SND_PCM select SND_HWDEP help Say Y here to include support for Digigram PCXHR boards. To compile this driver as a module, choose M here: the module will be called snd-pcxhr. config SND_RIPTIDE tristate "Conexant Riptide" select FW_LOADER select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC help Say 'Y' or 'M' to include support for Conexant Riptide chip. To compile this driver as a module, choose M here: the module will be called snd-riptide config SND_RME32 tristate "RME Digi32, 32/8, 32 PRO" select SND_PCM help Say Y to include support for RME Digi32, Digi32 PRO and Digi32/8 (Sek'd Prodif32, Prodif96 and Prodif Gold) audio devices. To compile this driver as a module, choose M here: the module will be called snd-rme32. config SND_RME96 tristate "RME Digi96, 96/8, 96/8 PRO" select SND_PCM help Say Y here to include support for RME Digi96, Digi96/8 and Digi96/8 PRO/PAD/PST soundcards. To compile this driver as a module, choose M here: the module will be called snd-rme96. config SND_RME9652 tristate "RME Digi9652 (Hammerfall)" select SND_PCM help Say Y here to include support for RME Hammerfall (RME Digi9652/Digi9636) soundcards. To compile this driver as a module, choose M here: the module will be called snd-rme9652. config SND_SIS7019 tristate "SiS 7019 Audio Accelerator" depends on X86 && !X86_64 select SND_AC97_CODEC help Say Y here to include support for the SiS 7019 Audio Accelerator. To compile this driver as a module, choose M here: the module will be called snd-sis7019. config SND_SONICVIBES tristate "S3 SonicVibes" select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for soundcards based on the S3 SonicVibes chip. To compile this driver as a module, choose M here: the module will be called snd-sonicvibes. config SND_TRIDENT tristate "Trident 4D-Wave DX/NX; SiS 7018" select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for soundcards based on Trident 4D-Wave DX/NX or SiS 7018 chips. To compile this driver as a module, choose M here: the module will be called snd-trident. config SND_VIA82XX tristate "VIA 82C686A/B, 8233/8235 AC97 Controller" select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for the integrated AC97 sound device on motherboards with VIA chipsets. To compile this driver as a module, choose M here: the module will be called snd-via82xx. config SND_VIA82XX_MODEM tristate "VIA 82C686A/B, 8233 based Modems" select SND_AC97_CODEC help Say Y here to include support for the integrated MC97 modem on motherboards with VIA chipsets. To compile this driver as a module, choose M here: the module will be called snd-via82xx-modem. config SND_VIRTUOSO tristate "Asus Virtuoso 66/100/200 (Xonar)" select SND_OXYGEN_LIB select SND_PCM select SND_MPU401_UART select SND_JACK if INPUT=y || INPUT=SND help Say Y here to include support for sound cards based on the Asus AV66/AV100/AV200 chips, i.e., Xonar D1, DX, D2, D2X, DS, Essence ST (Deluxe), and Essence STX. Support for the HDAV1.3 (Deluxe) and HDAV1.3 Slim is experimental; for the Xense, missing. To compile this driver as a module, choose M here: the module will be called snd-virtuoso. config SND_VX222 tristate "Digigram VX222" select SND_VX_LIB help Say Y here to include support for Digigram VX222 soundcards. To compile this driver as a module, choose M here: the module will be called snd-vx222. config SND_YMFPCI tristate "Yamaha YMF724/740/744/754" select SND_OPL3_LIB select SND_MPU401_UART select SND_AC97_CODEC help Say Y here to include support for Yamaha PCI audio chips - YMF724, YMF724F, YMF740, YMF740C, YMF744, YMF754. To compile this driver as a module, choose M here: the module will be called snd-ymfpci. endif # SND_PCI menuconfig SND_HDA_INTEL tristate "Intel HD Audio" select SND_PCM select SND_VMASTER help Say Y here to include support for Intel "High Definition Audio" (Azalia) and its compatible devices. This option enables the HD-audio controller. Don't forget to choose the appropriate codec options below. To compile this driver as a module, choose M here: the module will be called snd-hda-intel. if SND_HDA_INTEL config SND_HDA_HWDEP bool "Build hwdep interface for HD-audio driver" select SND_HWDEP help Say Y here to build a hwdep interface for HD-audio driver. This interface can be used for out-of-band communication with codecs for debugging purposes. config SND_HDA_RECONFIG bool "Allow dynamic codec reconfiguration (EXPERIMENTAL)" depends on SND_HDA_HWDEP && EXPERIMENTAL help Say Y here to enable the HD-audio codec re-configuration feature. This adds the sysfs interfaces to allow user to clear the whole codec configuration, change the codec setup, add extra verbs, and re-configure the codec dynamically. config SND_HDA_INPUT_BEEP bool "Support digital beep via input layer" depends on INPUT=y || INPUT=SND_HDA_INTEL help Say Y here to build a digital beep interface for HD-audio driver. This interface is used to generate digital beeps. config SND_HDA_INPUT_BEEP_MODE int "Digital beep registration mode (0=off, 1=on, 2=mute sw on/off)" depends on SND_HDA_INPUT_BEEP=y default "1" range 0 2 help Set 0 to disable the digital beep interface for HD-audio by default. Set 1 to always enable the digital beep interface for HD-audio by default. Set 2 to control the beep device registration to input layer using a "Beep Switch" in mixer applications. config SND_HDA_INPUT_JACK bool "Support jack plugging notification via input layer" depends on INPUT=y || INPUT=SND select SND_JACK help Say Y here to enable the jack plugging notification via input layer. config SND_HDA_PATCH_LOADER bool "Support initialization patch loading for HD-audio" depends on EXPERIMENTAL select FW_LOADER select SND_HDA_HWDEP select SND_HDA_RECONFIG help Say Y here to allow the HD-audio driver to load a pseudo firmware file ("patch") for overriding the BIOS setup at start up. The "patch" file can be specified via patch module option, such as patch=hda-init. This option turns on hwdep and reconfig features automatically. config SND_HDA_CODEC_REALTEK bool "Build Realtek HD-audio codec support" default y help Say Y here to include Realtek HD-audio codec support in snd-hda-intel driver, such as ALC880. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-realtek. This module is automatically loaded at probing. config SND_HDA_CODEC_ANALOG bool "Build Analog Device HD-audio codec support" default y help Say Y here to include Analog Device HD-audio codec support in snd-hda-intel driver, such as AD1986A. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-analog. This module is automatically loaded at probing. config SND_HDA_CODEC_SIGMATEL bool "Build IDT/Sigmatel HD-audio codec support" default y help Say Y here to include IDT (Sigmatel) HD-audio codec support in snd-hda-intel driver, such as STAC9200. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-idt. This module is automatically loaded at probing. config SND_HDA_CODEC_VIA bool "Build VIA HD-audio codec support" default y help Say Y here to include VIA HD-audio codec support in snd-hda-intel driver, such as VT1708. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-via. This module is automatically loaded at probing. config SND_HDA_CODEC_HDMI bool "Build HDMI/DisplayPort HD-audio codec support" select SND_DYNAMIC_MINORS default y help Say Y here to include HDMI and DisplayPort HD-audio codec support in snd-hda-intel driver. This includes all AMD/ATI, Intel and Nvidia HDMI/DisplayPort codecs. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-hdmi. This module is automatically loaded at probing. config SND_HDA_CODEC_CIRRUS bool "Build Cirrus Logic codec support" depends on SND_HDA_INTEL default y help Say Y here to include Cirrus Logic codec support in snd-hda-intel driver, such as CS4206. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-cirrus. This module is automatically loaded at probing. config SND_HDA_CODEC_CONEXANT bool "Build Conexant HD-audio codec support" default y help Say Y here to include Conexant HD-audio codec support in snd-hda-intel driver, such as CX20549. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-conexant. This module is automatically loaded at probing. config SND_HDA_CODEC_CA0110 bool "Build Creative CA0110-IBG codec support" depends on SND_HDA_INTEL default y help Say Y here to include Creative CA0110-IBG codec support in snd-hda-intel driver, found on some Creative X-Fi cards. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-ca0110. This module is automatically loaded at probing. config SND_HDA_CODEC_CMEDIA bool "Build C-Media HD-audio codec support" default y help Say Y here to include C-Media HD-audio codec support in snd-hda-intel driver, such as CMI9880. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-cmedia. This module is automatically loaded at probing. config SND_HDA_CODEC_SI3054 bool "Build Silicon Labs 3054 HD-modem codec support" default y help Say Y here to include Silicon Labs 3054 HD-modem codec (and compatibles) support in snd-hda-intel driver. When the HD-audio driver is built as a module, the codec support code is also built as another module, snd-hda-codec-si3054. This module is automatically loaded at probing. config SND_HDA_GENERIC bool "Enable generic HD-audio codec parser" default y help Say Y here to enable the generic HD-audio codec parser in snd-hda-intel driver. config SND_HDA_POWER_SAVE bool "Aggressive power-saving on HD-audio" help Say Y here to enable more aggressive power-saving mode on HD-audio driver. The power-saving timeout can be configured via power_save option or over sysfs on-the-fly. config SND_HDA_POWER_SAVE_DEFAULT int "Default time-out for HD-audio power-save mode" depends on SND_HDA_POWER_SAVE default 0 help The default time-out value in seconds for HD-audio automatic power-save mode. 0 means to disable the power-save mode. endif config PROC_FS bool "/proc file system support" if EXPERT default y help This is a virtual file system providing information about the status of the system. "Virtual" means that it doesn't take up any space on your hard disk: the files are created on the fly by the kernel when you try to access them. Also, you cannot read the files with older version of the program less: you need to use more or cat. It's totally cool; for example, "cat /proc/interrupts" gives information about what the different IRQs are used for at the moment (there is a small number of Interrupt ReQuest lines in your computer that are used by the attached devices to gain the CPU's attention -- often a source of trouble if two devices are mistakenly configured to use the same IRQ). The program procinfo to display some information about your system gathered from the /proc file system. Before you can use the /proc file system, it has to be mounted, meaning it has to be given a location in the directory hierarchy. That location should be /proc. A command such as "mount -t proc proc /proc" or the equivalent line in /etc/fstab does the job. The /proc file system is explained in the file and on the proc(5) manpage ("man 5 proc"). This option will enlarge your kernel by about 67 KB. Several programs depend on this, so everyone should say Y here. config PROC_KCORE bool "/proc/kcore support" if !ARM depends on PROC_FS && MMU config PROC_VMCORE bool "/proc/vmcore support" depends on PROC_FS && CRASH_DUMP default y help Exports the dump image of crashed kernel in ELF format. config PROC_SYSCTL bool "Sysctl support (/proc/sys)" if EXPERT depends on PROC_FS select SYSCTL default y ---help--- The sysctl interface provides a means of dynamically changing certain kernel parameters and variables on the fly without requiring a recompile of the kernel or reboot of the system. The primary interface is through /proc/sys. If you say Y here a tree of modifiable sysctl entries will be generated beneath the /proc/sys directory. They are explained in the files in . Note that enabling this option will enlarge the kernel by at least 8 KB. As it is generally a good thing, you should say Y here unless building a kernel for install/rescue disks or your system is very limited in memory. config PROC_PAGE_MONITOR default y depends on PROC_FS && MMU bool "Enable /proc page monitoring" if EXPERT help Various /proc files exist to monitor process memory utilization: /proc/pid/smaps, /proc/pid/clear_refs, /proc/pid/pagemap, /proc/kpagecount, and /proc/kpageflags. Disabling these interfaces will reduce the size of the kernel by approximately 4kb. config NFS_FS tristate "NFS client support" depends on INET && FILE_LOCKING select LOCKD select SUNRPC select NFS_ACL_SUPPORT if NFS_V3_ACL help Choose Y here if you want to access files residing on other computers using Sun's Network File System protocol. To compile this file system support as a module, choose M here: the module will be called nfs. To mount file systems exported by NFS servers, you also need to install the user space mount.nfs command which can be found in the Linux nfs-utils package, available from http://linux-nfs.org/. Information about using the mount command is available in the mount(8) man page. More detail about the Linux NFS client implementation is available via the nfs(5) man page. Below you can choose which versions of the NFS protocol are available in the kernel to mount NFS servers. Support for NFS version 2 (RFC 1094) is always available when NFS_FS is selected. To configure a system which mounts its root file system via NFS at boot time, say Y here, select "Kernel level IP autoconfiguration" in the NETWORK menu, and select "Root file system on NFS" below. You cannot compile this file system as a module in this case. If unsure, say N. config NFS_V3 bool "NFS client support for NFS version 3" depends on NFS_FS help This option enables support for version 3 of the NFS protocol (RFC 1813) in the kernel's NFS client. If unsure, say Y. config NFS_V3_ACL bool "NFS client support for the NFSv3 ACL protocol extension" depends on NFS_V3 help Some NFS servers support an auxiliary NFSv3 ACL protocol that Sun added to Solaris but never became an official part of the NFS version 3 protocol. This protocol extension allows applications on NFS clients to manipulate POSIX Access Control Lists on files residing on NFS servers. NFS servers enforce ACLs on local files whether this protocol is available or not. Choose Y here if your NFS server supports the Solaris NFSv3 ACL protocol extension and you want your NFS client to allow applications to access and modify ACLs on files on the server. Most NFS servers don't support the Solaris NFSv3 ACL protocol extension. You can choose N here or specify the "noacl" mount option to prevent your NFS client from trying to use the NFSv3 ACL protocol. If unsure, say N. config NFS_V4 bool "NFS client support for NFS version 4" depends on NFS_FS select SUNRPC_GSS help This option enables support for version 4 of the NFS protocol (RFC 3530) in the kernel's NFS client. To mount NFS servers using NFSv4, you also need to install user space programs which can be found in the Linux nfs-utils package, available from http://linux-nfs.org/. If unsure, say Y. config NFS_V4_1 bool "NFS client support for NFSv4.1 (EXPERIMENTAL)" depends on NFS_FS && NFS_V4 && EXPERIMENTAL select PNFS_FILE_LAYOUT help This option enables support for minor version 1 of the NFSv4 protocol (RFC 5661) in the kernel's NFS client. If unsure, say N. config PNFS_FILE_LAYOUT tristate config ROOT_NFS bool "Root file system on NFS" depends on NFS_FS=y && IP_PNP help If you want your system to mount its root file system via NFS, choose Y here. This is common practice for managing systems without local permanent storage. For details, read . Most people say N here. config NFS_FSCACHE bool "Provide NFS client caching support" depends on NFS_FS=m && FSCACHE || NFS_FS=y && FSCACHE=y help Say Y here if you want NFS data to be cached locally on disc through the general filesystem cache manager config NFS_USE_LEGACY_DNS bool "Use the legacy NFS DNS resolver" depends on NFS_V4 help The kernel now provides a method for translating a host name into an IP address. Select Y here if you would rather use your own DNS resolver script. If unsure, say N config NFS_USE_KERNEL_DNS bool depends on NFS_V4 && !NFS_USE_LEGACY_DNS select DNS_RESOLVER select KEYS default y config NFS_USE_NEW_IDMAPPER bool "Use the new idmapper upcall routine" depends on NFS_V4 && KEYS help Say Y here if you want NFS to use the new idmapper upcall functions. You will need /sbin/request-key (usually provided by the keyutils package). For details, read . If you are unsure, say N. config VXFS_FS tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)" depends on BLOCK help FreeVxFS is a file system driver that support the VERITAS VxFS(TM) file system format. VERITAS VxFS(TM) is the standard file system of SCO UnixWare (and possibly others) and optionally available for Sunsoft Solaris, HP-UX and many other operating systems. Currently only readonly access is supported. NOTE: the file system type as used by mount(1), mount(2) and fstab(5) is 'vxfs' as it describes the file system format, not the actual driver. To compile this as a module, choose M here: the module will be called freevxfs. If unsure, say N. # # Quota configuration # config QUOTA bool "Quota support" select QUOTACTL help If you say Y here, you will be able to set per user limits for disk usage (also called disk quotas). Currently, it works for the ext2, ext3, and reiserfs file system. ext3 also supports journalled quotas for which you don't need to run quotacheck(8) after an unclean shutdown. For further details, read the Quota mini-HOWTO, available from , or the documentation provided with the quota tools. Probably the quota support is only useful for multi user systems. If unsure, say N. config QUOTA_NETLINK_INTERFACE bool "Report quota messages through netlink interface" depends on QUOTACTL && NET help If you say Y here, quota warnings (about exceeding softlimit, reaching hardlimit, etc.) will be reported through netlink interface. If unsure, say Y. config PRINT_QUOTA_WARNING bool "Print quota warnings to console (OBSOLETE)" depends on QUOTA default y help If you say Y here, quota warnings (about exceeding softlimit, reaching hardlimit, etc.) will be printed to the process' controlling terminal. Note that this behavior is currently deprecated and may go away in future. Please use notification via netlink socket instead. config QUOTA_DEBUG bool "Additional quota sanity checks" depends on QUOTA default n help If you say Y here, quota subsystem will perform some additional sanity checks of quota internal structures. If unsure, say N. # Generic support for tree structured quota files. Selected when needed. config QUOTA_TREE tristate config QFMT_V1 tristate "Old quota format support" depends on QUOTA help This quota format was (is) used by kernels earlier than 2.4.22. If you have quota working and you don't want to convert to new quota format say Y here. config QFMT_V2 tristate "Quota format vfsv0 and vfsv1 support" depends on QUOTA select QUOTA_TREE help This config option enables kernel support for vfsv0 and vfsv1 quota formats. Both these formats support 32-bit UIDs/GIDs and vfsv1 format also supports 64-bit inode and block quota limits. If you need this functionality say Y here. config QUOTACTL bool default n config QUOTACTL_COMPAT bool depends on QUOTACTL && COMPAT_FOR_U64_ALIGNMENT default y config UFS_FS tristate "UFS file system support (read only)" depends on BLOCK help BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD, OpenBSD and NeXTstep) use a file system called UFS. Some System V Unixes can create and mount hard disk partitions and diskettes using this file system as well. Saying Y here will allow you to read from these partitions; if you also want to write to them, say Y to the experimental "UFS file system write support", below. Please read the file for more information. The recently released UFS2 variant (used in FreeBSD 5.x) is READ-ONLY supported. Note that this option is generally not needed for floppies, since a good portable way to transport files and directories between unixes (and even other operating systems) is given by the tar program ("man tar" or preferably "info tar"). When accessing NeXTstep files, you may need to convert them from the NeXT character set to the Latin1 character set; use the program recode ("info recode") for this purpose. To compile the UFS file system support as a module, choose M here: the module will be called ufs. If you haven't heard about all of this before, it's safe to say N. config UFS_FS_WRITE bool "UFS file system write support (DANGEROUS)" depends on UFS_FS && EXPERIMENTAL help Say Y here if you want to try writing to UFS partitions. This is experimental, so you should back up your UFS partitions beforehand. config UFS_DEBUG bool "UFS debugging" depends on UFS_FS help If you are experiencing any problems with the UFS filesystem, say Y here. This will result in _many_ additional debugging messages to be written to the system log. # # Native language support configuration # menuconfig NLS tristate "Native language support" ---help--- The base Native Language Support. A number of filesystems depend on it (e.g. FAT, JOLIET, NT, BEOS filesystems), as well as the ability of some filesystems to use native languages (NCP, SMB). If unsure, say Y. To compile this code as a module, choose M here: the module will be called nls_base. if NLS config NLS_DEFAULT string "Default NLS Option" default "iso8859-1" ---help--- The default NLS used when mounting file system. Note, that this is the NLS used by your console, not the NLS used by a specific file system (if different) to store data (filenames) on a disk. Currently, the valid values are: big5, cp437, cp737, cp775, cp850, cp852, cp855, cp857, cp860, cp861, cp862, cp863, cp864, cp865, cp866, cp869, cp874, cp932, cp936, cp949, cp950, cp1251, cp1255, euc-jp, euc-kr, gb2312, iso8859-1, iso8859-2, iso8859-3, iso8859-4, iso8859-5, iso8859-6, iso8859-7, iso8859-8, iso8859-9, iso8859-13, iso8859-14, iso8859-15, koi8-r, koi8-ru, koi8-u, sjis, tis-620, utf8. If you specify a wrong value, it will use the built-in NLS; compatible with iso8859-1. If unsure, specify it as "iso8859-1". config NLS_CODEPAGE_437 tristate "Codepage 437 (United States, Canada)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage that is used in the United States and parts of Canada. This is recommended. config NLS_CODEPAGE_737 tristate "Codepage 737 (Greek)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage that is used for Greek. If unsure, say N. config NLS_CODEPAGE_775 tristate "Codepage 775 (Baltic Rim)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage that is used for the Baltic Rim Languages (Latvian and Lithuanian). If unsure, say N. config NLS_CODEPAGE_850 tristate "Codepage 850 (Europe)" ---help--- The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage that is used for much of Europe -- United Kingdom, Germany, Spain, Italy, and [add more countries here]. It has some characters useful to many European languages that are not part of the US codepage 437. If unsure, say Y. config NLS_CODEPAGE_852 tristate "Codepage 852 (Central/Eastern Europe)" ---help--- The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the Latin 2 codepage used by DOS for much of Central and Eastern Europe. It has all the required characters for these languages: Albanian, Croatian, Czech, English, Finnish, Hungarian, Irish, German, Polish, Romanian, Serbian (Latin transcription), Slovak, Slovenian, and Sorbian. config NLS_CODEPAGE_855 tristate "Codepage 855 (Cyrillic)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Cyrillic. config NLS_CODEPAGE_857 tristate "Codepage 857 (Turkish)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Turkish. config NLS_CODEPAGE_860 tristate "Codepage 860 (Portuguese)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Portuguese. config NLS_CODEPAGE_861 tristate "Codepage 861 (Icelandic)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Icelandic. config NLS_CODEPAGE_862 tristate "Codepage 862 (Hebrew)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Hebrew. config NLS_CODEPAGE_863 tristate "Codepage 863 (Canadian French)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Canadian French. config NLS_CODEPAGE_864 tristate "Codepage 864 (Arabic)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Arabic. config NLS_CODEPAGE_865 tristate "Codepage 865 (Norwegian, Danish)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for the Nordic European countries. config NLS_CODEPAGE_866 tristate "Codepage 866 (Cyrillic/Russian)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Cyrillic/Russian. config NLS_CODEPAGE_869 tristate "Codepage 869 (Greek)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Greek. config NLS_CODEPAGE_936 tristate "Simplified Chinese charset (CP936, GB2312)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Simplified Chinese(GBK). config NLS_CODEPAGE_950 tristate "Traditional Chinese charset (Big5)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Traditional Chinese(Big5). config NLS_CODEPAGE_932 tristate "Japanese charsets (Shift-JIS, EUC-JP)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Shift-JIS or EUC-JP. To use EUC-JP, you can use 'euc-jp' as mount option or NLS Default value during kernel configuration, instead of 'cp932'. config NLS_CODEPAGE_949 tristate "Korean charset (CP949, EUC-KR)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for UHC. config NLS_CODEPAGE_874 tristate "Thai charset (CP874, TIS-620)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Thai. config NLS_ISO8859_8 tristate "Hebrew charsets (ISO-8859-8, CP1255)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for ISO8859-8, the Hebrew character set. config NLS_CODEPAGE_1250 tristate "Windows CP1250 (Slavic/Central European Languages)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CDROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Windows CP-1250 character set, which works for most Latin-written Slavic and Central European languages: Czech, German, Hungarian, Polish, Rumanian, Croatian, Slovak, Slovene. config NLS_CODEPAGE_1251 tristate "Windows CP1251 (Bulgarian, Belarusian)" help The Microsoft FAT file system family can deal with filenames in native language character sets. These character sets are stored in so-called DOS codepages. You need to include the appropriate codepage if you want to be able to read/write these filenames on DOS/Windows partitions correctly. This does apply to the filenames only, not to the file contents. You can include several codepages; say Y here if you want to include the DOS codepage for Russian and Bulgarian and Belarusian. config NLS_ASCII tristate "ASCII (United States)" help An ASCII NLS module is needed if you want to override the DEFAULT NLS with this very basic charset and don't want any non-ASCII characters to be translated. config NLS_ISO8859_1 tristate "NLS ISO 8859-1 (Latin 1; Western European Languages)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 1 character set, which covers most West European languages such as Albanian, Catalan, Danish, Dutch, English, Faeroese, Finnish, French, German, Galician, Irish, Icelandic, Italian, Norwegian, Portuguese, Spanish, and Swedish. It is also the default for the US. If unsure, say Y. config NLS_ISO8859_2 tristate "NLS ISO 8859-2 (Latin 2; Slavic/Central European Languages)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 2 character set, which works for most Latin-written Slavic and Central European languages: Czech, German, Hungarian, Polish, Rumanian, Croatian, Slovak, Slovene. config NLS_ISO8859_3 tristate "NLS ISO 8859-3 (Latin 3; Esperanto, Galician, Maltese, Turkish)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 3 character set, which is popular with authors of Esperanto, Galician, Maltese, and Turkish. config NLS_ISO8859_4 tristate "NLS ISO 8859-4 (Latin 4; old Baltic charset)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 4 character set which introduces letters for Estonian, Latvian, and Lithuanian. It is an incomplete predecessor of Latin 7. config NLS_ISO8859_5 tristate "NLS ISO 8859-5 (Cyrillic)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for ISO8859-5, a Cyrillic character set with which you can type Bulgarian, Belarusian, Macedonian, Russian, Serbian, and Ukrainian. Note that the charset KOI8-R is preferred in Russia. config NLS_ISO8859_6 tristate "NLS ISO 8859-6 (Arabic)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for ISO8859-6, the Arabic character set. config NLS_ISO8859_7 tristate "NLS ISO 8859-7 (Modern Greek)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for ISO8859-7, the Modern Greek character set. config NLS_ISO8859_9 tristate "NLS ISO 8859-9 (Latin 5; Turkish)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 5 character set, and it replaces the rarely needed Icelandic letters in Latin 1 with the Turkish ones. Useful in Turkey. config NLS_ISO8859_13 tristate "NLS ISO 8859-13 (Latin 7; Baltic)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 7 character set, which supports modern Baltic languages including Latvian and Lithuanian. config NLS_ISO8859_14 tristate "NLS ISO 8859-14 (Latin 8; Celtic)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 8 character set, which adds the last accented vowels for Welsh (aka Cymraeg) (and Manx Gaelic) that were missing in Latin 1. has further information. config NLS_ISO8859_15 tristate "NLS ISO 8859-15 (Latin 9; Western European Languages with Euro)" ---help--- If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the Latin 9 character set, which covers most West European languages such as Albanian, Catalan, Danish, Dutch, English, Estonian, Faeroese, Finnish, French, German, Galician, Irish, Icelandic, Italian, Norwegian, Portuguese, Spanish, and Swedish. Latin 9 is an update to Latin 1 (ISO 8859-1) that removes a handful of rarely used characters and instead adds support for Estonian, corrects the support for French and Finnish, and adds the new Euro character. If unsure, say Y. config NLS_KOI8_R tristate "NLS KOI8-R (Russian)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the preferred Russian character set. config NLS_KOI8_U tristate "NLS KOI8-U/RU (Ukrainian, Belarusian)" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the preferred Ukrainian (koi8-u) and Belarusian (koi8-ru) character sets. config NLS_UTF8 tristate "NLS UTF-8" help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs correctly on the screen, you need to include the appropriate input/output character sets. Say Y here for the UTF-8 encoding of the Unicode/ISO9646 universal character set. endif # NLS config MINIX_FS tristate "Minix file system support" depends on BLOCK help Minix is a simple operating system used in many classes about OS's. The minix file system (method to organize files on a hard disk partition or a floppy disk) was the original file system for Linux, but has been superseded by the second extended file system ext2fs. You don't want to use the minix file system on your hard disk because of certain built-in restrictions, but it is sometimes found on older Linux floppy disks. This option will enlarge your kernel by about 28 KB. If unsure, say N. To compile this file system support as a module, choose M here: the module will be called minix. Note that the file system of your root partition (the one containing the directory /) cannot be compiled as a module. config MINIX_FS_NATIVE_ENDIAN def_bool MINIX_FS depends on H8300 || M32R || MICROBLAZE || MIPS || S390 || SUPERH || SPARC || XTENSA || (M68K && !MMU) config MINIX_FS_BIG_ENDIAN_16BIT_INDEXED def_bool MINIX_FS depends on M68K && MMU config FUSE_FS tristate "FUSE (Filesystem in Userspace) support" help With FUSE it is possible to implement a fully functional filesystem in a userspace program. There's also companion library: libfuse. This library along with utilities is available from the FUSE homepage: See for more information. See for needed library/utility version. If you want to develop a userspace FS, or if you want to use a filesystem based on FUSE, answer Y or M. config EFS_FS tristate "EFS file system support (read only) (EXPERIMENTAL)" depends on BLOCK && EXPERIMENTAL help EFS is an older file system used for non-ISO9660 CD-ROMs and hard disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer uses the XFS file system for hard disk partitions however). This implementation only offers read-only access. If you don't know what all this is about, it's safe to say N. For more information about EFS see its home page at . To compile the EFS file system support as a module, choose M here: the module will be called efs. config UBIFS_FS tristate "UBIFS file system support" select CRC16 select CRC32 select CRYPTO if UBIFS_FS_ADVANCED_COMPR select CRYPTO if UBIFS_FS_LZO select CRYPTO if UBIFS_FS_ZLIB select CRYPTO_LZO if UBIFS_FS_LZO select CRYPTO_DEFLATE if UBIFS_FS_ZLIB depends on MTD_UBI help UBIFS is a file system for flash devices which works on top of UBI. config UBIFS_FS_XATTR bool "Extended attributes support" depends on UBIFS_FS help This option enables support of extended attributes. config UBIFS_FS_ADVANCED_COMPR bool "Advanced compression options" depends on UBIFS_FS help This option allows to explicitly choose which compressions, if any, are enabled in UBIFS. Removing compressors means inability to read existing file systems. If unsure, say 'N'. config UBIFS_FS_LZO bool "LZO compression support" if UBIFS_FS_ADVANCED_COMPR depends on UBIFS_FS default y help LZO compressor is generally faster than zlib but compresses worse. Say 'Y' if unsure. config UBIFS_FS_ZLIB bool "ZLIB compression support" if UBIFS_FS_ADVANCED_COMPR depends on UBIFS_FS default y help Zlib compresses better than LZO but it is slower. Say 'Y' if unsure. # Debugging-related stuff config UBIFS_FS_DEBUG bool "Enable debugging support" depends on UBIFS_FS select DEBUG_FS select KALLSYMS help This option enables UBIFS debugging support. It makes sure various assertions, self-checks, debugging messages and test modes are compiled in (this all is compiled out otherwise). Assertions are light-weight and this option also enables them. Self-checks, debugging messages and test modes are switched off by default. Thus, it is safe and actually recommended to have debugging support enabled, and it should not slow down UBIFS. You can then further enable / disable individual debugging features using UBIFS module parameters and the corresponding sysfs interfaces. # # File system configuration # menu "File systems" if BLOCK source "fs/ext2/Kconfig" source "fs/ext3/Kconfig" source "fs/ext4/Kconfig" config FS_XIP # execute in place bool depends on EXT2_FS_XIP default y source "fs/jbd/Kconfig" source "fs/jbd2/Kconfig" config FS_MBCACHE # Meta block cache for Extended Attributes (ext2/ext3/ext4) tristate default y if EXT2_FS=y && EXT2_FS_XATTR default y if EXT3_FS=y && EXT3_FS_XATTR default y if EXT4_FS=y && EXT4_FS_XATTR default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR source "fs/reiserfs/Kconfig" source "fs/jfs/Kconfig" source "fs/xfs/Kconfig" source "fs/gfs2/Kconfig" source "fs/ocfs2/Kconfig" source "fs/btrfs/Kconfig" source "fs/nilfs2/Kconfig" endif # BLOCK # Posix ACL utility routines # # Note: Posix ACLs can be implemented without these helpers. Never use # this symbol for ifdefs in core code. # config FS_POSIX_ACL def_bool n config EXPORTFS bool config FILE_LOCKING bool "Enable POSIX file locking API" if EXPERT default y help This option enables standard file locking support, required for filesystems like NFS and for the flock() system call. Disabling this option saves about 11k. source "fs/notify/Kconfig" source "fs/quota/Kconfig" source "fs/autofs4/Kconfig" source "fs/fuse/Kconfig" config CUSE tristate "Character device in Userspace support" depends on FUSE_FS help This FUSE extension allows character devices to be implemented in userspace. If you want to develop or use userspace character device based on CUSE, answer Y or M. config GENERIC_ACL bool select FS_POSIX_ACL menu "Caches" source "fs/fscache/Kconfig" source "fs/cachefiles/Kconfig" endmenu if BLOCK menu "CD-ROM/DVD Filesystems" source "fs/isofs/Kconfig" source "fs/udf/Kconfig" endmenu endif # BLOCK if BLOCK menu "DOS/FAT/NT Filesystems" source "fs/fat/Kconfig" source "fs/ntfs/Kconfig" endmenu endif # BLOCK menu "Pseudo filesystems" source "fs/proc/Kconfig" source "fs/sysfs/Kconfig" config TMPFS bool "Virtual memory file system support (former shm fs)" depends on SHMEM help Tmpfs is a file system which keeps all files in virtual memory. Everything in tmpfs is temporary in the sense that no files will be created on your hard drive. The files live in memory and swap space. If you unmount a tmpfs instance, everything stored therein is lost. See for details. config TMPFS_POSIX_ACL bool "Tmpfs POSIX Access Control Lists" depends on TMPFS select GENERIC_ACL help POSIX Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the POSIX ACLs for Linux website . If you don't know what Access Control Lists are, say N. config HUGETLBFS bool "HugeTLB file system support" depends on X86 || IA64 || SPARC64 || (S390 && 64BIT) || \ SYS_SUPPORTS_HUGETLBFS || BROKEN help hugetlbfs is a filesystem backing for HugeTLB pages, based on ramfs. For architectures that support it, say Y here and read for details. If unsure, say N. config HUGETLB_PAGE def_bool HUGETLBFS source "fs/configfs/Kconfig" endmenu menuconfig MISC_FILESYSTEMS bool "Miscellaneous filesystems" default y ---help--- Say Y here to get to see options for various miscellaneous filesystems, such as filesystems that came from other operating systems. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled; if unsure, say Y here. if MISC_FILESYSTEMS source "fs/adfs/Kconfig" source "fs/affs/Kconfig" source "fs/ecryptfs/Kconfig" source "fs/hfs/Kconfig" source "fs/hfsplus/Kconfig" source "fs/befs/Kconfig" source "fs/bfs/Kconfig" source "fs/efs/Kconfig" source "fs/jffs2/Kconfig" # UBIFS File system configuration source "fs/ubifs/Kconfig" source "fs/logfs/Kconfig" source "fs/cramfs/Kconfig" source "fs/squashfs/Kconfig" source "fs/freevxfs/Kconfig" source "fs/minix/Kconfig" source "fs/omfs/Kconfig" source "fs/hpfs/Kconfig" source "fs/qnx4/Kconfig" source "fs/romfs/Kconfig" source "fs/pstore/Kconfig" source "fs/sysv/Kconfig" source "fs/ufs/Kconfig" source "fs/exofs/Kconfig" endif # MISC_FILESYSTEMS menuconfig NETWORK_FILESYSTEMS bool "Network File Systems" default y depends on NET ---help--- Say Y here to get to see options for network filesystems and filesystem-related networking code, such as NFS daemon and RPCSEC security modules. This option alone does not add any kernel code. If you say N, all options in this submenu will be skipped and disabled; if unsure, say Y here. if NETWORK_FILESYSTEMS source "fs/nfs/Kconfig" source "fs/nfsd/Kconfig" config LOCKD tristate depends on FILE_LOCKING config LOCKD_V4 bool depends on NFSD_V3 || NFS_V3 depends on FILE_LOCKING default y config NFS_ACL_SUPPORT tristate select FS_POSIX_ACL config NFS_COMMON bool depends on NFSD || NFS_FS default y source "net/sunrpc/Kconfig" source "fs/ceph/Kconfig" source "fs/cifs/Kconfig" source "fs/ncpfs/Kconfig" source "fs/coda/Kconfig" source "fs/afs/Kconfig" source "fs/9p/Kconfig" endif # NETWORK_FILESYSTEMS if BLOCK menu "Partition Types" source "fs/partitions/Kconfig" endmenu endif source "fs/nls/Kconfig" source "fs/dlm/Kconfig" endmenu config UDF_FS tristate "UDF file system support" select CRC_ITU_T help This is the new file system used on some CD-ROMs and DVDs. Say Y if you intend to mount DVD discs or CDRW's written in packet mode, or if written to by other UDF utilities, such as DirectCD. Please read . To compile this file system support as a module, choose M here: the module will be called udf. If unsure, say N. config UDF_NLS bool default y depends on (UDF_FS=m && NLS) || (UDF_FS=y && NLS=y) config BFS_FS tristate "BFS file system support (EXPERIMENTAL)" depends on BLOCK && EXPERIMENTAL help Boot File System (BFS) is a file system used under SCO UnixWare to allow the bootloader access to the kernel image and other important files during the boot process. It is usually mounted under /stand and corresponds to the slice marked as "STAND" in the UnixWare partition. You should say Y if you want to read or write the files on your /stand slice from within Linux. You then also need to say Y to "UnixWare slices support", below. More information about the BFS file system is contained in the file . If you don't know what this is about, say N. To compile this as a module, choose M here: the module will be called bfs. Note that the file system of your root partition (the one containing the directory /) cannot be compiled as a module. config NTFS_FS tristate "NTFS file system support" select NLS help NTFS is the file system of Microsoft Windows NT, 2000, XP and 2003. Saying Y or M here enables read support. There is partial, but safe, write support available. For write support you must also say Y to "NTFS write support" below. There are also a number of user-space tools available, called ntfsprogs. These include ntfsundelete and ntfsresize, that work without NTFS support enabled in the kernel. This is a rewrite from scratch of Linux NTFS support and replaced the old NTFS code starting with Linux 2.5.11. A backport to the Linux 2.4 kernel series is separately available as a patch from the project web site. For more information see and . To compile this file system support as a module, choose M here: the module will be called ntfs. If you are not using Windows NT, 2000, XP or 2003 in addition to Linux on your computer it is safe to say N. config NTFS_DEBUG bool "NTFS debugging support" depends on NTFS_FS help If you are experiencing any problems with the NTFS file system, say Y here. This will result in additional consistency checks to be performed by the driver as well as additional debugging messages to be written to the system log. Note that debugging messages are disabled by default. To enable them, supply the option debug_msgs=1 at the kernel command line when booting the kernel or as an option to insmod when loading the ntfs module. Once the driver is active, you can enable debugging messages by doing (as root): echo 1 > /proc/sys/fs/ntfs-debug Replacing the "1" with "0" would disable debug messages. If you leave debugging messages disabled, this results in little overhead, but enabling debug messages results in very significant slowdown of the system. When reporting bugs, please try to have available a full dump of debugging messages while the misbehaviour was occurring. config NTFS_RW bool "NTFS write support" depends on NTFS_FS help This enables the partial, but safe, write support in the NTFS driver. The only supported operation is overwriting existing files, without changing the file length. No file or directory creation, deletion or renaming is possible. Note only non-resident files can be written to so you may find that some very small files (<500 bytes or so) cannot be written to. While we cannot guarantee that it will not damage any data, we have so far not received a single report where the driver would have damaged someones data so we assume it is perfectly safe to use. Note: While write support is safe in this version (a rewrite from scratch of the NTFS support), it should be noted that the old NTFS write support, included in Linux 2.5.10 and before (since 1997), is not safe. This is currently useful with TopologiLinux. TopologiLinux is run on top of any DOS/Microsoft Windows system without partitioning your hard disk. Unlike other Linux distributions TopologiLinux does not need its own partition. For more information see It is perfectly safe to say N here. config EXT4_FS tristate "The Extended 4 (ext4) filesystem" select JBD2 select CRC16 help This is the next generation of the ext3 filesystem. Unlike the change from ext2 filesystem to ext3 filesystem, the on-disk format of ext4 is not forwards compatible with ext3; it is based on extent maps and it supports 48-bit physical block numbers. The ext4 filesystem also supports delayed allocation, persistent preallocation, high resolution time stamps, and a number of other features to improve performance and speed up fsck time. For more information, please see the web pages at http://ext4.wiki.kernel.org. The ext4 filesystem will support mounting an ext3 filesystem; while there will be some performance gains from the delayed allocation and inode table readahead, the best performance gains will require enabling ext4 features in the filesystem, or formatting a new filesystem as an ext4 filesystem initially. To compile this file system support as a module, choose M here. The module will be called ext4. If unsure, say N. config EXT4_USE_FOR_EXT23 bool "Use ext4 for ext2/ext3 file systems" depends on EXT4_FS depends on EXT3_FS=n || EXT2_FS=n default y help Allow the ext4 file system driver code to be used for ext2 or ext3 file system mounts. This allows users to reduce their compiled kernel size by using one file system driver for ext2, ext3, and ext4 file systems. config EXT4_FS_XATTR bool "Ext4 extended attributes" depends on EXT4_FS default y help Extended attributes are name:value pairs associated with inodes by the kernel or by users (see the attr(5) manual page, or visit for details). If unsure, say N. You need this for POSIX ACL support on ext4. config EXT4_FS_POSIX_ACL bool "Ext4 POSIX Access Control Lists" depends on EXT4_FS_XATTR select FS_POSIX_ACL help POSIX Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the POSIX ACLs for Linux website . If you don't know what Access Control Lists are, say N config EXT4_FS_SECURITY bool "Ext4 Security Labels" depends on EXT4_FS_XATTR help Security labels support alternative access control models implemented by security modules like SELinux. This option enables an extended attribute handler for file security labels in the ext4 filesystem. If you are not using a security module that requires using extended attributes for file security labels, say N. config EXT4_DEBUG bool "EXT4 debugging support" depends on EXT4_FS help Enables run-time debugging support for the ext4 filesystem. If you select Y here, then you will be able to turn on debugging with a command such as "echo 1 > /sys/kernel/debug/ext4/mballoc-debug" config GFS2_FS tristate "GFS2 file system support" depends on (64BIT || LBDAF) select DLM if GFS2_FS_LOCKING_DLM select CONFIGFS_FS if GFS2_FS_LOCKING_DLM select SYSFS if GFS2_FS_LOCKING_DLM select IP_SCTP if DLM_SCTP select FS_POSIX_ACL select CRC32 select QUOTACTL help A cluster filesystem. Allows a cluster of computers to simultaneously use a block device that is shared between them (with FC, iSCSI, NBD, etc...). GFS reads and writes to the block device like a local filesystem, but also uses a lock module to allow the computers coordinate their I/O so filesystem consistency is maintained. One of the nifty features of GFS is perfect consistency -- changes made to the filesystem on one machine show up immediately on all other machines in the cluster. To use the GFS2 filesystem in a cluster, you will need to enable the locking module below. Documentation and utilities for GFS2 can be found here: http://sources.redhat.com/cluster The "nolock" lock module is now built in to GFS2 by default. If you want to use the DLM, be sure to enable HOTPLUG and IPv4/6 networking. config GFS2_FS_LOCKING_DLM bool "GFS2 DLM locking" depends on (GFS2_FS!=n) && NET && INET && (IPV6 || IPV6=n) && HOTPLUG help Multiple node locking module for GFS2 Most users of GFS2 will require this. It provides the locking interface between GFS2 and the DLM, which is required to use GFS2 in a cluster environment. config EXT3_FS tristate "Ext3 journalling file system support" select JBD help This is the journalling version of the Second extended file system (often called ext3), the de facto standard Linux file system (method to organize files on a storage device) for hard disks. The journalling code included in this driver means you do not have to run e2fsck (file system checker) on your file systems after a crash. The journal keeps track of any changes that were being made at the time the system crashed, and can ensure that your file system is consistent without the need for a lengthy check. Other than adding the journal to the file system, the on-disk format of ext3 is identical to ext2. It is possible to freely switch between using the ext3 driver and the ext2 driver, as long as the file system has been cleanly unmounted, or e2fsck is run on the file system. To add a journal on an existing ext2 file system or change the behavior of ext3 file systems, you can use the tune2fs utility ("man tune2fs"). To modify attributes of files and directories on ext3 file systems, use chattr ("man chattr"). You need to be using e2fsprogs version 1.20 or later in order to create ext3 journals (available at ). To compile this file system support as a module, choose M here: the module will be called ext3. config EXT3_DEFAULTS_TO_ORDERED bool "Default to 'data=ordered' in ext3" depends on EXT3_FS default y help The journal mode options for ext3 have different tradeoffs between when data is guaranteed to be on disk and performance. The use of "data=writeback" can cause unwritten data to appear in files after an system crash or power failure, which can be a security issue. However, "data=ordered" mode can also result in major performance problems, including seconds-long delays before an fsync() call returns. For details, see: http://ext4.wiki.kernel.org/index.php/Ext3_data_mode_tradeoffs If you have been historically happy with ext3's performance, data=ordered mode will be a safe choice and you should answer 'y' here. If you understand the reliability and data privacy issues of data=writeback and are willing to make that trade off, answer 'n'. config EXT3_FS_XATTR bool "Ext3 extended attributes" depends on EXT3_FS default y help Extended attributes are name:value pairs associated with inodes by the kernel or by users (see the attr(5) manual page, or visit for details). If unsure, say N. You need this for POSIX ACL support on ext3. config EXT3_FS_POSIX_ACL bool "Ext3 POSIX Access Control Lists" depends on EXT3_FS_XATTR select FS_POSIX_ACL help Posix Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the Posix ACLs for Linux website . If you don't know what Access Control Lists are, say N config EXT3_FS_SECURITY bool "Ext3 Security Labels" depends on EXT3_FS_XATTR help Security labels support alternative access control models implemented by security modules like SELinux. This option enables an extended attribute handler for file security labels in the ext3 filesystem. If you are not using a security module that requires using extended attributes for file security labels, say N. config NFSD tristate "NFS server support" depends on INET depends on FILE_LOCKING select LOCKD select SUNRPC select EXPORTFS select NFS_ACL_SUPPORT if NFSD_V2_ACL help Choose Y here if you want to allow other computers to access files residing on this system using Sun's Network File System protocol. To compile the NFS server support as a module, choose M here: the module will be called nfsd. You may choose to use a user-space NFS server instead, in which case you can choose N here. To export local file systems using NFS, you also need to install user space programs which can be found in the Linux nfs-utils package, available from http://linux-nfs.org/. More detail about the Linux NFS server implementation is available via the exports(5) man page. Below you can choose which versions of the NFS protocol are available to clients mounting the NFS server on this system. Support for NFS version 2 (RFC 1094) is always available when CONFIG_NFSD is selected. If unsure, say N. config NFSD_DEPRECATED bool "Include support for deprecated syscall interface to NFSD" depends on NFSD default y help The syscall interface to nfsd was obsoleted in 2.6.0 by a new filesystem based interface. The old interface is due for removal in 2.6.40. If you wish to remove the interface before then say N. In unsure, say Y. config NFSD_V2_ACL bool depends on NFSD config NFSD_V3 bool "NFS server support for NFS version 3" depends on NFSD help This option enables support in your system's NFS server for version 3 of the NFS protocol (RFC 1813). If unsure, say Y. config NFSD_V3_ACL bool "NFS server support for the NFSv3 ACL protocol extension" depends on NFSD_V3 select NFSD_V2_ACL help Solaris NFS servers support an auxiliary NFSv3 ACL protocol that never became an official part of the NFS version 3 protocol. This protocol extension allows applications on NFS clients to manipulate POSIX Access Control Lists on files residing on NFS servers. NFS servers enforce POSIX ACLs on local files whether this protocol is available or not. This option enables support in your system's NFS server for the NFSv3 ACL protocol extension allowing NFS clients to manipulate POSIX ACLs on files exported by your system's NFS server. NFS clients which support the Solaris NFSv3 ACL protocol can then access and modify ACLs on your NFS server. To store ACLs on your NFS server, you also need to enable ACL- related CONFIG options for your local file systems of choice. If unsure, say N. config NFSD_V4 bool "NFS server support for NFS version 4 (EXPERIMENTAL)" depends on NFSD && PROC_FS && EXPERIMENTAL select NFSD_V3 select FS_POSIX_ACL select SUNRPC_GSS select CRYPTO help This option enables support in your system's NFS server for version 4 of the NFS protocol (RFC 3530). To export files using NFSv4, you need to install additional user space programs which can be found in the Linux nfs-utils package, available from http://linux-nfs.org/. If unsure, say N. config BTRFS_FS tristate "Btrfs filesystem (EXPERIMENTAL) Unstable disk format" depends on EXPERIMENTAL select LIBCRC32C select ZLIB_INFLATE select ZLIB_DEFLATE select LZO_COMPRESS select LZO_DECOMPRESS help Btrfs is a new filesystem with extents, writable snapshotting, support for multiple devices and many more features. Btrfs is highly experimental, and THE DISK FORMAT IS NOT YET FINALIZED. You should say N here unless you are interested in testing Btrfs with non-critical data. To compile this file system support as a module, choose M here. The module will be called btrfs. If unsure, say N. config BTRFS_FS_POSIX_ACL bool "Btrfs POSIX Access Control Lists" depends on BTRFS_FS select FS_POSIX_ACL help POSIX Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the POSIX ACLs for Linux website . If you don't know what Access Control Lists are, say N config HFSPLUS_FS tristate "Apple Extended HFS file system support" depends on BLOCK select NLS select NLS_UTF8 help If you say Y here, you will be able to mount extended format Macintosh-formatted hard drive partitions with full read-write access. This file system is often called HFS+ and was introduced with MacOS 8. It includes all Mac specific filesystem data such as data forks and creator codes, but it also has several UNIX style features such as file ownership and permissions. config OCFS2_FS tristate "OCFS2 file system support" depends on NET && SYSFS && CONFIGFS_FS select JBD2 select CRC32 select QUOTA select QUOTA_TREE select FS_POSIX_ACL help OCFS2 is a general purpose extent based shared disk cluster file system with many similarities to ext3. It supports 64 bit inode numbers, and has automatically extending metadata groups which may also make it attractive for non-clustered use. You'll want to install the ocfs2-tools package in order to at least get "mount.ocfs2". Project web page: http://oss.oracle.com/projects/ocfs2 Tools web page: http://oss.oracle.com/projects/ocfs2-tools OCFS2 mailing lists: http://oss.oracle.com/projects/ocfs2/mailman/ For more information on OCFS2, see the file . config OCFS2_FS_O2CB tristate "O2CB Kernelspace Clustering" depends on OCFS2_FS default y help OCFS2 includes a simple kernelspace clustering package, the OCFS2 Cluster Base. It only requires a very small userspace component to configure it. This comes with the standard ocfs2-tools package. O2CB is limited to maintaining a cluster for OCFS2 file systems. It cannot manage any other cluster applications. It is always safe to say Y here, as the clustering method is run-time selectable. config OCFS2_FS_USERSPACE_CLUSTER tristate "OCFS2 Userspace Clustering" depends on OCFS2_FS && DLM default y help This option will allow OCFS2 to use userspace clustering services in conjunction with the DLM in fs/dlm. If you are using a userspace cluster manager, say Y here. It is safe to say Y, as the clustering method is run-time selectable. config OCFS2_FS_STATS bool "OCFS2 statistics" depends on OCFS2_FS && DEBUG_FS default y help This option allows some fs statistics to be captured. Enabling this option may increase the memory consumption. config OCFS2_DEBUG_MASKLOG bool "OCFS2 logging support" depends on OCFS2_FS default y help The ocfs2 filesystem has an extensive logging system. The system allows selection of events to log via files in /sys/o2cb/logmask/. This option will enlarge your kernel, but it allows debugging of ocfs2 filesystem issues. config OCFS2_DEBUG_FS bool "OCFS2 expensive checks" depends on OCFS2_FS default n help This option will enable expensive consistency checks. Enable this option for debugging only as it is likely to decrease performance of the filesystem. config EXT2_FS tristate "Second extended fs support" help Ext2 is a standard Linux file system for hard disks. To compile this file system support as a module, choose M here: the module will be called ext2. If unsure, say Y. config EXT2_FS_XATTR bool "Ext2 extended attributes" depends on EXT2_FS help Extended attributes are name:value pairs associated with inodes by the kernel or by users (see the attr(5) manual page, or visit for details). If unsure, say N. config EXT2_FS_POSIX_ACL bool "Ext2 POSIX Access Control Lists" depends on EXT2_FS_XATTR select FS_POSIX_ACL help Posix Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the Posix ACLs for Linux website . If you don't know what Access Control Lists are, say N config EXT2_FS_SECURITY bool "Ext2 Security Labels" depends on EXT2_FS_XATTR help Security labels support alternative access control models implemented by security modules like SELinux. This option enables an extended attribute handler for file security labels in the ext2 filesystem. If you are not using a security module that requires using extended attributes for file security labels, say N. config EXT2_FS_XIP bool "Ext2 execute in place support" depends on EXT2_FS && MMU help Execute in place can be used on memory-backed block devices. If you enable this option, you can select to mount block devices which are capable of this feature without using the page cache. If you do not use a block device that is capable of using this, or if unsure, say N. config LOGFS tristate "LogFS file system (EXPERIMENTAL)" depends on (MTD || BLOCK) && EXPERIMENTAL select ZLIB_INFLATE select ZLIB_DEFLATE select CRC32 select BTREE help Flash filesystem aimed to scale efficiently to large devices. In comparison to JFFS2 it offers significantly faster mount times and potentially less RAM usage, although the latter has not been measured yet. In its current state it is still very experimental and should not be used for other than testing purposes. If unsure, say N. config JFS_FS tristate "JFS filesystem support" select NLS select CRC32 help This is a port of IBM's Journaled Filesystem . More information is available in the file . If you do not intend to use the JFS filesystem, say N. config JFS_POSIX_ACL bool "JFS POSIX Access Control Lists" depends on JFS_FS select FS_POSIX_ACL help Posix Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the Posix ACLs for Linux website . If you don't know what Access Control Lists are, say N config JFS_SECURITY bool "JFS Security Labels" depends on JFS_FS help Security labels support alternative access control models implemented by security modules like SELinux. This option enables an extended attribute handler for file security labels in the jfs filesystem. If you are not using a security module that requires using extended attributes for file security labels, say N. config JFS_DEBUG bool "JFS debugging" depends on JFS_FS help If you are experiencing any problems with the JFS filesystem, say Y here. This will result in additional debugging messages to be written to the system log. Under normal circumstances, this results in very little overhead. config JFS_STATISTICS bool "JFS statistics" depends on JFS_FS help Enabling this option will cause statistics from the JFS file system to be made available to the user in the /proc/fs/jfs/ directory. config AFS_FS tristate "Andrew File System support (AFS) (EXPERIMENTAL)" depends on INET && EXPERIMENTAL select AF_RXRPC select DNS_RESOLVER help If you say Y here, you will get an experimental Andrew File System driver. It currently only supports unsecured read-only AFS access. See for more information. If unsure, say N. config AFS_DEBUG bool "AFS dynamic debugging" depends on AFS_FS help Say Y here to make runtime controllable debugging messages appear. See for more information. If unsure, say N. config AFS_FSCACHE bool "Provide AFS client caching support (EXPERIMENTAL)" depends on EXPERIMENTAL depends on AFS_FS=m && FSCACHE || AFS_FS=y && FSCACHE=y help Say Y here if you want AFS data to be cached locally on disk through the generic filesystem cache manager config CRAMFS tristate "Compressed ROM file system support (cramfs)" depends on BLOCK select ZLIB_INFLATE help Saying Y here includes support for CramFs (Compressed ROM File System). CramFs is designed to be a simple, small, and compressed file system for ROM based embedded systems. CramFs is read-only, limited to 256MB file systems (with 16MB files), and doesn't support 16/32 bits uid/gid, hard links and timestamps. See and for further information. To compile this as a module, choose M here: the module will be called cramfs. Note that the root file system (the one containing the directory /) cannot be compiled as a module. If unsure, say N. config REISERFS_FS tristate "Reiserfs support" select CRC32 help Stores not just filenames but the files themselves in a balanced tree. Uses journalling. Balanced trees are more efficient than traditional file system architectural foundations. In general, ReiserFS is as fast as ext2, but is very efficient with large directories and small files. Additional patches are needed for NFS and quotas, please see for links. It is more easily extended to have features currently found in database and keyword search systems than block allocation based file systems are. The next version will be so extended, and will support plugins consistent with our motto ``It takes more than a license to make source code open.'' Read to learn more about reiserfs. Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com. If you like it, you can pay us to add new features to it that you need, buy a support contract, or pay us to port it to another OS. config REISERFS_CHECK bool "Enable reiserfs debug mode" depends on REISERFS_FS help If you set this to Y, then ReiserFS will perform every check it can possibly imagine of its internal consistency throughout its operation. It will also go substantially slower. More than once we have forgotten that this was on, and then gone despondent over the latest benchmarks.:-) Use of this option allows our team to go all out in checking for consistency when debugging without fear of its effect on end users. If you are on the verge of sending in a bug report, say Y and you might get a useful error message. Almost everyone should say N. config REISERFS_PROC_INFO bool "Stats in /proc/fs/reiserfs" depends on REISERFS_FS && PROC_FS help Create under /proc/fs/reiserfs a hierarchy of files, displaying various ReiserFS statistics and internal data at the expense of making your kernel or module slightly larger (+8 KB). This also increases the amount of kernel memory required for each mount. Almost everyone but ReiserFS developers and people fine-tuning reiserfs or tracing problems should say N. config REISERFS_FS_XATTR bool "ReiserFS extended attributes" depends on REISERFS_FS help Extended attributes are name:value pairs associated with inodes by the kernel or by users (see the attr(5) manual page, or visit for details). If unsure, say N. config REISERFS_FS_POSIX_ACL bool "ReiserFS POSIX Access Control Lists" depends on REISERFS_FS_XATTR select FS_POSIX_ACL help Posix Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the Posix ACLs for Linux website . If you don't know what Access Control Lists are, say N config REISERFS_FS_SECURITY bool "ReiserFS Security Labels" depends on REISERFS_FS_XATTR help Security labels support alternative access control models implemented by security modules like SELinux. This option enables an extended attribute handler for file security labels in the ReiserFS filesystem. If you are not using a security module that requires using extended attributes for file security labels, say N. config ISO9660_FS tristate "ISO 9660 CDROM file system support" help This is the standard file system used on CD-ROMs. It was previously known as "High Sierra File System" and is called "hsfs" on other Unix systems. The so-called Rock-Ridge extensions which allow for long Unix filenames and symbolic links are also supported by this driver. If you have a CD-ROM drive and want to do more with it than just listen to audio CDs and watch its LEDs, say Y (and read and the CD-ROM-HOWTO, available from ), thereby enlarging your kernel by about 27 KB; otherwise say N. To compile this file system support as a module, choose M here: the module will be called isofs. config JOLIET bool "Microsoft Joliet CDROM extensions" depends on ISO9660_FS select NLS help Joliet is a Microsoft extension for the ISO 9660 CD-ROM file system which allows for long filenames in unicode format (unicode is the new 16 bit character code, successor to ASCII, which encodes the characters of almost all languages of the world; see for more information). Say Y here if you want to be able to read Joliet CD-ROMs under Linux. config ZISOFS bool "Transparent decompression extension" depends on ISO9660_FS select ZLIB_INFLATE help This is a Linux-specific extension to RockRidge which lets you store data in compressed form on a CD-ROM and have it transparently decompressed when the CD-ROM is accessed. See for the tools necessary to create such a filesystem. Say Y here if you want to be able to read such compressed CD-ROMs. config JBD tristate help This is a generic journalling layer for block devices. It is currently used by the ext3 file system, but it could also be used to add journal support to other file systems or block devices such as RAID or LVM. If you are using the ext3 file system, you need to say Y here. If you are not using ext3 then you will probably want to say N. To compile this device as a module, choose M here: the module will be called jbd. If you are compiling ext3 into the kernel, you cannot compile this code as a module. config JBD_DEBUG bool "JBD (ext3) debugging support" depends on JBD && DEBUG_FS help If you are using the ext3 journaled file system (or potentially any other file system/device using JBD), this option allows you to enable debugging output while the system is running, in order to help track down any problems you are having. By default the debugging output will be turned off. If you select Y here, then you will be able to turn on debugging with "echo N > /sys/kernel/debug/jbd/jbd-debug", where N is a number between 1 and 5, the higher the number, the more debugging output is generated. To turn debugging off again, do "echo 0 > /sys/kernel/debug/jbd/jbd-debug". config FAT_FS tristate select NLS help If you want to use one of the FAT-based file systems (the MS-DOS and VFAT (Windows 95) file systems), then you must say Y or M here to include FAT support. You will then be able to mount partitions or diskettes with FAT-based file systems and transparently access the files on them, i.e. MSDOS files will look and behave just like all other Unix files. This FAT support is not a file system in itself, it only provides the foundation for the other file systems. You will have to say Y or M to at least one of "MSDOS fs support" or "VFAT fs support" in order to make use of it. Another way to read and write MSDOS floppies and hard drive partitions from within Linux (but not transparently) is with the mtools ("man mtools") program suite. You don't need to say Y here in order to do that. If you need to move large files on floppies between a DOS and a Linux box, say Y here, mount the floppy under Linux with an MSDOS file system and use GNU tar's M option. GNU tar is a program available for Unix and DOS ("man tar" or "info tar"). The FAT support will enlarge your kernel by about 37 KB. If unsure, say Y. To compile this as a module, choose M here: the module will be called fat. Note that if you compile the FAT support as a module, you cannot compile any of the FAT-based file systems into the kernel -- they will have to be modules as well. config MSDOS_FS tristate "MSDOS fs support" select FAT_FS help This allows you to mount MSDOS partitions of your hard drive (unless they are compressed; to access compressed MSDOS partitions under Linux, you can either use the DOS emulator DOSEMU, described in the DOSEMU-HOWTO, available from , or try dmsdosfs in . If you intend to use dosemu with a non-compressed MSDOS partition, say Y here) and MSDOS floppies. This means that file access becomes transparent, i.e. the MSDOS files look and behave just like all other Unix files. If you have Windows 95 or Windows NT installed on your MSDOS partitions, you should use the VFAT file system (say Y to "VFAT fs support" below), or you will not be able to see the long filenames generated by Windows 95 / Windows NT. This option will enlarge your kernel by about 7 KB. If unsure, answer Y. This will only work if you said Y to "DOS FAT fs support" as well. To compile this as a module, choose M here: the module will be called msdos. config VFAT_FS tristate "VFAT (Windows-95) fs support" select FAT_FS help This option provides support for normal Windows file systems with long filenames. That includes non-compressed FAT-based file systems used by Windows 95, Windows 98, Windows NT 4.0, and the Unix programs from the mtools package. The VFAT support enlarges your kernel by about 10 KB and it only works if you said Y to the "DOS FAT fs support" above. Please read the file for details. If unsure, say Y. To compile this as a module, choose M here: the module will be called vfat. config FAT_DEFAULT_CODEPAGE int "Default codepage for FAT" depends on MSDOS_FS || VFAT_FS default 437 help This option should be set to the codepage of your FAT filesystems. It can be overridden with the "codepage" mount option. See for more information. config FAT_DEFAULT_IOCHARSET string "Default iocharset for FAT" depends on VFAT_FS default "iso8859-1" help Set this to the default input/output character set you'd like FAT to use. It should probably match the character set that most of your FAT filesystems use, and can be overridden with the "iocharset" mount option for FAT filesystems. Note that "utf8" is not recommended for FAT filesystems. If unsure, you shouldn't set "utf8" here. See for more information. Enable any character sets you need in File Systems/Native Language Support. config NILFS2_FS tristate "NILFS2 file system support (EXPERIMENTAL)" depends on EXPERIMENTAL select CRC32 help NILFS2 is a log-structured file system (LFS) supporting continuous snapshotting. In addition to versioning capability of the entire file system, users can even restore files mistakenly overwritten or destroyed just a few seconds ago. Since this file system can keep consistency like conventional LFS, it achieves quick recovery after system crashes. NILFS2 creates a number of checkpoints every few seconds or per synchronous write basis (unless there is no change). Users can select significant versions among continuously created checkpoints, and can change them into snapshots which will be preserved for long periods until they are changed back to checkpoints. Each snapshot is mountable as a read-only file system concurrently with its writable mount, and this feature is convenient for online backup. Some features including atime, extended attributes, and POSIX ACLs, are not supported yet. To compile this file system support as a module, choose M here: the module will be called nilfs2. If unsure, say N. config EXOFS_FS tristate "exofs: OSD based file system support" depends on SCSI_OSD_ULD help EXOFS is a file system that uses an OSD storage device, as its backing storage. # Debugging-related stuff config EXOFS_DEBUG bool "Enable debugging" depends on EXOFS_FS help This option enables EXOFS debug prints. config FSCACHE tristate "General filesystem local caching manager" help This option enables a generic filesystem caching manager that can be used by various network and other filesystems to cache data locally. Different sorts of caches can be plugged in, depending on the resources available. See Documentation/filesystems/caching/fscache.txt for more information. config FSCACHE_STATS bool "Gather statistical information on local caching" depends on FSCACHE && PROC_FS help This option causes statistical information to be gathered on local caching and exported through file: /proc/fs/fscache/stats The gathering of statistics adds a certain amount of overhead to execution as there are a quite a few stats gathered, and on a multi-CPU system these may be on cachelines that keep bouncing between CPUs. On the other hand, the stats are very useful for debugging purposes. Saying 'Y' here is recommended. See Documentation/filesystems/caching/fscache.txt for more information. config FSCACHE_HISTOGRAM bool "Gather latency information on local caching" depends on FSCACHE && PROC_FS help This option causes latency information to be gathered on local caching and exported through file: /proc/fs/fscache/histogram The generation of this histogram adds a certain amount of overhead to execution as there are a number of points at which data is gathered, and on a multi-CPU system these may be on cachelines that keep bouncing between CPUs. On the other hand, the histogram may be useful for debugging purposes. Saying 'N' here is recommended. See Documentation/filesystems/caching/fscache.txt for more information. config FSCACHE_DEBUG bool "Debug FS-Cache" depends on FSCACHE help This permits debugging to be dynamically enabled in the local caching management module. If this is set, the debugging output may be enabled by setting bits in /sys/modules/fscache/parameter/debug. See Documentation/filesystems/caching/fscache.txt for more information. config FSCACHE_OBJECT_LIST bool "Maintain global object list for debugging purposes" depends on FSCACHE && PROC_FS help Maintain a global list of active fscache objects that can be retrieved through /proc/fs/fscache/objects for debugging purposes # # Partition configuration # config PARTITION_ADVANCED bool "Advanced partition selection" help Say Y here if you would like to use hard disks under Linux which were partitioned under an operating system running on a different architecture than your Linux system. Note that the answer to this question won't directly affect the kernel: saying N will just cause the configurator to skip all the questions about foreign partitioning schemes. If unsure, say N. config ACORN_PARTITION bool "Acorn partition support" if PARTITION_ADVANCED default y if ARCH_ACORN help Support hard disks partitioned under Acorn operating systems. config ACORN_PARTITION_CUMANA bool "Cumana partition support" if PARTITION_ADVANCED default y if ARCH_ACORN depends on ACORN_PARTITION help Say Y here if you would like to use hard disks under Linux which were partitioned using the Cumana interface on Acorn machines. config ACORN_PARTITION_EESOX bool "EESOX partition support" if PARTITION_ADVANCED default y if ARCH_ACORN depends on ACORN_PARTITION config ACORN_PARTITION_ICS bool "ICS partition support" if PARTITION_ADVANCED default y if ARCH_ACORN depends on ACORN_PARTITION help Say Y here if you would like to use hard disks under Linux which were partitioned using the ICS interface on Acorn machines. config ACORN_PARTITION_ADFS bool "Native filecore partition support" if PARTITION_ADVANCED default y if ARCH_ACORN depends on ACORN_PARTITION help The Acorn Disc Filing System is the standard file system of the RiscOS operating system which runs on Acorn's ARM-based Risc PC systems and the Acorn Archimedes range of machines. If you say `Y' here, Linux will support disk partitions created under ADFS. config ACORN_PARTITION_POWERTEC bool "PowerTec partition support" if PARTITION_ADVANCED default y if ARCH_ACORN depends on ACORN_PARTITION help Support reading partition tables created on Acorn machines using the PowerTec SCSI drive. config ACORN_PARTITION_RISCIX bool "RISCiX partition support" if PARTITION_ADVANCED default y if ARCH_ACORN depends on ACORN_PARTITION help Once upon a time, there was a native Unix port for the Acorn series of machines called RISCiX. If you say 'Y' here, Linux will be able to read disks partitioned under RISCiX. config OSF_PARTITION bool "Alpha OSF partition support" if PARTITION_ADVANCED default y if ALPHA help Say Y here if you would like to use hard disks under Linux which were partitioned on an Alpha machine. config AMIGA_PARTITION bool "Amiga partition table support" if PARTITION_ADVANCED default y if (AMIGA || AFFS_FS=y) help Say Y here if you would like to use hard disks under Linux which were partitioned under AmigaOS. config ATARI_PARTITION bool "Atari partition table support" if PARTITION_ADVANCED default y if ATARI help Say Y here if you would like to use hard disks under Linux which were partitioned under the Atari OS. config IBM_PARTITION bool "IBM disk label and partition support" depends on PARTITION_ADVANCED && S390 help Say Y here if you would like to be able to read the hard disk partition table format used by IBM DASD disks operating under CMS. Otherwise, say N. config MAC_PARTITION bool "Macintosh partition map support" if PARTITION_ADVANCED default y if (MAC || PPC_PMAC) help Say Y here if you would like to use hard disks under Linux which were partitioned on a Macintosh. config MSDOS_PARTITION bool "PC BIOS (MSDOS partition tables) support" if PARTITION_ADVANCED default y help Say Y here. config BSD_DISKLABEL bool "BSD disklabel (FreeBSD partition tables) support" depends on PARTITION_ADVANCED && MSDOS_PARTITION help FreeBSD uses its own hard disk partition scheme on your PC. It requires only one entry in the primary partition table of your disk and manages it similarly to DOS extended partitions, putting in its first sector a new partition table in BSD disklabel format. Saying Y here allows you to read these disklabels and further mount FreeBSD partitions from within Linux if you have also said Y to "UFS file system support", above. If you don't know what all this is about, say N. config MINIX_SUBPARTITION bool "Minix subpartition support" depends on PARTITION_ADVANCED && MSDOS_PARTITION help Minix 2.0.0/2.0.2 subpartition table support for Linux. Say Y here if you want to mount and use Minix 2.0.0/2.0.2 subpartitions. config SOLARIS_X86_PARTITION bool "Solaris (x86) partition table support" depends on PARTITION_ADVANCED && MSDOS_PARTITION help Like most systems, Solaris x86 uses its own hard disk partition table format, incompatible with all others. Saying Y here allows you to read these partition tables and further mount Solaris x86 partitions from within Linux if you have also said Y to "UFS file system support", above. config UNIXWARE_DISKLABEL bool "Unixware slices support" depends on PARTITION_ADVANCED && MSDOS_PARTITION ---help--- Like some systems, UnixWare uses its own slice table inside a partition (VTOC - Virtual Table of Contents). Its format is incompatible with all other OSes. Saying Y here allows you to read VTOC and further mount UnixWare partitions read-only from within Linux if you have also said Y to "UFS file system support" or "System V and Coherent file system support", above. This is mainly used to carry data from a UnixWare box to your Linux box via a removable medium like magneto-optical, ZIP or removable IDE drives. Note, however, that a good portable way to transport files and directories between unixes (and even other operating systems) is given by the tar program ("man tar" or preferably "info tar"). If you don't know what all this is about, say N. config LDM_PARTITION bool "Windows Logical Disk Manager (Dynamic Disk) support" depends on PARTITION_ADVANCED ---help--- Say Y here if you would like to use hard disks under Linux which were partitioned using Windows 2000's/XP's or Vista's Logical Disk Manager. They are also known as "Dynamic Disks". Note this driver only supports Dynamic Disks with a protective MBR label, i.e. DOS partition table. It does not support GPT labelled Dynamic Disks yet as can be created with Vista. Windows 2000 introduced the concept of Dynamic Disks to get around the limitations of the PC's partitioning scheme. The Logical Disk Manager allows the user to repartition a disk and create spanned, mirrored, striped or RAID volumes, all without the need for rebooting. Normal partitions are now called Basic Disks under Windows 2000, XP, and Vista. For a fuller description read . If unsure, say N. config LDM_DEBUG bool "Windows LDM extra logging" depends on LDM_PARTITION help Say Y here if you would like LDM to log verbosely. This could be helpful if the driver doesn't work as expected and you'd like to report a bug. If unsure, say N. config SGI_PARTITION bool "SGI partition support" if PARTITION_ADVANCED default y if DEFAULT_SGI_PARTITION help Say Y here if you would like to be able to read the hard disk partition table format used by SGI machines. config ULTRIX_PARTITION bool "Ultrix partition table support" if PARTITION_ADVANCED default y if MACH_DECSTATION help Say Y here if you would like to be able to read the hard disk partition table format used by DEC (now Compaq) Ultrix machines. Otherwise, say N. config SUN_PARTITION bool "Sun partition tables support" if PARTITION_ADVANCED default y if (SPARC || SUN3 || SUN3X) ---help--- Like most systems, SunOS uses its own hard disk partition table format, incompatible with all others. Saying Y here allows you to read these partition tables and further mount SunOS partitions from within Linux if you have also said Y to "UFS file system support", above. This is mainly used to carry data from a SPARC under SunOS to your Linux box via a removable medium like magneto-optical or ZIP drives; note however that a good portable way to transport files and directories between unixes (and even other operating systems) is given by the tar program ("man tar" or preferably "info tar"). If you don't know what all this is about, say N. config KARMA_PARTITION bool "Karma Partition support" depends on PARTITION_ADVANCED help Say Y here if you would like to mount the Rio Karma MP3 player, as it uses a proprietary partition table. config EFI_PARTITION bool "EFI GUID Partition support" depends on PARTITION_ADVANCED select CRC32 help Say Y here if you would like to use hard disks under Linux which were partitioned using EFI GPT. config SYSV68_PARTITION bool "SYSV68 partition table support" if PARTITION_ADVANCED default y if VME help Say Y here if you would like to be able to read the hard disk partition table format used by Motorola Delta machines (using sysv68). Otherwise, say N. config QNX4FS_FS tristate "QNX4 file system support (read only)" depends on BLOCK help This is the file system used by the real-time operating systems QNX 4 and QNX 6 (the latter is also called QNX RTP). Further information is available at . Say Y if you intend to mount QNX hard disks or floppies. To compile this file system support as a module, choose M here: the module will be called qnx4. If you don't know whether you need it, then you don't need it: answer N. config CONFIGFS_FS tristate "Userspace-driven configuration filesystem" select SYSFS help configfs is a RAM-based filesystem that provides the converse of sysfs's functionality. Where sysfs is a filesystem-based view of kernel objects, configfs is a filesystem-based manager of kernel objects, or config_items. Both sysfs and configfs can and should exist together on the same system. One is not a replacement for the other. config CEPH_FS tristate "Ceph distributed file system (EXPERIMENTAL)" depends on INET && EXPERIMENTAL select CEPH_LIB select LIBCRC32C select CRYPTO_AES select CRYPTO default n help Choose Y or M here to include support for mounting the experimental Ceph distributed file system. Ceph is an extremely scalable file system designed to provide high performance, reliable access to petabytes of storage. More information at http://ceph.newdream.net/. If unsure, say N. config PSTORE bool "Persistent store support" default n help This option enables generic access to platform level persistent storage via "pstore" filesystem that can be mounted as /dev/pstore. Only useful if you have a platform level driver that registers with pstore to provide the data, so you probably should just go say "Y" (or "M") to a platform specific persistent store driver (e.g. ACPI_APEI on X86) which will select this for you. If you don't have a platform persistent store driver, say N. config FSNOTIFY def_bool n source "fs/notify/dnotify/Kconfig" source "fs/notify/inotify/Kconfig" source "fs/notify/fanotify/Kconfig" config DNOTIFY bool "Dnotify support" select FSNOTIFY default y help Dnotify is a directory-based per-fd file change notification system that uses signals to communicate events to user-space. There exist superior alternatives, but some applications may still rely on dnotify. If unsure, say Y. config FANOTIFY bool "Filesystem wide access notification" select FSNOTIFY select ANON_INODES default n ---help--- Say Y here to enable fanotify suport. fanotify is a file access notification system which differs from inotify in that it sends an open file descriptor to the userspace listener along with the event. If unsure, say Y. config FANOTIFY_ACCESS_PERMISSIONS bool "fanotify permissions checking" depends on FANOTIFY depends on SECURITY default n ---help--- Say Y here is you want fanotify listeners to be able to make permissions decisions concerning filesystem events. This is used by some fanotify listeners which need to scan files before allowing the system access to use those files. This is used by some anti-malware vendors and by some hierarchical storage managent systems. If unsure, say N. config INOTIFY_USER bool "Inotify support for userspace" select ANON_INODES select FSNOTIFY default y ---help--- Say Y here to enable inotify support for userspace, including the associated system calls. Inotify allows monitoring of both files and directories via a single open fd. Events are read from the file descriptor, which is also select()- and poll()-able. Inotify fixes numerous shortcomings in dnotify and introduces several new features including multiple file events, one-shot support, and unmount notification. For more information, see If unsure, say Y. config ROMFS_FS tristate "ROM file system support" depends on BLOCK || MTD ---help--- This is a very small read-only file system mainly intended for initial ram disks of installation disks, but it could be used for other read-only media as well. Read for details. To compile this file system support as a module, choose M here: the module will be called romfs. Note that the file system of your root partition (the one containing the directory /) cannot be a module. If you don't know whether you need it, then you don't need it: answer N. # # Select the backing stores to be supported # choice prompt "RomFS backing stores" depends on ROMFS_FS default ROMFS_BACKED_BY_BLOCK help Select the backing stores to be supported. config ROMFS_BACKED_BY_BLOCK bool "Block device-backed ROM file system support" depends on BLOCK help This permits ROMFS to use block devices buffered through the page cache as the medium from which to retrieve data. It does not allow direct mapping of the medium. If unsure, answer Y. config ROMFS_BACKED_BY_MTD bool "MTD-backed ROM file system support" depends on MTD=y || (ROMFS_FS=m && MTD) help This permits ROMFS to use MTD based devices directly, without the intercession of the block layer (which may have been disabled). It also allows direct mapping of MTD devices through romfs files under NOMMU conditions if the underlying device is directly addressable by the CPU. If unsure, answer Y. config ROMFS_BACKED_BY_BOTH bool "Both the above" depends on BLOCK && (MTD=y || (ROMFS_FS=m && MTD)) endchoice config ROMFS_ON_BLOCK bool default y if ROMFS_BACKED_BY_BLOCK || ROMFS_BACKED_BY_BOTH config ROMFS_ON_MTD bool default y if ROMFS_BACKED_BY_MTD || ROMFS_BACKED_BY_BOTH config JBD2 tristate select CRC32 help This is a generic journaling layer for block devices that support both 32-bit and 64-bit block numbers. It is currently used by the ext4 and OCFS2 filesystems, but it could also be used to add journal support to other file systems or block devices such as RAID or LVM. If you are using ext4 or OCFS2, you need to say Y here. If you are not using ext4 or OCFS2 then you will probably want to say N. To compile this device as a module, choose M here. The module will be called jbd2. If you are compiling ext4 or OCFS2 into the kernel, you cannot compile this code as a module. config JBD2_DEBUG bool "JBD2 (ext4) debugging support" depends on JBD2 && DEBUG_FS help If you are using the ext4 journaled file system (or potentially any other filesystem/device using JBD2), this option allows you to enable debugging output while the system is running, in order to help track down any problems you are having. By default, the debugging output will be turned off. If you select Y here, then you will be able to turn on debugging with "echo N > /sys/kernel/debug/jbd2/jbd2-debug", where N is a number between 1 and 5. The higher the number, the more debugging output is generated. To turn debugging off again, do "echo 0 > /sys/kernel/debug/jbd2/jbd2-debug". config SQUASHFS tristate "SquashFS 4.0 - Squashed file system support" depends on BLOCK select ZLIB_INFLATE help Saying Y here includes support for SquashFS 4.0 (a Compressed Read-Only File System). Squashfs is a highly compressed read-only filesystem for Linux. It uses zlib, lzo or xz compression to compress both files, inodes and directories. Inodes in the system are very small and all blocks are packed to minimise data overhead. Block sizes greater than 4K are supported up to a maximum of 1 Mbytes (default block size 128K). SquashFS 4.0 supports 64 bit filesystems and files (larger than 4GB), full uid/gid information, hard links and timestamps. Squashfs is intended for general read-only filesystem use, for archival use (i.e. in cases where a .tar.gz file may be used), and in embedded systems where low overhead is needed. Further information and tools are available from http://squashfs.sourceforge.net. If you want to compile this as a module ( = code which can be inserted in and removed from the running kernel whenever you want), say M here and read . The module will be called squashfs. Note that the root file system (the one containing the directory /) cannot be compiled as a module. If unsure, say N. config SQUASHFS_XATTR bool "Squashfs XATTR support" depends on SQUASHFS help Saying Y here includes support for extended attributes (xattrs). Xattrs are name:value pairs associated with inodes by the kernel or by users (see the attr(5) manual page). If unsure, say N. config SQUASHFS_LZO bool "Include support for LZO compressed file systems" depends on SQUASHFS select LZO_DECOMPRESS help Saying Y here includes support for reading Squashfs file systems compressed with LZO compresssion. LZO compression is mainly aimed at embedded systems with slower CPUs where the overheads of zlib are too high. LZO is not the standard compression used in Squashfs and so most file systems will be readable without selecting this option. If unsure, say N. config SQUASHFS_XZ bool "Include support for XZ compressed file systems" depends on SQUASHFS select XZ_DEC help Saying Y here includes support for reading Squashfs file systems compressed with XZ compresssion. XZ gives better compression than the default zlib compression, at the expense of greater CPU and memory overhead. XZ is not the standard compression used in Squashfs and so most file systems will be readable without selecting this option. If unsure, say N. config SQUASHFS_EMBEDDED bool "Additional option for memory-constrained systems" depends on SQUASHFS help Saying Y here allows you to specify cache size. If unsure, say N. config SQUASHFS_FRAGMENT_CACHE_SIZE int "Number of fragments cached" if SQUASHFS_EMBEDDED depends on SQUASHFS default "3" help By default SquashFS caches the last 3 fragments read from the filesystem. Increasing this amount may mean SquashFS has to re-read fragments less often from disk, at the expense of extra system memory. Decreasing this amount will mean SquashFS uses less memory at the expense of extra reads from disk. Note there must be at least one cached fragment. Anything much more than three will probably not make much difference. config CODA_FS tristate "Coda file system support (advanced network fs)" depends on INET help Coda is an advanced network file system, similar to NFS in that it enables you to mount file systems of a remote server and access them with regular Unix commands as if they were sitting on your hard disk. Coda has several advantages over NFS: support for disconnected operation (e.g. for laptops), read/write server replication, security model for authentication and encryption, persistent client caches and write back caching. If you say Y here, your Linux box will be able to act as a Coda *client*. You will need user level code as well, both for the client and server. Servers are currently user level, i.e. they need no kernel support. Please read and check out the Coda home page . To compile the coda client support as a module, choose M here: the module will be called coda. config CIFS tristate "CIFS support (advanced network filesystem, SMBFS successor)" depends on INET select NLS select CRYPTO select CRYPTO_MD4 select CRYPTO_MD5 select CRYPTO_HMAC select CRYPTO_ARC4 help This is the client VFS module for the Common Internet File System (CIFS) protocol which is the successor to the Server Message Block (SMB) protocol, the native file sharing mechanism for most early PC operating systems. The CIFS protocol is fully supported by file servers such as Windows 2000 (including Windows 2003, NT 4 and Windows XP) as well by Samba (which provides excellent CIFS server support for Linux and many other operating systems). Limited support for OS/2 and Windows ME and similar servers is provided as well. The cifs module provides an advanced network file system client for mounting to CIFS compliant servers. It includes support for DFS (hierarchical name space), secure per-user session establishment via Kerberos or NTLM or NTLMv2, safe distributed caching (oplock), optional packet signing, Unicode and other internationalization improvements. If you need to mount to Samba or Windows from this machine, say Y. config CIFS_STATS bool "CIFS statistics" depends on CIFS help Enabling this option will cause statistics for each server share mounted by the cifs client to be displayed in /proc/fs/cifs/Stats config CIFS_STATS2 bool "Extended statistics" depends on CIFS_STATS help Enabling this option will allow more detailed statistics on SMB request timing to be displayed in /proc/fs/cifs/DebugData and also allow optional logging of slow responses to dmesg (depending on the value of /proc/fs/cifs/cifsFYI, see fs/cifs/README for more details). These additional statistics may have a minor effect on performance and memory utilization. Unless you are a developer or are doing network performance analysis or tuning, say N. config CIFS_WEAK_PW_HASH bool "Support legacy servers which use weaker LANMAN security" depends on CIFS help Modern CIFS servers including Samba and most Windows versions (since 1997) support stronger NTLM (and even NTLMv2 and Kerberos) security mechanisms. These hash the password more securely than the mechanisms used in the older LANMAN version of the SMB protocol but LANMAN based authentication is needed to establish sessions with some old SMB servers. Enabling this option allows the cifs module to mount to older LANMAN based servers such as OS/2 and Windows 95, but such mounts may be less secure than mounts using NTLM or more recent security mechanisms if you are on a public network. Unless you have a need to access old SMB servers (and are on a private network) you probably want to say N. Even if this support is enabled in the kernel build, LANMAN authentication will not be used automatically. At runtime LANMAN mounts are disabled but can be set to required (or optional) either in /proc/fs/cifs (see fs/cifs/README for more detail) or via an option on the mount command. This support is disabled by default in order to reduce the possibility of a downgrade attack. If unsure, say N. config CIFS_UPCALL bool "Kerberos/SPNEGO advanced session setup" depends on CIFS && KEYS select DNS_RESOLVER help Enables an upcall mechanism for CIFS which accesses userspace helper utilities to provide SPNEGO packaged (RFC 4178) Kerberos tickets which are needed to mount to certain secure servers (for which more secure Kerberos authentication is required). If unsure, say N. config CIFS_XATTR bool "CIFS extended attributes" depends on CIFS help Extended attributes are name:value pairs associated with inodes by the kernel or by users (see the attr(5) manual page, or visit for details). CIFS maps the name of extended attributes beginning with the user namespace prefix to SMB/CIFS EAs. EAs are stored on Windows servers without the user namespace prefix, but their names are seen by Linux cifs clients prefaced by the user namespace prefix. The system namespace (used by some filesystems to store ACLs) is not supported at this time. If unsure, say N. config CIFS_POSIX bool "CIFS POSIX Extensions" depends on CIFS_XATTR help Enabling this option will cause the cifs client to attempt to negotiate a newer dialect with servers, such as Samba 3.0.5 or later, that optionally can handle more POSIX like (rather than Windows like) file behavior. It also enables support for POSIX ACLs (getfacl and setfacl) to servers (such as Samba 3.10 and later) which can negotiate CIFS POSIX ACL support. If unsure, say N. config CIFS_DEBUG2 bool "Enable additional CIFS debugging routines" depends on CIFS help Enabling this option adds a few more debugging routines to the cifs code which slightly increases the size of the cifs module and can cause additional logging of debug messages in some error paths, slowing performance. This option can be turned off unless you are debugging cifs problems. If unsure, say N. config CIFS_DFS_UPCALL bool "DFS feature support" depends on CIFS && KEYS select DNS_RESOLVER help Distributed File System (DFS) support is used to access shares transparently in an enterprise name space, even if the share moves to a different server. This feature also enables an upcall mechanism for CIFS which contacts userspace helper utilities to provide server name resolution (host names to IP addresses) which is needed for implicit mounts of DFS junction points. If unsure, say N. config CIFS_FSCACHE bool "Provide CIFS client caching support (EXPERIMENTAL)" depends on EXPERIMENTAL depends on CIFS=m && FSCACHE || CIFS=y && FSCACHE=y help Makes CIFS FS-Cache capable. Say Y here if you want your CIFS data to be cached locally on disk through the general filesystem cache manager. If unsure, say N. config CIFS_ACL bool "Provide CIFS ACL support (EXPERIMENTAL)" depends on EXPERIMENTAL && CIFS_XATTR help Allows to fetch CIFS/NTFS ACL from the server. The DACL blob is handed over to the application/caller. config CIFS_EXPERIMENTAL bool "CIFS Experimental Features (EXPERIMENTAL)" depends on CIFS && EXPERIMENTAL help Enables cifs features under testing. These features are experimental and currently include DFS support and directory change notification ie fcntl(F_DNOTIFY), as well as the upcall mechanism which will be used for Kerberos session negotiation and uid remapping. Some of these features also may depend on setting a value of 1 to the pseudo-file /proc/fs/cifs/Experimental (which is disabled by default). See the file fs/cifs/README for more details. If unsure, say N. # # NCP Filesystem configuration # config NCP_FS tristate "NCP file system support (to mount NetWare volumes)" depends on IPX!=n || INET help NCP (NetWare Core Protocol) is a protocol that runs over IPX and is used by Novell NetWare clients to talk to file servers. It is to IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you to mount NetWare file server volumes and to access them just like any other Unix directory. For details, please read the file in the kernel source and the IPX-HOWTO from . You do not have to say Y here if you want your Linux box to act as a file *server* for Novell NetWare clients. General information about how to connect Linux, Windows machines and Macs is on the WWW at . To compile this as a module, choose M here: the module will be called ncpfs. Say N unless you are connected to a Novell network. config NCPFS_PACKET_SIGNING bool "Packet signatures" depends on NCP_FS help NCP allows packets to be signed for stronger security. If you want security, say Y. Normal users can leave it off. To be able to use packet signing you must use ncpfs > 2.0.12. config NCPFS_IOCTL_LOCKING bool "Proprietary file locking" depends on NCP_FS help Allows locking of records on remote volumes. Say N unless you have special applications which are able to utilize this locking scheme. config NCPFS_STRONG bool "Clear remove/delete inhibit when needed" depends on NCP_FS help Allows manipulation of files flagged as Delete or Rename Inhibit. To use this feature you must mount volumes with the ncpmount parameter "-s" (ncpfs-2.0.12 and newer). Say Y unless you are not mounting volumes with -f 444. config NCPFS_NFS_NS bool "Use NFS namespace if available" depends on NCP_FS help Allows you to utilize NFS namespace on NetWare servers. It brings you case sensitive filenames. Say Y. You can disable it at mount-time with the `-N nfs' parameter of ncpmount. config NCPFS_OS2_NS bool "Use LONG (OS/2) namespace if available" depends on NCP_FS help Allows you to utilize OS2/LONG namespace on NetWare servers. Filenames in this namespace are limited to 255 characters, they are case insensitive, and case in names is preserved. Say Y. You can disable it at mount time with the -N os2 parameter of ncpmount. config NCPFS_SMALLDOS bool "Lowercase DOS filenames" depends on NCP_FS ---help--- If you say Y here, every filename on a NetWare server volume using the OS2/LONG namespace and created under DOS or on a volume using DOS namespace will be converted to lowercase characters. Saying N here will give you these filenames in uppercase. This is only a cosmetic option since the OS2/LONG namespace is case insensitive. The only major reason for this option is backward compatibility when moving from DOS to OS2/LONG namespace support. Long filenames (created by Win95) will not be affected. This option does not solve the problem that filenames appear differently under Linux and under Windows, since Windows does an additional conversions on the client side. You can achieve similar effects by saying Y to "Allow using of Native Language Support" below. config NCPFS_NLS bool "Use Native Language Support" depends on NCP_FS select NLS help Allows you to use codepages and I/O charsets for file name translation between the server file system and input/output. This may be useful, if you want to access the server with other operating systems, e.g. Windows 95. See also NLS for more Information. To select codepages and I/O charsets use ncpfs-2.2.0.13 or newer. config NCPFS_EXTRAS bool "Enable symbolic links and execute flags" depends on NCP_FS help This enables the use of symbolic links and an execute permission bit on NCPFS. The file server need not have long name space or NFS name space loaded for these to work. To use the new attributes, it is recommended to use the flags '-f 600 -d 755' on the ncpmount command line. config SYSV_FS tristate "System V/Xenix/V7/Coherent file system support" depends on BLOCK help SCO, Xenix and Coherent are commercial Unix systems for Intel machines, and Version 7 was used on the DEC PDP-11. Saying Y here would allow you to read from their floppies and hard disk partitions. If you have floppies or hard disk partitions like that, it is likely that they contain binaries from those other Unix systems; in order to run these binaries, you will want to install linux-abi which is a set of kernel modules that lets you run SCO, Xenix, Wyse, UnixWare, Dell Unix and System V programs under Linux. It is available via FTP (user: ftp) from ). NOTE: that will work only for binaries from Intel-based systems; PDP ones will have to wait until somebody ports Linux to -11 ;-) If you only intend to mount files from some other Unix over the network using NFS, you don't need the System V file system support (but you need NFS file system support obviously). Note that this option is generally not needed for floppies, since a good portable way to transport files and directories between unixes (and even other operating systems) is given by the tar program ("man tar" or preferably "info tar"). Note also that this option has nothing whatsoever to do with the option "System V IPC". Read about the System V file system in . Saying Y here will enlarge your kernel by about 27 KB. To compile this as a module, choose M here: the module will be called sysv. If you haven't heard about all of this before, it's safe to say N. config AFFS_FS tristate "Amiga FFS file system support (EXPERIMENTAL)" depends on BLOCK && EXPERIMENTAL help The Fast File System (FFS) is the common file system used on hard disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20). Say Y if you want to be able to read and write files from and to an Amiga FFS partition on your hard drive. Amiga floppies however cannot be read with this driver due to an incompatibility of the floppy controller used in an Amiga and the standard floppy controller in PCs and workstations. Read and . With this driver you can also mount disk files used by Bernd Schmidt's Un*X Amiga Emulator (). If you want to do this, you will also need to say Y or M to "Loop device support", above. To compile this file system support as a module, choose M here: the module will be called affs. If unsure, say N. config OMFS_FS tristate "SonicBlue Optimized MPEG File System support" depends on BLOCK select CRC_ITU_T help This is the proprietary file system used by the Rio Karma music player and ReplayTV DVR. Despite the name, this filesystem is not more efficient than a standard FS for MPEG files, in fact likely the opposite is true. Say Y if you have either of these devices and wish to mount its disk. To compile this file system support as a module, choose M here: the module will be called omfs. If unsure, say N. config ECRYPT_FS tristate "eCrypt filesystem layer support (EXPERIMENTAL)" depends on EXPERIMENTAL && KEYS && CRYPTO select CRYPTO_ECB select CRYPTO_CBC select CRYPTO_MD5 help Encrypted filesystem that operates on the VFS layer. See to learn more about eCryptfs. Userspace components are required and can be obtained from . To compile this file system support as a module, choose M here: the module will be called ecryptfs. config ADFS_FS tristate "ADFS file system support (EXPERIMENTAL)" depends on BLOCK && EXPERIMENTAL help The Acorn Disc Filing System is the standard file system of the RiscOS operating system which runs on Acorn's ARM-based Risc PC systems and the Acorn Archimedes range of machines. If you say Y here, Linux will be able to read from ADFS partitions on hard drives and from ADFS-formatted floppy discs. If you also want to be able to write to those devices, say Y to "ADFS write support" below. The ADFS partition should be the first partition (i.e., /dev/[hs]d?1) on each of your drives. Please read the file for further details. To compile this code as a module, choose M here: the module will be called adfs. If unsure, say N. config ADFS_FS_RW bool "ADFS write support (DANGEROUS)" depends on ADFS_FS help If you say Y here, you will be able to write to ADFS partitions on hard drives and ADFS-formatted floppy disks. This is experimental codes, so if you're unsure, say N. config CACHEFILES tristate "Filesystem caching on files" depends on FSCACHE && BLOCK help This permits use of a mounted filesystem as a cache for other filesystems - primarily networking filesystems - thus allowing fast local disk to enhance the speed of slower devices. See Documentation/filesystems/caching/cachefiles.txt for more information. config CACHEFILES_DEBUG bool "Debug CacheFiles" depends on CACHEFILES help This permits debugging to be dynamically enabled in the filesystem caching on files module. If this is set, the debugging output may be enabled by setting bits in /sys/modules/cachefiles/parameter/debug or by including a debugging specifier in /etc/cachefilesd.conf. config CACHEFILES_HISTOGRAM bool "Gather latency information on CacheFiles" depends on CACHEFILES && PROC_FS help This option causes latency information to be gathered on CacheFiles operation and exported through file: /proc/fs/cachefiles/histogram The generation of this histogram adds a certain amount of overhead to execution as there are a number of points at which data is gathered, and on a multi-CPU system these may be on cachelines that keep bouncing between CPUs. On the other hand, the histogram may be useful for debugging purposes. Saying 'N' here is recommended. See Documentation/filesystems/caching/cachefiles.txt for more information. config 9P_FS tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)" depends on INET && NET_9P && EXPERIMENTAL help If you say Y here, you will get experimental support for Plan 9 resource sharing via the 9P2000 protocol. See for more information. If unsure, say N. if 9P_FS config 9P_FSCACHE bool "Enable 9P client caching support (EXPERIMENTAL)" depends on EXPERIMENTAL depends on 9P_FS=m && FSCACHE || 9P_FS=y && FSCACHE=y help Choose Y here to enable persistent, read-only local caching support for 9p clients using FS-Cache config 9P_FS_POSIX_ACL bool "9P POSIX Access Control Lists" select FS_POSIX_ACL help POSIX Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the POSIX ACLs for Linux website . If you don't know what Access Control Lists are, say N endif config XFS_FS tristate "XFS filesystem support" depends on BLOCK select EXPORTFS help XFS is a high performance journaling filesystem which originated on the SGI IRIX platform. It is completely multi-threaded, can support large files and large filesystems, extended attributes, variable block sizes, is extent based, and makes extensive use of Btrees (directories, extents, free space) to aid both performance and scalability. Refer to the documentation at for complete details. This implementation is on-disk compatible with the IRIX version of XFS. To compile this file system support as a module, choose M here: the module will be called xfs. Be aware, however, that if the file system of your root partition is compiled as a module, you'll need to use an initial ramdisk (initrd) to boot. config XFS_QUOTA bool "XFS Quota support" depends on XFS_FS select QUOTACTL help If you say Y here, you will be able to set limits for disk usage on a per user and/or a per group basis under XFS. XFS considers quota information as filesystem metadata and uses journaling to provide a higher level guarantee of consistency. The on-disk data format for quota is also compatible with the IRIX version of XFS, allowing a filesystem to be migrated between Linux and IRIX without any need for conversion. If unsure, say N. More comprehensive documentation can be found in README.quota in the xfsprogs package. XFS quota can be used either with or without the generic quota support enabled (CONFIG_QUOTA) - they are completely independent subsystems. config XFS_POSIX_ACL bool "XFS POSIX ACL support" depends on XFS_FS select FS_POSIX_ACL help POSIX Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the POSIX ACLs for Linux website . If you don't know what Access Control Lists are, say N. config XFS_RT bool "XFS Realtime subvolume support" depends on XFS_FS help If you say Y here you will be able to mount and use XFS filesystems which contain a realtime subvolume. The realtime subvolume is a separate area of disk space where only file data is stored. It was originally designed to provide deterministic data rates suitable for media streaming applications, but is also useful as a generic mechanism for ensuring data and metadata/log I/Os are completely separated. Regular file I/Os are isolated to a separate device from all other requests, and this can be done quite transparently to applications via the inherit-realtime directory inode flag. See the xfs man page in section 5 for additional information. If unsure, say N. config XFS_DEBUG bool "XFS Debugging support (EXPERIMENTAL)" depends on XFS_FS && EXPERIMENTAL help Say Y here to get an XFS build with many debugging features, including ASSERT checks, function wrappers around macros, and extra sanity-checking functions in various code paths. Note that the resulting code will be HUGE and SLOW, and probably not useful unless you are debugging a particular problem. Say N unless you are an XFS developer, or you play one on TV. config HPFS_FS tristate "OS/2 HPFS file system support" depends on BLOCK help OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS is the file system used for organizing files on OS/2 hard disk partitions. Say Y if you want to be able to read files from and write files to an OS/2 HPFS partition on your hard drive. OS/2 floppies however are in regular MSDOS format, so you don't need this option in order to be able to read them. Read . To compile this file system support as a module, choose M here: the module will be called hpfs. If unsure, say N. config JFFS2_FS tristate "Journalling Flash File System v2 (JFFS2) support" select CRC32 depends on MTD help JFFS2 is the second generation of the Journalling Flash File System for use on diskless embedded devices. It provides improved wear levelling, compression and support for hard links. You cannot use this on normal block devices, only on 'MTD' devices. Further information on the design and implementation of JFFS2 is available at . config JFFS2_FS_DEBUG int "JFFS2 debugging verbosity (0 = quiet, 2 = noisy)" depends on JFFS2_FS default "0" help This controls the amount of debugging messages produced by the JFFS2 code. Set it to zero for use in production systems. For evaluation, testing and debugging, it's advisable to set it to one. This will enable a few assertions and will print debugging messages at the KERN_DEBUG loglevel, where they won't normally be visible. Level 2 is unlikely to be useful - it enables extra debugging in certain areas which at one point needed debugging, but when the bugs were located and fixed, the detailed messages were relegated to level 2. If reporting bugs, please try to have available a full dump of the messages at debug level 1 while the misbehaviour was occurring. config JFFS2_FS_WRITEBUFFER bool "JFFS2 write-buffering support" depends on JFFS2_FS default y help This enables the write-buffering support in JFFS2. This functionality is required to support JFFS2 on the following types of flash devices: - NAND flash - NOR flash with transparent ECC - DataFlash config JFFS2_FS_WBUF_VERIFY bool "Verify JFFS2 write-buffer reads" depends on JFFS2_FS_WRITEBUFFER default n help This causes JFFS2 to read back every page written through the write-buffer, and check for errors. config JFFS2_SUMMARY bool "JFFS2 summary support (EXPERIMENTAL)" depends on JFFS2_FS && EXPERIMENTAL default n help This feature makes it possible to use summary information for faster filesystem mount. The summary information can be inserted into a filesystem image by the utility 'sumtool'. If unsure, say 'N'. config JFFS2_FS_XATTR bool "JFFS2 XATTR support (EXPERIMENTAL)" depends on JFFS2_FS && EXPERIMENTAL default n help Extended attributes are name:value pairs associated with inodes by the kernel or by users (see the attr(5) manual page, or visit for details). If unsure, say N. config JFFS2_FS_POSIX_ACL bool "JFFS2 POSIX Access Control Lists" depends on JFFS2_FS_XATTR default y select FS_POSIX_ACL help Posix Access Control Lists (ACLs) support permissions for users and groups beyond the owner/group/world scheme. To learn more about Access Control Lists, visit the Posix ACLs for Linux website . If you don't know what Access Control Lists are, say N config JFFS2_FS_SECURITY bool "JFFS2 Security Labels" depends on JFFS2_FS_XATTR default y help Security labels support alternative access control models implemented by security modules like SELinux. This option enables an extended attribute handler for file security labels in the jffs2 filesystem. If you are not using a security module that requires using extended attributes for file security labels, say N. config JFFS2_COMPRESSION_OPTIONS bool "Advanced compression options for JFFS2" depends on JFFS2_FS default n help Enabling this option allows you to explicitly choose which compression modules, if any, are enabled in JFFS2. Removing compressors can mean you cannot read existing file systems, and enabling experimental compressors can mean that you write a file system which cannot be read by a standard kernel. If unsure, you should _definitely_ say 'N'. config JFFS2_ZLIB bool "JFFS2 ZLIB compression support" if JFFS2_COMPRESSION_OPTIONS select ZLIB_INFLATE select ZLIB_DEFLATE depends on JFFS2_FS default y help Zlib is designed to be a free, general-purpose, legally unencumbered, lossless data-compression library for use on virtually any computer hardware and operating system. See for further information. Say 'Y' if unsure. config JFFS2_LZO bool "JFFS2 LZO compression support" if JFFS2_COMPRESSION_OPTIONS select LZO_COMPRESS select LZO_DECOMPRESS depends on JFFS2_FS default n help minilzo-based compression. Generally works better than Zlib. This feature was added in July, 2007. Say 'N' if you need compatibility with older bootloaders or kernels. config JFFS2_RTIME bool "JFFS2 RTIME compression support" if JFFS2_COMPRESSION_OPTIONS depends on JFFS2_FS default y help Rtime does manage to recompress already-compressed data. Say 'Y' if unsure. config JFFS2_RUBIN bool "JFFS2 RUBIN compression support" if JFFS2_COMPRESSION_OPTIONS depends on JFFS2_FS default n help RUBINMIPS and DYNRUBIN compressors. Say 'N' if unsure. choice prompt "JFFS2 default compression mode" if JFFS2_COMPRESSION_OPTIONS default JFFS2_CMODE_PRIORITY depends on JFFS2_FS help You can set here the default compression mode of JFFS2 from the available compression modes. Don't touch if unsure. config JFFS2_CMODE_NONE bool "no compression" help Uses no compression. config JFFS2_CMODE_PRIORITY bool "priority" help Tries the compressors in a predefined order and chooses the first successful one. config JFFS2_CMODE_SIZE bool "size (EXPERIMENTAL)" help Tries all compressors and chooses the one which has the smallest result. config JFFS2_CMODE_FAVOURLZO bool "Favour LZO" help Tries all compressors and chooses the one which has the smallest result but gives some preference to LZO (which has faster decompression) at the expense of size. endchoice menuconfig DLM tristate "Distributed Lock Manager (DLM)" depends on EXPERIMENTAL && INET depends on SYSFS && CONFIGFS_FS && (IPV6 || IPV6=n) select IP_SCTP help A general purpose distributed lock manager for kernel or userspace applications. config DLM_DEBUG bool "DLM debugging" depends on DLM help Under the debugfs mount point, the name of each lockspace will appear as a file in the "dlm" directory. The output is the list of resource and locks the local node knows about. config SYSFS bool "sysfs file system support" if EXPERT default y help The sysfs filesystem is a virtual filesystem that the kernel uses to export internal kernel objects, their attributes, and their relationships to one another. Users can use sysfs to ascertain useful information about the running kernel, such as the devices the kernel has discovered on each bus and which driver each is bound to. sysfs can also be used to tune devices and other kernel subsystems. Some system agents rely on the information in sysfs to operate. /sbin/hotplug uses device and object attributes in sysfs to assist in delegating policy decisions, like persistently naming devices. sysfs is currently used by the block subsystem to mount the root partition. If sysfs is disabled you must specify the boot device on the kernel boot command line via its major and minor numbers. For example, "root=03:01" for /dev/hda1. Designers of embedded systems may wish to say N here to conserve space. config BEFS_FS tristate "BeOS file system (BeFS) support (read only) (EXPERIMENTAL)" depends on BLOCK && EXPERIMENTAL select NLS help The BeOS File System (BeFS) is the native file system of Be, Inc's BeOS. Notable features include support for arbitrary attributes on files and directories, and database-like indices on selected attributes. (Also note that this driver doesn't make those features available at this time). It is a 64 bit filesystem, so it supports extremely large volumes and files. If you use this filesystem, you should also say Y to at least one of the NLS (native language support) options below. If you don't know what this is about, say N. To compile this as a module, choose M here: the module will be called befs. config BEFS_DEBUG bool "Debug BeFS" depends on BEFS_FS help If you say Y here, you can use the 'debug' mount option to enable debugging output from the driver. config HFS_FS tristate "Apple Macintosh file system support (EXPERIMENTAL)" depends on BLOCK && EXPERIMENTAL select NLS help If you say Y here, you will be able to mount Macintosh-formatted floppy disks and hard drive partitions with full read-write access. Please read to learn about the available mount options. To compile this file system support as a module, choose M here: the module will be called hfs. config AUTOFS4_FS tristate "Kernel automounter version 4 support (also supports v3)" help The automounter is a tool to automatically mount remote file systems on demand. This implementation is partially kernel-based to reduce overhead in the already-mounted case; this is unlike the BSD automounter (amd), which is a pure user space daemon. To use the automounter you need the user-space tools from ; you also want to answer Y to "NFS file system support", below. To compile this support as a module, choose M here: the module will be called autofs4. You will need to add "alias autofs autofs4" to your modules configuration file. If you are not a part of a fairly large, distributed network or don't have a laptop which needs to dynamically reconfigure to the local network, you probably do not need an automounter, and can say N here. # # Security configuration # menu "Security options" config KEYS bool "Enable access key retention support" help This option provides support for retaining authentication tokens and access keys in the kernel. It also includes provision of methods by which such keys might be associated with a process so that network filesystems, encryption support and the like can find them. Furthermore, a special type of key is available that acts as keyring: a searchable sequence of keys. Each process is equipped with access to five standard keyrings: UID-specific, GID-specific, session, process and thread. If you are unsure as to whether this is required, answer N. config TRUSTED_KEYS tristate "TRUSTED KEYS" depends on KEYS && TCG_TPM select CRYPTO select CRYPTO_HMAC select CRYPTO_SHA1 help This option provides support for creating, sealing, and unsealing keys in the kernel. Trusted keys are random number symmetric keys, generated and RSA-sealed by the TPM. The TPM only unseals the keys, if the boot PCRs and other criteria match. Userspace will only ever see encrypted blobs. If you are unsure as to whether this is required, answer N. config ENCRYPTED_KEYS tristate "ENCRYPTED KEYS" depends on KEYS && TRUSTED_KEYS select CRYPTO_AES select CRYPTO_CBC select CRYPTO_SHA256 select CRYPTO_RNG help This option provides support for create/encrypting/decrypting keys in the kernel. Encrypted keys are kernel generated random numbers, which are encrypted/decrypted with a 'master' symmetric key. The 'master' key can be either a trusted-key or user-key type. Userspace only ever sees/stores encrypted blobs. If you are unsure as to whether this is required, answer N. config KEYS_DEBUG_PROC_KEYS bool "Enable the /proc/keys file by which keys may be viewed" depends on KEYS help This option turns on support for the /proc/keys file - through which can be listed all the keys on the system that are viewable by the reading process. The only keys included in the list are those that grant View permission to the reading process whether or not it possesses them. Note that LSM security checks are still performed, and may further filter out keys that the current process is not authorised to view. Only key attributes are listed here; key payloads are not included in the resulting table. If you are unsure as to whether this is required, answer N. config SECURITY_DMESG_RESTRICT bool "Restrict unprivileged access to the kernel syslog" default n help This enforces restrictions on unprivileged users reading the kernel syslog via dmesg(8). If this option is not selected, no restrictions will be enforced unless the dmesg_restrict sysctl is explicitly set to (1). If you are unsure how to answer this question, answer N. config SECURITY bool "Enable different security models" depends on SYSFS help This allows you to choose different security modules to be configured into your kernel. If this option is not selected, the default Linux security model will be used. If you are unsure how to answer this question, answer N. config SECURITYFS bool "Enable the securityfs filesystem" help This will build the securityfs filesystem. It is currently used by the TPM bios character driver and IMA, an integrity provider. It is not used by SELinux or SMACK. If you are unsure how to answer this question, answer N. config SECURITY_NETWORK bool "Socket and Networking Security Hooks" depends on SECURITY help This enables the socket and networking security hooks. If enabled, a security module can use these hooks to implement socket and networking access controls. If you are unsure how to answer this question, answer N. config SECURITY_NETWORK_XFRM bool "XFRM (IPSec) Networking Security Hooks" depends on XFRM && SECURITY_NETWORK help This enables the XFRM (IPSec) networking security hooks. If enabled, a security module can use these hooks to implement per-packet access controls based on labels derived from IPSec policy. Non-IPSec communications are designated as unlabelled, and only sockets authorized to communicate unlabelled data can send without using IPSec. If you are unsure how to answer this question, answer N. config SECURITY_PATH bool "Security hooks for pathname based access control" depends on SECURITY help This enables the security hooks for pathname based access control. If enabled, a security module can use these hooks to implement pathname based access controls. If you are unsure how to answer this question, answer N. config INTEL_TXT bool "Enable Intel(R) Trusted Execution Technology (Intel(R) TXT)" depends on HAVE_INTEL_TXT help This option enables support for booting the kernel with the Trusted Boot (tboot) module. This will utilize Intel(R) Trusted Execution Technology to perform a measured launch of the kernel. If the system does not support Intel(R) TXT, this will have no effect. Intel TXT will provide higher assurance of system configuration and initial state as well as data reset protection. This is used to create a robust initial kernel measurement and verification, which helps to ensure that kernel security mechanisms are functioning correctly. This level of protection requires a root of trust outside of the kernel itself. Intel TXT also helps solve real end user concerns about having confidence that their hardware is running the VMM or kernel that it was configured with, especially since they may be responsible for providing such assurances to VMs and services running on it. See for more information about Intel(R) TXT. See for more information about tboot. See Documentation/intel_txt.txt for a description of how to enable Intel TXT support in a kernel boot. If you are unsure as to whether this is required, answer N. config LSM_MMAP_MIN_ADDR int "Low address space for LSM to protect from user allocation" depends on SECURITY && SECURITY_SELINUX default 65536 help This is the portion of low virtual memory which should be protected from userspace allocation. Keeping a user from writing to low pages can help reduce the impact of kernel NULL pointer bugs. For most ia64, ppc64 and x86 users with lots of address space a value of 65536 is reasonable and should cause no problems. On arm and other archs it should not be higher than 32768. Programs which use vm86 functionality or have some need to map this low address space will need the permission specific to the systems running LSM. source security/selinux/Kconfig source security/smack/Kconfig source security/tomoyo/Kconfig source security/apparmor/Kconfig source security/integrity/ima/Kconfig choice prompt "Default security module" default DEFAULT_SECURITY_SELINUX if SECURITY_SELINUX default DEFAULT_SECURITY_SMACK if SECURITY_SMACK default DEFAULT_SECURITY_TOMOYO if SECURITY_TOMOYO default DEFAULT_SECURITY_APPARMOR if SECURITY_APPARMOR default DEFAULT_SECURITY_DAC help Select the security module that will be used by default if the kernel parameter security= is not specified. config DEFAULT_SECURITY_SELINUX bool "SELinux" if SECURITY_SELINUX=y config DEFAULT_SECURITY_SMACK bool "Simplified Mandatory Access Control" if SECURITY_SMACK=y config DEFAULT_SECURITY_TOMOYO bool "TOMOYO" if SECURITY_TOMOYO=y config DEFAULT_SECURITY_APPARMOR bool "AppArmor" if SECURITY_APPARMOR=y config DEFAULT_SECURITY_DAC bool "Unix Discretionary Access Controls" endchoice config DEFAULT_SECURITY string default "selinux" if DEFAULT_SECURITY_SELINUX default "smack" if DEFAULT_SECURITY_SMACK default "tomoyo" if DEFAULT_SECURITY_TOMOYO default "apparmor" if DEFAULT_SECURITY_APPARMOR default "" if DEFAULT_SECURITY_DAC endmenu config SECURITY_SMACK bool "Simplified Mandatory Access Control Kernel Support" depends on NETLABEL && SECURITY_NETWORK default n help This selects the Simplified Mandatory Access Control Kernel. Smack is useful for sensitivity, integrity, and a variety of other mandatory security schemes. If you are unsure how to answer this question, answer N. config SECURITY_SELINUX bool "NSA SELinux Support" depends on SECURITY_NETWORK && AUDIT && NET && INET select NETWORK_SECMARK default n help This selects NSA Security-Enhanced Linux (SELinux). You will also need a policy configuration and a labeled filesystem. If you are unsure how to answer this question, answer N. config SECURITY_SELINUX_BOOTPARAM bool "NSA SELinux boot parameter" depends on SECURITY_SELINUX default n help This option adds a kernel parameter 'selinux', which allows SELinux to be disabled at boot. If this option is selected, SELinux functionality can be disabled with selinux=0 on the kernel command line. The purpose of this option is to allow a single kernel image to be distributed with SELinux built in, but not necessarily enabled. If you are unsure how to answer this question, answer N. config SECURITY_SELINUX_BOOTPARAM_VALUE int "NSA SELinux boot parameter default value" depends on SECURITY_SELINUX_BOOTPARAM range 0 1 default 1 help This option sets the default value for the kernel parameter 'selinux', which allows SELinux to be disabled at boot. If this option is set to 0 (zero), the SELinux kernel parameter will default to 0, disabling SELinux at bootup. If this option is set to 1 (one), the SELinux kernel parameter will default to 1, enabling SELinux at bootup. If you are unsure how to answer this question, answer 1. config SECURITY_SELINUX_DISABLE bool "NSA SELinux runtime disable" depends on SECURITY_SELINUX default n help This option enables writing to a selinuxfs node 'disable', which allows SELinux to be disabled at runtime prior to the policy load. SELinux will then remain disabled until the next boot. This option is similar to the selinux=0 boot parameter, but is to support runtime disabling of SELinux, e.g. from /sbin/init, for portability across platforms where boot parameters are difficult to employ. If you are unsure how to answer this question, answer N. config SECURITY_SELINUX_DEVELOP bool "NSA SELinux Development Support" depends on SECURITY_SELINUX default y help This enables the development support option of NSA SELinux, which is useful for experimenting with SELinux and developing policies. If unsure, say Y. With this option enabled, the kernel will start in permissive mode (log everything, deny nothing) unless you specify enforcing=1 on the kernel command line. You can interactively toggle the kernel between enforcing mode and permissive mode (if permitted by the policy) via /selinux/enforce. config SECURITY_SELINUX_AVC_STATS bool "NSA SELinux AVC Statistics" depends on SECURITY_SELINUX default y help This option collects access vector cache statistics to /selinux/avc/cache_stats, which may be monitored via tools such as avcstat. config SECURITY_SELINUX_CHECKREQPROT_VALUE int "NSA SELinux checkreqprot default value" depends on SECURITY_SELINUX range 0 1 default 1 help This option sets the default value for the 'checkreqprot' flag that determines whether SELinux checks the protection requested by the application or the protection that will be applied by the kernel (including any implied execute for read-implies-exec) for mmap and mprotect calls. If this option is set to 0 (zero), SELinux will default to checking the protection that will be applied by the kernel. If this option is set to 1 (one), SELinux will default to checking the protection requested by the application. The checkreqprot flag may be changed from the default via the 'checkreqprot=' boot parameter. It may also be changed at runtime via /selinux/checkreqprot if authorized by policy. If you are unsure how to answer this question, answer 1. config SECURITY_SELINUX_POLICYDB_VERSION_MAX bool "NSA SELinux maximum supported policy format version" depends on SECURITY_SELINUX default n help This option enables the maximum policy format version supported by SELinux to be set to a particular value. This value is reported to userspace via /selinux/policyvers and used at policy load time. It can be adjusted downward to support legacy userland (init) that does not correctly handle kernels that support newer policy versions. Examples: For the Fedora Core 3 or 4 Linux distributions, enable this option and set the value via the next option. For Fedora Core 5 and later, do not enable this option. If you are unsure how to answer this question, answer N. config SECURITY_SELINUX_POLICYDB_VERSION_MAX_VALUE int "NSA SELinux maximum supported policy format version value" depends on SECURITY_SELINUX_POLICYDB_VERSION_MAX range 15 23 default 19 help This option sets the value for the maximum policy format version supported by SELinux. Examples: For Fedora Core 3, use 18. For Fedora Core 4, use 19. If you are unsure how to answer this question, look for the policy format version supported by your policy toolchain, by running 'checkpolicy -V'. Or look at what policy you have installed under /etc/selinux/$SELINUXTYPE/policy, where SELINUXTYPE is defined in your /etc/selinux/config. config SECURITY_APPARMOR bool "AppArmor support" depends on SECURITY && NET select AUDIT select SECURITY_PATH select SECURITYFS select SECURITY_NETWORK default n help This enables the AppArmor security module. Required userspace tools (if they are not included in your distribution) and further information may be found at http://apparmor.wiki.kernel.org If you are unsure how to answer this question, answer N. config SECURITY_APPARMOR_BOOTPARAM_VALUE int "AppArmor boot parameter default value" depends on SECURITY_APPARMOR range 0 1 default 1 help This option sets the default value for the kernel parameter 'apparmor', which allows AppArmor to be enabled or disabled at boot. If this option is set to 0 (zero), the AppArmor kernel parameter will default to 0, disabling AppArmor at boot. If this option is set to 1 (one), the AppArmor kernel parameter will default to 1, enabling AppArmor at boot. If you are unsure how to answer this question, answer 1. # IBM Integrity Measurement Architecture # config IMA bool "Integrity Measurement Architecture(IMA)" depends on SECURITY select SECURITYFS select CRYPTO select CRYPTO_HMAC select CRYPTO_MD5 select CRYPTO_SHA1 select TCG_TPM if !S390 select TCG_TIS if TCG_TPM help The Trusted Computing Group(TCG) runtime Integrity Measurement Architecture(IMA) maintains a list of hash values of executables and other sensitive system files, as they are read or executed. If an attacker manages to change the contents of an important system file being measured, we can tell. If your system has a TPM chip, then IMA also maintains an aggregate integrity value over this list inside the TPM hardware, so that the TPM can prove to a third party whether or not critical system files have been modified. Read to learn more about IMA. If unsure, say N. config IMA_MEASURE_PCR_IDX int depends on IMA range 8 14 default 10 help IMA_MEASURE_PCR_IDX determines the TPM PCR register index that IMA uses to maintain the integrity aggregate of the measurement list. If unsure, use the default 10. config IMA_AUDIT bool depends on IMA default y help This option adds a kernel parameter 'ima_audit', which allows informational auditing messages to be enabled at boot. If this option is selected, informational integrity auditing messages can be enabled with 'ima_audit=1' on the kernel command line. config IMA_LSM_RULES bool depends on IMA && AUDIT && (SECURITY_SELINUX || SECURITY_SMACK) default y help Disabling this option will disregard LSM based policy rules. config SECURITY_TOMOYO bool "TOMOYO Linux Support" depends on SECURITY select SECURITYFS select SECURITY_PATH default n help This selects TOMOYO Linux, pathname-based access control. Required userspace tools and further information may be found at . If you are unsure how to answer this question, answer N. config ARCH string option env="ARCH" config KERNELVERSION string option env="KERNELVERSION" config DEFCONFIG_LIST string depends on !UML option defconfig_list default "/lib/modules/$UNAME_RELEASE/.config" default "/etc/kernel-config" default "/boot/config-$UNAME_RELEASE" default "$ARCH_DEFCONFIG" default "arch/$ARCH/defconfig" config CONSTRUCTORS bool depends on !UML default y config HAVE_IRQ_WORK bool config IRQ_WORK bool depends on HAVE_IRQ_WORK menu "General setup" config EXPERIMENTAL bool "Prompt for development and/or incomplete code/drivers" ---help--- Some of the various things that Linux supports (such as network drivers, file systems, network protocols, etc.) can be in a state of development where the functionality, stability, or the level of testing is not yet high enough for general use. This is usually known as the "alpha-test" phase among developers. If a feature is currently in alpha-test, then the developers usually discourage uninformed widespread use of this feature by the general public to avoid "Why doesn't this work?" type mail messages. However, active testing and use of these systems is welcomed. Just be aware that it may not meet the normal level of reliability or it may fail to work in some special cases. Detailed bug reports from people familiar with the kernel internals are usually welcomed by the developers (before submitting bug reports, please read the documents , , , , and in the kernel source). This option will also make obsoleted drivers available. These are drivers that have been replaced by something else, and/or are scheduled to be removed in a future kernel release. Unless you intend to help test and develop a feature or driver that falls into this category, or you have a situation that requires using these features, you should probably say N here, which will cause the configurator to present you with fewer choices. If you say Y here, you will be offered the choice of using features or drivers that are currently considered to be in the alpha-test phase. config BROKEN bool config BROKEN_ON_SMP bool depends on BROKEN || !SMP default y config INIT_ENV_ARG_LIMIT int default 32 if !UML default 128 if UML help Maximum of each of the number of arguments and environment variables passed to init from the kernel command line. config CROSS_COMPILE string "Cross-compiler tool prefix" help Same as running 'make CROSS_COMPILE=prefix-' but stored for default make runs in this kernel build directory. You don't need to set this unless you want the configured kernel build directory to select the cross-compiler automatically. config LOCALVERSION string "Local version - append to kernel release" help Append an extra string to the end of your kernel version. This will show up when you type uname, for example. The string you set here will be appended after the contents of any files with a filename matching localversion* in your object and source tree, in that order. Your total string can be a maximum of 64 characters. config LOCALVERSION_AUTO bool "Automatically append version information to the version string" default y help This will try to automatically determine if the current tree is a release tree by looking for git tags that belong to the current top of tree revision. A string of the format -gxxxxxxxx will be added to the localversion if a git-based tree is found. The string generated by this will be appended after any matching localversion* files, and after the value set in CONFIG_LOCALVERSION. (The actual string used here is the first eight characters produced by running the command: $ git rev-parse --verify HEAD which is done within the script "scripts/setlocalversion".) config HAVE_KERNEL_GZIP bool config HAVE_KERNEL_BZIP2 bool config HAVE_KERNEL_LZMA bool config HAVE_KERNEL_XZ bool config HAVE_KERNEL_LZO bool choice prompt "Kernel compression mode" default KERNEL_GZIP depends on HAVE_KERNEL_GZIP || HAVE_KERNEL_BZIP2 || HAVE_KERNEL_LZMA || HAVE_KERNEL_XZ || HAVE_KERNEL_LZO help The linux kernel is a kind of self-extracting executable. Several compression algorithms are available, which differ in efficiency, compression and decompression speed. Compression speed is only relevant when building a kernel. Decompression speed is relevant at each boot. If you have any problems with bzip2 or lzma compressed kernels, mail me (Alain Knaff) . (An older version of this functionality (bzip2 only), for 2.4, was supplied by Christian Ludwig) High compression options are mostly useful for users, who are low on disk space (embedded systems), but for whom ram size matters less. If in doubt, select 'gzip' config KERNEL_GZIP bool "Gzip" depends on HAVE_KERNEL_GZIP help The old and tried gzip compression. It provides a good balance between compression ratio and decompression speed. config KERNEL_BZIP2 bool "Bzip2" depends on HAVE_KERNEL_BZIP2 help Its compression ratio and speed is intermediate. Decompression speed is slowest among the three. The kernel size is about 10% smaller with bzip2, in comparison to gzip. Bzip2 uses a large amount of memory. For modern kernels you will need at least 8MB RAM or more for booting. config KERNEL_LZMA bool "LZMA" depends on HAVE_KERNEL_LZMA help The most recent compression algorithm. Its ratio is best, decompression speed is between the other two. Compression is slowest. The kernel size is about 33% smaller with LZMA in comparison to gzip. config KERNEL_XZ bool "XZ" depends on HAVE_KERNEL_XZ help XZ uses the LZMA2 algorithm and instruction set specific BCJ filters which can improve compression ratio of executable code. The size of the kernel is about 30% smaller with XZ in comparison to gzip. On architectures for which there is a BCJ filter (i386, x86_64, ARM, IA-64, PowerPC, and SPARC), XZ will create a few percent smaller kernel than plain LZMA. The speed is about the same as with LZMA: The decompression speed of XZ is better than that of bzip2 but worse than gzip and LZO. Compression is slow. config KERNEL_LZO bool "LZO" depends on HAVE_KERNEL_LZO help Its compression ratio is the poorest among the 4. The kernel size is about 10% bigger than gzip; however its speed (both compression and decompression) is the fastest. endchoice config SWAP bool "Support for paging of anonymous memory (swap)" depends on MMU && BLOCK default y help This option allows you to choose whether you want to have support for so called swap devices or swap files in your kernel that are used to provide more virtual memory than the actual RAM present in your computer. If unsure say Y. config SYSVIPC bool "System V IPC" ---help--- Inter Process Communication is a suite of library functions and system calls which let processes (running programs) synchronize and exchange information. It is generally considered to be a good thing, and some programs won't run unless you say Y here. In particular, if you want to run the DOS emulator dosemu under Linux (read the DOSEMU-HOWTO, available from ), you'll need to say Y here. You can find documentation about IPC with "info ipc" and also in section 6.4 of the Linux Programmer's Guide, available from . config SYSVIPC_SYSCTL bool depends on SYSVIPC depends on SYSCTL default y config POSIX_MQUEUE bool "POSIX Message Queues" depends on NET && EXPERIMENTAL ---help--- POSIX variant of message queues is a part of IPC. In POSIX message queues every message has a priority which decides about succession of receiving it by a process. If you want to compile and run programs written e.g. for Solaris with use of its POSIX message queues (functions mq_*) say Y here. POSIX message queues are visible as a filesystem called 'mqueue' and can be mounted somewhere if you want to do filesystem operations on message queues. If unsure, say Y. config POSIX_MQUEUE_SYSCTL bool depends on POSIX_MQUEUE depends on SYSCTL default y config BSD_PROCESS_ACCT bool "BSD Process Accounting" help If you say Y here, a user level program will be able to instruct the kernel (via a special system call) to write process accounting information to a file: whenever a process exits, information about that process will be appended to the file by the kernel. The information includes things such as creation time, owning user, command name, memory usage, controlling terminal etc. (the complete list is in the struct acct in ). It is up to the user level program to do useful things with this information. This is generally a good idea, so say Y. config BSD_PROCESS_ACCT_V3 bool "BSD Process Accounting version 3 file format" depends on BSD_PROCESS_ACCT default n help If you say Y here, the process accounting information is written in a new file format that also logs the process IDs of each process and it's parent. Note that this file format is incompatible with previous v0/v1/v2 file formats, so you will need updated tools for processing it. A preliminary version of these tools is available at . config FHANDLE bool "open by fhandle syscalls" select EXPORTFS help If you say Y here, a user level program will be able to map file names to handle and then later use the handle for different file system operations. This is useful in implementing userspace file servers, which now track files using handles instead of names. The handle would remain the same even if file names get renamed. Enables open_by_handle_at(2) and name_to_handle_at(2) syscalls. config TASKSTATS bool "Export task/process statistics through netlink (EXPERIMENTAL)" depends on NET default n help Export selected statistics for tasks/processes through the generic netlink interface. Unlike BSD process accounting, the statistics are available during the lifetime of tasks/processes as responses to commands. Like BSD accounting, they are sent to user space on task exit. Say N if unsure. config TASK_DELAY_ACCT bool "Enable per-task delay accounting (EXPERIMENTAL)" depends on TASKSTATS help Collect information on time spent by a task waiting for system resources like cpu, synchronous block I/O completion and swapping in pages. Such statistics can help in setting a task's priorities relative to other tasks for cpu, io, rss limits etc. Say N if unsure. config TASK_XACCT bool "Enable extended accounting over taskstats (EXPERIMENTAL)" depends on TASKSTATS help Collect extended task accounting data and send the data to userland for processing over the taskstats interface. Say N if unsure. config TASK_IO_ACCOUNTING bool "Enable per-task storage I/O accounting (EXPERIMENTAL)" depends on TASK_XACCT help Collect information on the number of bytes of storage I/O which this task has caused. Say N if unsure. config AUDIT bool "Auditing support" depends on NET help Enable auditing infrastructure that can be used with another kernel subsystem, such as SELinux (which requires this for logging of avc messages output). Does not do system-call auditing without CONFIG_AUDITSYSCALL. config AUDITSYSCALL bool "Enable system-call auditing support" depends on AUDIT && (X86 || PPC || S390 || IA64 || UML || SPARC64 || SUPERH) default y if SECURITY_SELINUX help Enable low-overhead system-call auditing infrastructure that can be used independently or with another kernel subsystem, such as SELinux. config AUDIT_WATCH def_bool y depends on AUDITSYSCALL select FSNOTIFY config AUDIT_TREE def_bool y depends on AUDITSYSCALL select FSNOTIFY source "kernel/irq/Kconfig" menu "RCU Subsystem" choice prompt "RCU Implementation" default TREE_RCU config TREE_RCU bool "Tree-based hierarchical RCU" depends on !PREEMPT && SMP help This option selects the RCU implementation that is designed for very large SMP system with hundreds or thousands of CPUs. It also scales down nicely to smaller systems. config TREE_PREEMPT_RCU bool "Preemptible tree-based hierarchical RCU" depends on PREEMPT help This option selects the RCU implementation that is designed for very large SMP systems with hundreds or thousands of CPUs, but for which real-time response is also required. It also scales down nicely to smaller systems. config TINY_RCU bool "UP-only small-memory-footprint RCU" depends on !SMP help This option selects the RCU implementation that is designed for UP systems from which real-time response is not required. This option greatly reduces the memory footprint of RCU. config TINY_PREEMPT_RCU bool "Preemptible UP-only small-memory-footprint RCU" depends on !SMP && PREEMPT help This option selects the RCU implementation that is designed for real-time UP systems. This option greatly reduces the memory footprint of RCU. endchoice config PREEMPT_RCU def_bool ( TREE_PREEMPT_RCU || TINY_PREEMPT_RCU ) help This option enables preemptible-RCU code that is common between the TREE_PREEMPT_RCU and TINY_PREEMPT_RCU implementations. config RCU_TRACE bool "Enable tracing for RCU" help This option provides tracing in RCU which presents stats in debugfs for debugging RCU implementation. Say Y here if you want to enable RCU tracing Say N if you are unsure. config RCU_FANOUT int "Tree-based hierarchical RCU fanout value" range 2 64 if 64BIT range 2 32 if !64BIT depends on TREE_RCU || TREE_PREEMPT_RCU default 64 if 64BIT default 32 if !64BIT help This option controls the fanout of hierarchical implementations of RCU, allowing RCU to work efficiently on machines with large numbers of CPUs. This value must be at least the fourth root of NR_CPUS, which allows NR_CPUS to be insanely large. The default value of RCU_FANOUT should be used for production systems, but if you are stress-testing the RCU implementation itself, small RCU_FANOUT values allow you to test large-system code paths on small(er) systems. Select a specific number if testing RCU itself. Take the default if unsure. config RCU_FANOUT_EXACT bool "Disable tree-based hierarchical RCU auto-balancing" depends on TREE_RCU || TREE_PREEMPT_RCU default n help This option forces use of the exact RCU_FANOUT value specified, regardless of imbalances in the hierarchy. This is useful for testing RCU itself, and might one day be useful on systems with strong NUMA behavior. Without RCU_FANOUT_EXACT, the code will balance the hierarchy. Say N if unsure. config RCU_FAST_NO_HZ bool "Accelerate last non-dyntick-idle CPU's grace periods" depends on TREE_RCU && NO_HZ && SMP default n help This option causes RCU to attempt to accelerate grace periods in order to allow the final CPU to enter dynticks-idle state more quickly. On the other hand, this option increases the overhead of the dynticks-idle checking, particularly on systems with large numbers of CPUs. Say Y if energy efficiency is critically important, particularly if you have relatively few CPUs. Say N if you are unsure. config TREE_RCU_TRACE def_bool RCU_TRACE && ( TREE_RCU || TREE_PREEMPT_RCU ) select DEBUG_FS help This option provides tracing for the TREE_RCU and TREE_PREEMPT_RCU implementations, permitting Makefile to trivially select kernel/rcutree_trace.c. config RCU_BOOST bool "Enable RCU priority boosting" depends on RT_MUTEXES && TINY_PREEMPT_RCU default n help This option boosts the priority of preempted RCU readers that block the current preemptible RCU grace period for too long. This option also prevents heavy loads from blocking RCU callback invocation for all flavors of RCU. Say Y here if you are working with real-time apps or heavy loads Say N here if you are unsure. config RCU_BOOST_PRIO int "Real-time priority to boost RCU readers to" range 1 99 depends on RCU_BOOST default 1 help This option specifies the real-time priority to which preempted RCU readers are to be boosted. If you are working with CPU-bound real-time applications, you should specify a priority higher then the highest-priority CPU-bound application. Specify the real-time priority, or take the default if unsure. config RCU_BOOST_DELAY int "Milliseconds to delay boosting after RCU grace-period start" range 0 3000 depends on RCU_BOOST default 500 help This option specifies the time to wait after the beginning of a given grace period before priority-boosting preempted RCU readers blocking that grace period. Note that any RCU reader blocking an expedited RCU grace period is boosted immediately. Accept the default if unsure. endmenu # "RCU Subsystem" config IKCONFIG tristate "Kernel .config support" ---help--- This option enables the complete Linux kernel ".config" file contents to be saved in the kernel. It provides documentation of which kernel options are used in a running kernel or in an on-disk kernel. This information can be extracted from the kernel image file with the script scripts/extract-ikconfig and used as input to rebuild the current kernel or to build another kernel. It can also be extracted from a running kernel by reading /proc/config.gz if enabled (below). config IKCONFIG_PROC bool "Enable access to .config through /proc/config.gz" depends on IKCONFIG && PROC_FS ---help--- This option enables access to the kernel configuration file through /proc/config.gz. config LOG_BUF_SHIFT int "Kernel log buffer size (16 => 64KB, 17 => 128KB)" range 12 21 default 17 help Select kernel log buffer size as a power of 2. Examples: 17 => 128 KB 16 => 64 KB 15 => 32 KB 14 => 16 KB 13 => 8 KB 12 => 4 KB # # Architectures with an unreliable sched_clock() should select this: # config HAVE_UNSTABLE_SCHED_CLOCK bool menuconfig CGROUPS boolean "Control Group support" depends on EVENTFD help This option adds support for grouping sets of processes together, for use with process control subsystems such as Cpusets, CFS, memory controls or device isolation. See - Documentation/scheduler/sched-design-CFS.txt (CFS) - Documentation/cgroups/ (features for grouping, isolation and resource control) Say N if unsure. if CGROUPS config CGROUP_DEBUG bool "Example debug cgroup subsystem" default n help This option enables a simple cgroup subsystem that exports useful debugging information about the cgroups framework. Say N if unsure. config CGROUP_NS bool "Namespace cgroup subsystem" help Provides a simple namespace cgroup subsystem to provide hierarchical naming of sets of namespaces, for instance virtual servers and checkpoint/restart jobs. config CGROUP_FREEZER bool "Freezer cgroup subsystem" help Provides a way to freeze and unfreeze all tasks in a cgroup. config CGROUP_DEVICE bool "Device controller for cgroups" help Provides a cgroup implementing whitelists for devices which a process in the cgroup can mknod or open. config CPUSETS bool "Cpuset support" help This option will let you create and manage CPUSETs which allow dynamically partitioning a system into sets of CPUs and Memory Nodes and assigning tasks to run only within those sets. This is primarily useful on large SMP or NUMA systems. Say N if unsure. config PROC_PID_CPUSET bool "Include legacy /proc//cpuset file" depends on CPUSETS default y config CGROUP_CPUACCT bool "Simple CPU accounting cgroup subsystem" help Provides a simple Resource Controller for monitoring the total CPU consumed by the tasks in a cgroup. config RESOURCE_COUNTERS bool "Resource counters" help This option enables controller independent resource accounting infrastructure that works with cgroups. config CGROUP_MEM_RES_CTLR bool "Memory Resource Controller for Control Groups" depends on RESOURCE_COUNTERS select MM_OWNER help Provides a memory resource controller that manages both anonymous memory and page cache. (See Documentation/cgroups/memory.txt) Note that setting this option increases fixed memory overhead associated with each page of memory in the system. By this, 20(40)bytes/PAGE_SIZE on 32(64)bit system will be occupied by memory usage tracking struct at boot. Total amount of this is printed out at boot. Only enable when you're ok with these trade offs and really sure you need the memory resource controller. Even when you enable this, you can set "cgroup_disable=memory" at your boot option to disable memory resource controller and you can avoid overheads. (and lose benefits of memory resource controller) This config option also selects MM_OWNER config option, which could in turn add some fork/exit overhead. config CGROUP_MEM_RES_CTLR_SWAP bool "Memory Resource Controller Swap Extension" depends on CGROUP_MEM_RES_CTLR && SWAP help Add swap management feature to memory resource controller. When you enable this, you can limit mem+swap usage per cgroup. In other words, when you disable this, memory resource controller has no cares to usage of swap...a process can exhaust all of the swap. This extension is useful when you want to avoid exhaustion swap but this itself adds more overheads and consumes memory for remembering information. Especially if you use 32bit system or small memory system, please be careful about enabling this. When memory resource controller is disabled by boot option, this will be automatically disabled and there will be no overhead from this. Even when you set this config=y, if boot option "noswapaccount" is set, swap will not be accounted. Now, memory usage of swap_cgroup is 2 bytes per entry. If swap page size is 4096bytes, 512k per 1Gbytes of swap. config CGROUP_MEM_RES_CTLR_SWAP_ENABLED bool "Memory Resource Controller Swap Extension enabled by default" depends on CGROUP_MEM_RES_CTLR_SWAP default y help Memory Resource Controller Swap Extension comes with its price in a bigger memory consumption. General purpose distribution kernels which want to enable the feature but keep it disabled by default and let the user enable it by swapaccount boot command line parameter should have this option unselected. For those who want to have the feature enabled by default should select this option (if, for some reason, they need to disable it then noswapaccount does the trick). config CGROUP_PERF bool "Enable perf_event per-cpu per-container group (cgroup) monitoring" depends on PERF_EVENTS && CGROUPS help This option extends the per-cpu mode to restrict monitoring to threads which belong to the cgroup specified and run on the designated cpu. Say N if unsure. menuconfig CGROUP_SCHED bool "Group CPU scheduler" depends on EXPERIMENTAL default n help This feature lets CPU scheduler recognize task groups and control CPU bandwidth allocation to such task groups. It uses cgroups to group tasks. if CGROUP_SCHED config FAIR_GROUP_SCHED bool "Group scheduling for SCHED_OTHER" depends on CGROUP_SCHED default CGROUP_SCHED config RT_GROUP_SCHED bool "Group scheduling for SCHED_RR/FIFO" depends on EXPERIMENTAL depends on CGROUP_SCHED default n help This feature lets you explicitly allocate real CPU bandwidth to task groups. If enabled, it will also make it impossible to schedule realtime tasks for non-root users until you allocate realtime bandwidth for them. See Documentation/scheduler/sched-rt-group.txt for more information. endif #CGROUP_SCHED config BLK_CGROUP tristate "Block IO controller" depends on BLOCK default n ---help--- Generic block IO controller cgroup interface. This is the common cgroup interface which should be used by various IO controlling policies. Currently, CFQ IO scheduler uses it to recognize task groups and control disk bandwidth allocation (proportional time slice allocation) to such task groups. It is also used by bio throttling logic in block layer to implement upper limit in IO rates on a device. This option only enables generic Block IO controller infrastructure. One needs to also enable actual IO controlling logic/policy. For enabling proportional weight division of disk bandwidth in CFQ, set CONFIG_CFQ_GROUP_IOSCHED=y; for enabling throttling policy, set CONFIG_BLK_DEV_THROTTLING=y. See Documentation/cgroups/blkio-controller.txt for more information. config DEBUG_BLK_CGROUP bool "Enable Block IO controller debugging" depends on BLK_CGROUP default n ---help--- Enable some debugging help. Currently it exports additional stat files in a cgroup which can be useful for debugging. endif # CGROUPS menuconfig NAMESPACES bool "Namespaces support" if EXPERT default !EXPERT help Provides the way to make tasks work with different objects using the same id. For example same IPC id may refer to different objects or same user id or pid may refer to different tasks when used in different namespaces. if NAMESPACES config UTS_NS bool "UTS namespace" default y help In this namespace tasks see different info provided with the uname() system call config IPC_NS bool "IPC namespace" depends on (SYSVIPC || POSIX_MQUEUE) default y help In this namespace tasks work with IPC ids which correspond to different IPC objects in different namespaces. config USER_NS bool "User namespace (EXPERIMENTAL)" depends on EXPERIMENTAL default y help This allows containers, i.e. vservers, to use user namespaces to provide different user info for different servers. If unsure, say N. config PID_NS bool "PID Namespaces" default y help Support process id namespaces. This allows having multiple processes with the same pid as long as they are in different pid namespaces. This is a building block of containers. config NET_NS bool "Network namespace" depends on NET default y help Allow user space to create what appear to be multiple instances of the network stack. endif # NAMESPACES config SCHED_AUTOGROUP bool "Automatic process group scheduling" select EVENTFD select CGROUPS select CGROUP_SCHED select FAIR_GROUP_SCHED help This option optimizes the scheduler for common desktop workloads by automatically creating and populating task groups. This separation of workloads isolates aggressive CPU burners (like build jobs) from desktop applications. Task group autogeneration is currently based upon task session. config MM_OWNER bool config SYSFS_DEPRECATED bool "Enable deprecated sysfs features to support old userspace tools" depends on SYSFS default n help This option adds code that switches the layout of the "block" class devices, to not show up in /sys/class/block/, but only in /sys/block/. This switch is only active when the sysfs.deprecated=1 boot option is passed or the SYSFS_DEPRECATED_V2 option is set. This option allows new kernels to run on old distributions and tools, which might get confused by /sys/class/block/. Since 2007/2008 all major distributions and tools handle this just fine. Recent distributions and userspace tools after 2009/2010 depend on the existence of /sys/class/block/, and will not work with this option enabled. Only if you are using a new kernel on an old distribution, you might need to say Y here. config SYSFS_DEPRECATED_V2 bool "Enable deprecated sysfs features by default" default n depends on SYSFS depends on SYSFS_DEPRECATED help Enable deprecated sysfs by default. See the CONFIG_SYSFS_DEPRECATED option for more details about this option. Only if you are using a new kernel on an old distribution, you might need to say Y here. Even then, odds are you would not need it enabled, you can always pass the boot option if absolutely necessary. config RELAY bool "Kernel->user space relay support (formerly relayfs)" help This option enables support for relay interface support in certain file systems (such as debugfs). It is designed to provide an efficient mechanism for tools and facilities to relay large amounts of data from kernel space to user space. If unsure, say N. config BLK_DEV_INITRD bool "Initial RAM filesystem and RAM disk (initramfs/initrd) support" depends on BROKEN || !FRV help The initial RAM filesystem is a ramfs which is loaded by the boot loader (loadlin or lilo) and that is mounted as root before the normal boot procedure. It is typically used to load modules needed to mount the "real" root file system, etc. See for details. If RAM disk support (BLK_DEV_RAM) is also included, this also enables initial RAM disk (initrd) support and adds 15 Kbytes (more on some other architectures) to the kernel size. If unsure say Y. if BLK_DEV_INITRD source "usr/Kconfig" endif config CC_OPTIMIZE_FOR_SIZE bool "Optimize for size" default y help Enabling this option will pass "-Os" instead of "-O2" to gcc resulting in a smaller kernel. If unsure, say Y. config SYSCTL bool config ANON_INODES bool menuconfig EXPERT bool "Configure standard kernel features (expert users)" help This option allows certain base kernel options and settings to be disabled or tweaked. This is for specialized environments which can tolerate a "non-standard" kernel. Only use this if you really know what you are doing. config UID16 bool "Enable 16-bit UID system calls" if EXPERT depends on ARM || BLACKFIN || CRIS || FRV || H8300 || X86_32 || M68K || (S390 && !64BIT) || SUPERH || SPARC32 || (SPARC64 && COMPAT) || UML || (X86_64 && IA32_EMULATION) default y help This enables the legacy 16-bit UID syscall wrappers. config SYSCTL_SYSCALL bool "Sysctl syscall support" if EXPERT depends on PROC_SYSCTL default y select SYSCTL ---help--- sys_sysctl uses binary paths that have been found challenging to properly maintain and use. The interface in /proc/sys using paths with ascii names is now the primary path to this information. Almost nothing using the binary sysctl interface so if you are trying to save some space it is probably safe to disable this, making your kernel marginally smaller. If unsure say Y here. config KALLSYMS bool "Load all symbols for debugging/ksymoops" if EXPERT default y help Say Y here to let the kernel print out symbolic crash information and symbolic stack backtraces. This increases the size of the kernel somewhat, as all symbols have to be loaded into the kernel image. config KALLSYMS_ALL bool "Include all symbols in kallsyms" depends on DEBUG_KERNEL && KALLSYMS help Normally kallsyms only contains the symbols of functions, for nicer OOPS messages. Some debuggers can use kallsyms for other symbols too: say Y here to include all symbols, if you need them and you don't care about adding 300k to the size of your kernel. Say N. config KALLSYMS_EXTRA_PASS bool "Do an extra kallsyms pass" depends on KALLSYMS help If kallsyms is not working correctly, the build will fail with inconsistent kallsyms data. If that occurs, log a bug report and turn on KALLSYMS_EXTRA_PASS which should result in a stable build. Always say N here unless you find a bug in kallsyms, which must be reported. KALLSYMS_EXTRA_PASS is only a temporary workaround while you wait for kallsyms to be fixed. config HOTPLUG bool "Support for hot-pluggable devices" if EXPERT default y help This option is provided for the case where no hotplug or uevent capabilities is wanted by the kernel. You should only consider disabling this option for embedded systems that do not use modules, a dynamic /dev tree, or dynamic device discovery. Just say Y. config PRINTK default y bool "Enable support for printk" if EXPERT help This option enables normal printk support. Removing it eliminates most of the message strings from the kernel image and makes the kernel more or less silent. As this makes it very difficult to diagnose system problems, saying N here is strongly discouraged. config BUG bool "BUG() support" if EXPERT default y help Disabling this option eliminates support for BUG and WARN, reducing the size of your kernel image and potentially quietly ignoring numerous fatal conditions. You should only consider disabling this option for embedded systems with no facilities for reporting errors. Just say Y. config ELF_CORE default y bool "Enable ELF core dumps" if EXPERT help Enable support for generating core dumps. Disabling saves about 4k. config PCSPKR_PLATFORM bool "Enable PC-Speaker support" if EXPERT depends on ALPHA || X86 || MIPS || PPC_PREP || PPC_CHRP || PPC_PSERIES default y help This option allows to disable the internal PC-Speaker support, saving some memory. config BASE_FULL default y bool "Enable full-sized data structures for core" if EXPERT help Disabling this option reduces the size of miscellaneous core kernel data structures. This saves memory on small machines, but may reduce performance. config FUTEX bool "Enable futex support" if EXPERT default y select RT_MUTEXES help Disabling this option will cause the kernel to be built without support for "fast userspace mutexes". The resulting kernel may not run glibc-based applications correctly. config EPOLL bool "Enable eventpoll support" if EXPERT default y select ANON_INODES help Disabling this option will cause the kernel to be built without support for epoll family of system calls. config SIGNALFD bool "Enable signalfd() system call" if EXPERT select ANON_INODES default y help Enable the signalfd() system call that allows to receive signals on a file descriptor. If unsure, say Y. config TIMERFD bool "Enable timerfd() system call" if EXPERT select ANON_INODES default y help Enable the timerfd() system call that allows to receive timer events on a file descriptor. If unsure, say Y. config EVENTFD bool "Enable eventfd() system call" if EXPERT select ANON_INODES default y help Enable the eventfd() system call that allows to receive both kernel notification (ie. KAIO) or userspace notifications. If unsure, say Y. config SHMEM bool "Use full shmem filesystem" if EXPERT default y depends on MMU help The shmem is an internal filesystem used to manage shared memory. It is backed by swap and manages resource limits. It is also exported to userspace as tmpfs if TMPFS is enabled. Disabling this option replaces shmem and tmpfs with the much simpler ramfs code, which may be appropriate on small systems without swap. config AIO bool "Enable AIO support" if EXPERT default y help This option enables POSIX asynchronous I/O which may by used by some high performance threaded applications. Disabling this option saves about 7k. config EMBEDDED bool "Embedded system" select EXPERT help This option should be enabled if compiling the kernel for an embedded system so certain expert options are available for configuration. config HAVE_PERF_EVENTS bool help See tools/perf/design.txt for details. config PERF_USE_VMALLOC bool help See tools/perf/design.txt for details menu "Kernel Performance Events And Counters" config PERF_EVENTS bool "Kernel performance events and counters" default y if (PROFILING || PERF_COUNTERS) depends on HAVE_PERF_EVENTS select ANON_INODES select IRQ_WORK help Enable kernel support for various performance events provided by software and hardware. Software events are supported either built-in or via the use of generic tracepoints. Most modern CPUs support performance events via performance counter registers. These registers count the number of certain types of hw events: such as instructions executed, cachemisses suffered, or branches mis-predicted - without slowing down the kernel or applications. These registers can also trigger interrupts when a threshold number of events have passed - and can thus be used to profile the code that runs on that CPU. The Linux Performance Event subsystem provides an abstraction of these software and hardware event capabilities, available via a system call and used by the "perf" utility in tools/perf/. It provides per task and per CPU counters, and it provides event capabilities on top of those. Say Y if unsure. config PERF_COUNTERS bool "Kernel performance counters (old config option)" depends on HAVE_PERF_EVENTS help This config has been obsoleted by the PERF_EVENTS config option - please see that one for details. It has no effect on the kernel whether you enable it or not, it is a compatibility placeholder. Say N if unsure. config DEBUG_PERF_USE_VMALLOC default n bool "Debug: use vmalloc to back perf mmap() buffers" depends on PERF_EVENTS && DEBUG_KERNEL select PERF_USE_VMALLOC help Use vmalloc memory to back perf mmap() buffers. Mostly useful for debugging the vmalloc code on platforms that don't require it. Say N if unsure. endmenu config VM_EVENT_COUNTERS default y bool "Enable VM event counters for /proc/vmstat" if EXPERT help VM event counters are needed for event counts to be shown. This option allows the disabling of the VM event counters on EXPERT systems. /proc/vmstat will only show page counts if VM event counters are disabled. config PCI_QUIRKS default y bool "Enable PCI quirk workarounds" if EXPERT depends on PCI help This enables workarounds for various PCI chipset bugs/quirks. Disable this only if your target machine is unaffected by PCI quirks. config SLUB_DEBUG default y bool "Enable SLUB debugging support" if EXPERT depends on SLUB && SYSFS help SLUB has extensive debug support features. Disabling these can result in significant savings in code size. This also disables SLUB sysfs support. /sys/slab will not exist and there will be no support for cache validation etc. config COMPAT_BRK bool "Disable heap randomization" default y help Randomizing heap placement makes heap exploits harder, but it also breaks ancient binaries (including anything libc5 based). This option changes the bootup default to heap randomization disabled, and can be overridden at runtime by setting /proc/sys/kernel/randomize_va_space to 2. On non-ancient distros (post-2000 ones) N is usually a safe choice. choice prompt "Choose SLAB allocator" default SLUB help This option allows to select a slab allocator. config SLAB bool "SLAB" help The regular slab allocator that is established and known to work well in all environments. It organizes cache hot objects in per cpu and per node queues. config SLUB bool "SLUB (Unqueued Allocator)" help SLUB is a slab allocator that minimizes cache line usage instead of managing queues of cached objects (SLAB approach). Per cpu caching is realized using slabs of objects instead of queues of objects. SLUB can use memory efficiently and has enhanced diagnostics. SLUB is the default choice for a slab allocator. config SLOB depends on EXPERT bool "SLOB (Simple Allocator)" help SLOB replaces the stock allocator with a drastically simpler allocator. SLOB is generally more space efficient but does not perform as well on large systems. endchoice config MMAP_ALLOW_UNINITIALIZED bool "Allow mmapped anonymous memory to be uninitialized" depends on EXPERT && !MMU default n help Normally, and according to the Linux spec, anonymous memory obtained from mmap() has it's contents cleared before it is passed to userspace. Enabling this config option allows you to request that mmap() skip that if it is given an MAP_UNINITIALIZED flag, thus providing a huge performance boost. If this option is not enabled, then the flag will be ignored. This is taken advantage of by uClibc's malloc(), and also by ELF-FDPIC binfmt's brk and stack allocator. Because of the obvious security issues, this option should only be enabled on embedded devices where you control what is run in userspace. Since that isn't generally a problem on no-MMU systems, it is normally safe to say Y here. See Documentation/nommu-mmap.txt for more information. config PROFILING bool "Profiling support" help Say Y here to enable the extended profiling support mechanisms used by profilers such as OProfile. # # Place an empty function call at each tracepoint site. Can be # dynamically changed for a probe function. # config TRACEPOINTS bool source "arch/Kconfig" endmenu # General setup config HAVE_GENERIC_DMA_COHERENT bool default n config SLABINFO bool depends on PROC_FS depends on SLAB || SLUB_DEBUG default y config RT_MUTEXES boolean config BASE_SMALL int default 0 if BASE_FULL default 1 if !BASE_FULL menuconfig MODULES bool "Enable loadable module support" help Kernel modules are small pieces of compiled code which can be inserted in the running kernel, rather than being permanently built into the kernel. You use the "modprobe" tool to add (and sometimes remove) them. If you say Y here, many parts of the kernel can be built as modules (by answering M instead of Y where indicated): this is most useful for infrequently used options which are not required for booting. For more information, see the man pages for modprobe, lsmod, modinfo, insmod and rmmod. If you say Y here, you will need to run "make modules_install" to put the modules under /lib/modules/ where modprobe can find them (you may need to be root to do this). If unsure, say Y. if MODULES config MODULE_FORCE_LOAD bool "Forced module loading" default n help Allow loading of modules without version information (ie. modprobe --force). Forced module loading sets the 'F' (forced) taint flag and is usually a really bad idea. config MODULE_UNLOAD bool "Module unloading" help Without this option you will not be able to unload any modules (note that some modules may not be unloadable anyway), which makes your kernel smaller, faster and simpler. If unsure, say Y. config MODULE_FORCE_UNLOAD bool "Forced module unloading" depends on MODULE_UNLOAD && EXPERIMENTAL help This option allows you to force a module to unload, even if the kernel believes it is unsafe: the kernel will remove the module without waiting for anyone to stop using it (using the -f option to rmmod). This is mainly for kernel developers and desperate users. If unsure, say N. config MODVERSIONS bool "Module versioning support" help Usually, you have to use modules compiled with your kernel. Saying Y here makes it sometimes possible to use modules compiled for different kernels, by adding enough information to the modules to (hopefully) spot any changes which would make them incompatible with the kernel you are running. If unsure, say N. config MODULE_SRCVERSION_ALL bool "Source checksum for all modules" help Modules which contain a MODULE_VERSION get an extra "srcversion" field inserted into their modinfo section, which contains a sum of the source files which made it. This helps maintainers see exactly which source was used to build a module (since others sometimes change the module source without updating the version). With this option, such a "srcversion" field will be created for all modules. If unsure, say N. endif # MODULES config INIT_ALL_POSSIBLE bool help Back when each arch used to define their own cpu_online_map and cpu_possible_map, some of them chose to initialize cpu_possible_map with all 1s, and others with all 0s. When they were centralised, it was better to provide this option than to break all the archs and have several arch maintainers pursuing me down dark alleys. config STOP_MACHINE bool default y depends on (SMP && MODULE_UNLOAD) || HOTPLUG_CPU help Need stop_machine() primitive. source "block/Kconfig" config PREEMPT_NOTIFIERS bool config PADATA depends on SMP bool source "kernel/Kconfig.locks" # # Timer subsystem related configuration options # config TICK_ONESHOT bool config NO_HZ bool "Tickless System (Dynamic Ticks)" depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS select TICK_ONESHOT help This option enables a tickless system: timer interrupts will only trigger on an as-needed basis both when the system is busy and when the system is idle. config HIGH_RES_TIMERS bool "High Resolution Timer Support" depends on !ARCH_USES_GETTIMEOFFSET && GENERIC_CLOCKEVENTS select TICK_ONESHOT help This option enables high resolution timer support. If your hardware is not capable then this option only increases the size of the kernel image. config GENERIC_CLOCKEVENTS_BUILD bool default y depends on GENERIC_CLOCKEVENTS || GENERIC_CLOCKEVENTS_MIGR menu "GCOV-based kernel profiling" config GCOV_KERNEL bool "Enable gcov-based kernel profiling" depends on DEBUG_FS && CONSTRUCTORS default n ---help--- This option enables gcov-based code profiling (e.g. for code coverage measurements). If unsure, say N. Additionally specify CONFIG_GCOV_PROFILE_ALL=y to get profiling data for the entire kernel. To enable profiling for specific files or directories, add a line similar to the following to the respective Makefile: For a single file (e.g. main.o): GCOV_PROFILE_main.o := y For all files in one directory: GCOV_PROFILE := y To exclude files from being profiled even when CONFIG_GCOV_PROFILE_ALL is specified, use: GCOV_PROFILE_main.o := n and: GCOV_PROFILE := n Note that the debugfs filesystem has to be mounted to access profiling data. config GCOV_PROFILE_ALL bool "Profile entire Kernel" depends on GCOV_KERNEL depends on SUPERH || S390 || X86 || (PPC && EXPERIMENTAL) || MICROBLAZE default n ---help--- This options activates profiling for the entire kernel. If unsure, say N. Note that a kernel compiled with profiling flags will be significantly larger and run slower. Also be sure to exclude files from profiling which are not linked to the kernel image to prevent linker errors. endmenu config SUSPEND bool "Suspend to RAM and standby" depends on ARCH_SUSPEND_POSSIBLE default y ---help--- Allow the system to enter sleep states in which main memory is powered and thus its contents are preserved, such as the suspend-to-RAM state (e.g. the ACPI S3 state). config SUSPEND_FREEZER bool "Enable freezer for suspend to RAM/standby" \ if ARCH_WANTS_FREEZER_CONTROL || BROKEN depends on SUSPEND default y help This allows you to turn off the freezer for suspend. If this is done, no tasks are frozen for suspend to RAM/standby. Turning OFF this setting is NOT recommended! If in doubt, say Y. config HIBERNATE_CALLBACKS bool config HIBERNATION bool "Hibernation (aka 'suspend to disk')" depends on SWAP && ARCH_HIBERNATION_POSSIBLE select HIBERNATE_CALLBACKS select LZO_COMPRESS select LZO_DECOMPRESS ---help--- Enable the suspend to disk (STD) functionality, which is usually called "hibernation" in user interfaces. STD checkpoints the system and powers it off; and restores that checkpoint on reboot. You can suspend your machine with 'echo disk > /sys/power/state' after placing resume=/dev/swappartition on the kernel command line in your bootloader's configuration file. Alternatively, you can use the additional userland tools available from . In principle it does not require ACPI or APM, although for example ACPI will be used for the final steps when it is available. One of the reasons to use software suspend is that the firmware hooks for suspend states like suspend-to-RAM (STR) often don't work very well with Linux. It creates an image which is saved in your active swap. Upon the next boot, pass the 'resume=/dev/swappartition' argument to the kernel to have it detect the saved image, restore memory state from it, and continue to run as before. If you do not want the previous state to be reloaded, then use the 'noresume' kernel command line argument. Note, however, that fsck will be run on your filesystems and you will need to run mkswap against the swap partition used for the suspend. It also works with swap files to a limited extent (for details see ). Right now you may boot without resuming and resume later but in the meantime you cannot use the swap partition(s)/file(s) involved in suspending. Also in this case you must not use the filesystems that were mounted before the suspend. In particular, you MUST NOT MOUNT any journaled filesystems mounted before the suspend or they will get corrupted in a nasty way. For more information take a look at . config PM_STD_PARTITION string "Default resume partition" depends on HIBERNATION default "" ---help--- The default resume partition is the partition that the suspend- to-disk implementation will look for a suspended disk image. The partition specified here will be different for almost every user. It should be a valid swap partition (at least for now) that is turned on before suspending. The partition specified can be overridden by specifying: resume=/dev/ which will set the resume partition to the device specified. Note there is currently not a way to specify which device to save the suspended image to. It will simply pick the first available swap device. config PM_SLEEP def_bool y depends on SUSPEND || HIBERNATE_CALLBACKS config PM_SLEEP_SMP def_bool y depends on SMP depends on ARCH_SUSPEND_POSSIBLE || ARCH_HIBERNATION_POSSIBLE depends on PM_SLEEP select HOTPLUG select HOTPLUG_CPU config PM_RUNTIME bool "Run-time PM core functionality" depends on !IA64_HP_SIM ---help--- Enable functionality allowing I/O devices to be put into energy-saving (low power) states at run time (or autosuspended) after a specified period of inactivity and woken up in response to a hardware-generated wake-up event or a driver's request. Hardware support is generally required for this functionality to work and the bus type drivers of the buses the devices are on are responsible for the actual handling of the autosuspend requests and wake-up events. config PM def_bool y depends on PM_SLEEP || PM_RUNTIME config PM_DEBUG bool "Power Management Debug Support" depends on PM ---help--- This option enables various debugging support in the Power Management code. This is helpful when debugging and reporting PM bugs, like suspend support. config PM_VERBOSE bool "Verbose Power Management debugging" depends on PM_DEBUG ---help--- This option enables verbose messages from the Power Management code. config PM_ADVANCED_DEBUG bool "Extra PM attributes in sysfs for low-level debugging/testing" depends on PM_DEBUG ---help--- Add extra sysfs attributes allowing one to access some Power Management fields of device objects from user space. If you are not a kernel developer interested in debugging/testing Power Management, say "no". config PM_TEST_SUSPEND bool "Test suspend/resume and wakealarm during bootup" depends on SUSPEND && PM_DEBUG && RTC_CLASS=y ---help--- This option will let you suspend your machine during bootup, and make it wake up a few seconds later using an RTC wakeup alarm. Enable this with a kernel parameter like "test_suspend=mem". You probably want to have your system's RTC driver statically linked, ensuring that it's available when this test runs. config CAN_PM_TRACE def_bool y depends on PM_DEBUG && PM_SLEEP config PM_TRACE bool help This enables code to save the last PM event point across reboot. The architecture needs to support this, x86 for example does by saving things in the RTC, see below. The architecture specific code must provide the extern functions from as well as the header with a TRACE_RESUME() macro. The way the information is presented is architecture- dependent, x86 will print the information during a late_initcall. config PM_TRACE_RTC bool "Suspend/resume event tracing" depends on CAN_PM_TRACE depends on X86 select PM_TRACE ---help--- This enables some cheesy code to save the last PM event point in the RTC across reboots, so that you can debug a machine that just hangs during suspend (or more commonly, during resume). To use this debugging feature you should attempt to suspend the machine, reboot it and then run dmesg -s 1000000 | grep 'hash matches' CAUTION: this option will cause your machine's real-time clock to be set to an invalid time after a resume. config APM_EMULATION tristate "Advanced Power Management Emulation" depends on PM && SYS_SUPPORTS_APM_EMULATION help APM is a BIOS specification for saving power using several different techniques. This is mostly useful for battery powered laptops with APM compliant BIOSes. If you say Y here, the system time will be reset after a RESUME operation, the /proc/apm device will provide battery status information, and user-space programs will receive notification of APM "events" (e.g. battery status change). In order to use APM, you will need supporting software. For location and more information, read and the Battery Powered Linux mini-HOWTO, available from . This driver does not spin down disk drives (see the hdparm(8) manpage ("man 8 hdparm") for that), and it doesn't turn off VESA-compliant "green" monitors. Generally, if you don't have a battery in your machine, there isn't much point in using this driver and you should say N. If you get random kernel OOPSes or reboots that don't seem to be related to anything, try disabling/enabling this option (or disabling/enabling APM in your BIOS). config ARCH_HAS_OPP bool config PM_OPP bool "Operating Performance Point (OPP) Layer library" depends on ARCH_HAS_OPP ---help--- SOCs have a standard set of tuples consisting of frequency and voltage pairs that the device will support per voltage domain. This is called Operating Performance Point or OPP. The actual definitions of OPP varies over silicon within the same family of devices. OPP layer organizes the data internally using device pointers representing individual voltage domains and provides SOC implementations a ready to use framework to manage OPPs. For more information, read # Select this to activate the generic irq options below config HAVE_GENERIC_HARDIRQS bool if HAVE_GENERIC_HARDIRQS menu "IRQ subsystem" # # Interrupt subsystem related configuration options # config GENERIC_HARDIRQS def_bool y # Options selectable by the architecture code # Make sparse irq Kconfig switch below available config HAVE_SPARSE_IRQ bool # Enable the generic irq autoprobe mechanism config GENERIC_IRQ_PROBE bool # Use the generic /proc/interrupts implementation config GENERIC_IRQ_SHOW bool # Print level/edge extra information config GENERIC_IRQ_SHOW_LEVEL bool # Support for delayed migration from interrupt context config GENERIC_PENDING_IRQ bool # Alpha specific irq affinity mechanism config AUTO_IRQ_AFFINITY bool # Tasklet based software resend for pending interrupts on enable_irq() config HARDIRQS_SW_RESEND bool # Preflow handler support for fasteoi (sparc64) config IRQ_PREFLOW_FASTEOI bool # Edge style eoi based handler (cell) config IRQ_EDGE_EOI_HANDLER bool # Support forced irq threading config IRQ_FORCED_THREADING bool config SPARSE_IRQ bool "Support sparse irq numbering" depends on HAVE_SPARSE_IRQ ---help--- Sparse irq numbering is useful for distro kernels that want to define a high CONFIG_NR_CPUS value but still want to have low kernel memory footprint on smaller machines. ( Sparse irqs can also be beneficial on NUMA boxes, as they spread out the interrupt descriptors in a more NUMA-friendly way. ) If you don't know what to do here, say N. endmenu endif # # Architectures that offer an FUNCTION_TRACER implementation should # select HAVE_FUNCTION_TRACER: # config USER_STACKTRACE_SUPPORT bool config NOP_TRACER bool config HAVE_FTRACE_NMI_ENTER bool help See Documentation/trace/ftrace-design.txt config HAVE_FUNCTION_TRACER bool help See Documentation/trace/ftrace-design.txt config HAVE_FUNCTION_GRAPH_TRACER bool help See Documentation/trace/ftrace-design.txt config HAVE_FUNCTION_GRAPH_FP_TEST bool help See Documentation/trace/ftrace-design.txt config HAVE_FUNCTION_TRACE_MCOUNT_TEST bool help See Documentation/trace/ftrace-design.txt config HAVE_DYNAMIC_FTRACE bool help See Documentation/trace/ftrace-design.txt config HAVE_FTRACE_MCOUNT_RECORD bool help See Documentation/trace/ftrace-design.txt config HAVE_SYSCALL_TRACEPOINTS bool help See Documentation/trace/ftrace-design.txt config HAVE_C_RECORDMCOUNT bool help C version of recordmcount available? config TRACER_MAX_TRACE bool config RING_BUFFER bool config FTRACE_NMI_ENTER bool depends on HAVE_FTRACE_NMI_ENTER default y config EVENT_TRACING select CONTEXT_SWITCH_TRACER bool config EVENT_POWER_TRACING_DEPRECATED depends on EVENT_TRACING bool "Deprecated power event trace API, to be removed" default y help Provides old power event types: C-state/idle accounting events: power:power_start power:power_end and old cpufreq accounting event: power:power_frequency This is for userspace compatibility and will vanish after 5 kernel iterations, namely 2.6.41. config CONTEXT_SWITCH_TRACER bool config RING_BUFFER_ALLOW_SWAP bool help Allow the use of ring_buffer_swap_cpu. Adds a very slight overhead to tracing when enabled. # All tracer options should select GENERIC_TRACER. For those options that are # enabled by all tracers (context switch and event tracer) they select TRACING. # This allows those options to appear when no other tracer is selected. But the # options do not appear when something else selects it. We need the two options # GENERIC_TRACER and TRACING to avoid circular dependencies to accomplish the # hiding of the automatic options. config TRACING bool select DEBUG_FS select RING_BUFFER select STACKTRACE if STACKTRACE_SUPPORT select TRACEPOINTS select NOP_TRACER select BINARY_PRINTF select EVENT_TRACING config GENERIC_TRACER bool select TRACING # # Minimum requirements an architecture has to meet for us to # be able to offer generic tracing facilities: # config TRACING_SUPPORT bool # PPC32 has no irqflags tracing support, but it can use most of the # tracers anyway, they were tested to build and work. Note that new # exceptions to this list aren't welcomed, better implement the # irqflags tracing for your architecture. depends on TRACE_IRQFLAGS_SUPPORT || PPC32 depends on STACKTRACE_SUPPORT default y if TRACING_SUPPORT menuconfig FTRACE bool "Tracers" default y if DEBUG_KERNEL help Enable the kernel tracing infrastructure. if FTRACE config FUNCTION_TRACER bool "Kernel Function Tracer" depends on HAVE_FUNCTION_TRACER select FRAME_POINTER if !ARM_UNWIND && !S390 && !MICROBLAZE select KALLSYMS select GENERIC_TRACER select CONTEXT_SWITCH_TRACER help Enable the kernel to trace every kernel function. This is done by using a compiler feature to insert a small, 5-byte No-Operation instruction at the beginning of every kernel function, which NOP sequence is then dynamically patched into a tracer call when tracing is enabled by the administrator. If it's runtime disabled (the bootup default), then the overhead of the instructions is very small and not measurable even in micro-benchmarks. config FUNCTION_GRAPH_TRACER bool "Kernel Function Graph Tracer" depends on HAVE_FUNCTION_GRAPH_TRACER depends on FUNCTION_TRACER depends on !X86_32 || !CC_OPTIMIZE_FOR_SIZE default y help Enable the kernel to trace a function at both its return and its entry. Its first purpose is to trace the duration of functions and draw a call graph for each thread with some information like the return value. This is done by setting the current return address on the current task structure into a stack of calls. config IRQSOFF_TRACER bool "Interrupts-off Latency Tracer" default n depends on TRACE_IRQFLAGS_SUPPORT depends on !ARCH_USES_GETTIMEOFFSET select TRACE_IRQFLAGS select GENERIC_TRACER select TRACER_MAX_TRACE select RING_BUFFER_ALLOW_SWAP help This option measures the time spent in irqs-off critical sections, with microsecond accuracy. The default measurement method is a maximum search, which is disabled by default and can be runtime (re-)started via: echo 0 > /sys/kernel/debug/tracing/tracing_max_latency (Note that kernel size and overhead increase with this option enabled. This option and the preempt-off timing option can be used together or separately.) config PREEMPT_TRACER bool "Preemption-off Latency Tracer" default n depends on !ARCH_USES_GETTIMEOFFSET depends on PREEMPT select GENERIC_TRACER select TRACER_MAX_TRACE select RING_BUFFER_ALLOW_SWAP help This option measures the time spent in preemption-off critical sections, with microsecond accuracy. The default measurement method is a maximum search, which is disabled by default and can be runtime (re-)started via: echo 0 > /sys/kernel/debug/tracing/tracing_max_latency (Note that kernel size and overhead increase with this option enabled. This option and the irqs-off timing option can be used together or separately.) config SCHED_TRACER bool "Scheduling Latency Tracer" select GENERIC_TRACER select CONTEXT_SWITCH_TRACER select TRACER_MAX_TRACE help This tracer tracks the latency of the highest priority task to be scheduled in, starting from the point it has woken up. config ENABLE_DEFAULT_TRACERS bool "Trace process context switches and events" depends on !GENERIC_TRACER select TRACING help This tracer hooks to various trace points in the kernel, allowing the user to pick and choose which trace point they want to trace. It also includes the sched_switch tracer plugin. config FTRACE_SYSCALLS bool "Trace syscalls" depends on HAVE_SYSCALL_TRACEPOINTS select GENERIC_TRACER select KALLSYMS help Basic tracer to catch the syscall entry and exit events. config TRACE_BRANCH_PROFILING bool select GENERIC_TRACER choice prompt "Branch Profiling" default BRANCH_PROFILE_NONE help The branch profiling is a software profiler. It will add hooks into the C conditionals to test which path a branch takes. The likely/unlikely profiler only looks at the conditions that are annotated with a likely or unlikely macro. The "all branch" profiler will profile every if-statement in the kernel. This profiler will also enable the likely/unlikely profiler. Either of the above profilers adds a bit of overhead to the system. If unsure, choose "No branch profiling". config BRANCH_PROFILE_NONE bool "No branch profiling" help No branch profiling. Branch profiling adds a bit of overhead. Only enable it if you want to analyse the branching behavior. Otherwise keep it disabled. config PROFILE_ANNOTATED_BRANCHES bool "Trace likely/unlikely profiler" select TRACE_BRANCH_PROFILING help This tracer profiles all the the likely and unlikely macros in the kernel. It will display the results in: /sys/kernel/debug/tracing/trace_stat/branch_annotated Note: this will add a significant overhead; only turn this on if you need to profile the system's use of these macros. config PROFILE_ALL_BRANCHES bool "Profile all if conditionals" select TRACE_BRANCH_PROFILING help This tracer profiles all branch conditions. Every if () taken in the kernel is recorded whether it hit or miss. The results will be displayed in: /sys/kernel/debug/tracing/trace_stat/branch_all This option also enables the likely/unlikely profiler. This configuration, when enabled, will impose a great overhead on the system. This should only be enabled when the system is to be analyzed in much detail. endchoice config TRACING_BRANCHES bool help Selected by tracers that will trace the likely and unlikely conditions. This prevents the tracers themselves from being profiled. Profiling the tracing infrastructure can only happen when the likelys and unlikelys are not being traced. config BRANCH_TRACER bool "Trace likely/unlikely instances" depends on TRACE_BRANCH_PROFILING select TRACING_BRANCHES help This traces the events of likely and unlikely condition calls in the kernel. The difference between this and the "Trace likely/unlikely profiler" is that this is not a histogram of the callers, but actually places the calling events into a running trace buffer to see when and where the events happened, as well as their results. Say N if unsure. config STACK_TRACER bool "Trace max stack" depends on HAVE_FUNCTION_TRACER select FUNCTION_TRACER select STACKTRACE select KALLSYMS help This special tracer records the maximum stack footprint of the kernel and displays it in /sys/kernel/debug/tracing/stack_trace. This tracer works by hooking into every function call that the kernel executes, and keeping a maximum stack depth value and stack-trace saved. If this is configured with DYNAMIC_FTRACE then it will not have any overhead while the stack tracer is disabled. To enable the stack tracer on bootup, pass in 'stacktrace' on the kernel command line. The stack tracer can also be enabled or disabled via the sysctl kernel.stack_tracer_enabled Say N if unsure. config BLK_DEV_IO_TRACE bool "Support for tracing block IO actions" depends on SYSFS depends on BLOCK select RELAY select DEBUG_FS select TRACEPOINTS select GENERIC_TRACER select STACKTRACE help Say Y here if you want to be able to trace the block layer actions on a given queue. Tracing allows you to see any traffic happening on a block device queue. For more information (and the userspace support tools needed), fetch the blktrace tools from: git://git.kernel.dk/blktrace.git Tracing also is possible using the ftrace interface, e.g.: echo 1 > /sys/block/sda/sda1/trace/enable echo blk > /sys/kernel/debug/tracing/current_tracer cat /sys/kernel/debug/tracing/trace_pipe If unsure, say N. config KPROBE_EVENT depends on KPROBES depends on HAVE_REGS_AND_STACK_ACCESS_API bool "Enable kprobes-based dynamic events" select TRACING default y help This allows the user to add tracing events (similar to tracepoints) on the fly via the ftrace interface. See Documentation/trace/kprobetrace.txt for more details. Those events can be inserted wherever kprobes can probe, and record various register and memory values. This option is also required by perf-probe subcommand of perf tools. If you want to use perf tools, this option is strongly recommended. config DYNAMIC_FTRACE bool "enable/disable ftrace tracepoints dynamically" depends on FUNCTION_TRACER depends on HAVE_DYNAMIC_FTRACE default y help This option will modify all the calls to ftrace dynamically (will patch them out of the binary image and replace them with a No-Op instruction) as they are called. A table is created to dynamically enable them again. This way a CONFIG_FUNCTION_TRACER kernel is slightly larger, but otherwise has native performance as long as no tracing is active. The changes to the code are done by a kernel thread that wakes up once a second and checks to see if any ftrace calls were made. If so, it runs stop_machine (stops all CPUS) and modifies the code to jump over the call to ftrace. config FUNCTION_PROFILER bool "Kernel function profiler" depends on FUNCTION_TRACER default n help This option enables the kernel function profiler. A file is created in debugfs called function_profile_enabled which defaults to zero. When a 1 is echoed into this file profiling begins, and when a zero is entered, profiling stops. A "functions" file is created in the trace_stats directory; this file shows the list of functions that have been hit and their counters. If in doubt, say N. config FTRACE_MCOUNT_RECORD def_bool y depends on DYNAMIC_FTRACE depends on HAVE_FTRACE_MCOUNT_RECORD config FTRACE_SELFTEST bool config FTRACE_STARTUP_TEST bool "Perform a startup test on ftrace" depends on GENERIC_TRACER select FTRACE_SELFTEST help This option performs a series of startup tests on ftrace. On bootup a series of tests are made to verify that the tracer is functioning properly. It will do tests on all the configured tracers of ftrace. config EVENT_TRACE_TEST_SYSCALLS bool "Run selftest on syscall events" depends on FTRACE_STARTUP_TEST help This option will also enable testing every syscall event. It only enables the event and disables it and runs various loads with the event enabled. This adds a bit more time for kernel boot up since it runs this on every system call defined. TBD - enable a way to actually call the syscalls as we test their events config MMIOTRACE bool "Memory mapped IO tracing" depends on HAVE_MMIOTRACE_SUPPORT && PCI select GENERIC_TRACER help Mmiotrace traces Memory Mapped I/O access and is meant for debugging and reverse engineering. It is called from the ioremap implementation and works via page faults. Tracing is disabled by default and can be enabled at run-time. See Documentation/trace/mmiotrace.txt. If you are not helping to develop drivers, say N. config MMIOTRACE_TEST tristate "Test module for mmiotrace" depends on MMIOTRACE && m help This is a dumb module for testing mmiotrace. It is very dangerous as it will write garbage to IO memory starting at a given address. However, it should be safe to use on e.g. unused portion of VRAM. Say N, unless you absolutely know what you are doing. config RING_BUFFER_BENCHMARK tristate "Ring buffer benchmark stress tester" depends on RING_BUFFER help This option creates a test to stress the ring buffer and benchmark it. It creates its own ring buffer such that it will not interfere with any other users of the ring buffer (such as ftrace). It then creates a producer and consumer that will run for 10 seconds and sleep for 10 seconds. Each interval it will print out the number of events it recorded and give a rough estimate of how long each iteration took. It does not disable interrupts or raise its priority, so it may be affected by processes that are running. If unsure, say N. endif # FTRACE endif # TRACING_SUPPORT # # Library configuration # config BINARY_PRINTF def_bool n menu "Library routines" config RAID6_PQ tristate config BITREVERSE tristate config RATIONAL boolean config GENERIC_FIND_FIRST_BIT bool config GENERIC_FIND_NEXT_BIT bool config GENERIC_FIND_BIT_LE bool config GENERIC_FIND_LAST_BIT bool default y config CRC_CCITT tristate "CRC-CCITT functions" help This option is provided for the case where no in-kernel-tree modules require CRC-CCITT functions, but a module built outside the kernel tree does. Such modules that use library CRC-CCITT functions require M here. config CRC16 tristate "CRC16 functions" help This option is provided for the case where no in-kernel-tree modules require CRC16 functions, but a module built outside the kernel tree does. Such modules that use library CRC16 functions require M here. config CRC_T10DIF tristate "CRC calculation for the T10 Data Integrity Field" help This option is only needed if a module that's not in the kernel tree needs to calculate CRC checks for use with the SCSI data integrity subsystem. config CRC_ITU_T tristate "CRC ITU-T V.41 functions" help This option is provided for the case where no in-kernel-tree modules require CRC ITU-T V.41 functions, but a module built outside the kernel tree does. Such modules that use library CRC ITU-T V.41 functions require M here. config CRC32 tristate "CRC32 functions" default y select BITREVERSE help This option is provided for the case where no in-kernel-tree modules require CRC32 functions, but a module built outside the kernel tree does. Such modules that use library CRC32 functions require M here. config CRC7 tristate "CRC7 functions" help This option is provided for the case where no in-kernel-tree modules require CRC7 functions, but a module built outside the kernel tree does. Such modules that use library CRC7 functions require M here. config LIBCRC32C tristate "CRC32c (Castagnoli, et al) Cyclic Redundancy-Check" select CRYPTO select CRYPTO_CRC32C help This option is provided for the case where no in-kernel-tree modules require CRC32c functions, but a module built outside the kernel tree does. Such modules that use library CRC32c functions require M here. See Castagnoli93. Module will be libcrc32c. config AUDIT_GENERIC bool depends on AUDIT && !AUDIT_ARCH default y # # compression support is select'ed if needed # config ZLIB_INFLATE tristate config ZLIB_DEFLATE tristate config LZO_COMPRESS tristate config LZO_DECOMPRESS tristate source "lib/xz/Kconfig" # # These all provide a common interface (hence the apparent duplication with # ZLIB_INFLATE; DECOMPRESS_GZIP is just a wrapper.) # config DECOMPRESS_GZIP select ZLIB_INFLATE tristate config DECOMPRESS_BZIP2 tristate config DECOMPRESS_LZMA tristate config DECOMPRESS_XZ select XZ_DEC tristate config DECOMPRESS_LZO select LZO_DECOMPRESS tristate # # Generic allocator support is selected if needed # config GENERIC_ALLOCATOR boolean # # reed solomon support is select'ed if needed # config REED_SOLOMON tristate config REED_SOLOMON_ENC8 boolean config REED_SOLOMON_DEC8 boolean config REED_SOLOMON_ENC16 boolean config REED_SOLOMON_DEC16 boolean # # BCH support is selected if needed # config BCH tristate config BCH_CONST_PARAMS boolean help Drivers may select this option to force specific constant values for parameters 'm' (Galois field order) and 't' (error correction capability). Those specific values must be set by declaring default values for symbols BCH_CONST_M and BCH_CONST_T. Doing so will enable extra compiler optimizations, improving encoding and decoding performance up to 2x for usual (m,t) values (typically such that m*t < 200). When this option is selected, the BCH library supports only a single (m,t) configuration. This is mainly useful for NAND flash board drivers requiring known, fixed BCH parameters. config BCH_CONST_M int range 5 15 help Constant value for Galois field order 'm'. If 'k' is the number of data bits to protect, 'm' should be chosen such that (k + m*t) <= 2**m - 1. Drivers should declare a default value for this symbol if they select option BCH_CONST_PARAMS. config BCH_CONST_T int help Constant value for error correction capability in bits 't'. Drivers should declare a default value for this symbol if they select option BCH_CONST_PARAMS. # # Textsearch support is select'ed if needed # config TEXTSEARCH boolean config TEXTSEARCH_KMP tristate config TEXTSEARCH_BM tristate config TEXTSEARCH_FSM tristate config BTREE boolean config HAS_IOMEM boolean depends on !NO_IOMEM default y config HAS_IOPORT boolean depends on HAS_IOMEM && !NO_IOPORT default y config HAS_DMA boolean depends on !NO_DMA default y config CHECK_SIGNATURE bool config CPUMASK_OFFSTACK bool "Force CPU masks off stack" if DEBUG_PER_CPU_MAPS help Use dynamic allocation for cpumask_var_t, instead of putting them on the stack. This is a bit more expensive, but avoids stack overflow. config DISABLE_OBSOLETE_CPUMASK_FUNCTIONS bool "Disable obsolete cpumask functions" if DEBUG_PER_CPU_MAPS depends on EXPERIMENTAL && BROKEN config CPU_RMAP bool depends on SMP # # Netlink attribute parsing support is select'ed if needed # config NLATTR bool # # Generic 64-bit atomic support is selected if needed # config GENERIC_ATOMIC64 bool config LRU_CACHE tristate config AVERAGE bool "Averaging functions" help This option is provided for the case where no in-kernel-tree modules require averaging functions, but a module built outside the kernel tree does. Such modules that use library averaging functions require Y here. If unsure, say N. endmenu config XZ_DEC tristate "XZ decompression support" select CRC32 help LZMA2 compression algorithm and BCJ filters are supported using the .xz file format as the container. For integrity checking, CRC32 is supported. See Documentation/xz.txt for more information. config XZ_DEC_X86 bool "x86 BCJ filter decoder" if EXPERT default y depends on XZ_DEC select XZ_DEC_BCJ config XZ_DEC_POWERPC bool "PowerPC BCJ filter decoder" if EXPERT default y depends on XZ_DEC select XZ_DEC_BCJ config XZ_DEC_IA64 bool "IA-64 BCJ filter decoder" if EXPERT default y depends on XZ_DEC select XZ_DEC_BCJ config XZ_DEC_ARM bool "ARM BCJ filter decoder" if EXPERT default y depends on XZ_DEC select XZ_DEC_BCJ config XZ_DEC_ARMTHUMB bool "ARM-Thumb BCJ filter decoder" if EXPERT default y depends on XZ_DEC select XZ_DEC_BCJ config XZ_DEC_SPARC bool "SPARC BCJ filter decoder" if EXPERT default y depends on XZ_DEC select XZ_DEC_BCJ config XZ_DEC_BCJ bool default n config XZ_DEC_TEST tristate "XZ decompressor tester" default n depends on XZ_DEC help This allows passing .xz files to the in-kernel XZ decoder via a character special file. It calculates CRC32 of the decompressed data and writes diagnostics to the system log. Unless you are developing the XZ decoder, you don't need this and should say N.