Michael Sevakis
|
05099149f1
|
Enable nocache sections using the linker. PP5022/4 must use SW_CORELOCK now with shared variables in DRAM (it seems swp(b) is at least partially broken on all PP or I'm doing something very wrong here :\). For core-shared data use SHAREDBSS/DATA_ATTR. NOCACHEBSS/DATA_ATTR is available whether or not single core is forced for static peripheral-DMA buffer allocation without use of the UNCACHED_ADDR macro in code and is likely useful on a non-PP target with a data cache (although not actually enabled in config.h and the .lds's in this commit).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16981 a1c6a512-1295-4272-9138-f99709370657
|
2008-04-06 04:34:57 +00:00 |
|
Michael Sevakis
|
af395f4db6
|
Do core interrupt masking in a less general fashion and save some instructions to decrease size and speed things up a little bit. Small fix to a few places where interrupts would get enabled again where they shouldn't have been (context switching calls when disabled).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16811 a1c6a512-1295-4272-9138-f99709370657
|
2008-03-26 01:50:41 +00:00 |
|
Michael Sevakis
|
27cf677339
|
Add a complete priority inheritance implementation to the scheduler (all mutex ownership and queue_send calls are inheritable). Priorities are differential so that dispatch depends on the runnable range of priorities. Codec priority can therefore be raised in small steps (pcmbuf updated to enable). Simplify the kernel functions to ease implementation and use the same kernel.c for both sim and target (I'm tired of maintaining two ;_). 1) Not sure if a minor audio break at first buffering issue will exist on large-sector disks (the main mutex speed issue was genuinely resolved earlier). At this point it's best dealt with at the buffering level. It seems a larger filechunk could be used again. 2) Perhaps 64-bit sims will have some minor issues (finicky) but a backroll of the code of concern there is a 5-minute job. All kernel objects become incompatible so a full rebuild and update is needed.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16791 a1c6a512-1295-4272-9138-f99709370657
|
2008-03-25 02:34:12 +00:00 |
|
Michael Sevakis
|
06a5299aff
|
Do some crackdown on kernel object reinitialization after they could be in use and use before initialization. For c200/e200: Be sure fat cache and ata locks are acquired in the proper order during hot swapping. Delay hotswap monitoring until after initial file mounting (address 2nd kobj concern + possible call of fat driver before init).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16636 a1c6a512-1295-4272-9138-f99709370657
|
2008-03-12 10:03:52 +00:00 |
|
Michael Sevakis
|
d970c3d054
|
Portal player i2c driver: More struct spinlock phaseout.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15593 a1c6a512-1295-4272-9138-f99709370657
|
2007-11-12 07:58:54 +00:00 |
|
Barry Wardell
|
007563c93d
|
FS#8023: Use of AS3514 #defines instead of magic values.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15297 a1c6a512-1295-4272-9138-f99709370657
|
2007-10-25 09:03:47 +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 |
|
Mark Arigo
|
dbc6b4e39a
|
Sansa c200 port. Rockbox works with sound. Several features are disabled including some lcd options, FM radio, recording, and all plugins. Loading the OF from the Rockbox bootloader does not work.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14625 a1c6a512-1295-4272-9138-f99709370657
|
2007-09-06 03:28:58 +00:00 |
|
Michael Sevakis
|
af272592f5
|
Change i2c config on e200. Seems to speed things up somewhat.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13403 a1c6a512-1295-4272-9138-f99709370657
|
2007-05-17 22:49:27 +00:00 |
|
Michael Sevakis
|
1990349716
|
Speed up Portal Player i2c driver. It suffered the same priority inversion problems as the ATA driver once did.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13290 a1c6a512-1295-4272-9138-f99709370657
|
2007-04-30 07:37:26 +00:00 |
|
Daniel Ankers
|
ec0a362ea2
|
More PortalPlayer I2C unification work
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12128 a1c6a512-1295-4272-9138-f99709370657
|
2007-01-27 20:09:57 +00:00 |
|
Daniel Ankers
|
e9a2caee2b
|
Unify I2C driver for all PortalPlayer targets
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12126 a1c6a512-1295-4272-9138-f99709370657
|
2007-01-27 17:17:52 +00:00 |
|