Comments are In BOLD and are RED.
00:00.0 Host bridge: Intel Corp. 82845 845 (Brookdale) Chipset Host Bridge (rev 04)
00:01.0 PCI bridge: Intel Corp. 82845 845 (Brookdale) Chipset AGP Bridge (rev 04)
Looks like we have an AGP card. We should check our vendor's spec sheet for our model and see if the Video chipset and model are listed in:
"Character devices" then under the "/dev/agpgart (AGP Support)" after it is enabled.
00:1d.0 USB Controller: Intel Corp.: Unknown device 2482 (rev 02)
00:1d.2 USB Controller: Intel Corp.: Unknown device 2487 (rev 02)
"Input core support" then select many if not all sub items of this as modules in case you ever need them for future devices.
"USB support" then "Support for USB"
Under "USB support" you should choose which "USB Host Controller Drivers" you need. Your vendor should be able to tell you which one you have, but if you can't tell, you can always make all of the config options under "USB Host Controller Drivers" as ("M") Modules and then experiment with loading them until you find the one that works for your system.
Under "USB support" and "USB Device Class drivers" you will see a long list of hardware to support. It would be a good idea to enable all of these as modules in case you should ever have a device that needs support for one.
00:1e.0 PCI bridge: Intel Corp. 82820 820 (Camino 2) Chipset PCI (-M) (rev 42)
00:1f.0 ISA bridge: Intel Corp.: Unknown device 248c (rev 02)
00:1f.1 IDE interface: Intel Corp.: Unknown device 248a (rev 02)
Tells you you have an IDE based interface for an IDE/ATA based Hard Disk. Some systems can have both IDE and SCSI, but since we dont see SCSI in this list, it is very likely that IDE is what we need for booting this system so IDE should be a static part of our kernel (not a module.)
(Choosing the IDE options is covered in detail in my dmesg decomposition)
00:1f.5 Multimedia audio controller: Intel Corp. AC'97 Audio Controller (rev 02)
"Sound" then "Sound card support" enabled
However, this is tricky. For my system, I check the laptop's dmesg and find this:
i810: Intel ICH3 found at IO 0xdc80 and 0xd800, MEM 0x0000 and 0x0000, IRQ 11
ieee1394: Host added: Node[00:1023] GUID[4a4fc00005c5e821] [Linux OHCI-1394]
i810_audio: Audio Controller supports 6 channels.
i810_audio: Defaulting to base 2 channel mode.
i810_audio: Resetting connection 0
ac97_codec: AC97 Audio codec, id: CRY91 (Unknown)
i810_audio: AC'97 codec 0 supports AMAP, total channels = 2
"Sound" then "Intel ICH (i8xx), SiS 7012, NVidia nForce Audio or AMD 768/811x"
But what about the AC'97 entry?
Not sure, but I enable the following as well as ("M") Modules:
- "Sound" then "ESS Technology Solo1"
- "Sound" then "ESS Maestro, Maestro2, Maestro2E driver"
- "Sound" then "ESS Maestro3/Allegro driver (EXPERIMENTAL)"
- "Sound" then "OSS sound modules"
- "Sound" then "100% Sound Blaster compatibles (SB16/32/64, ESS, Jazz16)"
When I had sound working, I just left the modules "as is" and forgot about them.
00:1f.6 Modem: Intel Corp.: Unknown device 2486 (rev 02)
After some examination from my vendor's product, I find this is a WinModem:
See http://www.ibiblio.org/pub/Linux/docs/HOWTO/Linmodem-HOWTO for more information on how to get a WinModem/LinModem to work. Support is lilmited.
01:00.0 VGA compatible controller: nVidia Corporation: Unknown device 0174 (rev a3)
For Nvidia, I could get basic support for graphics in XFree86 v 4.1, but I wanted to play Return to Castle Wolfenstein and use the 3d Hardware Accelleration, so I went with getting nVidia's drivers for Linux and XFree86 v4.x.
02:00.0 Ethernet controller: 3Com Corporation 3c905C-TX [Fast Etherlink] (rev 78)
Network Interface Card:
"Network device support" then "Network device support" then "Ethernet (10 or 100Mbit)" then "3c590/3c900 series (592/595/597) "Vortex/Boomerang" support"
02:01.0 CardBus bridge: Texas Instruments PCI4451 PC card Cardbus Controller
02:01.1 CardBus bridge: Texas Instruments PCI4451 PC card Cardbus Controller
PCMCIA: PCMCIA HowTo and PCMCIA-CS home
02:01.2 FireWire (IEEE 1394): Texas Instruments: Unknown device 8027
"IEEE 1394 (FireWire) support (EXPERIMENTAL)" then "IEEE 1394 (FireWire) support (EXPERIMENTAL)"
"IEEE 1394 (FireWire) support (EXPERIMENTAL)" then choose the devices that you wish to support in firewire. If you don't have them, then select them as modules in case you ever do get them.