summaryrefslogtreecommitdiff
path: root/firmware/target/coldfire
AgeCommit message (Collapse)Author
2007-10-17Coldfire: Partially revert buffered writes, and enable them explicitly for ↵Jens Arnold
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-15Coldfire targets: enable buffered writes by default. Speeds up all sorts of ↵Jens Arnold
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-15Fix coldfire PCF50606 I2C driver, and iriver FM radio I2C driver. Both ↵Jens Arnold
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-14H300, X5: Optimised lcd_yuv_blit(), using line-pair zig-zag writing to the ↵Jens Arnold
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-06Unify PCM interface just above the hardware driver level for all targets ↵Michael Sevakis
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-02Thanks to LinusN, fix Coldfire bootloaders not booting - FS#7533Steve Bavin
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14949 a1c6a512-1295-4272-9138-f99709370657
2007-09-04FS #7691 - improved USB detection on PP devices. This patch modifies the ↵Dave Chapman
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-08-17H300: Read battery voltage with 10bit precision.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14379 a1c6a512-1295-4272-9138-f99709370657
2007-08-17First step of powermanagement rework: * Move target specific stuff into ↵Jens Arnold
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-14Moved archos power handling into target tree. * Tuner power handling cleaned ↵Jens Arnold
up a bit. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14345 a1c6a512-1295-4272-9138-f99709370657
2007-08-12Enable a lot more features for simulators and add stubs where necessary, ↵Nils Wallménius
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-07-31Straignten out some issues with HAVE_LCD_ENABLE. 1g/2g/3g had it defined but ↵Michael Sevakis
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-30H1x0, H300: Get rid of the adc tick, and use the same concept as the iAudio ↵Jens Arnold
ADC driver. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14079 a1c6a512-1295-4272-9138-f99709370657
2007-07-28Scroll on main and remote with a single thread. Change the way system ↵Michael Sevakis
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-26Fix red bootloader builds. * Fix non-working PP5022 bootloaders. Also define ↵Jens Arnold
correct IRAM size for PP5022/PP5024 bootloaders. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14015 a1c6a512-1295-4272-9138-f99709370657
2007-07-19Slight speedup for iAudio remote LCD update when the CPU isn't boosted.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13932 a1c6a512-1295-4272-9138-f99709370657
2007-07-14Do some planned radio interface cleanup since adding in the LV24020LP.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13880 a1c6a512-1295-4272-9138-f99709370657
2007-07-05Temporary fix for FS#7257 and FS#7261 - playback resumes while paused when ↵Robert Keevil
seeking git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13795 a1c6a512-1295-4272-9138-f99709370657
2007-07-02H1x0: Increase delay during button reads. Hopefully fixes the scroll down ↵Magnus Holmgren
problem (see forum thread 11081.0). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13765 a1c6a512-1295-4272-9138-f99709370657
2007-06-27Forget all the nonsense with C delay loops. 'volatile' on the variable makes ↵Michael Sevakis
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-26Fix up the ACK generation in the Coldfire i2c driver.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13722 a1c6a512-1295-4272-9138-f99709370657
2007-06-25Simple coldfire assembly strlen() function, 20-25% faster than the c Nils Wallménius
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-19Fix iriver H100 i2c driver which was broken by the switch to build with -Os. ↵Nils Wallménius
Fixes FS#7316 and FS#7321 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13676 a1c6a512-1295-4272-9138-f99709370657
2007-06-08Straighten out some audio path APIs and misc. audio stuff. Having recording ↵Michael Sevakis
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-05-23Allow ColdFire targets to be buildt with GCC >= 4.1.0. Magnus Holmgren
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13481 a1c6a512-1295-4272-9138-f99709370657
2007-05-20Use bitmasks to define which inputs are available. Makes it easier to remove ↵Michael Sevakis
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-19always reset the pcm_paused flag when stopping playback. fixes FS #7187Marcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13423 a1c6a512-1295-4272-9138-f99709370657
2007-04-21Coldfire targets: Adjusted PLL settings (lowest possible VCO clock for each ↵Jens Arnold
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-18H100 S/PDIF recording: Check and clear the correct interrupt bits when ↵Michael Sevakis
recording from digital in. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13198 a1c6a512-1295-4272-9138-f99709370657
2007-04-13Portal Player: Add invalidate_icache and flush_icache. Flush the cache on ↵Michael Sevakis
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-12Moved archos backlight code to target tree. Changed old mutlivalue ↵Jens Arnold
CONFIG_BACKLIGHT to a simple HAVE_BACKLIGHT. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13136 a1c6a512-1295-4272-9138-f99709370657
2007-04-11Moved archos USB handling to target tree. Minor simplification for coldfire ↵Jens Arnold
(only one usb-target.h). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13110 a1c6a512-1295-4272-9138-f99709370657
2007-04-10mpegplayer: Get A-V synchronized. Improve frame sync and dropping logic and ↵Michael Sevakis
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-03-29Missed one variable declaration updating byteswapping functions. Not ↵Michael Sevakis
functionally different but keeps things consistent. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12965 a1c6a512-1295-4272-9138-f99709370657
2007-03-29Fix errors. What an errant keystroke when saving can accomplish.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12957 a1c6a512-1295-4272-9138-f99709370657
2007-03-29Add an asm swap_odd_even32 to SH and ARM. Have the byteswapping functions ↵Michael Sevakis
take and return intxx_t data types. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12956 a1c6a512-1295-4272-9138-f99709370657
2007-03-25Save a couple bytes in set_irq_level on Coldfire. Should add up to something.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12912 a1c6a512-1295-4272-9138-f99709370657
2007-03-20More logf fixes. speex.c wants to format 64bit args so I didn't change that ↵Michael Sevakis
one nor add any formatting for that. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12858 a1c6a512-1295-4272-9138-f99709370657
2007-03-19Rrrr. Editor shouldn't have left those tabs. Will check settings.Michael Sevakis
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12845 a1c6a512-1295-4272-9138-f99709370657
2007-03-19SWCODEC: Get rid of extra swap buffer and get back 512K of RAM or 100K if ↵Michael Sevakis
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-15Fixed backlight voltage for M5. Now the backlight is as bright as in the ↵Jens Arnold
original firmware. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12787 a1c6a512-1295-4272-9138-f99709370657
2007-03-14x5/M5: Finally get rid of filter selection aberrations when switching to ↵Michael Sevakis
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-13H100 Series: Fix FS#6810 - Distortion on Bass/Treble usage. Coldfire PCM ↵Michael Sevakis
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-11Squeeze the serial number code down a few more bytes and call it a day. Will ↵Michael Sevakis
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-11Fix a late error that only let it read at default CPU frequency. Disable ↵Michael Sevakis
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-11iAudio X5: Enable reading of DS2411 serial number. See it under ↵Michael Sevakis
System|Debug|View HW info. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12723 a1c6a512-1295-4272-9138-f99709370657
2007-03-11Audio Init: Just can't stand that heirarchy. Add one level of abstraction. ↵Michael Sevakis
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-11Reenable aynchronous audio init stage. Really just single stage with ↵Michael Sevakis
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-07Coldfire targets: Shuffle IRQ levels around to have all interaction between ↵Michael Sevakis
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-05Add extra filtering to the X5 and M5 button drivers to prevent erratic ↵Jens Arnold
button events (ported from H300). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12627 a1c6a512-1295-4272-9138-f99709370657