Commit graph

434 commits

Author SHA1 Message Date
Rafaël Carré
666f2e61f0 move lcd remote common declarations to lcd-remote.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31604 a1c6a512-1295-4272-9138-f99709370657
2012-01-07 18:34:09 +00:00
Rafaël Carré
2a5772a20c lcd-remote-target.h: remove more duplicates
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31603 a1c6a512-1295-4272-9138-f99709370657
2012-01-07 18:22:13 +00:00
Rafaël Carré
07ee1b3729 lcd-remote-target.h: remove duplicate declarations
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31602 a1c6a512-1295-4272-9138-f99709370657
2012-01-07 18:15:32 +00:00
Michael Sevakis
f860b57143 Coldfire: lcd_update call got dropped from dbg_hw_info. Replace.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31591 a1c6a512-1295-4272-9138-f99709370657
2012-01-06 16:20:26 +00:00
Michael Sevakis
302937e586 Coldfire: Fix alpha bitmap drawing from messing up the emac status register.
It failed to restore macsr to the expected default (FRAC/SAT) which caused DSP
functions like tone control filter calculation to fail (resulting in noise).
The FFT plugin was also affected.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31589 a1c6a512-1295-4272-9138-f99709370657
2012-01-05 23:00:14 +00:00
Rafaël Carré
e8f5c5439e coldfire: move debug-target.h content in .c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31563 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 06:33:54 +00:00
Rafaël Carré
393f427a11 dbg_hw_info(): remove duplicate prototypes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31560 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 05:29:30 +00:00
Rafaël Carré
b959497670 dbg_ports(): remove duplicate prototype
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31558 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 05:21:52 +00:00
Thomas Martitz
c1bd9b0361 Rework powermgmt to enable code re-use on appliation and sims.
* Introduce CONFIG_BATTERY_MEASURE define, to allow targets (application)
to break powermgmt.c's assumption about the ability to read battery voltage.
There's now additionally percentage (android) and remaining time measure
(maemo). No measure at all also works (sdl app). If voltage can't be measured,
then battery_level() is king and it'll be used for power_history and runtime
estimation.

* Implement target's API in the simulator, i.e. _battery_voltage(), so it
doesn't need to implement it's own powermgmt.c and other stubs. Now
the sim behaves much more like a native target, although it still
changes the simulated battery voltage quickly,

* Other changes include include renaming battery_adc_voltage() to
_battery_voltage(), for consistency with the new target functions and
making some of the apps code aware that voltage and runtime estimation
is not always available.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31548 a1c6a512-1295-4272-9138-f99709370657
2012-01-03 23:44:38 +00:00
Rafaël Carré
568c441fd8 usb-target.h: remove
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31498 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 18:44:55 +00:00
Rafaël Carré
bce42fdc31 usb_init_device(): move prototype to usb.h
Get rid of some usb-target.h files

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31487 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 18:43:41 +00:00
Boris Gjenero
14c2e677fd Make more local functions static.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31395 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 17:36:18 +00:00
Michael Sevakis
6a67707b5e Commit to certain names for cache coherency APIs and discard the aliases.
Wouldn't surprise me a bit to get some non-green.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31339 a1c6a512-1295-4272-9138-f99709370657
2011-12-17 07:27:24 +00:00
Michael Sevakis
09722dd28d thread.c includes gcc_extensions.h and thread-XXX.c files are includes inside thread.c therefore do not require their own.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31206 a1c6a512-1295-4272-9138-f99709370657
2011-12-10 20:47:59 +00:00
Boris Gjenero
8906b3e659 Convert remaining __attribute__((noreturn)) to NORETURN_ATTR.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31189 a1c6a512-1295-4272-9138-f99709370657
2011-12-09 16:13:03 +00:00
Boris Gjenero
59e71ee80c Introduce USED_ATTR wrapper for __attribute__((used)).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31188 a1c6a512-1295-4272-9138-f99709370657
2011-12-09 15:33:59 +00:00
Boris Gjenero
e4dbcc414b FS#12418 - Merge prototypes from ata-target.h files into new file ata-driver.h. After this change:
- ata.h is for users of ata.c
- ata-driver.h is for functions implemented by target-specific code and used by ata.c
- ata-target.h is for target-specific defines


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31182 a1c6a512-1295-4272-9138-f99709370657
2011-12-08 21:23:53 +00:00
Marcin Bukat
f4b74b269a MPIO HD300: vastly improve sound quality. This unfortunately means reverting r28797 which introduced poping noise
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30904 a1c6a512-1295-4272-9138-f99709370657
2011-11-05 14:01:22 +00:00
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
Marcin Bukat
8d3591ae80 HD200 - add support for remote in button_read_device()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27258 a1c6a512-1295-4272-9138-f99709370657
2010-07-03 20:20:42 +00:00
Marcin Bukat
971a6e9c94 HD200 - Setup codec as I2S master and enable recording
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27250 a1c6a512-1295-4272-9138-f99709370657
2010-07-02 21:09:28 +00:00
Marcin Bukat
a316ebe65b HD200 - use line transfers in lcd_grey_data. This gives ~25% speedup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26856 a1c6a512-1295-4272-9138-f99709370657
2010-06-15 10:41:43 +00:00
Marcin Bukat
cc6747ca5b HD200 - make USB bridge handling more correct
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26843 a1c6a512-1295-4272-9138-f99709370657
2010-06-14 10:42:41 +00:00
Jens Arnold
f053b0d606 Port greylib blitting optimisation to MPIO HD200. ISR speedup is ~10%; further speedup should be possible by using line transfers for accessing the greylib buffers. Thanks to Marcin Bukat for testing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26793 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 19:53:17 +00:00
Marcin Bukat
2d788744ae HD200 - clean up usb related functions
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26768 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 11:41:33 +00:00
Marcin Bukat
2f7bd4d993 HD200 - power_init() rework based on latest power consumption measurements
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26767 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 11:41:29 +00:00
Marcin Bukat
b45a2d433b HD200 - small cleanup in button_init_device()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26766 a1c6a512-1295-4272-9138-f99709370657
2010-06-11 11:41:24 +00:00
Marcin Bukat
12fa759aad HD200 - fix lcd power save command (not used currently)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26684 a1c6a512-1295-4272-9138-f99709370657
2010-06-08 09:44:17 +00:00
Torne Wuff
991e92fd3d New USB charging system, part 1 - API rework and user-visible setting update
1) "Charge during USB connection" option is now tristate: off/on/force. Currently "force" behaves just like "on", but in future it will allow charging even when it was not possible to positively identify a charger.

2) The H300 code has been adjusted to use the new system but there should be no functional differences, it already had the USB charging option and its USB/charging support is hardware controlled.

3) The Gigabeat S code has been adjusted to use the new system: the player now has the USB charging option, which wasn't previously available. The player will only charge at full speed when allowed to do so by a working USB host, so USB AC adapters won't work very well; however, they didn't work before either, so this is not a change in functionality.

4) The iPod Nano 2G code has been adjusted to use the new system: it already had the USB charging option. Using a USB AC adapter won't charge at full speed any more (it did before) - the old implementation was equivalent to the not-yet-implemented "force" option in the new system.

No other target should be affected. Support for the "force" mode and support for at least some other iPod models will come in a future commit :)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26570 a1c6a512-1295-4272-9138-f99709370657
2010-06-05 10:05:27 +00:00
Michael Sevakis
555ad6710f Threading: Split processor support code into respective target files. C files from /target/xxx are included into thread.c because of essential inlining and files are code, not declarations. Copyrights in each new file go to whoever implemented the first functional support.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26479 a1c6a512-1295-4272-9138-f99709370657
2010-06-02 12:45:36 +00:00
Jens Arnold
85fd2d8be9 Smaller & faster greylib blitting on iriver H1x0 and iAudio M5, based on the ARM version but using mulu.l for the bit shuffling. ISR speedup is ~10%.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26434 a1c6a512-1295-4272-9138-f99709370657
2010-05-31 19:56:21 +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
Marcin Bukat
6b5fc853b6 fix comments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26189 a1c6a512-1295-4272-9138-f99709370657
2010-05-20 12:12:27 +00:00
Marcin Bukat
f28187074b HD200 - increase sligtly wait states for lcd. This removes clicks in playback and lcd updates are fast anyway
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26188 a1c6a512-1295-4272-9138-f99709370657
2010-05-20 12:05:24 +00:00
Marcin Bukat
2d0d08220f HD200 - fix button readings afrer PLL settings change
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26186 a1c6a512-1295-4272-9138-f99709370657
2010-05-20 10:13:14 +00:00
Marcin Bukat
1102edb8f6 HD200 - fix PLL settings. This fixes looong standing bug heavily affecting performance
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26185 a1c6a512-1295-4272-9138-f99709370657
2010-05-20 08:24:04 +00:00
Marcin Bukat
38136345f6 HD200 - lm339 response time is at best 300 ns so adcclk can not be too high
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26158 a1c6a512-1295-4272-9138-f99709370657
2010-05-19 09:29:20 +00:00
Marcin Bukat
b627106392 HD200 - change how adc is scanned (inspired by amiconn)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26138 a1c6a512-1295-4272-9138-f99709370657
2010-05-18 12:29:21 +00:00
Maurus Cuelenaere
64f5033574 Do s/SWAP_WORDS/ATA_SWAP_WORDS/ to prevent namespace clashes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26111 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 15:15:38 +00:00
Marcin Bukat
db59e671cc HD200 - use optimised read&write routines from ata-as-coldfire.S and drop hd200 specyfic ata-as-hd200.S
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26106 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 13:08:50 +00:00
Marcin Bukat
a619caa833 Integrate byte swap of ata word into ata-as-coldfire.S
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26105 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 13:07:55 +00:00
Marcin Bukat
1a25eddaa7 HD200 - decrease wait states for lcd when boosted
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26103 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 12:36:33 +00:00
Marcin Bukat
cce9c17902 HD200 minor lcd asm routines adjustments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26102 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 12:34:59 +00:00
Michael Sevakis
4d04132c76 PCM bottom layer simplification. pcm_rec_peak_addr variable no longer has to be handled there. Driver can just return current pointer for recording peaks. A new define, HAVE_PCM_REC_DMA_ADDRESS, specifies that physical addresses are being used for recording and translation is needed before starting a new block. The drivers need not worry about aligning start and size nor should care if either will be zero. All this will be checked in the logical layer first.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25970 a1c6a512-1295-4272-9138-f99709370657
2010-05-12 14:05:36 +00:00
Nils Wallménius
aa1e471f9a Coldfire strlen, slight optimization pointed out by amiconn, eliminate some unconditionla branches by rearranging the code handling the head bytes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25968 a1c6a512-1295-4272-9138-f99709370657
2010-05-12 12:32:34 +00:00
Nils Wallménius
418c9eeb14 Faster assembler strlen for coldfire using the load-a-whole-word-and-test-i-for-nullbytes-at-one trick, benched 28% faster than the old version
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25959 a1c6a512-1295-4272-9138-f99709370657
2010-05-11 22:23:43 +00:00
Marcin Bukat
68da06f3dc HD200 - fix in asm optimised ATA reads&writes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25948 a1c6a512-1295-4272-9138-f99709370657
2010-05-11 11:35:58 +00:00
Marcin Bukat
fc330110c9 HD200 - Disable asm optimised reads as it showed to be broken. Enable asm optimised writes. test_disk was failing because of broken read routine.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25931 a1c6a512-1295-4272-9138-f99709370657
2010-05-10 13:24:44 +00:00
Marcin Bukat
4fad74e6f6 HD200 - Remove checks if driver is initialized. lcd_init_device() is always called first.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25928 a1c6a512-1295-4272-9138-f99709370657
2010-05-10 12:36:58 +00:00
Marcin Bukat
45c2a6d314 HD200 - Reduce wait states when writing to lcd.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25927 a1c6a512-1295-4272-9138-f99709370657
2010-05-10 12:36:27 +00:00
Marcin Bukat
684c70bac5 HD200 - fix stupid bug in lcd_grey_data
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25842 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 14:33:19 +00:00