rockbox/firmware
Thomas Martitz baa070cca6 GSoC/Buflib: Enable compaction in buflib.
This enables the ability to allocate (and free) memory dynamically
without fragmentation, through compaction. This means allocations can move
and fragmentation be reduced. Most changes are preparing Rockbox for this,
which many times means adding a move callback which can temporarily disable
movement when the corresponding code is in a critical section.

For now, the audio buffer allocation has a central role, because it's the one
having allocated most. This buffer is able to shrink itself, for which it
needs to stop playback for a very short moment. For this,
audio_buffer_available() returns the size of the audio buffer which can
possibly be used by other allocations because the audio buffer can shrink.

lastfm scrobbling and timestretch can now be toggled at runtime without
requiring a reboot.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30381 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 14:01:45 +00:00
..
common GSoC/Buflib: Enable compaction in buflib. 2011-08-30 14:01:45 +00:00
decompressor
drivers Commit FS#12111 by Stephan Grossklass. Disables output mixer auto gain control on AMSv2. Should fix occasional distortion reported when running the player at very high output levels (e.g. at or above 0dB). 2011-07-24 21:56:24 +00:00
export GSoC/Buflib: Add buflib memory alocator to the core. 2011-08-30 14:01:33 +00:00
include GSoC/Buflib: Add buflib memory alocator to the core. 2011-08-30 14:01:33 +00:00
libc Fix reds, inclusion of C files into plugins is tricky. 2010-12-02 21:29:05 +00:00
target GSoC/Buflib: Add buflib memory alocator to the core. 2011-08-30 14:01:33 +00:00
test Added dummy autoconf.h for fat test. 2011-02-28 10:51:45 +00:00
usbstack Fix tabs in .c and .h files in firmware/ 2011-05-08 11:37:18 +00:00
arabjoin.c
arabjoin.h
ata_idle_notify.c
backlight-sw-fading.c
backlight.c All kernel objects in code shared amongs targets (core, plugins, codecs) should be declared SHAREDBSS_ATTR as any core could potentially touch them even though they seem only to involve threads on one core. The exception is target code for particular CPUs where proper allocation is fixed. playlist.c was a little odd too-- use one mutex for the current playlist and a separate one for created playlists (still pondering the necessity of more than one). 2011-02-14 11:27:45 +00:00
bidi.c
buffer.c Fix errors and warnings. 2011-08-14 15:37:05 +00:00
buflib.c GSoC/Buflib: Enable compaction in buflib. 2011-08-30 14:01:45 +00:00
COPYING
core_alloc.c GSoC/Buflib: Enable compaction in buflib. 2011-08-30 14:01:45 +00:00
debug.c Redirect (L)DEBUGFs to adb logcat in DEBUG enabled builds. 2010-09-20 17:38:47 +00:00
eeprom_settings.c
enc_base.c
events.c
firmware.make Rename/change SIMVER to APP_TYPE in the Makefiles. 2010-07-10 13:49:49 +00:00
font.c Anti-Aliased Fonts support. 2011-03-05 18:36:51 +00:00
font_cache.c
general.c Ged rid of uisimulator/common/io.c for android builds. 2010-09-01 21:29:34 +00:00
hangul.c
ifp_usb_serial.c firmware/ : use lcd_putsf() (only in debug code) 2010-08-28 23:12:11 +00:00
kernel.c Fix "variable 'result' set but not used" warning 2011-07-19 21:06:30 +00:00
load_code.c Disable buffering codecs (and code generally) on RaaA. 2011-02-09 20:27:23 +00:00
logf.c Fix a logf bug which would trigger undefined behaviour(and probably crash) when both DEBUG, CONFIG_PLATFORM & PLATFORM_HOSTED are enable 2010-08-02 09:10:35 +00:00
lru.c
panic.c Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). 2010-06-21 16:53:00 +00:00
pcm.c Use playback channel directly for peakmeters and plugins using peak calculation. Also, for now, don't allow mixer playback to overlap recording, even if full duplex works. 2011-07-02 11:55:38 +00:00
pcm_mixer.c Use playback channel directly for peakmeters and plugins using peak calculation. Also, for now, don't allow mixer playback to overlap recording, even if full duplex works. 2011-07-02 11:55:38 +00:00
pcm_sampr.c Updated our source code header to explicitly mention that we are GPL v2 or 2008-06-28 18:10:04 +00:00
powermgmt.c Fix premature idle shutdown on RaaA after last track finished playing 2011-04-16 16:57:35 +00:00
profile.c
README
rolo.c GSoC/Buflib: Add buflib memory alocator to the core. 2011-08-30 14:01:33 +00:00
rom.lds
screendump.c Really fix yellow: Rename BMP_LINESIZE and BMP_BPP to get rid of the macro name collision 2010-10-25 12:52:02 +00:00
scroll_engine.c All kernel objects in code shared amongs targets (core, plugins, codecs) should be declared SHAREDBSS_ATTR as any core could potentially touch them even though they seem only to involve threads on one core. The exception is target code for particular CPUs where proper allocation is fixed. playlist.c was a little odd too-- use one mutex for the current playlist and a separate one for created playlists (still pondering the necessity of more than one). 2011-02-14 11:27:45 +00:00
sdmmc.c Various minor cleanups 2010-08-01 10:07:05 +00:00
sound.c fix red 2011-03-14 23:14:07 +00:00
SOURCES GSoC/Buflib: Add buflib memory alocator to the core. 2011-08-30 14:01:33 +00:00
storage.c Change the thread api a bit. 2011-03-05 17:48:06 +00:00
system.c Rockbox as an application: Replace many occurences of #ifdef SIMULATOR with #if (CONFIG_PLATFORM & PLATFORM_HOSTED) (or equivalently). 2010-06-21 16:53:00 +00:00
thread.c Change the thread api a bit. 2011-03-05 17:48:06 +00:00
timer.c
tuner.c Implement tea5767 tuner detection - FS#11714 by me 2010-11-05 17:04:18 +00:00
usb.c Add a 100ms delay before calling disk_mount_all(). Some players (especially some gigabeat Fs) seem to need a delay after disabling USB if we want disk access to work. 2011-08-15 14:36:23 +00:00

See docs/README