- 14 Jul, 2018 1 commit
-
-
Robert Sprowson authored
Add missing va_end() to debug code. Found by cppcheck static analysis. Tagged as RTSupport-0_17-1 since our va_end is an empty macro.
-
- 15 Jun, 2016 1 commit
-
-
Jeffrey Lee authored
Detail: s/scheduler - Add a second variant of the PreEmptionRecovery routine, which issues a CLREX on entry. Use a workspace variable to select which routine is required (for supporting multiple CPU architectures at runtime) h/scheduler - Declare new symbols exported by s/scheduler c/module - Initialise PreEmptionRecoveryPtr with the correct value, depending on whether the CPU supports LDREX/STREX or not Admin: Tested on Raspberry Pi Version 0.17. Tagged as 'RTSupport-0_17'
-
- 02 May, 2016 1 commit
-
-
Robert Sprowson authored
The expression would never match an ARM7, so attempting to softload the module on an ARMv3 era machine (no SYS mode) would not give a graceful error message. From a tip off in https://www.riscosopen.org/forum/forums/4/topics/3990 Version 0.16. Tagged as 'RTSupport-0_16'
-
- 05 Apr, 2016 1 commit
-
-
Jeffrey Lee authored
Detail: c/module, cmhg/RTSupportHdr, h/global, s/scheduler - Add a handler for SeriousErrorV, so we can be notified when the privileged mode stacks are being flattened. This is safer than watching out for serious errors to arrive via ErrorV, although the ErrorV approach is still necessary in order to deal with old kernels or serious error generators that don't currently use SeriousErrorV (e.g. FPASC/VFPSupport) Admin: Tested on Raspberry Pi Version 0.15. Tagged as 'RTSupport-0_15'
-
- 23 Oct, 2015 1 commit
-
-
Robert Sprowson authored
ARM have started using the extension bits (8 to 15) of the PSR, but have given bit 8 a safe default of being set (mask asynchronous aborts). Since the kernel doesn't handle these RTSupport will create the thread state with A=1 as it would be at reset. Version 0.14. Tagged as 'RTSupport-0_14'
-
- 07 Oct, 2015 1 commit
-
-
Jeffrey Lee authored
Detail: c/module - Make use of mess.c's error caching facility to avoid having to call MessageTrans when returning errors. Should give a bit of a performance boost when dealing with common errors (e.g. "Cannot yield in this context") Admin: Tested on Raspberry Pi Version 0.13. Tagged as 'RTSupport-0_13'
-
- 04 Aug, 2015 1 commit
-
-
Robert Sprowson authored
Lump the Priorities in with the Messages using INSTRES_FILES. Remame CMHG file to match the default. Delete double message file handling code. Build, but not tested. Version 0.12. Tagged as 'RTSupport-0_12'
-
- 03 Aug, 2015 1 commit
-
-
Robert Sprowson authored
Lump the Priorities in with the Messages using INSTRES_FILES. Remame CMHG file to match the default. Delete double message file handling code. Build, but not tested. Version 0.12. Tagged as 'RTSupport-0_12'
-
- 20 Aug, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: s/scheduler - ADR range issues strike again; now use ADRL unconditionally instead of only in debug builds. Admin: Builds but untested Version 0.11. Tagged as 'RTSupport-0_11'
-
- 03 Jun, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: s/scheduler - Yield was failing to restore r14_usr to its previous value when exiting with an error (e.g. due to RT_Yield being called from an IRQ context) Admin: Tested in BCM2835 ROM Version 0.10. Tagged as 'RTSupport-0_10'
-
- 31 Mar, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: Makefile - removed rendundant -cpu assembler flag that causes an error with asasm 2.00 due to two CPU types being specified Removed -cpu 3 setting from CFLAGS since CC 5.69 doesn't seem to suffer from the same internal compiler error bug Admin: Tested in OMAP3 ROM Version 0.09. Tagged as 'RTSupport-0_09'
-
- 22 Mar, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: s/scheduler - Fix PreEmptionRecovery and ThreadResumed to update LastKnownIRQsema with the new value of IRQsema s/scheduler - Fix SVC stack copying code to decrement both pointers instead of incrementing one and decrementing the other. Fix PreEmpt loading the wrong values for SVCStackCopy and SVCStackBase. s/scheduler - Fix Yielded loading Context into R2, and thus overwriting any timeout the routine specified c/module, hdr/RTSupport, Resources/UK/Messages - Module now errors when RTSupport SWIs are called with nonzero flags Makefile, c/module, h/scheduler, s/scheduler - Added lots of debugging code, based around debuglib for C code and DADebug for assembler code. Debug code toggled on/off by passing DEBUG=TRUE to makefile. PC-relative variables shifted to middle of file to keep them within LDR range when debugging enabled. Admin: Tested in OMAP3 ROM on BB-xM Fixes issues seen when multiple RTSupport threads are in use Version ...
-
- 02 Feb, 2012 1 commit
-
-
Robert Sprowson authored
Participated in a ROM build with no errors, but not functionally tested. Version 0.07. Tagged as 'RTSupport-0_07'
-
- 04 Aug, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: c/cmodule - Try using OS_ReadSysInfo 6 to find IRQsema before falling back on the legacy address h/scheduler - Add IRQsema pointer extern, update ThreadResumed extern to cope with it now being in a data area s/scheduler - Use workspace IRQsema pointer instead of hardcoded legacy address. Moved PreEmptionRecovery & ThreadResumed into data area for easier access to IRQsema ptr. Admin: Tested on rev A2 BB-xM Version 0.06. Tagged as 'RTSupport-0_06'
-
- 22 Oct, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: - Makefile (hopefully temporarily) modified to use "-cpu 3" setting for compiling C files, to work around internal compiler error - RT_Deregister fixed (in s/scheduler) to behave properly if a routine attempts to deregister itself after being entered from the foreground via RT_Yield - Simple test program added to test correct behaviour of RT_Deregister - SVC stack allocation routines rewritten to cope with the possibility that OS_DynamicArea 9/10 may be unable to move pages (e.g. RT_Deregister called while IRQSema is nonzero) - Stack allocation routine also attempts to deal with kernels which have broken sparse area error reporting (anything below version 5.15), by falling back on a simpler allocation scheme that doesn't resize the dynamic area. - Erroneous comment in s/scheduler fixed - Erroneous #define in h/scheduler fixed Admin: Tested on RISC OS 5.15 rev C2 beagleboard, RISC OS 5.12 Iyonix Makefile fix "fixes" bug #218 Version 0.05...
-
- 27 Aug, 2005 1 commit
-
-
Ben Avison authored
Detail: * First bug was that due to a careless slip-up in the very last stage of the process of switching to a routine (the loading of the SPSR), all routines were actually being entered in SYS mode with IRQs disabled. This was leading to horrendous interrupt latency - exactly the situation this module was written to avert! The most obvious reproducible symptom was that the real time clock ran slowly. * Once this was fixed, it revealed the presence of a more complicated bug: the module wasn't including the most-recently-executed routine along with the list of other routines in a non-sleeping state for a certain sub-set of actions. This was fixed by setting the pollword pointer to yet another magic address while it was executing, to minimise the disruption to existing code. Admin: Tested with a deinterlacing routine. Version 0.04. Tagged as 'RTSupport-0_04'
-
- 19 Apr, 2005 1 commit
-
-
Ben Avison authored
Version 0.03. Tagged as 'RTSupport-0_03'
-
- 27 Jan, 2005 1 commit
-
-
Ben Avison authored
Also fixed length calculation when setting system variable to exclude trailing null byte (not that FileSwitch seems to mind!) Version 0.02. Tagged as 'RTSupport-0_02'
-
- 12 Jan, 2005 1 commit
-
-
Ben Avison authored
This has so far been demonstrated to work with a single client under RISC OS-STB 5.0.0 and 5.0.2.
-