summaryrefslogtreecommitdiffstats
path: root/firmware/rolo.c
AgeCommit message (Collapse)AuthorFilesLines
2008-06-03Oops. Lost sync on a few instances and 'HI' registers.Michael Sevakis1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17684 a1c6a512-1295-4272-9138-f99709370657
2008-06-03Rename CPU/COP_INT_CLR to CPU/COP_INT_DIS since it's really a 'write one to ↵Michael Sevakis1-1/+1
disable' register and hasn't anything to do with acknowledging interrupts-- that's handled at the module level. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17683 a1c6a512-1295-4272-9138-f99709370657
2008-05-08Gigabeat S RoLo: Properly execute firmware copy from an IRAM stub because ↵Michael Sevakis1-5/+10
the currently running image was being overwritten in place. Minor tweak to rolo.c based on imx31 errata sheet about not masking FIQ without masking IRQ which is fine to use on all ARM anyway. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17414 a1c6a512-1295-4272-9138-f99709370657
2008-05-03Made rolo.h consistent with rolo.cBertrik Sikken1-0/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17310 a1c6a512-1295-4272-9138-f99709370657
2008-05-02Working ROLO for the Gigabeat F/XKarl Kurbjun1-3/+3
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17304 a1c6a512-1295-4272-9138-f99709370657
2008-04-16For TCC and IMX Rolo, use a full flush and invalidate before branching.Michael Sevakis1-2/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17149 a1c6a512-1295-4272-9138-f99709370657
2008-04-16Some general housekeeping. Fixed a few yellows, made the volume buttons work ↵Will Robertson1-2/+2
in lists. ROLO now works also thanks to rob's work on the D2. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17139 a1c6a512-1295-4272-9138-f99709370657
2008-04-15Kill some D2 yellows with a simplistic Rolo implementation and NAND driver ↵Rob Purchase1-1/+11
cleanup. Correct some comments in crt0.s and remove two erroneous null words from rockbox.bin git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17127 a1c6a512-1295-4272-9138-f99709370657
2008-04-15Fix some red.Steve Bavin1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17121 a1c6a512-1295-4272-9138-f99709370657
2008-04-15Kill warnings that annoy me when building for Gigabeat S.Michael Sevakis1-0/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17120 a1c6a512-1295-4272-9138-f99709370657
2008-03-26Major cleanup of checkwps - fix all warnings and add a script to build ↵Dave Chapman1-0/+1
versions for all supported targets (plus some unsupported ones). You now need to run the version of checkwps that matches the device your WPS is for. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16831 a1c6a512-1295-4272-9138-f99709370657
2008-03-26Do core interrupt masking in a less general fashion and save some ↵Michael Sevakis1-1/+5
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-17Various coldfire fixes: (1) iAudio Bootloader: Check the status of main & ↵Jens Arnold1-0/+1
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
2007-11-15Work in progress fixes to the remote button handling. Now the remote can be ↵Karl Kurbjun1-1/+1
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-11Setup the gigabeat so that iram is faked in a different spot since the ↵Karl Kurbjun1-1/+1
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-10-16Finally full multicore support for PortalPlayer 502x targets with an eye ↵Michael Sevakis1-2/+2
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-13M:Robe - Fix compilation and remove some warningsKarl Kurbjun1-6/+6
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@15095 a1c6a512-1295-4272-9138-f99709370657
2007-09-30Add some defines for pp502x. No guarantee as to full accuracy yet but that's ↵Michael Sevakis1-7/+7
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-29Anti-red?Michael Sevakis1-4/+6
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14899 a1c6a512-1295-4272-9138-f99709370657
2007-09-28Commit a subset of the dual core changes that have to do with cache ↵Michael Sevakis1-10/+26
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-07-17Revert cosmetic change and staticing of the rolo_restart() function, because ↵Nils Wallménius1-4/+7
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-16Make a private function static where possible, add a comment, make a small ↵Nils Wallménius1-4/+7
cosmetic change git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13918 a1c6a512-1295-4272-9138-f99709370657
2007-07-02Improved CPU clock setup for PP502x. PP5020 and PP5022 are not register ↵Jens Arnold1-2/+2
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-06-04Bring back rolo for mi4-based targets (H10 and Sansa).Barry Wardell1-0/+19
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13550 a1c6a512-1295-4272-9138-f99709370657
2007-04-13Portal Player: Add invalidate_icache and flush_icache. Flush the cache on ↵Michael Sevakis1-4/+2
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-03-04Fix RoLo on PortalPlayer targetsDaniel Ankers1-0/+11
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12609 a1c6a512-1295-4272-9138-f99709370657
2007-03-03Replace some inl/outl with register #define's instead. Also tidy up pp5020.h ↵Barry Wardell1-4/+4
so that it's in increasing address order. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12574 a1c6a512-1295-4272-9138-f99709370657
2007-02-27Improved RoLo support for PortalPlayer - handles the COP correctlyDaniel Ankers1-0/+41
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12511 a1c6a512-1295-4272-9138-f99709370657
2006-12-19Add working dual-boot bootloaders for H10 and Sansa, which allow booting the ↵Barry Wardell1-3/+2
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-10Remove useless code from rolo.cDaniel Ankers1-3/+0
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11708 a1c6a512-1295-4272-9138-f99709370657
2006-12-10Slightly improved RoLo for PortalPlayer targetsDaniel Ankers1-7/+8
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11707 a1c6a512-1295-4272-9138-f99709370657
2006-11-22Change if CONFIG_CPU==PP50XX to ifdef CPU_PP where appropriateDaniel Ankers1-3/+5
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11569 a1c6a512-1295-4272-9138-f99709370657
2006-11-10Removed the Gmini 120 and Gmini SP code. These ports are dead, unfortunately.Jens Arnold1-4/+4
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11504 a1c6a512-1295-4272-9138-f99709370657
2006-10-23reduce the number of gigabeat warningsMarcoen Hirschberg1-1/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11316 a1c6a512-1295-4272-9138-f99709370657
2006-08-28Add Rockbox bootloader for H10Barry Wardell1-2/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10781 a1c6a512-1295-4272-9138-f99709370657
2006-07-23Implement Rolo for the PP502x-based ipods.Dave Chapman1-5/+25
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10293 a1c6a512-1295-4272-9138-f99709370657
2006-07-13Patch #5063 by Rani Hod - RoLo on X5Linus Nielsen Feltzing1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10209 a1c6a512-1295-4272-9138-f99709370657
2006-04-24Show RoLo messages on remote.Jens Arnold1-1/+12
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9787 a1c6a512-1295-4272-9138-f99709370657
2006-03-21Make RoLo compile for X5Linus Nielsen Feltzing1-2/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9164 a1c6a512-1295-4272-9138-f99709370657
2006-02-11Disable ROLO for the iPods - it doesn't work and just confuses people.Dave Chapman1-2/+3
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8660 a1c6a512-1295-4272-9138-f99709370657
2006-02-05Further iPod 3G work from Seven Le MesleDave Chapman1-3/+3
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8583 a1c6a512-1295-4272-9138-f99709370657
2006-02-03Fixed warnings on iFP.Tomasz Malesinski1-4/+4
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8550 a1c6a512-1295-4272-9138-f99709370657
2005-11-11iPod: Code cleanup - the bootloader now compiles with zero warningsDave Chapman1-2/+5
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7812 a1c6a512-1295-4272-9138-f99709370657
2005-11-07Initial commit of work-in-progress iPod portDave Chapman1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7781 a1c6a512-1295-4272-9138-f99709370657
2005-07-18Fixed RoLo for H100 targetsLinus Nielsen Feltzing1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7188 a1c6a512-1295-4272-9138-f99709370657
2005-06-22H1x0: rolo_restart() now uses the actual destination address to start the ↵Jens Arnold1-7/+9
code. Some asm optimisation. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6811 a1c6a512-1295-4272-9138-f99709370657
2005-06-18depend on CPU, not player modelDaniel Stenberg1-1/+1
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6752 a1c6a512-1295-4272-9138-f99709370657
2005-04-05mp3buf renamed to audiobufLinus Nielsen Feltzing1-6/+6
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6252 a1c6a512-1295-4272-9138-f99709370657
2005-04-04More audio code restructuring, mostly renaming functions so farLinus Nielsen Feltzing1-2/+2
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6246 a1c6a512-1295-4272-9138-f99709370657
2005-03-31RoLo now works on the iRiverLinus Nielsen Feltzing1-16/+75
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6238 a1c6a512-1295-4272-9138-f99709370657