Some features of the standard workstation that are relevant to this installation: Athlon 64 CPU; K8V-X motherboard.
If you have assembled the 2005.05.14 standard workstation instead, skip the disable-SATA instructions.
The FreeBSD 5.3 i386 CD, which you can obtain as part of the FreeBSD 5.3 boxed set, is an adequate substitute, but will run the Athlon 64 as a 32-bit system rather than a (faster) 64-bit system.
After four seconds, a K8V-X screen appears. Quickly press Delete.
``BIOS SETUP UTILITY.'' Press Down Down Enter Up Up Up Up Enter to disable Legacy Diskette A. Also set the date and time at this point, using Greenwich Mean Time rather than local time. (The local time zone is set later; the BIOS time should always be GMT.) Press Right Enter Down Enter.
``Memory Configuration.'' Press Down Enter.
``ECC Configuration.'' Press Enter Down Enter to turn on Master ECC, then Down Enter Down Enter to turn on DRAM ECC, then Down Enter Down Down Down Down Down Enter to set L2 Cache BG Scrub to 640ns, then Down Enter Down Down Down Down Down Enter to set Data Cache BG Scrub to 640ns, then Down Down Enter Down Enter to turn on DRAM SCRUB REDIRECT, then Down Enter Down Enter to turn on ECC Chip Kill, then Esc Esc Esc.
``BIOS SETUP UTILITY.'' Press Down Down Enter.
``OnBoard AC'97 Audio'' etc. Press Down Enter Down Enter to disable the SATA BOOTROM, then Esc.
``BIOS SETUP UTILITY.'' Press Right Right Enter.
``Boot Device Priority.'' Press Enter Down Enter to set the DVD-ROM as the first boot device, then Esc.
``Boot Settings.'' Press Down Enter.
``Boot Settings Configuration.'' Press Down Enter Up Enter to disable Full Screen Logo.
Insert the FreeBSD CD (5.3-RELEASE-amd64-disc1.iso). Press F10 Enter to save the BIOS setup and boot the machine.
``sysinstall Main Menu.'' Press Down Enter to ``Begin a standard installation.''
``In the next menu, you will need to set up a DOS-style'' blah blah blah. Press Enter.
``WARNING: A geometry of 387621/16/63 for ad1 is incorrect. Using a more likely geometry. If'' blah blah blah. Press Enter.
``FDISK Partition Editor.'' Press C Enter Enter to create an fdisk partition for FreeBSD. Partition data: offset 63, size 390716802, end 390716864, name ad1s1, ptype 8, desc freebsd, subtype 165. Press Q to continue.
``Install Boot Manager for drive ad1?'' Press Enter to install the FreeBSD Boot Manager.
``Now you need to create BSD partitions.'' Press Enter.
``FreeBSD Disklabel Editor.'' Press c Ctrl-u 2 g Enter Enter / Enter to create a 2-gigabyte root partition; c Ctrl-u 2 g Enter Down Enter to create a 2-gigabyte swap partition; c Enter Enter / u s r Enter to create a 182-gigabyte /usr partition. Press Q to continue.
``Choose Distributions.'' Press Down Enter to choose all distributions. (This should be the default for people with huge disks.)
``Would you like to install the FreeBSD ports collection?'' Press Enter. (Again, this should be the default.)
``Choose Distributions.'' Press Up Enter to continue.
``Choose Installation Media.'' Press Enter to install from CD.
``Last Chance! Are you SURE you want continue [sic] the installation?'' Press Enter. The installer spends 360 seconds copying files from the DVD to the hard disk.
``Congratulations! You now have FreeBSD installed on your system.'' Press Enter.
``Would you like to configure any Ethernet or SLIP/PPP network devices?'' Press Right Enter to say no.
``Do you want this machine to function as a network gateway?'' Press Enter to say no.
``Do you want to configure inetd and the network services that it provides?'' Press Enter to say no.
``Would you like to enable SSH login?'' Press Enter to say no.
``Do you want to have anonymous FTP access to this machine?'' Press Enter to say no.
``Do you want to configure this machine as an NFS server?'' Press Enter to say no.
``Do you want to configure this machine as an NFS client?'' Press Enter to say no.
``Would you like to customize your system console settings?'' Press Enter to say no.
``Would you like to set this machine's time zone now?'' Press Enter to say yes.
``Is this machine's CMOS clock set to UTC?'' Press Left Enter to say yes.
``Time Zone Selector.'' Press Down Enter to select America, PageDown PageDown Down Down Down Down Down Down Down Down Down Down Down Enter to select United States, Down Down Down Down Down Down Down Down Enter to select Central Time. (Or whatever is appropriate for your location.)
``Does the abbreviation CST look reasonable?'' Press Enter to say yes.
``Does this system have a PS/2, serial, or bus mouse?'' Press Left Enter to say yes.
``Please configure your mouse.'' Press Down Enter to ``Test and run the mouse daemon.'' (I did something more complicated, since I know that my mouse moves slowly: I pressed Down Down Down Down Enter to ``Set additional flags''; then - a Space 2 Enter to set flags ``-a 2''; then Up Up Up Enter to ``Test and run the mouse daemon.'')
``Is the mouse cursor moving?'' Try moving the mouse around. Press Enter to say yes.
``Please configure your mouse.'' Press Up Enter to continue.
``The FreeBSD package collection'' blah blah blah. Press Right Enter to say no.
``Would you like to add any initial user accounts to the system?'' Press Enter to say yes.
``User and group management.'' I pressed Down Down Enter d j b Tab Tab Tab Enter to add a new ``djb'' group; Up Enter d j b Tab Tab d j b Tab MyPassword Tab Tab Tab Tab Backspace Backspace c s h Tab Enter to add a new ``djb'' user in the ``djb'' group; and Up Enter to continue. You'll want to change ``djb'' to your favorite account name. (There's a risk here: you may bump into an account name already used by FreeBSD programs. You can't use the name ``pop,'' for example. I have a registry of account names used by UNIX programs. Global account names used by programs should start with a capital G, so that you can safely use any combination of lowercase letters.)
``Now you must set the system manager's password.'' Press Enter. Type the root password, Enter, the root password, Enter.
``Visit the general configuration menu for a chance to set any last options?'' Press Enter to say no.
``sysinstall Main Menu.'' Press Right Enter to exit.
``Are you sure you wish to exit?'' Press Left Enter to say yes. Quickly remove the CD. (You can't remove the CD until about a second after you press Left Enter. You have to remove the CD promptly so that the computer boots off the hard drive rather than the CD.)
Wait a minute or so for FreeBSD to start.
root RootPasswordto log in as root. (Once you've finished installing software, you should log in as a non-root user, so that any mistakes you make won't hurt the operating-system installation; but for the moment you have to be root.)
Type
vi /etc/rc.confto edit /etc/rc.conf. Decide on a hostname, IP address, and Internet router for your computer; my computer is called feedme, has IP address 1.2.3.50, and has Internet router 1.2.3.254. Inside vi, press O, type
hostname="feedme" ifconfig_sk0="inet 1.2.3.50 netmask 255.255.255.0 mtu 1400" defaultrouter="1.2.3.254" syslogd_flags="-ss" sendmail_enable="NONE"to add those lines to the top of /etc/rc.conf, and press Esc Z Z to finish editing. (The mtu 1400 isn't necessary in most installations, but it works around a bug in some DSL-firewall combinations. It's important to include a hostname line for X; otherwise xdm doesn't set up credentials for the local computer, so any attempt to log in through xdm fails with ``Xlib: Client is not authorized to connect to Server.'')
Decide on a DNS server for your computer; my computer has nameserver 1.2.3.75. Type
echo 'nameserver 1.2.3.75' >> /etc/resolv.confto create a new file /etc/resolv.conf containing the line nameserver 1.2.3.75.
Type
echo 'daily_output="/var/log/daily.log"' >> /etc/periodic.conf echo 'daily_status_security_output="/var/log/security.log"' >> /etc/periodic.conf echo 'weekly_output="/var/log/weekly.log"' >> /etc/periodic.conf echo 'monthly_output="/var/log/monthly.log"' >> /etc/periodic.confto create a new /etc/periodic.conf. (FreeBSD periodically produces summaries of the system status. This file says that the summaries should be placed into various files in /var/log; this overrides some silly default behavior.)
Type
echo 'link acd0 cdrom' >> /etc/devfs.conf echo 'link acd0 dvd' >> /etc/devfs.conf echo 'link acd0 acd0c' >> /etc/devfs.confto specify /dev/cdrom, /dev/dvd, and /dev/acd0c as alternate names for the DVD drive.
Type
echo 'agp_load="YES"' >> /boot/loader.confto create a new /boot/loader.conf containing the line agp_load="YES". (This accelerates video.)
Type
vi /usr/src/sys/pci/if_sk.c :1590 :s/2/1and press Z Z to change ramsize = 0x20000 to ramsize = 0x10000. (This fixes a kernel bug dealing with the 88E8001 network card in the K8V-X. It won't be necessary in subsequent versions of FreeBSD.)
Type
cd /usr/src/sys/amd64/conf cp GENERIC feedme vi feedme /ident :s/GENERIC/feedme odevice sound device "snd_via8233" options LINPROCFS options COMPAT_43 options COMPAT_LINUX32and press Esc Z Z. (This creates a /usr/src/sys/amd64/conf/feedme kernel configuration file specifying sound support and various compatibility options.) Type
cd /usr/src time make kernel KERNCONF=feedmeto compile and install a new kernel. This takes about 500 seconds.
Type
rebootto restart the computer. This takes about 90 seconds. Log in again as root.
telnet www.cnn.com 80to make sure that the network is up. The normal response is
Trying 64.236.24.4... Connected to cnn.com. Escape character is '^]'. Connection closed by foreign host.with a fifteen-second pause before the last line.
Type
cd /usr/ports/sysutils/consolehm; make installThe computer will spend a few minutes downloading, compiling, and installing the consolehm program. Type
chmand, after watching the output for a little while, press Ctrl-c. The output should look like
Motherboard Temperature: 31 C CPU_0 Temperature: 34 C CPU_1 Temperature: 0 C VCore: 1.51562 V Vit: 0 V Vio: 3.21875 V +5V: 4.82734 V +12V: 11.4375 V -12V: -11.6875 V -5V: -6.65391 V Fan 1: 2083 rpm Fan 2: 3214 rpm Fan 3: Not AvailableIf chm says ``Command not found,'' type
rehash chminstead; the same advice applies to any other recently installed program.
cd /usr/ports/x11/kde3; make installto download, compile, and install kde. You will be faced with occasional annoying prompts from the dark ages of software installation, asking you whether you would like to set various incomprehensible options; for each prompt, type Right Left Enter to continue.
(I actually did a much faster
cd /usr/ports/x11-wm/fvwm2-i18n; make installbecause fvwm2 is my preferred window manager. But if you're a new user then you should start with KDE. I should modify these instructions to take advantage of the prebuilt KDE packages on CD.)
Type
Xorg -configureto create a sample X configuration, /root/xorg.conf.new.
At this point I simplified the X configuration to support only 1024x768, since my computer is attached to a 1024x768 LCD: I typed
vi xorg.conf.new /Section..Screento edit /root/xorg.conf.new and skip to the Screen section; I pressed d G to delete the Screen section; I pressed O and typed
Section "Screen" Identifier "Screen0" Device "Card0" Monitor "Monitor0" DefaultDepth 24 SubSection "Display" Viewport 0 0 Depth 24 Modes "1024x768" EndSubSection EndSectionto add those lines to the file; I pressed Esc Z Z to finish editing.
Type
X -xf86config /root/xorg.conf.newand look for a gray background with a small black X that moves with the mouse. To change resolution, press Ctrl-Alt-Plus or Ctrl-Alt-Minus. Press Ctrl-Alt-Backspace to quit X.
Type
cp xorg.conf.new /etc/X11/xorg.confto install the X configuration.
Type
vi /usr/X11R6/lib/X11/xdm/Xservers :$ :s/$/ -nolisten tcp :w!to add -nolisten tcp to the end of the :0 line in /usr/X11R6/lib/X11/xdm/Xservers. Press Z Z to finish editing.
Type
echo 'chown $USER /dev/acd0' >> /usr/X11R6/lib/X11/xdm/GiveConsole echo 'chown $USER /dev/uscanner0' >> /usr/X11R6/lib/X11/xdm/GiveConsole echo 'chown $USER /dev/ulpt0' >> /usr/X11R6/lib/X11/xdm/GiveConsole echo 'chown root /dev/acd0' >> /usr/X11R6/lib/X11/xdm/TakeConsole echo 'chown root /dev/uscanner0' >> /usr/X11R6/lib/X11/xdm/TakeConsole echo 'chown root /dev/ulpt0' >> /usr/X11R6/lib/X11/xdm/TakeConsoleto add various lines to /usr/X11R6/lib/X11/xdm/GiveConsole and /usr/X11R6/lib/X11/xdm/TakeConsole. (These lines allow any user who logs in at the console to control the DVD drive and various USB devices. Security problem: control can be extended past logout. Usability problem: control isn't provided if the devices aren't plugged in and turned on when the user logs in. Further usability problem: apparently this control can't be provided for USB cameras, because /dev/ugen0.[123] are continually recreated as root. A simple user-level device handler could easily fix all of these problems.)
Type
echo 'exec startkde' > /home/root/.xsessionto specify KDE as root's window manager.
Type
vi /etc/ttys /xterm :s/off/onto edit /etc/ttys, skip to the xterm line, and change off to on. Press Z Z to finish editing.
Type
kill -1 1to start X with an xdm login screen (``Welcome to feedme''). Press Ctrl-Alt-F1 to go back to the text-mode (non-graphical) login; type
logoutto log out; press Alt-F9 to go back to X. Type
root RootPasswordto log in as root in X.
After KDE starts, select Run Command and type
xtermto create an xterm window. (With fvwm2: left-click with the mouse; move the mouse down to select XTerm; left-click again to create an xterm window; move the mouse into that window.) You can type commands in the xterm window the same way as you did for the text-mode login.
Type
cd /usr/ports/www/firefox; make installto download, compile, and install Firefox.
Type
firefoxand surf the web.
cd /usr/ports/multimedia/ogle; make installto download, compile, and install the ogle program.
Insert a movie DVD. Type
ogleto play the DVD.
I've encountered problems, presumably 64-bit problems in Ogle, with several DVDs: ``Play Movie'' produces excessively fast video with no audio. But, in every case, a scene-selection of Chapter 1 fixes the problem for playing the movie (and then pressing > repeatedly to get back to the title menu fixes the problem for the title menu itself).
Note regarding multiple video outputs: You can plug a VGA screen and a DVI screen into the video card simultaneously. (Make sure that the DVI screen is on when the computer boots; if you turn it on later, the video card won't send anything to it.) DVD-playing windows (and anything else displayed through XVideo) will appear only on the DVI screen. You can run
env OGLE_USE_XV=0 oglewhich has video appear on both screens simultaneously, but this disables XVideo features such as scaling. You can add
Option "OverlayOnCRTC2" "True"to /etc/X11/xorg.conf (before X starts) to put video on the VGA screen, but this disables video on the DVI screen.
cd /usr/ports/audio/cdparanoia; make install cd /usr/ports/audio/flac; make install cd /usr/ports/audio/vorbis-tools; make install cd /usr/ports/audio/mpg123; make install cd /usr/ports/audio/abcde; make install cd /usr/ports/audio/grip; make installto install various audio programs.
I should give an example here of using a CD.
Type
cd /usr/ports/print/ghostscript-gnu; make install cd /usr/ports/print/gimp-print; make installto install the gs and ijsgimpprint programs.
Connect a USB cable from the printer to the computer.
At this point it's possible to print a PostScript file foo.ps:
gs -dSAFER -dBATCH -dNOPAUSE \ -r600x600 \ -sProcessColorModel=DeviceGray \ -sDEVICE=ijs -sIjsServer=/usr/local/bin/ijsgimpprint \ -sDeviceManufacturer=CANON -sDeviceModel=bjc-7000 \ -sIjsParams='Quality=600x600dpi,MediaType=Plain,Density=0.8,ImageType=2' \ -sOutputFile=/dev/ulpt0 -q foo.psLeave out the -sProcessColorModel=DeviceGray if you want color output. I'm not sure whether the DeviceGray tells this printer to use its text-black ink tank rather than its color-black ink tank.
There are fancier printing systems that handle duplex printing, background printing, network printing, file formats other than PostScript, etc.
Type
cd /usr/ports/graphics/gtkam; make install cd /usr/ports/graphics/gphoto2; make install cd /usr/ports/graphics/netpbm; make install cd /usr/ports/x11/xloadimage; make installto install gtkam etc.
Connect a USB cable from the camera to the computer. There's a front USB port on the computer that's convenient for mobile devices.
At this point gtkam should work, although I actually use command-line gphoto2 scripts for fast high-volume picture management.
Type
cd /usr/ports/graphics/xsane; make installto install the scanimage and xsane programs.
Type
echo usb /dev/uscanner0 >> /usr/local/etc/sane.d/epson.confto inform the scanning software that /dev/uscanner0 is an Epson scanner.
Connect a USB cable from the scanner to the computer.
At this point xsane should work, although I actually use command-line scanimage scripts for fast high-volume scanning.
Copyright (c) 1992-2004 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.3-RELEASE #0: Fri Nov 26 01:11:01 CST 2004 root@:/usr/obj/usr/src/sys/feedme Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: AMD Athlon(tm) 64 Processor 3000+ (2002.57-MHz K8-class CPU) Origin = "AuthenticAMD" Id = 0xfc0 Stepping = 0 Features=0x78bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2> AMD Features=0xe0500800<SYSCALL,NX,MMX+,LM,3DNow+,3DNow> real memory = 536018944 (511 MB) avail memory = 505966592 (482 MB) ACPI APIC Table: <A M I OEMAPIC > ioapic0: Changing APIC ID to 1 MADT: Forcing active-low polarity and level trigger for SCI ioapic0 <Version 0.3> irqs 0-23 on motherboard acpi0: <A M I OEMRSDT> on motherboard acpi0: Power Button (fixed) Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 cpu0: <ACPI CPU> on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 agp0: <VIA 8385 host to PCI bridge> mem 0xf8000000-0xfbffffff at device 0.0 on pci0 pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0 pcib1: could not get PCI interrupt routing table for \\_SB_.PCI0.P0P1 - AE_NOT_FOUND pci1: <ACPI PCI bus> on pcib1 pci1: <display, VGA> at device 0.0 (no driver attached) skc0: <Marvell Gigabit Ethernet> port 0xcc00-0xccff mem 0xfdd00000-0xfdd03fff irq 17 at device 10.0 on pci0 skc0: Yukon Gigabit Ethernet 10/100/1000Base-T Adapter sk0: <Marvell Semiconductor, Inc. Yukon> on skc0 sk0: Ethernet address: 00:11:2f:75:ad:0f miibus0: <MII bus> on sk0 e1000phy0: <Marvell 88E1000 Gigabit PHY> on miibus0 e1000phy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX-FDX, auto atapci0: <VIA 6420 SATA150 controller> port 0xd000-0xd0ff,0xd400-0xd40f,0xd800-0xd803,0xe000-0xe007,0xe400-0xe403,0xe800-0xe807 irq 20 at device 15.0 on pci0 ata2: channel #0 on atapci0 ata3: channel #1 on atapci0 atapci1: <VIA 8237 UDMA133 controller> port 0xfc00-0xfc0f,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 15.1 on pci0 ata0: channel #0 on atapci1 ata1: channel #1 on atapci1 uhci0: <VIA 83C572 USB controller> port 0xdc00-0xdc1f irq 21 at device 16.0 on pci0 uhci0: [GIANT-LOCKED] usb0: <VIA 83C572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered uhci1: <VIA 83C572 USB controller> port 0xec00-0xec1f irq 21 at device 16.1 on pci0 uhci1: [GIANT-LOCKED] usb1: <VIA 83C572 USB controller> on uhci1 usb1: USB revision 1.0 uhub1: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1: 2 ports with 2 removable, self powered uhci2: <VIA 83C572 USB controller> port 0xc000-0xc01f irq 21 at device 16.2 on pci0 uhci2: [GIANT-LOCKED] usb2: <VIA 83C572 USB controller> on uhci2 usb2: USB revision 1.0 uhub2: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub2: 2 ports with 2 removable, self powered uhci3: <VIA 83C572 USB controller> port 0xc400-0xc41f irq 21 at device 16.3 on pci0 uhci3: [GIANT-LOCKED] usb3: <VIA 83C572 USB controller> on uhci3 usb3: USB revision 1.0 uhub3: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub3: 2 ports with 2 removable, self powered pci0: <serial bus, USB> at device 16.4 (no driver attached) isab0: <PCI-ISA bridge> at device 17.0 on pci0 isa0: <ISA bus> on isab0 pcm0: <VIA VT8237> port 0xc800-0xc8ff irq 22 at device 17.5 on pci0 pcm0: [GIANT-LOCKED] pcm0: <Analog Devices AD1980 AC97 Codec> acpi_button0: <Power Button> on acpi0 acpi_button1: <Sleep Button> on acpi0 atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: [GIANT-LOCKED] psm0: model Generic PS/2 mouse, device ID 0 ppc0: <Standard parallel printer port> port 0x378-0x37f irq 7 on acpi0 ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode ppbus0: <Parallel port bus> on ppc0 plip0: <PLIP network interface> on ppbus0 lpt0: <Printer> on ppbus0 lpt0: Interrupt-driven port ppi0: <Parallel I/O> on ppbus0 sio0: configured irq 4 not in bitmap of probed irqs 0 sio0: port may not be enabled sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0 sio0: type 16550A orm0: <ISA Option ROM> at iomem 0xc0000-0xccfff on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> sio1: configured irq 3 not in bitmap of probed irqs 0 sio1: port may not be enabled vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounter "TSC" frequency 2002574211 Hz quality 800 Timecounters tick every 0.976 msec acd0: DVDROM <IDE DVD-ROM 16X/VER 7.92> at ata0-master UDMA33 ad1: 190782MB <WDC WD2000JB-16FUA0/15.05R15> [387621/16/63] at ata0-slave UDMA100 Mounting root from ufs:/dev/ad1s1apciconf -lv prints
agp0@pci0:0:0: class=0x060000 card=0x80a31043 chip=0x31881106 rev=0x01 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'Apollo K8HTB CPU to PCI Bridge' class = bridge subclass = HOST-PCI pcib1@pci0:1:0: class=0x060400 card=0x00000080 chip=0xb1881106 rev=0x00 hdr=0x01 vendor = 'VIA Technologies Inc' device = 'Apollo K8HTB CPU to AGP 2.0/3.0 Bridge' class = bridge subclass = PCI-PCI skc0@pci0:10:0: class=0x020000 card=0x811a1043 chip=0x432011ab rev=0x13 hdr=0x00 vendor = 'Marvell Semiconductor (Was: Galileo Technology Ltd)' device = '88E8001 Gigabit 32-bit Ethernet Controller with Integrated PHY' class = network subclass = ethernet atapci0@pci0:15:0: class=0x010400 card=0x80ed1043 chip=0x31491106 rev=0x80 hdr=0x00 vendor = 'VIA Technologies Inc' device = '??? SATA RAID Controller' class = mass storage subclass = RAID atapci1@pci0:15:1: class=0x01018a card=0x80ed1043 chip=0x05711106 rev=0x06 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'VT82xxxx EIDE Controller (All VIA Chipsets)' class = mass storage subclass = ATA uhci0@pci0:16:0: class=0x0c0300 card=0x80ed1043 chip=0x30381106 rev=0x81 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'VT82xxxxx UHCI USB 1.1 Controller (All VIA Chipsets)' class = serial bus subclass = USB uhci1@pci0:16:1: class=0x0c0300 card=0x80ed1043 chip=0x30381106 rev=0x81 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'VT82xxxxx UHCI USB 1.1 Controller (All VIA Chipsets)' class = serial bus subclass = USB uhci2@pci0:16:2: class=0x0c0300 card=0x80ed1043 chip=0x30381106 rev=0x81 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'VT82xxxxx UHCI USB 1.1 Controller (All VIA Chipsets)' class = serial bus subclass = USB uhci3@pci0:16:3: class=0x0c0300 card=0x80ed1043 chip=0x30381106 rev=0x81 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'VT82xxxxx UHCI USB 1.1 Controller (All VIA Chipsets)' class = serial bus subclass = USB none0@pci0:16:4: class=0x0c0320 card=0x80ed1043 chip=0x31041106 rev=0x86 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'VT6202 USB 2.0 Enhanced Host Controller' class = serial bus subclass = USB isab0@pci0:17:0: class=0x060100 card=0x80ed1043 chip=0x32271106 rev=0x00 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'VT8237 PCI-to-ISA Bridge' class = bridge subclass = PCI-ISA pcm0@pci0:17:5: class=0x040100 card=0x80b01043 chip=0x30591106 rev=0x60 hdr=0x00 vendor = 'VIA Technologies Inc' device = 'VT8233/33A/8235/8237 AC97 Enhanced Audio Controller' class = multimedia subclass = audio hostb0@pci0:24:0: class=0x060000 card=0x00000000 chip=0x11001022 rev=0x00 hdr=0x00 vendor = 'Advanced Micro Devices (AMD)' device = 'Athlon 64 / Opteron HyperTransport Technology Configuration' class = bridge subclass = HOST-PCI hostb1@pci0:24:1: class=0x060000 card=0x00000000 chip=0x11011022 rev=0x00 hdr=0x00 vendor = 'Advanced Micro Devices (AMD)' device = 'Athlon 64 / Opteron Address Map' class = bridge subclass = HOST-PCI hostb2@pci0:24:2: class=0x060000 card=0x00000000 chip=0x11021022 rev=0x00 hdr=0x00 vendor = 'Advanced Micro Devices (AMD)' device = 'Athlon 64 / Opteron DRAM Controller' class = bridge subclass = HOST-PCI hostb3@pci0:24:3: class=0x060000 card=0x00000000 chip=0x11031022 rev=0x00 hdr=0x00 vendor = 'Advanced Micro Devices (AMD)' device = 'Athlon 64 / Opteron Miscellaneous Control' class = bridge subclass = HOST-PCI none1@pci1:0:0: class=0x030000 card=0x51591002 chip=0x51591002 rev=0x00 hdr=0x00 vendor = 'ATI Technologies Inc.' device = 'RV100 Radeon 7000 / Radeon VE' class = display subclass = VGA