[U-Boot] Illegal use of FP ops in clock_ti814x.c

Måns Rullgård mans at mansr.com
Tue Oct 29 13:44:32 CET 2013


Wolfgang Denk <wd at denx.de> writes:

> Dear Måns Rullgård,
>
> In message <yw1x8uxc28y9.fsf at unicorn.mansr.com> you wrote:
>>
>> >> Something like this should be equivalent.  That said, it looks
>> >> suspiciously like it's meant to simply do a division and round up.  If
>> >> that is the case, +225 should be +249.  It probably makes no difference
>> >> for the values actually encountered.
>> >
>> > Umm... this is the part which I do not understand.
>> >
>> > The original code adds 90%; you add 90%, too.  However, to round up,
>> > one usually adds only 50% ?
>> 
>> Adding 50% would round to nearest.  For integer division to round up,
>> you must add one less than the divisor.
>
> Agreed.  But do we want to round up?  The original code used +90%,
> which is something else, too...

That rounds fractions >= 0.1 up while < 0.1 is rounded down.  It's an
unusual thing to do, which is why I suspect it's not quite correct in
the first place.

>> > Where are these 90% coming from? Are they in any way meaningful, or
>> > even critical?
>> 
>> My guess is that it was someone's approximation of 249 / 250.  I don't
>> know the hardware, so it's conceivable that it really should be this
>> way, although it seems unlikely.
>
> Are you able to test such a modificationon actual hardware?

No.

-- 
Måns Rullgård
mans at mansr.com


More information about the U-Boot mailing list