Jens Arnold
015f6286a8
Finally: HDD power control for all PP502x iPods (4th gen Grayscale, Color, Minis, Video). * Wait a short time after powering on the HDD on all disk based targets, as that seems like a good idea. Shorten the excessive wait on initial power on.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15444 a1c6a512-1295-4272-9138-f99709370657
2007-11-03 23:57:24 +00:00
Michael Sevakis
84f5c5c3e3
Take out some NOCACHEBSS_ATTR's that were accidentally left. Put some threading code in IRAM that should be there on PP502x.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15155 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 22:00:51 +00:00
Michael Sevakis
a9b2fb5ee3
Finally full multicore support for PortalPlayer 502x targets with an eye towards the possibility of other types. All SVN targets the low-lag code to speed up blocking operations. Most files are modified here simple due to a name change to actually support a real event object and a param change to create_thread. Add some use of new features but just sit on things for a bit and leave full integration for later. Work will continue on to address size on sensitive targets and simplify things if possible. Any PP target having problems with SWP can easily be changed to sw corelocks with one #define change in config.h though only PP5020 has shown an issue and seems to work without any difficulties.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15134 a1c6a512-1295-4272-9138-f99709370657
2007-10-16 01:25:17 +00:00
Jens Arnold
174c7abdff
Add some new findings to the PP header files. * Clean up ata-target.h for PP. * check_registers() seems to work fine on PP5002.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14114 a1c6a512-1295-4272-9138-f99709370657
2007-08-01 10:43:45 +00:00
Jens Arnold
c5d71aab16
ATA driver: * Support for drives with large physical sectors and no support for partial access in the firmware (i.e. Toshiba MK8010GAH - iPod G5.5/80GB). Sequential writes with a single 512-byte buffer to that disk are really slow, so this is an intermediate solution that allows to adjust the FAT driver and the file system gradually. * Assume multisectors = 16 if the value reported by the drive is invalid (also MK8010GAH).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13480 a1c6a512-1295-4272-9138-f99709370657
2007-05-23 17:51:18 +00:00
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
Michael Sevakis
dee43ece20
Put an end to priority inversion in the ata driver. Gave up trying to have fully atomic dual use mutexes so just replaced the ata driver locking with spins. Maybe I'll have better luck later. Things should run smoothly with database updates and such happening in the background.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12688 a1c6a512-1295-4272-9138-f99709370657
2007-03-09 08:03:18 +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
Jens Arnold
b85e1b9235
Tiny size optimisation.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12396 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 19:28:29 +00:00
Jonathan Gordon
bd47d48c21
Do the CONFIG_LED define
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12383 a1c6a512-1295-4272-9138-f99709370657
2007-02-18 05:07:19 +00:00
Magnus Holmgren
2067fcc695
Fix most (all?) CONFIG_LED warnings.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12370 a1c6a512-1295-4272-9138-f99709370657
2007-02-17 23:22:37 +00:00
Jens Arnold
471d881979
ARM targets: Making a few functions non-static allows us to get rid of -ffunction-sections, significantly decreasing binary size and making things run a bit faster because static functions are no longer long_call.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12349 a1c6a512-1295-4272-9138-f99709370657
2007-02-17 11:19:14 +00:00
Nils Wallménius
1b85f60ae0
Permanently enable powering down the disk when it's sleeping for supported targets (iriver h1xx, h3xx and h10, iaudio x5, gigabeat and archos recorders)
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12094 a1c6a512-1295-4272-9138-f99709370657
2007-01-23 15:43:37 +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
Miika Pekkarinen
a9121491cc
Add a check to verify ATA driver has been initialised in ata_sleepnow().
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11949 a1c6a512-1295-4272-9138-f99709370657
2007-01-08 18:26:03 +00:00
Jörg Hohensohn
bb0358647d
renamed biglba to lba48, plus a slight optimization
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11825 a1c6a512-1295-4272-9138-f99709370657
2006-12-20 22:08:29 +00:00
Jörg Hohensohn
f5bb7660aa
Preparation for disks >137 GB, use BigLBA 48 bit addressing if necessary. Only activated with compile flag HAVE_BIGLBA.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11820 a1c6a512-1295-4272-9138-f99709370657
2006-12-19 22:40:23 +00:00
Michael Sevakis
4b902679cc
Convert queues to use intptr_t for event data and return values as most of the time pointer are not passed and it should make some things a bit cleaner.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11818 a1c6a512-1295-4272-9138-f99709370657
2006-12-19 16:50:07 +00:00
Jens Arnold
28fd4b7228
Archos: Moved the ata_address_detect() code into ata_device_init(), removing the associated #ifdef and some public #defines. Saves a tiny bit of code as well.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11812 a1c6a512-1295-4272-9138-f99709370657
2006-12-19 09:27:41 +00:00
Jonathan Gordon
3e24665c41
Fix settings not saving to disk correctly, (fixes FS#6408)
...
Stop playback.c requesting a rebuffer while not playing
Shutting down from inside the menu will now save settings to disk, and
entering the main menu will not force a setting save unless a setting
actually changes
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11674 a1c6a512-1295-4272-9138-f99709370657
2006-12-06 12:11:57 +00:00
Jens Arnold
31ffd7b154
Completed target tree move of the ata driver code. Some code cleanup.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11655 a1c6a512-1295-4272-9138-f99709370657
2006-12-03 22:13:44 +00:00
Miika Pekkarinen
077ed4925e
Prevent the click of death when connecting an ipod to usb.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11622 a1c6a512-1295-4272-9138-f99709370657
2006-11-29 12:17:26 +00:00
Jonathan Gordon
4049d44b03
dont allow the ata callbacks to be run less than once every 30s unless
...
explicitly forced to.
The sleep_after param is only true in the Q_SLEEP event, so its uneeded,
so removed
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11599 a1c6a512-1295-4272-9138-f99709370657
2006-11-26 09:53:42 +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
780f79e7a4
Removed the Gmini 120 and Gmini SP code. These ports are dead, unfortunately.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11504 a1c6a512-1295-4272-9138-f99709370657
2006-11-10 20:26:01 +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
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
Jonathan Gordon
398c802710
dont spin up the disk to call the callbacks.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11458 a1c6a512-1295-4272-9138-f99709370657
2006-11-07 13:14:52 +00:00
Jonathan Gordon
0b22795e26
adds ata_idle_notify system which allows callbacks in apps/ to be called
...
when the hard disk is idle but spinning, and just before shutting down.
on SWCODEC targets with > 8MB RAM the playback engine will try to
refill the buffer if it is less than 75% full while the disk is spinning
(temporarily disabled on the nano)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11451 a1c6a512-1295-4272-9138-f99709370657
2006-11-06 14:24:18 +00:00
Marcoen Hirschberg
ede3d646b9
move coldfire ata defines to a shared ata-target.h
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11395 a1c6a512-1295-4272-9138-f99709370657
2006-10-30 09:38:34 +00:00
Jonathan Gordon
139f9f28e9
move the iriver h1x0/h3x0 targets to the target tree
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11392 a1c6a512-1295-4272-9138-f99709370657
2006-10-30 08:56:06 +00:00
Marcoen Hirschberg
6c3c5fb188
cleanup ata.c a bit by moving portalplayer defines to target_tree and removing unused portalplayer and gigabeat code
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11365 a1c6a512-1295-4272-9138-f99709370657
2006-10-27 11:56:17 +00:00
Thom Johansen
017b0d7b71
A better workaround due to ATA sleep bugs in the Ipod Nano. battery_bench and plugins like it should now work also on Nano.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11344 a1c6a512-1295-4272-9138-f99709370657
2006-10-25 17:31:29 +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
Marcoen Hirschberg
dd754886f5
update the gigabeat code and move to target_tree
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10535 a1c6a512-1295-4272-9138-f99709370657
2006-08-12 08:01:54 +00:00
Jens Arnold
a8b0a6de2f
ATA driver: * Don't lie to gcc about which parameters the assembler optimised loops touch. Fixes problems with higher optimisation levels. Some slight tweaks for SH1. * Prevent the assembler loops from being inlined as this is less efficient than having them in IRAM (only relevant at higher optimisation levels).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9828 a1c6a512-1295-4272-9138-f99709370657
2006-04-29 08:33:10 +00:00
Jens Arnold
4ac150e8d3
Get rid of the redundant APPLE_* macros. * Fix wrong comments in lcd-ipod.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9561 a1c6a512-1295-4272-9138-f99709370657
2006-04-08 09:08:38 +00:00
Jens Arnold
bf3dba8628
Coldfire: Assembler optimised disk writing, speed increase ~36% on average.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9117 a1c6a512-1295-4272-9138-f99709370657
2006-03-19 12:37:23 +00:00
Jens Arnold
14229df245
Fix s-t-u-p-i-d bug in the asm ata read routine.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9098 a1c6a512-1295-4272-9138-f99709370657
2006-03-18 20:03:36 +00:00
Jens Arnold
5a121270aa
Coldfire: Assembler optimised disk reading, speed increase ~40% on average.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9092 a1c6a512-1295-4272-9138-f99709370657
2006-03-18 10:12:50 +00:00
Linus Nielsen Feltzing
838a7020c7
ATA driver: Fixed a flaw in check_registers(), and added support for iAudio X5
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8948 a1c6a512-1295-4272-9138-f99709370657
2006-03-07 13:25:19 +00:00
Marcoen Hirschberg
8d0a32eb4b
gigabeat related changes
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8885 a1c6a512-1295-4272-9138-f99709370657
2006-03-02 13:28:24 +00:00
Marcoen Hirschberg
338e2bbb0c
first gigabeat commit
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8831 a1c6a512-1295-4272-9138-f99709370657
2006-02-24 15:42:52 +00:00
Thom Johansen
4b98554083
Fix slow shutdown on ipod nano.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8741 a1c6a512-1295-4272-9138-f99709370657
2006-02-19 21:22:24 +00:00
Dave Chapman
465596b163
More iPod 3G code from Seven Le Mesle
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8582 a1c6a512-1295-4272-9138-f99709370657
2006-02-05 17:16:34 +00:00
Linus Nielsen Feltzing
9b0822d76a
Make it compile on iAudio X5
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8543 a1c6a512-1295-4272-9138-f99709370657
2006-02-02 23:07:11 +00:00
Dave Chapman
cf0e3d355c
iPod: Fix endian bug with disk reads and writes to a non-aligned memory buffer.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8369 a1c6a512-1295-4272-9138-f99709370657
2006-01-18 14:04:30 +00:00
Thom Johansen
d47bb3c05e
Temp fix for iPod Nano. Disable ATA sleep, as this will hang disk accesses.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8357 a1c6a512-1295-4272-9138-f99709370657
2006-01-16 23:23:39 +00:00
Jens Arnold
8790056691
Fixed yellow iPod builds.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8062 a1c6a512-1295-4272-9138-f99709370657
2005-11-24 00:51:57 +00:00