05 October 2005

USB Headache

My USB & BIOS headache.

As I written before, when I updated my BIOS to 1014 (Asus A8V-Deluxe) I had several usb related problems as consequence. It went like this:

- Update bios to 1014.
- Happy happy! Powernow works!!
- Sad sad, USB doesn't.

The system wouldn't work with USB 2.0, only with 1.1... and even so, it was unstable.

The errors where:
ehci_hcd 0000:00:10.4: VIA Technologies, Inc. USB 2.0
ehci_hcd 0000:00:10.4: BIOS handoff failed (104, 1010001)
ehci_hcd 0000:00:10.4: can't reset
ehci_hcd 0000:00:10.4: init 0000:00:10.4 fail, -95
ehci_hcd: probe of 0000:00:10.4 failed with error -95

This happened with kernel 2.6.8 (my current one) and with 2.6.11.

Browsing around I discovered that there was an error with asus BIOS handoff procedure, ok, so I tried to keep using usb 1.1, because at least it DOES work, right?

NO, it doesn't.

It corrupted my thumbdrive.
Great, now, when I plug my thumbdrive anywhere, I get a bunch of kernel errors:

USB Mass Storage device found at 2
scsi3 : SCSI emulation for USB Mass Storage devices
Vendor: SanDisk Model: Cruzer Mini Rev: 0.1
Type: Direct-Access ANSI SCSI revision: 02
SCSI device sde: 1000944 512-byte hdwr sectors (512 MB)
sde: assuming Write Enabled
sde: assuming drive cache: write through
/dev/scsi/host3/bus0/target0/lun0: unknown partition table

And sometimes even:
Aug 18 00:12:10 kernel: SCSI error : <4 0 0 0> return code = 0x70000
Aug 18 00:12:10 kernel: end_request: I/O error, dev sde, sector 0

So, I guess is time to go hard on this guy.
Got KillDisk (www.killdisk.com) which has a demo download available, it writes an "1" on each and every sector of the thumbdrive/harddrive.

Erased it.
Plugged it on in windows (now that's a mistake) and formatted it with FAT32.

Strange, in linux the SCSI errors continue, the kernel recognizes the device but, ah, it doesn't mount, fsck nor fdisk/parted it.

Now I think my drive went nuts.. but the odd thing is that with windows it works perfectly(copied a fair amount of data from and to it, went ok so far)
Some googling around and it seems that when linux recognizes the drive, it reads the partition table and compares with the physical boundaries of the drive, this is to keep the system stable and consistent, and windows simply 'believe' in the partition table.
What happened is that KillDisk had erroneously formated the thumbdrive to have more sectors than it has.

Another killdisk, and this time, seems that the sector counting is correct.
Now I boot to linux, fdisk it, mkfs.dos it and it worked.
Not for long.

Plugged in windows, and copied some data to it, plugged it back in linux and some data was readable, but most wasn't.

Soooo, now I'm getting upset.

killdisk it again.

Booted in linux, and instead of partitioning it, I just created the filesystem (that whas the original setup) with mkfs.dos /dev/sde and that's it...

Works perfectly now.

Yes, but there's still a problem, the main problem.
My motherboard doesn't like linux.
So now my quest is to find a good bios version.
Tried 1009, 1011, 1013 and 1014. None worked very well (only 1009 works with USB, but powernow doesn't)

So I found ftp://ftp.asuscom.de/pub/ASUSCOM/BIOS/Socket_939/VIA_Chipset/K8T800Pro/A8V_Deluxe/ and there's this 1014d version, let's try it.
AND WORKS!

2 Comments:

Anonymous Anonymous said...

And that is why I'm not an early adopter buying all kinds of new hardware. :-)

Well. That and the price problem.

11 October, 2005 16:56  
Blogger cyberorg said...

kernel parameters apic=off or noapic or pci=noacpi helps in usb troubles.

http://www.redhat.com/archives/fedora-test-list/2004-May/msg02111.html
http://kerneltrap.org/node/4973

I have a VIA too, had this problem with redhat, but the problem has disappeared since suse enterprise.

Nice blog.

-J

04 March, 2006 03:55  

Post a Comment

<< Home