Commit graph

116 commits

Author SHA1 Message Date
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