|
Rockbox mail archiveSubject: Working on ATA: Less internal state, more askingWorking 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 template was last modified "Tue Sep 7 00:00:02 2021" The Rockbox Crew -- Privacy Policy |