Bertrik Sikken
d1faf8b39c
FS#10317 - Sansa AMS 32-bit timers. Configure the timers for 32-bit mode instead of the default 16-bit mode.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21266 a1c6a512-1295-4272-9138-f99709370657
2009-06-12 21:11:45 +00:00
Bertrik Sikken
426cdb1284
Commit FS#10285 - Sansa Clip alternative button driver. This driver alternates one row in the button matrix per kernel tick, avoiding the need for explicit delays between selecting a button row and reading colums.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21253 a1c6a512-1295-4272-9138-f99709370657
2009-06-11 22:17:47 +00:00
Bertrik Sikken
79f348a178
Minor nitpick: don't do |= on the write-only GPIOA_IC register
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21251 a1c6a512-1295-4272-9138-f99709370657
2009-06-11 20:43:53 +00:00
Rafaël Carré
460a1c4497
Sansa AMS storage driver: restart bank selection if data transfer failed, and precise a comment about retry variable
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21248 a1c6a512-1295-4272-9138-f99709370657
2009-06-11 17:28:24 +00:00
Rafaël Carré
7572141d42
FS#10309 : Sets reasonable timeouts for data access in the SD driver
...
Those are the recommended maximal timeouts in §4.6.2
Despite that, some people still experiment problems with the SD driver since MMU and data cache were enabled
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21247 a1c6a512-1295-4272-9138-f99709370657
2009-06-11 17:17:12 +00:00
Rafaël Carré
e2f165c088
Sansa AMS: make the UNCACHED_ADDR macro work for any type of pointer, and only use pointers with it, not arrays
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21230 a1c6a512-1295-4272-9138-f99709370657
2009-06-09 00:51:30 +00:00
Rafaël Carré
f504153857
FS#10048 : enable MMU and data cache on Sansa AMS to give a major speed up
...
- 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-08 23:05:33 +00:00
Bertrik Sikken
5631bf7343
Sansa fuze: don't configure GPIO A7 in the LCD driver, this pin is used for fm radio
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21225 a1c6a512-1295-4272-9138-f99709370657
2009-06-08 19:54:58 +00:00
Bertrik Sikken
3589be4bdd
Sansa e200v2: use = instead of |= when setting GPIO level
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21224 a1c6a512-1295-4272-9138-f99709370657
2009-06-08 19:48:30 +00:00
Rafaël Carré
f8a8619615
FS#10273 : Power Sansa Clip screen for some models needing as3514's DCDC15
...
No battery life loss for models not needing it
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21207 a1c6a512-1295-4272-9138-f99709370657
2009-06-07 23:33:43 +00:00
Rafaël Carré
1d97a380e2
Sansa Clip: apply r21190 to asm lcd_greydata : 2% speedup
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21199 a1c6a512-1295-4272-9138-f99709370657
2009-06-06 14:13:48 +00:00
Bertrik Sikken
82902a8ade
Make more effective use of the DBOP FIFO for the sansa clip.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21190 a1c6a512-1295-4272-9138-f99709370657
2009-06-04 19:53:39 +00:00
Rafaël Carré
2409c28f21
Sansa AMS: Revert r21177 : the timer frequency is used by the user timer (example: metronome will be twice too fast)
...
Instead use a private KERNEL_TIMER_FREQ define which is dependant on HAVE_SCROLLWHEEL
Comment that call_tick_tasks() will read the scrollwheel
Remove the unneeded volatile type qualifier from poll_scrollwheel
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21187 a1c6a512-1295-4272-9138-f99709370657
2009-06-04 14:50:07 +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
Thomas Martitz
d1b0ee9f04
Change the timer interrupt setup so that TIMER_FREQ is changed for HAVE_SCROLLWHEEL (which read the scrollwheel between tick tasks too) instead of the generated variable. No functional change.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21177 a1c6a512-1295-4272-9138-f99709370657
2009-06-03 11:35:56 +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
Thomas Martitz
4aec45e68f
Revisite Sansa fuze button driver:
...
*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-06-02 01:31:16 +00:00
Rafaël Carré
f5db6b9ce3
Sansa AMS : higher a bit the delay between acmd41 loops, needed for some microsd cards. FS#10268 by Eric Shattow
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21152 a1c6a512-1295-4272-9138-f99709370657
2009-06-01 10:51:05 +00:00
Bertrik Sikken
9067c915ad
Use I2C2_DACNT register (number of pending i2c bytes to read/write) to determine if an ascodec i2c transfer is done. This should fix i2c problems with MMU enabled.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21150 a1c6a512-1295-4272-9138-f99709370657
2009-05-31 17:48:19 +00:00
Jack Halpin
95ac12a68f
AMSSansa: Add AS3525_DRAM_FREQ as a configurable frequency. Attempts to use PCLK != DRAM still fail but a method is now in place. Default scheme remains 248/62/62.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21130 a1c6a512-1295-4272-9138-f99709370657
2009-05-29 20:19:35 +00:00
Jack Halpin
b714ace163
AMSSansa: clock-target.h and debug-as3525 now use AS3525_FCLK_PREDIV correctly. Default frequency scheme remains 248/62/62.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21125 a1c6a512-1295-4272-9138-f99709370657
2009-05-29 06:43:37 +00:00
Jack Halpin
b4b7c7501e
AMSSansa: Change comment to describe FCLK as input more accurately
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21124 a1c6a512-1295-4272-9138-f99709370657
2009-05-29 00:06:13 +00:00
Jack Halpin
5941869a69
AMSSansa: Display AMBA Bus mode and mmu, icache, & dcache status on View HW info page
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21121 a1c6a512-1295-4272-9138-f99709370657
2009-05-28 20:27:31 +00:00
Rafaël Carré
83eb479732
FS#10216 : Sansa AMS : Do not cross a bank boundary in a single transfer (Only for 8GB or more -if they exist- players)
...
Also add a few comments in the code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21096 a1c6a512-1295-4272-9138-f99709370657
2009-05-26 21:08:47 +00:00
Alexander Levin
1bf480cad5
Fix typo in the comment
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21093 a1c6a512-1295-4272-9138-f99709370657
2009-05-26 20:31:26 +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
Bertrik Sikken
4a4639e157
Update as3525 i2c register description
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21018 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 18:31:50 +00:00
Rafaël Carré
442726339a
Sansa AMS: show correct clock speeds for NAND & SD card
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21017 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 17:35:56 +00:00
Rafaël Carré
0f93ae5da0
Sansa AMS: move OF size declaration in model specific config
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21008 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 11:46:52 +00:00
Rafaël Carré
c7b698119d
Sansa AMS: Partly revert r20923 (reset IDE maximal freq to 90MHz to fix problems with some players)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21007 a1c6a512-1295-4272-9138-f99709370657
2009-05-21 11:46:36 +00:00
Thomas Martitz
4633446517
Sansa AMS: Centralise mapping of RAM and IRAM in as3525.h via #defines. This will hopefully make ongoing mmu work easier as less places need to be changed.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@21000 a1c6a512-1295-4272-9138-f99709370657
2009-05-20 21:09:53 +00:00
Rafaël Carré
e71c67f340
Fix my mistake in r20987/FS#10219 : live update of Sansa AMS clock freqs (fix by Jack Halpin)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20995 a1c6a512-1295-4272-9138-f99709370657
2009-05-20 11:22:31 +00:00
Rafaël Carré
00392020d8
FS#10219 (AMSSansa Debug Clocks) by Jack Halpin
...
With a few modifications by me:
Return 0MHz for PLL disabled (PLLB)
Mention if i2si and i2so are on or off
Simplify scrolling (for small & large displays)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20987 a1c6a512-1295-4272-9138-f99709370657
2009-05-19 14:43:37 +00:00
Rafaël Carré
1dfeba5702
Sansa Clip : ignore previous setting of CGU_DBOP (do not use ORR)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20986 a1c6a512-1295-4272-9138-f99709370657
2009-05-19 14:43:26 +00:00
Rafaël Carré
49c25816f0
Sansa AMS i2c : fix 2 problems identified by Jack Halpin & Bertrik Sikken
...
i2c clock frequency uses pclk as reference, not plla
i2c clock divider is only 10 bits, not 16
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20929 a1c6a512-1295-4272-9138-f99709370657
2009-05-14 09:36:56 +00:00
Rafaël Carré
8033342d0f
Sansa AMS : remove mci_set_clock_divider()
...
Inline the 2 uses, and use a preprocessor sanity check for identification frequency
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20924 a1c6a512-1295-4272-9138-f99709370657
2009-05-13 08:27:33 +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é
c58aaee55f
Sansa Clip : remove unused variable xoffset from lcd driver
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20920 a1c6a512-1295-4272-9138-f99709370657
2009-05-12 13:24:13 +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
Bertrik Sikken
b5886beb81
Allow a clock divider larger than 255 for the internal i2c bus to the as3525 ascodec.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20861 a1c6a512-1295-4272-9138-f99709370657
2009-05-06 17:33:56 +00:00
Thomas Martitz
3c5e67516b
FS#10151 - e200v2: scrollwheel acceleration by Dustin Skoracki. Improves the scroll wheel acceleration on the e200v2 mainly by not decrementing the counter which which causes the acceleration if a wheel read was missed due to lcd operation.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20822 a1c6a512-1295-4272-9138-f99709370657
2009-04-29 20:50:12 +00:00
Bertrik Sikken
0d6a28edc3
Enable FM radio on the sansa c200v2 (untested).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20809 a1c6a512-1295-4272-9138-f99709370657
2009-04-26 21:28:34 +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
Thomas Martitz
ace509a2ff
FS#10158 - e200v2 button delay revisited by Michael Chicoine to fix some weirdnesses with button reading.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20800 a1c6a512-1295-4272-9138-f99709370657
2009-04-26 11:05:53 +00:00
Thomas Martitz
6abae1f124
Remove the calls to backlight_lcd_sleep_countdown from target specific code and move it into backlight.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20793 a1c6a512-1295-4272-9138-f99709370657
2009-04-26 01:23:39 +00:00
Bertrik Sikken
dccdce6c3c
Remove unnecessary #include "adc.h"
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20791 a1c6a512-1295-4272-9138-f99709370657
2009-04-25 22:24:59 +00:00
Thomas Martitz
e29358c154
Fix FS#10128 - The View IO Ports debug menu showed weird dbop values (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-20 20:11:01 +00:00
Thomas Martitz
aef5731d71
FS#10148 by Dustin Skoracki, removes a redundant check for != BUTTON_NONE in the scrollwheel drivers.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20744 a1c6a512-1295-4272-9138-f99709370657
2009-04-19 17:05:36 +00:00
Thomas Martitz
42f5973177
Few Fuze/e200v2 button fixes. Don't read the scrollwheel when the hold 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-13 17:10:52 +00:00
Thomas Martitz
c48f4c6be4
FS#10127 - Sansa e200v2: wrapping in menus by Dustin Skoracki and me. Implements better list wrap handling mostly by taking Fuze's scrollwheel driver, but with tweaks w.r.t. to BUTTON_REPEAT to make it work on the e200v2.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20700 a1c6a512-1295-4272-9138-f99709370657
2009-04-13 14:08:43 +00:00