Commit graph

3596 commits

Author SHA1 Message Date
Tomasz Moń
37f4dfc259 TMS320DM320: Prevent lockup in udelay() when this function is called with interrupts disabled.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31392 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 14:56:22 +00:00
Tomasz Moń
3aced71e54 Sansa Connect: Put DAC (needed for analog video output) in Powerdown mode.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31391 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 12:52:36 +00:00
Tomasz Moń
d63b19ab49 Fix comment in sdmmc to reflect what it really means.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31390 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 11:55:12 +00:00
Tomasz Moń
31c0842cd6 Sansa Connect: Don't enable DAC clock as it's not necessary.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31389 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 10:45:03 +00:00
Tomasz Moń
013384f138 Sansa Connect: Add udelay() in sdmmc card initialization to prevent dead locks.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31388 a1c6a512-1295-4272-9138-f99709370657
2011-12-21 09:58:03 +00:00
Tomasz Moń
44d1a26271 Sansa Connect: use udelay() in AVR spi_txrx().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31377 a1c6a512-1295-4272-9138-f99709370657
2011-12-20 13:36:43 +00:00
Tomasz Moń
4aec001244 TMS320DM320: Use TIMER1 (tick generator) to make udelay() precise.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31376 a1c6a512-1295-4272-9138-f99709370657
2011-12-20 12:49:59 +00:00
Tomasz Moń
c24a36dd9d Sansa Connect: Disable EMIF clock after booting main binary. Raise the threshold values for battery dangerous and shutoff levels.
On this player EMIF is needed for accessing NOR flash. Disabling it improves battery runtime by about 25 minutes.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31373 a1c6a512-1295-4272-9138-f99709370657
2011-12-20 06:21:58 +00:00
Rafaël Carré
74516e06e7 usb-drv-as3525v2: revert part of r31243
assigning a partially initialized structure (through casting) will
initialize members unspecified in the initialization

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31372 a1c6a512-1295-4272-9138-f99709370657
2011-12-19 23:10:41 +00:00
Boris Gjenero
fdc29d0ea4 Add more INIT_ATTR and add config.h includes to header files with INIT_ATTR.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31370 a1c6a512-1295-4272-9138-f99709370657
2011-12-19 20:12:52 +00:00
Thomas Martitz
287454de2e Hosted/linux: Add process/cpu info screen to the debug menu.
The new menu is very helpful on RaaA, but also shown in the sim. It shows
the process cpu usage, process' time stats (user,sys,real) and the cpu
frequency stats.

It uses a thread to sample the data, however the thread is not created
until the menu is visited for the first time.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31364 a1c6a512-1295-4272-9138-f99709370657
2011-12-19 15:42:04 +00:00
Tomasz Moń
b98d03f4c3 TMS320DM320: Turn on Image Buffer clock on demand (FS #12462)
This improves battery runtime on Sansa Connect by approximately 40 minutes.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31358 a1c6a512-1295-4272-9138-f99709370657
2011-12-19 06:39:07 +00:00
Tomasz Moń
2d8fd040d8 Sansa Connect: Use Image Buffer for screen updates.
This improves framerate update (when uboosted, approximate values) from 151 fps to 911 fps for whole screen update and from 432 fps to 3017 fps for quarter screen update.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31357 a1c6a512-1295-4272-9138-f99709370657
2011-12-19 06:31:49 +00:00
Rafaël Carré
676708c43f AMSv2: enable storage write in bootloader
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31355 a1c6a512-1295-4272-9138-f99709370657
2011-12-18 21:35:51 +00:00
Michael Sevakis
292e7cab73 Gigabeat S: PMIC SPI improvement and bugfixes.
Nick some aspects from the as3525 ascodec driver to improve throughput in
the beast's SPI communications by switching tranfer descriptors to the
caller's stack and getting rid of thread synchronization.

Fix a bug that suddenly became obvious that could permanently stall the SPI
driver because all data could be shifted out before the interrupt could get
serviced. In that case, it needs a kick to restart it. Should probably put
the SPI interrupt priority above DVFS.

A tweak to the event registration interface to simplify it.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31353 a1c6a512-1295-4272-9138-f99709370657
2011-12-18 10:41:43 +00:00
Boris Gjenero
ca9111ef64 Add KEEP() around vectors in linker scripts.
Vectors are needed by the CPU, but they don't need to be accessed by Rockbox.
Without the KEEP(), they can be removed when liking with --gc-sections, 
creating a broken binary without any warnings. This tells the linker to not
remove them. It should enable use of --gc-sections for all targets. When not
using --gc-sections, this does not change the binary.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31351 a1c6a512-1295-4272-9138-f99709370657
2011-12-18 06:43:08 +00:00
Bertrik Sikken
73627cef62 Try to fix r31346
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31347 a1c6a512-1295-4272-9138-f99709370657
2011-12-17 20:34:27 +00:00
Bertrik Sikken
8c19dcd598 FS#12370: Initial RDS support for Si4701/Si4703 tuner (beast and clip zip)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31346 a1c6a512-1295-4272-9138-f99709370657
2011-12-17 20:24:19 +00:00
Boris Gjenero
17ed3253fc Add const to global pointers to strings.
When a global pointer is not declared as constant, gcc will put it in
memory. Getting the address of the string it points to requires loading
the address of the pointer and then loading the pointer. When the pointer
is declared constant, the address of the string is loaded directly.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31345 a1c6a512-1295-4272-9138-f99709370657
2011-12-17 18:31:55 +00:00
Michael Sevakis
09769827fe Swap red and yellow for green on r31339's cranky builds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31340 a1c6a512-1295-4272-9138-f99709370657
2011-12-17 07:54:00 +00:00
Michael Sevakis
6a67707b5e Commit to certain names for cache coherency APIs and discard the aliases.
Wouldn't surprise me a bit to get some non-green.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31339 a1c6a512-1295-4272-9138-f99709370657
2011-12-17 07:27:24 +00:00
Michael Sevakis
43d7a75369 Get the linker files that slipped through in r31337.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31338 a1c6a512-1295-4272-9138-f99709370657
2011-12-17 02:00:59 +00:00
Michael Sevakis
28dec004c0 Do some things to make -ffunction-sections work better.
* Add wildcards to various sections placements a la *(".text") => "*(.text*)"
* Remove hacky bits from those linker scripts (no problem encountered testing)
* Change section for asm functions from .<section> to .<section>.<function>
  so that -ffunction-sections works for those asm file too.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31337 a1c6a512-1295-4272-9138-f99709370657
2011-12-17 01:43:32 +00:00
Michael Sevakis
95e6043d5e Convert remaining memframe LCDs that can be convert to common code.
Massage the way it interfaces a bit to make things more flexible.
The chroma_buf scheme on Sansa Connect and Creative ZVx calling the
lcd_write_yuv420_lines implementation in lcd-as-memframe.S with five params
with a chroma buffer that the function can't use wouldn't work anyway so just
have them use the stock implementation (really, how was that working?).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31335 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 23:40:39 +00:00
Tomasz Moń
a0b81bdbfc Sansa Connect: Disable USB clocks when disconnected.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31323 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 11:20:38 +00:00
Michael Sevakis
71bb87e3fc Fix r31311 red and yellow.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31312 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 23:24:35 +00:00
Michael Sevakis
62facd1ff2 Collect some of the memory frame LCD C code.
For this commit: Sansa e200v1, Gigabeat F, Gigabeat S and Mini2440 are
changed over. Quite a number of other targets probably can be as well.

General LCD code is moved out of the target drivers into
drivers/lcd-memframe.c.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31311 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 23:07:11 +00:00
Michael Sparmann
bb2ff25658 Un-break nano2g USB
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31309 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 22:14:24 +00:00
Rafaël Carré
97fc699b12 typo
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31286 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 19:42:21 +00:00
Rafaël Carré
521512f88a tuner-as3525v2.c: only build what's needed
add a comment about why we don't return 0 when no tuner was detected
build the file on all as3525v2 targets

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31284 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 19:38:11 +00:00
Amaury Pouly
8632f955f4 Remove two useless variable and hopefully finally fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31274 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 17:28:30 +00:00
Amaury Pouly
39148be8ac imx233: fix to typo and remove a forgotten panic
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31269 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 17:07:15 +00:00
Amaury Pouly
489296afa3 imx233/fuze+: add support for sd card, enable FAT16 support because it's common on sd cards
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31268 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 17:06:55 +00:00
Tomasz Moń
ddd594b03e Sansa Connect: Use sleep() instead udelay() in AVR spi_txrx.
This should prevent buffer underruns that can occur during heavy use of buttons or scrollwheel.



git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31267 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 15:33:53 +00:00
Rafaël Carré
89aec97f3d usb-s3c6400: 0x10000000 (bit 28) is DEPCTL_setd0pid
fix another mistake introduced in r31222
usb-drv-as3525v2 additionally sets bit DEPCTL_usbactep in this function.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31266 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 06:44:50 +00:00
Rafaël Carré
fc8d4b2552 usb-s3c6400: fix error introduced r31222
0x00200000 is DEPCTL_stall, not DEPCTL_naksts
the function names should have been a strong indication..

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31265 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 06:38:28 +00:00
Michael Sevakis
2026c9506c Commit the ascodec-as3525.c/ascodec-target.h changes from FS#12452 that keep ascodec_read/write_pmu from keeping interrupts disabled for the full duration of two I2C transfers, which can contribute to I2S PUSH/POP FIFO under/over-flows. 'Tis peppered with a couple interrupt safety mods as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31264 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 03:30:03 +00:00
Michael Sevakis
47bade1437 Simplify and neaten-up usb.c a bit. USB_INSERTED and USB_EXTRACTED are always used as events to indicate cable state. USB_HOSTED is posted to indicated that a host was detected.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31263 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 00:14:36 +00:00
Rafaël Carré
273fbadb55 Clipv2: fix buttons broken by me in r31235
output pins were not correct
xor pin readout with initial value (reversed between the 2 clips)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31255 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 21:04:04 +00:00
Rafaël Carré
b366d63f03 Sansa AMSv2: don't panic if microsd init failed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31254 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 18:37:51 +00:00
Rafaël Carré
d985d65907 usb-drv-as3525v2: make it look more like usb-s3c6400
use 0, 1, 3 as input endpoints instead of 0, 3, 5 (0, 1, 3, 5 doesn't work)
use a helper to know the number of endpoints (could be hardcoded since we have 3 input and 3 outputs)
    previous check was not correct (sizeof(if?a:b))

change endpoint reset/request
set packet size at enumdone interrupt
we don't have isochronous or interrupt endpoints, remove that table
reverse usb_drv_transfer direction argument (in -> out)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31251 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 17:12:52 +00:00
Rafaël Carré
02c5b3b256 Sansa AMSv2: enable usb storage in bootloader
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31249 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 15:42:04 +00:00
Rafaël Carré
b73dd01f2c usb-s3c6400: fix confusion between USB_DIR_IN and DIR_IN
usb_drv_request_endpoint() would return an endpoint with the other direction

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31248 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 15:31:27 +00:00
Rafaël Carré
7af94b4427 usb-drv-as3525v2: cosmetics
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31244 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 06:34:03 +00:00
Rafaël Carré
e062c7a6c3 usb-drv-as3525v2: simplify usb_reset isr
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31243 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 06:30:36 +00:00
Rafaël Carré
26b31f1a17 usb-s3c6400: make isr more clear
DIEPINT_timeout and DOEPINT_setup are the same bit
Use separate cases so the code is more clear

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31242 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 06:30:16 +00:00
Rafaël Carré
3b00460701 usb-s3c6400: fix more index / endpoint number confusion
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31237 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 00:30:16 +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
Amaury Pouly
744adcba81 imx233: add comment about block reset
fuze+: reset the controller for all lcd types, should fix the "CRT effet"

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31234 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 22:48:01 +00:00
Rafaël Carré
1096cc08c0 usb-s3c6400: fix endpoint array traversal in interrupt handler
fix r31219

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31233 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 22:13:15 +00:00