- 23 Jul, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: HAL kernels (on the Cortex branch at least) now support HALDevice-based RTCs. If the kernels own RTC code is disabled or fails to detect an RTC, then after HAL_InitDevices is called the HALDevice list will be scanned for any HAL-resident RTC devices. Additionally, the RTCSupport flag (in Hdr:Machine.Machine), which was previously TRUE for all HAL kernels, can now be set to FALSE in HAL kernels to disable the kernels own IIC RTC code. This allows the unwanted legacy RTC code to be disabled for machines which are known to use HAL RTCs instead. hdr/RTCDevice - new header describing data structures used for HAL RTC device hdr/HALDevice - added RTCDevice device type, IIC serial bus type hdr/KernelWS - upgraded RTCFitted from a 1 byte field to 4 byte. It now stores either a null value (for no RTC), a value <2048 for an IIC RTC address, or a value >= 2048 for a RTCDevice ptr Makefile - added header export of hdr/RTCDevice s/GetAll - include hdr/RTCDevice s/NewReset - initialise HAL RTC after HAL_InitDevices if required s/PMF/i2cutils, s/PMF/osinit, s/PMF/osword - modifications to allow use of HAL RTC (and disallow use of builtin IIC RTC) Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.11. Tagged as 'Kernel-5_35-4_79_2_98_2_11'
-
- 17 Jul, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: s/PMF/IIC - IICIRQ now calls HAL_IRQClear after HAL_IICMonitorTransfer, in order to make sure the IRQ controller is restarted. Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.10. Tagged as 'Kernel-5_35-4_79_2_98_2_10'
-
- 15 Jun, 2009 1 commit
-
-
Ben Avison authored
Detail: s.PMF.i2cutils line 454: this LDR of byte values was harmless (bits 8 upwards are discarded later) but slower than an LDRB on ARMv6 or later. s.PMF.i2cutils line 556: should have loaded RTCFitted using LDRB. Looks like effect would have been to reduce utilisation of CMOS cache. s.vdu.vduswis line 1500: mistakenly accessing ExternalFramestore using LDR. I don't think the intention was to prevent the screen DA being resized while screen memory was claimed, but that was the effect. s.vdu.vduwrch line 3106: this LDR of a 1-byte variable was harmless (only used for testing bit 4) but slower than an LDRB on ARMv6 or later. CPU version is no longer specified in the makefile - it's better to inherit it from the build environment now that we actually set it appropriately. Admin: Built and briefly tested. Version 5.35, 4.79.2.98.2.9. Tagged as 'Kernel-5_35-4_79_2_98_2_9'
-
- 17 May, 2009 1 commit
-
-
Ben Avison authored
Detail: * Stopped calling the broken abort fixup code when running under VMSAv6. Might be desirable to update it, possibly farmed out to a separate module - still need to think about this. * Unaligned load optimisations can now be disabled by the global NoUnaligned flag for testing purposes. * Extended OS_ReadUnsigned to permit reading of 64-bit unsigned integers. See Docs.ReadUnsigned for more details. Also sped it up by using MLA (or UMLAL) for most digits rather than repeated addition. * Bugfix is OS_GSRead: an uninitialised r0 was being passed to OS_ReadUnsigned, causing undesirable effects on rare occasions. Admin: Tested on a rev B7 beagleboard. Version 5.35, 4.79.2.98.2.8. Tagged as 'Kernel-5_35-4_79_2_98_2_8'
-
- 10 May, 2009 3 commits
-
-
Jeffrey Lee authored
Detail: s/vdu/vduwrch - Modify PageTest to never use paged scrolling when DebugTerminal is true (since serial terminals aren't able to send shift up/down messages) Admin: Tested on rev C2 beagleboard. Version 5.35, 4.79.2.98.2.7. Tagged as 'Kernel-5_35-4_79_2_98_2_7'
-
Ben Avison authored
Detail: Having scanned the kernel source for unaligned load code fragments which would abort on ARMv6 and v7 and not having found any, I took the opportunity to give them build-time switches to use unaligned LDR((S)H)/STR(H) instructions if built for a new enough platform. Also added a couple of cases of LDRSB that will benefit v4 CPUs and a few instances of the v6 SXTH instruction, but since objasm doesn't yet understand it (and when it does, not everyone will have upgraded) they are currently written as DCI statements. Most of the changes are to OS_Word handlers, which are notorious in that their input/output block is not word-aligned. Admin: Not tested, but it should at least build. Version 5.35, 4.79.2.98.2.6. Tagged as 'Kernel-5_35-4_79_2_98_2_6'
-
Jeffrey Lee authored
Detail: s/ARMops - Fix IMB_Range_WB_CR7_Lx to clean the correct number of cache lines s/HAL - Change CP15 control register flags so unaligned loads are enabled on ARMv6 (to simplify support for ARMv7 where unaligned loads are always enabled, and to match the behaviour expected by the example code in Hdr:CPU.Arch) s/AMBControl/memmap - Make AMB_LazyFixUp use the correct L2PT protection flags depending on ARM600/VMSAv6 MMU model. Also guard against problems caused by future L2PT flag changes. s/vdu/vdugrafj - Fix previously undiscovered 32bit incompatability in GetSprite (OS_SpriteOp 14/16) Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.5. Tagged as 'Kernel-5_35-4_79_2_98_2_5'
-
- 23 Apr, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: s/ARMops - Fix set/way-based cache ops for cache type WB_CR7_Lx to iterate sets/ways/cache levels properly s/HAL - Fix HAL_InvalidateCache_ARMvF to iterate sets/ways/cache levels properly Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.4. Tagged as 'Kernel-5_35-4_79_2_98_2_4'
-
- 06 Mar, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: s/ARM600 - fix to SyncCodeAreasRange to correctly read cache line length for WB_CR7_Lx caches s/ARMops - Cortex cache handling fixes. Enable L2 cache for Cortex. s/ChangeDyn - VMSAv6 support in AllocateBackingLevel2 s/HAL - Improve RISCOS_InitARM to set/clear correct CP15 flags for ARMv6/v7. VMSAv6 support in code to generate initial page tables. s/NewReset - Extra DebugTX calls during OS startup. Disable pre-HAL Processor_Type for HAL builds. s/VMSAv6 - Main VMSAv6 MMU code - stripped down version of s/ARM600 with support for basic VMSAv6 features. hdr/Options - Use VMSAv6 MMU code, not ARM600. Disable ARM6support since current VMSAv6 code will conflict with it. Admin: Tested basic OS functionality under qemu-omap3 and revision B6 beagleboard. Version 5.35, 4.79.2.98.2.3. Tagged as 'Kernel-5_35-4_79_2_98_2_3'
-
- 21 Feb, 2009 1 commit
-
-
Jeffrey Lee authored
Add support for Cortex cache type. Extend ARM_Analyse to, where appropriate, use CPU feature registers to identify CPU capabilities. Detail: s/ARMops - Support for Cortex multi-level cache (CT_ctype_WB_CR7_Lx). New ARM_Analyse_Fancy to identify CPU capabilities using feature registers. s/HAL - Modify pre-ARMop cache code to handle Cortex-syle caches. s/MemInfo - Replace ARM_flush_TLB macro call with appropriate ARMop to provide Cortex compatability hdr/ARMops - Update list of ARM architectures hdr/CoPro15ops - Deprecate ARM_flush_* macros for HAL kernels, as they are no longer capable of flushing all cache types. ARMops should be used instead. hdr/KernelWS - Add storage space for multi-level cache properties required for new cache cleaning code. Admin: Tested under qemu-omap3. Still unable to verify on real hardware due to lack of appropriate MMU code. However new OMAP3 HAL code that uses similar cache management functions appears to work fine on real hardware. Version 5.35, 4.79.2.98.2.2. Tagged as 'Kernel-5_35-4_79_2_98_2_2'
-
- 01 Feb, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/ARMops - Added Cortex_A8 processor type, new ARM architecture number hdr/Options - Enabled various kernel debug options s/ARMops - Added Cortex-A8/OMAP3530 to known CPUs list. Ignore cache type register for ARM architecture &F. s/NewIRQs - Increase MaxInterrupts to 96 Admin: Brief testing under qemu-omap3. Version 5.35, 4.79.2.98.2.1. Tagged as 'Kernel-5_35-4_79_2_98_2_1'
-
- 22 Dec, 2008 1 commit
-
-
Ben Avison authored
Detail: * Added some documentation on previously undocumented HAL calls * Corrected NVMemoryFlag_Provision bitmask to match documentation * Bugfix: NVMemoryFlag_ProtectAtEnd flag was being ignored Admin: Not tested Version 5.35, 4.79.2.98. Tagged as 'Kernel-5_35-4_79_2_98'
-
- 03 Dec, 2008 1 commit
-
-
Ben Avison authored
Version 5.35, 4.79.2.97. Tagged as 'Kernel-5_35-4_79_2_97'
-
- 04 Oct, 2008 1 commit
-
-
Ben Avison authored
Detail: Updated GraphicsV documentation Upped ROM version number - currently matches latest Castle release (5.13) Admin: No code change Version 5.35, 4.79.2.96. Tagged as 'Kernel-5_35-4_79_2_96'
-
- 22 Feb, 2006 1 commit
-
-
John Ballance authored
Detail: Admin: Version 5.35, 4.79.2.95. Tagged as 'Kernel-5_35-4_79_2_95'
-
- 16 Feb, 2006 1 commit
-
-
John Ballance authored
Detail: Admin: Version 5.35, 4.79.2.94. Tagged as 'Kernel-5_35-4_79_2_94'
-
- 07 Oct, 2005 1 commit
-
-
John Ballance authored
Detail: Admin: needed for changed module Version 5.35, 4.79.2.93. Tagged as 'Kernel-5_35-4_79_2_93'
-
- 24 Sep, 2005 1 commit
-
-
John Ballance authored
Detail: Admin: Version 5.35, 4.79.2.92. Tagged as 'Kernel-5_35-4_79_2_92'
-
- 23 Sep, 2005 1 commit
-
-
John Ballance authored
no other changes Detail: Admin: Version 5.35, 4.79.2.91. Tagged as 'Kernel-5_35-4_79_2_91'
-
- 16 Sep, 2005 1 commit
-
-
Steve Revill authored
OS_ReadSysInfo 6 (subreason code is 23 for IRQsema). This will be useful if zero page is ever protected and the IRQ semaphore moved. Version 5.35, 4.79.2.90. Tagged as 'Kernel-5_35-4_79_2_90'
-
- 15 Sep, 2005 1 commit
-
-
Ben Avison authored
Detail: Internationalisation of *Help code (ie probably dating back to RISC OS 3.1) broke the Escape condition checking. This is particularly nasty if you do *Help . on a machine with slow hardware scrolling! Admin: Not tested. Version 5.35, 4.79.2.89. Tagged as 'Kernel-5_35-4_79_2_89'
-
- 12 Sep, 2005 1 commit
-
-
John Ballance authored
Detail: Admin: Version 5.35, 4.79.2.88. Tagged as 'Kernel-5_35-4_79_2_88'
-
- 09 Jun, 2005 1 commit
-
-
Kevin Bracey authored
Version 5.35, 4.79.2.87. Tagged as 'Kernel-5_35-4_79_2_87'
-
- 18 May, 2005 1 commit
-
-
John Ballance authored
Detail: Admin: Version 5.35, 4.79.2.86. Tagged as 'Kernel-5_35-4_79_2_86'
-
- 04 May, 2005 1 commit
-
-
Kevin Bracey authored
Version 5.35, 4.79.2.85. Tagged as 'Kernel-5_35-4_79_2_85'
-
- 21 Mar, 2005 1 commit
-
-
Kevin Bracey authored
Version 5.35, 4.79.2.84. Tagged as 'Kernel-5_35-4_79_2_84'
-
- 12 Nov, 2004 1 commit
-
-
Ben Avison authored
Detail: Tightened up BBE resources export, to exclude in appropriate files (this component has a non-standard resources directory structure). Admin: Tested in a Tungsten BBE build. Retagged, since this won't affect any existing builds.
-
- 04 Nov, 2004 2 commits
-
-
John Ballance authored
Detail: Admin: Version 5.35, 4.79.2.83. Tagged as 'Kernel-5_35-4_79_2_83'
-
John Ballance authored
Detail: Kevin work, in response to D Ellis fault find Admin: Castle IP Version 5.35, 4.79.2.82. Tagged as 'Kernel-5_35-4_79_2_82'
-
- 02 Nov, 2004 1 commit
-
-
John Ballance authored
1: default ticker based vsync generated whenever no device present to do so 2: graphicsv handling and spec updated to use the hi 8 bits in the reason code (R4) to define the display number. Kernel only knows of display 0 Detail: Admin: tested castle castle added ip Version 5.35, 4.79.2.81. Tagged as 'Kernel-5_35-4_79_2_81'
-
- 29 Oct, 2004 2 commits
-
-
John Ballance authored
Detail: Admin: Version 5.35, 4.79.2.80. Tagged as 'Kernel-5_35-4_79_2_80'
-
John Ballance authored
HAL_Video_IIC_Op Detail: Admin: JB Castle IP Version 5.35, 4.79.2.79. Tagged as 'Kernel-5_35-4_79_2_79'
-
- 13 Oct, 2004 1 commit
-
-
Ben Avison authored
Detail: * I noticed in passing that the default exception handlers were broken for non-IOMD machines if the exception was raised in FIQ mode - unless you had a very large application slot, then the machine would lock up. Now properly HAL-ised. * Added a new event number, allocated for PRISM use back in June. Admin: Not tested. However, it can't make the situation any worse! Version 5.35, 4.79.2.78. Tagged as 'Kernel-5_35-4_79_2_78'
-
- 06 Oct, 2004 1 commit
-
-
Ben Avison authored
Detail: Previously, UnthreadV was only called when the IRQsema chain was empty, the link for the just-completed interrupt having just been removed. However, the information in the link is necessary to allow OS_Heap to be called from UnthreadV context, and patching up IRQsema within the UnthreadV handler prevents the implementation of a prioritised threading scheme. As a result, we must call UnthreadV every time the interrupt dispatch unthreads, and leave it up to the UnthreadV handler to distinguish between return to thread context and return from a nested interrupt handler. Admin: Will require some sort of patch to enable heap-safe prioritised threading on RISC OS-STB 5.0.0 or RISC OS 5.07, the only two released OSes with the previous UnthreadV behaviour. Version 5.35, 4.79.2.77. Tagged as 'Kernel-5_35-4_79_2_77'
-
- 08 Sep, 2004 2 commits
-
-
John Ballance authored
Detail: Admin: castle IP Version 5.35, 4.79.2.76. Tagged as 'Kernel-5_35-4_79_2_76'
-
John Ballance authored
Tungsten HAL IIC_Transfer not initialising the checksum Detail: Admin: tested at castle.. again! castle added IP Version 5.35, 4.79.2.75. Tagged as 'Kernel-5_35-4_79_2_75'
-
- 06 Sep, 2004 1 commit
-
-
John Ballance authored
Detail: CheckSumBlock called IIC_OpV to checksum byte 0 of CMOS, but read back the resultant checksum from the wrong offset (#20.. new R1 value).. now corrected to #24 as the correct offset (approx line 997). Admin: tested at castle in iyonix castle added IP Version 5.35, 4.79.2.74. Tagged as 'Kernel-5_35-4_79_2_74'
-
- 12 Aug, 2004 1 commit
-
-
John Ballance authored
Detail: Admin: Tested in ROM at Castle Version 5.35, 4.79.2.73. Tagged as 'Kernel-5_35-4_79_2_73'
-
- 05 Jul, 2004 1 commit
-
-
Ben Avison authored
Version 5.35, 4.79.2.72. Tagged as 'Kernel-5_35-4_79_2_72'
-
- 25 Jun, 2004 1 commit
-
-
Kevin Bracey authored
* Added use of CDVPoduleIRQs (from Hdr:Machine) * Fixed checksum corruption in OS_NVMemory block writes ending just below the checksum byte. * Fixed R4 corruption by OS_Byte 162 with certain HALs. Version 5.35, 4.79.2.71. Tagged as 'Kernel-5_35-4_79_2_71'
-