Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: Ieeacf591ad4233428dca99c347043e61abae1d1f
|
|
Change-Id: I67b15d4c517a74a23639f8659acbc89022c264b5
|
|
Basically, existing sizes apply for <= 48KHz audio. Up to 96K,
we double the mix buffer. up to 192K, we double it again.
Will help reduce the interrupt load and overall latency, keeping it
roughtly constant as a function of time, regardless of bitrate.
(It is acutally a fixed-size buffer, statically-allocated to handle the
worst-case bitrate the player supports. However, at runtime if we are
using a lower bitrate we will only use a portion of it in order to keep
latancies down)
Change-Id: I61ca23180a86502732b0903fe9691c1a8c2aeaea
|
|
Change-Id: I1edbb8e71a9c73baaeecb01b66cbee6c3f7b5f8f
|
|
Change-Id: I6c3437bde2d9f781a02ffc6b3a83148b9a7af872
|
|
(By switching the output away from the audio jacks)
Change-Id: Ib8511c9d45029bba038dc4d1d187174d56cb3043
|
|
playback starts
Allows us to avoid hearing the codec powering on and off.
Change-Id: Idaaff437932009952ed248be97eedf54cb4cf28e
|
|
Unsure why this is happening, but now we detect and recover errors at
startup.
Also clean up the mismash of printf(), DEBUGF(), etc in favor of panicf() for the really serious stuff and logf() for everything else.
Change-Id: I9aaa620d55d556645c9a6d108541b987983b32a8
|
|
(existing ones apply up to 48KHz, scale up linearly to 192KHz)
Change-Id: Iac32d49b8073b63a5d40fd21f41437e6051cb8de
|
|
Change-Id: If08a1d244f28092a5d5332d666fb9afdc78f35a9
|
|
Change-Id: Iff4b1947fe053313d677b894c78250760aaef967
|
|
the rocker, x3ii, and x20 now take advantage of this, and fades
are far faster now.
Change-Id: Iceb1a5a6c1d1389c3fdb859b32016b5114a80a22
|
|
This caused random delays in LCD activity, and also caused key inputs to go nuts
Change-Id: Ie483c86f7461455308f8c5f8999df313521c6b55
|
|
Note: PCM mix buffer sizes are _way_ too small for these high bitrates
(We really need to make the mixer stuff use dynamic buffer sizes based
on the bitrate. Maybe pre-allocate a max size based on upper bitrate limit,
but use only part of it at lower bitrates? So we can have sane latency..)
Change-Id: Id7b4afd73dba7f1ffb84b2e1c016859fae5d6835
|
|
Change-Id: If5fee31d633e5f75272ba85f5293ad01b1ce573a
|
|
Change-Id: I23966b6a79c0d2cbab2e01c649c1b991f460d8ad
|
|
hotplugging hp and lineout works, without blowing out eardrums.
Change-Id: I2df5c7a618bb2d1d77d416548d45dff9cfc619db
|
|
Change-Id: Id1abb0dd11f8a8e79a80fc54e58a5a22706a03ad
|
|
* xduoo x3ii/x20: Better line out support
* less granular volume settings (too many steps before)
* Better handling of swiching sample rates
* Log actual sample rate in debug menu
Most credit goes to Roman Stolyarov
Additional integration [re]work by myself
Change-Id: I63af3740678cf2ed3170f61534e1029c81826bb6
|
|
Change-Id: I78315b81ab8df0408abc64d5edb6af37db568ad7
|
|
* Kill LCD when turning off the backlight
* Fix logic errors in lcd_enable() calls
* Use ioctls instead of sysfs to twiddle lcd enable
Change-Id: I6864ff63d87b747ac48719b0f4ba2de00333a1d3
|
|
Change-Id: Ie9b5299bfb074604db5a9ac340f67c5ed75aa926
|
|
* SAMPR_CAPS_ALL -> SAMPR_CAPS_ALL_48/96/192
* All targets claiming SAMPR_CAPS_ALL now get appropriate subset
* No need to explicitly define HAVE_PLAY_FREQ
* Rates that are a multiple of 44 or 48KHz can be used for playback
Inspired by a patch by Roman Stolyarov, but substantially rewritten by myself.
Change-Id: Iaca7363521b1cb9921e047ba1004d3cbe9c9c23e
|
|
The hosted filesystem code will automatically prepend HOME_DIR.
Change-Id: I36a76e51637ab2bb68353f8eb9ffac25ca75bad1
|
|
Change-Id: Ifc6638c2ed6bc862ded389f1b81f30c7a0419ec0
|
|
Change-Id: I59fbd1edc934a6e2b2323e13b4efc3cc1caad903
|
|
Change-Id: I2a03cea07fbad9fb5862ca69e4cfca2e8ca6b17f
|
|
Change-Id: If5204574cb604d1ea82f0863d300468bedcf541d
|
|
Change-Id: I620d7afb2eb0556cde07c7828b134b13892e6db4
|
|
Change-Id: Ief64f3d39556efa7de7df32eb7613a29a466a02e
|
|
Can be disabled at runtime by setting hold switch.
Boosts sysbench sequential write performance by 34-58%
Change-Id: I060c9d7dddc1b448f18aa46af8f8aff046e07843
|
|
Allow Lineout to behave like headphone port in regards to
plug/unplug pause/resume
Change-Id: I9cb2c9c40e0bdf3bf7e1e272164acd343f6b3850
|
|
* DMA Bulk IN (ie our TX) results in sequential transfers 33-68% faster.
* DMA Bulk OUT (ie RX) is mostly stripped out due to complete brokenness.
* Interrupt and control endpoints remain PIO-driven.
Other improvements:
1) Use consistent endpoint references (no magic numbers)
2) Greatly enhanced logging
3) DMA support can be compiled out completely
4) Setting lockswitch will disable all DMA operations at runtime
5) Much more robust error checking and recovery
Change-Id: I57b82e655e55ced0dfe289e379b0b61d8fe443b4
|
|
Change-Id: I9caf55c1249625dff7e437158afd20a526fa7499
|
|
Speachy suggested we don't shut down the adc on ROLO
this fixes the random adc drop out on ROLO
Change-Id: Ife7d679ce51a6f767963210ee650815f1de12223
|
|
Fixes deficiencies with the button system on the X3
The x3 has an interesting button layout.
Multiple key presses are NOT supported unless
[BUTTON_POWER] is one of the combined keys
As you can imagine this causes problems as the power button takes
precedence in the button system and initiates a shutdown if the
key is held too long
instead of BUTTON_POWER use BUTTON_PWRALT in combination with other keys
IF using as a prerequsite button then BUTTON_POWER should be used
Multiple buttons are emulated by button_read_device but there are a few
caveats to be aware of:
Button Order Matters!
different keys have different priorities, higher priority keys 'overide'
the lower priority keys
VOLUP[7] VOLDN[6] PREV[5] NEXT[4] PLAY[3] OPTION[2] HOME[1]
There will be no true release or repeat events, the user can let off the
button pressed initially and it will still continue to appear to be
pressed as long as the second key is held
Tree scrolling is PLAY+NEXT or PLAY+PREV
Change-Id: I88dfee1c70a6a99659e8227f5becacc50cc43910
|
|
Group commands for a bit more speed
bitdelay was not being inlined
lower bitdelay to 12 cycles
Clean-up magic numbers
Change-Id: Ifeb57a5532807a598f1ec5e1c55f03e4aa1e133f
|
|
Fix issue with first battery sample taking 30 seconds
Clean up code
Change-Id: If2437d241e0ab4e3d23b141f5d853b6cf3209b07
|
|
Change-Id: I591b4f023776b3501fce03e08bfc87a355f4c69b
|
|
Change-Id: Ic31267a2ae82beede72100c1cc5ddf7211aa0abe
|
|
Change-Id: I17625f4d56a1f5205887cb47668a2dcb628053f4
|
|
* Increase audio buffer size to better handle IRQ latency (256->2048)
* Ensure DMA engine is idle prior to starting transfers
* Set AIC to repeat last sample in case of underflows
Change-Id: I9c45c20481ee072e5882b7586fb7d50bd8ef2f35
|
|
Change-Id: I76eda59a391a408d1a6642497d8cc4aeb93a0da1
|
|
Based on code originally written by Amaury Pouly (g#1789, g#1791, g#1527)
but rebased and heavily updated.
Change-Id: Ic794abb5e8d89feb4b88fc3abe854270fb28db70
|
|
only check button values with adc when buttons are actually pressed
battery level check frequency is now around 30 seconds
switched to polling for the battery voltage w/ timeout
Ifdef functions Allow BACK OPTION PLAY to be the first of a two key combo
Change-Id: Icb48d62ac8d82b4dc931df5e1c5b4a84a9a69772
|
|
We don't use it on the X3. Should we ever get another jz4760 target
we can revisit this.
Change-Id: I591d02c7e47b35424b3c96b776b31a38e3c8ceee
|
|
Change-Id: If2261aed464fcbe3ea1f036dd18376fa8ff42e69
|
|
halves cpu usage
Change-Id: I3797b01ecd2f7615acfed53a77d8a1f51e947c8b
|
|
add scrolling for clocks and such
moved to a switch based structure.. this ends up a lot cleaner
Change-Id: I940506c4b8dc73f0b776d20810780527cbf7e0d4
|
|
Change-Id: I3e7bc7ffb8d6d0c5d18a6ab38b1a270559a62fb9
|