Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions

  




 

 

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.

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.

Enable PCI support for the kernel:

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

Enable USB support for the kernel:

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

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

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”.

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 is 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.

Enable PCI support for the kernel:

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

Enable IEEE 1394 support for the kernel:

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

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

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

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.

Enable PCI support for the kernel:

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

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)

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

as well as the PCI Express controller:

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

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 section called “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.

Enable PCI support for the kernel:

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

Enable PCCARD support for the kernel:

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

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

Sound (ALSA)

ALSA (Advanced Linux Sound Architecture) 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.

Enable basic sound support:

Device Drivers
    Sound
        [M] Sound Card Support

Enable ALSA:

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

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

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


 
 
  Published under the terms of the Creative Commons License Design by Interspire