[flashrom] r990 udelay fails for me ...

Urja Rannikko urjaman at gmail.com
Thu Apr 8 22:16:00 CEST 2010


I sent this accidentally only to carldani, sorry:
On Thu, Apr 8, 2010 at 23:04, Urja Rannikko <urjaman at gmail.com> wrote:

>
>
> On Wed, Apr 7, 2010 at 15:19, Carl-Daniel Hailfinger <
> c-d.hailfinger.devel.2006 at gmx.net> wrote:
>
>> 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?
>>
>> If I would have commit access ;)
>
> I'm sorry that i forgot about this until now (real life+work had priority)
> - I just changed my mb from the failing (in many ways) Asus K8S-MX to a
> M4N78-AM.
>
> For this MB the delay loop is accurate with if (timeusec > 1000000 / 4).
> Just for reference - M4N78-AM:
> "timeusec < 1000" - 3 runs:
> Calibrating delay loop... 1156M loops per second, 10 myus = 10 us, 100 myus
> = 101 us, 1000 myus = 1148 us, 10000 myus = 10998 us, OK.
> Calibrating delay loop... 1156M loops per second, 10 myus = 10 us, 100 myus
> = 101 us, 1000 myus = 1092 us, 10000 myus = 13070 us, OK.
> Calibrating delay loop... 1146M loops per second, 10 myus = 10 us, 100 myus
> = 181 us, 1000 myus = 996 us, 10000 myus = 10807 us, OK.
>
> "timeusec > 1000000 / 4" - 3 runs:
> Calibrating delay loop... 1153M loops per second, 10 myus = 10 us, 100 myus
> = 100 us, 1000 myus = 998 us, 10000 myus = 10003 us, OK.
> Calibrating delay loop... 1154M loops per second, 10 myus = 10 us, 100 myus
> = 100 us, 1000 myus = 1004 us, 10000 myus = 10014 us, OK.
> Calibrating delay loop... 1132M loops per second, 10 myus = 10 us, 100 myus
> = 98 us, 1000 myus = 987 us, 10000 myus = 10442 us, OK.
>
> I dont (atleast Right Now - i dont know what I will do with that K8S-MX)
> want to take my new shiny system apart just to put that MB from '05 back for
> running flashrom a few times on it, sorry.
>


-- 
urjaman
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.flashrom.org/pipermail/flashrom/attachments/20100408/22d878b3/attachment.html>


More information about the flashrom mailing list