Commit graph

366 commits

Author SHA1 Message Date
Michael Sevakis
4db3e89652 Shuffle some functions around so that interfacing with playback.c in particular isn't required. Though playback does finish the audio init, pcm doesn't care who does it.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30403 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 12:15:43 +00:00
Michael Sevakis
a2b6703a36 Commit FS#12150 - Fully-functional audio mixer - and finally whip old limitations about playback of voice and other sounds when paused. Channels are independent in state and amplitude. Fade on stop/pause is handled by the channel's volume control rather than global volume which means it now works from anywhere. Opens up the possibility of plugin sounds during music playback by merely adding an additional channel enum. If any PCM drivers were not properly modified, see one of the last comments in the task for a description of the simple change that is expected. Some params are tunable in firmware/export/pcm-mixer.h as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30097 a1c6a512-1295-4272-9138-f99709370657
2011-06-29 06:37:04 +00:00
Jens Arnold
91ce4b2a60 Optional dual-boot support in iAudio X5 and M5 bootloader, based on FS#5289.
In order to enable it, #define HAVE_DUALBOOT when building the bootloader.
Do not use the automatically created x5_fw.bin or m5_fw.bin, but use mkboot
to create a new firmware file from an OF x5_fw.bin resp. m5_fw.bin and
bootloader.bin.

The dual-boot bootloader boots the OF when pressing Play (main or remote) for
more than 3 seconds. Hold it a bit longer because the OF also checks buttons.
Short press boots rockbox.

As a bonus, the Play button read (for hold check) is done a bit earlier for
single-boot mode as well.



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30018 a1c6a512-1295-4272-9138-f99709370657
2011-06-19 17:23:18 +00:00
Michael Sevakis
d4800fa385 Coldfire: Fix the modification of IMR. Interrupts must be masked at the core level at at least the level of the interrupt being masked. Not following the datasheet and relying strictly on and/or_l causes unhandled 'Levelx' exceptions (showing itself quite often in PCM mixer work which more greatly stresses PCM lockout).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30009 a1c6a512-1295-4272-9138-f99709370657
2011-06-17 03:09:47 +00:00
Marcin Bukat
dceceef052 Move dbg_hw_info() into target tree. FS#11735 by me
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29964 a1c6a512-1295-4272-9138-f99709370657
2011-06-05 10:26:06 +00:00
Jens Arnold
304312dc2f iAudio boot: Unify common macro values
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29955 a1c6a512-1295-4272-9138-f99709370657
2011-06-04 19:17:06 +00:00
Bertrik Sikken
9c33dca647 Fix tabs in .c and .h files in firmware/
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29832 a1c6a512-1295-4272-9138-f99709370657
2011-05-08 11:37:18 +00:00
Bertrik Sikken
55a7a31ce3 Split off target-specific parts from firmware/drivers/serial.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29768 a1c6a512-1295-4272-9138-f99709370657
2011-04-23 08:23:07 +00:00
Andree Buschmann
5d849a963e Clean up multiple definitions of RAM size. Remove -DMEM (make) and MEM (code), use the already defined MEMORYSIZE instead.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29189 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 17:43:32 +00:00
Michael Sevakis
18770dac2e Use __builtin_constant_p() to select the best byteswapping method: constant or target optimized. Same macro can then be used for constant values and inits as well as non-constant.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29171 a1c6a512-1295-4272-9138-f99709370657
2011-01-30 00:58:45 +00:00
Nils Wallménius
54424fa616 Fix warning when linking booltoaders with the new toolchain by marking .bss section NOLOAD, thanks for gevaerts for testing on his x5.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29037 a1c6a512-1295-4272-9138-f99709370657
2011-01-12 21:24:44 +00:00
Marcin Bukat
906d2f08ed HD300 - calibrate discharge curve
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28998 a1c6a512-1295-4272-9138-f99709370657
2011-01-07 21:33:06 +00:00
Michael Sparmann
9339be1279 Rework ATA driver to get rid of lots of target-specific constants and allow for non-memory-mapped task file registers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28950 a1c6a512-1295-4272-9138-f99709370657
2011-01-02 22:51:47 +00:00
Nils Wallménius
b8bf7cb5ed Move codfire inline asm into cpu specific file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28910 a1c6a512-1295-4272-9138-f99709370657
2010-12-27 10:22:39 +00:00
Marcin Bukat
dddab54151 HD300 - Fix bootloader freeze introduced in r28799. DMA transfer hangs for some reason when cpu runs @11MHz in bootloader.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28867 a1c6a512-1295-4272-9138-f99709370657
2010-12-20 21:13:27 +00:00
Marcin Bukat
b6499f846a fix typo, thanks to Luka_S for catching this
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28846 a1c6a512-1295-4272-9138-f99709370657
2010-12-16 22:38:59 +00:00
Marcin Bukat
21955350b4 HD300 - hacky workaround which makes USB bridge work in rockbox
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28845 a1c6a512-1295-4272-9138-f99709370657
2010-12-16 22:07:07 +00:00
Marcin Bukat
8e1021bd4c HD300 - further speedup of lcd_update() by utilizing DMA transfer when unboosted. The gain is 438 -> 728 fps @ 45MHz.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28799 a1c6a512-1295-4272-9138-f99709370657
2010-12-11 23:55:14 +00:00
Marcin Bukat
3eee12ed23 HD300 - tweak lcd_update() (4-5% speedup)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28797 a1c6a512-1295-4272-9138-f99709370657
2010-12-11 22:36:28 +00:00
Marcin Bukat
18accc018b HD300 - do not handle scrollstrip events when hold is on
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28782 a1c6a512-1295-4272-9138-f99709370657
2010-12-10 15:12:16 +00:00
Marcin Bukat
0358e7b864 MPIO HD200, HD300: Make USB bridge handling more correct (this doesn't solve problems with USB inside rockbox on HD300 unfortunately).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28780 a1c6a512-1295-4272-9138-f99709370657
2010-12-09 11:31:08 +00:00
Marcin Bukat
a63cf502bc Add HD300 button defines for system_exception_wait()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28715 a1c6a512-1295-4272-9138-f99709370657
2010-12-01 09:36:53 +00:00
Marcin Bukat
db1e051bf0 HD300 - decrease touchstrip sensitivity
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28707 a1c6a512-1295-4272-9138-f99709370657
2010-11-29 13:28:28 +00:00
Marcin Bukat
aa2abed587 MPIO - drop wait states for LCD access
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28706 a1c6a512-1295-4272-9138-f99709370657
2010-11-29 13:28:22 +00:00
Marcin Bukat
4cbab5508f HD300 - add missing i2c initializtion.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28685 a1c6a512-1295-4272-9138-f99709370657
2010-11-27 14:23:10 +00:00
Marcin Bukat
9a24892e2e MPIO HD300 - initial commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28680 a1c6a512-1295-4272-9138-f99709370657
2010-11-26 23:28:08 +00:00
Marcin Bukat
123bebeada MPIO: move files a bit in preparation for HD300 port
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28567 a1c6a512-1295-4272-9138-f99709370657
2010-11-12 21:52:29 +00:00
Marcin Bukat
df1ec391ff fix yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28524 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 15:04:33 +00:00
Marcin Bukat
8a16f1ba00 fix yellow and red from r28522
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28523 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 14:49:53 +00:00
Marcin Bukat
b8a7f5137b move dbg_ports() from apps/menu_debug.c to target tree. FS#11712 by me.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28522 a1c6a512-1295-4272-9138-f99709370657
2010-11-06 14:24:25 +00:00
Marcin Bukat
59ba8fea22 MPIO HD200: rename button defines to adhere how they are labeled on the device.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28443 a1c6a512-1295-4272-9138-f99709370657
2010-11-02 10:44:34 +00:00
Marcin Bukat
082c7d3c6b Set svn properties
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28326 a1c6a512-1295-4272-9138-f99709370657
2010-10-22 12:28:43 +00:00
Marcin Bukat
c35eea508f MPIO HD200 - revert change in crt0.S introduced in r28270 to get rid of strange noise produced by buttons on startup
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28325 a1c6a512-1295-4272-9138-f99709370657
2010-10-22 12:12:24 +00:00
Marcin Bukat
38edf679f2 MPIO HD200 - squash long standing bug in bootloader which prevented booting OF if doing coldstart on battery only.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28324 a1c6a512-1295-4272-9138-f99709370657
2010-10-22 12:11:58 +00:00
Marcin Bukat
d793a971d8 HD200 - GPIO57 is headphone output enable. Proper handling of this line fixes hissing noise after startup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28270 a1c6a512-1295-4272-9138-f99709370657
2010-10-13 20:35:58 +00:00
Rafaël Carré
66f8fb52a9 */app.lds: remove STUBOFFSET
This is related to gdb, and gdb can only work on SH and ifp
This was mistakenly kept when app.lds was forked for each SoC
Side-effect: fix DEBUG builds when the rockbox binary is expected to
be loaded at the start of DRAM and there is no runtime relocation

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28124 a1c6a512-1295-4272-9138-f99709370657
2010-09-20 17:09:55 +00:00
Thomas Martitz
dd5dd8cfd9 Rename cache coherency functions.
The old cache coherency function names where wrong and misleading.
The new names are (purposely different from vendor manuals)
*  commit_* (write-back only)
*  discard_* (removing lines from cache only)
*  commit_discard_* (write-back and removing lines from cache)

It's suspected the old names have led to wrong uses. The old names still exist
(as aliases) so every call via the old names need to be double checked and changed
to the new name.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28045 a1c6a512-1295-4272-9138-f99709370657
2010-09-08 17:05:49 +00:00
Thomas Martitz
0e2286f226 Introduce NORETURN_ATTR wrapper for __attribute__((noreturn)), using this and a bit further cleanup in main gets rid of a warning when compiling for android.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27788 a1c6a512-1295-4272-9138-f99709370657
2010-08-12 13:38:25 +00:00
Marcin Bukat
a86b08e4fa HD200 - Use DMA transfers in lcd_update() and lcd_update_rect(). Gives 12-26% speedup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27757 a1c6a512-1295-4272-9138-f99709370657
2010-08-08 18:41:19 +00:00
Bertrik Sikken
befffc877d More minor const/static/include fixes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27652 a1c6a512-1295-4272-9138-f99709370657
2010-08-01 11:10:39 +00:00
Marcin Bukat
59ded69c96 HD200: Add timeout in usb_enable(false) to prevent infinite loop when something goes wrong.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27468 a1c6a512-1295-4272-9138-f99709370657
2010-07-17 11:38:47 +00:00
Marcin Bukat
5b5275a6c9 HD200: Change move.w -> move.b in lcd-as-hd200.S when doing transfers to lcd to explicity show that lcd bus is 8bits wide.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27445 a1c6a512-1295-4272-9138-f99709370657
2010-07-16 07:24:08 +00:00
Jens Arnold
701dafdf30 MPIO HD200 grey blitting: Use line reads for the pixel values as well. Almost doubles the ISR speed (47% -> 24% load), giving 42% faster greylib framebuffer updates.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27444 a1c6a512-1295-4272-9138-f99709370657
2010-07-16 07:08:39 +00:00
Marcin Bukat
d367ab41e3 HD200 - calibrate battery indicator based on measurements and battery_benches
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27350 a1c6a512-1295-4272-9138-f99709370657
2010-07-08 16:53:09 +00:00
Marcin Bukat
60d8cff4f6 HD200 - fix misleading comment in system-hd200.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27328 a1c6a512-1295-4272-9138-f99709370657
2010-07-07 07:09:53 +00:00
Marcin Bukat
f99e4fb3bf HD200 - turn off charging IC by default
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27315 a1c6a512-1295-4272-9138-f99709370657
2010-07-06 17:30:05 +00:00
Marcin Bukat
3cdee0f09b HD200 - Fix GPIO setup in button_init_device()- this change fixes sound output broken in r27258. Slightly adjust main buttons reading routine so key reading is more reliable with and without remote present
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27307 a1c6a512-1295-4272-9138-f99709370657
2010-07-06 14:44:41 +00:00
Marcin Bukat
7c908bbeda HD200 - more work on remote handling
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27306 a1c6a512-1295-4272-9138-f99709370657
2010-07-06 14:43:58 +00:00
Marcin Bukat
6e40988803 HD200 - Increase ADC clock when boosted. Scan all 4 ADC channels during system tick
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27262 a1c6a512-1295-4272-9138-f99709370657
2010-07-03 21:44:49 +00:00
Marcin Bukat
66381088e7 HD200 - add missed defines for remote buttons and remote_button_hold() function prototype in button-target.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27259 a1c6a512-1295-4272-9138-f99709370657
2010-07-03 20:54:02 +00:00