USB disk on CS5536 unstable

Anselm Strauss amsibamsi at gmail.com
Sat Oct 9 09:06:25 UTC 2010


On 10/07/10 22:59, Lowell Gilbert wrote:
> Anselm Strauss <amsibamsi at gmail.com> writes:
> 
>> On 10/02/10 16:39, Hans Petter Selasky wrote:
>>> On Saturday 02 October 2010 14:44:07 Anselm Strauss wrote:
>>>> On 09/30/10 21:38, Hans Petter Selasky wrote:
>>>>> On Thursday 30 September 2010 21:10:59 Anselm Strauss wrote:
>>>>>> Maybe sending it to just the USB list was too specific ...
>>>>>>
>>>>>> On 09/30/10 00:08, Anselm Strauss wrote:
>>>>>>> Hi
>>>>>>>
>>>>>>> I have an ALIX board that has an AMD Geode and the CS5536 companion
>>>>>>> chip with integrated USB on it. When I connect a USB disk I have
>>>>>>> observed various problems. For example when I run fsck_ufs on a 250 GB
>>>>>>> partition the process gets stuck in biord state and fsck reports
>>>>>>> unreadable sectors. When I do a dd over the whole disk and direct it
>>>>>>> to /dev/null it suddenly returns with no error, but having read only a
>>>>>>> small fraction of the disk. I tried it with two different disks and
>>>>>>> two different ALIX boards. I'm pretty sure the disks are okay since I
>>>>>>> tried them on other hardware.
>>>>>>>
>>>>>>> As far as I know there was some trouble with the chip regarding
>>>>>>> timeouts. Under load after some time the USB just stops responding. I
>>>>>>> have tried 8.0 and 8.1. Is there any known problem? How can I track
>>>>>>> this down?
>>>>>>>
>>>>>>> Anselm
>>>>>
>>>>> If you compile the kernel with USB_DEBUG, then there are some sysctls
>>>>> under hw.usb.ehci which you can tweak. Needs to be set before boot.
>>>>>
>>>>> --HPS
>>>>
>>>> Did not know that there were configurable bug workarounds in sysctl.
>>>> When I set hw.usb.ehci.lostintrbug=1 in /boot/loader.conf the problems
>>>> seem gone.
>>>>
>>>> Without this setting I got the following kernel message when dd did abort:
>>>>
>>>> ehci_timeout: xfer=0xc29cd3c8
>>>>
>>>>
>>>> Thanks,
>>>> Anselm
>>>
>>> Maybe you can report the PCI vendor ID and product so that we can add this 
>>> quirk.
>>>
>>> --HPS
>>
>> Not sure what a "PCI vendor ID" is and how to determine it. It's a ALIX
>> 2d2 from http://pcengines.ch/alix.
> 
> pciconf(8) will tell you.  Try sending "pciconf -l" output.

-> pciconf -lv
hostb0 at pci0:0:1:0:	class=0x060000 card=0x20801022 chip=0x20801022
rev=0x33 hdr=0x00
    vendor     = 'Advanced Micro Devices (AMD)'
    device     = 'Conrad Kostecki'
    class      = bridge
    subclass   = HOST-PCI
none0 at pci0:0:1:2:	class=0x101000 card=0x20821022 chip=0x20821022
rev=0x00 hdr=0x00
    vendor     = 'Advanced Micro Devices (AMD)'
    device     = 'Geode GX3 AES Crypto Driver (GX3)'
    class      = encrypt/decrypt
vr0 at pci0:0:9:0:	class=0x020000 card=0x01061106 chip=0x30531106 rev=0x96
hdr=0x00
    vendor     = 'VIA Technologies, Inc.'
    device     = 'Rhine III Management Adapter (VT6105M)'
    class      = network
    subclass   = ethernet
vr1 at pci0:0:11:0:	class=0x020000 card=0x01061106 chip=0x30531106 rev=0x96
hdr=0x00
    vendor     = 'VIA Technologies, Inc.'
    device     = 'Rhine III Management Adapter (VT6105M)'
    class      = network
    subclass   = ethernet
ath0 at pci0:0:12:0:	class=0x020000 card=0x1600185f chip=0x001b168c
rev=0x01 hdr=0x00
    vendor     = 'Atheros Communications Inc.'
    device     = 'AR5006 family 802.11abg Wireless NIC'
    class      = network
    subclass   = ethernet
isab0 at pci0:0:15:0:	class=0x060100 card=0x20901022 chip=0x20901022
rev=0x03 hdr=0x00
    vendor     = 'Advanced Micro Devices (AMD)'
    device     = 'CS5536 [Geode companion] ISA'
    class      = bridge
    subclass   = PCI-ISA
atapci0 at pci0:0:15:2:	class=0x010180 card=0x209a1022 chip=0x209a1022
rev=0x01 hdr=0x00
    vendor     = 'Advanced Micro Devices (AMD)'
    device     = 'CS5536 IDE Controller (CS5536)'
    class      = mass storage
    subclass   = ATA
ohci0 at pci0:0:15:4:	class=0x0c0310 card=0x20941022 chip=0x20941022
rev=0x02 hdr=0x00
    vendor     = 'Advanced Micro Devices (AMD)'
    device     = 'CS5536 OHCI USB Host Controller (CS5536)'
    class      = serial bus
    subclass   = USB
ehci0 at pci0:0:15:5:	class=0x0c0320 card=0x20951022 chip=0x20951022
rev=0x02 hdr=0x00
    vendor     = 'Advanced Micro Devices (AMD)'
    device     = 'CS5536 EHCI USB Host Controller (CS5536)'
    class      = serial bus
    subclass   = USB

So I guess it is the last one, the ehci device.


More information about the freebsd-questions mailing list