On Fri, Nov 25, 2005 at 06:20:28PM +0900, Vladas Urbonas wrote:
> Hi All,
>
> Excuse me for disturbing too much if so.
>
> Have to 'disable auvia' in UKC to boot up 3.8 GENERIC on my SONY VAIO
> PCG-FX77Z_BP(J). The same keeps on happening from 3.1 so -current
> problably will not help.
>
> I would be grateful if anyone of you would be so kind to give me basic
> directions
> on how to know which devices, functions and flags to use in UKC according to
> dmesg from FreeBSD, FreeSBIE or Slack where VT82C686A and AC'97 works fine.
>
> I did google and I will go to the Source if needed. Just thought that
> it would be
> faster to cut to the chase with few lines' assistance.
can you try a -current kernel w/ this diff plz?
cu
--
paranoic mickey (my employers have changed but, the name has remained)
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;