Rockbox

This is the bug/patch tracker for Rockbox. Click here for more information.

Quick links: Bugs · Patches · Rockbox frontpage

Tasklist

FS#7588 - ata_wakeup()

Attached to Project: Rockbox
Opened by Timo Horstschäfer (x1jmp) - Sunday, 12 August 2007, 20:41 GMT+2
Last edited by Frank Gevaerts (fg) - Saturday, 04 June 2011, 23:44 GMT+2
Task Type Patches
Category Drivers
Status Closed
Assigned To No-one
Player Type All players
Severity Low
Priority Normal
Reported Version Daily build (which?)
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Private No

Details

The ata_wakeup() function does the opposite of ata_sleep(), it spins up the hard-disk in background.
This makes it possible to start the disk in advance to reduce access time later.

It also eliminates some duplicate code lines in ata.c.
   ata_wakeup.patch (5.5 KiB)
 apps/plugin.c          |    1 
 apps/plugin.h          |    1 
 firmware/export/ata.h  |    1 
 firmware/drivers/ata.c |  110 +++++++++++++++++++++----------------------------
 4 files changed, 51 insertions(+), 62 deletions(-)

This task depends upon

Closed by  Frank Gevaerts (fg)
Saturday, 04 June 2011, 23:44 GMT+2
Reason for closing:  Out of Date
Comment by Nicolas Pennequin (nicolas_p) - Sunday, 12 August 2007, 20:54 GMT+2
I like the idea, especially as I thought this existed already and I'm going to need it soon :)

One remark, though: don't add functions to the plugin API in the middle of the struct, it breaks binary compatibility. You should add them at the end. FYI, when the struct is reordered, the plugin API version needs to be bumped.
Comment by Jonathan Gordon (jdgordon) - Sunday, 12 August 2007, 23:58 GMT+2
this will break the ondio and sansas... you need to add a ata_wakeup() stub in firmware/drivers/ata-mmc.c and firmware/target/arm/sandisk/sansa-e200/ata-e200.c
Comment by Timo Horstschäfer (x1jmp) - Monday, 13 August 2007, 01:08 GMT+2
Stubs added and moved ata_wakeup() to the end of the plugin API.
   ata_wakeup.patch (6.4 KiB)
 apps/plugin.c                                     |    3 
 apps/plugin.h                                     |    3 
 firmware/export/ata.h                             |    1 
 firmware/target/arm/sandisk/sansa-e200/ata-e200.c |    4 
 firmware/drivers/ata.c                            |  110 +++++++++-------------
 firmware/drivers/ata_mmc.c                        |    4 
 firmware/drivers/ata_flash.c                      |    4 
 7 files changed, 67 insertions(+), 62 deletions(-)

Comment by Rosso Maltese (asettico) - Sunday, 02 March 2008, 12:56 GMT+2
The patch doesn't apply with build 2008-03-01 (r16460).
Is it possible to sync it?
TYA
Comment by Jonathan Gordon (jdgordon) - Sunday, 02 March 2008, 13:22 GMT+2
Rosso: DO NOT ASK FOR RESYNCS
Comment by Rosso Maltese (asettico) - Sunday, 02 March 2008, 13:36 GMT+2
Why I have not to do it? Is there something like an etiquette I didn't read?
If the patch is no more useful because it was included in the main trunk or it became "obsolete", should it mark as closed?
Thanks for the attention.
Comment by Jonathan Gordon (jdgordon) - Sunday, 02 March 2008, 14:10 GMT+2
it annoys developers. i the patch was commited then yes this would be closed, but it isnt so it isnt
Comment by Hideyuki Kanaya (Lucid) - Wednesday, 16 July 2008, 09:27 GMT+2
resync

I hope this works...
   ata_wakeup_20080716.patch (6.1 KiB)
 apps/plugin.c                   |    3 +
 apps/plugin.h                   |    3 +
 firmware/export/ata.h           |    1 
 firmware/target/arm/ata-sd-pp.c |    4 +
 firmware/drivers/ata.c          |  103 ++++++++++++++++++----------------------
 firmware/drivers/ata_mmc.c      |    4 +
 firmware/drivers/ata_flash.c    |    4 +
 7 files changed, 66 insertions(+), 56 deletions(-)

Loading...