Thomas Martitz
a035261089
Move optimized memcpy and friends and strlen to firmware/asm,
...
using the new automatic-asm-picking infrastructure.
2012-01-22 18:46:45 +01:00
Thomas Martitz
991ae1e395
Create fimrware/asm directory for assembly optimized stuff.
...
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
2012-01-22 18:46:44 +01:00
Rafaël Carré
7c547be19d
fix previous commit
...
implement button_init_device for ondio
include button.h to get prototypes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31621 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 00:18:43 +00:00
Rafaël Carré
95cf63b294
button-target.h : move prototypes to button.h
...
no need to define BUTTON_REMOTE anymore
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31620 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 00:07:19 +00:00
Rafaël Carré
19fba5fb30
powermgmt-target.h: move prototypes to powermgmt.h
...
Implement empty stubs if needed instead of empty static inline
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31617 a1c6a512-1295-4272-9138-f99709370657
2012-01-07 22:32:52 +00:00
Rafaël Carré
a22e161e0f
sh/debug-target.h: move in .c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31562 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 06:33:50 +00:00
Rafaël Carré
393f427a11
dbg_hw_info(): remove duplicate prototypes
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31560 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 05:29:30 +00:00
Rafaël Carré
b959497670
dbg_ports(): remove duplicate prototype
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31558 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 05:21:52 +00:00
Thomas Martitz
c1bd9b0361
Rework powermgmt to enable code re-use on appliation and sims.
...
* 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
2012-01-03 23:44:38 +00:00
Rafaël Carré
568c441fd8
usb-target.h: remove
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31498 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 18:44:55 +00:00
Rafaël Carré
bce42fdc31
usb_init_device(): move prototype to usb.h
...
Get rid of some usb-target.h files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31487 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 18:43:41 +00:00
Boris Gjenero
6c97145e7d
Add missing includes found using -Wmissing-declarations.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31396 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 18:02:50 +00:00
Boris Gjenero
14c2e677fd
Make more local functions static.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31395 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 17:36:18 +00:00
Michael Sevakis
6a67707b5e
Commit to certain names for cache coherency APIs and discard the aliases.
...
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
2011-12-17 07:27:24 +00:00
Michael Sevakis
09722dd28d
thread.c includes gcc_extensions.h and thread-XXX.c files are includes inside thread.c therefore do not require their own.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31206 a1c6a512-1295-4272-9138-f99709370657
2011-12-10 20:47:59 +00:00
Boris Gjenero
59e71ee80c
Introduce USED_ATTR wrapper for __attribute__((used)).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31188 a1c6a512-1295-4272-9138-f99709370657
2011-12-09 15:33:59 +00:00
Boris Gjenero
e4dbcc414b
FS#12418 - Merge prototypes from ata-target.h files into new file ata-driver.h. After this change:
...
- ata.h is for users of ata.c
- ata-driver.h is for functions implemented by target-specific code and used by ata.c
- ata-target.h is for target-specific defines
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31182 a1c6a512-1295-4272-9138-f99709370657
2011-12-08 21:23:53 +00:00
Boris Gjenero
9c07d068da
FS#12378 : Removal of Archos HWCODEC unused code and data. Several large hardware-specific functions are kept for reference or future use.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31043 a1c6a512-1295-4272-9138-f99709370657
2011-11-22 19:59:31 +00:00
Torne Wuff
569285794b
Bulk convert all DOS line endings to UNIX.
...
For the git migration we want a nice clean repository with UNIX line
endings. git does not use svn:eol-style, we just need the file contents to be
sane.
Sorry everybody. I know this messes up blame.
Scumbag *NIX developer says migrating to git will make line ending issues go
away; commits giant change to svn which changes line endings anyway. :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30924 a1c6a512-1295-4272-9138-f99709370657
2011-11-06 22:44:25 +00:00
Marcin Bukat
dceceef052
Move dbg_hw_info() into target tree. FS#11735 by me
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29964 a1c6a512-1295-4272-9138-f99709370657
2011-06-05 10:26:06 +00:00
Bertrik Sikken
55a7a31ce3
Split off target-specific parts from firmware/drivers/serial.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29768 a1c6a512-1295-4272-9138-f99709370657
2011-04-23 08:23:07 +00:00
Thomas Jarosch
a25153be6b
Remove redundant function prototype
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29505 a1c6a512-1295-4272-9138-f99709370657
2011-03-02 20:21:17 +00:00
Thomas Jarosch
b00c8caf2a
Fix red on Archos Recorder
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29504 a1c6a512-1295-4272-9138-f99709370657
2011-03-02 20:15:51 +00:00
Thomas Jarosch
281efd7180
Fix red
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29502 a1c6a512-1295-4272-9138-f99709370657
2011-03-02 19:43:12 +00:00
Marcin Bukat
735ea2fd1f
Move drivers/i2c.c into target tree as it contains SH specific bits. Leave associated header file intact as it is used in many places for historical reasons.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29480 a1c6a512-1295-4272-9138-f99709370657
2011-03-01 09:13:48 +00:00
Marcin Bukat
fec3193f8a
Move ata_mmc.c into target tree as it is SH (ondio) specific. Associated header file is left intact as it seems to be used in many places for historical reasons
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29478 a1c6a512-1295-4272-9138-f99709370657
2011-03-01 07:53:46 +00:00
Michael Sevakis
9f0bad0efe
Byteswap routines don't really need 'asm volatile', just 'asm' since it should be safe to move them for optimizing. Clean up the line endings for ARM.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29394 a1c6a512-1295-4272-9138-f99709370657
2011-02-25 00:46:39 +00:00
Michael Sevakis
18770dac2e
Use __builtin_constant_p() to select the best byteswapping method: constant or target optimized. Same macro can then be used for constant values and inits as well as non-constant.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29171 a1c6a512-1295-4272-9138-f99709370657
2011-01-30 00:58:45 +00:00
Michael Sparmann
9339be1279
Rework ATA driver to get rid of lots of target-specific constants and allow for non-memory-mapped task file registers.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28950 a1c6a512-1295-4272-9138-f99709370657
2011-01-02 22:51:47 +00:00
Marcin Bukat
b8a7f5137b
move dbg_ports() from apps/menu_debug.c to target tree. FS#11712 by me.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28522 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 14:24:25 +00:00
Marcin Bukat
56c4e9fa60
Separate mas35xx lowlevel stuff. Move SH specific bits to target tree. FS#11189 by me.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28425 a1c6a512-1295-4272-9138-f99709370657
2010-10-31 21:09:34 +00:00
Michael Sevakis
555ad6710f
Threading: Split processor support code into respective target files. C files from /target/xxx are included into thread.c because of essential inlining and files are code, not declarations. Copyrights in each new file go to whoever implemented the first functional support.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26479 a1c6a512-1295-4272-9138-f99709370657
2010-06-02 12:45:36 +00:00
Maurus Cuelenaere
64f5033574
Do s/SWAP_WORDS/ATA_SWAP_WORDS/ to prevent namespace clashes.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26111 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 15:15:38 +00:00
Thomas Martitz
55e4fe73cc
Fix the remaining reds.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25858 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 22:33:57 +00:00
Thomas Martitz
0a1d7c28b7
Make open() posix compliant api-wise. A few calls (those with O_CREAT) need the additional optional mode parameter so add it. Impact for the core is almost zero, as open() is a wrapper macro for the real open function which doesn't take the variable parameter.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25844 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 17:35:13 +00:00
Jens Arnold
f54ce55bce
Fix an almost 3 years old bug introduced when moving the archos power handling to target tree: ide_powered() must always use the full implementation, even if HAVE_ATA_POWER_OFF isn't defined. This led to an ATA panic in the Player's charging screen for SVN builds (only applies to flashed Players).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25593 a1c6a512-1295-4272-9138-f99709370657
2010-04-11 16:23:27 +00:00
Torne Wuff
62321ed0bd
Make ATA code not bother to retry requests that return IDNF (specified sector not valid).
...
There's no point retrying these requests for five seconds, the sector number isn't going to get any more valid. It interferes with being able to detect broken drives like the 5.5G 80GB iPod's.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25525 a1c6a512-1295-4272-9138-f99709370657
2010-04-07 20:01:21 +00:00
Andrew Mahone
81f72ddef6
Set DRMODE_SOLID, uniform colors, and sysfont before clearing LCD to display panic or exception messages - see FS#10665.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23623 a1c6a512-1295-4272-9138-f99709370657
2009-11-14 11:27:41 +00:00
Nils Wallménius
f34a841b0c
Revise r23225 a bit, removing the debug_printf function and implementing more generic lcd_(remote)_putsf function(s) instead and use those in more places
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23233 a1c6a512-1295-4272-9138-f99709370657
2009-10-17 18:02:48 +00:00
Rafaël Carré
ffefe0c08b
Put TIMER_FREQ definition in CPU-specific config, and remove timer-target.h
...
Note : SH has TIMER_FREQ defined to CPU_FREQ, so any code wanting it must include #config.h before #cpu.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21560 a1c6a512-1295-4272-9138-f99709370657
2009-06-29 14:30:12 +00:00
Rafaël Carré
c5dedd7d76
Remove the TIMER_* macros and declare target-specific functions in timer.h
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21559 a1c6a512-1295-4272-9138-f99709370657
2009-06-29 14:29:57 +00:00
Rafaël Carré
89ccd5c145
Remove int_prio argument from timer_register, and move the only use for it into alpine_cdc plugin, since this plugin is only built on SH7034
...
Also remove it from TIMER_START()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21558 a1c6a512-1295-4272-9138-f99709370657
2009-06-29 14:29:46 +00:00
Rafaël Carré
b3ed33d04a
Move SH7034 timer code in the target tree
...
Add an argument int_prio to TIMER_START() macro because SH7034 needs it
Leaves a target specific code in timer_register (could be given to target code through timer_set and __timer_set() )
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21556 a1c6a512-1295-4272-9138-f99709370657
2009-06-29 14:29:14 +00:00
Andrew Mahone
c76d940c06
Replace 1UL in BIT_N with 1U to avoid turning it into a 64-bit operation on 64-bit sim targets.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21197 a1c6a512-1295-4272-9138-f99709370657
2009-06-06 00:58:57 +00:00
Andrew Mahone
de7c5711c5
Add a system-wide BIT_N macro, implemented via an LUT on SH, and use it in the TAGCACHE_IS_* macros in place of per-set LUTs, removing duplication of data between those LUTs and the mask values used on other targets.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21195 a1c6a512-1295-4272-9138-f99709370657
2009-06-06 00:00:58 +00:00
Bertrik Sikken
dccdce6c3c
Remove unnecessary #include "adc.h"
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20791 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 22:24:59 +00:00
Boris Gjenero
0e74f75deb
FS#9635 - On V1, V2 and FM Archos recorders, ensure instant backlight switch-off. (Formerly, backlight switch-off was unpredicrable on some of these devices. The backlight would either turn off instantly or brighten instantly and then fade.)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20707 a1c6a512-1295-4272-9138-f99709370657
2009-04-14 19:23:39 +00:00
Nicolas Pennequin
396aeafa6c
Correct Björn's name in various file headers.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20491 a1c6a512-1295-4272-9138-f99709370657
2009-03-23 17:08:46 +00:00
Michael Sevakis
ec67912b63
Reclaim .iram areas in DRAM by overlapping their load addresses with the uninitialized data sections. I did what I could test out-- not any flash image linker scripts or other target processors. Move any .iram copies in crt0.S's to be the first operation even if not _strictly_ necessary to be emphatic (aka. 'beware').
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20061 a1c6a512-1295-4272-9138-f99709370657
2009-02-20 02:33:40 +00:00
Michael Sevakis
21f0c9a282
Make basic cache functions into calls, and get rid of CACHE_FUNCTION_WRAPPERS and CACHE_FUNCTIONS_AS_CALL macros. Rename flush/invalidate_icache to cpucache_flush/invalidate. They're inlined only if an implementation isn't provided by defining HAVE_CPUCACHE_FLUSH/INVALIDATE.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19971 a1c6a512-1295-4272-9138-f99709370657
2009-02-11 12:55:51 +00:00