Commit graph

30530 commits

Author SHA1 Message Date
Amaury Pouly
d4674ed3b7 arm: implement safe reads by intercepting the data abort handler.
Implement functions to read from a memory location and indicate
failure in case this is not possible. Since we do not have a MMU,
intercept the data abort handler and simply return when the abort
comes from the safe read routines.

Change-Id: I08f2e59898dcac893319a8150d4cf626f3adabbd
Reviewed-on: http://gerrit.rockbox.org/207
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2012-04-06 13:48:09 +02:00
Amaury Pouly
f33330c0ff arm: factor all exception handlers out of the crt0.S files
Remove the implementations of all exceptions handlers from the
various crt0.S files and have a single implementation in system-arm.h
The new implementation is weak so that it can be overwritten by some
specific code (like the unwinder)

Change-Id: Ib3e041ed6037376bbe0e79286057e1051640dd90
Reviewed-on: http://gerrit.rockbox.org/205
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2012-04-06 13:46:32 +02:00
Thomas Martitz
bb0e4cc543 touchscreen: Fix kinetic scrolling when the statusbar is off.
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
2012-04-05 15:01:59 +02:00
Michael Sevakis
f458888a4c Build libspc with -03 on m68k (Coldfire).
Change-Id: I00d918735bde2a03f17c3bb68400bf619a8429d4
2012-04-05 07:26:08 -04:00
Thomas Martitz
4b56ee048a Refactor and unify objcopy calls in the build system. Also now properly handles DEBUG builds on hosted targets to keep debug symbols if necessary.
Change-Id: I884031b79c6d49479e4d95752f35ced68872dd5d
2012-04-04 21:48:19 +02:00
Amaury Pouly
a54072e299 arm: fix get_sp (missing return)
__get_sp is missing a return! I don't know how it ever worked.
Use "bx lr" since it works in all cases (armp and thumb).

Change-Id: I26011db333a8a5f96276be83e18da7507c501c38
Reviewed-on: http://gerrit.rockbox.org/206
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2012-04-04 09:21:02 +02:00
Michael Giacomelli
bc41926b8f More completely flush WMA decoder state on seek to prevent artifact.
Each MDCT depends on the previous frame for reconstruction.  Previosly these were not zeroed out when seeking, resulting in a few milliseconds of the previous frame playing with the current one.  Fix that.

Additionally, since the codec treats seeks to the start of a track as a "reset", flush the entire codec state in this event to ensure that everything is reset.

Change-Id: If593621a2922b0bbfa34f926f9bff31bee6b8c6a
2012-04-03 20:15:16 -04:00
Dominik Riebeling
905f920dc9 Shorten voicefont progress output a bit.
Change-Id: I07a85af75acd9b73aabff80feb5226abce83b313
2012-04-03 23:28:34 +02:00
Frank Gevaerts
9ca9b657e4 Revert 1207c7b and fix the actual warnings.
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
2012-04-03 20:59:11 +02:00
Frank Gevaerts
1207c7b641 Disable _FORTIFY_SOURCE for the simulator
Most of our code was written to be efficient. While adding return value
checks everywhere would be a good idea in theory, it would increase binsize
a lot, and #ifdeffing those checks for sim-only is not doable. Disabling
_FORTIFY_SOURCE makes the warning disappear for innocent commits that
can't be blamed for them.

Change-Id: I8171869a140580cbf89f39776856eb3f65641366
2012-04-03 20:15:32 +02:00
Frank Gevaerts
416da2260c Call tuner_power(true) from the correct place for lv24020lp.
This fixes radio not working on c200 and e200 (and possibly others),
as reported in FS#12631.

Change-Id: Idd66fa3b74916cc6f2de45ae7dd89b3bfd70f070
2012-04-02 22:14:07 +02:00
Dominik Riebeling
eb6c6581bd Remove espeak from TTS list on Windows.
On Windows espeak installs itself as command line program as well as as SAPI
voice. Using the SAPI voice is simpler, so there is no need to keep the command
line option for it.

Change-Id: I44fbd806572d5c14b976aa5d58a91935f04c6338
2012-04-02 20:09:32 +02:00
Alex Parker
e46382a6c7 Bump builds.pm so that Rockbox Utility notices 3.11
Change-Id: I116f08cae0c731eab60225cf404fbcb1d9f6ece9
2012-04-01 11:14:52 +01:00
Frank Gevaerts
560ee29453 Drop the nano2g back to unstable for now
Change-Id: Id6d346d0bdc3c09e5c112ab57ee3c71c18a643a8
2012-03-31 14:27:48 +02:00
Cástor Muñoz
a85780bacc Classic/6G: CPU frequency/voltage scaling
This patch implements HAVE_ADJUSTABLE_CPU_FREQ, it modifies the
following parameters when CPU is unboosted:

- s5l8702 voltage is decreased: 1.200V -> 1.050V
- CPU frequency is divided by 4: 216MHz -> 54MHz
- AHB frequency is divided by 2: 108MHz -> 54MHz

Change-Id: I2285b83efb7e1567864ac288f2d4ba55f058f7c5
2012-03-31 01:18:15 +02:00
Cástor Muñoz
a75b5b83d4 Classic/6G: click wheel controller powersave
Mask click wheel controller clock gate when the hold switch is in
the locked position

Change-Id: I9de33db189afdb76cc5057e4c0e7efc587cf762b
2012-03-31 01:18:15 +02:00
Rafaël Carré
41b46231cb usb-nano2g-6g: missing brace in non-default preprocessor path
Change-Id: Iacf6719e58b927bb619d469048e16797cae5cecd
2012-03-30 18:58:38 -04:00
Thomas Martitz
b18d76a1c4 configure fixes.
1) use " instead of ' to expand variable
2) fix x86 arch autodetection (android toolchain doesnt use _X86_)

Change-Id: Ibf73b6ccfdb1baee3bb2f77d8f298119ecbfe16c
2012-03-30 22:52:09 +02:00
Thomas Martitz
4e8893b874 android: Fix crash on start up.
Change-Id: I0343de9347d100182c2ffd28058ac61f15097cc3
2012-03-30 11:23:07 +02:00
Thomas Martitz
3414c952b9 configure: prevent $LDOPTS from stacking up on make reconf.
Change-Id: I9af88c5201d60ac8beb9e4a24b9933802ae2a96c
2012-03-30 11:23:07 +02:00
Thomas Martitz
72988f3c0c android: implement system_exception_wait and system_reboot, so that the panicf() screen can be exited.
Change-Id: I1fb095a7ae01a99c84722eeec199b1007b0f6088
2012-03-30 11:23:07 +02:00
Thomas Martitz
148a80e1d1 panicf(): fix wrong font and colors being displayed.
Change-Id: I57680d5857b577d731b5703e209ccc6e9511ef17
2012-03-30 11:23:07 +02:00
Nick Peskett
10d8717e94 Split sleep timer activation and default duration setting.
Where before there was a single sleep timer menu option which handled
initiating/ cancelling a sleep timer as well as setting the default duration,
now there is one menu option to either start or cancel a sleep timer and
another to set the default duration that will be used for future sleep timers.

Change-Id: Ibea3711ec6406845ff5d0c0568fe5d1739eb8deb
Reviewed-on: http://gerrit.rockbox.org/201
Reviewed-by: Nick Peskett <rockbox@peskett.co.uk>
2012-03-29 09:01:33 +02:00
Michael Giacomelli
0e4a29811b Mark the Sansa c200v2 series of players as stable
These were originally held back as unstable due to bugs in rockbox's
audio buffering that only occuried on very low memory targets.  The
c200v2 is the lowest memory target we have.  Various improvements
to our buffering system seem to have fully corrected these problems.

Change-Id: I4404fe9b85c037904aea4b720e5a1fcb266f3d18
2012-03-28 18:09:22 -04:00
Thomas Martitz
a8b3d506db Enable tlsf in warble build to fix it.
Change-Id: I5b43a995264b4e699fb62ded72139a7e0ee7f46d
2012-03-29 00:01:44 +02:00
Thomas Martitz
f5a3dbc6d9 Fix ARM version detection (need to pass mcpu/march to cpp).
Change-Id: Ic3283abca56a2bf0dd0f786b52f0f28a21442e13
2012-03-28 23:32:57 +02:00
Thomas Martitz
3a3f4d6476 Override manually selected arch/arch_version in simcc().
Change-Id: Iad118d85120f7f442ced19dabfd3e5d7760c1038
2012-03-28 23:24:02 +02:00
Thomas Martitz
a54c687300 Apparently make doesn't like inline comments
Change-Id: If604af9713cf95dafbeb1a601219ca1b3a8964fa
2012-03-28 23:14:39 +02:00
Thomas Martitz
7b1a369cf7 build system: completely autodetect target cpu architecture.
The existing ARCH Makefile variable is exported to the C code as well.
Additionally the version (arm-only for now) is detected as well. This
allows to for complete autodetection, i.e. that optimized ASM is picked up
if determined by preprocessor (CPU_ARM, etc).

Building a sim/raaa on a arm host will now automatically generate a arm
optmized build like we have for native targets.

Change-Id: I0b35393f8fb3ebd20beaa9e7371fa57bf3782107
2012-03-28 23:02:39 +02:00
Thomas Martitz
c56950ea3a tlsf: move to /lib (it's also used by plugins).
Change-Id: I5e37b28c1ce4608d60b036343f280af3311ad490
2012-03-28 23:02:39 +02:00
Dominik Riebeling
9f2ee2f21a Fix HTML manual download link (FS#12620).
Change-Id: I1bccf62b7770ad7a73ffc1578cbdf5034951c216
2012-03-28 20:19:00 +02:00
Dominik Riebeling
c1fcd698a2 Prefix compareversion test files.
Change-Id: Ic67b4a1519456cbb2d85078a80ac605eb65f8020
2012-03-28 20:19:00 +02:00
Marek Salaba
da30008fc7 FS#12627 - March update of Czech language
Change-Id: I855f0f3d3a9a126beee03aa8071ff8a9a5fa16ed
2012-03-28 17:06:21 +02:00
Jonathan Gordon
6f62226294 quickscreen: optionally display the shortcuts menu instead of the QS
Adds an option under settings > general settings > system to allow
the user to have the shortcuts menu displayed instead of the
quick screen. (option is "shortcuts instead of quickscreen" in the .cfg)

Change-Id: Id679b461c40ac617629422736d1509384364084d
Reviewed-on: http://gerrit.rockbox.org/199
Reviewed-by: Marek Salaba <marek.salaba@gmail.com>
Reviewed-by: Jonathan Gordon <rockbox@jdgordon.info>
2012-03-28 10:56:12 +02:00
Cástor Muñoz
7ec426e497 Classic/6G: hold switch detection using GPIO
Configures GPIO ports to detect holdswitch status instead of
polling the PMU via I2C, this fixes some random crashes

Change-Id: I407c9ca4c2c9203842f9e774b1c8d0455d59048c
Reviewed-on: http://gerrit.rockbox.org/194
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2012-03-28 00:51:22 +02:00
Jonathan Gordon
1d5a505019 shortcuts: Don't enter shortcuts menu if there are none
Change-Id: I83bef377a428829d99343acdefc7a9b826c78dd5
2012-03-28 00:45:42 +11:00
Jonathan Gordon
b2202a3d7c skin_engine: Allow negative numbers for the start offset in %ss
i.e %ss(-1, -, %ia) will get the last letter in the %ia tag

Change-Id: I6b2764d30c072b549e7424fc6e847ec48850b46a
2012-03-27 23:42:00 +11:00
Frank Gevaerts
215ac639ff Fix makefile conditions
Change-Id: I7e36cec5e3dd86b3220a8a14561596aaa81fdefb
2012-03-27 01:22:51 +02:00
Thomas Martitz
83cb2e5dae Fix warble and clean up/refactor Makefile.
Change-Id: I8754ad8724e22147b98a156fecea599bdda72292
2012-03-27 00:16:09 +02:00
Thomas Martitz
d5f4391187 Partly undo 54e00c1: put include back to root.make and use SECONDEXPANSION.
Change-Id: If38507ed896f577ea30e2ddae3bac3f4b98cee59
2012-03-26 23:57:20 +02:00
Thomas Martitz
045c69c51d Fix bootloaders.
Change-Id: I7e1666d604c554509375a4ae858ff3cd7be96b3a
2012-03-26 23:55:02 +02:00
Thomas Martitz
d26bbb9cfb (Hopefully) fix overlay plugins.
Change-Id: I210db2109493d296dcc644d643e8814862101652
2012-03-26 23:41:38 +02:00
Thomas Martitz
54e00c18a3 Fix sim/checkwps build failure.
Change-Id: Iefd533fe26495a29f8e79113b38748b504d94213
2012-03-26 23:16:48 +02:00
Thomas Martitz
f269aa0060 build system: unify/simplify library handling a bit.
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
2012-03-26 22:27:40 +02:00
Jonathan Gordon
9445d4625a skin_engine: fix scrolling lines with dynamic content
Change-Id: If85220c8b59123814e0e6b1a3b8e00c981271021
2012-03-26 22:24:43 +11:00
Thomas Martitz
76664d22df android: only output unzip log message when performing the unzip.
Change-Id: I16dda180d51832569097d7dd1866ba7f56cdf876
2012-03-25 23:26:58 +02:00
Thomas Martitz
c8317eb596 android: clean-up and some refactoring in java code.
Change-Id: I78cadb0b71bcb65a55006bf52cfe3e6cda891a38
2012-03-25 22:28:07 +02:00
Thomas Martitz
82337dda6a buflib/shrink_callback: Resume playback only if it was playing (not paused).
Change-Id: Ie4884ec4554890f8bdb03f48bcf215ece00a5560
2012-03-25 22:28:07 +02:00
Rafaël Carré
ced3b172a1 ignore ipodpatcher binary
Change-Id: I5156d220dd23b9a6dd5ae4c492c49e932bbc2ef8
2012-03-25 11:45:31 -04:00
Marcin Bukat
5513c6db56 rk27xx: implement system_init()
For now it contains explicit SDRAM setup, cutting clock for unused
modules and turning off unused PLLs. This improves slightly mem
throughput as well as saves quite a bit of power.

Change-Id: I19a2827ac90a6868856c676fbe1e051c42f0d608
2012-03-22 23:48:31 +01:00