Commit graph

1863 commits

Author SHA1 Message Date
Rafaël Carré
eae2464e9a as3543 rtc wakeup: fix power off
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
2010-05-24 10:06:46 +00:00
Rafaël Carré
ba46c88c6f rtc_enable_alarm() needs no return value
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26245 a1c6a512-1295-4272-9138-f99709370657
2010-05-22 00:28:26 +00:00
Rafaël Carré
172fc967b0 as3525v2: RTC alarm
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
2010-05-22 00:28:03 +00:00
Michael Sevakis
ff25b3a208 ata: do some threading-related corrections (some sync related where it matters). Make sure 'sleeping' is 'false' before the powerup sequence (throws-off powermgmt and it *is* about to woken again and powermgmt will need to compensate). Avoid looking at mutex flag directly; there's no tangible benefit I can discern and changes to the kernel that alter the meaning shouldn't be able to break anything. For that, in the jz sd driver, have sd_disk_is_active just return 'false' like all the other SD drivers do. If it *must* return this, it should implement it's own method but it seems to not matter.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26234 a1c6a512-1295-4272-9138-f99709370657
2010-05-21 15:33:31 +00:00
Teruaki Kawashima
0ac61bffa7 avoid overflow in puts_scroll().
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26231 a1c6a512-1295-4272-9138-f99709370657
2010-05-21 13:30:21 +00:00
Rafaël Carré
9c774b3849 as3514.c: clean up
- 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
2010-05-19 17:30:38 +00:00
Thomas Martitz
6cbc701d2a Rename sdl lcd initialization to (remote_)lcd_init_device which enables removing two #ifdef SIMULATOR and makes it happen as on target.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26137 a1c6a512-1295-4272-9138-f99709370657
2010-05-18 12:27:20 +00:00
Maurus Cuelenaere
64f5033574 Do s/SWAP_WORDS/ATA_SWAP_WORDS/ to prevent namespace clashes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26111 a1c6a512-1295-4272-9138-f99709370657
2010-05-17 15:15:38 +00:00
Rafaël Carré
b9beeccbcf as3525v1 use an as3515 audio codec/PMU, not an as3517 as previously thought
-> 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
2010-05-16 09:22:02 +00:00
Michael Sevakis
964dcb33b6 Revert r26055 since it breaks certain Archos targets.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26067 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 21:27:22 +00:00
Thomas Martitz
3d0cee8abb - Move uisimulator/sdl/*.[ch] into the target tree, under firmware/target/hosted/sdl, uisdl.c is split up across button-sdl.c and system-sdl.c.
- 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
2010-05-15 21:02:47 +00:00
Michael Sevakis
414dad42c5 If HAVE_POWEROFF_WHILE_CHARGING is not defined and the charging configuration specifies CHARGING_MONITOR or greater, allow poweroff while plugged but not actually charging the battery.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26055 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 15:03:16 +00:00
Michael Sevakis
e73a175d6d Hopefully finish off the red from r26051.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26053 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 14:16:35 +00:00
Michael Sevakis
5508d40d4b Hopefully get some green back from r26051.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26052 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 13:30:01 +00:00
Michael Sevakis
80d0d15ca9 Gigabeat S: Fully enable access to hardware tone controls and 3-D effect feature. Under the hood, it's designated a hardware equalizer since it is one. Implement code framework for hardware EQ in general. Menu aspect is well abstracted and so the UI and strings can be changed around if taste doesn't quite suit. So far the emphasis is distinction of the UI labelling from the software EQ so that it's clear the settings are for a different thing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26051 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 13:09:45 +00:00
Rafaël Carré
4bb0184455 as3543: output sum of line & dac to have voicing work while using FM
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26045 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 09:19:30 +00:00
Michael Sevakis
6bb9384b70 wm8978: Clean out silly macros. Use 'POS' convention instead for shifted bitfields. Additionally, use volume update latching for all volume settings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26043 a1c6a512-1295-4272-9138-f99709370657
2010-05-15 04:59:25 +00:00
Thomas Martitz
0246f0ceb4 Fix remaining reds/yellows.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26024 a1c6a512-1295-4272-9138-f99709370657
2010-05-14 13:21:40 +00:00
Rafaël Carré
8cce39bb9f as3514: mute headphones at the lowest volume
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
2010-05-14 08:35:53 +00:00
Michael Sevakis
f16912f624 r25940 oops. No, no, no, that wasn't quite right. Must be truthful about the level in decidecibels for subsequent code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25941 a1c6a512-1295-4272-9138-f99709370657
2010-05-11 04:13:04 +00:00
Michael Sevakis
8ce5b01ec7 MRobe100, HD200, Gigabeat F/X (anything with wm8750 or wm8751). Properly prescale bass and treble controls to avoid clipping.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25940 a1c6a512-1295-4272-9138-f99709370657
2010-05-11 04:02:45 +00:00
Rafaël Carré
7831a23376 as3525v2: make sure volume is normal by writing Audioset2 register
If the bit 6 is set volume is much lower, without writing it explicitely
it is undefined.
According to linux sources this bit is related to mixer.

Initialize Audioset2 with low power 'hph' (probably headphones) quality,
as I couldn't make a difference with 'high quality' setting.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25890 a1c6a512-1295-4272-9138-f99709370657
2010-05-07 20:58:43 +00:00
Thomas Martitz
55e4fe73cc Fix the remaining reds.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25858 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 22:33:57 +00:00
Thomas Martitz
50a6ca39ad Move c/h files implementing/defining standard library stuff into a new libc directory, also standard'ify some parts of the code base (almost entirely #include fixes).
This is to a) to cleanup firmware/common and firmware/include a bit, but also b) for Rockbox as an application which should use the host system's c library and headers, separating makes it easy to exclude our files from the build.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25850 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 21:04:40 +00:00
Thomas Martitz
c61e89c0ed Make creat() posix compliant API-wise. Shouldn't affect the core as it's wrapped via a static inline.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25843 a1c6a512-1295-4272-9138-f99709370657
2010-05-06 17:35:04 +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
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
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
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é
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
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
Bertrik Sikken
fefa1c7bbf Clean up IAP / ipod remote tuner a bit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25672 a1c6a512-1295-4272-9138-f99709370657
2010-04-18 15:46:56 +00:00
Torne Wuff
99cd7f8c19 Make builds with MAX_PHYS_SECTOR_SIZE defined (ipod video) work with larger sizes if the drive is sane.
The ipod video build has a MAX_PHYS_SECTOR_SIZE of 1024. This meant it would refuse to boot on drives with sectors larger than 1024 bytes, even if those drives don't actually require the workaround originally intended for the 80GB 5.5G's drive.

ata_init() will now, if the drive claims to have >512 byte sectors, try and read sector 1 to determine if the drive is capable of emulating 512-byte sector accesses. If this succeeds, we assume the drive is better at it than us (this is very likely to be true) and set phys_sector_mult to 1, disabling the workaround and ensuring the drive will work regardless of sector size.

Making use of this change requires that you build and install an updated bootloader as well as the main build; a new iPod bootloader will be released soon, so if you can't do this yourself, be patient.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25646 a1c6a512-1295-4272-9138-f99709370657
2010-04-14 14:40:03 +00:00
Andree Buschmann
f6cecfd91b Minor binsize savings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25588 a1c6a512-1295-4272-9138-f99709370657
2010-04-11 12:33:02 +00:00
Tomer Shalev
56058c7213 FS#11187 - diacritic.c is in 'drivers' but it does not belong there
- Move diacritic.c to firmware/common
- The function is_diacritic returns bool now


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25526 a1c6a512-1295-4272-9138-f99709370657
2010-04-07 20:41:18 +00:00
Torne Wuff
62321ed0bd Make ATA code not bother to retry requests that return IDNF (specified sector not valid).
There's no point retrying these requests for five seconds, the sector number isn't going to get any more valid. It interferes with being able to detect broken drives like the 5.5G 80GB iPod's.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25525 a1c6a512-1295-4272-9138-f99709370657
2010-04-07 20:01:21 +00:00
Frank Gevaerts
376d8d577f Add IO priority handling. Currently all IO has equal priority, except the dircache scanning thread which is lower. This fixes the slow boot problem for me, with the added benefit that actual audio playback also starts faster.
Lots of the changes are due to changing storage_(read|write)sectors() from macros to wrapper functions. This means that they have to be called with IF_MD2(drive,) again.

Flyspray: FS#11167
Author: Frank Gevaerts


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25459 a1c6a512-1295-4272-9138-f99709370657
2010-04-03 22:02:09 +00:00
Rafaël Carré
a4c6870559 as3525v2: microphone recording
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25391 a1c6a512-1295-4272-9138-f99709370657
2010-03-29 22:52:19 +00:00
Rafaël Carré
ed0c5edd62 as3525v2 : recording (FM only, no microphone yet)
Add HAVE_AS3543 config define to differentiate the bits changed since as3514/as3517
Enable recording on Fuzev2/Clipv2/Clip+, although it was tested on Clip+ only

Note: storage is still read-only so I tested by listening to headphones loopback and watching the recording level in recscreen

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25390 a1c6a512-1295-4272-9138-f99709370657
2010-03-29 22:26:58 +00:00
Rafaël Carré
17eca7bfa0 as3525v2: FM playback (only tested on Clip+)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25383 a1c6a512-1295-4272-9138-f99709370657
2010-03-29 19:48:18 +00:00
Amaury Pouly
a8137252a5 FS#11118: reduce the number of cached sector in FAT code because some are useless after a rewrite of LFN entries handling. Also makes LFN handling more robust.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25290 a1c6a512-1295-4272-9138-f99709370657
2010-03-22 10:35:25 +00:00
Jack Halpin
eb1992b4bd SansaAMSv2 as3541.c Include key line from funman's patch to get sound on clip+ and have it only apply to as3525v2.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25264 a1c6a512-1295-4272-9138-f99709370657
2010-03-21 05:43:55 +00:00
Rafaël Carré
7042c96b4a Clip+: enable sound on "as3514" (as3543 in fact)
as3525 comes with a as3517, as3525v2 with a as3543, rename specific
registers accordingly

Existing problems: FM (line out) doesn't work, volume can't go below a
certain point

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25260 a1c6a512-1295-4272-9138-f99709370657
2010-03-20 17:09:44 +00:00
Andree Buschmann
b6c12a129e Submit FS#11065. Introduce a new system setting for en-/disabling the Line-out. For now only implemented on iPod Video. This allows to save power if the user does not use the player's Line-out. On iPod 5G the saving is ~0.5 mA.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25257 a1c6a512-1295-4272-9138-f99709370657
2010-03-20 15:02:29 +00:00
Karl Kurbjun
6b7f95289e M66591 Driver: Correct some comments.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25227 a1c6a512-1295-4272-9138-f99709370657
2010-03-17 01:43:15 +00:00
Mustapha Senhaji
ae8bf6fe73 Fix a typo on a comment
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25210 a1c6a512-1295-4272-9138-f99709370657
2010-03-16 00:54:08 +00:00
Amaury Pouly
46565f594a fat: make fat_open more flexible by accepting the file==&dir->file and make fat_opendir also more flexible by accepting dir==parent_dir
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25202 a1c6a512-1295-4272-9138-f99709370657
2010-03-15 12:31:24 +00:00