Port-alpha archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Does SRM configure all PCI devices?



Maybe I'm barking up the wrong tree, but I'm trying to get a PCI USB 2.0 card to work in my AlphaPC 164, but am getting this:

uhci0 at pci0 dev 9 function 0: VIA Technologies VT83C572 USB Controller (rev. 0x61)
uhci0: interrupting at eb164 irq 3
usb0 at uhci0: USB revision 1.0
uhci1 at pci0 dev 9 function 1: VIA Technologies VT83C572 USB Controller (rev. 0x61)
uhci1: interrupting at eb164 irq 0
uhci1: controller did not reset
uhci1: cannot start
uhci1: init failed, error=13
ehci0 at pci0 dev 9 function 2: VIA Technologies VT8237 EHCI USB Controller (rev. 0x63)
ehci0: interrupting at eb164 irq 0
ehci0: dropped intr workaround enabled
ehci0: EHCI version ff.ff
ehci0: wrong number of companions (15 != 1)
ehci0: ohci or uhci probably not configured
ehci0: companion controller, 15 ports each: uhci0
ehci0: reset timeout
ehci0: init failed, error=13
[ ... ]
uhub0 at usb0: VIA Technologies UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
[ ... ]
uhci1: host system error
uhci1: host controller process error
uhci1: host controller halted

I notice that a "pcictl pci0 dump -d 9 -f 0" shows:

PCI configuration registers:
  Common header:
    0x00: 0x30381106 0x02100047 0x0c030061 0x0080ff00

    Vendor Name: VIA Technologies (0x1106)
    Device Name: VT83C572 USB Controller (0x3038)
    Command register: 0x0047
      I/O space accesses: on
      Memory space accesses: on
      Bus mastering: on
      Special cycles: off
      MWI transactions: off
      Palette snooping: off
      Parity error checking: on
      Address/data stepping: off
      System error (SERR): off
      Fast back-to-back transactions: off
      Interrupt disable: off
[ ... ]

However, "pcictl pci0 dump -d 9 -f 1" shows:

PCI configuration registers:
  Common header:
    0x00: 0x30381106 0x02100004 0x0c030061 0x00801600

    Vendor Name: VIA Technologies (0x1106)
    Device Name: VT83C572 USB Controller (0x3038)
    Command register: 0x0004
      I/O space accesses: off
      Memory space accesses: off
      Bus mastering: on
      Special cycles: off
      MWI transactions: off
      Palette snooping: off
      Parity error checking: off
      Address/data stepping: off
      System error (SERR): off
      Fast back-to-back transactions: off
      Interrupt disable: off
[ ... ]

Surely it's bad for both I/O space and Memory space to be off? "pcictl pc0 dump -d 9 -f 2" also shows the EHCI controller's Command register to be 0x0004.

I also notice that in SRM, "show config" does not show the USB card under the "PCI Bus" section. That said, it doesn't show the SATA card either, but that seems to work OK. So, I was wondering if perhaps SRM only configured function 0 of the PCI devices? The USB card is the only PCI device installed that has more than one function.

Assuming the problem is that functions 1 and 2 weren't configured, is there anything I can do on the NetBSD side to fix that?

FYI, first few lines of SRM's "show config" are:

SRM Console:    V5.5-1
PALcode:        OpenVMS PALcode V1.21-9, Digital UNIX PALcode V1.23-8

SROM Revision: 2.2
Alpha 21164A-2
DECchip (tm) 21172 CIA ASIC Pass 3



Home | Main Index | Thread Index | Old Index