-current dmesg for auvia (VT82C686A, AC'97) on SONY VAIO PCG-FX55J_B(J)

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

-current dmesg for auvia (VT82C686A, AC'97) on SONY VAIO PCG-FX55J_B(J)

Vladas Urbonas
If anyone still cares - auvia (VT82C686A, AC'97) on SONY VAIO
PCG-FX55J_B(J). Could not test (as promised) on PCG-FX77Z_BP(J) because that
machine had died. However, these two models are _really_ similar.

>an you try a -current kernel w/ this diff plz?

>cu

>--
>   paranoic mickey       (my employers have changed but, the name has
remained)

The Patch

Index: auvia.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/auvia.c,v
retrieving revision 1.33
diff -u -r1.33 auvia.c
--- auvia.c     6 May 2005 01:45:22 -0000       1.33
+++ auvia.c     25 Nov 2005 11:34:12 -0000
@@ -242,13 +242,25 @@
       sc->sc_pc = pc;
       sc->sc_pt = pt;

+       /* disable SBPro compat & others */
+       pr = pci_conf_read(pc, pt, AUVIA_PCICONF_JUNK);
+
+       pr &= ~AUVIA_PCICONF_ENABLES; /* clear compat function enables */
+       /* XXX what to do about MIDI, FM, joystick? */
+
+       pr |= (AUVIA_PCICONF_ACLINKENAB | AUVIA_PCICONF_ACNOTRST |
+           AUVIA_PCICONF_ACVSR | AUVIA_PCICONF_ACSGD);
+
+       pr &= ~(AUVIA_PCICONF_ACFM | AUVIA_PCICONF_ACSB);
+
+       pci_conf_write(pc, pt, AUVIA_PCICONF_JUNK, pr);
+
       if (pci_intr_map(pa, &ih)) {
               printf(": couldn't map interrupt\n");
               bus_space_unmap(sc->sc_iot, sc->sc_ioh, iosize);
               return;
       }
       intrstr = pci_intr_string(pc, ih);
-
       sc->sc_ih = pci_intr_establish(pc, ih, IPL_AUDIO, auvia_intr, sc,
           sc->sc_dev.dv_xname);
       if (sc->sc_ih == NULL) {
@@ -261,19 +273,6 @@
       }

       printf(": %s\n", intrstr);
-
-       /* disable SBPro compat & others */
-       pr = pci_conf_read(pc, pt, AUVIA_PCICONF_JUNK);
-
-       pr &= ~AUVIA_PCICONF_ENABLES; /* clear compat function enables */
-       /* XXX what to do about MIDI, FM, joystick? */
-
-       pr |= (AUVIA_PCICONF_ACLINKENAB | AUVIA_PCICONF_ACNOTRST |
-           AUVIA_PCICONF_ACVSR | AUVIA_PCICONF_ACSGD);
-
-       pr &= ~(AUVIA_PCICONF_ACFM | AUVIA_PCICONF_ACSB);
-
-       pci_conf_write(pc, pt, AUVIA_PCICONF_JUNK, pr);

       sc->host_if.arg = sc;
       sc->host_if.attach = auvia_attach_codec;


Resulting Dmesg

OpenBSD 3.8-current (GENERIC) #0: Fri Dec  2 22:56:48 JST 2005
    [hidden email]:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: mobile AMD Athlon(tm) XP 1400+  ("AuthenticAMD" 686-class, 256KB L2
cache) 1.26 GHz
cpu0:
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,S
SE
cpu0: AMD Powernow: TS FID VID
real mem  = 536387584 (523816K)
avail mem = 482553856 (471244K)
using 4278 buffers containing 26923008 bytes (26292K) of memory
mainbus0 (root)
bios0 at mainbus0: AT/286+(52) BIOS, date 08/13/02, BIOS32 rev. 0 @ 0xfd6a0
apm0 at bios0: Power Management spec V1.2
apm0: battery life expectancy 94%
apm0: AC on, battery charge high, charging
apm0: flags 30102 dobusy 0 doidle 1
pcibios0 at bios0: rev 2.1 @ 0xfd6a0/0x960
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdf60/128 (6 entries)
pcibios0: PCI Interrupt Router at 000:07:0 ("VIA VT82C596A ISA" rev 0x00)
pcibios0: PCI bus #3 is the last bus
bios0: ROM list: 0xc0000/0x10000 0xd0000/0x4000! 0xdc000/0x4000!
cpu0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "VIA VT8363 Host" rev 0x03
ppb0 at pci0 dev 1 function 0 "VIA VT8363 AGP" rev 0x00
pci1 at ppb0 bus 1
vga1 at pci1 dev 0 function 0 "ATI Mobility 1" rev 0x64
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
pcib0 at pci0 dev 7 function 0 "VIA VT82C686 ISA" rev 0x40
pciide0 at pci0 dev 7 function 1 "VIA VT82C571 IDE" rev 0x06: ATA100,
channel 0 configured to compatibility, channel 1 configured to compatibility
wd0 at pciide0 channel 0 drive 0: <HITACHI_DK23DA-30>
wd0: 16-sector PIO, LBA, 28615MB, 58605120 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5
atapiscsi0 at pciide0 channel 1 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0: <MATSHITA, UJDA720 DVD/CDRW, 1.00> SCSI0
5/cdrom removable
cd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2
uhci0 at pci0 dev 7 function 2 "VIA VT83C572 USB" rev 0x1a: irq 9
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: VIA UHCI root hub, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1 at pci0 dev 7 function 3 "VIA VT83C572 USB" rev 0x1a: irq 9
usb1 at uhci1: USB revision 1.0
uhub1 at usb1
uhub1: VIA UHCI root hub, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
viaenv0 at pci0 dev 7 function 4 "VIA VT82C686 SMBus" rev 0x40
auvia0 at pci0 dev 7 function 5 "VIA VT82C686 AC97" rev 0x50: irq 5
ac97: codec id 0x41445348 (Analog Devices AD1881A)
ac97: codec features headphone, Analog Devices Phat Stereo
audio0 at auvia0
"VIA VT82C686 Modem" rev 0x30 at pci0 dev 7 function 6 not configured
cbb0 at pci0 dev 10 function 0 "Texas Instruments PCI1420 CardBus" rev 0x00:
irq 9
cbb1 at pci0 dev 10 function 1 "Texas Instruments PCI1420 CardBus" rev 0x00:
irq 10
"Texas Instruments TSB12LV26 FireWire" rev 0x00 at pci0 dev 14 function 0
not configured
rl0 at pci0 dev 16 function 0 "Realtek 8139" rev 0x10: irq 10, address
08:00:46:70:13:81
rlphy0 at rl0 phy 0: RTL internal phy
isa0 at pcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
sysbeep0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
npx0 at isa0 port 0xf0/16: using exception 16
pccom0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB 80 cyl, 2 head, 18 sec
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 2 device 0 cacheline 0x8, lattimer 0x20
pcmcia0 at cardslot0
cardslot1 at cbb1 slot 1 flags 0
cardbus1 at cardslot1: bus 3 device 0 cacheline 0x8, lattimer 0x20
pcmcia1 at cardslot1
biomask ef4d netmask ef4d ttymask ffcf
pctr: user-level cycle counter enabled
mtrr: Pentium Pro MTRR support
uhidev0 at uhub0 port 2 configuration 1 interface 0
uhidev0: ELECOM ELECOM USB mouse with wheel, rev 1.00/0.00, addr 2, iclass
3/1
ums0 at uhidev0: 3 buttons and Z dir.
wsmouse1 at ums0 mux 0
dkcsum: wd0 matches BIOS drive 0x80
root on wd0a
rootdev=0x0 rrootdev=0x300 rawdev=0x302


The "dirty "diff given by Mr. David also worked just fine:

-- sys/arch/i386/isa/isa_machdep.c
+++ sys/arch/i386/isa/isa_machdep.c
@@ -389,7 +389,8 @@
               if (irqs >= 0x100) /* any IRQs >= 8 in use */
                       irqs |= 1 << IRQ_SLAVE;
               imen = ~irqs;
-               SET_ICUS();
+               if (imen != 0xFFFF3DDB)
+                       SET_ICUS();
       }

       /* For speed of splx, provide the inverse of the interrupt masks. */



Thank You very much, Mr. David Coppa and Mr. Mickey. Because of Your help I
could get rid of all other OSes from my disk.

Please let me know if any other information is needed.



Respectfully

Vladas