Commit graph

39 commits

Author SHA1 Message Date
William Wilgus
cfeeb7889d Lcd save function pointer to frame buffer get_address_fn before loops
Calling multiple levels of indirection in a loop slows things down

Really these need to be rewritten to take a start and end address
like most of the rest of the codebase

But this is safer without having test hardware in hand

Change-Id: Idae7b92ee779d020ed7fcc9334e2d5a9c710e64d
2022-03-21 23:53:48 -04:00
William Wilgus
084aa9c1fd Sansa ClipZip set lcd SSP properly
Change-Id: Ice62dfa7f266ee4369793777a39e675bceae1831
2020-05-23 14:44:34 +02:00
William Wilgus
4382d3f5ed ClipZip LCD Corruption Backlight fix
User reported LCD screen corruption via forum in 3.14 and 3.15
turning backlight off and back on seems to fix the issue
http://forums.rockbox.org/index.php/topic,53192.0.html

Change-Id: Id0b34d2f9b77e79ab0ecabace331f0b203184724
2020-04-17 06:53:33 +02:00
William Wilgus
d8bd356e56 Revert "As3525 v1/v2 Add power savings menu"
This reverts commit 6f0320a953.

Change-Id: I7425d422a4a0af7a49e9194cfe0bb55d431bc401
2018-07-28 17:35:07 +02:00
William Wilgus
6f0320a953 As3525 v1/v2 Add power savings menu
Allow user to select cpu undervolt

There have been quite a few issues across the SANSA AMS line related
to CPU undervolting while most players show greatly increased runtime
some crash.
Rather than constanly upping the voltage we now have a
setting with a safe value for all players and the option for lower voltages

I plan to add a few other options here later such as disk
timings and maybe some other clocks/experimental settings

Added: Disk Low speed option for AS3525v2 devices cuts
	frequency to 12 MHz from 24 MHz
Added: Disk Low speed option for AS3525v1 devices cuts
        frequency to 15.5 MHz from 31 MHz

Added: I2c Low Speed AS3525 devices, should be bigger improvement for v1 devices

Fixed: Debug menu for AS3525v2 No SDSLOT frequency,
	Showed IDE freq though it is unused

Added: DBOP and SSP underclocking affects display on v1/v2 respectively

Fixed: debug menu now has SSP frequency, and SSP_CPSR

Update: made settings menu more generic

Update: cleaned up code

Added: Clip v1 & Fuze v1 didn't have HAVE_ADJUSTABLE_CPU_VOLTAGE.
	not sure why but,  waiting on testing to confirm

Added: C200v2 and E200v2 devices and HAVE_ADJUSTABLE_CPU_VOLTAGE.

Fixed: v1 devices don't like display timing set lower (dbop)
       v1 devices don't have a divider set for ssp (causes divide by 0)

Fixed: ClipZip display lags with Max SSP divider changed from 0xFE to 0x32

Fixed: v1 devices didn't work properly with highspeed sd cards
	Added code from http://gerrit.rockbox.org/r/#/c/1704/
	Added powersave and IDE interface enable/disable

Added: V2 devices now have powersave enabled on sd interface

Update: cleaned up code, lang defines, added manual entries

Update ssp clock mechanism added calculated ssp divider to clipzip

Update turn display clock off when clip+ turns off display

Fixed: clipzip wrong register for SSP clock

Change-Id: I04137682243be92f0f8d8bf1cfa54fbb1965559b
TODO: add other players?
2018-07-27 23:56:32 +02:00
Marcin Bukat
89ba7e818c Get rid of stupid _backlight_* function names
_remote_backlight_* and _buttonlight_* are cleaned as well

Change-Id: I73653752831bbe170c26ba95d3bc04c2e3a5cf30
2015-01-12 11:09:27 +01:00
Mihail Zenkov
23dc0b0179 Don't enable the current sink for the Clip Zip backlight until its actually needed.
Patch by Mihail Zenkov who measured a modest increase in power consumption with
the current sink enabled.

Change-Id: Ib1c1639318de35d449ca51a9bd480005cb6a2ee0
Reviewed-on: http://gerrit.rockbox.org/989
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
Tested: Michael Giacomelli <giac2000@hotmail.com>
2014-09-28 21:07:58 +02:00
Thomas Martitz
463d343102 Add missing kernel.h includes (hopefully all of them), take #3.
Change-Id: I68ed0e914239f0caf83082a41c2480a01b69285a
2014-01-05 20:51:25 +01:00
Jonathan Gordon
b37e6bc8c1 lcd drivers: Convert lcd_[remote_]framebuffer to a pointer
Change all lcd drivers to using a pointer to the static framebuffer
instead of directly accessing the static array. This will let us
later do fun things like dynamic framebuffer sizes (RaaA) or
ability to use different buffers for different layers (dynamic
skin backdrops!)

Change-Id: I0a4d58a9d7b55e6c932131b929e5d4c9f9414b06
2012-02-28 11:44:59 +11:00
Rafaël Carré
8552824284 ascodec-target.h: remove
move prototypes to ascodec.h
move code to ascodec*.c

YPR0: use adc-as3514.c instead of duplicating it

TODO: merge as3514.h and ascodec.h ?

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31626 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 01:43:16 +00:00
Rafaël Carré
2737a66471 lcd-target.h: remove some duplicate declarations
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31625 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 00:52:55 +00:00
Rafaël Carré
95cf63b294 button-target.h : move prototypes to button.h
no need to define BUTTON_REMOTE anymore

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31620 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 00:07:19 +00:00
Rafaël Carré
dfff88562e Sansa Clip: simplify matrix key scan
Merge clipv1/clipv2 code since they use the same 3x3 matrix
clipzip keyscan buttons now work in bootloader
clipplus untouched (no matrix)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31235 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 23:12:21 +00:00
Rafaël Carré
2c523acf3f Clip Zip: fix yuv playback
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31128 a1c6a512-1295-4272-9138-f99709370657
2011-12-03 21:39:39 +00:00
Bertrik Sikken
d78e05c572 Sansa clip zip: increase communication speed with the OLED controller
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31030 a1c6a512-1295-4272-9138-f99709370657
2011-11-19 17:55:21 +00:00
Bertrik Sikken
bf51af7f7a Sansa clip zip: workaround for wisechip display - always copy an entire horizontal strip in lcd_update_rect
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31029 a1c6a512-1295-4272-9138-f99709370657
2011-11-19 17:55:17 +00:00
Bertrik Sikken
fdc906743f Sansa clip zip: update lcd_update_rect to even-align horizontal coordinates for the wisechip display type
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30969 a1c6a512-1295-4272-9138-f99709370657
2011-11-12 20:14:44 +00:00
Torne Wuff
569285794b Bulk convert all DOS line endings to UNIX.
For the git migration we want a nice clean repository with UNIX line
endings. git does not use svn:eol-style, we just need the file contents to be
sane.

Sorry everybody. I know this messes up blame.

Scumbag *NIX developer says migrating to git will make line ending issues go
away; commits giant change to svn which changes line endings anyway. :)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30924 a1c6a512-1295-4272-9138-f99709370657
2011-11-06 22:44:25 +00:00
Bertrik Sikken
9310fc0b4c Sansa clip zip: do not enable display if it's already enabled
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30903 a1c6a512-1295-4272-9138-f99709370657
2011-11-05 12:30:19 +00:00
Bertrik Sikken
2181ef3288 Sansa clip zip: swap RGB<>BGR for WiseChip display
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30898 a1c6a512-1295-4272-9138-f99709370657
2011-11-04 08:04:25 +00:00
Bertrik Sikken
58543296c9 Sansa clip zip: attempt to fix the pixel format swappedness for good
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30873 a1c6a512-1295-4272-9138-f99709370657
2011-10-31 20:17:04 +00:00
Bertrik Sikken
d11e5201dc Sansa clip zip: implement lcd_write_data function
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30872 a1c6a512-1295-4272-9138-f99709370657
2011-10-30 20:35:03 +00:00
Bertrik Sikken
eb7cf73dcb Sansa clip zip: use a state machine for scanning buttons to avoid busy-waits
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30871 a1c6a512-1295-4272-9138-f99709370657
2011-10-30 20:15:08 +00:00
Bertrik Sikken
94fc46b730 Sansa clip zip: fix colours of icons, logos, album art
* configure display for RGB (instead of BGR) colour coding
* fix logo bitmap to correct size of 96x30
* fix pixel format to RGB565 swapped

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30859 a1c6a512-1295-4272-9138-f99709370657
2011-10-29 22:36:47 +00:00
Bertrik Sikken
9fc1270807 Sansa clip zip: add missing prototype to backlight-target.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30855 a1c6a512-1295-4272-9138-f99709370657
2011-10-29 20:05:40 +00:00
Bertrik Sikken
e90f961593 Sansa clip zip: update mkamsboot and fix various drivers to make it boot to the main firmware
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30853 a1c6a512-1295-4272-9138-f99709370657
2011-10-29 17:08:05 +00:00
Bertrik Sikken
94c573f3ec Sansa clipzip: miscellaneous updates
* add support for OF version 01.01.17 in mkamsboot
* introduce and implement oled_brightness function
* configure voltage CVDD2 to 2.8V (like the OF does)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30831 a1c6a512-1295-4272-9138-f99709370657
2011-10-23 14:20:47 +00:00
Bertrik Sikken
f323300b82 Sansa clipzip: make main build compile (plugins still disabled)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30588 a1c6a512-1295-4272-9138-f99709370657
2011-09-24 11:21:01 +00:00
Bertrik Sikken
d20f803af0 sansa clipzip: fix rectangle setup of type 1 lcd
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30560 a1c6a512-1295-4272-9138-f99709370657
2011-09-16 14:21:08 +00:00
Bertrik Sikken
101bb25e72 sansa clipzip: fix lcd init delay (remove lcd_delay and replace it with a sleep)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30465 a1c6a512-1295-4272-9138-f99709370657
2011-09-06 16:55:52 +00:00
Bertrik Sikken
9372063e19 sansa clipzip: annotate lcd registers
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30411 a1c6a512-1295-4272-9138-f99709370657
2011-09-02 20:09:51 +00:00
Bertrik Sikken
5b7a150807 sansa clipzip: add lcd_brightness function (to be used later to set the 'backlight' brightness)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30410 a1c6a512-1295-4272-9138-f99709370657
2011-09-02 19:57:29 +00:00
Bertrik Sikken
4991c858a0 sansa clipzip: implement lcd reset in the lcd driver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30408 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 17:06:19 +00:00
Bertrik Sikken
6a9aac7a5f sansa clipzip: implement lcd_enable
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30407 a1c6a512-1295-4272-9138-f99709370657
2011-09-01 16:59:30 +00:00
Bertrik Sikken
e66ad3e8a8 sansa clipzip: implement backlight
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30390 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 19:13:44 +00:00
Bertrik Sikken
99f260ef49 sansa clipzip: fix bounds check/correction in lcd_update_rect
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30389 a1c6a512-1295-4272-9138-f99709370657
2011-08-30 18:14:20 +00:00
Bertrik Sikken
17fcb4cfe3 sansa clipzip: correct GPIO used for backlight
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30377 a1c6a512-1295-4272-9138-f99709370657
2011-08-29 21:08:24 +00:00
Bertrik Sikken
401edf8b48 sansa clipzip: implement more functions in the lcd driver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30376 a1c6a512-1295-4272-9138-f99709370657
2011-08-29 21:05:59 +00:00
Bertrik Sikken
463b3ed8b2 Initial framework for the Sandisk Sansa Clip Zip
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30365 a1c6a512-1295-4272-9138-f99709370657
2011-08-27 16:21:19 +00:00