summaryrefslogtreecommitdiff
path: root/firmware/target/arm/as3525/sansa-fuze
AgeCommit message (Collapse)Author
2015-01-12Get rid of stupid _backlight_* function namesMarcin Bukat
_remote_backlight_* and _buttonlight_* are cleaned as well Change-Id: I73653752831bbe170c26ba95d3bc04c2e3a5cf30
2012-01-08button-target.h : move prototypes to button.hRafaël Carré
no need to define BUTTON_REMOTE anymore git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31620 a1c6a512-1295-4272-9138-f99709370657
2010-06-18Enable display and backlight on panic.Tobias Diedrich
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26917 a1c6a512-1295-4272-9138-f99709370657
2010-05-27Merge common LCD code between fuzev1 & fuzev2Rafaël Carré
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26344 a1c6a512-1295-4272-9138-f99709370657
2010-05-18Fuzev1: calibrated charging curveRafaël Carré
Show all the adc channels in the IO ports debug menu (not for as3525v2 since the channels are different) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26149 a1c6a512-1295-4272-9138-f99709370657
2010-05-07Fuzev1: calibrated discharge curveRafaël Carré
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25874 a1c6a512-1295-4272-9138-f99709370657
2010-04-05as2525(v2): We don't need yuv blitting/greylib support in the bootloader so ↵Thomas Martitz
don't compile it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25483 a1c6a512-1295-4272-9138-f99709370657
2010-04-01Fuzev2: Scrollwheel works like a charm :)Thomas Martitz
Move scrollwheel parsing function into separate file as it's reused. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25425 a1c6a512-1295-4272-9138-f99709370657
2010-01-07Sansa AMS: Time has shown that switching between 16 and 32bit mode costs ↵Thomas Martitz
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-07e200v2/Fuze: Correct and simplify clipping clipping code in lcd_update_rect().Thomas Martitz
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24197 a1c6a512-1295-4272-9138-f99709370657
2010-01-06Sansa AMS: refactor DBOP button reading (e200v2/Fuze/c200v2)Rafaël Carré
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-04Sansa Fuze: LCDRafaël Carré
- add lcd_set_invert() - add lcd_set_flip() commented out since not working fine yet: mpegplayer isn't flipped, and statusbar display is buggy - use the registers list from e200v2 - cosmetics (indentation fix, comments changes, function names, casts, function moves, ...) to make the diff with lcd-e200v2.c shorter git-svn-id: svn://svn.rockbox.org/rockbox/trunk@24181 a1c6a512-1295-4272-9138-f99709370657
2009-11-15Fix a few possible problems discovered in -O0 / eabi experiments.Thomas Martitz
- two essential parts of Sansa AMS drivers are optimzed away in newer gcc, so mark them volatile. - use "r" instead of "i" (which is apparently invalid syntax) for the input list in some inline assembly git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23634 a1c6a512-1295-4272-9138-f99709370657
2009-10-31FS#10744 - Fuze: Last line of screen's pixels doesn't change when switching ↵Michael Chicoine
themes and using plugins git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23452 a1c6a512-1295-4272-9138-f99709370657
2009-10-26fix an off-by-one error in lcd_update_rect()Michael Chicoine
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23359 a1c6a512-1295-4272-9138-f99709370657
2009-10-24Speed up lcd_update_rect by ~2.5% by counting towards 0 in the loop.Thomas Martitz
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23329 a1c6a512-1295-4272-9138-f99709370657
2009-10-20Convert lcd_activation callbacks to use the event system to allow for ↵Thomas Martitz
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-09-26Sansa Fuze/e200v2: protect lcd a little better against concurrent accessBertrik Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22838 a1c6a512-1295-4272-9138-f99709370657
2009-09-05Make the Fuze usable again by inserting a few delays in the lcd functions, ↵Thomas Martitz
core rockbox should be fine now. NOTE: *After exiting* plugins (e.g. doom, plasma, pictureflow) which do heavy lcd updates, the Fuze still fails (backlight goes off) -- I have no idea how that happens yet, Unless I find a fix for that within the next few days, I'm probably going to revert one/both of the lcd speedup commits. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22627 a1c6a512-1295-4272-9138-f99709370657
2009-09-01Move the FIFO emptying up, as having it after lcd_write_single_data16() ↵Thomas Martitz
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-01Fuze/e200v2: Speed up the LCD further by letting the FIFO fill until it's ↵Thomas Martitz
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-08-31Speed up the Fuze's LCD by a factor of ~2.1 (lcd_update()) by using 32bit ↵Thomas Martitz
transfers when possible. Unaligned (to 4byte boundary) and odd (where the amount of data is not an integer multiple of 32bit) are still supported. Even those still have a speedup of >2. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22574 a1c6a512-1295-4272-9138-f99709370657
2009-08-10Remove the comment also, Thanks to Rafaël Carré for spotting.Thomas Martitz
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22245 a1c6a512-1295-4272-9138-f99709370657
2009-08-10Fix FS#10486 - "fuze screen not drawn correctly on backlight turn-on if ↵Thomas Martitz
playlist ends while the backlight is off" by adding a lcd_update() to lcd_enable() as other targets do. Remove the delay as it seems unneeded nowadays. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@22244 a1c6a512-1295-4272-9138-f99709370657
2009-06-24Fix some forgotten OR's in some button-target.h filesMaurus Cuelenaere
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21501 a1c6a512-1295-4272-9138-f99709370657
2009-06-22FS#10284 - "Sansa e200v2 & Fuze: Merge the button driver into 1 file" by ↵Thomas Martitz
Dustin Skoracki Those two drivers were so similar, merging them is worth a few more #ifdefs. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21474 a1c6a512-1295-4272-9138-f99709370657
2009-06-20Enable charging on the Sansa Fuze (charging/discharging curves are still ↵Bertrik Sikken
uncalibrated) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21394 a1c6a512-1295-4272-9138-f99709370657
2009-06-08FS#10048 : enable MMU and data cache on Sansa AMS to give a major speed upRafaël Carré
- cache IRAM and DRAM - map IRAM just next to DRAM to remove the need for -mlong-calls and reduce binsize - tweak delays in Fuze button code - tweak delays in Clip button code (down button sometimes doesn't respond anyway : an alternate driver is being worked on) Before reporting any problem, please check your filesystem or format your player from the OF git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21228 a1c6a512-1295-4272-9138-f99709370657
2009-06-08Sansa fuze: don't configure GPIO A7 in the LCD driver, this pin is used for ↵Bertrik Sikken
fm radio git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21225 a1c6a512-1295-4272-9138-f99709370657
2009-06-02Sansa AMS : don't use the SHAREDBSS_ATTR since we don't have a coprocessorRafaël Carré
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21171 a1c6a512-1295-4272-9138-f99709370657
2009-06-02Revisite Sansa fuze button driver:Thomas Martitz
*Correct/update some comments *Make BUTTON_REPEAT generation more relable (do it like the e200v2, but with a shorter repeat intervall) *adjust button_delay *remove unecessary wait for fifo empty (no lcd function returns with fifo not empty) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21166 a1c6a512-1295-4272-9138-f99709370657
2009-05-26FS#10245 by Jack Halpin : Adjust Clocking scheme on Sansa AMSRafaël Carré
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21088 a1c6a512-1295-4272-9138-f99709370657
2009-05-13Sansa AMS: Various fixes/enhancements for clock frequenciesRafaël Carré
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-12FS#10118 & FS#10165 : lcd_blit_yuv() for Sansa Fuze & Sansa e200v2Rafaël Carré
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20919 a1c6a512-1295-4272-9138-f99709370657
2009-04-20Fix FS#10128 - The View IO Ports debug menu showed weird dbop values ↵Thomas Martitz
(sometimes FFFF prepended), due to sign-extension. Switch to unsigned short to fix it. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20757 a1c6a512-1295-4272-9138-f99709370657
2009-04-19FS#10148 by Dustin Skoracki, removes a redundant check for != BUTTON_NONE in ↵Thomas Martitz
the scrollwheel drivers. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20744 a1c6a512-1295-4272-9138-f99709370657
2009-04-13Few Fuze/e200v2 button fixes. Don't read the scrollwheel when the hold ↵Thomas Martitz
button is active and rename a variable to describe better what it is for. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20701 a1c6a512-1295-4272-9138-f99709370657
2009-04-13FS#10120 - fuze/e200v2: poll the wheel more often (every 5ms). This makes ↵Thomas Martitz
the scrollwheel behavior nearly perfect (decent acceleration, no direction changes if you turn to fast). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20699 a1c6a512-1295-4272-9138-f99709370657
2009-03-30A bit of cleanup in config-fuze (don't define features we do not have yet), ↵Thomas Martitz
a bit of reordering. Cleanup in the lcd driver. Reintroduce the delay in the dbop read function, as it helps avoiding heavy hold button weirdness when boosted git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20583 a1c6a512-1295-4272-9138-f99709370657
2009-03-17Fix reds and yellows (hopefully). Some targets apparently didn't properly ↵Thomas Martitz
#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-17Rework lcd_enabled and lcd_set/call_enable hookThomas Martitz
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-13Sansa Fuze Buttons: cleanup slightly, prevent button_counter from wrapping, ↵Thomas Martitz
and implement a (imo) decent wheel acceleration. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20317 a1c6a512-1295-4272-9138-f99709370657
2009-02-19Fix occasional power button ghost presses and get rid of the delay which was ↵Thomas Martitz
needed to reduce the ghost presses (i.e. don't read power button too during lcd updates) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20058 a1c6a512-1295-4272-9138-f99709370657
2009-02-19Sansa Fuze buttons:Thomas Martitz
1) fix driver from reading invalid home button while lcd updates (use old value then) 2) put in a 1s delay for power button reading after releasing hold 3) revert r20028, I thought it wasn't needed, since I didn't update the bootloader 4) enable hold for the bootloader (even though not really needed, but is consistent with other targets) 5) let button_dbop return DBOP_DIN, and do the reading in button_read_device 6) various cleanups git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20054 a1c6a512-1295-4272-9138-f99709370657
2009-02-18Get rid of disabling irq. Simply blocking does it too, it also caused ↵Thomas Martitz
problems (particulary with scrolling lines). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20040 a1c6a512-1295-4272-9138-f99709370657
2009-02-17Fix redThomas Martitz
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20029 a1c6a512-1295-4272-9138-f99709370657
2009-02-17Setting GPIOA_PIN 1 is apparently not needed (anymore)Thomas Martitz
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20028 a1c6a512-1295-4272-9138-f99709370657
2009-02-17Some Sansa Fuze work: Get Home button working (no keymap changes yet, so ↵Thomas Martitz
it's not very noticeable) and "fix" debug menu from not showing the dbop data (see FIXME), some cleanup in the fuze's button driver git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20027 a1c6a512-1295-4272-9138-f99709370657
2009-01-27Sansa AMS: Debug screen, shows GPIO and (on the fuze) DBOP input for now, to ↵Thomas Martitz
be extended git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19866 a1c6a512-1295-4272-9138-f99709370657
2009-01-18Commit second part of FS#9663 by Thomas Martitz. Enable button light on ↵Michael Giacomelli
fuze and e200v2. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19792 a1c6a512-1295-4272-9138-f99709370657