Rafaël Carré
9dbdd8fd5d
Fuze*/e200v2: remove unused lcd_set_contrast()
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@27413 a1c6a512-1295-4272-9138-f99709370657
2010-07-14 06:48:36 +00:00
Michael Chicoine
17a2f9d8d2
Revert r26350 - fixes FS#11421
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26997 a1c6a512-1295-4272-9138-f99709370657
2010-06-20 18:10:15 +00:00
Rafaël Carré
56220785c1
e200v2: revert r26353
...
invert setting isn't remembered when backlight goes off and lcd_enable()
is ran again
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26374 a1c6a512-1295-4272-9138-f99709370657
2010-05-29 14:24:10 +00:00
Michael Chicoine
0ae59df3fa
Simplify lcd invert
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26353 a1c6a512-1295-4272-9138-f99709370657
2010-05-28 12:19:26 +00:00
Michael Chicoine
3c1dd03fb3
Simplify lcd_set_flip, lcd_window, and lcd_window_blit
...
Remove unneeded defines
Whitespace cleanup
Thanks to Rafaël Carré for finding the simpler register settings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26350 a1c6a512-1295-4272-9138-f99709370657
2010-05-28 05:15:28 +00:00
Thomas Martitz
e4cda5ff2c
Fix yellow. Another function unneeded in the bootloader.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25484 a1c6a512-1295-4272-9138-f99709370657
2010-04-05 12:23:30 +00:00
Thomas Martitz
ae69e92008
as2525(v2): We don't need yuv blitting/greylib support in the bootloader so don't compile it.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25483 a1c6a512-1295-4272-9138-f99709370657
2010-04-05 12:17:11 +00:00
Thomas Martitz
fbc8f0c469
Update on even pixel boundaries on the e200v2 for best performance (was forgotten in r24198).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24337 a1c6a512-1295-4272-9138-f99709370657
2010-01-26 21:31:53 +00:00
Thomas Martitz
dc07c79263
Sansa AMS: Time has shown that switching between 16 and 32bit mode costs much time (due to the micro delay needed), so do 32bit transfers unconditionally for lcd updates at the cost of updating slightly larger rectangles (gives upto 15% speed up, nearly at maximum now).
...
Unify this optimized dbop transfer function and re-use it more often (it still handles 16bit transfers).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24198 a1c6a512-1295-4272-9138-f99709370657
2010-01-07 22:21:41 +00:00
Thomas Martitz
5fd54dee4f
e200v2/Fuze: Correct and simplify clipping clipping code in lcd_update_rect().
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24197 a1c6a512-1295-4272-9138-f99709370657
2010-01-07 19:35:36 +00:00
Rafaël Carré
57667c51cf
Sansa AMS: refactor DBOP button reading (e200v2/Fuze/c200v2)
...
This gets rid of LCD glitches on Sansa Fuze, and now LCD transfers can
get interrupted by button reading
Flyspray: FS #10603
Author: Bertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24192 a1c6a512-1295-4272-9138-f99709370657
2010-01-06 23:41:36 +00:00
Rafaël Carré
3992f18982
Sansa e200v2: LCD
...
- Cosmetics change to reduce the diff with lcd-fuze.c:
- remove useless headers
- move/remove/change comments
- rename functions
- fix casts
Now the differences with fuze lcd code are mostly:
- lcd_window* code
- _display_on() / as3525_dbop_init()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24182 a1c6a512-1295-4272-9138-f99709370657
2010-01-04 21:35:31 +00:00
Michael Chicoine
4eafd23f42
FS#10744 - Fuze: Last line of screen's pixels doesn't change when switching themes and using plugins
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23452 a1c6a512-1295-4272-9138-f99709370657
2009-10-31 23:15:33 +00:00
Michael Chicoine
10f46b3c8a
fix an off-by-one error in lcd_update_rect()
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23359 a1c6a512-1295-4272-9138-f99709370657
2009-10-26 15:42:26 +00:00
Thomas Martitz
e4921d6ab5
Speed up lcd_update_rect by ~2.5% by counting towards 0 in the loop.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23329 a1c6a512-1295-4272-9138-f99709370657
2009-10-24 16:01:53 +00:00
Thomas Martitz
d85c3ec410
Convert lcd_activation callbacks to use the event system to allow for multiple parallel callbacks (for custom statusbar).
...
Increase maximum event count as we need more (I actually had a report about it during custom statusbar testing).
Removed corresponding functions from the core and plugin api. Bump min version and sort.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23302 a1c6a512-1295-4272-9138-f99709370657
2009-10-20 21:54:59 +00:00
Rafaël Carré
6bd92a74d3
Fix "lcd driver speed up" on e200v2
...
Flyspray: FS#10272
Author: Michael Chicoine
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22859 a1c6a512-1295-4272-9138-f99709370657
2009-09-30 18:54:42 +00:00
Bertrik Sikken
66d5bd7cf8
Sansa Fuze/e200v2: protect lcd a little better against concurrent access
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22838 a1c6a512-1295-4272-9138-f99709370657
2009-09-26 10:47:10 +00:00
Thomas Martitz
6f9fde95a5
Move the FIFO emptying up, as having it after lcd_write_single_data16() causes problems with uneven transfers (I'm not sure why).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22581 a1c6a512-1295-4272-9138-f99709370657
2009-09-01 02:06:37 +00:00
Thomas Martitz
b9093b2b35
Fuze/e200v2: Speed up the LCD further by letting the FIFO fill until it's full instead of keeping it almost empty.
...
The blue bars I previously had with this way are fixed by blocking DBOP output while reading buttons from GPIO.
We reached the maximum fps even at unboosted now (100.0 fps at lcd_update(), DBOP can't do more). Optimisation to YUV stuff is still possible though.
The e200v2 scrollwheel is very improved due to the this and the previous speedup since the chance of getting the wheel read blocked is greatly decreased with faster updates.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22578 a1c6a512-1295-4272-9138-f99709370657
2009-09-01 00:42:22 +00:00
Dominik Wenger
a56199c49e
Apply the lcd speed fix from fuze also to e200v2. Improves speed by a factor ~2.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22575 a1c6a512-1295-4272-9138-f99709370657
2009-08-31 20:45:26 +00:00
Bertrik Sikken
978f3798a9
Apply FS#10447 - e200v2 lcd driver cleanup by Michael Chicoine
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22210 a1c6a512-1295-4272-9138-f99709370657
2009-08-08 14:37:42 +00:00
Michael Giacomelli
e362aeb61f
Commit FS#10413 by Michael Chicoine. Fixes upside down menu in mpegplayer when watching videos with the screen inverted.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21942 a1c6a512-1295-4272-9138-f99709370657
2009-07-18 01:38:17 +00:00
Jack Halpin
a0c4b8bffb
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21182 a1c6a512-1295-4272-9138-f99709370657
2009-06-03 13:11:21 +00:00
Rafaël Carré
c8f22f5a8f
Sansa AMS : don't use the SHAREDBSS_ATTR since we don't have a coprocessor
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21171 a1c6a512-1295-4272-9138-f99709370657
2009-06-02 22:45:02 +00:00
Rafaël Carré
ef9aacb2e0
FS#10245 by Jack Halpin : Adjust Clocking scheme on Sansa AMS
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21088 a1c6a512-1295-4272-9138-f99709370657
2009-05-26 18:44:02 +00:00
Rafaël Carré
adb978a44d
Sansa AMS: Various fixes/enhancements for clock frequencies
...
Fix CGU_DBOP setting
Set PCLK to the exact frequency (62MHz, not the maximal frequency)
Use a better comment for CLK_DIV macro
Use preprocessor safety checks for clock divider sizes to avoid future mistakes (not for SD_IDENT frequency since that check is handled by mci_set_clock_divider)
Use maximal IDE frequency of 66MHz (like OF), not 90MHz like written in AS3525 datasheet. The IDE chip is somehow linked to internal storage, and a too high frequency could affect the storage driver.
Use the same DBOP frequency of 32MHz for all models (like OF, verified clip, fuze, e200v2 and m200v4), compromise between performance and battery life could be added in the future for each target
Performance increase on Sansa Fuze with DBOP freq. set to 64MHz: +12% fps for lcd_update, +1% fps for yuv
Thanks to daytona955 on the forums for his help
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20923 a1c6a512-1295-4272-9138-f99709370657
2009-05-13 08:27:20 +00:00
Rafaël Carré
b1d03ccee7
FS#10118 & FS#10165 : lcd_blit_yuv() for Sansa Fuze & Sansa e200v2
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20919 a1c6a512-1295-4272-9138-f99709370657
2009-05-12 13:22:39 +00:00
Thomas Martitz
8e8c36019c
FS#10126 - lcd_e200v2 cleanup by Michael Chicoine
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20801 a1c6a512-1295-4272-9138-f99709370657
2009-04-26 11:14:19 +00:00
Michael Giacomelli
b94b12cd20
Commit FS#10043 by Michael Chicoine for the Sansa e200v2. Implements LCD sleeping, cleans up unused GPIOs and implements LCD flipping/invert.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20670 a1c6a512-1295-4272-9138-f99709370657
2009-04-10 01:44:05 +00:00
Thomas Martitz
4ed387d603
Fix reds and yellows (hopefully). Some targets apparently didn't properly #ifdef lcd_enable and lcd_sleep code out, so that it got partly active in the bootloader; rename the ui simulator stub fixes most reds; for the clip: move the hook code into lcd-1bit-vert.c which should fix the bootloader red.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20333 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 03:36:36 +00:00
Thomas Martitz
b7739fbf1c
Rework lcd_enabled and lcd_set/call_enable hook
...
a) lcd_enabled() is now lcd_active(), and is available for HAVE_LCD_SLEEP only targets (e.g. ipod video) too. It was depandent on HAVE_LCD_ENALE only before
b) rename the hook accordingly, and implement the hook for other other targets too (e.g. the clip [the only mono target with lcd_enable/lcd_sleep yet, so the code is still in the lcd driver], ipod, fuze, c200)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20331 a1c6a512-1295-4272-9138-f99709370657
2009-03-17 02:43:47 +00:00
Thomas Martitz
f6f426eda4
e200v2: fix broken lcd driver and cleanup a little bit further.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20063 a1c6a512-1295-4272-9138-f99709370657
2009-02-20 15:10:49 +00:00
Thomas Martitz
1ad58f9757
Sansa e200v2: Some LCD driver changes (none with functional changes):
...
1) put window addressing in a seperate function like on the fuze
2) use fb_data instead of unsigned short
3) change clipping a bit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20051 a1c6a512-1295-4272-9138-f99709370657
2009-02-19 20:40:00 +00:00
Thomas Martitz
5e3b4fe3f8
Return old button value if lcd_button_supprt was blocked.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20041 a1c6a512-1295-4272-9138-f99709370657
2009-02-18 17:43:38 +00:00
Thomas Martitz
30255d53da
Get rid of disabling irq. Simply blocking does it too, it also caused problems (particulary with scrolling lines).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20040 a1c6a512-1295-4272-9138-f99709370657
2009-02-18 16:38:16 +00:00
Dominik Wenger
2871963bee
e200v2: make buttons and scrollwheel work. Still ugly as we need to disable interrupts while updating the lcd.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20019 a1c6a512-1295-4272-9138-f99709370657
2009-02-16 19:50:52 +00:00
Michael Giacomelli
4e79f8edc7
Commit updated FS#9569 by Michael Chicoine. Fixes a bug in lcd_update_rect on the e200v2.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19453 a1c6a512-1295-4272-9138-f99709370657
2008-12-16 02:50:39 +00:00
Rafaël Carré
45711ac286
Sansa AMS: centralize clock settings in clock-target.h
...
Reorder system_init() to initialize peripherals not only in bootloader
Use a 65MHz PCLK (and memclk) which will be needed for realtime decoding
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19330 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 20:04:31 +00:00
Rafaël Carré
0b6d65b09e
Sansa AMS: Use a valid PLL setting (248MHz aka maximum fclk)
...
Fix lcd drivers which stopped working after changing the PLL.
Move set_cpu_frequency() to a place where it is actually used.
Remove enable_irq() call already done by the bootloader
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19276 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 16:36:32 +00:00
Jonathan Gordon
15671aa476
do not modify the CCU_IO register since we don't use GPIOD (from FS#9569)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19263 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 00:35:25 +00:00
Dave Chapman
4c25c92a86
Partially apply FS#9569 by Michael Chicoine and Thomas Martitz: remove the GPIOD(7) setting in the Fuze and e200v2 LCD drivers - it's set in the buttonlight code.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19182 a1c6a512-1295-4272-9138-f99709370657
2008-11-22 18:04:07 +00:00
Dave Chapman
e25c1c6e43
Add more driver stubs to make the Fuze and e200v2 main builds compile; Correct the memory definition for the Fuze (8MB)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19090 a1c6a512-1295-4272-9138-f99709370657
2008-11-11 14:46:13 +00:00
Jonathan Gordon
8f7f219dba
FS#9511 - working lcd update (and lcd_update_rect() ) for the e200v2, working button light also
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18914 a1c6a512-1295-4272-9138-f99709370657
2008-10-29 06:11:33 +00:00
Jonathan Gordon
0a8446ad7d
fix lcd mirror and rotation problem on the e200v2. also remove a wierd whitespace charchter
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18913 a1c6a512-1295-4272-9138-f99709370657
2008-10-29 03:05:07 +00:00
Dave Chapman
6a038d1a97
Oops, revert 18911 - this was added a couple of commits ago.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18912 a1c6a512-1295-4272-9138-f99709370657
2008-10-29 02:22:39 +00:00
Dave Chapman
914a6f2ed0
e200v2 LCD - it helps to enable the DBOP clock.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18911 a1c6a512-1295-4272-9138-f99709370657
2008-10-29 02:18:42 +00:00
Rafaël Carré
b771428d86
e200v2 lcd: Add missing DBOP clock initialization
...
Code confirmed to work (i.e. displaying a rotated, mirrored image) after
the backlight has been enabled.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18909 a1c6a512-1295-4272-9138-f99709370657
2008-10-29 01:07:33 +00:00
Dave Chapman
34535494a7
A little more work on the e200v2 LCD driver (still untested - I don't own one). The lcd_update*() functions are taken from the X5 LCD driver.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18881 a1c6a512-1295-4272-9138-f99709370657
2008-10-25 23:22:02 +00:00
Dave Chapman
08c41d42bb
Add e200v2 and m200v2 targets. Move the telechips lcd-ssd1815.c (currently used by Logik DAX and m200v1 ports) driver up in the target tree and share with the m200v2 - as2525 parts contributed by Rafael Carre. Includes the start (but is still very incomplete) of an LCD driver for the e200v2. m200v2 is not yet fully supported by mkamsboot - that will come soon. Also some minor cleanups for the Clip.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@18836 a1c6a512-1295-4272-9138-f99709370657
2008-10-19 14:11:01 +00:00