Difference between revisions of "Common kernel configs"
(17 intermediate revisions by one user not shown) | |||
Line 1: | Line 1: | ||
− | == | + | == Android USB Tethering == |
− | + | below info modified from [http://wiki.gentoo.org/wiki/Android_USB_Tethering] | |
− | + | ||
+ | Required menuconfig prompts/settings according to gentoo wiki and my own configs: | ||
+ | Device Drivers ---> | ||
[*] Network device support ---> | [*] Network device support ---> | ||
USB Network Adapters ---> | USB Network Adapters ---> | ||
− | + | <M> Multi-purpose USB Networking Framework | |
− | + | -M- CDC Ethernet support (smart devices such as cable modems) | |
<M> CDC EEM support | <M> CDC EEM support | ||
+ | <M> Host for RNDIS and ActiveSync devices (EXPERIMENTAL) | ||
<M> Simple USB Network Links (CDC Ethernet subset) | <M> Simple USB Network Links (CDC Ethernet subset) | ||
− | + | [*] Embedded ARM Linux links | |
− | + | ||
+ | note *** | ||
+ | |||
+ | The prompts above frequently change from one kernel version to the next. The above settings were noted as of kernel version 3.8.3-gentoo-r1. | ||
+ | |||
+ | '''corresponding .config parameters spawned from above settings:''' | ||
+ | |||
+ | CONFIG_NETDEVICES=y | ||
+ | CONFIG_USB_USBNET=m | ||
+ | CONFIG_USB_NET_CDCETHER=m | ||
+ | CONFIG_USB_NET_CDC_EEM=m | ||
+ | CONFIG_USB_NET_RNDIS_HOST=m | ||
+ | CONFIG_USB_NET_CDC_SUBSET=m | ||
+ | CONFIG_USB_ARMLINUX=y | ||
+ | |||
+ | '''check config command''' run against your kernel config file to verify settings | ||
+ | cat .config | grep -E "NETDEVICES|USB_USBNET|USB_NET_CDC_SUBSET|USB_NET_CDCETHER|USB_NET_CDC_EEM|NET_RNDIS_HOST|USB_ARMLINUX" | ||
== iptables == | == iptables == | ||
Line 33: | Line 50: | ||
'''uinput''' | '''uinput''' | ||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | Symbol: INPUT_UINPUT [=m] │ | ||
+ | │ Type : tristate │ | ||
+ | │ Prompt: User level driver support │ | ||
+ | │ Defined at drivers/input/misc/Kconfig:418 │ | ||
+ | │ Depends on: !UML && INPUT [=y] && INPUT_MISC [=y] │ | ||
+ | │ Location: │ | ||
+ | │ -> Device Drivers │ | ||
+ | │ -> Input device support │ | ||
+ | │ -> Generic input layer (needed for keyboard, mouse, ...) (INPUT [=y]) │ | ||
+ | │ (1) -> Miscellaneous devices (INPUT_MISC [=y]) | ||
+ | |||
+ | '''Griffin PowerMate''' | ||
+ | |||
+ | Symbol: INPUT_POWERMATE [=m] │ | ||
+ | │ Type : tristate │ | ||
+ | │ Prompt: Griffin PowerMate and Contour Jog support │ | ||
+ | │ Defined at drivers/input/misc/Kconfig:334 │ | ||
+ | │ Depends on: !UML && INPUT [=y] && INPUT_MISC [=y] && USB_ARCH_HAS_HCD [=y] │ | ||
+ | │ Location: │ | ||
+ | │ -> Device Drivers │ | ||
+ | │ -> Input device support │ | ||
+ | │ -> Generic input layer (needed for keyboard, mouse, ...) (INPUT [=y]) │ | ||
+ | │ (1) -> Miscellaneous devices (INPUT_MISC [=y]) │ | ||
+ | │ Selects: USB [=y] | ||
== cameras and video 4 linux== | == cameras and video 4 linux== | ||
− | Device Drivers > | + | |
− | --- Multimedia support ---> | + | Symbol: '''MEDIA_CAMERA_SUPPORT''' [=y] │ |
− | + | │ Type : boolean │ | |
− | + | │ Prompt: Cameras/video grabbers support │ | |
− | + | │ Defined at drivers/media/Kconfig:21 │ | |
− | + | │ Depends on: MEDIA_SUPPORT [=y] │ | |
+ | │ Location: │ | ||
+ | │ -> Device Drivers │ | ||
+ | │ (1) -> Multimedia support (MEDIA_SUPPORT [=y]) | ||
+ | |||
+ | Symbol: MEDIA_USB_SUPPORT [=y] │ | ||
+ | │ Type : boolean │ | ||
+ | │ Prompt: Media USB Adapters │ | ||
+ | │ Defined at drivers/media/usb/Kconfig:1 │ | ||
+ | │ Depends on: USB [=y] && MEDIA_SUPPORT [=y] │ | ||
+ | │ Location: │ | ||
+ | │ -> Device Drivers │ | ||
+ | │ (1) -> Multimedia support (MEDIA_SUPPORT [=y]) | ||
+ | |||
+ | above not tested | ||
+ | |||
+ | DYNEX usb webcam | ||
+ | |||
+ | Symbol: USB_GSPCA_OV519 [=n] │ | ||
+ | │ Type : tristate │ | ||
+ | │ Prompt: OV51x / OVFX2 / W996xCF USB Camera Driver │ | ||
+ | │ Defined at drivers/media/usb/gspca/Kconfig:135 │ | ||
+ | │ Depends on: MEDIA_SUPPORT [=m] && MEDIA_USB_SUPPORT [=y] && MEDIA_CAMERA_SUPPORT [=y] && VIDEO_V4L2 [=m] && USB_GSPCA [=m] │ | ||
+ | │ Location: │ | ||
+ | │ -> Device Drivers │ | ||
+ | │ -> Multimedia support (MEDIA_SUPPORT [=m]) │ | ||
+ | │ -> Media USB Adapters (MEDIA_USB_SUPPORT [=y]) │ | ||
+ | │ (1) -> GSPCA based webcams (USB_GSPCA [=m]) | ||
+ | |||
+ | == crypto / dev mapper stuff== | ||
+ | |||
+ | Device Drivers —> | ||
+ | Multi-device support (RAID and LVM) —> | ||
+ | [*] Multiple devices driver support (RAID and LVM) | ||
+ | < > RAID support | ||
+ | <*> Device mapper support | ||
+ | <*> Crypt target support | ||
+ | |||
+ | File Systems —> | ||
+ | <*> The Extended 4 (ext4) filesystem | ||
+ | |||
+ | Cryptographic API —> | ||
+ | <*> SHA256 digest algorithm | ||
+ | <*> AES cipher algorithms | ||
+ | |||
+ | .config | ||
+ | CONFIG_MD=y | ||
+ | CONFIG_BLK_DEV_MD=y | ||
+ | CONFIG_MD_AUTODETECT=y | ||
+ | CONFIG_BLK_DEV_DM=y | ||
+ | CONFIG_DM_CRYPT=y | ||
+ | CONFIG_DM_SNAPSHOT=y | ||
+ | CONFIG_BLK_DEV_CRYPTOLOOP=y | ||
+ | CONFIG_CRYPTO=y | ||
+ | CONFIG_CRYPTO_AES=y | ||
+ | CONFIG_CRYPTO_AES_X86_64=m | ||
+ | CONFIG_CRYPTO_SHA256=m | ||
+ | CONFIG_CRYPTO_SHA512=y | ||
+ | |||
+ | |||
+ | |||
+ | == USB to Serial == | ||
+ | |||
+ | |||
+ | for usb2serial device as listed by lsusb: ATEN International Co., Ltd UC-232A Serial Port [pl2303] | ||
+ | |||
+ | Symbol: USB_SERIAL_PL2303 [=m] │ | ||
+ | │ Type : tristate │ | ||
+ | │ Prompt: USB Prolific 2303 Single Port Serial Driver │ | ||
+ | │ Defined at drivers/usb/serial/Kconfig:480 │ | ||
+ | │ Depends on: USB_SUPPORT [=y] && USB_SERIAL [=y] │ | ||
+ | │ Location: │ | ||
+ | │ -> Device Drivers │ | ||
+ | │ -> USB support (USB_SUPPORT [=y]) │ | ||
+ | │ (1) -> USB Serial Converter support (USB_SERIAL [=y]) | ||
+ | |||
+ | |||
+ | Symbol: USB_SERIAL_FTDI_SIO [=m] │ | ||
+ | │ Type : tristate │ | ||
+ | │ Prompt: USB FTDI Single Port Serial Driver │ | ||
+ | │ Defined at drivers/usb/serial/Kconfig:148 │ | ||
+ | │ Depends on: USB_SUPPORT [=y] && USB_SERIAL [=y] │ | ||
+ | │ Location: │ | ||
+ | │ -> Device Drivers │ | ||
+ | │ -> USB support (USB_SUPPORT [=y]) │ | ||
+ | │ (1) -> USB Serial Converter support (USB_SERIAL [=y]) | ||
+ | |||
+ | |||
+ | == TUN/TAP == | ||
+ | |||
+ | CONFIG_TUN | ||
+ | |||
+ | 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. | ||
+ | |||
+ | Required for openvpn. | ||
+ | |||
+ | Symbol: TUN [=m] | ||
+ | │ Type : tristate | ||
+ | │ Prompt: Universal TUN/TAP device driver support | ||
+ | │ Defined at drivers/net/Kconfig:206 | ||
+ | │ Depends on: NETDEVICES [=y] && NET_CORE [=y] | ||
+ | │ Location: | ||
+ | │ -> Device Drivers | ||
+ | │ -> Network device support (NETDEVICES [=y]) | ||
+ | │ (1) -> Network core driver support (NET_CORE [=y]) | ||
+ | │ Selects: CRC32 [=y] | ||
+ | |||
[[category:kernel]] | [[category:kernel]] |
Latest revision as of 17:01, 11 February 2014
Contents |
Android USB Tethering
below info modified from [1]
Required menuconfig prompts/settings according to gentoo wiki and my own configs:
Device Drivers ---> [*] Network device support ---> USB Network Adapters ---> <M> Multi-purpose USB Networking Framework -M- CDC Ethernet support (smart devices such as cable modems) <M> CDC EEM support <M> Host for RNDIS and ActiveSync devices (EXPERIMENTAL) <M> Simple USB Network Links (CDC Ethernet subset) [*] Embedded ARM Linux links
note ***
The prompts above frequently change from one kernel version to the next. The above settings were noted as of kernel version 3.8.3-gentoo-r1.
corresponding .config parameters spawned from above settings:
CONFIG_NETDEVICES=y CONFIG_USB_USBNET=m CONFIG_USB_NET_CDCETHER=m CONFIG_USB_NET_CDC_EEM=m CONFIG_USB_NET_RNDIS_HOST=m CONFIG_USB_NET_CDC_SUBSET=m CONFIG_USB_ARMLINUX=y
check config command run against your kernel config file to verify settings
cat .config | grep -E "NETDEVICES|USB_USBNET|USB_NET_CDC_SUBSET|USB_NET_CDCETHER|USB_NET_CDC_EEM|NET_RNDIS_HOST|USB_ARMLINUX"
iptables
-*- Networking support ---> Networking options ---> [*] Network packet filtering framework (Netfilter) ---> Core Netfilter Configuration ---> [*] Netfilter connection tracking support -*- Netfilter Xtables support (required for ip_tables) [*] "conntrack" connection tracking match support [*] "state" match support IP: Netfilter Configuration ---> [*] IPv4 connection tracking support (required for NAT) [*] IP tables support (required for filtering/masq/NAT) [*] Packet filtering
input devices
uinput
Symbol: INPUT_UINPUT [=m] │
│ Type : tristate │ │ Prompt: User level driver support │ │ Defined at drivers/input/misc/Kconfig:418 │ │ Depends on: !UML && INPUT [=y] && INPUT_MISC [=y] │ │ Location: │ │ -> Device Drivers │ │ -> Input device support │ │ -> Generic input layer (needed for keyboard, mouse, ...) (INPUT [=y]) │ │ (1) -> Miscellaneous devices (INPUT_MISC [=y])
Griffin PowerMate
Symbol: INPUT_POWERMATE [=m] │ │ Type : tristate │ │ Prompt: Griffin PowerMate and Contour Jog support │ │ Defined at drivers/input/misc/Kconfig:334 │ │ Depends on: !UML && INPUT [=y] && INPUT_MISC [=y] && USB_ARCH_HAS_HCD [=y] │ │ Location: │ │ -> Device Drivers │ │ -> Input device support │ │ -> Generic input layer (needed for keyboard, mouse, ...) (INPUT [=y]) │ │ (1) -> Miscellaneous devices (INPUT_MISC [=y]) │ │ Selects: USB [=y]
cameras and video 4 linux
Symbol: MEDIA_CAMERA_SUPPORT [=y] │
│ Type : boolean │ │ Prompt: Cameras/video grabbers support │ │ Defined at drivers/media/Kconfig:21 │ │ Depends on: MEDIA_SUPPORT [=y] │ │ Location: │ │ -> Device Drivers │ │ (1) -> Multimedia support (MEDIA_SUPPORT [=y])
Symbol: MEDIA_USB_SUPPORT [=y] │
│ Type : boolean │ │ Prompt: Media USB Adapters │ │ Defined at drivers/media/usb/Kconfig:1 │ │ Depends on: USB [=y] && MEDIA_SUPPORT [=y] │ │ Location: │ │ -> Device Drivers │ │ (1) -> Multimedia support (MEDIA_SUPPORT [=y])
above not tested
DYNEX usb webcam
Symbol: USB_GSPCA_OV519 [=n] │
│ Type : tristate │ │ Prompt: OV51x / OVFX2 / W996xCF USB Camera Driver │ │ Defined at drivers/media/usb/gspca/Kconfig:135 │ │ Depends on: MEDIA_SUPPORT [=m] && MEDIA_USB_SUPPORT [=y] && MEDIA_CAMERA_SUPPORT [=y] && VIDEO_V4L2 [=m] && USB_GSPCA [=m] │ │ Location: │ │ -> Device Drivers │ │ -> Multimedia support (MEDIA_SUPPORT [=m]) │ │ -> Media USB Adapters (MEDIA_USB_SUPPORT [=y]) │ │ (1) -> GSPCA based webcams (USB_GSPCA [=m])
crypto / dev mapper stuff
Device Drivers —>
Multi-device support (RAID and LVM) —> [*] Multiple devices driver support (RAID and LVM) < > RAID support <*> Device mapper support <*> Crypt target support
File Systems —>
<*> The Extended 4 (ext4) filesystem
Cryptographic API —>
<*> SHA256 digest algorithm <*> AES cipher algorithms
.config
CONFIG_MD=y CONFIG_BLK_DEV_MD=y CONFIG_MD_AUTODETECT=y CONFIG_BLK_DEV_DM=y CONFIG_DM_CRYPT=y CONFIG_DM_SNAPSHOT=y CONFIG_BLK_DEV_CRYPTOLOOP=y CONFIG_CRYPTO=y CONFIG_CRYPTO_AES=y CONFIG_CRYPTO_AES_X86_64=m CONFIG_CRYPTO_SHA256=m CONFIG_CRYPTO_SHA512=y
USB to Serial
for usb2serial device as listed by lsusb: ATEN International Co., Ltd UC-232A Serial Port [pl2303]
Symbol: USB_SERIAL_PL2303 [=m] │
│ Type : tristate │ │ Prompt: USB Prolific 2303 Single Port Serial Driver │ │ Defined at drivers/usb/serial/Kconfig:480 │ │ Depends on: USB_SUPPORT [=y] && USB_SERIAL [=y] │ │ Location: │ │ -> Device Drivers │ │ -> USB support (USB_SUPPORT [=y]) │ │ (1) -> USB Serial Converter support (USB_SERIAL [=y])
Symbol: USB_SERIAL_FTDI_SIO [=m] │ │ Type : tristate │ │ Prompt: USB FTDI Single Port Serial Driver │ │ Defined at drivers/usb/serial/Kconfig:148 │ │ Depends on: USB_SUPPORT [=y] && USB_SERIAL [=y] │ │ Location: │ │ -> Device Drivers │ │ -> USB support (USB_SUPPORT [=y]) │ │ (1) -> USB Serial Converter support (USB_SERIAL [=y])
TUN/TAP
CONFIG_TUN
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.
Required for openvpn.
Symbol: TUN [=m]
│ Type : tristate │ Prompt: Universal TUN/TAP device driver support │ Defined at drivers/net/Kconfig:206 │ Depends on: NETDEVICES [=y] && NET_CORE [=y] │ Location: │ -> Device Drivers │ -> Network device support (NETDEVICES [=y]) │ (1) -> Network core driver support (NET_CORE [=y]) │ Selects: CRC32 [=y]