Commit graph

449 commits

Author SHA1 Message Date
Michael Sevakis
d219491e58 Gigabeat: Add the funky foreground color support for transparent bitmaps.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13898 a1c6a512-1295-4272-9138-f99709370657
2007-07-15 01:06:04 +00:00
Michael Sevakis
dc051248be e200: Tuner driver needs to yield alot and also be mutexed. FM debug screen got broken again and was ignoring cancellation and not drawing the lines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13896 a1c6a512-1295-4272-9138-f99709370657
2007-07-14 22:00:50 +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
Michael Sevakis
00251d1643 e200: This should stop lockups on sansa with struck SD card insert detection. Hopefully no new troubles will rear up.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13862 a1c6a512-1295-4272-9138-f99709370657
2007-07-12 06:50:42 +00:00
Michael Sevakis
0257c5b8fc e200: adc_read needs mutex since it is accessed from multiple threads and yields. Remove polling for conversion completion since it will always have completed by the time it can be read out.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13861 a1c6a512-1295-4272-9138-f99709370657
2007-07-12 04:19:21 +00:00
Jens Arnold
39c56b3f17 iPod G3: Set the 'we (pretend to) know what we're doing so please let us' magic value. Aka unlock clock frequencies > 66MHz. Should make performance significantly better with problematic codecs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13845 a1c6a512-1295-4272-9138-f99709370657
2007-07-10 23:39:37 +00:00
Jens Arnold
85568d6040 iPod G3: Clock setup register display and CPU clock estimation in debug menu. * Fix clock being set to only half of what it should be (introduced with clock setup changes for PP502x).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13844 a1c6a512-1295-4272-9138-f99709370657
2007-07-10 20:47:01 +00:00
Michael Sevakis
2e6723bcd2 Gigabeat: Squeeze down lcd_bitmap_transparent_part a bit. Let the compiler choose the registers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13829 a1c6a512-1295-4272-9138-f99709370657
2007-07-09 03:53:12 +00:00
Michael Sevakis
3233e9651a e200: Remove all that inlining in the display driver to get rid of the bloat. The functions are rarely called.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13824 a1c6a512-1295-4272-9138-f99709370657
2007-07-09 00:08:33 +00:00
Michael Sevakis
897c643991 Gigabeat: properly confined framebuffer copies and a few pendantic changes to lcd_yuv_blit. No difference full screen but quite a speedup to copy only the required bit: 534->1062 fps for 1/4 screen update using test_fps.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13821 a1c6a512-1295-4272-9138-f99709370657
2007-07-08 17:10:22 +00:00
Michael Sevakis
1bbd58e2d8 e200 lcd mashup: 1) Enable flipped and inverted mode. 2) Fully enable all power options so that LCD driver IC's visible display is shut down with backlight and make the Sleep option available 3) Better framebuffer copy routine in assembly that confines updates to the specified rectangle _and_ is faster than memcpy 4) Some other offhand changes out of preference.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13818 a1c6a512-1295-4272-9138-f99709370657
2007-07-08 13:02:52 +00:00
Jens Arnold
c6437185b7 Stop the crashes on some PP5022C targets (iPod Video, perhaps also Nano) introduced by the recent clock setup changes. Looks like some revisions of the chip don't reset the PLL_locked bit immediately after PLL setup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13810 a1c6a512-1295-4272-9138-f99709370657
2007-07-07 05:58:29 +00:00
Michael Sevakis
68f975be85 e200: Better power_off to lock the system down while waiting for PMU to cut power.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13809 a1c6a512-1295-4272-9138-f99709370657
2007-07-07 03:51:50 +00:00
Michael Sevakis
77789f0f8d Gigabeat: oops, forgot to set correct timer prescaler limit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13807 a1c6a512-1295-4272-9138-f99709370657
2007-07-06 22:08:07 +00:00
Michael Sevakis
4ae87c8b8a Gigabeat: Add timer functionality. Rework tick timer setup to be exactly 100Hz. Metronome should work now but some pcm changes are needed to have faster tocks work correctly (in the works).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13806 a1c6a512-1295-4272-9138-f99709370657
2007-07-06 21:36:32 +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
Michael Sevakis
391e944b8e Get rid of yellow plus an optimization I should have seen in the first place.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13794 a1c6a512-1295-4272-9138-f99709370657
2007-07-05 08:21:10 +00:00
Michael Sevakis
60efd38bbe Gigabeat: Use vectored IRQ mode interrupts and add a trap for unhandled ones.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13792 a1c6a512-1295-4272-9138-f99709370657
2007-07-05 07:14:24 +00:00
Jens Arnold
7b861eca95 More PP502x clock setup rework. This should fix the freezes on PP5020 once and for all. Enabled clock scaling for H10. * CPUFREQ_MAX changed to 78MHz * To be cleaned up soon.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13767 a1c6a512-1295-4272-9138-f99709370657
2007-07-03 00:42:42 +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
Jens Arnold
fe23dc8f15 Improved CPU clock setup for PP502x. PP5020 and PP5022 are not register compatible here, so define the PP5022 targets properly, and introduce a CPU_PP502x macro for easier family check. Improves stability on PP5020 (less freezing, tested with Mini G1) and reduces clock change penalty (500us on PP5020; uses the relock bit on PP5022).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13763 a1c6a512-1295-4272-9138-f99709370657
2007-07-02 05:16:40 +00:00
Michael Sevakis
1167e3c72f Accept FS#7134 - Sansa: external sd card support by Antonius Hellmann with some tweaks. All testers have given the green light. (Now for the RED ?? ;).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13741 a1c6a512-1295-4272-9138-f99709370657
2007-06-30 02:08:27 +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
Michael Sevakis
7fb0f71668 Gigabeat: Replace generic i2c driver with one that uses the CPU's builtin controller. Add some clocking registers to 'View I/O ports'.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13720 a1c6a512-1295-4272-9138-f99709370657
2007-06-26 02:11:30 +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
Michael Sevakis
0fd69f6cbb Gigabeat: Turn off more devices that aren't needed or not needed right away. Tests ok on my unit. Will check currents later.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13711 a1c6a512-1295-4272-9138-f99709370657
2007-06-25 13:31:21 +00:00
Michael Sevakis
f783617cbc Gigabeat: Audio tweak mishmash - Make sure zero crossing detection times out so the volume always gets updated. Make sure i2s is off at boot and set to proper mode before audio hardware is initialized. Make pausing pcm instant instead of waiting until the end of the current DMA transfer.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13706 a1c6a512-1295-4272-9138-f99709370657
2007-06-24 20:41:27 +00:00
Marcoen Hirschberg
df437152e2 only go into USB mode when the cradle is powered
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13695 a1c6a512-1295-4272-9138-f99709370657
2007-06-23 18:25:41 +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
8768ee82cc PP5024 (e200): There's more than one HI IRQ bit for enabling GPIO IRQs. Port A uses bit 32 and port F,H use bit 33. Please add futher GPIOx_IRQ/MASK defines and associations to pp5024.h as they are discovered. I guess the SD card patch will need a small update to properly detect insertion.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13647 a1c6a512-1295-4272-9138-f99709370657
2007-06-17 00:07:23 +00:00
Christian Gmeiner
f50bd1151a now back to green
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13624 a1c6a512-1295-4272-9138-f99709370657
2007-06-13 06:49:37 +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
Michael Sevakis
7a16069507 e200: Better sync of display enabling and display update. The display would be remain stale after being turned back on with no screen activity. Block out the fiddling with DMA when writing to driver framebuffer. Melts seem too rare to catch now. There seems to be no significant advantage from an appearance point of view to be meddling around with the transfer anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13582 a1c6a512-1295-4272-9138-f99709370657
2007-06-07 06:11:03 +00:00
Jonathan Gordon
9e7b3ca6c4 increase the SD stack.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13580 a1c6a512-1295-4272-9138-f99709370657
2007-06-07 03:24:10 +00:00
Michael Sevakis
21a4a87ca2 Accept FS#7178 - Sansa e200 FM tuner support by Ivan Zupan. Do the needed integration work into recording and the AS3514 audio driver. Do a little AS3514 fiq_record tweak to have it all work nicely from the start.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13573 a1c6a512-1295-4272-9138-f99709370657
2007-06-06 19:23:48 +00:00
Michael Sevakis
bcb8a884ee e200: Add recording. Just from MIC right now and FM integration will happen soon. Most every bit of weirdness is nescessary and no problems seem to exist that the retailos doesn't exhibit too (namely noise when LCD is on when recording from MIC).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13557 a1c6a512-1295-4272-9138-f99709370657
2007-06-05 07:03:30 +00:00
Karl Kurbjun
f863ba671e Commit part of FS7113: This adds proper LCD initialization to the gigabeat thanks to Alex Gerchanovsky
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13552 a1c6a512-1295-4272-9138-f99709370657
2007-06-04 14:07:26 +00:00
Michael Sevakis
ebe67b28e3 e200: Update the button init code to be more correct for using GPIO IRQs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13539 a1c6a512-1295-4272-9138-f99709370657
2007-06-03 15:17:01 +00:00
Michael Sevakis
5c32faad43 e200: Finally use GPIO IRQs for the buttons...it's IRQ enable bit 33 afterall and verified independently. There shouldn't now be a need to add tick tasks to monitor GPIO level status in other code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13538 a1c6a512-1295-4272-9138-f99709370657
2007-06-03 14:31:42 +00:00
Michael Sevakis
13067f6c71 e200: Use clocking set up by loader and skip setting the values for now. Change a DMA related register value and leave another alone. Seems to stop the melting screen and gives a speedup especially to video and graphics. If the former isn't quite fixed, the latter definitely works. Please don't enable frequency scaling for now as that will clobber the register values.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13531 a1c6a512-1295-4272-9138-f99709370657
2007-06-01 01:05:57 +00:00
Michael Sevakis
31df21c4f9 Bring buttons back to the e200 bootloader?
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13493 a1c6a512-1295-4272-9138-f99709370657
2007-05-25 22:41:44 +00:00
Jens Arnold
46b634fd57 Fix typo.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13486 a1c6a512-1295-4272-9138-f99709370657
2007-05-23 21:40:54 +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
e7075db2a7 e200: Use 16-16 L-R pairs when writing to the TX FIFO. Kill the channel swapping and clicks. Reduce number of FIQs. Should be adaptable to iPods and other PP targets in a few minutes work, eh?
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13463 a1c6a512-1295-4272-9138-f99709370657
2007-05-22 15:34:24 +00:00
Michael Sevakis
080d65f17b Fix some warnings regarding AUDIO_NUM_SOURCES being 0 which is the intent with no inputs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13452 a1c6a512-1295-4272-9138-f99709370657
2007-05-20 22:03:11 +00:00
Michael Sevakis
4a2ed72b5c Oops. That shouldn't have snuck in there.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13449 a1c6a512-1295-4272-9138-f99709370657
2007-05-20 20:29:53 +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
0037a1b648 add separate button defines for the Gigabeat remote control
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13442 a1c6a512-1295-4272-9138-f99709370657
2007-05-20 11:42:04 +00:00
Jens Arnold
705d2f879f Reset the pcm_paused flag in the PP FIQ as well to complement the fix for FS #7187. Now it also works on Mini G2.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13428 a1c6a512-1295-4272-9138-f99709370657
2007-05-19 20:37:12 +00:00