Wednesday, May 14, 2008

My new motherboard: Discovering hardware with 'grml'

I've bought a new motherboard for a new PC I'm building. It's intended to run OpenSolaris with the ZFS file system and the Solaris iScsi target. But to kick-off, I'm going to start by taking a look at the system, running a Linux Live-CD distribution called 'grml'.

Gigabyte seem to have generated some confusion over the numbering of this motherboard. My board it labelled 'GA-P35C-DS3R v2.1'. A very similar motherboard, the 'GA-EP35C-DS3R' has been reviewed this month in 'PCpro' magazine here in the UK, and was selected as 'Labs Winner'.

So what is the difference between these two similarly named motherboards. Other are asking the same question, and the answer seems to be 'there is no difference'. They are both 'dynamic energy saver' motherboards.

Grml originates from Germany, and is based on a Debian. It boot's directly to a command line prompt, which I love, as this is where the real work is done.

On any new hardware I get my hands on, I like to boot up grml, and use it to poke around & identify what sort of hardware we have for hard drive interfaces and networking.

One of the reasons I picked this Gigabyte motherboard was that it used the Intel ICH9R chipset to provide six AHCI compatible SATA interfaces. In addition it has a JMicron interface chip, which can either provide two more AHCI sata ports, or alternatively run in legacy mode with old style IDE drives.

Again to kick off, I am running the JMicron in legacy mode, with a DVD drive
and a IDE drive hanging off of the ribbon cable.

Ok, lets take a look:

root@grml ~ # uname -a
Linux grml 2.6.23-grml64 #1 SMP PREEMPT Mon Feb 11 16:49:32 CET 2008 x86_64 GNU/Linux
root@grml ~ # lspci -nn
00:00.0 Host bridge [0600]: Intel Corporation 82G33/G31/P35/P31 Express DRAM Controller [8086:29c0] (rev 02)
00:01.0 PCI bridge [0604]: Intel Corporation 82G33/G31/P35/P31 Express PCI Express Root Port [8086:29c1] (rev 02)
00:1a.0 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 [8086:2937] (rev 02)
00:1a.1 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 [8086:2938] (rev 02)
00:1a.2 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #6 [8086:2939] (rev 02)
00:1a.7 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 [8086:293c] (rev 02)
00:1b.0 Audio device [0403]: Intel Corporation 82801I (ICH9 Family) HD Audio Controller [8086:293e] (rev 02)
00:1c.0 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 [8086:2940] (rev 02)
00:1c.3 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 4 [8086:2946] (rev 02)
00:1c.4 PCI bridge [0604]: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 [8086:2948] (rev 02)
00:1d.0 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 [8086:2934] (rev 02)
00:1d.1 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 [8086:2935] (rev 02)
00:1d.2 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 [8086:2936] (rev 02)
00:1d.7 USB Controller [0c03]: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 [8086:293a] (rev 02)
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev 92)
00:1f.0 ISA bridge [0601]: Intel Corporation 82801IR (ICH9R) LPC Interface Controller [8086:2916] (rev 02)
00:1f.2 SATA controller [0106]: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA AHCI Controller [8086:2922] (rev 02)
00:1f.3 SMBus [0c05]: Intel Corporation 82801I (ICH9 Family) SMBus Controller [8086:2930] (rev 02)
01:00.0 VGA compatible controller [0300]: nVidia Corporation NV44 [Quadro NVS 285] [10de:0165] (rev a1)
03:00.0 SATA controller [0106]: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller [197b:2363] (rev 02)
03:00.1 IDE interface [0101]: JMicron Technologies, Inc. JMicron 20360/20363 AHCI Controller [197b:2363] (rev 02)
04:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller [10ec:8168] (rev 01)

Here are some 'highlights' from the 'dmesg' command, showing I have a
Samsung SATA drive on one of the ICH9 ports, and a Western Digital drive
on the JMicron IDE port.

root@grml ~ # dmesg
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
JMB363: IDE controller at PCI slot 0000:03:00.1
PCI: Enabling device 0000:03:00.1 (0000 -> 0001)
ACPI: PCI Interrupt 0000:03:00.1[B] -> GSI 16 (level, low) -> IRQ 16
JMB363: chipset revision 2
JMB363: 100% native mode on irq 16
Probing IDE interface ide0...
hda: SAMSUNG CD-ROM SC-148C, ATAPI CD/DVD-ROM drive
hdb: WDC WD800JB-00CRA1, ATA DISK drive
hda: Disabling (U)DMA for SAMSUNG CD-ROM SC-148C (blacklisted)
hdb: selected mode 0x45
ahci 0000:00:1f.2: version 2.3
ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 19 (level, low) -> IRQ 19
ahci 0000:00:1f.2: AHCI 0001.0200 32 slots 6 ports 3 Gbps 0x3f impl SATA mode
ahci 0000:00:1f.2: flags: 64bit ncq sntf stag pm led clo pmp pio slum part
PCI: Setting latency timer of device 0000:00:1f.2 to 64
scsi0 : ahci
scsi1 : ahci
scsi2 : ahci
scsi3 : ahci
scsi4 : ahci
scsi5 : ahci
ata1: SATA max UDMA/133 cmd 0xffffc20000026100 ctl 0x0000000000000000 bmdma 0x0000000000000000 irq 507
ata2: SATA max UDMA/133 cmd 0xffffc20000026180 ctl 0x0000000000000000 bmdma 0x0000000000000000 irq 507
ata3: SATA max UDMA/133 cmd 0xffffc20000026200 ctl 0x0000000000000000 bmdma 0x0000000000000000 irq 507
ata4: SATA max UDMA/133 cmd 0xffffc20000026280 ctl 0x0000000000000000 bmdma 0x0000000000000000 irq 507
ata5: SATA max UDMA/133 cmd 0xffffc20000026300 ctl 0x0000000000000000 bmdma 0x0000000000000000 irq 507
ata6: SATA max UDMA/133 cmd 0xffffc20000026380 ctl 0x0000000000000000 bmdma 0x0000000000000000 irq 507
ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
ata1.00: ATA-7: SAMSUNG HD400LJ, ZZ100-15, max UDMA7
ata1.00: 781422768 sectors, multi 0: LBA48 NCQ (depth 31/32)
ata1.00: configured for UDMA/133
ata2: SATA link down (SStatus 0 SControl 300)
ata3: SATA link down (SStatus 0 SControl 300)
ata4: SATA link down (SStatus 0 SControl 300)
ata5: SATA link down (SStatus 0 SControl 300)
ata6: SATA link down (SStatus 0 SControl 300)
scsi 0:0:0:0: Direct-Access ATA SAMSUNG HD400LJ ZZ10 PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 781422768 512-byte hardware sectors (400088 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 19 (level, low) -> IRQ 19
ahci 0000:03:00.0: AHCI 0001.0000 32 slots 2 ports 3 Gbps 0x3 impl SATA mode
ahci 0000:03:00.0: flags: 64bit ncq pm led clo pmp pio slum part
PCI: Setting latency timer of device 0000:03:00.0 to 64
scsi6 : ahci
scsi7 : ahci
ata7: SATA max UDMA/133 cmd 0xffffc20000028100 ctl 0x0000000000000000 bmdma 0x0000000000000000 irq 19
ata8: SATA max UDMA/133 cmd 0xffffc20000028180 ctl 0x0000000000000000 bmdma 0x0000000000000000 irq 19
ata7: SATA link down (SStatus 0 SControl 300)
ata8: SATA link down (SStatus 0 SControl 300)
r8169 Gigabit Ethernet driver 2.2LK-NAPI loaded
eth0: RTL8168b/8111b at 0xffffc20000030000, 00:1a:4d:5e:b9:ba, XID 38500000 IRQ 16
r8169: eth0: link up

Ok, that's enough excitement for this time, as I'm out of time.
See you next time...

No comments: