dev builds
themes manual
device status forums
mailing lists
IRC bugs
dev guide

21st Jan 19:35 a312ca1: CPUFreq scaling governor interface for Linux/Android hosted devices.

For a usage example see
firmware/SOURCES [diff]
firmware/target/hosted/cpufreq-linux.c [new]
firmware/target/hosted/cpufreq-linux.h [new]
Udo Schläpfer
13th Dec 19:45 6d3dc8f: iBasso DX50/DX90: CPU info enhancements.

System -> Debug (Keep Out) -> View CPU stats

Will now show the current cpufreq scaling governor, minimum, current and maximum cpufreq scaling frequency for each CPU.

This may be genric for Android kernel based devices but is only enabled for iBasso Devices. Other maintainers may choose do adopt this.
apps/debug_menu.c [diff]
firmware/target/hosted/cpuinfo-linux.c [diff]
firmware/target/hosted/cpuinfo-linux.h [diff]
Udo Schläpfer
Wednesday 16:30 572b36a: fix surround & pbe dsp crash

check handle before clean up buffer in flush().
lib/rbcodec/dsp/pbe.c [diff]
lib/rbcodec/dsp/surround.c [diff]
Chiwen Chang
4th Jan 14:13 f35d63b: ypr0/ypr1: GPIO handling API refactoring

The GPIO APIs for ypr0 and ypr1 targets was messy, requiring a direct communication via several ioctls calls. Since it is planned to add support to other devices, more GPIO are going to be used. For that reason the functions shall be clear and easy to use.
firmware/target/hosted/samsungypr/gpio-ypr.c [diff]
firmware/target/hosted/samsungypr/gpio-ypr.h [diff]
firmware/target/hosted/samsungypr/ypr0/button-ypr0.c [diff]
firmware/target/hosted/samsungypr/ypr0/system-ypr0.c [diff]
firmware/target/hosted/samsungypr/ypr1/button-ypr1.c [diff]
Lorenzo Miori
2014-01-04 6879dec: yp-r0: improve the charging code

Some people reported strange charging times and strange battery life. Charging by OF: 25 hours; RB: 18 hours It has been found that there are at least two issues here:

1) the way of getting battery charging status wasn't really accurate. This attempts to fix that issue. This patch also simplifies some code (opening a device is no more needed, for example).

To technically explain, battery charging implies first a constant current mode (where the voltage increases) and then a constant voltage mode (where, obviously, the voltage reads more or less the same). The old way the End Of Charge was detected was based solely on the voltage, while now it is based on chip's EOC interrupt, which should be more accurate.

2) OF explicitly sets a constant current 350 mA, while we usually had 55 mA (by as3543 default). This wasn't discovered before since there is a caching problem
("an accurate guess") in the Samsung power mgmt Linux module, thus its debugging dumper wasn't really working, reporting a 55 mA current. Strangely this option should have been set by the bootloader but apparently it does not.

Some testing is still needed, but I confirm that with this patch I could run a benchmark for 25 hours (vs. 18 hours), by charging within Rockbox of course.
firmware/export/config/samsungypr0.h [diff]
firmware/target/hosted/samsungypr/ypr0/powermgmt-ypr0.c [diff]
Lorenzo Miori
23rd Jan 10:03 f65baf9: atj213x: Fix DMAC block in description file
utils/regtools/desc/regs-atj213x.xml [diff]
Marcin Bukat
22nd Jan 12:33 15d4be5: atj213x: fix desc file errors

Catched by swiss_knife check there are some overlaping fields and invalid characters in some names.
utils/regtools/desc/regs-atj213x.xml [diff]
Marcin Bukat
22nd Jan 05:12 716fea8: Fix some language in the sound settings manual.
manual/configure_rockbox/sound_settings.tex [diff]
Michael Giacomelli
22nd Jan 12:24 30784cc: fix pbe/haas surround dsps: surround_enabled, redo flush functions.

surround_enabled was never true, end up dsp_surround_flush didn't work; Thats why a cracking noise occurs in right channel when moving track positions.

redo pbe/surround flush in a much simpler way suits the current single buffer style.
lib/rbcodec/dsp/pbe.c [diff]
lib/rbcodec/dsp/surround.c [diff]
Chiwen Chang
20th Jan 09:20 5732e3e: Fix typo in zxbox.tex that broke the manual builds for some targets
manual/plugins/zxbox.tex [diff]
Frank Gevaerts
28th Dec 19:30 42219b6: Bypass the AS3543 audio mixer at higher volumes.

This change reduces noise and distortion very slightly at higher volumes.
firmware/drivers/audio/as3514.c [diff]
Mihail Zenkov
19th Jan 20:20 163ca14: Enable buflib and core_alloc for warble.

Most of the work comes from by Thomas Jarosch.
lib/rbcodec/platform.h [diff]
lib/rbcodec/rbcodecplatform-unix.h [diff]
lib/rbcodec/test/SOURCES [diff]
lib/rbcodec/test/warble.c [diff]
Frank Gevaerts
22nd Aug 21:30 3ae0f32: three new DSPs

perceptual bass enhancement
- a bbe-ish group delay corrction with Biophonic EQ boost.
- precut

auditory fatigue reduction
-reduce signal in frequency that may trigger temporary threshold shift

haas surround
-frequency between f(x1) and f(x2) is always bypassed.
-can apply to side only.
apps/lang/english.lang [diff]
apps/menus/sound_menu.c [diff]
apps/settings.c [diff]
apps/settings.h [diff]
apps/settings_list.c [diff]
lib/rbcodec/SOURCES [diff]
lib/rbcodec/dsp/afr.c [new]
lib/rbcodec/dsp/afr.h [new]
lib/rbcodec/dsp/dsp_filter.c [diff]
lib/rbcodec/dsp/dsp_filter.h [diff]
lib/rbcodec/dsp/dsp_proc_database.h [diff]
lib/rbcodec/dsp/dsp_proc_settings.h [diff]
lib/rbcodec/dsp/pbe.c [new]
lib/rbcodec/dsp/pbe.h [new]
lib/rbcodec/dsp/surround.c [new]
lib/rbcodec/dsp/surround.h [new]
manual/configure_rockbox/sound_settings.tex [diff]
Chiwen Chang
20th Sep 12:29 2cdfc43: hwstub: implement read/write data abort recovery
utils/hwstub/stub/SOURCES [diff]
utils/hwstub/stub/asm/arm/system.S [new]
utils/hwstub/stub/asm/mips/atomic_rw.S [diff]
utils/hwstub/stub/asm/mips/system.S [new]
utils/hwstub/stub/atj213x/crt0.S [diff]
utils/hwstub/stub/atj213x/ [diff]
utils/hwstub/stub/main.c [diff]
utils/hwstub/stub/rk27xx/crt0.S [diff]
utils/hwstub/stub/stmp/crt0.S [diff]
utils/hwstub/stub/stmp/ [diff]
utils/hwstub/stub/system.h [diff]
Amaury Pouly
13th Jan 20:57 2ee2a96: Fix crash on uninitialized variable

The WRITE() macro checks if the "fw" pointer is open upon fwrite() error. Since fw was not initialized before use, it might crash for non-zero fw.

cppcheck reported.
[utils/jz4740_tools/HXFreplace.c:187]: (error) Uninitialized variable: fw
utils/jz4740_tools/HXFreplace.c [diff]
Thomas Jarosch
13th Jan 20:40 1212edd: Don't return pointer to array allocated on the stack

It will be out of scope once the function is left.

cppcheck reported:
[firmware/drivers/rtc/rtc_zenvisionm.c:31]: (error) Pointer to local array variable returned.
[firmware/drivers/rtc/rtc_zenvisionm.c:38]: (error) Pointer to local array variable returned.
firmware/drivers/rtc/rtc_zenvisionm.c [diff]
Thomas Jarosch
12th Jan 20:12 a71603b: Clean up bogus 'make compiler happy' code

Less code makes the compiler even happier.
utils/zenutils/libraries/zlib123/zlib/deflate.c [diff]
utils/zenutils/libraries/zlib123/zlib/zutil.c [diff]
Thomas Jarosch
12th Jan 18:33 789df17: ARM unwinder for thumb: Fix broken MOV opcode

The origin of the register value was never moved in the desired register state due to a typo ('rhs' vs. 'rhd').

While looking at the code, I noticed the action taken for the register value is another copy'n'paste error from the ADD opcode above -> it added to the register value instead of MOVing the current value.

Patch submitted upstream.

cppcheck reported:
[lib/unwarminder/unwarm_thumb.c:473]: (warning) Redundant assignment of 'state.regData[rhd].o' to itself.
lib/unwarminder/unwarm_thumb.c [diff]
Thomas Jarosch
12th Jan 18:31 7990241: Fix red
lib/unwarminder/unwarm_arm.c [diff]
Thomas Jarosch
12th Jan 18:26 7361a43: ARM unwinder for thumb: Fix broken SUB opcode

Detected while looking through the code. Patch submitted upstream.
lib/unwarminder/unwarm_thumb.c [diff]
Thomas Jarosch
12th Jan 18:15 fa592cc: ARM unwinder: Add missing 'register' variable in debug output

Also fix a wrong format specifier for an unsigned variable. Detected by cppcheck, patch submitted upstream.
lib/unwarminder/unwarm_arm.c [diff]
Thomas Jarosch
12th Jan 18:10 1589b28: ARM unwinder: Add missing va_end() call.

Detected by cppcheck, patch submitted upstream.
lib/unwarminder/unwarm.c [diff]
Thomas Jarosch
8th Jan 08:54 8d0bdc7: SVG image of the Samsung YP-R1 and other formats for the manual.
manual/rockbox_interface/images/samsungypr1-front.pdf [new]
manual/rockbox_interface/images/samsungypr1-front.png [new]
manual/rockbox_interface/images/samsungypr1-front.svg [new]
Szymon Dziok
12th Jan 12:25 200ca66: Fix red/yellow round #2
bootloader/mpio_hd200_hd300.c [diff]
firmware/target/arm/pbell/vibe500/backlight-target.h [diff]
uisimulator/common/backlight-sim.h [diff]
Marcin Bukat
12th Jan 11:18 3d98386: Set latex input to /dev/null to avoid blocking on errors
manual/LaTeX.Rules [diff]
manual/Makefile.pdflatex [diff]
Frank Gevaerts
12th Jan 11:02 9ffd932: Fix red/yellow
apps/plugins/lib/grey_core.c [diff]
firmware/target/arm/ipod/backlight-mini1g_mini2g.c [diff]
firmware/target/arm/ipod/backlight-target.h [diff]
firmware/target/arm/olympus/mrobe-100/backlight-target.h [diff]
firmware/target/arm/pbell/vibe500/backlight-target.h [diff]
firmware/target/arm/tcc780x/cowond2/button-cowond2.c [diff]
firmware/target/coldfire/iriver/h100/backlight-h100.c [diff]
firmware/target/coldfire/iriver/h100/backlight-target.h [diff]
firmware/target/coldfire/mpio/backlight-mpio.c [diff]
firmware/target/coldfire/mpio/backlight-target.h [diff]
firmware/target/mips/ingenic_jz47xx/onda_vx747/sadc-onda_vx747.c [diff]
uisimulator/common/backlight-sim.h [diff]
Marcin Bukat
8th Dec 12:24 bbd7d1d: regtools/headergen: Make generator more flexible
utils/regtools/headergen.cpp [diff]
Marcin Bukat
8th Jan 23:22 89ba7e8: Get rid of stupid _backlight_* function names

_remote_backlight_* and _buttonlight_* are cleaned as well
apps/plugins/lib/grey_core.c [diff]
apps/plugins/mpegplayer/mpegplayer.c [diff]
bootloader/gigabeat.c [diff]
bootloader/iaudio_coldfire.c [diff]
bootloader/imx233.c [diff]
bootloader/iriver_h1x0.c [diff]
bootloader/iriver_h300.c [diff]
bootloader/main-e200r-installer.c [diff]
bootloader/main-pp.c [diff]
bootloader/main-ppsansawipe.c [diff]
bootloader/meizu_m3.c [diff]
bootloader/mpio_hd200_hd300.c [diff]
bootloader/samsung_yps3.c [diff]
bootloader/sansaview.c [diff]
bootloader/telechips.c [diff]
firmware/backlight-sw-fading.c [diff]
firmware/backlight.c [diff]
firmware/export/backlight.h [diff]
firmware/target/arm/as3525/backlight-e200v2-fuze.c [diff]
firmware/target/arm/as3525/sansa-c200v2/backlight-c200v2.c [diff]
firmware/target/arm/as3525/sansa-c200v2/backlight-target.h [diff]
firmware/target/arm/as3525/sansa-clip/backlight-target.h [diff]
firmware/target/arm/as3525/sansa-clipplus/backlight-clip.c [diff]
firmware/target/arm/as3525/sansa-clipplus/backlight-target.h [diff]
firmware/target/arm/as3525/sansa-clipv2/backlight-clipv2.c [diff]
firmware/target/arm/as3525/sansa-clipv2/backlight-target.h [diff]
firmware/target/arm/as3525/sansa-clipzip/backlight-clipzip.c [diff]
firmware/target/arm/as3525/sansa-clipzip/backlight-target.h [diff]
firmware/target/arm/as3525/sansa-e200v2/backlight-target.h [diff]
firmware/target/arm/as3525/sansa-fuze/backlight-target.h [diff]
...and 118 more files.
Marcin Bukat
11th Jan 20:40 2a3e162: Limit more variables to file scope
apps/plugins/imageviewer/png/tinflate.c [diff]
apps/plugins/lua/gmtime.c [diff]
firmware/drivers/ata_flash.c [diff]
firmware/drivers/lcd-charset-player.c [diff]
firmware/test/buflib/test_main2.c [diff]
firmware/test/buflib/test_move2.c [diff]
flash/uart_boot/uart_boot.c [diff]
gdb/sh-stub.c [diff]
lib/rbcodec/codecs/libfaad/codebook/hcb.h [diff]
lib/rbcodec/codecs/libfaad/huffman.c [diff]
lib/rbcodec/codecs/libfaad/syntax.c [diff]
lib/rbcodec/codecs/libgme/inflate/mallocer.c [diff]
lib/rbcodec/codecs/libspeex/filters.c [diff]
lib/rbcodec/codecs/libwavpack/wputils.c [diff]
lib/rbcodec/codecs/libwmapro/mdct_tables.c [diff]
lib/rbcodec/codecs/mod.c [diff]
lib/rbcodec/codecs/sid.c [diff]
lib/rbcodec/codecs/wav64.c [diff]
lib/skin_parser/skin_debug.c [diff]
lib/skin_parser/skin_parser.c [diff]
rbutil/mkimxboot/main.c [diff]
Thomas Jarosch
4th Jan 12:06 85c98bc: Improve readability by adding parenthesis
firmware/target/arm/s5l8700/ipodnano2g/ftl-nano2g.c [diff]
Thomas Jarosch
11th Jan 17:02 cfbd9cb: Make a few local variables static
apps/playback.c [diff]
firmware/core_alloc.c [diff]
firmware/drivers/ramdisk.c [diff]
firmware/logf.c [diff]
firmware/powermgmt.c [diff]
firmware/target/hosted/filesystem-app.c [diff]
firmware/target/sh/archos/recorder/powermgmt-recorder.c [diff]
Thomas Jarosch
11th Jan 16:45 5f5a83e: maemo: Clean up unused variables
firmware/target/hosted/maemo/maemo-thread.c [diff]
Thomas Jarosch
5th Jan 14:21 2d41866: Remove playback control from XWorld, fix comments a bit

XWorld grabs the audio buffer when it starts, so there can be no playback, making the playback control menu useless :P
apps/plugins/xworld/sys.c [diff]
Franklin Wei
8th Jan 21:30 761e798: usb: finally get rid of USE_ROCKBOX_USB in Sansa bootloader, use bootloader usb

For some reason, the bootloader and config files didn't define HAVE_BOOTLOADER_USB_MODE, also remove the special cases in usb.c which they implied.
bootloader/sansa_as3525.c [diff]
firmware/export/config/sansac200v2.h [diff]
firmware/export/config/sansaclip.h [diff]
firmware/export/config/sansaclipplus.h [diff]
firmware/export/config/sansaclipv2.h [diff]
firmware/export/config/sansaclipzip.h [diff]
firmware/export/config/sansae200v2.h [diff]
firmware/export/config/sansafuze.h [diff]
firmware/export/config/sansafuzev2.h [diff]
firmware/export/config/sansam200v4.h [diff]
firmware/usb.c [diff]
Amaury Pouly
8th Jan 21:18 246026c: imx233: add a comment in the bootloader
bootloader/imx233.c [diff]
Amaury Pouly
8th Jan 16:44 9d160c2: Include scrreprt.4ht from

This is needed because the version in scrreprt.4ht in debian isn't compatible with other current bits of the TeX installation.
manual/scrreprt.4ht [new]
Frank Gevaerts
2nd Jan 21:48 3aebdfa G#1098: usb: make usb_release_exclusive_storage private
firmware/export/usb.h [diff]
firmware/usb.c [diff]
Amaury Pouly
2nd Jan 21:15 dc127f2 G#1097: Clarify usb_powered() and fix some code.

Either by mistake or because its meaning changed, usb_powered() doesn't mean what the name suggest, so clarify its meaning by renaming it to usb_powered_only. So use of usb_powered() are replaced by usb_inserted() when it makes more sense.
apps/gui/skin_engine/skin_tokens.c [diff]
apps/main.c [diff]
apps/plugin.c [diff]
apps/plugin.h [diff]
apps/plugins/battery_bench.c [diff]
firmware/export/usb.h [diff]
firmware/powermgmt.c [diff]
firmware/usb.c [diff]
lib/skin_parser/tag_table.c [diff]
lib/skin_parser/tag_table.h [diff]
uisimulator/common/stubs.c [diff]
Amaury Pouly
2nd Jan 11:39 1ab9155 G#1096: usb: document usb states, powering and detection
firmware/export/usb.h [diff]
Amaury Pouly
2nd Jan 11:38 ae37d19 G#1095: usb: document usb_status_event and #ifdef it with USB_STATUS_BY_EVENT
firmware/export/usb.h [diff]
Amaury Pouly
1st Jan 23:26 268114e G#1094: usb: move usb charging function prototype from usb_core.h to usb.h
firmware/export/usb.h [diff]
firmware/export/usb_core.h [diff]
Amaury Pouly
30th Dec 16:36 66690ca G#1091: Get rid of USE_ROCKBOX_USB

Except for unfinished or experimental ports, it isthe case that USE_ROCKBOX_USB and HAVE_USBSTACK are both defined or both undefined. Furthermore, it is a leftover of some early developments on the USB stack and doesn't make sense anymore.
apps/features.txt [diff]
firmware/drivers/ata.c [diff]
firmware/export/config.h [diff]
firmware/export/config/cowond2.h [diff]
firmware/export/config/creativezen.h [diff]
firmware/export/config/creativezenmozaic.h [diff]
firmware/export/config/creativezenv.h [diff]
firmware/export/config/creativezenxfi.h [diff]
firmware/export/config/creativezenxfi2.h [diff]
firmware/export/config/creativezenxfi3.h [diff]
firmware/export/config/creativezenxfistyle.h [diff]
firmware/export/config/creativezv.h [diff]
firmware/export/config/gigabeats.h [diff]
firmware/export/config/gogearhdd1630.h [diff]
firmware/export/config/gogearhdd6330.h [diff]
firmware/export/config/gogearsa9200.h [diff]
firmware/export/config/hifietma8.h [diff]
firmware/export/config/hifietma8c.h [diff]
firmware/export/config/hifietma9.h [diff]
firmware/export/config/hifietma9c.h [diff]
firmware/export/config/hifimanhm60x.h [diff]
firmware/export/config/hifimanhm801.h [diff]
firmware/export/config/ihifi760.h [diff]
firmware/export/config/ihifi960.h [diff]
firmware/export/config/ipod4g.h [diff]
firmware/export/config/ipod6g.h [diff]
firmware/export/config/ipodcolor.h [diff]
firmware/export/config/ipodmini1g.h [diff]
firmware/export/config/ipodmini2g.h [diff]
firmware/export/config/ipodnano1g.h [diff]
...and 36 more files.
Amaury Pouly
5th Jan 18:09 f91434c: Fix yellow
lib/skin_parser/skin_parser.c [diff]
lib/skin_parser/skin_parser.h [diff]
lib/skin_parser/skin_scan.c [diff]
lib/skin_parser/skin_scan.h [diff]
Thomas Jarosch
5th Jan 17:44 fdd4aef: Make thirty functions static to reduce binary size

If any of those functions should be (unused) API functions, they can easily be turned back once really needed.

Detected using a new cppcheck check that uses the internal symbol database to catch functions that are only used in the current file.
apps/plugins/pdbox/PDa/src/d_imayer_fft.c [diff]
firmware/drivers/ata_flash.c [diff]
firmware/events.c [diff]
firmware/ifp_usb_serial.c [diff]
flash/make_firmware/make_firmware.c [diff]
flash/minimon/minimon.c [diff]
lib/skin_parser/skin_parser.c [diff]
lib/skin_parser/skin_parser.h [diff]
lib/skin_parser/skin_scan.c [diff]
lib/skin_parser/skin_scan.h [diff]
Thomas Jarosch
4th Jan 17:10 c907e12: jz4740 usbtool: Fix undefined behavior in set_reg()

The variable 'i' should actually be 'size'. See the read_reg() function above it.

Confirmed via private email from Maurus Cuelenaere. Thanks!
(who also remembered having trouble reading/setting registers over USB back then ;))

cppcheck reported:
[rockbox/utils/jz4740_tools/jz4740_usbtool.c:281]: (error) Uninitialized variable: i
utils/jz4740_tools/jz4740_usbtool.c [diff]
Thomas Jarosch

Page was last modified "Jan 10 2012" The Rockbox Crew