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
Marcin Bukat
6a2b516f48
HD200 - fix random partition corruption on USB unplug (hopefully)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25807 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 12:25:57 +00:00
Marcin Bukat
bccdcf2003
HD200 - move adc channel variable to iram as it is used in ISR
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25805 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 11:15:36 +00:00
Marcin Bukat
5ad4d138d7
HD200 - fix backlight flashes during startup
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25804 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 11:14:59 +00:00
Jens Arnold
e891e90883
Save a few instructions by better use of conditions.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25786 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 19:36:20 +00:00
Marcin Bukat
88baa4d4c7
HD200 - implement blit functions
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25767 a1c6a512-1295-4272-9138-f99709370657
2010-04-30 14:13:52 +00:00