Unprobed PCI bus on VXPro II chipset

Sean Welch welchsm at earthlink.net
Mon Dec 29 16:04:07 PST 2003


How 'bout that!  I've got USB now!

I went back to the original pcisupport.c as requested but left
in the extra stuff I had added to pcibus.c (the same stuff that
was added to pcisupport.c).  Now most everything looks to 
be attaching normally.  If you want me to take that out as
well I'll give it a try, but I'm successfully using my usb mouse
right now and using fxtv to watch broadcast television.

The new output of pciconf -l is:

chip0 at pci0:5:0: class=0x060000 card=0x80113388 chip=0x80113388 rev=0x00 hdr=0x00
isab0 at pci0:5:1: class=0x060100 card=0x80123388 chip=0x80123388 rev=0x00 hdr=0x00
atapci0 at pci0:5:2: class=0x010100 card=0x80133388 chip=0x80133388 rev=0x00 hdr=0x00
bktr0 at pci0:8:0: class=0x040000 card=0x13eb0070 chip=0x036e109e rev=0x02 hdr=0x00
none0 at pci0:8:1: class=0x048000 card=0x13eb0070 chip=0x0878109e rev=0x02 hdr=0x00
uhci0 at pci0:9:0: class=0x0c0300 card=0x12340925 chip=0x30381106 rev=0x04 hdr=0x00
none1 at pci0:10:0:        class=0x030000 card=0x89015333 chip=0x89015333 rev=0x16 hdr=0x00

The diff between original and current pcibus.c files is:

187a188,227
>       case 0x05851106:
>               s = "VIA 82C585 (Apollo VP1/VPX) system controller";
>               break;
>
>       case 0x05861106: /* south bridge section -- IDE is covered in ide_pci.c */
>               s = "VIA 82C586 PCI-ISA bridge";
>               break;
>
>       case 0x05951106:
>               s = "VIA 82C595 (Apollo VP2) system controller";
>               break;
>
>       case 0x15951106:
>               s = "VIA 82C595 (Apollo VP2) system controller";
>               break;
>
>       case 0x05971106:
>               s = "VIA 82C597 (Apollow VP3) system controller";
>               break;
>
>       case 0x30381106:
>               s = "VIA 82C586B USB host controller";
>               break;
>
>       case 0x30401106:
>               s = "VIA 82C586B ACPI interface";
>               break;
>
>       case 0x80113388:
>               s = "VXPro II Chipset CPU to PCI Bridge";
>               break;
>
>       case 0x80123388:
>               s = "VXPro II Chipset PCI to ISA Bridge";
>               break;
>
>       case 0x80133388:
>               s = "VXPro II Chipset EIDE Controller";
>               break;
>

The diff between the original and current versions of
pci_cfgreg.c is:

583c583
<       outb(CONF1_ADDR_PORT +3, 0);
---
>       DELAY(1);

The diff between the GENERIC kernel and my current kernel
looks like this:

2c2
< # GENERIC -- Generic kernel configuration file for FreeBSD/i386
---
> # WARPPHYS -- kernel configuration file for FreeBSD/i386
21,22d20
< cpu           I386_CPU
< cpu           I486_CPU
24,25c22
< cpu           I686_CPU
< ident         GENERIC
---
> ident         WARPPHYS
61a59
> #options              PNPBIOS
71d68
< device                eisa
72a70,80
> #options      PCI_ENABLE_IO_MODES
> #device               puc
>
> # bktr                brooktree848 I2C hardware interface
> device                bktr
> device                iicbus
> device                iicbb
> device                smbus
>
> # Sound
> device                pcm
123,137d130
< # RAID controllers interfaced to the SCSI subsystem
< device                asr             # DPT SmartRAID V, VI and Adaptec SCSI RAID
< device                dpt             # DPT Smartcache - See LINT for options!< device                iir             # Intel Integrated RAID
< device                mly             # Mylex AcceleRAID/eXtremeRAID
< device                ciss            # Compaq SmartRAID 5* series
<
< # RAID controllers
< device                aac             # Adaptec FSA RAID, Dell PERC2/PERC3
< #device               aacp            # SCSI passthrough for aac (requires CAM)
< device                ida             # Compaq Smart RAID
< device                amr             # AMI MegaRAID
< device                mlx             # Mylex DAC960 family
< device                twe             # 3ware Escalade
<
151,159d143
< # Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
< #device               vt0     at isa?
< #options      XSERVER                 # support for X server on a vt console
< #options      FAT_CURSOR              # start with block cursor
< # If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines< #options      PCVT_SCANSET=2          # IBM keyboards are non-std
<
< device                agp             # support several AGP chipsets
<
166,170d149
< # PCCARD (PCMCIA) support
< device                card
< device                pcic0   at isa? irq 0 port 0x3e0 iomem 0xd0000
< device                pcic1   at isa? irq 0 port 0x3e2 iomem 0xd4000 disable
<
267,271d245
<
< # FireWire support
< device                firewire        # FireWire bus code
< device                sbp             # SCSI over FireWire (Requires scbus and da)
< device                fwe             # Ethernet over FireWire (non-standard!)

Once again, this is 4.9-RELEASE.  Let me know what else (if anything)
you'd like me to try, okay?  (That includes trying out 5-CURRENT again.)
I'll be happy to send a verbose dmesg on request.

Thank you!!

                                                                                                     Sean

-----Original Message-----
From: John Baldwin <jhb at FreeBSD.org>
Sent: Dec 29, 2003 12:33 PM
To: ticso at cicely.de
Cc: freebsd-hackers at FreeBSD.org, Sean Welch <Sean_Welch at alum.wofford.org>
Subject: Re: Unprobed PCI bus on VXPro II chipset


On 27-Dec-2003 Bernd Walter wrote:
> On Fri, Dec 26, 2003 at 10:54:27AM -0800, Sean Welch wrote:
>> That change seems to have done it!!
>> 
>> I left in the extra PCI IDs I had added to pcisupport.c
>> and pci_cfgreg.c -- looks like that helps get things
>> going.  I've got "options PCI_ENABLE_IO_MODES" in
>> the kernel.  I've also got "device puc" due to a suggestion
>> from fbsd_user on freebsd-questions.
>> 
>> The USB card doesn't seem to be attaching but I do see
>> the WinTV card!
>> 
>> Any other suggestions based on what you see below?
> 
> Still very strange - you have many shadowed host-pci bridges.
> 
>> pcib4 at pci0:5:0: class=0x060000 card=0x80113388 chip=0x80113388 rev=0x00 hdr=0x00
>> pcib5 at pci0:5:1: class=0x060100 card=0x80123388 chip=0x80123388 rev=0x00 hdr=0x00
>> pcib6 at pci0:5:2: class=0x010100 card=0x80133388 chip=0x80133388 rev=0x00 hdr=0x00
>> bktr0 at pci0:8:0: class=0x040000 card=0x13eb0070 chip=0x036e109e rev=0x02 hdr=0x00
>> none0 at pci0:8:1: class=0x048000 card=0x13eb0070 chip=0x0878109e rev=0x02 hdr=0x00
>> pcib7 at pci0:9:0: class=0x0c0300 card=0x12340925 chip=0x30381106 rev=0x04 hdr=0x00
> 
> This one (class=0x0c0300) is your USB (uhci) controller, but it's
> already bogusly attached to pcib7.
> Not surprising that uhci(4) didn't take care of it.

The patches to pcisupport.c might be bogus.  Sean, can you try
just the patch to pci_cfgreg.c and no other patches to see how
it does?

-- 

John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/





More information about the freebsd-hackers mailing list