1
0
Fork 0
forked from len0rd/rockbox
Commit graph

3042 commits

Author SHA1 Message Date
Jack Halpin
db8d07589f ad-as3525v2: Ask for a reponse from SD_APP_CMD to help with timing issues when switching to 4 bit widebus.
Some SD cards were having problems switching to 4 Bit widebus and this solution appears to remedy that.
Thanks to Luca_S!

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25846 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 18:53:41 +00:00
Thomas Martitz
0a1d7c28b7 Make open() posix compliant api-wise. A few calls (those with O_CREAT) need the additional optional mode parameter so add it. Impact for the core is almost zero, as open() is a wrapper macro for the real open function which doesn't take the variable parameter.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25844 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 17:35:13 +00:00
Marcin Bukat
684c70bac5 HD200 - fix stupid bug in lcd_grey_data
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25842 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 14:33:19 +00:00
Michael Sevakis
0defb8483c Gigabeat S bootloader: Fix archaic call placement in dptc_stop which hangs the bootloader before jumping to FW. Let the backlight LED ramp up after unplugging USB which just looks better.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25840 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 04:45:05 +00:00
Michael Sevakis
992b7e10b8 Gigabeat S: There's no compelling reason to start automatic scaling in the bootloader only stop it milliseconds later. Do init to default frequency and working point, however.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25839 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 04:17:34 +00:00
Michael Sevakis
021f9e9e56 Changed a macro to a raw in int constant. Didn't mean to do that. Put it back right.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25838 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 03:30:59 +00:00
Michael Sevakis
a36a498c57 i.MX31/Gigabeat S: This should fix stability problems. One problem was to start using the DVFS controller properly so that interrupts will be masked at the lowest and highest frequency indexes. Millions of useless interrupts were occurring at 132MHz because its index was 2, not 3, which masks it automatically when it can't go slower. Stopping the flood was enough to actually see the difference in general. IRQ must be disabled when fiddling with the CCM registers and only enabled when waiting for voltage ramp as having them enables also causes spurious DVFS ints. Implement interruptible ISR pro/epilogue more safely (always using IRQ stack even in SVC mode handling). Fix an improper inequality in DVFS code (which set regs for down when going up and v.v.). Misc. support changes. Have internal tables take less RAM.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25837 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 03:23:51 +00:00
Jack Halpin
8fd3ec9727 sd-as3525v2.c: Set MCI interrupt mask immediately prior to enabling DMA for the transfer.
These INT's shouldn't be unmasked until the transfer is just about to happen.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25836 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 20:04:16 +00:00
Michael Sevakis
630b4fc555 i.MX31/Gigabeat S: The nested IRQ code was just totally wrong and not actually working anyway (which is why it wasn't crashing). AVIC doesn't seem truthful about priority of current ISR either :\. Sometimes there were channel swaps during really active DVFS due to FIFO underflow from a needed long delay in the ISR (100us, and IIS TX only has 45us reserve) and DMARQ *must* be serviced low-latency. Get it doing as was intended.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25822 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 07:15:20 +00:00
Jack Halpin
08641941bb sd-as3525v2.c: Implement 4 bit widebus for SD Transfers.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25820 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 04:35:08 +00:00
Rafaël Carré
145135f99f Fuzev2: don't disable interrupts in fm code, allow button tick to run
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25819 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 04:13:15 +00:00
Rafaël Carré
a69e1c4a44 Fuzev2: FM - tested on 2 different models
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25818 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 04:06:44 +00:00
Rafaël Carré
aec0af5413 as3525 FM i2c : don't assume SCL and SDA are on the same GPIO
This seems to be the case for the Fuzev2

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25817 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 02:27:18 +00:00
Rafaël Carré
d11f5a7e5f as3525* : all as3525(v1) use ADC_BVDD for reading battery
all as3525v2 use ADC_CHG_IN because ADC_BVDD is way too high when charging
Fuzev2 now displays battery icon correctly when charging

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25815 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 01:28:37 +00:00
Jack Halpin
adcbb32966 sd-as3525v2: Check for response timeout error in addition to response crc error. Remove TODO comment.
Change SD_SELECT/DESELECT_CARD commands to MCI_NO_RESP as we don't need a response here.
Renumber some command errors.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25811 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 17:29:26 +00:00
Marcin Bukat
6a2b516f48 HD200 - fix random partition corruption on USB unplug (hopefully)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25807 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 12:25:57 +00:00
Marcin Bukat
bccdcf2003 HD200 - move adc channel variable to iram as it is used in ISR
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25805 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 11:15:36 +00:00
Marcin Bukat
5ad4d138d7 HD200 - fix backlight flashes during startup
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25804 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 11:14:59 +00:00
Michael Sevakis
4048a1cf4b Merely correct a comment.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25802 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 10:43:32 +00:00
Michael Sevakis
5edcb11f44 i.MX31/Gigabeat S: Just a little paranoid change to switcher write to active regulators method, to keep things localized a bit more from global data pool, for safety's sake. It's going to Mars afterall.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25801 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 10:37:06 +00:00
Michael Sevakis
931e06de64 i.MX31/Gigabeat S: Actually enable DPTC which can set optimal voltage for 528MHz. Requires an SPI and PMIC interface rework because of the low-latency needs for the DPTC to work best with minimal panicing. SPI can work with multitasking and asynchronously from interrupt handlers or normal code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25800 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 10:07:53 +00:00
Rafaël Carré
7480afb3c5 as3525v2: Use CD Interrupt vs. CD polling in send_cmd()
Also enable write support, test_disk passes on all targets

Flyspray: FS#11140
Authors: Jack Halpin and myself

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25799 a1c6a512-1295-4272-9138-f99709370657
2010-05-03 22:15:56 +00:00
Maurus Cuelenaere
056f608f78 Ingenic Jz4740: eliminate EP0 state machine + small cleanups
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25797 a1c6a512-1295-4272-9138-f99709370657
2010-05-03 20:36:34 +00:00
Maurus Cuelenaere
35f341464b Ingenic Jz4740: cleanup USB driver a bit (no externally visible functional changes)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25796 a1c6a512-1295-4272-9138-f99709370657
2010-05-03 19:18:10 +00:00
Michael Sevakis
b3f1eb8bba Gigabeat S: Those odd calls to irq_handler can still happen rarely after executing WFI. With no explanation forthcoming after trying many things, hide head in sand and ignore them and the IRQ will get vectored to the correct handler anyway. Have vector tables execute an immediate return and remove irq_handler from compilation altogether.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25792 a1c6a512-1295-4272-9138-f99709370657
2010-05-03 07:48:00 +00:00
Jens Arnold
e891e90883 Save a few instructions by better use of conditions.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25786 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 19:36:20 +00:00
Torne Wuff
5b4a84a4ce FS#11149: alternative fix for ipod startup/shutdown issue
Instead of using the OF's low-battery handler to force a shutdown which appears to have numerous unwanted side effects, just clear the end of IRAM before shutting down which appears to solve the original "ipod sometimes needs hard reset to turn on" issue.

If you experience the "need hard reset" issue after this commit, please let us know. It has been tested on several models but we still don't know for sure what the original problem was. ;)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25772 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 09:41:28 +00:00
Thomas Martitz
3adac47c61 Fix wrong udelay logic that made it be way off.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25770 a1c6a512-1295-4272-9138-f99709370657
2010-05-02 02:30:06 +00:00
Marcin Bukat
88baa4d4c7 HD200 - implement blit functions
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25767 a1c6a512-1295-4272-9138-f99709370657
2010-04-30 14:13:52 +00:00
Marcin Bukat
572ac53359 HD200 - small fix in backlight code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25766 a1c6a512-1295-4272-9138-f99709370657
2010-04-30 13:59:00 +00:00
Marcin Bukat
2a50270e44 HD200 - remove moving average filtering of ADC readouts
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25765 a1c6a512-1295-4272-9138-f99709370657
2010-04-30 12:42:51 +00:00
Rafaël Carré
bc3c5c1657 sd-as3525v2: cosmetics
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25762 a1c6a512-1295-4272-9138-f99709370657
2010-04-30 08:57:56 +00:00
Marcin Bukat
c740af20e7 HD200 - add FM support.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25757 a1c6a512-1295-4272-9138-f99709370657
2010-04-29 13:14:43 +00:00
Rafaël Carré
893180d47d as3525v2: crashless cpufreq switching
delays after modifying the registers seems not to be needed
moving RAM operation (cpu_frequency variable) before modifying the
register also seems to help

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25754 a1c6a512-1295-4272-9138-f99709370657
2010-04-29 03:15:18 +00:00
Rafaël Carré
2a180e8039 as3525v2: effect of CGU_PROC on fclk is instant
We do not need any delay after modifying it in system_init(), so the
same applies in set_cpu_frequency()

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25753 a1c6a512-1295-4272-9138-f99709370657
2010-04-29 00:43:24 +00:00
Rafaël Carré
d7cdc65854 Fuzev2: revert r25741 and r25746
Use longer delays instead

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25747 a1c6a512-1295-4272-9138-f99709370657
2010-04-28 00:23:25 +00:00
Rafaël Carré
bd7e71df3e fix r25741: the 2nd delay needs to be present when the CPU is boosted
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25746 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 23:52:20 +00:00
Rafaël Carré
3e37460357 Fuzev2 button fixes
- remove udelay(1) and use the previous busy loop : the delay was too
  long for proper hold detection
- remove the 2nd delay (unneeded)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25741 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 21:01:31 +00:00
Rafaël Carré
621cf62702 as3525v2: fix udelay()
detect wraps so we don't miss the value we were waiting for
fix audio stuttering on fuzev2

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25740 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 18:18:30 +00:00
Thomas Martitz
f96406c5f3 Two corrections to the previous commit (wrong timer was used, KERNEL_TIMER_FREQ is a more trustworthy).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25737 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 10:56:44 +00:00
Thomas Martitz
249aae587a FS#11172 - Fuzev2: Read the scrollwheel scrollwheel via IRQ
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25736 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 10:11:52 +00:00
Thomas Martitz
845af676f8 as3525(v2): Add a somewhat inaccurate udelay (-0.5/+1.0µs). It should work good for some huge delays.
Use it in fuzev2 to improve some big delays (correct the biggest one to actually wait for the fifo to empty), and use it in the sd drivers.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25734 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 09:34:29 +00:00
Rafaël Carré
f2f34881ec Remove pcm_mute() which has been unused since r19308
Remove audiohw_mute from header as well, and make this function static
to each driver (commented out when it was unused)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25733 a1c6a512-1295-4272-9138-f99709370657
2010-04-27 00:05:02 +00:00
Marcin Bukat
28d54c6016 Add MPIO HD200 port - new files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25725 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 21:40:16 +00:00
Marcin Bukat
b09d3aec39 Add MPIO HD200 port - changed files
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25724 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 21:40:00 +00:00
Rafaël Carré
fa5cd0d3bf Fuzev2: button_read_dbop() doesn't exist
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25723 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 15:07:47 +00:00
Rafaël Carré
7e7b3c5ab3 Fuzev2: fix screen corruption
Revive the delay removed by r25636 (and make it longer so it works when
boosted)
Also read GPIOA pins 7 & 6 in one load

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25722 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 14:49:51 +00:00
Nils Wallménius
3925cfeede remove some useless lines
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25721 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 11:37:59 +00:00
Karl Kurbjun
b9fa116703 DM320 UART: Enable clock in UART module since it will not be done in system initialization.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25716 a1c6a512-1295-4272-9138-f99709370657
2010-04-25 16:14:02 +00:00
Karl Kurbjun
b15b7fac7e M:Robe 500 Power: Update battery Curve and simplify calculations.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25715 a1c6a512-1295-4272-9138-f99709370657
2010-04-25 16:11:49 +00:00