- retry failed commands up to 6 times
- wait at most 5 seconds for the card to go to TRAN state
- wait for the card to be in TRAN state (i.e. not programming) before
disabling SD clocks (remove the workaround in sd_enable() )
should fix lockups reported on fuzev1 under heavy internal storage + µSD use
(playback + database/pictureflow updating)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26291 a1c6a512-1295-4272-9138-f99709370657
Selecting the right card before the transfer will deselect the other one
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26290 a1c6a512-1295-4272-9138-f99709370657
We assume only one bit is set and use clz to find the most significant
set bit, if there's more than one bit set we'll see it in the panic msg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26285 a1c6a512-1295-4272-9138-f99709370657
If we disable the hearbeat source after enabling the watchdog there's no
more lock-up when powering off the dap
Comment out alarm enabling on startup since rockbox disables the alarm anyway
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26247 a1c6a512-1295-4272-9138-f99709370657
A specific poweroff function needs to be used for wake-up to work
Disable RTC in bootloaders for consistency with other Sansas
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26243 a1c6a512-1295-4272-9138-f99709370657
- fix check_event_queue to use queue_peek and not mess message order
- change check_dircache_state to a more modest check to avoid messing up dircache state
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26228 a1c6a512-1295-4272-9138-f99709370657
Charge using 150mA current like the OF to charge faster
Edit clipv2 charging curve with 150mA
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26227 a1c6a512-1295-4272-9138-f99709370657
Move code not defined for bootloader under a single preprocessor check
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26219 a1c6a512-1295-4272-9138-f99709370657
GPIO direction needs only to be set at init
both functions are now one liners so make them static inline
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26218 a1c6a512-1295-4272-9138-f99709370657
It seems there is some significant variance between different greyscale ipods of the same model, so it's unlikely that *any* value will be great for everyone. I'm hoping that this is just high enough that the lightest screens aren't totally blank, but not dark enough that the darkest screens are entirely unreadably black ;)
This rather unsatisfactory compromise is to help us get a new bootloader release out (since bootloaders can't have their contrast adjusted) - a real fix would be to detect the LCD type, which the OF appears to be able to do (maybe).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26208 a1c6a512-1295-4272-9138-f99709370657
- forgot a ccu undocumented thing in init
- finish init code (following linux patch)
- enable interrupts
- don't use dynanmic fifo sizing by default
- move to a more static configuration of usb hardware parameters (it might be necessary to move them to config* files later).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26195 a1c6a512-1295-4272-9138-f99709370657
it might be valid C but is confusing, and not consistent with the rest of file.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26191 a1c6a512-1295-4272-9138-f99709370657
we still need to convert uncached addresses to physical addresses
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26177 a1c6a512-1295-4272-9138-f99709370657
No need for special address handling, all addresses are equal to their physical address
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26176 a1c6a512-1295-4272-9138-f99709370657
- enhance registers description in header file with respect to the as3543
registers: point which one are present or not in the as3543, which bits
change (i didn't detail all registers)
- cache less registers, only up to the ones which are written to
multiple times
- use ascodec_readbytes() to cache all needed registers in a row
- separate the as3543 bits from as3514/as3515 in audiohw_preinit()
- comment out unused audiohw_set_lineout_vol
- some cosmetics
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26174 a1c6a512-1295-4272-9138-f99709370657
it's only needed if we hotswap the µSD or if we build the fuzev2
scrollwheel code without irq (which we don't do anyway)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26165 a1c6a512-1295-4272-9138-f99709370657
test_disk doesn't freeze anymore when closing the file between writing & reading
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26164 a1c6a512-1295-4272-9138-f99709370657
The list is ordered by priority, put the DMA and SD interrupts at
the top
This seems to fix the random freezes on heavy storage operation like
building database or pictureflow cache
The recently added audio interrupt had a priority higher than SD slot on
as3525v1, give it a lower priority
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26160 a1c6a512-1295-4272-9138-f99709370657
Show all the adc channels in the IO ports debug menu (not for as3525v2
since the channels are different)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26149 a1c6a512-1295-4272-9138-f99709370657
Bring Clipv1 & m200v4 plugin buffer down to this limit
zxbox, chessbox and rockboy build on the clip
rockboy doesn't build on m200v4 due to not enough buttons to make a keymap
Some gameboy roms won't run on Clipv1: tetris does but not pokemon for example
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26144 a1c6a512-1295-4272-9138-f99709370657
build it on fuzev2 and clipv2 too, it should be the same controller
as3525v1 file is only build for CONFIG_USBOTG == USBOTG_AS3525, no need
to check for it in the .c file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26142 a1c6a512-1295-4272-9138-f99709370657
- only enable overlays for targets with very small plugin buffer (<=
0x10000 bytes, i.e. archos)
- change the condition for rockboy to reflect exactly why it can be
built or not
- Some plugins need a large plugin buffer, only enable them if the
buffer is big enough (sizes measured on Clipv1)
- disable MIDI if we have 2MB (or less), we won't be able to load the
instruments in the audio buffer
- remove unusable lua overlay loader
- sokoban code is bigger on clipv1 than on SH, assume it code is 20kB on
anything but SH so it builds with buffer smaller than 192kB
- reduce the Clipv1 plugin buffer size from 288kB to 96kb, disabling
zxbox, chessbox, and fft
zxbox and chessbox have overlays which run on archos, we just need to
enable them on other targets. We'll also be able to run rockboy.
fft won't run as it needs a large plugin buffer for greylib
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26141 a1c6a512-1295-4272-9138-f99709370657
Note to self: Next time don't forget to check a AMSv2 build before committing...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26130 a1c6a512-1295-4272-9138-f99709370657
To be sure that there is no mistake in this code, it is run *after*
the known to work HOME & LEFT buttons checks, unlike other Sansas
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26122 a1c6a512-1295-4272-9138-f99709370657
- Enable end of charge monitoring once, it doesn't need to be disabled
- Acknowledge the first (wrong) end of charge interrupt on charger enable
(this had been broken in r25299)
- Centralize reads to ENRD* registers and cache the results when needed
- on PP it is not needed because reads are atomic, we only check for
end of charge when the charging, and for charger presence when
discharging
as3525v2 (using as3543) specifics
- I got the datasheet today from AMS, thanks to them for being so fast
and not require me to sign tons of papers!
- USB detection now works on as3525v2 using the as3543. Clip+ won't
reboot to OF yet, it needs mkamsboot support first (usbstack disabled)
- Charging should work, the CHARGER register is at a different place, it
is an extended PMU register -> use ascodec_read/write_charger() to
access it
- real interrupts are not used yet for ENRD, we get thousands of
interrupts per second, apparently only limited by the i2c clock.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26116 a1c6a512-1295-4272-9138-f99709370657
SDL docs say SDL_PumpEvent (implicitely called by SDL_Poll/WaitEvent)
may only be called from the thread that initializes the video subsystem,
apparently because Windows requires that.
So create an (or bring it back) SDL thread (with preemtive behavior) to read the
event queue for buttons and initialize the video subsystem.
I'd probably would have done that anyway because it enables an interrupt-like method to read them (no polling).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26113 a1c6a512-1295-4272-9138-f99709370657
put your station images in .rockbox/fmpresets/<preset name>.bmp or .jpg. Must be in preset mode and the preset name must match the filename
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26078 a1c6a512-1295-4272-9138-f99709370657
Better be safe than sorry, don't try to read/write outside our storage,
because we might overwrite the OF on the internal storage
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26077 a1c6a512-1295-4272-9138-f99709370657
-> Change references to as3517 into as3515
there is a reference to the as3515 in the public as3525 datasheet to
support this fact
as3517 is used in the as3527 SoC, the (public) as3527 datasheet has
detailed information on its registers
the audio codec/PMU used in as3525v2 (thought to be as3543) appears to be
compatible (identical?) with as3517
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26075 a1c6a512-1295-4272-9138-f99709370657
This sort of change should never go in without prior discussion or consensus
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26071 a1c6a512-1295-4272-9138-f99709370657
- Refactor the program startup. main() is now in main.c like on target, and the implicit application thread will now act as our main thread (previously a separate one was created for this in thread initialization).
This is part of Rockbox as an application and is the first step to make an application port from the uisimulator. In a further step the sim bits from the sdl build will be separated out.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26065 a1c6a512-1295-4272-9138-f99709370657
it would still flash when the light was off
it turns out that if B5 is set to input the light can't be turned on
but we can still select between µSD slot and internal storage
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26059 a1c6a512-1295-4272-9138-f99709370657
adjust logical starting sector to physical starting sector after the check
number of blocks is already adjusted from physical to logical
don't panic anymore when accessing the last part of storage
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26050 a1c6a512-1295-4272-9138-f99709370657
Indent the asm constraints at the same level than instructions
Also add a trick to reduce the number of instructions outputted by gcc
in the commented C version of the loop
The difference between C and asm is now 1 instruction
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26027 a1c6a512-1295-4272-9138-f99709370657
This makes it possible to move the simulator code into the target tree (for Rockbox as an application).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26019 a1c6a512-1295-4272-9138-f99709370657
Use smaller recording buffer and watermarks on these models with 2MB of ram
Rearrange watermark calculation expressions so we can use fractional
numbers of seconds but still with integer results
Only enable spinup time adjustement for ATA targets
Flash targets (sansas and ondiofm) should still work fine, but they were
not tested
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26014 a1c6a512-1295-4272-9138-f99709370657
change lowest step from -74dB to -73dB, as it really is -73.5dB and is
rounded to -73
fix FS#11237
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26010 a1c6a512-1295-4272-9138-f99709370657
This fixes the error introduced in r25989, where it would release the
DMA engine when uninitializing recording.
The real bug has been fixed instead (in pitch_detector)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26003 a1c6a512-1295-4272-9138-f99709370657
also remove an obsolete comment and an unrelated option of the config file
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26000 a1c6a512-1295-4272-9138-f99709370657
also avoid disabling completely the DMA engine in pitch_detector
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25989 a1c6a512-1295-4272-9138-f99709370657