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
Jens Arnold
ed3ff1b0b5
Various coldfire fixes: (1) iAudio Bootloader: Check the status of main & remote power button vs. the respective hold switch, and shut down when on hold. On X5/M5 this check is not strictly necessary for the main unit, but left there to keep things uniform. (2) M3: Stop reading the ADC properly before leaving the bootloader, on RoLo, and on reboot, to make it work reliably after those transitions. (3) Disable all interrupt sources on system init to avoid premature ISR calls after enabling interrupts in general. (4) iAudios: Proper implementation of ide_powered(), avoiding nasty HDD clicks in the bootloader when powering down, e.g. because of Hold. (5) Slight optimisations.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16689 a1c6a512-1295-4272-9138-f99709370657
2008-03-17 23:47:38 +00:00
Karl Kurbjun
d3d0b26421
Work in progress fixes to the remote button handling. Now the remote can be unplugged and then plugged in and it will work.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15628 a1c6a512-1295-4272-9138-f99709370657
2007-11-15 06:44:35 +00:00
Karl Kurbjun
1b3dac9042
Setup the gigabeat so that iram is faked in a different spot since the normal iram location does not seem to be working. This lays the groundwork to get rolo running.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15581 a1c6a512-1295-4272-9138-f99709370657
2007-11-11 19:13:09 +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
Karl Kurbjun
b7a4e101cb
M:Robe - Fix compilation and remove some warnings
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15095 a1c6a512-1295-4272-9138-f99709370657
2007-10-13 14:53:34 +00:00
Michael Sevakis
e760ba5a04
Add some defines for pp502x. No guarantee as to full accuracy yet but that's not really too important. Use them in the code.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14912 a1c6a512-1295-4272-9138-f99709370657
2007-09-30 10:53:31 +00:00
Michael Sevakis
3e7d4f0d14
Anti-red?
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14899 a1c6a512-1295-4272-9138-f99709370657
2007-09-29 06:56:21 +00:00
Michael Sevakis
7914e90738
Commit a subset of the dual core changes that have to do with cache handling, stacks, firmware startup and thread startup. Tested on e200, H10-20GB, iPod Color and 5.5G. Thread function return implemented for all targets. Some changes to plugins to follow shortly.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14879 a1c6a512-1295-4272-9138-f99709370657
2007-09-28 10:20:02 +00:00
Nils Wallménius
4102ed56f0
Revert cosmetic change and staticing of the rolo_restart() function, because it would break rolo for gigabeat if anyone ever implemented it (because ICODE_ATTR is defined to be null for gigabeats).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13924 a1c6a512-1295-4272-9138-f99709370657
2007-07-17 14:53:44 +00:00
Nils Wallménius
76fa0f7e30
Make a private function static where possible, add a comment, make a small cosmetic change
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13918 a1c6a512-1295-4272-9138-f99709370657
2007-07-16 19:26:07 +00:00
Jens Arnold
fe23dc8f15
Improved CPU clock setup for PP502x. PP5020 and PP5022 are not register compatible here, so define the PP5022 targets properly, and introduce a CPU_PP502x macro for easier family check. Improves stability on PP5020 (less freezing, tested with Mini G1) and reduces clock change penalty (500us on PP5020; uses the relock bit on PP5022).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13763 a1c6a512-1295-4272-9138-f99709370657
2007-07-02 05:16:40 +00:00
Barry Wardell
54c73a24b6
Bring back rolo for mi4-based targets (H10 and Sansa).
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13550 a1c6a512-1295-4272-9138-f99709370657
2007-06-04 13:48:21 +00:00
Michael Sevakis
d95c39072a
Portal Player: Add invalidate_icache and flush_icache. Flush the cache on the core for newborn threads. In doing so, move more ARM stuff to the target tree and organize it to make a clean job of it. If anything isn't appropriate for some particular device give a hollar or even just fix it by some added #ifdefing. I was informed that the PP targets are register compatible so I'm going off that advice. The Sansa likes it though.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13144 a1c6a512-1295-4272-9138-f99709370657
2007-04-13 20:55:48 +00:00
Daniel Ankers
ee07215d50
Fix RoLo on PortalPlayer targets
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12609 a1c6a512-1295-4272-9138-f99709370657
2007-03-04 23:53:38 +00:00
Barry Wardell
8b061252c4
Replace some inl/outl with register #define's instead. Also tidy up pp5020.h so that it's in increasing address order.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12574 a1c6a512-1295-4272-9138-f99709370657
2007-03-03 17:25:20 +00:00
Daniel Ankers
b856636f85
Improved RoLo support for PortalPlayer - handles the COP correctly
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12511 a1c6a512-1295-4272-9138-f99709370657
2007-02-27 22:55:12 +00:00
Barry Wardell
2f16d4f1b3
Add working dual-boot bootloaders for H10 and Sansa, which allow booting the OF and Rockbox. Rolo also works.
...
Changes made:
Combine bootloader/h10.c and bootloader/e200.c into a common bootloader file (bootloader/main-pp.c) to be used by all mi4 based PortalPlayer targets. The file bootloader/main-pp.c is based off the old bootloader/h10.c with some minor changes to allow it to work on the Sansa too. This effectively adds a Sansa bootloader.
Define MODEL_NAME string in config-*.h for use in bootloader.
Split crt0-pp.S into separate files for bootloader and normal builds. Bootloader code is now in crt0-pp-bl.S while normal build code stays in crt0-pp.S.
Improvements to crt0-pp.S and crt0-pp-bl.S (mostly to make it more multiprocessor safe):
* Leave space in bootloader at 0xe0-0xeb since scramble writes over there when it creates the mi4 file (don't leave space for iPods since it's not needed and all code in crt0-pp-bl.S needs to fit before the boot_table at 0x100).
* Remove unused DEBUG and STUB code from crt0-pp.S.
* Make CPU wait for COP to be sleeping when we put the COP to sleep.
* Invalidate COP cache when COP wakes
* Flush CPU cache before waking COP
* Make sure only the CPU clears the BSS (not the COP)
* Make sure only the CPU sets up its own stack (not the COP)
Rolo works on H10, so enable it.
Make Sansa e200 use rockbox.e200 rather than PP5022.mi4 for 'Normal' builds. This makes updating rockbox simpler as we don't need to go through the firmware update procedure, but rather just put a new rockbox.e200 on the device. rockbox.e200 uses a simple 'add' checksum.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11815 a1c6a512-1295-4272-9138-f99709370657
2006-12-19 11:33:53 +00:00
Daniel Ankers
f28a15f949
Remove useless code from rolo.c
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11708 a1c6a512-1295-4272-9138-f99709370657
2006-12-10 15:53:26 +00:00
Daniel Ankers
cb51abb77c
Slightly improved RoLo for PortalPlayer targets
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11707 a1c6a512-1295-4272-9138-f99709370657
2006-12-10 15:20:26 +00:00
Daniel Ankers
242cbd5cd7
Change if CONFIG_CPU==PP50XX to ifdef CPU_PP where appropriate
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11569 a1c6a512-1295-4272-9138-f99709370657
2006-11-22 00:41:30 +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
Marcoen Hirschberg
37f7f0b23b
reduce the number of gigabeat warnings
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11316 a1c6a512-1295-4272-9138-f99709370657
2006-10-23 13:11:57 +00:00
Barry Wardell
1920df36d8
Add Rockbox bootloader for H10
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10781 a1c6a512-1295-4272-9138-f99709370657
2006-08-28 08:11:32 +00:00
Dave Chapman
ffc0cab816
Implement Rolo for the PP502x-based ipods.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10293 a1c6a512-1295-4272-9138-f99709370657
2006-07-23 14:30:10 +00:00
Linus Nielsen Feltzing
15db7f2a48
Patch #5063 by Rani Hod - RoLo on X5
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10209 a1c6a512-1295-4272-9138-f99709370657
2006-07-13 21:11:20 +00:00
Jens Arnold
1aae0a0e8c
Show RoLo messages on remote.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9787 a1c6a512-1295-4272-9138-f99709370657
2006-04-24 06:45:27 +00:00
Linus Nielsen Feltzing
c5c7421704
Make RoLo compile for X5
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9164 a1c6a512-1295-4272-9138-f99709370657
2006-03-21 13:22:51 +00:00
Dave Chapman
a1f87441de
Disable ROLO for the iPods - it doesn't work and just confuses people.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8660 a1c6a512-1295-4272-9138-f99709370657
2006-02-11 11:44:42 +00:00
Dave Chapman
987879b958
Further iPod 3G work from Seven Le Mesle
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8583 a1c6a512-1295-4272-9138-f99709370657
2006-02-05 17:34:49 +00:00
Tomasz Malesinski
c31d2f84b7
Fixed warnings on iFP.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8550 a1c6a512-1295-4272-9138-f99709370657
2006-02-03 23:14:42 +00:00
Dave Chapman
d31a32c501
iPod: Code cleanup - the bootloader now compiles with zero warnings
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7812 a1c6a512-1295-4272-9138-f99709370657
2005-11-11 17:51:35 +00:00
Dave Chapman
77372d1218
Initial commit of work-in-progress iPod port
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7781 a1c6a512-1295-4272-9138-f99709370657
2005-11-07 23:07:19 +00:00
Linus Nielsen Feltzing
aa1042286a
Fixed RoLo for H100 targets
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7188 a1c6a512-1295-4272-9138-f99709370657
2005-07-18 15:50:06 +00:00
Jens Arnold
b7aaa641b8
H1x0: rolo_restart() now uses the actual destination address to start the code. Some asm optimisation.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6811 a1c6a512-1295-4272-9138-f99709370657
2005-06-22 16:53:12 +00:00
Daniel Stenberg
f03bc298d6
depend on CPU, not player model
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6752 a1c6a512-1295-4272-9138-f99709370657
2005-06-18 21:15:04 +00:00
Linus Nielsen Feltzing
d34865a530
mp3buf renamed to audiobuf
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6252 a1c6a512-1295-4272-9138-f99709370657
2005-04-05 11:33:58 +00:00
Linus Nielsen Feltzing
8a237a829e
More audio code restructuring, mostly renaming functions so far
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6246 a1c6a512-1295-4272-9138-f99709370657
2005-04-04 12:06:29 +00:00
Linus Nielsen Feltzing
bd42d31e5e
RoLo now works on the iRiver
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6238 a1c6a512-1295-4272-9138-f99709370657
2005-03-31 08:47:02 +00:00
Daniel Stenberg
716ed218f3
these are not compiling for Gmini either atm
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5789 a1c6a512-1295-4272-9138-f99709370657
2005-02-04 15:07:50 +00:00
Daniel Stenberg
e81fb19dfc
less warnings on iriver builds
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5761 a1c6a512-1295-4272-9138-f99709370657
2005-02-03 10:07:11 +00:00
Daniel Stenberg
36355a5c66
provide a temporary ROLO dummy when built for coldfire
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5742 a1c6a512-1295-4272-9138-f99709370657
2005-02-02 21:47:08 +00:00
Jens Arnold
ab232fc65a
Disabling all timers on rolo fixes the problems with roloed Archos firmware on Ondio. It's probably a good idea to do this for all models
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5277 a1c6a512-1295-4272-9138-f99709370657
2004-10-14 23:40:58 +00:00
Jens Arnold
c76c568b35
Const policed pointer arguments to functions, part 1
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4995 a1c6a512-1295-4272-9138-f99709370657
2004-08-16 23:37:23 +00:00
Björn Stenberg
577e571958
Removed startup_io test code
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@4045 a1c6a512-1295-4272-9138-f99709370657
2003-11-20 00:01:13 +00:00
Jörg Hohensohn
cbbbcd1800
patch #785885 by Magnus Holmgren: way faster rolo, with assembler
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3971 a1c6a512-1295-4272-9138-f99709370657
2003-10-12 16:40:45 +00:00
Jörg Hohensohn
b3d96833d0
fixed rolo-ing of original Archos firmware when flashed. Finally narrowed it down, PAIOR needs to be initialized.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3969 a1c6a512-1295-4272-9138-f99709370657
2003-10-11 21:35:46 +00:00
Jörg Hohensohn
e9b12dd9eb
The other end of my diagnostic code: Rolo now tries to load the file "/startup_io.bin" and restores the I/O space from there, if present. Use a file created from not-flashed for testing.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3917 a1c6a512-1295-4272-9138-f99709370657
2003-08-04 18:41:13 +00:00
Linus Nielsen Feltzing
f70a41cdc6
Removed a warning
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3667 a1c6a512-1295-4272-9138-f99709370657
2003-05-09 22:05:26 +00:00
Linus Nielsen Feltzing
20d031f9c7
Configurable dir browser file buffer size. No more 400-file limit. No more whining.
...
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@3661 a1c6a512-1295-4272-9138-f99709370657
2003-05-09 16:01:21 +00:00