Commit graph

94 commits

Author SHA1 Message Date
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
Rafaël Carré
5302448e68 Sansa AMS: Don't make sd_init() fail if a SD card is not present in the slot
Fix contributed by kugel

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19126 a1c6a512-1295-4272-9138-f99709370657
2008-11-17 16:06:46 +00:00
Rafaël Carré
aeb60e20a3 Sansa AMS: when not in the bootloader, disable fast hardware power off
A button press of ~10s will trigger the hardware power off instead of ~1s

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19123 a1c6a512-1295-4272-9138-f99709370657
2008-11-16 22:36:13 +00:00
Rafaël Carré
d3e783b268 Fix the Sansa AMS SD driver
- Make write_sectors() function fail.
- Disable interrupts while transferring data and do not yield(), so we are sure the FIFO is not overflowed
Note this solution is only temporary since it's not friendly to other threads and confuse kernel tick precision
This will be reverted when we will be using DMA to access the SD card, but for now it permits further development
- PL180: Rename the MMC_* registers into MCI_*, to not make people believe it is a MMC only controller
- Supports non aligned destination buffers when reading
- Correct the timeout units which were lamely copied from ata-sd-pp.c and were in milliseconds (note that the timeouts are disabled now)
- Higher a bit the stack size
- Use the full initialization procedure in the bootloader and the loaded firmware
- Use the CCU_IO register only when a SD slot is present
- Put some panicf() around to catch problems

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19122 a1c6a512-1295-4272-9138-f99709370657
2008-11-16 22:26:50 +00:00
Dominik Wenger
a4c0660537 add the OF offset also for sansa fuze, and make it only for internal SD.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19108 a1c6a512-1295-4272-9138-f99709370657
2008-11-15 19:24:51 +00:00
Dominik Wenger
83dc89f751 m200v4: make buttons work again (added a small delay). make m200 keymap better. Add button mappings for the sim. Remove some config defines temporary to make building work again.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19104 a1c6a512-1295-4272-9138-f99709370657
2008-11-14 21:57:43 +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
0d812dd235 FS#9535 - Sansa Fuze sim
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19086 a1c6a512-1295-4272-9138-f99709370657
2008-11-11 11:26:07 +00:00
Rafaël Carré
c48001b172 Sansa AMS: remove symbol already defined in audio/as3514.c driver
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19078 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 21:04:32 +00:00
Rafaël Carré
d4c4faaec8 Sansa AMS: declare ascodec_init() function in the header
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19077 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 20:59:10 +00:00
Rafaël Carré
02dfae031a Sansa AMS: use the AS3514 ADC driver
Move the ADC defines to as3514.h, and make adc-target.h only include as3514.h
Implement the missing API (ascodec_readbytes, ascodec_(un)lock)

Revert the changes to the PP-specific arm/ascodec-target.h in r19073,
use a AS3525 specific ascodec-target.h while moving the AS3514 specific
code in export/as3514.h

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19076 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 20:55:56 +00:00
Rafaël Carré
22c450a7f4 Merge target/arm/as3525/as3525-codec.h into target/arm/ascodec-target.h
The AMS Sansa use the same AS3514 registers (except USB_UTIL which was added)
Use the register defines in AMS Sansa code instead of hardcoded values

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19073 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 19:53:12 +00:00
Dave Chapman
1811858476 Revert r19069 - the m200s can't charge. Also, don't use charger_inserted() as a method for detecting USB (this gives a false positive with USB wall chargers), and protect the definition of charger_inserted() with #if CONFIG_CHARGING.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19071 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 18:15:52 +00:00
Dominik Wenger
b25f903360 make m200v4 build compilable.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19070 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 17:41:18 +00:00
Jonathan Gordon
889b8c96da quick fix for the e200v2 to skip the OF
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19067 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 13:01:46 +00:00
Rafaël Carré
59a9699027 Fuze: remove an unused variable
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19066 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 11:14:09 +00:00
Rafaël Carré
6b566568eb Fix Clip firmware building by adding missing symbols
Implement some of the new functions
Use as3514 rtc
Add AS3525 case in rolo.c
Copy card_get_info_target() from ata-sd-pp.c , and use the correct 32bits words order

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19064 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 11:04:43 +00:00
Daniel Stenberg
b52a3da2b5 ... and the entire dir is renamed too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19063 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 10:21:36 +00:00
Daniel Stenberg
55634f7410 grrr, I need to learn to do case insensitive grepping when that's the better idea...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19062 a1c6a512-1295-4272-9138-f99709370657
2008-11-10 09:50:25 +00:00