summaryrefslogtreecommitdiff
path: root/firmware/rolo.c
AgeCommit message (Collapse)Author
2009-04-01M:Robe 500i: More LCD initialization, and beginnings of support for QVGA as ↵Karl Kurbjun
well as VGA on the LCD. MPEGPlayer now works with reasonable performance on smaller videos, but YUV blitting persists after MPEGPlayer is left, some cleanup/changes to the initialization code. This should be functionally equivalent for the ZVM, but the #ifdef's may need to be added back for app.lds. Get the bootloader building again. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20598 a1c6a512-1295-4272-9138-f99709370657
2009-02-26Ingenic Jz4740:Maurus Cuelenaere
* Add initial RoLo support * Don't enable IRAM in plugins for now * Initial try at getting PCM working (doesn't crash anymore at least) * Replace hard-coded constant with #define in usb-jz4740 git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20115 a1c6a512-1295-4272-9138-f99709370657
2009-02-11Make basic cache functions into calls, and get rid of ↵Michael Sevakis
CACHE_FUNCTION_WRAPPERS and CACHE_FUNCTIONS_AS_CALL macros. Rename flush/invalidate_icache to cpucache_flush/invalidate. They're inlined only if an implementation isn't provided by defining HAVE_CPUCACHE_FLUSH/INVALIDATE. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19971 a1c6a512-1295-4272-9138-f99709370657
2008-11-10Fix Clip firmware building by adding missing symbolsRafaël Carré
Implement some of the new functions Use as3514 rtc Add AS3525 case in rolo.c Copy card_get_info_target() from ata-sd-pp.c , and use the correct 32bits words order git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19064 a1c6a512-1295-4272-9138-f99709370657
2008-06-28Updated our source code header to explicitly mention that we are GPL v2 orDaniel Stenberg
later. We still need to hunt down snippets used that are not. 1324 modified files... http://www.rockbox.org/mail/archive/rockbox-dev-archive-2008-06/0060.shtml git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17847 a1c6a512-1295-4272-9138-f99709370657
2008-06-03Oops. Lost sync on a few instances and 'HI' registers.Michael Sevakis
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 Sevakis
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 Sevakis
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 Sikken
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17310 a1c6a512-1295-4272-9138-f99709370657
2008-05-02Working ROLO for the Gigabeat F/XKarl Kurbjun
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 Sevakis
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 Robertson
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 Purchase
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 Bavin
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 Sevakis
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 Chapman
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 Sevakis
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 Arnold
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 Kurbjun
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 Kurbjun
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 Sevakis
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 Kurbjun
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 Sevakis
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 Sevakis
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 Sevakis
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énius
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énius
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 Arnold
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 Wardell
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 Sevakis
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 Ankers
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 Wardell
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 Ankers
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 Wardell
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 Ankers
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11708 a1c6a512-1295-4272-9138-f99709370657
2006-12-10Slightly improved RoLo for PortalPlayer targetsDaniel Ankers
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 Ankers
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 Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11504 a1c6a512-1295-4272-9138-f99709370657
2006-10-23reduce the number of gigabeat warningsMarcoen Hirschberg
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11316 a1c6a512-1295-4272-9138-f99709370657
2006-08-28Add Rockbox bootloader for H10Barry Wardell
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 Chapman
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 Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@10209 a1c6a512-1295-4272-9138-f99709370657
2006-04-24Show RoLo messages on remote.Jens Arnold
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9787 a1c6a512-1295-4272-9138-f99709370657
2006-03-21Make RoLo compile for X5Linus Nielsen Feltzing
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 Chapman
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 Chapman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8583 a1c6a512-1295-4272-9138-f99709370657
2006-02-03Fixed warnings on iFP.Tomasz Malesinski
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 Chapman
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 Chapman
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7781 a1c6a512-1295-4272-9138-f99709370657
2005-07-18Fixed RoLo for H100 targetsLinus Nielsen Feltzing
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@7188 a1c6a512-1295-4272-9138-f99709370657