Commit graph

408 commits

Author SHA1 Message Date
Bertrik Sikken
7df759c951 Create an udacodec interface (similar to ascodec and wmcoded) and adapt/implement it for the iriver h1xx/h3xx and the meizus.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21546 a1c6a512-1295-4272-9138-f99709370657
2009-06-28 17:43:04 +00:00
Jens Arnold
81b87fe13d Add iAudio M5 FM radio mod to the advanced build options. * Unify iAudio audio driver, fmradio i2c driver, and power driver (M5 + X5 only).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21264 a1c6a512-1295-4272-9138-f99709370657
2009-06-12 18:53:44 +00:00
Nils Wallménius
b2afc258dc Old patch from FS#7832: Sprinkle 'volatile' in the various inline assembler statements, needed for the driver to work when compiled with newer gcc, should make no functional difference with the currently used version
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21147 a1c6a512-1295-4272-9138-f99709370657
2009-05-31 16:33:22 +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
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
Thomas Martitz
5c16ba4c4d Fix very last yellows.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20337 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 04:46:11 +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
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
Michael Sevakis
eb96058266 Remove experimental check which should only be there if all PCM drivers do it. It's incomplete anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19999 a1c6a512-1295-4272-9138-f99709370657
2009-02-13 12:37:29 +00:00
Michael Sevakis
ca5ca5b6ef Give pcm-coldfire.c a much needed shakedown. Fixes FS#9378 - metronome freezes (works for me now on X5 and H120 after running it at 400bpm for an hour or so). The reason seems to have been DMA_INT in DCR should also be cleared when forcing a channel stop. Also fixes a dodgey keyclick without music playing that I was getting on H120.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19991 a1c6a512-1295-4272-9138-f99709370657
2009-02-12 21:32:14 +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
Bertrik Sikken
8e2ff63a7e Various files: make function implementations consistent with their declaration in the header file or static if
they're local.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19892 a1c6a512-1295-4272-9138-f99709370657
2009-01-31 23:51:11 +00:00
Jens Arnold
21a0504d16 Hopefully fix wrong colours on coldfire targets for certain scaling factors. EMAC needs to be in unsigned integer mode.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19853 a1c6a512-1295-4272-9138-f99709370657
2009-01-25 15:59:43 +00:00
Björn Stenberg
30414d56c9 Reverting parts of r19760 that was mistakenly committed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19761 a1c6a512-1295-4272-9138-f99709370657
2009-01-13 14:56:20 +00:00
Björn Stenberg
7bc29086ec Minor Clip button changes: UP|REPEAT no longer goes to wps. Volume adjustment activated in list + tree.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19760 a1c6a512-1295-4272-9138-f99709370657
2009-01-13 14:51:44 +00:00
Michael Sevakis
4ed78f5c72 Clean up panicf and introduce system_exception_wait to do further target tasks and wait for a button when an unrecoverable error has occurred (panic, UIE, etc.). Returning from that function should reboot or don't return from it. Move UIE and __div0 for ARM to its own file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19716 a1c6a512-1295-4272-9138-f99709370657
2009-01-08 10:15:32 +00:00
Michael Sevakis
377b42b63b H10 can distinguish USB and MAIN charger input so return proper flags. H100s were misconfigured and should use CHARGING_SIMPLE. Comment more on what charging types mean in config.h.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19582 a1c6a512-1295-4272-9138-f99709370657
2008-12-24 19:36:37 +00:00
Michael Sevakis
e69d567d9e Bring consistency to pcm implementation and samplerate handling. Less low-level duplication. A small test_sampr fix so it works on coldfire again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19400 a1c6a512-1295-4272-9138-f99709370657
2008-12-12 11:01:07 +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
Michael Sevakis
48544f070b Move kernel tick initialization and handling to the target tree for ones remaining in kernel.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18919 a1c6a512-1295-4272-9138-f99709370657
2008-10-29 10:26:46 +00:00
Jens Arnold
0d49141637 Since several S/PDIF sources do not set the valnogood bit properly, valnogood shouldn't be considered as an error.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18322 a1c6a512-1295-4272-9138-f99709370657
2008-08-19 23:07:54 +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
Jens Arnold
d52bea8a90 Fix FS #8840 for irivers by slowing down the driver some more. Signal quality is obviously varying a lot among the iriver remotes. Speed is now around halfway between pre-r16832 and r17006 when boosted.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17657 a1c6a512-1295-4272-9138-f99709370657
2008-05-29 21:41:47 +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
Jens Arnold
4a6190dd13 Hopefully fix FS #8840 for iAudio M3, M5 and X5. Reduce greyscale update frequency on M3 in order to reduce CPU load (was >50% before, but this fix would have made it even worse).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17621 a1c6a512-1295-4272-9138-f99709370657
2008-05-24 08:53:12 +00:00
Michael Sevakis
41b235dacf Fix red. No bother with lcd power management calls in bootloader.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17508 a1c6a512-1295-4272-9138-f99709370657
2008-05-14 20:26:20 +00:00
Nicolas Pennequin
357ffb3c46 Convert the whole codebase to UTF-8, except docs/COMMITTERS and tools/creative.c, which need checking.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17369 a1c6a512-1295-4272-9138-f99709370657
2008-05-05 10:32:46 +00:00
Bertrik Sikken
19425909c3 Another round of making local functions static and making sure that source files are in sync with their header files.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17337 a1c6a512-1295-4272-9138-f99709370657
2008-05-03 21:33:00 +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
Jens Arnold
b1a49f83c6 Save a couple of bytes by using moveq.l where possible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17007 a1c6a512-1295-4272-9138-f99709370657
2008-04-07 00:01:03 +00:00
Jens Arnold
9737fc7c26 Iriver remote LCD driver: * Split out assembler parts. * Reintroduced the 2 transfer routine variants (low/high CPU clock), and made the version for high CPU clock a little slower because there were problems reported. The function can be slowed down more if there are still problems.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17006 a1c6a512-1295-4272-9138-f99709370657
2008-04-06 23:57:37 +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
Dave Chapman
52655751fa Fix red - adc.h used to be in lcd-remote.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16835 a1c6a512-1295-4272-9138-f99709370657
2008-03-27 00:09:31 +00:00
Jens Arnold
06ec18d93f Slightly better instruction order, added comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16833 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 23:45:55 +00:00
Jens Arnold
91a564e4b9 Iriver H1x0/H300: Speed up remote LCD updates when boosted by implementing an idea from the iaudio remote LCD driver. Speedup is ~75 with ticking reduction disabled. Ticking reduction should also be more effective due to the better pulse/pause ratio (update speed with ticking reduction aims at a constant 60fps as before). * SLight speedup when not boosted due to simplifications.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16832 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 23:40:17 +00:00
Michael Sevakis
af395f4db6 Do core interrupt masking in a less general fashion and save some instructions to decrease size and speed things up a little bit. Small fix to a few places where interrupts would get enabled again where they shouldn't have been (context switching calls when disabled).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16811 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 01:50:41 +00:00
Jens Arnold
74d678fdbc Back-ported the iAudio remote LCD driver optimisations to X5 and M5.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16810 a1c6a512-1295-4272-9138-f99709370657
2008-03-26 00:38:40 +00:00
Jens Arnold
40919d7db2 iAudio M3: Optimised LCD driver, with more/better assembly code. Speedup is ~80% when boosted, ~15% when unboosted. Also implemented grey phase blitting. * Adapted the greyscale library, and the plugins using it. * Fixed a bug in greyscale scroll down for vertically packed pixels.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16809 a1c6a512-1295-4272-9138-f99709370657
2008-03-25 23:21:36 +00:00
Jens Arnold
1f4bcc86da Revert accidental tree commit. /me needs a smaller enter key...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16805 a1c6a512-1295-4272-9138-f99709370657
2008-03-25 19:57:23 +00:00
Jens Arnold
9a7978aeab Cabbiev2 gigabeat background: reduce WPS backdrop filesize by storing it as 24 bit BMP instead of unnecessary 32 bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16802 a1c6a512-1295-4272-9138-f99709370657
2008-03-25 19:43:08 +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
Jens Arnold
8e66491ffe M3: Make remote LCD hotplug work, and make 'backlight on button hold' use the correct hold switch. * Kill a warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16711 a1c6a512-1295-4272-9138-f99709370657
2008-03-19 00:34:56 +00:00
Jens Arnold
eb0a7a3318 Correct the name of a flag. No functional change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16708 a1c6a512-1295-4272-9138-f99709370657
2008-03-18 22:48:26 +00:00
Jens Arnold
6d8b827472 Commit the ADC changes (fix red M3 builds).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16691 a1c6a512-1295-4272-9138-f99709370657
2008-03-18 06:55:59 +00:00
Jens Arnold
d700970f86 Cosmetic fixes for the iAudio bootloader: Don't display 'Hold switch on' if the reason for getting there was a spurious ON event. Don't disable the multi-colour LED in the M3 bootloader.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16690 a1c6a512-1295-4272-9138-f99709370657
2008-03-18 00:17:21 +00:00
Jens Arnold
ed3ff1b0b5 Various coldfire fixes: (1) iAudio Bootloader: Check the status of main & remote power button vs. the respective hold switch, and shut down when on hold. On X5/M5 this check is not strictly necessary for the main unit, but left there to keep things uniform. (2) M3: Stop reading the ADC properly before leaving the bootloader, on RoLo, and on reboot, to make it work reliably after those transitions. (3) Disable all interrupt sources on system init to avoid premature ISR calls after enabling interrupts in general. (4) iAudios: Proper implementation of ide_powered(), avoiding nasty HDD clicks in the bootloader when powering down, e.g. because of Hold. (5) Slight optimisations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16689 a1c6a512-1295-4272-9138-f99709370657
2008-03-17 23:47:38 +00:00
Jens Arnold
c6b6bad18f iAudio M3: ADC driver, making buttons and battery voltage reading work. * Disable the multi-colour LED for now to save power. Proper handling will be added later. * Make reboot on button press work on iAudio X5, M5, M3 in panicf(), and on M3 in UIE().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16684 a1c6a512-1295-4272-9138-f99709370657
2008-03-17 00:19:23 +00:00
Jens Arnold
478ba0afa1 Add two missing coldfire interrupt vectors.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16681 a1c6a512-1295-4272-9138-f99709370657
2008-03-16 00:50:46 +00:00
Jens Arnold
3005cf5c86 Sound on M3. yay!
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16679 a1c6a512-1295-4272-9138-f99709370657
2008-03-15 21:55:14 +00:00
Jens Arnold
30f8326a8c iAudio M3: Fix standard remote context. * Process button adc values in the button driver. Those buttons won't work without the not-yet-committable ADC driver though.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16676 a1c6a512-1295-4272-9138-f99709370657
2008-03-15 12:20:59 +00:00
Jens Arnold
3894a44202 More iAudio M3 work. Target build compiles, but same problem regarding plugins as the simulator. Boots to the menu, but it can't be used yet because only main & remote Play button work. USB works.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16661 a1c6a512-1295-4272-9138-f99709370657
2008-03-14 08:59:51 +00:00
Jens Arnold
8a6291dd63 More iAudio M3 work. Target build compiles, but same problem regarding plugins as the simulator. Boots to the menu, but it can't be used yet because only main & remote Play button work. USB works.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16660 a1c6a512-1295-4272-9138-f99709370657
2008-03-14 08:54:54 +00:00
Jens Arnold
3c561f2cf9 Make the LCD remote work in the Iriver H1x0 and H300 bootloaders as well (untested). * Only try the initial remote LCD init if the remote is plugged, and do it in main builds as well, giving slightly earlier remote LCD output when booting. * Fix delays in the X5/M5 remote LCD init. * Remove an unnecessary check in the X5/M5 remote LCD driver and the M3 LCD driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16655 a1c6a512-1295-4272-9138-f99709370657
2008-03-13 19:36:58 +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
Jens Arnold
2b5f9aec64 Make ATA work on M3.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16650 a1c6a512-1295-4272-9138-f99709370657
2008-03-12 23:36:05 +00:00
Jens Arnold
17bc340f1f Make the LCD remote work in the iAudio M3, M5 and X5 bootloaders. * Fix viewport related init bug in the 2 bit vertically interleaved LCD driver. * Fix low bat warning in iaudio bootloader - voltages are in millivolts now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16648 a1c6a512-1295-4272-9138-f99709370657
2008-03-12 23:08:33 +00:00
Jens Arnold
769fcbd4d9 More iAudio M3 work. Bootloader compiles, but doesn't work yet.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16645 a1c6a512-1295-4272-9138-f99709370657
2008-03-12 20:35:42 +00:00
Jens Arnold
8c6920e343 Revert accidental tree commit. Sorry for that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16574 a1c6a512-1295-4272-9138-f99709370657
2008-03-08 23:50:55 +00:00
Jens Arnold
d1ed7c37b1 No need to have \n here. panicf() won't output it anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16570 a1c6a512-1295-4272-9138-f99709370657
2008-03-08 23:34:43 +00:00
Peter D'Hoye
3c58f5d026 code police: add some missing trailing zeroes to remove possible confusion. No functional change.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16466 a1c6a512-1295-4272-9138-f99709370657
2008-03-01 17:52:26 +00:00
Jens Arnold
41c1f17296 Fix a few comments.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16434 a1c6a512-1295-4272-9138-f99709370657
2008-02-27 18:50:54 +00:00
Robert Kukla
8812879aac fix h300 red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16209 a1c6a512-1295-4272-9138-f99709370657
2008-02-03 18:31:47 +00:00
Robert Kukla
9dc67828a9 mrobe 100: real time clock (if anybody recognises the RTC chip let me know)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16208 a1c6a512-1295-4272-9138-f99709370657
2008-02-03 18:15:39 +00:00
Jens Arnold
837012be86 Fix graphical glitches occuring in the greyscale library on H1x0 and M5 at 124MHz. The main loop within lcd_grey_data() needed instruction reordering (interspersing lcd writes with memory accesses) to meed the LCD controller timing. Slight slowdown because of the extra register needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16091 a1c6a512-1295-4272-9138-f99709370657
2008-01-15 00:51:58 +00:00
Jens Arnold
6a56c14e17 Greyscale library: Changed the internal data format once more (separated pixel values and phases), allowing for further optimisation of drawing, scrolling etc. * Optimised grey phase blitting in the core reduces CPU load on all architectures, most significantly on coldfire. Previous version was too slow to keep up at 45MHz, leading to unwanted graininess (update frequency was halved). Also fixed screendump on 2bpp targets with vertical pixel packing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16043 a1c6a512-1295-4272-9138-f99709370657
2008-01-09 23:48:26 +00:00
Jens Arnold
feb5b15e9b All-new greyscale library, replacing the old one. Features: (1) Drawing/updating is faster than the old grayscale lib at full depth. (2) Always 129 shades instead of 2..33 shades. (3) No graininess caused by frequent updates (mpegplayer, doom, ...). (4) Needs less memory than the old grayscale lib at full depth. * The tradeoff is slightly higher CPU load in the ISR (frames are calculated 'live') and an extra function in the core. * Ported all plugins which used the graylib to use the new one. * Some slight optimisations for archos and H1x0 LCD update.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15998 a1c6a512-1295-4272-9138-f99709370657
2008-01-04 23:42:38 +00:00
Michael Sevakis
99617d71ba Make speex the new voice format for SWCODEC targets (non-Archos). Remove codec swapping and build speex voice decoding directly into the core binary.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15668 a1c6a512-1295-4272-9138-f99709370657
2007-11-18 17:12:19 +00:00
Jens Arnold
f4c5c6aa62 Fix bootloaders, and the backlight-modded Ondio build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15600 a1c6a512-1295-4272-9138-f99709370657
2007-11-12 19:19:38 +00:00
Jens Arnold
ef12b3b5c6 Hardware controlled backlight brightness for iPod Video and Nano, retaining the software PWM fade in/ fade out. * Backlight handling cleanup, getting rid of one layer of 'lowlevelness'. * Use atomic GPIO bit manipulation for PP502x backlight handling.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15599 a1c6a512-1295-4272-9138-f99709370657
2007-11-12 18:49:53 +00:00
Barry Wardell
0d8111cb39 Split radio i2c drivers into target tree where they belong. No changes to binaries produced.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15558 a1c6a512-1295-4272-9138-f99709370657
2007-11-10 19:14:01 +00:00
Jens Arnold
3674af6441 Coldfire: Partially revert buffered writes, and enable them explicitly for the LCD only. Turned out that with buffered writes enabled, reads after writes are not always serialized, which is a bad thing for I/O. Buffered writes to the LCD are safe because that's write-only. Fixes FS #7985. How come I didn't notice this earlier? :>
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15173 a1c6a512-1295-4272-9138-f99709370657
2007-10-17 20:45:13 +00:00
Jens Arnold
b85b6be3aa Coldfire targets: enable buffered writes by default. Speeds up all sorts of I/O that writes to ports: LCD update (except the functions using DMA on H300), ATA writes, .... Some timings had to be adjusted for the new configuration.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15129 a1c6a512-1295-4272-9138-f99709370657
2007-10-15 21:16:50 +00:00
Jens Arnold
3a5509a8d7 Fix coldfire PCF50606 I2C driver, and iriver FM radio I2C driver. Both drivers had wrong timing, discovered while experimenting with buffered writes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15122 a1c6a512-1295-4272-9138-f99709370657
2007-10-15 16:45:46 +00:00
Jens Arnold
99f9550881 H300, X5: Optimised lcd_yuv_blit(), using line-pair zig-zag writing to the LCD controller. ~7% speedup on H300, ~5% speedup on X5.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15111 a1c6a512-1295-4272-9138-f99709370657
2007-10-14 23:05:56 +00:00
Michael Sevakis
6077e5b7c8 Unify PCM interface just above the hardware driver level for all targets including the sims. Perform lockout of audio callback when changing states. Weird new playback or recording trouble? Check before and after this revision first though things seem quite sound.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15006 a1c6a512-1295-4272-9138-f99709370657
2007-10-06 22:27:27 +00:00
Steve Bavin
c90c18ea67 Thanks to LinusN, fix Coldfire bootloaders not booting - FS#7533
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14949 a1c6a512-1295-4272-9138-f99709370657
2007-10-02 07:54:50 +00:00
Dave Chapman
1672350378 FS #7691 - improved USB detection on PP devices. This patch modifies the target-tree function usb_detect() on all targets from bool to int, returning USB_INSERTED or USB_EXTRACTED instead of true or false. This was done to enable the PP usb_detect() to check for USB_POWER (either a connection to a USB wall charger, or the user holding "charge mode" button) and return that as a third value.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14600 a1c6a512-1295-4272-9138-f99709370657
2007-09-04 08:03:07 +00:00
Jens Arnold
bfa1adcd06 H300: Read battery voltage with 10bit precision.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14379 a1c6a512-1295-4272-9138-f99709370657
2007-08-17 20:47:24 +00:00
Jens Arnold
0fac492c3d First step of powermanagement rework: * Move target specific stuff into target tree, starting with battery voltage tables and voltage reading. (This revealed some incorrect percent_to_voltage_charging mappings). * Voltage reading on 1st gen ipods is now correct. * Clean up obsolete config #defines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14375 a1c6a512-1295-4272-9138-f99709370657
2007-08-17 06:45:18 +00:00
Jens Arnold
8a177345ce Moved archos power handling into target tree. * Tuner power handling cleaned up a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14345 a1c6a512-1295-4272-9138-f99709370657
2007-08-14 22:06:23 +00:00
Nils Wallménius
f28da1a35a Enable a lot more features for simulators and add stubs where necessary, simulators should now work with identical lng and voice files as the respective target
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14299 a1c6a512-1295-4272-9138-f99709370657
2007-08-12 19:49:03 +00:00
Michael Sevakis
60b01fa0f7 Straignten out some issues with HAVE_LCD_ENABLE. 1g/2g/3g had it defined but it shouldn't have been. lcd_enabled() was only available as a real function on gigabeat but others can use that too. Markup lcd.h a bit because I got a bit lost in it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14100 a1c6a512-1295-4272-9138-f99709370657
2007-07-31 12:43:06 +00:00
Jens Arnold
2e2f92c906 H1x0, H300: Get rid of the adc tick, and use the same concept as the iAudio ADC driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14079 a1c6a512-1295-4272-9138-f99709370657
2007-07-30 19:13:59 +00:00
Michael Sevakis
58fc279d26 Scroll on main and remote with a single thread. Change the way system messages are defined before running out is an issue (which requires a full update of rockbox on the player).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14035 a1c6a512-1295-4272-9138-f99709370657
2007-07-28 08:12:05 +00:00
Jens Arnold
3deb27053a Fix red bootloader builds. * Fix non-working PP5022 bootloaders. Also define correct IRAM size for PP5022/PP5024 bootloaders.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14015 a1c6a512-1295-4272-9138-f99709370657
2007-07-26 21:51:44 +00:00
Jens Arnold
f888509dad Slight speedup for iAudio remote LCD update when the CPU isn't boosted.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13932 a1c6a512-1295-4272-9138-f99709370657
2007-07-19 21:24:47 +00:00
Michael Sevakis
7d759f6b9c Do some planned radio interface cleanup since adding in the LV24020LP.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13880 a1c6a512-1295-4272-9138-f99709370657
2007-07-14 11:20:31 +00:00
Robert Keevil
7785d6949e Temporary fix for FS#7257 and FS#7261 - playback resumes while paused when seeking
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13795 a1c6a512-1295-4272-9138-f99709370657
2007-07-05 10:19:06 +00:00
Magnus Holmgren
7d5deaa5a0 H1x0: Increase delay during button reads. Hopefully fixes the scroll down problem (see forum thread 11081.0).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13765 a1c6a512-1295-4272-9138-f99709370657
2007-07-02 18:47:02 +00:00
Michael Sevakis
070417d152 Forget all the nonsense with C delay loops. 'volatile' on the variable makes bloated code and a volatile, blank asm block inside may or may not be optimized out. Use asm delay loops instead for Coldfire. Radio i2c driver also needs NACK after reading last tuner byte. Get the volatile off the Ondio loops (not needed here now). Maybe this is straightened out now.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13725 a1c6a512-1295-4272-9138-f99709370657
2007-06-27 03:11:49 +00:00
Michael Sevakis
126d81ecf5 Fix up the ACK generation in the Coldfire i2c driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13722 a1c6a512-1295-4272-9138-f99709370657
2007-06-26 23:53:32 +00:00
Nils Wallménius
07b7877809 Simple coldfire assembly strlen() function, 20-25% faster than the c
version. Move function out of iram as it turns out that makes it 
slightly faster.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13713 a1c6a512-1295-4272-9138-f99709370657
2007-06-25 20:21:37 +00:00
Nils Wallménius
8dc1a67bba Fix iriver H100 i2c driver which was broken by the switch to build with -Os. Fixes FS#7316 and FS#7321
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13676 a1c6a512-1295-4272-9138-f99709370657
2007-06-19 20:39:30 +00:00
Michael Sevakis
2d48d0ffa6 Straighten out some audio path APIs and misc. audio stuff. Having recording is not a prerequisite to having input/output source selection which is probably most useful when adding a audio input features like FM to a new port without forcing recording to be implemented first.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13599 a1c6a512-1295-4272-9138-f99709370657
2007-06-08 23:42:04 +00:00
Magnus Holmgren
7b3abf292f Allow ColdFire targets to be buildt with GCC >= 4.1.0.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13481 a1c6a512-1295-4272-9138-f99709370657
2007-05-23 18:11:55 +00:00
Michael Sevakis
8f659ae8d3 Use bitmasks to define which inputs are available. Makes it easier to remove old assumptions of which are available. Inspired by e200 being unique in having FM Radio and Mic but no Line. Doesn't remove the assumption that Mic is available or that one of Mic and/or Line is available just to avoid excessive #ifdef'ing until needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13448 a1c6a512-1295-4272-9138-f99709370657
2007-05-20 20:26:36 +00:00
Marcoen Hirschberg
eb7603f1c5 always reset the pcm_paused flag when stopping playback. fixes FS #7187
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13423 a1c6a512-1295-4272-9138-f99709370657
2007-05-19 19:30:08 +00:00
Jens Arnold
c49d5dd631 Coldfire targets: Adjusted PLL settings (lowest possible VCO clock for each setting) and IDE timing (especially it's faster now on M5+X5). * Added/updated table showing the necessary settings (PLL, refresh, waitstates, IDE timing) for each possible clock frequency.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13230 a1c6a512-1295-4272-9138-f99709370657
2007-04-21 09:29:01 +00:00
Michael Sevakis
521d6a5e1f H100 S/PDIF recording: Check and clear the correct interrupt bits when recording from digital in.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13198 a1c6a512-1295-4272-9138-f99709370657
2007-04-18 02:07:56 +00:00
Michael Sevakis
d95c39072a Portal Player: Add invalidate_icache and flush_icache. Flush the cache on the core for newborn threads. In doing so, move more ARM stuff to the target tree and organize it to make a clean job of it. If anything isn't appropriate for some particular device give a hollar or even just fix it by some added #ifdefing. I was informed that the PP targets are register compatible so I'm going off that advice. The Sansa likes it though.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13144 a1c6a512-1295-4272-9138-f99709370657
2007-04-13 20:55:48 +00:00
Jens Arnold
47bf6c5a5a Moved archos backlight code to target tree. Changed old mutlivalue CONFIG_BACKLIGHT to a simple HAVE_BACKLIGHT.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13136 a1c6a512-1295-4272-9138-f99709370657
2007-04-12 22:12:13 +00:00
Jens Arnold
fad79dc636 Moved archos USB handling to target tree. Minor simplification for coldfire (only one usb-target.h).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13110 a1c6a512-1295-4272-9138-f99709370657
2007-04-11 20:44:32 +00:00
Michael Sevakis
6689cb0f9b mpegplayer: Get A-V synchronized. Improve frame sync and dropping logic and take advantage of decoder's ability to assist. Straighten out some threading problems. Clean it up a bit. Added some plugin API functions and decided it was a good time to do a good sorting on them so your next update from this build should be a full replacement.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13094 a1c6a512-1295-4272-9138-f99709370657
2007-04-10 14:18:30 +00:00
Michael Sevakis
ee6bb1b579 Missed one variable declaration updating byteswapping functions. Not functionally different but keeps things consistent.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12965 a1c6a512-1295-4272-9138-f99709370657
2007-03-29 19:22:11 +00:00
Michael Sevakis
d7670647e5 Fix errors. What an errant keystroke when saving can accomplish.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12957 a1c6a512-1295-4272-9138-f99709370657
2007-03-29 05:53:46 +00:00
Michael Sevakis
e754b16f4b Add an asm swap_odd_even32 to SH and ARM. Have the byteswapping functions take and return intxx_t data types.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12956 a1c6a512-1295-4272-9138-f99709370657
2007-03-29 05:30:25 +00:00
Michael Sevakis
8f04faef91 Save a couple bytes in set_irq_level on Coldfire. Should add up to something.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12912 a1c6a512-1295-4272-9138-f99709370657
2007-03-25 20:45:08 +00:00
Michael Sevakis
3354531614 More logf fixes. speex.c wants to format 64bit args so I didn't change that one nor add any formatting for that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12858 a1c6a512-1295-4272-9138-f99709370657
2007-03-20 13:53:23 +00:00
Michael Sevakis
600ca577dc Rrrr. Editor shouldn't have left those tabs. Will check settings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12845 a1c6a512-1295-4272-9138-f99709370657
2007-03-19 22:14:10 +00:00
Michael Sevakis
e1dd10ddfb SWCODEC: Get rid of extra swap buffer and get back 512K of RAM or 100K if the players RAM is <= 1MB. Make any needed changes to things to stabilize and facilitate this including removing flattening out initialization. Comment some things heavily. Fix a few logfs I didn't want to see the compiler complaining about.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12843 a1c6a512-1295-4272-9138-f99709370657
2007-03-19 22:04:17 +00:00
Jens Arnold
39e1b59c48 Fixed backlight voltage for M5. Now the backlight is as bright as in the original firmware.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12787 a1c6a512-1295-4272-9138-f99709370657
2007-03-15 19:08:24 +00:00
Michael Sevakis
6c8772d6db x5/M5: Finally get rid of filter selection aberrations when switching to 88.2kHz sampling rate which affected both the DAC and ADC. Turning off the DAC and ADC before changing the internal codec frequency seems to cure the remaining glitch of the filters not being correctly selected by the TLV320. Some FIFO reset changes that help keep it stable as well. Supporting 88.2KHz on iAudio has been a tricky ordeal. Also made sure to ok the HW tone controls on iRiver. :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12757 a1c6a512-1295-4272-9138-f99709370657
2007-03-14 10:06:57 +00:00
Michael Sevakis
abf41e3481 H100 Series: Fix FS#6810 - Distortion on Bass/Treble usage. Coldfire PCM needed a refinement in the init sequence for the UDA1380 after audio init changes. Apparently it doesn't like its registers altered before the Coldfire I2S is properly initialized.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12752 a1c6a512-1295-4272-9138-f99709370657
2007-03-13 15:05:46 +00:00
Michael Sevakis
e21d217205 Squeeze the serial number code down a few more bytes and call it a day. Will try to reduce by a significant amount later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12726 a1c6a512-1295-4272-9138-f99709370657
2007-03-11 16:01:01 +00:00
Michael Sevakis
94c4724420 Fix a late error that only let it read at default CPU frequency. Disable interrupts during ds2411 read since it's timing sensitive.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12724 a1c6a512-1295-4272-9138-f99709370657
2007-03-11 14:33:16 +00:00
Michael Sevakis
89a38d4273 iAudio X5: Enable reading of DS2411 serial number. See it under System|Debug|View HW info.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12723 a1c6a512-1295-4272-9138-f99709370657
2007-03-11 13:59:31 +00:00
Michael Sevakis
c2d2106fd7 Audio Init: Just can't stand that heirarchy. Add one level of abstraction. Might come in handy anyhow. Use sound.h instead of the conditional includes for audio hardware headers. If someone doesn't like that, yell at my evil twin. :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12718 a1c6a512-1295-4272-9138-f99709370657
2007-03-11 06:21:43 +00:00
Michael Sevakis
5d63776a24 Reenable aynchronous audio init stage. Really just single stage with aynchronous enabling of outputs. Keeps audio_init last so prior init steps can use the audiobuffer in any desired way. Audio will be fully initialized by the time the UI is entered. Playback of voice or audio will be delayed properly until audio hardware is ready.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12714 a1c6a512-1295-4272-9138-f99709370657
2007-03-11 05:04:48 +00:00
Michael Sevakis
633f388002 Coldfire targets: Shuffle IRQ levels around to have all interaction between low level audio function calls and DMA be atomic. Make recording and playback independently startable and stoppable so one can be running and not interfere with the other. All tests I can do at the moment check out ok (play, record, play+record, FM radio on iRivers, S/PDIF on H120 (w/running optical on/off), and on-the-fly samplerate changes). Recording tested for well over an hour run and no problems.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12658 a1c6a512-1295-4272-9138-f99709370657
2007-03-07 06:23:02 +00:00
Jens Arnold
611737bde8 Add extra filtering to the X5 and M5 button drivers to prevent erratic button events (ported from H300).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12627 a1c6a512-1295-4272-9138-f99709370657
2007-03-05 20:14:41 +00:00
Michael Sevakis
8867d00141 More catching up on old work. Refine audio interface setup on Coldfire. Stop the funky glitching on the iAudio stuff when starting recording esp. at 88.2kHz. (probably due to the bidi interface). iRivers don't seem to care what you do. TLV320 still seems to have a little trouble selecting it's filters correctly for 88.2kHz or it could be some odd phasing effect. Get rid of the horrible reset parameter in pcm_apply_settings as it can decide for itself.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12618 a1c6a512-1295-4272-9138-f99709370657
2007-03-05 08:14:27 +00:00
Jens Arnold
1d232401fd Forget to commit this one deleted file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12611 a1c6a512-1295-4272-9138-f99709370657
2007-03-05 00:13:46 +00:00
Jens Arnold
8876018d25 Bring up the M5 port to a working stage: Extended numerous explicit checks for IAUDIO_X5 to also check for IAUDIO_M5, moved code around the target tree, added preliminary background for the sim.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12610 a1c6a512-1295-4272-9138-f99709370657
2007-03-05 00:04:00 +00:00
Michael Sevakis
198772a6b2 iRiver H100 series: Catching up on old work. Use a better way to keep playback going when switching optical output. Doesn't mess with the DMA peripheral requests to do it like before but just writes a sample to the FIFO. Would really like to reformulate interrupt scheme on Coldfire to allow DMA interrupts to be blocked specifically but not normally.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12605 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 21:43:35 +00:00
Jens Arnold
b4994a08ca Added new iAudio M5 target, including some adjustments to make the bootloader compile (with a small change against the committed tools/tonfigure, and it won't actually work yet).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12588 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 14:09:21 +00:00
Linus Nielsen Feltzing
ff17905d7c H300 bootloader: (Work in progress) Boot Rockbox on RTC alarm, add charging screen, move to a separate source file, backlight is on during USB mode (again)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12546 a1c6a512-1295-4272-9138-f99709370657
2007-03-02 11:28:23 +00:00
Robert Kukla
50b5ee4781 FS#6419 - driver for H1x0 series RTC Mod with runtime detection
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12520 a1c6a512-1295-4272-9138-f99709370657
2007-02-28 13:20:36 +00:00
Michael Sevakis
306aa7552a Well, it seems that caused problems for others but my magic bug correcting DAPs don't experience trouble after a full update. Revert to setting the macsr in system_init. Watch your ears when using EQ on the 25 Feb 21:43 build...so I hear.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12487 a1c6a512-1295-4272-9138-f99709370657
2007-02-25 22:59:39 +00:00
Jens Arnold
7d718a8064 X5: Move the remote tick to target tree.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12486 a1c6a512-1295-4272-9138-f99709370657
2007-02-25 22:36:04 +00:00
Jens Arnold
d528e54b61 Move target specific parts of the H100 remote LCD driver to target tree.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12485 a1c6a512-1295-4272-9138-f99709370657
2007-02-25 22:09:14 +00:00
Michael Sevakis
2c9cbc12e1 Add CPU-model-specific init to newborn threads. Add default %macsr for each thread created on coldfire (EMAC_FRACTIONAL | EMAC_SATURATE).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12483 a1c6a512-1295-4272-9138-f99709370657
2007-02-25 21:43:10 +00:00
Linus Nielsen Feltzing
9744433752 Move the MPARK init to system_init()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12452 a1c6a512-1295-4272-9138-f99709370657
2007-02-22 14:54:13 +00:00
Linus Nielsen Feltzing
6c3db6e65f Correct LCD DMA init on the H300
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12450 a1c6a512-1295-4272-9138-f99709370657
2007-02-22 11:57:11 +00:00
Jens Arnold
51223e5395 Introduced LCD_FBHEIGHT in addition to the already existing LCD_FBWIDTH to ease framebuffer handling a bit. Added equivalent definitions for the remote LCD.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12419 a1c6a512-1295-4272-9138-f99709370657
2007-02-20 19:31:34 +00:00
Jens Arnold
c652218d14 Fix remaining CONFIG_TUNER checks.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12385 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 08:46:12 +00:00
Jonathan Gordon
9a6f419775 CONFIG_CHARGING
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12384 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 05:32:06 +00:00
Jonathan Gordon
ac61951452 Do the CONFIG_USBOTG define correctly
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12382 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 04:57:28 +00:00
Jonathan Gordon
1083de8e7d CONFIG_USBOTG fixes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12377 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 01:17:06 +00:00
Magnus Holmgren
1916576728 Keep delay loop from being optimized away.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12367 a1c6a512-1295-4272-9138-f99709370657
2007-02-17 23:06:50 +00:00
Thom Johansen
5f48e1590f Optimise EQ coef calculation routines for both speed and size. Move now unneeded fsqrt function to plugin fixed point library in case it'll be needed. Move all fixed point helper macros to dsp.h. Added FRACMUL_SHL macro to facilitate high-precision shifting of 64 bit multiplies and remove rounding from macsr in main thread to make this work as intended.
Tested quite thorougly, but as always, be careful with your ears.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12203 a1c6a512-1295-4272-9138-f99709370657
2007-02-05 01:01:15 +00:00
Linus Nielsen Feltzing
1eff300f18 New PLL calculations to make sure that PLLDIV != 0. This seems to solve the problem with the troublesome H140 batch from OutletMP3.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12201 a1c6a512-1295-4272-9138-f99709370657
2007-02-05 00:01:29 +00:00
Linus Nielsen Feltzing
bc76a42eca Corrected the comments regarding USB charging
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12181 a1c6a512-1295-4272-9138-f99709370657
2007-02-02 15:47:28 +00:00
Steve Bavin
338d94f466 FS#4770 - Add USB charging for the H300 series
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12169 a1c6a512-1295-4272-9138-f99709370657
2007-02-01 10:47:22 +00:00
Miika Pekkarinen
73cd9f3b63 Turn backlight ON at boot unless bootloader has already done that.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11992 a1c6a512-1295-4272-9138-f99709370657
2007-01-12 20:26:23 +00:00
Miika Pekkarinen
0ea4d3197e Prepare core support for the iriver bootloader supporting ROM images
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11991 a1c6a512-1295-4272-9138-f99709370657
2007-01-12 18:34:00 +00:00
Linus Nielsen Feltzing
e2022a26d0 Removed executable flag
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11967 a1c6a512-1295-4272-9138-f99709370657
2007-01-09 23:29:07 +00:00
Michael Sevakis
c02e15fe26 Coldfire: More efficient and compact peaking code. Hope the build doesn't whine about strange asm constraints. GCC's ok with it here.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11786 a1c6a512-1295-4272-9138-f99709370657
2006-12-17 11:56:30 +00:00
Michael Sevakis
36c940555c SWCODEC recording: More cleanup of stuff after queue additions and audio driver unification.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11783 a1c6a512-1295-4272-9138-f99709370657
2006-12-17 11:03:19 +00:00
Michael Sevakis
f51df0de21 Coldfire: Put DMA1 priority back at level 7 as that seems to be the cause of the stopping during record. Make DMA1 start as it did previously.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11729 a1c6a512-1295-4272-9138-f99709370657
2006-12-12 04:25:52 +00:00
Jens Arnold
81f76f21d6 Fix some comments, and make code consistent with comments (CSMR2 was set to 1M instead of 64K).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11698 a1c6a512-1295-4272-9138-f99709370657
2006-12-09 11:36:40 +00:00
Michael Sevakis
9b720239a3 iRiver: Clearing CRSEL bit when using default CPU frequency caused audio chip to run at half frequency when radio screen called cpu_idle_mode(true) and corresponding high end loss after kepress timeout. CRSEL was originally preserved when bypassing PLL. CRSEL shouldn't have any bearing on PSTCLK or SCLK when PLL is bypassed since the dividers are bypassed as well (except for the divX2 for SCLK).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11695 a1c6a512-1295-4272-9138-f99709370657
2006-12-08 23:33:22 +00:00
Jens Arnold
b774bae5fd Coldfire targets: Fixed performance-hitting bug for unaligned transfers. Now unaligned transfers are less than 10% slower than aligned transfers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11679 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 18:44:45 +00:00
Jens Arnold
4c43d9422c Removed extraneous #ifdef.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11678 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 18:33:57 +00:00
Marcoen Hirschberg
edbd1cde47 first step in audio driver unification: renaming the functions to audio_* (missed this one)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11672 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 10:44:40 +00:00
Marcoen Hirschberg
77d039bab8 first step in audio driver unification: renaming the functions to audio_*
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11670 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 10:24:59 +00:00
Miika Pekkarinen
46a608bf07 PLL was incorrectly initialized causing system to crash when ran from
ROM.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11669 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 10:02:06 +00:00
Michael Sevakis
51189b4cb4 Small change to PCM recording API for low latency effects. Latency can be as low as 14 samples from input to output including the FIFOs (ColdFire) but 16 is more reasonable an expectation if only tranferring one sample per interrupt (\!). May convert PCM playback to use the same method as it can still be used in the old manner with some slight mods but has the potential to enable new features since it is more flexible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11668 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 08:34:55 +00:00
Michael Sevakis
81484e4b75 H1x0: Enable optical output to be switched on or off during playback and recording. Fixes FS#6414 - H120 opto out toggle freezes codec. Really DMA just needed a kickstart after setting the optical TXSRC if the peripheral requests were currently enabled (the method of detection).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11661 a1c6a512-1295-4272-9138-f99709370657
2006-12-05 07:38:55 +00:00
Jens Arnold
31ffd7b154 Completed target tree move of the ata driver code. Some code cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11655 a1c6a512-1295-4272-9138-f99709370657
2006-12-03 22:13:44 +00:00
Michael Sevakis
7d00f97460 PCM: A few tiny changes. 1) Recording a) Flush all pending files if filename queue is full or else perpetual flushing of 1 will occur at low bitrates and short split times. b) #ifdef out currently unused bits and save little less than 1/2K 2) Cleanup some declarations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11623 a1c6a512-1295-4272-9138-f99709370657
2006-11-29 14:23:24 +00:00
Michael Sevakis
ce3ade1360 iRiver: Channel 2 shouldn't be monitored except for radio playback.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11616 a1c6a512-1295-4272-9138-f99709370657
2006-11-27 21:52:49 +00:00
Jens Arnold
0e6dd7efcd Moved archos button reading to target tree. * Cleanup of button.[ch]. * Deactivated serial remote code for recorder FM/V2 as there is no remote pin, saving ~500 bytes of code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11612 a1c6a512-1295-4272-9138-f99709370657
2006-11-27 02:16:32 +00:00
Jens Arnold
6adbbc0f2f X5: Slightly lower threshold value to reliably disable constant adc reading when no button is pressed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11604 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 18:24:23 +00:00
Linus Nielsen Feltzing
516d277958 The ADC GPIO init code for the H100 was accidentally put in the H300 driver when moving to the target tree
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11582 a1c6a512-1295-4272-9138-f99709370657
2006-11-24 11:06:52 +00:00
Michael Sevakis
f27c266097 Just correct a comment and see if the build goes differently.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11578 a1c6a512-1295-4272-9138-f99709370657
2006-11-23 19:46:24 +00:00
Michael Sevakis
ab1861a3c2 iRiver/iAudio: Added audio_set_recording gain and sound_default to plugin API. Simplified plugin recording by target/-ing some audio functions. UDA1380 records with WSPLL as a result.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11577 a1c6a512-1295-4272-9138-f99709370657
2006-11-23 19:21:15 +00:00
Michael Sevakis
fbac4f8444 Audio bugfixes. Should wait for voice codec to reload before returning buffer when stealing voice. Certain variables that get or may get used during an IRQ should be declared 'volatile'.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11572 a1c6a512-1295-4272-9138-f99709370657
2006-11-22 09:13:14 +00:00
Michael Sevakis
4a82f81f79 H100 series: Adjusted gray scale balance and default contrast for more linear gray levels.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11564 a1c6a512-1295-4272-9138-f99709370657
2006-11-21 17:14:07 +00:00
Michael Sevakis
ef40b0ae43 Coldfire: Add DMA auto alignment to pcm recording.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11563 a1c6a512-1295-4272-9138-f99709370657
2006-11-21 15:58:39 +00:00
Michael Sevakis
cc50c149e9 H100/General: HAL for S/PDIF and refinement/bufixes in optical output powering/source selection.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11523 a1c6a512-1295-4272-9138-f99709370657
2006-11-13 23:21:54 +00:00
Michael Sevakis
58825f6e73 Coldfire targets: Got the rest of the coldfire code out of backlight.c. Straightened up related items in configs and split backlight_set_brightness between the normal and boot/sim builds like the other functions. Should really have done all that in the first place.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11502 a1c6a512-1295-4272-9138-f99709370657
2006-11-10 18:47:41 +00:00
Michael Sevakis
cf59a4fc1d H300/X5: Moved backlight brightness code to target tree. Created __backlight_set_brightness in backlight-(target).c. backlight_set_brightness range clamps and calls the backlight driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11488 a1c6a512-1295-4272-9138-f99709370657
2006-11-10 01:25:52 +00:00
Michael Sevakis
f64f589d2e H100/120: Split lcd driver into pixel format and device specific parts. Adjustment of contrast range to just a little less than white to a little more than black. Really only had to reset minimum.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11487 a1c6a512-1295-4272-9138-f99709370657
2006-11-10 00:02:28 +00:00
Michael Sevakis
d7e55278f3 Use HAVE_FLASHED_ROCKBOX when target is flashable. Currenly only used by the H100 series.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11470 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 18:33:06 +00:00
Michael Sevakis
a32b33bf83 Forgot to cvs add lcd-as-h100.S.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11469 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 16:22:30 +00:00
Michael Sevakis
e89a3940f9 More exodus to the target tree for ColdFire and a bonus sorting of firmware/SOURCES.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11468 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 16:13:04 +00:00
Michael Sevakis
5efee7c94a Forgot to use cvs add on a few new files in the fresh checkout I used. woops.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11453 a1c6a512-1295-4272-9138-f99709370657
2006-11-06 18:18:05 +00:00
Michael Sevakis
0f5cb94aa4 Big Patch adds primarily: Samplerate and format selection to recording for SWCODEC. Supprort for samplerates changing in playback (just goes with the recording part inseparably). Samplerates to all encoders. Encoders can be configured individually on a menu specific to the encoder in the recording menu. File creation is delayed until flush time to reduce spinups when splitting. Misc: statusbar icons for numbers are individual digits to display any number. Audio buffer was rearranged to maximize memory available to recording and properly reinitialized when trashed. ColdFire PCM stuff moved to target tree to avoid a complicated mess when adding samplerate switching. Some needed API changes and to neaten up growing gap between hardware and software codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11452 a1c6a512-1295-4272-9138-f99709370657
2006-11-06 18:07:30 +00:00
Jens Arnold
f8b1da2f7b H300, X5: Faster lcd_yuv_blit() using EMAC. Speedup of the function itself at 124MHz: 10.5% on X5, 16.5% on H300. mpegplayer speedup 3..4%
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11429 a1c6a512-1295-4272-9138-f99709370657
2006-11-04 00:42:18 +00:00
Michael Sevakis
0fb67cd475 More tweak to ColdFire default exception handler. iRiver reboots on power press but x5 just shuts down. Haven't yet thought much about why or how to make it reboot on x5 if it's possible.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11422 a1c6a512-1295-4272-9138-f99709370657
2006-11-03 10:19:04 +00:00
Jens Arnold
83aded979f H300: (1) Use DMA for LCD updates, with auto-aligned line reads. Speeds up LCD updates by ~ 75% at 11MHz and 45MHz. Only ~ 11% speedup at 124MHz due to (2). (2) Less aggressive LCD transfer timing at 124MHz. With the previous timing, slightly corrupted display contents was reported, and with DMA transfers at least 4 waitstates are needed to make updates work at all. * A table in system-iriver.c shows settings for all integer multiples of the base clock frequency (info for developers, not yet complete).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11418 a1c6a512-1295-4272-9138-f99709370657
2006-11-02 20:50:50 +00:00
Michael Sevakis
59f9deb37e Display correct exception information on ColdFire targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11416 a1c6a512-1295-4272-9138-f99709370657
2006-11-02 15:39:08 +00:00
Jens Arnold
84074cd292 Removed remnants of deprecated lcd_roll().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11409 a1c6a512-1295-4272-9138-f99709370657
2006-10-31 19:49:35 +00:00
Michael Sevakis
f29cae0d26 Moved coldfire code in system.c and system.h into target tree.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11399 a1c6a512-1295-4272-9138-f99709370657
2006-10-30 14:17:14 +00:00
Michael Sevakis
9e8fe0e4c6 General: changed local adc to voltage conversions in several places to use battery_voltage. Added battery_read_info function for unfiltered battery information. x5: removed adc_read as a distinct function. Removed adc tick task. adc_init is empty inline. Adjusted battery scale, voltage to level array and read 10 bits from the ADC for battery since 255 levels is not enough for true centivolt resolution.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11396 a1c6a512-1295-4272-9138-f99709370657
2006-10-30 11:33:38 +00:00
Marcoen Hirschberg
ede3d646b9 move coldfire ata defines to a shared ata-target.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11395 a1c6a512-1295-4272-9138-f99709370657
2006-10-30 09:38:34 +00:00
Jonathan Gordon
139f9f28e9 move the iriver h1x0/h3x0 targets to the target tree
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11392 a1c6a512-1295-4272-9138-f99709370657
2006-10-30 08:56:06 +00:00
Jens Arnold
62a11ea9e6 Removed unnecessary #include s.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11385 a1c6a512-1295-4272-9138-f99709370657
2006-10-29 19:29:41 +00:00
Jens Arnold
85c9a05c56 H300: Don't read the button ADC as long as no button is pressed, utilising the PCF50606 accessory detect feature. Ported from X5.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11383 a1c6a512-1295-4272-9138-f99709370657
2006-10-29 13:48:57 +00:00
Jonathan Gordon
cad563b00f move the iriver h1x0/h3x0 button driver to target tree
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11380 a1c6a512-1295-4272-9138-f99709370657
2006-10-29 10:26:41 +00:00
Michael Sevakis
c4a0d45d36 Cleanup of new button reading code. Moved functions for enabling of scanning and the decision to scan or not to button_read_device.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11377 a1c6a512-1295-4272-9138-f99709370657
2006-10-28 23:10:45 +00:00
Michael Sevakis
2ede2a79e6 Put a couple x5-specific function declarations in adc-target.h where they should be.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11358 a1c6a512-1295-4272-9138-f99709370657
2006-10-27 08:12:18 +00:00
Michael Sevakis
1d4a9c6366 Stop reading buttons if one is not down. Don't read remote keys if not plugged. Good for another few points of boost and 4fps full-screen unboosted. The button scan enabling seems stable and I've been using it without any difficulties but if the interrupts hiccup it could leave them unresponsive. Clearing the GPI0 interrupts before enabling them seems to prevent any difficulties. If there's problems there I'll just leave the remote reading bypass only and 50% of the benefits will still be realized.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11357 a1c6a512-1295-4272-9138-f99709370657
2006-10-27 05:31:28 +00:00
Michael Sevakis
784dd78745 Moved pcf50606 stuff to target directory.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11348 a1c6a512-1295-4272-9138-f99709370657
2006-10-25 23:24:07 +00:00
Michael Sevakis
34751f096c Fixed implicit declaration warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11332 a1c6a512-1295-4272-9138-f99709370657
2006-10-25 06:27:40 +00:00
Michael Sevakis
b26e396436 Pinched pcf50606 i2c code used in iRiver players and adapted to x5. Boost ratios down as much as 100 percent for mp3 and 50 percent for vorbis. mp3 hardly ever boosts even with eq. Scrolling much sharper. Like a whole new player. The code can be used for both iRiver and x5 by just defining macros with the appropriate ports and bit numbers for each player. Probably will have a pcf50606-coldfire.c soon.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11330 a1c6a512-1295-4272-9138-f99709370657
2006-10-25 06:10:22 +00:00
Michael Sevakis
10363b3a81 Get rid of some OR-ing and conditional expressions in lcd driver when register values can just be saved in shorts. Touch-up to comment in asm part.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11281 a1c6a512-1295-4272-9138-f99709370657
2006-10-20 23:57:48 +00:00