rockbox/firmware
Amaury Pouly 5aa19f3eeb imx233: implement emi frequency scaling (disabled by default)
CPU frequency scaling is basically useless without scaling the
memory frequency. On the i.MX233, the EMI (external memory
interface) and DRAM blocks are responsable for the DDR settings.
This commits implements emi frequency scaling. Only some settings
are implemented and the timings values only apply to mDDR
(extracted from Sigmatel linux port) and have been checked to
work on the Fuze+ and Zen X-Fi2/3. This feature is still disabled
by default but I expected some battery life savings by boosting
higher to 454MHz and unboosting lower to 64MHz.
Note that changing the emi frequency is particularly tricky and
to avoid writing it entirely in assembly we rely on the compiler
to not use the stack except in the prolog and epilog (because
it's in dram which is disabled when doing the change) and to put
constant pools in iram which should always be true if the
compiler isn't completely dumb and since the code itself is put
in iram. If this proves to be insufficient, one can always switch
the stack to the irq stack since interrupts are disabled during
the change.

Change-Id: If6ef5357f7ff091130ca1063e48536c6028f23ba
2013-01-10 00:51:35 +00:00
..
asm Revert "SH gcc 4.6.3 with link-time optimization, for Archos targets" 2012-10-24 14:05:39 +02:00
common Fix database tool. 2012-07-31 10:33:27 +02:00
decompressor
drivers Fix copyright headers 2012-12-29 01:40:35 +01:00
export iPod Classic/6G: PCM support for all CS42L55 rates 2013-01-09 22:08:28 +01:00
include Fix database tool. 2012-07-31 10:33:27 +02:00
libc gmtime: avoid a modulus 2012-03-18 10:09:08 +01:00
target imx233: implement emi frequency scaling (disabled by default) 2013-01-10 00:51:35 +00:00
test Fix test fat failing on 64bit system (second bit of FS#12646) 2012-05-08 13:00:56 +02:00
usbstack usb: add support for hardware handled SET ADDR/CONFIG 2012-12-07 13:37:26 +01:00
arabjoin.c
arabjoin.h
ata_idle_notify.c
backlight-sw-fading.c
backlight.c
bidi.c
buflib.c Stop the BDEBUGF format warnings in buflib.c 2012-05-02 17:37:10 -04:00
COPYING
core_alloc.c Integrate the warble tool in the regular build system. 2012-03-03 20:19:08 +01:00
debug.c
eeprom_settings.c
enc_base.c
events.c
firmware.make Add framework to let make automatically pick optimized asm implementations over generic C ones to firmware. 2012-01-22 18:46:45 +01:00
font.c Fix checks on buflib allocated handles (0 is not a valid handle value) 2012-06-10 17:15:47 +02:00
font_cache.c
general.c rbpaths: Add new special dir HOME_DIR for RaaA. 2011-12-25 20:11:18 +00:00
hangul.c
ifp_usb_serial.c
kernel.c kernel: Allow queue_wait_w_tmo() to be called with TIMEOUT_BLOCK. 2012-09-28 19:40:17 +02:00
load_code.c load_code: Get rid of win32 specific code in favor SDL_LoadFunction & friends APIs. 2012-05-26 22:46:56 +02:00
logf.c Remove copy/pasted preprocessor defines that shouldn't have been included. 2012-08-06 19:20:47 -04:00
lru.c
panic.c panicf(): fix wrong font and colors being displayed. 2012-03-30 11:23:07 +02:00
pcm.c Clean up peak calculating code. 2012-05-02 20:53:07 -04:00
pcm_mixer.c Add a true waveform display to the oscilloscope plugin. 2012-12-05 02:03:58 +01:00
pcm_sampr.c
powermgmt.c Add set_sleeptimer_duration function in minutes 2012-10-06 11:59:13 +02:00
profile.c
README
rolo.c rename rkw.h header file 2012-03-04 00:36:02 +01:00
rom.lds Fix path to PP crt0 2012-01-03 04:44:27 +00:00
screendump.c lcd drivers: Convert lcd_[remote_]framebuffer to a pointer 2012-02-28 11:44:59 +11:00
scroll_engine.c Commit FS#12454 - Faster line scroll speed by Martin Sagmuller. 2012-01-09 03:26:03 +00:00
sdmmc.c
sound.c Make rbcodec/dsp includes more specific. 2012-04-29 17:31:30 -04:00
SOURCES imx233: implement emi frequency scaling (disabled by default) 2013-01-10 00:51:35 +00:00
storage.c Remove ata_removable() and ata_present() from multidriver code. 2012-01-25 20:08:51 +01:00
system.c Fix reds. 2011-12-24 12:21:16 +00:00
thread.c Use commit_dcache() instead of commit_discard_idcache() where possible 2012-02-04 22:27:42 -05:00
timer.c
tuner.c Add stub STFM1000 tuner driver 2012-05-19 16:10:52 +02:00
usb.c usb: add support for hardware handled SET ADDR/CONFIG 2012-12-07 13:37:26 +01:00

See docs/README