Opened 10 years ago

Closed 6 years ago

#3933 closed bug (invalid)

ATA locks up on the EeePC

Reported by: axeld Owned by: mmlr
Priority: critical Milestone: R1
Component: Drivers/Disk Version: R1/Development
Keywords: Cc: marcusoverhagen, kyle@…
Blocked By: Blocking: #4564
Has a Patch: no Platform: x86


When trying to boot using the new ATA stack (but from USB), the system locks up. I've investigated the issue a bit, but didn't get far before my only USB stick (128 MB!) died (obviously doesn't like being completely rewritten that often).

Anyway, when I added some debug output in on-screen-debug-output-mode, I noticed the system could sometimes boot. In fact, adding a spin(10000) at various locations in ATAChannel::Reset() (within the for loop) solved the issue. I'll buy a new stick on Monday, and see if I can find out more.

In the mean time, maybe someone knowing the specs has an idea :-)

In any case, the system seems to work fine when booting with IDE DMA off, but maybe that was just luck.

Change History (21)

comment:1 Changed 10 years ago by axeld

Priority: normalcritical

I bought a new stick, and I cannot reproduce my earlier results anymore with this one; the system always locks up now, no matter if I put snooze() in there, or turn off IDE DMA. Therefore bumping the bug's relevance.

comment:2 in reply to:  description ; Changed 9 years ago by V!NCENT

I have the same problem on the Eee PC 900.

It booted without anything disabled in the BIOS prior to the 13th of August hrev32334 version. The last know working version was the 12th of August hrev32290 version.

The system hang at startup, and therefore was not installed, at the fourth icon. The last two onscreen debug output lines from the 13th of October version hrev33585-x86gcc2hybrid before the complete system hang were: ata 0: _DevicePresent: device selection failed for device 0 ata 0: _DevicePresent: device 1. presence 0

No errors were displayed prior to the last two lines.

After that line is displayed the read/write activity LED on the USB stick stopped flashing indicating that nothing happens afterwards.

It doesn't matter if some/all onboard devices are de disabled in the BIOS. It doesn't matter what boot paramiters are checked at the Haiku safeboot screen by pressing the spacebar prior to startup.

The BIOS option OS Installation [start] was used.

The latest (as of 14 October 2009) Win32 Disk Imager tool was used under Windows to write RAW images to a brandless 1GB USB stick.

comment:3 in reply to:  2 Changed 9 years ago by V!NCENT

PS: The latest non-working version that was tested was: the 13th of October hrev33575-x86gcc2hybrid version.

comment:4 Changed 9 years ago by axeld

Blocking: 4564 added

(In #4564) Duplicate of #3933.

comment:5 Changed 9 years ago by ahwayakchih

It (hrev35511 and hrev35274) seems to work fine on EeePC 901, booted from USB flash drive. Also works when booting from hard drive connected through USB :). I did not try to boot it without USB tough.

comment:6 Changed 9 years ago by marcusoverhagen

Cc: marcusoverhagen added

comment:7 Changed 8 years ago by ambroff

@ahwayakchih: I'm not surprised that it works on your 901, that machine has a different chipset (ICH7-M vs the ICH6-M in the 900).

I was experiencing this problem too. I set out to build HEAD of svn to track down the problem and found that it booted reliably with hrev36961, which was a pleasant surprise. I did a binary search and found that hrev36951 somehow miraculously fixes the problem. I don't understand why yet, I plan to investigate after work tonight.

comment:8 Changed 8 years ago by ambroff

Cc: kyle@… added

comment:9 Changed 8 years ago by ptaylor1982

Platform: Allx86
Version: R1/pre-alpha1R1/Development

I tried Rev:36969 on my eeepc 900 ssd, booting from usb, and it sticks on the same place, on the disk icon. i get the following error at the end of syslog.

ata 0:_devicepresent: device detection failed for device 0

comment:10 Changed 8 years ago by ambroff

@ptaylor1982 did you try one of the revisions I referenced? I haven't had the chance to look deeper into this or try a more recent revision, but builds prior to hrev36951 fail for me with that same error:

ata 0:_devicepresent: device detection failed for device 0

Maybe it has something to do with my build configuration. I've been running a debug gcc4 build.

comment:11 Changed 8 years ago by ptaylor1982

@ambross i have tried the most recent nightly i have(hrev36974). and get the same error, i will post either my syslog, if i can find a spare fat32 formatted usbflash, or pictures if i dont have an appropriate flash. as that will hopefully give more detail.

comment:12 Changed 8 years ago by Coldfirex

Able to retest under a recent build and capture a syslog if it still fails?

comment:13 in reply to:  12 Changed 8 years ago by ptaylor1982

Replying to Coldfirex:

Able to retest under a recent build and capture a syslog if it still fails?

I am not able to at the moment, i dont have a spare usb fat32 to put syslog onto if it does fail.

comment:14 Changed 8 years ago by ptaylor1982

I tried 41078 on my eeepc 900,booting from sdhc, and progress. I managed to get haiku to boot. However you have to disable ide dma. but it boots now with that safemode option.

So whatever was previously blocking boot, whatever safemode options, has been worked out.

comment:15 Changed 7 years ago by axeld

It certainly still doesn't work here with alpha 3, no matter what IDE options I choose.

comment:16 Changed 7 years ago by phoudoin

Seems that somebody succeed to boot on his eeePC 900, after having upgade his BIOS:

Could it be simply that previous BIOS was broken regarding IDE setup?

comment:17 Changed 7 years ago by Soft

I had the same problem with my eeePC 900. Updating the BIOS to version 1006 fixed the problem and now Haiku boots fine. My old BIOS version was 802. As a side note eeePCs internal BIOS update tool (EZ Flash) somehow failed to read the ROM file no matter what I did. Solution was to use FreeDos and Afudos BIOS update tool V2.36 (older versions failed to work) from Asus.

comment:18 Changed 7 years ago by mmlr

I've identified the 0906 BIOS update as the one resolving this. ASUS says in their log: "Updated the literal string of SATA SSD displayed in BIOS setup.", which I couldn't verify, i.e. the strings looked the same to me at first glance, though both disks are actually listed as ATA so this may not even apply. It definitely changed something in the ATA init sequence which makes it not lock up anymore. I've downgraded to 0802 again and I'm now investigating a bit more. In either case, the up- and downgrades worked for me when using the Debian instructions (placing the file renamed to 900.ROM on a 16MB FAT16 formated partition).

Last edited 7 years ago by mmlr (previous) (diff)

comment:19 Changed 7 years ago by ptaylor1982

i can confirm, the above v-1006 bios upgrade for eeepc 900, allows r1a3 to boot properly.

comment:20 Changed 6 years ago by nielx

Can this ticket be closed? It seems to be a bios problem.

comment:21 Changed 6 years ago by phoudoin

Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.