Commit graph

2579 commits

Author SHA1 Message Date
Andree Buschmann
21b89aab5a Save some binsize in LCD driver of iPod nano 2G. No impact to speed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28938 a1c6a512-1295-4272-9138-f99709370657
2011-01-01 19:25:09 +00:00
Andree Buschmann
bf3a1bed96 Submit FS11782: Use faster DRAM timings in unboosted state for S5L870x. DRAM read +8%, DRAM write +37%, DRAM copy +25% faster.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28935 a1c6a512-1295-4272-9138-f99709370657
2010-12-30 20:23:46 +00:00
Andree Buschmann
3f01a82af0 Submitted the wrong file with r28933.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28934 a1c6a512-1295-4272-9138-f99709370657
2010-12-30 15:46:39 +00:00
Andree Buschmann
397215dae9 Major speedup of iPod nano 2G. Part 7: Disable reading FIFO state in YUV blitting. Speedup is +19% for YUV.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28933 a1c6a512-1295-4272-9138-f99709370657
2010-12-30 15:23:36 +00:00
Andree Buschmann
b04d676706 Speed up of iPod nano 1G and iPod color LCD. Use HDD6330 asm part for YUV blitting, introduce special handling for full width screen updates. Speed up is about +30% for YUV on both color/nano1G.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28930 a1c6a512-1295-4272-9138-f99709370657
2010-12-29 23:17:47 +00:00
Michael Sevakis
65850011cc Gigabeat S: Do simple direct keypad scanning rather than triggering a separate scan interrupt and it all does the same thing but with 1 tick less latency.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28926 a1c6a512-1295-4272-9138-f99709370657
2010-12-29 18:20:31 +00:00
Fred Bauer
e541c98a7e revert r28834 because it causes problems with uSD
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28925 a1c6a512-1295-4272-9138-f99709370657
2010-12-29 16:07:15 +00:00
Bertrik Sikken
92b849d3bf Apply FS#11798 (Files in MicroSD card aren't being shown in File Browser or Database on Clip+) by Will Sowerbutts
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28903 a1c6a512-1295-4272-9138-f99709370657
2010-12-26 12:55:28 +00:00
Frank Gevaerts
303aefc406 Make usb_detect() return USB_UNPOWERED instead of USB_EXTRACTED. Without that, not all needed disconnect handling is done in usb.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28874 a1c6a512-1295-4272-9138-f99709370657
2010-12-21 17:24:00 +00:00
Andree Buschmann
e91091b530 Major speedup of iPod nano 2G. Part 6: Use faster LCD interface configuration. Tested for LDS and ILI type displays. Speedup is +99% for RGB and +5% for YUV.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28868 a1c6a512-1295-4272-9138-f99709370657
2010-12-21 06:59:17 +00:00
Andree Buschmann
d215eb7c70 iPod nano 2G: Use LCD_PHTIME = 0x22 for both LDS and ILI type of displays. Significantly improves speed on ILI type (factor of ~2.5x).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28861 a1c6a512-1295-4272-9138-f99709370657
2010-12-19 21:22:31 +00:00
Andree Buschmann
8205e54abd iPod nano2g ILI type LCD displays need big endian configuration for the LCD interface.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28858 a1c6a512-1295-4272-9138-f99709370657
2010-12-19 19:06:55 +00:00
Michael Sparmann
22d790bd12 Fix headphone detection on iPod Nano 2G being inverted (regression from r28800)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28843 a1c6a512-1295-4272-9138-f99709370657
2010-12-16 19:54:24 +00:00
Szymon Dziok
90e8dc8f6b HDD6330: implement lcd_set_flip() function.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28839 a1c6a512-1295-4272-9138-f99709370657
2010-12-15 22:06:51 +00:00
Fred Bauer
279dff1c21 FS#11765: Improve AMSv1 Battery Life by Lowering CPU and Peripheral clocks. Unboosted CPU and peripheral clock is now 31MHz. Boosted CPU and pclk are 186MHz and 62MHz, respectively.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28834 a1c6a512-1295-4272-9138-f99709370657
2010-12-14 22:08:43 +00:00
Szymon Dziok
703db94de6 HDD6330: speedup lcd_blit_yuv() function (~4%).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28828 a1c6a512-1295-4272-9138-f99709370657
2010-12-13 23:51:48 +00:00
Andree Buschmann
c43fb3cf1b Add short sleep after wakeup of LDS176 type LCD to avoid occasional shift of first full screen update.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28827 a1c6a512-1295-4272-9138-f99709370657
2010-12-13 21:13:10 +00:00
Szymon Dziok
bf34449638 HDD6330: implement initialization and inversion of lcd.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28826 a1c6a512-1295-4272-9138-f99709370657
2010-12-13 21:13:04 +00:00
Andree Buschmann
abf28a9586 Speedup of iPod nano 2G YUV blitting by 3%.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28825 a1c6a512-1295-4272-9138-f99709370657
2010-12-13 20:56:53 +00:00
Andree Buschmann
298bbe8d3c FS#11807 - Major speedup of iPod nano 2G. Part 5: Introduce asm for RGB screen updates, set LCD_PHTIME to Apple's default for LDS176 type LCD's.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28824 a1c6a512-1295-4272-9138-f99709370657
2010-12-13 19:58:04 +00:00
Frank Gevaerts
866a822ac6 Only return USB_POWERED if USB_DETECT_BY_DRV is actually defined, which might not be the case for e.g. bootloaders (also fix red)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28820 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 20:20:12 +00:00
Frank Gevaerts
ecd80d888e Move AMSv1 USB to the USB_DETECT_BY_DRV model, so connecting to a dumb charger works without interrupting playback
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28819 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 20:03:42 +00:00
Bertrik Sikken
2a0a9a5f2a AMSv2: handle sd card ACMDs similar to how it's done for AMSv1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28814 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 15:30:58 +00:00
Andree Buschmann
395d72f71a FS#11807 - Major speedup of iPod nano 2G. Part 4: Introduce asm for yuv blitting. Overall speedup of part1-4 is +50% for RGB and +93% for YUV.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28813 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 15:23:20 +00:00
Andree Buschmann
eadff40863 FS#11807 - Major speedup of iPod nano 2G. Part 3: Unify different write commands. No change in speed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28812 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 15:16:55 +00:00
Andree Buschmann
335df1d040 FS#11807 - Major speedup of iPod nano 2G. Part 2: Use 16 bit data width and simplify write commands. Gives another +27% for YUV.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28811 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 15:10:45 +00:00
Andree Buschmann
d192bdf11e FS#11708 - Major speedup of iPod nano 2G. Part 1: Loop unrolling and reduction of FIFO register polling. +50% for RGB, +34% for YUV.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28809 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 15:01:36 +00:00
Bertrik Sikken
9da76f3031 AMSv2: only switch sd cards to high speed mode for for v2 sd cards, just like is done for AMSv1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28808 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 14:04:07 +00:00
Michael Sparmann
7b3c7db486 iPod Nano 2G: Correct clickwheel interrupt handler name, this time consistently.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28807 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 12:40:37 +00:00
Andree Buschmann
951a519dc4 Fix bug introduced with r28800 (missing interrupt handler).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28806 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 11:41:50 +00:00
Michael Sparmann
40d640eb47 Fix yellow, already assign values for various S5L8702 defines
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28801 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 00:59:59 +00:00
Michael Sparmann
70447b529c usb-s3c6400x.[ch], button-clickwheel.c: Move s5l8701-specific parts to where they belong, prepare for s5l8702
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28800 a1c6a512-1295-4272-9138-f99709370657
2010-12-12 00:52:02 +00:00
Andree Buschmann
6e369d717d Fix typo in comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28795 a1c6a512-1295-4272-9138-f99709370657
2010-12-11 17:52:52 +00:00
Andree Buschmann
2f9c4dfa39 iPod nano 2G: Call lcd_update_rect() in lcd_update() instead of using an own implementation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28794 a1c6a512-1295-4272-9138-f99709370657
2010-12-11 10:38:41 +00:00
Andree Buschmann
43e8fbbb4a Set DRAM configuration for iPod nano 2G in crt0.s
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28793 a1c6a512-1295-4272-9138-f99709370657
2010-12-11 09:42:42 +00:00
Andree Buschmann
41c9d43efc Detail comment in timer configuration of S5L870x.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28792 a1c6a512-1295-4272-9138-f99709370657
2010-12-11 09:41:24 +00:00
Andree Buschmann
e4a233ed9b Derive clock and timer defines from frequency of external source.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28791 a1c6a512-1295-4272-9138-f99709370657
2010-12-11 09:39:33 +00:00
Szymon Dziok
32a0ce375f HDD6330: implement lcd_yuv_blit() function. The inner loop is written in assembler and the entire function is about 20% faster than the original from the ipod color.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28737 a1c6a512-1295-4272-9138-f99709370657
2010-12-05 19:45:50 +00:00
Szymon Dziok
589d2110dc HDD6330: implement block transfers through the LCD2 bridge in lcd_update_rect(), speedup is huge, fps over 4 times faster.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28722 a1c6a512-1295-4272-9138-f99709370657
2010-12-02 20:35:25 +00:00
Andree Buschmann
1b093cf297 Remove tabs
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28719 a1c6a512-1295-4272-9138-f99709370657
2010-12-01 18:35:01 +00:00
Andree Buschmann
eef21cb18a Change alignment macros to allow further performance optimization. Define the CACHEALIGN macros for all ARM CPUs, the used alignment size is derived from CACHEALIGN_BITS which has been defined for each supported ARM CPU with r28619. The default alignment size for ARM is set to 32 bytes as new -- not yet supported -- ARM CPUs will most probably need this alignment. To be able to differ between ARM and other CPUs a new macro called MEM_ALIGN_ATTR is introduced. This equals CACHEALIGN_ATTR for ARM, 16 byte alignment for Coldfire and is kept empty for other CPUs. MEM_ALIGN_ATTR is available system wide. From measurements it is expected that the usage of MEM_ALIGN_ATTR can give significant performance gain on ARM11 CPUs.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28625 a1c6a512-1295-4272-9138-f99709370657
2010-11-21 12:27:01 +00:00
Fred Bauer
9b2e9472ea FS#11608: switch cpu to async operation in boosted mode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28616 a1c6a512-1295-4272-9138-f99709370657
2010-11-18 16:37:56 +00:00
Andree Buschmann
e464656b88 Implement udelay() for S5L870x. Exchange sleep() with udelay() during CPU voltage scaling. Voltage scaling was measured stable with 50us delay, to have some headroom we use 100us.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28606 a1c6a512-1295-4272-9138-f99709370657
2010-11-15 21:13:58 +00:00
Michael Sparmann
6574040b18 iPod Nano 2G LCD sleep: Powering down LDO2 also affects USB, so we can't do that to shut off the LCD. Leave it on for now, and use the lightweight approach for waking up the Leadis LCD.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28601 a1c6a512-1295-4272-9138-f99709370657
2010-11-14 20:39:18 +00:00
Andree Buschmann
ba64cf697e Move pcm doublebuffer to IRAM on nano 2G.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28600 a1c6a512-1295-4272-9138-f99709370657
2010-11-14 19:49:20 +00:00
Michael Sparmann
cdbaa09fb7 iPod Nano 2G LCD sleep: Send LCD_EVENT_ACTIVATION event
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28593 a1c6a512-1295-4272-9138-f99709370657
2010-11-14 15:46:17 +00:00
Michael Sparmann
a5ad3f8a72 iPod Nano 2G: Implement LCD sleep (FS#11604 by Franz-Josef Haider), adds up to 5 hours of battery life
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28591 a1c6a512-1295-4272-9138-f99709370657
2010-11-14 15:29:05 +00:00
Michael Sparmann
bbebaa406f iPod Nano 2G: Dynamic Vcore scaling, based on current CPU clock. Adds 1-2 hours of battery life.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28590 a1c6a512-1295-4272-9138-f99709370657
2010-11-14 15:20:06 +00:00
Michael Sparmann
81381a36b4 iPod Nano 2G: Set I2C clock to 374400 Hz, now that we know what it is derived from.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28589 a1c6a512-1295-4272-9138-f99709370657
2010-11-14 15:19:30 +00:00
Michael Sparmann
b18d220e48 iPod Nano 2G: Use sane (150 microseconds) PLL locking delays and properly set a third CLKCON register I just discovered
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28588 a1c6a512-1295-4272-9138-f99709370657
2010-11-14 15:18:05 +00:00