Section 8.2. Devices


8.2. Devices

Linux supports a vast range of different types of devices (more than any other operating system ever has). This section shows how to enable some of the more common types.

8.2.1. USB

Linux supports many different types of USB devices. To enable USB support, you must first enable support for a USB controller, which drives the USB connection on the machine.

To determine if your machine has a USB controller, and which type it is, run the following command:

 $ /usr/sbin/lspci | grep USB 00:1d.0 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI Controller #1 (rev 02) 00:1d.1 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI Controller #2 (rev 02) 00:1d.2 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI Controller #3 (rev 02) 00:1d.3 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI Controller #4 (rev 02) 00:1d.7 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (rev 02) 

Note that your response will probably not be identical; what is important is that the command shows some USB controllers.

  1. Enable PCI support for the kernel:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     [*] PCI Support 

  2. Enable USB support for the kernel:

     Device Drivers     USB Support         [M] Support for Host-side USB 

  3. Enable the specific USB Host controllers for your machine (it is safe to enable them all if you do not know which you have):

     Device Drivers     USB Support     ---   USB Host Controller Drivers     [M]   EHCI HCD (USB 2.0) support     [M]   OHCI HCD support     [M]   UHCI HCD (most Intel and VIA) support 

  4. Individual USB devices also need their drivers to be enabled. A large majority of them are under the main USB driver section:

     Device Drivers     USB Support 

    But some devices, such as USB video and DVB and sound, are listed in the section controlling all of these types of devices. For example, the USB sound driver can be found under the Sound menu:

     Device drivers     Sound         [*] Sound card support             [*] Advanced Linux Sound Architecture                 USB Devices                     [M] USB Audio/MIDI driver 

If you want to insert USB storage devices (USB flash), look now at the section called "USB Storage," at the beginning of this chapter.

8.2.2. IEEE 1394 (FireWire)

IEEE 1394 is commonly known by the name FireWire, the name by which Apple Computer publicized it. IEEE 1394 is a high-speed bus that connects external devices, much as USB does.

To determine whether your machine has a FireWire controller and which type it is, run the following command:

 $ /usr/sbin/lspci | grep FireWire 06:0c.0 FireWire (IEEE 1394): Texas Instruments TSB43AB22/A IEEE-1394a-2000 Controller (PHY/Link) 06:0d.2 FireWire (IEEE 1394): Creative Labs SB Audigy FireWire Port (rev 04) 

Note that your response will probably not be identical; what is important is that the command shows some FireWire controllers.

  1. Enable PCI support for the kernel:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     [*] PCI Support 

  2. Enable IEEE 1394 support for the kernel:

     Device Drivers     IEEE 1394 (FireWire)     support         [*] IEEE 1394 (FireWire) support 

  3. Enable the specific type of FireWire host controller you have:

     Device Drivers     IEEE 1394 (FireWire) support         [*] IEEE 1394 (FireWire) support         ---   Device Drivers         [M]   Texas Instruments PCILynx support         [M]   OHCI-1394 support 

  4. Finally, enable the specific type of FireWire devices you have:

     Device Drivers     IEEE 1394 (FireWire) support         [*] IEEE 1394 (FireWire) support         ---   Protocol Drivers         [M]   OHCI-1394 Video support         [M]   SBP-2 support (Harddisks etc.)         [ ]     Enable Phys DMA support for SBP2 (Debug)         [M]   Ethernet over 1394         [M]   OHCI-DV I/O support         [M]   Raw IEEE1394 I/O support 

8.2.3. PCI Hotplug

PCI hotplug systems are becoming more popular with the use of ExpressCard and laptop docking stations.

To determine whether your machine has an ExpressCard controller, look at the hardware to see whether an ExpressCard card can be plugged into it.

  1. Enable PCI support for the kernel:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     [*] PCI Support 

  2. Enable PCI hotplug support for the kernel:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     [*] PCI Support     PCI Hotplug Support         [M] Support for PCI Hotplug (EXPERIMENTAL) 

  3. There is a wide range of different types of PCI hotplug controllers. For most laptops and for ExpressCard support, enable the ACPI controller:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     [*] PCI Support     PCI Hotplug Support         [M] Support for PCI Hotplug (EXPERIMENTAL)         [M]   ACPI PCI Hotplug driver 

  4. Also enable the PCI Express controller:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     [*] PCI Support     [*] PCI Express Support     [M]   PCI Express Hotplug driver 

8.2.3.1. PCMCIA/CardBus

PCMCIA and CardBus device support is in almost every laptop manufactured. Newer laptops, however, are switching to the ExpressCard format (see the PCI Hotplug recipe in the previous section, "PCI Hotplug").

To determine whether your machine has a PCMCIA controller, look at the hardware to see whether a PCMCIA card can be plugged into it.

  1. Enable PCI support for the kernel:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     [*] PCI Support 

  2. Enable PCCARD support for the kernel:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     PCCARD (PCMCIA/CardBus) support         [M] PCCard (PCMCIA/CardBus) support 

  3. Enable both PCMCIA and CardBus support to cover the widest range of devices:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     PCCARD (PCMCIA/CardBus) support         [M] PCCard (PCMCIA/CardBus) support         [M]   16-bit PCMCIA support         [*]   32-bit CardBus support 

    Enable the card bridge type for your laptop. The most common one is the "yenta-like" controller:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA)     PCCARD (PCMCIA/CardBus) support         [M] PCCard (PCMCIA/CardBus) support         [M]   CardBus yenta-compatible bridge support         [ ]   Cirrus PD6729 compatible bridge support         [ ]   i82092 compatible bridge support         [ ]   i82365 compatible bridge support         [ ]   Databook TCIC host bridge support 

8.2.4. Sound (ALSA)

Advanced Linux Sound Architecture (ALSA) is the current sound system for the Linux kernel. An earlier sound system (OSS) has been deprecated, and almost all of the older drivers have been removed from the kernel source tree.

To determine which type of sound controller is present in your machine, and what type it is, run the following command:

 $ /usr/sbin/lspci | grep -i audio 00:1f.5 Multimedia audio controller: Intel Corporation 82801EB/ER (ICH5/ ICH5R) AC'97 Audio Controller (rev 02) 06:0d.0 Multimedia audio controller: Creative Labs SB Audigy (rev 04) 

Note that your response will probably not be identical; what is important is that the command shows some Audio controllers.

  1. Enable basic sound support:

     Device Drivers     Sound         [M] Sound Card Support 

  2. Enable ALSA:

     Device Drivers     Sound         [M] Sound Card Support             [M] Advanced Linux Sound Architecture 

  3. There are a number of different base ALSA options, such as support for the older OSS sound protocol. If you have older applications, you should enable the related options:

     Device Drivers     Sound         [M] Sound Card Support             [M] Advanced Linux Sound Architecture             [M]   OSS Mixer API             [M]   OSS PCM (digital audio) API             [ ]     OSS PCM (digital audio) API - Include plugin system 

  4. Enable the specific type of sound device that you have. PCI sound cards are under the PCI submenu:

     Device Drivers     Sound         [M] Sound Card Support             [M] Advanced Linux Sound Architecture                 PCI Devices 



Linux Kernel in a Nutshell
Linux Kernel in a Nutshell (In a Nutshell (OReilly))
ISBN: 0596100795
EAN: 2147483647
Year: 2004
Pages: 113

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net