From 4502e982afbfc5cd69f541fcf1e741766f2c9297 Mon Sep 17 00:00:00 2001 From: Linus Nielsen Feltzing Date: Sat, 5 Apr 2003 22:25:21 +0000 Subject: The newest ATA driver fixes broke the ata_spinup_time information git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3515 a1c6a512-1295-4272-9138-f99709370657 --- firmware/drivers/ata.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/firmware/drivers/ata.c b/firmware/drivers/ata.c index 5e6df91cc5..c72ebb8790 100644 --- a/firmware/drivers/ata.c +++ b/firmware/drivers/ata.c @@ -170,10 +170,12 @@ int ata_read_sectors(unsigned long start, int timeout; int count; void* buf; + int spinup_start; mutex_lock(&ata_mtx); last_disk_activity = current_tick; + spinup_start = current_tick; led(true); @@ -242,7 +244,7 @@ int ata_read_sectors(unsigned long start, } if (spinup) { - ata_spinup_time = current_tick - last_disk_activity; + ata_spinup_time = current_tick - spinup_start; spinup = false; sleeping = false; poweroff = false; @@ -314,6 +316,7 @@ int ata_write_sectors(unsigned long start, { int i; int ret = 0; + int spinup_start; if (start == 0) panicf("Writing on sector 0\n"); @@ -321,6 +324,7 @@ int ata_write_sectors(unsigned long start, mutex_lock(&ata_mtx); last_disk_activity = current_tick; + spinup_start = current_tick; led(true); @@ -369,7 +373,7 @@ int ata_write_sectors(unsigned long start, } if (spinup) { - ata_spinup_time = current_tick - last_disk_activity; + ata_spinup_time = current_tick - spinup_start; spinup = false; sleeping = false; poweroff = false; -- cgit v1.2.3