[flashrom] r990 udelay fails for me ...

Carl-Daniel Hailfinger c-d.hailfinger.devel.2006 at gmx.net
Wed Apr 7 14:19:13 CEST 2010


On 03.04.2010 23:09, Carl-Daniel Hailfinger wrote:
> On 03.04.2010 01:28, Urja Rannikko wrote:
>   
>> This seems to "fix" this for me - the delay loop is still unreliable, but
>> atleast the recalibration attempts only take 5s instead of minutes. This is
>> a combined diff for both my fix and the % fix.
>>
>> Index: udelay.c
>> ===================================================================
>> --- udelay.c	(revision 990)
>> +++ udelay.c	(working copy)
>> @@ -66,6 +66,7 @@
>>  	printf("Calibrating delay loop... ");
>>  
>>  recalibrate:
>> +	count = 1000;
>>  	while (1) {
>>  		timeusec = measure_delay(count);
>>  		if (timeusec > 1000000 / 4)
>>   
>>     
>
> Does the timing get more reliable if you try the following stuff:
>
> - change the comparison above to
>
> if (timeusec > 1000)
>   

I expect this little change to improve precision dramatically.


> - Make sure there are no CPU frequency changes or sleep states
>
>   
>> Signed-off-by: Urja Rannikko <urjaman at gmail.com>  
>>     
>
> In general, I like your patch. I just hope to get more input if reducing
> the abort condition in the loop from 250 ms to 1 ms helps as well.
>   

We need your patch, I had just hoped that improved precision would be
possible with the additional change I suggested. Anyway, this is
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>

Can you commit?

Regards,
Carl-Daniel

-- 
http://www.hailfinger.org/





More information about the flashrom mailing list