Commit graph

65 commits

Author SHA1 Message Date
Jens Arnold
8636e6949e Moved SH1 system code to target tree. * First shot at hwcompat cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13114 a1c6a512-1295-4272-9138-f99709370657
2007-04-11 23:51:00 +00:00
Daniel Ankers
82f9056988 Dual core support for PP502x players (iPod G4 and later, iriver h10, Sansa - iPod G3 will be coming soon.) This allows threads to be run on either core provided that all communications between the cores is done using uncached memory. There should be no significant change in battery life from doing this. Documentation (on the RockboxKernel wiki page) will follow shortly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12601 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 20:06:41 +00:00
Jonathan Gordon
b2e50906a4 Settings are now stored in /.rockbox/config.cfg instead of the hidden sector. (FS #6557)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12093 a1c6a512-1295-4272-9138-f99709370657
2007-01-23 13:40:44 +00:00
Michael Sevakis
26c514673d Woops. Missed a file.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11819 a1c6a512-1295-4272-9138-f99709370657
2006-12-19 17:05:20 +00:00
Jens Arnold
8c3f0681b2 Get rid of ages-old interdependency between ata.c and mas.c
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11519 a1c6a512-1295-4272-9138-f99709370657
2006-11-12 14:17:49 +00:00
Jens Arnold
412bea9782 Ondio: Better activity monitoring for 'ata' idle notification.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11481 a1c6a512-1295-4272-9138-f99709370657
2006-11-09 18:57:47 +00:00
Jonathan Gordon
fd0e640edd Bah, Linus was right, trying to call the ata_idle callbacks on usb and
shutdown doesnt work. Threads with callbacks must handle these 2 events
instead.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11477 a1c6a512-1295-4272-9138-f99709370657
2006-11-09 07:02:18 +00:00
Jens Arnold
5d67b4906d Missed one hotswap ifdef...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11466 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 08:04:11 +00:00
Jens Arnold
af2d91f629 Fix idle monitoring to not freeze the Ondio, and add it in a more elegant way. Fixed hotswap ifdefing.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11465 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 07:32:53 +00:00
Jonathan Gordon
d9f7ac24f4 fix booboo in ata.c (SYS_POWEROFF falling into SYS_USB_CONNECTED)
enable ata_idle callbacks in ata_mmc.c (calls the callbacks after 10s of
real inactivity)
fix builds


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11462 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 02:23:01 +00:00
Jonathan Gordon
f184152c05 * changes to ata.c - idle callbacks are called after 2 sec of real idle,
and shutdown and usb (it makes sense here). ata_sleep doesnt get broken
by callbacks.
* allow ata_sleep() at the end of buffering again
* config block uses ata_idle instead of delayed sector when saving
* remove delayed sector code from ata_mmc.c (idle callbacks are not yet
implemented for ata_mmc.c tho)


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11461 a1c6a512-1295-4272-9138-f99709370657
2006-11-08 01:55:26 +00:00
Miika Pekkarinen
a85044bf9e New scheduler, with priorities for swcodec platforms. Frequent task
switching should be more efficient and tasks are stored in linked
lists to eliminate unnecessary task switching to improve performance.
Audio should no longer skip on swcodec targets caused by too CPU
hungry UI thread or background threads.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10958 a1c6a512-1295-4272-9138-f99709370657
2006-09-16 16:18:11 +00:00
Jens Arnold
61b8604a9c Ondio: (Hopefully) fix the occasional freezes during playback: Use DMA channel 0 for MMC transfer. As it has higher priority than channel 3 (used for playback), the risk of serial receive overruns is minimised.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9885 a1c6a512-1295-4272-9138-f99709370657
2006-05-07 20:20:27 +00:00
Jens Arnold
a8c1c20305 Removed unused ata_standby(), changed return type of ata_sleep() to void, removed misleading comment from ata.h
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7782 a1c6a512-1295-4272-9138-f99709370657
2005-11-07 23:19:06 +00:00
Jens Arnold
8f1ace7525 Ondio: Fix multivolume and hotswap for the old MMC clock circuit.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6502 a1c6a512-1295-4272-9138-f99709370657
2005-05-22 00:42:00 +00:00
Jens Arnold
27abc2a641 (1) Early USB detection on boot, before trying to mount the partitions. Cleaner & quicker; removes the need for the extra USB check at the top of ask_resume() which caused a deadlock in screenshot mode (see patch #1110332). On Ondio, this allows to leave an MMC in the slot when booting with USB connected for instant access. (2) Ondio: Track MMC status, only ask to remove the card if required. Probe MMC status if unknown.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6488 a1c6a512-1295-4272-9138-f99709370657
2005-05-17 22:10:51 +00:00
Jens Arnold
fe1ce9d842 Hotswap: Better placement for switching the MMC monitor off/on.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6480 a1c6a512-1295-4272-9138-f99709370657
2005-05-16 15:21:09 +00:00
Jens Arnold
15d7077c3a Hotswap: Avoid mount race at startup and after returning from USB mode.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6479 a1c6a512-1295-4272-9138-f99709370657
2005-05-16 13:25:02 +00:00
Jens Arnold
268f0b4337 Some code cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6471 a1c6a512-1295-4272-9138-f99709370657
2005-05-14 17:23:13 +00:00
Jens Arnold
251deaa4ca Improved bitfield handling for settings and MMC (more straigtforward, smaller code). This switches the order for fields crossing a longword boundary, so the config block version bump is necessary. Save your settings to a file before upgrading.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6404 a1c6a512-1295-4272-9138-f99709370657
2005-05-04 22:30:36 +00:00
Jens Arnold
1ba26b8a60 MMC driver: More flexible background copy & bitswap concept, using global variables - slightly less read latency when both partial and full blocks are involved. Some code cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6393 a1c6a512-1295-4272-9138-f99709370657
2005-05-02 00:33:01 +00:00
Jens Arnold
74875ef37e Speed optimisations: (1) Read, write: Use single/multiple block commands depending on the block count. (2) Write: Combine first partial sector transfer (after caching) & main loop into one block-transfer sequence.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6381 a1c6a512-1295-4272-9138-f99709370657
2005-04-28 20:47:55 +00:00
Jens Arnold
a7f7781dca MMC driver does now handle block sizes != 512 bytes, which is necessary to support cards > 1 GB. Changed error handling to use the same method as other parts of rockbox, allowing to trace the call chain. Long policy, code cleanup.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6366 a1c6a512-1295-4272-9138-f99709370657
2005-04-28 01:11:21 +00:00
Jörg Hohensohn
3ea9aa4626 non-ambiguous error code
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6192 a1c6a512-1295-4272-9138-f99709370657
2005-03-12 12:35:06 +00:00
Jörg Hohensohn
fe0e368d5c Don't panic on read attempts past end of card, just exit with error. Such can happen when mounting superfloppy MMC, without valid partition table.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6179 a1c6a512-1295-4272-9138-f99709370657
2005-03-10 05:43:44 +00:00
Jens Arnold
2aefbf7549 Correctly display USB activity on Ondios with old bridge. (Added blindly, please test.) Slight code cleanup, removed DOS line endings.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6025 a1c6a512-1295-4272-9138-f99709370657
2005-02-20 00:21:20 +00:00
Jörg Hohensohn
7e1d36f35b Ondio: disk activity indication in USB mode, too
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6020 a1c6a512-1295-4272-9138-f99709370657
2005-02-19 14:45:34 +00:00
Jörg Hohensohn
c76fbf7162 Ondio: disk indication in the status bar, to compensate for lacking LED
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6012 a1c6a512-1295-4272-9138-f99709370657
2005-02-19 00:34:15 +00:00
Jens Arnold
4d6e482e56 Some MMCs don't like reading their very last sector with the read_multiple_blocks command, so always read it with read_single_block. Slight optimisation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5942 a1c6a512-1295-4272-9138-f99709370657
2005-02-14 23:42:32 +00:00
Jens Arnold
b3017c8701 Fixed calculation of MMC sector count. Display sector count instead of (rough) size info for debugging.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5937 a1c6a512-1295-4272-9138-f99709370657
2005-02-12 23:09:00 +00:00
Linus Nielsen Feltzing
4d7671ce22 Aligned thread stack
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5803 a1c6a512-1295-4272-9138-f99709370657
2005-02-06 02:34:17 +00:00
Jens Arnold
404fd12aae MMC driver now panics on out-of-bound accesses.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5768 a1c6a512-1295-4272-9138-f99709370657
2005-02-04 00:58:47 +00:00
Jens Arnold
f248d8bf62 MMC debug info: Tsac is now needed in ns, no longer scaled by 10.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5725 a1c6a512-1295-4272-9138-f99709370657
2005-01-31 01:50:40 +00:00
Jörg Hohensohn
3c758c13af do the hotswap
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5702 a1c6a512-1295-4272-9138-f99709370657
2005-01-28 22:35:20 +00:00
Jörg Hohensohn
81f2a4a6ca select the card within the mutex, seems more safe
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5530 a1c6a512-1295-4272-9138-f99709370657
2005-01-03 23:20:31 +00:00
Jörg Hohensohn
2ab64c9152 cosmetic: use the IF_MV2() macro for optional arguments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5521 a1c6a512-1295-4272-9138-f99709370657
2004-12-29 22:50:34 +00:00
Jörg Hohensohn
da84857631 prepared to mount multiple partitions into one logical file system (most useful for Ondio, internal memory + external MMC)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5514 a1c6a512-1295-4272-9138-f99709370657
2004-12-28 22:16:07 +00:00
Jens Arnold
605cf4c779 Fix: my previous adjustments broke access to external MMC on newer Ondio models (mask bit 2 == 1). Xor operator works bitwise, so both operators need to be logical values here
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5422 a1c6a512-1295-4272-9138-f99709370657
2004-11-17 21:24:21 +00:00
Jens Arnold
2cf1a89560 Ondio: adjustments for models with mask bit 2 == 0 (different MMC clock select circuitry)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5421 a1c6a512-1295-4272-9138-f99709370657
2004-11-17 20:14:43 +00:00
Jens Arnold
aeedd7d499 Increased MMC init timeout (again), and sleep() between consecutive tries.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5408 a1c6a512-1295-4272-9138-f99709370657
2004-11-14 13:50:03 +00:00
Jens Arnold
31e2e01cac Increased init timeout to account for some very slow (SD) cards
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5407 a1c6a512-1295-4272-9138-f99709370657
2004-11-14 07:35:48 +00:00
Jens Arnold
f540e5cecf Unique error codes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5390 a1c6a512-1295-4272-9138-f99709370657
2004-11-07 22:40:24 +00:00
Jens Arnold
5789ee9928 MMC hotswap handling in USB mode
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5247 a1c6a512-1295-4272-9138-f99709370657
2004-10-10 19:51:11 +00:00
Jens Arnold
f5bdf6952c First part of MMC hotswap handling; removed unnecessary MMC thread
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5241 a1c6a512-1295-4272-9138-f99709370657
2004-10-10 00:35:19 +00:00
Jens Arnold
0660105af2 Fixed busy timeout handling; better comments
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5240 a1c6a512-1295-4272-9138-f99709370657
2004-10-09 22:48:10 +00:00
Jens Arnold
a450e34770 Major MMC driver rework: DMA for sector transfers (except for single sector writes), bitswap while DMA transfer is running, optimized SCI handling (back-to-back transfer for polled writes), yield()s once per sector transfer. Speed is now close to the theoretical maximum
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5231 a1c6a512-1295-4272-9138-f99709370657
2004-10-09 01:14:55 +00:00
Jens Arnold
6f9a7eb2c7 Enhanced MMC handling: Driver cleanup, timeout calculation fixed, allowed voltage check, maintain disk activity info (fixes immediate shutdown at end of playback). MMC debug menu item populated.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5193 a1c6a512-1295-4272-9138-f99709370657
2004-10-06 20:43:12 +00:00
Björn Stenberg
b60b29f442 Compile ata_mmc.c for targets with mmc, ata.c for all others.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5174 a1c6a512-1295-4272-9138-f99709370657
2004-10-05 08:11:11 +00:00
Jens Arnold
a15386bb9d (Re-)added the delayed write feature to avoid wearing the flash unnecessarily
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5162 a1c6a512-1295-4272-9138-f99709370657
2004-10-04 22:29:06 +00:00
Jens Arnold
36813086e6 MMC: 10 % faster reading and 15 % faster writing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5161 a1c6a512-1295-4272-9138-f99709370657
2004-10-04 17:53:53 +00:00