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
Rafaël Carré
1801768ae2
as3525v2: don't modify audioset2 as it seems the bits have changed
...
restore loud volume on Clip+
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25831 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 15:38:56 +00:00
Rafaël Carré
bc91c5a823
Clip+: current usage estimation based on battery bench
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25830 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 15:28:39 +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
Michael Giacomelli
9dd81ae53d
Use settings for DAC AGC, cpeaker driver bias current (which is unused in rockbox), dither, and headphone bias current taken from c200v2 firmware. These should result in several mA power savings on all as3525, and probably an improvement on AS3525v2 as well as the c200v1 and e200v1. RMAA tests on the e200v1, clipv1 and clipv2 show no measurable difference in output when driving a 16 ohm load.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25821 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 04:47: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é
e6bb174c62
Clip+: use correct 290mAh battery capacity
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25816 a1c6a512-1295-4272-9138-f99709370657
2010-05-05 02:12:20 +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
Marcin Bukat
5bcdd92626
HD200 - remove fm glue code from bootloader build
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25803 a1c6a512-1295-4272-9138-f99709370657
2010-05-04 11:14:03 +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
Rafaël Carré
1bc59454d5
rolo: make PP code pp6100-compatible
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25798 a1c6a512-1295-4272-9138-f99709370657
2010-05-03 21:50:48 +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é
554ae245fd
as3525v2: do not use IRAM for plugins
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25750 a1c6a512-1295-4272-9138-f99709370657
2010-04-28 16:25:45 +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
Rafaël Carré
5e88c4b4de
as3525v2: fix volume setting (can now go very low)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25732 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 23:42:12 +00:00
Rafaël Carré
be177138d3
as3514: detail bit of AS3543_DAC_IF
...
it lets you select internal PLL or external MCLK and is not related to mute
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25731 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 23:26:08 +00:00
Rafaël Carré
7d8069d2e7
as3514: no need to cache volume
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25730 a1c6a512-1295-4272-9138-f99709370657
2010-04-26 23:14:31 +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