Dominik Wenger
02184a242e
make fmradio-i2c code from clip more generic, so it works for m200v4 and hopefully all other as3525 targets.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19370 a1c6a512-1295-4272-9138-f99709370657
2008-12-09 17:21:16 +00:00
Bertrik Sikken
ed96b2a4dd
Sansa Clip: implement the fmradio_i2c interface using generic_i2c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19366 a1c6a512-1295-4272-9138-f99709370657
2008-12-08 19:32:05 +00:00
Rafaël Carré
9856a37de3
Sansa Clip: revert 19353
...
If we don't set pin B6 to 1, display can go off at random times
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19364 a1c6a512-1295-4272-9138-f99709370657
2008-12-08 16:39:55 +00:00
Frank Gevaerts
3648e87054
Add small delays before lcd_write_data() and lcd_write_command(). This seems to be needed on some clips (i.e. mine)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19354 a1c6a512-1295-4272-9138-f99709370657
2008-12-06 16:39:49 +00:00
Rafaël Carré
8956f2b7f5
Sansa Clip: No need to use GPIO pin B6 in LCD
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19353 a1c6a512-1295-4272-9138-f99709370657
2008-12-06 01:30:46 +00:00
Rafaël Carré
68be3b15a5
Sansa Clip: No need to use GPIO pin B5 in LCD - it's likely used in FM
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19352 a1c6a512-1295-4272-9138-f99709370657
2008-12-05 21:57:49 +00:00
Rafaël Carré
ab64424598
Sansa AMS: use vectored interrupts
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19351 a1c6a512-1295-4272-9138-f99709370657
2008-12-05 17:10:11 +00:00
Rafaël Carré
f07aa65117
Sansa AMS: correct VIC registers usage
...
* Do not use |= on write only registers
* Do use it in when setting kernel tick timer
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19350 a1c6a512-1295-4272-9138-f99709370657
2008-12-05 14:37:28 +00:00
Rafaël Carré
e3a970f4eb
Sansa AMS "High Mem" : fix main binary linking broken by r19342
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19346 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 23:03:05 +00:00
Bertrik Sikken
894dbfac18
pcm-as3525.c : don't use |= on a write-only register (VIC_INT_EN_CLEAR).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19345 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 22:56:11 +00:00
Rafaël Carré
e97191faa7
Sansa AMS: Disable DMA clocks when not in use
...
Add dma_retain() and dma_release() to reference count the users
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19344 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 22:54:06 +00:00
Rafaël Carré
3e4f3fe70e
Sansa AMS: disable I2SOUT clocks when playback is stopped
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19343 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 22:54:02 +00:00
Rafaël Carré
6aa807d321
Sansa AMS: PCM driver (FS#9592)
...
Note that on low memory targets (Clip/m200v4 tested) you will encounter
random crashes. Applying FS#9332 seems to help a lot.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19342 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 22:27:48 +00:00
Rafaël Carré
38e97057a9
Sansa AMS: Don't allocate stack in irq_handler
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19338 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 21:55:20 +00:00
Rafaël Carré
8e19a739be
Sansa AMS SD driver: don't check non fatal flags of MCI_STATUS
...
Correct the logic when enabling interrupt line (multivolume)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19337 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 21:55:09 +00:00
Rafaël Carré
1ab08e6879
Sansa AMS: updates DMA API
...
* Adds a callback to be called on end of transfer
* Add a function to disable a channel
* Services the 2 channels if both are active in the isr
SD driver: panics on error
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19333 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 20:48:19 +00:00
Rafaël Carré
76617c8f94
Sansa Clip: remove unused variable
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19332 a1c6a512-1295-4272-9138-f99709370657
2008-12-04 20:37:23 +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
Michael Sevakis
58eb784a5d
Straighten out some powermanagement stuff. Give target complete control over how power inputs are sensed. Clean SIMULATOR stuff out of target files. Get rid of USB charging option on targets that don't support it or don't implement it yet. Menu string remains to avoid language incompatibility but should be removed on next cleanup for targets not using it (notice in english.lang). global_settings becomes incompatible for some builds and so plugin API version is incremented.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19315 a1c6a512-1295-4272-9138-f99709370657
2008-12-03 19:54:25 +00:00
Dominik Wenger
0d0cc039f8
fix hold-button handling for m200v4.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19314 a1c6a512-1295-4272-9138-f99709370657
2008-12-03 18:41:02 +00:00
Rafaël Carré
874f4376ff
Sansa AMS: ignore buttons when hold switch is on
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19311 a1c6a512-1295-4272-9138-f99709370657
2008-12-03 11:30:18 +00:00
Bertrik Sikken
d9116da5de
Move Clip specific power management stuff (specifically the battery discarge curve) to powermgmt-clip.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19303 a1c6a512-1295-4272-9138-f99709370657
2008-12-02 19:50:31 +00:00
Rafaël Carré
6840cd1277
Sansa Clip: Do not return HOLD status in button_read_device()
...
It is read separately, and so backlight/buttonlight can be disabled
while hold switch is on
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19302 a1c6a512-1295-4272-9138-f99709370657
2008-12-02 17:37:23 +00:00
Rafaël Carré
a783453ff9
Sansa AMS: sd_enable() isn't available in the bootloader
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19281 a1c6a512-1295-4272-9138-f99709370657
2008-12-01 08:18:22 +00:00
Rafaël Carré
ce851c0c67
Sansa AMS: disable SD clocks when not in use (copied from FS#9570)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19280 a1c6a512-1295-4272-9138-f99709370657
2008-12-01 04:17:39 +00:00
Rafaël Carré
50519416ca
Sansa Clip : save one instruction per 8 pixels loop in lcd_grey_data
...
We set directly the needed bits to write into DBOP_DOUT (15:13 and 3:0)
Since we can't set the mask 0xf00f with one mov instruction, revert the
logic and use orrne instead of biceq (in the whole function for consistency)
Fix suggested by Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19279 a1c6a512-1295-4272-9138-f99709370657
2008-12-01 04:07:13 +00:00
Rafaël Carré
c9ba3adf0d
Sansa AMS: do not load stack and bss inside the rockbox binary (FS#9593)
...
Define _loadaddress to fix RAM usage reported by mkinfo.pl
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19278 a1c6a512-1295-4272-9138-f99709370657
2008-12-01 03:54:27 +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
Dominik Wenger
fbb80b00db
Init the ata_sd mutex before use.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19266 a1c6a512-1295-4272-9138-f99709370657
2008-11-30 11:38:26 +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
Rafaël Carré
4a4c3c5cb0
Sansa Fuze: do not modify the CCU_IO register since we don't use GPIOD
...
Finding by Thomas Martitz
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19257 a1c6a512-1295-4272-9138-f99709370657
2008-11-28 11:51:09 +00:00
Rafaël Carré
82c5101e57
Sansa Fuze: remove left over copy-pasta (fix status bar flickering)
...
Patch by Daniel Weigl
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19256 a1c6a512-1295-4272-9138-f99709370657
2008-11-28 10:53:58 +00:00
Rafaël Carré
81fe625a62
Sansa Clip: grey lib support (not calibrated yet)
...
Declare HAVE_LCD_INVERT
Put the framebuffer into IRAM
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19249 a1c6a512-1295-4272-9138-f99709370657
2008-11-27 21:07:54 +00:00
Rafaël Carré
4e4b1d00f9
Sansa AMS: make set_cpu_frequency() handle frequency 0
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19240 a1c6a512-1295-4272-9138-f99709370657
2008-11-26 23:19:13 +00:00
Rafaël Carré
97e907538a
Sansa AMS: implement set_cpu_frequency()
...
Use a 24MHz peripheral clock instead of 64MHz for battery life
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19234 a1c6a512-1295-4272-9138-f99709370657
2008-11-26 16:46:12 +00:00
Rafaël Carré
a39e4e9962
Sansa AMS: use non-busy wakeup to signal end of DMA transfer
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19233 a1c6a512-1295-4272-9138-f99709370657
2008-11-26 16:02:00 +00:00
Rafaël Carré
1735056864
Sansa AMS: kernel functions need the timer definitions
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19230 a1c6a512-1295-4272-9138-f99709370657
2008-11-26 14:42:40 +00:00
Rafaël Carré
a6ec0293cc
Sansa AMS: correct timer definition (clk_main == 24MHz / 16)
...
make timer-target.h common to all AMS targets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19229 a1c6a512-1295-4272-9138-f99709370657
2008-11-26 14:40:57 +00:00
Steve Bavin
b70f575023
Fix reds. Also note my r19221 commit message had a typo - shoudld have been e200/c200, not e100.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19224 a1c6a512-1295-4272-9138-f99709370657
2008-11-26 10:21:03 +00:00
Bertrik Sikken
3e965fd6c3
Enable display contrast setting and implement flip for the Clip.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19219 a1c6a512-1295-4272-9138-f99709370657
2008-11-25 22:29:17 +00:00
Rafaël Carré
c1f90b1881
Sansa AMS: Use DMA for SD transfers (read and write)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19211 a1c6a512-1295-4272-9138-f99709370657
2008-11-25 13:38:32 +00:00
Björn Stenberg
8486cb96c1
Preliminary button driver for Sansa Fuze. FS#9575 by Thomas Martitz.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19206 a1c6a512-1295-4272-9138-f99709370657
2008-11-24 20:51:05 +00:00
Bertrik Sikken
0cd64abe25
Rename BUTTON_VOLUP to BUTTON_VOL_UP in definition of BUTTON_MAIN for Sansa Clip.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19191 a1c6a512-1295-4272-9138-f99709370657
2008-11-23 23:16:23 +00:00
Bertrik Sikken
078753395d
Implement a basic uncalibrated battery reading for all as3525 targets with a lithium battery.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19189 a1c6a512-1295-4272-9138-f99709370657
2008-11-23 15:00:44 +00:00
Bertrik Sikken
763aacc311
Initialise mutex before using it in as3525-codec.c, also use mutex for single codec register accesses.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19187 a1c6a512-1295-4272-9138-f99709370657
2008-11-23 12:24:47 +00:00
Bertrik Sikken
9701ffbe23
Added power.h include to power-as3525.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19183 a1c6a512-1295-4272-9138-f99709370657
2008-11-22 20:55:46 +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
Rafaël Carré
73b3f5417f
Sansa Clip: backlight brightness is not possible, so remove references to it
...
We don't need to mess with CCU_IO register (it's only needed for targets
with a SD slot) so don't keep its value when changing buttonlight
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19139 a1c6a512-1295-4272-9138-f99709370657
2008-11-18 17:40:32 +00:00
Rafaël Carré
678b6d02ac
Sansa AMS: Use IRAM (in app linker script and crt0.S)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19137 a1c6a512-1295-4272-9138-f99709370657
2008-11-18 17:15:56 +00:00
Dave Chapman
de89a00cca
Correct the xoffset used when display_flipped is false - fixes the display in the main Rockbox build.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19128 a1c6a512-1295-4272-9138-f99709370657
2008-11-17 20:08:09 +00:00