Quick sanity test for sili(4)/ahci(4) diff

2011-05-06 Thread Matthew Dempsky
If you have a sili(4) or ahci(4), I'd appreciate a quick test of the
diff below.  As long as you can still mount your disks without
panicking, then it worked. :)

One test for each is sufficient, so please reply to the list to save
others from redundant effort.

Index: ata/atascsi.c
===
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ata/atascsi.c,v
retrieving revision 1.104
diff -u -p -r1.104 atascsi.c
--- ata/atascsi.c   5 May 2011 19:23:05 -   1.104
+++ ata/atascsi.c   6 May 2011 17:41:20 -
@@ -1590,10 +1590,12 @@ atascsi_io_get(void *cookie)
 void
 atascsi_io_put(void *cookie, void *io)
 {
-   struct ata_xfer *xa = io;
+   struct atascsi_host_port*ahp = cookie;
+   struct atascsi  *as = ahp->ahp_as;
+   struct ata_xfer *xa = io;
 
xa->state = ATA_S_COMPLETE; /* XXX this state machine is dumb */
-   xa->ata_put_xfer(xa);
+   as->as_methods->ata_put_xfer(xa);
 }
 
 void
Index: ata/atascsi.h
===
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ata/atascsi.h,v
retrieving revision 1.45
diff -u -p -r1.45 atascsi.h
--- ata/atascsi.h   26 Jan 2011 21:41:00 -  1.45
+++ ata/atascsi.h   5 May 2011 19:33:35 -
@@ -18,6 +18,9 @@
  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
+#ifndef _DEV_ATA_ATASCSI_H_
+#define _DEV_ATA_ATASCSI_H_
+
 struct atascsi;
 struct scsi_link;
 
@@ -327,8 +330,6 @@ struct ata_xfer {
void*atascsi_private;
 
int pmp_port;
-
-   void(*ata_put_xfer)(struct ata_xfer *);
 };
 
 /*
@@ -339,6 +340,7 @@ struct atascsi_methods {
int (*probe)(void *, int, int);
void(*free)(void *, int, int);
struct ata_xfer *   (*ata_get_xfer)(void *, int);
+   void(*ata_put_xfer)(struct ata_xfer *);
void(*ata_cmd)(struct ata_xfer *);
 };
 
@@ -368,3 +370,5 @@ int atascsi_probe_dev(struct atascsi *,
 intatascsi_detach_dev(struct atascsi *, int, int, int);
 
 void   ata_complete(struct ata_xfer *);
+
+#endif /* _DEV_ATA_ATASCSI_H_ */
Index: ic/sili.c
===
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ic/sili.c,v
retrieving revision 1.47
diff -u -p -r1.47 sili.c
--- ic/sili.c   26 Jan 2011 21:41:00 -  1.47
+++ ic/sili.c   5 May 2011 19:34:11 -
@@ -211,6 +211,7 @@ struct atascsi_methods sili_atascsi_meth
sili_ata_probe,
sili_ata_free,
sili_ata_get_xfer,
+   sili_ata_put_xfer,
sili_ata_cmd
 };
 
@@ -833,7 +834,6 @@ sili_ccb_alloc(struct sili_port *sp)
ccb->ccb_xa.fis = (struct ata_fis_h2d *)&prb->fis;
ccb->ccb_xa.packetcmd = ((struct sili_prb_packet *)prb)->cdb;
ccb->ccb_xa.tag = i;
-   ccb->ccb_xa.ata_put_xfer = sili_ata_put_xfer;
ccb->ccb_xa.state = ATA_S_COMPLETE;
 
sili_put_ccb(ccb);
Index: pci/ahci.c
===
RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/pci/ahci.c,v
retrieving revision 1.177
diff -u -p -r1.177 ahci.c
--- pci/ahci.c  24 Apr 2011 11:09:48 -  1.177
+++ pci/ahci.c  5 May 2011 19:33:58 -
@@ -622,6 +622,7 @@ struct atascsi_methods ahci_atascsi_meth
ahci_ata_probe,
ahci_ata_free,
ahci_ata_get_xfer,
+   ahci_ata_put_xfer,
ahci_ata_cmd
 };
 
@@ -1227,8 +1228,6 @@ nomem:
(struct ata_fis_h2d *)ccb->ccb_cmd_table->cfis;
ccb->ccb_xa.packetcmd = ccb->ccb_cmd_table->acmd;
ccb->ccb_xa.tag = i;
-
-   ccb->ccb_xa.ata_put_xfer = ahci_ata_put_xfer;
 
ccb->ccb_xa.state = ATA_S_COMPLETE;
ahci_put_ccb(ccb);



Re: Quick sanity test for sili(4)/ahci(4) diff

2011-05-06 Thread Mattieu Baptiste
On Fri, May 6, 2011 at 7:52 PM, Matthew Dempsky  wrote:
> If you have a sili(4) or ahci(4), I'd appreciate a quick test of the
> diff below.  As long as you can still mount your disks without
> panicking, then it worked. :)
>
> One test for each is sufficient, so please reply to the list to save
> others from redundant effort.

It works on ahci(4):

OpenBSD 4.9-current (GENERIC.MP) #79: Fri May  6 21:38:57 CEST 2011
r...@kronenbourg.panam.brimbelle.org:/usr/src/sys/arch/amd64/compile/GENE
RIC.MP
real mem = 4292280320 (4093MB)
avail mem = 4163969024 (3971MB)
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.6 @ 0xf0710 (68 entries)
bios0: vendor American Megatrends Inc. version "2003" date 12/14/2010
bios0: ASUSTeK Computer INC. P7P55D
acpi0 at bios0: rev 2
acpi0: sleep states S0 S1 S3 S4 S5
acpi0: tables DSDT FACP APIC MCFG OEMB HPET DMAR ASPT OSFR
acpi0: wakeup devices P0P4(S4) BR1E(S4) UAR1(S4) PS2K(S4) PS2M(S4)
EUSB(S4) USB0(S4) USB1(S4) USB2(S4) USB3(S4) USBE(S4) USB4(S4)
USB5(S4) USB6(S4) BR21(S4) BR22(S4) BR23(S4) P0P1(S4) P0P3(S4)
P0P5(S4) P0P6(S4) USB8(S4) BR20(S4) BR24(S4) BR25(S4) BR26(S4)
BR27(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz, 4017.02 MHz
cpu0:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUS
H,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,PCLMUL,MWAIT,DS-CPL,VMX,SMX,ES
T,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AES,NXE,LONG
cpu0: 256KB 64b/line 8-way L2 cache
cpu0: apic clock running at 160MHz
cpu1 at mainbus0: apid 4 (application processor)
cpu1: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz, 4016.54 MHz
cpu1:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUS
H,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,PCLMUL,MWAIT,DS-CPL,VMX,SMX,ES
T,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AES,NXE,LONG
cpu1: 256KB 64b/line 8-way L2 cache
cpu2 at mainbus0: apid 1 (application processor)
cpu2: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz, 4016.54 MHz
cpu2:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUS
H,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,PCLMUL,MWAIT,DS-CPL,VMX,SMX,ES
T,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AES,NXE,LONG
cpu2: 256KB 64b/line 8-way L2 cache
cpu3 at mainbus0: apid 5 (application processor)
cpu3: Intel(R) Core(TM) i5 CPU 660 @ 3.33GHz, 4016.54 MHz
cpu3:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUS
H,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,PCLMUL,MWAIT,DS-CPL,VMX,SMX,ES
T,TM2,SSSE3,CX16,xTPR,PDCM,SSE4.1,SSE4.2,POPCNT,AES,NXE,LONG
cpu3: 256KB 64b/line 8-way L2 cache
ioapic0 at mainbus0: apid 6 pa 0xfec0, version 20, 24 pins
ioapic0: misconfigured as apic 1, remapped to apid 6
acpimcfg0 at acpi0 addr 0xf800, bus 0-63
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus 7 (BR1E)
acpiprt2 at acpi0: bus -1 (BR21)
acpiprt3 at acpi0: bus -1 (BR22)
acpiprt4 at acpi0: bus -1 (BR23)
acpiprt5 at acpi0: bus 1 (P0P1)
acpiprt6 at acpi0: bus -1 (P0P3)
acpiprt7 at acpi0: bus -1 (P0P5)
acpiprt8 at acpi0: bus -1 (P0P6)
acpiprt9 at acpi0: bus 6 (BR20)
acpiprt10 at acpi0: bus 5 (BR24)
acpiprt11 at acpi0: bus 4 (BR25)
acpiprt12 at acpi0: bus 3 (BR26)
acpiprt13 at acpi0: bus 2 (BR27)
acpiec0 at acpi0
acpicpu0 at acpi0
acpicpu1 at acpi0
acpicpu2 at acpi0
acpicpu3 at acpi0
aibs0 at acpi0: GGRP GITM SITM
acpibtn0 at acpi0: PWRB
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel Core Host" rev 0x12
ppb0 at pci0 dev 1 function 0 "Intel Core PCIE" rev 0x12: apic 6 int 16
pci1 at ppb0 bus 1
vga1 at pci1 dev 0 function 0 "ATI Radeon HD 4670" rev 0x00
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
radeondrm0 at vga1: apic 6 int 16
drm0 at radeondrm0
azalia0 at pci1 dev 0 function 1 "ATI Radeon HD 4000 HD Audio" rev
0x00: apic 6 int 17
azalia0: no supported codecs
ehci0 at pci0 dev 26 function 0 "Intel 3400 USB" rev 0x06: apic 6 int 16
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
azalia1 at pci0 dev 27 function 0 "Intel 3400 HD Audio" rev 0x06: apic 6 int
22
azalia1: codecs: VIA/0x4441
audio0 at azalia1
ppb1 at pci0 dev 28 function 0 "Intel 3400 PCIE" rev 0x06: apic 6 int 17
pci2 at ppb1 bus 6
ppb2 at pci0 dev 28 function 4 "Intel 3400 PCIE" rev 0x06: apic 6 int 17
pci3 at ppb2 bus 5
ppb3 at pci0 dev 28 function 5 "Intel 3400 PCIE" rev 0x06: apic 6 int 16
pci4 at ppb3 bus 4
ppb4 at pci0 dev 28 function 6 "Intel 3400 PCIE" rev 0x06: apic 6 int 18
pci5 at ppb4 bus 3
jmb0 at pci5 dev 0 function 0 "JMicron JMB363 IDE/SATA" rev 0x03
ahci0 at jmb0: apic 6 int 18, AHCI 1.0
scsibus0 at ahci0: 32 targets
sd0 at scsibus0 targ 1 lun 0:  SCSI3
0/direct fixed naa.5f00070c0776
sd0: 953869MB, 512 bytes/sec, 1953525168 sec total
jmb1 at pci5 dev 0 function 1 "JMicron JMB363 IDE/SATA" rev 0x03

Re: Quick sanity test for sili(4)/ahci(4) diff

2011-05-06 Thread Jasper Lievisse Adriaanse
On Fri, May 06, 2011 at 10:52:19AM -0700, Matthew Dempsky wrote:
> If you have a sili(4) or ahci(4), I'd appreciate a quick test of the
> diff below.  As long as you can still mount your disks without
> panicking, then it worked. :)
> 
> One test for each is sufficient, so please reply to the list to save
> others from redundant effort.
Works fine with this on amd64:

ahci1 at pci0 dev 17 function 0 "ATI SBx00 SATA" rev 0x00: apic 4 int 22, AHCI 
1.1

Cheers,
Jasper

> Index: ata/atascsi.c
> ===
> RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ata/atascsi.c,v
> retrieving revision 1.104
> diff -u -p -r1.104 atascsi.c
> --- ata/atascsi.c 5 May 2011 19:23:05 -   1.104
> +++ ata/atascsi.c 6 May 2011 17:41:20 -
> @@ -1590,10 +1590,12 @@ atascsi_io_get(void *cookie)
>  void
>  atascsi_io_put(void *cookie, void *io)
>  {
> - struct ata_xfer *xa = io;
> + struct atascsi_host_port*ahp = cookie;
> + struct atascsi  *as = ahp->ahp_as;
> + struct ata_xfer *xa = io;
>  
>   xa->state = ATA_S_COMPLETE; /* XXX this state machine is dumb */
> - xa->ata_put_xfer(xa);
> + as->as_methods->ata_put_xfer(xa);
>  }
>  
>  void
> Index: ata/atascsi.h
> ===
> RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ata/atascsi.h,v
> retrieving revision 1.45
> diff -u -p -r1.45 atascsi.h
> --- ata/atascsi.h 26 Jan 2011 21:41:00 -  1.45
> +++ ata/atascsi.h 5 May 2011 19:33:35 -
> @@ -18,6 +18,9 @@
>   * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
>   */
>  
> +#ifndef _DEV_ATA_ATASCSI_H_
> +#define _DEV_ATA_ATASCSI_H_
> +
>  struct atascsi;
>  struct scsi_link;
>  
> @@ -327,8 +330,6 @@ struct ata_xfer {
>   void*atascsi_private;
>  
>   int pmp_port;
> -
> - void(*ata_put_xfer)(struct ata_xfer *);
>  };
>  
>  /*
> @@ -339,6 +340,7 @@ struct atascsi_methods {
>   int (*probe)(void *, int, int);
>   void(*free)(void *, int, int);
>   struct ata_xfer *   (*ata_get_xfer)(void *, int);
> + void(*ata_put_xfer)(struct ata_xfer *);
>   void(*ata_cmd)(struct ata_xfer *);
>  };
>  
> @@ -368,3 +370,5 @@ int   atascsi_probe_dev(struct atascsi *,
>  int  atascsi_detach_dev(struct atascsi *, int, int, int);
>  
>  void ata_complete(struct ata_xfer *);
> +
> +#endif /* _DEV_ATA_ATASCSI_H_ */
> Index: ic/sili.c
> ===
> RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/ic/sili.c,v
> retrieving revision 1.47
> diff -u -p -r1.47 sili.c
> --- ic/sili.c 26 Jan 2011 21:41:00 -  1.47
> +++ ic/sili.c 5 May 2011 19:34:11 -
> @@ -211,6 +211,7 @@ struct atascsi_methods sili_atascsi_meth
>   sili_ata_probe,
>   sili_ata_free,
>   sili_ata_get_xfer,
> + sili_ata_put_xfer,
>   sili_ata_cmd
>  };
>  
> @@ -833,7 +834,6 @@ sili_ccb_alloc(struct sili_port *sp)
>   ccb->ccb_xa.fis = (struct ata_fis_h2d *)&prb->fis;
>   ccb->ccb_xa.packetcmd = ((struct sili_prb_packet *)prb)->cdb;
>   ccb->ccb_xa.tag = i;
> - ccb->ccb_xa.ata_put_xfer = sili_ata_put_xfer;
>   ccb->ccb_xa.state = ATA_S_COMPLETE;
>  
>   sili_put_ccb(ccb);
> Index: pci/ahci.c
> ===
> RCS file: /home/mdempsky/anoncvs/cvs/src/sys/dev/pci/ahci.c,v
> retrieving revision 1.177
> diff -u -p -r1.177 ahci.c
> --- pci/ahci.c24 Apr 2011 11:09:48 -  1.177
> +++ pci/ahci.c5 May 2011 19:33:58 -
> @@ -622,6 +622,7 @@ struct atascsi_methods ahci_atascsi_meth
>   ahci_ata_probe,
>   ahci_ata_free,
>   ahci_ata_get_xfer,
> + ahci_ata_put_xfer,
>   ahci_ata_cmd
>  };
>  
> @@ -1227,8 +1228,6 @@ nomem:
>   (struct ata_fis_h2d *)ccb->ccb_cmd_table->cfis;
>   ccb->ccb_xa.packetcmd = ccb->ccb_cmd_table->acmd;
>   ccb->ccb_xa.tag = i;
> -
> - ccb->ccb_xa.ata_put_xfer = ahci_ata_put_xfer;
>  
>   ccb->ccb_xa.state = ATA_S_COMPLETE;
>   ahci_put_ccb(ccb);
> 

-- 
Cheers,
Jasper

"Capable, generous men do not create victims, they nurture them."



Re: Quick sanity test for sili(4)/ahci(4) diff

2011-05-06 Thread Jason Crawford
On 05/06/11 13:52, Matthew Dempsky wrote:
> If you have a sili(4) or ahci(4), I'd appreciate a quick test of the
> diff below.  As long as you can still mount your disks without
> panicking, then it worked. :)
> 
> One test for each is sufficient, so please reply to the list to save
> others from redundant effort.
> 

Works for me on my Gateway NV53

OpenBSD 4.9-current (GENERIC.MP) #0: Fri May  6 17:41:44 EDT 2011
ja...@stan.hcpnet.org:/usr/src/sys/arch/amd64/compile/GENERIC.MP
real mem = 4225499136 (4029MB)
avail mem = 4098973696 (3909MB)
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.6 @ 0xdbeda000 (35 entries)
bios0: vendor Phoenix Technologies LTD version "V1.04" date 10/22/2009
bios0: Gateway NV53
acpi0 at bios0: rev 2
acpi0: sleep states S0 S3 S4 S5
acpi0: tables DSDT FACP SLIC SSDT APIC MCFG HPET
acpi0: wakeup devices LID0(S3) SLPB(S3) PB2_(S4) PB3_(S4) PB4_(S4)
PB5_(S4) PB6_(S4) PB7_(S4) PB9_(S4) PB10(S4) OHC0(S3) OHC1(S3) OHC2(S3)
OHC3(S3) OHC4(S3) EHC0(S3) EHC1(S3) P2P_(S5) AZLA(S3)
acpitimer0 at acpi0: 3579545 Hz, 32 bits
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: AMD Athlon(tm) II Dual-Core M300, 2001.00 MHz
cpu0:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,MWAIT,CX16,POPCNT,NXE,MMXX,FFXSR,LONG,3DNOW2,3DNOW
cpu0: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB
64b/line 16-way L2 cache
cpu0: ITLB 32 4KB entries fully associative, 16 4MB entries fully
associative
cpu0: DTLB 48 4KB entries fully associative, 48 4MB entries fully
associative
cpu0: apic clock running at 200MHz
cpu1 at mainbus0: apid 1 (application processor)
cpu1: AMD Athlon(tm) II Dual-Core M300, 2000.04 MHz
cpu1:
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,HTT,SSE3,MWAIT,CX16,POPCNT,NXE,MMXX,FFXSR,LONG,3DNOW2,3DNOW
cpu1: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB
64b/line 16-way L2 cache
cpu1: ITLB 32 4KB entries fully associative, 16 4MB entries fully
associative
cpu1: DTLB 48 4KB entries fully associative, 48 4MB entries fully
associative
ioapic0 at mainbus0: apid 2 pa 0xfec0, version 21, 24 pins
acpimcfg0 at acpi0 addr 0xe000, bus 0-9
acpihpet0 at acpi0: 14318180 Hz
acpi0: unable to load \\_SB_.PCI0._INI.EXH2
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus -1 (PB2_)
acpiprt2 at acpi0: bus -1 (PB3_)
acpiprt3 at acpi0: bus 3 (PB4_)
acpiprt4 at acpi0: bus -1 (PB5_)
acpiprt5 at acpi0: bus 9 (PB6_)
acpiprt6 at acpi0: bus -1 (PB7_)
acpiprt7 at acpi0: bus -1 (PB9_)
acpiprt8 at acpi0: bus -1 (PB10)
acpiprt9 at acpi0: bus 10 (P2P_)
acpiprt10 at acpi0: bus 1 (AGP_)
acpiec0 at acpi0
acpicpu0 at acpi0: PSS
acpicpu1 at acpi0: PSS
acpitz0 at acpi0: critical temperature 95 degC
acpitz1 at acpi0: critical temperature 95 degC
acpibtn0 at acpi0: PWRB
acpibtn1 at acpi0: LID0
acpibtn2 at acpi0: SLPB
acpibat0 at acpi0: BAT0 model "AS09A61" serial  4548 type LION oem "494453"
acpiac0 at acpi0: AC unit offline
acpivideo0 at acpi0: VGA_
acpivideo1 at acpi0: VGA_
acpivout0 at acpivideo1: LCD_
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "AMD RS780 Host" rev 0x00
ppb0 at pci0 dev 1 function 0 vendor "Acer", unknown product 0x9602 rev 0x00
pci1 at ppb0 bus 1
vga1 at pci1 dev 5 function 0 "ATI Mobility Radeon HD 4200" rev 0x00
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
radeondrm0 at vga1: apic 2 int 18
drm0 at radeondrm0
azalia0 at pci1 dev 5 function 1 "ATI Radeon HD 4200 HD Audio" rev 0x00:
apic 2 int 19
azalia0: no supported codecs
ppb1 at pci0 dev 4 function 0 "AMD RS780 PCIE" rev 0x00: apic 2 int 16
pci2 at ppb1 bus 3
bge0 at pci2 dev 0 function 0 "Broadcom BCM5784" rev 0x10, BCM5784 A1
(0x5784100): apic 2 int 16, address 00:26:2d:6f:6b:e2
brgphy0 at bge0 phy 1: BCM5784 10/100/1000baseT PHY, rev. 4
ppb2 at pci0 dev 6 function 0 "AMD RS780 PCIE" rev 0x00: apic 2 int 18
pci3 at ppb2 bus 9
athn0 at pci3 dev 0 function 0 "Atheros AR9281" rev 0x01: apic 2 int 18
athn0: AR9280 rev 2 (2T2R), ROM rev 22, address 70:1a:04:80:80:93
ahci0 at pci0 dev 17 function 0 "ATI SBx00 SATA" rev 0x00: apic 2 int
22, AHCI 1.1
scsibus0 at ahci0: 32 targets
sd0 at scsibus0 targ 0 lun 0:  SCSI3
0/direct fixed naa.5000cca59ec6ae72
sd0: 476940MB, 512 bytes/sec, 976773168 sec total
cd0 at scsibus0 targ 1 lun 0:  ATAPI
5/cdrom removable
ohci0 at pci0 dev 18 function 0 "ATI SB700 USB" rev 0x00: apic 2 int 16,
version 1.0, legacy support
ohci1 at pci0 dev 18 function 1 "ATI SB700 USB" rev 0x00: apic 2 int 16,
version 1.0, legacy support
ehci0 at pci0 dev 18 function 2 "ATI SB700 USB2" rev 0x00: apic 2 int 17
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "ATI EHCI root hub" rev 2.00/1.00 addr 1
ohci2 at pci0 dev 19 function 0 "ATI SB700 USB" rev 0x00: apic 2 int 18,
version 1.0, legacy support
ohci3 at pci0 dev 19 function 1 "ATI SB700 USB" rev 0x00: apic 2 int 18,
version 1.0, le