Commit graph

173 commits

Author SHA1 Message Date
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
Jens Arnold
68a21689ae Consistent naming scheme the various blit functions. * Removed lcd_blit_mono() for colour targets. Plugin API became incompatible, so sort, clean up & bump. * Implemented lcd_blit_mono() for M3.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16775 a1c6a512-1295-4272-9138-f99709370657
2008-03-24 00:35:53 +00:00
Karl Kurbjun
ef62d6891a Split up app.lds to the respective target directories. The portalplayer devices replicate app.lds since their target tree doesn't follow a syntax typical to the newer arm targets - the portalplayers could be cleaned up further. boot.lds and plugin.lds still need to be cleaned up.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16651 a1c6a512-1295-4272-9138-f99709370657
2008-03-13 03:48:23 +00:00
Michael Sevakis
f5921cface Really stop red. Whatever works atm.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16639 a1c6a512-1295-4272-9138-f99709370657
2008-03-12 11:59:10 +00:00
Michael Sevakis
e37044ff1d Hotswap code shuffling: Fix yellow. Simplify some target function access. Keep fat lock access from compiling for Ondios - think of a nicer way later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16637 a1c6a512-1295-4272-9138-f99709370657
2008-03-12 11:08:41 +00:00
Michael Sevakis
06a5299aff Do some crackdown on kernel object reinitialization after they could be in use and use before initialization. For c200/e200: Be sure fat cache and ata locks are acquired in the proper order during hot swapping. Delay hotswap monitoring until after initial file mounting (address 2nd kobj concern + possible call of fat driver before init).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16636 a1c6a512-1295-4272-9138-f99709370657
2008-03-12 10:03:52 +00:00
Michael Sevakis
2f5a37de5c Fix newly introduced race condition in SD driver. Make sure to force remount in case two SYS_HOTSWAP_INSERTED messages are received in a row. Be sure flags are reset to re-initialize the SD-card. Go back to locking out driver access during disk mount/unmount attempts.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16635 a1c6a512-1295-4272-9138-f99709370657
2008-03-12 02:50:07 +00:00
Jens Arnold
ed8402ca5e Sansa SD card driver: Simplify hotswap handling, and make it send the insert/remove events while filesystem access is blocked. Also use atomic GPIO bit manipulation where possible, and protect the interrupt level manipulation in the ISR from interrupts arriving at the same time.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16592 a1c6a512-1295-4272-9138-f99709370657
2008-03-09 14:49:10 +00:00
Frank Gevaerts
1dc9de9432 acknowledge USB disconnect. This wasn't always done anymore since the usb_wait_for_disconnect() is gone.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16452 a1c6a512-1295-4272-9138-f99709370657
2008-02-28 22:51:39 +00:00
Frank Gevaerts
daf3ddc70d don't call usb_wait_for_disconnect() in the sd thread. The usb storage driver uses the sd driver, and wants to know about changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16449 a1c6a512-1295-4272-9138-f99709370657
2008-02-28 22:37:02 +00:00
Michael Sevakis
9811fc9abf Some misc. ATA stuff: Increase threads' priority (important for idle callbacks to get done faster). Use a simpler loop for ata thread. Add a balancing mutex_lock call to ata_init (oops).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16278 a1c6a512-1295-4272-9138-f99709370657
2008-02-11 07:42:11 +00:00
Jonas Häggqvist
f6f1127219 Use a fixed multiplier of 2^10 as required when calculating number of blocks.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16256 a1c6a512-1295-4272-9138-f99709370657
2008-02-09 21:07:44 +00:00
Michael Giacomelli
b5acab1bcf Commit FS#8480 by Andree Buschmann. Updates battery calibration for the Sansa E series.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16122 a1c6a512-1295-4272-9138-f99709370657
2008-01-20 22:47:05 +00:00
Michael Sevakis
6a8379674c Finally, out goes struct spinlock for anything but mutiprocessor targets where it becomes a reenterable corelock.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16105 a1c6a512-1295-4272-9138-f99709370657
2008-01-18 13:12:33 +00:00
Michael Sevakis
3b36b98ff8 Properly serialize ata_init with other threads. Fix a bug that always initialized the lock on every call to ata_init - that should be a one time init or else the lock could be corrupted on connect.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16104 a1c6a512-1295-4272-9138-f99709370657
2008-01-18 12:32:03 +00:00
Jonathan Gordon
81ba146706 Accept FS#8341 - rename BUTTON_SCROLL_UP/DOWN to FWD/BACK on the e200 to make it consistant with the ipods. apart from removing a bit of confusion, it fixes the wheel in pictureflow and possibly elsewhere.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16045 a1c6a512-1295-4272-9138-f99709370657
2008-01-10 08:08:31 +00:00
Mark Arigo
66cd9ef385 Don't clear this bit. Helps c200 radios that have trouble tuning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16038 a1c6a512-1295-4272-9138-f99709370657
2008-01-09 20:26:23 +00:00