Rockbox.org home
release
dev builds
extras
themes manual
wiki
device status forums
mailing lists
IRC bugs
patches
dev guide



Rockbox mail archive

Subject: Working on ATA: Less internal state, more asking

Working on ATA: Less internal state, more asking

From: Jonas Wielicki <j.wielicki_at_sotecware.net>
Date: Fri, 03 Aug 2012 15:51:35 +0200

Hi all,

I'm (still *sigh*) hunting my SSD issues on iriver (as posted previously
on the list[1][2]). I think it basically reduces to a “have you tried
turning it off and on again” fix, because somehow the SSD seems to get
stuck sometimes, a powercycle can mitigiate that in most of the cases.

BUT, in the course I implemented some ATA parts which might come in
handy with devices which are behaving weirdly, like going to sleep
automatically, namely, I removed the internal rockbox state about the
drive's power management state and added requests to get the current
state instead (using CMD_CHECK_POWER_MODE).

I realize that I'll probably have to keep some of my rockbox kernel
patched to work more or less with that SSD (I really should try to
return it, maybe it's just broken). But some of these changes may give
rockbox advantages when dealing with buggy devices. Here is a summarized
list of changes:

* check the current power mode of the device before using it
* explicitly wake it up, if needed
* two levels of error handling:
  1. do a hard reset
  2. powercycle the IDE bus

I wonder what, if any, of this is appreciated by rockbox so that I can
wrap it up as one or more nice commits for review at gerrit.

best regards,
Jonas Wielicki

   [1]:
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2012-04/0010.shtml
   [2]:
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2012-05/0009.shtml
Received on 2012-08-03


Page was last modified "Jan 10 2012" The Rockbox Crew
aaa