#12400 NORM 13.2.0: Determine MMP3 audio buffer parameters
Zarro Boogs per Child
bugtracker at laptop.org
Mon May 6 13:06:33 EDT 2013
#12400: Determine MMP3 audio buffer parameters
------------------------------------+---------------------------------------
Reporter: dsd | Owner: dsd
Type: defect | Status: new
Priority: normal | Milestone: 13.2.0
Component: kernel | Version: not specified
Resolution: | Keywords:
Next_action: add to build | Verified: 0
Deployment_affected: | Blockedby:
Blocking: |
------------------------------------+---------------------------------------
Changes (by dsd):
* next_action: test in build => add to build
* component: ofw - open firmware => kernel
* blocking: 12343 =>
Comment:
Thanks James. Unfortunately this half-broke audio recording, sorry for not
testing that before. When recording at 48khz there is a loud audible pop
every 171ms.
Experimenting a bit, I found that audio recording is only clean when the
first DMA transfer happens to a SRAM address on an 8kb boundary. And we
now start the audio recording buffer at an offset of 62kb into the ASRAM,
which clearly does not meet such constraints. And unfortunately, genpool
(the layer that manages ASRAM allocations) does not allow us to request
specific alignments.
To work around that limitation, we can just round the allocation down to
be cleanly divisible by 8192. Then when we make these allocations, genpool
will make them contiguously at the start of ASRAM, and the allocations
will be on 8kb boundaries as a result. This workaround is implemented in
arm-3.5 a2200ace4. The 62kb suggested buffer size is now trimmed down to
56kb.
The firmware is still correct in suggesting 62kb buffer sizes - hopefully
we will find a clean way to use all that buffer space some day.
I also reverted an earlier hack (62abd4440) now that we have this fixed in
the firmware, and also Squeak has been fixed to not request buffer sizes
that are outside of what the hardware can offer.
--
Ticket URL: <http://dev.laptop.org/ticket/12400#comment:21>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list