#11846 HIGH -: Firmware q2f10: Hardware Test : Audio: low volume

Zarro Boogs per Child bugtracker at laptop.org
Fri Jun 1 08:23:04 EDT 2012

#11846: Firmware q2f10: Hardware Test : Audio: low volume
           Reporter:  earias               |       Owner:  Quozl               
               Type:  defect               |      Status:  reopened            
           Priority:  high                 |   Milestone:                      
          Component:  ofw - open firmware  |     Version:  Development firmware
         Resolution:                       |    Keywords:                      
        Next_action:  test in build        |    Verified:  0                   
Deployment_affected:                       |   Blockedby:                      
           Blocking:                       |  
Changes (by Quozl):

 * cc: wmb (removed)
 * cc: wmb at firmworks.com (added)
  * next_action:  no action => test in build


 Please test http://dev.laptop.org/~quozl/q2f11je.rom

 The calculation of the amplitude of the sine wave was using a single
 length 32-bit intermediate result, which overflows.

 Affects XO-1 and XO-1.5 only.  Doesn't affect XO-1.75.

 Fixed in [http://tracker.coreboot.org/trac/openfirmware/changeset/2994 svn

 The regression was introduced in
 [http://tracker.coreboot.org/trac/openfirmware/changeset/2260#file5 svn
 2260], source file ''isin.fth'', the last line of ''set-period'' which
 calculates ''fstep''.  Changing this code back to what it was before svn
 2260 fixes the symptom, but there is a loss of precision due to the order
 of operations.

 (On XO-1 and XO-1.5, the ''*/'' operator is converted to ''>r * r> /'' by
 the FCode tokeniser.  The ''*/'' operator is left as is on XO-1.75 because
 the audio test is not FCode tokenised, so the intermediate result is a
 double length 64-bit value.  Mitch, perhaps the tokeniser needs a fix?)

Ticket URL: <http://dev.laptop.org/ticket/11846#comment:9>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system

More information about the Bugs mailing list