Commit graph

252 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
Thomas Martitz
d0b72e2590 GSoC/Buflib: Add buflib memory alocator to the core.
The buflib memory allocator is handle based and can free and
compact, move or resize memory on demand. This allows to effeciently
allocate memory dynamically without an MMU, by avoiding fragmentation
through memory compaction.

This patch adds the buflib library to the core, along with
convinience wrappers to omit the context parameter. Compaction is
not yet enabled, but will be in a later patch. Therefore, this acts as a
replacement for buffer_alloc/buffer_get_buffer() with the benifit of a debug
menu.

See buflib.h for some API documentation.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30380 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 14:01:33 +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
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
Michael Sevakis
12375d1d3a Merge functionality of wakeups and semaphores-- fewer APIs and object types. semaphore_wait takes a timeout now so codecs and plugins have to be made incompatible. Don't make semaphores for targets not using them.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29492 a1c6a512-1295-4272-9138-f99709370657
2011-03-02 08:49:38 +00:00
Karl Kurbjun
4d12904439 M:Robe 500: Use bit modifiers more.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29247 a1c6a512-1295-4272-9138-f99709370657
2011-02-08 05:53:30 +00:00
Karl Kurbjun
a014191e5e Fix battery charging.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29246 a1c6a512-1295-4272-9138-f99709370657
2011-02-08 05:51:18 +00:00
Karl Kurbjun
37e2c9c313 DM320: Fix app.lds to reduce binary image size.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29240 a1c6a512-1295-4272-9138-f99709370657
2011-02-07 04:55:31 +00:00
Karl Kurbjun
a6223468eb Keep the clocks enabled once the LCD DMA transfer completes. It kills the PCM driver if they are disabled.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29238 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 21:09:03 +00:00
Karl Kurbjun
c3142e22ea Remove reference to pin setup function.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29236 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 21:01:45 +00:00
Karl Kurbjun
8f80adf4d7 Remove some initializations that are taken care of in the bootloader or crt0 setup. Agressive timings are #if 0'd since they are unstable, but may later be added to board setup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29235 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:58:58 +00:00
Karl Kurbjun
9a20d60bfb DM320 SPI: Add a bunch of updates to the SPI driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29234 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:54:50 +00:00
Karl Kurbjun
acffca89a9 M:Robe 500 USB: Remove EMIF and pin initialization.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29233 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:47:39 +00:00
Karl Kurbjun
fdc05276fe M:Robe 500 Power: Remove pin initializations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29232 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:46:37 +00:00
Karl Kurbjun
916a9f0969 M:Robe 500 Backlight: Add setup based on OF - purpose of operations are a mystery, but needed when loading from flash.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29231 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:44:57 +00:00
Karl Kurbjun
f65365fc75 M:Robe 500 ADC: Remove pin initializations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29230 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:41:49 +00:00
Karl Kurbjun
e932ceb78a M:Robe 500 ATA: Remove pin initializations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29229 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:37:22 +00:00
Karl Kurbjun
161f4465db DM320: Clock source selection for timer happens in bootloader.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29228 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:36:00 +00:00
Karl Kurbjun
52f985ef6c DM320 UART: Remove more pin initializations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29227 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:34:13 +00:00
Karl Kurbjun
ff5d8ca522 Fix ZVM build.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29226 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:26:33 +00:00
Karl Kurbjun
9a8ff746f2 DM320: Update boot linker script (right now it is linked against flash). Include board initialization for M:Robe 500.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29225 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:17:15 +00:00
Karl Kurbjun
9241210050 DM320: Re-write of crt0.S and update to app linker script.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29224 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:10:45 +00:00
Karl Kurbjun
02dbde7097 M:Robe 500: Add a bunch of updates for the LCD. Remove some pin initializations and disable clocks when DMA is complete.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29223 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 20:06:10 +00:00
Karl Kurbjun
50c547c640 M:Robe 500 and TSC2100: Add more to the initialization. Some GPIO initializations are now removed - this will be hanled by the OF or bootloader (when loading from flash).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29220 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 19:33:40 +00:00
Karl Kurbjun
fafd50938c DM320 DSP PCM handler: Use initialization library to make sure that code starts up reliably. Also make some variables volatile so code can be easier debugged.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29219 a1c6a512-1295-4272-9138-f99709370657
2011-02-06 19:28:46 +00:00
Andree Buschmann
adf7224538 Fix red. Replace remaining MEM's mit MEMORYSIZE.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29190 a1c6a512-1295-4272-9138-f99709370657
2011-02-02 17:55:04 +00:00
Michael Sevakis
71651cacb6 Fix r29053 red and a leftover use of 'usb' variable as a bool rather than int in main-pp.c.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29054 a1c6a512-1295-4272-9138-f99709370657
2011-01-15 08:52:59 +00:00
Michael Sevakis
3a1127785b Bootloader USB mode for PP502x. Enable only on GoGear SA9200 for the time being. Add HAVE_BOOTLOADER_USB_MODE to config if BOOTLOADER is defined to enable it. Clean up some kernel stuff a little to support it. Mess up a bunch of other stuff (hopefully not too badly).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29053 a1c6a512-1295-4272-9138-f99709370657
2011-01-15 08:19:30 +00:00
Michael Sparmann
6f40387e74 Fix yellow
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28952 a1c6a512-1295-4272-9138-f99709370657
2011-01-02 23:09:01 +00:00
Michael Sparmann
1a1fc09863 Fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28951 a1c6a512-1295-4272-9138-f99709370657
2011-01-02 23:02:55 +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
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
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
Rafaël Carré
bc4b5366cd firmware/ : use lcd_putsf() (only in debug code)
ata-meg-fx: use unsigned line number, so % (modulo) is optimized
tcc7*: use proper printf format and remove casting

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27935 a1c6a512-1295-4272-9138-f99709370657
2010-08-28 23:12:11 +00:00
Thomas Martitz
87409a2619 Move memset6() declaration to string-extra.h, kills a warning compiling for android since it ships a memory.h.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27789 a1c6a512-1295-4272-9138-f99709370657
2010-08-12 13:55:01 +00:00
Bertrik Sikken
76f4c02dc5 Various minor clean-ups for mrobe
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27639 a1c6a512-1295-4272-9138-f99709370657
2010-07-31 13:41:06 +00:00
Bertrik Sikken
4a8ea6c9d9 Various minor clean-ups for Zen Vision
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27636 a1c6a512-1295-4272-9138-f99709370657
2010-07-31 12:43:38 +00:00
Rafaël Carré
c0bd4173aa Make sure files which aren't windows-specific use \n line endings only
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26893 a1c6a512-1295-4272-9138-f99709370657
2010-06-17 16:59:51 +00:00
Rafaël Carré
7c055d9648 ata-creative-zvm: make sure return value is defined
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26771 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 11:52:50 +00:00
Michael Sevakis
1f5b9434da Cleanup r26253 red and yellow.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26254 a1c6a512-1295-4272-9138-f99709370657
2010-05-24 16:57:48 +00:00
Michael Sevakis
d56999890f Make PCM->driver interface about as simple as it will get. Registered callback, zero data, alignment and stops are handled entirely inside pcm.c; driver merely calls fixed pcm.c callback. Remove pcm_record_more and do it just like playback; the original reason behind it isn't very practical in general. Everything checks out on supported targets. There wer some compat changes I can't check out on many unsupoorted but if there's a problem it will be a minor oops. Plugins become incompatible due to recording tweak-- full update. Sorted API.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26253 a1c6a512-1295-4272-9138-f99709370657
2010-05-24 16:42:32 +00:00
Thomas Martitz
d67bf4c858 Fix last sprintf warning.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25859 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 22:54:40 +00:00
Thomas Martitz
55e4fe73cc Fix the remaining reds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25858 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 22:33:57 +00:00
Thomas Martitz
50a6ca39ad Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes).
This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:04:40 +00:00
Rafaël Carré
f2f34881ec Remove pcm_mute() which has been unused since r19308
Remove audiohw_mute from header as well, and make this function static
to each driver (commented out when it was unused)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25733 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 00:05:02 +00:00
Karl Kurbjun
b9fa116703 DM320 UART: Enable clock in UART module since it will not be done in system initialization.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25716 a1c6a512-1295-4272-9138-f99709370657
2010-04-25 16:14:02 +00:00
Karl Kurbjun
b15b7fac7e M:Robe 500 Power: Update battery Curve and simplify calculations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25715 a1c6a512-1295-4272-9138-f99709370657
2010-04-25 16:11:49 +00:00
Karl Kurbjun
967e16f7c9 M:Robe 500 USB: Go back to OF timings for upcoming clock changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25714 a1c6a512-1295-4272-9138-f99709370657
2010-04-25 16:10:19 +00:00
Torne Wuff
62321ed0bd Make ATA code not bother to retry requests that return IDNF (specified sector not valid).
There's no point retrying these requests for five seconds, the sector number isn't going to get any more valid. It interferes with being able to detect broken drives like the 5.5G 80GB iPod's.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25525 a1c6a512-1295-4272-9138-f99709370657
2010-04-07 20:01:21 +00:00
Karl Kurbjun
bda2e6d675 M:Robe 500 - Improve YUV blit speed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25228 a1c6a512-1295-4272-9138-f99709370657
2010-03-17 01:44:20 +00:00