Robert Keevil
a0d630f3de
Add information gleaned from disassembling the main firmware image. Detect lcd type in use. Still no actual output
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21929 a1c6a512-1295-4272-9138-f99709370657
2009-07-17 20:40:40 +00:00
Robert Keevil
eea149bd13
FS#10436 - add the Sansa View to the build system. The bootloader builds but doesn't do anything useful yet.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21848 a1c6a512-1295-4272-9138-f99709370657
2009-07-13 21:09:39 +00:00
Jens Arnold
47d4c4739b
ARM asm LCD and ATA driver functions: Don't save r12 as it is a scratch reg. Saves a bit of stack and execution time.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21795 a1c6a512-1295-4272-9138-f99709370657
2009-07-11 23:43:44 +00:00
Rafaël Carré
3520d8e90e
Sansa c200v2 : lcd & backlight support, using the c200v1 lcd driver
...
The LCD driver is unified and lcd_send_command now takes 2 arguments : the command and its argument.
If there is no argument, it's set to 0 and a NOP command is issued
If there is more than one argument (set X/Y address), the 2nd argument is sent as a 2nd command, and a NOP command is issued after it.
Benefit : c200v2 transfers the command and the argument in one 16 bits transfer
Performance should not be affected since commands without argument are only used in lcd_init() and lcd_enable()
lcd_send_data() now transfers whole lines (or columns) instead of single pixels
yuv is disabled for c200v2 for now
Some buttons can be read, including left button (bit 6 of DBOP_DIN), but for some reason they have no effect in rockbox: to be investigated
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21321 a1c6a512-1295-4272-9138-f99709370657
2009-06-17 19:55:27 +00:00
Thomas Martitz
6abae1f124
Remove the calls to backlight_lcd_sleep_countdown from target specific code and move it into backlight.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20793 a1c6a512-1295-4272-9138-f99709370657
2009-04-26 01:23:39 +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
Thomas Martitz
d5df2816e6
Remove that orphaned and wrong #if
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20576 a1c6a512-1295-4272-9138-f99709370657
2009-03-30 13:08:59 +00:00
Thomas Martitz
bcbf2dd321
Fix yellow.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20575 a1c6a512-1295-4272-9138-f99709370657
2009-03-30 12:45:56 +00:00
Thomas Martitz
ddc554f62b
Correct some preprocessor checks.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20573 a1c6a512-1295-4272-9138-f99709370657
2009-03-29 23:50:56 +00:00
Thomas Martitz
9771c9c771
One more try: Fix remaining reds and yellows
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20335 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 04:01:11 +00:00
Thomas Martitz
4ed387d603
Fix reds and yellows (hopefully). Some targets apparently didn't properly #ifdef lcd_enable and lcd_sleep code out, so that it got partly active in the bootloader; rename the ui simulator stub fixes most reds; for the clip: move the hook code into lcd-1bit-vert.c which should fix the bootloader red.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20333 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 03:36:36 +00:00
Thomas Martitz
68f9ef2d57
The c200 didn't got in for some reason.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20332 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 02:49:26 +00:00
Thomas Martitz
b7739fbf1c
Rework lcd_enabled and lcd_set/call_enable hook
...
a) lcd_enabled() is now lcd_active(), and is available for HAVE_LCD_SLEEP only targets (e.g. ipod video) too. It was depandent on HAVE_LCD_ENALE only before
b) rename the hook accordingly, and implement the hook for other other targets too (e.g. the clip [the only mono target with lcd_enable/lcd_sleep yet, so the code is still in the lcd driver], ipod, fuze, c200)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20331 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 02:43:47 +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
Thomas Martitz
12a0ed3b8d
Commit FS#9724, which reworks the preprocessor defines related to backlight fading to a CONFIG_BACKLIGHT_FADING style. The apps/ code will only see which setting is supposed to be used, specific backlight fading handling is kept in firmware, slightly reword the manual text about software fading too with regards to the Gigabeat S
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19860 a1c6a512-1295-4272-9138-f99709370657
2009-01-26 23:21:49 +00:00
Michael Giacomelli
26c06d165b
Commit battery discharge curve for c200v1 by BertrikSikken. The old one wasn't very realistic.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19795 a1c6a512-1295-4272-9138-f99709370657
2009-01-18 19:48:34 +00:00
Michael Sevakis
7d7969114d
c200v1/e200v1: Add battery charging. This should be usable on v2 players but those should be evaluated for current, endpoint voltage and whether or not accurate battery readings may always be obtained (which determines algorithm setup and behavior).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19748 a1c6a512-1295-4272-9138-f99709370657
2009-01-11 10:07:22 +00:00
Michael Sevakis
58eb784a5d
Straighten out some powermanagement stuff. Give target complete control over how power inputs are sensed. Clean SIMULATOR stuff out of target files. Get rid of USB charging option on targets that don't support it or don't implement it yet. Menu string remains to avoid language incompatibility but should be removed on next cleanup for targets not using it (notice in english.lang). global_settings becomes incompatible for some builds and so plugin API version is incremented.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19315 a1c6a512-1295-4272-9138-f99709370657
2008-12-03 19:54:25 +00:00
Steve Bavin
f684726580
Add software backlight fading for E100/H300/X5/D2, by Thomas Martitz and others - see FS#6800 for credits.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19221 a1c6a512-1295-4272-9138-f99709370657
2008-11-26 08:26:13 +00:00
Rafaël Carré
02dfae031a
Sansa AMS: use the AS3514 ADC driver
...
Move the ADC defines to as3514.h, and make adc-target.h only include as3514.h
Implement the missing API (ascodec_readbytes, ascodec_(un)lock)
Revert the changes to the PP-specific arm/ascodec-target.h in r19073,
use a AS3525 specific ascodec-target.h while moving the AS3514 specific
code in export/as3514.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19076 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 20:55:56 +00:00
Jens Arnold
4944a1c1e1
Common data must be included in .bss or it won't get zeroed in crt0. Fix the archos self-extractor as well to play safe.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19033 a1c6a512-1295-4272-9138-f99709370657
2008-11-07 00:15:53 +00:00
Dave Chapman
42f77d4eb0
Abstract the PortalPlayer AS3514 handling with an "ascodec" API - inspired by the wmcodec API used with the Wolfson codecs. The intention is to implement this API for the AS3525 and then share code with the Sansa V2 ports.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18940 a1c6a512-1295-4272-9138-f99709370657
2008-10-31 00:16:42 +00:00
Frank Gevaerts
4f81a54829
Add c200 erase tools. The resulting .bin files can be run from e200tool
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18854 a1c6a512-1295-4272-9138-f99709370657
2008-10-21 18:57:11 +00:00
Bertrik Sikken
f2213c8fc2
Apply FS#9195 (LCD disable for sansa c200), which puts the sansa c200 display controller in standby when the backlight is turned off and thereby improves runtime. I measured 40 minutes improvement over a runtime of about 14h.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18198 a1c6a512-1295-4272-9138-f99709370657
2008-08-05 20:17:17 +00:00
Bertrik Sikken
b0b72a84ff
Fix sansa c200 battery type comment.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18197 a1c6a512-1295-4272-9138-f99709370657
2008-08-05 19:45:57 +00:00
Rob Purchase
586437656c
Delete an empty file that does not appear to be included by any target.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18021 a1c6a512-1295-4272-9138-f99709370657
2008-07-12 23:11:14 +00:00
Bertrik Sikken
4e15aead43
Move declaration of button_int and clickwheel_int to the proper header file instead of declaring it locally in the .c file
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17874 a1c6a512-1295-4272-9138-f99709370657
2008-06-29 11:03:12 +00:00
Daniel Stenberg
2acc0ac542
Updated our source code header to explicitly mention that we are GPL v2 or
...
later. We still need to hunt down snippets used that are not. 1324 modified
files...
http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-28 18:10:04 +00:00
Michael Sevakis
191320cd0f
Rename CPU/COP_INT_CLR to CPU/COP_INT_DIS since it's really a 'write one to disable' register and hasn't anything to do with acknowledging interrupts-- that's handled at the module level.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17683 a1c6a512-1295-4272-9138-f99709370657
2008-06-03 05:08:24 +00:00
Michael Sevakis
adf2e4c9a0
Targets with HAVE_LCD_ENABLE: Provide a means to receive notifications when the lcd is enabled and the image is refreshed so overlayed drawing can also be refreshed. Chiefly mpegplayer needs this so it can redraw the YUV data after the backlight is turned on while paused or when using 'Set Start Time'.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17640 a1c6a512-1295-4272-9138-f99709370657
2008-05-28 10:17:16 +00:00
Michael Sevakis
009cebeab2
Straigten-out lcd sleeping on Gigabeat F/X. Add a service function to backlight.c to handle lcd sleep timer. Make HAVE_LCD_SLEEP useable without a setting and use HAVE_LCD_SLEEP_SETTING when a setting is available in addition to HCD_HAVE_SLEEP. If a setting isn't used, the target must define the timeout to be used in the config.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17505 a1c6a512-1295-4272-9138-f99709370657
2008-05-14 19:29:25 +00:00
Mark Arigo
7656748221
Preparing for the Philips SA9200 part 1. Move the Sansa ADC & ATA drivers up one level.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17487 a1c6a512-1295-4272-9138-f99709370657
2008-05-13 01:53:19 +00:00
Andree Buschmann
e8df7c4904
Undo r17470 because of regressions in some debug menus.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17472 a1c6a512-1295-4272-9138-f99709370657
2008-05-12 15:37:03 +00:00
Andree Buschmann
0b81405225
Fix for FS#5162. Being able to read scrollwheel action via button_read_device() for iPod's and e200.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17470 a1c6a512-1295-4272-9138-f99709370657
2008-05-12 08:27:53 +00:00
Barry Wardell
27f59f64c6
Make the H10 bootloader work again. Also fix the same problem that might be affecting other PP bootloaders.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17357 a1c6a512-1295-4272-9138-f99709370657
2008-05-04 14:42:53 +00:00
Bertrik Sikken
e15f8a21a9
Made source files #include the header file that they implement to make sure they are in sync. Made some local functions static.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17312 a1c6a512-1295-4272-9138-f99709370657
2008-05-03 08:35:14 +00:00
Barry Wardell
93b8a076ec
Make the linker complain if the bootloader isn't going to fit into IRAM on PP devices.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17298 a1c6a512-1295-4272-9138-f99709370657
2008-05-01 17:13:33 +00:00
Jens Arnold
2bbacf89fe
Make sure the linker considers crt0*.o before all files specified on the command line by using STARTUP() instead of INPUT() in the .lds. Using INPUT() makes the linker process crt0*.o after all files specified on the command line, making linking fail if there are librockbox.a members which are only referenced by crt0*.o. Remove the hackaround that was needed for building the gigabeat S bootloader before (aka UIE() problem).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17289 a1c6a512-1295-4272-9138-f99709370657
2008-04-29 06:19:32 +00:00
Frank Gevaerts
7a2d9ddb08
move some data around to place qh_array at the start of iram. This saves up to about 2k iram on PP
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17194 a1c6a512-1295-4272-9138-f99709370657
2008-04-20 18:43:47 +00:00
Michael Giacomelli
fc0eca35c2
Rough battery calibration for the c200 based on results posted by Tomasz Wasilczyk.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17152 a1c6a512-1295-4272-9138-f99709370657
2008-04-17 15:19:17 +00:00
Bertrik Sikken
a24f4b7a80
FS#8898 - Prefix AS3514 registers with AS3514_
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17130 a1c6a512-1295-4272-9138-f99709370657
2008-04-15 21:33:32 +00:00
Robert Kukla
feb3b588e3
explicitly align the ibss section by adjusting _iramend - fixes hang on m:robe (and potential problem on other arm targets)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17024 a1c6a512-1295-4272-9138-f99709370657
2008-04-07 18:24:23 +00:00
Michael Sevakis
1aaa89aa9b
Wow. Fix those irq #defines for ARM and use the right one in power-c200_e200.c. How'd that happen?
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17010 a1c6a512-1295-4272-9138-f99709370657
2008-04-07 01:13:44 +00:00
Michael Sevakis
2f9f34e0ea
Better sansa shutdown sequence in power_off.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17009 a1c6a512-1295-4272-9138-f99709370657
2008-04-07 01:05:51 +00:00
Michael Sevakis
22c8a25f5f
e200: Get the UNCACHED_ADDR macro and phys_fb_address use out of the lcd driver.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16982 a1c6a512-1295-4272-9138-f99709370657
2008-04-06 05:08:39 +00:00
Michael Sevakis
05099149f1
Enable nocache sections using the linker. PP5022/4 must use SW_CORELOCK now with shared variables in DRAM (it seems swp(b) is at least partially broken on all PP or I'm doing something very wrong here :\). For core-shared data use SHAREDBSS/DATA_ATTR. NOCACHEBSS/DATA_ATTR is available whether or not single core is forced for static peripheral-DMA buffer allocation without use of the UNCACHED_ADDR macro in code and is likely useful on a non-PP target with a data cache (although not actually enabled in config.h and the .lds's in this commit).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16981 a1c6a512-1295-4272-9138-f99709370657
2008-04-06 04:34:57 +00:00
Michael Sevakis
75f2d441e9
Change the remaining set_interrupt_status usage to the more parsimonious disable/enable/restore.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16897 a1c6a512-1295-4272-9138-f99709370657
2008-03-31 06:00:23 +00:00
Mark Arigo
2ea0206502
Fixes FS#8552. On some c200s, the second parameter in setting R_Y_ADDR_AREA was being interpreted as a separate command (most commonly initiating standby mode where the screen goes blank). While this may be a timing issue, some NOPs seem to fix it.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16896 a1c6a512-1295-4272-9138-f99709370657
2008-03-31 05:53:17 +00:00
Marcoen Hirschberg
82c52302bd
split boot.lds and move it into the target tree
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16855 a1c6a512-1295-4272-9138-f99709370657
2008-03-27 23:58:03 +00:00
Michael Sevakis
27cf677339
Add a complete priority inheritance implementation to the scheduler (all mutex ownership and queue_send calls are inheritable). Priorities are differential so that dispatch depends on the runnable range of priorities. Codec priority can therefore be raised in small steps (pcmbuf updated to enable). Simplify the kernel functions to ease implementation and use the same kernel.c for both sim and target (I'm tired of maintaining two ;_). 1) Not sure if a minor audio break at first buffering issue will exist on large-sector disks (the main mutex speed issue was genuinely resolved earlier). At this point it's best dealt with at the buffering level. It seems a larger filechunk could be used again. 2) Perhaps 64-bit sims will have some minor issues (finicky) but a backroll of the code of concern there is a 5-minute job. All kernel objects become incompatible so a full rebuild and update is needed.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16791 a1c6a512-1295-4272-9138-f99709370657
2008-03-25 02:34:12 +00:00