USB Controller Causing Issues

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

USB Controller Causing Issues

Ben Niccum
I have a couple issues using OpenBSD with a VIA VB7001G motherboard
focused around USB devices. This board has been tested on both 4.6 and
4.7-current (April 22nd Snapshot).

First of all, whenever I attempt to use a bootable OpenBSD USB flash
disk (created using the preferred method described here:
http://openbsd.org/faq/faq14.html#flashmemLive), the motherboard fails
to POST. It will begin an attempt and then continually try to reboot.

This same USB flash disk has been tested on other motherboards and
works without any issues. I have also tried testing with three different
USB storage devices.

The second issue is that whenever there is a USB storage device plugged
into the motherboard the boot process freezes. I have included a dmesg
below from a normal boot and indicated the point at which booting
freezes.

If I wait until after the system has booted and then plug in a USB
storage device, it freezes at the moment the device was plugged in.

This has been tested on devices with filesystems that are OpenBSD (A6),
FreeBSD (A5) and MSDOS (0B). Again this has been tested on three
different devices.

To emphasize, this only occurs for USB *storage devices*. USB mice,
keyboards, ethernet adapters, cdrom-drives, camera etc. do not cause
this issue.

I have two identical VIA VB7001G motherboards and both of them produce
the exact same results in all the cases I have described above.

Here is the dmesg from the system, obtained by having no USB storage
devices attached. The last line printed by OpenBSD prior to all
instances of the OS freezing is marked by '*'s.

--- Begin DMESG ---
OpenBSD 4.7-current (GENERIC) #620: Thu Apr 22 11:50:48 MDT 2010
    [hidden email]:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: VIA Esther processor 1500MHz ("CentaurHauls" 686-class) 1.50 GHz
cpu0:
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,CMOV,PAT,CFLUSH,ACPI,MMX,FXSR,SSE,SSE2,TM,SBF,SSE3,TM2
real mem  = 1005023232 (958MB) avail mem = 963829760 (919MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 11/19/07, BIOS32 rev. 0 @
0xf9440, SMBIOS rev. 2.3 @ 0xf0000 (24 entries) apm0 at bios0: Power
Management spec V1.2 (slowidle) apm0: AC on, battery charge unknown
acpi at bios0 function 0x0 not configured
pcibios0 at bios0: rev 2.1 @ 0xf0000/0xc594
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfc500/144 (7 entries)
pcibios0: bad IRQ table checksum
pcibios0: PCI BIOS has 7 Interrupt Routing table entries
pcibios0: PCI Exclusive IRQs: 5 10 11
pcibios0: PCI Interrupt Router at 000:17:0 ("VIA VT8237 ISA" rev 0x00)
pcibios0: PCI bus #1 is the last bus
bios0: ROM list: 0xc0000/0xfc00 0xd0000/0x2000
cpu0 at mainbus0: (uniprocessor)
cpu0: RNG AES AES-CTR SHA1 SHA256 RSA
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 0 function 0 "VIA CN700 Host" rev 0x00
viaagp0 at pchb0: v3
agp0 at viaagp0: aperture at 0xe8000000, size 0x10000000
pchb1 at pci0 dev 0 function 1 "VIA CN700 Host" rev 0x00
pchb2 at pci0 dev 0 function 2 "VIA CN700 Host" rev 0x00
pchb3 at pci0 dev 0 function 3 "VIA PT890 Host" rev 0x00
pchb4 at pci0 dev 0 function 4 "VIA CN700 Host" rev 0x00
pchb5 at pci0 dev 0 function 7 "VIA CN700 Host" rev 0x00
ppb0 at pci0 dev 1 function 0 "VIA VT8377 AGP" rev 0x00
pci1 at ppb0 bus 1
vga1 at pci1 dev 0 function 0 "VIA S3 Unichrome PRO IGP" rev 0x01
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
pciide0 at pci0 dev 15 function 0 "VIA VT6420 SATA" rev 0x80: DMA
pciide0: using irq 11 for native-PCI interrupt
wd0 at pciide0 channel 1 drive 0: <WDC WD1600BEKT-00A25T0>
wd0: 16-sector PIO, LBA48, 152627MB, 312581808 sectors
wd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 6
pciide1 at pci0 dev 15 function 1 "VIA VT82C571 IDE" rev 0x06: ATA133,
channel 0 configured to compatibility, channel 1 configured to
compatibility pciide1: channel 0 disabled (no drives) pciide1: channel
1 disabled (no drives) uhci0 at pci0 dev 16 function 0 "VIA VT83C572
USB" rev 0x81: irq 10 uhci1 at pci0 dev 16 function 1 "VIA VT83C572
USB" rev 0x81: irq 10 uhci2 at pci0 dev 16 function 2 "VIA VT83C572
USB" rev 0x81: irq 11 ehci0 at pci0 dev 16 function 4 "VIA VT6202 USB"
rev 0x86: irq 5 usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "VIA EHCI root hub" rev 2.00/1.00 addr 1
viapm0 at pci0 dev 17 function 0 "VIA VT8237 ISA" rev 0x00
iic0 at viapm0
spdmem0 at iic0 addr 0x50: 1GB DDR2 SDRAM non-parity PC2-4200CL5
auvia0 at pci0 dev 17 function 5 "VIA VT8233 AC97" rev 0x60: irq 5
ac97: codec id 0x56494183 (VIA Technologies <83>)
ac97: codec features 18 bit DAC, 18 bit ADC, No 3D Stereo
audio0 at auvia0
vr0 at pci0 dev 18 function 0 "VIA RhineII-2" rev 0x78: irq 10, address
00:40:63:fa:dd:e0 ukphy0 at vr0 phy 1: Generic IEEE 802.3u media
interface, rev. 10: OUI 0x004063, model 0x0032 usb1 at uhci0: USB
revision 1.0 uhub1 at usb1 "VIA UHCI root hub" rev 1.00/1.00 addr 1
usb2 at uhci1: USB revision 1.0
uhub2 at usb2 "VIA UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci2: USB revision 1.0
uhub3 at usb3 "VIA UHCI root hub" rev 1.00/1.00 addr 1
isa0 at mainbus0
isadma0 at isa0
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
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
pmsi0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pmsi0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
viasio0 at isa0 port 0x2e/2: VT1211 rev 0x02, HM, WDG not activated
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
biomask efed netmask efed ttymask ffff
mtrr: Pentium Pro MTRR support
*************************************************
************** System Freezes Here **************
*************************************************
vscsi0 at root
scsibus0 at vscsi0: 256 targets
softraid0 at root
root on wd0a swap on wd0b dump on wd0b
--- End DMESG ---

If more information would be helpful or if this should be posted to a
different list please let me know.

-Ben
--
Ben Niccum
[hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: USB Controller Causing Issues

Ben Niccum
Also, here is the output of 'usbdevs -v'

------
Controller /dev/usb0:
addr 1: high speed, self powered, config 1, EHCI root hub(0x0000),
VIA(0x1106), rev 1.00 port 1 powered
 port 2 powered
 port 3 powered
 port 4 powered
 port 5 powered
 port 6 powered
Controller /dev/usb1:
addr 1: full speed, self powered, config 1, UHCI root hub(0x0000),
VIA(0x1106), rev 1.00 port 1 powered
 port 2 powered
Controller /dev/usb2:
addr 1: full speed, self powered, config 1, UHCI root hub(0x0000),
VIA(0x1106), rev 1.00 port 1 powered
 port 2 powered
Controller /dev/usb3:
addr 1: full speed, self powered, config 1, UHCI root hub(0x0000),
VIA(0x1106), rev 1.00 port 1 powered
 port 2 powered
-----

If lack of hardware is an issue, it may be possible to arrange for
hardware for an interested developer.

-Ben
--
Ben Niccum
[hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: USB Controller Causing Issues

LeviaComm Networks NOC
In reply to this post by Ben Niccum
My first recommendation is to use another method of install, see:
http://undeadly.org/cgi?action=article&sid=20100404103735

If you really want to continue:
Is the BIOS up to date?  Also, is there a setting for USB mode in the BIOS?

Sometimes listed as USB Drive emulation, or similar.

I know that most of this seems basic, but even the best of us need
reminding now and then.

Reply | Threaded
Open this post in threaded view
|

Re: USB Controller Causing Issues

Tobias Ulmer
In reply to this post by Ben Niccum
On Fri, May 07, 2010 at 10:11:56AM -0700, Ben Niccum wrote:

> I have a couple issues using OpenBSD with a VIA VB7001G motherboard
> focused around USB devices. This board has been tested on both 4.6 and
> 4.7-current (April 22nd Snapshot).
>
> First of all, whenever I attempt to use a bootable OpenBSD USB flash
> disk (created using the preferred method described here:
> http://openbsd.org/faq/faq14.html#flashmemLive), the motherboard fails
> to POST. It will begin an attempt and then continually try to reboot.
>
> This same USB flash disk has been tested on other motherboards and
> works without any issues. I have also tried testing with three different
> USB storage devices.
>
> The second issue is that whenever there is a USB storage device plugged
> into the motherboard the boot process freezes. I have included a dmesg
> below from a normal boot and indicated the point at which booting
> freezes.
>
> If I wait until after the system has booted and then plug in a USB
> storage device, it freezes at the moment the device was plugged in.
>
> This has been tested on devices with filesystems that are OpenBSD (A6),
> FreeBSD (A5) and MSDOS (0B). Again this has been tested on three
> different devices.
>
> To emphasize, this only occurs for USB *storage devices*. USB mice,
> keyboards, ethernet adapters, cdrom-drives, camera etc. do not cause
> this issue.
>
> I have two identical VIA VB7001G motherboards and both of them produce
> the exact same results in all the cases I have described above.
>
> Here is the dmesg from the system, obtained by having no USB storage
> devices attached. The last line printed by OpenBSD prior to all
> instances of the OS freezing is marked by '*'s.
>
> --- Begin DMESG ---
> OpenBSD 4.7-current (GENERIC) #620: Thu Apr 22 11:50:48 MDT 2010
>     [hidden email]:/usr/src/sys/arch/i386/compile/GENERIC
> cpu0: VIA Esther processor 1500MHz ("CentaurHauls" 686-class) 1.50 GHz
> cpu0:
> FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,CMOV,PAT,CFLUSH,ACPI,MMX,FXSR,SSE,SSE2,TM,SBF,SSE3,TM2
> real mem  = 1005023232 (958MB) avail mem = 963829760 (919MB)
> mainbus0 at root
> bios0 at mainbus0: AT/286+ BIOS, date 11/19/07, BIOS32 rev. 0 @
> 0xf9440, SMBIOS rev. 2.3 @ 0xf0000 (24 entries) apm0 at bios0: Power
> Management spec V1.2 (slowidle) apm0: AC on, battery charge unknown
> acpi at bios0 function 0x0 not configured
> pcibios0 at bios0: rev 2.1 @ 0xf0000/0xc594
> pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfc500/144 (7 entries)
> pcibios0: bad IRQ table checksum
> pcibios0: PCI BIOS has 7 Interrupt Routing table entries
> pcibios0: PCI Exclusive IRQs: 5 10 11
> pcibios0: PCI Interrupt Router at 000:17:0 ("VIA VT8237 ISA" rev 0x00)
> pcibios0: PCI bus #1 is the last bus
> bios0: ROM list: 0xc0000/0xfc00 0xd0000/0x2000

Try setting "Plug and play OS" in the BIOS to yes.
Disabling apm via ukc could also help.

Reply | Threaded
Open this post in threaded view
|

Re: USB Controller Causing Issues

Ben Niccum
In reply to this post by LeviaComm Networks NOC
On Fri, 7 May 2010 11:39:47 -0700
"LeviaComm Networks NOC" <[hidden email]> wrote:

> My first recommendation is to use another method of install, see:
> http://undeadly.org/cgi?action=article&sid=20100404103735
>
> If you really want to continue:
> Is the BIOS up to date?

BIOS is the latest version (Phoenix Award BIOS v6 revision 1.03 fwiw)
available from the manufacturer.
See here:
http://www.via.com.tw/en/products/embedded/ProductDetail.jsp?productLine=1&id=490

> Also, is there a setting for USB mode in the BIOS?
>
> Sometimes listed as USB Drive emulation, or similar.

There is a USB Emulation mode. If I turn USB Emulation off, then all
the problems of the USB drives freezing the system go away, but it
still leaves me with the first issue of the bootable device. Without
USB emulation on, it actually won't boot from any USB devices.

> I know that most of this seems basic, but even the best of us need
> reminding now and then.

That's pretty legit. I agree that I do occasionally forget those things
but I tried to have my bases covered for this one ;)

-Ben


--
Ben Niccum
[hidden email]
Direct Line: 541-323-9102
Cell: 541-306-9112  

Reply | Threaded
Open this post in threaded view
|

Re: USB Controller Causing Issues

Ben Niccum
In reply to this post by Tobias Ulmer
On Fri, 7 May 2010 22:06:57 +0200
Tobias Ulmer <[hidden email]> wrote:
 
> Try setting "Plug and play OS" in the BIOS to yes.

I was unable to find such a setting in the BIOS.

> Disabling apm via ukc could also help.

I disabled apm and tried booting again, but it still froze up at the
same place. I then booted up the system and tried inserting a USB
device after the system was booted and again encountered the freezing
issue.

I've received a couple off list messages, one of which is a test patch
that I will be trying out as well as a request to rebuild the kernel
with USB_DEBUG enabled.  I'll post later today once I get that done.

Thanks for all the replies so far misc@

-Ben

--
Ben Niccum
[hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: USB Controller Causing Issues

Ben Niccum
On Fri, 7 May 2010 13:57:32 -0700
Ben Niccum <[hidden email]> wrote:

As requested, here is my new dmesg with 'option USB_DEBUG'.

Also, the aforementioned patch did not solve the issue, so I'm still
looking for a solution.

--- Begin dmesg ---
OpenBSD 4.7-current (GENERIC) #0: Fri May  7 16:21:23 PDT 2010
    [hidden email]:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: VIA Esther processor 1500MHz ("CentaurHauls" 686-class) 1.50 GHz
cpu0:
FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,CMOV,PAT,CFLUSH,ACPI,MMX,FXSR,SSE,SSE2,TM,SBF,SSE3,TM2
real mem  = 1005023232 (958MB) avail mem = 963796992 (919MB)
mainbus0 at root
bios0 at mainbus0: AT/286+ BIOS, date 11/19/07, BIOS32 rev. 0 @
0xf9440, SMBIOS rev. 2.3 @ 0xf0000 (24 entries) apm0 at bios0: Power
Management spec V1.2 (slowidle) apm0: AC on, battery charge unknown
acpi at bios0 function 0x0 not configured
pcibios0 at bios0: rev 2.1 @ 0xf0000/0xc594
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfc500/144 (7 entries)
pcibios0: bad IRQ table checksum
pcibios0: PCI BIOS has 7 Interrupt Routing table entries
pcibios0: PCI Exclusive IRQs: 5 10 11
pcibios0: PCI Interrupt Router at 000:17:0 ("VIA VT8237 ISA" rev 0x00)
pcibios0: PCI bus #1 is the last bus
bios0: ROM list: 0xc0000/0xfc00 0xd0000/0x2000
cpu0 at mainbus0: (uniprocessor)
cpu0: RNG AES AES-CTR SHA1 SHA256 RSA
pci0 at mainbus0 bus 0: configuration mode 1 (bios)
pchb0 at pci0 dev 0 function 0 "VIA CN700 Host" rev 0x00
viaagp0 at pchb0: v3
agp0 at viaagp0: aperture at 0xe8000000, size 0x10000000
pchb1 at pci0 dev 0 function 1 "VIA CN700 Host" rev 0x00
pchb2 at pci0 dev 0 function 2 "VIA CN700 Host" rev 0x00
pchb3 at pci0 dev 0 function 3 "VIA PT890 Host" rev 0x00
pchb4 at pci0 dev 0 function 4 "VIA CN700 Host" rev 0x00
pchb5 at pci0 dev 0 function 7 "VIA CN700 Host" rev 0x00
ppb0 at pci0 dev 1 function 0 "VIA VT8377 AGP" rev 0x00
pci1 at ppb0 bus 1
vga1 at pci1 dev 0 function 0 "VIA S3 Unichrome PRO IGP" rev 0x01
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
pciide0 at pci0 dev 15 function 0 "VIA VT6420 SATA" rev 0x80: DMA
pciide0: using irq 11 for native-PCI interrupt
wd0 at pciide0 channel 1 drive 0: <WDC WD1600BEKT-00A25T0>
wd0: 16-sector PIO, LBA48, 152627MB, 312581808 sectors
wd0(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 6
pciide1 at pci0 dev 15 function 1 "VIA VT82C571 IDE" rev 0x06: ATA133,
channel 0 configured to compatibility, channel 1 configured to
compatibility pciide1: channel 0 disabled (no drives) pciide1: channel
1 disabled (no drives) uhci0 at pci0 dev 16 function 0 "VIA VT83C572
USB" rev 0x81: irq 10 uhci1 at pci0 dev 16 function 1 "VIA VT83C572
USB" rev 0x81: irq 10 uhci2 at pci0 dev 16 function 2 "VIA VT83C572
USB" rev 0x81: irq 11 ehci0 at pci0 dev 16 function 4 "VIA VT6202 USB"
rev 0x86: irq 5 usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "VIA EHCI root hub" rev 2.00/1.00 addr 1
viapm0 at pci0 dev 17 function 0 "VIA VT8237 ISA" rev 0x00
iic0 at viapm0
spdmem0 at iic0 addr 0x50: 1GB DDR2 SDRAM non-parity PC2-4200CL5
viapm0: 24-bit timer at 3579545Hz
auvia0 at pci0 dev 17 function 5 "VIA VT8233 AC97" rev 0x60: irq 5
ac97: codec id 0x56494183 (VIA Technologies <83>)
ac97: codec features 18 bit DAC, 18 bit ADC, No 3D Stereo
audio0 at auvia0
vr0 at pci0 dev 18 function 0 "VIA RhineII-2" rev 0x78: irq 10, address
00:40:63:fa:dd:e0 ukphy0 at vr0 phy 1: Generic IEEE 802.3u media
interface, rev. 10: OUI 0x004063, model 0x0032 usb1 at uhci0: USB
revision 1.0 uhub1 at usb1 "VIA UHCI root hub" rev 1.00/1.00 addr 1
usb2 at uhci1: USB revision 1.0
uhub2 at usb2 "VIA UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci2: USB revision 1.0
uhub3 at usb3 "VIA UHCI root hub" rev 1.00/1.00 addr 1
isa0 at mainbus0
isadma0 at isa0
com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
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
pmsi0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pmsi0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
viasio0 at isa0 port 0x2e/2: VT1211 rev 0x02, HM, WDG not activated
npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16
biomask efed netmask efed ttymask ffff
mtrr: Pentium Pro MTRR support
vscsi0 at root
scsibus0 at vscsi0: 256 targets
softraid0 at root
root on wd0a swap on wd0b dump on wd0b
--- end dmesg ---

Thanks again.

-Ben

--
Ben Niccum
[hidden email]

Reply | Threaded
Open this post in threaded view
|

Re: USB Controller Causing Issues

J.C. Roberts-3
In reply to this post by Ben Niccum
On Fri, 7 May 2010 13:21:39 -0700 Ben Niccum <[hidden email]> wrote:

> > Also, is there a setting for USB mode in the BIOS?
> >
> > Sometimes listed as USB Drive emulation, or similar.
>
> There is a USB Emulation mode. If I turn USB Emulation off, then all
> the problems of the USB drives freezing the system go away, but it
> still leaves me with the first issue of the bootable device. Without
> USB emulation on, it actually won't boot from any USB devices.

It often depends on the *type* of emulation, and sometimes the USB
Emulation/Mode setting must be used in conjunction with specific boot
device settings.

Depending on vendor, the USB Emulation Mode can be set to silly names
like "Auto" or "Removable" or "HDD" or "FDD" or "Floppy" or whatever.
With some systems, when set to "Auto" USB flash drives that are less
than 530 MB in size are automatically emulated as floppy disk drives,
while USB flash drives larger than 530 MB in size will be treated like
hard disk drives. Needless to say, the "530 MB" cut-off can vary
depending on vendor/chipset/whatever, but however it's done, it can
cause a whole lot of headaches.

Your emulation mode seems to be stuck on "Auto" without any way to
change it that I've found.

In your case, the "USB Emulation" mentioned in your BIOS settings is
basically *misnamed* since this setting actually defines "Legacy Mode"
for all attached USB devices. It seems VIA defines "legacy mode" as
supporting legacy (read: ancient) USB keyboard, mouse and storage
devices under DOS, but what they actually mean by this statement is a
bit vague. Typically when support for Legacy Mode is "On" you can
support ancient USB devices that barf when used with newer modes, but
in doing so, you can be causing problems for newer (USB v1.1 and above)
devices, such as the newer bootable USB sticks you're probably trying
to use. ;)

Unless you have a damn good reason to force *ALL* USB devices to use
legacy mode, you should probably have this turned "Off" --If you're
using an ancient keyboard or mouse that *requires* legacy mode to work
properly, then try use the "KB/MS" setting.

Some systems and some USB devices refuse to be bootable or refuse to be
treated as "disks" when used in the ancient "Legacy Mode" since booting
to USB, and even USB storage itself, were invented long after USB was
first created. --My comprehension of early/ancient USB devices kinda
sucks because they were first released, I did everything I possibly
could to avoid them... To this day there are still unresolved problems
when using USB keyboards with debuggers.

As for the obvious question of, "WTF Is Legacy Mode?" sadly, there is
no single universal answer since it varies depending on chipset,
implementation and vendor whims. The closest thing to an answer you'll
find is, "Legacy Mode forces modern USB to work with ancient USB
devices," but the details of "how?" are a mystery. It might be
crippling the EHCI logic core (or "chip), or it may be disabling some
unknown portion of EHCI, or it may be forcing the UHCI logic core
(chip) to behave in certain ways, or any combination thereof.

Considering where you put the "It Dies Here" note in your posted dmesg
(thanks) and your subsequent successful boots with "USB Emulation" set
to "Off", it seems Legacy Mode is at least part of your problem, if not
the entire problem.

On Fri, 7 May 2010 13:57:32 -0700 Ben Niccum <[hidden email]> wrote:
> On Fri, 7 May 2010 22:06:57 +0200
> Tobias Ulmer <[hidden email]> wrote:
>  
> > Try setting "Plug and play OS" in the BIOS to yes.
>
> I was unable to find such a setting in the BIOS.

You obviously did not even bother to check... RTFM!
(And I wonder why I bothered when you didn't?)

See page #51 of the VB7001 User Manual ("PNP" == "Plug and Play")
http://www.via.com.tw/servlet/downloadSvl?id=490&download_file_id=3693

If the manual is showing the default state ("No"), then it's wrong. You
should set it to "Yes" and you should also enable "Reset Configuration
Data" if you change hardware around.

Keep in mind there are two places in the system BIOS settings where you
control boot device selection. The first handles the typical stuff,
namely specific types of devices, specific devices, or specific sets of
devices. The second is where you define the priority of "sets" of
devices such as all the "hard drive" devices (including "USB-HDD" ==
"USB Hard Disk Drive" == your USB stick).

With the BIOS on some x86 systems, you need to have the USB storage
device attached when you power up the system and change the BIOS
settings or else the options for booting to USB are either disabled, or
worse, not even visible in the BIOS. There are even some systems out
there that have absolutely no mention of being able to boot to USB
devices, but can still boot to them if you select the correct, but
painfully vague, setting typically named something like "Removable" or
similar. --In your case, you need to make sure to have USB-HDD0 through
whatever (USB-HDD3?) in your "Hard Disk" set.

Similar to the above, you may need to set "Reset Configuration Data" to
"Enabled" so the ESCD (Extended System Configuration Data) is reset and
the USB stick is "seen" by the system, otherwise, the system might not
be aware there is a USB stick attached.

Once you've got all of your BIOS settings correct, the system should
boot USB sticks without any further problems... --except if your USB
device is a piece of junk which is unfortunately *VERY* common.


There are other issues you can hit, but they're typically found with
hardware older than your VIA VB7001.

Depending on *how* the vendor implemented USB, on some systems you need
to be careful about which physical USB port on the system you use. This
"different ports for different speeds" cluster muck is typically only
found in much older systems, but the trouble is, you just never know
how a particular vendor decided to cut particular corners to save money
and still claim to have support for "USB 2.0" --Similar is true for USB
device vendors (e.g. selling crappy USB 1.0 devices with BS marketing
claims of being "USB 2.0 Compatible" rather than "USB 2.0 Compliant").

If you have a USB 2.0 device and it does not attach to your EHCI, then
either the device is lying to you, or your system is lying to you about
it's capacities, or your system has an old/poor design and you need to
try a different physical USB port.


        jcr

--
The OpenBSD Journal - http://www.undeadly.org

Reply | Threaded
Open this post in threaded view
|

Re: USB Controller Causing Issues

Ben Niccum
On Fri, 7 May 2010 19:46:52 -0700
"J.C. Roberts" <[hidden email]> wrote:

> > > Also, is there a setting for USB mode in the BIOS?
> > >
> > > Sometimes listed as USB Drive emulation, or similar.
> >
> > There is a USB Emulation mode. If I turn USB Emulation off, then all
> > the problems of the USB drives freezing the system go away, but it
> > still leaves me with the first issue of the bootable device. Without
> > USB emulation on, it actually won't boot from any USB devices.
>
> It often depends on the *type* of emulation, and sometimes the USB
> Emulation/Mode setting must be used in conjunction with specific boot
> device settings.
>
> [...]
>
> Considering where you put the "It Dies Here" note in your posted dmesg
> (thanks) and your subsequent successful boots with "USB Emulation" set
> to "Off", it seems Legacy Mode is at least part of your problem, if
> not the entire problem.
 
That seems to explain the reason that OpenBSD freezes up whenever a USB
storage device is plugged in after the system is already booted. So
clearly I do want to have 'USB Emulation' set to 'Off'.

This still leaves the issue as I described previously, where without
USB Emulation 'On', USB devices cannot be used to boot. I've even tried
selecting the boot device on startup (by pressing 'esc') but the USB
devices simply do not show up without the emulation on.


> On Fri, 7 May 2010 13:57:32 -0700 Ben Niccum <[hidden email]>
> wrote:
> > On Fri, 7 May 2010 22:06:57 +0200
> > Tobias Ulmer <[hidden email]> wrote:
> >  
> > > Try setting "Plug and play OS" in the BIOS to yes.
> >
> > I was unable to find such a setting in the BIOS.
>
> You obviously did not even bother to check... RTFM!
> (And I wonder why I bothered when you didn't?)
>
> See page #51 of the VB7001 User Manual ("PNP" == "Plug and Play")
> http://www.via.com.tw/servlet/downloadSvl?id=490&download_file_id=3693

My apologies. I do appreciate your effort. I did look through the
manual briefly for anything on 'Plug and Play' Operating Systems, but I
was unaware of 'PnP' being an abbreviation of 'Plug and Play'. I
assumed that since it was coupled to the PCI configuration that it
would have been something altogether different. And in doing so, made a
small fool of myself.

> If the manual is showing the default state ("No"), then it's wrong.
> You should set it to "Yes" and you should also enable "Reset
> Configuration Data" if you change hardware around.
>
> [...]

I went back into the BIOS and set PnP to 'Yes' and enabled 'Reset
Configuration Data', but still had no success. I tried that with the
USB Emulation both on and off.

My thoughts are that this is more than likely an issue that VIA didn't
address properly. I have contacted technical support with them, but
our discussion has been slow to progress.

-Ben

--
Ben Niccum
[hidden email]