summaryrefslogtreecommitdiff
path: root/firmware/target/hosted (follow)
Commit message (Collapse)AuthorAge
* touchscreen: Fix kinetic scrolling when the statusbar is off.Thomas Martitz2012-04-05
| | | | | | | | | | | The scrolling code cannot differentiate between the BUTTON_TOUCHSCREEN post from normal touches and the one posted in the timeout callback. To fix introduce a global special button (BUTTON_REDRAW) that results in the desired redraw. This existed already as a local kludge for android and is now generalized. Change-Id: I6bfa6c66431c48f5042fcd8fce2ea72cd3457f58
* Refactor and unify objcopy calls in the build system. Also now properly ↵Thomas Martitz2012-04-04
| | | | | | handles DEBUG builds on hosted targets to keep debug symbols if necessary. Change-Id: I884031b79c6d49479e4d95752f35ced68872dd5d
* Revert 1207c7b and fix the actual warnings.Frank Gevaerts2012-04-03
| | | | | | | | The warnings 1207c7b was supposed to get rid of are sim-only. This means the binsize argument used for the _FORTIFY_SOURCE fix did not apply at all. This one actually checks the return values. Change-Id: Ic4cd8c25de4305310baa868c077a66981cdfcb4b
* android: implement system_exception_wait and system_reboot, so that the ↵Thomas Martitz2012-03-30
| | | | | | panicf() screen can be exited. Change-Id: I1fb095a7ae01a99c84722eeec199b1007b0f6088
* build system: unify/simplify library handling a bit.Thomas Martitz2012-03-26
| | | | | | | libs in $ROOT/lib now add to $(CORE_LIBS) and $(EXTRA_LIBS) and are automatically linked by the core and codecs/plugins respectively. Change-Id: Iff482c792a8c8142718f6a16a450c6e2f1497c9a
* android: lcd_update/_rect() changesThomas Martitz2012-03-22
| | | | | | | | | * rename some java methods (to update(), initialize()) * re-create the ByteBuffer object from the framebuffer on every update. This is needed now since 2c71aa9 added the possiblity for lcd_framebuffer to change. * do so, along with the creation of the dirty Rect object, in native code. Change-Id: Id39ea8e4b6148987c5f216a87e0ff3c8e7babe92
* android: Add facility for java code to wait native code to be ready.Thomas Martitz2012-03-22
| | | | | | | | | | | | | Especially when unzipping rockbox.zip, the native code can be initialized a lot later than the java code. The java code needs to be prevented from accessing rockbox structures (e.g. current_tick, event queues) before they're ready. This commit adds wait_rockbox_ready() and fixes dodgy behavior of starting rockbox via widget play button, headset remote buttons or multimedia keys. Also fixes wrong small list items before first redraw. Change-Id: I1caf925e829a9c1c6bb6e0016d5c80574574c91e
* sdl: Fix the sdl init so the sim will get a taskbar itemJonathan Gordon2012-03-20
| | | | Change-Id: Ib0049f96c54b4471a8185937d92bb6e8a492142a
* Add RBCODEC_LIB to android and ypr0 builds so they link again.Frank Gevaerts2012-03-18
| | | | Change-Id: I022c7beba844a9b2cfcb8ec7950a1348e4bf511a
* Tweak some PCM drivers for less typecasting with the data pointer.Michael Sevakis2012-03-04
| | | | | | | Yeah, sizeof (void) here with GCC is 1. If something has a problem with that, we'll set it straight. Change-Id: I9ad3eee75dd440f6404a04a501d1533c8bc18ba9
* android: drop copied lcd_blit_yuv() and use generic one.Thomas Martitz2012-03-03
| | | | Change-Id: I1b9728b138c05c59867ba06370186b2fa5a7c9fd
* Revise the PCM callback system after adding multichannel audio.Michael Sevakis2012-03-03
| | | | | | | | | | | | | | | | | | Additional status callback is added to pcm_play/rec_data instead of using a special function to set it. Status includes DMA error reporting to the status callback. Playback and recording callback become more alike except playback uses "const void **addr" (because the data should not be altered) and recording uses "void **addr". "const" is put in place throughout where appropriate. Most changes are fairly trivial. One that should be checked in particular because it isn't so much is telechips, if anyone cares to bother. PP5002 is not so trivial either but that tested as working. Change-Id: I4928d69b3b3be7fb93e259f81635232df9bd1df2 Reviewed-on: http://gerrit.rockbox.org/166 Reviewed-by: Michael Sevakis <jethead71@rockbox.org> Tested-by: Michael Sevakis <jethead71@rockbox.org>
* Pandora port: Add support for the L/R shoulder buttonsThomas Jarosch2012-03-02
| | | | Change-Id: I18d5998dbcf7347549008fb9e52679b65fbf7e4f
* lcd drivers: Convert lcd_[remote_]framebuffer to a pointerJonathan Gordon2012-02-28
| | | | | | | | | | Change all lcd drivers to using a pointer to the static framebuffer instead of directly accessing the static array. This will let us later do fun things like dynamic framebuffer sizes (RaaA) or ability to use different buffers for different layers (dynamic skin backdrops!) Change-Id: I0a4d58a9d7b55e6c932131b929e5d4c9f9414b06
* Arm stack unwinderMarcin Bukat2012-02-22
| | | | | | | | | Simplified stack unwinder for ARM. This is port of http://www.mcternan.me.uk/ArmStackUnwinding/ backtrace() is called from UIE() on native targets and from panicf() on both native and ARM RaaA. Change-Id: I8e4b3c02490dd60b30aa372fe842d193b8929ce0
* Include stdlib.h for atexit().Thomas Martitz2012-01-25
| | | | Change-Id: I561bdaf0c6a0b806a136909e40cc4fb2805f6aa3
* Fix win32 simulator build (FS#12564).Thomas Martitz2012-01-25
| | | | Change-Id: Ia8c805fd63b6d2d05133e6dd0ad257d31b38e2a0
* ypr0: Allow dection of multiple button presses at the same time.Thomas Martitz2012-01-23
| | | | | | | | | | Reading from /dev/r0Btn only allowed to read one button at a time. Reading GPIO directly via ioctl() doesn't have this limitation. This adds a more complete GPIO list also. Change-Id: If47b0846472f0817305dbf930731255f875e0269 Author: Lorenzo Miori
* ypr0: Work around warning introduced by buggy alsa headers.Thomas Martitz2012-01-22
| | | | Change-Id: I7c57ad5504db51d2f7563d2f26ff66f8d189b360
* Fix sdl build warningsThomas Martitz2012-01-22
| | | | Change-Id: I3e85c63ce246b93572f856b364c9e2ff1b53e52f
* ypr0: Use generic lcd memframe driver.Thomas Martitz2012-01-22
|
* Create fimrware/asm directory for assembly optimized stuff.Thomas Martitz2012-01-22
| | | | | | | | | | | | | | | | This dir is suitable for stuff that doesn't fit the target tree, e.g. because it also builds on hosted or otherwise. It also has a generic subfolder for fallback C implementations so that not all archs need to provide asm files. SOURCES should only contain "foo.c" where foo.c includes the specific <arch>/foo.c files from the subdirs using the preprocessor. This way automatic selection of asm versions or generic C verion is possible. For the start, the thread support files are moved, since ASM threads can be used on hosted platforms as well. Since core_sleep() remains platform specific it's moved to the corresponding system.h headers. Change-Id: Iebff272f3407a6eaafeb7656ceb0ae9eca3f7cb9
* android/ypr0: Merge lc-*.c to generic lc-unix.c.Thomas Martitz2012-01-21
| | | | Change-Id: Ica76dec903486c32fda8355acdc58f0315c4d384
* android/ypr0: Merge fs-*.c to generic filesystem-unix.c.Thomas Martitz2012-01-21
| | | | Change-Id: I52e2c29346baf0d282243880477cd149311ce3d1
* android/ypr0: Merge kernel-*.c to generic kernel-unix.c.Thomas Martitz2012-01-21
| | | | Change-Id: Ife3fceb53829ef4e13bae73d8d2f10d7e56d484d
* ypr0: Fix build failure.Thomas Martitz2012-01-21
| | | | Change-Id: I327d58fde66fc7fa65f91e0ca724c3fd8066ccf6
* Hosted: Merge debugf() implementations. Cleanup debug.h.Thomas Martitz2012-01-21
| | | | | | Fixes debug build for ypr0. Change-Id: I9c0eff651dcf268a3fafed1a71fcc47f3e323d36
* hosted/pcm/alsa: Use alternate signal stack for the async callback.Thomas Martitz2012-01-21
| | | | | | | | | | | | | | Signals are by default executed on the user stack, i.e. the stack of the currently active thread. This has two problems: 1) The stack size of the current stack is likely insufficient (unless using sigaltstack threads) because our stack sizes are normally below MINSIGSTKSIZE which is needed to deliver a signal. 2) Some of our asm code does nasty tricks with the stack pointer. When a signal comes in during this bad things can happen, e.g. random memory being overwritten or simply a crash. Using a well defined stack fixes this. This is comparable with the separate irq stack on native targets.
* ascodec-target.h: removeRafaël Carré2012-01-08
| | | | | | | | | | | move prototypes to ascodec.h move code to ascodec*.c YPR0: use adc-as3514.c instead of duplicating it TODO: merge as3514.h and ascodec.h ? git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31626 a1c6a512-1295-4272-9138-f99709370657
* remove cargo-cult empty i2c-target.hRafaël Carré2012-01-08
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31624 a1c6a512-1295-4272-9138-f99709370657
* adc-target.h: cleanupRafaël Carré2012-01-08
| | | | | | | | move adc_close() prototype to adc.h don't duplicate prototypes of adc.h remove license header and guards for a single include of another file or for empty content git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31623 a1c6a512-1295-4272-9138-f99709370657
* button-target.h : move prototypes to button.hRafaël Carré2012-01-08
| | | | | | no need to define BUTTON_REMOTE anymore git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31620 a1c6a512-1295-4272-9138-f99709370657
* Only use lcd-remote.h #ifdef HAVE_REMOTE_LCDRafaël Carré2012-01-07
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31613 a1c6a512-1295-4272-9138-f99709370657
* *frequency_linux(): factorizeRafaël Carré2012-01-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31555 a1c6a512-1295-4272-9138-f99709370657
* Fix oops. Too late now.Thomas Martitz2012-01-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31554 a1c6a512-1295-4272-9138-f99709370657
* Fix intermittent warning on sdl app build.Thomas Martitz2012-01-04
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31553 a1c6a512-1295-4272-9138-f99709370657
* android: move pcm_shutdown() to audiohw_close() now that it's properly ↵Thomas Martitz2012-01-04
| | | | | | called from powermgmt. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31551 a1c6a512-1295-4272-9138-f99709370657
* Rework powermgmt to enable code re-use on appliation and sims.Thomas Martitz2012-01-03
| | | | | | | | | | | | | | | | | | | | | * Introduce CONFIG_BATTERY_MEASURE define, to allow targets (application) to break powermgmt.c's assumption about the ability to read battery voltage. There's now additionally percentage (android) and remaining time measure (maemo). No measure at all also works (sdl app). If voltage can't be measured, then battery_level() is king and it'll be used for power_history and runtime estimation. * Implement target's API in the simulator, i.e. _battery_voltage(), so it doesn't need to implement it's own powermgmt.c and other stubs. Now the sim behaves much more like a native target, although it still changes the simulated battery voltage quickly, * Other changes include include renaming battery_adc_voltage() to _battery_voltage(), for consistency with the new target functions and making some of the apps code aware that voltage and runtime estimation is not always available. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31548 a1c6a512-1295-4272-9138-f99709370657
* ypr0: Enable headphone detectionThomas Martitz2012-01-03
| | | | | | | Author: Lorenzo Miori Flyspray: FS#12348 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31544 a1c6a512-1295-4272-9138-f99709370657
* usb-target.h: removeRafaël Carré2011-12-31
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31498 a1c6a512-1295-4272-9138-f99709370657
* move usb_pin_init() declaration to PP's system-target.hRafaël Carré2011-12-31
| | | | | | | remove duplicate usb_detect() declaration Remove all content from empty usb-target.h files git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31488 a1c6a512-1295-4272-9138-f99709370657
* ypr0: Proper battery curve measured with battery_bench.Thomas Martitz2011-12-31
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31472 a1c6a512-1295-4272-9138-f99709370657
* ypr0: Enable battery voltage read-out, charging monitoring and charger ↵Thomas Martitz2011-12-31
| | | | | | | | | | | | | | detection. Voltage can be read using as3543 adc (i.e. ascodec api, on this target implemented via ioctl()). TODO: Look into possibly controlling charging more by re-using powermgmt-ascodec.c. However, charging seems to be controlled by the kernel, so may not be needed. Charger state can be read using /dev/minivet. It allows to differentiate between wall charger and usb charging, but that's not implemented (is it even worthwhile?) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31470 a1c6a512-1295-4272-9138-f99709370657
* ypr0: Fix ascodec_readbytes().Thomas Martitz2011-12-25
| | | | git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31429 a1c6a512-1295-4272-9138-f99709370657
* ypr0: Cleanup and simplify ascodec functions. Fix audiohw_{pre,post}init() ↵Thomas Martitz2011-12-24
| | | | | | not being called. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31423 a1c6a512-1295-4272-9138-f99709370657
* Initial commit of the Samsung YP-R0 port.Thomas Martitz2011-12-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This port is a hybrid native/RaaA port. It runs on a embedded linux system, but is the only application. It therefore can implement lots of stuff that native targets also implement, while leveraging the underlying linux kernel. The port is quite advanced. User interface, audio playback, plugins work mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page). Included in utils/ypr0tools are scripts and programs required to generate a patched firmware. The patched firmware has the rootfs modified to load Rockbox. It includes a early/safe USB mode. This port needs a new toolchain, one that includes glibc headers and libraries. rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may also work. Most of the initial effort is done by Lorenzo Miori and others (on ABI), including reverse engineering and patching of the original firmware, initial drivers, and more. Big thanks to you. Flyspray: FS#12348 Author: Lorenzo Miori, myself Merry christmas to ypr0 owners! :) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
* Hosted/linux: Add process/cpu info screen to the debug menu.Thomas Martitz2011-12-19
| | | | | | | | | | | The new menu is very helpful on RaaA, but also shown in the sim. It shows the process cpu usage, process' time stats (user,sys,real) and the cpu frequency stats. It uses a thread to sample the data, however the thread is not created until the menu is visited for the first time. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31364 a1c6a512-1295-4272-9138-f99709370657
* Commit to certain names for cache coherency APIs and discard the aliases.Michael Sevakis2011-12-17
| | | | | | | Wouldn't surprise me a bit to get some non-green. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31339 a1c6a512-1295-4272-9138-f99709370657
* thread.c includes gcc_extensions.h and thread-XXX.c files are includes ↵Michael Sevakis2011-12-10
| | | | | | inside thread.c therefore do not require their own. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31206 a1c6a512-1295-4272-9138-f99709370657
* Nokia N900: Implement pcm_play_lock() / pcm_play_unlock()Thomas Jarosch2011-12-09
| | | | | | | | | Shamelessly stolen from pcm-android.c Thanks to Michael Sevakis for pointing out that pcm_play_lock() is actually needed. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31190 a1c6a512-1295-4272-9138-f99709370657