Difference between revisions of "Common kernel configs"

From thelinuxwiki
Jump to: navigation, search
 
(17 intermediate revisions by one user not shown)
Line 1: Line 1:
  
  
== android / phone stuff ==
+
== Android USB Tethering ==
 
+
below info modified from [http://wiki.gentoo.org/wiki/Android_USB_Tethering]
Device Drivers --->
+
  
 +
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 --->
          [*] Multi-purpose USB Networking Framework
+
            <M> Multi-purpose USB Networking Framework
               <M> CDC Ethernet support
+
               -MCDC 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)
              <M>  Host for RNDIS and ActiveSync devices
+
                  [*] Embedded ARM Linux links
          [*] 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'''
-> Device Drivers
 
  -> Input device support
 
    -> Generic input layer
 
      -> Miscellaneous devices
 
          <M> User level driver support
 
  
 +
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]                                                                                          │  
          <*> Video For Linux
+
  │ Type  : boolean                                                                                                            │ 
          [*]  Cameras/video grabbers support
+
  │ Prompt: Cameras/video grabbers support                                                                                      │ 
          [*V4L platform devices --->
+
  │  Defined at drivers/media/Kconfig:21                                                                                      │ 
          [*Media USB Adapters --->
+
  │  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]