Commit graph

2963 commits

Author SHA1 Message Date
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
Rafaël Carré
a60463e636 usb-drv-as3525v2.c: simplify
don't interrupt on unhandled events

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31232 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 20:38:57 +00:00
Rafaël Carré
9e8590ad23 usb-drv-as3525v2.c: simplify a lot
code, especially init sequence, is much more similar to usb-s3c6400x.c

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31231 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 19:53:19 +00:00
Rafaël Carré
8afdad69c7 fix red
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31230 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 08:16:46 +00:00
Rafaël Carré
e4bee2b109 usb-s3c6400 : simplify
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31229 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 08:12:19 +00:00
Rafaël Carré
1afe28072a usb-drv-as3525v2: use correct input endpoint list size
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31228 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 07:11:54 +00:00
Rafaël Carré
ff0ba04ff6 fix previous commit
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31227 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 06:32:48 +00:00
Rafaël Carré
5c81130b48 usb-drv-as3525v2: don't include ep0 twice in the IN ep list
simplify

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31225 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 06:29:56 +00:00
Rafaël Carré
89fa72f13f usb-s3c6400: merge DIEP* and DOEP* in a macro with an extra parameter
minor cosmetics / simplification

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31224 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 06:17:57 +00:00
Rafaël Carré
c1d789acdb usb-s3c6400x.c: use defines instead of hardcoded bitfields
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31222 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 05:13:22 +00:00
Rafaël Carré
9c31062f05 usb-drv-as3525v2.c: cosmetics
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31221 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 05:13:10 +00:00
Rafaël Carré
bc943a06ba Move usb-s3c6400 register comments to usb-s3c6400.h
Use common defines in usb-s3c6400.c and usb-drv-as3525v2.c

No functional changes

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31220 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 04:21:06 +00:00
Michael Sevakis
184459fa54 Deal with a complication when transferring recording method from PP5024: since the FIFO POP is always read until empty, keep track of sample parity instead of always saving the first one in the FIFO upon entering the ISR or else the first of a duplicate that is also the last in the FIFO would get duplicated. Also, give top priority to audio interrupts in all cases.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31218 a1c6a512-1295-4272-9138-f99709370657
2011-12-12 20:12:22 +00:00
Michael Sevakis
09722dd28d thread.c includes gcc_extensions.h and thread-XXX.c files are includes inside thread.c therefore do not require their own.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31206 a1c6a512-1295-4272-9138-f99709370657
2011-12-10 20:47:59 +00:00
Bertrik Sikken
75f2e4551c AMS(v2): fix system_reboot by re-enabling the internal ROM clock just before rebooting
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31196 a1c6a512-1295-4272-9138-f99709370657
2011-12-10 11:28:00 +00:00
Boris Gjenero
11b661e45c Add labels for calculating RAM usage on tms320dm320 targets. Thanks to Rafaël Carré for pointing this out.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31192 a1c6a512-1295-4272-9138-f99709370657
2011-12-09 20:45:14 +00:00
Boris Gjenero
8906b3e659 Convert remaining __attribute__((noreturn)) to NORETURN_ATTR.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31189 a1c6a512-1295-4272-9138-f99709370657
2011-12-09 16:13:03 +00:00
Boris Gjenero
59e71ee80c Introduce USED_ATTR wrapper for __attribute__((used)).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31188 a1c6a512-1295-4272-9138-f99709370657
2011-12-09 15:33:59 +00:00
Boris Gjenero
e4dbcc414b FS#12418 - Merge prototypes from ata-target.h files into new file ata-driver.h. After this change:
- ata.h is for users of ata.c
- ata-driver.h is for functions implemented by target-specific code and used by ata.c
- ata-target.h is for target-specific defines


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31182 a1c6a512-1295-4272-9138-f99709370657
2011-12-08 21:23:53 +00:00
Michael Sevakis
e42a3194de AS3525v1/v2:
Fix problems with volume of recorded material by converting 14-bit samples to
16-bit. Remove duplicate samples from recorded data and support proper
samplerate since ADC runs 1/2 the codec clock. Support monitoring mono on both
output channels by feeding data manually to I2SOUT under the right conditions.

DMA is no longer used for recording since frames must be processed as described
above but it does allow full-duplex audio.

Miscellaneous change includes a proper constant (HW_SAMPR_DEFAULT) to reset the
hardware samplerate when recording is closed. PP5024 and AS3525 have different
default recording rates (22kHz and 44kHz respectively) but both have half-speed
ADC.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31180 a1c6a512-1295-4272-9138-f99709370657
2011-12-08 19:20:00 +00:00
Tomasz Moń
bac6a70184 Sansa Connect: Revise codec initialization/shutdown.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31149 a1c6a512-1295-4272-9138-f99709370657
2011-12-05 09:53:23 +00:00
Tomasz Moń
2ee9facc11 Power management is to be kept in target tree due to being target specific.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31136 a1c6a512-1295-4272-9138-f99709370657
2011-12-04 09:48:10 +00:00
Tomasz Moń
de712eebbd Sansa Connect: Add TPS65021 (Power Management) driver.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31135 a1c6a512-1295-4272-9138-f99709370657
2011-12-04 08:24:08 +00:00